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

github.com/nextcloud/firstrunwizard.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/js
diff options
context:
space:
mode:
authordependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>2022-02-12 05:01:48 +0300
committernextcloud-command <nextcloud-command@users.noreply.github.com>2022-02-23 16:55:37 +0300
commit254a8284442b7e440af4ab46c27aaf77c1a5a31f (patch)
tree80f0fde2bac9623d343ca8e4ccf5e3c41e25a4bf /js
parent837218d7f49a59340c0ec8dee625d148107a98df (diff)
Bump @nextcloud/vue from 3.9.0 to 5.0.0
Bumps [@nextcloud/vue](https://github.com/nextcloud/nextcloud-vue) from 3.9.0 to 5.0.0. - [Release notes](https://github.com/nextcloud/nextcloud-vue/releases) - [Changelog](https://github.com/nextcloud/nextcloud-vue/blob/master/CHANGELOG.md) - [Commits](https://github.com/nextcloud/nextcloud-vue/compare/v3.9.0...v5.0.0) --- updated-dependencies: - dependency-name: "@nextcloud/vue" dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
Diffstat (limited to 'js')
-rw-r--r--js/firstrunwizard-main.js4
-rw-r--r--js/firstrunwizard-main.js.map2
2 files changed, 3 insertions, 3 deletions
diff --git a/js/firstrunwizard-main.js b/js/firstrunwizard-main.js
index 557f6068..502481c2 100644
--- a/js/firstrunwizard-main.js
+++ b/js/firstrunwizard-main.js
@@ -1,3 +1,3 @@
/*! For license information please see firstrunwizard-main.js.LICENSE.txt */
-(()=>{var e={2200:(t,e,n)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"getRequestToken",{enumerable:!0,get:function(){return r.getRequestToken}}),Object.defineProperty(e,"onRequestTokenUpdate",{enumerable:!0,get:function(){return r.onRequestTokenUpdate}}),Object.defineProperty(e,"getCurrentUser",{enumerable:!0,get:function(){return o.getCurrentUser}});var r=n(1894),o=n(1618)},1894:(t,e,n)=>{"use strict";var r=n(5108);n(9554),Object.defineProperty(e,"__esModule",{value:!0}),e.getRequestToken=function(){return a},e.onRequestTokenUpdate=function(t){s.push(t)};var o=n(7594),i=document.getElementsByTagName("head")[0],a=i?i.getAttribute("data-requesttoken"):null,s=[];(0,o.subscribe)("csrf-token-update",(function(t){a=t.token,s.forEach((function(e){try{e(t.token)}catch(t){r.error("error updating CSRF token observer",t)}}))}))},1618:(t,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.getCurrentUser=function(){if(null===r)return null;return{uid:r,displayName:i,isAdmin:a}};var n=document.getElementsByTagName("head")[0],r=n?n.getAttribute("data-user"):null,o=document.getElementsByTagName("head")[0],i=o?o.getAttribute("data-user-displayname"):null,a="undefined"!=typeof OC&&OC.isUserAdmin()},4820:(t,e,n)=>{"use strict";e.Z=void 0;var r,o,i=(r=n(9669))&&r.__esModule?r:{default:r},a=n(2200);const s=i.default.create({headers:{requesttoken:null!==(o=(0,a.getRequestToken)())&&void 0!==o?o:""}}),l=Object.assign(s,{CancelToken:i.default.CancelToken,isCancel:i.default.isCancel});(0,a.onRequestTokenUpdate)((t=>s.defaults.headers.requesttoken=t));var c=l;e.Z=c},4201:(t,e,n)=>{"use strict";var r=n(5108);Object.defineProperty(e,"__esModule",{value:!0}),e.ProxyBus=void 0;var o=a(n(6397)),i=a(n(8679));function a(t){return t&&t.__esModule?t:{default:t}}function s(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}var l="1.2.0",c=function(){function t(e){var n,a,s;!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),s=void 0,(a="bus")in(n=this)?Object.defineProperty(n,a,{value:s,enumerable:!0,configurable:!0,writable:!0}):n[a]=s,"function"==typeof e.getVersion&&(0,o.default)(e.getVersion())?(0,i.default)(e.getVersion())!==(0,i.default)(this.getVersion())&&r.warn("Proxying an event bus of version "+e.getVersion()+" with "+this.getVersion()):r.warn("Proxying an event bus with an unknown or invalid version"),this.bus=e}var e,n,a;return e=t,(n=[{key:"getVersion",value:function(){return l}},{key:"subscribe",value:function(t,e){this.bus.subscribe(t,e)}},{key:"unsubscribe",value:function(t,e){this.bus.unsubscribe(t,e)}},{key:"emit",value:function(t,e){this.bus.emit(t,e)}}])&&s(e.prototype,n),a&&s(e,a),t}();e.ProxyBus=c},6936:(t,e,n)=>{"use strict";var r=n(5108);function o(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}n(2222),n(7327),n(9554),n(6992),n(1532),n(1539),n(8783),n(4747),n(3948),Object.defineProperty(e,"__esModule",{value:!0}),e.SimpleBus=void 0;var i="1.2.0",a=function(){function t(){var e,n,r;!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),e=this,n="handlers",r=new Map,n in e?Object.defineProperty(e,n,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[n]=r}var e,n,a;return e=t,(n=[{key:"getVersion",value:function(){return i}},{key:"subscribe",value:function(t,e){this.handlers.set(t,(this.handlers.get(t)||[]).concat(e))}},{key:"unsubscribe",value:function(t,e){this.handlers.set(t,(this.handlers.get(t)||[]).filter((function(t){return t!=e})))}},{key:"emit",value:function(t,e){(this.handlers.get(t)||[]).forEach((function(t){try{t(e)}catch(t){r.error("could not invoke event listener",t)}}))}}])&&o(e.prototype,n),a&&o(e,a),t}();e.SimpleBus=a},7594:(t,e,n)=>{"use strict";var r=n(5108);Object.defineProperty(e,"__esModule",{value:!0}),e.subscribe=function(t,e){a.subscribe(t,e)},e.unsubscribe=function(t,e){a.unsubscribe(t,e)},e.emit=function(t,e){a.emit(t,e)};var o=n(4201),i=n(6936);var a=(void 0!==window.OC&&window.OC._eventBus&&void 0===window._nc_event_bus&&(r.warn("found old event bus instance at OC._eventBus. Update your version!"),window._nc_event_bus=window.OC._eventBus),void 0!==window._nc_event_bus?new o.ProxyBus(window._nc_event_bus):window._nc_event_bus=new i.SimpleBus)},3955:(t,e,n)=>{"use strict";n(1539),n(4916),n(9714),n(5306),Object.defineProperty(e,"__esModule",{value:!0}),e.getGettextBuilder=function(){return new c};var r,o=(r=n(7699))&&r.__esModule?r:{default:r},i=n(9944);function a(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}function l(t,e,n){return e&&s(t.prototype,e),n&&s(t,n),t}var c=function(){function t(){a(this,t),this.translations={},this.debug=!1}return l(t,[{key:"setLanguage",value:function(t){return this.locale=t,this}},{key:"detectLocale",value:function(){return this.setLanguage((0,i.getLanguage)().replace("-","_"))}},{key:"addTranslation",value:function(t,e){return this.translations[t]=e,this}},{key:"enableDebugMode",value:function(){return this.debug=!0,this}},{key:"build",value:function(){return new u(this.locale||"en",this.translations,this.debug)}}]),t}(),u=function(){function t(e,n,r){for(var i in a(this,t),this.gt=new o.default({debug:r,sourceLocale:"en"}),n)this.gt.addTranslations(i,"messages",n[i]);this.gt.setLocale(e)}return l(t,[{key:"subtitudePlaceholders",value:function(t,e){return t.replace(/{([^{}]*)}/g,(function(t,n){var r=e[n];return"string"==typeof r||"number"==typeof r?r.toString():t}))}},{key:"gettext",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.subtitudePlaceholders(this.gt.gettext(t),e)}},{key:"ngettext",value:function(t,e,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return this.subtitudePlaceholders(this.gt.ngettext(t,e,n).replace(/%n/g,n.toString()),r)}}]),t}()},9944:(t,e,n)=>{"use strict";var r=n(5108);function o(){return"undefined"==typeof OC?(r.warn("No OC found"),"en"):OC.getLocale()}n(4916),n(5306),Object.defineProperty(e,"__esModule",{value:!0}),e.getLocale=o,e.getCanonicalLocale=function(){return o().replace(/_/g,"-")},e.getLanguage=function(){if("undefined"==typeof OC)return r.warn("No OC found"),"en";return OC.getLanguage()},e.translate=function(t,e,n,o,i){if("undefined"==typeof OC)return r.warn("No OC found"),e;return OC.L10N.translate(t,e,n,o,i)},e.translatePlural=function(t,e,n,o,i,a){if("undefined"==typeof OC)return r.warn("No OC found"),e;return OC.L10N.translatePlural(t,e,n,o,i,a)},e.getFirstDay=function(){if(void 0===window.firstDay)return r.warn("No firstDay found"),1;return window.firstDay},e.getDayNames=function(){if(void 0===window.dayNames)return r.warn("No dayNames found"),["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];return window.dayNames},e.getDayNamesShort=function(){if(void 0===window.dayNamesShort)return r.warn("No dayNamesShort found"),["Sun.","Mon.","Tue.","Wed.","Thu.","Fri.","Sat."];return window.dayNamesShort},e.getDayNamesMin=function(){if(void 0===window.dayNamesMin)return r.warn("No dayNamesMin found"),["Su","Mo","Tu","We","Th","Fr","Sa"];return window.dayNamesMin},e.getMonthNames=function(){if(void 0===window.monthNames)return r.warn("No monthNames found"),["January","February","March","April","May","June","July","August","September","October","November","December"];return window.monthNames},e.getMonthNamesShort=function(){if(void 0===window.monthNamesShort)return r.warn("No monthNamesShort found"),["Jan.","Feb.","Mar.","Apr.","May.","Jun.","Jul.","Aug.","Sep.","Oct.","Nov.","Dec."];return window.monthNamesShort}},9753:(t,e,n)=>{"use strict";n(2772),n(9601),n(1539),n(4916),n(9714),n(5306),e.FW=e.nu=void 0;e.nu=function(t,e,n){var r=Object.assign({escape:!0,noRewrite:!1},n||{}),i=function(t,e){return e=e||{},t.replace(/{([^{}]*)}/g,(function(t,n){var o=e[n];return r.escape?"string"==typeof o||"number"==typeof o?encodeURIComponent(o.toString()):encodeURIComponent(t):"string"==typeof o||"number"==typeof o?o.toString():t}))};return"/"!==t.charAt(0)&&(t="/"+t),!0!==OC.config.modRewriteWorking||r.noRewrite?o()+"/index.php"+i(t,e||{}):o()+i(t,e||{})};var r=function(t,e,n){var r=-1!==OC.coreApps.indexOf(t),i=o();return"php"!==n.substring(n.length-3)||r?"php"===n.substring(n.length-3)||r?(i+="settings"!==t&&"core"!==t&&"search"!==t||"ajax"!==e?"/":"/index.php/",r||(i+="apps/"),""!==t&&(i+=t+="/"),e&&(i+=e+"/"),i+=n):(i=OC.appswebroots[t],e&&(i+="/"+e+"/"),"/"!==i.substring(i.length-1)&&(i+="/"),i+=n):(i+="/index.php/apps/"+t,"index.php"!==n&&(i+="/",e&&(i+=encodeURI(e+"/")),i+=n)),i};e.FW=r;var o=function(){return OC.webroot}},7450:(t,e,n)=>{window,t.exports=function(t){var e={};function n(r){if(e[r])return e[r].exports;var o=e[r]={i:r,l:!1,exports:{}};return t[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=t,n.c=e,n.d=function(t,e,r){n.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:r})},n.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},n.t=function(t,e){if(1&e&&(t=n(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var o in t)n.d(r,o,function(e){return t[e]}.bind(null,o));return r},n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,"a",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p="/dist/",n(n.s=129)}([function(t,e,n){"use strict";function r(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(t)){var n=[],r=!0,o=!1,i=void 0;try{for(var a,s=t[Symbol.iterator]();!(r=(a=s.next()).done)&&(n.push(a.value),!e||n.length!==e);r=!0);}catch(t){o=!0,i=t}finally{try{r||null==s.return||s.return()}finally{if(o)throw i}}return n}}(t,e)||function(t,e){if(t){if("string"==typeof t)return o(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?o(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function o(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n<e;n++)r[n]=t[n];return r}t.exports=function(t){var e=r(t,4),n=e[1],o=e[3];if("function"==typeof btoa){var i=btoa(unescape(encodeURIComponent(JSON.stringify(o)))),a="sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(i),s="/*# ".concat(a," */"),l=o.sources.map((function(t){return"/*# sourceURL=".concat(o.sourceRoot||"").concat(t," */")}));return[n].concat(l).concat([s]).join("\n")}return[n].join("\n")}},function(t,e,n){"use strict";t.exports=function(t){var e=[];return e.toString=function(){return this.map((function(e){var n=t(e);return e[2]?"@media ".concat(e[2]," {").concat(n,"}"):n})).join("")},e.i=function(t,n,r){"string"==typeof t&&(t=[[null,t,""]]);var o={};if(r)for(var i=0;i<this.length;i++){var a=this[i][0];null!=a&&(o[a]=!0)}for(var s=0;s<t.length;s++){var l=[].concat(t[s]);r&&o[l[0]]||(n&&(l[2]?l[2]="".concat(n," and ").concat(l[2]):l[2]=n),e.push(l))}},e}},function(t,e,n){"use strict";var r,o=function(){return void 0===r&&(r=Boolean(window&&document&&document.all&&!window.atob)),r},i=function(){var t={};return function(e){if(void 0===t[e]){var n=document.querySelector(e);if(window.HTMLIFrameElement&&n instanceof window.HTMLIFrameElement)try{n=n.contentDocument.head}catch(t){n=null}t[e]=n}return t[e]}}(),a=[];function s(t){for(var e=-1,n=0;n<a.length;n++)if(a[n].identifier===t){e=n;break}return e}function l(t,e){for(var n={},r=[],o=0;o<t.length;o++){var i=t[o],l=e.base?i[0]+e.base:i[0],c=n[l]||0,u="".concat(l," ").concat(c);n[l]=c+1;var p=s(u),A={css:i[1],media:i[2],sourceMap:i[3]};-1!==p?(a[p].references++,a[p].updater(A)):a.push({identifier:u,updater:m(A,e),references:1}),r.push(u)}return r}function c(t){var e=document.createElement("style"),r=t.attributes||{};if(void 0===r.nonce){var o=n.nc;o&&(r.nonce=o)}if(Object.keys(r).forEach((function(t){e.setAttribute(t,r[t])})),"function"==typeof t.insert)t.insert(e);else{var a=i(t.insert||"head");if(!a)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");a.appendChild(e)}return e}var u,p=(u=[],function(t,e){return u[t]=e,u.filter(Boolean).join("\n")});function A(t,e,n,r){var o=n?"":r.media?"@media ".concat(r.media," {").concat(r.css,"}"):r.css;if(t.styleSheet)t.styleSheet.cssText=p(e,o);else{var i=document.createTextNode(o),a=t.childNodes;a[e]&&t.removeChild(a[e]),a.length?t.insertBefore(i,a[e]):t.appendChild(i)}}function f(t,e,n){var r=n.css,o=n.media,i=n.sourceMap;if(o?t.setAttribute("media",o):t.removeAttribute("media"),i&&"undefined"!=typeof btoa&&(r+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(i))))," */")),t.styleSheet)t.styleSheet.cssText=r;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(r))}}var d=null,h=0;function m(t,e){var n,r,o;if(e.singleton){var i=h++;n=d||(d=c(e)),r=A.bind(null,n,i,!1),o=A.bind(null,n,i,!0)}else n=c(e),r=f.bind(null,n,e),o=function(){!function(t){if(null===t.parentNode)return!1;t.parentNode.removeChild(t)}(n)};return r(t),function(e){if(e){if(e.css===t.css&&e.media===t.media&&e.sourceMap===t.sourceMap)return;r(t=e)}else o()}}t.exports=function(t,e){(e=e||{}).singleton||"boolean"==typeof e.singleton||(e.singleton=o());var n=l(t=t||[],e);return function(t){if(t=t||[],"[object Array]"===Object.prototype.toString.call(t)){for(var r=0;r<n.length;r++){var o=s(n[r]);a[o].references--}for(var i=l(t,e),c=0;c<n.length;c++){var u=s(n[c]);0===a[u].references&&(a[u].updater(),a.splice(u,1))}n=i}}}},function(t,e,n){"use strict";function r(t,e,n,r,o,i,a,s){var l,c="function"==typeof t?t.options:t;if(e&&(c.render=e,c.staticRenderFns=n,c._compiled=!0),r&&(c.functional=!0),i&&(c._scopeId="data-v-"+i),a?(l=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__),o&&o.call(this,t),t&&t._registeredComponents&&t._registeredComponents.add(a)},c._ssrRegister=l):o&&(l=s?function(){o.call(this,(c.functional?this.parent:this).$root.$options.shadowRoot)}:o),l)if(c.functional){c._injectStyles=l;var u=c.render;c.render=function(t,e){return l.call(e),u(t,e)}}else{var p=c.beforeCreate;c.beforeCreate=p?[].concat(p,l):[l]}return{exports:t,options:c}}n.d(e,"a",(function(){return r}))},function(t,e,n){"use strict";t.exports=function(t,e){return e||(e={}),"string"!=typeof(t=t&&t.__esModule?t.default:t)?t:(/^['"].*['"]$/.test(t)&&(t=t.slice(1,-1)),e.hash&&(t+=e.hash),/["'() \t\n]/.test(t)||e.needQuotes?'"'.concat(t.replace(/"/g,'\\"').replace(/\n/g,"\\n"),'"'):t)}},function(t,e){t.exports=n(144)},function(t,e){t.exports=n(1539)},function(t,e){t.exports=n(2998)},function(t,e,n){"use strict";e.a="data:application/vnd.ms-fontobject;base64,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"},function(t,e,n){"use strict";e.a="data:font/woff;base64,d09GRgABAAAAAA8sAAoAAAAADuQAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABPUy8yAAAA9AAAAGAAAABgdOOP0WNtYXAAAAFUAAABQgAAAUIADeu4Z2x5ZgAAApgAAAf8AAAH/MdHOUxoZWFkAAAKlAAAADYAAAA2K2nBxmhoZWEAAArMAAAAJAAAACQm/ROFaG10eAAACvAAAAA0AAAANGe+//9sb2NhAAALJAAAACgAAAAoDbwPZm1heHAAAAtMAAAAIAAAACABIABXbmFtZQAAC2wAAAKmAAACpnH9Wkhwb3N0AAAOFAAAARYAAAEWP1S+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+AXIBPAE55eh8gAAAAQAAAAEAADh+5rVfDzz1AAsTiAAAAADclJzcAAAAANxDwN3/4AAAE5MTiAAAAAgAAgAAAAAAAAABAAATiAAAAAATiP/g//UTkwABAAAAAAAAAAAAAAAAAAAABwAAAAATiAAAE4gAABOIAAATiAAABjYAABOIAAAAAP//AAAAAAAAAAAAAAAA/+AAAAAAAAAAAAAAACIANgBYAGwAgACUALQBDgF8AZoCEAImAjQCQgKoAyIDpgP+AAEAAAATAEsAAwAAAAAAAgAAAAoACgAAAP8AAAAAAAAAAAAQAMYAAQAAAAAAAQAUAAAAAQAAAAAAAgAHABQAAQAAAAAAAwAUABsAAQAAAAAABAAUAC8AAQAAAAAABQALAEMAAQAAAAAABgAUAE4AAQAAAAAACgArAGIAAQAAAAAACwATAI0AAwABBAkAAQAoAKAAAwABBAkAAgAOAMgAAwABBAkAAwAoANYAAwABBAkABAAoAP4AAwABBAkABQAWASYAAwABBAkABgAoATwAAwABBAkACgBWAWQAAwABBAkACwAmAbppY29uZm9udC12dWUtNmI0OTRmY1JlZ3VsYXJpY29uZm9udC12dWUtNmI0OTRmY2ljb25mb250LXZ1ZS02YjQ5NGZjVmVyc2lvbiAxLjBpY29uZm9udC12dWUtNmI0OTRmY0dlbmVyYXRlZCBieSBzdmcydHRmIGZyb20gRm9udGVsbG8gcHJvamVjdC5odHRwOi8vZm9udGVsbG8uY29tAGkAYwBvAG4AZgBvAG4AdAAtAHYAdQBlAC0ANgBiADQAOQA0AGYAYwBSAGUAZwB1AGwAYQByAGkAYwBvAG4AZgBvAG4AdAAtAHYAdQBlAC0ANgBiADQAOQA0AGYAYwBpAGMAbwBuAGYAbwBuAHQALQB2AHUAZQAtADYAYgA0ADkANABmAGMAVgBlAHIAcwBpAG8AbgAgADEALgAwAGkAYwBvAG4AZgBvAG4AdAAtAHYAdQBlAC0ANgBiADQAOQA0AGYAYwBHAGUAbgBlAHIAYQB0AGUAZAAgAGIAeQAgAHMAdgBnADIAdAB0AGYAIABmAHIAbwBtACAARgBvAG4AdABlAGwAbABvACAAcAByAG8AagBlAGMAdAAuAGgAdAB0AHAAOgAvAC8AZgBvAG4AdABlAGwAbABvAC4AYwBvAG0AAAACAAAAAAAAADIAAAAAAAAAAAAAAAAAAAAAAAAAAAATABMAAAECAQMBBAEFAQYBBwEIAQkBCgELAQwBDQEOAQ8BEAERARIBExFhcnJvdy1sZWZ0LWRvdWJsZQphcnJvdy1sZWZ0EmFycm93LXJpZ2h0LWRvdWJsZQthcnJvdy1yaWdodApicmVhZGNydW1iCWNoZWNrbWFyawVjbG9zZQdjb25maXJtBGluZm8EbWVudQRtb3JlBXBhdXNlBHBsYXkKdHJpYW5nbGUtcxB1c2VyLXN0YXR1cy1hd2F5D3VzZXItc3RhdHVzLWRuZBV1c2VyLXN0YXR1cy1pbnZpc2libGUSdXNlci1zdGF0dXMtb25saW5lAAA="},function(t,e,n){"use strict";e.a="data:font/ttf;base64,AAEAAAAKAIAAAwAgT1MvMnTjj9EAAACsAAAAYGNtYXAADeu4AAABDAAAAUJnbHlmx0c5TAAAAlAAAAf8aGVhZCtpwcYAAApMAAAANmhoZWEm/ROFAAAKhAAAACRobXR4Z77//wAACqgAAAA0bG9jYQ28D2YAAArcAAAAKG1heHABIABXAAALBAAAACBuYW1lcf1aSAAACyQAAAKmcG9zdD9UvtcAAA3MAAABFgAEEsoBkAAFAAAMZQ2sAAACvAxlDawAAAlgAPUFCgAAAgAFAwAAAAAAAAAAAAAQAAAAAAAAAAAAAABQZkVkAEDqAeoSE4gAAAHCE4gAAAAAAAEAAAAAAAAAAAAAACAAAAAAAAMAAAADAAAAHAABAAAAAAA8AAMAAQAAABwABAAgAAAABAAEAAEAAOoS//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+AXIBPAE55eh8gAAAAQAAAAEAADh+5rVfDzz1AAsTiAAAAADclJzcAAAAANxDwN3/4AAAE5MTiAAAAAgAAgAAAAAAAAABAAATiAAAAAATiP/g//UTkwABAAAAAAAAAAAAAAAAAAAABwAAAAATiAAAE4gAABOIAAATiAAABjYAABOIAAAAAP//AAAAAAAAAAAAAAAA/+AAAAAAAAAAAAAAACIANgBYAGwAgACUALQBDgF8AZoCEAImAjQCQgKoAyIDpgP+AAEAAAATAEsAAwAAAAAAAgAAAAoACgAAAP8AAAAAAAAAAAAQAMYAAQAAAAAAAQAUAAAAAQAAAAAAAgAHABQAAQAAAAAAAwAUABsAAQAAAAAABAAUAC8AAQAAAAAABQALAEMAAQAAAAAABgAUAE4AAQAAAAAACgArAGIAAQAAAAAACwATAI0AAwABBAkAAQAoAKAAAwABBAkAAgAOAMgAAwABBAkAAwAoANYAAwABBAkABAAoAP4AAwABBAkABQAWASYAAwABBAkABgAoATwAAwABBAkACgBWAWQAAwABBAkACwAmAbppY29uZm9udC12dWUtNmI0OTRmY1JlZ3VsYXJpY29uZm9udC12dWUtNmI0OTRmY2ljb25mb250LXZ1ZS02YjQ5NGZjVmVyc2lvbiAxLjBpY29uZm9udC12dWUtNmI0OTRmY0dlbmVyYXRlZCBieSBzdmcydHRmIGZyb20gRm9udGVsbG8gcHJvamVjdC5odHRwOi8vZm9udGVsbG8uY29tAGkAYwBvAG4AZgBvAG4AdAAtAHYAdQBlAC0ANgBiADQAOQA0AGYAYwBSAGUAZwB1AGwAYQByAGkAYwBvAG4AZgBvAG4AdAAtAHYAdQBlAC0ANgBiADQAOQA0AGYAYwBpAGMAbwBuAGYAbwBuAHQALQB2AHUAZQAtADYAYgA0ADkANABmAGMAVgBlAHIAcwBpAG8AbgAgADEALgAwAGkAYwBvAG4AZgBvAG4AdAAtAHYAdQBlAC0ANgBiADQAOQA0AGYAYwBHAGUAbgBlAHIAYQB0AGUAZAAgAGIAeQAgAHMAdgBnADIAdAB0AGYAIABmAHIAbwBtACAARgBvAG4AdABlAGwAbABvACAAcAByAG8AagBlAGMAdAAuAGgAdAB0AHAAOgAvAC8AZgBvAG4AdABlAGwAbABvAC4AYwBvAG0AAAACAAAAAAAAADIAAAAAAAAAAAAAAAAAAAAAAAAAAAATABMAAAECAQMBBAEFAQYBBwEIAQkBCgELAQwBDQEOAQ8BEAERARIBExFhcnJvdy1sZWZ0LWRvdWJsZQphcnJvdy1sZWZ0EmFycm93LXJpZ2h0LWRvdWJsZQthcnJvdy1yaWdodApicmVhZGNydW1iCWNoZWNrbWFyawVjbG9zZQdjb25maXJtBGluZm8EbWVudQRtb3JlBXBhdXNlBHBsYXkKdHJpYW5nbGUtcxB1c2VyLXN0YXR1cy1hd2F5D3VzZXItc3RhdHVzLWRuZBV1c2VyLXN0YXR1cy1pbnZpc2libGUSdXNlci1zdGF0dXMtb25saW5lAAA="},function(t,e,n){"use strict";e.a="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCIgPjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48bWV0YWRhdGE+PC9tZXRhZGF0YT48ZGVmcz48Zm9udCBpZD0iaWNvbmZvbnQtdnVlLTZiNDk0ZmMiIGhvcml6LWFkdi14PSI1MDAwIj48Zm9udC1mYWNlIGZvbnQtZmFtaWx5PSJpY29uZm9udC12dWUtNmI0OTRmYyIgZm9udC13ZWlnaHQ9IjQwMCIgZm9udC1zdHJldGNoPSJub3JtYWwiIHVuaXRzLXBlci1lbT0iNTAwMCIgcGFub3NlLTE9IjIgMCA1IDMgMCAwIDAgMCAwIDAiIGFzY2VudD0iNTAwMCIgZGVzY2VudD0iMCIgeC1oZWlnaHQ9IjAiIGJib3g9Ii0zMiAwIDUwMTEgNTAwMCIgdW5kZXJsaW5lLXRoaWNrbmVzcz0iMCIgdW5kZXJsaW5lLXBvc2l0aW9uPSI1MCIgdW5pY29kZS1yYW5nZT0iVStlYTAxLWVhMTIiIC8+PG1pc3NpbmctZ2x5cGggaG9yaXotYWR2LXg9IjAiICAvPjxnbHlwaCBnbHlwaC1uYW1lPSJhcnJvdy1sZWZ0LWRvdWJsZSIgdW5pY29kZT0iJiN4ZWEwMTsiIGQ9Ik0zNzUwIDM5MDYgbC0xNDA2IC0xNDA2IGwxNDA2IC0xNDA2IGwwIDMxMiBsLTEwOTQgMTA5NCBsMTA5NCAxMDk0IGwwIDMxMiBaTTIzNDQgMzkwNiBsLTE0MDYgLTE0MDYgbDE0MDYgLTE0MDYgbDAgMzEyIGwtMTA5NCAxMDk0IGwxMDk0IDEwOTQgbDAgMzEyIFoiIC8+PGdseXBoIGdseXBoLW5hbWU9ImFycm93LWxlZnQiIHVuaWNvZGU9IiYjeGVhMDI7IiBkPSJNMTU2MyAyNTAwIGwxODc1IC0xODc1IGwwIC0zMTIgbC0yMTg4IDIxODcgbDIxODggMjE4OCBsMCAtMzEzIGwtMTg3NSAtMTg3NSBaIiAvPjxnbHlwaCBnbHlwaC1uYW1lPSJhcnJvdy1yaWdodC1kb3VibGUiIHVuaWNvZGU9IiYjeGVhMDM7IiBkPSJNMTI1MCAxMDk0IGwxNDA2IDE0MDYgbC0xNDA2IDE0MDYgbDAgLTMxMiBsMTA5NCAtMTA5NCBsLTEwOTQgLTEwOTQgbDAgLTMxMiBaTTI2NTYgMTA5NCBsMTQwNyAxNDA2IGwtMTQwNyAxNDA2IGwwIC0zMTIgbDEwOTQgLTEwOTQgbC0xMDk0IC0xMDk0IGwwIC0zMTIgWiIgLz48Z2x5cGggZ2x5cGgtbmFtZT0iYXJyb3ctcmlnaHQiIHVuaWNvZGU9IiYjeGVhMDQ7IiBkPSJNMzQzOCAyNTAwIGwtMTg3NSAxODc1IGwwIDMxMyBsMjE4NyAtMjE4OCBsLTIxODcgLTIxODcgbDAgMzEyIGwxODc1IDE4NzUgWiIgLz48Z2x5cGggZ2x5cGgtbmFtZT0iYnJlYWRjcnVtYiIgdW5pY29kZT0iJiN4ZWEwNTsiIGQ9Ik0xNDggNTAwMCBsLTE0OCAtODUgbDEzOTQgLTI0MTUgbC0xMzk0IC0yNDE1IGwxNDggLTg1IGwxNDQzIDI1MDAgbC0xNDQzIDI1MDAgWiIgLz48Z2x5cGggZ2x5cGgtbmFtZT0iY2hlY2ttYXJrIiB1bmljb2RlPSImI3hlYTA2OyIgZD0iTTQwNDUgMzk3MSBsLTIwNjEgLTIwNjEgbC0xMDI5IDEwMjkgbC00NDIgLTQ0MSBsMTQ3MSAtMTQ3MSBsMjUwMyAyNTAyIGwtNDQyIDQ0MiBaIiAvPjxnbHlwaCBnbHlwaC1uYW1lPSJjbG9zZSIgdW5pY29kZT0iJiN4ZWEwNzsiIGQ9Ik00Mzc1IDExNTYgbC01MzEgLTUzMSBsLTEzNDQgMTM0NCBsLTEzNDQgLTEzNDQgbC01MzEgNTMxIGwxMzQ0IDEzNDQgbC0xMzQ0IDEzNDQgbDUzMSA1MzEgbDEzNDQgLTEzNDQgbDEzNDQgMTM0NCBsNTMxIC01MzEgbC0xMzQ0IC0xMzQ0IGwxMzQ0IC0xMzQ0IFoiIC8+PGdseXBoIGdseXBoLW5hbWU9ImNvbmZpcm0iIHVuaWNvZGU9IiYjeGVhMDg7IiBkPSJNMjY1NiA0ODQ0IHEtMTAxIDAgLTE4MCAtNTcgcS03NCAtNTIgLTEwOSAtMTM4IHEtMzUgLTg2IC0xOSAtMTc1IHExOCAtOTYgOTAgLTE2NyBsMTQ5NSAtMTQ5NCBsLTM2MTYgMCBxLTc3IDEgLTEzOSAtMjYgcS01OCAtMjQgLTk5IC03MCBxLTM5IC00NCAtNTkgLTEwMSBxLTIwIC01NiAtMjAgLTExNiBxMCAtNjAgMjAgLTExNiBxMjAgLTU3IDU5IC0xMDEgcTQxIC00NiA5OSAtNzAgcTYyIC0yNyAxMzkgLTI1IGwzNjE2IDAgbC0xNDk1IC0xNDk1IHEtNTUgLTUzIC04MSAtMTE2IHEtMjQgLTU5IC0yMSAtMTIxIHEzIC01OCAzMCAtMTEzIHEyNSAtNTQgNjggLTk3IHE0MyAtNDMgOTYgLTY4IHE1NSAtMjYgMTE0IC0yOSBxNjIgLTMgMTIwIDIxIHE2MyAyNSAxMTYgODEgbDIwMjkgMjAyOCBxNTkgNjAgODAgMTQxIHEyMSA4MCAxIDE1OSBxLTIxIDgyIC04MSAxNDIgbC0yMDI5IDIwMjggcS00NCA0NSAtMTAyIDcwIHEtNTggMjUgLTEyMiAyNSBaIiAvPjxnbHlwaCBnbHlwaC1uYW1lPSJpbmZvIiB1bmljb2RlPSImI3hlYTA5OyIgZD0iTTI0MjIgNDY4OCBxLTExMSAwIC0yMTMgLTQzIHEtOTggLTQyIC0xNzQgLTExNy41IHEtNzYgLTc1LjUgLTExNyAtMTc0LjUgcS00MyAtMTAxIC00MyAtMjEyLjUgcTAgLTExMS41IDQzIC0yMTIuNSBxNDEgLTk4IDExNyAtMTc0IHE3NiAtNzYgMTc0IC0xMTcgcTEwMiAtNDMgMjEzIC00MyBxMTExIDAgMjEzIDQzIHE5OCA0MSAxNzMuNSAxMTcgcTc1LjUgNzYgMTE3LjUgMTc0IHE0MyAxMDEgNDMgMjEyLjUgcTAgMTExLjUgLTQzIDIxMi41IHEtNDIgOTkgLTExNy41IDE3NC41IHEtNzUuNSA3NS41IC0xNzMuNSAxMTcuNSBxLTEwMiA0MyAtMjEzIDQzIFpNMTU2MyAzMTI1IHEtODYgMCAtMTU4IC00MyBxLTcxIC00MSAtMTEyIC0xMTIgcS00MyAtNzIgLTQzIC0xNTcuNSBxMCAtODUuNSA0MyAtMTU3LjUgcTQxIC03MSAxMTIgLTExMiBxNzIgLTQzIDE1OCAtNDMgbDYyNSAwIGwwIC0xNTYyIGwtNjI1IDAgcS04NiAwIC0xNTggLTQzIHEtNzEgLTQxIC0xMTIgLTExMiBxLTQzIC03MyAtNDMgLTE1OCBxMCAtODUgNDMgLTE1OCBxNDEgLTcxIDExMiAtMTEyIHE3MiAtNDMgMTU4IC00MiBsMTg3NSAwIHE4NSAwIDE1NyA0MiBxNzEgNDEgMTEyIDExMiBxNDMgNzMgNDMgMTU4IHEwIDg1IC00MyAxNTggcS00MSA3MSAtMTEyIDExMiBxLTcyIDQzIC0xNTcgNDMgbC02MjUgMCBsMCAxODc1IHEwIDg1IC00MyAxNTcgcS00MSA3MSAtMTEyIDExMiBxLTczIDQzIC0xNTggNDMgbC05MzcgMCBaIiAvPjxnbHlwaCBnbHlwaC1uYW1lPSJtZW51IiB1bmljb2RlPSImI3hlYTBhOyIgZD0iTTYyNSA0Mzc1IGwwIC02MjUgbDM3NTAgMCBsMCA2MjUgbC0zNzUwIDAgWk02MjUgMjgxMyBsMCAtNjI1IGwzNzUwIDAgbDAgNjI1IGwtMzc1MCAwIFpNNjI1IDEyNTAgbDAgLTYyNSBsMzc1MCAwIGwwIDYyNSBsLTM3NTAgMCBaIiAvPjxnbHlwaCBnbHlwaC1uYW1lPSJtb3JlIiB1bmljb2RlPSImI3hlYTBiOyIgZD0iTTc4MSAzMDQ3IHExMTIgMCAyMTMgLTQzIHE5OCAtNDIgMTc0IC0xMTcuNSBxNzYgLTc1LjUgMTE3IC0xNzMuNSBxNDMgLTEwMiA0MyAtMjEzIHEwIC0xMTEgLTQzIC0yMTMgcS00MSAtOTggLTExNyAtMTczLjUgcS03NiAtNzUuNSAtMTc0IC0xMTcuNSBxLTEwMSAtNDMgLTIxMi41IC00MyBxLTExMS41IDAgLTIxMy41IDQzIHEtOTggNDIgLTE3My41IDExNy41IHEtNzUuNSA3NS41IC0xMTcuNSAxNzMuNSBxLTQzIDEwMiAtNDMgMjEzIHEwIDExMSA0MyAyMTMgcTQyIDk4IDExNy41IDE3My41IHE3NS41IDc1LjUgMTczLjUgMTE3LjUgcTEwMiA0MyAyMTMgNDMgWk0yNTAwIDMwNDcgcTExMSAwIDIxMyAtNDMgcTk4IC00MiAxNzMuNSAtMTE3LjUgcTc1LjUgLTc1LjUgMTE3LjUgLTE3My41IHE0MyAtMTAyIDQzIC0yMTMgcTAgLTExMSAtNDMgLTIxMyBxLTQyIC05OCAtMTE3LjUgLTE3My41IHEtNzUuNSAtNzUuNSAtMTczLjUgLTExNy41IHEtMTAyIC00MyAtMjEzIC00MyBxLTExMSAwIC0yMTMgNDMgcS05OCA0MiAtMTczLjUgMTE3LjUgcS03NS41IDc1LjUgLTExNy41IDE3My41IHEtNDMgMTAyIC00MyAyMTMgcTAgMTExIDQzIDIxMyBxNDIgOTggMTE3LjUgMTczLjUgcTc1LjUgNzUuNSAxNzMuNSAxMTcuNSBxMTAyIDQzIDIxMyA0MyBaTTQyMTkgMzA0NyBxMTExIDAgMjEzIC00MyBxOTggLTQyIDE3My41IC0xMTcuNSBxNzUuNSAtNzUuNSAxMTcuNSAtMTczLjUgcTQzIC0xMDIgNDMgLTIxMyBxMCAtMTExIC00MyAtMjEzIHEtNDIgLTk4IC0xMTcuNSAtMTczLjUgcS03NS41IC03NS41IC0xNzMuNSAtMTE3LjUgcS0xMDIgLTQzIC0yMTMuNSAtNDMgcS0xMTEuNSAwIC0yMTIuNSA0MyBxLTk4IDQyIC0xNzQgMTE3LjUgcS03NiA3NS41IC0xMTcgMTczLjUgcS00MyAxMDIgLTQzIDIxMyBxMCAxMTEgNDMgMjEzIHE0MSA5OCAxMTcgMTczLjUgcTc2IDc1LjUgMTc0IDExNy41IHExMDEgNDMgMjEzIDQzIFoiIC8+PGdseXBoIGdseXBoLW5hbWU9InBhdXNlIiB1bmljb2RlPSImI3hlYTBjOyIgZD0iTTkzOCA0MDYzIGwwIC0zMTI1IGwxMjUwIDAgbDAgMzEyNSBsLTEyNTAgMCBaTTI4MTMgNDA2MyBsMCAtMzEyNSBsMTI1MCAwIGwwIDMxMjUgbC0xMjUwIDAgWiIgLz48Z2x5cGggZ2x5cGgtbmFtZT0icGxheSIgdW5pY29kZT0iJiN4ZWEwZDsiIGQ9Ik02MjUgNDM3NSBsMzc1MCAtMTg3NSBsLTM3NTAgLTE4NzUgbDAgMzc1MCBaIiAvPjxnbHlwaCBnbHlwaC1uYW1lPSJ0cmlhbmdsZS1zIiB1bmljb2RlPSImI3hlYTBlOyIgZD0iTTEyNTAgMzEyNSBsMTI1MCAtMTI1MCBsMTI1MCAxMjQ4IGwtMjUwMCAyIFoiIC8+PGdseXBoIGdseXBoLW5hbWU9InVzZXItc3RhdHVzLWF3YXkiIHVuaWNvZGU9IiYjeGVhMGY7IiBkPSJNMjE1NiA0OTY5IHEtMzYwIC00NiAtNjk1IC0xOTcgcS0zMjYgLTE0NyAtNjAxIC0zODAgcS0yNzQgLTIzMSAtNDcyIC01MjggcS0yMDIgLTMwMSAtMzA5IC02NDIgcS0xMTAgLTM1MyAtMTEwIC03MjIgcTAgLTQwNiAxMjggLTc4OCBxMTIzIC0zNzAgMzU2IC02ODYgcTIyOSAtMzEzIDU0MiAtNTQyIHEzMTYgLTIzMiA2ODYgLTM1NiBxMzgyIC0xMjggNzg4IC0xMjggcTM2OSAwIDcyMiAxMDcgcTM0MiAxMDQgNjQ0IDMwMSBxMjk4IDE5NCA1MzMgNDYzIHEyMzYgMjcwIDM4OSA1OTMgcTE1NiAzMzEgMjEyIDY5MiBxLTE4OCAtMjA0IC00MjMuNSAtMzUxIHEtMjM1LjUgLTE0NyAtNDk4LjUgLTIyNSBxLTI2OSAtODAgLTU0NyAtODAgcS0zMjIgMCAtNjI4IDEwMyBxLTI5NSA5OSAtNTQ4IDI4NiBxLTI1MSAxODQgLTQzNSA0MzUgcS0xODcgMjUzIC0yODYgNTQ4IHEtMTAzIDMwNiAtMTAzIDYyOCBxMCAyOTMgODAgNTY4IHE3OCAyNjkgMjI1LjUgNDk4LjUgcTE0Ny41IDIyOS41IDM1MC41IDQwMi41IFoiIC8+PGdseXBoIGdseXBoLW5hbWU9InVzZXItc3RhdHVzLWRuZCIgdW5pY29kZT0iJiN4ZWExMDsiIGQ9Ik0yNTAwIDUwMDAgcS00MDYgMCAtNzg4IC0xMjggcS0zNzAgLTEyNCAtNjg2IC0zNTYgcS0zMTMgLTIyOSAtNTQyIC01NDIgcS0yMzIgLTMxNiAtMzU2IC02ODYgcS0xMjggLTM4MiAtMTI4IC03ODggcTAgLTQwNiAxMjggLTc4OCBxMTI0IC0zNzAgMzU2IC02ODYgcTIyOSAtMzEzIDU0MiAtNTQyIHEzMTYgLTIzMiA2ODYgLTM1NiBxMzgyIC0xMjggNzg4IC0xMjggcTQwNiAwIDc4OCAxMjggcTM3MCAxMjQgNjg2IDM1NiBxMzEzIDIyOSA1NDIgNTQyIHEyMzIgMzE2IDM1NiA2ODYgcTEyOCAzODIgMTI4IDc4OCBxMCA0MDYgLTEyOCA3ODggcS0xMjQgMzcwIC0zNTYgNjg2IHEtMjI5IDMxMyAtNTQyIDU0MiBxLTMxNiAyMzIgLTY4NiAzNTYgcS0zODIgMTI4IC03ODggMTI4IFpNMTU2MyAyOTY5IGwxODc1IDAgcTkxIDAgMTc4IC0zOCBxODQgLTM3IDE1MCAtMTAzIHE2NiAtNjYgMTAyIC0xNDkgcTM4IC04NyAzOCAtMTc5IHEwIC05MiAtMzggLTE3OSBxLTM2IC04MyAtMTAyIC0xNDkgcS02NiAtNjYgLTE1MCAtMTAzIHEtODcgLTM4IC0xNzggLTM4IGwtMTg3NSAwIHEtOTIgMCAtMTc5IDM4IHEtODQgMzcgLTE1MCAxMDMgcS02NiA2NiAtMTAyIDE0OSBxLTM4IDg3IC0zOCAxNzkgcTAgOTIgMzggMTc5IHEzNiA4MyAxMDIgMTQ5IHE2NiA2NiAxNTAgMTAzIHE4NyAzOCAxNzkgMzggWiIgLz48Z2x5cGggZ2x5cGgtbmFtZT0idXNlci1zdGF0dXMtaW52aXNpYmxlIiB1bmljb2RlPSImI3hlYTExOyIgZD0iTTI1MDAgNTAwMCBxLTQwNiAwIC03ODggLTEyOCBxLTM3MCAtMTI0IC02ODYgLTM1NiBxLTMxMyAtMjI5IC01NDIgLTU0MiBxLTIzMiAtMzE2IC0zNTYgLTY4NiBxLTEyOCAtMzgyIC0xMjggLTc4OCBxMCAtNDA2IDEyOCAtNzg4IHExMjQgLTM3MCAzNTYgLTY4NiBxMjI5IC0zMTMgNTQyIC01NDIgcTMxNiAtMjMyIDY4NiAtMzU2IHEzODIgLTEyOCA3ODggLTEyOCBxNDA2IDAgNzg4IDEyOCBxMzcwIDEyNCA2ODYgMzU2IHEzMTMgMjI5IDU0MiA1NDIgcTIzMiAzMTYgMzU2IDY4NiBxMTI4IDM4MiAxMjggNzg4IHEwIDQwNiAtMTI4IDc4OCBxLTEyNCAzNzAgLTM1NiA2ODYgcS0yMjkgMzEzIC01NDIgNTQyIHEtMzE2IDIzMiAtNjg2IDM1NiBxLTM4MiAxMjggLTc4OCAxMjggWk0yNTAwIDQwMDAgcTMxMSAwIDU5MCAtMTE2IHEyNzEgLTExMiA0NzYuNSAtMzE3LjUgcTIwNS41IC0yMDUuNSAzMTcuNSAtNDc2LjUgcTExNiAtMjc5IDExNiAtNTkwIHEwIC0zMTEgLTExNiAtNTkwIHEtMTEyIC0yNzEgLTMxNy41IC00NzYuNSBxLTIwNS41IC0yMDUuNSAtNDc2LjUgLTMxNy41IHEtMjc5IC0xMTYgLTU5MCAtMTE2IHEtMzExIDAgLTU5MCAxMTYgcS0yNzEgMTEyIC00NzYuNSAzMTcuNSBxLTIwNS41IDIwNS41IC0zMTcuNSA0NzYuNSBxLTExNiAyNzkgLTExNiA1OTAgcTAgMzExIDExNiA1OTAgcTExMiAyNzEgMzE3LjUgNDc2LjUgcTIwNS41IDIwNS41IDQ3Ni41IDMxNy41IHEyNzkgMTE2IDU5MCAxMTYgWiIgLz48Z2x5cGggZ2x5cGgtbmFtZT0idXNlci1zdGF0dXMtb25saW5lIiB1bmljb2RlPSImI3hlYTEyOyIgZD0iTTE1MDAgMTUwMCBsMjAwMCAwIGwwIDIwMDAgbC0yMDAwIDAgbDAgLTIwMDAgWk0yNTAwIDUwMDAgcS00MDYgMCAtNzg4IC0xMjggcS0zNzAgLTEyNCAtNjg2IC0zNTYgcS0zMTMgLTIyOSAtNTQyIC01NDIgcS0yMzIgLTMxNiAtMzU2IC02ODYgcS0xMjggLTM4MiAtMTI4IC03ODggcTAgLTQwNiAxMjggLTc4OCBxMTI0IC0zNzAgMzU2IC02ODYgcTIyOSAtMzEzIDU0MiAtNTQyIHEzMTYgLTIzMiA2ODYgLTM1NiBxMzgyIC0xMjggNzg4IC0xMjggcTQwNiAwIDc4OCAxMjggcTM3MCAxMjQgNjg2IDM1NiBxMzEzIDIyOSA1NDIgNTQyIHEyMzIgMzE2IDM1NiA2ODYgcTEyOCAzODIgMTI4IDc4OCBxMCA0MDYgLTEyOCA3ODggcS0xMjQgMzcwIC0zNTYgNjg2IHEtMjI5IDMxMyAtNTQyIDU0MiBxLTMxNiAyMzIgLTY4NiAzNTYgcS0zODIgMTI4IC03ODggMTI4IFoiIC8+PC9mb250PjwvZGVmcz48L3N2Zz4="},function(t,e,n){"use strict";n.d(e,"b",(function(){return s})),n.d(e,"a",(function(){return a})),n(26);var r=n(33),o=Object(r.getGettextBuilder)().detectLocale();[{locale:"br",translations:{"{tag} (invisible)":"{tag} (diwelus)","{tag} (restricted)":"{tag} (bevennet)",Actions:"Oberioù",Activities:"Oberiantizoù","Animals & Nature":"Loened & Natur",Choose:"Dibab",Close:"Serriñ",Custom:"Personelañ",Flags:"Bannieloù","Food & Drink":"Boued & Evajoù","Frequently used":"Implijet alies",Next:"Da heul","No emoji found":"Emoji ebet kavet","No results":"Disoc'h ebet",Objects:"Traoù","Pause slideshow":"Arsav an diaporama","People & Body":"Tud & Korf","Pick an emoji":"Choaz un emoji",Previous:"A-raok",Search:"Klask","Search results":"Disoc'hoù an enklask","Select a tag":"Choaz ur c'hlav",Settings:"Arventennoù","Smileys & Emotion":"Smileyioù & Fromoù","Start slideshow":"Kregiñ an diaporama",Symbols:"Arouezioù","Travel & Places":"Beaj & Lec'hioù","Unable to search the group":"Dibosupl eo klask ar strollad"}},{locale:"ca",translations:{"{tag} (invisible)":"{tag} (invisible)","{tag} (restricted)":"{tag} (restringit)",Actions:"Accions",Activities:"Activitats","Animals & Nature":"Animals i natura",Choose:"Tria",Close:"Tanca",Custom:"Personalitzat",Flags:"Marques","Food & Drink":"Menjar i begudes","Frequently used":"Utilitzats recentment","Message limit of {count} characters reached":"S'ha arribat al límit de {count} caràcters per missatge",Next:"Següent","No emoji found":"No s'ha trobat cap emoji","No results":"Sense resultats",Objects:"Objectes","Pause slideshow":"Atura la presentació","People & Body":"Persones i cos","Pick an emoji":"Trieu un emoji",Previous:"Anterior",Search:"Cerca","Search results":"Resultats de cerca","Select a tag":"Selecciona una etiqueta",Settings:"Paràmetres","Settings navigation":"Navegació d'opcions","Smileys & Emotion":"Cares i emocions","Start slideshow":"Inicia la presentació",Symbols:"Símbols","Travel & Places":"Viatges i llocs","Unable to search the group":"No es pot cercar el grup","Write message, @ to mention someone …":"Escriu un missatge, @ per mencionar algú..."}},{locale:"cs_CZ",translations:{"{tag} (invisible)":"{tag} (neviditelné)","{tag} (restricted)":"{tag} (omezené)",Actions:"Akce",Activities:"Aktivity","Animals & Nature":"Zvířata a příroda",Choose:"Zvolit",Close:"Zavřít",Custom:"Uživatelsky určené","External documentation for {title}":"Externí dokumentace k {title}",Flags:"Příznaky","Food & Drink":"Jídlo a pití","Frequently used":"Často používané","Message limit of {count} characters reached":"Dosaženo limitu počtu ({count}) znaků zprávy",Next:"Následující","No emoji found":"Nenalezeno žádné emoji","No results":"Nic nenalezeno",Objects:"Objekty","Pause slideshow":"Pozastavit prezentaci","People & Body":"Lidé a tělo","Pick an emoji":"Vybrat emoji",Previous:"Předchozí",Search:"Hledat","Search results":"Výsledky hledání","Select a tag":"Vybrat štítek",Settings:"Nastavení","Settings navigation":"Pohyb po nastavení","Smileys & Emotion":"Úsměvy a emoce","Start slideshow":"Spustit prezentaci",Submit:"Odeslat",Symbols:"Symboly","Travel & Places":"Cestování a místa","Unable to search the group":"Nedaří se hledat skupinu","Write message, @ to mention someone …":"Pište zprávu, pokud chcete někoho zmínit, použijte @ …"}},{locale:"da",translations:{"{tag} (invisible)":"{tag} (usynlig)","{tag} (restricted)":"{tag} (begrænset)",Actions:"Handlinger",Activities:"Aktiviteter","Animals & Nature":"Dyr & Natur",Choose:"Vælg",Close:"Luk",Custom:"Brugerdefineret",Flags:"Flag","Food & Drink":"Mad & Drikke","Frequently used":"Ofte brugt","Message limit of {count} characters reached":"Begrænsning på {count} tegn er nået",Next:"Videre","No emoji found":"Ingen emoji fundet","No results":"Ingen resultater",Objects:"Objekter","Pause slideshow":"Suspender fremvisning","People & Body":"Mennesker & Menneskekroppen","Pick an emoji":"Vælg en emoji",Previous:"Forrige",Search:"Søg","Search results":"Søgeresultater","Select a tag":"Vælg et mærke",Settings:"Indstillinger","Settings navigation":"Naviger i indstillinger","Smileys & Emotion":"Smileys & Emotion","Start slideshow":"Start fremvisning",Symbols:"Symboler","Travel & Places":"Rejser & Rejsemål","Unable to search the group":"Kan ikke søge på denne gruppe","Write message, @ to mention someone …":"Skriv i meddelelse, @ for at nævne nogen …"}},{locale:"de",translations:{"{tag} (invisible)":"{tag} (unsichtbar)","{tag} (restricted)":"{tag} (eingeschränkt)",Actions:"Aktionen",Activities:"Aktivitäten","Animals & Nature":"Tiere & Natur",Choose:"Auswählen",Close:"Schließen",Custom:"Benutzerdefiniert","External documentation for {title}":"Externe Dokumentation für {title}",Flags:"Flaggen","Food & Drink":"Essen & Trinken","Frequently used":"Häufig verwendet","Message limit of {count} characters reached":"Nachrichtenlimit von {count} Zeichen erreicht",Next:"Weiter","No emoji found":"Kein Emoji gefunden","No results":"Keine Ergebnisse",Objects:"Gegenstände","Pause slideshow":"Diashow pausieren","People & Body":"Menschen & Körper","Pick an emoji":"Ein Emoji auswählen",Previous:"Vorherige",Search:"Suche","Search results":"Suchergebnisse","Select a tag":"Schlagwort auswählen",Settings:"Einstellungen","Settings navigation":"Einstellungen-Navigation","Smileys & Emotion":"Smileys & Emotionen","Start slideshow":"Diashow starten",Submit:"Einreichen",Symbols:"Symbole","Travel & Places":"Reisen & Orte","Unable to search the group":"Die Gruppe konnte nicht durchsucht werden","Write message, @ to mention someone …":"Nachricht schreiben, @ um jemanden zu erwähnen ..."}},{locale:"de_DE",translations:{"{tag} (invisible)":"{tag} (unsichtbar)","{tag} (restricted)":"{tag} (eingeschränkt)",Actions:"Aktionen",Activities:"Aktivitäten","Animals & Nature":"Tiere & Natur",Choose:"Auswählen",Close:"Schließen",Custom:"Benutzerdefiniert","External documentation for {title}":"Externe Dokumentation für {title}",Flags:"Flaggen","Food & Drink":"Essen & Trinken","Frequently used":"Häufig verwendet","Message limit of {count} characters reached":"Nachrichtenlimit von {count} Zeichen erreicht",Next:"Weiter","No emoji found":"Kein Emoji gefunden","No results":"Keine Ergebnisse",Objects:"Gegenstände","Pause slideshow":"Diashow pausieren","People & Body":"Menschen & Körper","Pick an emoji":"Ein Emoji auswählen",Previous:"Vorherige",Search:"Suche","Search results":"Suchergebnisse","Select a tag":"Schlagwort auswählen",Settings:"Einstellungen","Settings navigation":"Einstellungen-Navigation","Smileys & Emotion":"Smileys & Emotionen","Start slideshow":"Diashow starten",Submit:"Einreichen",Symbols:"Symbole","Travel & Places":"Reisen & Orte","Unable to search the group":"Die Gruppe kann nicht durchsucht werden","Write message, @ to mention someone …":"Nachricht schreiben, @ um jemanden zu erwähnen ..."}},{locale:"el",translations:{"{tag} (invisible)":"{tag} (αόρατο)","{tag} (restricted)":"{tag} (περιορισμένο)",Actions:"Ενέργειες",Activities:"Δραστηριότητες","Animals & Nature":"Ζώα & Φύση",Choose:"Επιλογή",Close:"Κλείσιμο",Custom:"Προσαρμογή",Flags:"Σημαίες","Food & Drink":"Φαγητό & Ποτό","Frequently used":"Συχνά χρησιμοποιούμενο",Next:"Επόμενο","No emoji found":"Δεν βρέθηκε emoji","No results":"Κανένα αποτέλεσμα",Objects:"Αντικείμενα","Pause slideshow":"Παύση προβολής διαφανειών","People & Body":"Άνθρωποι & Σώμα","Pick an emoji":"Επιλέξτε ένα emoji",Previous:"Προηγούμενο",Search:"Αναζήτηση","Search results":"Αποτελέσματα αναζήτησης","Select a tag":"Επιλογή ετικέτας",Settings:"Ρυθμίσεις","Smileys & Emotion":"Φατσούλες & Συναίσθημα","Start slideshow":"Έναρξη προβολής διαφανειών",Symbols:"Σύμβολα","Travel & Places":"Ταξίδια & Τοποθεσίες","Unable to search the group":"Δεν είναι δυνατή η αναζήτηση της ομάδας"}},{locale:"eo",translations:{"{tag} (invisible)":"{tag} (kaŝita)","{tag} (restricted)":"{tag} (limigita)",Actions:"Agoj",Activities:"Aktiveco","Animals & Nature":"Bestoj & Naturo",Choose:"Elektu",Close:"Fermu",Custom:"Propra",Flags:"Flagoj","Food & Drink":"Manĝaĵo & Trinkaĵo","Frequently used":"Ofte uzataj","Message limit of {count} characters reached":"La limo je {count} da literoj atingita",Next:"Sekva","No emoji found":"La emoĝio forestas","No results":"La rezulto forestas",Objects:"Objektoj","Pause slideshow":"Payzi bildprezenton","People & Body":"Homoj & Korpo","Pick an emoji":"Elekti emoĝion ",Previous:"Antaŭa",Search:"Serĉi","Search results":"Serĉrezultoj","Select a tag":"Elektu etikedon",Settings:"Agordo","Settings navigation":"Agorda navigado","Smileys & Emotion":"Ridoj kaj Emocioj","Start slideshow":"Komenci bildprezenton",Symbols:"Signoj","Travel & Places":"Vojaĵoj & Lokoj","Unable to search the group":"Ne eblas serĉi en la grupo","Write message, @ to mention someone …":"Mesaĝi, uzu @ por mencii iun ..."}},{locale:"es",translations:{"{tag} (invisible)":"{tag} (invisible)","{tag} (restricted)":"{tag} (restringido)",Actions:"Acciones",Activities:"Actividades","Animals & Nature":"Animales y naturaleza",Choose:"Elegir",Close:"Cerrar",Custom:"Personalizado",Flags:"Banderas","Food & Drink":"Comida y bebida","Frequently used":"Usado con frecuenca","Message limit of {count} characters reached":"El mensaje ha alcanzado el límite de {count} caracteres",Next:"Siguiente","No emoji found":"No hay ningún emoji","No results":" Ningún resultado",Objects:"Objetos","Pause slideshow":"Pausar la presentación ","People & Body":"Personas y cuerpos","Pick an emoji":"Elegir un emoji",Previous:"Anterior",Search:"Buscar","Search results":"Resultados de la búsqueda","Select a tag":"Seleccione una etiqueta",Settings:"Ajustes","Settings navigation":"Navegación por ajustes","Smileys & Emotion":"Smileys y emoticonos","Start slideshow":"Iniciar la presentación",Symbols:"Símbolos","Travel & Places":"Viajes y lugares","Unable to search the group":"No es posible buscar en el grupo","Write message, @ to mention someone …":"Escriba un mensaje, @ para mencionar a alguien..."}},{locale:"eu",translations:{"{tag} (invisible)":"{tag} (ikusezina)","{tag} (restricted)":"{tag} (mugatua)",Choose:"Aukeratu",Close:"Itxi",Next:"Hurrengoa","No results":"Emaitzarik ez","Pause slideshow":"Pausatu diaporama",Previous:"Aurrekoa","Select a tag":"Hautatu etiketa bat",Settings:"Ezarpenak","Start slideshow":"Hasi diaporama"}},{locale:"fi_FI",translations:{"{tag} (invisible)":"{tag} (näkymätön)","{tag} (restricted)":"{tag} (rajoitettu)",Actions:"Toiminnot",Activities:"Aktiviteetit","Animals & Nature":"Eläimet & luonto",Choose:"Valitse",Close:"Sulje",Custom:"Mukautettu",Flags:"Liput","Food & Drink":"Ruoka & juoma","Frequently used":"Usein käytetyt","Message limit of {count} characters reached":"Viestin maksimimerkkimäärä {count} täynnä ",Next:"Seuraava","No emoji found":"Emojia ei löytynyt","No results":"Ei tuloksia",Objects:"Esineet & asiat","Pause slideshow":"Keskeytä diaesitys","People & Body":"Ihmiset & keho","Pick an emoji":"Valitse emoji",Previous:"Edellinen",Search:"Etsi","Search results":"Hakutulokset","Select a tag":"Valitse tagi",Settings:"Asetukset","Settings navigation":"Asetusnavigaatio","Smileys & Emotion":"Hymiöt ja & tunteet","Start slideshow":"Aloita diaesitys",Symbols:"Symbolit","Travel & Places":"Matkustus & kohteet","Unable to search the group":"Ryhmää ei voi hakea","Write message, @ to mention someone …":"Kirjoita viesti, @ mainitaksesi jonkun..."}},{locale:"fr",translations:{"{tag} (invisible)":"{tag} (invisible)","{tag} (restricted)":"{tag} (restreint)",Actions:"Actions",Activities:"Activités","Animals & Nature":"Animaux & Nature",Choose:"Choisir",Close:"Fermer",Custom:"Personnalisé",Flags:"Drapeaux","Food & Drink":"Nourriture & Boissons","Frequently used":"Utilisés fréquemment","Message limit of {count} characters reached":"Limite de messages de {count} caractères atteinte",Next:"Suivant","No emoji found":"Pas d’émoji trouvé","No results":"Aucun résultat",Objects:"Objets","Pause slideshow":"Mettre le diaporama en pause","People & Body":"Personnes & Corps","Pick an emoji":"Choisissez un émoji",Previous:"Précédent",Search:"Chercher","Search results":"Résultats de recherche","Select a tag":"Sélectionnez une balise",Settings:"Paramètres","Settings navigation":"Navigation dans les paramètres","Smileys & Emotion":"Smileys & Émotions","Start slideshow":"Démarrer le diaporama",Symbols:"Symboles","Travel & Places":"Voyage & Lieux","Unable to search the group":"Impossible de chercher le groupe","Write message, @ to mention someone …":"Écrivez un message, @ pour mentionner quelqu'un…"}},{locale:"gl",translations:{"{tag} (invisible)":"{tag} (invisíbel)","{tag} (restricted)":"{tag} (restrinxido)",Actions:"Accións",Activities:"Actividades","Animals & Nature":"Animais e natureza",Choose:"Escoller",Close:"Pechar",Custom:"Personalizado",Flags:"Bandeiras","Food & Drink":"Comida e bebida","Frequently used":"Usado con frecuencia","Message limit of {count} characters reached":"Acadouse o límite de {count} caracteres por mensaxe",Next:"Seguinte","No emoji found":"Non se atopou ningún «emoji»","No results":"Sen resultados",Objects:"Obxectos","Pause slideshow":"Pausar o diaporama","People & Body":"Persoas e corpo","Pick an emoji":"Escolla un «emoji»",Previous:"Anterir",Search:"Buscar","Search results":"Resultados da busca","Select a tag":"Seleccione unha etiqueta",Settings:"Axustes","Settings navigation":"Navegación de axustes","Smileys & Emotion":"Sorrisos e emocións","Start slideshow":"Iniciar o diaporama",Symbols:"Símbolos","Travel & Places":"Viaxes e lugares","Unable to search the group":"Non foi posíbel buscar o grupo","Write message, @ to mention someone …":"Escriba a mensaxe, @ para mencionar a alguén…"}},{locale:"he",translations:{"{tag} (invisible)":"{tag} (נסתר)","{tag} (restricted)":"{tag} (מוגבל)",Actions:"פעולות",Activities:"פעילויות","Animals & Nature":"חיות וטבע",Choose:"בחירה",Close:"סגירה",Custom:"בהתאמה אישית",Flags:"דגלים","Food & Drink":"מזון ומשקאות","Frequently used":"בשימוש תדיר",Next:"הבא","No emoji found":"לא נמצא אמוג׳י","No results":"אין תוצאות",Objects:"חפצים","Pause slideshow":"השהיית מצגת","People & Body":"אנשים וגוף","Pick an emoji":"נא לבחור אמוג׳י",Previous:"הקודם",Search:"חיפוש","Search results":"תוצאות חיפוש","Select a tag":"בחירת תגית",Settings:"הגדרות","Smileys & Emotion":"חייכנים ורגשונים","Start slideshow":"התחלת המצגת",Symbols:"סמלים","Travel & Places":"טיולים ומקומות","Unable to search the group":"לא ניתן לחפש בקבוצה"}},{locale:"hu_HU",translations:{"{tag} (invisible)":"{tag} (láthatatlan)","{tag} (restricted)":"{tag} (korlátozott)",Actions:"Műveletek",Activities:"Tevékenységek","Animals & Nature":"Állatok és természet",Choose:"Válassszon",Close:"Bezárás",Custom:"Egyéni",Flags:"Zászló","Food & Drink":"Étel és ital","Frequently used":"Gyakran használt","Message limit of {count} characters reached":"{count} karakteres üzenetkorlát elérve",Next:"Következő","No emoji found":"Nem található emodzsi","No results":"Nincs találat",Objects:"Tárgyak","Pause slideshow":"Diavetítés szüneteltetése","People & Body":"Emberek és test","Pick an emoji":"Válasszon egy emodzsit",Previous:"Előző",Search:"Keresés","Search results":"Találatok","Select a tag":"Válasszon címkét",Settings:"Beállítások","Settings navigation":"Navigáció a beállításokban","Smileys & Emotion":"Mosolyok és érzelmek","Start slideshow":"Diavetítés indítása",Symbols:"Szimbólumok","Travel & Places":"Utazás és helyek","Unable to search the group":"A csoport nem kereshető","Write message, @ to mention someone …":"Írjon üzenetet, @ valaki megemlítéséhez…"}},{locale:"is",translations:{"{tag} (invisible)":"{tag} (ósýnilegt)","{tag} (restricted)":"{tag} (takmarkað)",Actions:"Aðgerðir",Activities:"Aðgerðir","Animals & Nature":"Dýr og náttúra",Choose:"Velja",Close:"Loka",Custom:"Sérsniðið",Flags:"Flögg","Food & Drink":"Matur og drykkur","Frequently used":"Oftast notað",Next:"Næsta","No emoji found":"Ekkert tjáningartákn fannst","No results":"Engar niðurstöður",Objects:"Hlutir","Pause slideshow":"Gera hlé á skyggnusýningu","People & Body":"Fólk og líkami","Pick an emoji":"Veldu tjáningartákn",Previous:"Fyrri",Search:"Leita","Search results":"Leitarniðurstöður","Select a tag":"Veldu merki",Settings:"Stillingar","Smileys & Emotion":"Broskallar og tilfinningar","Start slideshow":"Byrja skyggnusýningu",Symbols:"Tákn","Travel & Places":"Staðir og ferðalög","Unable to search the group":"Get ekki leitað í hópnum"}},{locale:"it",translations:{"{tag} (invisible)":"{tag} (invisibile)","{tag} (restricted)":"{tag} (limitato)",Actions:"Azioni",Activities:"Attività","Animals & Nature":"Animali e natura",Choose:"Scegli",Close:"Chiudi",Custom:"Personalizzato","External documentation for {title}":"Documentazione esterna per {title}",Flags:"Bandiere","Food & Drink":"Cibo e bevande","Frequently used":"Usati di frequente","Message limit of {count} characters reached":"Limite dei messaggi di {count} caratteri raggiunto",Next:"Successivo","No emoji found":"Nessun emoji trovato","No results":"Nessun risultato",Objects:"Oggetti","Pause slideshow":"Presentazione in pausa","People & Body":"Persone e corpo","Pick an emoji":"Scegli un emoji",Previous:"Precedente",Search:"Cerca","Search results":"Risultati di ricerca","Select a tag":"Seleziona un'etichetta",Settings:"Impostazioni","Settings navigation":"Navigazione delle impostazioni","Smileys & Emotion":"Faccine ed emozioni","Start slideshow":"Avvia presentazione",Submit:"Invia",Symbols:"Simboli","Travel & Places":"Viaggi e luoghi","Unable to search the group":"Impossibile cercare il gruppo","Write message, @ to mention someone …":"Scrivi messaggio, @ per menzionare qualcuno…"}},{locale:"ja_JP",translations:{"{tag} (invisible)":"{タグ} (不可視)","{tag} (restricted)":"{タグ} (制限付)",Actions:"操作",Activities:"アクティビティ","Animals & Nature":"動物と自然",Choose:"選択",Close:"閉じる",Custom:"カスタム",Flags:"国旗","Food & Drink":"食べ物と飲み物","Frequently used":"よく使うもの","Message limit of {count} characters reached":"{count} 文字のメッセージ上限に達しています",Next:"次","No emoji found":"絵文字が見つかりません","No results":"なし",Objects:"物","Pause slideshow":"スライドショーを一時停止","People & Body":"様々な人と体の部位","Pick an emoji":"絵文字を選択",Previous:"前",Search:"検索","Search results":"検索結果","Select a tag":"タグを選択",Settings:"設定","Settings navigation":"ナビゲーション設定","Smileys & Emotion":"笑顔と気持ち","Start slideshow":"スライドショーを開始",Symbols:"記号","Travel & Places":"旅行と場所","Unable to search the group":"グループを検索できません","Write message, @ to mention someone …":"メッセージを書く、@ で通知します。"}},{locale:"lt_LT",translations:{"{tag} (invisible)":"{tag} (nematoma)","{tag} (restricted)":"{tag} (apribota)",Actions:"Veiksmai",Activities:"Veiklos","Animals & Nature":"Gyvūnai ir gamta",Choose:"Pasirinkti",Close:"Užverti",Custom:"Tinkinti","External documentation for {title}":"Išorinė {title} dokumentacija",Flags:"Vėliavos","Food & Drink":"Maistas ir gėrimai","Frequently used":"Dažniausiai naudoti","Message limit of {count} characters reached":"Pasiekta {count} simbolių žinutės riba",Next:"Kitas","No emoji found":"Nerasta jaustukų","No results":"Nėra rezultatų",Objects:"Objektai","Pause slideshow":"Pristabdyti skaidrių rodymą","People & Body":"Žmonės ir kūnas","Pick an emoji":"Pasirinkti jaustuką",Previous:"Ankstesnis",Search:"Ieškoti","Search results":"Paieškos rezultatai","Select a tag":"Pasirinkti žymę",Settings:"Nustatymai","Settings navigation":"Naršymas nustatymuose","Smileys & Emotion":"Šypsenos ir emocijos","Start slideshow":"Pradėti skaidrių rodymą",Submit:"Pateikti",Symbols:"Simboliai","Travel & Places":"Kelionės ir vietos","Unable to search the group":"Nepavyko atlikti paiešką grupėje","Write message, @ to mention someone …":"Rašykite žinutę, naudokite @ norėdami kažką paminėti…"}},{locale:"lv",translations:{"{tag} (invisible)":"{tag} (neredzams)","{tag} (restricted)":"{tag} (ierobežots)",Choose:"Izvēlēties",Close:"Aizvērt",Next:"Nākamais","No results":"Nav rezultātu","Pause slideshow":"Pauzēt slaidrādi",Previous:"Iepriekšējais","Select a tag":"Izvēlēties birku",Settings:"Iestatījumi","Start slideshow":"Sākt slaidrādi"}},{locale:"mk",translations:{"{tag} (invisible)":"{tag} (невидливо)","{tag} (restricted)":"{tag} (ограничено)",Actions:"Акции",Activities:"Активности","Animals & Nature":"Животни & Природа",Choose:"Избери",Close:"Затвори",Custom:"Прилагодени",Flags:"Знамиња","Food & Drink":"Храна & Пијалоци","Frequently used":"Најчесто користени","Message limit of {count} characters reached":"Ограничувањето на должината на пораката од {count} карактери е надминато",Next:"Следно","No emoji found":"Не се пронајдени емотикони","No results":"Нема резултати",Objects:"Објекти","Pause slideshow":"Пузирај слајдшоу","People & Body":"Луѓе & Тело","Pick an emoji":"Избери емотикон",Previous:"Предходно",Search:"Барај","Search results":"Резултати од барувањето","Select a tag":"Избери ознака",Settings:"Параметри","Settings navigation":"Параметри за навигација","Smileys & Emotion":"Смешковци & Емотикони","Start slideshow":"Стартувај слајдшоу",Symbols:"Симболи","Travel & Places":"Патувања & Места","Unable to search the group":"Неможе да се принајде групата","Write message, @ to mention someone …":"Напиши порака, @ за да спомнеш некој …"}},{locale:"nb_NO",translations:{"{tag} (invisible)":"{tag} (usynlig)","{tag} (restricted)":"{tag} (beskyttet)",Actions:"Handlinger",Activities:"Aktiviteter","Animals & Nature":"Dyr og natur",Choose:"Velg",Close:"Lukk",Custom:"Selvvalgt",Flags:"Flagg","Food & Drink":"Mat og drikke","Frequently used":"Ofte brukt",Next:"Neste","No emoji found":"Fant ingen emoji","No results":"Ingen resultater",Objects:"Objekter","Pause slideshow":"Pause lysbildefremvisning","People & Body":"Mennesker og kropp","Pick an emoji":"Velg en emoji",Previous:"Forrige",Search:"Søk","Search results":"Søkeresultater","Select a tag":"Velg en merkelapp",Settings:"Innstillinger","Smileys & Emotion":"Smilefjes og følelser","Start slideshow":"Start lysbildefremvisning",Symbols:"Symboler","Travel & Places":"Reise og steder","Unable to search the group":"Kunne ikke søke i gruppen"}},{locale:"nl",translations:{"{tag} (invisible)":"{tag} (onzichtbaar)","{tag} (restricted)":"{tag} (beperkt)",Actions:"Acties",Activities:"Activiteiten","Animals & Nature":"Dieren & Natuur",Choose:"Kies",Close:"Sluiten",Custom:"Aangepast",Flags:"Vlaggen","Food & Drink":"Eten & Drinken","Frequently used":"Vaak gebruikt","Message limit of {count} characters reached":"Berichtlengte van {count} karakters bereikt",Next:"Volgende","No emoji found":"Geen emoji gevonden","No results":"Geen resultaten",Objects:"Objecten","Pause slideshow":"Pauzeer diavoorstelling","People & Body":"Mensen & Lichaam","Pick an emoji":"Kies een emoji",Previous:"Vorige",Search:"Zoeken","Search results":"Zoekresultaten","Select a tag":"Selecteer een label",Settings:"Instellingen","Settings navigation":"Instellingen navigatie","Smileys & Emotion":"Smileys & Emotie","Start slideshow":"Start diavoorstelling",Symbols:"Symbolen","Travel & Places":"Reizen & Plaatsen","Unable to search the group":"Kan niet in de groep zoeken","Write message, @ to mention someone …":"Schrijf een bericht, @ om iemand te noemen ..."}},{locale:"oc",translations:{"{tag} (invisible)":"{tag} (invisible)","{tag} (restricted)":"{tag} (limit)",Actions:"Accions",Choose:"Causir",Close:"Tampar",Next:"Seguent","No results":"Cap de resultat","Pause slideshow":"Metre en pausa lo diaporama",Previous:"Precedent","Select a tag":"Seleccionar una etiqueta",Settings:"Paramètres","Start slideshow":"Lançar lo diaporama"}},{locale:"pl",translations:{"{tag} (invisible)":"{tag} (niewidoczna)","{tag} (restricted)":"{tag} (ograniczona)",Actions:"Działania",Activities:"Aktywność","Animals & Nature":"Zwierzęta i natura",Choose:"Wybierz",Close:"Zamknij",Custom:"Zwyczajne","External documentation for {title}":"Dokumentacja zewnętrzna dla {title}",Flags:"Flagi","Food & Drink":"Jedzenie i picie","Frequently used":"Często używane","Message limit of {count} characters reached":"Przekroczono limit wiadomości wynoszący {count} znaków",Next:"Następny","No emoji found":"Nie znaleziono emotikonów","No results":"Brak wyników",Objects:"Obiekty","Pause slideshow":"Wstrzymaj pokaz slajdów","People & Body":"Ludzie i ciało","Pick an emoji":"Wybierz emoji",Previous:"Poprzedni",Search:"Szukaj","Search results":"Wyniki wyszukiwania","Select a tag":"Wybierz etykietę",Settings:"Ustawienia","Settings navigation":"Nawigacja ustawień","Smileys & Emotion":"Buźki i emotikony","Start slideshow":"Rozpocznij pokaz slajdów",Submit:"Wyślij",Symbols:"Symbole","Travel & Places":"Podróże i miejsca","Unable to search the group":"Nie można przeszukać grupy","Write message, @ to mention someone …":"Napisz wiadomość, aby wspomnieć o kimś użyj @…"}},{locale:"pt_BR",translations:{"{tag} (invisible)":"{tag} (invisível)","{tag} (restricted)":"{tag} (restrito) ",Actions:"Ações",Activities:"Atividades","Animals & Nature":"Animais & Natureza",Choose:"Escolher",Close:"Fechar",Custom:"Personalizado","External documentation for {title}":"Documentação externa para {title}",Flags:"Bandeiras","Food & Drink":"Comida & Bebida","Frequently used":"Mais usados","Message limit of {count} characters reached":"Limite de mensagem de {count} caracteres atingido",Next:"Próximo","No emoji found":"Nenhum emoji encontrado","No results":"Sem resultados",Objects:"Objetos","Pause slideshow":"Pausar apresentação de slides","People & Body":"Pessoas & Corpo","Pick an emoji":"Escolha um emoji",Previous:"Anterior",Search:"Pesquisar","Search results":"Resultados da pesquisa","Select a tag":"Selecionar uma tag",Settings:"Configurações","Settings navigation":"Navegação de configurações","Smileys & Emotion":"Smiles & Emoções","Start slideshow":"Iniciar apresentação de slides",Submit:"Enviar",Symbols:"Símbolo","Travel & Places":"Viagem & Lugares","Unable to search the group":"Não foi possível pesquisar o grupo","Write message, @ to mention someone …":"Escreva mensagem, @ para mencionar alguém ..."}},{locale:"pt_PT",translations:{"{tag} (invisible)":"{tag} (invisivel)","{tag} (restricted)":"{tag} (restrito)",Actions:"Ações",Choose:"Escolher",Close:"Fechar",Next:"Seguinte","No results":"Sem resultados","Pause slideshow":"Pausar diaporama",Previous:"Anterior","Select a tag":"Selecionar uma etiqueta",Settings:"Definições","Start slideshow":"Iniciar diaporama","Unable to search the group":"Não é possível pesquisar o grupo"}},{locale:"ru",translations:{"{tag} (invisible)":"{tag} (невидимое)","{tag} (restricted)":"{tag} (ограниченное)",Choose:"Выберите",Close:"Закрыть",Next:"Следующее","No results":"Результаты отсуствуют","Pause slideshow":"Приостановить показ слйдов",Previous:"Предыдущее","Select a tag":"Выберите метку",Settings:"Параметры","Start slideshow":"Начать показ слайдов"}},{locale:"sk_SK",translations:{"{tag} (invisible)":"{tag} (neviditeľný)","{tag} (restricted)":"{tag} (obmedzený)",Actions:"Akcie",Activities:"Aktivity","Animals & Nature":"Zvieratá a príroda",Choose:"Vybrať",Close:"Zatvoriť",Custom:"Zvyk",Flags:"Vlajky","Food & Drink":"Jedlo a nápoje","Frequently used":"Často používané",Next:"Ďalší","No emoji found":"Nenašli sa žiadne emodži","No results":"Žiadne výsledky",Objects:"Objekty","Pause slideshow":"Pozastaviť prezentáciu","People & Body":"Ľudia a telo","Pick an emoji":"Vyberte si emodži",Previous:"Predchádzajúci",Search:"Hľadať","Search results":"Výsledky vyhľadávania","Select a tag":"Vybrať štítok",Settings:"Nastavenia","Smileys & Emotion":"Smajlíky a emócie","Start slideshow":"Začať prezentáciu",Symbols:"Symboly","Travel & Places":"Cestovanie a miesta","Unable to search the group":"Skupinu sa nepodarilo nájsť"}},{locale:"sl",translations:{"{tag} (invisible)":"{tag} (nevidno)","{tag} (restricted)":"{tag} (omejeno)",Actions:"Dejanja",Activities:"Dejavnosti","Animals & Nature":"Živali in Narava",Choose:"Izbor",Close:"Zapri",Custom:"Po meri",Flags:"Zastavice","Food & Drink":"Hrana in Pijača","Frequently used":"Pogostost uporabe",Next:"Naslednji","No emoji found":"Ni najdenih izraznih ikon","No results":"Ni zadetkov",Objects:"Predmeti","Pause slideshow":"Ustavi predstavitev","People & Body":"Ljudje in Telo","Pick an emoji":"Izbor izrazne ikone",Previous:"Predhodni",Search:"Iskanje","Search results":"Zadetki iskanja","Select a tag":"Izbor oznake",Settings:"Nastavitve","Settings navigation":"Krmarjenje nastavitev","Smileys & Emotion":"Izrazne ikone","Start slideshow":"Začni predstavitev",Symbols:"Simboli","Travel & Places":"Potovanja in Kraji","Unable to search the group":"Ni mogoče iskati po skuspini","Write message, @ to mention someone …":"Napišite sporočilo, z @ omenite osebo ..."}},{locale:"sv",translations:{"{tag} (invisible)":"{tag} (osynlig)","{tag} (restricted)":"{tag} (begränsad)",Actions:"Åtgärder",Activities:"Aktiviteter","Animals & Nature":"Djur & Natur",Choose:"Välj",Close:"Stäng",Custom:"Anpassad",Flags:"Flaggor","Food & Drink":"Mat & Dryck","Frequently used":"Används ofta","Message limit of {count} characters reached":"Meddelandegräns {count} tecken används",Next:"Nästa","No emoji found":"Hittade inga emojis","No results":"Inga resultat",Objects:"Objekt","Pause slideshow":"Pausa bildspelet","People & Body":"Kropp & Själ","Pick an emoji":"Välj en emoji",Previous:"Föregående",Search:"Sök","Search results":"Sökresultat","Select a tag":"Välj en tag",Settings:"Inställningar","Settings navigation":"Inställningsmeny","Smileys & Emotion":"Selfies & Känslor","Start slideshow":"Starta bildspelet",Symbols:"Symboler","Travel & Places":"Resor & Sevärdigheter","Unable to search the group":"Kunde inte söka i gruppen","Write message, @ to mention someone …":"Skicka meddelande, skriv @ för att omnämna någon ..."}},{locale:"tr",translations:{"{tag} (invisible)":"{tag} (görünmez)","{tag} (restricted)":"{tag} (kısıtlı)",Actions:"İşlemler",Activities:"Etkinlikler","Animals & Nature":"Hayvanlar ve Doğa",Choose:"Seçin",Close:"Kapat",Custom:"Özel","External documentation for {title}":"{title} için dış belgeler",Flags:"Bayraklar","Food & Drink":"Yeme ve İçme","Frequently used":"Sık kullanılanlar","Message limit of {count} characters reached":"{count} karakter ileti sınırına ulaşıldı",Next:"Sonraki","No emoji found":"Herhangi bir emoji bulunamadı","No results":"Herhangi bir sonuç bulunamadı",Objects:"Nesneler","Pause slideshow":"Slayt sunumunu duraklat","People & Body":"İnsanlar ve Beden","Pick an emoji":"Bir emoji seçin",Previous:"Önceki",Search:"Arama","Search results":"Arama sonuçları","Select a tag":"Bir etiket seçin",Settings:"Ayarlar","Settings navigation":"Gezinme ayarları","Smileys & Emotion":"İfadeler ve Duygular","Start slideshow":"Slayt sunumunu başlat",Submit:"Gönder",Symbols:"Simgeler","Travel & Places":"Gezi ve Yerler","Unable to search the group":"Grupta arama yapılamadı","Write message, @ to mention someone …":"İletiyi yazın. Birini anmak için @ kullanın …"}},{locale:"uk",translations:{"{tag} (invisible)":"{tag} (invisible)","{tag} (restricted)":"{tag} (restricted)",Actions:"Дії",Activities:"Діяльність","Animals & Nature":"Тварини та природа",Choose:"Виберіть",Close:"Закрити",Custom:"Власне",Flags:"Прапори","Food & Drink":"Їжа та напитки","Frequently used":"Найчастіші",Next:"Вперед","No emoji found":"Емоційки відсутні","No results":"Відсутні результати",Objects:"Об'єкти","Pause slideshow":"Пауза у показі слайдів","People & Body":"Люди та жести","Pick an emoji":"Виберіть емоційку",Previous:"Назад",Search:"Пошук","Search results":"Результати пошуку","Select a tag":"Виберіть позначку",Settings:"Налаштування","Smileys & Emotion":"Усміхайлики та емоційки","Start slideshow":"Почати показ слайдів",Symbols:"Символи","Travel & Places":"Поїздки та місця","Unable to search the group":"Неможливо шукати в групі"}},{locale:"zh_CN",translations:{"{tag} (invisible)":"{tag} (不可见)","{tag} (restricted)":"{tag} (受限)",Actions:"行为",Activities:"活动","Animals & Nature":"动物 & 自然",Choose:"选择",Close:"关闭",Custom:"自定义",Flags:"旗帜","Food & Drink":"食物 & 饮品","Frequently used":"经常使用","Message limit of {count} characters reached":"已达到 {count} 个字符的消息限制",Next:"下一个","No emoji found":"表情未找到","No results":"无结果",Objects:"物体","Pause slideshow":"暂停幻灯片","People & Body":"人 & 身体","Pick an emoji":"选择一个表情",Previous:"上一个",Search:"搜索","Search results":"搜索结果","Select a tag":"选择一个标签",Settings:"设置","Settings navigation":"设置向导","Smileys & Emotion":"笑脸 & 情感","Start slideshow":"开始幻灯片",Symbols:"符号","Travel & Places":"旅游 & 地点","Unable to search the group":"无法搜索分组","Write message, @ to mention someone …":"输入消息,输入 @ 来提醒某人"}},{locale:"zh_HK",translations:{"{tag} (invisible)":"{tag} (隱藏)","{tag} (restricted)":"{tag} (受限)",Actions:"動作",Activities:"活動","Animals & Nature":"動物與自然",Choose:"選擇",Close:"關閉",Custom:"自定義","External documentation for {title}":"{title} 的外部文檔",Flags:"旗幟","Food & Drink":"食物與飲料","Frequently used":"經常使用","Message limit of {count} characters reached":"已達到訊息最多 {count} 字元限制",Next:"下一個","No emoji found":"未找到表情符號","No results":"無結果",Objects:"物件","Pause slideshow":"暫停幻燈片","People & Body":"人物","Pick an emoji":"選擇表情符號",Previous:"上一個",Search:"搜尋","Search results":"搜尋結果","Select a tag":"選擇標籤",Settings:"設定","Settings navigation":"設定值導覽","Smileys & Emotion":"表情","Start slideshow":"開始幻燈片",Submit:"提交",Symbols:"標誌","Travel & Places":"旅遊與景點","Unable to search the group":"無法搜尋群組","Write message, @ to mention someone …":"輸入訊息時可使用 @ 來標示某人..."}},{locale:"zh_TW",translations:{"{tag} (invisible)":"{tag} (隱藏)","{tag} (restricted)":"{tag} (受限)",Actions:"動作",Activities:"活動","Animals & Nature":"動物與自然",Choose:"選擇",Close:"關閉",Custom:"自定義",Flags:"旗幟","Food & Drink":"食物與飲料","Frequently used":"最近使用","Message limit of {count} characters reached":"已達到訊息最多 {count} 字元限制",Next:"下一個","No emoji found":"未找到表情符號","No results":"無結果",Objects:"物件","Pause slideshow":"暫停幻燈片","People & Body":"人物","Pick an emoji":"選擇表情符號",Previous:"上一個",Search:"搜尋","Search results":"搜尋結果","Select a tag":"選擇標籤",Settings:"設定","Settings navigation":"設定值導覽","Smileys & Emotion":"表情","Start slideshow":"開始幻燈片",Symbols:"標誌","Travel & Places":"旅遊與景點","Unable to search the group":"無法搜尋群組","Write message, @ to mention someone …":"輸入訊息時可使用 @ 來標示某人..."}}].forEach((function(t){var e={};for(var n in t.translations)t.translations[n].pluralId?e[n]={msgid:n,msgid_plural:t.translations[n].pluralId,msgstr:t.translations[n].msgstr}:e[n]={msgid:n,msgstr:[t.translations[n]]};o.addTranslation(t.locale,{translations:{"":e}})}));var i=o.build(),a=i.ngettext.bind(i),s=i.gettext.bind(i)},,function(t,e){t.exports=n(8309)},function(t,e){t.exports=n(4916)},function(t,e){t.exports=n(8783)},function(t,e){t.exports=n(6992)},function(t,e){t.exports=n(3948)},function(t,e,n){"use strict";var r=n(0),o=n.n(r),i=n(1),a=n.n(i)()(o.a);a.push([t.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","",{version:3,sources:["webpack://./Popover.vue"],names:[],mappings:"AAgHA,SACC,cAAe,CACf,wBAAyB,CAEzB,sDAAuD,CAEvD,gBACC,SAAU,CACV,4BAA6B,CAC7B,kCAAmC,CACnC,uCAAwC,CACxC,gBAGA,iBAAkB,CAClB,SAAU,CACV,OAAQ,CACR,QAAS,CACT,WApBgB,CAqBhB,kBAAmB,CACnB,yCAA0C,CApB5C,6BAwBE,kBA1BgB,CAElB,6CA2BG,YA7Be,CA8Bf,6BAA8B,CAC9B,YAAa,CACb,eAAgB,CAChB,6BAjCe,CAkCf,yCAA0C,CAC1C,0CAA2C,CAC3C,wCAAyC,CAlC5C,gCAuCE,eAzCgB,CAElB,gDA0CG,SA5Ce,CA6Cf,6BAA8B,CAC9B,YAAa,CACb,eAAgB,CAChB,6BAhDe,CAiDf,uCAAwC,CACxC,yCAA0C,CAC1C,wCAAyC,CAjD5C,+BAsDE,gBAxDgB,CAElB,+CAyDG,4BAA6B,CAC7B,UA5De,CA6Df,cAAe,CACf,aAAc,CACd,6BAAsD,CACtD,uCAAwC,CACxC,0CAA2C,CAC3C,wCAAyC,CAhE5C,8BAqEE,iBAvEgB,CAElB,8CAwEG,4BAA6B,CAC7B,WA3Ee,CA4Ef,cAAe,CACf,aAAc,CACd,6BA9Ee,CA+Ef,uCAAwC,CACxC,yCAA0C,CAC1C,0CAA2C,CA/E9C,6BAoFE,iBAAkB,CAClB,2EAA6E,CAC7E,SAAU,CAtFZ,8BA0FE,kBAAmB,CACnB,yCAA0C,CAC1C,SAAU",sourcesContent:["$scope_version:\"6b494fc\"; @import 'variables';\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n$arrow-width: 10px;\n\n.popover {\n\tz-index: 100000;\n\tdisplay: block !important;\n\n\tfilter: drop-shadow(0 1px 10px var(--color-box-shadow));\n\n\t&__inner {\n\t\tpadding: 0;\n\t\tcolor: var(--color-main-text);\n\t\tborder-radius: var(--border-radius);\n\t\tbackground: var(--color-main-background);\n\t}\n\n\t&__arrow {\n\t\tposition: absolute;\n\t\tz-index: 1;\n\t\twidth: 0;\n\t\theight: 0;\n\t\tmargin: $arrow-width;\n\t\tborder-style: solid;\n\t\tborder-color: var(--color-main-background);\n\t}\n\n\t&[x-placement^='top'] {\n\t\tmargin-bottom: $arrow-width;\n\n\t\t.popover__arrow {\n\t\t\tbottom: -$arrow-width;\n\t\t\tleft: calc(50% - $arrow-width);\n\t\t\tmargin-top: 0;\n\t\t\tmargin-bottom: 0;\n\t\t\tborder-width: $arrow-width $arrow-width 0 $arrow-width;\n\t\t\tborder-right-color: transparent !important;\n\t\t\tborder-bottom-color: transparent !important;\n\t\t\tborder-left-color: transparent !important;\n\t\t}\n\t}\n\n\t&[x-placement^='bottom'] {\n\t\tmargin-top: $arrow-width;\n\n\t\t.popover__arrow {\n\t\t\ttop: -$arrow-width;\n\t\t\tleft: calc(50% - $arrow-width);\n\t\t\tmargin-top: 0;\n\t\t\tmargin-bottom: 0;\n\t\t\tborder-width: 0 $arrow-width $arrow-width $arrow-width;\n\t\t\tborder-top-color: transparent !important;\n\t\t\tborder-right-color: transparent !important;\n\t\t\tborder-left-color: transparent !important;\n\t\t}\n\t}\n\n\t&[x-placement^='right'] {\n\t\tmargin-left: $arrow-width;\n\n\t\t.popover__arrow {\n\t\t\ttop: calc(50% - $arrow-width);\n\t\t\tleft: -$arrow-width;\n\t\t\tmargin-right: 0;\n\t\t\tmargin-left: 0;\n\t\t\tborder-width: $arrow-width $arrow-width $arrow-width 0;\n\t\t\tborder-top-color: transparent !important;\n\t\t\tborder-bottom-color: transparent !important;\n\t\t\tborder-left-color: transparent !important;\n\t\t}\n\t}\n\n\t&[x-placement^='left'] {\n\t\tmargin-right: $arrow-width;\n\n\t\t.popover__arrow {\n\t\t\ttop: calc(50% - $arrow-width);\n\t\t\tright: -$arrow-width;\n\t\t\tmargin-right: 0;\n\t\t\tmargin-left: 0;\n\t\t\tborder-width: $arrow-width 0 $arrow-width $arrow-width;\n\t\t\tborder-top-color: transparent !important;\n\t\t\tborder-right-color: transparent !important;\n\t\t\tborder-bottom-color: transparent !important;\n\t\t}\n\t}\n\n\t&[aria-hidden='true'] {\n\t\tvisibility: hidden;\n\t\ttransition: opacity var(--animation-quick), visibility var(--animation-quick);\n\t\topacity: 0;\n\t}\n\n\t&[aria-hidden='false'] {\n\t\tvisibility: visible;\n\t\ttransition: opacity var(--animation-quick);\n\t\topacity: 1;\n\t}\n}\n\n"],sourceRoot:""}]),e.a=a},function(t,e){},function(t,e,n){"use strict";n.r(e);var r=n(7),o=n(2),i=n.n(o),a=n(22),s={insert:"head",singleton:!1};i()(a.a,s),a.a.locals,r.VTooltip.options.defaultTemplate='<div class="vue-tooltip" role="tooltip" data-v-'.concat("6b494fc",'><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>'),r.VTooltip.options.defaultHtml=!1,e.default=r.VTooltip},function(t,e,n){"use strict";var r=n(0),o=n.n(r),i=n(1),a=n.n(i)()(o.a);a.push([t.i,".vue-tooltip[data-v-6b494fc]{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-6b494fc][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-6b494fc][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-6b494fc][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-6b494fc][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-6b494fc][aria-hidden='true']{visibility:hidden;transition:opacity .15s, visibility .15s;opacity:0}.vue-tooltip[data-v-6b494fc][aria-hidden='false']{visibility:visible;transition:opacity .15s;opacity:1}.vue-tooltip[data-v-6b494fc] .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-6b494fc] .tooltip-arrow{position:absolute;z-index:1;width:0;height:0;margin:0;border-style:solid;border-color:var(--color-main-background)}\n","",{version:3,sources:["webpack://./index.scss"],names:[],mappings:"AAeA,6BACC,iBAAkB,CAClB,cAAe,CACf,UAAW,CACX,SAAU,CACV,aAAc,CACd,QAAS,CAET,eAAgB,CAChB,cAAe,CACf,eAAgB,CAChB,gBAAiB,CACjB,SAAU,CACV,eAAgB,CAEhB,eAAgB,CAChB,sDAAuD,CAhBxD,gEAqBG,QAAS,CACT,YAAa,CACb,eAAgB,CAChB,6BA1Be,CA2Bf,8BAA+B,CAC/B,+BAAgC,CAChC,6BAA8B,CA3BjC,mEAkCG,KAAM,CACN,YAAa,CACb,eAAgB,CAChB,6BAvCe,CAwCf,4BAA6B,CAC7B,8BAA+B,CAC/B,6BAA8B,CAxCjC,kEA+CG,UAAW,CACX,cAAe,CACf,aAAc,CACd,6BAAsD,CACtD,4BAA6B,CAC7B,+BAAgC,CAChC,6BAA8B,CArDjC,iEA4DG,SAAU,CACV,cAAe,CACf,aAAc,CACd,6BAjEe,CAkEf,4BAA6B,CAC7B,8BAA+B,CAC/B,+BAAgC,CAlEnC,iDAwEE,iBAAkB,CAClB,wCAAyC,CACzC,SAAU,CA1EZ,kDA6EE,kBAAmB,CACnB,uBAAwB,CACxB,SAAU,CA/EZ,4CAoFE,eAAgB,CAChB,eAAgB,CAChB,iBAAkB,CAClB,4BAA6B,CAC7B,kCAAmC,CACnC,6CAA8C,CAzFhD,4CA8FE,iBAAkB,CAClB,SAAU,CACV,OAAQ,CACR,QAAS,CACT,QAAS,CACT,kBAAmB,CACnB,yCAA0C",sourcesContent:["$scope_version:\"6b494fc\"; @import 'variables';\n/**\n* @copyright Copyright (c) 2016, John Molakvoæ <skjnldsv@protonmail.com>\n* @copyright Copyright (c) 2016, Robin Appelman <robin@icewind.nl>\n* @copyright Copyright (c) 2016, Jan-Christoph Borchardt <hey@jancborchardt.net>\n* @copyright Copyright (c) 2016, Erik Pellikka <erik@pellikka.org>\n* @copyright Copyright (c) 2015, Vincent Petry <pvince81@owncloud.com>\n*\n* Bootstrap v3.3.5 (http://getbootstrap.com)\n* Copyright 2011-2015 Twitter, Inc.\n* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n*/\n\n$arrow-width: 10px;\n\n.vue-tooltip[data-v-#{$scope_version}] {\n\tposition: absolute;\n\tz-index: 100000;\n\tright: auto;\n\tleft: auto;\n\tdisplay: block;\n\tmargin: 0;\n\t/* default to top */\n\tmargin-top: -3px;\n\tpadding: 10px 0;\n\ttext-align: left;\n\ttext-align: start;\n\topacity: 0;\n\tline-height: 1.6;\n\n\tline-break: auto;\n\tfilter: drop-shadow(0 1px 10px var(--color-box-shadow));\n\n\t// TOP\n\t&[x-placement^='top'] {\n\t\t.tooltip-arrow {\n\t\t\tbottom: 0;\n\t\t\tmargin-top: 0;\n\t\t\tmargin-bottom: 0;\n\t\t\tborder-width: $arrow-width $arrow-width 0 $arrow-width;\n\t\t\tborder-right-color: transparent;\n\t\t\tborder-bottom-color: transparent;\n\t\t\tborder-left-color: transparent;\n\t\t}\n\t}\n\n\t// BOTTOM\n\t&[x-placement^='bottom'] {\n\t\t.tooltip-arrow {\n\t\t\ttop: 0;\n\t\t\tmargin-top: 0;\n\t\t\tmargin-bottom: 0;\n\t\t\tborder-width: 0 $arrow-width $arrow-width $arrow-width;\n\t\t\tborder-top-color: transparent;\n\t\t\tborder-right-color: transparent;\n\t\t\tborder-left-color: transparent;\n\t\t}\n\t}\n\n\t// RIGHT\n\t&[x-placement^='right'] {\n\t\t.tooltip-arrow {\n\t\t\tright: 100%;\n\t\t\tmargin-right: 0;\n\t\t\tmargin-left: 0;\n\t\t\tborder-width: $arrow-width $arrow-width $arrow-width 0;\n\t\t\tborder-top-color: transparent;\n\t\t\tborder-bottom-color: transparent;\n\t\t\tborder-left-color: transparent;\n\t\t}\n\t}\n\n\t// LEFT\n\t&[x-placement^='left'] {\n\t\t.tooltip-arrow {\n\t\t\tleft: 100%;\n\t\t\tmargin-right: 0;\n\t\t\tmargin-left: 0;\n\t\t\tborder-width: $arrow-width 0 $arrow-width $arrow-width;\n\t\t\tborder-top-color: transparent;\n\t\t\tborder-right-color: transparent;\n\t\t\tborder-bottom-color: transparent;\n\t\t}\n\t}\n\n\t// HIDDEN / SHOWN\n\t&[aria-hidden='true'] {\n\t\tvisibility: hidden;\n\t\ttransition: opacity .15s, visibility .15s;\n\t\topacity: 0;\n\t}\n\t&[aria-hidden='false'] {\n\t\tvisibility: visible;\n\t\ttransition: opacity .15s;\n\t\topacity: 1;\n\t}\n\n\t// CONTENT\n\t.tooltip-inner {\n\t\tmax-width: 350px;\n\t\tpadding: 5px 8px;\n\t\ttext-align: center;\n\t\tcolor: var(--color-main-text);\n\t\tborder-radius: var(--border-radius);\n\t\tbackground-color: var(--color-main-background);\n\t}\n\n\t// ARROW\n\t.tooltip-arrow {\n\t\tposition: absolute;\n\t\tz-index: 1;\n\t\twidth: 0;\n\t\theight: 0;\n\t\tmargin: 0;\n\t\tborder-style: solid;\n\t\tborder-color: var(--color-main-background);\n\t}\n}\n"],sourceRoot:""}]),e.a=a},,function(t,e){t.exports=n(5306)},function(t,e){t.exports=n(9714)},function(t,e){t.exports=n(4747)},function(t,e){t.exports=n(2222)},function(t,e,n){"use strict";var r={name:"Popover",components:{VPopover:n(7).VPopover},mounted:function(){var t=this;this.$watch((function(){return t.$refs.popover.isOpen}),(function(e){e?t.$emit("after-show"):t.$emit("after-hide")}))}},o=n(2),i=n.n(o),a=n(19),s={insert:"head",singleton:!1},l=(i()(a.a,s),a.a.locals,n(3)),c=n(20),u=n.n(c),p=Object(l.a)(r,(function(){var t=this.$createElement,e=this._self._c||t;return e("VPopover",this._g(this._b({ref:"popover",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(" "),e("template",{slot:"popover"},[this._t("default")],2)],2)}),[],!1,null,null,null);"function"==typeof u.a&&u()(p),e.a=p.exports},,function(t,e){t.exports=n(3210)},function(t,e){t.exports=n(9653)},function(t,e){t.exports=n(2526)},function(t,e){t.exports=n(3955)},function(t,e,n){"use strict";n(24),n(15),n(6),n(25),e.a=function(t){return Math.random().toString(36).replace(/[^a-z]+/g,"").substr(0,t||5)}},,,,function(t,e){t.exports=n(1817)},function(t,e,n){"use strict";n(30),n(14);var r=n(5),o=n.n(r);e.a={before:function(){this.$slots.default&&""!==this.text.trim()||(o.a.util.warn("".concat(this.$options.name," cannot be empty and requires a meaningful text content"),this),this.$destroy(),this.$el.remove())},beforeUpdate:function(){this.text=this.getText()},data:function(){return{text:this.getText()}},computed:{isLongText:function(){return this.text&&this.text.trim().length>20}},methods:{getText:function(){return this.$slots.default?this.$slots.default[0].text.trim():""}}}},function(t,e){t.exports=n(285)},function(t,e){t.exports=n(7042)},,,,,function(t,e){t.exports=n(2165)},function(t,e,n){"use strict";n.r(e);var r=n(28);e.default=r.a},,function(t,e,n){"use strict";n(40),n(6),n(16),n(17),n(18);var r=n(39),o=(n(14),function(t,e){for(var n=t.$parent;n;){if(n.$options.name===e)return n;n=n.$parent}});e.a={mixins:[r.a],props:{icon:{type:String,default:""},title:{type:String,default:""},closeAfterClick:{type:Boolean,default:!1},ariaLabel:{type:String,default:""}},computed:{isIconUrl:function(){try{return new URL(this.icon)}catch(t){return!1}}},methods:{onClick:function(t){if(this.$emit("click",t),this.closeAfterClick){var e=o(this,"Actions");e&&e.closeMenu&&e.closeMenu()}}}}},function(t,e,n){"use strict";n(27),n(14),n(101);var r=n(5),o=n.n(r);e.a=function(t,e,n){if(void 0!==t)for(var r=t.length-1;r>=0;r--){var i=t[r],a=!i.componentOptions&&i.tag&&-1===e.indexOf(i.tag),s=!!i.componentOptions&&"string"==typeof i.componentOptions.tag,l=s&&-1===e.indexOf(i.componentOptions.tag);(a||!s||l)&&((a||l)&&o.a.util.warn("".concat(a?i.tag:i.componentOptions.tag," is not allowed inside the ").concat(n.$options.name," component"),n),t.splice(r,1))}}},function(t,e){t.exports=n(7327)},function(t,e){t.exports=n(1038)},,,,,,,,,function(t,e,n){"use strict";var r=n(12);e.a={methods:{n:r.a,t:r.b}}},,,,,,function(t,e,n){"use strict";var r=n(0),o=n.n(r),i=n(1),a=n.n(i),s=n(4),l=n.n(s),c=n(8),u=n(9),p=n(10),A=n(11),f=a()(o.a),d=l()(c.a),h=l()(u.a),m=l()(p.a),g=l()(A.a);f.push([t.i,'@font-face{font-family:"iconfont-vue-6b494fc";src:url('+d+");src:url("+d+') format("embedded-opentype"),url('+h+') format("woff"),url('+m+') format("truetype"),url('+g+') format("svg")}.icon[data-v-551c21fd]{font-style:normal;font-weight:400}.icon.arrow-left-double[data-v-551c21fd]:before{font-family:"iconfont-vue-6b494fc";content:""}.icon.arrow-left[data-v-551c21fd]:before{font-family:"iconfont-vue-6b494fc";content:""}.icon.arrow-right-double[data-v-551c21fd]:before{font-family:"iconfont-vue-6b494fc";content:""}.icon.arrow-right[data-v-551c21fd]:before{font-family:"iconfont-vue-6b494fc";content:""}.icon.breadcrumb[data-v-551c21fd]:before{font-family:"iconfont-vue-6b494fc";content:""}.icon.checkmark[data-v-551c21fd]:before{font-family:"iconfont-vue-6b494fc";content:""}.icon.close[data-v-551c21fd]:before{font-family:"iconfont-vue-6b494fc";content:""}.icon.confirm[data-v-551c21fd]:before{font-family:"iconfont-vue-6b494fc";content:""}.icon.info[data-v-551c21fd]:before{font-family:"iconfont-vue-6b494fc";content:""}.icon.menu[data-v-551c21fd]:before{font-family:"iconfont-vue-6b494fc";content:""}.icon.more[data-v-551c21fd]:before{font-family:"iconfont-vue-6b494fc";content:""}.icon.pause[data-v-551c21fd]:before{font-family:"iconfont-vue-6b494fc";content:""}.icon.play[data-v-551c21fd]:before{font-family:"iconfont-vue-6b494fc";content:""}.icon.triangle-s[data-v-551c21fd]:before{font-family:"iconfont-vue-6b494fc";content:""}.icon.user-status-away[data-v-551c21fd]:before{font-family:"iconfont-vue-6b494fc";content:""}.icon.user-status-dnd[data-v-551c21fd]:before{font-family:"iconfont-vue-6b494fc";content:""}.icon.user-status-invisible[data-v-551c21fd]:before{font-family:"iconfont-vue-6b494fc";content:""}.icon.user-status-online[data-v-551c21fd]:before{font-family:"iconfont-vue-6b494fc";content:""}.action-item[data-v-551c21fd]{position:relative;display:inline-block}.action-item--single[data-v-551c21fd]:hover,.action-item--single[data-v-551c21fd]:focus,.action-item--single[data-v-551c21fd]:active,.action-item__menutoggle[data-v-551c21fd]:hover,.action-item__menutoggle[data-v-551c21fd]:focus,.action-item__menutoggle[data-v-551c21fd]:active{opacity:1;background-color:rgba(127,127,127,0.25)}.action-item__menutoggle[data-v-551c21fd]:disabled,.action-item--single[data-v-551c21fd]:disabled{opacity:.3 !important}.action-item.action-item--open .action-item__menutoggle[data-v-551c21fd]{opacity:1;background-color:rgba(127,127,127,0.25)}.action-item--single[data-v-551c21fd],.action-item__menutoggle[data-v-551c21fd]{box-sizing:border-box;width:auto;min-width:44px;height:44px;margin:0;padding:14px;cursor:pointer;border:none;border-radius:22px;background-color:transparent}.action-item__menutoggle[data-v-551c21fd]{display:flex;align-items:center;justify-content:center;opacity:.7;font-weight:bold;line-height:16px}.action-item__menutoggle[data-v-551c21fd] span{width:16px;height:16px;line-height:16px}.action-item__menutoggle[data-v-551c21fd]:before{content:\'\'}.action-item__menutoggle--default-icon[data-v-551c21fd]:before{font-family:"iconfont-vue-6b494fc";font-style:normal;font-weight:400;content:""}.action-item__menutoggle--default-icon[data-v-551c21fd]::before{font-size:16px}.action-item__menutoggle--with-title[data-v-551c21fd]{position:relative;padding-left:44px;white-space:nowrap;opacity:1;border:1px solid var(--color-border-dark);background-color:var(--color-background-dark);background-position:14px center;font-size:inherit}.action-item__menutoggle--with-title[data-v-551c21fd]:before{position:absolute;top:14px;left:14px}.action-item__menutoggle--primary[data-v-551c21fd]{opacity:1;color:var(--color-primary-text);border:none;background-color:var(--color-primary-element)}.action-item--open .action-item__menutoggle--primary[data-v-551c21fd],.action-item__menutoggle--primary[data-v-551c21fd]:hover,.action-item__menutoggle--primary[data-v-551c21fd]:focus,.action-item__menutoggle--primary[data-v-551c21fd]:active{color:var(--color-primary-text) !important;background-color:var(--color-primary-element-light) !important}.action-item--single[data-v-551c21fd]{opacity:.7}.action-item--single[data-v-551c21fd]:hover,.action-item--single[data-v-551c21fd]:focus,.action-item--single[data-v-551c21fd]:active{opacity:1}.action-item--single>[hidden][data-v-551c21fd]{display:none}.ie .action-item__menu[data-v-551c21fd],.ie .action-item__menu .action-item__menu_arrow[data-v-551c21fd],.edge .action-item__menu[data-v-551c21fd],.edge .action-item__menu .action-item__menu_arrow[data-v-551c21fd]{border:1px solid var(--color-border)}\n',"",{version:3,sources:["webpack://./../../fonts/scss/iconfont-vue.scss","webpack://./Actions.vue","webpack://./../../assets/variables.scss"],names:[],mappings:"AA2FE,WACC,kCAAmC,CACnC,2CAAuC,CACvC,+OAGmD,CAMpD,uBACE,iBAAkB,CAClB,eAAgB,CAFlB,gDAMM,kCAAmC,CACnC,WA5Ge,CAAO,yCA0GL,kCACJ,CAAsB,WA1G3B,CAAA,iDAyGU,kCACL,CAAA,WAzGG,CAAA,0CAwGL,kCACE,CAAA,WAxGJ,CAAA,yCAuGC,kCACG,CAAA,WACN,CAxGC,wCAsGC,kCACI,CAAA,WACb,CAAO,oCAFF,kCACQ,CAAA,WACb,CAAA,sCAFO,kCACM,CAAA,WACb,CAAA,mCAFI,kCACS,CAAA,WACb,CAAA,mCAPD,kCAMc,CAAA,WACb,CAAA,mCAPD,kCAMc,CAAA,WACb,CAAA,oCAPD,kCAMc,CAAA,WACb,CAAA,mCAPD,kCAMc,CAAA,WAAsB,CACnC,yCAPD,kCAMc,CAAA,WAAA,CAAsB,+CANpC,kCAMc,CAAA,WAAA,CAAA,8CANd,kCAMc,CAAA,WAAA,CAAA,oDANd,kCAMc,CAAA,WAAA,CAAA,iDANd,kCAMc,CAAA,WAAA,CAAA,8BA1FG,iBC6nBZ,CACX,oBACA,CAAA,sRASC,SAAA,CAAY,uCCvnBE,CAAA,kGD+nBd,qBACA,CAAA,yEAGmB,SAAA,CAAA,uCCvnBK,CAAA,gFD8nBxB,qBACA,CAAA,UAAY,CAAA,cACL,CAAA,WACP,CAAS,QACT,CAAA,YACA,CAAA,cClpBY,CAAA,WDopBJ,CAAA,kBAER,CAAA,4BACA,CAAA,0CACA,YAAA,CAAA,kBAMA,CAAA,sBACA,CAAA,UAAe,CAAE,gBCrpBF,CAAE,gBDupBJ,CAAI,+CANjB,UAUA,CAAA,WACC,CAAK,gBC1qBI,CAAI,iDD+pBd,UAAY,CAAA,+DAkBX,kCD7sBF,CAAA,iBAAsB,CAkFnB,eAAY,CAAA,WACZ,CAAA,gEC4nBD,cAAc,CAAA,sDAIb,iBAAA,CAGW,iBACF,CAAQ,kBC/rBA,CDisBlB,SAAA,CAAA,yCAEkB,CAAA,6CAEA,CAAA,+BAClB,CAAA,iBAAkC,CAAM,6DARxC,iBAAY,CAWJ,QACP,CAAQ,SAAU,CAClB,mDAEA,SAAA,CAAA,+BAKM,CAAA,WAAA,CAAA,6CAEW,CAAA,kPAJlB,0CASQ,CAAA,8DACW,CAAA,sCAClB,UAAA,CAAA,qIAIF,SAAA,CAAA,+CAAA,YAQI,CAAA,sNASc,oCACA",sourcesContent:['$__iconfont__data: map-merge(if(global_variable_exists(\'__iconfont__data\'), $__iconfont__data, ()), (\n\t"iconfont-vue-6b494fc": (\n\t\t"arrow-left-double": "\\ea01",\n\t\t"arrow-left": "\\ea02",\n\t\t"arrow-right-double": "\\ea03",\n\t\t"arrow-right": "\\ea04",\n\t\t"breadcrumb": "\\ea05",\n\t\t"checkmark": "\\ea06",\n\t\t"close": "\\ea07",\n\t\t"confirm": "\\ea08",\n\t\t"info": "\\ea09",\n\t\t"menu": "\\ea0a",\n\t\t"more": "\\ea0b",\n\t\t"pause": "\\ea0c",\n\t\t"play": "\\ea0d",\n\t\t"triangle-s": "\\ea0e",\n\t\t"user-status-away": "\\ea0f",\n\t\t"user-status-dnd": "\\ea10",\n\t\t"user-status-invisible": "\\ea11",\n\t\t"user-status-online": "\\ea12"\n\t)\n));\n\n\n$create-font-face: true !default; // should the @font-face tag get created?\n\n// should there be a custom class for each icon? will be .filename\n$create-icon-classes: true !default; \n\n// what is the common class name that icons share? in this case icons need to have .icon.filename in their classes\n// this requires you to have 2 classes on each icon html element, but reduced redeclaration of the font family\n// for each icon\n$icon-common-class: \'icon\' !default;\n\n// if you whish to prefix your filenames, here you can do so.\n// if this string stays empty, your classes will use the filename, for example\n// an icon called star.svg will result in a class called .star\n// if you use the prefix to be \'icon-\' it would result in .icon-star\n$icon-prefix: \'\' !default; \n\n// helper function to get the correct font group\n@function iconfont-group($group: null) {\n @if (null == $group) {\n $group: nth(map-keys($__iconfont__data), 1);\n }\n @if (false == map-has-key($__iconfont__data, $group)) {\n @warn \'Undefined Iconfont Family!\';\n @return ();\n }\n @return map-get($__iconfont__data, $group);\n}\n\n// helper function to get the correct icon of a group\n@function iconfont-item($name) {\n $slash: str-index($name, \'/\');\n $group: null;\n @if ($slash) {\n $group: str-slice($name, 0, $slash - 1);\n $name: str-slice($name, $slash + 1);\n } @else {\n $group: nth(map-keys($__iconfont__data), 1);\n }\n $group: iconfont-group($group);\n @if (false == map-has-key($group, $name)) {\n @warn \'Undefined Iconfont Glyph!\';\n @return \'\';\n }\n @return map-get($group, $name);\n}\n\n// complete mixing to include the icon\n// usage:\n// .my_icon{ @include iconfont(\'star\') }\n@mixin iconfont($icon) {\n $slash: str-index($icon, \'/\');\n $group: null;\n @if ($slash) {\n $group: str-slice($icon, 0, $slash - 1);\n } @else {\n $group: nth(map-keys($__iconfont__data), 1);\n }\n &:before {\n font-family: $group;\n font-style: normal;\n font-weight: 400;\n content: iconfont-item($icon);\n }\n}\n\n// creates the font face tag if the variable is set to true (default)\n@if $create-font-face == true {\n @font-face {\n font-family: "iconfont-vue-6b494fc";\n src: url(\'../iconfont-vue-6b494fc.eot\'); /* IE9 Compat Modes */\n src: url(\'../iconfont-vue-6b494fc.eot?#iefix\') format(\'embedded-opentype\'), /* IE6-IE8 */\n url(\'../iconfont-vue-6b494fc.woff\') format(\'woff\'), /* Pretty Modern Browsers */\n url(\'../iconfont-vue-6b494fc.ttf\') format(\'truetype\'), /* Safari, Android, iOS */\n url(\'../iconfont-vue-6b494fc.svg\') format(\'svg\'); /* Legacy iOS */\n }\n}\n\n// creates icon classes for each individual loaded svg (default)\n@if $create-icon-classes == true {\n .#{$icon-common-class} {\n font-style: normal;\n font-weight: 400;\n\n @each $icon, $content in map-get($__iconfont__data, "iconfont-vue-6b494fc") {\n &.#{$icon-prefix}#{$icon}:before {\n font-family: "iconfont-vue-6b494fc";\n content: iconfont-item("iconfont-vue-6b494fc/#{$icon}");\n }\n }\n }\n}\n',"$scope_version:\"6b494fc\"; @import 'variables';\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n@import '../../fonts/scss/iconfont-vue';\n\n.action-item {\n\tposition: relative;\n\tdisplay: inline-block;\n\n\t// put a grey round background when menu is opened\n\t// or hover-focused\n\t&--single:hover,\n\t&--single:focus,\n\t&--single:active,\n\t&__menutoggle:hover,\n\t&__menutoggle:focus,\n\t&__menutoggle:active {\n\t\topacity: $opacity_full;\n\t\t// good looking on dark AND white bg\n\t\tbackground-color: $icon-focus-bg;\n\t}\n\n\t// TODO: handle this in the future button component\n\t&__menutoggle:disabled,\n\t&--single:disabled {\n\t\topacity: .3 !important;\n\t}\n\n\t&.action-item--open .action-item__menutoggle {\n\t\topacity: $opacity_full;\n\t\tbackground-color: $action-background-hover;\n\t}\n\n\t// icons\n\t&--single,\n\t&__menutoggle {\n\t\tbox-sizing: border-box;\n\t\twidth: auto;\n\t\tmin-width: $clickable-area;\n\t\theight: $clickable-area;\n\t\tmargin: 0;\n\t\tpadding: $icon-margin;\n\t\tcursor: pointer;\n\t\tborder: none;\n\t\tborder-radius: $clickable-area / 2;\n\t\tbackground-color: transparent;\n\t}\n\n\t// icon-more\n\t&__menutoggle {\n\t\t// align menu icon in center\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\topacity: $opacity_normal;\n\t\tfont-weight: bold;\n\t\tline-height: $icon-size;\n\n\t\t// image slot\n\t\t/deep/ span {\n\t\t\twidth: $icon-size;\n\t\t\theight: $icon-size;\n\t\t\tline-height: $icon-size;\n\t\t}\n\n\t\t&:before {\n\t\t\tcontent: '';\n\t\t}\n\n\t\t&--default-icon {\n\t\t\t@include iconfont('more');\n\t\t\t&::before {\n\t\t\t\tfont-size: $icon-size;\n\t\t\t}\n\t\t}\n\n\t\t&--with-title {\n\t\t\tposition: relative;\n\t\t\tpadding-left: $clickable-area;\n\t\t\twhite-space: nowrap;\n\t\t\topacity: $opacity_full;\n\t\t\tborder: 1px solid var(--color-border-dark);\n\t\t\t// with a title, we need to display this as a real button\n\t\t\tbackground-color: var(--color-background-dark);\n\t\t\tbackground-position: $icon-margin center;\n\t\t\tfont-size: inherit;\n\t\t\t// non-background icon class\n\t\t\t&:before {\n\t\t\t\tposition: absolute;\n\t\t\t\ttop: $icon-margin;\n\t\t\t\tleft: $icon-margin;\n\t\t\t}\n\t\t}\n\n\t\t&--primary {\n\t\t\topacity: $opacity_full;\n\t\t\tcolor: var(--color-primary-text);\n\t\t\tborder: none;\n\t\t\tbackground-color: var(--color-primary-element);\n\t\t\t.action-item--open &,\n\t\t\t&:hover,\n\t\t\t&:focus,\n\t\t\t&:active {\n\t\t\t\tcolor: var(--color-primary-text) !important;\n\t\t\t\tbackground-color: var(--color-primary-element-light) !important;\n\t\t\t}\n\t\t}\n\t}\n\n\t&--single {\n\t\topacity: $opacity_normal;\n\t\t&:hover,\n\t\t&:focus,\n\t\t&:active {\n\t\t\topacity: $opacity_full;\n\t\t}\n\t\t// hide anything the slot is displaying\n\t\t& > [hidden] {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n}\n\n.ie,\n.edge {\n\t.action-item__menu,\n\t.action-item__menu .action-item__menu_arrow {\n\t\tborder: 1px solid var(--color-border);\n\t}\n}\n\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 */\n\n// https://uxplanet.org/7-rules-for-mobile-ui-button-design-e9cf2ea54556\n// recommended is 48px\n// 44px is what we choose and have very good visual-to-usability ratio\n$clickable-area: 44px;\n\n// background icon size\n// also used for the scss icon font\n$icon-size: 16px;\n\n// icon padding for a $clickable-area width and a $icon-size icon\n// ( 44px - 16px ) / 2\n$icon-margin: ($clickable-area - $icon-size) / 2;\n\n// transparency background for icons\n$icon-focus-bg: rgba(127, 127, 127, .25);\n\n// popovermenu arrow width from the triangle center\n$arrow-width: 9px;\n\n// opacities\n$opacity_disabled: .5;\n$opacity_normal: .7;\n$opacity_full: 1;\n\n// menu round background hover feedback\n// good looking on dark AND white bg\n$action-background-hover: rgba(127, 127, 127, .25);\n\n// various structure data used in the \n// `AppNavigation` component\n$header-height: 50px;\n$navigation-width: 300px;\n\n// mobile breakpoint\n$breakpoint-mobile: 1024px;\n"],sourceRoot:""}]),e.a=f},function(t,e){},function(t,e){t.exports=n(7941)},,function(t,e){t.exports=n(5003)},function(t,e){t.exports=n(9337)},function(t,e,n){"use strict";n.r(e);var r=n(85);e.default=r.a},,,,,,,,,,function(t,e,n){"use strict";e.a=function(t){t.mounted?Array.isArray(t.mounted)||(t.mounted=[t.mounted]):t.mounted=[],t.mounted.push((function(){this.$el.setAttribute("data-v-".concat("6b494fc"),"")}))}},,function(t,e,n){"use strict";n(27),n(51),n(69),n(32),n(71),n(26),n(72),n(38),n(6),n(46),n(16),n(17),n(18),n(52),n(41),n(14);var r=n(21),o=n(34),i=n(50),a=n(12),s=n(47);function l(t){return function(t){if(Array.isArray(t))return c(t)}(t)||function(t){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(t))return Array.from(t)}(t)||function(t,e){if(t){if("string"==typeof t)return c(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?c(t,e):void 0}}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function c(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n<e;n++)r[n]=t[n];return r}function u(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function p(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?u(Object(n),!0).forEach((function(e){A(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):u(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function A(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var f=["ActionButton","ActionCheckbox","ActionInput","ActionLink","ActionRadio","ActionRouter","ActionSeparator","ActionText","ActionTextEditable"],d={name:"Actions",directives:{tooltip:r.default},components:{Popover:s.default,VNodes:{functional:!0,render:function(t,e){return e.props.vnodes}}},props:{open:{type:Boolean,default:!1},forceMenu:{type:Boolean,default:!1},menuTitle:{type:String,default:null},primary:{type:Boolean,default:!1},defaultIcon:{type:String,default:"action-item__menutoggle--default-icon"},ariaLabel:{type:String,default:Object(a.b)("Actions")},placement:{type:String,default:"bottom"},boundariesElement:{type:Element,default:function(){return document.querySelector("body")}},container:{type:String,default:"body"},disabled:{type:Boolean,default:!1}},data:function(){return{actions:[],opened:this.open,focusIndex:0,randomId:"menu-"+Object(o.a)(),children:this.$children}},computed:{hasMultipleActions:function(){return this.actions.length>1},isValidSingleAction:function(){return 1===this.actions.length&&null!==this.firstActionElement},firstActionVNode:function(){return this.actions[0]},firstAction:function(){return this.children[0]?this.children[0]:{}},firstActionBinding:function(){if(this.firstActionVNode&&this.firstActionVNode.componentOptions){var t=this.firstActionVNode.componentOptions.tag;if("ActionLink"===t)return p(p({is:"a",href:this.firstAction.href,target:this.firstAction.target,"aria-label":this.firstAction.ariaLabel},this.firstAction.$attrs),this.firstAction.$props);if("ActionRouter"===t)return p(p({is:"router-link",to:this.firstAction.to,exact:this.firstAction.exact,"aria-label":this.firstAction.ariaLabel},this.firstAction.$attrs),this.firstAction.$props);if("ActionButton"===t)return p(p({is:"button","aria-label":this.firstAction.ariaLabel},this.firstAction.$attrs),this.firstAction.$props)}return null},firstActionEvent:function(){var t,e,n;return null===(t=this.firstActionVNode)||void 0===t||null===(e=t.componentOptions)||void 0===e||null===(n=e.listeners)||void 0===n?void 0:n.click},firstActionEventBinding:function(){return this.firstActionEvent?"click":null},firstActionIconSlot:function(){var t,e;return null===(t=this.firstAction)||void 0===t||null===(e=t.$slots)||void 0===e?void 0:e.icon},firstActionClass:function(){var t=this.firstActionVNode&&this.firstActionVNode.data.staticClass,e=this.firstActionVNode&&this.firstActionVNode.data.class;return"".concat(t," ").concat(e)},iconSlotIsPopulated:function(){return!!this.$slots.icon}},watch:{open:function(t){t!==this.opened&&(this.opened=t)}},beforeMount:function(){this.initActions(),Object(i.a)(this.$slots.default,f,this)},beforeUpdate:function(){this.initActions(),Object(i.a)(this.$slots.default,f,this)},methods:{openMenu:function(t){this.opened||(this.opened=!0,this.$emit("update:open",!0),this.$emit("open"))},closeMenu:function(t){this.opened&&(this.opened=!1,this.$emit("update:open",!1),this.$emit("close"),this.opened=!1,this.focusIndex=0,this.$refs.menuButton.focus())},onOpen:function(t){var e=this;this.$nextTick((function(){e.focusFirstAction(t)}))},onMouseFocusAction:function(t){if(document.activeElement!==t.target){var e=t.target.closest("li");if(e){var n=e.querySelector(".focusable");if(n){var r=l(this.$refs.menu.querySelectorAll(".focusable")).indexOf(n);r>-1&&(this.focusIndex=r,this.focusAction())}}}},removeCurrentActive:function(){var t=this.$refs.menu.querySelector("li.active");t&&t.classList.remove("active")},focusAction:function(){var t=this.$refs.menu.querySelectorAll(".focusable")[this.focusIndex];if(t){this.removeCurrentActive();var e=t.closest("li.action");t.focus(),e&&e.classList.add("active")}},focusPreviousAction:function(t){this.opened&&(0===this.focusIndex?this.closeMenu():(this.preventIfEvent(t),this.focusIndex=this.focusIndex-1),this.focusAction())},focusNextAction:function(t){if(this.opened){var e=this.$refs.menu.querySelectorAll(".focusable").length-1;this.focusIndex===e?this.closeMenu():(this.preventIfEvent(t),this.focusIndex=this.focusIndex+1),this.focusAction()}},focusFirstAction:function(t){this.opened&&(this.preventIfEvent(t),this.focusIndex=0,this.focusAction())},focusLastAction:function(t){this.opened&&(this.preventIfEvent(t),this.focusIndex=this.$el.querySelectorAll(".focusable").length-1,this.focusAction())},preventIfEvent:function(t){t&&(t.preventDefault(),t.stopPropagation())},execFirstAction:function(t){this.firstActionEvent&&this.firstActionEvent(t)},initActions:function(){this.actions=(this.$slots.default||[]).filter((function(t){return!!t&&!!t.componentOptions}))},onFocus:function(t){this.$emit("focus",t)},onBlur:function(t){this.$emit("blur",t)}}},h=n(2),m=n.n(h),g=n(67),v={insert:"head",singleton:!1},y=(m()(g.a,v),g.a.locals,n(3)),b=n(68),C=n.n(b),w=Object(y.a)(d,(function(){var t,e,n=this,r=n.$createElement,o=n._self._c||r;return n.isValidSingleAction&&!n.forceMenu?o("element",n._b({directives:[{name:"tooltip",rawName:"v-tooltip.auto",value:n.firstAction.text,expression:"firstAction.text",modifiers:{auto:!0}}],staticClass:"action-item action-item--single",class:(t={},t[n.firstAction.icon]=!n.iconSlotIsPopulated,t[n.firstActionClass]=!n.iconSlotIsPopulated,t),attrs:{rel:"noreferrer noopener",disabled:n.disabled},on:n._d({focus:n.onFocus,blur:n.onBlur},[n.firstActionEventBinding,n.execFirstAction])},"element",n.firstActionBinding,!1),[o("VNodes",{attrs:{vnodes:n.firstActionIconSlot}}),n._v(" "),o("span",{attrs:{"aria-hidden":!0,hidden:""}},[n._t("default")],2)],1):o("div",{directives:[{name:"show",rawName:"v-show",value:n.hasMultipleActions||n.forceMenu,expression:"hasMultipleActions || forceMenu"}],staticClass:"action-item",class:{"action-item--open":n.opened}},[o("Popover",{attrs:{delay:0,"handle-resize":!0,open:n.opened,placement:n.placement,"boundaries-element":n.boundariesElement,container:n.container},on:{"update:open":function(t){n.opened=t},show:n.openMenu,"after-show":n.onOpen,hide:n.closeMenu}},[o("button",{ref:"menuButton",staticClass:"icon action-item__menutoggle",class:(e={},e[n.defaultIcon]=!n.iconSlotIsPopulated,e["action-item__menutoggle--with-title"]=n.menuTitle,e["action-item__menutoggle--primary"]=n.primary,e),attrs:{slot:"trigger",disabled:n.disabled,"aria-label":n.ariaLabel,"aria-haspopup":"true","aria-controls":n.randomId,"test-attr":"1","aria-expanded":n.opened?"true":"false"},on:{focus:n.onFocus,blur:n.onBlur},slot:"trigger"},[n._t("icon"),n._v("\n\t\t\t"+n._s(n.menuTitle)+"\n\t\t")],2),n._v(" "),o("div",{directives:[{name:"show",rawName:"v-show",value:n.opened,expression:"opened"}],ref:"menu",class:{open:n.opened},attrs:{tabindex:"-1"},on:{keydown:[function(t){return!t.type.indexOf("key")&&n._k(t.keyCode,"up",38,t.key,["Up","ArrowUp"])||t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:n.focusPreviousAction(t)},function(t){return!t.type.indexOf("key")&&n._k(t.keyCode,"down",40,t.key,["Down","ArrowDown"])||t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:n.focusNextAction(t)},function(t){return!t.type.indexOf("key")&&n._k(t.keyCode,"tab",9,t.key,"Tab")||t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:n.focusNextAction(t)},function(t){return!t.type.indexOf("key")&&n._k(t.keyCode,"tab",9,t.key,"Tab")?null:t.shiftKey?t.ctrlKey||t.altKey||t.metaKey?null:n.focusPreviousAction(t):null},function(t){return!t.type.indexOf("key")&&n._k(t.keyCode,"page-up",void 0,t.key,void 0)||t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:n.focusFirstAction(t)},function(t){return!t.type.indexOf("key")&&n._k(t.keyCode,"page-down",void 0,t.key,void 0)||t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:n.focusLastAction(t)},function(t){return!t.type.indexOf("key")&&n._k(t.keyCode,"esc",27,t.key,["Esc","Escape"])||t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:(t.preventDefault(),n.closeMenu(t))}],mousemove:n.onMouseFocusAction}},[o("ul",{attrs:{id:n.randomId,tabindex:"-1"}},[n.opened?[n._t("default")]:n._e()],2)])])],1)}),[],!1,null,"551c21fd",null);"function"==typeof C.a&&C()(w),e.a=w.exports},,,,,,,,,function(t,e,n){"use strict";var r=n(0),o=n.n(r),i=n(1),a=n.n(i)()(o.a);a.push([t.i,"li.active[data-v-42b28436]{background-color:var(--color-background-hover)}.action--disabled[data-v-42b28436]{pointer-events:none;opacity:.5}.action--disabled[data-v-42b28436]:hover,.action--disabled[data-v-42b28436]:focus{cursor:default;opacity:.5}.action--disabled *[data-v-42b28436]{opacity:1 !important}.action-button[data-v-42b28436]{display:flex;align-items:flex-start;width:100%;height:auto;margin:0;padding:0;padding-right:14px;cursor:pointer;white-space:nowrap;opacity:.7;color:var(--color-main-text);border:0;border-radius:0;background-color:transparent;box-shadow:none;font-weight:normal;font-size:var(--default-font-size);line-height:44px}.action-button[data-v-42b28436]:hover,.action-button[data-v-42b28436]:focus{opacity:1}.action-button>span[data-v-42b28436]{cursor:pointer;white-space:nowrap}.action-button__icon[data-v-42b28436]{width:44px;height:44px;opacity:1;background-position:14px center;background-size:16px;background-repeat:no-repeat}.action-button .material-design-icon[data-v-42b28436]{width:44px;height:44px;opacity:1}.action-button .material-design-icon .material-design-icon__svg[data-v-42b28436]{vertical-align:middle}.action-button p[data-v-42b28436]{width:220px;padding:7px 0;cursor:pointer;text-align:left;line-height:1.6em;overflow:hidden;text-overflow:ellipsis}.action-button__longtext[data-v-42b28436]{cursor:pointer;white-space:pre-wrap}.action-button__title[data-v-42b28436]{font-weight:bold;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;max-width:100%;display:inline-block}\n","",{version:3,sources:["webpack://./../../assets/action.scss","webpack://./../../assets/variables.scss"],names:[],mappings:"AAwBC,2BAEE,8CAA+C,CAC/C,mCAMD,mBAAoB,CACpB,UCQmB,CDVpB,kFAIE,cAAe,CACf,UCKkB,CDVpB,qCAQE,oBAAqB,CACrB,gCAOD,YAAa,CACb,sBAAuB,CAEvB,UAAW,CACX,WAAY,CACZ,QAAS,CACT,SAAU,CACV,kBCtB8C,CDwB9C,cAAe,CACf,kBAAmB,CAEnB,UCjBiB,CDkBjB,4BAA6B,CAC7B,QAAS,CACT,eAAgB,CAChB,4BAA6B,CAC7B,eAAgB,CAEhB,kBAAmB,CACnB,kCAAmC,CACnC,gBC5CmB,CDsBpB,4EA0BE,SC7Ba,CDGf,qCA8BE,cAAe,CACf,kBAAmB,CACnB,sCAGA,UCzDkB,CD0DlB,WC1DkB,CD2DlB,SCxCa,CDyCb,+BAAwC,CACxC,oBCzDa,CD0Db,2BAA4B,CAxC9B,sDA4CE,UClEkB,CDmElB,WCnEkB,CDoElB,SCjDa,CDGf,iFAiDG,qBAAsB,CAjDzB,kCAuDE,WAAY,CACZ,aAA8B,CAE9B,cAAe,CACf,eAAgB,CAEhB,iBAAkB,CAGlB,eAAgB,CAChB,sBAAuB,CACvB,0CAGA,cAAe,CAEf,oBAAqB,CACrB,uCAGA,gBAAiB,CACjB,sBAAuB,CACvB,eAAgB,CAChB,kBAAmB,CACnB,cAAe,CACf,oBAAqB",sourcesContent:["/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 */\n\n@mixin action-active {\n\tli {\n\t\t&.active {\n\t\t\tbackground-color: var(--color-background-hover);\n\t\t}\n\t}\n}\n\n@mixin action--disabled {\n\t.action--disabled {\n\t\tpointer-events: none;\n\t\topacity: $opacity_disabled;\n\t\t&:hover, &:focus {\n\t\t\tcursor: default;\n\t\t\topacity: $opacity_disabled;\n\t\t}\n\t\t& * {\n\t\t\topacity: 1 !important;\n\t\t}\n\t}\n}\n\n\n@mixin action-item($name) {\n\t.action-#{$name} {\n\t\tdisplay: flex;\n\t\talign-items: flex-start;\n\n\t\twidth: 100%;\n\t\theight: auto;\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t\tpadding-right: $icon-margin;\n\n\t\tcursor: pointer;\n\t\twhite-space: nowrap;\n\n\t\topacity: $opacity_normal;\n\t\tcolor: var(--color-main-text);\n\t\tborder: 0;\n\t\tborder-radius: 0; // otherwise Safari will cut the border-radius area\n\t\tbackground-color: transparent;\n\t\tbox-shadow: none;\n\n\t\tfont-weight: normal;\n\t\tfont-size: var(--default-font-size);\n\t\tline-height: $clickable-area;\n\n\t\t&:hover,\n\t\t&:focus {\n\t\t\topacity: $opacity_full;\n\t\t}\n\n\t\t& > span {\n\t\t\tcursor: pointer;\n\t\t\twhite-space: nowrap;\n\t\t}\n\n\t\t&__icon {\n\t\t\twidth: $clickable-area;\n\t\t\theight: $clickable-area;\n\t\t\topacity: $opacity_full;\n\t\t\tbackground-position: $icon-margin center;\n\t\t\tbackground-size: $icon-size;\n\t\t\tbackground-repeat: no-repeat;\n\t\t}\n\n\t\t.material-design-icon {\n\t\t\twidth: $clickable-area;\n\t\t\theight: $clickable-area;\n\t\t\topacity: $opacity_full;\n\n\t\t\t.material-design-icon__svg {\n\t\t\t\tvertical-align: middle;\n\t\t\t}\n\t\t}\n\n\t\t// long text area\n\t\tp {\n\t\t\twidth: 220px;\n\t\t\tpadding: #{$icon-margin / 2} 0;\n\n\t\t\tcursor: pointer;\n\t\t\ttext-align: left;\n\n\t\t\tline-height: 1.6em;\n\n\t\t\t// in case there are no spaces like long email addresses\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t}\n\n\t\t&__longtext {\n\t\t\tcursor: pointer;\n\t\t\t// allow the use of `\\n`\n\t\t\twhite-space: pre-wrap;\n\t\t}\n\n\t\t&__title {\n\t\t\tfont-weight: bold;\n\t\t\ttext-overflow: ellipsis;\n\t\t\toverflow: hidden;\n\t\t\twhite-space: nowrap;\n\t\t\tmax-width: 100%;\n\t\t\tdisplay: inline-block;\n\t\t}\n\t}\n}\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 */\n\n// https://uxplanet.org/7-rules-for-mobile-ui-button-design-e9cf2ea54556\n// recommended is 48px\n// 44px is what we choose and have very good visual-to-usability ratio\n$clickable-area: 44px;\n\n// background icon size\n// also used for the scss icon font\n$icon-size: 16px;\n\n// icon padding for a $clickable-area width and a $icon-size icon\n// ( 44px - 16px ) / 2\n$icon-margin: ($clickable-area - $icon-size) / 2;\n\n// transparency background for icons\n$icon-focus-bg: rgba(127, 127, 127, .25);\n\n// popovermenu arrow width from the triangle center\n$arrow-width: 9px;\n\n// opacities\n$opacity_disabled: .5;\n$opacity_normal: .7;\n$opacity_full: 1;\n\n// menu round background hover feedback\n// good looking on dark AND white bg\n$action-background-hover: rgba(127, 127, 127, .25);\n\n// various structure data used in the \n// `AppNavigation` component\n$header-height: 50px;\n$navigation-width: 300px;\n\n// mobile breakpoint\n$breakpoint-mobile: 1024px;\n"],sourceRoot:""}]),e.a=a},function(t,e){},,,,,,function(t,e){t.exports=n(561)},function(t,e,n){"use strict";var r={name:"ActionButton",mixins:[n(49).a],props:{disabled:{type:Boolean,default:!1}},computed:{isFocusable:function(){return!this.disabled}}},o=n(2),i=n.n(o),a=n(94),s={insert:"head",singleton:!1},l=(i()(a.a,s),a.a.locals,n(3)),c=n(95),u=n.n(c),p=Object(l.a)(r,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("li",{staticClass:"action",class:{"action--disabled":t.disabled}},[n("button",{staticClass:"action-button",class:{focusable:t.isFocusable},attrs:{"aria-label":t.ariaLabel},on:{click:t.onClick}},[n("span",{staticClass:"action-button__icon",class:[t.isIconUrl?"action-button__icon--url":t.icon],style:{backgroundImage:t.isIconUrl?"url("+t.icon+")":null}},[t._t("icon")],2),t._v(" "),t.title?n("p",[n("strong",{staticClass:"action-button__title"},[t._v("\n\t\t\t\t"+t._s(t.title)+"\n\t\t\t")]),t._v(" "),n("br"),t._v(" "),n("span",{staticClass:"action-button__longtext",domProps:{textContent:t._s(t.text)}})]):t.isLongText?n("p",{staticClass:"action-button__longtext",domProps:{textContent:t._s(t.text)}}):n("span",{staticClass:"action-button__text"},[t._v(t._s(t.text))]),t._v(" "),t._e()],2)])}),[],!1,null,"42b28436",null);"function"==typeof u.a&&u()(p),e.a=p.exports},,,,,,,function(t,e){t.exports=n(840)},function(t,e,n){"use strict";n.r(e);var r=n(102);e.default=r.a},,,,,,,,,function(t,e,n){"use strict";var r=n(0),o=n.n(r),i=n(1),a=n.n(i),s=n(4),l=n.n(s),c=n(8),u=n(9),p=n(10),A=n(11),f=a()(o.a),d=l()(c.a),h=l()(u.a),m=l()(p.a),g=l()(A.a);f.push([t.i,'@font-face{font-family:"iconfont-vue-6b494fc";src:url('+d+");src:url("+d+') format("embedded-opentype"),url('+h+') format("woff"),url('+m+') format("truetype"),url('+g+') format("svg")}.icon[data-v-3e0b109b]{font-style:normal;font-weight:400}.icon.arrow-left-double[data-v-3e0b109b]:before{font-family:"iconfont-vue-6b494fc";content:""}.icon.arrow-left[data-v-3e0b109b]:before{font-family:"iconfont-vue-6b494fc";content:""}.icon.arrow-right-double[data-v-3e0b109b]:before{font-family:"iconfont-vue-6b494fc";content:""}.icon.arrow-right[data-v-3e0b109b]:before{font-family:"iconfont-vue-6b494fc";content:""}.icon.breadcrumb[data-v-3e0b109b]:before{font-family:"iconfont-vue-6b494fc";content:""}.icon.checkmark[data-v-3e0b109b]:before{font-family:"iconfont-vue-6b494fc";content:""}.icon.close[data-v-3e0b109b]:before{font-family:"iconfont-vue-6b494fc";content:""}.icon.confirm[data-v-3e0b109b]:before{font-family:"iconfont-vue-6b494fc";content:""}.icon.info[data-v-3e0b109b]:before{font-family:"iconfont-vue-6b494fc";content:""}.icon.menu[data-v-3e0b109b]:before{font-family:"iconfont-vue-6b494fc";content:""}.icon.more[data-v-3e0b109b]:before{font-family:"iconfont-vue-6b494fc";content:""}.icon.pause[data-v-3e0b109b]:before{font-family:"iconfont-vue-6b494fc";content:""}.icon.play[data-v-3e0b109b]:before{font-family:"iconfont-vue-6b494fc";content:""}.icon.triangle-s[data-v-3e0b109b]:before{font-family:"iconfont-vue-6b494fc";content:""}.icon.user-status-away[data-v-3e0b109b]:before{font-family:"iconfont-vue-6b494fc";content:""}.icon.user-status-dnd[data-v-3e0b109b]:before{font-family:"iconfont-vue-6b494fc";content:""}.icon.user-status-invisible[data-v-3e0b109b]:before{font-family:"iconfont-vue-6b494fc";content:""}.icon.user-status-online[data-v-3e0b109b]:before{font-family:"iconfont-vue-6b494fc";content:""}.modal-mask[data-v-3e0b109b]{position:fixed;z-index:9998;top:0;left:0;display:block;width:100%;height:100%;background-color:rgba(0,0,0,0.5)}.modal-mask--dark[data-v-3e0b109b]{background-color:rgba(0,0,0,0.92)}.modal-header[data-v-3e0b109b]{position:absolute;z-index:10001;top:0;right:0;left:0;display:flex !important;align-items:center;justify-content:center;width:100%;height:50px;transition:opacity 250ms, visibility 250ms}.modal-header.invisible[style*=\'display:none\'][data-v-3e0b109b],.modal-header.invisible[style*=\'display: none\'][data-v-3e0b109b]{visibility:hidden}.modal-header .modal-title[data-v-3e0b109b]{overflow-x:hidden;box-sizing:border-box;width:100%;padding:0 132px 0 12px;transition:padding ease 100ms;white-space:nowrap;text-overflow:ellipsis;color:#fff;font-size:14px}@media only screen and (min-width: 512px){.modal-header .modal-title[data-v-3e0b109b]{text-align:center;padding-left:132px}}.modal-header .icons-menu[data-v-3e0b109b]{position:absolute;right:0;display:flex;align-items:center;justify-content:flex-end}.modal-header .icons-menu .icon-close[data-v-3e0b109b]{box-sizing:border-box;margin:3px;padding:10px 11px;color:#fff;background-image:none;font-size:23px}.modal-header .icons-menu .icon-close[data-v-3e0b109b]:before{font-family:"iconfont-vue-6b494fc";font-style:normal;font-weight:400;content:""}.modal-header .icons-menu .play-pause[data-v-3e0b109b]{position:relative;width:50px;height:50px;margin:0;padding:0;cursor:pointer;color:white;border:none;background-color:transparent;font-size:22px}.modal-header .icons-menu .play-pause:hover .icon-play[data-v-3e0b109b],.modal-header .icons-menu .play-pause:hover .icon-pause[data-v-3e0b109b],.modal-header .icons-menu .play-pause:focus .icon-play[data-v-3e0b109b],.modal-header .icons-menu .play-pause:focus .icon-pause[data-v-3e0b109b]{opacity:1;border-radius:22px;background-color:rgba(127,127,127,0.25)}.modal-header .icons-menu .play-pause .icon-play[data-v-3e0b109b],.modal-header .icons-menu .play-pause .icon-pause[data-v-3e0b109b]{box-sizing:border-box;width:44px;height:44px;margin:3px;opacity:.7;background-image:none;cursor:pointer}.modal-header .icons-menu .play-pause .icon-play[data-v-3e0b109b]{padding:11px 13px}.modal-header .icons-menu .play-pause .icon-play[data-v-3e0b109b]:before{font-family:"iconfont-vue-6b494fc";font-style:normal;font-weight:400;content:""}.modal-header .icons-menu .play-pause .icon-pause[data-v-3e0b109b]{padding:12px;font-size:19.5px}.modal-header .icons-menu .play-pause .icon-pause[data-v-3e0b109b]:before{font-family:"iconfont-vue-6b494fc";font-style:normal;font-weight:400;content:""}.modal-header .icons-menu .header-actions[data-v-3e0b109b]{margin:3px;color:white}.modal-header .icons-menu .action-item--single[data-v-3e0b109b]{box-sizing:border-box;width:44px;height:44px;cursor:pointer;background-position:center;background-size:22px}.modal-header .icons-menu[data-v-3e0b109b] .action-item__menutoggle{padding:13px 11px;color:#fff;font-size:22px}.modal-wrapper[data-v-3e0b109b]{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:100%;height:100%}.modal-wrapper .prev[data-v-3e0b109b],.modal-wrapper .next[data-v-3e0b109b]{z-index:10000;display:flex !important;align-items:center;justify-content:center;width:15%;min-width:60px;height:100%;transition:opacity 250ms, visibility 250ms}.modal-wrapper .prev.invisible[style*=\'display:none\'][data-v-3e0b109b],.modal-wrapper .prev.invisible[style*=\'display: none\'][data-v-3e0b109b],.modal-wrapper .next.invisible[style*=\'display:none\'][data-v-3e0b109b],.modal-wrapper .next.invisible[style*=\'display: none\'][data-v-3e0b109b]{visibility:hidden}.modal-wrapper .icon-next[data-v-3e0b109b],.modal-wrapper .icon-previous[data-v-3e0b109b]{box-sizing:border-box;width:44px;height:44px;padding:12px 11px;color:white;border-radius:22px;background-image:none;font-size:24px}.modal-wrapper .icon-previous[data-v-3e0b109b]:before{font-family:"iconfont-vue-6b494fc";font-style:normal;font-weight:400;content:""}.modal-wrapper .icon-next[data-v-3e0b109b]:before{font-family:"iconfont-vue-6b494fc";font-style:normal;font-weight:400;content:""}.modal-wrapper .modal-container[data-v-3e0b109b]{display:block;overflow:hidden;padding:0;transition:transform 300ms ease;border-radius:var(--border-radius-large);background-color:var(--color-main-background);box-shadow:0 0 40px rgba(0,0,0,0.2)}.modal-wrapper:not(.modal-wrapper--large):not(.modal-wrapper--full) .modal-container[data-v-3e0b109b]{max-width:900px;max-height:80%}.modal-wrapper--full .modal-container[data-v-3e0b109b]{max-width:100%;max-height:100%;border-radius:0}.modal-wrapper--full .prev[data-v-3e0b109b],.modal-wrapper--full .next[data-v-3e0b109b],.modal-wrapper--spread-navigation .prev[data-v-3e0b109b],.modal-wrapper--spread-navigation .next[data-v-3e0b109b]{position:absolute;width:10%}.modal-wrapper--full .prev[data-v-3e0b109b],.modal-wrapper--spread-navigation .prev[data-v-3e0b109b]{left:0}.modal-wrapper--full .next[data-v-3e0b109b],.modal-wrapper--spread-navigation .next[data-v-3e0b109b]{right:0}.modal-wrapper--large .modal-container[data-v-3e0b109b]{max-width:85%;max-height:90%}.modal-wrapper--large .prev[data-v-3e0b109b],.modal-wrapper--large .next[data-v-3e0b109b]{width:10%;min-width:44px}.fade-enter-active[data-v-3e0b109b],.fade-leave-active[data-v-3e0b109b]{transition:opacity 250ms}.fade-enter[data-v-3e0b109b],.fade-leave-to[data-v-3e0b109b]{opacity:0}.fade-visibility-enter[data-v-3e0b109b],.fade-visibility-leave-to[data-v-3e0b109b]{visibility:hidden;opacity:0}.modal-in-enter-active[data-v-3e0b109b],.modal-in-leave-active[data-v-3e0b109b],.modal-out-enter-active[data-v-3e0b109b],.modal-out-leave-active[data-v-3e0b109b]{transition:opacity 250ms}.modal-in-enter[data-v-3e0b109b],.modal-in-leave-to[data-v-3e0b109b],.modal-out-enter[data-v-3e0b109b],.modal-out-leave-to[data-v-3e0b109b]{opacity:0}.modal-in-enter .modal-container[data-v-3e0b109b],.modal-in-leave-to .modal-container[data-v-3e0b109b]{transform:scale(0.9)}.modal-out-enter .modal-container[data-v-3e0b109b],.modal-out-leave-to .modal-container[data-v-3e0b109b]{transform:scale(1.1)}.modal-mask .play-pause .progress-ring[data-v-3e0b109b]{position:absolute;top:0;left:0;transform:rotate(-90deg)}.modal-mask .play-pause .progress-ring .progress-ring__circle[data-v-3e0b109b]{transition:100ms stroke-dashoffset;transform-origin:50% 50%;animation:progressring-data-v-3e0b109b linear 3s infinite;stroke-linecap:round;stroke-dashoffset:94.24778;stroke-dasharray:94.24778}.modal-mask .play-pause--paused .icon-pause[data-v-3e0b109b]{animation:breath-data-v-3e0b109b 2s cubic-bezier(0.4, 0, 0.2, 1) infinite}.modal-mask .play-pause--paused .progress-ring__circle[data-v-3e0b109b]{animation-play-state:paused !important}@keyframes progressring-data-v-3e0b109b{from{stroke-dashoffset:94.24778}to{stroke-dashoffset:0}}@keyframes breath-data-v-3e0b109b{0%{opacity:1}50%{opacity:0}100%{opacity:1}}\n',"",{version:3,sources:["webpack://./../../fonts/scss/iconfont-vue.scss","webpack://./Modal.vue","webpack://./../../assets/variables.scss"],names:[],mappings:"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",sourcesContent:['$__iconfont__data: map-merge(if(global_variable_exists(\'__iconfont__data\'), $__iconfont__data, ()), (\n\t"iconfont-vue-6b494fc": (\n\t\t"arrow-left-double": "\\ea01",\n\t\t"arrow-left": "\\ea02",\n\t\t"arrow-right-double": "\\ea03",\n\t\t"arrow-right": "\\ea04",\n\t\t"breadcrumb": "\\ea05",\n\t\t"checkmark": "\\ea06",\n\t\t"close": "\\ea07",\n\t\t"confirm": "\\ea08",\n\t\t"info": "\\ea09",\n\t\t"menu": "\\ea0a",\n\t\t"more": "\\ea0b",\n\t\t"pause": "\\ea0c",\n\t\t"play": "\\ea0d",\n\t\t"triangle-s": "\\ea0e",\n\t\t"user-status-away": "\\ea0f",\n\t\t"user-status-dnd": "\\ea10",\n\t\t"user-status-invisible": "\\ea11",\n\t\t"user-status-online": "\\ea12"\n\t)\n));\n\n\n$create-font-face: true !default; // should the @font-face tag get created?\n\n// should there be a custom class for each icon? will be .filename\n$create-icon-classes: true !default; \n\n// what is the common class name that icons share? in this case icons need to have .icon.filename in their classes\n// this requires you to have 2 classes on each icon html element, but reduced redeclaration of the font family\n// for each icon\n$icon-common-class: \'icon\' !default;\n\n// if you whish to prefix your filenames, here you can do so.\n// if this string stays empty, your classes will use the filename, for example\n// an icon called star.svg will result in a class called .star\n// if you use the prefix to be \'icon-\' it would result in .icon-star\n$icon-prefix: \'\' !default; \n\n// helper function to get the correct font group\n@function iconfont-group($group: null) {\n @if (null == $group) {\n $group: nth(map-keys($__iconfont__data), 1);\n }\n @if (false == map-has-key($__iconfont__data, $group)) {\n @warn \'Undefined Iconfont Family!\';\n @return ();\n }\n @return map-get($__iconfont__data, $group);\n}\n\n// helper function to get the correct icon of a group\n@function iconfont-item($name) {\n $slash: str-index($name, \'/\');\n $group: null;\n @if ($slash) {\n $group: str-slice($name, 0, $slash - 1);\n $name: str-slice($name, $slash + 1);\n } @else {\n $group: nth(map-keys($__iconfont__data), 1);\n }\n $group: iconfont-group($group);\n @if (false == map-has-key($group, $name)) {\n @warn \'Undefined Iconfont Glyph!\';\n @return \'\';\n }\n @return map-get($group, $name);\n}\n\n// complete mixing to include the icon\n// usage:\n// .my_icon{ @include iconfont(\'star\') }\n@mixin iconfont($icon) {\n $slash: str-index($icon, \'/\');\n $group: null;\n @if ($slash) {\n $group: str-slice($icon, 0, $slash - 1);\n } @else {\n $group: nth(map-keys($__iconfont__data), 1);\n }\n &:before {\n font-family: $group;\n font-style: normal;\n font-weight: 400;\n content: iconfont-item($icon);\n }\n}\n\n// creates the font face tag if the variable is set to true (default)\n@if $create-font-face == true {\n @font-face {\n font-family: "iconfont-vue-6b494fc";\n src: url(\'../iconfont-vue-6b494fc.eot\'); /* IE9 Compat Modes */\n src: url(\'../iconfont-vue-6b494fc.eot?#iefix\') format(\'embedded-opentype\'), /* IE6-IE8 */\n url(\'../iconfont-vue-6b494fc.woff\') format(\'woff\'), /* Pretty Modern Browsers */\n url(\'../iconfont-vue-6b494fc.ttf\') format(\'truetype\'), /* Safari, Android, iOS */\n url(\'../iconfont-vue-6b494fc.svg\') format(\'svg\'); /* Legacy iOS */\n }\n}\n\n// creates icon classes for each individual loaded svg (default)\n@if $create-icon-classes == true {\n .#{$icon-common-class} {\n font-style: normal;\n font-weight: 400;\n\n @each $icon, $content in map-get($__iconfont__data, "iconfont-vue-6b494fc") {\n &.#{$icon-prefix}#{$icon}:before {\n font-family: "iconfont-vue-6b494fc";\n content: iconfont-item("iconfont-vue-6b494fc/#{$icon}");\n }\n }\n }\n}\n',"$scope_version:\"6b494fc\"; @import 'variables';\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n@import '../../fonts/scss/iconfont-vue';\n$header-size: 50px;\n\n.modal-mask {\n\tposition: fixed;\n\tz-index: 9998;\n\ttop: 0;\n\tleft: 0;\n\tdisplay: block;\n\twidth: 100%;\n\theight: 100%;\n\tbackground-color: rgba(0, 0, 0, .5);\n\t&--dark {\n\t\tbackground-color: rgba(0, 0, 0, .92);\n\t}\n}\n\n.modal-header {\n\tposition: absolute;\n\tz-index: 10001;\n\ttop: 0;\n\tright: 0;\n\tleft: 0;\n\t// prevent vue show to use display:none and reseting\n\t// the circle animation loop\n\tdisplay: flex !important;\n\talign-items: center;\n\tjustify-content: center;\n\twidth: 100%;\n\theight: $header-size;\n\ttransition: opacity 250ms,\n\t\tvisibility 250ms;\n\n\t// replace display by visibility\n\t&.invisible[style*='display:none'],\n\t&.invisible[style*='display: none'] {\n\t\tvisibility: hidden;\n\t}\n\n\t.modal-title {\n\t\toverflow-x: hidden;\n\t\tbox-sizing: border-box;\n\t\twidth: 100%;\n\t\tpadding: 0 #{$clickable-area * 3} 0 12px; // maximum actions is 3\n\t\ttransition: padding ease 100ms;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t\tcolor: #fff;\n\t\tfont-size: $icon-margin;\n\t}\n\n\t// On wider screens the title can be centered\n\t@media only screen and (min-width: $breakpoint-mobile/2) {\n\t\t.modal-title {\n\t\t\ttext-align: center;\n\t\t\tpadding-left: #{$clickable-area * 3}; // maximum actions is 3\n\t\t}\n\t}\n\n\t.icons-menu {\n\t\tposition: absolute;\n\t\tright: 0;\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tjustify-content: flex-end;\n\n\t\t.icon-close {\n\t\t\tbox-sizing: border-box;\n\t\t\tmargin: ($header-size - $clickable-area) / 2;\n\t\t\t// not using $icon-margin since we have a custom font size\n\t\t\t// and alignement seems odd\n\t\t\tpadding: 10px 11px;\n\t\t\tcolor: #fff;\n\t\t\tbackground-image: none;\n\t\t\tfont-size: 23px;\n\n\t\t\t@include iconfont('close');\n\t\t}\n\n\t\t.play-pause {\n\t\t\tposition: relative;\n\t\t\twidth: $header-size;\n\t\t\theight: $header-size;\n\t\t\tmargin: 0;\n\t\t\tpadding: 0;\n\t\t\tcursor: pointer;\n\t\t\tcolor: white;\n\t\t\tborder: none;\n\t\t\tbackground-color: transparent;\n\t\t\tfont-size: 22px;\n\t\t\t&:hover,\n\t\t\t&:focus {\n\t\t\t\t.icon-play,\n\t\t\t\t.icon-pause {\n\t\t\t\t\topacity: 1;\n\t\t\t\t\tborder-radius: $clickable-area / 2;\n\t\t\t\t\tbackground-color: $icon-focus-bg;\n\t\t\t\t}\n\t\t\t}\n\t\t\t.icon-play,\n\t\t\t.icon-pause {\n\t\t\t\tbox-sizing: border-box;\n\t\t\t\twidth: $clickable-area;\n\t\t\t\theight: $clickable-area;\n\t\t\t\tmargin: ($header-size - $clickable-area) / 2;\n\t\t\t\topacity: .7;\n\t\t\t\tbackground-image: none;\n\t\t\t\tcursor: pointer;\n\t\t\t}\n\t\t\t.icon-play {\n\t\t\t\t// better visual\n\t\t\t\tpadding: 11px 13px;\n\t\t\t\t@include iconfont('play');\n\t\t\t}\n\t\t\t.icon-pause {\n\t\t\t\tpadding: 12px;\n\t\t\t\t// ! align with circle\n\t\t\t\tfont-size: 19.5px;\n\t\t\t\t@include iconfont('pause');\n\t\t\t}\n\t\t}\n\n\t\t.header-actions {\n\t\t\tmargin: ($header-size - $clickable-area) / 2;\n\t\t\tcolor: white;\n\t\t}\n\n\t\t.action-item--single {\n\t\t\tbox-sizing: border-box;\n\t\t\twidth: $clickable-area;\n\t\t\theight: $clickable-area;\n\t\t\tcursor: pointer;\n\t\t\tbackground-position: center;\n\t\t\tbackground-size: 22px;\n\t\t}\n\n\t\t&::v-deep .action-item__menutoggle {\n\t\t\tpadding: 13px 11px;\n\t\t\t// force white instead of default main text\n\t\t\tcolor: #fff;\n\t\t\t// 22px is a somehow better looking for the icon-more icon\n\t\t\tfont-size: 22px;\n\t\t}\n\n\t}\n}\n\n.modal-wrapper {\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\tbox-sizing: border-box;\n\twidth: 100%;\n\theight: 100%;\n\n\t/* Navigation buttons */\n\t.prev,\n\t.next {\n\t\tz-index: 10000;\n\t\t// ignore display: none\n\t\tdisplay: flex !important;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\twidth: 15%;\n\t\tmin-width: 60px;\n\t\theight: 100%;\n\t\ttransition: opacity 250ms,\n\t\t\tvisibility 250ms;\n\n\t\t// we want to keep the elements on page\n\t\t// even if hidden to avoid having a unbalanced\n\t\t// centered content\n\t\t// replace display by visibility\n\t\t&.invisible[style*='display:none'],\n\t\t&.invisible[style*='display: none'] {\n\t\t\tvisibility: hidden;\n\t\t}\n\t}\n\n\t// buttons/icons\n\t.icon-next,\n\t.icon-previous {\n\t\tbox-sizing: border-box;\n\t\twidth: $clickable-area;\n\t\theight: $clickable-area;\n\t\tpadding: 12px 11px;\n\t\tcolor: white;\n\t\tborder-radius: $clickable-area / 2;\n\t\tbackground-image: none;\n\t\tfont-size: 24px;\n\t}\n\t.icon-previous {\n\t\t@include iconfont('arrow-left');\n\t}\n\t.icon-next {\n\t\t@include iconfont('arrow-right');\n\t}\n\n\t/* Content */\n\t.modal-container {\n\t\tdisplay: block;\n\t\toverflow: hidden;\n\t\tpadding: 0;\n\t\ttransition: transform 300ms ease;\n\t\tborder-radius: var(--border-radius-large);\n\t\tbackground-color: var(--color-main-background);\n\t\tbox-shadow: 0 0 40px rgba(0, 0, 0, .2);\n\t}\n\t&:not(&--large):not(&--full) .modal-container {\n\t\tmax-width: 900px;\n\t\tmax-height: 80%;\n\t}\n\n\t// Sizing\n\t&--full {\n\t\t.modal-container {\n\t\t\tmax-width: 100%;\n\t\t\tmax-height: 100%;\n\t\t\tborder-radius: 0;\n\t\t}\n\t}\n\t&--full,\n\t&--spread-navigation {\n\t\t.prev,\n\t\t.next {\n\t\t\tposition: absolute;\n\t\t\twidth: 10%;\n\t\t}\n\t\t.prev {\n\t\t\tleft: 0;\n\t\t}\n\t\t.next {\n\t\t\tright: 0;\n\t\t}\n\t}\n\t&--large {\n\t\t.modal-container {\n\t\t\tmax-width: 85%;\n\t\t\tmax-height: 90%;\n\t\t}\n\t\t.prev,\n\t\t.next {\n\t\t\twidth: 10%;\n\t\t\tmin-width: $clickable-area;\n\t\t}\n\t}\n}\n\n/* TRANSITIONS */\n.fade-enter-active,\n.fade-leave-active {\n\ttransition: opacity 250ms;\n}\n\n.fade-enter,\n.fade-leave-to {\n\topacity: 0;\n}\n\n.fade-visibility-enter,\n.fade-visibility-leave-to {\n\tvisibility: hidden;\n\topacity: 0;\n}\n\n.modal-in-enter-active,\n.modal-in-leave-active,\n.modal-out-enter-active,\n.modal-out-leave-active {\n\ttransition: opacity 250ms;\n}\n\n.modal-in-enter,\n.modal-in-leave-to,\n.modal-out-enter,\n.modal-out-leave-to {\n\topacity: 0;\n}\n\n.modal-in-enter .modal-container,\n.modal-in-leave-to .modal-container {\n\ttransform: scale(.9);\n}\n\n.modal-out-enter .modal-container,\n.modal-out-leave-to .modal-container {\n\ttransform: scale(1.1);\n}\n\n// animated circle\n$radius: 15;\n$pi: 3.14159265358979;\n\n.modal-mask .play-pause {\n\t.progress-ring {\n\t\tposition: absolute;\n\t\ttop: 0;\n\t\tleft: 0;\n\t\ttransform: rotate(-90deg);\n\t\t.progress-ring__circle {\n\t\t\ttransition: 100ms stroke-dashoffset;\n\t\t\ttransform-origin: 50% 50%; // axis compensation\n\t\t\tanimation: progressring linear 3s infinite;\n\n\t\t\tstroke-linecap: round;\n\t\t\tstroke-dashoffset: $radius * 2 * $pi; // radius * 2 * PI\n\t\t\tstroke-dasharray: $radius * 2 * $pi; // radius * 2 * PI\n\t\t}\n\t}\n\t&--paused {\n\t\t.icon-pause {\n\t\t\tanimation: breath 2s cubic-bezier(0.4, 0, 0.2, 1) infinite;\n\t\t}\n\t\t.progress-ring__circle {\n\t\t\tanimation-play-state: paused !important;\n\t\t}\n\t}\n}\n\n// keyframes get scoped too and break the animation name, we need them unscoped\n@keyframes progressring {\n\tfrom {\n\t\tstroke-dashoffset: $radius * 2 * $pi; // radius * 2 * PI\n\t}\n\tto {\n\t\tstroke-dashoffset: 0;\n\t}\n}\n\n@keyframes breath {\n\t0% {\n\t\topacity: 1;\n\t}\n\t50% {\n\t\topacity: 0;\n\t}\n\t100% {\n\t\topacity: 1;\n\t}\n}\n\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 */\n\n// https://uxplanet.org/7-rules-for-mobile-ui-button-design-e9cf2ea54556\n// recommended is 48px\n// 44px is what we choose and have very good visual-to-usability ratio\n$clickable-area: 44px;\n\n// background icon size\n// also used for the scss icon font\n$icon-size: 16px;\n\n// icon padding for a $clickable-area width and a $icon-size icon\n// ( 44px - 16px ) / 2\n$icon-margin: ($clickable-area - $icon-size) / 2;\n\n// transparency background for icons\n$icon-focus-bg: rgba(127, 127, 127, .25);\n\n// popovermenu arrow width from the triangle center\n$arrow-width: 9px;\n\n// opacities\n$opacity_disabled: .5;\n$opacity_normal: .7;\n$opacity_full: 1;\n\n// menu round background hover feedback\n// good looking on dark AND white bg\n$action-background-hover: rgba(127, 127, 127, .25);\n\n// various structure data used in the \n// `AppNavigation` component\n$header-height: 50px;\n$navigation-width: 300px;\n\n// mobile breakpoint\n$breakpoint-mobile: 1024px;\n"],sourceRoot:""}]),e.a=f},function(t,e){},,,,,,,,,function(t,e,n){"use strict";n.r(e);var r=n(83),o=(n(31),n(109)),i=n.n(o),a=n(73),s=n(110),l=n(61),c=n(12),u=n(21);function p(t,e){var n,r,o,i=e;this.start=function(){o=!0,r=new Date,n=setTimeout(t,i)},this.pause=function(){o=!1,clearTimeout(n),i-=new Date-r},this.clear=function(){o=!1,clearTimeout(n),i=0},this.getTimeLeft=function(){return o&&(this.pause(),this.start()),i},this.getStateRunning=function(){return o},this.start()}var A={name:"Modal",components:{Actions:a.default,ActionButton:s.default},directives:{tooltip:u.default},mixins:[l.a],props:{title:{type:String,default:""},hasPrevious:{type:Boolean,default:!1},hasNext:{type:Boolean,default:!1},outTransition:{type:Boolean,default:!1},enableSlideshow:{type:Boolean,default:!1},clearViewDelay:{type:Number,default:5e3},slideshowDelay:{type:Number,default:3e3},slideshowPaused:{type:Boolean,default:!1},enableSwipe:{type:Boolean,default:!0},spreadNavigation:{type:Boolean,default:!1},size:{type:String,default:"normal",validator:function(t){return-1!==["normal","large","full"].indexOf(t)}},canClose:{type:Boolean,default:!0},dark:{type:Boolean,default:!1},container:{type:String,default:"body"}},data:function(){return{mc:null,showModal:!1,clearView:!1,clearViewTimeout:null,playing:!1,slideshowTimeout:null}},computed:{modalTransitionName:function(){return"modal-".concat(this.outTransition?"out":"in")},playPauseTitle:function(){return this.playing?Object(c.b)("Pause slideshow"):Object(c.b)("Start slideshow")}},watch:{slideshowPaused:function(t){this.slideshowTimeout&&(t?this.slideshowTimeout.pause():this.slideshowTimeout.start())}},beforeMount:function(){window.addEventListener("keydown",this.handleKeydown)},beforeDestroy:function(){window.removeEventListener("keydown",this.handleKeydown),this.mc.off("swipeleft swiperight"),this.mc.destroy()},mounted:function(){var t=this;this.showModal=!0,this.handleMouseMove(),this.mc=new i.a(this.$refs.mask),this.mc.on("swipeleft swiperight",(function(e){t.handleSwipe(e)})),"body"===this.container?document.body.insertBefore(this.$el,document.body.lastChild):document.querySelector(this.container).appendChild(this.$el)},destroyed:function(){this.$el.remove()},methods:{previous:function(t){this.hasPrevious&&(t&&this.resetSlideshow(),this.$emit("previous",t))},next:function(t){this.hasNext&&(t&&this.resetSlideshow(),this.$emit("next",t))},close:function(t){var e=this;this.canClose&&(this.showModal=!1,setTimeout((function(){e.$emit("close",t)}),300))},handleKeydown:function(t){switch(t.keyCode){case 37:this.previous(t);break;case 13:case 39:this.next(t);break;case 27:this.close(t)}},handleSwipe:function(t){this.enableSwipe&&("swipeleft"===t.type?this.next(t):"swiperight"===t.type&&this.previous(t))},handleMouseMove:function(){var t=this;this.clearViewDelay>0&&(this.clearView=!1,clearTimeout(this.clearViewTimeout),this.clearViewTimeout=setTimeout((function(){t.clearView=!0}),this.clearViewDelay))},togglePlayPause:function(){this.playing=!this.playing,this.playing?this.handleSlideshow():this.clearSlideshowTimeout()},resetSlideshow:function(){this.playing=!this.playing,this.clearSlideshowTimeout(),this.$nextTick((function(){this.togglePlayPause()}))},handleSlideshow:function(){var t=this;this.playing=!0,this.hasNext?this.slideshowTimeout=new p((function(){t.next(),t.handleSlideshow()}),this.slideshowDelay):(this.playing=!1,this.clearSlideshowTimeout())},clearSlideshowTimeout:function(){this.slideshowTimeout&&this.slideshowTimeout.clear()}}},f=n(2),d=n.n(f),h=n(119),m={insert:"head",singleton:!1},g=(d()(h.a,m),h.a.locals,n(3)),v=n(120),y=n.n(v),b=Object(g.a)(A,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("transition",{attrs:{name:"fade"}},[n("div",{ref:"mask",staticClass:"modal-mask",class:{"modal-mask--dark":t.dark},on:{click:t.handleMouseMove,mousemove:t.handleMouseMove,touchmove:t.handleMouseMove}},[n("transition",{attrs:{name:"fade-visibility"}},[n("div",{directives:[{name:"show",rawName:"v-show",value:!t.clearView,expression:"!clearView"}],staticClass:"modal-header",class:{invisible:t.clearView}},[""!==t.title.trim()?n("div",{staticClass:"modal-title"},[t._v("\n\t\t\t\t\t"+t._s(t.title)+"\n\t\t\t\t")]):t._e(),t._v(" "),n("div",{staticClass:"icons-menu"},[t.hasNext&&t.enableSlideshow?n("button",{directives:[{name:"tooltip",rawName:"v-tooltip.auto",value:t.playPauseTitle,expression:"playPauseTitle",modifiers:{auto:!0}}],staticClass:"play-pause",class:{"play-pause--paused":t.slideshowPaused},on:{click:t.togglePlayPause}},[n("div",{class:[t.playing?"icon-pause":"icon-play"]},[n("span",{staticClass:"hidden-visually"},[t._v("\n\t\t\t\t\t\t\t\t"+t._s(t.playPauseTitle)+"\n\t\t\t\t\t\t\t")])]),t._v(" "),t.playing?n("svg",{staticClass:"progress-ring",attrs:{height:"50",width:"50"}},[n("circle",{staticClass:"progress-ring__circle",attrs:{stroke:"white","stroke-width":"2",fill:"transparent",r:"15",cx:"25",cy:"25"}})]):t._e()]):t._e(),t._v(" "),n("Actions",{staticClass:"header-actions"},[t._t("actions")],2),t._v(" "),t.canClose?n("Actions",{staticClass:"header-close"},[n("ActionButton",{attrs:{icon:"icon-close"},on:{click:t.close}},[t._v("\n\t\t\t\t\t\t\t"+t._s(t.t("Close"))+"\n\t\t\t\t\t\t")])],1):t._e()],1)])]),t._v(" "),n("transition",{attrs:{name:t.modalTransitionName}},[n("div",{directives:[{name:"show",rawName:"v-show",value:t.showModal,expression:"showModal"}],staticClass:"modal-wrapper",class:["modal-wrapper--"+t.size,t.spreadNavigation?"modal-wrapper--spread-navigation":""],on:{mousedown:function(e){return e.target!==e.currentTarget?null:t.close(e)}}},[n("transition",{attrs:{name:"fade-visibility"}},[n("a",{directives:[{name:"show",rawName:"v-show",value:t.hasPrevious&&!t.clearView,expression:"hasPrevious && !clearView"}],staticClass:"prev",class:{invisible:t.clearView||!t.hasPrevious},on:{click:t.previous}},[n("div",{staticClass:"icon icon-previous"},[n("span",{staticClass:"hidden-visually"},[t._v("\n\t\t\t\t\t\t\t\t"+t._s(t.t("Previous"))+"\n\t\t\t\t\t\t\t")])])])]),t._v(" "),n("div",{staticClass:"modal-container"},[t._t("default")],2),t._v(" "),n("transition",{attrs:{name:"fade-visibility"}},[n("a",{directives:[{name:"show",rawName:"v-show",value:t.hasNext&&!t.clearView,expression:"hasNext && !clearView"}],staticClass:"next",class:{invisible:t.clearView||!t.hasNext},on:{click:t.next}},[n("div",{staticClass:"icon icon-next"},[n("span",{staticClass:"hidden-visually"},[t._v("\n\t\t\t\t\t\t\t\t"+t._s(t.t("Next"))+"\n\t\t\t\t\t\t\t")])])])])],1)])],1)])}),[],!1,null,"3e0b109b",null);"function"==typeof y.a&&y()(b);var C=b.exports;Object(r.a)(C),e.default=C}])},6314:(t,e,n)=>{"use strict";var r=["BigInt64Array","BigUint64Array","Float32Array","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Uint8Array","Uint8ClampedArray"],o="undefined"==typeof globalThis?n.g:globalThis;t.exports=function(){for(var t=[],e=0;e<r.length;e++)"function"==typeof o[r[e]]&&(t[t.length]=r[e]);return t}},9669:(t,e,n)=>{t.exports=n(1609)},5448:(t,e,n)=>{"use strict";var r=n(4867),o=n(6026),i=n(4372),a=n(5327),s=n(4097),l=n(4109),c=n(7985),u=n(5061),p=n(5655),A=n(5263);t.exports=function(t){return new Promise((function(e,n){var f,d=t.data,h=t.headers,m=t.responseType;function g(){t.cancelToken&&t.cancelToken.unsubscribe(f),t.signal&&t.signal.removeEventListener("abort",f)}r.isFormData(d)&&delete h["Content-Type"];var v=new XMLHttpRequest;if(t.auth){var y=t.auth.username||"",b=t.auth.password?unescape(encodeURIComponent(t.auth.password)):"";h.Authorization="Basic "+btoa(y+":"+b)}var C=s(t.baseURL,t.url);function w(){if(v){var r="getAllResponseHeaders"in v?l(v.getAllResponseHeaders()):null,i={data:m&&"text"!==m&&"json"!==m?v.response:v.responseText,status:v.status,statusText:v.statusText,headers:r,config:t,request:v};o((function(t){e(t),g()}),(function(t){n(t),g()}),i),v=null}}if(v.open(t.method.toUpperCase(),a(C,t.params,t.paramsSerializer),!0),v.timeout=t.timeout,"onloadend"in v?v.onloadend=w:v.onreadystatechange=function(){v&&4===v.readyState&&(0!==v.status||v.responseURL&&0===v.responseURL.indexOf("file:"))&&setTimeout(w)},v.onabort=function(){v&&(n(u("Request aborted",t,"ECONNABORTED",v)),v=null)},v.onerror=function(){n(u("Network Error",t,null,v)),v=null},v.ontimeout=function(){var e=t.timeout?"timeout of "+t.timeout+"ms exceeded":"timeout exceeded",r=t.transitional||p.transitional;t.timeoutErrorMessage&&(e=t.timeoutErrorMessage),n(u(e,t,r.clarifyTimeoutError?"ETIMEDOUT":"ECONNABORTED",v)),v=null},r.isStandardBrowserEnv()){var x=(t.withCredentials||c(C))&&t.xsrfCookieName?i.read(t.xsrfCookieName):void 0;x&&(h[t.xsrfHeaderName]=x)}"setRequestHeader"in v&&r.forEach(h,(function(t,e){void 0===d&&"content-type"===e.toLowerCase()?delete h[e]:v.setRequestHeader(e,t)})),r.isUndefined(t.withCredentials)||(v.withCredentials=!!t.withCredentials),m&&"json"!==m&&(v.responseType=t.responseType),"function"==typeof t.onDownloadProgress&&v.addEventListener("progress",t.onDownloadProgress),"function"==typeof t.onUploadProgress&&v.upload&&v.upload.addEventListener("progress",t.onUploadProgress),(t.cancelToken||t.signal)&&(f=function(t){v&&(n(!t||t&&t.type?new A("canceled"):t),v.abort(),v=null)},t.cancelToken&&t.cancelToken.subscribe(f),t.signal&&(t.signal.aborted?f():t.signal.addEventListener("abort",f))),d||(d=null),v.send(d)}))}},1609:(t,e,n)=>{"use strict";var r=n(4867),o=n(1849),i=n(321),a=n(7185);var s=function t(e){var n=new i(e),s=o(i.prototype.request,n);return r.extend(s,i.prototype,n),r.extend(s,n),s.create=function(n){return t(a(e,n))},s}(n(5655));s.Axios=i,s.Cancel=n(5263),s.CancelToken=n(4972),s.isCancel=n(6502),s.VERSION=n(7288).version,s.all=function(t){return Promise.all(t)},s.spread=n(8713),s.isAxiosError=n(6268),t.exports=s,t.exports.default=s},5263:t=>{"use strict";function e(t){this.message=t}e.prototype.toString=function(){return"Cancel"+(this.message?": "+this.message:"")},e.prototype.__CANCEL__=!0,t.exports=e},4972:(t,e,n)=>{"use strict";var r=n(5263);function o(t){if("function"!=typeof t)throw new TypeError("executor must be a function.");var e;this.promise=new Promise((function(t){e=t}));var n=this;this.promise.then((function(t){if(n._listeners){var e,r=n._listeners.length;for(e=0;e<r;e++)n._listeners[e](t);n._listeners=null}})),this.promise.then=function(t){var e,r=new Promise((function(t){n.subscribe(t),e=t})).then(t);return r.cancel=function(){n.unsubscribe(e)},r},t((function(t){n.reason||(n.reason=new r(t),e(n.reason))}))}o.prototype.throwIfRequested=function(){if(this.reason)throw this.reason},o.prototype.subscribe=function(t){this.reason?t(this.reason):this._listeners?this._listeners.push(t):this._listeners=[t]},o.prototype.unsubscribe=function(t){if(this._listeners){var e=this._listeners.indexOf(t);-1!==e&&this._listeners.splice(e,1)}},o.source=function(){var t;return{token:new o((function(e){t=e})),cancel:t}},t.exports=o},6502:t=>{"use strict";t.exports=function(t){return!(!t||!t.__CANCEL__)}},321:(t,e,n)=>{"use strict";var r=n(4867),o=n(5327),i=n(782),a=n(3572),s=n(7185),l=n(4875),c=l.validators;function u(t){this.defaults=t,this.interceptors={request:new i,response:new i}}u.prototype.request=function(t){"string"==typeof t?(t=arguments[1]||{}).url=arguments[0]:t=t||{},(t=s(this.defaults,t)).method?t.method=t.method.toLowerCase():this.defaults.method?t.method=this.defaults.method.toLowerCase():t.method="get";var e=t.transitional;void 0!==e&&l.assertOptions(e,{silentJSONParsing:c.transitional(c.boolean),forcedJSONParsing:c.transitional(c.boolean),clarifyTimeoutError:c.transitional(c.boolean)},!1);var n=[],r=!0;this.interceptors.request.forEach((function(e){"function"==typeof e.runWhen&&!1===e.runWhen(t)||(r=r&&e.synchronous,n.unshift(e.fulfilled,e.rejected))}));var o,i=[];if(this.interceptors.response.forEach((function(t){i.push(t.fulfilled,t.rejected)})),!r){var u=[a,void 0];for(Array.prototype.unshift.apply(u,n),u=u.concat(i),o=Promise.resolve(t);u.length;)o=o.then(u.shift(),u.shift());return o}for(var p=t;n.length;){var A=n.shift(),f=n.shift();try{p=A(p)}catch(t){f(t);break}}try{o=a(p)}catch(t){return Promise.reject(t)}for(;i.length;)o=o.then(i.shift(),i.shift());return o},u.prototype.getUri=function(t){return t=s(this.defaults,t),o(t.url,t.params,t.paramsSerializer).replace(/^\?/,"")},r.forEach(["delete","get","head","options"],(function(t){u.prototype[t]=function(e,n){return this.request(s(n||{},{method:t,url:e,data:(n||{}).data}))}})),r.forEach(["post","put","patch"],(function(t){u.prototype[t]=function(e,n,r){return this.request(s(r||{},{method:t,url:e,data:n}))}})),t.exports=u},782:(t,e,n)=>{"use strict";var r=n(4867);function o(){this.handlers=[]}o.prototype.use=function(t,e,n){return this.handlers.push({fulfilled:t,rejected:e,synchronous:!!n&&n.synchronous,runWhen:n?n.runWhen:null}),this.handlers.length-1},o.prototype.eject=function(t){this.handlers[t]&&(this.handlers[t]=null)},o.prototype.forEach=function(t){r.forEach(this.handlers,(function(e){null!==e&&t(e)}))},t.exports=o},4097:(t,e,n)=>{"use strict";var r=n(1793),o=n(7303);t.exports=function(t,e){return t&&!r(e)?o(t,e):e}},5061:(t,e,n)=>{"use strict";var r=n(481);t.exports=function(t,e,n,o,i){var a=new Error(t);return r(a,e,n,o,i)}},3572:(t,e,n)=>{"use strict";var r=n(4867),o=n(8527),i=n(6502),a=n(5655),s=n(5263);function l(t){if(t.cancelToken&&t.cancelToken.throwIfRequested(),t.signal&&t.signal.aborted)throw new s("canceled")}t.exports=function(t){return l(t),t.headers=t.headers||{},t.data=o.call(t,t.data,t.headers,t.transformRequest),t.headers=r.merge(t.headers.common||{},t.headers[t.method]||{},t.headers),r.forEach(["delete","get","head","post","put","patch","common"],(function(e){delete t.headers[e]})),(t.adapter||a.adapter)(t).then((function(e){return l(t),e.data=o.call(t,e.data,e.headers,t.transformResponse),e}),(function(e){return i(e)||(l(t),e&&e.response&&(e.response.data=o.call(t,e.response.data,e.response.headers,t.transformResponse))),Promise.reject(e)}))}},481:t=>{"use strict";t.exports=function(t,e,n,r,o){return t.config=e,n&&(t.code=n),t.request=r,t.response=o,t.isAxiosError=!0,t.toJSON=function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:this.config,code:this.code,status:this.response&&this.response.status?this.response.status:null}},t}},7185:(t,e,n)=>{"use strict";var r=n(4867);t.exports=function(t,e){e=e||{};var n={};function o(t,e){return r.isPlainObject(t)&&r.isPlainObject(e)?r.merge(t,e):r.isPlainObject(e)?r.merge({},e):r.isArray(e)?e.slice():e}function i(n){return r.isUndefined(e[n])?r.isUndefined(t[n])?void 0:o(void 0,t[n]):o(t[n],e[n])}function a(t){if(!r.isUndefined(e[t]))return o(void 0,e[t])}function s(n){return r.isUndefined(e[n])?r.isUndefined(t[n])?void 0:o(void 0,t[n]):o(void 0,e[n])}function l(n){return n in e?o(t[n],e[n]):n in t?o(void 0,t[n]):void 0}var c={url:a,method:a,data:a,baseURL:s,transformRequest:s,transformResponse:s,paramsSerializer:s,timeout:s,timeoutMessage:s,withCredentials:s,adapter:s,responseType:s,xsrfCookieName:s,xsrfHeaderName:s,onUploadProgress:s,onDownloadProgress:s,decompress:s,maxContentLength:s,maxBodyLength:s,transport:s,httpAgent:s,httpsAgent:s,cancelToken:s,socketPath:s,responseEncoding:s,validateStatus:l};return r.forEach(Object.keys(t).concat(Object.keys(e)),(function(t){var e=c[t]||i,o=e(t);r.isUndefined(o)&&e!==l||(n[t]=o)})),n}},6026:(t,e,n)=>{"use strict";var r=n(5061);t.exports=function(t,e,n){var o=n.config.validateStatus;n.status&&o&&!o(n.status)?e(r("Request failed with status code "+n.status,n.config,null,n.request,n)):t(n)}},8527:(t,e,n)=>{"use strict";var r=n(4867),o=n(5655);t.exports=function(t,e,n){var i=this||o;return r.forEach(n,(function(n){t=n.call(i,t,e)})),t}},5655:(t,e,n)=>{"use strict";var r=n(4155),o=n(4867),i=n(6016),a=n(481),s={"Content-Type":"application/x-www-form-urlencoded"};function l(t,e){!o.isUndefined(t)&&o.isUndefined(t["Content-Type"])&&(t["Content-Type"]=e)}var c,u={transitional:{silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},adapter:(("undefined"!=typeof XMLHttpRequest||void 0!==r&&"[object process]"===Object.prototype.toString.call(r))&&(c=n(5448)),c),transformRequest:[function(t,e){return i(e,"Accept"),i(e,"Content-Type"),o.isFormData(t)||o.isArrayBuffer(t)||o.isBuffer(t)||o.isStream(t)||o.isFile(t)||o.isBlob(t)?t:o.isArrayBufferView(t)?t.buffer:o.isURLSearchParams(t)?(l(e,"application/x-www-form-urlencoded;charset=utf-8"),t.toString()):o.isObject(t)||e&&"application/json"===e["Content-Type"]?(l(e,"application/json"),function(t,e,n){if(o.isString(t))try{return(e||JSON.parse)(t),o.trim(t)}catch(t){if("SyntaxError"!==t.name)throw t}return(n||JSON.stringify)(t)}(t)):t}],transformResponse:[function(t){var e=this.transitional||u.transitional,n=e&&e.silentJSONParsing,r=e&&e.forcedJSONParsing,i=!n&&"json"===this.responseType;if(i||r&&o.isString(t)&&t.length)try{return JSON.parse(t)}catch(t){if(i){if("SyntaxError"===t.name)throw a(t,this,"E_JSON_PARSE");throw t}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*"}}};o.forEach(["delete","get","head"],(function(t){u.headers[t]={}})),o.forEach(["post","put","patch"],(function(t){u.headers[t]=o.merge(s)})),t.exports=u},7288:t=>{t.exports={version:"0.24.0"}},1849:t=>{"use strict";t.exports=function(t,e){return function(){for(var n=new Array(arguments.length),r=0;r<n.length;r++)n[r]=arguments[r];return t.apply(e,n)}}},5327:(t,e,n)=>{"use strict";var r=n(4867);function o(t){return encodeURIComponent(t).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}t.exports=function(t,e,n){if(!e)return t;var i;if(n)i=n(e);else if(r.isURLSearchParams(e))i=e.toString();else{var a=[];r.forEach(e,(function(t,e){null!=t&&(r.isArray(t)?e+="[]":t=[t],r.forEach(t,(function(t){r.isDate(t)?t=t.toISOString():r.isObject(t)&&(t=JSON.stringify(t)),a.push(o(e)+"="+o(t))})))})),i=a.join("&")}if(i){var s=t.indexOf("#");-1!==s&&(t=t.slice(0,s)),t+=(-1===t.indexOf("?")?"?":"&")+i}return t}},7303:t=>{"use strict";t.exports=function(t,e){return e?t.replace(/\/+$/,"")+"/"+e.replace(/^\/+/,""):t}},4372:(t,e,n)=>{"use strict";var r=n(4867);t.exports=r.isStandardBrowserEnv()?{write:function(t,e,n,o,i,a){var s=[];s.push(t+"="+encodeURIComponent(e)),r.isNumber(n)&&s.push("expires="+new Date(n).toGMTString()),r.isString(o)&&s.push("path="+o),r.isString(i)&&s.push("domain="+i),!0===a&&s.push("secure"),document.cookie=s.join("; ")},read:function(t){var e=document.cookie.match(new RegExp("(^|;\\s*)("+t+")=([^;]*)"));return e?decodeURIComponent(e[3]):null},remove:function(t){this.write(t,"",Date.now()-864e5)}}:{write:function(){},read:function(){return null},remove:function(){}}},1793:t=>{"use strict";t.exports=function(t){return/^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(t)}},6268:t=>{"use strict";t.exports=function(t){return"object"==typeof t&&!0===t.isAxiosError}},7985:(t,e,n)=>{"use strict";var r=n(4867);t.exports=r.isStandardBrowserEnv()?function(){var t,e=/(msie|trident)/i.test(navigator.userAgent),n=document.createElement("a");function o(t){var r=t;return e&&(n.setAttribute("href",r),r=n.href),n.setAttribute("href",r),{href:n.href,protocol:n.protocol?n.protocol.replace(/:$/,""):"",host:n.host,search:n.search?n.search.replace(/^\?/,""):"",hash:n.hash?n.hash.replace(/^#/,""):"",hostname:n.hostname,port:n.port,pathname:"/"===n.pathname.charAt(0)?n.pathname:"/"+n.pathname}}return t=o(window.location.href),function(e){var n=r.isString(e)?o(e):e;return n.protocol===t.protocol&&n.host===t.host}}():function(){return!0}},6016:(t,e,n)=>{"use strict";var r=n(4867);t.exports=function(t,e){r.forEach(t,(function(n,r){r!==e&&r.toUpperCase()===e.toUpperCase()&&(t[e]=n,delete t[r])}))}},4109:(t,e,n)=>{"use strict";var r=n(4867),o=["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"];t.exports=function(t){var e,n,i,a={};return t?(r.forEach(t.split("\n"),(function(t){if(i=t.indexOf(":"),e=r.trim(t.substr(0,i)).toLowerCase(),n=r.trim(t.substr(i+1)),e){if(a[e]&&o.indexOf(e)>=0)return;a[e]="set-cookie"===e?(a[e]?a[e]:[]).concat([n]):a[e]?a[e]+", "+n:n}})),a):a}},8713:t=>{"use strict";t.exports=function(t){return function(e){return t.apply(null,e)}}},4875:(t,e,n)=>{"use strict";var r=n(5108),o=n(7288).version,i={};["object","boolean","number","function","string","symbol"].forEach((function(t,e){i[t]=function(n){return typeof n===t||"a"+(e<1?"n ":" ")+t}}));var a={};i.transitional=function(t,e,n){function i(t,e){return"[Axios v"+o+"] Transitional option '"+t+"'"+e+(n?". "+n:"")}return function(n,o,s){if(!1===t)throw new Error(i(o," has been removed"+(e?" in "+e:"")));return e&&!a[o]&&(a[o]=!0,r.warn(i(o," has been deprecated since v"+e+" and will be removed in the near future"))),!t||t(n,o,s)}},t.exports={assertOptions:function(t,e,n){if("object"!=typeof t)throw new TypeError("options must be an object");for(var r=Object.keys(t),o=r.length;o-- >0;){var i=r[o],a=e[i];if(a){var s=t[i],l=void 0===s||a(s,i,t);if(!0!==l)throw new TypeError("option "+i+" must be "+l)}else if(!0!==n)throw Error("Unknown option "+i)}},validators:i}},4867:(t,e,n)=>{"use strict";var r=n(1849),o=Object.prototype.toString;function i(t){return"[object Array]"===o.call(t)}function a(t){return void 0===t}function s(t){return null!==t&&"object"==typeof t}function l(t){if("[object Object]"!==o.call(t))return!1;var e=Object.getPrototypeOf(t);return null===e||e===Object.prototype}function c(t){return"[object Function]"===o.call(t)}function u(t,e){if(null!=t)if("object"!=typeof t&&(t=[t]),i(t))for(var n=0,r=t.length;n<r;n++)e.call(null,t[n],n,t);else for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&e.call(null,t[o],o,t)}t.exports={isArray:i,isArrayBuffer:function(t){return"[object ArrayBuffer]"===o.call(t)},isBuffer:function(t){return null!==t&&!a(t)&&null!==t.constructor&&!a(t.constructor)&&"function"==typeof t.constructor.isBuffer&&t.constructor.isBuffer(t)},isFormData:function(t){return"undefined"!=typeof FormData&&t instanceof FormData},isArrayBufferView:function(t){return"undefined"!=typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(t):t&&t.buffer&&t.buffer instanceof ArrayBuffer},isString:function(t){return"string"==typeof t},isNumber:function(t){return"number"==typeof t},isObject:s,isPlainObject:l,isUndefined:a,isDate:function(t){return"[object Date]"===o.call(t)},isFile:function(t){return"[object File]"===o.call(t)},isBlob:function(t){return"[object Blob]"===o.call(t)},isFunction:c,isStream:function(t){return s(t)&&c(t.pipe)},isURLSearchParams:function(t){return"undefined"!=typeof URLSearchParams&&t instanceof URLSearchParams},isStandardBrowserEnv:function(){return("undefined"==typeof navigator||"ReactNative"!==navigator.product&&"NativeScript"!==navigator.product&&"NS"!==navigator.product)&&("undefined"!=typeof window&&"undefined"!=typeof document)},forEach:u,merge:function t(){var e={};function n(n,r){l(e[r])&&l(n)?e[r]=t(e[r],n):l(n)?e[r]=t({},n):i(n)?e[r]=n.slice():e[r]=n}for(var r=0,o=arguments.length;r<o;r++)u(arguments[r],n);return e},extend:function(t,e,n){return u(e,(function(e,o){t[o]=n&&"function"==typeof e?r(e,n):e})),t},trim:function(t){return t.trim?t.trim():t.replace(/^\s+|\s+$/g,"")},stripBOM:function(t){return 65279===t.charCodeAt(0)&&(t=t.slice(1)),t}}},1924:(t,e,n)=>{"use strict";var r=n(210),o=n(5559),i=o(r("String.prototype.indexOf"));t.exports=function(t,e){var n=r(t,!!e);return"function"==typeof n&&i(t,".prototype.")>-1?o(n):n}},5559:(t,e,n)=>{"use strict";var r=n(8612),o=n(210),i=o("%Function.prototype.apply%"),a=o("%Function.prototype.call%"),s=o("%Reflect.apply%",!0)||r.call(a,i),l=o("%Object.getOwnPropertyDescriptor%",!0),c=o("%Object.defineProperty%",!0),u=o("%Math.max%");if(c)try{c({},"a",{value:1})}catch(t){c=null}t.exports=function(t){var e=s(r,a,arguments);if(l&&c){var n=l(e,"length");n.configurable&&c(e,"length",{value:1+u(0,t.length-(arguments.length-1))})}return e};var p=function(){return s(r,i,arguments)};c?c(t.exports,"apply",{value:p}):t.exports.apply=p},5108:(t,e,n)=>{var r=n(374),o=n(686);function i(){return(new Date).getTime()}var a,s=Array.prototype.slice,l={};a=void 0!==n.g&&n.g.console?n.g.console:"undefined"!=typeof window&&window.console?window.console:{};for(var c=[[function(){},"log"],[function(){a.log.apply(a,arguments)},"info"],[function(){a.log.apply(a,arguments)},"warn"],[function(){a.warn.apply(a,arguments)},"error"],[function(t){l[t]=i()},"time"],[function(t){var e=l[t];if(!e)throw new Error("No such label: "+t);delete l[t];var n=i()-e;a.log(t+": "+n+"ms")},"timeEnd"],[function(){var t=new Error;t.name="Trace",t.message=r.format.apply(null,arguments),a.error(t.stack)},"trace"],[function(t){a.log(r.inspect(t)+"\n")},"dir"],[function(t){if(!t){var e=s.call(arguments,1);o.ok(!1,r.format.apply(null,e))}},"assert"]],u=0;u<c.length;u++){var p=c[u],A=p[0],f=p[1];a[f]||(a[f]=A)}t.exports=a},3099:t=>{t.exports=function(t){if("function"!=typeof t)throw TypeError(String(t)+" is not a function");return t}},6077:(t,e,n)=>{var r=n(111);t.exports=function(t){if(!r(t)&&null!==t)throw TypeError("Can't set "+String(t)+" as a prototype");return t}},1223:(t,e,n)=>{var r=n(5112),o=n(30),i=n(3070),a=r("unscopables"),s=Array.prototype;null==s[a]&&i.f(s,a,{configurable:!0,value:o(null)}),t.exports=function(t){s[a][t]=!0}},1530:(t,e,n)=>{"use strict";var r=n(8710).charAt;t.exports=function(t,e,n){return e+(n?r(t,e).length:1)}},5787:t=>{t.exports=function(t,e,n){if(!(t instanceof e))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return t}},9670:(t,e,n)=>{var r=n(111);t.exports=function(t){if(!r(t))throw TypeError(String(t)+" is not an object");return t}},8533:(t,e,n)=>{"use strict";var r=n(2092).forEach,o=n(9341),i=n(9207),a=o("forEach"),s=i("forEach");t.exports=a&&s?[].forEach:function(t){return r(this,t,arguments.length>1?arguments[1]:void 0)}},8457:(t,e,n)=>{"use strict";var r=n(9974),o=n(7908),i=n(3411),a=n(7659),s=n(7466),l=n(6135),c=n(1246);t.exports=function(t){var e,n,u,p,A,f,d=o(t),h="function"==typeof this?this:Array,m=arguments.length,g=m>1?arguments[1]:void 0,v=void 0!==g,y=c(d),b=0;if(v&&(g=r(g,m>2?arguments[2]:void 0,2)),null==y||h==Array&&a(y))for(n=new h(e=s(d.length));e>b;b++)f=v?g(d[b],b):d[b],l(n,b,f);else for(A=(p=y.call(d)).next,n=new h;!(u=A.call(p)).done;b++)f=v?i(p,g,[u.value,b],!0):u.value,l(n,b,f);return n.length=b,n}},1318:(t,e,n)=>{var r=n(5656),o=n(7466),i=n(1400),a=function(t){return function(e,n,a){var s,l=r(e),c=o(l.length),u=i(a,c);if(t&&n!=n){for(;c>u;)if((s=l[u++])!=s)return!0}else for(;c>u;u++)if((t||u in l)&&l[u]===n)return t||u||0;return!t&&-1}};t.exports={includes:a(!0),indexOf:a(!1)}},2092:(t,e,n)=>{var r=n(9974),o=n(8361),i=n(7908),a=n(7466),s=n(5417),l=[].push,c=function(t){var e=1==t,n=2==t,c=3==t,u=4==t,p=6==t,A=5==t||p;return function(f,d,h,m){for(var g,v,y=i(f),b=o(y),C=r(d,h,3),w=a(b.length),x=0,E=m||s,S=e?E(f,w):n?E(f,0):void 0;w>x;x++)if((A||x in b)&&(v=C(g=b[x],x,y),t))if(e)S[x]=v;else if(v)switch(t){case 3:return!0;case 5:return g;case 6:return x;case 2:l.call(S,g)}else if(u)return!1;return p?-1:c||u?u:S}};t.exports={forEach:c(0),map:c(1),filter:c(2),some:c(3),every:c(4),find:c(5),findIndex:c(6)}},1194:(t,e,n)=>{var r=n(7293),o=n(5112),i=n(7392),a=o("species");t.exports=function(t){return i>=51||!r((function(){var e=[];return(e.constructor={})[a]=function(){return{foo:1}},1!==e[t](Boolean).foo}))}},9341:(t,e,n)=>{"use strict";var r=n(7293);t.exports=function(t,e){var n=[][t];return!!n&&r((function(){n.call(null,e||function(){throw 1},1)}))}},9207:(t,e,n)=>{var r=n(9781),o=n(7293),i=n(6656),a=Object.defineProperty,s={},l=function(t){throw t};t.exports=function(t,e){if(i(s,t))return s[t];e||(e={});var n=[][t],c=!!i(e,"ACCESSORS")&&e.ACCESSORS,u=i(e,0)?e[0]:l,p=i(e,1)?e[1]:void 0;return s[t]=!!n&&!o((function(){if(c&&!r)return!0;var t={length:-1};c?a(t,1,{enumerable:!0,get:l}):t[1]=1,n.call(t,u,p)}))}},5417:(t,e,n)=>{var r=n(111),o=n(3157),i=n(5112)("species");t.exports=function(t,e){var n;return o(t)&&("function"!=typeof(n=t.constructor)||n!==Array&&!o(n.prototype)?r(n)&&null===(n=n[i])&&(n=void 0):n=void 0),new(void 0===n?Array:n)(0===e?0:e)}},3411:(t,e,n)=>{var r=n(9670);t.exports=function(t,e,n,o){try{return o?e(r(n)[0],n[1]):e(n)}catch(e){var i=t.return;throw void 0!==i&&r(i.call(t)),e}}},7072:(t,e,n)=>{var r=n(5112)("iterator"),o=!1;try{var i=0,a={next:function(){return{done:!!i++}},return:function(){o=!0}};a[r]=function(){return this},Array.from(a,(function(){throw 2}))}catch(t){}t.exports=function(t,e){if(!e&&!o)return!1;var n=!1;try{var i={};i[r]=function(){return{next:function(){return{done:n=!0}}}},t(i)}catch(t){}return n}},4326:t=>{var e={}.toString;t.exports=function(t){return e.call(t).slice(8,-1)}},648:(t,e,n)=>{var r=n(1694),o=n(4326),i=n(5112)("toStringTag"),a="Arguments"==o(function(){return arguments}());t.exports=r?o:function(t){var e,n,r;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=function(t,e){try{return t[e]}catch(t){}}(e=Object(t),i))?n:a?o(e):"Object"==(r=o(e))&&"function"==typeof e.callee?"Arguments":r}},5631:(t,e,n)=>{"use strict";var r=n(3070).f,o=n(30),i=n(2248),a=n(9974),s=n(5787),l=n(408),c=n(654),u=n(6340),p=n(9781),A=n(2423).fastKey,f=n(9909),d=f.set,h=f.getterFor;t.exports={getConstructor:function(t,e,n,c){var u=t((function(t,r){s(t,u,e),d(t,{type:e,index:o(null),first:void 0,last:void 0,size:0}),p||(t.size=0),null!=r&&l(r,t[c],t,n)})),f=h(e),m=function(t,e,n){var r,o,i=f(t),a=g(t,e);return a?a.value=n:(i.last=a={index:o=A(e,!0),key:e,value:n,previous:r=i.last,next:void 0,removed:!1},i.first||(i.first=a),r&&(r.next=a),p?i.size++:t.size++,"F"!==o&&(i.index[o]=a)),t},g=function(t,e){var n,r=f(t),o=A(e);if("F"!==o)return r.index[o];for(n=r.first;n;n=n.next)if(n.key==e)return n};return i(u.prototype,{clear:function(){for(var t=f(this),e=t.index,n=t.first;n;)n.removed=!0,n.previous&&(n.previous=n.previous.next=void 0),delete e[n.index],n=n.next;t.first=t.last=void 0,p?t.size=0:this.size=0},delete:function(t){var e=this,n=f(e),r=g(e,t);if(r){var o=r.next,i=r.previous;delete n.index[r.index],r.removed=!0,i&&(i.next=o),o&&(o.previous=i),n.first==r&&(n.first=o),n.last==r&&(n.last=i),p?n.size--:e.size--}return!!r},forEach:function(t){for(var e,n=f(this),r=a(t,arguments.length>1?arguments[1]:void 0,3);e=e?e.next:n.first;)for(r(e.value,e.key,this);e&&e.removed;)e=e.previous},has:function(t){return!!g(this,t)}}),i(u.prototype,n?{get:function(t){var e=g(this,t);return e&&e.value},set:function(t,e){return m(this,0===t?0:t,e)}}:{add:function(t){return m(this,t=0===t?0:t,t)}}),p&&r(u.prototype,"size",{get:function(){return f(this).size}}),u},setStrong:function(t,e,n){var r=e+" Iterator",o=h(e),i=h(r);c(t,e,(function(t,e){d(this,{type:r,target:t,state:o(t),kind:e,last:void 0})}),(function(){for(var t=i(this),e=t.kind,n=t.last;n&&n.removed;)n=n.previous;return t.target&&(t.last=n=n?n.next:t.state.first)?"keys"==e?{value:n.key,done:!1}:"values"==e?{value:n.value,done:!1}:{value:[n.key,n.value],done:!1}:(t.target=void 0,{value:void 0,done:!0})}),n?"entries":"values",!n,!0),u(e)}}},7710:(t,e,n)=>{"use strict";var r=n(2109),o=n(7854),i=n(4705),a=n(1320),s=n(2423),l=n(408),c=n(5787),u=n(111),p=n(7293),A=n(7072),f=n(8003),d=n(9587);t.exports=function(t,e,n){var h=-1!==t.indexOf("Map"),m=-1!==t.indexOf("Weak"),g=h?"set":"add",v=o[t],y=v&&v.prototype,b=v,C={},w=function(t){var e=y[t];a(y,t,"add"==t?function(t){return e.call(this,0===t?0:t),this}:"delete"==t?function(t){return!(m&&!u(t))&&e.call(this,0===t?0:t)}:"get"==t?function(t){return m&&!u(t)?void 0:e.call(this,0===t?0:t)}:"has"==t?function(t){return!(m&&!u(t))&&e.call(this,0===t?0:t)}:function(t,n){return e.call(this,0===t?0:t,n),this})};if(i(t,"function"!=typeof v||!(m||y.forEach&&!p((function(){(new v).entries().next()})))))b=n.getConstructor(e,t,h,g),s.REQUIRED=!0;else if(i(t,!0)){var x=new b,E=x[g](m?{}:-0,1)!=x,S=p((function(){x.has(1)})),T=A((function(t){new v(t)})),I=!m&&p((function(){for(var t=new v,e=5;e--;)t[g](e,e);return!t.has(-0)}));T||((b=e((function(e,n){c(e,b,t);var r=d(new v,e,b);return null!=n&&l(n,r[g],r,h),r}))).prototype=y,y.constructor=b),(S||I)&&(w("delete"),w("has"),h&&w("get")),(I||E)&&w(g),m&&y.clear&&delete y.clear}return C[t]=b,r({global:!0,forced:b!=v},C),f(b,t),m||n.setStrong(b,t,h),b}},9920:(t,e,n)=>{var r=n(6656),o=n(3887),i=n(1236),a=n(3070);t.exports=function(t,e){for(var n=o(e),s=a.f,l=i.f,c=0;c<n.length;c++){var u=n[c];r(t,u)||s(t,u,l(e,u))}}},8544:(t,e,n)=>{var r=n(7293);t.exports=!r((function(){function t(){}return t.prototype.constructor=null,Object.getPrototypeOf(new t)!==t.prototype}))},4994:(t,e,n)=>{"use strict";var r=n(3383).IteratorPrototype,o=n(30),i=n(9114),a=n(8003),s=n(7497),l=function(){return this};t.exports=function(t,e,n){var c=e+" Iterator";return t.prototype=o(r,{next:i(1,n)}),a(t,c,!1,!0),s[c]=l,t}},8880:(t,e,n)=>{var r=n(9781),o=n(3070),i=n(9114);t.exports=r?function(t,e,n){return o.f(t,e,i(1,n))}:function(t,e,n){return t[e]=n,t}},9114:t=>{t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},6135:(t,e,n)=>{"use strict";var r=n(7593),o=n(3070),i=n(9114);t.exports=function(t,e,n){var a=r(e);a in t?o.f(t,a,i(0,n)):t[a]=n}},654:(t,e,n)=>{"use strict";var r=n(2109),o=n(4994),i=n(9518),a=n(7674),s=n(8003),l=n(8880),c=n(1320),u=n(5112),p=n(1913),A=n(7497),f=n(3383),d=f.IteratorPrototype,h=f.BUGGY_SAFARI_ITERATORS,m=u("iterator"),g="keys",v="values",y="entries",b=function(){return this};t.exports=function(t,e,n,u,f,C,w){o(n,e,u);var x,E,S,T=function(t){if(t===f&&O)return O;if(!h&&t in k)return k[t];switch(t){case g:case v:case y:return function(){return new n(this,t)}}return function(){return new n(this)}},I=e+" Iterator",B=!1,k=t.prototype,_=k[m]||k["@@iterator"]||f&&k[f],O=!h&&_||T(f),N="Array"==e&&k.entries||_;if(N&&(x=i(N.call(new t)),d!==Object.prototype&&x.next&&(p||i(x)===d||(a?a(x,d):"function"!=typeof x[m]&&l(x,m,b)),s(x,I,!0,!0),p&&(A[I]=b))),f==v&&_&&_.name!==v&&(B=!0,O=function(){return _.call(this)}),p&&!w||k[m]===O||l(k,m,O),A[e]=O,f)if(E={values:T(v),keys:C?O:T(g),entries:T(y)},w)for(S in E)(h||B||!(S in k))&&c(k,S,E[S]);else r({target:e,proto:!0,forced:h||B},E);return E}},7235:(t,e,n)=>{var r=n(857),o=n(6656),i=n(6061),a=n(3070).f;t.exports=function(t){var e=r.Symbol||(r.Symbol={});o(e,t)||a(e,t,{value:i.f(t)})}},9781:(t,e,n)=>{var r=n(7293);t.exports=!r((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]}))},317:(t,e,n)=>{var r=n(7854),o=n(111),i=r.document,a=o(i)&&o(i.createElement);t.exports=function(t){return a?i.createElement(t):{}}},8324:t=>{t.exports={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0}},8113:(t,e,n)=>{var r=n(5005);t.exports=r("navigator","userAgent")||""},7392:(t,e,n)=>{var r,o,i=n(7854),a=n(8113),s=i.process,l=s&&s.versions,c=l&&l.v8;c?o=(r=c.split("."))[0]+r[1]:a&&(!(r=a.match(/Edge\/(\d+)/))||r[1]>=74)&&(r=a.match(/Chrome\/(\d+)/))&&(o=r[1]),t.exports=o&&+o},748:t=>{t.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},2109:(t,e,n)=>{var r=n(7854),o=n(1236).f,i=n(8880),a=n(1320),s=n(3505),l=n(9920),c=n(4705);t.exports=function(t,e){var n,u,p,A,f,d=t.target,h=t.global,m=t.stat;if(n=h?r:m?r[d]||s(d,{}):(r[d]||{}).prototype)for(u in e){if(A=e[u],p=t.noTargetGet?(f=o(n,u))&&f.value:n[u],!c(h?u:d+(m?".":"#")+u,t.forced)&&void 0!==p){if(typeof A==typeof p)continue;l(A,p)}(t.sham||p&&p.sham)&&i(A,"sham",!0),a(n,u,A,t)}}},7293:t=>{t.exports=function(t){try{return!!t()}catch(t){return!0}}},7007:(t,e,n)=>{"use strict";n(4916);var r=n(1320),o=n(7293),i=n(5112),a=n(2261),s=n(8880),l=i("species"),c=!o((function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:"7"},t},"7"!=="".replace(t,"$<a>")})),u="$0"==="a".replace(/./,"$0"),p=i("replace"),A=!!/./[p]&&""===/./[p]("a","$0"),f=!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]}));t.exports=function(t,e,n,p){var d=i(t),h=!o((function(){var e={};return e[d]=function(){return 7},7!=""[t](e)})),m=h&&!o((function(){var e=!1,n=/a/;return"split"===t&&((n={}).constructor={},n.constructor[l]=function(){return n},n.flags="",n[d]=/./[d]),n.exec=function(){return e=!0,null},n[d](""),!e}));if(!h||!m||"replace"===t&&(!c||!u||A)||"split"===t&&!f){var g=/./[d],v=n(d,""[t],(function(t,e,n,r,o){return e.exec===a?h&&!o?{done:!0,value:g.call(e,n,r)}:{done:!0,value:t.call(n,e,r)}:{done:!1}}),{REPLACE_KEEPS_$0:u,REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE:A}),y=v[0],b=v[1];r(String.prototype,t,y),r(RegExp.prototype,d,2==e?function(t,e){return b.call(t,this,e)}:function(t){return b.call(t,this)})}p&&s(RegExp.prototype[d],"sham",!0)}},6677:(t,e,n)=>{var r=n(7293);t.exports=!r((function(){return Object.isExtensible(Object.preventExtensions({}))}))},9974:(t,e,n)=>{var r=n(3099);t.exports=function(t,e,n){if(r(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)}}},5005:(t,e,n)=>{var r=n(857),o=n(7854),i=function(t){return"function"==typeof t?t:void 0};t.exports=function(t,e){return arguments.length<2?i(r[t])||i(o[t]):r[t]&&r[t][e]||o[t]&&o[t][e]}},1246:(t,e,n)=>{var r=n(648),o=n(7497),i=n(5112)("iterator");t.exports=function(t){if(null!=t)return t[i]||t["@@iterator"]||o[r(t)]}},8554:(t,e,n)=>{var r=n(9670),o=n(1246);t.exports=function(t){var e=o(t);if("function"!=typeof e)throw TypeError(String(t)+" is not iterable");return r(e.call(t))}},7854:(t,e,n)=>{var r=function(t){return t&&t.Math==Math&&t};t.exports=r("object"==typeof globalThis&&globalThis)||r("object"==typeof window&&window)||r("object"==typeof self&&self)||r("object"==typeof n.g&&n.g)||Function("return this")()},6656:t=>{var e={}.hasOwnProperty;t.exports=function(t,n){return e.call(t,n)}},3501:t=>{t.exports={}},490:(t,e,n)=>{var r=n(5005);t.exports=r("document","documentElement")},4664:(t,e,n)=>{var r=n(9781),o=n(7293),i=n(317);t.exports=!r&&!o((function(){return 7!=Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},8361:(t,e,n)=>{var r=n(7293),o=n(4326),i="".split;t.exports=r((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==o(t)?i.call(t,""):Object(t)}:Object},9587:(t,e,n)=>{var r=n(111),o=n(7674);t.exports=function(t,e,n){var i,a;return o&&"function"==typeof(i=e.constructor)&&i!==n&&r(a=i.prototype)&&a!==n.prototype&&o(t,a),t}},2788:(t,e,n)=>{var r=n(5465),o=Function.toString;"function"!=typeof r.inspectSource&&(r.inspectSource=function(t){return o.call(t)}),t.exports=r.inspectSource},2423:(t,e,n)=>{var r=n(3501),o=n(111),i=n(6656),a=n(3070).f,s=n(9711),l=n(6677),c=s("meta"),u=0,p=Object.isExtensible||function(){return!0},A=function(t){a(t,c,{value:{objectID:"O"+ ++u,weakData:{}}})},f=t.exports={REQUIRED:!1,fastKey:function(t,e){if(!o(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!i(t,c)){if(!p(t))return"F";if(!e)return"E";A(t)}return t[c].objectID},getWeakData:function(t,e){if(!i(t,c)){if(!p(t))return!0;if(!e)return!1;A(t)}return t[c].weakData},onFreeze:function(t){return l&&f.REQUIRED&&p(t)&&!i(t,c)&&A(t),t}};r[c]=!0},9909:(t,e,n)=>{var r,o,i,a=n(8536),s=n(7854),l=n(111),c=n(8880),u=n(6656),p=n(6200),A=n(3501),f=s.WeakMap;if(a){var d=new f,h=d.get,m=d.has,g=d.set;r=function(t,e){return g.call(d,t,e),e},o=function(t){return h.call(d,t)||{}},i=function(t){return m.call(d,t)}}else{var v=p("state");A[v]=!0,r=function(t,e){return c(t,v,e),e},o=function(t){return u(t,v)?t[v]:{}},i=function(t){return u(t,v)}}t.exports={set:r,get:o,has:i,enforce:function(t){return i(t)?o(t):r(t,{})},getterFor:function(t){return function(e){var n;if(!l(e)||(n=o(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return n}}}},7659:(t,e,n)=>{var r=n(5112),o=n(7497),i=r("iterator"),a=Array.prototype;t.exports=function(t){return void 0!==t&&(o.Array===t||a[i]===t)}},3157:(t,e,n)=>{var r=n(4326);t.exports=Array.isArray||function(t){return"Array"==r(t)}},4705:(t,e,n)=>{var r=n(7293),o=/#|\.prototype\./,i=function(t,e){var n=s[a(t)];return n==c||n!=l&&("function"==typeof e?r(e):!!e)},a=i.normalize=function(t){return String(t).replace(o,".").toLowerCase()},s=i.data={},l=i.NATIVE="N",c=i.POLYFILL="P";t.exports=i},111:t=>{t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},1913:t=>{t.exports=!1},408:(t,e,n)=>{var r=n(9670),o=n(7659),i=n(7466),a=n(9974),s=n(1246),l=n(3411),c=function(t,e){this.stopped=t,this.result=e};(t.exports=function(t,e,n,u,p){var A,f,d,h,m,g,v,y=a(e,n,u?2:1);if(p)A=t;else{if("function"!=typeof(f=s(t)))throw TypeError("Target is not iterable");if(o(f)){for(d=0,h=i(t.length);h>d;d++)if((m=u?y(r(v=t[d])[0],v[1]):y(t[d]))&&m instanceof c)return m;return new c(!1)}A=f.call(t)}for(g=A.next;!(v=g.call(A)).done;)if("object"==typeof(m=l(A,y,v.value,u))&&m&&m instanceof c)return m;return new c(!1)}).stop=function(t){return new c(!0,t)}},3383:(t,e,n)=>{"use strict";var r,o,i,a=n(9518),s=n(8880),l=n(6656),c=n(5112),u=n(1913),p=c("iterator"),A=!1;[].keys&&("next"in(i=[].keys())?(o=a(a(i)))!==Object.prototype&&(r=o):A=!0),null==r&&(r={}),u||l(r,p)||s(r,p,(function(){return this})),t.exports={IteratorPrototype:r,BUGGY_SAFARI_ITERATORS:A}},7497:t=>{t.exports={}},133:(t,e,n)=>{var r=n(7293);t.exports=!!Object.getOwnPropertySymbols&&!r((function(){return!String(Symbol())}))},590:(t,e,n)=>{var r=n(7293),o=n(5112),i=n(1913),a=o("iterator");t.exports=!r((function(){var t=new URL("b?a=1&b=2&c=3","http://a"),e=t.searchParams,n="";return t.pathname="c%20d",e.forEach((function(t,r){e.delete("b"),n+=r+t})),i&&!t.toJSON||!e.sort||"http://a/c%20d?a=1&c=3"!==t.href||"3"!==e.get("c")||"a=1"!==String(new URLSearchParams("?a=1"))||!e[a]||"a"!==new URL("https://a@b").username||"b"!==new URLSearchParams(new URLSearchParams("a=b")).get("a")||"xn--e1aybc"!==new URL("http://тест").host||"#%D0%B1"!==new URL("http://a#б").hash||"a1c3"!==n||"x"!==new URL("http://x",void 0).host}))},8536:(t,e,n)=>{var r=n(7854),o=n(2788),i=r.WeakMap;t.exports="function"==typeof i&&/native code/.test(o(i))},1574:(t,e,n)=>{"use strict";var r=n(9781),o=n(7293),i=n(1956),a=n(5181),s=n(5296),l=n(7908),c=n(8361),u=Object.assign,p=Object.defineProperty;t.exports=!u||o((function(){if(r&&1!==u({b:1},u(p({},"a",{enumerable:!0,get:function(){p(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var t={},e={},n=Symbol(),o="abcdefghijklmnopqrst";return t[n]=7,o.split("").forEach((function(t){e[t]=t})),7!=u({},t)[n]||i(u({},e)).join("")!=o}))?function(t,e){for(var n=l(t),o=arguments.length,u=1,p=a.f,A=s.f;o>u;)for(var f,d=c(arguments[u++]),h=p?i(d).concat(p(d)):i(d),m=h.length,g=0;m>g;)f=h[g++],r&&!A.call(d,f)||(n[f]=d[f]);return n}:u},30:(t,e,n)=>{var r,o=n(9670),i=n(6048),a=n(748),s=n(3501),l=n(490),c=n(317),u=n(6200),p=u("IE_PROTO"),A=function(){},f=function(t){return"<script>"+t+"</"+"script>"},d=function(){try{r=document.domain&&new ActiveXObject("htmlfile")}catch(t){}var t,e;d=r?function(t){t.write(f("")),t.close();var e=t.parentWindow.Object;return t=null,e}(r):((e=c("iframe")).style.display="none",l.appendChild(e),e.src=String("javascript:"),(t=e.contentWindow.document).open(),t.write(f("document.F=Object")),t.close(),t.F);for(var n=a.length;n--;)delete d.prototype[a[n]];return d()};s[p]=!0,t.exports=Object.create||function(t,e){var n;return null!==t?(A.prototype=o(t),n=new A,A.prototype=null,n[p]=t):n=d(),void 0===e?n:i(n,e)}},6048:(t,e,n)=>{var r=n(9781),o=n(3070),i=n(9670),a=n(1956);t.exports=r?Object.defineProperties:function(t,e){i(t);for(var n,r=a(e),s=r.length,l=0;s>l;)o.f(t,n=r[l++],e[n]);return t}},3070:(t,e,n)=>{var r=n(9781),o=n(4664),i=n(9670),a=n(7593),s=Object.defineProperty;e.f=r?s:function(t,e,n){if(i(t),e=a(e,!0),i(n),o)try{return s(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}},1236:(t,e,n)=>{var r=n(9781),o=n(5296),i=n(9114),a=n(5656),s=n(7593),l=n(6656),c=n(4664),u=Object.getOwnPropertyDescriptor;e.f=r?u:function(t,e){if(t=a(t),e=s(e,!0),c)try{return u(t,e)}catch(t){}if(l(t,e))return i(!o.f.call(t,e),t[e])}},1156:(t,e,n)=>{var r=n(5656),o=n(8006).f,i={}.toString,a="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];t.exports.f=function(t){return a&&"[object Window]"==i.call(t)?function(t){try{return o(t)}catch(t){return a.slice()}}(t):o(r(t))}},8006:(t,e,n)=>{var r=n(6324),o=n(748).concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return r(t,o)}},5181:(t,e)=>{e.f=Object.getOwnPropertySymbols},9518:(t,e,n)=>{var r=n(6656),o=n(7908),i=n(6200),a=n(8544),s=i("IE_PROTO"),l=Object.prototype;t.exports=a?Object.getPrototypeOf:function(t){return t=o(t),r(t,s)?t[s]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?l:null}},6324:(t,e,n)=>{var r=n(6656),o=n(5656),i=n(1318).indexOf,a=n(3501);t.exports=function(t,e){var n,s=o(t),l=0,c=[];for(n in s)!r(a,n)&&r(s,n)&&c.push(n);for(;e.length>l;)r(s,n=e[l++])&&(~i(c,n)||c.push(n));return c}},1956:(t,e,n)=>{var r=n(6324),o=n(748);t.exports=Object.keys||function(t){return r(t,o)}},5296:(t,e)=>{"use strict";var n={}.propertyIsEnumerable,r=Object.getOwnPropertyDescriptor,o=r&&!n.call({1:2},1);e.f=o?function(t){var e=r(this,t);return!!e&&e.enumerable}:n},7674:(t,e,n)=>{var r=n(9670),o=n(6077);t.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var t,e=!1,n={};try{(t=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set).call(n,[]),e=n instanceof Array}catch(t){}return function(n,i){return r(n),o(i),e?t.call(n,i):n.__proto__=i,n}}():void 0)},288:(t,e,n)=>{"use strict";var r=n(1694),o=n(648);t.exports=r?{}.toString:function(){return"[object "+o(this)+"]"}},3887:(t,e,n)=>{var r=n(5005),o=n(8006),i=n(5181),a=n(9670);t.exports=r("Reflect","ownKeys")||function(t){var e=o.f(a(t)),n=i.f;return n?e.concat(n(t)):e}},857:(t,e,n)=>{var r=n(7854);t.exports=r},2248:(t,e,n)=>{var r=n(1320);t.exports=function(t,e,n){for(var o in e)r(t,o,e[o],n);return t}},1320:(t,e,n)=>{var r=n(7854),o=n(8880),i=n(6656),a=n(3505),s=n(2788),l=n(9909),c=l.get,u=l.enforce,p=String(String).split("String");(t.exports=function(t,e,n,s){var l=!!s&&!!s.unsafe,c=!!s&&!!s.enumerable,A=!!s&&!!s.noTargetGet;"function"==typeof n&&("string"!=typeof e||i(n,"name")||o(n,"name",e),u(n).source=p.join("string"==typeof e?e:"")),t!==r?(l?!A&&t[e]&&(c=!0):delete t[e],c?t[e]=n:o(t,e,n)):c?t[e]=n:a(e,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&c(this).source||s(this)}))},7651:(t,e,n)=>{var r=n(4326),o=n(2261);t.exports=function(t,e){var n=t.exec;if("function"==typeof n){var i=n.call(t,e);if("object"!=typeof i)throw TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==r(t))throw TypeError("RegExp#exec called on incompatible receiver");return o.call(t,e)}},2261:(t,e,n)=>{"use strict";var r,o,i=n(7066),a=n(2999),s=RegExp.prototype.exec,l=String.prototype.replace,c=s,u=(r=/a/,o=/b*/g,s.call(r,"a"),s.call(o,"a"),0!==r.lastIndex||0!==o.lastIndex),p=a.UNSUPPORTED_Y||a.BROKEN_CARET,A=void 0!==/()??/.exec("")[1];(u||A||p)&&(c=function(t){var e,n,r,o,a=this,c=p&&a.sticky,f=i.call(a),d=a.source,h=0,m=t;return c&&(-1===(f=f.replace("y","")).indexOf("g")&&(f+="g"),m=String(t).slice(a.lastIndex),a.lastIndex>0&&(!a.multiline||a.multiline&&"\n"!==t[a.lastIndex-1])&&(d="(?: "+d+")",m=" "+m,h++),n=new RegExp("^(?:"+d+")",f)),A&&(n=new RegExp("^"+d+"$(?!\\s)",f)),u&&(e=a.lastIndex),r=s.call(c?n:a,m),c?r?(r.input=r.input.slice(h),r[0]=r[0].slice(h),r.index=a.lastIndex,a.lastIndex+=r[0].length):a.lastIndex=0:u&&r&&(a.lastIndex=a.global?r.index+r[0].length:e),A&&r&&r.length>1&&l.call(r[0],n,(function(){for(o=1;o<arguments.length-2;o++)void 0===arguments[o]&&(r[o]=void 0)})),r}),t.exports=c},7066:(t,e,n)=>{"use strict";var r=n(9670);t.exports=function(){var t=r(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}},2999:(t,e,n)=>{"use strict";var r=n(7293);function o(t,e){return RegExp(t,e)}e.UNSUPPORTED_Y=r((function(){var t=o("a","y");return t.lastIndex=2,null!=t.exec("abcd")})),e.BROKEN_CARET=r((function(){var t=o("^r","gy");return t.lastIndex=2,null!=t.exec("str")}))},4488:t=>{t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},3505:(t,e,n)=>{var r=n(7854),o=n(8880);t.exports=function(t,e){try{o(r,t,e)}catch(n){r[t]=e}return e}},6340:(t,e,n)=>{"use strict";var r=n(5005),o=n(3070),i=n(5112),a=n(9781),s=i("species");t.exports=function(t){var e=r(t),n=o.f;a&&e&&!e[s]&&n(e,s,{configurable:!0,get:function(){return this}})}},8003:(t,e,n)=>{var r=n(3070).f,o=n(6656),i=n(5112)("toStringTag");t.exports=function(t,e,n){t&&!o(t=n?t:t.prototype,i)&&r(t,i,{configurable:!0,value:e})}},6200:(t,e,n)=>{var r=n(2309),o=n(9711),i=r("keys");t.exports=function(t){return i[t]||(i[t]=o(t))}},5465:(t,e,n)=>{var r=n(7854),o=n(3505),i="__core-js_shared__",a=r[i]||o(i,{});t.exports=a},2309:(t,e,n)=>{var r=n(1913),o=n(5465);(t.exports=function(t,e){return o[t]||(o[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.6.5",mode:r?"pure":"global",copyright:"© 2020 Denis Pushkarev (zloirock.ru)"})},8710:(t,e,n)=>{var r=n(9958),o=n(4488),i=function(t){return function(e,n){var i,a,s=String(o(e)),l=r(n),c=s.length;return l<0||l>=c?t?"":void 0:(i=s.charCodeAt(l))<55296||i>56319||l+1===c||(a=s.charCodeAt(l+1))<56320||a>57343?t?s.charAt(l):i:t?s.slice(l,l+2):a-56320+(i-55296<<10)+65536}};t.exports={codeAt:i(!1),charAt:i(!0)}},3197:t=>{"use strict";var e=2147483647,n=/[^\0-\u007E]/,r=/[.\u3002\uFF0E\uFF61]/g,o="Overflow: input needs wider integers to process",i=Math.floor,a=String.fromCharCode,s=function(t){return t+22+75*(t<26)},l=function(t,e,n){var r=0;for(t=n?i(t/700):t>>1,t+=i(t/e);t>455;r+=36)t=i(t/35);return i(r+36*t/(t+38))},c=function(t){var n=[];t=function(t){for(var e=[],n=0,r=t.length;n<r;){var o=t.charCodeAt(n++);if(o>=55296&&o<=56319&&n<r){var i=t.charCodeAt(n++);56320==(64512&i)?e.push(((1023&o)<<10)+(1023&i)+65536):(e.push(o),n--)}else e.push(o)}return e}(t);var r,c,u=t.length,p=128,A=0,f=72;for(r=0;r<t.length;r++)(c=t[r])<128&&n.push(a(c));var d=n.length,h=d;for(d&&n.push("-");h<u;){var m=e;for(r=0;r<t.length;r++)(c=t[r])>=p&&c<m&&(m=c);var g=h+1;if(m-p>i((e-A)/g))throw RangeError(o);for(A+=(m-p)*g,p=m,r=0;r<t.length;r++){if((c=t[r])<p&&++A>e)throw RangeError(o);if(c==p){for(var v=A,y=36;;y+=36){var b=y<=f?1:y>=f+26?26:y-f;if(v<b)break;var C=v-b,w=36-b;n.push(a(s(b+C%w))),v=i(C/w)}n.push(a(s(v))),f=l(A,g,h==d),A=0,++h}}++A,++p}return n.join("")};t.exports=function(t){var e,o,i=[],a=t.toLowerCase().replace(r,".").split(".");for(e=0;e<a.length;e++)o=a[e],i.push(n.test(o)?"xn--"+c(o):o);return i.join(".")}},6091:(t,e,n)=>{var r=n(7293),o=n(1361);t.exports=function(t){return r((function(){return!!o[t]()||"​…᠎"!="​…᠎"[t]()||o[t].name!==t}))}},3111:(t,e,n)=>{var r=n(4488),o="["+n(1361)+"]",i=RegExp("^"+o+o+"*"),a=RegExp(o+o+"*$"),s=function(t){return function(e){var n=String(r(e));return 1&t&&(n=n.replace(i,"")),2&t&&(n=n.replace(a,"")),n}};t.exports={start:s(1),end:s(2),trim:s(3)}},1400:(t,e,n)=>{var r=n(9958),o=Math.max,i=Math.min;t.exports=function(t,e){var n=r(t);return n<0?o(n+e,0):i(n,e)}},5656:(t,e,n)=>{var r=n(8361),o=n(4488);t.exports=function(t){return r(o(t))}},9958:t=>{var e=Math.ceil,n=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?n:e)(t)}},7466:(t,e,n)=>{var r=n(9958),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},7908:(t,e,n)=>{var r=n(4488);t.exports=function(t){return Object(r(t))}},7593:(t,e,n)=>{var r=n(111);t.exports=function(t,e){if(!r(t))return t;var n,o;if(e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;if("function"==typeof(n=t.valueOf)&&!r(o=n.call(t)))return o;if(!e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;throw TypeError("Can't convert object to primitive value")}},1694:(t,e,n)=>{var r={};r[n(5112)("toStringTag")]="z",t.exports="[object z]"===String(r)},9711:t=>{var e=0,n=Math.random();t.exports=function(t){return"Symbol("+String(void 0===t?"":t)+")_"+(++e+n).toString(36)}},3307:(t,e,n)=>{var r=n(133);t.exports=r&&!Symbol.sham&&"symbol"==typeof Symbol.iterator},6061:(t,e,n)=>{var r=n(5112);e.f=r},5112:(t,e,n)=>{var r=n(7854),o=n(2309),i=n(6656),a=n(9711),s=n(133),l=n(3307),c=o("wks"),u=r.Symbol,p=l?u:u&&u.withoutSetter||a;t.exports=function(t){return i(c,t)||(s&&i(u,t)?c[t]=u[t]:c[t]=p("Symbol."+t)),c[t]}},1361:t=>{t.exports="\t\n\v\f\r                 \u2028\u2029\ufeff"},2222:(t,e,n)=>{"use strict";var r=n(2109),o=n(7293),i=n(3157),a=n(111),s=n(7908),l=n(7466),c=n(6135),u=n(5417),p=n(1194),A=n(5112),f=n(7392),d=A("isConcatSpreadable"),h=9007199254740991,m="Maximum allowed index exceeded",g=f>=51||!o((function(){var t=[];return t[d]=!1,t.concat()[0]!==t})),v=p("concat"),y=function(t){if(!a(t))return!1;var e=t[d];return void 0!==e?!!e:i(t)};r({target:"Array",proto:!0,forced:!g||!v},{concat:function(t){var e,n,r,o,i,a=s(this),p=u(a,0),A=0;for(e=-1,r=arguments.length;e<r;e++)if(y(i=-1===e?a:arguments[e])){if(A+(o=l(i.length))>h)throw TypeError(m);for(n=0;n<o;n++,A++)n in i&&c(p,A,i[n])}else{if(A>=h)throw TypeError(m);c(p,A++,i)}return p.length=A,p}})},7327:(t,e,n)=>{"use strict";var r=n(2109),o=n(2092).filter,i=n(1194),a=n(9207),s=i("filter"),l=a("filter");r({target:"Array",proto:!0,forced:!s||!l},{filter:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},9554:(t,e,n)=>{"use strict";var r=n(2109),o=n(8533);r({target:"Array",proto:!0,forced:[].forEach!=o},{forEach:o})},1038:(t,e,n)=>{var r=n(2109),o=n(8457);r({target:"Array",stat:!0,forced:!n(7072)((function(t){Array.from(t)}))},{from:o})},2772:(t,e,n)=>{"use strict";var r=n(2109),o=n(1318).indexOf,i=n(9341),a=n(9207),s=[].indexOf,l=!!s&&1/[1].indexOf(1,-0)<0,c=i("indexOf"),u=a("indexOf",{ACCESSORS:!0,1:0});r({target:"Array",proto:!0,forced:l||!c||!u},{indexOf:function(t){return l?s.apply(this,arguments)||0:o(this,t,arguments.length>1?arguments[1]:void 0)}})},6992:(t,e,n)=>{"use strict";var r=n(5656),o=n(1223),i=n(7497),a=n(9909),s=n(654),l="Array Iterator",c=a.set,u=a.getterFor(l);t.exports=s(Array,"Array",(function(t,e){c(this,{type:l,target:r(t),index:0,kind:e})}),(function(){var t=u(this),e=t.target,n=t.kind,r=t.index++;return!e||r>=e.length?(t.target=void 0,{value:void 0,done:!0}):"keys"==n?{value:r,done:!1}:"values"==n?{value:e[r],done:!1}:{value:[r,e[r]],done:!1}}),"values"),i.Arguments=i.Array,o("keys"),o("values"),o("entries")},7042:(t,e,n)=>{"use strict";var r=n(2109),o=n(111),i=n(3157),a=n(1400),s=n(7466),l=n(5656),c=n(6135),u=n(5112),p=n(1194),A=n(9207),f=p("slice"),d=A("slice",{ACCESSORS:!0,0:0,1:2}),h=u("species"),m=[].slice,g=Math.max;r({target:"Array",proto:!0,forced:!f||!d},{slice:function(t,e){var n,r,u,p=l(this),A=s(p.length),f=a(t,A),d=a(void 0===e?A:e,A);if(i(p)&&("function"!=typeof(n=p.constructor)||n!==Array&&!i(n.prototype)?o(n)&&null===(n=n[h])&&(n=void 0):n=void 0,n===Array||void 0===n))return m.call(p,f,d);for(r=new(void 0===n?Array:n)(g(d-f,0)),u=0;f<d;f++,u++)f in p&&c(r,u,p[f]);return r.length=u,r}})},561:(t,e,n)=>{"use strict";var r=n(2109),o=n(1400),i=n(9958),a=n(7466),s=n(7908),l=n(5417),c=n(6135),u=n(1194),p=n(9207),A=u("splice"),f=p("splice",{ACCESSORS:!0,0:0,1:2}),d=Math.max,h=Math.min,m=9007199254740991,g="Maximum allowed length exceeded";r({target:"Array",proto:!0,forced:!A||!f},{splice:function(t,e){var n,r,u,p,A,f,v=s(this),y=a(v.length),b=o(t,y),C=arguments.length;if(0===C?n=r=0:1===C?(n=0,r=y-b):(n=C-2,r=h(d(i(e),0),y-b)),y+n-r>m)throw TypeError(g);for(u=l(v,r),p=0;p<r;p++)(A=b+p)in v&&c(u,p,v[A]);if(u.length=r,n<r){for(p=b;p<y-r;p++)f=p+n,(A=p+r)in v?v[f]=v[A]:delete v[f];for(p=y;p>y-r+n;p--)delete v[p-1]}else if(n>r)for(p=y-r;p>b;p--)f=p+n-1,(A=p+r-1)in v?v[f]=v[A]:delete v[f];for(p=0;p<n;p++)v[p+b]=arguments[p+2];return v.length=y-r+n,u}})},8309:(t,e,n)=>{var r=n(9781),o=n(3070).f,i=Function.prototype,a=i.toString,s=/^\s*function ([^ (]*)/,l="name";r&&!(l in i)&&o(i,l,{configurable:!0,get:function(){try{return a.call(this).match(s)[1]}catch(t){return""}}})},1532:(t,e,n)=>{"use strict";var r=n(7710),o=n(5631);t.exports=r("Map",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),o)},9653:(t,e,n)=>{"use strict";var r=n(9781),o=n(7854),i=n(4705),a=n(1320),s=n(6656),l=n(4326),c=n(9587),u=n(7593),p=n(7293),A=n(30),f=n(8006).f,d=n(1236).f,h=n(3070).f,m=n(3111).trim,g="Number",v=o.Number,y=v.prototype,b=l(A(y))==g,C=function(t){var e,n,r,o,i,a,s,l,c=u(t,!1);if("string"==typeof c&&c.length>2)if(43===(e=(c=m(c)).charCodeAt(0))||45===e){if(88===(n=c.charCodeAt(2))||120===n)return NaN}else if(48===e){switch(c.charCodeAt(1)){case 66:case 98:r=2,o=49;break;case 79:case 111:r=8,o=55;break;default:return+c}for(a=(i=c.slice(2)).length,s=0;s<a;s++)if((l=i.charCodeAt(s))<48||l>o)return NaN;return parseInt(i,r)}return+c};if(i(g,!v(" 0o1")||!v("0b1")||v("+0x1"))){for(var w,x=function(t){var e=arguments.length<1?0:t,n=this;return n instanceof x&&(b?p((function(){y.valueOf.call(n)})):l(n)!=g)?c(new v(C(e)),n,x):C(e)},E=r?f(v):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger".split(","),S=0;E.length>S;S++)s(v,w=E[S])&&!s(x,w)&&h(x,w,d(v,w));x.prototype=y,y.constructor=x,a(o,g,x)}},9601:(t,e,n)=>{var r=n(2109),o=n(1574);r({target:"Object",stat:!0,forced:Object.assign!==o},{assign:o})},5003:(t,e,n)=>{var r=n(2109),o=n(7293),i=n(5656),a=n(1236).f,s=n(9781),l=o((function(){a(1)}));r({target:"Object",stat:!0,forced:!s||l,sham:!s},{getOwnPropertyDescriptor:function(t,e){return a(i(t),e)}})},9337:(t,e,n)=>{var r=n(2109),o=n(9781),i=n(3887),a=n(5656),s=n(1236),l=n(6135);r({target:"Object",stat:!0,sham:!o},{getOwnPropertyDescriptors:function(t){for(var e,n,r=a(t),o=s.f,c=i(r),u={},p=0;c.length>p;)void 0!==(n=o(r,e=c[p++]))&&l(u,e,n);return u}})},7941:(t,e,n)=>{var r=n(2109),o=n(7908),i=n(1956);r({target:"Object",stat:!0,forced:n(7293)((function(){i(1)}))},{keys:function(t){return i(o(t))}})},1539:(t,e,n)=>{var r=n(1694),o=n(1320),i=n(288);r||o(Object.prototype,"toString",i,{unsafe:!0})},4916:(t,e,n)=>{"use strict";var r=n(2109),o=n(2261);r({target:"RegExp",proto:!0,forced:/./.exec!==o},{exec:o})},9714:(t,e,n)=>{"use strict";var r=n(1320),o=n(9670),i=n(7293),a=n(7066),s="toString",l=RegExp.prototype,c=l.toString,u=i((function(){return"/a/b"!=c.call({source:"a",flags:"b"})})),p=c.name!=s;(u||p)&&r(RegExp.prototype,s,(function(){var t=o(this),e=String(t.source),n=t.flags;return"/"+e+"/"+String(void 0===n&&t instanceof RegExp&&!("flags"in l)?a.call(t):n)}),{unsafe:!0})},8783:(t,e,n)=>{"use strict";var r=n(8710).charAt,o=n(9909),i=n(654),a="String Iterator",s=o.set,l=o.getterFor(a);i(String,"String",(function(t){s(this,{type:a,string:String(t),index:0})}),(function(){var t,e=l(this),n=e.string,o=e.index;return o>=n.length?{value:void 0,done:!0}:(t=r(n,o),e.index+=t.length,{value:t,done:!1})}))},5306:(t,e,n)=>{"use strict";var r=n(7007),o=n(9670),i=n(7908),a=n(7466),s=n(9958),l=n(4488),c=n(1530),u=n(7651),p=Math.max,A=Math.min,f=Math.floor,d=/\$([$&'`]|\d\d?|<[^>]*>)/g,h=/\$([$&'`]|\d\d?)/g;r("replace",2,(function(t,e,n,r){var m=r.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE,g=r.REPLACE_KEEPS_$0,v=m?"$":"$0";return[function(n,r){var o=l(this),i=null==n?void 0:n[t];return void 0!==i?i.call(n,o,r):e.call(String(o),n,r)},function(t,r){if(!m&&g||"string"==typeof r&&-1===r.indexOf(v)){var i=n(e,t,this,r);if(i.done)return i.value}var l=o(t),f=String(this),d="function"==typeof r;d||(r=String(r));var h=l.global;if(h){var b=l.unicode;l.lastIndex=0}for(var C=[];;){var w=u(l,f);if(null===w)break;if(C.push(w),!h)break;""===String(w[0])&&(l.lastIndex=c(f,a(l.lastIndex),b))}for(var x,E="",S=0,T=0;T<C.length;T++){w=C[T];for(var I=String(w[0]),B=p(A(s(w.index),f.length),0),k=[],_=1;_<w.length;_++)k.push(void 0===(x=w[_])?x:String(x));var O=w.groups;if(d){var N=[I].concat(k,B,f);void 0!==O&&N.push(O);var M=String(r.apply(void 0,N))}else M=y(I,f,B,k,O,r);B>=S&&(E+=f.slice(S,B)+M,S=B+I.length)}return E+f.slice(S)}];function y(t,n,r,o,a,s){var l=r+t.length,c=o.length,u=h;return void 0!==a&&(a=i(a),u=d),e.call(s,u,(function(e,i){var s;switch(i.charAt(0)){case"$":return"$";case"&":return t;case"`":return n.slice(0,r);case"'":return n.slice(l);case"<":s=a[i.slice(1,-1)];break;default:var u=+i;if(0===u)return e;if(u>c){var p=f(u/10);return 0===p?e:p<=c?void 0===o[p-1]?i.charAt(1):o[p-1]+i.charAt(1):e}s=o[u-1]}return void 0===s?"":s}))}}))},3210:(t,e,n)=>{"use strict";var r=n(2109),o=n(3111).trim;r({target:"String",proto:!0,forced:n(6091)("trim")},{trim:function(){return o(this)}})},1817:(t,e,n)=>{"use strict";var r=n(2109),o=n(9781),i=n(7854),a=n(6656),s=n(111),l=n(3070).f,c=n(9920),u=i.Symbol;if(o&&"function"==typeof u&&(!("description"in u.prototype)||void 0!==u().description)){var p={},A=function(){var t=arguments.length<1||void 0===arguments[0]?void 0:String(arguments[0]),e=this instanceof A?new u(t):void 0===t?u():u(t);return""===t&&(p[e]=!0),e};c(A,u);var f=A.prototype=u.prototype;f.constructor=A;var d=f.toString,h="Symbol(test)"==String(u("test")),m=/^Symbol\((.*)\)[^)]+$/;l(f,"description",{configurable:!0,get:function(){var t=s(this)?this.valueOf():this,e=d.call(t);if(a(p,t))return"";var n=h?e.slice(7,-1):e.replace(m,"$1");return""===n?void 0:n}}),r({global:!0,forced:!0},{Symbol:A})}},2165:(t,e,n)=>{n(7235)("iterator")},2526:(t,e,n)=>{"use strict";var r=n(2109),o=n(7854),i=n(5005),a=n(1913),s=n(9781),l=n(133),c=n(3307),u=n(7293),p=n(6656),A=n(3157),f=n(111),d=n(9670),h=n(7908),m=n(5656),g=n(7593),v=n(9114),y=n(30),b=n(1956),C=n(8006),w=n(1156),x=n(5181),E=n(1236),S=n(3070),T=n(5296),I=n(8880),B=n(1320),k=n(2309),_=n(6200),O=n(3501),N=n(9711),M=n(5112),j=n(6061),D=n(7235),P=n(8003),L=n(9909),F=n(2092).forEach,z=_("hidden"),$="Symbol",R=M("toPrimitive"),U=L.set,G=L.getterFor($),Q=Object.prototype,Y=o.Symbol,H=i("JSON","stringify"),W=E.f,V=S.f,q=w.f,Z=T.f,X=k("symbols"),J=k("op-symbols"),K=k("string-to-symbol-registry"),tt=k("symbol-to-string-registry"),et=k("wks"),nt=o.QObject,rt=!nt||!nt.prototype||!nt.prototype.findChild,ot=s&&u((function(){return 7!=y(V({},"a",{get:function(){return V(this,"a",{value:7}).a}})).a}))?function(t,e,n){var r=W(Q,e);r&&delete Q[e],V(t,e,n),r&&t!==Q&&V(Q,e,r)}:V,it=function(t,e){var n=X[t]=y(Y.prototype);return U(n,{type:$,tag:t,description:e}),s||(n.description=e),n},at=c?function(t){return"symbol"==typeof t}:function(t){return Object(t)instanceof Y},st=function(t,e,n){t===Q&&st(J,e,n),d(t);var r=g(e,!0);return d(n),p(X,r)?(n.enumerable?(p(t,z)&&t[z][r]&&(t[z][r]=!1),n=y(n,{enumerable:v(0,!1)})):(p(t,z)||V(t,z,v(1,{})),t[z][r]=!0),ot(t,r,n)):V(t,r,n)},lt=function(t,e){d(t);var n=m(e),r=b(n).concat(At(n));return F(r,(function(e){s&&!ct.call(n,e)||st(t,e,n[e])})),t},ct=function(t){var e=g(t,!0),n=Z.call(this,e);return!(this===Q&&p(X,e)&&!p(J,e))&&(!(n||!p(this,e)||!p(X,e)||p(this,z)&&this[z][e])||n)},ut=function(t,e){var n=m(t),r=g(e,!0);if(n!==Q||!p(X,r)||p(J,r)){var o=W(n,r);return!o||!p(X,r)||p(n,z)&&n[z][r]||(o.enumerable=!0),o}},pt=function(t){var e=q(m(t)),n=[];return F(e,(function(t){p(X,t)||p(O,t)||n.push(t)})),n},At=function(t){var e=t===Q,n=q(e?J:m(t)),r=[];return F(n,(function(t){!p(X,t)||e&&!p(Q,t)||r.push(X[t])})),r};(l||(B((Y=function(){if(this instanceof Y)throw TypeError("Symbol is not a constructor");var t=arguments.length&&void 0!==arguments[0]?String(arguments[0]):void 0,e=N(t),n=function(t){this===Q&&n.call(J,t),p(this,z)&&p(this[z],e)&&(this[z][e]=!1),ot(this,e,v(1,t))};return s&&rt&&ot(Q,e,{configurable:!0,set:n}),it(e,t)}).prototype,"toString",(function(){return G(this).tag})),B(Y,"withoutSetter",(function(t){return it(N(t),t)})),T.f=ct,S.f=st,E.f=ut,C.f=w.f=pt,x.f=At,j.f=function(t){return it(M(t),t)},s&&(V(Y.prototype,"description",{configurable:!0,get:function(){return G(this).description}}),a||B(Q,"propertyIsEnumerable",ct,{unsafe:!0}))),r({global:!0,wrap:!0,forced:!l,sham:!l},{Symbol:Y}),F(b(et),(function(t){D(t)})),r({target:$,stat:!0,forced:!l},{for:function(t){var e=String(t);if(p(K,e))return K[e];var n=Y(e);return K[e]=n,tt[n]=e,n},keyFor:function(t){if(!at(t))throw TypeError(t+" is not a symbol");if(p(tt,t))return tt[t]},useSetter:function(){rt=!0},useSimple:function(){rt=!1}}),r({target:"Object",stat:!0,forced:!l,sham:!s},{create:function(t,e){return void 0===e?y(t):lt(y(t),e)},defineProperty:st,defineProperties:lt,getOwnPropertyDescriptor:ut}),r({target:"Object",stat:!0,forced:!l},{getOwnPropertyNames:pt,getOwnPropertySymbols:At}),r({target:"Object",stat:!0,forced:u((function(){x.f(1)}))},{getOwnPropertySymbols:function(t){return x.f(h(t))}}),H)&&r({target:"JSON",stat:!0,forced:!l||u((function(){var t=Y();return"[null]"!=H([t])||"{}"!=H({a:t})||"{}"!=H(Object(t))}))},{stringify:function(t,e,n){for(var r,o=[t],i=1;arguments.length>i;)o.push(arguments[i++]);if(r=e,(f(e)||void 0!==t)&&!at(t))return A(e)||(e=function(t,e){if("function"==typeof r&&(e=r.call(this,t,e)),!at(e))return e}),o[1]=e,H.apply(null,o)}});Y.prototype[R]||I(Y.prototype,R,Y.prototype.valueOf),P(Y,$),O[z]=!0},4747:(t,e,n)=>{var r=n(7854),o=n(8324),i=n(8533),a=n(8880);for(var s in o){var l=r[s],c=l&&l.prototype;if(c&&c.forEach!==i)try{a(c,"forEach",i)}catch(t){c.forEach=i}}},3948:(t,e,n)=>{var r=n(7854),o=n(8324),i=n(6992),a=n(8880),s=n(5112),l=s("iterator"),c=s("toStringTag"),u=i.values;for(var p in o){var A=r[p],f=A&&A.prototype;if(f){if(f[l]!==u)try{a(f,l,u)}catch(t){f[l]=u}if(f[c]||a(f,c,p),o[p])for(var d in i)if(f[d]!==i[d])try{a(f,d,i[d])}catch(t){f[d]=i[d]}}}},1637:(t,e,n)=>{"use strict";n(6992);var r=n(2109),o=n(5005),i=n(590),a=n(1320),s=n(2248),l=n(8003),c=n(4994),u=n(9909),p=n(5787),A=n(6656),f=n(9974),d=n(648),h=n(9670),m=n(111),g=n(30),v=n(9114),y=n(8554),b=n(1246),C=n(5112),w=o("fetch"),x=o("Headers"),E=C("iterator"),S="URLSearchParams",T="URLSearchParamsIterator",I=u.set,B=u.getterFor(S),k=u.getterFor(T),_=/\+/g,O=Array(4),N=function(t){return O[t-1]||(O[t-1]=RegExp("((?:%[\\da-f]{2}){"+t+"})","gi"))},M=function(t){try{return decodeURIComponent(t)}catch(e){return t}},j=function(t){var e=t.replace(_," "),n=4;try{return decodeURIComponent(e)}catch(t){for(;n;)e=e.replace(N(n--),M);return e}},D=/[!'()~]|%20/g,P={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+"},L=function(t){return P[t]},F=function(t){return encodeURIComponent(t).replace(D,L)},z=function(t,e){if(e)for(var n,r,o=e.split("&"),i=0;i<o.length;)(n=o[i++]).length&&(r=n.split("="),t.push({key:j(r.shift()),value:j(r.join("="))}))},$=function(t){this.entries.length=0,z(this.entries,t)},R=function(t,e){if(t<e)throw TypeError("Not enough arguments")},U=c((function(t,e){I(this,{type:T,iterator:y(B(t).entries),kind:e})}),"Iterator",(function(){var t=k(this),e=t.kind,n=t.iterator.next(),r=n.value;return n.done||(n.value="keys"===e?r.key:"values"===e?r.value:[r.key,r.value]),n})),G=function(){p(this,G,S);var t,e,n,r,o,i,a,s,l,c=arguments.length>0?arguments[0]:void 0,u=this,f=[];if(I(u,{type:S,entries:f,updateURL:function(){},updateSearchParams:$}),void 0!==c)if(m(c))if("function"==typeof(t=b(c)))for(n=(e=t.call(c)).next;!(r=n.call(e)).done;){if((a=(i=(o=y(h(r.value))).next).call(o)).done||(s=i.call(o)).done||!i.call(o).done)throw TypeError("Expected sequence with length 2");f.push({key:a.value+"",value:s.value+""})}else for(l in c)A(c,l)&&f.push({key:l,value:c[l]+""});else z(f,"string"==typeof c?"?"===c.charAt(0)?c.slice(1):c:c+"")},Q=G.prototype;s(Q,{append:function(t,e){R(arguments.length,2);var n=B(this);n.entries.push({key:t+"",value:e+""}),n.updateURL()},delete:function(t){R(arguments.length,1);for(var e=B(this),n=e.entries,r=t+"",o=0;o<n.length;)n[o].key===r?n.splice(o,1):o++;e.updateURL()},get:function(t){R(arguments.length,1);for(var e=B(this).entries,n=t+"",r=0;r<e.length;r++)if(e[r].key===n)return e[r].value;return null},getAll:function(t){R(arguments.length,1);for(var e=B(this).entries,n=t+"",r=[],o=0;o<e.length;o++)e[o].key===n&&r.push(e[o].value);return r},has:function(t){R(arguments.length,1);for(var e=B(this).entries,n=t+"",r=0;r<e.length;)if(e[r++].key===n)return!0;return!1},set:function(t,e){R(arguments.length,1);for(var n,r=B(this),o=r.entries,i=!1,a=t+"",s=e+"",l=0;l<o.length;l++)(n=o[l]).key===a&&(i?o.splice(l--,1):(i=!0,n.value=s));i||o.push({key:a,value:s}),r.updateURL()},sort:function(){var t,e,n,r=B(this),o=r.entries,i=o.slice();for(o.length=0,n=0;n<i.length;n++){for(t=i[n],e=0;e<n;e++)if(o[e].key>t.key){o.splice(e,0,t);break}e===n&&o.push(t)}r.updateURL()},forEach:function(t){for(var e,n=B(this).entries,r=f(t,arguments.length>1?arguments[1]:void 0,3),o=0;o<n.length;)r((e=n[o++]).value,e.key,this)},keys:function(){return new U(this,"keys")},values:function(){return new U(this,"values")},entries:function(){return new U(this,"entries")}},{enumerable:!0}),a(Q,E,Q.entries),a(Q,"toString",(function(){for(var t,e=B(this).entries,n=[],r=0;r<e.length;)t=e[r++],n.push(F(t.key)+"="+F(t.value));return n.join("&")}),{enumerable:!0}),l(G,S),r({global:!0,forced:!i},{URLSearchParams:G}),i||"function"!=typeof w||"function"!=typeof x||r({global:!0,enumerable:!0,forced:!0},{fetch:function(t){var e,n,r,o=[t];return arguments.length>1&&(m(e=arguments[1])&&(n=e.body,d(n)===S&&((r=e.headers?new x(e.headers):new x).has("content-type")||r.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"),e=g(e,{body:v(0,String(n)),headers:v(0,r)}))),o.push(e)),w.apply(this,o)}}),t.exports={URLSearchParams:G,getState:B}},285:(t,e,n)=>{"use strict";n(8783);var r,o=n(2109),i=n(9781),a=n(590),s=n(7854),l=n(6048),c=n(1320),u=n(5787),p=n(6656),A=n(1574),f=n(8457),d=n(8710).codeAt,h=n(3197),m=n(8003),g=n(1637),v=n(9909),y=s.URL,b=g.URLSearchParams,C=g.getState,w=v.set,x=v.getterFor("URL"),E=Math.floor,S=Math.pow,T="Invalid scheme",I="Invalid host",B="Invalid port",k=/[A-Za-z]/,_=/[\d+-.A-Za-z]/,O=/\d/,N=/^(0x|0X)/,M=/^[0-7]+$/,j=/^\d+$/,D=/^[\dA-Fa-f]+$/,P=/[\u0000\u0009\u000A\u000D #%/:?@[\\]]/,L=/[\u0000\u0009\u000A\u000D #/:?@[\\]]/,F=/^[\u0000-\u001F ]+|[\u0000-\u001F ]+$/g,z=/[\u0009\u000A\u000D]/g,$=function(t,e){var n,r,o;if("["==e.charAt(0)){if("]"!=e.charAt(e.length-1))return I;if(!(n=U(e.slice(1,-1))))return I;t.host=n}else if(Z(t)){if(e=h(e),P.test(e))return I;if(null===(n=R(e)))return I;t.host=n}else{if(L.test(e))return I;for(n="",r=f(e),o=0;o<r.length;o++)n+=V(r[o],Q);t.host=n}},R=function(t){var e,n,r,o,i,a,s,l=t.split(".");if(l.length&&""==l[l.length-1]&&l.pop(),(e=l.length)>4)return t;for(n=[],r=0;r<e;r++){if(""==(o=l[r]))return t;if(i=10,o.length>1&&"0"==o.charAt(0)&&(i=N.test(o)?16:8,o=o.slice(8==i?1:2)),""===o)a=0;else{if(!(10==i?j:8==i?M:D).test(o))return t;a=parseInt(o,i)}n.push(a)}for(r=0;r<e;r++)if(a=n[r],r==e-1){if(a>=S(256,5-e))return null}else if(a>255)return null;for(s=n.pop(),r=0;r<n.length;r++)s+=n[r]*S(256,3-r);return s},U=function(t){var e,n,r,o,i,a,s,l=[0,0,0,0,0,0,0,0],c=0,u=null,p=0,A=function(){return t.charAt(p)};if(":"==A()){if(":"!=t.charAt(1))return;p+=2,u=++c}for(;A();){if(8==c)return;if(":"!=A()){for(e=n=0;n<4&&D.test(A());)e=16*e+parseInt(A(),16),p++,n++;if("."==A()){if(0==n)return;if(p-=n,c>6)return;for(r=0;A();){if(o=null,r>0){if(!("."==A()&&r<4))return;p++}if(!O.test(A()))return;for(;O.test(A());){if(i=parseInt(A(),10),null===o)o=i;else{if(0==o)return;o=10*o+i}if(o>255)return;p++}l[c]=256*l[c]+o,2!=++r&&4!=r||c++}if(4!=r)return;break}if(":"==A()){if(p++,!A())return}else if(A())return;l[c++]=e}else{if(null!==u)return;p++,u=++c}}if(null!==u)for(a=c-u,c=7;0!=c&&a>0;)s=l[c],l[c--]=l[u+a-1],l[u+--a]=s;else if(8!=c)return;return l},G=function(t){var e,n,r,o;if("number"==typeof t){for(e=[],n=0;n<4;n++)e.unshift(t%256),t=E(t/256);return e.join(".")}if("object"==typeof t){for(e="",r=function(t){for(var e=null,n=1,r=null,o=0,i=0;i<8;i++)0!==t[i]?(o>n&&(e=r,n=o),r=null,o=0):(null===r&&(r=i),++o);return o>n&&(e=r,n=o),e}(t),n=0;n<8;n++)o&&0===t[n]||(o&&(o=!1),r===n?(e+=n?":":"::",o=!0):(e+=t[n].toString(16),n<7&&(e+=":")));return"["+e+"]"}return t},Q={},Y=A({},Q,{" ":1,'"':1,"<":1,">":1,"`":1}),H=A({},Y,{"#":1,"?":1,"{":1,"}":1}),W=A({},H,{"/":1,":":1,";":1,"=":1,"@":1,"[":1,"\\":1,"]":1,"^":1,"|":1}),V=function(t,e){var n=d(t,0);return n>32&&n<127&&!p(e,t)?t:encodeURIComponent(t)},q={ftp:21,file:null,http:80,https:443,ws:80,wss:443},Z=function(t){return p(q,t.scheme)},X=function(t){return""!=t.username||""!=t.password},J=function(t){return!t.host||t.cannotBeABaseURL||"file"==t.scheme},K=function(t,e){var n;return 2==t.length&&k.test(t.charAt(0))&&(":"==(n=t.charAt(1))||!e&&"|"==n)},tt=function(t){var e;return t.length>1&&K(t.slice(0,2))&&(2==t.length||"/"===(e=t.charAt(2))||"\\"===e||"?"===e||"#"===e)},et=function(t){var e=t.path,n=e.length;!n||"file"==t.scheme&&1==n&&K(e[0],!0)||e.pop()},nt=function(t){return"."===t||"%2e"===t.toLowerCase()},rt={},ot={},it={},at={},st={},lt={},ct={},ut={},pt={},At={},ft={},dt={},ht={},mt={},gt={},vt={},yt={},bt={},Ct={},wt={},xt={},Et=function(t,e,n,o){var i,a,s,l,c,u=n||rt,A=0,d="",h=!1,m=!1,g=!1;for(n||(t.scheme="",t.username="",t.password="",t.host=null,t.port=null,t.path=[],t.query=null,t.fragment=null,t.cannotBeABaseURL=!1,e=e.replace(F,"")),e=e.replace(z,""),i=f(e);A<=i.length;){switch(a=i[A],u){case rt:if(!a||!k.test(a)){if(n)return T;u=it;continue}d+=a.toLowerCase(),u=ot;break;case ot:if(a&&(_.test(a)||"+"==a||"-"==a||"."==a))d+=a.toLowerCase();else{if(":"!=a){if(n)return T;d="",u=it,A=0;continue}if(n&&(Z(t)!=p(q,d)||"file"==d&&(X(t)||null!==t.port)||"file"==t.scheme&&!t.host))return;if(t.scheme=d,n)return void(Z(t)&&q[t.scheme]==t.port&&(t.port=null));d="","file"==t.scheme?u=mt:Z(t)&&o&&o.scheme==t.scheme?u=at:Z(t)?u=ut:"/"==i[A+1]?(u=st,A++):(t.cannotBeABaseURL=!0,t.path.push(""),u=Ct)}break;case it:if(!o||o.cannotBeABaseURL&&"#"!=a)return T;if(o.cannotBeABaseURL&&"#"==a){t.scheme=o.scheme,t.path=o.path.slice(),t.query=o.query,t.fragment="",t.cannotBeABaseURL=!0,u=xt;break}u="file"==o.scheme?mt:lt;continue;case at:if("/"!=a||"/"!=i[A+1]){u=lt;continue}u=pt,A++;break;case st:if("/"==a){u=At;break}u=bt;continue;case lt:if(t.scheme=o.scheme,a==r)t.username=o.username,t.password=o.password,t.host=o.host,t.port=o.port,t.path=o.path.slice(),t.query=o.query;else if("/"==a||"\\"==a&&Z(t))u=ct;else if("?"==a)t.username=o.username,t.password=o.password,t.host=o.host,t.port=o.port,t.path=o.path.slice(),t.query="",u=wt;else{if("#"!=a){t.username=o.username,t.password=o.password,t.host=o.host,t.port=o.port,t.path=o.path.slice(),t.path.pop(),u=bt;continue}t.username=o.username,t.password=o.password,t.host=o.host,t.port=o.port,t.path=o.path.slice(),t.query=o.query,t.fragment="",u=xt}break;case ct:if(!Z(t)||"/"!=a&&"\\"!=a){if("/"!=a){t.username=o.username,t.password=o.password,t.host=o.host,t.port=o.port,u=bt;continue}u=At}else u=pt;break;case ut:if(u=pt,"/"!=a||"/"!=d.charAt(A+1))continue;A++;break;case pt:if("/"!=a&&"\\"!=a){u=At;continue}break;case At:if("@"==a){h&&(d="%40"+d),h=!0,s=f(d);for(var v=0;v<s.length;v++){var y=s[v];if(":"!=y||g){var b=V(y,W);g?t.password+=b:t.username+=b}else g=!0}d=""}else if(a==r||"/"==a||"?"==a||"#"==a||"\\"==a&&Z(t)){if(h&&""==d)return"Invalid authority";A-=f(d).length+1,d="",u=ft}else d+=a;break;case ft:case dt:if(n&&"file"==t.scheme){u=vt;continue}if(":"!=a||m){if(a==r||"/"==a||"?"==a||"#"==a||"\\"==a&&Z(t)){if(Z(t)&&""==d)return I;if(n&&""==d&&(X(t)||null!==t.port))return;if(l=$(t,d))return l;if(d="",u=yt,n)return;continue}"["==a?m=!0:"]"==a&&(m=!1),d+=a}else{if(""==d)return I;if(l=$(t,d))return l;if(d="",u=ht,n==dt)return}break;case ht:if(!O.test(a)){if(a==r||"/"==a||"?"==a||"#"==a||"\\"==a&&Z(t)||n){if(""!=d){var C=parseInt(d,10);if(C>65535)return B;t.port=Z(t)&&C===q[t.scheme]?null:C,d=""}if(n)return;u=yt;continue}return B}d+=a;break;case mt:if(t.scheme="file","/"==a||"\\"==a)u=gt;else{if(!o||"file"!=o.scheme){u=bt;continue}if(a==r)t.host=o.host,t.path=o.path.slice(),t.query=o.query;else if("?"==a)t.host=o.host,t.path=o.path.slice(),t.query="",u=wt;else{if("#"!=a){tt(i.slice(A).join(""))||(t.host=o.host,t.path=o.path.slice(),et(t)),u=bt;continue}t.host=o.host,t.path=o.path.slice(),t.query=o.query,t.fragment="",u=xt}}break;case gt:if("/"==a||"\\"==a){u=vt;break}o&&"file"==o.scheme&&!tt(i.slice(A).join(""))&&(K(o.path[0],!0)?t.path.push(o.path[0]):t.host=o.host),u=bt;continue;case vt:if(a==r||"/"==a||"\\"==a||"?"==a||"#"==a){if(!n&&K(d))u=bt;else if(""==d){if(t.host="",n)return;u=yt}else{if(l=$(t,d))return l;if("localhost"==t.host&&(t.host=""),n)return;d="",u=yt}continue}d+=a;break;case yt:if(Z(t)){if(u=bt,"/"!=a&&"\\"!=a)continue}else if(n||"?"!=a)if(n||"#"!=a){if(a!=r&&(u=bt,"/"!=a))continue}else t.fragment="",u=xt;else t.query="",u=wt;break;case bt:if(a==r||"/"==a||"\\"==a&&Z(t)||!n&&("?"==a||"#"==a)){if(".."===(c=(c=d).toLowerCase())||"%2e."===c||".%2e"===c||"%2e%2e"===c?(et(t),"/"==a||"\\"==a&&Z(t)||t.path.push("")):nt(d)?"/"==a||"\\"==a&&Z(t)||t.path.push(""):("file"==t.scheme&&!t.path.length&&K(d)&&(t.host&&(t.host=""),d=d.charAt(0)+":"),t.path.push(d)),d="","file"==t.scheme&&(a==r||"?"==a||"#"==a))for(;t.path.length>1&&""===t.path[0];)t.path.shift();"?"==a?(t.query="",u=wt):"#"==a&&(t.fragment="",u=xt)}else d+=V(a,H);break;case Ct:"?"==a?(t.query="",u=wt):"#"==a?(t.fragment="",u=xt):a!=r&&(t.path[0]+=V(a,Q));break;case wt:n||"#"!=a?a!=r&&("'"==a&&Z(t)?t.query+="%27":t.query+="#"==a?"%23":V(a,Q)):(t.fragment="",u=xt);break;case xt:a!=r&&(t.fragment+=V(a,Y))}A++}},St=function(t){var e,n,r=u(this,St,"URL"),o=arguments.length>1?arguments[1]:void 0,a=String(t),s=w(r,{type:"URL"});if(void 0!==o)if(o instanceof St)e=x(o);else if(n=Et(e={},String(o)))throw TypeError(n);if(n=Et(s,a,null,e))throw TypeError(n);var l=s.searchParams=new b,c=C(l);c.updateSearchParams(s.query),c.updateURL=function(){s.query=String(l)||null},i||(r.href=It.call(r),r.origin=Bt.call(r),r.protocol=kt.call(r),r.username=_t.call(r),r.password=Ot.call(r),r.host=Nt.call(r),r.hostname=Mt.call(r),r.port=jt.call(r),r.pathname=Dt.call(r),r.search=Pt.call(r),r.searchParams=Lt.call(r),r.hash=Ft.call(r))},Tt=St.prototype,It=function(){var t=x(this),e=t.scheme,n=t.username,r=t.password,o=t.host,i=t.port,a=t.path,s=t.query,l=t.fragment,c=e+":";return null!==o?(c+="//",X(t)&&(c+=n+(r?":"+r:"")+"@"),c+=G(o),null!==i&&(c+=":"+i)):"file"==e&&(c+="//"),c+=t.cannotBeABaseURL?a[0]:a.length?"/"+a.join("/"):"",null!==s&&(c+="?"+s),null!==l&&(c+="#"+l),c},Bt=function(){var t=x(this),e=t.scheme,n=t.port;if("blob"==e)try{return new URL(e.path[0]).origin}catch(t){return"null"}return"file"!=e&&Z(t)?e+"://"+G(t.host)+(null!==n?":"+n:""):"null"},kt=function(){return x(this).scheme+":"},_t=function(){return x(this).username},Ot=function(){return x(this).password},Nt=function(){var t=x(this),e=t.host,n=t.port;return null===e?"":null===n?G(e):G(e)+":"+n},Mt=function(){var t=x(this).host;return null===t?"":G(t)},jt=function(){var t=x(this).port;return null===t?"":String(t)},Dt=function(){var t=x(this),e=t.path;return t.cannotBeABaseURL?e[0]:e.length?"/"+e.join("/"):""},Pt=function(){var t=x(this).query;return t?"?"+t:""},Lt=function(){return x(this).searchParams},Ft=function(){var t=x(this).fragment;return t?"#"+t:""},zt=function(t,e){return{get:t,set:e,configurable:!0,enumerable:!0}};if(i&&l(Tt,{href:zt(It,(function(t){var e=x(this),n=String(t),r=Et(e,n);if(r)throw TypeError(r);C(e.searchParams).updateSearchParams(e.query)})),origin:zt(Bt),protocol:zt(kt,(function(t){var e=x(this);Et(e,String(t)+":",rt)})),username:zt(_t,(function(t){var e=x(this),n=f(String(t));if(!J(e)){e.username="";for(var r=0;r<n.length;r++)e.username+=V(n[r],W)}})),password:zt(Ot,(function(t){var e=x(this),n=f(String(t));if(!J(e)){e.password="";for(var r=0;r<n.length;r++)e.password+=V(n[r],W)}})),host:zt(Nt,(function(t){var e=x(this);e.cannotBeABaseURL||Et(e,String(t),ft)})),hostname:zt(Mt,(function(t){var e=x(this);e.cannotBeABaseURL||Et(e,String(t),dt)})),port:zt(jt,(function(t){var e=x(this);J(e)||(""==(t=String(t))?e.port=null:Et(e,t,ht))})),pathname:zt(Dt,(function(t){var e=x(this);e.cannotBeABaseURL||(e.path=[],Et(e,t+"",yt))})),search:zt(Pt,(function(t){var e=x(this);""==(t=String(t))?e.query=null:("?"==t.charAt(0)&&(t=t.slice(1)),e.query="",Et(e,t,wt)),C(e.searchParams).updateSearchParams(e.query)})),searchParams:zt(Lt),hash:zt(Ft,(function(t){var e=x(this);""!=(t=String(t))?("#"==t.charAt(0)&&(t=t.slice(1)),e.fragment="",Et(e,t,xt)):e.fragment=null}))}),c(Tt,"toJSON",(function(){return It.call(this)}),{enumerable:!0}),c(Tt,"toString",(function(){return It.call(this)}),{enumerable:!0}),y){var $t=y.createObjectURL,Rt=y.revokeObjectURL;$t&&c(St,"createObjectURL",(function(t){return $t.apply(y,arguments)})),Rt&&c(St,"revokeObjectURL",(function(t){return Rt.apply(y,arguments)}))}m(St,"URL"),o({global:!0,forced:!a,sham:!i},{URL:St})},6060:(t,e,n)=>{"use strict";n.d(e,{Z:()=>s});var r=n(7537),o=n.n(r),i=n(3645),a=n.n(i)()(o());a.push([t.id,"#firstrunwizard .page{display:flex;flex-direction:row;flex-wrap:wrap;margin:auto}#firstrunwizard .page h3{margin:10px 0 10px;line-height:120%;padding:0}#firstrunwizard .page .image{padding:20px;max-width:calc(50% - 40px);flex-grow:1}#firstrunwizard .page .image img{width:100%}#firstrunwizard .page .content{padding:20px;width:100%}#firstrunwizard .page p{margin-bottom:20px}#firstrunwizard .page .description-block:first-child{margin-bottom:20px}#firstrunwizard .page .description{margin:20px;width:auto;flex-grow:1;max-width:calc(50% - 40px)}#firstrunwizard .page ul{margin:10px}#firstrunwizard .page ul li{margin-left:20px;margin-bottom:10px;list-style:circle outside}#firstrunwizard .page a:not(.button):hover,#firstrunwizard .page a:not(.button):focus{text-decoration:underline}#firstrunwizard .page .button{display:inline-block}#firstrunwizard .page .button img{width:16px;height:16px;opacity:.5;margin-top:-3px;vertical-align:middle}#firstrunwizard .content-clients{width:100%;text-align:center}#firstrunwizard .content-clients a{text-decoration:none;display:inline-block}#firstrunwizard .content-clients .clientslinks .appsmall{height:32px;width:32px;position:relative;opacity:.5;vertical-align:middle}#firstrunwizard .content-clients .clientslinks .button{display:inline-block;padding:8px;font-weight:normal;font-size:14px}#firstrunwizard .content-final h3{background-position:0;background-size:16px 16px;padding-left:26px;opacity:.7}#firstrunwizard p a{font-weight:bold;color:var(--color-primary)}#firstrunwizard p a:hover,#firstrunwizard p a:focus{color:var(color-text-light)}#firstrunwizard .footnote{margin-top:40px}#firstrunwizard .modal-wrapper .icon-next{background-color:var(--color-primary);color:var(--color-primary-text);box-shadow:0 2px 8px rgba(0,0,0,.33);left:22px}.clientslinks{margin-top:20px;margin-bottom:20px}#wizard-values{list-style-type:none;display:flex;flex-wrap:wrap;margin:0}#wizard-values li{display:block;min-width:250px;width:33%;flex-grow:1;margin:20px 0 20px 0}#wizard-values li span{opacity:.7;display:block;height:50px;width:50px;background-size:40px;margin:auto}#wizard-values li h3{margin:10px 0 10px 0;font-size:130%;text-align:center}.details-link{text-align:center}@media only screen and (max-width: 680px){#firstrunwizard .firstrunwizard-header div.logo{background-size:120px}#firstrunwizard h2{font-size:20px}#firstrunwizard .page>div{max-width:100% !important;width:100%}#firstrunwizard .page #wizard-values li{min-width:100%;overflow:hidden;display:flex}#firstrunwizard .page #wizard-values li span{width:44px !important;padding-right:20px;flex-grow:0}#firstrunwizard .page #wizard-values li h3{font-size:12px;text-align:left;flex-grow:1}#firstrunwizard .page.content-final{padding-bottom:50px}}","",{version:3,sources:["webpack://./src/App.vue"],names:[],mappings:"AA4CC,sBACC,YAAA,CACA,kBAAA,CACA,cAAA,CACA,WAAA,CAEA,yBACC,kBAAA,CACA,gBAAA,CACA,SAAA,CAED,6BACC,YAAA,CACA,0BAAA,CACA,WAAA,CACA,iCACC,UAAA,CAGF,+BACC,YAAA,CACA,UAAA,CAED,wBACC,kBAAA,CAED,qDACC,kBAAA,CAED,mCACC,WAAA,CACA,UAAA,CACA,WAAA,CACA,0BAAA,CAED,yBACC,WAAA,CACA,4BACC,gBAAA,CACA,kBAAA,CACA,yBAAA,CAID,sFAEC,yBAAA,CAGF,8BACC,oBAAA,CAEA,kCACC,UAAA,CACA,WAAA,CACA,UAAA,CACA,eAAA,CACA,qBAAA,CAKH,iCACC,UAAA,CACA,iBAAA,CACA,mCACC,oBAAA,CACA,oBAAA,CAED,yDACC,WAAA,CACA,UAAA,CACA,iBAAA,CACA,UAAA,CACA,qBAAA,CAED,uDACC,oBAAA,CACA,WAAA,CACA,kBAAA,CACA,cAAA,CAID,kCACC,qBAAA,CACA,yBAAA,CACA,iBAAA,CACA,UAAA,CAGF,oBACC,gBAAA,CACA,0BAAA,CACA,oDAEC,2BAAA,CAIF,0BACC,eAAA,CAID,0CACC,qCAAA,CACA,+BAAA,CACA,oCAAA,CACA,SAAA,CAIF,cACC,eAAA,CACA,kBAAA,CAGD,eACC,oBAAA,CACA,YAAA,CACA,cAAA,CACA,QAAA,CACA,kBACC,aAAA,CACA,eAAA,CACA,SAAA,CACA,WAAA,CACA,oBAAA,CACA,uBACC,UAAA,CACA,aAAA,CACA,WAAA,CACA,UAAA,CACA,oBAAA,CACA,WAAA,CAED,qBACC,oBAAA,CACA,cAAA,CACA,iBAAA,CAKH,cACC,iBAAA,CAGD,0CAEE,gDACC,qBAAA,CAED,mBACC,cAAA,CAED,0BACC,yBAAA,CACA,UAAA,CAGA,wCACC,cAAA,CACA,eAAA,CACA,YAAA,CACA,6CACC,qBAAA,CACA,kBAAA,CACA,WAAA,CAED,2CACC,cAAA,CACA,eAAA,CACA,WAAA,CAIF,oCACC,mBAAA,CAAA",sourcesContent:["\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n/* Page styling needs to be unscoped, since we load it separately from the server */\n#firstrunwizard {\n\n\t.page {\n\t\tdisplay: flex;\n\t\tflex-direction: row;\n\t\tflex-wrap: wrap;\n\t\tmargin: auto;\n\n\t\th3 {\n\t\t\tmargin: 10px 0 10px;\n\t\t\tline-height: 120%;\n\t\t\tpadding: 0;\n\t\t}\n\t\t.image {\n\t\t\tpadding: 20px;\n\t\t\tmax-width: calc(50% - 40px);\n\t\t\tflex-grow: 1;\n\t\t\timg {\n\t\t\t\twidth: 100%;\n\t\t\t}\n\t\t}\n\t\t.content {\n\t\t\tpadding: 20px;\n\t\t\twidth: 100%;\n\t\t}\n\t\tp {\n\t\t\tmargin-bottom: 20px;\n\t\t}\n\t\t.description-block:first-child {\n\t\t\tmargin-bottom: 20px;\n\t\t}\n\t\t.description {\n\t\t\tmargin: 20px;\n\t\t\twidth: auto;\n\t\t\tflex-grow: 1;\n\t\t\tmax-width: calc(50% - 40px);\n\t\t}\n\t\tul {\n\t\t\tmargin: 10px;\n\t\t\tli {\n\t\t\t\tmargin-left: 20px;\n\t\t\t\tmargin-bottom: 10px;\n\t\t\t\tlist-style: circle outside;\n\t\t\t}\n\t\t}\n\t\ta:not(.button) {\n\t\t\t&:hover,\n\t\t\t&:focus {\n\t\t\t\ttext-decoration: underline;\n\t\t\t}\n\t\t}\n\t\t.button {\n\t\t\tdisplay: inline-block;\n\n\t\t\timg {\n\t\t\t\twidth: 16px;\n\t\t\t\theight: 16px;\n\t\t\t\topacity: .5;\n\t\t\t\tmargin-top: -3px;\n\t\t\t\tvertical-align: middle;\n\t\t\t}\n\t\t}\n\t}\n\n\t.content-clients {\n\t\twidth: 100%;\n\t\ttext-align: center;\n\t\ta {\n\t\t\ttext-decoration: none;\n\t\t\tdisplay: inline-block;\n\t\t}\n\t\t.clientslinks .appsmall {\n\t\t\theight: 32px;\n\t\t\twidth: 32px;\n\t\t\tposition: relative;\n\t\t\topacity: .5;\n\t\t\tvertical-align: middle;\n\t\t}\n\t\t.clientslinks .button {\n\t\t\tdisplay: inline-block;\n\t\t\tpadding: 8px;\n\t\t\tfont-weight: normal;\n\t\t\tfont-size: 14px;\n\t\t}\n\t}\n\t.content-final {\n\t\th3 {\n\t\t\tbackground-position: 0;\n\t\t\tbackground-size: 16px 16px;\n\t\t\tpadding-left: 26px;\n\t\t\topacity: .7;\n\t\t}\n\t}\n\tp a {\n\t\tfont-weight: bold;\n\t\tcolor: var(--color-primary);\n\t\t&:hover,\n\t\t&:focus {\n\t\t\tcolor: var(color-text-light);\n\t\t}\n\t}\n\n\t.footnote {\n\t\tmargin-top: 40px;\n\t}\n\n\t// primary on next button\n\t.modal-wrapper .icon-next {\n\t\tbackground-color: var(--color-primary);\n\t\tcolor: var(--color-primary-text);\n\t\tbox-shadow: 0 2px 8px rgba(0, 0, 0, .33);\n\t\tleft: 22px;\n\t}\n}\n\n.clientslinks {\n\tmargin-top: 20px;\n\tmargin-bottom: 20px;\n}\n\n#wizard-values {\n\tlist-style-type: none;\n\tdisplay: flex;\n\tflex-wrap: wrap;\n\tmargin: 0;\n\tli {\n\t\tdisplay: block;\n\t\tmin-width: 250px;\n\t\twidth: 33%;\n\t\tflex-grow: 1;\n\t\tmargin: 20px 0 20px 0;\n\t\tspan {\n\t\t\topacity: .7;\n\t\t\tdisplay: block;\n\t\t\theight: 50px;\n\t\t\twidth: 50px;\n\t\t\tbackground-size: 40px;\n\t\t\tmargin: auto;\n\t\t}\n\t\th3 {\n\t\t\tmargin: 10px 0 10px 0;\n\t\t\tfont-size: 130%;\n\t\t\ttext-align: center;\n\t\t}\n\t}\n}\n\n.details-link {\n\ttext-align: center;\n}\n\n@media only screen and (max-width: 680px) {\n\t#firstrunwizard {\n\t\t.firstrunwizard-header div.logo {\n\t\t\tbackground-size: 120px;\n\t\t}\n\t\th2 {\n\t\t\tfont-size: 20px;\n\t\t}\n\t\t.page > div {\n\t\t\tmax-width: 100% !important;\n\t\t\twidth: 100%;\n\t\t}\n\t\t.page {\n\t\t\t#wizard-values li {\n\t\t\t\tmin-width: 100%;\n\t\t\t\toverflow: hidden;\n\t\t\t\tdisplay: flex;\n\t\t\t\tspan {\n\t\t\t\t\twidth: 44px !important;\n\t\t\t\t\tpadding-right: 20px;\n\t\t\t\t\tflex-grow: 0;\n\t\t\t\t}\n\t\t\t\th3 {\n\t\t\t\t\tfont-size: 12px;\n\t\t\t\t\ttext-align: left;\n\t\t\t\t\tflex-grow: 1;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t&.content-final {\n\t\t\t\tpadding-bottom: 50px;\n\t\t\t}\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const s=a},9504:(t,e,n)=>{"use strict";n.d(e,{Z:()=>s});var r=n(7537),o=n.n(r),i=n(3645),a=n.n(i)()(o());a.push([t.id,".modal-mask[data-v-063e1a6a]{background-color:rgba(0,0,0,.7)}.modal-mask[data-v-063e1a6a] .modal-wrapper{position:relative}.modal-mask[data-v-063e1a6a] .modal-container{display:flex;flex-direction:column;height:95% !important;width:95% !important;max-width:900px;max-height:650px !important;position:relative}.modal-mask .modal-body[data-v-063e1a6a]{flex-grow:1;display:flex;overflow-x:hidden;overflow-y:auto}.modal-mask .modal-body>div[data-v-063e1a6a]{display:flex;flex-grow:1;align-items:center;justify-content:center}.modal-header[data-v-063e1a6a]{height:180px;max-height:40vh;overflow:hidden;flex-shrink:0}.modal-header .firstrunwizard-header[data-v-063e1a6a]{padding:20px 12px;background:var(--color-primary) var(--image-login-background) no-repeat 50% 50%;background-size:cover;color:var(--color-primary-text);text-align:center}.modal-header .firstrunwizard-header .logo[data-v-063e1a6a]{background:var(--image-logo) no-repeat center;background-size:contain;width:175px;height:100px;max-height:20vh;margin:0 auto}.modal-header .firstrunwizard-header h2[data-v-063e1a6a]{font-size:20px;margin-top:7px;line-height:150%;color:var(--color-primary-text);font-weight:300;padding:0 0 10px}.modal-default-button[data-v-063e1a6a]{align-self:flex-end}.modal-footer[data-v-063e1a6a]{overflow:hidden;position:absolute;display:flex;bottom:0;right:0}.modal-footer button[data-v-063e1a6a]{margin:10px}.next-enter-active[data-v-063e1a6a],.next-leave-active[data-v-063e1a6a],.previous-enter-active[data-v-063e1a6a],.previous-leave-active[data-v-063e1a6a]{transition:transform .1s,opacity .25s}.next-enter[data-v-063e1a6a]{transform:translateX(50%);opacity:0}.next-leave-to[data-v-063e1a6a]{transform:translateX(-50%);opacity:0}.previous-enter[data-v-063e1a6a]{transform:translateX(-50%);opacity:0}.previous-leave-to[data-v-063e1a6a]{transform:translateX(50%);opacity:0}","",{version:3,sources:["webpack://./src/App.vue"],names:[],mappings:"AAuOA,6BACC,+BAAA,CAEA,4CACC,iBAAA,CAGD,8CACC,YAAA,CACA,qBAAA,CACA,qBAAA,CACA,oBAAA,CACA,eAAA,CACA,2BAAA,CACA,iBAAA,CAGD,yCACC,WAAA,CACA,YAAA,CACA,iBAAA,CACA,eAAA,CAEA,6CACC,YAAA,CACA,WAAA,CACA,kBAAA,CACA,sBAAA,CAKH,+BACC,YAAA,CACA,eAAA,CACA,eAAA,CACA,aAAA,CAEA,sDACC,iBAAA,CACA,+EAAA,CACA,qBAAA,CACA,+BAAA,CACA,iBAAA,CACA,4DACC,6CAAA,CACA,uBAAA,CACA,WAAA,CACA,YAAA,CACA,eAAA,CACA,aAAA,CAED,yDACC,cAAA,CACA,cAAA,CACA,gBAAA,CACA,+BAAA,CACA,eAAA,CACA,gBAAA,CAKH,uCACC,mBAAA,CAGD,+BACC,eAAA,CACA,iBAAA,CACA,YAAA,CACA,QAAA,CACA,OAAA,CAGD,sCACC,WAAA,CAID,wJAEC,qCAAA,CAGD,6BACC,yBAAA,CACA,SAAA,CAGD,gCACC,0BAAA,CACA,SAAA,CAGD,iCACC,0BAAA,CACA,SAAA,CAGD,oCACC,yBAAA,CACA,SAAA",sourcesContent:["\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.modal-mask {\n\tbackground-color: rgba(0, 0, 0, 0.7);\n\n\t&::v-deep .modal-wrapper {\n\t\tposition: relative;\n\t}\n\n\t&::v-deep .modal-container {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\theight: 95% !important;\n\t\twidth: 95% !important;\n\t\tmax-width: 900px;\n\t\tmax-height: 650px !important;\n\t\tposition: relative;\n\t}\n\n\t.modal-body {\n\t\tflex-grow: 1;\n\t\tdisplay: flex;\n\t\toverflow-x: hidden;\n\t\toverflow-y: auto;\n\n\t\t& > div {\n\t\t\tdisplay: flex;\n\t\t\tflex-grow: 1;\n\t\t\talign-items: center;\n\t\t\tjustify-content: center;\n\t\t}\n\t}\n}\n\n.modal-header {\n\theight: 180px;\n\tmax-height: 40vh;\n\toverflow: hidden;\n\tflex-shrink: 0;\n\n\t.firstrunwizard-header {\n\t\tpadding: 20px 12px;\n\t\tbackground: var(--color-primary) var(--image-login-background) no-repeat 50% 50%;\n\t\tbackground-size: cover;\n\t\tcolor: var(--color-primary-text);\n\t\ttext-align: center;\n\t\t.logo {\n\t\t\tbackground: var(--image-logo) no-repeat center;\n\t\t\tbackground-size: contain;\n\t\t\twidth: 175px;\n\t\t\theight: 100px;\n\t\t\tmax-height: 20vh;\n\t\t\tmargin: 0 auto;\n\t\t}\n\t\th2 {\n\t\t\tfont-size: 20px;\n\t\t\tmargin-top: 7px;\n\t\t\tline-height: 150%;\n\t\t\tcolor: var(--color-primary-text);\n\t\t\tfont-weight: 300;\n\t\t\tpadding: 0 0 10px;\n\t\t}\n\t}\n}\n\n.modal-default-button {\n\talign-self: flex-end;\n}\n\n.modal-footer {\n\toverflow: hidden;\n\tposition: absolute;\n\tdisplay: flex;\n\tbottom: 0;\n\tright: 0;\n}\n\n.modal-footer button {\n\tmargin: 10px;\n}\n\n/* Transitions */\n.next-enter-active, .next-leave-active,\n.previous-enter-active, .previous-leave-active {\n\ttransition: transform .1s, opacity .25s;\n}\n\n.next-enter {\n\ttransform: translateX(50%);\n\topacity: 0;\n}\n\n.next-leave-to {\n\ttransform: translateX(-50%);\n\topacity: 0;\n}\n\n.previous-enter {\n\ttransform: translateX(-50%);\n\topacity: 0;\n}\n\n.previous-leave-to {\n\ttransform: translateX(50%);\n\topacity: 0;\n}\n"],sourceRoot:""}]);const s=a},3392:(t,e,n)=>{"use strict";n.d(e,{Z:()=>s});var r=n(7537),o=n.n(r),i=n(3645),a=n.n(i)()(o());a.push([t.id,"video[data-v-70de3a6e]{width:100%;height:100%;object-fit:cover}.video-wrapper[data-v-70de3a6e]{background-color:var(--color-primary)}","",{version:3,sources:["webpack://./src/components/IntroVideo.vue"],names:[],mappings:"AAuDA,uBACC,UAAA,CACA,WAAA,CACA,gBAAA,CAGD,gCACC,qCAAA",sourcesContent:["\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvideo {\n\twidth: 100%;\n\theight: 100%;\n\tobject-fit: cover;\n}\n\n.video-wrapper {\n\tbackground-color: var(--color-primary);\n}\n"],sourceRoot:""}]);const s=a},3645:t=>{"use strict";t.exports=function(t){var e=[];return e.toString=function(){return this.map((function(e){var n="",r=void 0!==e[5];return e[4]&&(n+="@supports (".concat(e[4],") {")),e[2]&&(n+="@media ".concat(e[2]," {")),r&&(n+="@layer".concat(e[5].length>0?" ".concat(e[5]):""," {")),n+=t(e),r&&(n+="}"),e[2]&&(n+="}"),e[4]&&(n+="}"),n})).join("")},e.i=function(t,n,r,o,i){"string"==typeof t&&(t=[[null,t,void 0]]);var a={};if(r)for(var s=0;s<this.length;s++){var l=this[s][0];null!=l&&(a[l]=!0)}for(var c=0;c<t.length;c++){var u=[].concat(t[c]);r&&a[u[0]]||(void 0!==i&&(void 0===u[5]||(u[1]="@layer".concat(u[5].length>0?" ".concat(u[5]):""," {").concat(u[1],"}")),u[5]=i),n&&(u[2]?(u[1]="@media ".concat(u[2]," {").concat(u[1],"}"),u[2]=n):u[2]=n),o&&(u[4]?(u[1]="@supports (".concat(u[4],") {").concat(u[1],"}"),u[4]=o):u[4]="".concat(o)),e.push(u))}},e}},7537:t=>{"use strict";t.exports=function(t){var e=t[1],n=t[3];if(!n)return e;if("function"==typeof btoa){var r=btoa(unescape(encodeURIComponent(JSON.stringify(n)))),o="sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(r),i="/*# ".concat(o," */"),a=n.sources.map((function(t){return"/*# sourceURL=".concat(n.sourceRoot||"").concat(t," */")}));return[e].concat(a).concat([i]).join("\n")}return[e].join("\n")}},4289:(t,e,n)=>{"use strict";var r=n(2215),o="function"==typeof Symbol&&"symbol"==typeof Symbol("foo"),i=Object.prototype.toString,a=Array.prototype.concat,s=Object.defineProperty,l=s&&function(){var t={};try{for(var e in s(t,"x",{enumerable:!1,value:t}),t)return!1;return t.x===t}catch(t){return!1}}(),c=function(t,e,n,r){var o;(!(e in t)||"function"==typeof(o=r)&&"[object Function]"===i.call(o)&&r())&&(l?s(t,e,{configurable:!0,enumerable:!1,value:n,writable:!0}):t[e]=n)},u=function(t,e){var n=arguments.length>2?arguments[2]:{},i=r(e);o&&(i=a.call(i,Object.getOwnPropertySymbols(e)));for(var s=0;s<i.length;s+=1)c(t,i[s],e[i[s]],n[i[s]])};u.supportsDescriptors=!!l,t.exports=u},4079:(t,e,n)=>{"use strict";var r=n(210)("%Object.getOwnPropertyDescriptor%",!0);if(r)try{r([],"length")}catch(t){r=null}t.exports=r},8091:t=>{"use strict";function e(t,e){if(null==t)throw new TypeError("Cannot convert first argument to object");for(var n=Object(t),r=1;r<arguments.length;r++){var o=arguments[r];if(null!=o)for(var i=Object.keys(Object(o)),a=0,s=i.length;a<s;a++){var l=i[a],c=Object.getOwnPropertyDescriptor(o,l);void 0!==c&&c.enumerable&&(n[l]=o[l])}}return n}t.exports={assign:e,polyfill:function(){Object.assign||Object.defineProperty(Object,"assign",{enumerable:!1,configurable:!0,writable:!0,value:e})}}},9804:t=>{var e=Object.prototype.hasOwnProperty,n=Object.prototype.toString;t.exports=function(t,r,o){if("[object Function]"!==n.call(r))throw new TypeError("iterator must be a function");var i=t.length;if(i===+i)for(var a=0;a<i;a++)r.call(o,t[a],a,t);else for(var s in t)e.call(t,s)&&r.call(o,t[s],s,t)}},7648:t=>{"use strict";var e="Function.prototype.bind called on incompatible ",n=Array.prototype.slice,r=Object.prototype.toString,o="[object Function]";t.exports=function(t){var i=this;if("function"!=typeof i||r.call(i)!==o)throw new TypeError(e+i);for(var a,s=n.call(arguments,1),l=function(){if(this instanceof a){var e=i.apply(this,s.concat(n.call(arguments)));return Object(e)===e?e:this}return i.apply(t,s.concat(n.call(arguments)))},c=Math.max(0,i.length-s.length),u=[],p=0;p<c;p++)u.push("$"+p);if(a=Function("binder","return function ("+u.join(",")+"){ return binder.apply(this,arguments); }")(l),i.prototype){var A=function(){};A.prototype=i.prototype,a.prototype=new A,A.prototype=null}return a}},8612:(t,e,n)=>{"use strict";var r=n(7648);t.exports=Function.prototype.bind||r},210:(t,e,n)=>{"use strict";var r,o=SyntaxError,i=Function,a=TypeError,s=function(t){try{return i('"use strict"; return ('+t+").constructor;")()}catch(t){}},l=Object.getOwnPropertyDescriptor;if(l)try{l({},"")}catch(t){l=null}var c=function(){throw new a},u=l?function(){try{return c}catch(t){try{return l(arguments,"callee").get}catch(t){return c}}}():c,p=n(1405)(),A=Object.getPrototypeOf||function(t){return t.__proto__},f={},d="undefined"==typeof Uint8Array?r:A(Uint8Array),h={"%AggregateError%":"undefined"==typeof AggregateError?r:AggregateError,"%Array%":Array,"%ArrayBuffer%":"undefined"==typeof ArrayBuffer?r:ArrayBuffer,"%ArrayIteratorPrototype%":p?A([][Symbol.iterator]()):r,"%AsyncFromSyncIteratorPrototype%":r,"%AsyncFunction%":f,"%AsyncGenerator%":f,"%AsyncGeneratorFunction%":f,"%AsyncIteratorPrototype%":f,"%Atomics%":"undefined"==typeof Atomics?r:Atomics,"%BigInt%":"undefined"==typeof BigInt?r:BigInt,"%Boolean%":Boolean,"%DataView%":"undefined"==typeof DataView?r:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":Error,"%eval%":eval,"%EvalError%":EvalError,"%Float32Array%":"undefined"==typeof Float32Array?r:Float32Array,"%Float64Array%":"undefined"==typeof Float64Array?r:Float64Array,"%FinalizationRegistry%":"undefined"==typeof FinalizationRegistry?r:FinalizationRegistry,"%Function%":i,"%GeneratorFunction%":f,"%Int8Array%":"undefined"==typeof Int8Array?r:Int8Array,"%Int16Array%":"undefined"==typeof Int16Array?r:Int16Array,"%Int32Array%":"undefined"==typeof Int32Array?r:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":p?A(A([][Symbol.iterator]())):r,"%JSON%":"object"==typeof JSON?JSON:r,"%Map%":"undefined"==typeof Map?r:Map,"%MapIteratorPrototype%":"undefined"!=typeof Map&&p?A((new Map)[Symbol.iterator]()):r,"%Math%":Math,"%Number%":Number,"%Object%":Object,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":"undefined"==typeof Promise?r:Promise,"%Proxy%":"undefined"==typeof Proxy?r:Proxy,"%RangeError%":RangeError,"%ReferenceError%":ReferenceError,"%Reflect%":"undefined"==typeof Reflect?r:Reflect,"%RegExp%":RegExp,"%Set%":"undefined"==typeof Set?r:Set,"%SetIteratorPrototype%":"undefined"!=typeof Set&&p?A((new Set)[Symbol.iterator]()):r,"%SharedArrayBuffer%":"undefined"==typeof SharedArrayBuffer?r:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":p?A(""[Symbol.iterator]()):r,"%Symbol%":p?Symbol:r,"%SyntaxError%":o,"%ThrowTypeError%":u,"%TypedArray%":d,"%TypeError%":a,"%Uint8Array%":"undefined"==typeof Uint8Array?r:Uint8Array,"%Uint8ClampedArray%":"undefined"==typeof Uint8ClampedArray?r:Uint8ClampedArray,"%Uint16Array%":"undefined"==typeof Uint16Array?r:Uint16Array,"%Uint32Array%":"undefined"==typeof Uint32Array?r:Uint32Array,"%URIError%":URIError,"%WeakMap%":"undefined"==typeof WeakMap?r:WeakMap,"%WeakRef%":"undefined"==typeof WeakRef?r:WeakRef,"%WeakSet%":"undefined"==typeof WeakSet?r:WeakSet},m=function t(e){var n;if("%AsyncFunction%"===e)n=s("async function () {}");else if("%GeneratorFunction%"===e)n=s("function* () {}");else if("%AsyncGeneratorFunction%"===e)n=s("async function* () {}");else if("%AsyncGenerator%"===e){var r=t("%AsyncGeneratorFunction%");r&&(n=r.prototype)}else if("%AsyncIteratorPrototype%"===e){var o=t("%AsyncGenerator%");o&&(n=A(o.prototype))}return h[e]=n,n},g={"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},v=n(8612),y=n(7642),b=v.call(Function.call,Array.prototype.concat),C=v.call(Function.apply,Array.prototype.splice),w=v.call(Function.call,String.prototype.replace),x=v.call(Function.call,String.prototype.slice),E=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,S=/\\(\\)?/g,T=function(t){var e=x(t,0,1),n=x(t,-1);if("%"===e&&"%"!==n)throw new o("invalid intrinsic syntax, expected closing `%`");if("%"===n&&"%"!==e)throw new o("invalid intrinsic syntax, expected opening `%`");var r=[];return w(t,E,(function(t,e,n,o){r[r.length]=n?w(o,S,"$1"):e||t})),r},I=function(t,e){var n,r=t;if(y(g,r)&&(r="%"+(n=g[r])[0]+"%"),y(h,r)){var i=h[r];if(i===f&&(i=m(r)),void 0===i&&!e)throw new a("intrinsic "+t+" exists, but is not available. Please file an issue!");return{alias:n,name:r,value:i}}throw new o("intrinsic "+t+" does not exist!")};t.exports=function(t,e){if("string"!=typeof t||0===t.length)throw new a("intrinsic name must be a non-empty string");if(arguments.length>1&&"boolean"!=typeof e)throw new a('"allowMissing" argument must be a boolean');var n=T(t),r=n.length>0?n[0]:"",i=I("%"+r+"%",e),s=i.name,c=i.value,u=!1,p=i.alias;p&&(r=p[0],C(n,b([0,1],p)));for(var A=1,f=!0;A<n.length;A+=1){var d=n[A],m=x(d,0,1),g=x(d,-1);if(('"'===m||"'"===m||"`"===m||'"'===g||"'"===g||"`"===g)&&m!==g)throw new o("property names with quotes must have matching quotes");if("constructor"!==d&&f||(u=!0),y(h,s="%"+(r+="."+d)+"%"))c=h[s];else if(null!=c){if(!(d in c)){if(!e)throw new a("base intrinsic for "+t+" exists, but the property is not available.");return}if(l&&A+1>=n.length){var v=l(c,d);c=(f=!!v)&&"get"in v&&!("originalValue"in v.get)?v.get:c[d]}else f=y(c,d),c=c[d];f&&!u&&(h[s]=c)}}return c}},840:(t,e,n)=>{var r;!function(o,i,a,s){"use strict";var l,c=["","webkit","Moz","MS","ms","o"],u=i.createElement("div"),p=Math.round,A=Math.abs,f=Date.now;function d(t,e,n){return setTimeout(C(t,n),e)}function h(t,e,n){return!!Array.isArray(t)&&(m(t,n[e],n),!0)}function m(t,e,n){var r;if(t)if(t.forEach)t.forEach(e,n);else if(t.length!==s)for(r=0;r<t.length;)e.call(n,t[r],r,t),r++;else for(r in t)t.hasOwnProperty(r)&&e.call(n,t[r],r,t)}function g(t,e,n){var r="DEPRECATED METHOD: "+e+"\n"+n+" AT \n";return function(){var e=new Error("get-stack-trace"),n=e&&e.stack?e.stack.replace(/^[^\(]+?[\n$]/gm,"").replace(/^\s+at\s+/gm,"").replace(/^Object.<anonymous>\s*\(/gm,"{anonymous}()@"):"Unknown Stack Trace",i=o.console&&(o.console.warn||o.console.log);return i&&i.call(o.console,r,n),t.apply(this,arguments)}}l="function"!=typeof Object.assign?function(t){if(t===s||null===t)throw new TypeError("Cannot convert undefined or null to object");for(var e=Object(t),n=1;n<arguments.length;n++){var r=arguments[n];if(r!==s&&null!==r)for(var o in r)r.hasOwnProperty(o)&&(e[o]=r[o])}return e}:Object.assign;var v=g((function(t,e,n){for(var r=Object.keys(e),o=0;o<r.length;)(!n||n&&t[r[o]]===s)&&(t[r[o]]=e[r[o]]),o++;return t}),"extend","Use `assign`."),y=g((function(t,e){return v(t,e,!0)}),"merge","Use `assign`.");function b(t,e,n){var r,o=e.prototype;(r=t.prototype=Object.create(o)).constructor=t,r._super=o,n&&l(r,n)}function C(t,e){return function(){return t.apply(e,arguments)}}function w(t,e){return"function"==typeof t?t.apply(e&&e[0]||s,e):t}function x(t,e){return t===s?e:t}function E(t,e,n){m(B(e),(function(e){t.addEventListener(e,n,!1)}))}function S(t,e,n){m(B(e),(function(e){t.removeEventListener(e,n,!1)}))}function T(t,e){for(;t;){if(t==e)return!0;t=t.parentNode}return!1}function I(t,e){return t.indexOf(e)>-1}function B(t){return t.trim().split(/\s+/g)}function k(t,e,n){if(t.indexOf&&!n)return t.indexOf(e);for(var r=0;r<t.length;){if(n&&t[r][n]==e||!n&&t[r]===e)return r;r++}return-1}function _(t){return Array.prototype.slice.call(t,0)}function O(t,e,n){for(var r=[],o=[],i=0;i<t.length;){var a=e?t[i][e]:t[i];k(o,a)<0&&r.push(t[i]),o[i]=a,i++}return n&&(r=e?r.sort((function(t,n){return t[e]>n[e]})):r.sort()),r}function N(t,e){for(var n,r,o=e[0].toUpperCase()+e.slice(1),i=0;i<c.length;){if((r=(n=c[i])?n+o:e)in t)return r;i++}return s}var M=1;function j(t){var e=t.ownerDocument||t;return e.defaultView||e.parentWindow||o}var D="ontouchstart"in o,P=N(o,"PointerEvent")!==s,L=D&&/mobile|tablet|ip(ad|hone|od)|android/i.test(navigator.userAgent),F="touch",z="mouse",$=24,R=["x","y"],U=["clientX","clientY"];function G(t,e){var n=this;this.manager=t,this.callback=e,this.element=t.element,this.target=t.options.inputTarget,this.domHandler=function(e){w(t.options.enable,[t])&&n.handler(e)},this.init()}function Q(t,e,n){var r=n.pointers.length,o=n.changedPointers.length,i=1&e&&r-o==0,a=12&e&&r-o==0;n.isFirst=!!i,n.isFinal=!!a,i&&(t.session={}),n.eventType=e,function(t,e){var n=t.session,r=e.pointers,o=r.length;n.firstInput||(n.firstInput=Y(e));o>1&&!n.firstMultiple?n.firstMultiple=Y(e):1===o&&(n.firstMultiple=!1);var i=n.firstInput,a=n.firstMultiple,l=a?a.center:i.center,c=e.center=H(r);e.timeStamp=f(),e.deltaTime=e.timeStamp-i.timeStamp,e.angle=Z(l,c),e.distance=q(l,c),function(t,e){var n=e.center,r=t.offsetDelta||{},o=t.prevDelta||{},i=t.prevInput||{};1!==e.eventType&&4!==i.eventType||(o=t.prevDelta={x:i.deltaX||0,y:i.deltaY||0},r=t.offsetDelta={x:n.x,y:n.y});e.deltaX=o.x+(n.x-r.x),e.deltaY=o.y+(n.y-r.y)}(n,e),e.offsetDirection=V(e.deltaX,e.deltaY);var u=W(e.deltaTime,e.deltaX,e.deltaY);e.overallVelocityX=u.x,e.overallVelocityY=u.y,e.overallVelocity=A(u.x)>A(u.y)?u.x:u.y,e.scale=a?(p=a.pointers,d=r,q(d[0],d[1],U)/q(p[0],p[1],U)):1,e.rotation=a?function(t,e){return Z(e[1],e[0],U)+Z(t[1],t[0],U)}(a.pointers,r):0,e.maxPointers=n.prevInput?e.pointers.length>n.prevInput.maxPointers?e.pointers.length:n.prevInput.maxPointers:e.pointers.length,function(t,e){var n,r,o,i,a=t.lastInterval||e,l=e.timeStamp-a.timeStamp;if(8!=e.eventType&&(l>25||a.velocity===s)){var c=e.deltaX-a.deltaX,u=e.deltaY-a.deltaY,p=W(l,c,u);r=p.x,o=p.y,n=A(p.x)>A(p.y)?p.x:p.y,i=V(c,u),t.lastInterval=e}else n=a.velocity,r=a.velocityX,o=a.velocityY,i=a.direction;e.velocity=n,e.velocityX=r,e.velocityY=o,e.direction=i}(n,e);var p,d;var h=t.element;T(e.srcEvent.target,h)&&(h=e.srcEvent.target);e.target=h}(t,n),t.emit("hammer.input",n),t.recognize(n),t.session.prevInput=n}function Y(t){for(var e=[],n=0;n<t.pointers.length;)e[n]={clientX:p(t.pointers[n].clientX),clientY:p(t.pointers[n].clientY)},n++;return{timeStamp:f(),pointers:e,center:H(e),deltaX:t.deltaX,deltaY:t.deltaY}}function H(t){var e=t.length;if(1===e)return{x:p(t[0].clientX),y:p(t[0].clientY)};for(var n=0,r=0,o=0;o<e;)n+=t[o].clientX,r+=t[o].clientY,o++;return{x:p(n/e),y:p(r/e)}}function W(t,e,n){return{x:e/t||0,y:n/t||0}}function V(t,e){return t===e?1:A(t)>=A(e)?t<0?2:4:e<0?8:16}function q(t,e,n){n||(n=R);var r=e[n[0]]-t[n[0]],o=e[n[1]]-t[n[1]];return Math.sqrt(r*r+o*o)}function Z(t,e,n){n||(n=R);var r=e[n[0]]-t[n[0]],o=e[n[1]]-t[n[1]];return 180*Math.atan2(o,r)/Math.PI}G.prototype={handler:function(){},init:function(){this.evEl&&E(this.element,this.evEl,this.domHandler),this.evTarget&&E(this.target,this.evTarget,this.domHandler),this.evWin&&E(j(this.element),this.evWin,this.domHandler)},destroy:function(){this.evEl&&S(this.element,this.evEl,this.domHandler),this.evTarget&&S(this.target,this.evTarget,this.domHandler),this.evWin&&S(j(this.element),this.evWin,this.domHandler)}};var X={mousedown:1,mousemove:2,mouseup:4},J="mousedown",K="mousemove mouseup";function tt(){this.evEl=J,this.evWin=K,this.pressed=!1,G.apply(this,arguments)}b(tt,G,{handler:function(t){var e=X[t.type];1&e&&0===t.button&&(this.pressed=!0),2&e&&1!==t.which&&(e=4),this.pressed&&(4&e&&(this.pressed=!1),this.callback(this.manager,e,{pointers:[t],changedPointers:[t],pointerType:z,srcEvent:t}))}});var et={pointerdown:1,pointermove:2,pointerup:4,pointercancel:8,pointerout:8},nt={2:F,3:"pen",4:z,5:"kinect"},rt="pointerdown",ot="pointermove pointerup pointercancel";function it(){this.evEl=rt,this.evWin=ot,G.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}o.MSPointerEvent&&!o.PointerEvent&&(rt="MSPointerDown",ot="MSPointerMove MSPointerUp MSPointerCancel"),b(it,G,{handler:function(t){var e=this.store,n=!1,r=t.type.toLowerCase().replace("ms",""),o=et[r],i=nt[t.pointerType]||t.pointerType,a=i==F,s=k(e,t.pointerId,"pointerId");1&o&&(0===t.button||a)?s<0&&(e.push(t),s=e.length-1):12&o&&(n=!0),s<0||(e[s]=t,this.callback(this.manager,o,{pointers:e,changedPointers:[t],pointerType:i,srcEvent:t}),n&&e.splice(s,1))}});var at={touchstart:1,touchmove:2,touchend:4,touchcancel:8},st="touchstart",lt="touchstart touchmove touchend touchcancel";function ct(){this.evTarget=st,this.evWin=lt,this.started=!1,G.apply(this,arguments)}function ut(t,e){var n=_(t.touches),r=_(t.changedTouches);return 12&e&&(n=O(n.concat(r),"identifier",!0)),[n,r]}b(ct,G,{handler:function(t){var e=at[t.type];if(1===e&&(this.started=!0),this.started){var n=ut.call(this,t,e);12&e&&n[0].length-n[1].length==0&&(this.started=!1),this.callback(this.manager,e,{pointers:n[0],changedPointers:n[1],pointerType:F,srcEvent:t})}}});var pt={touchstart:1,touchmove:2,touchend:4,touchcancel:8},At="touchstart touchmove touchend touchcancel";function ft(){this.evTarget=At,this.targetIds={},G.apply(this,arguments)}function dt(t,e){var n=_(t.touches),r=this.targetIds;if(3&e&&1===n.length)return r[n[0].identifier]=!0,[n,n];var o,i,a=_(t.changedTouches),s=[],l=this.target;if(i=n.filter((function(t){return T(t.target,l)})),1===e)for(o=0;o<i.length;)r[i[o].identifier]=!0,o++;for(o=0;o<a.length;)r[a[o].identifier]&&s.push(a[o]),12&e&&delete r[a[o].identifier],o++;return s.length?[O(i.concat(s),"identifier",!0),s]:void 0}b(ft,G,{handler:function(t){var e=pt[t.type],n=dt.call(this,t,e);n&&this.callback(this.manager,e,{pointers:n[0],changedPointers:n[1],pointerType:F,srcEvent:t})}});function ht(){G.apply(this,arguments);var t=C(this.handler,this);this.touch=new ft(this.manager,t),this.mouse=new tt(this.manager,t),this.primaryTouch=null,this.lastTouches=[]}function mt(t,e){1&t?(this.primaryTouch=e.changedPointers[0].identifier,gt.call(this,e)):12&t&&gt.call(this,e)}function gt(t){var e=t.changedPointers[0];if(e.identifier===this.primaryTouch){var n={x:e.clientX,y:e.clientY};this.lastTouches.push(n);var r=this.lastTouches;setTimeout((function(){var t=r.indexOf(n);t>-1&&r.splice(t,1)}),2500)}}function vt(t){for(var e=t.srcEvent.clientX,n=t.srcEvent.clientY,r=0;r<this.lastTouches.length;r++){var o=this.lastTouches[r],i=Math.abs(e-o.x),a=Math.abs(n-o.y);if(i<=25&&a<=25)return!0}return!1}b(ht,G,{handler:function(t,e,n){var r=n.pointerType==F,o=n.pointerType==z;if(!(o&&n.sourceCapabilities&&n.sourceCapabilities.firesTouchEvents)){if(r)mt.call(this,e,n);else if(o&&vt.call(this,n))return;this.callback(t,e,n)}},destroy:function(){this.touch.destroy(),this.mouse.destroy()}});var yt=N(u.style,"touchAction"),bt=yt!==s,Ct="compute",wt="auto",xt="manipulation",Et="none",St="pan-x",Tt="pan-y",It=function(){if(!bt)return!1;var t={},e=o.CSS&&o.CSS.supports;return["auto","manipulation","pan-y","pan-x","pan-x pan-y","none"].forEach((function(n){t[n]=!e||o.CSS.supports("touch-action",n)})),t}();function Bt(t,e){this.manager=t,this.set(e)}Bt.prototype={set:function(t){t==Ct&&(t=this.compute()),bt&&this.manager.element.style&&It[t]&&(this.manager.element.style[yt]=t),this.actions=t.toLowerCase().trim()},update:function(){this.set(this.manager.options.touchAction)},compute:function(){var t=[];return m(this.manager.recognizers,(function(e){w(e.options.enable,[e])&&(t=t.concat(e.getTouchAction()))})),function(t){if(I(t,Et))return Et;var e=I(t,St),n=I(t,Tt);if(e&&n)return Et;if(e||n)return e?St:Tt;if(I(t,xt))return xt;return wt}(t.join(" "))},preventDefaults:function(t){var e=t.srcEvent,n=t.offsetDirection;if(this.manager.session.prevented)e.preventDefault();else{var r=this.actions,o=I(r,Et)&&!It.none,i=I(r,Tt)&&!It["pan-y"],a=I(r,St)&&!It["pan-x"];if(o){var s=1===t.pointers.length,l=t.distance<2,c=t.deltaTime<250;if(s&&l&&c)return}if(!a||!i)return o||i&&6&n||a&&n&$?this.preventSrc(e):void 0}},preventSrc:function(t){this.manager.session.prevented=!0,t.preventDefault()}};var kt=32;function _t(t){this.options=l({},this.defaults,t||{}),this.id=M++,this.manager=null,this.options.enable=x(this.options.enable,!0),this.state=1,this.simultaneous={},this.requireFail=[]}function Ot(t){return 16&t?"cancel":8&t?"end":4&t?"move":2&t?"start":""}function Nt(t){return 16==t?"down":8==t?"up":2==t?"left":4==t?"right":""}function Mt(t,e){var n=e.manager;return n?n.get(t):t}function jt(){_t.apply(this,arguments)}function Dt(){jt.apply(this,arguments),this.pX=null,this.pY=null}function Pt(){jt.apply(this,arguments)}function Lt(){_t.apply(this,arguments),this._timer=null,this._input=null}function Ft(){jt.apply(this,arguments)}function zt(){jt.apply(this,arguments)}function $t(){_t.apply(this,arguments),this.pTime=!1,this.pCenter=!1,this._timer=null,this._input=null,this.count=0}function Rt(t,e){return(e=e||{}).recognizers=x(e.recognizers,Rt.defaults.preset),new Ut(t,e)}_t.prototype={defaults:{},set:function(t){return l(this.options,t),this.manager&&this.manager.touchAction.update(),this},recognizeWith:function(t){if(h(t,"recognizeWith",this))return this;var e=this.simultaneous;return e[(t=Mt(t,this)).id]||(e[t.id]=t,t.recognizeWith(this)),this},dropRecognizeWith:function(t){return h(t,"dropRecognizeWith",this)||(t=Mt(t,this),delete this.simultaneous[t.id]),this},requireFailure:function(t){if(h(t,"requireFailure",this))return this;var e=this.requireFail;return-1===k(e,t=Mt(t,this))&&(e.push(t),t.requireFailure(this)),this},dropRequireFailure:function(t){if(h(t,"dropRequireFailure",this))return this;t=Mt(t,this);var e=k(this.requireFail,t);return e>-1&&this.requireFail.splice(e,1),this},hasRequireFailures:function(){return this.requireFail.length>0},canRecognizeWith:function(t){return!!this.simultaneous[t.id]},emit:function(t){var e=this,n=this.state;function r(n){e.manager.emit(n,t)}n<8&&r(e.options.event+Ot(n)),r(e.options.event),t.additionalEvent&&r(t.additionalEvent),n>=8&&r(e.options.event+Ot(n))},tryEmit:function(t){if(this.canEmit())return this.emit(t);this.state=kt},canEmit:function(){for(var t=0;t<this.requireFail.length;){if(!(33&this.requireFail[t].state))return!1;t++}return!0},recognize:function(t){var e=l({},t);if(!w(this.options.enable,[this,e]))return this.reset(),void(this.state=kt);56&this.state&&(this.state=1),this.state=this.process(e),30&this.state&&this.tryEmit(e)},process:function(t){},getTouchAction:function(){},reset:function(){}},b(jt,_t,{defaults:{pointers:1},attrTest:function(t){var e=this.options.pointers;return 0===e||t.pointers.length===e},process:function(t){var e=this.state,n=t.eventType,r=6&e,o=this.attrTest(t);return r&&(8&n||!o)?16|e:r||o?4&n?8|e:2&e?4|e:2:kt}}),b(Dt,jt,{defaults:{event:"pan",threshold:10,pointers:1,direction:30},getTouchAction:function(){var t=this.options.direction,e=[];return 6&t&&e.push(Tt),t&$&&e.push(St),e},directionTest:function(t){var e=this.options,n=!0,r=t.distance,o=t.direction,i=t.deltaX,a=t.deltaY;return o&e.direction||(6&e.direction?(o=0===i?1:i<0?2:4,n=i!=this.pX,r=Math.abs(t.deltaX)):(o=0===a?1:a<0?8:16,n=a!=this.pY,r=Math.abs(t.deltaY))),t.direction=o,n&&r>e.threshold&&o&e.direction},attrTest:function(t){return jt.prototype.attrTest.call(this,t)&&(2&this.state||!(2&this.state)&&this.directionTest(t))},emit:function(t){this.pX=t.deltaX,this.pY=t.deltaY;var e=Nt(t.direction);e&&(t.additionalEvent=this.options.event+e),this._super.emit.call(this,t)}}),b(Pt,jt,{defaults:{event:"pinch",threshold:0,pointers:2},getTouchAction:function(){return[Et]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.scale-1)>this.options.threshold||2&this.state)},emit:function(t){if(1!==t.scale){var e=t.scale<1?"in":"out";t.additionalEvent=this.options.event+e}this._super.emit.call(this,t)}}),b(Lt,_t,{defaults:{event:"press",pointers:1,time:251,threshold:9},getTouchAction:function(){return[wt]},process:function(t){var e=this.options,n=t.pointers.length===e.pointers,r=t.distance<e.threshold,o=t.deltaTime>e.time;if(this._input=t,!r||!n||12&t.eventType&&!o)this.reset();else if(1&t.eventType)this.reset(),this._timer=d((function(){this.state=8,this.tryEmit()}),e.time,this);else if(4&t.eventType)return 8;return kt},reset:function(){clearTimeout(this._timer)},emit:function(t){8===this.state&&(t&&4&t.eventType?this.manager.emit(this.options.event+"up",t):(this._input.timeStamp=f(),this.manager.emit(this.options.event,this._input)))}}),b(Ft,jt,{defaults:{event:"rotate",threshold:0,pointers:2},getTouchAction:function(){return[Et]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.rotation)>this.options.threshold||2&this.state)}}),b(zt,jt,{defaults:{event:"swipe",threshold:10,velocity:.3,direction:30,pointers:1},getTouchAction:function(){return Dt.prototype.getTouchAction.call(this)},attrTest:function(t){var e,n=this.options.direction;return 30&n?e=t.overallVelocity:6&n?e=t.overallVelocityX:n&$&&(e=t.overallVelocityY),this._super.attrTest.call(this,t)&&n&t.offsetDirection&&t.distance>this.options.threshold&&t.maxPointers==this.options.pointers&&A(e)>this.options.velocity&&4&t.eventType},emit:function(t){var e=Nt(t.offsetDirection);e&&this.manager.emit(this.options.event+e,t),this.manager.emit(this.options.event,t)}}),b($t,_t,{defaults:{event:"tap",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},getTouchAction:function(){return[xt]},process:function(t){var e=this.options,n=t.pointers.length===e.pointers,r=t.distance<e.threshold,o=t.deltaTime<e.time;if(this.reset(),1&t.eventType&&0===this.count)return this.failTimeout();if(r&&o&&n){if(4!=t.eventType)return this.failTimeout();var i=!this.pTime||t.timeStamp-this.pTime<e.interval,a=!this.pCenter||q(this.pCenter,t.center)<e.posThreshold;if(this.pTime=t.timeStamp,this.pCenter=t.center,a&&i?this.count+=1:this.count=1,this._input=t,0===this.count%e.taps)return this.hasRequireFailures()?(this._timer=d((function(){this.state=8,this.tryEmit()}),e.interval,this),2):8}return kt},failTimeout:function(){return this._timer=d((function(){this.state=kt}),this.options.interval,this),kt},reset:function(){clearTimeout(this._timer)},emit:function(){8==this.state&&(this._input.tapCount=this.count,this.manager.emit(this.options.event,this._input))}}),Rt.VERSION="2.0.7",Rt.defaults={domEvents:!1,touchAction:Ct,enable:!0,inputTarget:null,inputClass:null,preset:[[Ft,{enable:!1}],[Pt,{enable:!1},["rotate"]],[zt,{direction:6}],[Dt,{direction:6},["swipe"]],[$t],[$t,{event:"doubletap",taps:2},["tap"]],[Lt]],cssProps:{userSelect:"none",touchSelect:"none",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}};function Ut(t,e){var n;this.options=l({},Rt.defaults,e||{}),this.options.inputTarget=this.options.inputTarget||t,this.handlers={},this.session={},this.recognizers=[],this.oldCssProps={},this.element=t,this.input=new((n=this).options.inputClass||(P?it:L?ft:D?ht:tt))(n,Q),this.touchAction=new Bt(this,this.options.touchAction),Gt(this,!0),m(this.options.recognizers,(function(t){var e=this.add(new t[0](t[1]));t[2]&&e.recognizeWith(t[2]),t[3]&&e.requireFailure(t[3])}),this)}function Gt(t,e){var n,r=t.element;r.style&&(m(t.options.cssProps,(function(o,i){n=N(r.style,i),e?(t.oldCssProps[n]=r.style[n],r.style[n]=o):r.style[n]=t.oldCssProps[n]||""})),e||(t.oldCssProps={}))}Ut.prototype={set:function(t){return l(this.options,t),t.touchAction&&this.touchAction.update(),t.inputTarget&&(this.input.destroy(),this.input.target=t.inputTarget,this.input.init()),this},stop:function(t){this.session.stopped=t?2:1},recognize:function(t){var e=this.session;if(!e.stopped){var n;this.touchAction.preventDefaults(t);var r=this.recognizers,o=e.curRecognizer;(!o||o&&8&o.state)&&(o=e.curRecognizer=null);for(var i=0;i<r.length;)n=r[i],2===e.stopped||o&&n!=o&&!n.canRecognizeWith(o)?n.reset():n.recognize(t),!o&&14&n.state&&(o=e.curRecognizer=n),i++}},get:function(t){if(t instanceof _t)return t;for(var e=this.recognizers,n=0;n<e.length;n++)if(e[n].options.event==t)return e[n];return null},add:function(t){if(h(t,"add",this))return this;var e=this.get(t.options.event);return e&&this.remove(e),this.recognizers.push(t),t.manager=this,this.touchAction.update(),t},remove:function(t){if(h(t,"remove",this))return this;if(t=this.get(t)){var e=this.recognizers,n=k(e,t);-1!==n&&(e.splice(n,1),this.touchAction.update())}return this},on:function(t,e){if(t!==s&&e!==s){var n=this.handlers;return m(B(t),(function(t){n[t]=n[t]||[],n[t].push(e)})),this}},off:function(t,e){if(t!==s){var n=this.handlers;return m(B(t),(function(t){e?n[t]&&n[t].splice(k(n[t],e),1):delete n[t]})),this}},emit:function(t,e){this.options.domEvents&&function(t,e){var n=i.createEvent("Event");n.initEvent(t,!0,!0),n.gesture=e,e.target.dispatchEvent(n)}(t,e);var n=this.handlers[t]&&this.handlers[t].slice();if(n&&n.length){e.type=t,e.preventDefault=function(){e.srcEvent.preventDefault()};for(var r=0;r<n.length;)n[r](e),r++}},destroy:function(){this.element&&Gt(this,!1),this.handlers={},this.session={},this.input.destroy(),this.element=null}},l(Rt,{INPUT_START:1,INPUT_MOVE:2,INPUT_END:4,INPUT_CANCEL:8,STATE_POSSIBLE:1,STATE_BEGAN:2,STATE_CHANGED:4,STATE_ENDED:8,STATE_RECOGNIZED:8,STATE_CANCELLED:16,STATE_FAILED:kt,DIRECTION_NONE:1,DIRECTION_LEFT:2,DIRECTION_RIGHT:4,DIRECTION_UP:8,DIRECTION_DOWN:16,DIRECTION_HORIZONTAL:6,DIRECTION_VERTICAL:$,DIRECTION_ALL:30,Manager:Ut,Input:G,TouchAction:Bt,TouchInput:ft,MouseInput:tt,PointerEventInput:it,TouchMouseInput:ht,SingleTouchInput:ct,Recognizer:_t,AttrRecognizer:jt,Tap:$t,Pan:Dt,Swipe:zt,Pinch:Pt,Rotate:Ft,Press:Lt,on:E,off:S,each:m,merge:y,extend:v,assign:l,inherit:b,bindFn:C,prefixed:N}),(void 0!==o?o:"undefined"!=typeof self?self:{}).Hammer=Rt,(r=function(){return Rt}.call(e,n,e,t))===s||(t.exports=r)}(window,document)},1405:(t,e,n)=>{"use strict";var r="undefined"!=typeof Symbol&&Symbol,o=n(5419);t.exports=function(){return"function"==typeof r&&("function"==typeof Symbol&&("symbol"==typeof r("foo")&&("symbol"==typeof Symbol("bar")&&o())))}},5419:t=>{"use strict";t.exports=function(){if("function"!=typeof Symbol||"function"!=typeof Object.getOwnPropertySymbols)return!1;if("symbol"==typeof Symbol.iterator)return!0;var t={},e=Symbol("test"),n=Object(e);if("string"==typeof e)return!1;if("[object Symbol]"!==Object.prototype.toString.call(e))return!1;if("[object Symbol]"!==Object.prototype.toString.call(n))return!1;for(e in t[e]=42,t)return!1;if("function"==typeof Object.keys&&0!==Object.keys(t).length)return!1;if("function"==typeof Object.getOwnPropertyNames&&0!==Object.getOwnPropertyNames(t).length)return!1;var r=Object.getOwnPropertySymbols(t);if(1!==r.length||r[0]!==e)return!1;if(!Object.prototype.propertyIsEnumerable.call(t,e))return!1;if("function"==typeof Object.getOwnPropertyDescriptor){var o=Object.getOwnPropertyDescriptor(t,e);if(42!==o.value||!0!==o.enumerable)return!1}return!0}},6410:(t,e,n)=>{"use strict";var r=n(5419);t.exports=function(){return r()&&!!Symbol.toStringTag}},7642:(t,e,n)=>{"use strict";var r=n(8612);t.exports=r.call(Function.call,Object.prototype.hasOwnProperty)},2584:(t,e,n)=>{"use strict";var r=n(6410)(),o=n(1924)("Object.prototype.toString"),i=function(t){return!(r&&t&&"object"==typeof t&&Symbol.toStringTag in t)&&"[object Arguments]"===o(t)},a=function(t){return!!i(t)||null!==t&&"object"==typeof t&&"number"==typeof t.length&&t.length>=0&&"[object Array]"!==o(t)&&"[object Function]"===o(t.callee)},s=function(){return i(arguments)}();i.isLegacyArguments=a,t.exports=s?i:a},8662:(t,e,n)=>{"use strict";var r,o=Object.prototype.toString,i=Function.prototype.toString,a=/^\s*(?:function)?\*/,s=n(6410)(),l=Object.getPrototypeOf;t.exports=function(t){if("function"!=typeof t)return!1;if(a.test(i.call(t)))return!0;if(!s)return"[object GeneratorFunction]"===o.call(t);if(!l)return!1;if(void 0===r){var e=function(){if(!s)return!1;try{return Function("return function*() {}")()}catch(t){}}();r=!!e&&l(e)}return l(t)===r}},8611:t=>{"use strict";t.exports=function(t){return t!=t}},360:(t,e,n)=>{"use strict";var r=n(5559),o=n(4289),i=n(8611),a=n(9415),s=n(3194),l=r(a(),Number);o(l,{getPolyfill:a,implementation:i,shim:s}),t.exports=l},9415:(t,e,n)=>{"use strict";var r=n(8611);t.exports=function(){return Number.isNaN&&Number.isNaN(NaN)&&!Number.isNaN("a")?Number.isNaN:r}},3194:(t,e,n)=>{"use strict";var r=n(4289),o=n(9415);t.exports=function(){var t=o();return r(Number,{isNaN:t},{isNaN:function(){return Number.isNaN!==t}}),t}},5692:(t,e,n)=>{"use strict";var r=n(9804),o=n(6314),i=n(1924),a=i("Object.prototype.toString"),s=n(6410)(),l="undefined"==typeof globalThis?n.g:globalThis,c=o(),u=i("Array.prototype.indexOf",!0)||function(t,e){for(var n=0;n<t.length;n+=1)if(t[n]===e)return n;return-1},p=i("String.prototype.slice"),A={},f=n(4079),d=Object.getPrototypeOf;s&&f&&d&&r(c,(function(t){var e=new l[t];if(Symbol.toStringTag in e){var n=d(e),r=f(n,Symbol.toStringTag);if(!r){var o=d(n);r=f(o,Symbol.toStringTag)}A[t]=r.get}}));t.exports=function(t){if(!t||"object"!=typeof t)return!1;if(!s||!(Symbol.toStringTag in t)){var e=p(a(t),8,-1);return u(c,e)>-1}return!!f&&function(t){var e=!1;return r(A,(function(n,r){if(!e)try{e=n.call(t)===r}catch(t){}})),e}(t)}},9208:(t,e,n)=>{var r="__lodash_hash_undefined__",o="[object Function]",i="[object GeneratorFunction]",a=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,s=/^\w*$/,l=/^\./,c=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,u=/\\(\\)?/g,p=/^\[object .+?Constructor\]$/,A="object"==typeof n.g&&n.g&&n.g.Object===Object&&n.g,f="object"==typeof self&&self&&self.Object===Object&&self,d=A||f||Function("return this")();var h,m=Array.prototype,g=Function.prototype,v=Object.prototype,y=d["__core-js_shared__"],b=(h=/[^.]+$/.exec(y&&y.keys&&y.keys.IE_PROTO||""))?"Symbol(src)_1."+h:"",C=g.toString,w=v.hasOwnProperty,x=v.toString,E=RegExp("^"+C.call(w).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),S=d.Symbol,T=m.splice,I=F(d,"Map"),B=F(Object,"create"),k=S?S.prototype:void 0,_=k?k.toString:void 0;function O(t){var e=-1,n=t?t.length:0;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}function N(t){var e=-1,n=t?t.length:0;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}function M(t){var e=-1,n=t?t.length:0;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}function j(t,e){for(var n,r,o=t.length;o--;)if((n=t[o][0])===(r=e)||n!=n&&r!=r)return o;return-1}function D(t,e){var n;e=function(t,e){if(U(t))return!1;var n=typeof t;if("number"==n||"symbol"==n||"boolean"==n||null==t||Q(t))return!0;return s.test(t)||!a.test(t)||null!=e&&t in Object(e)}(e,t)?[e]:U(n=e)?n:z(n);for(var r=0,o=e.length;null!=t&&r<o;)t=t[$(e[r++])];return r&&r==o?t:void 0}function P(t){if(!G(t)||(e=t,b&&b in e))return!1;var e,n=function(t){var e=G(t)?x.call(t):"";return e==o||e==i}(t)||function(t){var e=!1;if(null!=t&&"function"!=typeof t.toString)try{e=!!(t+"")}catch(t){}return e}(t)?E:p;return n.test(function(t){if(null!=t){try{return C.call(t)}catch(t){}try{return t+""}catch(t){}}return""}(t))}function L(t,e){var n,r,o=t.__data__;return("string"==(r=typeof(n=e))||"number"==r||"symbol"==r||"boolean"==r?"__proto__"!==n:null===n)?o["string"==typeof e?"string":"hash"]:o.map}function F(t,e){var n=function(t,e){return null==t?void 0:t[e]}(t,e);return P(n)?n:void 0}O.prototype.clear=function(){this.__data__=B?B(null):{}},O.prototype.delete=function(t){return this.has(t)&&delete this.__data__[t]},O.prototype.get=function(t){var e=this.__data__;if(B){var n=e[t];return n===r?void 0:n}return w.call(e,t)?e[t]:void 0},O.prototype.has=function(t){var e=this.__data__;return B?void 0!==e[t]:w.call(e,t)},O.prototype.set=function(t,e){return this.__data__[t]=B&&void 0===e?r:e,this},N.prototype.clear=function(){this.__data__=[]},N.prototype.delete=function(t){var e=this.__data__,n=j(e,t);return!(n<0)&&(n==e.length-1?e.pop():T.call(e,n,1),!0)},N.prototype.get=function(t){var e=this.__data__,n=j(e,t);return n<0?void 0:e[n][1]},N.prototype.has=function(t){return j(this.__data__,t)>-1},N.prototype.set=function(t,e){var n=this.__data__,r=j(n,t);return r<0?n.push([t,e]):n[r][1]=e,this},M.prototype.clear=function(){this.__data__={hash:new O,map:new(I||N),string:new O}},M.prototype.delete=function(t){return L(this,t).delete(t)},M.prototype.get=function(t){return L(this,t).get(t)},M.prototype.has=function(t){return L(this,t).has(t)},M.prototype.set=function(t,e){return L(this,t).set(t,e),this};var z=R((function(t){var e;t=null==(e=t)?"":function(t){if("string"==typeof t)return t;if(Q(t))return _?_.call(t):"";var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}(e);var n=[];return l.test(t)&&n.push(""),t.replace(c,(function(t,e,r,o){n.push(r?o.replace(u,"$1"):e||t)})),n}));function $(t){if("string"==typeof t||Q(t))return t;var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}function R(t,e){if("function"!=typeof t||e&&"function"!=typeof e)throw new TypeError("Expected a function");var n=function(){var r=arguments,o=e?e.apply(this,r):r[0],i=n.cache;if(i.has(o))return i.get(o);var a=t.apply(this,r);return n.cache=i.set(o,a),a};return n.cache=new(R.Cache||M),n}R.Cache=M;var U=Array.isArray;function G(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}function Q(t){return"symbol"==typeof t||function(t){return!!t&&"object"==typeof t}(t)&&"[object Symbol]"==x.call(t)}t.exports=function(t,e,n){var r=null==t?void 0:D(t,e);return void 0===r?n:r}},8552:(t,e,n)=>{var r=n(852)(n(5639),"DataView");t.exports=r},1989:(t,e,n)=>{var r=n(1789),o=n(401),i=n(7667),a=n(1327),s=n(1866);function l(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}l.prototype.clear=r,l.prototype.delete=o,l.prototype.get=i,l.prototype.has=a,l.prototype.set=s,t.exports=l},8407:(t,e,n)=>{var r=n(7040),o=n(4125),i=n(2117),a=n(7518),s=n(3399);function l(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}l.prototype.clear=r,l.prototype.delete=o,l.prototype.get=i,l.prototype.has=a,l.prototype.set=s,t.exports=l},7071:(t,e,n)=>{var r=n(852)(n(5639),"Map");t.exports=r},3369:(t,e,n)=>{var r=n(4785),o=n(1285),i=n(6e3),a=n(9916),s=n(5265);function l(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}l.prototype.clear=r,l.prototype.delete=o,l.prototype.get=i,l.prototype.has=a,l.prototype.set=s,t.exports=l},3818:(t,e,n)=>{var r=n(852)(n(5639),"Promise");t.exports=r},8525:(t,e,n)=>{var r=n(852)(n(5639),"Set");t.exports=r},8668:(t,e,n)=>{var r=n(3369),o=n(619),i=n(2385);function a(t){var e=-1,n=null==t?0:t.length;for(this.__data__=new r;++e<n;)this.add(t[e])}a.prototype.add=a.prototype.push=o,a.prototype.has=i,t.exports=a},6384:(t,e,n)=>{var r=n(8407),o=n(7465),i=n(3779),a=n(7599),s=n(4758),l=n(4309);function c(t){var e=this.__data__=new r(t);this.size=e.size}c.prototype.clear=o,c.prototype.delete=i,c.prototype.get=a,c.prototype.has=s,c.prototype.set=l,t.exports=c},2705:(t,e,n)=>{var r=n(5639).Symbol;t.exports=r},1149:(t,e,n)=>{var r=n(5639).Uint8Array;t.exports=r},577:(t,e,n)=>{var r=n(852)(n(5639),"WeakMap");t.exports=r},6874:t=>{t.exports=function(t,e,n){switch(n.length){case 0:return t.call(e);case 1:return t.call(e,n[0]);case 2:return t.call(e,n[0],n[1]);case 3:return t.call(e,n[0],n[1],n[2])}return t.apply(e,n)}},4963:t=>{t.exports=function(t,e){for(var n=-1,r=null==t?0:t.length,o=0,i=[];++n<r;){var a=t[n];e(a,n,t)&&(i[o++]=a)}return i}},4636:(t,e,n)=>{var r=n(2545),o=n(5694),i=n(1469),a=n(4144),s=n(5776),l=n(6719),c=Object.prototype.hasOwnProperty;t.exports=function(t,e){var n=i(t),u=!n&&o(t),p=!n&&!u&&a(t),A=!n&&!u&&!p&&l(t),f=n||u||p||A,d=f?r(t.length,String):[],h=d.length;for(var m in t)!e&&!c.call(t,m)||f&&("length"==m||p&&("offset"==m||"parent"==m)||A&&("buffer"==m||"byteLength"==m||"byteOffset"==m)||s(m,h))||d.push(m);return d}},2488:t=>{t.exports=function(t,e){for(var n=-1,r=e.length,o=t.length;++n<r;)t[o+n]=e[n];return t}},2908:t=>{t.exports=function(t,e){for(var n=-1,r=null==t?0:t.length;++n<r;)if(e(t[n],n,t))return!0;return!1}},6556:(t,e,n)=>{var r=n(9465),o=n(7813);t.exports=function(t,e,n){(void 0!==n&&!o(t[e],n)||void 0===n&&!(e in t))&&r(t,e,n)}},4865:(t,e,n)=>{var r=n(9465),o=n(7813),i=Object.prototype.hasOwnProperty;t.exports=function(t,e,n){var a=t[e];i.call(t,e)&&o(a,n)&&(void 0!==n||e in t)||r(t,e,n)}},8470:(t,e,n)=>{var r=n(7813);t.exports=function(t,e){for(var n=t.length;n--;)if(r(t[n][0],e))return n;return-1}},9465:(t,e,n)=>{var r=n(8777);t.exports=function(t,e,n){"__proto__"==e&&r?r(t,e,{configurable:!0,enumerable:!0,value:n,writable:!0}):t[e]=n}},3118:(t,e,n)=>{var r=n(3218),o=Object.create,i=function(){function t(){}return function(e){if(!r(e))return{};if(o)return o(e);t.prototype=e;var n=new t;return t.prototype=void 0,n}}();t.exports=i},8483:(t,e,n)=>{var r=n(5063)();t.exports=r},8866:(t,e,n)=>{var r=n(2488),o=n(1469);t.exports=function(t,e,n){var i=e(t);return o(t)?i:r(i,n(t))}},4239:(t,e,n)=>{var r=n(2705),o=n(9607),i=n(2333),a=r?r.toStringTag:void 0;t.exports=function(t){return null==t?void 0===t?"[object Undefined]":"[object Null]":a&&a in Object(t)?o(t):i(t)}},9454:(t,e,n)=>{var r=n(4239),o=n(7005);t.exports=function(t){return o(t)&&"[object Arguments]"==r(t)}},939:(t,e,n)=>{var r=n(2492),o=n(7005);t.exports=function t(e,n,i,a,s){return e===n||(null==e||null==n||!o(e)&&!o(n)?e!=e&&n!=n:r(e,n,i,a,t,s))}},2492:(t,e,n)=>{var r=n(6384),o=n(7114),i=n(8351),a=n(6096),s=n(4160),l=n(1469),c=n(4144),u=n(6719),p="[object Arguments]",A="[object Array]",f="[object Object]",d=Object.prototype.hasOwnProperty;t.exports=function(t,e,n,h,m,g){var v=l(t),y=l(e),b=v?A:s(t),C=y?A:s(e),w=(b=b==p?f:b)==f,x=(C=C==p?f:C)==f,E=b==C;if(E&&c(t)){if(!c(e))return!1;v=!0,w=!1}if(E&&!w)return g||(g=new r),v||u(t)?o(t,e,n,h,m,g):i(t,e,b,n,h,m,g);if(!(1&n)){var S=w&&d.call(t,"__wrapped__"),T=x&&d.call(e,"__wrapped__");if(S||T){var I=S?t.value():t,B=T?e.value():e;return g||(g=new r),m(I,B,n,h,g)}}return!!E&&(g||(g=new r),a(t,e,n,h,m,g))}},8458:(t,e,n)=>{var r=n(3560),o=n(5346),i=n(3218),a=n(346),s=/^\[object .+?Constructor\]$/,l=Function.prototype,c=Object.prototype,u=l.toString,p=c.hasOwnProperty,A=RegExp("^"+u.call(p).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");t.exports=function(t){return!(!i(t)||o(t))&&(r(t)?A:s).test(a(t))}},8749:(t,e,n)=>{var r=n(4239),o=n(1780),i=n(7005),a={};a["[object Float32Array]"]=a["[object Float64Array]"]=a["[object Int8Array]"]=a["[object Int16Array]"]=a["[object Int32Array]"]=a["[object Uint8Array]"]=a["[object Uint8ClampedArray]"]=a["[object Uint16Array]"]=a["[object Uint32Array]"]=!0,a["[object Arguments]"]=a["[object Array]"]=a["[object ArrayBuffer]"]=a["[object Boolean]"]=a["[object DataView]"]=a["[object Date]"]=a["[object Error]"]=a["[object Function]"]=a["[object Map]"]=a["[object Number]"]=a["[object Object]"]=a["[object RegExp]"]=a["[object Set]"]=a["[object String]"]=a["[object WeakMap]"]=!1,t.exports=function(t){return i(t)&&o(t.length)&&!!a[r(t)]}},280:(t,e,n)=>{var r=n(5726),o=n(6916),i=Object.prototype.hasOwnProperty;t.exports=function(t){if(!r(t))return o(t);var e=[];for(var n in Object(t))i.call(t,n)&&"constructor"!=n&&e.push(n);return e}},313:(t,e,n)=>{var r=n(3218),o=n(5726),i=n(3498),a=Object.prototype.hasOwnProperty;t.exports=function(t){if(!r(t))return i(t);var e=o(t),n=[];for(var s in t)("constructor"!=s||!e&&a.call(t,s))&&n.push(s);return n}},2980:(t,e,n)=>{var r=n(6384),o=n(6556),i=n(8483),a=n(9783),s=n(3218),l=n(1704),c=n(6390);t.exports=function t(e,n,u,p,A){e!==n&&i(n,(function(i,l){if(A||(A=new r),s(i))a(e,n,l,u,t,p,A);else{var f=p?p(c(e,l),i,l+"",e,n,A):void 0;void 0===f&&(f=i),o(e,l,f)}}),l)}},9783:(t,e,n)=>{var r=n(6556),o=n(4626),i=n(7133),a=n(278),s=n(8517),l=n(5694),c=n(1469),u=n(9246),p=n(4144),A=n(3560),f=n(3218),d=n(8630),h=n(6719),m=n(6390),g=n(9881);t.exports=function(t,e,n,v,y,b,C){var w=m(t,n),x=m(e,n),E=C.get(x);if(E)r(t,n,E);else{var S=b?b(w,x,n+"",t,e,C):void 0,T=void 0===S;if(T){var I=c(x),B=!I&&p(x),k=!I&&!B&&h(x);S=x,I||B||k?c(w)?S=w:u(w)?S=a(w):B?(T=!1,S=o(x,!0)):k?(T=!1,S=i(x,!0)):S=[]:d(x)||l(x)?(S=w,l(w)?S=g(w):f(w)&&!A(w)||(S=s(x))):T=!1}T&&(C.set(x,S),y(S,x,v,b,C),C.delete(x)),r(t,n,S)}}},5976:(t,e,n)=>{var r=n(6557),o=n(5357),i=n(61);t.exports=function(t,e){return i(o(t,e,r),t+"")}},6560:(t,e,n)=>{var r=n(5703),o=n(8777),i=n(6557),a=o?function(t,e){return o(t,"toString",{configurable:!0,enumerable:!1,value:r(e),writable:!0})}:i;t.exports=a},2545:t=>{t.exports=function(t,e){for(var n=-1,r=Array(t);++n<t;)r[n]=e(n);return r}},1717:t=>{t.exports=function(t){return function(e){return t(e)}}},4757:t=>{t.exports=function(t,e){return t.has(e)}},4318:(t,e,n)=>{var r=n(1149);t.exports=function(t){var e=new t.constructor(t.byteLength);return new r(e).set(new r(t)),e}},4626:(t,e,n)=>{t=n.nmd(t);var r=n(5639),o=e&&!e.nodeType&&e,i=o&&t&&!t.nodeType&&t,a=i&&i.exports===o?r.Buffer:void 0,s=a?a.allocUnsafe:void 0;t.exports=function(t,e){if(e)return t.slice();var n=t.length,r=s?s(n):new t.constructor(n);return t.copy(r),r}},7133:(t,e,n)=>{var r=n(4318);t.exports=function(t,e){var n=e?r(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.length)}},278:t=>{t.exports=function(t,e){var n=-1,r=t.length;for(e||(e=Array(r));++n<r;)e[n]=t[n];return e}},8363:(t,e,n)=>{var r=n(4865),o=n(9465);t.exports=function(t,e,n,i){var a=!n;n||(n={});for(var s=-1,l=e.length;++s<l;){var c=e[s],u=i?i(n[c],t[c],c,n,t):void 0;void 0===u&&(u=t[c]),a?o(n,c,u):r(n,c,u)}return n}},4429:(t,e,n)=>{var r=n(5639)["__core-js_shared__"];t.exports=r},1463:(t,e,n)=>{var r=n(5976),o=n(6612);t.exports=function(t){return r((function(e,n){var r=-1,i=n.length,a=i>1?n[i-1]:void 0,s=i>2?n[2]:void 0;for(a=t.length>3&&"function"==typeof a?(i--,a):void 0,s&&o(n[0],n[1],s)&&(a=i<3?void 0:a,i=1),e=Object(e);++r<i;){var l=n[r];l&&t(e,l,r,a)}return e}))}},5063:t=>{t.exports=function(t){return function(e,n,r){for(var o=-1,i=Object(e),a=r(e),s=a.length;s--;){var l=a[t?s:++o];if(!1===n(i[l],l,i))break}return e}}},8777:(t,e,n)=>{var r=n(852),o=function(){try{var t=r(Object,"defineProperty");return t({},"",{}),t}catch(t){}}();t.exports=o},7114:(t,e,n)=>{var r=n(8668),o=n(2908),i=n(4757);t.exports=function(t,e,n,a,s,l){var c=1&n,u=t.length,p=e.length;if(u!=p&&!(c&&p>u))return!1;var A=l.get(t),f=l.get(e);if(A&&f)return A==e&&f==t;var d=-1,h=!0,m=2&n?new r:void 0;for(l.set(t,e),l.set(e,t);++d<u;){var g=t[d],v=e[d];if(a)var y=c?a(v,g,d,e,t,l):a(g,v,d,t,e,l);if(void 0!==y){if(y)continue;h=!1;break}if(m){if(!o(e,(function(t,e){if(!i(m,e)&&(g===t||s(g,t,n,a,l)))return m.push(e)}))){h=!1;break}}else if(g!==v&&!s(g,v,n,a,l)){h=!1;break}}return l.delete(t),l.delete(e),h}},8351:(t,e,n)=>{var r=n(2705),o=n(1149),i=n(7813),a=n(7114),s=n(8776),l=n(1814),c=r?r.prototype:void 0,u=c?c.valueOf:void 0;t.exports=function(t,e,n,r,c,p,A){switch(n){case"[object DataView]":if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case"[object ArrayBuffer]":return!(t.byteLength!=e.byteLength||!p(new o(t),new o(e)));case"[object Boolean]":case"[object Date]":case"[object Number]":return i(+t,+e);case"[object Error]":return t.name==e.name&&t.message==e.message;case"[object RegExp]":case"[object String]":return t==e+"";case"[object Map]":var f=s;case"[object Set]":var d=1&r;if(f||(f=l),t.size!=e.size&&!d)return!1;var h=A.get(t);if(h)return h==e;r|=2,A.set(t,e);var m=a(f(t),f(e),r,c,p,A);return A.delete(t),m;case"[object Symbol]":if(u)return u.call(t)==u.call(e)}return!1}},6096:(t,e,n)=>{var r=n(8234),o=Object.prototype.hasOwnProperty;t.exports=function(t,e,n,i,a,s){var l=1&n,c=r(t),u=c.length;if(u!=r(e).length&&!l)return!1;for(var p=u;p--;){var A=c[p];if(!(l?A in e:o.call(e,A)))return!1}var f=s.get(t),d=s.get(e);if(f&&d)return f==e&&d==t;var h=!0;s.set(t,e),s.set(e,t);for(var m=l;++p<u;){var g=t[A=c[p]],v=e[A];if(i)var y=l?i(v,g,A,e,t,s):i(g,v,A,t,e,s);if(!(void 0===y?g===v||a(g,v,n,i,s):y)){h=!1;break}m||(m="constructor"==A)}if(h&&!m){var b=t.constructor,C=e.constructor;b==C||!("constructor"in t)||!("constructor"in e)||"function"==typeof b&&b instanceof b&&"function"==typeof C&&C instanceof C||(h=!1)}return s.delete(t),s.delete(e),h}},1957:(t,e,n)=>{var r="object"==typeof n.g&&n.g&&n.g.Object===Object&&n.g;t.exports=r},8234:(t,e,n)=>{var r=n(8866),o=n(9551),i=n(3674);t.exports=function(t){return r(t,i,o)}},5050:(t,e,n)=>{var r=n(7019);t.exports=function(t,e){var n=t.__data__;return r(e)?n["string"==typeof e?"string":"hash"]:n.map}},852:(t,e,n)=>{var r=n(8458),o=n(7801);t.exports=function(t,e){var n=o(t,e);return r(n)?n:void 0}},5924:(t,e,n)=>{var r=n(5569)(Object.getPrototypeOf,Object);t.exports=r},9607:(t,e,n)=>{var r=n(2705),o=Object.prototype,i=o.hasOwnProperty,a=o.toString,s=r?r.toStringTag:void 0;t.exports=function(t){var e=i.call(t,s),n=t[s];try{t[s]=void 0;var r=!0}catch(t){}var o=a.call(t);return r&&(e?t[s]=n:delete t[s]),o}},9551:(t,e,n)=>{var r=n(4963),o=n(479),i=Object.prototype.propertyIsEnumerable,a=Object.getOwnPropertySymbols,s=a?function(t){return null==t?[]:(t=Object(t),r(a(t),(function(e){return i.call(t,e)})))}:o;t.exports=s},4160:(t,e,n)=>{var r=n(8552),o=n(7071),i=n(3818),a=n(8525),s=n(577),l=n(4239),c=n(346),u="[object Map]",p="[object Promise]",A="[object Set]",f="[object WeakMap]",d="[object DataView]",h=c(r),m=c(o),g=c(i),v=c(a),y=c(s),b=l;(r&&b(new r(new ArrayBuffer(1)))!=d||o&&b(new o)!=u||i&&b(i.resolve())!=p||a&&b(new a)!=A||s&&b(new s)!=f)&&(b=function(t){var e=l(t),n="[object Object]"==e?t.constructor:void 0,r=n?c(n):"";if(r)switch(r){case h:return d;case m:return u;case g:return p;case v:return A;case y:return f}return e}),t.exports=b},7801:t=>{t.exports=function(t,e){return null==t?void 0:t[e]}},1789:(t,e,n)=>{var r=n(4536);t.exports=function(){this.__data__=r?r(null):{},this.size=0}},401:t=>{t.exports=function(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}},7667:(t,e,n)=>{var r=n(4536),o=Object.prototype.hasOwnProperty;t.exports=function(t){var e=this.__data__;if(r){var n=e[t];return"__lodash_hash_undefined__"===n?void 0:n}return o.call(e,t)?e[t]:void 0}},1327:(t,e,n)=>{var r=n(4536),o=Object.prototype.hasOwnProperty;t.exports=function(t){var e=this.__data__;return r?void 0!==e[t]:o.call(e,t)}},1866:(t,e,n)=>{var r=n(4536);t.exports=function(t,e){var n=this.__data__;return this.size+=this.has(t)?0:1,n[t]=r&&void 0===e?"__lodash_hash_undefined__":e,this}},8517:(t,e,n)=>{var r=n(3118),o=n(5924),i=n(5726);t.exports=function(t){return"function"!=typeof t.constructor||i(t)?{}:r(o(t))}},5776:t=>{var e=/^(?:0|[1-9]\d*)$/;t.exports=function(t,n){var r=typeof t;return!!(n=null==n?9007199254740991:n)&&("number"==r||"symbol"!=r&&e.test(t))&&t>-1&&t%1==0&&t<n}},6612:(t,e,n)=>{var r=n(7813),o=n(1240),i=n(5776),a=n(3218);t.exports=function(t,e,n){if(!a(n))return!1;var s=typeof e;return!!("number"==s?o(n)&&i(e,n.length):"string"==s&&e in n)&&r(n[e],t)}},7019:t=>{t.exports=function(t){var e=typeof t;return"string"==e||"number"==e||"symbol"==e||"boolean"==e?"__proto__"!==t:null===t}},5346:(t,e,n)=>{var r,o=n(4429),i=(r=/[^.]+$/.exec(o&&o.keys&&o.keys.IE_PROTO||""))?"Symbol(src)_1."+r:"";t.exports=function(t){return!!i&&i in t}},5726:t=>{var e=Object.prototype;t.exports=function(t){var n=t&&t.constructor;return t===("function"==typeof n&&n.prototype||e)}},7040:t=>{t.exports=function(){this.__data__=[],this.size=0}},4125:(t,e,n)=>{var r=n(8470),o=Array.prototype.splice;t.exports=function(t){var e=this.__data__,n=r(e,t);return!(n<0)&&(n==e.length-1?e.pop():o.call(e,n,1),--this.size,!0)}},2117:(t,e,n)=>{var r=n(8470);t.exports=function(t){var e=this.__data__,n=r(e,t);return n<0?void 0:e[n][1]}},7518:(t,e,n)=>{var r=n(8470);t.exports=function(t){return r(this.__data__,t)>-1}},3399:(t,e,n)=>{var r=n(8470);t.exports=function(t,e){var n=this.__data__,o=r(n,t);return o<0?(++this.size,n.push([t,e])):n[o][1]=e,this}},4785:(t,e,n)=>{var r=n(1989),o=n(8407),i=n(7071);t.exports=function(){this.size=0,this.__data__={hash:new r,map:new(i||o),string:new r}}},1285:(t,e,n)=>{var r=n(5050);t.exports=function(t){var e=r(this,t).delete(t);return this.size-=e?1:0,e}},6e3:(t,e,n)=>{var r=n(5050);t.exports=function(t){return r(this,t).get(t)}},9916:(t,e,n)=>{var r=n(5050);t.exports=function(t){return r(this,t).has(t)}},5265:(t,e,n)=>{var r=n(5050);t.exports=function(t,e){var n=r(this,t),o=n.size;return n.set(t,e),this.size+=n.size==o?0:1,this}},8776:t=>{t.exports=function(t){var e=-1,n=Array(t.size);return t.forEach((function(t,r){n[++e]=[r,t]})),n}},4536:(t,e,n)=>{var r=n(852)(Object,"create");t.exports=r},6916:(t,e,n)=>{var r=n(5569)(Object.keys,Object);t.exports=r},3498:t=>{t.exports=function(t){var e=[];if(null!=t)for(var n in Object(t))e.push(n);return e}},1167:(t,e,n)=>{t=n.nmd(t);var r=n(1957),o=e&&!e.nodeType&&e,i=o&&t&&!t.nodeType&&t,a=i&&i.exports===o&&r.process,s=function(){try{var t=i&&i.require&&i.require("util").types;return t||a&&a.binding&&a.binding("util")}catch(t){}}();t.exports=s},2333:t=>{var e=Object.prototype.toString;t.exports=function(t){return e.call(t)}},5569:t=>{t.exports=function(t,e){return function(n){return t(e(n))}}},5357:(t,e,n)=>{var r=n(6874),o=Math.max;t.exports=function(t,e,n){return e=o(void 0===e?t.length-1:e,0),function(){for(var i=arguments,a=-1,s=o(i.length-e,0),l=Array(s);++a<s;)l[a]=i[e+a];a=-1;for(var c=Array(e+1);++a<e;)c[a]=i[a];return c[e]=n(l),r(t,this,c)}}},5639:(t,e,n)=>{var r=n(1957),o="object"==typeof self&&self&&self.Object===Object&&self,i=r||o||Function("return this")();t.exports=i},6390:t=>{t.exports=function(t,e){if(("constructor"!==e||"function"!=typeof t[e])&&"__proto__"!=e)return t[e]}},619:t=>{t.exports=function(t){return this.__data__.set(t,"__lodash_hash_undefined__"),this}},2385:t=>{t.exports=function(t){return this.__data__.has(t)}},1814:t=>{t.exports=function(t){var e=-1,n=Array(t.size);return t.forEach((function(t){n[++e]=t})),n}},61:(t,e,n)=>{var r=n(6560),o=n(1275)(r);t.exports=o},1275:t=>{var e=Date.now;t.exports=function(t){var n=0,r=0;return function(){var o=e(),i=16-(o-r);if(r=o,i>0){if(++n>=800)return arguments[0]}else n=0;return t.apply(void 0,arguments)}}},7465:(t,e,n)=>{var r=n(8407);t.exports=function(){this.__data__=new r,this.size=0}},3779:t=>{t.exports=function(t){var e=this.__data__,n=e.delete(t);return this.size=e.size,n}},7599:t=>{t.exports=function(t){return this.__data__.get(t)}},4758:t=>{t.exports=function(t){return this.__data__.has(t)}},4309:(t,e,n)=>{var r=n(8407),o=n(7071),i=n(3369);t.exports=function(t,e){var n=this.__data__;if(n instanceof r){var a=n.__data__;if(!o||a.length<199)return a.push([t,e]),this.size=++n.size,this;n=this.__data__=new i(a)}return n.set(t,e),this.size=n.size,this}},346:t=>{var e=Function.prototype.toString;t.exports=function(t){if(null!=t){try{return e.call(t)}catch(t){}try{return t+""}catch(t){}}return""}},5703:t=>{t.exports=function(t){return function(){return t}}},7813:t=>{t.exports=function(t,e){return t===e||t!=t&&e!=e}},6557:t=>{t.exports=function(t){return t}},5694:(t,e,n)=>{var r=n(9454),o=n(7005),i=Object.prototype,a=i.hasOwnProperty,s=i.propertyIsEnumerable,l=r(function(){return arguments}())?r:function(t){return o(t)&&a.call(t,"callee")&&!s.call(t,"callee")};t.exports=l},1469:t=>{var e=Array.isArray;t.exports=e},1240:(t,e,n)=>{var r=n(3560),o=n(1780);t.exports=function(t){return null!=t&&o(t.length)&&!r(t)}},9246:(t,e,n)=>{var r=n(1240),o=n(7005);t.exports=function(t){return o(t)&&r(t)}},4144:(t,e,n)=>{t=n.nmd(t);var r=n(5639),o=n(5062),i=e&&!e.nodeType&&e,a=i&&t&&!t.nodeType&&t,s=a&&a.exports===i?r.Buffer:void 0,l=(s?s.isBuffer:void 0)||o;t.exports=l},8446:(t,e,n)=>{var r=n(939);t.exports=function(t,e){return r(t,e)}},3560:(t,e,n)=>{var r=n(4239),o=n(3218);t.exports=function(t){if(!o(t))return!1;var e=r(t);return"[object Function]"==e||"[object GeneratorFunction]"==e||"[object AsyncFunction]"==e||"[object Proxy]"==e}},1780:t=>{t.exports=function(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=9007199254740991}},3218:t=>{t.exports=function(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}},7005:t=>{t.exports=function(t){return null!=t&&"object"==typeof t}},8630:(t,e,n)=>{var r=n(4239),o=n(5924),i=n(7005),a=Function.prototype,s=Object.prototype,l=a.toString,c=s.hasOwnProperty,u=l.call(Object);t.exports=function(t){if(!i(t)||"[object Object]"!=r(t))return!1;var e=o(t);if(null===e)return!0;var n=c.call(e,"constructor")&&e.constructor;return"function"==typeof n&&n instanceof n&&l.call(n)==u}},6719:(t,e,n)=>{var r=n(8749),o=n(1717),i=n(1167),a=i&&i.isTypedArray,s=a?o(a):r;t.exports=s},3674:(t,e,n)=>{var r=n(4636),o=n(280),i=n(1240);t.exports=function(t){return i(t)?r(t):o(t)}},1704:(t,e,n)=>{var r=n(4636),o=n(313),i=n(1240);t.exports=function(t){return i(t)?r(t,!0):o(t)}},3857:(t,e,n)=>{var r=n(2980),o=n(1463)((function(t,e,n){r(t,e,n)}));t.exports=o},479:t=>{t.exports=function(){return[]}},5062:t=>{t.exports=function(){return!1}},9881:(t,e,n)=>{var r=n(8363),o=n(1704);t.exports=function(t){return r(t,o(t))}},7699:(t,e,n)=>{"use strict";var r=n(5108),o=n(9208),i=n(4587);function a(t){t=t||{},this.catalogs={},this.locale="",this.domain="messages",this.listeners=[],this.sourceLocale="",t.sourceLocale&&("string"==typeof t.sourceLocale?this.sourceLocale=t.sourceLocale:this.warn("The `sourceLocale` option should be a string")),this.debug="debug"in t&&!0===t.debug}t.exports=a,a.prototype.on=function(t,e){this.listeners.push({eventName:t,callback:e})},a.prototype.off=function(t,e){this.listeners=this.listeners.filter((function(n){return!1==(n.eventName===t&&n.callback===e)}))},a.prototype.emit=function(t,e){for(var n=0;n<this.listeners.length;n++){var r=this.listeners[n];r.eventName===t&&r.callback(e)}},a.prototype.warn=function(t){this.debug&&r.warn(t),this.emit("error",new Error(t))},a.prototype.addTranslations=function(t,e,n){this.catalogs[t]||(this.catalogs[t]={}),this.catalogs[t][e]=n},a.prototype.setLocale=function(t){"string"==typeof t?(""===t.trim()&&this.warn("You called setLocale() with an empty value, which makes little sense."),t===this.sourceLocale||this.catalogs[t]||this.warn('You called setLocale() with "'+t+'", but no translations for that locale has been added.'),this.locale=t):this.warn("You called setLocale() with an argument of type "+typeof t+". The locale must be a string.")},a.prototype.setTextDomain=function(t){"string"==typeof t?(""===t.trim()&&this.warn("You called setTextDomain() with an empty `domain` value."),this.domain=t):this.warn("You called setTextDomain() with an argument of type "+typeof t+". The domain must be a string.")},a.prototype.gettext=function(t){return this.dnpgettext(this.domain,"",t)},a.prototype.dgettext=function(t,e){return this.dnpgettext(t,"",e)},a.prototype.ngettext=function(t,e,n){return this.dnpgettext(this.domain,"",t,e,n)},a.prototype.dngettext=function(t,e,n,r){return this.dnpgettext(t,"",e,n,r)},a.prototype.pgettext=function(t,e){return this.dnpgettext(this.domain,t,e)},a.prototype.dpgettext=function(t,e,n){return this.dnpgettext(t,e,n)},a.prototype.npgettext=function(t,e,n,r){return this.dnpgettext(this.domain,t,e,n,r)},a.prototype.dnpgettext=function(t,e,n,r,o){var s,l,c=n;if(e=e||"",isNaN(o)||1===o||(c=r||n),s=this._getTranslation(t,e,n)){if("number"==typeof o)"boolean"==typeof(l=(0,i[a.getLanguageCode(this.locale)].pluralsFunc)(o))&&(l=l?1:0);else l=0;return s.msgstr[l]||c}return this.sourceLocale&&this.locale===this.sourceLocale||this.warn('No translation was found for msgid "'+n+'" in msgctxt "'+e+'" and domain "'+t+'"'),c},a.prototype.getComment=function(t,e,n){var r;return(r=this._getTranslation(t,e,n))&&r.comments||{}},a.prototype._getTranslation=function(t,e,n){return e=e||"",o(this.catalogs,[this.locale,t,"translations",e,n])},a.getLanguageCode=function(t){return t.split(/[\-_]/)[0].toLowerCase()},a.prototype.textdomain=function(t){this.debug&&r.warn("textdomain(domain) was used to set locales in node-gettext v1. Make sure you are using it for domains, and switch to setLocale(locale) if you are not.\n\n To read more about the migration from node-gettext v1 to v2, see https://github.com/alexanderwallin/node-gettext/#migrating-from-1x-to-2x\n\nThis warning will be removed in the final 2.0.0"),this.setTextDomain(t)},a.prototype.setlocale=function(t){this.setLocale(t)},a.prototype.addTextdomain=function(){r.error("addTextdomain() is deprecated.\n\n* To add translations, use addTranslations()\n* To set the default domain, use setTextDomain() (or its alias textdomain())\n\nTo read more about the migration from node-gettext v1 to v2, see https://github.com/alexanderwallin/node-gettext/#migrating-from-1x-to-2x")}},4587:t=>{"use strict";t.exports={ach:{name:"Acholi",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(t){return t>1}},af:{name:"Afrikaans",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},ak:{name:"Akan",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(t){return t>1}},am:{name:"Amharic",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(t){return t>1}},an:{name:"Aragonese",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},ar:{name:"Arabic",examples:[{plural:0,sample:0},{plural:1,sample:1},{plural:2,sample:2},{plural:3,sample:3},{plural:4,sample:11},{plural:5,sample:100}],nplurals:6,pluralsText:"nplurals = 6; plural = (n === 0 ? 0 : n === 1 ? 1 : n === 2 ? 2 : n % 100 >= 3 && n % 100 <= 10 ? 3 : n % 100 >= 11 ? 4 : 5)",pluralsFunc:function(t){return 0===t?0:1===t?1:2===t?2:t%100>=3&&t%100<=10?3:t%100>=11?4:5}},arn:{name:"Mapudungun",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(t){return t>1}},ast:{name:"Asturian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},ay:{name:"Aymará",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},az:{name:"Azerbaijani",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},be:{name:"Belarusian",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:5}],nplurals:3,pluralsText:"nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)",pluralsFunc:function(t){return t%10==1&&t%100!=11?0:t%10>=2&&t%10<=4&&(t%100<10||t%100>=20)?1:2}},bg:{name:"Bulgarian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},bn:{name:"Bengali",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},bo:{name:"Tibetan",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},br:{name:"Breton",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(t){return t>1}},brx:{name:"Bodo",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},bs:{name:"Bosnian",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:5}],nplurals:3,pluralsText:"nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)",pluralsFunc:function(t){return t%10==1&&t%100!=11?0:t%10>=2&&t%10<=4&&(t%100<10||t%100>=20)?1:2}},ca:{name:"Catalan",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},cgg:{name:"Chiga",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},cs:{name:"Czech",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:5}],nplurals:3,pluralsText:"nplurals = 3; plural = (n === 1 ? 0 : (n >= 2 && n <= 4) ? 1 : 2)",pluralsFunc:function(t){return 1===t?0:t>=2&&t<=4?1:2}},csb:{name:"Kashubian",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:5}],nplurals:3,pluralsText:"nplurals = 3; plural = (n === 1 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)",pluralsFunc:function(t){return 1===t?0:t%10>=2&&t%10<=4&&(t%100<10||t%100>=20)?1:2}},cy:{name:"Welsh",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:3},{plural:3,sample:8}],nplurals:4,pluralsText:"nplurals = 4; plural = (n === 1 ? 0 : n === 2 ? 1 : (n !== 8 && n !== 11) ? 2 : 3)",pluralsFunc:function(t){return 1===t?0:2===t?1:8!==t&&11!==t?2:3}},da:{name:"Danish",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},de:{name:"German",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},doi:{name:"Dogri",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},dz:{name:"Dzongkha",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},el:{name:"Greek",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},en:{name:"English",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},eo:{name:"Esperanto",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},es:{name:"Spanish",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},et:{name:"Estonian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},eu:{name:"Basque",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},fa:{name:"Persian",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},ff:{name:"Fulah",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},fi:{name:"Finnish",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},fil:{name:"Filipino",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(t){return t>1}},fo:{name:"Faroese",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},fr:{name:"French",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(t){return t>1}},fur:{name:"Friulian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},fy:{name:"Frisian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},ga:{name:"Irish",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:3},{plural:3,sample:7},{plural:4,sample:11}],nplurals:5,pluralsText:"nplurals = 5; plural = (n === 1 ? 0 : n === 2 ? 1 : n < 7 ? 2 : n < 11 ? 3 : 4)",pluralsFunc:function(t){return 1===t?0:2===t?1:t<7?2:t<11?3:4}},gd:{name:"Scottish Gaelic",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:3},{plural:3,sample:20}],nplurals:4,pluralsText:"nplurals = 4; plural = ((n === 1 || n === 11) ? 0 : (n === 2 || n === 12) ? 1 : (n > 2 && n < 20) ? 2 : 3)",pluralsFunc:function(t){return 1===t||11===t?0:2===t||12===t?1:t>2&&t<20?2:3}},gl:{name:"Galician",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},gu:{name:"Gujarati",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},gun:{name:"Gun",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(t){return t>1}},ha:{name:"Hausa",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},he:{name:"Hebrew",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},hi:{name:"Hindi",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},hne:{name:"Chhattisgarhi",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},hr:{name:"Croatian",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:5}],nplurals:3,pluralsText:"nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)",pluralsFunc:function(t){return t%10==1&&t%100!=11?0:t%10>=2&&t%10<=4&&(t%100<10||t%100>=20)?1:2}},hu:{name:"Hungarian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},hy:{name:"Armenian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},id:{name:"Indonesian",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},is:{name:"Icelandic",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n % 10 !== 1 || n % 100 === 11)",pluralsFunc:function(t){return t%10!=1||t%100==11}},it:{name:"Italian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},ja:{name:"Japanese",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},jbo:{name:"Lojban",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},jv:{name:"Javanese",examples:[{plural:0,sample:0},{plural:1,sample:1}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 0)",pluralsFunc:function(t){return 0!==t}},ka:{name:"Georgian",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},kk:{name:"Kazakh",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},km:{name:"Khmer",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},kn:{name:"Kannada",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},ko:{name:"Korean",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},ku:{name:"Kurdish",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},kw:{name:"Cornish",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:3},{plural:3,sample:4}],nplurals:4,pluralsText:"nplurals = 4; plural = (n === 1 ? 0 : n === 2 ? 1 : n === 3 ? 2 : 3)",pluralsFunc:function(t){return 1===t?0:2===t?1:3===t?2:3}},ky:{name:"Kyrgyz",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},lb:{name:"Letzeburgesch",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},ln:{name:"Lingala",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(t){return t>1}},lo:{name:"Lao",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},lt:{name:"Lithuanian",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:10}],nplurals:3,pluralsText:"nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)",pluralsFunc:function(t){return t%10==1&&t%100!=11?0:t%10>=2&&(t%100<10||t%100>=20)?1:2}},lv:{name:"Latvian",examples:[{plural:2,sample:0},{plural:0,sample:1},{plural:1,sample:2}],nplurals:3,pluralsText:"nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n !== 0 ? 1 : 2)",pluralsFunc:function(t){return t%10==1&&t%100!=11?0:0!==t?1:2}},mai:{name:"Maithili",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},mfe:{name:"Mauritian Creole",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(t){return t>1}},mg:{name:"Malagasy",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(t){return t>1}},mi:{name:"Maori",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(t){return t>1}},mk:{name:"Macedonian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n === 1 || n % 10 === 1 ? 0 : 1)",pluralsFunc:function(t){return 1===t||t%10==1?0:1}},ml:{name:"Malayalam",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},mn:{name:"Mongolian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},mni:{name:"Manipuri",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},mnk:{name:"Mandinka",examples:[{plural:0,sample:0},{plural:1,sample:1},{plural:2,sample:2}],nplurals:3,pluralsText:"nplurals = 3; plural = (n === 0 ? 0 : n === 1 ? 1 : 2)",pluralsFunc:function(t){return 0===t?0:1===t?1:2}},mr:{name:"Marathi",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},ms:{name:"Malay",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},mt:{name:"Maltese",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:11},{plural:3,sample:20}],nplurals:4,pluralsText:"nplurals = 4; plural = (n === 1 ? 0 : n === 0 || ( n % 100 > 1 && n % 100 < 11) ? 1 : (n % 100 > 10 && n % 100 < 20 ) ? 2 : 3)",pluralsFunc:function(t){return 1===t?0:0===t||t%100>1&&t%100<11?1:t%100>10&&t%100<20?2:3}},my:{name:"Burmese",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},nah:{name:"Nahuatl",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},nap:{name:"Neapolitan",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},nb:{name:"Norwegian Bokmal",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},ne:{name:"Nepali",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},nl:{name:"Dutch",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},nn:{name:"Norwegian Nynorsk",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},no:{name:"Norwegian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},nso:{name:"Northern Sotho",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},oc:{name:"Occitan",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(t){return t>1}},or:{name:"Oriya",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},pa:{name:"Punjabi",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},pap:{name:"Papiamento",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},pl:{name:"Polish",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:5}],nplurals:3,pluralsText:"nplurals = 3; plural = (n === 1 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)",pluralsFunc:function(t){return 1===t?0:t%10>=2&&t%10<=4&&(t%100<10||t%100>=20)?1:2}},pms:{name:"Piemontese",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},ps:{name:"Pashto",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},pt:{name:"Portuguese",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},rm:{name:"Romansh",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},ro:{name:"Romanian",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:20}],nplurals:3,pluralsText:"nplurals = 3; plural = (n === 1 ? 0 : (n === 0 || (n % 100 > 0 && n % 100 < 20)) ? 1 : 2)",pluralsFunc:function(t){return 1===t?0:0===t||t%100>0&&t%100<20?1:2}},ru:{name:"Russian",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:5}],nplurals:3,pluralsText:"nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)",pluralsFunc:function(t){return t%10==1&&t%100!=11?0:t%10>=2&&t%10<=4&&(t%100<10||t%100>=20)?1:2}},rw:{name:"Kinyarwanda",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},sah:{name:"Yakut",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},sat:{name:"Santali",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},sco:{name:"Scots",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},sd:{name:"Sindhi",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},se:{name:"Northern Sami",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},si:{name:"Sinhala",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},sk:{name:"Slovak",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:5}],nplurals:3,pluralsText:"nplurals = 3; plural = (n === 1 ? 0 : (n >= 2 && n <= 4) ? 1 : 2)",pluralsFunc:function(t){return 1===t?0:t>=2&&t<=4?1:2}},sl:{name:"Slovenian",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:3},{plural:3,sample:5}],nplurals:4,pluralsText:"nplurals = 4; plural = (n % 100 === 1 ? 0 : n % 100 === 2 ? 1 : n % 100 === 3 || n % 100 === 4 ? 2 : 3)",pluralsFunc:function(t){return t%100==1?0:t%100==2?1:t%100==3||t%100==4?2:3}},so:{name:"Somali",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},son:{name:"Songhay",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},sq:{name:"Albanian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},sr:{name:"Serbian",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:5}],nplurals:3,pluralsText:"nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)",pluralsFunc:function(t){return t%10==1&&t%100!=11?0:t%10>=2&&t%10<=4&&(t%100<10||t%100>=20)?1:2}},su:{name:"Sundanese",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},sv:{name:"Swedish",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},sw:{name:"Swahili",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},ta:{name:"Tamil",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},te:{name:"Telugu",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},tg:{name:"Tajik",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(t){return t>1}},th:{name:"Thai",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},ti:{name:"Tigrinya",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(t){return t>1}},tk:{name:"Turkmen",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},tr:{name:"Turkish",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(t){return t>1}},tt:{name:"Tatar",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},ug:{name:"Uyghur",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},uk:{name:"Ukrainian",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:5}],nplurals:3,pluralsText:"nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)",pluralsFunc:function(t){return t%10==1&&t%100!=11?0:t%10>=2&&t%10<=4&&(t%100<10||t%100>=20)?1:2}},ur:{name:"Urdu",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},uz:{name:"Uzbek",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(t){return t>1}},vi:{name:"Vietnamese",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},wa:{name:"Walloon",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(t){return t>1}},wo:{name:"Wolof",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},yo:{name:"Yoruba",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},zh:{name:"Chinese",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}}}},686:(t,e,n)=>{"use strict";var r=n(4155),o=n(5108);function i(t){return i="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},i(t)}var a,s,l=n(729).codes,c=l.ERR_AMBIGUOUS_ARGUMENT,u=l.ERR_INVALID_ARG_TYPE,p=l.ERR_INVALID_ARG_VALUE,A=l.ERR_INVALID_RETURN_VALUE,f=l.ERR_MISSING_ARGS,d=n(1969),h=n(374).inspect,m=n(374).types,g=m.isPromise,v=m.isRegExp,y=Object.assign?Object.assign:n(8091).assign,b=Object.is?Object.is:n(609);new Map;function C(){var t=n(3632);a=t.isDeepEqual,s=t.isDeepStrictEqual}var w=!1,x=t.exports=I,E={};function S(t){if(t.message instanceof Error)throw t.message;throw new d(t)}function T(t,e,n,r){if(!n){var o=!1;if(0===e)o=!0,r="No value argument passed to `assert.ok()`";else if(r instanceof Error)throw r;var i=new d({actual:n,expected:!0,message:r,operator:"==",stackStartFn:t});throw i.generatedMessage=o,i}}function I(){for(var t=arguments.length,e=new Array(t),n=0;n<t;n++)e[n]=arguments[n];T.apply(void 0,[I,e.length].concat(e))}x.fail=function t(e,n,i,a,s){var l,c=arguments.length;if(0===c)l="Failed";else if(1===c)i=e,e=void 0;else{if(!1===w){w=!0;var u=r.emitWarning?r.emitWarning:o.warn.bind(o);u("assert.fail() with more than one argument is deprecated. Please use assert.strictEqual() instead or only pass a message.","DeprecationWarning","DEP0094")}2===c&&(a="!=")}if(i instanceof Error)throw i;var p={actual:e,expected:n,operator:void 0===a?"fail":a,stackStartFn:s||t};void 0!==i&&(p.message=i);var A=new d(p);throw l&&(A.message=l,A.generatedMessage=!0),A},x.AssertionError=d,x.ok=I,x.equal=function t(e,n,r){if(arguments.length<2)throw new f("actual","expected");e!=n&&S({actual:e,expected:n,message:r,operator:"==",stackStartFn:t})},x.notEqual=function t(e,n,r){if(arguments.length<2)throw new f("actual","expected");e==n&&S({actual:e,expected:n,message:r,operator:"!=",stackStartFn:t})},x.deepEqual=function t(e,n,r){if(arguments.length<2)throw new f("actual","expected");void 0===a&&C(),a(e,n)||S({actual:e,expected:n,message:r,operator:"deepEqual",stackStartFn:t})},x.notDeepEqual=function t(e,n,r){if(arguments.length<2)throw new f("actual","expected");void 0===a&&C(),a(e,n)&&S({actual:e,expected:n,message:r,operator:"notDeepEqual",stackStartFn:t})},x.deepStrictEqual=function t(e,n,r){if(arguments.length<2)throw new f("actual","expected");void 0===a&&C(),s(e,n)||S({actual:e,expected:n,message:r,operator:"deepStrictEqual",stackStartFn:t})},x.notDeepStrictEqual=function t(e,n,r){if(arguments.length<2)throw new f("actual","expected");void 0===a&&C();s(e,n)&&S({actual:e,expected:n,message:r,operator:"notDeepStrictEqual",stackStartFn:t})},x.strictEqual=function t(e,n,r){if(arguments.length<2)throw new f("actual","expected");b(e,n)||S({actual:e,expected:n,message:r,operator:"strictEqual",stackStartFn:t})},x.notStrictEqual=function t(e,n,r){if(arguments.length<2)throw new f("actual","expected");b(e,n)&&S({actual:e,expected:n,message:r,operator:"notStrictEqual",stackStartFn:t})};var B=function t(e,n,r){var o=this;!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),n.forEach((function(t){t in e&&(void 0!==r&&"string"==typeof r[t]&&v(e[t])&&e[t].test(r[t])?o[t]=r[t]:o[t]=e[t])}))};function k(t,e,n,r,o,i){if(!(n in t)||!s(t[n],e[n])){if(!r){var a=new B(t,o),l=new B(e,o,t),c=new d({actual:a,expected:l,operator:"deepStrictEqual",stackStartFn:i});throw c.actual=t,c.expected=e,c.operator=i.name,c}S({actual:t,expected:e,message:r,operator:i.name,stackStartFn:i})}}function _(t,e,n,r){if("function"!=typeof e){if(v(e))return e.test(t);if(2===arguments.length)throw new u("expected",["Function","RegExp"],e);if("object"!==i(t)||null===t){var o=new d({actual:t,expected:e,message:n,operator:"deepStrictEqual",stackStartFn:r});throw o.operator=r.name,o}var s=Object.keys(e);if(e instanceof Error)s.push("name","message");else if(0===s.length)throw new p("error",e,"may not be an empty object");return void 0===a&&C(),s.forEach((function(o){"string"==typeof t[o]&&v(e[o])&&e[o].test(t[o])||k(t,e,o,n,s,r)})),!0}return void 0!==e.prototype&&t instanceof e||!Error.isPrototypeOf(e)&&!0===e.call({},t)}function O(t){if("function"!=typeof t)throw new u("fn","Function",t);try{t()}catch(t){return t}return E}function N(t){return g(t)||null!==t&&"object"===i(t)&&"function"==typeof t.then&&"function"==typeof t.catch}function M(t){return Promise.resolve().then((function(){var e;if("function"==typeof t){if(!N(e=t()))throw new A("instance of Promise","promiseFn",e)}else{if(!N(t))throw new u("promiseFn",["Function","Promise"],t);e=t}return Promise.resolve().then((function(){return e})).then((function(){return E})).catch((function(t){return t}))}))}function j(t,e,n,r){if("string"==typeof n){if(4===arguments.length)throw new u("error",["Object","Error","Function","RegExp"],n);if("object"===i(e)&&null!==e){if(e.message===n)throw new c("error/message",'The error message "'.concat(e.message,'" is identical to the message.'))}else if(e===n)throw new c("error/message",'The error "'.concat(e,'" is identical to the message.'));r=n,n=void 0}else if(null!=n&&"object"!==i(n)&&"function"!=typeof n)throw new u("error",["Object","Error","Function","RegExp"],n);if(e===E){var o="";n&&n.name&&(o+=" (".concat(n.name,")")),o+=r?": ".concat(r):".";var a="rejects"===t.name?"rejection":"exception";S({actual:void 0,expected:n,operator:t.name,message:"Missing expected ".concat(a).concat(o),stackStartFn:t})}if(n&&!_(e,n,r,t))throw e}function D(t,e,n,r){if(e!==E){if("string"==typeof n&&(r=n,n=void 0),!n||_(e,n)){var o=r?": ".concat(r):".",i="doesNotReject"===t.name?"rejection":"exception";S({actual:e,expected:n,operator:t.name,message:"Got unwanted ".concat(i).concat(o,"\n")+'Actual message: "'.concat(e&&e.message,'"'),stackStartFn:t})}throw e}}function P(){for(var t=arguments.length,e=new Array(t),n=0;n<t;n++)e[n]=arguments[n];T.apply(void 0,[P,e.length].concat(e))}x.throws=function t(e){for(var n=arguments.length,r=new Array(n>1?n-1:0),o=1;o<n;o++)r[o-1]=arguments[o];j.apply(void 0,[t,O(e)].concat(r))},x.rejects=function t(e){for(var n=arguments.length,r=new Array(n>1?n-1:0),o=1;o<n;o++)r[o-1]=arguments[o];return M(e).then((function(e){return j.apply(void 0,[t,e].concat(r))}))},x.doesNotThrow=function t(e){for(var n=arguments.length,r=new Array(n>1?n-1:0),o=1;o<n;o++)r[o-1]=arguments[o];D.apply(void 0,[t,O(e)].concat(r))},x.doesNotReject=function t(e){for(var n=arguments.length,r=new Array(n>1?n-1:0),o=1;o<n;o++)r[o-1]=arguments[o];return M(e).then((function(e){return D.apply(void 0,[t,e].concat(r))}))},x.ifError=function t(e){if(null!=e){var n="ifError got unwanted exception: ";"object"===i(e)&&"string"==typeof e.message?0===e.message.length&&e.constructor?n+=e.constructor.name:n+=e.message:n+=h(e);var r=new d({actual:e,expected:null,operator:"ifError",message:n,stackStartFn:t}),o=e.stack;if("string"==typeof o){var a=o.split("\n");a.shift();for(var s=r.stack.split("\n"),l=0;l<a.length;l++){var c=s.indexOf(a[l]);if(-1!==c){s=s.slice(0,c);break}}r.stack="".concat(s.join("\n"),"\n").concat(a.join("\n"))}throw r}},x.strict=y(P,x,{equal:x.strictEqual,deepEqual:x.deepStrictEqual,notEqual:x.notStrictEqual,notDeepEqual:x.notDeepStrictEqual}),x.strict.strict=x.strict},1969:(t,e,n)=>{"use strict";var r=n(4155);function o(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function i(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}function a(t,e){return!e||"object"!==f(e)&&"function"!=typeof e?s(t):e}function s(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}function l(t){var e="function"==typeof Map?new Map:void 0;return l=function(t){if(null===t||(n=t,-1===Function.toString.call(n).indexOf("[native code]")))return t;var n;if("function"!=typeof t)throw new TypeError("Super expression must either be null or a function");if(void 0!==e){if(e.has(t))return e.get(t);e.set(t,r)}function r(){return u(t,arguments,A(this).constructor)}return r.prototype=Object.create(t.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}),p(r,t)},l(t)}function c(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(t){return!1}}function u(t,e,n){return u=c()?Reflect.construct:function(t,e,n){var r=[null];r.push.apply(r,e);var o=new(Function.bind.apply(t,r));return n&&p(o,n.prototype),o},u.apply(null,arguments)}function p(t,e){return p=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t},p(t,e)}function A(t){return A=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)},A(t)}function f(t){return f="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},f(t)}var d=n(374).inspect,h=n(729).codes.ERR_INVALID_ARG_TYPE;function m(t,e,n){return(void 0===n||n>t.length)&&(n=t.length),t.substring(n-e.length,n)===e}var g="",v="",y="",b="",C={deepStrictEqual:"Expected values to be strictly deep-equal:",strictEqual:"Expected values to be strictly equal:",strictEqualObject:'Expected "actual" to be reference-equal to "expected":',deepEqual:"Expected values to be loosely deep-equal:",equal:"Expected values to be loosely equal:",notDeepStrictEqual:'Expected "actual" not to be strictly deep-equal to:',notStrictEqual:'Expected "actual" to be strictly unequal to:',notStrictEqualObject:'Expected "actual" not to be reference-equal to "expected":',notDeepEqual:'Expected "actual" not to be loosely deep-equal to:',notEqual:'Expected "actual" to be loosely unequal to:',notIdentical:"Values identical but not reference-equal:"};function w(t){var e=Object.keys(t),n=Object.create(Object.getPrototypeOf(t));return e.forEach((function(e){n[e]=t[e]})),Object.defineProperty(n,"message",{value:t.message}),n}function x(t){return d(t,{compact:!1,customInspect:!1,depth:1e3,maxArrayLength:1/0,showHidden:!1,breakLength:1/0,showProxy:!1,sorted:!0,getters:!0})}function E(t,e,n){var o="",i="",a=0,s="",l=!1,c=x(t),u=c.split("\n"),p=x(e).split("\n"),A=0,d="";if("strictEqual"===n&&"object"===f(t)&&"object"===f(e)&&null!==t&&null!==e&&(n="strictEqualObject"),1===u.length&&1===p.length&&u[0]!==p[0]){var h=u[0].length+p[0].length;if(h<=10){if(!("object"===f(t)&&null!==t||"object"===f(e)&&null!==e||0===t&&0===e))return"".concat(C[n],"\n\n")+"".concat(u[0]," !== ").concat(p[0],"\n")}else if("strictEqualObject"!==n){if(h<(r.stderr&&r.stderr.isTTY?r.stderr.columns:80)){for(;u[0][A]===p[0][A];)A++;A>2&&(d="\n ".concat(function(t,e){if(e=Math.floor(e),0==t.length||0==e)return"";var n=t.length*e;for(e=Math.floor(Math.log(e)/Math.log(2));e;)t+=t,e--;return t+t.substring(0,n-t.length)}(" ",A),"^"),A=0)}}}for(var w=u[u.length-1],E=p[p.length-1];w===E&&(A++<2?s="\n ".concat(w).concat(s):o=w,u.pop(),p.pop(),0!==u.length&&0!==p.length);)w=u[u.length-1],E=p[p.length-1];var S=Math.max(u.length,p.length);if(0===S){var T=c.split("\n");if(T.length>30)for(T[26]="".concat(g,"...").concat(b);T.length>27;)T.pop();return"".concat(C.notIdentical,"\n\n").concat(T.join("\n"),"\n")}A>3&&(s="\n".concat(g,"...").concat(b).concat(s),l=!0),""!==o&&(s="\n ".concat(o).concat(s),o="");var I=0,B=C[n]+"\n".concat(v,"+ actual").concat(b," ").concat(y,"- expected").concat(b),k=" ".concat(g,"...").concat(b," Lines skipped");for(A=0;A<S;A++){var _=A-a;if(u.length<A+1)_>1&&A>2&&(_>4?(i+="\n".concat(g,"...").concat(b),l=!0):_>3&&(i+="\n ".concat(p[A-2]),I++),i+="\n ".concat(p[A-1]),I++),a=A,o+="\n".concat(y,"-").concat(b," ").concat(p[A]),I++;else if(p.length<A+1)_>1&&A>2&&(_>4?(i+="\n".concat(g,"...").concat(b),l=!0):_>3&&(i+="\n ".concat(u[A-2]),I++),i+="\n ".concat(u[A-1]),I++),a=A,i+="\n".concat(v,"+").concat(b," ").concat(u[A]),I++;else{var O=p[A],N=u[A],M=N!==O&&(!m(N,",")||N.slice(0,-1)!==O);M&&m(O,",")&&O.slice(0,-1)===N&&(M=!1,N+=","),M?(_>1&&A>2&&(_>4?(i+="\n".concat(g,"...").concat(b),l=!0):_>3&&(i+="\n ".concat(u[A-2]),I++),i+="\n ".concat(u[A-1]),I++),a=A,i+="\n".concat(v,"+").concat(b," ").concat(N),o+="\n".concat(y,"-").concat(b," ").concat(O),I+=2):(i+=o,o="",1!==_&&0!==A||(i+="\n ".concat(N),I++))}if(I>20&&A<S-2)return"".concat(B).concat(k,"\n").concat(i,"\n").concat(g,"...").concat(b).concat(o,"\n")+"".concat(g,"...").concat(b)}return"".concat(B).concat(l?k:"","\n").concat(i).concat(o).concat(s).concat(d)}var S=function(t){function e(t){var n;if(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),"object"!==f(t)||null===t)throw new h("options","Object",t);var o=t.message,i=t.operator,l=t.stackStartFn,c=t.actual,u=t.expected,p=Error.stackTraceLimit;if(Error.stackTraceLimit=0,null!=o)n=a(this,A(e).call(this,String(o)));else if(r.stderr&&r.stderr.isTTY&&(r.stderr&&r.stderr.getColorDepth&&1!==r.stderr.getColorDepth()?(g="",v="",b="",y=""):(g="",v="",b="",y="")),"object"===f(c)&&null!==c&&"object"===f(u)&&null!==u&&"stack"in c&&c instanceof Error&&"stack"in u&&u instanceof Error&&(c=w(c),u=w(u)),"deepStrictEqual"===i||"strictEqual"===i)n=a(this,A(e).call(this,E(c,u,i)));else if("notDeepStrictEqual"===i||"notStrictEqual"===i){var d=C[i],m=x(c).split("\n");if("notStrictEqual"===i&&"object"===f(c)&&null!==c&&(d=C.notStrictEqualObject),m.length>30)for(m[26]="".concat(g,"...").concat(b);m.length>27;)m.pop();n=1===m.length?a(this,A(e).call(this,"".concat(d," ").concat(m[0]))):a(this,A(e).call(this,"".concat(d,"\n\n").concat(m.join("\n"),"\n")))}else{var S=x(c),T="",I=C[i];"notDeepEqual"===i||"notEqual"===i?(S="".concat(C[i],"\n\n").concat(S)).length>1024&&(S="".concat(S.slice(0,1021),"...")):(T="".concat(x(u)),S.length>512&&(S="".concat(S.slice(0,509),"...")),T.length>512&&(T="".concat(T.slice(0,509),"...")),"deepEqual"===i||"equal"===i?S="".concat(I,"\n\n").concat(S,"\n\nshould equal\n\n"):T=" ".concat(i," ").concat(T)),n=a(this,A(e).call(this,"".concat(S).concat(T)))}return Error.stackTraceLimit=p,n.generatedMessage=!o,Object.defineProperty(s(n),"name",{value:"AssertionError [ERR_ASSERTION]",enumerable:!1,writable:!0,configurable:!0}),n.code="ERR_ASSERTION",n.actual=c,n.expected=u,n.operator=i,Error.captureStackTrace&&Error.captureStackTrace(s(n),l),n.stack,n.name="AssertionError",a(n)}var n,l,c;return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&p(t,e)}(e,t),n=e,l=[{key:"toString",value:function(){return"".concat(this.name," [").concat(this.code,"]: ").concat(this.message)}},{key:d.custom,value:function(t,e){return d(this,function(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter((function(t){return Object.getOwnPropertyDescriptor(n,t).enumerable})))),r.forEach((function(e){o(t,e,n[e])}))}return t}({},e,{customInspect:!1,depth:0}))}}],l&&i(n.prototype,l),c&&i(n,c),e}(l(Error));t.exports=S},729:(t,e,n)=>{"use strict";function r(t){return r="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},r(t)}function o(t,e){return!e||"object"!==r(e)&&"function"!=typeof e?function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t):e}function i(t){return i=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)},i(t)}function a(t,e){return a=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t},a(t,e)}var s,l,c={};function u(t,e,n){n||(n=Error);var r=function(n){function r(n,a,s){var l;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,r),l=o(this,i(r).call(this,function(t,n,r){return"string"==typeof e?e:e(t,n,r)}(n,a,s))),l.code=t,l}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&a(t,e)}(r,n),r}(n);c[t]=r}function p(t,e){if(Array.isArray(t)){var n=t.length;return t=t.map((function(t){return String(t)})),n>2?"one of ".concat(e," ").concat(t.slice(0,n-1).join(", "),", or ")+t[n-1]:2===n?"one of ".concat(e," ").concat(t[0]," or ").concat(t[1]):"of ".concat(e," ").concat(t[0])}return"of ".concat(e," ").concat(String(t))}u("ERR_AMBIGUOUS_ARGUMENT",'The "%s" argument is ambiguous. %s',TypeError),u("ERR_INVALID_ARG_TYPE",(function(t,e,o){var i,a,l,c;if(void 0===s&&(s=n(686)),s("string"==typeof t,"'name' must be a string"),"string"==typeof e&&(a="not ",e.substr(!l||l<0?0:+l,a.length)===a)?(i="must not be",e=e.replace(/^not /,"")):i="must be",function(t,e,n){return(void 0===n||n>t.length)&&(n=t.length),t.substring(n-e.length,n)===e}(t," argument"))c="The ".concat(t," ").concat(i," ").concat(p(e,"type"));else{var u=function(t,e,n){return"number"!=typeof n&&(n=0),!(n+e.length>t.length)&&-1!==t.indexOf(e,n)}(t,".")?"property":"argument";c='The "'.concat(t,'" ').concat(u," ").concat(i," ").concat(p(e,"type"))}return c+=". Received type ".concat(r(o))}),TypeError),u("ERR_INVALID_ARG_VALUE",(function(t,e){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"is invalid";void 0===l&&(l=n(374));var o=l.inspect(e);return o.length>128&&(o="".concat(o.slice(0,128),"...")),"The argument '".concat(t,"' ").concat(r,". Received ").concat(o)}),TypeError,RangeError),u("ERR_INVALID_RETURN_VALUE",(function(t,e,n){var o;return o=n&&n.constructor&&n.constructor.name?"instance of ".concat(n.constructor.name):"type ".concat(r(n)),"Expected ".concat(t,' to be returned from the "').concat(e,'"')+" function but got ".concat(o,".")}),TypeError),u("ERR_MISSING_ARGS",(function(){for(var t=arguments.length,e=new Array(t),r=0;r<t;r++)e[r]=arguments[r];void 0===s&&(s=n(686)),s(e.length>0,"At least one arg needs to be specified");var o="The ",i=e.length;switch(e=e.map((function(t){return'"'.concat(t,'"')})),i){case 1:o+="".concat(e[0]," argument");break;case 2:o+="".concat(e[0]," and ").concat(e[1]," arguments");break;default:o+=e.slice(0,i-1).join(", "),o+=", and ".concat(e[i-1]," arguments")}return"".concat(o," must be specified")}),TypeError),t.exports.codes=c},3632:(t,e,n)=>{"use strict";function r(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var n=[],r=!0,o=!1,i=void 0;try{for(var a,s=t[Symbol.iterator]();!(r=(a=s.next()).done)&&(n.push(a.value),!e||n.length!==e);r=!0);}catch(t){o=!0,i=t}finally{try{r||null==s.return||s.return()}finally{if(o)throw i}}return n}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}()}function o(t){return o="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},o(t)}var i=void 0!==/a/g.flags,a=function(t){var e=[];return t.forEach((function(t){return e.push(t)})),e},s=function(t){var e=[];return t.forEach((function(t,n){return e.push([n,t])})),e},l=Object.is?Object.is:n(609),c=Object.getOwnPropertySymbols?Object.getOwnPropertySymbols:function(){return[]},u=Number.isNaN?Number.isNaN:n(360);function p(t){return t.call.bind(t)}var A=p(Object.prototype.hasOwnProperty),f=p(Object.prototype.propertyIsEnumerable),d=p(Object.prototype.toString),h=n(374).types,m=h.isAnyArrayBuffer,g=h.isArrayBufferView,v=h.isDate,y=h.isMap,b=h.isRegExp,C=h.isSet,w=h.isNativeError,x=h.isBoxedPrimitive,E=h.isNumberObject,S=h.isStringObject,T=h.isBooleanObject,I=h.isBigIntObject,B=h.isSymbolObject,k=h.isFloat32Array,_=h.isFloat64Array;function O(t){if(0===t.length||t.length>10)return!0;for(var e=0;e<t.length;e++){var n=t.charCodeAt(e);if(n<48||n>57)return!0}return 10===t.length&&t>=Math.pow(2,32)}function N(t){return Object.keys(t).filter(O).concat(c(t).filter(Object.prototype.propertyIsEnumerable.bind(t)))}function M(t,e){if(t===e)return 0;for(var n=t.length,r=e.length,o=0,i=Math.min(n,r);o<i;++o)if(t[o]!==e[o]){n=t[o],r=e[o];break}return n<r?-1:r<n?1:0}function j(t,e,n,r){if(t===e)return 0!==t||(!n||l(t,e));if(n){if("object"!==o(t))return"number"==typeof t&&u(t)&&u(e);if("object"!==o(e)||null===t||null===e)return!1;if(Object.getPrototypeOf(t)!==Object.getPrototypeOf(e))return!1}else{if(null===t||"object"!==o(t))return(null===e||"object"!==o(e))&&t==e;if(null===e||"object"!==o(e))return!1}var a,s,c,p,A=d(t);if(A!==d(e))return!1;if(Array.isArray(t)){if(t.length!==e.length)return!1;var f=N(t),h=N(e);return f.length===h.length&&P(t,e,n,r,1,f)}if("[object Object]"===A&&(!y(t)&&y(e)||!C(t)&&C(e)))return!1;if(v(t)){if(!v(e)||Date.prototype.getTime.call(t)!==Date.prototype.getTime.call(e))return!1}else if(b(t)){if(!b(e)||(c=t,p=e,!(i?c.source===p.source&&c.flags===p.flags:RegExp.prototype.toString.call(c)===RegExp.prototype.toString.call(p))))return!1}else if(w(t)||t instanceof Error){if(t.message!==e.message||t.name!==e.name)return!1}else{if(g(t)){if(n||!k(t)&&!_(t)){if(!function(t,e){return t.byteLength===e.byteLength&&0===M(new Uint8Array(t.buffer,t.byteOffset,t.byteLength),new Uint8Array(e.buffer,e.byteOffset,e.byteLength))}(t,e))return!1}else if(!function(t,e){if(t.byteLength!==e.byteLength)return!1;for(var n=0;n<t.byteLength;n++)if(t[n]!==e[n])return!1;return!0}(t,e))return!1;var O=N(t),j=N(e);return O.length===j.length&&P(t,e,n,r,0,O)}if(C(t))return!(!C(e)||t.size!==e.size)&&P(t,e,n,r,2);if(y(t))return!(!y(e)||t.size!==e.size)&&P(t,e,n,r,3);if(m(t)){if(s=e,(a=t).byteLength!==s.byteLength||0!==M(new Uint8Array(a),new Uint8Array(s)))return!1}else if(x(t)&&!function(t,e){return E(t)?E(e)&&l(Number.prototype.valueOf.call(t),Number.prototype.valueOf.call(e)):S(t)?S(e)&&String.prototype.valueOf.call(t)===String.prototype.valueOf.call(e):T(t)?T(e)&&Boolean.prototype.valueOf.call(t)===Boolean.prototype.valueOf.call(e):I(t)?I(e)&&BigInt.prototype.valueOf.call(t)===BigInt.prototype.valueOf.call(e):B(e)&&Symbol.prototype.valueOf.call(t)===Symbol.prototype.valueOf.call(e)}(t,e))return!1}return P(t,e,n,r,0)}function D(t,e){return e.filter((function(e){return f(t,e)}))}function P(t,e,n,r,o,i){if(5===arguments.length){i=Object.keys(t);var a=Object.keys(e);if(i.length!==a.length)return!1}for(var s=0;s<i.length;s++)if(!A(e,i[s]))return!1;if(n&&5===arguments.length){var l=c(t);if(0!==l.length){var u=0;for(s=0;s<l.length;s++){var p=l[s];if(f(t,p)){if(!f(e,p))return!1;i.push(p),u++}else if(f(e,p))return!1}var d=c(e);if(l.length!==d.length&&D(e,d).length!==u)return!1}else{var h=c(e);if(0!==h.length&&0!==D(e,h).length)return!1}}if(0===i.length&&(0===o||1===o&&0===t.length||0===t.size))return!0;if(void 0===r)r={val1:new Map,val2:new Map,position:0};else{var m=r.val1.get(t);if(void 0!==m){var g=r.val2.get(e);if(void 0!==g)return m===g}r.position++}r.val1.set(t,r.position),r.val2.set(e,r.position);var v=U(t,e,n,i,r,o);return r.val1.delete(t),r.val2.delete(e),v}function L(t,e,n,r){for(var o=a(t),i=0;i<o.length;i++){var s=o[i];if(j(e,s,n,r))return t.delete(s),!0}return!1}function F(t){switch(o(t)){case"undefined":return null;case"object":return;case"symbol":return!1;case"string":t=+t;case"number":if(u(t))return!1}return!0}function z(t,e,n){var r=F(n);return null!=r?r:e.has(r)&&!t.has(r)}function $(t,e,n,r,o){var i=F(n);if(null!=i)return i;var a=e.get(i);return!(void 0===a&&!e.has(i)||!j(r,a,!1,o))&&(!t.has(i)&&j(r,a,!1,o))}function R(t,e,n,r,o,i){for(var s=a(t),l=0;l<s.length;l++){var c=s[l];if(j(n,c,o,i)&&j(r,e.get(c),o,i))return t.delete(c),!0}return!1}function U(t,e,n,i,l,c){var u=0;if(2===c){if(!function(t,e,n,r){for(var i=null,s=a(t),l=0;l<s.length;l++){var c=s[l];if("object"===o(c)&&null!==c)null===i&&(i=new Set),i.add(c);else if(!e.has(c)){if(n)return!1;if(!z(t,e,c))return!1;null===i&&(i=new Set),i.add(c)}}if(null!==i){for(var u=a(e),p=0;p<u.length;p++){var A=u[p];if("object"===o(A)&&null!==A){if(!L(i,A,n,r))return!1}else if(!n&&!t.has(A)&&!L(i,A,n,r))return!1}return 0===i.size}return!0}(t,e,n,l))return!1}else if(3===c){if(!function(t,e,n,i){for(var a=null,l=s(t),c=0;c<l.length;c++){var u=r(l[c],2),p=u[0],A=u[1];if("object"===o(p)&&null!==p)null===a&&(a=new Set),a.add(p);else{var f=e.get(p);if(void 0===f&&!e.has(p)||!j(A,f,n,i)){if(n)return!1;if(!$(t,e,p,A,i))return!1;null===a&&(a=new Set),a.add(p)}}}if(null!==a){for(var d=s(e),h=0;h<d.length;h++){var m=r(d[h],2),g=(p=m[0],m[1]);if("object"===o(p)&&null!==p){if(!R(a,t,p,g,n,i))return!1}else if(!(n||t.has(p)&&j(t.get(p),g,!1,i)||R(a,t,p,g,!1,i)))return!1}return 0===a.size}return!0}(t,e,n,l))return!1}else if(1===c)for(;u<t.length;u++){if(!A(t,u)){if(A(e,u))return!1;for(var p=Object.keys(t);u<p.length;u++){var f=p[u];if(!A(e,f)||!j(t[f],e[f],n,l))return!1}return p.length===Object.keys(e).length}if(!A(e,u)||!j(t[u],e[u],n,l))return!1}for(u=0;u<i.length;u++){var d=i[u];if(!j(t[d],e[d],n,l))return!1}return!0}t.exports={isDeepEqual:function(t,e){return j(t,e,false)},isDeepStrictEqual:function(t,e){return j(t,e,true)}}},553:t=>{"function"==typeof Object.create?t.exports=function(t,e){e&&(t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}))}:t.exports=function(t,e){if(e){t.super_=e;var n=function(){};n.prototype=e.prototype,t.prototype=new n,t.prototype.constructor=t}}},7872:t=>{t.exports=function(t){return t&&"object"==typeof t&&"function"==typeof t.copy&&"function"==typeof t.fill&&"function"==typeof t.readUInt8}},4851:(t,e,n)=>{"use strict";var r=n(2584),o=n(8662),i=n(6430),a=n(5692);function s(t){return t.call.bind(t)}var l="undefined"!=typeof BigInt,c="undefined"!=typeof Symbol,u=s(Object.prototype.toString),p=s(Number.prototype.valueOf),A=s(String.prototype.valueOf),f=s(Boolean.prototype.valueOf);if(l)var d=s(BigInt.prototype.valueOf);if(c)var h=s(Symbol.prototype.valueOf);function m(t,e){if("object"!=typeof t)return!1;try{return e(t),!0}catch(t){return!1}}function g(t){return"[object Map]"===u(t)}function v(t){return"[object Set]"===u(t)}function y(t){return"[object WeakMap]"===u(t)}function b(t){return"[object WeakSet]"===u(t)}function C(t){return"[object ArrayBuffer]"===u(t)}function w(t){return"undefined"!=typeof ArrayBuffer&&(C.working?C(t):t instanceof ArrayBuffer)}function x(t){return"[object DataView]"===u(t)}function E(t){return"undefined"!=typeof DataView&&(x.working?x(t):t instanceof DataView)}e.isArgumentsObject=r,e.isGeneratorFunction=o,e.isTypedArray=a,e.isPromise=function(t){return"undefined"!=typeof Promise&&t instanceof Promise||null!==t&&"object"==typeof t&&"function"==typeof t.then&&"function"==typeof t.catch},e.isArrayBufferView=function(t){return"undefined"!=typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(t):a(t)||E(t)},e.isUint8Array=function(t){return"Uint8Array"===i(t)},e.isUint8ClampedArray=function(t){return"Uint8ClampedArray"===i(t)},e.isUint16Array=function(t){return"Uint16Array"===i(t)},e.isUint32Array=function(t){return"Uint32Array"===i(t)},e.isInt8Array=function(t){return"Int8Array"===i(t)},e.isInt16Array=function(t){return"Int16Array"===i(t)},e.isInt32Array=function(t){return"Int32Array"===i(t)},e.isFloat32Array=function(t){return"Float32Array"===i(t)},e.isFloat64Array=function(t){return"Float64Array"===i(t)},e.isBigInt64Array=function(t){return"BigInt64Array"===i(t)},e.isBigUint64Array=function(t){return"BigUint64Array"===i(t)},g.working="undefined"!=typeof Map&&g(new Map),e.isMap=function(t){return"undefined"!=typeof Map&&(g.working?g(t):t instanceof Map)},v.working="undefined"!=typeof Set&&v(new Set),e.isSet=function(t){return"undefined"!=typeof Set&&(v.working?v(t):t instanceof Set)},y.working="undefined"!=typeof WeakMap&&y(new WeakMap),e.isWeakMap=function(t){return"undefined"!=typeof WeakMap&&(y.working?y(t):t instanceof WeakMap)},b.working="undefined"!=typeof WeakSet&&b(new WeakSet),e.isWeakSet=function(t){return b(t)},C.working="undefined"!=typeof ArrayBuffer&&C(new ArrayBuffer),e.isArrayBuffer=w,x.working="undefined"!=typeof ArrayBuffer&&"undefined"!=typeof DataView&&x(new DataView(new ArrayBuffer(1),0,1)),e.isDataView=E;var S="undefined"!=typeof SharedArrayBuffer?SharedArrayBuffer:void 0;function T(t){return"[object SharedArrayBuffer]"===u(t)}function I(t){return void 0!==S&&(void 0===T.working&&(T.working=T(new S)),T.working?T(t):t instanceof S)}function B(t){return m(t,p)}function k(t){return m(t,A)}function _(t){return m(t,f)}function O(t){return l&&m(t,d)}function N(t){return c&&m(t,h)}e.isSharedArrayBuffer=I,e.isAsyncFunction=function(t){return"[object AsyncFunction]"===u(t)},e.isMapIterator=function(t){return"[object Map Iterator]"===u(t)},e.isSetIterator=function(t){return"[object Set Iterator]"===u(t)},e.isGeneratorObject=function(t){return"[object Generator]"===u(t)},e.isWebAssemblyCompiledModule=function(t){return"[object WebAssembly.Module]"===u(t)},e.isNumberObject=B,e.isStringObject=k,e.isBooleanObject=_,e.isBigIntObject=O,e.isSymbolObject=N,e.isBoxedPrimitive=function(t){return B(t)||k(t)||_(t)||O(t)||N(t)},e.isAnyArrayBuffer=function(t){return"undefined"!=typeof Uint8Array&&(w(t)||I(t))},["isProxy","isExternal","isModuleNamespaceObject"].forEach((function(t){Object.defineProperty(e,t,{enumerable:!1,value:function(){throw new Error(t+" is not supported in userland")}})}))},374:(t,e,n)=>{var r=n(4155),o=n(5108),i=Object.getOwnPropertyDescriptors||function(t){for(var e=Object.keys(t),n={},r=0;r<e.length;r++)n[e[r]]=Object.getOwnPropertyDescriptor(t,e[r]);return n},a=/%[sdj%]/g;e.format=function(t){if(!b(t)){for(var e=[],n=0;n<arguments.length;n++)e.push(u(arguments[n]));return e.join(" ")}n=1;for(var r=arguments,o=r.length,i=String(t).replace(a,(function(t){if("%%"===t)return"%";if(n>=o)return t;switch(t){case"%s":return String(r[n++]);case"%d":return Number(r[n++]);case"%j":try{return JSON.stringify(r[n++])}catch(t){return"[Circular]"}default:return t}})),s=r[n];n<o;s=r[++n])v(s)||!x(s)?i+=" "+s:i+=" "+u(s);return i},e.deprecate=function(t,n){if(void 0!==r&&!0===r.noDeprecation)return t;if(void 0===r)return function(){return e.deprecate(t,n).apply(this,arguments)};var i=!1;return function(){if(!i){if(r.throwDeprecation)throw new Error(n);r.traceDeprecation?o.trace(n):o.error(n),i=!0}return t.apply(this,arguments)}};var s={},l=/^$/;if(r.env.NODE_DEBUG){var c=r.env.NODE_DEBUG;c=c.replace(/[|\\{}()[\]^$+?.]/g,"\\$&").replace(/\*/g,".*").replace(/,/g,"$|^").toUpperCase(),l=new RegExp("^"+c+"$","i")}function u(t,n){var r={seen:[],stylize:A};return arguments.length>=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),g(n)?r.showHidden=n:n&&e._extend(r,n),C(r.showHidden)&&(r.showHidden=!1),C(r.depth)&&(r.depth=2),C(r.colors)&&(r.colors=!1),C(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=p),f(r,t,r.depth)}function p(t,e){var n=u.styles[e];return n?"["+u.colors[n][0]+"m"+t+"["+u.colors[n][1]+"m":t}function A(t,e){return t}function f(t,n,r){if(t.customInspect&&n&&T(n.inspect)&&n.inspect!==e.inspect&&(!n.constructor||n.constructor.prototype!==n)){var o=n.inspect(r,t);return b(o)||(o=f(t,o,r)),o}var i=function(t,e){if(C(e))return t.stylize("undefined","undefined");if(b(e)){var n="'"+JSON.stringify(e).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return t.stylize(n,"string")}if(y(e))return t.stylize(""+e,"number");if(g(e))return t.stylize(""+e,"boolean");if(v(e))return t.stylize("null","null")}(t,n);if(i)return i;var a=Object.keys(n),s=function(t){var e={};return t.forEach((function(t,n){e[t]=!0})),e}(a);if(t.showHidden&&(a=Object.getOwnPropertyNames(n)),S(n)&&(a.indexOf("message")>=0||a.indexOf("description")>=0))return d(n);if(0===a.length){if(T(n)){var l=n.name?": "+n.name:"";return t.stylize("[Function"+l+"]","special")}if(w(n))return t.stylize(RegExp.prototype.toString.call(n),"regexp");if(E(n))return t.stylize(Date.prototype.toString.call(n),"date");if(S(n))return d(n)}var c,u="",p=!1,A=["{","}"];(m(n)&&(p=!0,A=["[","]"]),T(n))&&(u=" [Function"+(n.name?": "+n.name:"")+"]");return w(n)&&(u=" "+RegExp.prototype.toString.call(n)),E(n)&&(u=" "+Date.prototype.toUTCString.call(n)),S(n)&&(u=" "+d(n)),0!==a.length||p&&0!=n.length?r<0?w(n)?t.stylize(RegExp.prototype.toString.call(n),"regexp"):t.stylize("[Object]","special"):(t.seen.push(n),c=p?function(t,e,n,r,o){for(var i=[],a=0,s=e.length;a<s;++a)O(e,String(a))?i.push(h(t,e,n,r,String(a),!0)):i.push("");return o.forEach((function(o){o.match(/^\d+$/)||i.push(h(t,e,n,r,o,!0))})),i}(t,n,r,s,a):a.map((function(e){return h(t,n,r,s,e,p)})),t.seen.pop(),function(t,e,n){if(t.reduce((function(t,e){return e.indexOf("\n")>=0&&0,t+e.replace(/\u001b\[\d\d?m/g,"").length+1}),0)>60)return n[0]+(""===e?"":e+"\n ")+" "+t.join(",\n ")+" "+n[1];return n[0]+e+" "+t.join(", ")+" "+n[1]}(c,u,A)):A[0]+u+A[1]}function d(t){return"["+Error.prototype.toString.call(t)+"]"}function h(t,e,n,r,o,i){var a,s,l;if((l=Object.getOwnPropertyDescriptor(e,o)||{value:e[o]}).get?s=l.set?t.stylize("[Getter/Setter]","special"):t.stylize("[Getter]","special"):l.set&&(s=t.stylize("[Setter]","special")),O(r,o)||(a="["+o+"]"),s||(t.seen.indexOf(l.value)<0?(s=v(n)?f(t,l.value,null):f(t,l.value,n-1)).indexOf("\n")>-1&&(s=i?s.split("\n").map((function(t){return" "+t})).join("\n").substr(2):"\n"+s.split("\n").map((function(t){return" "+t})).join("\n")):s=t.stylize("[Circular]","special")),C(a)){if(i&&o.match(/^\d+$/))return s;(a=JSON.stringify(""+o)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(a=a.substr(1,a.length-2),a=t.stylize(a,"name")):(a=a.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),a=t.stylize(a,"string"))}return a+": "+s}function m(t){return Array.isArray(t)}function g(t){return"boolean"==typeof t}function v(t){return null===t}function y(t){return"number"==typeof t}function b(t){return"string"==typeof t}function C(t){return void 0===t}function w(t){return x(t)&&"[object RegExp]"===I(t)}function x(t){return"object"==typeof t&&null!==t}function E(t){return x(t)&&"[object Date]"===I(t)}function S(t){return x(t)&&("[object Error]"===I(t)||t instanceof Error)}function T(t){return"function"==typeof t}function I(t){return Object.prototype.toString.call(t)}function B(t){return t<10?"0"+t.toString(10):t.toString(10)}e.debuglog=function(t){if(t=t.toUpperCase(),!s[t])if(l.test(t)){var n=r.pid;s[t]=function(){var r=e.format.apply(e,arguments);o.error("%s %d: %s",t,n,r)}}else s[t]=function(){};return s[t]},e.inspect=u,u.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},u.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},e.types=n(4851),e.isArray=m,e.isBoolean=g,e.isNull=v,e.isNullOrUndefined=function(t){return null==t},e.isNumber=y,e.isString=b,e.isSymbol=function(t){return"symbol"==typeof t},e.isUndefined=C,e.isRegExp=w,e.types.isRegExp=w,e.isObject=x,e.isDate=E,e.types.isDate=E,e.isError=S,e.types.isNativeError=S,e.isFunction=T,e.isPrimitive=function(t){return null===t||"boolean"==typeof t||"number"==typeof t||"string"==typeof t||"symbol"==typeof t||void 0===t},e.isBuffer=n(7872);var k=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function _(){var t=new Date,e=[B(t.getHours()),B(t.getMinutes()),B(t.getSeconds())].join(":");return[t.getDate(),k[t.getMonth()],e].join(" ")}function O(t,e){return Object.prototype.hasOwnProperty.call(t,e)}e.log=function(){o.log("%s - %s",_(),e.format.apply(e,arguments))},e.inherits=n(553),e._extend=function(t,e){if(!e||!x(e))return t;for(var n=Object.keys(e),r=n.length;r--;)t[n[r]]=e[n[r]];return t};var N="undefined"!=typeof Symbol?Symbol("util.promisify.custom"):void 0;function M(t,e){if(!t){var n=new Error("Promise was rejected with a falsy value");n.reason=t,t=n}return e(t)}e.promisify=function(t){if("function"!=typeof t)throw new TypeError('The "original" argument must be of type Function');if(N&&t[N]){var e;if("function"!=typeof(e=t[N]))throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(e,N,{value:e,enumerable:!1,writable:!1,configurable:!0}),e}function e(){for(var e,n,r=new Promise((function(t,r){e=t,n=r})),o=[],i=0;i<arguments.length;i++)o.push(arguments[i]);o.push((function(t,r){t?n(t):e(r)}));try{t.apply(this,o)}catch(t){n(t)}return r}return Object.setPrototypeOf(e,Object.getPrototypeOf(t)),N&&Object.defineProperty(e,N,{value:e,enumerable:!1,writable:!1,configurable:!0}),Object.defineProperties(e,i(t))},e.promisify.custom=N,e.callbackify=function(t){if("function"!=typeof t)throw new TypeError('The "original" argument must be of type Function');function e(){for(var e=[],n=0;n<arguments.length;n++)e.push(arguments[n]);var o=e.pop();if("function"!=typeof o)throw new TypeError("The last argument must be of type Function");var i=this,a=function(){return o.apply(i,arguments)};t.apply(this,e).then((function(t){r.nextTick(a.bind(null,null,t))}),(function(t){r.nextTick(M.bind(null,t,a))}))}return Object.setPrototypeOf(e,Object.getPrototypeOf(t)),Object.defineProperties(e,i(t)),e}},4244:t=>{"use strict";var e=function(t){return t!=t};t.exports=function(t,n){return 0===t&&0===n?1/t==1/n:t===n||!(!e(t)||!e(n))}},609:(t,e,n)=>{"use strict";var r=n(4289),o=n(5559),i=n(4244),a=n(5624),s=n(2281),l=o(a(),Object);r(l,{getPolyfill:a,implementation:i,shim:s}),t.exports=l},5624:(t,e,n)=>{"use strict";var r=n(4244);t.exports=function(){return"function"==typeof Object.is?Object.is:r}},2281:(t,e,n)=>{"use strict";var r=n(5624),o=n(4289);t.exports=function(){var t=r();return o(Object,{is:t},{is:function(){return Object.is!==t}}),t}},8987:(t,e,n)=>{"use strict";var r;if(!Object.keys){var o=Object.prototype.hasOwnProperty,i=Object.prototype.toString,a=n(1414),s=Object.prototype.propertyIsEnumerable,l=!s.call({toString:null},"toString"),c=s.call((function(){}),"prototype"),u=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],p=function(t){var e=t.constructor;return e&&e.prototype===t},A={$applicationCache:!0,$console:!0,$external:!0,$frame:!0,$frameElement:!0,$frames:!0,$innerHeight:!0,$innerWidth:!0,$onmozfullscreenchange:!0,$onmozfullscreenerror:!0,$outerHeight:!0,$outerWidth:!0,$pageXOffset:!0,$pageYOffset:!0,$parent:!0,$scrollLeft:!0,$scrollTop:!0,$scrollX:!0,$scrollY:!0,$self:!0,$webkitIndexedDB:!0,$webkitStorageInfo:!0,$window:!0},f=function(){if("undefined"==typeof window)return!1;for(var t in window)try{if(!A["$"+t]&&o.call(window,t)&&null!==window[t]&&"object"==typeof window[t])try{p(window[t])}catch(t){return!0}}catch(t){return!0}return!1}();r=function(t){var e=null!==t&&"object"==typeof t,n="[object Function]"===i.call(t),r=a(t),s=e&&"[object String]"===i.call(t),A=[];if(!e&&!n&&!r)throw new TypeError("Object.keys called on a non-object");var d=c&&n;if(s&&t.length>0&&!o.call(t,0))for(var h=0;h<t.length;++h)A.push(String(h));if(r&&t.length>0)for(var m=0;m<t.length;++m)A.push(String(m));else for(var g in t)d&&"prototype"===g||!o.call(t,g)||A.push(String(g));if(l)for(var v=function(t){if("undefined"==typeof window||!f)return p(t);try{return p(t)}catch(t){return!1}}(t),y=0;y<u.length;++y)v&&"constructor"===u[y]||!o.call(t,u[y])||A.push(u[y]);return A}}t.exports=r},2215:(t,e,n)=>{"use strict";var r=Array.prototype.slice,o=n(1414),i=Object.keys,a=i?function(t){return i(t)}:n(8987),s=Object.keys;a.shim=function(){if(Object.keys){var t=function(){var t=Object.keys(arguments);return t&&t.length===arguments.length}(1,2);t||(Object.keys=function(t){return o(t)?s(r.call(t)):s(t)})}else Object.keys=a;return Object.keys||a},t.exports=a},1414:t=>{"use strict";var e=Object.prototype.toString;t.exports=function(t){var n=e.call(t),r="[object Arguments]"===n;return r||(r="[object Array]"!==n&&null!==t&&"object"==typeof t&&"number"==typeof t.length&&t.length>=0&&"[object Function]"===e.call(t.callee)),r}},4155:t=>{var e,n,r=t.exports={};function o(){throw new Error("setTimeout has not been defined")}function i(){throw new Error("clearTimeout has not been defined")}function a(t){if(e===setTimeout)return setTimeout(t,0);if((e===o||!e)&&setTimeout)return e=setTimeout,setTimeout(t,0);try{return e(t,0)}catch(n){try{return e.call(null,t,0)}catch(n){return e.call(this,t,0)}}}!function(){try{e="function"==typeof setTimeout?setTimeout:o}catch(t){e=o}try{n="function"==typeof clearTimeout?clearTimeout:i}catch(t){n=i}}();var s,l=[],c=!1,u=-1;function p(){c&&s&&(c=!1,s.length?l=s.concat(l):u=-1,l.length&&A())}function A(){if(!c){var t=a(p);c=!0;for(var e=l.length;e;){for(s=l,l=[];++u<e;)s&&s[u].run();u=-1,e=l.length}s=null,c=!1,function(t){if(n===clearTimeout)return clearTimeout(t);if((n===i||!n)&&clearTimeout)return n=clearTimeout,clearTimeout(t);try{n(t)}catch(e){try{return n.call(null,t)}catch(e){return n.call(this,t)}}}(t)}}function f(t,e){this.fun=t,this.array=e}function d(){}r.nextTick=function(t){var e=new Array(arguments.length-1);if(arguments.length>1)for(var n=1;n<arguments.length;n++)e[n-1]=arguments[n];l.push(new f(t,e)),1!==l.length||c||a(A)},f.prototype.run=function(){this.fun.apply(null,this.array)},r.title="browser",r.browser=!0,r.env={},r.argv=[],r.version="",r.versions={},r.on=d,r.addListener=d,r.once=d,r.off=d,r.removeListener=d,r.removeAllListeners=d,r.emit=d,r.prependListener=d,r.prependOnceListener=d,r.listeners=function(t){return[]},r.binding=function(t){throw new Error("process.binding is not supported")},r.cwd=function(){return"/"},r.chdir=function(t){throw new Error("process.chdir is not supported")},r.umask=function(){return 0}},6376:(t,e,n)=>{const r=n(4225),{MAX_LENGTH:o,MAX_SAFE_INTEGER:i}=n(3295),{re:a,t:s}=n(5765),l=n(2893),{compareIdentifiers:c}=n(6742);class u{constructor(t,e){if(e=l(e),t instanceof u){if(t.loose===!!e.loose&&t.includePrerelease===!!e.includePrerelease)return t;t=t.version}else if("string"!=typeof t)throw new TypeError(`Invalid Version: ${t}`);if(t.length>o)throw new TypeError(`version is longer than ${o} characters`);r("SemVer",t,e),this.options=e,this.loose=!!e.loose,this.includePrerelease=!!e.includePrerelease;const n=t.trim().match(e.loose?a[s.LOOSE]:a[s.FULL]);if(!n)throw new TypeError(`Invalid Version: ${t}`);if(this.raw=t,this.major=+n[1],this.minor=+n[2],this.patch=+n[3],this.major>i||this.major<0)throw new TypeError("Invalid major version");if(this.minor>i||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>i||this.patch<0)throw new TypeError("Invalid patch version");n[4]?this.prerelease=n[4].split(".").map((t=>{if(/^[0-9]+$/.test(t)){const e=+t;if(e>=0&&e<i)return e}return t})):this.prerelease=[],this.build=n[5]?n[5].split("."):[],this.format()}format(){return this.version=`${this.major}.${this.minor}.${this.patch}`,this.prerelease.length&&(this.version+=`-${this.prerelease.join(".")}`),this.version}toString(){return this.version}compare(t){if(r("SemVer.compare",this.version,this.options,t),!(t instanceof u)){if("string"==typeof t&&t===this.version)return 0;t=new u(t,this.options)}return t.version===this.version?0:this.compareMain(t)||this.comparePre(t)}compareMain(t){return t instanceof u||(t=new u(t,this.options)),c(this.major,t.major)||c(this.minor,t.minor)||c(this.patch,t.patch)}comparePre(t){if(t instanceof u||(t=new u(t,this.options)),this.prerelease.length&&!t.prerelease.length)return-1;if(!this.prerelease.length&&t.prerelease.length)return 1;if(!this.prerelease.length&&!t.prerelease.length)return 0;let e=0;do{const n=this.prerelease[e],o=t.prerelease[e];if(r("prerelease compare",e,n,o),void 0===n&&void 0===o)return 0;if(void 0===o)return 1;if(void 0===n)return-1;if(n!==o)return c(n,o)}while(++e)}compareBuild(t){t instanceof u||(t=new u(t,this.options));let e=0;do{const n=this.build[e],o=t.build[e];if(r("prerelease compare",e,n,o),void 0===n&&void 0===o)return 0;if(void 0===o)return 1;if(void 0===n)return-1;if(n!==o)return c(n,o)}while(++e)}inc(t,e){switch(t){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",e);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",e);break;case"prepatch":this.prerelease.length=0,this.inc("patch",e),this.inc("pre",e);break;case"prerelease":0===this.prerelease.length&&this.inc("patch",e),this.inc("pre",e);break;case"major":0===this.minor&&0===this.patch&&0!==this.prerelease.length||this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":0===this.patch&&0!==this.prerelease.length||this.minor++,this.patch=0,this.prerelease=[];break;case"patch":0===this.prerelease.length&&this.patch++,this.prerelease=[];break;case"pre":if(0===this.prerelease.length)this.prerelease=[0];else{let t=this.prerelease.length;for(;--t>=0;)"number"==typeof this.prerelease[t]&&(this.prerelease[t]++,t=-2);-1===t&&this.prerelease.push(0)}e&&(this.prerelease[0]===e?isNaN(this.prerelease[1])&&(this.prerelease=[e,0]):this.prerelease=[e,0]);break;default:throw new Error(`invalid increment argument: ${t}`)}return this.format(),this.raw=this.version,this}}t.exports=u},8679:(t,e,n)=>{const r=n(6376);t.exports=(t,e)=>new r(t,e).major},3959:(t,e,n)=>{const{MAX_LENGTH:r}=n(3295),{re:o,t:i}=n(5765),a=n(6376),s=n(2893);t.exports=(t,e)=>{if(e=s(e),t instanceof a)return t;if("string"!=typeof t)return null;if(t.length>r)return null;if(!(e.loose?o[i.LOOSE]:o[i.FULL]).test(t))return null;try{return new a(t,e)}catch(t){return null}}},6397:(t,e,n)=>{const r=n(3959);t.exports=(t,e)=>{const n=r(t,e);return n?n.version:null}},3295:t=>{const e=Number.MAX_SAFE_INTEGER||9007199254740991;t.exports={SEMVER_SPEC_VERSION:"2.0.0",MAX_LENGTH:256,MAX_SAFE_INTEGER:e,MAX_SAFE_COMPONENT_LENGTH:16}},4225:(t,e,n)=>{var r=n(4155),o=n(5108);const i="object"==typeof r&&r.env&&r.env.NODE_DEBUG&&/\bsemver\b/i.test(r.env.NODE_DEBUG)?(...t)=>o.error("SEMVER",...t):()=>{};t.exports=i},6742:t=>{const e=/^[0-9]+$/,n=(t,n)=>{const r=e.test(t),o=e.test(n);return r&&o&&(t=+t,n=+n),t===n?0:r&&!o?-1:o&&!r?1:t<n?-1:1};t.exports={compareIdentifiers:n,rcompareIdentifiers:(t,e)=>n(e,t)}},2893:t=>{const e=["includePrerelease","loose","rtl"];t.exports=t=>t?"object"!=typeof t?{loose:!0}:e.filter((e=>t[e])).reduce(((t,e)=>(t[e]=!0,t)),{}):{}},5765:(t,e,n)=>{const{MAX_SAFE_COMPONENT_LENGTH:r}=n(3295),o=n(4225),i=(e=t.exports={}).re=[],a=e.src=[],s=e.t={};let l=0;const c=(t,e,n)=>{const r=l++;o(r,e),s[t]=r,a[r]=e,i[r]=new RegExp(e,n?"g":void 0)};c("NUMERICIDENTIFIER","0|[1-9]\\d*"),c("NUMERICIDENTIFIERLOOSE","[0-9]+"),c("NONNUMERICIDENTIFIER","\\d*[a-zA-Z-][a-zA-Z0-9-]*"),c("MAINVERSION",`(${a[s.NUMERICIDENTIFIER]})\\.(${a[s.NUMERICIDENTIFIER]})\\.(${a[s.NUMERICIDENTIFIER]})`),c("MAINVERSIONLOOSE",`(${a[s.NUMERICIDENTIFIERLOOSE]})\\.(${a[s.NUMERICIDENTIFIERLOOSE]})\\.(${a[s.NUMERICIDENTIFIERLOOSE]})`),c("PRERELEASEIDENTIFIER",`(?:${a[s.NUMERICIDENTIFIER]}|${a[s.NONNUMERICIDENTIFIER]})`),c("PRERELEASEIDENTIFIERLOOSE",`(?:${a[s.NUMERICIDENTIFIERLOOSE]}|${a[s.NONNUMERICIDENTIFIER]})`),c("PRERELEASE",`(?:-(${a[s.PRERELEASEIDENTIFIER]}(?:\\.${a[s.PRERELEASEIDENTIFIER]})*))`),c("PRERELEASELOOSE",`(?:-?(${a[s.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${a[s.PRERELEASEIDENTIFIERLOOSE]})*))`),c("BUILDIDENTIFIER","[0-9A-Za-z-]+"),c("BUILD",`(?:\\+(${a[s.BUILDIDENTIFIER]}(?:\\.${a[s.BUILDIDENTIFIER]})*))`),c("FULLPLAIN",`v?${a[s.MAINVERSION]}${a[s.PRERELEASE]}?${a[s.BUILD]}?`),c("FULL",`^${a[s.FULLPLAIN]}$`),c("LOOSEPLAIN",`[v=\\s]*${a[s.MAINVERSIONLOOSE]}${a[s.PRERELEASELOOSE]}?${a[s.BUILD]}?`),c("LOOSE",`^${a[s.LOOSEPLAIN]}$`),c("GTLT","((?:<|>)?=?)"),c("XRANGEIDENTIFIERLOOSE",`${a[s.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`),c("XRANGEIDENTIFIER",`${a[s.NUMERICIDENTIFIER]}|x|X|\\*`),c("XRANGEPLAIN",`[v=\\s]*(${a[s.XRANGEIDENTIFIER]})(?:\\.(${a[s.XRANGEIDENTIFIER]})(?:\\.(${a[s.XRANGEIDENTIFIER]})(?:${a[s.PRERELEASE]})?${a[s.BUILD]}?)?)?`),c("XRANGEPLAINLOOSE",`[v=\\s]*(${a[s.XRANGEIDENTIFIERLOOSE]})(?:\\.(${a[s.XRANGEIDENTIFIERLOOSE]})(?:\\.(${a[s.XRANGEIDENTIFIERLOOSE]})(?:${a[s.PRERELEASELOOSE]})?${a[s.BUILD]}?)?)?`),c("XRANGE",`^${a[s.GTLT]}\\s*${a[s.XRANGEPLAIN]}$`),c("XRANGELOOSE",`^${a[s.GTLT]}\\s*${a[s.XRANGEPLAINLOOSE]}$`),c("COERCE",`(^|[^\\d])(\\d{1,${r}})(?:\\.(\\d{1,${r}}))?(?:\\.(\\d{1,${r}}))?(?:$|[^\\d])`),c("COERCERTL",a[s.COERCE],!0),c("LONETILDE","(?:~>?)"),c("TILDETRIM",`(\\s*)${a[s.LONETILDE]}\\s+`,!0),e.tildeTrimReplace="$1~",c("TILDE",`^${a[s.LONETILDE]}${a[s.XRANGEPLAIN]}$`),c("TILDELOOSE",`^${a[s.LONETILDE]}${a[s.XRANGEPLAINLOOSE]}$`),c("LONECARET","(?:\\^)"),c("CARETTRIM",`(\\s*)${a[s.LONECARET]}\\s+`,!0),e.caretTrimReplace="$1^",c("CARET",`^${a[s.LONECARET]}${a[s.XRANGEPLAIN]}$`),c("CARETLOOSE",`^${a[s.LONECARET]}${a[s.XRANGEPLAINLOOSE]}$`),c("COMPARATORLOOSE",`^${a[s.GTLT]}\\s*(${a[s.LOOSEPLAIN]})$|^$`),c("COMPARATOR",`^${a[s.GTLT]}\\s*(${a[s.FULLPLAIN]})$|^$`),c("COMPARATORTRIM",`(\\s*)${a[s.GTLT]}\\s*(${a[s.LOOSEPLAIN]}|${a[s.XRANGEPLAIN]})`,!0),e.comparatorTrimReplace="$1$2$3",c("HYPHENRANGE",`^\\s*(${a[s.XRANGEPLAIN]})\\s+-\\s+(${a[s.XRANGEPLAIN]})\\s*$`),c("HYPHENRANGELOOSE",`^\\s*(${a[s.XRANGEPLAINLOOSE]})\\s+-\\s+(${a[s.XRANGEPLAINLOOSE]})\\s*$`),c("STAR","(<|>)?=?\\s*\\*"),c("GTE0","^\\s*>=\\s*0.0.0\\s*$"),c("GTE0PRE","^\\s*>=\\s*0.0.0-0\\s*$")},3379:t=>{"use strict";var e=[];function n(t){for(var n=-1,r=0;r<e.length;r++)if(e[r].identifier===t){n=r;break}return n}function r(t,r){for(var i={},a=[],s=0;s<t.length;s++){var l=t[s],c=r.base?l[0]+r.base:l[0],u=i[c]||0,p="".concat(c," ").concat(u);i[c]=u+1;var A=n(p),f={css:l[1],media:l[2],sourceMap:l[3],supports:l[4],layer:l[5]};if(-1!==A)e[A].references++,e[A].updater(f);else{var d=o(f,r);r.byIndex=s,e.splice(s,0,{identifier:p,updater:d,references:1})}a.push(p)}return a}function o(t,e){var n=e.domAPI(e);n.update(t);return function(e){if(e){if(e.css===t.css&&e.media===t.media&&e.sourceMap===t.sourceMap&&e.supports===t.supports&&e.layer===t.layer)return;n.update(t=e)}else n.remove()}}t.exports=function(t,o){var i=r(t=t||[],o=o||{});return function(t){t=t||[];for(var a=0;a<i.length;a++){var s=n(i[a]);e[s].references--}for(var l=r(t,o),c=0;c<i.length;c++){var u=n(i[c]);0===e[u].references&&(e[u].updater(),e.splice(u,1))}i=l}}},569:t=>{"use strict";var e={};t.exports=function(t,n){var r=function(t){if(void 0===e[t]){var n=document.querySelector(t);if(window.HTMLIFrameElement&&n instanceof window.HTMLIFrameElement)try{n=n.contentDocument.head}catch(t){n=null}e[t]=n}return e[t]}(t);if(!r)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");r.appendChild(n)}},9216:t=>{"use strict";t.exports=function(t){var e=document.createElement("style");return t.setAttributes(e,t.attributes),t.insert(e,t.options),e}},3565:(t,e,n)=>{"use strict";t.exports=function(t){var e=n.nc;e&&t.setAttribute("nonce",e)}},7795:t=>{"use strict";t.exports=function(t){var e=t.insertStyleElement(t);return{update:function(n){!function(t,e,n){var r="";n.supports&&(r+="@supports (".concat(n.supports,") {")),n.media&&(r+="@media ".concat(n.media," {"));var o=void 0!==n.layer;o&&(r+="@layer".concat(n.layer.length>0?" ".concat(n.layer):""," {")),r+=n.css,o&&(r+="}"),n.media&&(r+="}"),n.supports&&(r+="}");var i=n.sourceMap;i&&"undefined"!=typeof btoa&&(r+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(i))))," */")),e.styleTagTransform(r,t,e.options)}(e,t,n)},remove:function(){!function(t){if(null===t.parentNode)return!1;t.parentNode.removeChild(t)}(e)}}}},4589:t=>{"use strict";t.exports=function(t,e){if(e.styleSheet)e.styleSheet.cssText=t;else{for(;e.firstChild;)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(t))}}},2998:(t,e,n)=>{"use strict";function r(t){return r="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},r(t)}function o(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function i(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}n.r(e),n.d(e,{VClosePopover:()=>ve,VPopover:()=>ye,VTooltip:()=>ge,createTooltip:()=>Wt,default:()=>we,destroyTooltip:()=>Vt,install:()=>me});var a=n(5108),s="undefined"!=typeof window&&"undefined"!=typeof document&&"undefined"!=typeof navigator,l=function(){for(var t=["Edge","Trident","Firefox"],e=0;e<t.length;e+=1)if(s&&navigator.userAgent.indexOf(t[e])>=0)return 1;return 0}();var c=s&&window.Promise?function(t){var e=!1;return function(){e||(e=!0,window.Promise.resolve().then((function(){e=!1,t()})))}}:function(t){var e=!1;return function(){e||(e=!0,setTimeout((function(){e=!1,t()}),l))}};function u(t){return t&&"[object Function]"==={}.toString.call(t)}function p(t,e){if(1!==t.nodeType)return[];var n=t.ownerDocument.defaultView.getComputedStyle(t,null);return e?n[e]:n}function A(t){return"HTML"===t.nodeName?t:t.parentNode||t.host}function f(t){if(!t)return document.body;switch(t.nodeName){case"HTML":case"BODY":return t.ownerDocument.body;case"#document":return t.body}var e=p(t),n=e.overflow,r=e.overflowX,o=e.overflowY;return/(auto|scroll|overlay)/.test(n+o+r)?t:f(A(t))}function d(t){return t&&t.referenceNode?t.referenceNode:t}var h=s&&!(!window.MSInputMethodContext||!document.documentMode),m=s&&/MSIE 10/.test(navigator.userAgent);function g(t){return 11===t?h:10===t?m:h||m}function v(t){if(!t)return document.documentElement;for(var e=g(10)?document.body:null,n=t.offsetParent||null;n===e&&t.nextElementSibling;)n=(t=t.nextElementSibling).offsetParent;var r=n&&n.nodeName;return r&&"BODY"!==r&&"HTML"!==r?-1!==["TH","TD","TABLE"].indexOf(n.nodeName)&&"static"===p(n,"position")?v(n):n:t?t.ownerDocument.documentElement:document.documentElement}function y(t){return null!==t.parentNode?y(t.parentNode):t}function b(t,e){if(!(t&&t.nodeType&&e&&e.nodeType))return document.documentElement;var n=t.compareDocumentPosition(e)&Node.DOCUMENT_POSITION_FOLLOWING,r=n?t:e,o=n?e:t,i=document.createRange();i.setStart(r,0),i.setEnd(o,0);var a,s,l=i.commonAncestorContainer;if(t!==l&&e!==l||r.contains(o))return"BODY"===(s=(a=l).nodeName)||"HTML"!==s&&v(a.firstElementChild)!==a?v(l):l;var c=y(t);return c.host?b(c.host,e):b(t,y(e).host)}function C(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"top",n="top"===e?"scrollTop":"scrollLeft",r=t.nodeName;if("BODY"===r||"HTML"===r){var o=t.ownerDocument.documentElement,i=t.ownerDocument.scrollingElement||o;return i[n]}return t[n]}function w(t,e){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=C(e,"top"),o=C(e,"left"),i=n?-1:1;return t.top+=r*i,t.bottom+=r*i,t.left+=o*i,t.right+=o*i,t}function x(t,e){var n="x"===e?"Left":"Top",r="Left"===n?"Right":"Bottom";return parseFloat(t["border"+n+"Width"])+parseFloat(t["border"+r+"Width"])}function E(t,e,n,r){return Math.max(e["offset"+t],e["scroll"+t],n["client"+t],n["offset"+t],n["scroll"+t],g(10)?parseInt(n["offset"+t])+parseInt(r["margin"+("Height"===t?"Top":"Left")])+parseInt(r["margin"+("Height"===t?"Bottom":"Right")]):0)}function S(t){var e=t.body,n=t.documentElement,r=g(10)&&getComputedStyle(n);return{height:E("Height",e,n,r),width:E("Width",e,n,r)}}var T=function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")},I=function(){function t(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}return function(e,n,r){return n&&t(e.prototype,n),r&&t(e,r),e}}(),B=function(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t},k=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t};function _(t){return k({},t,{right:t.left+t.width,bottom:t.top+t.height})}function O(t){var e={};try{if(g(10)){e=t.getBoundingClientRect();var n=C(t,"top"),r=C(t,"left");e.top+=n,e.left+=r,e.bottom+=n,e.right+=r}else e=t.getBoundingClientRect()}catch(t){}var o={left:e.left,top:e.top,width:e.right-e.left,height:e.bottom-e.top},i="HTML"===t.nodeName?S(t.ownerDocument):{},a=i.width||t.clientWidth||o.width,s=i.height||t.clientHeight||o.height,l=t.offsetWidth-a,c=t.offsetHeight-s;if(l||c){var u=p(t);l-=x(u,"x"),c-=x(u,"y"),o.width-=l,o.height-=c}return _(o)}function N(t,e){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=g(10),o="HTML"===e.nodeName,i=O(t),a=O(e),s=f(t),l=p(e),c=parseFloat(l.borderTopWidth),u=parseFloat(l.borderLeftWidth);n&&o&&(a.top=Math.max(a.top,0),a.left=Math.max(a.left,0));var A=_({top:i.top-a.top-c,left:i.left-a.left-u,width:i.width,height:i.height});if(A.marginTop=0,A.marginLeft=0,!r&&o){var d=parseFloat(l.marginTop),h=parseFloat(l.marginLeft);A.top-=c-d,A.bottom-=c-d,A.left-=u-h,A.right-=u-h,A.marginTop=d,A.marginLeft=h}return(r&&!n?e.contains(s):e===s&&"BODY"!==s.nodeName)&&(A=w(A,e)),A}function M(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=t.ownerDocument.documentElement,r=N(t,n),o=Math.max(n.clientWidth,window.innerWidth||0),i=Math.max(n.clientHeight,window.innerHeight||0),a=e?0:C(n),s=e?0:C(n,"left"),l={top:a-r.top+r.marginTop,left:s-r.left+r.marginLeft,width:o,height:i};return _(l)}function j(t){var e=t.nodeName;if("BODY"===e||"HTML"===e)return!1;if("fixed"===p(t,"position"))return!0;var n=A(t);return!!n&&j(n)}function D(t){if(!t||!t.parentElement||g())return document.documentElement;for(var e=t.parentElement;e&&"none"===p(e,"transform");)e=e.parentElement;return e||document.documentElement}function P(t,e,n,r){var o=arguments.length>4&&void 0!==arguments[4]&&arguments[4],i={top:0,left:0},a=o?D(t):b(t,d(e));if("viewport"===r)i=M(a,o);else{var s=void 0;"scrollParent"===r?"BODY"===(s=f(A(e))).nodeName&&(s=t.ownerDocument.documentElement):s="window"===r?t.ownerDocument.documentElement:r;var l=N(s,a,o);if("HTML"!==s.nodeName||j(a))i=l;else{var c=S(t.ownerDocument),u=c.height,p=c.width;i.top+=l.top-l.marginTop,i.bottom=u+l.top,i.left+=l.left-l.marginLeft,i.right=p+l.left}}var h="number"==typeof(n=n||0);return i.left+=h?n:n.left||0,i.top+=h?n:n.top||0,i.right-=h?n:n.right||0,i.bottom-=h?n:n.bottom||0,i}function L(t){return t.width*t.height}function F(t,e,n,r,o){var i=arguments.length>5&&void 0!==arguments[5]?arguments[5]:0;if(-1===t.indexOf("auto"))return t;var a=P(n,r,i,o),s={top:{width:a.width,height:e.top-a.top},right:{width:a.right-e.right,height:a.height},bottom:{width:a.width,height:a.bottom-e.bottom},left:{width:e.left-a.left,height:a.height}},l=Object.keys(s).map((function(t){return k({key:t},s[t],{area:L(s[t])})})).sort((function(t,e){return e.area-t.area})),c=l.filter((function(t){var e=t.width,r=t.height;return e>=n.clientWidth&&r>=n.clientHeight})),u=c.length>0?c[0].key:l[0].key,p=t.split("-")[1];return u+(p?"-"+p:"")}function z(t,e,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,o=r?D(e):b(e,d(n));return N(n,o,r)}function $(t){var e=t.ownerDocument.defaultView.getComputedStyle(t),n=parseFloat(e.marginTop||0)+parseFloat(e.marginBottom||0),r=parseFloat(e.marginLeft||0)+parseFloat(e.marginRight||0);return{width:t.offsetWidth+r,height:t.offsetHeight+n}}function R(t){var e={left:"right",right:"left",bottom:"top",top:"bottom"};return t.replace(/left|right|bottom|top/g,(function(t){return e[t]}))}function U(t,e,n){n=n.split("-")[0];var r=$(t),o={width:r.width,height:r.height},i=-1!==["right","left"].indexOf(n),a=i?"top":"left",s=i?"left":"top",l=i?"height":"width",c=i?"width":"height";return o[a]=e[a]+e[l]/2-r[l]/2,o[s]=n===s?e[s]-r[c]:e[R(s)],o}function G(t,e){return Array.prototype.find?t.find(e):t.filter(e)[0]}function Q(t,e,n){return(void 0===n?t:t.slice(0,function(t,e,n){if(Array.prototype.findIndex)return t.findIndex((function(t){return t[e]===n}));var r=G(t,(function(t){return t[e]===n}));return t.indexOf(r)}(t,"name",n))).forEach((function(t){t.function&&a.warn("`modifier.function` is deprecated, use `modifier.fn`!");var n=t.function||t.fn;t.enabled&&u(n)&&(e.offsets.popper=_(e.offsets.popper),e.offsets.reference=_(e.offsets.reference),e=n(e,t))})),e}function Y(){if(!this.state.isDestroyed){var t={instance:this,styles:{},arrowStyles:{},attributes:{},flipped:!1,offsets:{}};t.offsets.reference=z(this.state,this.popper,this.reference,this.options.positionFixed),t.placement=F(this.options.placement,t.offsets.reference,this.popper,this.reference,this.options.modifiers.flip.boundariesElement,this.options.modifiers.flip.padding),t.originalPlacement=t.placement,t.positionFixed=this.options.positionFixed,t.offsets.popper=U(this.popper,t.offsets.reference,t.placement),t.offsets.popper.position=this.options.positionFixed?"fixed":"absolute",t=Q(this.modifiers,t),this.state.isCreated?this.options.onUpdate(t):(this.state.isCreated=!0,this.options.onCreate(t))}}function H(t,e){return t.some((function(t){var n=t.name;return t.enabled&&n===e}))}function W(t){for(var e=[!1,"ms","Webkit","Moz","O"],n=t.charAt(0).toUpperCase()+t.slice(1),r=0;r<e.length;r++){var o=e[r],i=o?""+o+n:t;if(void 0!==document.body.style[i])return i}return null}function V(){return this.state.isDestroyed=!0,H(this.modifiers,"applyStyle")&&(this.popper.removeAttribute("x-placement"),this.popper.style.position="",this.popper.style.top="",this.popper.style.left="",this.popper.style.right="",this.popper.style.bottom="",this.popper.style.willChange="",this.popper.style[W("transform")]=""),this.disableEventListeners(),this.options.removeOnDestroy&&this.popper.parentNode.removeChild(this.popper),this}function q(t){var e=t.ownerDocument;return e?e.defaultView:window}function Z(t,e,n,r){var o="BODY"===t.nodeName,i=o?t.ownerDocument.defaultView:t;i.addEventListener(e,n,{passive:!0}),o||Z(f(i.parentNode),e,n,r),r.push(i)}function X(t,e,n,r){n.updateBound=r,q(t).addEventListener("resize",n.updateBound,{passive:!0});var o=f(t);return Z(o,"scroll",n.updateBound,n.scrollParents),n.scrollElement=o,n.eventsEnabled=!0,n}function J(){this.state.eventsEnabled||(this.state=X(this.reference,this.options,this.state,this.scheduleUpdate))}function K(){this.state.eventsEnabled&&(cancelAnimationFrame(this.scheduleUpdate),this.state=function(t,e){return q(t).removeEventListener("resize",e.updateBound),e.scrollParents.forEach((function(t){t.removeEventListener("scroll",e.updateBound)})),e.updateBound=null,e.scrollParents=[],e.scrollElement=null,e.eventsEnabled=!1,e}(this.reference,this.state))}function tt(t){return""!==t&&!isNaN(parseFloat(t))&&isFinite(t)}function et(t,e){Object.keys(e).forEach((function(n){var r="";-1!==["width","height","top","right","bottom","left"].indexOf(n)&&tt(e[n])&&(r="px"),t.style[n]=e[n]+r}))}var nt=s&&/Firefox/i.test(navigator.userAgent);function rt(t,e,n){var r=G(t,(function(t){return t.name===e})),o=!!r&&t.some((function(t){return t.name===n&&t.enabled&&t.order<r.order}));if(!o){var i="`"+e+"`",s="`"+n+"`";a.warn(s+" modifier is required by "+i+" modifier in order to work, be sure to include it before "+i+"!")}return o}var ot=["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"],it=ot.slice(3);function at(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=it.indexOf(t),r=it.slice(n+1).concat(it.slice(0,n));return e?r.reverse():r}var st="flip",lt="clockwise",ct="counterclockwise";function ut(t,e,n,r){var o=[0,0],i=-1!==["right","left"].indexOf(r),s=t.split(/(\+|\-)/).map((function(t){return t.trim()})),l=s.indexOf(G(s,(function(t){return-1!==t.search(/,|\s/)})));s[l]&&-1===s[l].indexOf(",")&&a.warn("Offsets separated by white space(s) are deprecated, use a comma (,) instead.");var c=/\s*,\s*|\s+/,u=-1!==l?[s.slice(0,l).concat([s[l].split(c)[0]]),[s[l].split(c)[1]].concat(s.slice(l+1))]:[s];return u=u.map((function(t,r){var o=(1===r?!i:i)?"height":"width",a=!1;return t.reduce((function(t,e){return""===t[t.length-1]&&-1!==["+","-"].indexOf(e)?(t[t.length-1]=e,a=!0,t):a?(t[t.length-1]+=e,a=!1,t):t.concat(e)}),[]).map((function(t){return function(t,e,n,r){var o=t.match(/((?:\-|\+)?\d*\.?\d*)(.*)/),i=+o[1],a=o[2];if(!i)return t;if(0===a.indexOf("%")){return _("%p"===a?n:r)[e]/100*i}if("vh"===a||"vw"===a)return("vh"===a?Math.max(document.documentElement.clientHeight,window.innerHeight||0):Math.max(document.documentElement.clientWidth,window.innerWidth||0))/100*i;return i}(t,o,e,n)}))})),u.forEach((function(t,e){t.forEach((function(n,r){tt(n)&&(o[e]+=n*("-"===t[r-1]?-1:1))}))})),o}var pt={shift:{order:100,enabled:!0,fn:function(t){var e=t.placement,n=e.split("-")[0],r=e.split("-")[1];if(r){var o=t.offsets,i=o.reference,a=o.popper,s=-1!==["bottom","top"].indexOf(n),l=s?"left":"top",c=s?"width":"height",u={start:B({},l,i[l]),end:B({},l,i[l]+i[c]-a[c])};t.offsets.popper=k({},a,u[r])}return t}},offset:{order:200,enabled:!0,fn:function(t,e){var n=e.offset,r=t.placement,o=t.offsets,i=o.popper,a=o.reference,s=r.split("-")[0],l=void 0;return l=tt(+n)?[+n,0]:ut(n,i,a,s),"left"===s?(i.top+=l[0],i.left-=l[1]):"right"===s?(i.top+=l[0],i.left+=l[1]):"top"===s?(i.left+=l[0],i.top-=l[1]):"bottom"===s&&(i.left+=l[0],i.top+=l[1]),t.popper=i,t},offset:0},preventOverflow:{order:300,enabled:!0,fn:function(t,e){var n=e.boundariesElement||v(t.instance.popper);t.instance.reference===n&&(n=v(n));var r=W("transform"),o=t.instance.popper.style,i=o.top,a=o.left,s=o[r];o.top="",o.left="",o[r]="";var l=P(t.instance.popper,t.instance.reference,e.padding,n,t.positionFixed);o.top=i,o.left=a,o[r]=s,e.boundaries=l;var c=e.priority,u=t.offsets.popper,p={primary:function(t){var n=u[t];return u[t]<l[t]&&!e.escapeWithReference&&(n=Math.max(u[t],l[t])),B({},t,n)},secondary:function(t){var n="right"===t?"left":"top",r=u[n];return u[t]>l[t]&&!e.escapeWithReference&&(r=Math.min(u[n],l[t]-("right"===t?u.width:u.height))),B({},n,r)}};return c.forEach((function(t){var e=-1!==["left","top"].indexOf(t)?"primary":"secondary";u=k({},u,p[e](t))})),t.offsets.popper=u,t},priority:["left","right","top","bottom"],padding:5,boundariesElement:"scrollParent"},keepTogether:{order:400,enabled:!0,fn:function(t){var e=t.offsets,n=e.popper,r=e.reference,o=t.placement.split("-")[0],i=Math.floor,a=-1!==["top","bottom"].indexOf(o),s=a?"right":"bottom",l=a?"left":"top",c=a?"width":"height";return n[s]<i(r[l])&&(t.offsets.popper[l]=i(r[l])-n[c]),n[l]>i(r[s])&&(t.offsets.popper[l]=i(r[s])),t}},arrow:{order:500,enabled:!0,fn:function(t,e){var n;if(!rt(t.instance.modifiers,"arrow","keepTogether"))return t;var r=e.element;if("string"==typeof r){if(!(r=t.instance.popper.querySelector(r)))return t}else if(!t.instance.popper.contains(r))return a.warn("WARNING: `arrow.element` must be child of its popper element!"),t;var o=t.placement.split("-")[0],i=t.offsets,s=i.popper,l=i.reference,c=-1!==["left","right"].indexOf(o),u=c?"height":"width",A=c?"Top":"Left",f=A.toLowerCase(),d=c?"left":"top",h=c?"bottom":"right",m=$(r)[u];l[h]-m<s[f]&&(t.offsets.popper[f]-=s[f]-(l[h]-m)),l[f]+m>s[h]&&(t.offsets.popper[f]+=l[f]+m-s[h]),t.offsets.popper=_(t.offsets.popper);var g=l[f]+l[u]/2-m/2,v=p(t.instance.popper),y=parseFloat(v["margin"+A]),b=parseFloat(v["border"+A+"Width"]),C=g-t.offsets.popper[f]-y-b;return C=Math.max(Math.min(s[u]-m,C),0),t.arrowElement=r,t.offsets.arrow=(B(n={},f,Math.round(C)),B(n,d,""),n),t},element:"[x-arrow]"},flip:{order:600,enabled:!0,fn:function(t,e){if(H(t.instance.modifiers,"inner"))return t;if(t.flipped&&t.placement===t.originalPlacement)return t;var n=P(t.instance.popper,t.instance.reference,e.padding,e.boundariesElement,t.positionFixed),r=t.placement.split("-")[0],o=R(r),i=t.placement.split("-")[1]||"",a=[];switch(e.behavior){case st:a=[r,o];break;case lt:a=at(r);break;case ct:a=at(r,!0);break;default:a=e.behavior}return a.forEach((function(s,l){if(r!==s||a.length===l+1)return t;r=t.placement.split("-")[0],o=R(r);var c=t.offsets.popper,u=t.offsets.reference,p=Math.floor,A="left"===r&&p(c.right)>p(u.left)||"right"===r&&p(c.left)<p(u.right)||"top"===r&&p(c.bottom)>p(u.top)||"bottom"===r&&p(c.top)<p(u.bottom),f=p(c.left)<p(n.left),d=p(c.right)>p(n.right),h=p(c.top)<p(n.top),m=p(c.bottom)>p(n.bottom),g="left"===r&&f||"right"===r&&d||"top"===r&&h||"bottom"===r&&m,v=-1!==["top","bottom"].indexOf(r),y=!!e.flipVariations&&(v&&"start"===i&&f||v&&"end"===i&&d||!v&&"start"===i&&h||!v&&"end"===i&&m),b=!!e.flipVariationsByContent&&(v&&"start"===i&&d||v&&"end"===i&&f||!v&&"start"===i&&m||!v&&"end"===i&&h),C=y||b;(A||g||C)&&(t.flipped=!0,(A||g)&&(r=a[l+1]),C&&(i=function(t){return"end"===t?"start":"start"===t?"end":t}(i)),t.placement=r+(i?"-"+i:""),t.offsets.popper=k({},t.offsets.popper,U(t.instance.popper,t.offsets.reference,t.placement)),t=Q(t.instance.modifiers,t,"flip"))})),t},behavior:"flip",padding:5,boundariesElement:"viewport",flipVariations:!1,flipVariationsByContent:!1},inner:{order:700,enabled:!1,fn:function(t){var e=t.placement,n=e.split("-")[0],r=t.offsets,o=r.popper,i=r.reference,a=-1!==["left","right"].indexOf(n),s=-1===["top","left"].indexOf(n);return o[a?"left":"top"]=i[n]-(s?o[a?"width":"height"]:0),t.placement=R(e),t.offsets.popper=_(o),t}},hide:{order:800,enabled:!0,fn:function(t){if(!rt(t.instance.modifiers,"hide","preventOverflow"))return t;var e=t.offsets.reference,n=G(t.instance.modifiers,(function(t){return"preventOverflow"===t.name})).boundaries;if(e.bottom<n.top||e.left>n.right||e.top>n.bottom||e.right<n.left){if(!0===t.hide)return t;t.hide=!0,t.attributes["x-out-of-boundaries"]=""}else{if(!1===t.hide)return t;t.hide=!1,t.attributes["x-out-of-boundaries"]=!1}return t}},computeStyle:{order:850,enabled:!0,fn:function(t,e){var n=e.x,r=e.y,o=t.offsets.popper,i=G(t.instance.modifiers,(function(t){return"applyStyle"===t.name})).gpuAcceleration;void 0!==i&&a.warn("WARNING: `gpuAcceleration` option moved to `computeStyle` modifier and will not be supported in future versions of Popper.js!");var s=void 0!==i?i:e.gpuAcceleration,l=v(t.instance.popper),c=O(l),u={position:o.position},p=function(t,e){var n=t.offsets,r=n.popper,o=n.reference,i=Math.round,a=Math.floor,s=function(t){return t},l=i(o.width),c=i(r.width),u=-1!==["left","right"].indexOf(t.placement),p=-1!==t.placement.indexOf("-"),A=e?u||p||l%2==c%2?i:a:s,f=e?i:s;return{left:A(l%2==1&&c%2==1&&!p&&e?r.left-1:r.left),top:f(r.top),bottom:f(r.bottom),right:A(r.right)}}(t,window.devicePixelRatio<2||!nt),A="bottom"===n?"top":"bottom",f="right"===r?"left":"right",d=W("transform"),h=void 0,m=void 0;if(m="bottom"===A?"HTML"===l.nodeName?-l.clientHeight+p.bottom:-c.height+p.bottom:p.top,h="right"===f?"HTML"===l.nodeName?-l.clientWidth+p.right:-c.width+p.right:p.left,s&&d)u[d]="translate3d("+h+"px, "+m+"px, 0)",u[A]=0,u[f]=0,u.willChange="transform";else{var g="bottom"===A?-1:1,y="right"===f?-1:1;u[A]=m*g,u[f]=h*y,u.willChange=A+", "+f}var b={"x-placement":t.placement};return t.attributes=k({},b,t.attributes),t.styles=k({},u,t.styles),t.arrowStyles=k({},t.offsets.arrow,t.arrowStyles),t},gpuAcceleration:!0,x:"bottom",y:"right"},applyStyle:{order:900,enabled:!0,fn:function(t){var e,n;return et(t.instance.popper,t.styles),e=t.instance.popper,n=t.attributes,Object.keys(n).forEach((function(t){!1!==n[t]?e.setAttribute(t,n[t]):e.removeAttribute(t)})),t.arrowElement&&Object.keys(t.arrowStyles).length&&et(t.arrowElement,t.arrowStyles),t},onLoad:function(t,e,n,r,o){var i=z(o,e,t,n.positionFixed),a=F(n.placement,i,e,t,n.modifiers.flip.boundariesElement,n.modifiers.flip.padding);return e.setAttribute("x-placement",a),et(e,{position:n.positionFixed?"fixed":"absolute"}),n},gpuAcceleration:void 0}},At={placement:"bottom",positionFixed:!1,eventsEnabled:!0,removeOnDestroy:!1,onCreate:function(){},onUpdate:function(){},modifiers:pt},ft=function(){function t(e,n){var r=this,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};T(this,t),this.scheduleUpdate=function(){return requestAnimationFrame(r.update)},this.update=c(this.update.bind(this)),this.options=k({},t.Defaults,o),this.state={isDestroyed:!1,isCreated:!1,scrollParents:[]},this.reference=e&&e.jquery?e[0]:e,this.popper=n&&n.jquery?n[0]:n,this.options.modifiers={},Object.keys(k({},t.Defaults.modifiers,o.modifiers)).forEach((function(e){r.options.modifiers[e]=k({},t.Defaults.modifiers[e]||{},o.modifiers?o.modifiers[e]:{})})),this.modifiers=Object.keys(this.options.modifiers).map((function(t){return k({name:t},r.options.modifiers[t])})).sort((function(t,e){return t.order-e.order})),this.modifiers.forEach((function(t){t.enabled&&u(t.onLoad)&&t.onLoad(r.reference,r.popper,r.options,t,r.state)})),this.update();var i=this.options.eventsEnabled;i&&this.enableEventListeners(),this.state.eventsEnabled=i}return I(t,[{key:"update",value:function(){return Y.call(this)}},{key:"destroy",value:function(){return V.call(this)}},{key:"enableEventListeners",value:function(){return J.call(this)}},{key:"disableEventListeners",value:function(){return K.call(this)}}]),t}();ft.Utils=("undefined"!=typeof window?window:n.g).PopperUtils,ft.placements=ot,ft.Defaults=At;const dt=ft;var ht,mt=n(8446),gt=n.n(mt);function vt(){vt.init||(vt.init=!0,ht=-1!==function(){var t=window.navigator.userAgent,e=t.indexOf("MSIE ");if(e>0)return parseInt(t.substring(e+5,t.indexOf(".",e)),10);if(t.indexOf("Trident/")>0){var n=t.indexOf("rv:");return parseInt(t.substring(n+3,t.indexOf(".",n)),10)}var r=t.indexOf("Edge/");return r>0?parseInt(t.substring(r+5,t.indexOf(".",r)),10):-1}())}function yt(t,e,n,r,o,i,a,s,l,c){"boolean"!=typeof a&&(l=s,s=a,a=!1);var u,p="function"==typeof n?n.options:n;if(t&&t.render&&(p.render=t.render,p.staticRenderFns=t.staticRenderFns,p._compiled=!0,o&&(p.functional=!0)),r&&(p._scopeId=r),i?(u=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,l(t)),t&&t._registeredComponents&&t._registeredComponents.add(i)},p._ssrRegister=u):e&&(u=a?function(t){e.call(this,c(t,this.$root.$options.shadowRoot))}:function(t){e.call(this,s(t))}),u)if(p.functional){var A=p.render;p.render=function(t,e){return u.call(e),A(t,e)}}else{var f=p.beforeCreate;p.beforeCreate=f?[].concat(f,u):[u]}return n}var bt={name:"ResizeObserver",props:{emitOnMount:{type:Boolean,default:!1},ignoreWidth:{type:Boolean,default:!1},ignoreHeight:{type:Boolean,default:!1}},mounted:function(){var t=this;vt(),this.$nextTick((function(){t._w=t.$el.offsetWidth,t._h=t.$el.offsetHeight,t.emitOnMount&&t.emitSize()}));var e=document.createElement("object");this._resizeObject=e,e.setAttribute("aria-hidden","true"),e.setAttribute("tabindex",-1),e.onload=this.addResizeHandlers,e.type="text/html",ht&&this.$el.appendChild(e),e.data="about:blank",ht||this.$el.appendChild(e)},beforeDestroy:function(){this.removeResizeHandlers()},methods:{compareAndNotify:function(){(!this.ignoreWidth&&this._w!==this.$el.offsetWidth||!this.ignoreHeight&&this._h!==this.$el.offsetHeight)&&(this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitSize())},emitSize:function(){this.$emit("notify",{width:this._w,height:this._h})},addResizeHandlers:function(){this._resizeObject.contentDocument.defaultView.addEventListener("resize",this.compareAndNotify),this.compareAndNotify()},removeResizeHandlers:function(){this._resizeObject&&this._resizeObject.onload&&(!ht&&this._resizeObject.contentDocument&&this._resizeObject.contentDocument.defaultView.removeEventListener("resize",this.compareAndNotify),this.$el.removeChild(this._resizeObject),this._resizeObject.onload=null,this._resizeObject=null)}}},Ct=function(){var t=this.$createElement;return(this._self._c||t)("div",{staticClass:"resize-observer",attrs:{tabindex:"-1"}})};Ct._withStripped=!0;var wt=yt({render:Ct,staticRenderFns:[]},undefined,bt,"data-v-8859cc6c",false,undefined,!1,void 0,void 0,void 0);var xt={version:"1.0.1",install:function(t){t.component("resize-observer",wt),t.component("ResizeObserver",wt)}},Et=null;"undefined"!=typeof window?Et=window.Vue:void 0!==n.g&&(Et=n.g.Vue),Et&&Et.use(xt);var St=n(3857),Tt=n.n(St),It=n(5108),Bt=function(){};function kt(t){return"string"==typeof t&&(t=t.split(" ")),t}function _t(t,e){var n,r=kt(e);n=t.className instanceof Bt?kt(t.className.baseVal):kt(t.className),r.forEach((function(t){-1===n.indexOf(t)&&n.push(t)})),t instanceof SVGElement?t.setAttribute("class",n.join(" ")):t.className=n.join(" ")}function Ot(t,e){var n,r=kt(e);n=t.className instanceof Bt?kt(t.className.baseVal):kt(t.className),r.forEach((function(t){var e=n.indexOf(t);-1!==e&&n.splice(e,1)})),t instanceof SVGElement?t.setAttribute("class",n.join(" ")):t.className=n.join(" ")}"undefined"!=typeof window&&(Bt=window.SVGAnimatedString);var Nt=!1;if("undefined"!=typeof window){Nt=!1;try{var Mt=Object.defineProperty({},"passive",{get:function(){Nt=!0}});window.addEventListener("test",null,Mt)}catch(t){}}function jt(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function Dt(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?jt(Object(n),!0).forEach((function(e){o(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):jt(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}var Pt={container:!1,delay:0,html:!1,placement:"top",title:"",template:'<div class="tooltip" role="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>',trigger:"hover focus",offset:0},Lt=[],Ft=function(){function t(e,n){var r=this;!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),o(this,"_events",[]),o(this,"_setTooltipNodeEvent",(function(t,e,n,o){var i=t.relatedreference||t.toElement||t.relatedTarget;return!!r._tooltipNode.contains(i)&&(r._tooltipNode.addEventListener(t.type,(function n(i){var a=i.relatedreference||i.toElement||i.relatedTarget;r._tooltipNode.removeEventListener(t.type,n),e.contains(a)||r._scheduleHide(e,o.delay,o,i)})),!0)})),n=Dt(Dt({},Pt),n),e.jquery&&(e=e[0]),this.show=this.show.bind(this),this.hide=this.hide.bind(this),this.reference=e,this.options=n,this._isOpen=!1,this._init()}var e,n,r;return e=t,(n=[{key:"show",value:function(){this._show(this.reference,this.options)}},{key:"hide",value:function(){this._hide()}},{key:"dispose",value:function(){this._dispose()}},{key:"toggle",value:function(){return this._isOpen?this.hide():this.show()}},{key:"setClasses",value:function(t){this._classes=t}},{key:"setContent",value:function(t){this.options.title=t,this._tooltipNode&&this._setContent(t,this.options)}},{key:"setOptions",value:function(t){var e=!1,n=t&&t.classes||Zt.options.defaultClass;gt()(this._classes,n)||(this.setClasses(n),e=!0),t=Qt(t);var r=!1,o=!1;for(var i in this.options.offset===t.offset&&this.options.placement===t.placement||(r=!0),(this.options.template!==t.template||this.options.trigger!==t.trigger||this.options.container!==t.container||e)&&(o=!0),t)this.options[i]=t[i];if(this._tooltipNode)if(o){var a=this._isOpen;this.dispose(),this._init(),a&&this.show()}else r&&this.popperInstance.update()}},{key:"_init",value:function(){var t="string"==typeof this.options.trigger?this.options.trigger.split(" "):[];this._isDisposed=!1,this._enableDocumentTouch=-1===t.indexOf("manual"),t=t.filter((function(t){return-1!==["click","hover","focus"].indexOf(t)})),this._setEventListeners(this.reference,t,this.options),this.$_originalTitle=this.reference.getAttribute("title"),this.reference.removeAttribute("title"),this.reference.setAttribute("data-original-title",this.$_originalTitle)}},{key:"_create",value:function(t,e){var n=this,r=window.document.createElement("div");r.innerHTML=e.trim();var o=r.childNodes[0];return o.id=this.options.ariaId||"tooltip_".concat(Math.random().toString(36).substr(2,10)),o.setAttribute("aria-hidden","true"),this.options.autoHide&&-1!==this.options.trigger.indexOf("hover")&&(o.addEventListener("mouseenter",(function(e){return n._scheduleHide(t,n.options.delay,n.options,e)})),o.addEventListener("click",(function(e){return n._scheduleHide(t,n.options.delay,n.options,e)}))),o}},{key:"_setContent",value:function(t,e){var n=this;this.asyncContent=!1,this._applyContent(t,e).then((function(){n.popperInstance&&n.popperInstance.update()}))}},{key:"_applyContent",value:function(t,e){var n=this;return new Promise((function(r,o){var i=e.html,a=n._tooltipNode;if(a){var s=a.querySelector(n.options.innerSelector);if(1===t.nodeType){if(i){for(;s.firstChild;)s.removeChild(s.firstChild);s.appendChild(t)}}else{if("function"==typeof t){var l=t();return void(l&&"function"==typeof l.then?(n.asyncContent=!0,e.loadingClass&&_t(a,e.loadingClass),e.loadingContent&&n._applyContent(e.loadingContent,e),l.then((function(t){return e.loadingClass&&Ot(a,e.loadingClass),n._applyContent(t,e)})).then(r).catch(o)):n._applyContent(l,e).then(r).catch(o))}i?s.innerHTML=t:s.innerText=t}r()}}))}},{key:"_show",value:function(t,e){if(!e||"string"!=typeof e.container||document.querySelector(e.container)){clearTimeout(this._disposeTimer),delete(e=Object.assign({},e)).offset;var n=!0;this._tooltipNode&&(_t(this._tooltipNode,this._classes),n=!1);var r=this._ensureShown(t,e);return n&&this._tooltipNode&&_t(this._tooltipNode,this._classes),_t(t,["v-tooltip-open"]),r}}},{key:"_ensureShown",value:function(t,e){var n=this;if(this._isOpen)return this;if(this._isOpen=!0,Lt.push(this),this._tooltipNode)return this._tooltipNode.style.display="",this._tooltipNode.setAttribute("aria-hidden","false"),this.popperInstance.enableEventListeners(),this.popperInstance.update(),this.asyncContent&&this._setContent(e.title,e),this;var r=t.getAttribute("title")||e.title;if(!r)return this;var o=this._create(t,e.template);this._tooltipNode=o,t.setAttribute("aria-describedby",o.id);var i=this._findContainer(e.container,t);this._append(o,i);var a=Dt(Dt({},e.popperOptions),{},{placement:e.placement});return a.modifiers=Dt(Dt({},a.modifiers),{},{arrow:{element:this.options.arrowSelector}}),e.boundariesElement&&(a.modifiers.preventOverflow={boundariesElement:e.boundariesElement}),this.popperInstance=new dt(t,o,a),this._setContent(r,e),requestAnimationFrame((function(){!n._isDisposed&&n.popperInstance?(n.popperInstance.update(),requestAnimationFrame((function(){n._isDisposed?n.dispose():n._isOpen&&o.setAttribute("aria-hidden","false")}))):n.dispose()})),this}},{key:"_noLongerOpen",value:function(){var t=Lt.indexOf(this);-1!==t&&Lt.splice(t,1)}},{key:"_hide",value:function(){var t=this;if(!this._isOpen)return this;this._isOpen=!1,this._noLongerOpen(),this._tooltipNode.style.display="none",this._tooltipNode.setAttribute("aria-hidden","true"),this.popperInstance&&this.popperInstance.disableEventListeners(),clearTimeout(this._disposeTimer);var e=Zt.options.disposeTimeout;return null!==e&&(this._disposeTimer=setTimeout((function(){t._tooltipNode&&(t._tooltipNode.removeEventListener("mouseenter",t.hide),t._tooltipNode.removeEventListener("click",t.hide),t._removeTooltipNode())}),e)),Ot(this.reference,["v-tooltip-open"]),this}},{key:"_removeTooltipNode",value:function(){if(this._tooltipNode){var t=this._tooltipNode.parentNode;t&&(t.removeChild(this._tooltipNode),this.reference.removeAttribute("aria-describedby")),this._tooltipNode=null}}},{key:"_dispose",value:function(){var t=this;return this._isDisposed=!0,this.reference.removeAttribute("data-original-title"),this.$_originalTitle&&this.reference.setAttribute("title",this.$_originalTitle),this._events.forEach((function(e){var n=e.func,r=e.event;t.reference.removeEventListener(r,n)})),this._events=[],this._tooltipNode?(this._hide(),this._tooltipNode.removeEventListener("mouseenter",this.hide),this._tooltipNode.removeEventListener("click",this.hide),this.popperInstance.destroy(),this.popperInstance.options.removeOnDestroy||this._removeTooltipNode()):this._noLongerOpen(),this}},{key:"_findContainer",value:function(t,e){return"string"==typeof t?t=window.document.querySelector(t):!1===t&&(t=e.parentNode),t}},{key:"_append",value:function(t,e){e.appendChild(t)}},{key:"_setEventListeners",value:function(t,e,n){var r=this,o=[],i=[];e.forEach((function(t){switch(t){case"hover":o.push("mouseenter"),i.push("mouseleave"),r.options.hideOnTargetClick&&i.push("click");break;case"focus":o.push("focus"),i.push("blur"),r.options.hideOnTargetClick&&i.push("click");break;case"click":o.push("click"),i.push("click")}})),o.forEach((function(e){var o=function(e){!0!==r._isOpen&&(e.usedByTooltip=!0,r._scheduleShow(t,n.delay,n,e))};r._events.push({event:e,func:o}),t.addEventListener(e,o)})),i.forEach((function(e){var o=function(e){!0!==e.usedByTooltip&&r._scheduleHide(t,n.delay,n,e)};r._events.push({event:e,func:o}),t.addEventListener(e,o)}))}},{key:"_onDocumentTouch",value:function(t){this._enableDocumentTouch&&this._scheduleHide(this.reference,this.options.delay,this.options,t)}},{key:"_scheduleShow",value:function(t,e,n){var r=this,o=e&&e.show||e||0;clearTimeout(this._scheduleTimer),this._scheduleTimer=window.setTimeout((function(){return r._show(t,n)}),o)}},{key:"_scheduleHide",value:function(t,e,n,r){var o=this,i=e&&e.hide||e||0;clearTimeout(this._scheduleTimer),this._scheduleTimer=window.setTimeout((function(){if(!1!==o._isOpen&&o._tooltipNode.ownerDocument.body.contains(o._tooltipNode)){if("mouseleave"===r.type&&o._setTooltipNodeEvent(r,t,e,n))return;o._hide(t,n)}}),i)}}])&&i(e.prototype,n),r&&i(e,r),t}();function zt(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function $t(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?zt(Object(n),!0).forEach((function(e){o(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):zt(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}"undefined"!=typeof document&&document.addEventListener("touchstart",(function(t){for(var e=0;e<Lt.length;e++)Lt[e]._onDocumentTouch(t)}),!Nt||{passive:!0,capture:!0});var Rt={enabled:!0},Ut=["top","top-start","top-end","right","right-start","right-end","bottom","bottom-start","bottom-end","left","left-start","left-end"],Gt={defaultPlacement:"top",defaultClass:"vue-tooltip-theme",defaultTargetClass:"has-tooltip",defaultHtml:!0,defaultTemplate:'<div class="tooltip" role="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>',defaultArrowSelector:".tooltip-arrow, .tooltip__arrow",defaultInnerSelector:".tooltip-inner, .tooltip__inner",defaultDelay:0,defaultTrigger:"hover focus",defaultOffset:0,defaultContainer:"body",defaultBoundariesElement:void 0,defaultPopperOptions:{},defaultLoadingClass:"tooltip-loading",defaultLoadingContent:"...",autoHide:!0,defaultHideOnTargetClick:!0,disposeTimeout:5e3,popover:{defaultPlacement:"bottom",defaultClass:"vue-popover-theme",defaultBaseClass:"tooltip popover",defaultWrapperClass:"wrapper",defaultInnerClass:"tooltip-inner popover-inner",defaultArrowClass:"tooltip-arrow popover-arrow",defaultOpenClass:"open",defaultDelay:0,defaultTrigger:"click",defaultOffset:0,defaultContainer:"body",defaultBoundariesElement:void 0,defaultPopperOptions:{},defaultAutoHide:!0,defaultHandleResize:!0}};function Qt(t){var e={placement:void 0!==t.placement?t.placement:Zt.options.defaultPlacement,delay:void 0!==t.delay?t.delay:Zt.options.defaultDelay,html:void 0!==t.html?t.html:Zt.options.defaultHtml,template:void 0!==t.template?t.template:Zt.options.defaultTemplate,arrowSelector:void 0!==t.arrowSelector?t.arrowSelector:Zt.options.defaultArrowSelector,innerSelector:void 0!==t.innerSelector?t.innerSelector:Zt.options.defaultInnerSelector,trigger:void 0!==t.trigger?t.trigger:Zt.options.defaultTrigger,offset:void 0!==t.offset?t.offset:Zt.options.defaultOffset,container:void 0!==t.container?t.container:Zt.options.defaultContainer,boundariesElement:void 0!==t.boundariesElement?t.boundariesElement:Zt.options.defaultBoundariesElement,autoHide:void 0!==t.autoHide?t.autoHide:Zt.options.autoHide,hideOnTargetClick:void 0!==t.hideOnTargetClick?t.hideOnTargetClick:Zt.options.defaultHideOnTargetClick,loadingClass:void 0!==t.loadingClass?t.loadingClass:Zt.options.defaultLoadingClass,loadingContent:void 0!==t.loadingContent?t.loadingContent:Zt.options.defaultLoadingContent,popperOptions:$t({},void 0!==t.popperOptions?t.popperOptions:Zt.options.defaultPopperOptions)};if(e.offset){var n=r(e.offset),o=e.offset;("number"===n||"string"===n&&-1===o.indexOf(","))&&(o="0, ".concat(o)),e.popperOptions.modifiers||(e.popperOptions.modifiers={}),e.popperOptions.modifiers.offset={offset:o}}return e.trigger&&-1!==e.trigger.indexOf("click")&&(e.hideOnTargetClick=!1),e}function Yt(t,e){for(var n=t.placement,r=0;r<Ut.length;r++){var o=Ut[r];e[o]&&(n=o)}return n}function Ht(t){var e=r(t);return"string"===e?t:!(!t||"object"!==e)&&t.content}function Wt(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o=Ht(e),i=void 0!==e.classes?e.classes:Zt.options.defaultClass,a=$t({title:o},Qt($t($t({},"object"===r(e)?e:{}),{},{placement:Yt(e,n)}))),s=t._tooltip=new Ft(t,a);s.setClasses(i),s._vueEl=t;var l=void 0!==e.targetClasses?e.targetClasses:Zt.options.defaultTargetClass;return t._tooltipTargetClasses=l,_t(t,l),s}function Vt(t){t._tooltip&&(t._tooltip.dispose(),delete t._tooltip,delete t._tooltipOldShow),t._tooltipTargetClasses&&(Ot(t,t._tooltipTargetClasses),delete t._tooltipTargetClasses)}function qt(t,e){var n=e.value;e.oldValue;var r,o=e.modifiers,i=Ht(n);i&&Rt.enabled?(t._tooltip?((r=t._tooltip).setContent(i),r.setOptions($t($t({},n),{},{placement:Yt(n,o)}))):r=Wt(t,n,o),void 0!==n.show&&n.show!==t._tooltipOldShow&&(t._tooltipOldShow=n.show,n.show?r.show():r.hide())):Vt(t)}var Zt={options:Gt,bind:qt,update:qt,unbind:function(t){Vt(t)}};function Xt(t){t.addEventListener("click",Kt),t.addEventListener("touchstart",te,!!Nt&&{passive:!0})}function Jt(t){t.removeEventListener("click",Kt),t.removeEventListener("touchstart",te),t.removeEventListener("touchend",ee),t.removeEventListener("touchcancel",ne)}function Kt(t){var e=t.currentTarget;t.closePopover=!e.$_vclosepopover_touch,t.closeAllPopover=e.$_closePopoverModifiers&&!!e.$_closePopoverModifiers.all}function te(t){if(1===t.changedTouches.length){var e=t.currentTarget;e.$_vclosepopover_touch=!0;var n=t.changedTouches[0];e.$_vclosepopover_touchPoint=n,e.addEventListener("touchend",ee),e.addEventListener("touchcancel",ne)}}function ee(t){var e=t.currentTarget;if(e.$_vclosepopover_touch=!1,1===t.changedTouches.length){var n=t.changedTouches[0],r=e.$_vclosepopover_touchPoint;t.closePopover=Math.abs(n.screenY-r.screenY)<20&&Math.abs(n.screenX-r.screenX)<20,t.closeAllPopover=e.$_closePopoverModifiers&&!!e.$_closePopoverModifiers.all}}function ne(t){t.currentTarget.$_vclosepopover_touch=!1}var re={bind:function(t,e){var n=e.value,r=e.modifiers;t.$_closePopoverModifiers=r,(void 0===n||n)&&Xt(t)},update:function(t,e){var n=e.value,r=e.oldValue,o=e.modifiers;t.$_closePopoverModifiers=o,n!==r&&(void 0===n||n?Xt(t):Jt(t))},unbind:function(t){Jt(t)}};function oe(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function ie(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?oe(Object(n),!0).forEach((function(e){o(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):oe(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function ae(t){var e=Zt.options.popover[t];return void 0===e?Zt.options[t]:e}var se=!1;"undefined"!=typeof window&&"undefined"!=typeof navigator&&(se=/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream);var le=[],ce=function(){};"undefined"!=typeof window&&(ce=window.Element);var ue={name:"VPopover",components:{ResizeObserver:wt},props:{open:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},placement:{type:String,default:function(){return ae("defaultPlacement")}},delay:{type:[String,Number,Object],default:function(){return ae("defaultDelay")}},offset:{type:[String,Number],default:function(){return ae("defaultOffset")}},trigger:{type:String,default:function(){return ae("defaultTrigger")}},container:{type:[String,Object,ce,Boolean],default:function(){return ae("defaultContainer")}},boundariesElement:{type:[String,ce],default:function(){return ae("defaultBoundariesElement")}},popperOptions:{type:Object,default:function(){return ae("defaultPopperOptions")}},popoverClass:{type:[String,Array],default:function(){return ae("defaultClass")}},popoverBaseClass:{type:[String,Array],default:function(){return Zt.options.popover.defaultBaseClass}},popoverInnerClass:{type:[String,Array],default:function(){return Zt.options.popover.defaultInnerClass}},popoverWrapperClass:{type:[String,Array],default:function(){return Zt.options.popover.defaultWrapperClass}},popoverArrowClass:{type:[String,Array],default:function(){return Zt.options.popover.defaultArrowClass}},autoHide:{type:Boolean,default:function(){return Zt.options.popover.defaultAutoHide}},handleResize:{type:Boolean,default:function(){return Zt.options.popover.defaultHandleResize}},openGroup:{type:String,default:null},openClass:{type:[String,Array],default:function(){return Zt.options.popover.defaultOpenClass}},ariaId:{default:null}},data:function(){return{isOpen:!1,id:Math.random().toString(36).substr(2,10)}},computed:{cssClass:function(){return o({},this.openClass,this.isOpen)},popoverId:function(){return"popover_".concat(null!=this.ariaId?this.ariaId:this.id)}},watch:{open:function(t){t?this.show():this.hide()},disabled:function(t,e){t!==e&&(t?this.hide():this.open&&this.show())},container:function(t){if(this.isOpen&&this.popperInstance){var e=this.$refs.popover,n=this.$refs.trigger,r=this.$_findContainer(this.container,n);if(!r)return void It.warn("No container for popover",this);r.appendChild(e),this.popperInstance.scheduleUpdate()}},trigger:function(t){this.$_removeEventListeners(),this.$_addEventListeners()},placement:function(t){var e=this;this.$_updatePopper((function(){e.popperInstance.options.placement=t}))},offset:"$_restartPopper",boundariesElement:"$_restartPopper",popperOptions:{handler:"$_restartPopper",deep:!0}},created:function(){this.$_isDisposed=!1,this.$_mounted=!1,this.$_events=[],this.$_preventOpen=!1},mounted:function(){var t=this.$refs.popover;t.parentNode&&t.parentNode.removeChild(t),this.$_init(),this.open&&this.show()},deactivated:function(){this.hide()},beforeDestroy:function(){this.dispose()},methods:{show:function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=e.event;e.skipDelay;var r=e.force,o=void 0!==r&&r;!o&&this.disabled||(this.$_scheduleShow(n),this.$emit("show")),this.$emit("update:open",!0),this.$_beingShowed=!0,requestAnimationFrame((function(){t.$_beingShowed=!1}))},hide:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=t.event;t.skipDelay,this.$_scheduleHide(e),this.$emit("hide"),this.$emit("update:open",!1)},dispose:function(){if(this.$_isDisposed=!0,this.$_removeEventListeners(),this.hide({skipDelay:!0}),this.popperInstance&&(this.popperInstance.destroy(),!this.popperInstance.options.removeOnDestroy)){var t=this.$refs.popover;t.parentNode&&t.parentNode.removeChild(t)}this.$_mounted=!1,this.popperInstance=null,this.isOpen=!1,this.$emit("dispose")},$_init:function(){-1===this.trigger.indexOf("manual")&&this.$_addEventListeners()},$_show:function(){var t=this,e=this.$refs.trigger,n=this.$refs.popover;if(clearTimeout(this.$_disposeTimer),!this.isOpen){if(this.popperInstance&&(this.isOpen=!0,this.popperInstance.enableEventListeners(),this.popperInstance.scheduleUpdate()),!this.$_mounted){var r=this.$_findContainer(this.container,e);if(!r)return void It.warn("No container for popover",this);r.appendChild(n),this.$_mounted=!0,this.isOpen=!1,this.popperInstance&&requestAnimationFrame((function(){t.hidden||(t.isOpen=!0)}))}if(!this.popperInstance){var o=ie(ie({},this.popperOptions),{},{placement:this.placement});if(o.modifiers=ie(ie({},o.modifiers),{},{arrow:ie(ie({},o.modifiers&&o.modifiers.arrow),{},{element:this.$refs.arrow})}),this.offset){var i=this.$_getOffset();o.modifiers.offset=ie(ie({},o.modifiers&&o.modifiers.offset),{},{offset:i})}this.boundariesElement&&(o.modifiers.preventOverflow=ie(ie({},o.modifiers&&o.modifiers.preventOverflow),{},{boundariesElement:this.boundariesElement})),this.popperInstance=new dt(e,n,o),requestAnimationFrame((function(){if(t.hidden)return t.hidden=!1,void t.$_hide();!t.$_isDisposed&&t.popperInstance?(t.popperInstance.scheduleUpdate(),requestAnimationFrame((function(){if(t.hidden)return t.hidden=!1,void t.$_hide();t.$_isDisposed?t.dispose():t.isOpen=!0}))):t.dispose()}))}var a=this.openGroup;if(a)for(var s,l=0;l<le.length;l++)(s=le[l]).openGroup!==a&&(s.hide(),s.$emit("close-group"));le.push(this),this.$emit("apply-show")}},$_hide:function(){var t=this;if(this.isOpen){var e=le.indexOf(this);-1!==e&&le.splice(e,1),this.isOpen=!1,this.popperInstance&&this.popperInstance.disableEventListeners(),clearTimeout(this.$_disposeTimer);var n=Zt.options.popover.disposeTimeout||Zt.options.disposeTimeout;null!==n&&(this.$_disposeTimer=setTimeout((function(){var e=t.$refs.popover;e&&(e.parentNode&&e.parentNode.removeChild(e),t.$_mounted=!1)}),n)),this.$emit("apply-hide")}},$_findContainer:function(t,e){return"string"==typeof t?t=window.document.querySelector(t):!1===t&&(t=e.parentNode),t},$_getOffset:function(){var t=r(this.offset),e=this.offset;return("number"===t||"string"===t&&-1===e.indexOf(","))&&(e="0, ".concat(e)),e},$_addEventListeners:function(){var t=this,e=this.$refs.trigger,n=[],r=[];("string"==typeof this.trigger?this.trigger.split(" ").filter((function(t){return-1!==["click","hover","focus"].indexOf(t)})):[]).forEach((function(t){switch(t){case"hover":n.push("mouseenter"),r.push("mouseleave");break;case"focus":n.push("focus"),r.push("blur");break;case"click":n.push("click"),r.push("click")}})),n.forEach((function(n){var r=function(e){t.isOpen||(e.usedByTooltip=!0,!t.$_preventOpen&&t.show({event:e}),t.hidden=!1)};t.$_events.push({event:n,func:r}),e.addEventListener(n,r)})),r.forEach((function(n){var r=function(e){e.usedByTooltip||(t.hide({event:e}),t.hidden=!0)};t.$_events.push({event:n,func:r}),e.addEventListener(n,r)}))},$_scheduleShow:function(){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(clearTimeout(this.$_scheduleTimer),t)this.$_show();else{var e=parseInt(this.delay&&this.delay.show||this.delay||0);this.$_scheduleTimer=setTimeout(this.$_show.bind(this),e)}},$_scheduleHide:function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,n=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(clearTimeout(this.$_scheduleTimer),n)this.$_hide();else{var r=parseInt(this.delay&&this.delay.hide||this.delay||0);this.$_scheduleTimer=setTimeout((function(){if(t.isOpen){if(e&&"mouseleave"===e.type)if(t.$_setTooltipNodeEvent(e))return;t.$_hide()}}),r)}},$_setTooltipNodeEvent:function(t){var e=this,n=this.$refs.trigger,r=this.$refs.popover,o=t.relatedreference||t.toElement||t.relatedTarget;return!!r.contains(o)&&(r.addEventListener(t.type,(function o(i){var a=i.relatedreference||i.toElement||i.relatedTarget;r.removeEventListener(t.type,o),n.contains(a)||e.hide({event:i})})),!0)},$_removeEventListeners:function(){var t=this.$refs.trigger;this.$_events.forEach((function(e){var n=e.func,r=e.event;t.removeEventListener(r,n)})),this.$_events=[]},$_updatePopper:function(t){this.popperInstance&&(t(),this.isOpen&&this.popperInstance.scheduleUpdate())},$_restartPopper:function(){if(this.popperInstance){var t=this.isOpen;this.dispose(),this.$_isDisposed=!1,this.$_init(),t&&this.show({skipDelay:!0,force:!0})}},$_handleGlobalClose:function(t){var e=this,n=arguments.length>1&&void 0!==arguments[1]&&arguments[1];this.$_beingShowed||(this.hide({event:t}),t.closePopover?this.$emit("close-directive"):this.$emit("auto-hide"),n&&(this.$_preventOpen=!0,setTimeout((function(){e.$_preventOpen=!1}),300)))},$_handleResize:function(){this.isOpen&&this.popperInstance&&(this.popperInstance.scheduleUpdate(),this.$emit("resize"))}}};function pe(t){for(var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=function(n){var r=le[n];if(r.$refs.popover){var o=r.$refs.popover.contains(t.target);requestAnimationFrame((function(){(t.closeAllPopover||t.closePopover&&o||r.autoHide&&!o)&&r.$_handleGlobalClose(t,e)}))}},r=0;r<le.length;r++)n(r)}function Ae(t,e,n,r,o,i,a,s,l,c){"boolean"!=typeof a&&(l=s,s=a,a=!1);const u="function"==typeof n?n.options:n;let p;if(t&&t.render&&(u.render=t.render,u.staticRenderFns=t.staticRenderFns,u._compiled=!0,o&&(u.functional=!0)),r&&(u._scopeId=r),i?(p=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,l(t)),t&&t._registeredComponents&&t._registeredComponents.add(i)},u._ssrRegister=p):e&&(p=a?function(t){e.call(this,c(t,this.$root.$options.shadowRoot))}:function(t){e.call(this,s(t))}),p)if(u.functional){const t=u.render;u.render=function(e,n){return p.call(n),t(e,n)}}else{const t=u.beforeCreate;u.beforeCreate=t?[].concat(t,p):[p]}return n}"undefined"!=typeof document&&"undefined"!=typeof window&&(se?document.addEventListener("touchend",(function(t){pe(t,!0)}),!Nt||{passive:!0,capture:!0}):window.addEventListener("click",(function(t){pe(t)}),!0));var fe=ue,de=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"v-popover",class:t.cssClass},[n("div",{ref:"trigger",staticClass:"trigger",staticStyle:{display:"inline-block"},attrs:{"aria-describedby":t.isOpen?t.popoverId:void 0,tabindex:-1!==t.trigger.indexOf("focus")?0:void 0}},[t._t("default")],2),t._v(" "),n("div",{ref:"popover",class:[t.popoverBaseClass,t.popoverClass,t.cssClass],style:{visibility:t.isOpen?"visible":"hidden"},attrs:{id:t.popoverId,"aria-hidden":t.isOpen?"false":"true",tabindex:t.autoHide?0:void 0},on:{keyup:function(e){if(!e.type.indexOf("key")&&t._k(e.keyCode,"esc",27,e.key,["Esc","Escape"]))return null;t.autoHide&&t.hide()}}},[n("div",{class:t.popoverWrapperClass},[n("div",{ref:"inner",class:t.popoverInnerClass,staticStyle:{position:"relative"}},[n("div",[t._t("popover",null,{isOpen:t.isOpen})],2),t._v(" "),t.handleResize?n("ResizeObserver",{on:{notify:t.$_handleResize}}):t._e()],1),t._v(" "),n("div",{ref:"arrow",class:t.popoverArrowClass})])])])};de._withStripped=!0;var he=Ae({render:de,staticRenderFns:[]},undefined,fe,undefined,false,undefined,!1,void 0,void 0,void 0);function me(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!me.installed){me.installed=!0;var n={};Tt()(n,Gt,e),be.options=n,Zt.options=n,t.directive("tooltip",Zt),t.directive("close-popover",re),t.component("VPopover",he)}}!function(t,e){void 0===e&&(e={});var n=e.insertAt;if(t&&"undefined"!=typeof document){var r=document.head||document.getElementsByTagName("head")[0],o=document.createElement("style");o.type="text/css","top"===n&&r.firstChild?r.insertBefore(o,r.firstChild):r.appendChild(o),o.styleSheet?o.styleSheet.cssText=t:o.appendChild(document.createTextNode(t))}}(".resize-observer[data-v-8859cc6c]{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-8859cc6c] object{display:block;position:absolute;top:0;left:0;height:100%;width:100%;overflow:hidden;pointer-events:none;z-index:-1}");var ge=Zt,ve=re,ye=he,be={install:me,get enabled(){return Rt.enabled},set enabled(t){Rt.enabled=t}},Ce=null;"undefined"!=typeof window?Ce=window.Vue:void 0!==n.g&&(Ce=n.g.Vue),Ce&&Ce.use(be);const we=be},144:(t,e,n)=>{"use strict";n.r(e),n.d(e,{default:()=>Qo});var r=n(5108),o=Object.freeze({});function i(t){return null==t}function a(t){return null!=t}function s(t){return!0===t}function l(t){return"string"==typeof t||"number"==typeof t||"symbol"==typeof t||"boolean"==typeof t}function c(t){return null!==t&&"object"==typeof t}var u=Object.prototype.toString;function p(t){return"[object Object]"===u.call(t)}function A(t){return"[object RegExp]"===u.call(t)}function f(t){var e=parseFloat(String(t));return e>=0&&Math.floor(e)===e&&isFinite(t)}function d(t){return a(t)&&"function"==typeof t.then&&"function"==typeof t.catch}function h(t){return null==t?"":Array.isArray(t)||p(t)&&t.toString===u?JSON.stringify(t,null,2):String(t)}function m(t){var e=parseFloat(t);return isNaN(e)?t:e}function g(t,e){for(var n=Object.create(null),r=t.split(","),o=0;o<r.length;o++)n[r[o]]=!0;return e?function(t){return n[t.toLowerCase()]}:function(t){return n[t]}}g("slot,component",!0);var v=g("key,ref,slot,slot-scope,is");function y(t,e){if(t.length){var n=t.indexOf(e);if(n>-1)return t.splice(n,1)}}var b=Object.prototype.hasOwnProperty;function C(t,e){return b.call(t,e)}function w(t){var e=Object.create(null);return function(n){return e[n]||(e[n]=t(n))}}var x=/-(\w)/g,E=w((function(t){return t.replace(x,(function(t,e){return e?e.toUpperCase():""}))})),S=w((function(t){return t.charAt(0).toUpperCase()+t.slice(1)})),T=/\B([A-Z])/g,I=w((function(t){return t.replace(T,"-$1").toLowerCase()}));var B=Function.prototype.bind?function(t,e){return t.bind(e)}:function(t,e){function n(n){var r=arguments.length;return r?r>1?t.apply(e,arguments):t.call(e,n):t.call(e)}return n._length=t.length,n};function k(t,e){e=e||0;for(var n=t.length-e,r=new Array(n);n--;)r[n]=t[n+e];return r}function _(t,e){for(var n in e)t[n]=e[n];return t}function O(t){for(var e={},n=0;n<t.length;n++)t[n]&&_(e,t[n]);return e}function N(t,e,n){}var M=function(t,e,n){return!1},j=function(t){return t};function D(t,e){if(t===e)return!0;var n=c(t),r=c(e);if(!n||!r)return!n&&!r&&String(t)===String(e);try{var o=Array.isArray(t),i=Array.isArray(e);if(o&&i)return t.length===e.length&&t.every((function(t,n){return D(t,e[n])}));if(t instanceof Date&&e instanceof Date)return t.getTime()===e.getTime();if(o||i)return!1;var a=Object.keys(t),s=Object.keys(e);return a.length===s.length&&a.every((function(n){return D(t[n],e[n])}))}catch(t){return!1}}function P(t,e){for(var n=0;n<t.length;n++)if(D(t[n],e))return n;return-1}function L(t){var e=!1;return function(){e||(e=!0,t.apply(this,arguments))}}var F="data-server-rendered",z=["component","directive","filter"],$=["beforeCreate","created","beforeMount","mounted","beforeUpdate","updated","beforeDestroy","destroyed","activated","deactivated","errorCaptured","serverPrefetch"],R={optionMergeStrategies:Object.create(null),silent:!1,productionTip:!1,devtools:!1,performance:!1,errorHandler:null,warnHandler:null,ignoredElements:[],keyCodes:Object.create(null),isReservedTag:M,isReservedAttr:M,isUnknownElement:M,getTagNamespace:N,parsePlatformTagName:j,mustUseProp:M,async:!0,_lifecycleHooks:$},U=/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/;function G(t){var e=(t+"").charCodeAt(0);return 36===e||95===e}function Q(t,e,n,r){Object.defineProperty(t,e,{value:n,enumerable:!!r,writable:!0,configurable:!0})}var Y=new RegExp("[^"+U.source+".$_\\d]");var H,W="__proto__"in{},V="undefined"!=typeof window,q="undefined"!=typeof WXEnvironment&&!!WXEnvironment.platform,Z=q&&WXEnvironment.platform.toLowerCase(),X=V&&window.navigator.userAgent.toLowerCase(),J=X&&/msie|trident/.test(X),K=X&&X.indexOf("msie 9.0")>0,tt=X&&X.indexOf("edge/")>0,et=(X&&X.indexOf("android"),X&&/iphone|ipad|ipod|ios/.test(X)||"ios"===Z),nt=(X&&/chrome\/\d+/.test(X),X&&/phantomjs/.test(X),X&&X.match(/firefox\/(\d+)/)),rt={}.watch,ot=!1;if(V)try{var it={};Object.defineProperty(it,"passive",{get:function(){ot=!0}}),window.addEventListener("test-passive",null,it)}catch(t){}var at=function(){return void 0===H&&(H=!V&&!q&&void 0!==n.g&&(n.g.process&&"server"===n.g.process.env.VUE_ENV)),H},st=V&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__;function lt(t){return"function"==typeof t&&/native code/.test(t.toString())}var ct,ut="undefined"!=typeof Symbol&&lt(Symbol)&&"undefined"!=typeof Reflect&&lt(Reflect.ownKeys);ct="undefined"!=typeof Set&&lt(Set)?Set:function(){function t(){this.set=Object.create(null)}return t.prototype.has=function(t){return!0===this.set[t]},t.prototype.add=function(t){this.set[t]=!0},t.prototype.clear=function(){this.set=Object.create(null)},t}();var pt=N,At=0,ft=function(){this.id=At++,this.subs=[]};ft.prototype.addSub=function(t){this.subs.push(t)},ft.prototype.removeSub=function(t){y(this.subs,t)},ft.prototype.depend=function(){ft.target&&ft.target.addDep(this)},ft.prototype.notify=function(){var t=this.subs.slice();for(var e=0,n=t.length;e<n;e++)t[e].update()},ft.target=null;var dt=[];function ht(t){dt.push(t),ft.target=t}function mt(){dt.pop(),ft.target=dt[dt.length-1]}var gt=function(t,e,n,r,o,i,a,s){this.tag=t,this.data=e,this.children=n,this.text=r,this.elm=o,this.ns=void 0,this.context=i,this.fnContext=void 0,this.fnOptions=void 0,this.fnScopeId=void 0,this.key=e&&e.key,this.componentOptions=a,this.componentInstance=void 0,this.parent=void 0,this.raw=!1,this.isStatic=!1,this.isRootInsert=!0,this.isComment=!1,this.isCloned=!1,this.isOnce=!1,this.asyncFactory=s,this.asyncMeta=void 0,this.isAsyncPlaceholder=!1},vt={child:{configurable:!0}};vt.child.get=function(){return this.componentInstance},Object.defineProperties(gt.prototype,vt);var yt=function(t){void 0===t&&(t="");var e=new gt;return e.text=t,e.isComment=!0,e};function bt(t){return new gt(void 0,void 0,void 0,String(t))}function Ct(t){var e=new gt(t.tag,t.data,t.children&&t.children.slice(),t.text,t.elm,t.context,t.componentOptions,t.asyncFactory);return e.ns=t.ns,e.isStatic=t.isStatic,e.key=t.key,e.isComment=t.isComment,e.fnContext=t.fnContext,e.fnOptions=t.fnOptions,e.fnScopeId=t.fnScopeId,e.asyncMeta=t.asyncMeta,e.isCloned=!0,e}var wt=Array.prototype,xt=Object.create(wt);["push","pop","shift","unshift","splice","sort","reverse"].forEach((function(t){var e=wt[t];Q(xt,t,(function(){for(var n=[],r=arguments.length;r--;)n[r]=arguments[r];var o,i=e.apply(this,n),a=this.__ob__;switch(t){case"push":case"unshift":o=n;break;case"splice":o=n.slice(2)}return o&&a.observeArray(o),a.dep.notify(),i}))}));var Et=Object.getOwnPropertyNames(xt),St=!0;function Tt(t){St=t}var It=function(t){this.value=t,this.dep=new ft,this.vmCount=0,Q(t,"__ob__",this),Array.isArray(t)?(W?function(t,e){t.__proto__=e}(t,xt):function(t,e,n){for(var r=0,o=n.length;r<o;r++){var i=n[r];Q(t,i,e[i])}}(t,xt,Et),this.observeArray(t)):this.walk(t)};function Bt(t,e){var n;if(c(t)&&!(t instanceof gt))return C(t,"__ob__")&&t.__ob__ instanceof It?n=t.__ob__:St&&!at()&&(Array.isArray(t)||p(t))&&Object.isExtensible(t)&&!t._isVue&&(n=new It(t)),e&&n&&n.vmCount++,n}function kt(t,e,n,r,o){var i=new ft,a=Object.getOwnPropertyDescriptor(t,e);if(!a||!1!==a.configurable){var s=a&&a.get,l=a&&a.set;s&&!l||2!==arguments.length||(n=t[e]);var c=!o&&Bt(n);Object.defineProperty(t,e,{enumerable:!0,configurable:!0,get:function(){var e=s?s.call(t):n;return ft.target&&(i.depend(),c&&(c.dep.depend(),Array.isArray(e)&&Nt(e))),e},set:function(e){var r=s?s.call(t):n;e===r||e!=e&&r!=r||s&&!l||(l?l.call(t,e):n=e,c=!o&&Bt(e),i.notify())}})}}function _t(t,e,n){if(Array.isArray(t)&&f(e))return t.length=Math.max(t.length,e),t.splice(e,1,n),n;if(e in t&&!(e in Object.prototype))return t[e]=n,n;var r=t.__ob__;return t._isVue||r&&r.vmCount?n:r?(kt(r.value,e,n),r.dep.notify(),n):(t[e]=n,n)}function Ot(t,e){if(Array.isArray(t)&&f(e))t.splice(e,1);else{var n=t.__ob__;t._isVue||n&&n.vmCount||C(t,e)&&(delete t[e],n&&n.dep.notify())}}function Nt(t){for(var e=void 0,n=0,r=t.length;n<r;n++)(e=t[n])&&e.__ob__&&e.__ob__.dep.depend(),Array.isArray(e)&&Nt(e)}It.prototype.walk=function(t){for(var e=Object.keys(t),n=0;n<e.length;n++)kt(t,e[n])},It.prototype.observeArray=function(t){for(var e=0,n=t.length;e<n;e++)Bt(t[e])};var Mt=R.optionMergeStrategies;function jt(t,e){if(!e)return t;for(var n,r,o,i=ut?Reflect.ownKeys(e):Object.keys(e),a=0;a<i.length;a++)"__ob__"!==(n=i[a])&&(r=t[n],o=e[n],C(t,n)?r!==o&&p(r)&&p(o)&&jt(r,o):_t(t,n,o));return t}function Dt(t,e,n){return n?function(){var r="function"==typeof e?e.call(n,n):e,o="function"==typeof t?t.call(n,n):t;return r?jt(r,o):o}:e?t?function(){return jt("function"==typeof e?e.call(this,this):e,"function"==typeof t?t.call(this,this):t)}:e:t}function Pt(t,e){var n=e?t?t.concat(e):Array.isArray(e)?e:[e]:t;return n?function(t){for(var e=[],n=0;n<t.length;n++)-1===e.indexOf(t[n])&&e.push(t[n]);return e}(n):n}function Lt(t,e,n,r){var o=Object.create(t||null);return e?_(o,e):o}Mt.data=function(t,e,n){return n?Dt(t,e,n):e&&"function"!=typeof e?t:Dt(t,e)},$.forEach((function(t){Mt[t]=Pt})),z.forEach((function(t){Mt[t+"s"]=Lt})),Mt.watch=function(t,e,n,r){if(t===rt&&(t=void 0),e===rt&&(e=void 0),!e)return Object.create(t||null);if(!t)return e;var o={};for(var i in _(o,t),e){var a=o[i],s=e[i];a&&!Array.isArray(a)&&(a=[a]),o[i]=a?a.concat(s):Array.isArray(s)?s:[s]}return o},Mt.props=Mt.methods=Mt.inject=Mt.computed=function(t,e,n,r){if(!t)return e;var o=Object.create(null);return _(o,t),e&&_(o,e),o},Mt.provide=Dt;var Ft=function(t,e){return void 0===e?t:e};function zt(t,e,n){if("function"==typeof e&&(e=e.options),function(t,e){var n=t.props;if(n){var r,o,i={};if(Array.isArray(n))for(r=n.length;r--;)"string"==typeof(o=n[r])&&(i[E(o)]={type:null});else if(p(n))for(var a in n)o=n[a],i[E(a)]=p(o)?o:{type:o};t.props=i}}(e),function(t,e){var n=t.inject;if(n){var r=t.inject={};if(Array.isArray(n))for(var o=0;o<n.length;o++)r[n[o]]={from:n[o]};else if(p(n))for(var i in n){var a=n[i];r[i]=p(a)?_({from:i},a):{from:a}}}}(e),function(t){var e=t.directives;if(e)for(var n in e){var r=e[n];"function"==typeof r&&(e[n]={bind:r,update:r})}}(e),!e._base&&(e.extends&&(t=zt(t,e.extends,n)),e.mixins))for(var r=0,o=e.mixins.length;r<o;r++)t=zt(t,e.mixins[r],n);var i,a={};for(i in t)s(i);for(i in e)C(t,i)||s(i);function s(r){var o=Mt[r]||Ft;a[r]=o(t[r],e[r],n,r)}return a}function $t(t,e,n,r){if("string"==typeof n){var o=t[e];if(C(o,n))return o[n];var i=E(n);if(C(o,i))return o[i];var a=S(i);return C(o,a)?o[a]:o[n]||o[i]||o[a]}}function Rt(t,e,n,r){var o=e[t],i=!C(n,t),a=n[t],s=Yt(Boolean,o.type);if(s>-1)if(i&&!C(o,"default"))a=!1;else if(""===a||a===I(t)){var l=Yt(String,o.type);(l<0||s<l)&&(a=!0)}if(void 0===a){a=function(t,e,n){if(!C(e,"default"))return;var r=e.default;0;if(t&&t.$options.propsData&&void 0===t.$options.propsData[n]&&void 0!==t._props[n])return t._props[n];return"function"==typeof r&&"Function"!==Gt(e.type)?r.call(t):r}(r,o,t);var c=St;Tt(!0),Bt(a),Tt(c)}return a}var Ut=/^\s*function (\w+)/;function Gt(t){var e=t&&t.toString().match(Ut);return e?e[1]:""}function Qt(t,e){return Gt(t)===Gt(e)}function Yt(t,e){if(!Array.isArray(e))return Qt(e,t)?0:-1;for(var n=0,r=e.length;n<r;n++)if(Qt(e[n],t))return n;return-1}function Ht(t,e,n){ht();try{if(e)for(var r=e;r=r.$parent;){var o=r.$options.errorCaptured;if(o)for(var i=0;i<o.length;i++)try{if(!1===o[i].call(r,t,e,n))return}catch(t){Vt(t,r,"errorCaptured hook")}}Vt(t,e,n)}finally{mt()}}function Wt(t,e,n,r,o){var i;try{(i=n?t.apply(e,n):t.call(e))&&!i._isVue&&d(i)&&!i._handled&&(i.catch((function(t){return Ht(t,r,o+" (Promise/async)")})),i._handled=!0)}catch(t){Ht(t,r,o)}return i}function Vt(t,e,n){if(R.errorHandler)try{return R.errorHandler.call(null,t,e,n)}catch(e){e!==t&&qt(e,null,"config.errorHandler")}qt(t,e,n)}function qt(t,e,n){if(!V&&!q||void 0===r)throw t;r.error(t)}var Zt,Xt=!1,Jt=[],Kt=!1;function te(){Kt=!1;var t=Jt.slice(0);Jt.length=0;for(var e=0;e<t.length;e++)t[e]()}if("undefined"!=typeof Promise&&lt(Promise)){var ee=Promise.resolve();Zt=function(){ee.then(te),et&&setTimeout(N)},Xt=!0}else if(J||"undefined"==typeof MutationObserver||!lt(MutationObserver)&&"[object MutationObserverConstructor]"!==MutationObserver.toString())Zt="undefined"!=typeof setImmediate&&lt(setImmediate)?function(){setImmediate(te)}:function(){setTimeout(te,0)};else{var ne=1,re=new MutationObserver(te),oe=document.createTextNode(String(ne));re.observe(oe,{characterData:!0}),Zt=function(){ne=(ne+1)%2,oe.data=String(ne)},Xt=!0}function ie(t,e){var n;if(Jt.push((function(){if(t)try{t.call(e)}catch(t){Ht(t,e,"nextTick")}else n&&n(e)})),Kt||(Kt=!0,Zt()),!t&&"undefined"!=typeof Promise)return new Promise((function(t){n=t}))}var ae=new ct;function se(t){le(t,ae),ae.clear()}function le(t,e){var n,r,o=Array.isArray(t);if(!(!o&&!c(t)||Object.isFrozen(t)||t instanceof gt)){if(t.__ob__){var i=t.__ob__.dep.id;if(e.has(i))return;e.add(i)}if(o)for(n=t.length;n--;)le(t[n],e);else for(n=(r=Object.keys(t)).length;n--;)le(t[r[n]],e)}}var ce=w((function(t){var e="&"===t.charAt(0),n="~"===(t=e?t.slice(1):t).charAt(0),r="!"===(t=n?t.slice(1):t).charAt(0);return{name:t=r?t.slice(1):t,once:n,capture:r,passive:e}}));function ue(t,e){function n(){var t=arguments,r=n.fns;if(!Array.isArray(r))return Wt(r,null,arguments,e,"v-on handler");for(var o=r.slice(),i=0;i<o.length;i++)Wt(o[i],null,t,e,"v-on handler")}return n.fns=t,n}function pe(t,e,n,r,o,a){var l,c,u,p;for(l in t)c=t[l],u=e[l],p=ce(l),i(c)||(i(u)?(i(c.fns)&&(c=t[l]=ue(c,a)),s(p.once)&&(c=t[l]=o(p.name,c,p.capture)),n(p.name,c,p.capture,p.passive,p.params)):c!==u&&(u.fns=c,t[l]=u));for(l in e)i(t[l])&&r((p=ce(l)).name,e[l],p.capture)}function Ae(t,e,n){var r;t instanceof gt&&(t=t.data.hook||(t.data.hook={}));var o=t[e];function l(){n.apply(this,arguments),y(r.fns,l)}i(o)?r=ue([l]):a(o.fns)&&s(o.merged)?(r=o).fns.push(l):r=ue([o,l]),r.merged=!0,t[e]=r}function fe(t,e,n,r,o){if(a(e)){if(C(e,n))return t[n]=e[n],o||delete e[n],!0;if(C(e,r))return t[n]=e[r],o||delete e[r],!0}return!1}function de(t){return l(t)?[bt(t)]:Array.isArray(t)?me(t):void 0}function he(t){return a(t)&&a(t.text)&&!1===t.isComment}function me(t,e){var n,r,o,c,u=[];for(n=0;n<t.length;n++)i(r=t[n])||"boolean"==typeof r||(c=u[o=u.length-1],Array.isArray(r)?r.length>0&&(he((r=me(r,(e||"")+"_"+n))[0])&&he(c)&&(u[o]=bt(c.text+r[0].text),r.shift()),u.push.apply(u,r)):l(r)?he(c)?u[o]=bt(c.text+r):""!==r&&u.push(bt(r)):he(r)&&he(c)?u[o]=bt(c.text+r.text):(s(t._isVList)&&a(r.tag)&&i(r.key)&&a(e)&&(r.key="__vlist"+e+"_"+n+"__"),u.push(r)));return u}function ge(t,e){if(t){for(var n=Object.create(null),r=ut?Reflect.ownKeys(t):Object.keys(t),o=0;o<r.length;o++){var i=r[o];if("__ob__"!==i){for(var a=t[i].from,s=e;s;){if(s._provided&&C(s._provided,a)){n[i]=s._provided[a];break}s=s.$parent}if(!s)if("default"in t[i]){var l=t[i].default;n[i]="function"==typeof l?l.call(e):l}else 0}}return n}}function ve(t,e){if(!t||!t.length)return{};for(var n={},r=0,o=t.length;r<o;r++){var i=t[r],a=i.data;if(a&&a.attrs&&a.attrs.slot&&delete a.attrs.slot,i.context!==e&&i.fnContext!==e||!a||null==a.slot)(n.default||(n.default=[])).push(i);else{var s=a.slot,l=n[s]||(n[s]=[]);"template"===i.tag?l.push.apply(l,i.children||[]):l.push(i)}}for(var c in n)n[c].every(ye)&&delete n[c];return n}function ye(t){return t.isComment&&!t.asyncFactory||" "===t.text}function be(t){return t.isComment&&t.asyncFactory}function Ce(t,e,n){var r,i=Object.keys(e).length>0,a=t?!!t.$stable:!i,s=t&&t.$key;if(t){if(t._normalized)return t._normalized;if(a&&n&&n!==o&&s===n.$key&&!i&&!n.$hasNormal)return n;for(var l in r={},t)t[l]&&"$"!==l[0]&&(r[l]=we(e,l,t[l]))}else r={};for(var c in e)c in r||(r[c]=xe(e,c));return t&&Object.isExtensible(t)&&(t._normalized=r),Q(r,"$stable",a),Q(r,"$key",s),Q(r,"$hasNormal",i),r}function we(t,e,n){var r=function(){var t=arguments.length?n.apply(null,arguments):n({}),e=(t=t&&"object"==typeof t&&!Array.isArray(t)?[t]:de(t))&&t[0];return t&&(!e||1===t.length&&e.isComment&&!be(e))?void 0:t};return n.proxy&&Object.defineProperty(t,e,{get:r,enumerable:!0,configurable:!0}),r}function xe(t,e){return function(){return t[e]}}function Ee(t,e){var n,r,o,i,s;if(Array.isArray(t)||"string"==typeof t)for(n=new Array(t.length),r=0,o=t.length;r<o;r++)n[r]=e(t[r],r);else if("number"==typeof t)for(n=new Array(t),r=0;r<t;r++)n[r]=e(r+1,r);else if(c(t))if(ut&&t[Symbol.iterator]){n=[];for(var l=t[Symbol.iterator](),u=l.next();!u.done;)n.push(e(u.value,n.length)),u=l.next()}else for(i=Object.keys(t),n=new Array(i.length),r=0,o=i.length;r<o;r++)s=i[r],n[r]=e(t[s],s,r);return a(n)||(n=[]),n._isVList=!0,n}function Se(t,e,n,r){var o,i=this.$scopedSlots[t];i?(n=n||{},r&&(n=_(_({},r),n)),o=i(n)||("function"==typeof e?e():e)):o=this.$slots[t]||("function"==typeof e?e():e);var a=n&&n.slot;return a?this.$createElement("template",{slot:a},o):o}function Te(t){return $t(this.$options,"filters",t)||j}function Ie(t,e){return Array.isArray(t)?-1===t.indexOf(e):t!==e}function Be(t,e,n,r,o){var i=R.keyCodes[e]||n;return o&&r&&!R.keyCodes[e]?Ie(o,r):i?Ie(i,t):r?I(r)!==e:void 0===t}function ke(t,e,n,r,o){if(n)if(c(n)){var i;Array.isArray(n)&&(n=O(n));var a=function(a){if("class"===a||"style"===a||v(a))i=t;else{var s=t.attrs&&t.attrs.type;i=r||R.mustUseProp(e,s,a)?t.domProps||(t.domProps={}):t.attrs||(t.attrs={})}var l=E(a),c=I(a);l in i||c in i||(i[a]=n[a],o&&((t.on||(t.on={}))["update:"+a]=function(t){n[a]=t}))};for(var s in n)a(s)}else;return t}function _e(t,e){var n=this._staticTrees||(this._staticTrees=[]),r=n[t];return r&&!e||Ne(r=n[t]=this.$options.staticRenderFns[t].call(this._renderProxy,null,this),"__static__"+t,!1),r}function Oe(t,e,n){return Ne(t,"__once__"+e+(n?"_"+n:""),!0),t}function Ne(t,e,n){if(Array.isArray(t))for(var r=0;r<t.length;r++)t[r]&&"string"!=typeof t[r]&&Me(t[r],e+"_"+r,n);else Me(t,e,n)}function Me(t,e,n){t.isStatic=!0,t.key=e,t.isOnce=n}function je(t,e){if(e)if(p(e)){var n=t.on=t.on?_({},t.on):{};for(var r in e){var o=n[r],i=e[r];n[r]=o?[].concat(o,i):i}}else;return t}function De(t,e,n,r){e=e||{$stable:!n};for(var o=0;o<t.length;o++){var i=t[o];Array.isArray(i)?De(i,e,n):i&&(i.proxy&&(i.fn.proxy=!0),e[i.key]=i.fn)}return r&&(e.$key=r),e}function Pe(t,e){for(var n=0;n<e.length;n+=2){var r=e[n];"string"==typeof r&&r&&(t[e[n]]=e[n+1])}return t}function Le(t,e){return"string"==typeof t?e+t:t}function Fe(t){t._o=Oe,t._n=m,t._s=h,t._l=Ee,t._t=Se,t._q=D,t._i=P,t._m=_e,t._f=Te,t._k=Be,t._b=ke,t._v=bt,t._e=yt,t._u=De,t._g=je,t._d=Pe,t._p=Le}function ze(t,e,n,r,i){var a,l=this,c=i.options;C(r,"_uid")?(a=Object.create(r))._original=r:(a=r,r=r._original);var u=s(c._compiled),p=!u;this.data=t,this.props=e,this.children=n,this.parent=r,this.listeners=t.on||o,this.injections=ge(c.inject,r),this.slots=function(){return l.$slots||Ce(t.scopedSlots,l.$slots=ve(n,r)),l.$slots},Object.defineProperty(this,"scopedSlots",{enumerable:!0,get:function(){return Ce(t.scopedSlots,this.slots())}}),u&&(this.$options=c,this.$slots=this.slots(),this.$scopedSlots=Ce(t.scopedSlots,this.$slots)),c._scopeId?this._c=function(t,e,n,o){var i=He(a,t,e,n,o,p);return i&&!Array.isArray(i)&&(i.fnScopeId=c._scopeId,i.fnContext=r),i}:this._c=function(t,e,n,r){return He(a,t,e,n,r,p)}}function $e(t,e,n,r,o){var i=Ct(t);return i.fnContext=n,i.fnOptions=r,e.slot&&((i.data||(i.data={})).slot=e.slot),i}function Re(t,e){for(var n in e)t[E(n)]=e[n]}Fe(ze.prototype);var Ue={init:function(t,e){if(t.componentInstance&&!t.componentInstance._isDestroyed&&t.data.keepAlive){var n=t;Ue.prepatch(n,n)}else{(t.componentInstance=function(t,e){var n={_isComponent:!0,_parentVnode:t,parent:e},r=t.data.inlineTemplate;a(r)&&(n.render=r.render,n.staticRenderFns=r.staticRenderFns);return new t.componentOptions.Ctor(n)}(t,nn)).$mount(e?t.elm:void 0,e)}},prepatch:function(t,e){var n=e.componentOptions;!function(t,e,n,r,i){0;var a=r.data.scopedSlots,s=t.$scopedSlots,l=!!(a&&!a.$stable||s!==o&&!s.$stable||a&&t.$scopedSlots.$key!==a.$key||!a&&t.$scopedSlots.$key),c=!!(i||t.$options._renderChildren||l);t.$options._parentVnode=r,t.$vnode=r,t._vnode&&(t._vnode.parent=r);if(t.$options._renderChildren=i,t.$attrs=r.data.attrs||o,t.$listeners=n||o,e&&t.$options.props){Tt(!1);for(var u=t._props,p=t.$options._propKeys||[],A=0;A<p.length;A++){var f=p[A],d=t.$options.props;u[f]=Rt(f,d,e,t)}Tt(!0),t.$options.propsData=e}n=n||o;var h=t.$options._parentListeners;t.$options._parentListeners=n,en(t,n,h),c&&(t.$slots=ve(i,r.context),t.$forceUpdate());0}(e.componentInstance=t.componentInstance,n.propsData,n.listeners,e,n.children)},insert:function(t){var e,n=t.context,r=t.componentInstance;r._isMounted||(r._isMounted=!0,ln(r,"mounted")),t.data.keepAlive&&(n._isMounted?((e=r)._inactive=!1,un.push(e)):an(r,!0))},destroy:function(t){var e=t.componentInstance;e._isDestroyed||(t.data.keepAlive?sn(e,!0):e.$destroy())}},Ge=Object.keys(Ue);function Qe(t,e,n,r,l){if(!i(t)){var u=n.$options._base;if(c(t)&&(t=u.extend(t)),"function"==typeof t){var p;if(i(t.cid)&&(t=function(t,e){if(s(t.error)&&a(t.errorComp))return t.errorComp;if(a(t.resolved))return t.resolved;var n=qe;n&&a(t.owners)&&-1===t.owners.indexOf(n)&&t.owners.push(n);if(s(t.loading)&&a(t.loadingComp))return t.loadingComp;if(n&&!a(t.owners)){var r=t.owners=[n],o=!0,l=null,u=null;n.$on("hook:destroyed",(function(){return y(r,n)}));var p=function(t){for(var e=0,n=r.length;e<n;e++)r[e].$forceUpdate();t&&(r.length=0,null!==l&&(clearTimeout(l),l=null),null!==u&&(clearTimeout(u),u=null))},A=L((function(n){t.resolved=Ze(n,e),o?r.length=0:p(!0)})),f=L((function(e){a(t.errorComp)&&(t.error=!0,p(!0))})),h=t(A,f);return c(h)&&(d(h)?i(t.resolved)&&h.then(A,f):d(h.component)&&(h.component.then(A,f),a(h.error)&&(t.errorComp=Ze(h.error,e)),a(h.loading)&&(t.loadingComp=Ze(h.loading,e),0===h.delay?t.loading=!0:l=setTimeout((function(){l=null,i(t.resolved)&&i(t.error)&&(t.loading=!0,p(!1))}),h.delay||200)),a(h.timeout)&&(u=setTimeout((function(){u=null,i(t.resolved)&&f(null)}),h.timeout)))),o=!1,t.loading?t.loadingComp:t.resolved}}(p=t,u),void 0===t))return function(t,e,n,r,o){var i=yt();return i.asyncFactory=t,i.asyncMeta={data:e,context:n,children:r,tag:o},i}(p,e,n,r,l);e=e||{},_n(t),a(e.model)&&function(t,e){var n=t.model&&t.model.prop||"value",r=t.model&&t.model.event||"input";(e.attrs||(e.attrs={}))[n]=e.model.value;var o=e.on||(e.on={}),i=o[r],s=e.model.callback;a(i)?(Array.isArray(i)?-1===i.indexOf(s):i!==s)&&(o[r]=[s].concat(i)):o[r]=s}(t.options,e);var A=function(t,e,n){var r=e.options.props;if(!i(r)){var o={},s=t.attrs,l=t.props;if(a(s)||a(l))for(var c in r){var u=I(c);fe(o,l,c,u,!0)||fe(o,s,c,u,!1)}return o}}(e,t);if(s(t.options.functional))return function(t,e,n,r,i){var s=t.options,l={},c=s.props;if(a(c))for(var u in c)l[u]=Rt(u,c,e||o);else a(n.attrs)&&Re(l,n.attrs),a(n.props)&&Re(l,n.props);var p=new ze(n,l,i,r,t),A=s.render.call(null,p._c,p);if(A instanceof gt)return $e(A,n,p.parent,s);if(Array.isArray(A)){for(var f=de(A)||[],d=new Array(f.length),h=0;h<f.length;h++)d[h]=$e(f[h],n,p.parent,s);return d}}(t,A,e,n,r);var f=e.on;if(e.on=e.nativeOn,s(t.options.abstract)){var h=e.slot;e={},h&&(e.slot=h)}!function(t){for(var e=t.hook||(t.hook={}),n=0;n<Ge.length;n++){var r=Ge[n],o=e[r],i=Ue[r];o===i||o&&o._merged||(e[r]=o?Ye(i,o):i)}}(e);var m=t.options.name||l;return new gt("vue-component-"+t.cid+(m?"-"+m:""),e,void 0,void 0,void 0,n,{Ctor:t,propsData:A,listeners:f,tag:l,children:r},p)}}}function Ye(t,e){var n=function(n,r){t(n,r),e(n,r)};return n._merged=!0,n}function He(t,e,n,r,o,i){return(Array.isArray(n)||l(n))&&(o=r,r=n,n=void 0),s(i)&&(o=2),function(t,e,n,r,o){if(a(n)&&a(n.__ob__))return yt();a(n)&&a(n.is)&&(e=n.is);if(!e)return yt();0;Array.isArray(r)&&"function"==typeof r[0]&&((n=n||{}).scopedSlots={default:r[0]},r.length=0);2===o?r=de(r):1===o&&(r=function(t){for(var e=0;e<t.length;e++)if(Array.isArray(t[e]))return Array.prototype.concat.apply([],t);return t}(r));var i,s;if("string"==typeof e){var l;s=t.$vnode&&t.$vnode.ns||R.getTagNamespace(e),i=R.isReservedTag(e)?new gt(R.parsePlatformTagName(e),n,r,void 0,void 0,t):n&&n.pre||!a(l=$t(t.$options,"components",e))?new gt(e,n,r,void 0,void 0,t):Qe(l,n,t,r,e)}else i=Qe(e,n,t,r);return Array.isArray(i)?i:a(i)?(a(s)&&We(i,s),a(n)&&function(t){c(t.style)&&se(t.style);c(t.class)&&se(t.class)}(n),i):yt()}(t,e,n,r,o)}function We(t,e,n){if(t.ns=e,"foreignObject"===t.tag&&(e=void 0,n=!0),a(t.children))for(var r=0,o=t.children.length;r<o;r++){var l=t.children[r];a(l.tag)&&(i(l.ns)||s(n)&&"svg"!==l.tag)&&We(l,e,n)}}var Ve,qe=null;function Ze(t,e){return(t.__esModule||ut&&"Module"===t[Symbol.toStringTag])&&(t=t.default),c(t)?e.extend(t):t}function Xe(t){if(Array.isArray(t))for(var e=0;e<t.length;e++){var n=t[e];if(a(n)&&(a(n.componentOptions)||be(n)))return n}}function Je(t,e){Ve.$on(t,e)}function Ke(t,e){Ve.$off(t,e)}function tn(t,e){var n=Ve;return function r(){var o=e.apply(null,arguments);null!==o&&n.$off(t,r)}}function en(t,e,n){Ve=t,pe(e,n||{},Je,Ke,tn,t),Ve=void 0}var nn=null;function rn(t){var e=nn;return nn=t,function(){nn=e}}function on(t){for(;t&&(t=t.$parent);)if(t._inactive)return!0;return!1}function an(t,e){if(e){if(t._directInactive=!1,on(t))return}else if(t._directInactive)return;if(t._inactive||null===t._inactive){t._inactive=!1;for(var n=0;n<t.$children.length;n++)an(t.$children[n]);ln(t,"activated")}}function sn(t,e){if(!(e&&(t._directInactive=!0,on(t))||t._inactive)){t._inactive=!0;for(var n=0;n<t.$children.length;n++)sn(t.$children[n]);ln(t,"deactivated")}}function ln(t,e){ht();var n=t.$options[e],r=e+" hook";if(n)for(var o=0,i=n.length;o<i;o++)Wt(n[o],t,null,t,r);t._hasHookEvent&&t.$emit("hook:"+e),mt()}var cn=[],un=[],pn={},An=!1,fn=!1,dn=0;var hn=0,mn=Date.now;if(V&&!J){var gn=window.performance;gn&&"function"==typeof gn.now&&mn()>document.createEvent("Event").timeStamp&&(mn=function(){return gn.now()})}function vn(){var t,e;for(hn=mn(),fn=!0,cn.sort((function(t,e){return t.id-e.id})),dn=0;dn<cn.length;dn++)(t=cn[dn]).before&&t.before(),e=t.id,pn[e]=null,t.run();var n=un.slice(),r=cn.slice();dn=cn.length=un.length=0,pn={},An=fn=!1,function(t){for(var e=0;e<t.length;e++)t[e]._inactive=!0,an(t[e],!0)}(n),function(t){var e=t.length;for(;e--;){var n=t[e],r=n.vm;r._watcher===n&&r._isMounted&&!r._isDestroyed&&ln(r,"updated")}}(r),st&&R.devtools&&st.emit("flush")}var yn=0,bn=function(t,e,n,r,o){this.vm=t,o&&(t._watcher=this),t._watchers.push(this),r?(this.deep=!!r.deep,this.user=!!r.user,this.lazy=!!r.lazy,this.sync=!!r.sync,this.before=r.before):this.deep=this.user=this.lazy=this.sync=!1,this.cb=n,this.id=++yn,this.active=!0,this.dirty=this.lazy,this.deps=[],this.newDeps=[],this.depIds=new ct,this.newDepIds=new ct,this.expression="","function"==typeof e?this.getter=e:(this.getter=function(t){if(!Y.test(t)){var e=t.split(".");return function(t){for(var n=0;n<e.length;n++){if(!t)return;t=t[e[n]]}return t}}}(e),this.getter||(this.getter=N)),this.value=this.lazy?void 0:this.get()};bn.prototype.get=function(){var t;ht(this);var e=this.vm;try{t=this.getter.call(e,e)}catch(t){if(!this.user)throw t;Ht(t,e,'getter for watcher "'+this.expression+'"')}finally{this.deep&&se(t),mt(),this.cleanupDeps()}return t},bn.prototype.addDep=function(t){var e=t.id;this.newDepIds.has(e)||(this.newDepIds.add(e),this.newDeps.push(t),this.depIds.has(e)||t.addSub(this))},bn.prototype.cleanupDeps=function(){for(var t=this.deps.length;t--;){var e=this.deps[t];this.newDepIds.has(e.id)||e.removeSub(this)}var n=this.depIds;this.depIds=this.newDepIds,this.newDepIds=n,this.newDepIds.clear(),n=this.deps,this.deps=this.newDeps,this.newDeps=n,this.newDeps.length=0},bn.prototype.update=function(){this.lazy?this.dirty=!0:this.sync?this.run():function(t){var e=t.id;if(null==pn[e]){if(pn[e]=!0,fn){for(var n=cn.length-1;n>dn&&cn[n].id>t.id;)n--;cn.splice(n+1,0,t)}else cn.push(t);An||(An=!0,ie(vn))}}(this)},bn.prototype.run=function(){if(this.active){var t=this.get();if(t!==this.value||c(t)||this.deep){var e=this.value;if(this.value=t,this.user){var n='callback for watcher "'+this.expression+'"';Wt(this.cb,this.vm,[t,e],this.vm,n)}else this.cb.call(this.vm,t,e)}}},bn.prototype.evaluate=function(){this.value=this.get(),this.dirty=!1},bn.prototype.depend=function(){for(var t=this.deps.length;t--;)this.deps[t].depend()},bn.prototype.teardown=function(){if(this.active){this.vm._isBeingDestroyed||y(this.vm._watchers,this);for(var t=this.deps.length;t--;)this.deps[t].removeSub(this);this.active=!1}};var Cn={enumerable:!0,configurable:!0,get:N,set:N};function wn(t,e,n){Cn.get=function(){return this[e][n]},Cn.set=function(t){this[e][n]=t},Object.defineProperty(t,n,Cn)}function xn(t){t._watchers=[];var e=t.$options;e.props&&function(t,e){var n=t.$options.propsData||{},r=t._props={},o=t.$options._propKeys=[];t.$parent&&Tt(!1);var i=function(i){o.push(i);var a=Rt(i,e,n,t);kt(r,i,a),i in t||wn(t,"_props",i)};for(var a in e)i(a);Tt(!0)}(t,e.props),e.methods&&function(t,e){t.$options.props;for(var n in e)t[n]="function"!=typeof e[n]?N:B(e[n],t)}(t,e.methods),e.data?function(t){var e=t.$options.data;p(e=t._data="function"==typeof e?function(t,e){ht();try{return t.call(e,e)}catch(t){return Ht(t,e,"data()"),{}}finally{mt()}}(e,t):e||{})||(e={});var n=Object.keys(e),r=t.$options.props,o=(t.$options.methods,n.length);for(;o--;){var i=n[o];0,r&&C(r,i)||G(i)||wn(t,"_data",i)}Bt(e,!0)}(t):Bt(t._data={},!0),e.computed&&function(t,e){var n=t._computedWatchers=Object.create(null),r=at();for(var o in e){var i=e[o],a="function"==typeof i?i:i.get;0,r||(n[o]=new bn(t,a||N,N,En)),o in t||Sn(t,o,i)}}(t,e.computed),e.watch&&e.watch!==rt&&function(t,e){for(var n in e){var r=e[n];if(Array.isArray(r))for(var o=0;o<r.length;o++)Bn(t,n,r[o]);else Bn(t,n,r)}}(t,e.watch)}var En={lazy:!0};function Sn(t,e,n){var r=!at();"function"==typeof n?(Cn.get=r?Tn(e):In(n),Cn.set=N):(Cn.get=n.get?r&&!1!==n.cache?Tn(e):In(n.get):N,Cn.set=n.set||N),Object.defineProperty(t,e,Cn)}function Tn(t){return function(){var e=this._computedWatchers&&this._computedWatchers[t];if(e)return e.dirty&&e.evaluate(),ft.target&&e.depend(),e.value}}function In(t){return function(){return t.call(this,this)}}function Bn(t,e,n,r){return p(n)&&(r=n,n=n.handler),"string"==typeof n&&(n=t[n]),t.$watch(e,n,r)}var kn=0;function _n(t){var e=t.options;if(t.super){var n=_n(t.super);if(n!==t.superOptions){t.superOptions=n;var r=function(t){var e,n=t.options,r=t.sealedOptions;for(var o in n)n[o]!==r[o]&&(e||(e={}),e[o]=n[o]);return e}(t);r&&_(t.extendOptions,r),(e=t.options=zt(n,t.extendOptions)).name&&(e.components[e.name]=t)}}return e}function On(t){this._init(t)}function Nn(t){t.cid=0;var e=1;t.extend=function(t){t=t||{};var n=this,r=n.cid,o=t._Ctor||(t._Ctor={});if(o[r])return o[r];var i=t.name||n.options.name;var a=function(t){this._init(t)};return(a.prototype=Object.create(n.prototype)).constructor=a,a.cid=e++,a.options=zt(n.options,t),a.super=n,a.options.props&&function(t){var e=t.options.props;for(var n in e)wn(t.prototype,"_props",n)}(a),a.options.computed&&function(t){var e=t.options.computed;for(var n in e)Sn(t.prototype,n,e[n])}(a),a.extend=n.extend,a.mixin=n.mixin,a.use=n.use,z.forEach((function(t){a[t]=n[t]})),i&&(a.options.components[i]=a),a.superOptions=n.options,a.extendOptions=t,a.sealedOptions=_({},a.options),o[r]=a,a}}function Mn(t){return t&&(t.Ctor.options.name||t.tag)}function jn(t,e){return Array.isArray(t)?t.indexOf(e)>-1:"string"==typeof t?t.split(",").indexOf(e)>-1:!!A(t)&&t.test(e)}function Dn(t,e){var n=t.cache,r=t.keys,o=t._vnode;for(var i in n){var a=n[i];if(a){var s=a.name;s&&!e(s)&&Pn(n,i,r,o)}}}function Pn(t,e,n,r){var o=t[e];!o||r&&o.tag===r.tag||o.componentInstance.$destroy(),t[e]=null,y(n,e)}!function(t){t.prototype._init=function(t){var e=this;e._uid=kn++,e._isVue=!0,t&&t._isComponent?function(t,e){var n=t.$options=Object.create(t.constructor.options),r=e._parentVnode;n.parent=e.parent,n._parentVnode=r;var o=r.componentOptions;n.propsData=o.propsData,n._parentListeners=o.listeners,n._renderChildren=o.children,n._componentTag=o.tag,e.render&&(n.render=e.render,n.staticRenderFns=e.staticRenderFns)}(e,t):e.$options=zt(_n(e.constructor),t||{},e),e._renderProxy=e,e._self=e,function(t){var e=t.$options,n=e.parent;if(n&&!e.abstract){for(;n.$options.abstract&&n.$parent;)n=n.$parent;n.$children.push(t)}t.$parent=n,t.$root=n?n.$root:t,t.$children=[],t.$refs={},t._watcher=null,t._inactive=null,t._directInactive=!1,t._isMounted=!1,t._isDestroyed=!1,t._isBeingDestroyed=!1}(e),function(t){t._events=Object.create(null),t._hasHookEvent=!1;var e=t.$options._parentListeners;e&&en(t,e)}(e),function(t){t._vnode=null,t._staticTrees=null;var e=t.$options,n=t.$vnode=e._parentVnode,r=n&&n.context;t.$slots=ve(e._renderChildren,r),t.$scopedSlots=o,t._c=function(e,n,r,o){return He(t,e,n,r,o,!1)},t.$createElement=function(e,n,r,o){return He(t,e,n,r,o,!0)};var i=n&&n.data;kt(t,"$attrs",i&&i.attrs||o,null,!0),kt(t,"$listeners",e._parentListeners||o,null,!0)}(e),ln(e,"beforeCreate"),function(t){var e=ge(t.$options.inject,t);e&&(Tt(!1),Object.keys(e).forEach((function(n){kt(t,n,e[n])})),Tt(!0))}(e),xn(e),function(t){var e=t.$options.provide;e&&(t._provided="function"==typeof e?e.call(t):e)}(e),ln(e,"created"),e.$options.el&&e.$mount(e.$options.el)}}(On),function(t){var e={get:function(){return this._data}},n={get:function(){return this._props}};Object.defineProperty(t.prototype,"$data",e),Object.defineProperty(t.prototype,"$props",n),t.prototype.$set=_t,t.prototype.$delete=Ot,t.prototype.$watch=function(t,e,n){var r=this;if(p(e))return Bn(r,t,e,n);(n=n||{}).user=!0;var o=new bn(r,t,e,n);if(n.immediate){var i='callback for immediate watcher "'+o.expression+'"';ht(),Wt(e,r,[o.value],r,i),mt()}return function(){o.teardown()}}}(On),function(t){var e=/^hook:/;t.prototype.$on=function(t,n){var r=this;if(Array.isArray(t))for(var o=0,i=t.length;o<i;o++)r.$on(t[o],n);else(r._events[t]||(r._events[t]=[])).push(n),e.test(t)&&(r._hasHookEvent=!0);return r},t.prototype.$once=function(t,e){var n=this;function r(){n.$off(t,r),e.apply(n,arguments)}return r.fn=e,n.$on(t,r),n},t.prototype.$off=function(t,e){var n=this;if(!arguments.length)return n._events=Object.create(null),n;if(Array.isArray(t)){for(var r=0,o=t.length;r<o;r++)n.$off(t[r],e);return n}var i,a=n._events[t];if(!a)return n;if(!e)return n._events[t]=null,n;for(var s=a.length;s--;)if((i=a[s])===e||i.fn===e){a.splice(s,1);break}return n},t.prototype.$emit=function(t){var e=this,n=e._events[t];if(n){n=n.length>1?k(n):n;for(var r=k(arguments,1),o='event handler for "'+t+'"',i=0,a=n.length;i<a;i++)Wt(n[i],e,r,e,o)}return e}}(On),function(t){t.prototype._update=function(t,e){var n=this,r=n.$el,o=n._vnode,i=rn(n);n._vnode=t,n.$el=o?n.__patch__(o,t):n.__patch__(n.$el,t,e,!1),i(),r&&(r.__vue__=null),n.$el&&(n.$el.__vue__=n),n.$vnode&&n.$parent&&n.$vnode===n.$parent._vnode&&(n.$parent.$el=n.$el)},t.prototype.$forceUpdate=function(){this._watcher&&this._watcher.update()},t.prototype.$destroy=function(){var t=this;if(!t._isBeingDestroyed){ln(t,"beforeDestroy"),t._isBeingDestroyed=!0;var e=t.$parent;!e||e._isBeingDestroyed||t.$options.abstract||y(e.$children,t),t._watcher&&t._watcher.teardown();for(var n=t._watchers.length;n--;)t._watchers[n].teardown();t._data.__ob__&&t._data.__ob__.vmCount--,t._isDestroyed=!0,t.__patch__(t._vnode,null),ln(t,"destroyed"),t.$off(),t.$el&&(t.$el.__vue__=null),t.$vnode&&(t.$vnode.parent=null)}}}(On),function(t){Fe(t.prototype),t.prototype.$nextTick=function(t){return ie(t,this)},t.prototype._render=function(){var t,e=this,n=e.$options,r=n.render,o=n._parentVnode;o&&(e.$scopedSlots=Ce(o.data.scopedSlots,e.$slots,e.$scopedSlots)),e.$vnode=o;try{qe=e,t=r.call(e._renderProxy,e.$createElement)}catch(n){Ht(n,e,"render"),t=e._vnode}finally{qe=null}return Array.isArray(t)&&1===t.length&&(t=t[0]),t instanceof gt||(t=yt()),t.parent=o,t}}(On);var Ln=[String,RegExp,Array],Fn={name:"keep-alive",abstract:!0,props:{include:Ln,exclude:Ln,max:[String,Number]},methods:{cacheVNode:function(){var t=this,e=t.cache,n=t.keys,r=t.vnodeToCache,o=t.keyToCache;if(r){var i=r.tag,a=r.componentInstance,s=r.componentOptions;e[o]={name:Mn(s),tag:i,componentInstance:a},n.push(o),this.max&&n.length>parseInt(this.max)&&Pn(e,n[0],n,this._vnode),this.vnodeToCache=null}}},created:function(){this.cache=Object.create(null),this.keys=[]},destroyed:function(){for(var t in this.cache)Pn(this.cache,t,this.keys)},mounted:function(){var t=this;this.cacheVNode(),this.$watch("include",(function(e){Dn(t,(function(t){return jn(e,t)}))})),this.$watch("exclude",(function(e){Dn(t,(function(t){return!jn(e,t)}))}))},updated:function(){this.cacheVNode()},render:function(){var t=this.$slots.default,e=Xe(t),n=e&&e.componentOptions;if(n){var r=Mn(n),o=this.include,i=this.exclude;if(o&&(!r||!jn(o,r))||i&&r&&jn(i,r))return e;var a=this.cache,s=this.keys,l=null==e.key?n.Ctor.cid+(n.tag?"::"+n.tag:""):e.key;a[l]?(e.componentInstance=a[l].componentInstance,y(s,l),s.push(l)):(this.vnodeToCache=e,this.keyToCache=l),e.data.keepAlive=!0}return e||t&&t[0]}},zn={KeepAlive:Fn};!function(t){var e={get:function(){return R}};Object.defineProperty(t,"config",e),t.util={warn:pt,extend:_,mergeOptions:zt,defineReactive:kt},t.set=_t,t.delete=Ot,t.nextTick=ie,t.observable=function(t){return Bt(t),t},t.options=Object.create(null),z.forEach((function(e){t.options[e+"s"]=Object.create(null)})),t.options._base=t,_(t.options.components,zn),function(t){t.use=function(t){var e=this._installedPlugins||(this._installedPlugins=[]);if(e.indexOf(t)>-1)return this;var n=k(arguments,1);return n.unshift(this),"function"==typeof t.install?t.install.apply(t,n):"function"==typeof t&&t.apply(null,n),e.push(t),this}}(t),function(t){t.mixin=function(t){return this.options=zt(this.options,t),this}}(t),Nn(t),function(t){z.forEach((function(e){t[e]=function(t,n){return n?("component"===e&&p(n)&&(n.name=n.name||t,n=this.options._base.extend(n)),"directive"===e&&"function"==typeof n&&(n={bind:n,update:n}),this.options[e+"s"][t]=n,n):this.options[e+"s"][t]}}))}(t)}(On),Object.defineProperty(On.prototype,"$isServer",{get:at}),Object.defineProperty(On.prototype,"$ssrContext",{get:function(){return this.$vnode&&this.$vnode.ssrContext}}),Object.defineProperty(On,"FunctionalRenderContext",{value:ze}),On.version="2.6.14";var $n=g("style,class"),Rn=g("input,textarea,option,select,progress"),Un=g("contenteditable,draggable,spellcheck"),Gn=g("events,caret,typing,plaintext-only"),Qn=g("allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,default,defaultchecked,defaultmuted,defaultselected,defer,disabled,enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,required,reversed,scoped,seamless,selected,sortable,truespeed,typemustmatch,visible"),Yn="http://www.w3.org/1999/xlink",Hn=function(t){return":"===t.charAt(5)&&"xlink"===t.slice(0,5)},Wn=function(t){return Hn(t)?t.slice(6,t.length):""},Vn=function(t){return null==t||!1===t};function qn(t){for(var e=t.data,n=t,r=t;a(r.componentInstance);)(r=r.componentInstance._vnode)&&r.data&&(e=Zn(r.data,e));for(;a(n=n.parent);)n&&n.data&&(e=Zn(e,n.data));return function(t,e){if(a(t)||a(e))return Xn(t,Jn(e));return""}(e.staticClass,e.class)}function Zn(t,e){return{staticClass:Xn(t.staticClass,e.staticClass),class:a(t.class)?[t.class,e.class]:e.class}}function Xn(t,e){return t?e?t+" "+e:t:e||""}function Jn(t){return Array.isArray(t)?function(t){for(var e,n="",r=0,o=t.length;r<o;r++)a(e=Jn(t[r]))&&""!==e&&(n&&(n+=" "),n+=e);return n}(t):c(t)?function(t){var e="";for(var n in t)t[n]&&(e&&(e+=" "),e+=n);return e}(t):"string"==typeof t?t:""}var Kn={svg:"http://www.w3.org/2000/svg",math:"http://www.w3.org/1998/Math/MathML"},tr=g("html,body,base,head,link,meta,style,title,address,article,aside,footer,header,h1,h2,h3,h4,h5,h6,hgroup,nav,section,div,dd,dl,dt,figcaption,figure,picture,hr,img,li,main,ol,p,pre,ul,a,b,abbr,bdi,bdo,br,cite,code,data,dfn,em,i,kbd,mark,q,rp,rt,rtc,ruby,s,samp,small,span,strong,sub,sup,time,u,var,wbr,area,audio,map,track,video,embed,object,param,source,canvas,script,noscript,del,ins,caption,col,colgroup,table,thead,tbody,td,th,tr,button,datalist,fieldset,form,input,label,legend,meter,optgroup,option,output,progress,select,textarea,details,dialog,menu,menuitem,summary,content,element,shadow,template,blockquote,iframe,tfoot"),er=g("svg,animate,circle,clippath,cursor,defs,desc,ellipse,filter,font-face,foreignobject,g,glyph,image,line,marker,mask,missing-glyph,path,pattern,polygon,polyline,rect,switch,symbol,text,textpath,tspan,use,view",!0),nr=function(t){return tr(t)||er(t)};var rr=Object.create(null);var or=g("text,number,password,search,email,tel,url");var ir=Object.freeze({createElement:function(t,e){var n=document.createElement(t);return"select"!==t||e.data&&e.data.attrs&&void 0!==e.data.attrs.multiple&&n.setAttribute("multiple","multiple"),n},createElementNS:function(t,e){return document.createElementNS(Kn[t],e)},createTextNode:function(t){return document.createTextNode(t)},createComment:function(t){return document.createComment(t)},insertBefore:function(t,e,n){t.insertBefore(e,n)},removeChild:function(t,e){t.removeChild(e)},appendChild:function(t,e){t.appendChild(e)},parentNode:function(t){return t.parentNode},nextSibling:function(t){return t.nextSibling},tagName:function(t){return t.tagName},setTextContent:function(t,e){t.textContent=e},setStyleScope:function(t,e){t.setAttribute(e,"")}}),ar={create:function(t,e){sr(e)},update:function(t,e){t.data.ref!==e.data.ref&&(sr(t,!0),sr(e))},destroy:function(t){sr(t,!0)}};function sr(t,e){var n=t.data.ref;if(a(n)){var r=t.context,o=t.componentInstance||t.elm,i=r.$refs;e?Array.isArray(i[n])?y(i[n],o):i[n]===o&&(i[n]=void 0):t.data.refInFor?Array.isArray(i[n])?i[n].indexOf(o)<0&&i[n].push(o):i[n]=[o]:i[n]=o}}var lr=new gt("",{},[]),cr=["create","activate","update","remove","destroy"];function ur(t,e){return t.key===e.key&&t.asyncFactory===e.asyncFactory&&(t.tag===e.tag&&t.isComment===e.isComment&&a(t.data)===a(e.data)&&function(t,e){if("input"!==t.tag)return!0;var n,r=a(n=t.data)&&a(n=n.attrs)&&n.type,o=a(n=e.data)&&a(n=n.attrs)&&n.type;return r===o||or(r)&&or(o)}(t,e)||s(t.isAsyncPlaceholder)&&i(e.asyncFactory.error))}function pr(t,e,n){var r,o,i={};for(r=e;r<=n;++r)a(o=t[r].key)&&(i[o]=r);return i}var Ar={create:fr,update:fr,destroy:function(t){fr(t,lr)}};function fr(t,e){(t.data.directives||e.data.directives)&&function(t,e){var n,r,o,i=t===lr,a=e===lr,s=hr(t.data.directives,t.context),l=hr(e.data.directives,e.context),c=[],u=[];for(n in l)r=s[n],o=l[n],r?(o.oldValue=r.value,o.oldArg=r.arg,gr(o,"update",e,t),o.def&&o.def.componentUpdated&&u.push(o)):(gr(o,"bind",e,t),o.def&&o.def.inserted&&c.push(o));if(c.length){var p=function(){for(var n=0;n<c.length;n++)gr(c[n],"inserted",e,t)};i?Ae(e,"insert",p):p()}u.length&&Ae(e,"postpatch",(function(){for(var n=0;n<u.length;n++)gr(u[n],"componentUpdated",e,t)}));if(!i)for(n in s)l[n]||gr(s[n],"unbind",t,t,a)}(t,e)}var dr=Object.create(null);function hr(t,e){var n,r,o=Object.create(null);if(!t)return o;for(n=0;n<t.length;n++)(r=t[n]).modifiers||(r.modifiers=dr),o[mr(r)]=r,r.def=$t(e.$options,"directives",r.name);return o}function mr(t){return t.rawName||t.name+"."+Object.keys(t.modifiers||{}).join(".")}function gr(t,e,n,r,o){var i=t.def&&t.def[e];if(i)try{i(n.elm,t,n,r,o)}catch(r){Ht(r,n.context,"directive "+t.name+" "+e+" hook")}}var vr=[ar,Ar];function yr(t,e){var n=e.componentOptions;if(!(a(n)&&!1===n.Ctor.options.inheritAttrs||i(t.data.attrs)&&i(e.data.attrs))){var r,o,s=e.elm,l=t.data.attrs||{},c=e.data.attrs||{};for(r in a(c.__ob__)&&(c=e.data.attrs=_({},c)),c)o=c[r],l[r]!==o&&br(s,r,o,e.data.pre);for(r in(J||tt)&&c.value!==l.value&&br(s,"value",c.value),l)i(c[r])&&(Hn(r)?s.removeAttributeNS(Yn,Wn(r)):Un(r)||s.removeAttribute(r))}}function br(t,e,n,r){r||t.tagName.indexOf("-")>-1?Cr(t,e,n):Qn(e)?Vn(n)?t.removeAttribute(e):(n="allowfullscreen"===e&&"EMBED"===t.tagName?"true":e,t.setAttribute(e,n)):Un(e)?t.setAttribute(e,function(t,e){return Vn(e)||"false"===e?"false":"contenteditable"===t&&Gn(e)?e:"true"}(e,n)):Hn(e)?Vn(n)?t.removeAttributeNS(Yn,Wn(e)):t.setAttributeNS(Yn,e,n):Cr(t,e,n)}function Cr(t,e,n){if(Vn(n))t.removeAttribute(e);else{if(J&&!K&&"TEXTAREA"===t.tagName&&"placeholder"===e&&""!==n&&!t.__ieph){var r=function(e){e.stopImmediatePropagation(),t.removeEventListener("input",r)};t.addEventListener("input",r),t.__ieph=!0}t.setAttribute(e,n)}}var wr={create:yr,update:yr};function xr(t,e){var n=e.elm,r=e.data,o=t.data;if(!(i(r.staticClass)&&i(r.class)&&(i(o)||i(o.staticClass)&&i(o.class)))){var s=qn(e),l=n._transitionClasses;a(l)&&(s=Xn(s,Jn(l))),s!==n._prevClass&&(n.setAttribute("class",s),n._prevClass=s)}}var Er,Sr={create:xr,update:xr};function Tr(t,e,n){var r=Er;return function o(){var i=e.apply(null,arguments);null!==i&&kr(t,o,n,r)}}var Ir=Xt&&!(nt&&Number(nt[1])<=53);function Br(t,e,n,r){if(Ir){var o=hn,i=e;e=i._wrapper=function(t){if(t.target===t.currentTarget||t.timeStamp>=o||t.timeStamp<=0||t.target.ownerDocument!==document)return i.apply(this,arguments)}}Er.addEventListener(t,e,ot?{capture:n,passive:r}:n)}function kr(t,e,n,r){(r||Er).removeEventListener(t,e._wrapper||e,n)}function _r(t,e){if(!i(t.data.on)||!i(e.data.on)){var n=e.data.on||{},r=t.data.on||{};Er=e.elm,function(t){if(a(t.__r)){var e=J?"change":"input";t[e]=[].concat(t.__r,t[e]||[]),delete t.__r}a(t.__c)&&(t.change=[].concat(t.__c,t.change||[]),delete t.__c)}(n),pe(n,r,Br,kr,Tr,e.context),Er=void 0}}var Or,Nr={create:_r,update:_r};function Mr(t,e){if(!i(t.data.domProps)||!i(e.data.domProps)){var n,r,o=e.elm,s=t.data.domProps||{},l=e.data.domProps||{};for(n in a(l.__ob__)&&(l=e.data.domProps=_({},l)),s)n in l||(o[n]="");for(n in l){if(r=l[n],"textContent"===n||"innerHTML"===n){if(e.children&&(e.children.length=0),r===s[n])continue;1===o.childNodes.length&&o.removeChild(o.childNodes[0])}if("value"===n&&"PROGRESS"!==o.tagName){o._value=r;var c=i(r)?"":String(r);jr(o,c)&&(o.value=c)}else if("innerHTML"===n&&er(o.tagName)&&i(o.innerHTML)){(Or=Or||document.createElement("div")).innerHTML="<svg>"+r+"</svg>";for(var u=Or.firstChild;o.firstChild;)o.removeChild(o.firstChild);for(;u.firstChild;)o.appendChild(u.firstChild)}else if(r!==s[n])try{o[n]=r}catch(t){}}}}function jr(t,e){return!t.composing&&("OPTION"===t.tagName||function(t,e){var n=!0;try{n=document.activeElement!==t}catch(t){}return n&&t.value!==e}(t,e)||function(t,e){var n=t.value,r=t._vModifiers;if(a(r)){if(r.number)return m(n)!==m(e);if(r.trim)return n.trim()!==e.trim()}return n!==e}(t,e))}var Dr={create:Mr,update:Mr},Pr=w((function(t){var e={},n=/:(.+)/;return t.split(/;(?![^(]*\))/g).forEach((function(t){if(t){var r=t.split(n);r.length>1&&(e[r[0].trim()]=r[1].trim())}})),e}));function Lr(t){var e=Fr(t.style);return t.staticStyle?_(t.staticStyle,e):e}function Fr(t){return Array.isArray(t)?O(t):"string"==typeof t?Pr(t):t}var zr,$r=/^--/,Rr=/\s*!important$/,Ur=function(t,e,n){if($r.test(e))t.style.setProperty(e,n);else if(Rr.test(n))t.style.setProperty(I(e),n.replace(Rr,""),"important");else{var r=Qr(e);if(Array.isArray(n))for(var o=0,i=n.length;o<i;o++)t.style[r]=n[o];else t.style[r]=n}},Gr=["Webkit","Moz","ms"],Qr=w((function(t){if(zr=zr||document.createElement("div").style,"filter"!==(t=E(t))&&t in zr)return t;for(var e=t.charAt(0).toUpperCase()+t.slice(1),n=0;n<Gr.length;n++){var r=Gr[n]+e;if(r in zr)return r}}));function Yr(t,e){var n=e.data,r=t.data;if(!(i(n.staticStyle)&&i(n.style)&&i(r.staticStyle)&&i(r.style))){var o,s,l=e.elm,c=r.staticStyle,u=r.normalizedStyle||r.style||{},p=c||u,A=Fr(e.data.style)||{};e.data.normalizedStyle=a(A.__ob__)?_({},A):A;var f=function(t,e){var n,r={};if(e)for(var o=t;o.componentInstance;)(o=o.componentInstance._vnode)&&o.data&&(n=Lr(o.data))&&_(r,n);(n=Lr(t.data))&&_(r,n);for(var i=t;i=i.parent;)i.data&&(n=Lr(i.data))&&_(r,n);return r}(e,!0);for(s in p)i(f[s])&&Ur(l,s,"");for(s in f)(o=f[s])!==p[s]&&Ur(l,s,null==o?"":o)}}var Hr={create:Yr,update:Yr},Wr=/\s+/;function Vr(t,e){if(e&&(e=e.trim()))if(t.classList)e.indexOf(" ")>-1?e.split(Wr).forEach((function(e){return t.classList.add(e)})):t.classList.add(e);else{var n=" "+(t.getAttribute("class")||"")+" ";n.indexOf(" "+e+" ")<0&&t.setAttribute("class",(n+e).trim())}}function qr(t,e){if(e&&(e=e.trim()))if(t.classList)e.indexOf(" ")>-1?e.split(Wr).forEach((function(e){return t.classList.remove(e)})):t.classList.remove(e),t.classList.length||t.removeAttribute("class");else{for(var n=" "+(t.getAttribute("class")||"")+" ",r=" "+e+" ";n.indexOf(r)>=0;)n=n.replace(r," ");(n=n.trim())?t.setAttribute("class",n):t.removeAttribute("class")}}function Zr(t){if(t){if("object"==typeof t){var e={};return!1!==t.css&&_(e,Xr(t.name||"v")),_(e,t),e}return"string"==typeof t?Xr(t):void 0}}var Xr=w((function(t){return{enterClass:t+"-enter",enterToClass:t+"-enter-to",enterActiveClass:t+"-enter-active",leaveClass:t+"-leave",leaveToClass:t+"-leave-to",leaveActiveClass:t+"-leave-active"}})),Jr=V&&!K,Kr="transition",to="animation",eo="transition",no="transitionend",ro="animation",oo="animationend";Jr&&(void 0===window.ontransitionend&&void 0!==window.onwebkittransitionend&&(eo="WebkitTransition",no="webkitTransitionEnd"),void 0===window.onanimationend&&void 0!==window.onwebkitanimationend&&(ro="WebkitAnimation",oo="webkitAnimationEnd"));var io=V?window.requestAnimationFrame?window.requestAnimationFrame.bind(window):setTimeout:function(t){return t()};function ao(t){io((function(){io(t)}))}function so(t,e){var n=t._transitionClasses||(t._transitionClasses=[]);n.indexOf(e)<0&&(n.push(e),Vr(t,e))}function lo(t,e){t._transitionClasses&&y(t._transitionClasses,e),qr(t,e)}function co(t,e,n){var r=po(t,e),o=r.type,i=r.timeout,a=r.propCount;if(!o)return n();var s=o===Kr?no:oo,l=0,c=function(){t.removeEventListener(s,u),n()},u=function(e){e.target===t&&++l>=a&&c()};setTimeout((function(){l<a&&c()}),i+1),t.addEventListener(s,u)}var uo=/\b(transform|all)(,|$)/;function po(t,e){var n,r=window.getComputedStyle(t),o=(r[eo+"Delay"]||"").split(", "),i=(r[eo+"Duration"]||"").split(", "),a=Ao(o,i),s=(r[ro+"Delay"]||"").split(", "),l=(r[ro+"Duration"]||"").split(", "),c=Ao(s,l),u=0,p=0;return e===Kr?a>0&&(n=Kr,u=a,p=i.length):e===to?c>0&&(n=to,u=c,p=l.length):p=(n=(u=Math.max(a,c))>0?a>c?Kr:to:null)?n===Kr?i.length:l.length:0,{type:n,timeout:u,propCount:p,hasTransform:n===Kr&&uo.test(r[eo+"Property"])}}function Ao(t,e){for(;t.length<e.length;)t=t.concat(t);return Math.max.apply(null,e.map((function(e,n){return fo(e)+fo(t[n])})))}function fo(t){return 1e3*Number(t.slice(0,-1).replace(",","."))}function ho(t,e){var n=t.elm;a(n._leaveCb)&&(n._leaveCb.cancelled=!0,n._leaveCb());var r=Zr(t.data.transition);if(!i(r)&&!a(n._enterCb)&&1===n.nodeType){for(var o=r.css,s=r.type,l=r.enterClass,u=r.enterToClass,p=r.enterActiveClass,A=r.appearClass,f=r.appearToClass,d=r.appearActiveClass,h=r.beforeEnter,g=r.enter,v=r.afterEnter,y=r.enterCancelled,b=r.beforeAppear,C=r.appear,w=r.afterAppear,x=r.appearCancelled,E=r.duration,S=nn,T=nn.$vnode;T&&T.parent;)S=T.context,T=T.parent;var I=!S._isMounted||!t.isRootInsert;if(!I||C||""===C){var B=I&&A?A:l,k=I&&d?d:p,_=I&&f?f:u,O=I&&b||h,N=I&&"function"==typeof C?C:g,M=I&&w||v,j=I&&x||y,D=m(c(E)?E.enter:E);0;var P=!1!==o&&!K,F=vo(N),z=n._enterCb=L((function(){P&&(lo(n,_),lo(n,k)),z.cancelled?(P&&lo(n,B),j&&j(n)):M&&M(n),n._enterCb=null}));t.data.show||Ae(t,"insert",(function(){var e=n.parentNode,r=e&&e._pending&&e._pending[t.key];r&&r.tag===t.tag&&r.elm._leaveCb&&r.elm._leaveCb(),N&&N(n,z)})),O&&O(n),P&&(so(n,B),so(n,k),ao((function(){lo(n,B),z.cancelled||(so(n,_),F||(go(D)?setTimeout(z,D):co(n,s,z)))}))),t.data.show&&(e&&e(),N&&N(n,z)),P||F||z()}}}function mo(t,e){var n=t.elm;a(n._enterCb)&&(n._enterCb.cancelled=!0,n._enterCb());var r=Zr(t.data.transition);if(i(r)||1!==n.nodeType)return e();if(!a(n._leaveCb)){var o=r.css,s=r.type,l=r.leaveClass,u=r.leaveToClass,p=r.leaveActiveClass,A=r.beforeLeave,f=r.leave,d=r.afterLeave,h=r.leaveCancelled,g=r.delayLeave,v=r.duration,y=!1!==o&&!K,b=vo(f),C=m(c(v)?v.leave:v);0;var w=n._leaveCb=L((function(){n.parentNode&&n.parentNode._pending&&(n.parentNode._pending[t.key]=null),y&&(lo(n,u),lo(n,p)),w.cancelled?(y&&lo(n,l),h&&h(n)):(e(),d&&d(n)),n._leaveCb=null}));g?g(x):x()}function x(){w.cancelled||(!t.data.show&&n.parentNode&&((n.parentNode._pending||(n.parentNode._pending={}))[t.key]=t),A&&A(n),y&&(so(n,l),so(n,p),ao((function(){lo(n,l),w.cancelled||(so(n,u),b||(go(C)?setTimeout(w,C):co(n,s,w)))}))),f&&f(n,w),y||b||w())}}function go(t){return"number"==typeof t&&!isNaN(t)}function vo(t){if(i(t))return!1;var e=t.fns;return a(e)?vo(Array.isArray(e)?e[0]:e):(t._length||t.length)>1}function yo(t,e){!0!==e.data.show&&ho(e)}var bo=function(t){var e,n,r={},o=t.modules,c=t.nodeOps;for(e=0;e<cr.length;++e)for(r[cr[e]]=[],n=0;n<o.length;++n)a(o[n][cr[e]])&&r[cr[e]].push(o[n][cr[e]]);function u(t){var e=c.parentNode(t);a(e)&&c.removeChild(e,t)}function p(t,e,n,o,i,l,u){if(a(t.elm)&&a(l)&&(t=l[u]=Ct(t)),t.isRootInsert=!i,!function(t,e,n,o){var i=t.data;if(a(i)){var l=a(t.componentInstance)&&i.keepAlive;if(a(i=i.hook)&&a(i=i.init)&&i(t,!1),a(t.componentInstance))return A(t,e),f(n,t.elm,o),s(l)&&function(t,e,n,o){var i,s=t;for(;s.componentInstance;)if(a(i=(s=s.componentInstance._vnode).data)&&a(i=i.transition)){for(i=0;i<r.activate.length;++i)r.activate[i](lr,s);e.push(s);break}f(n,t.elm,o)}(t,e,n,o),!0}}(t,e,n,o)){var p=t.data,h=t.children,g=t.tag;a(g)?(t.elm=t.ns?c.createElementNS(t.ns,g):c.createElement(g,t),v(t),d(t,h,e),a(p)&&m(t,e),f(n,t.elm,o)):s(t.isComment)?(t.elm=c.createComment(t.text),f(n,t.elm,o)):(t.elm=c.createTextNode(t.text),f(n,t.elm,o))}}function A(t,e){a(t.data.pendingInsert)&&(e.push.apply(e,t.data.pendingInsert),t.data.pendingInsert=null),t.elm=t.componentInstance.$el,h(t)?(m(t,e),v(t)):(sr(t),e.push(t))}function f(t,e,n){a(t)&&(a(n)?c.parentNode(n)===t&&c.insertBefore(t,e,n):c.appendChild(t,e))}function d(t,e,n){if(Array.isArray(e)){0;for(var r=0;r<e.length;++r)p(e[r],n,t.elm,null,!0,e,r)}else l(t.text)&&c.appendChild(t.elm,c.createTextNode(String(t.text)))}function h(t){for(;t.componentInstance;)t=t.componentInstance._vnode;return a(t.tag)}function m(t,n){for(var o=0;o<r.create.length;++o)r.create[o](lr,t);a(e=t.data.hook)&&(a(e.create)&&e.create(lr,t),a(e.insert)&&n.push(t))}function v(t){var e;if(a(e=t.fnScopeId))c.setStyleScope(t.elm,e);else for(var n=t;n;)a(e=n.context)&&a(e=e.$options._scopeId)&&c.setStyleScope(t.elm,e),n=n.parent;a(e=nn)&&e!==t.context&&e!==t.fnContext&&a(e=e.$options._scopeId)&&c.setStyleScope(t.elm,e)}function y(t,e,n,r,o,i){for(;r<=o;++r)p(n[r],i,t,e,!1,n,r)}function b(t){var e,n,o=t.data;if(a(o))for(a(e=o.hook)&&a(e=e.destroy)&&e(t),e=0;e<r.destroy.length;++e)r.destroy[e](t);if(a(e=t.children))for(n=0;n<t.children.length;++n)b(t.children[n])}function C(t,e,n){for(;e<=n;++e){var r=t[e];a(r)&&(a(r.tag)?(w(r),b(r)):u(r.elm))}}function w(t,e){if(a(e)||a(t.data)){var n,o=r.remove.length+1;for(a(e)?e.listeners+=o:e=function(t,e){function n(){0==--n.listeners&&u(t)}return n.listeners=e,n}(t.elm,o),a(n=t.componentInstance)&&a(n=n._vnode)&&a(n.data)&&w(n,e),n=0;n<r.remove.length;++n)r.remove[n](t,e);a(n=t.data.hook)&&a(n=n.remove)?n(t,e):e()}else u(t.elm)}function x(t,e,n,r){for(var o=n;o<r;o++){var i=e[o];if(a(i)&&ur(t,i))return o}}function E(t,e,n,o,l,u){if(t!==e){a(e.elm)&&a(o)&&(e=o[l]=Ct(e));var A=e.elm=t.elm;if(s(t.isAsyncPlaceholder))a(e.asyncFactory.resolved)?I(t.elm,e,n):e.isAsyncPlaceholder=!0;else if(s(e.isStatic)&&s(t.isStatic)&&e.key===t.key&&(s(e.isCloned)||s(e.isOnce)))e.componentInstance=t.componentInstance;else{var f,d=e.data;a(d)&&a(f=d.hook)&&a(f=f.prepatch)&&f(t,e);var m=t.children,g=e.children;if(a(d)&&h(e)){for(f=0;f<r.update.length;++f)r.update[f](t,e);a(f=d.hook)&&a(f=f.update)&&f(t,e)}i(e.text)?a(m)&&a(g)?m!==g&&function(t,e,n,r,o){var s,l,u,A=0,f=0,d=e.length-1,h=e[0],m=e[d],g=n.length-1,v=n[0],b=n[g],w=!o;for(;A<=d&&f<=g;)i(h)?h=e[++A]:i(m)?m=e[--d]:ur(h,v)?(E(h,v,r,n,f),h=e[++A],v=n[++f]):ur(m,b)?(E(m,b,r,n,g),m=e[--d],b=n[--g]):ur(h,b)?(E(h,b,r,n,g),w&&c.insertBefore(t,h.elm,c.nextSibling(m.elm)),h=e[++A],b=n[--g]):ur(m,v)?(E(m,v,r,n,f),w&&c.insertBefore(t,m.elm,h.elm),m=e[--d],v=n[++f]):(i(s)&&(s=pr(e,A,d)),i(l=a(v.key)?s[v.key]:x(v,e,A,d))?p(v,r,t,h.elm,!1,n,f):ur(u=e[l],v)?(E(u,v,r,n,f),e[l]=void 0,w&&c.insertBefore(t,u.elm,h.elm)):p(v,r,t,h.elm,!1,n,f),v=n[++f]);A>d?y(t,i(n[g+1])?null:n[g+1].elm,n,f,g,r):f>g&&C(e,A,d)}(A,m,g,n,u):a(g)?(a(t.text)&&c.setTextContent(A,""),y(A,null,g,0,g.length-1,n)):a(m)?C(m,0,m.length-1):a(t.text)&&c.setTextContent(A,""):t.text!==e.text&&c.setTextContent(A,e.text),a(d)&&a(f=d.hook)&&a(f=f.postpatch)&&f(t,e)}}}function S(t,e,n){if(s(n)&&a(t.parent))t.parent.data.pendingInsert=e;else for(var r=0;r<e.length;++r)e[r].data.hook.insert(e[r])}var T=g("attrs,class,staticClass,staticStyle,key");function I(t,e,n,r){var o,i=e.tag,l=e.data,c=e.children;if(r=r||l&&l.pre,e.elm=t,s(e.isComment)&&a(e.asyncFactory))return e.isAsyncPlaceholder=!0,!0;if(a(l)&&(a(o=l.hook)&&a(o=o.init)&&o(e,!0),a(o=e.componentInstance)))return A(e,n),!0;if(a(i)){if(a(c))if(t.hasChildNodes())if(a(o=l)&&a(o=o.domProps)&&a(o=o.innerHTML)){if(o!==t.innerHTML)return!1}else{for(var u=!0,p=t.firstChild,f=0;f<c.length;f++){if(!p||!I(p,c[f],n,r)){u=!1;break}p=p.nextSibling}if(!u||p)return!1}else d(e,c,n);if(a(l)){var h=!1;for(var g in l)if(!T(g)){h=!0,m(e,n);break}!h&&l.class&&se(l.class)}}else t.data!==e.text&&(t.data=e.text);return!0}return function(t,e,n,o){if(!i(e)){var l,u=!1,A=[];if(i(t))u=!0,p(e,A);else{var f=a(t.nodeType);if(!f&&ur(t,e))E(t,e,A,null,null,o);else{if(f){if(1===t.nodeType&&t.hasAttribute(F)&&(t.removeAttribute(F),n=!0),s(n)&&I(t,e,A))return S(e,A,!0),t;l=t,t=new gt(c.tagName(l).toLowerCase(),{},[],void 0,l)}var d=t.elm,m=c.parentNode(d);if(p(e,A,d._leaveCb?null:m,c.nextSibling(d)),a(e.parent))for(var g=e.parent,v=h(e);g;){for(var y=0;y<r.destroy.length;++y)r.destroy[y](g);if(g.elm=e.elm,v){for(var w=0;w<r.create.length;++w)r.create[w](lr,g);var x=g.data.hook.insert;if(x.merged)for(var T=1;T<x.fns.length;T++)x.fns[T]()}else sr(g);g=g.parent}a(m)?C([t],0,0):a(t.tag)&&b(t)}}return S(e,A,u),e.elm}a(t)&&b(t)}}({nodeOps:ir,modules:[wr,Sr,Nr,Dr,Hr,V?{create:yo,activate:yo,remove:function(t,e){!0!==t.data.show?mo(t,e):e()}}:{}].concat(vr)});K&&document.addEventListener("selectionchange",(function(){var t=document.activeElement;t&&t.vmodel&&Bo(t,"input")}));var Co={inserted:function(t,e,n,r){"select"===n.tag?(r.elm&&!r.elm._vOptions?Ae(n,"postpatch",(function(){Co.componentUpdated(t,e,n)})):wo(t,e,n.context),t._vOptions=[].map.call(t.options,So)):("textarea"===n.tag||or(t.type))&&(t._vModifiers=e.modifiers,e.modifiers.lazy||(t.addEventListener("compositionstart",To),t.addEventListener("compositionend",Io),t.addEventListener("change",Io),K&&(t.vmodel=!0)))},componentUpdated:function(t,e,n){if("select"===n.tag){wo(t,e,n.context);var r=t._vOptions,o=t._vOptions=[].map.call(t.options,So);if(o.some((function(t,e){return!D(t,r[e])})))(t.multiple?e.value.some((function(t){return Eo(t,o)})):e.value!==e.oldValue&&Eo(e.value,o))&&Bo(t,"change")}}};function wo(t,e,n){xo(t,e,n),(J||tt)&&setTimeout((function(){xo(t,e,n)}),0)}function xo(t,e,n){var r=e.value,o=t.multiple;if(!o||Array.isArray(r)){for(var i,a,s=0,l=t.options.length;s<l;s++)if(a=t.options[s],o)i=P(r,So(a))>-1,a.selected!==i&&(a.selected=i);else if(D(So(a),r))return void(t.selectedIndex!==s&&(t.selectedIndex=s));o||(t.selectedIndex=-1)}}function Eo(t,e){return e.every((function(e){return!D(e,t)}))}function So(t){return"_value"in t?t._value:t.value}function To(t){t.target.composing=!0}function Io(t){t.target.composing&&(t.target.composing=!1,Bo(t.target,"input"))}function Bo(t,e){var n=document.createEvent("HTMLEvents");n.initEvent(e,!0,!0),t.dispatchEvent(n)}function ko(t){return!t.componentInstance||t.data&&t.data.transition?t:ko(t.componentInstance._vnode)}var _o={bind:function(t,e,n){var r=e.value,o=(n=ko(n)).data&&n.data.transition,i=t.__vOriginalDisplay="none"===t.style.display?"":t.style.display;r&&o?(n.data.show=!0,ho(n,(function(){t.style.display=i}))):t.style.display=r?i:"none"},update:function(t,e,n){var r=e.value;!r!=!e.oldValue&&((n=ko(n)).data&&n.data.transition?(n.data.show=!0,r?ho(n,(function(){t.style.display=t.__vOriginalDisplay})):mo(n,(function(){t.style.display="none"}))):t.style.display=r?t.__vOriginalDisplay:"none")},unbind:function(t,e,n,r,o){o||(t.style.display=t.__vOriginalDisplay)}},Oo={model:Co,show:_o},No={name:String,appear:Boolean,css:Boolean,mode:String,type:String,enterClass:String,leaveClass:String,enterToClass:String,leaveToClass:String,enterActiveClass:String,leaveActiveClass:String,appearClass:String,appearActiveClass:String,appearToClass:String,duration:[Number,String,Object]};function Mo(t){var e=t&&t.componentOptions;return e&&e.Ctor.options.abstract?Mo(Xe(e.children)):t}function jo(t){var e={},n=t.$options;for(var r in n.propsData)e[r]=t[r];var o=n._parentListeners;for(var i in o)e[E(i)]=o[i];return e}function Do(t,e){if(/\d-keep-alive$/.test(e.tag))return t("keep-alive",{props:e.componentOptions.propsData})}var Po=function(t){return t.tag||be(t)},Lo=function(t){return"show"===t.name},Fo={name:"transition",props:No,abstract:!0,render:function(t){var e=this,n=this.$slots.default;if(n&&(n=n.filter(Po)).length){0;var r=this.mode;0;var o=n[0];if(function(t){for(;t=t.parent;)if(t.data.transition)return!0}(this.$vnode))return o;var i=Mo(o);if(!i)return o;if(this._leaving)return Do(t,o);var a="__transition-"+this._uid+"-";i.key=null==i.key?i.isComment?a+"comment":a+i.tag:l(i.key)?0===String(i.key).indexOf(a)?i.key:a+i.key:i.key;var s=(i.data||(i.data={})).transition=jo(this),c=this._vnode,u=Mo(c);if(i.data.directives&&i.data.directives.some(Lo)&&(i.data.show=!0),u&&u.data&&!function(t,e){return e.key===t.key&&e.tag===t.tag}(i,u)&&!be(u)&&(!u.componentInstance||!u.componentInstance._vnode.isComment)){var p=u.data.transition=_({},s);if("out-in"===r)return this._leaving=!0,Ae(p,"afterLeave",(function(){e._leaving=!1,e.$forceUpdate()})),Do(t,o);if("in-out"===r){if(be(i))return c;var A,f=function(){A()};Ae(s,"afterEnter",f),Ae(s,"enterCancelled",f),Ae(p,"delayLeave",(function(t){A=t}))}}return o}}},zo=_({tag:String,moveClass:String},No);function $o(t){t.elm._moveCb&&t.elm._moveCb(),t.elm._enterCb&&t.elm._enterCb()}function Ro(t){t.data.newPos=t.elm.getBoundingClientRect()}function Uo(t){var e=t.data.pos,n=t.data.newPos,r=e.left-n.left,o=e.top-n.top;if(r||o){t.data.moved=!0;var i=t.elm.style;i.transform=i.WebkitTransform="translate("+r+"px,"+o+"px)",i.transitionDuration="0s"}}delete zo.mode;var Go={Transition:Fo,TransitionGroup:{props:zo,beforeMount:function(){var t=this,e=this._update;this._update=function(n,r){var o=rn(t);t.__patch__(t._vnode,t.kept,!1,!0),t._vnode=t.kept,o(),e.call(t,n,r)}},render:function(t){for(var e=this.tag||this.$vnode.data.tag||"span",n=Object.create(null),r=this.prevChildren=this.children,o=this.$slots.default||[],i=this.children=[],a=jo(this),s=0;s<o.length;s++){var l=o[s];if(l.tag)if(null!=l.key&&0!==String(l.key).indexOf("__vlist"))i.push(l),n[l.key]=l,(l.data||(l.data={})).transition=a;else;}if(r){for(var c=[],u=[],p=0;p<r.length;p++){var A=r[p];A.data.transition=a,A.data.pos=A.elm.getBoundingClientRect(),n[A.key]?c.push(A):u.push(A)}this.kept=t(e,null,c),this.removed=u}return t(e,null,i)},updated:function(){var t=this.prevChildren,e=this.moveClass||(this.name||"v")+"-move";t.length&&this.hasMove(t[0].elm,e)&&(t.forEach($o),t.forEach(Ro),t.forEach(Uo),this._reflow=document.body.offsetHeight,t.forEach((function(t){if(t.data.moved){var n=t.elm,r=n.style;so(n,e),r.transform=r.WebkitTransform=r.transitionDuration="",n.addEventListener(no,n._moveCb=function t(r){r&&r.target!==n||r&&!/transform$/.test(r.propertyName)||(n.removeEventListener(no,t),n._moveCb=null,lo(n,e))})}})))},methods:{hasMove:function(t,e){if(!Jr)return!1;if(this._hasMove)return this._hasMove;var n=t.cloneNode();t._transitionClasses&&t._transitionClasses.forEach((function(t){qr(n,t)})),Vr(n,e),n.style.display="none",this.$el.appendChild(n);var r=po(n);return this.$el.removeChild(n),this._hasMove=r.hasTransform}}}};On.config.mustUseProp=function(t,e,n){return"value"===n&&Rn(t)&&"button"!==e||"selected"===n&&"option"===t||"checked"===n&&"input"===t||"muted"===n&&"video"===t},On.config.isReservedTag=nr,On.config.isReservedAttr=$n,On.config.getTagNamespace=function(t){return er(t)?"svg":"math"===t?"math":void 0},On.config.isUnknownElement=function(t){if(!V)return!0;if(nr(t))return!1;if(t=t.toLowerCase(),null!=rr[t])return rr[t];var e=document.createElement(t);return t.indexOf("-")>-1?rr[t]=e.constructor===window.HTMLUnknownElement||e.constructor===window.HTMLElement:rr[t]=/HTMLUnknownElement/.test(e.toString())},_(On.options.directives,Oo),_(On.options.components,Go),On.prototype.__patch__=V?bo:N,On.prototype.$mount=function(t,e){return function(t,e,n){var r;return t.$el=e,t.$options.render||(t.$options.render=yt),ln(t,"beforeMount"),r=function(){t._update(t._render(),n)},new bn(t,r,N,{before:function(){t._isMounted&&!t._isDestroyed&&ln(t,"beforeUpdate")}},!0),n=!1,null==t.$vnode&&(t._isMounted=!0,ln(t,"mounted")),t}(this,t=t&&V?function(t){if("string"==typeof t){return document.querySelector(t)||document.createElement("div")}return t}(t):void 0,e)},V&&setTimeout((function(){R.devtools&&st&&st.emit("init",On)}),0);const Qo=On},6430:(t,e,n)=>{"use strict";var r=n(9804),o=n(6314),i=n(1924),a=i("Object.prototype.toString"),s=n(6410)(),l="undefined"==typeof globalThis?n.g:globalThis,c=o(),u=i("String.prototype.slice"),p={},A=n(4079),f=Object.getPrototypeOf;s&&A&&f&&r(c,(function(t){if("function"==typeof l[t]){var e=new l[t];if(Symbol.toStringTag in e){var n=f(e),r=A(n,Symbol.toStringTag);if(!r){var o=f(n);r=A(o,Symbol.toStringTag)}p[t]=r.get}}}));var d=n(5692);t.exports=function(t){return!!d(t)&&(s&&Symbol.toStringTag in t?function(t){var e=!1;return r(p,(function(n,r){if(!e)try{var o=n.call(t);o===r&&(e=o)}catch(t){}})),e}(t):u(a(t),8,-1))}}},n={};function r(t){var o=n[t];if(void 0!==o)return o.exports;var i=n[t]={id:t,loaded:!1,exports:{}};return e[t](i,i.exports,r),i.loaded=!0,i.exports}r.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return r.d(e,{a:e}),e},r.d=(t,e)=>{for(var n in e)r.o(e,n)&&!r.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:e[n]})},r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),r.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),r.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},r.nmd=t=>(t.paths=[],t.children||(t.children=[]),t),r.p="/apps/firstrunwizard/js/",(()=>{"use strict";var e=r(144),n=r(9753),o=r(9944),i=r(7450),a=r.n(i),s=r(4820);const l={name:"IntroVideo",data:()=>({videoMp4:(0,n.FW)("firstrunwizard","img","Nextcloud.mp4"),videoWebm:(0,n.FW)("firstrunwizard","img","Nextcloud.webm")}),computed:{videoFallbackText:()=>t("firstrunwizard","Welcome to {cloudName}!",{cloudName:window.OC.theme.name})}};var c=r(3379),u=r.n(c),p=r(7795),A=r.n(p),f=r(569),d=r.n(f),h=r(3565),m=r.n(h),g=r(9216),v=r.n(g),y=r(4589),b=r.n(y),C=r(3392),w={};w.styleTagTransform=b(),w.setAttributes=m(),w.insert=d().bind(null,"head"),w.domAPI=A(),w.insertStyleElement=v();u()(C.Z,w);C.Z&&C.Z.locals&&C.Z.locals;function x(t,e,n,r,o,i,a,s){var l,c="function"==typeof t?t.options:t;if(e&&(c.render=e,c.staticRenderFns=n,c._compiled=!0),r&&(c.functional=!0),i&&(c._scopeId="data-v-"+i),a?(l=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__),o&&o.call(this,t),t&&t._registeredComponents&&t._registeredComponents.add(a)},c._ssrRegister=l):o&&(l=s?function(){o.call(this,(c.functional?this.parent:this).$root.$options.shadowRoot)}:o),l)if(c.functional){c._injectStyles=l;var u=c.render;c.render=function(t,e){return l.call(e),u(t,e)}}else{var p=c.beforeCreate;c.beforeCreate=p?[].concat(p,l):[l]}return{exports:t,options:c}}const E=x(l,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"video-wrapper"},[n("video",{ref:"video",attrs:{playsinline:"",autoplay:"",muted:""},domProps:{muted:!0}},[n("source",{attrs:{src:t.videoWebm,type:"video/webm"}}),t._v(" "),n("source",{attrs:{src:t.videoMp4,type:"video/mp4"}}),t._v("\n\t\t"+t._s(t.videoFallbackText)+"\n\t")])])}),[],!1,null,"70de3a6e",null).exports;var S=r(5108);const T={name:"App",components:{Modal:a()},data:()=>({showModal:!1,withIntro:!0,slides:[],currentSlide:0,fadeDirection:"next",isMobile:window.outerWidth<1024,slidesLoaded:!1}),computed:{slideList(){if(this.withIntro)return this.slides;return this.slides.slice(1)},hasNext(){return this.currentSlide<this.slideList.length-1},hasPrevious(){return this.currentSlide>0},isLast(){return this.currentSlide===this.slideList.length-1},isFirst(){return 0===this.currentSlide},startButtonText:()=>t("firstrunwizard","Start using {cloudName}",{cloudName:window.OC.theme.name})},async created(){this.slides=[E],window.addEventListener("resize",this.onResize)},beforeDestroy(){window.removeEventListener("resize",this.onResize)},methods:{async loadStaticSlides(){if(!this.slidesLoaded)try{const t=await s.Z.get((0,n.nu)("/apps/firstrunwizard/wizard"));this.slides.push(...t.data.slides),this.withIntro=t.data.hasVideo,this.slidesLoaded=!0}catch(t){S.error("Failed to load slides")}},async open(t=!0){await this.loadStaticSlides(),this.withIntro=this.withIntro&t,this.showModal=!0,this.currentSlide=0},close(){this.showModal=!1,s.Z.delete((0,n.nu)("/apps/firstrunwizard/wizard"))},next(){this.fadeDirection="next",this.isLast?this.close():this.currentSlide+=1},previous(){this.fadeDirection="previous",this.isFirst||(this.currentSlide-=1)},onResize(t){this.isMobile=window.outerWidth<768}}};var I=r(6060),B={};B.styleTagTransform=b(),B.setAttributes=m(),B.insert=d().bind(null,"head"),B.domAPI=A(),B.insertStyleElement=v();u()(I.Z,B);I.Z&&I.Z.locals&&I.Z.locals;var k=r(9504),_={};_.styleTagTransform=b(),_.setAttributes=m(),_.insert=d().bind(null,"head"),_.domAPI=A(),_.insertStyleElement=v();u()(k.Z,_);k.Z&&k.Z.locals&&k.Z.locals;const O=x(T,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.showModal&&t.slideList.length>0?n("Modal",{attrs:{id:"firstrunwizard","has-previous":t.hasPrevious,"has-next":t.hasNext,size:t.isMobile?"full":"normal","clear-view-delay":-1,name:"modal"},on:{previous:t.previous,next:t.next,close:t.close}},[0===t.currentSlide&&t.withIntro?t._e():n("div",{staticClass:"modal-header"},[n("div",{staticClass:"firstrunwizard-header"},[n("div",{staticClass:"logo"},[n("p",{staticClass:"hidden-visually"},[t._v("\n\t\t\t\t\t"+t._s(t.oc_defaults.name)+"\n\t\t\t\t")])]),t._v(" "),n("h2",{domProps:{innerHTML:t._s(t.oc_defaults.slogan)}}),t._v(" "),n("p")])]),t._v(" "),n("div",{staticClass:"modal-body"},[t.slideList.length>0?t._t("body",(function(){return[n("transition",{attrs:{name:t.fadeDirection,mode:"out-in"}},["inline"===t.slideList[t.currentSlide].type?n("div",{key:t.currentSlide,domProps:{innerHTML:t._s(t.slideList[t.currentSlide].content)}}):n(t.slideList[t.currentSlide],{tag:"div",on:{finished:function(e){t.currentSlide++}}})],1)]})):t._e()],2),t._v(" "),n("div",{staticClass:"modal-footer"},[t.isLast?n("button",{staticClass:"primary modal-default-button",on:{click:t.close}},[t._v("\n\t\t\t"+t._s(t.startButtonText)+"\n\t\t")]):t._e()])]):t._e()}),[],!1,null,"063e1a6a",null).exports;r.p=(0,n.FW)("firstrunwizard","","js/"),e.default.prototype.t=o.translate,e.default.prototype.n=o.translatePlural,e.default.prototype.oc_defaults=window.oc_defaults;const N=document.createElement("div");N.id="firstrunwizard",document.querySelector("body").appendChild(N);const M=(new(e.default.extend(O))).$mount(N);window.OCA.FirstRunWizard={open:M.open}})()})();
-//# sourceMappingURL=firstrunwizard-main.js.map?v=ee34bc9a06cb1a38e30f \ No newline at end of file
+(()=>{var e={2200:(t,e,n)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"getRequestToken",{enumerable:!0,get:function(){return r.getRequestToken}}),Object.defineProperty(e,"onRequestTokenUpdate",{enumerable:!0,get:function(){return r.onRequestTokenUpdate}}),Object.defineProperty(e,"getCurrentUser",{enumerable:!0,get:function(){return o.getCurrentUser}});var r=n(1894),o=n(1618)},1894:(t,e,n)=>{"use strict";var r=n(5108);n(9554),Object.defineProperty(e,"__esModule",{value:!0}),e.getRequestToken=function(){return a},e.onRequestTokenUpdate=function(t){s.push(t)};var o=n(7594),i=document.getElementsByTagName("head")[0],a=i?i.getAttribute("data-requesttoken"):null,s=[];(0,o.subscribe)("csrf-token-update",(function(t){a=t.token,s.forEach((function(e){try{e(t.token)}catch(t){r.error("error updating CSRF token observer",t)}}))}))},1618:(t,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.getCurrentUser=function(){if(null===r)return null;return{uid:r,displayName:i,isAdmin:a}};var n=document.getElementsByTagName("head")[0],r=n?n.getAttribute("data-user"):null,o=document.getElementsByTagName("head")[0],i=o?o.getAttribute("data-user-displayname"):null,a="undefined"!=typeof OC&&OC.isUserAdmin()},4820:(t,e,n)=>{"use strict";e.Z=void 0;var r,o,i=(r=n(9669))&&r.__esModule?r:{default:r},a=n(2200);const s=i.default.create({headers:{requesttoken:null!==(o=(0,a.getRequestToken)())&&void 0!==o?o:""}}),l=Object.assign(s,{CancelToken:i.default.CancelToken,isCancel:i.default.isCancel});(0,a.onRequestTokenUpdate)((t=>s.defaults.headers.requesttoken=t));var u=l;e.Z=u},4201:(t,e,n)=>{"use strict";var r=n(5108);Object.defineProperty(e,"__esModule",{value:!0}),e.ProxyBus=void 0;var o=a(n(6397)),i=a(n(8679));function a(t){return t&&t.__esModule?t:{default:t}}function s(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}var l="1.2.0",u=function(){function t(e){var n,a,s;!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),s=void 0,(a="bus")in(n=this)?Object.defineProperty(n,a,{value:s,enumerable:!0,configurable:!0,writable:!0}):n[a]=s,"function"==typeof e.getVersion&&(0,o.default)(e.getVersion())?(0,i.default)(e.getVersion())!==(0,i.default)(this.getVersion())&&r.warn("Proxying an event bus of version "+e.getVersion()+" with "+this.getVersion()):r.warn("Proxying an event bus with an unknown or invalid version"),this.bus=e}var e,n,a;return e=t,(n=[{key:"getVersion",value:function(){return l}},{key:"subscribe",value:function(t,e){this.bus.subscribe(t,e)}},{key:"unsubscribe",value:function(t,e){this.bus.unsubscribe(t,e)}},{key:"emit",value:function(t,e){this.bus.emit(t,e)}}])&&s(e.prototype,n),a&&s(e,a),t}();e.ProxyBus=u},6936:(t,e,n)=>{"use strict";var r=n(5108);function o(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}n(2222),n(7327),n(9554),n(6992),n(1532),n(1539),n(8783),n(4747),n(3948),Object.defineProperty(e,"__esModule",{value:!0}),e.SimpleBus=void 0;var i="1.2.0",a=function(){function t(){var e,n,r;!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),e=this,n="handlers",r=new Map,n in e?Object.defineProperty(e,n,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[n]=r}var e,n,a;return e=t,(n=[{key:"getVersion",value:function(){return i}},{key:"subscribe",value:function(t,e){this.handlers.set(t,(this.handlers.get(t)||[]).concat(e))}},{key:"unsubscribe",value:function(t,e){this.handlers.set(t,(this.handlers.get(t)||[]).filter((function(t){return t!=e})))}},{key:"emit",value:function(t,e){(this.handlers.get(t)||[]).forEach((function(t){try{t(e)}catch(t){r.error("could not invoke event listener",t)}}))}}])&&o(e.prototype,n),a&&o(e,a),t}();e.SimpleBus=a},7594:(t,e,n)=>{"use strict";var r=n(5108);Object.defineProperty(e,"__esModule",{value:!0}),e.subscribe=function(t,e){a.subscribe(t,e)},e.unsubscribe=function(t,e){a.unsubscribe(t,e)},e.emit=function(t,e){a.emit(t,e)};var o=n(4201),i=n(6936);var a=(void 0!==window.OC&&window.OC._eventBus&&void 0===window._nc_event_bus&&(r.warn("found old event bus instance at OC._eventBus. Update your version!"),window._nc_event_bus=window.OC._eventBus),void 0!==window._nc_event_bus?new o.ProxyBus(window._nc_event_bus):window._nc_event_bus=new i.SimpleBus)},3955:(t,e,n)=>{"use strict";n(1539),n(4916),n(9714),n(5306),Object.defineProperty(e,"__esModule",{value:!0}),e.getGettextBuilder=function(){return new u};var r,o=(r=n(7699))&&r.__esModule?r:{default:r},i=n(9944);function a(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}function l(t,e,n){return e&&s(t.prototype,e),n&&s(t,n),t}var u=function(){function t(){a(this,t),this.translations={},this.debug=!1}return l(t,[{key:"setLanguage",value:function(t){return this.locale=t,this}},{key:"detectLocale",value:function(){return this.setLanguage((0,i.getLanguage)().replace("-","_"))}},{key:"addTranslation",value:function(t,e){return this.translations[t]=e,this}},{key:"enableDebugMode",value:function(){return this.debug=!0,this}},{key:"build",value:function(){return new c(this.locale||"en",this.translations,this.debug)}}]),t}(),c=function(){function t(e,n,r){for(var i in a(this,t),this.gt=new o.default({debug:r,sourceLocale:"en"}),n)this.gt.addTranslations(i,"messages",n[i]);this.gt.setLocale(e)}return l(t,[{key:"subtitudePlaceholders",value:function(t,e){return t.replace(/{([^{}]*)}/g,(function(t,n){var r=e[n];return"string"==typeof r||"number"==typeof r?r.toString():t}))}},{key:"gettext",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.subtitudePlaceholders(this.gt.gettext(t),e)}},{key:"ngettext",value:function(t,e,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return this.subtitudePlaceholders(this.gt.ngettext(t,e,n).replace(/%n/g,n.toString()),r)}}]),t}()},9944:(t,e,n)=>{"use strict";var r=n(5108);function o(){return"undefined"==typeof OC?(r.warn("No OC found"),"en"):OC.getLocale()}n(4916),n(5306),Object.defineProperty(e,"__esModule",{value:!0}),e.getLocale=o,e.getCanonicalLocale=function(){return o().replace(/_/g,"-")},e.getLanguage=function(){if("undefined"==typeof OC)return r.warn("No OC found"),"en";return OC.getLanguage()},e.translate=function(t,e,n,o,i){if("undefined"==typeof OC)return r.warn("No OC found"),e;return OC.L10N.translate(t,e,n,o,i)},e.translatePlural=function(t,e,n,o,i,a){if("undefined"==typeof OC)return r.warn("No OC found"),e;return OC.L10N.translatePlural(t,e,n,o,i,a)},e.getFirstDay=function(){if(void 0===window.firstDay)return r.warn("No firstDay found"),1;return window.firstDay},e.getDayNames=function(){if(void 0===window.dayNames)return r.warn("No dayNames found"),["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];return window.dayNames},e.getDayNamesShort=function(){if(void 0===window.dayNamesShort)return r.warn("No dayNamesShort found"),["Sun.","Mon.","Tue.","Wed.","Thu.","Fri.","Sat."];return window.dayNamesShort},e.getDayNamesMin=function(){if(void 0===window.dayNamesMin)return r.warn("No dayNamesMin found"),["Su","Mo","Tu","We","Th","Fr","Sa"];return window.dayNamesMin},e.getMonthNames=function(){if(void 0===window.monthNames)return r.warn("No monthNames found"),["January","February","March","April","May","June","July","August","September","October","November","December"];return window.monthNames},e.getMonthNamesShort=function(){if(void 0===window.monthNamesShort)return r.warn("No monthNamesShort found"),["Jan.","Feb.","Mar.","Apr.","May.","Jun.","Jul.","Aug.","Sep.","Oct.","Nov.","Dec."];return window.monthNamesShort}},9753:(t,e,n)=>{"use strict";n(2772),n(9601),n(1539),n(4916),n(9714),n(5306),e.FW=e.nu=void 0;e.nu=function(t,e,n){var r=Object.assign({escape:!0,noRewrite:!1},n||{}),i=function(t,e){return e=e||{},t.replace(/{([^{}]*)}/g,(function(t,n){var o=e[n];return r.escape?"string"==typeof o||"number"==typeof o?encodeURIComponent(o.toString()):encodeURIComponent(t):"string"==typeof o||"number"==typeof o?o.toString():t}))};return"/"!==t.charAt(0)&&(t="/"+t),!0!==OC.config.modRewriteWorking||r.noRewrite?o()+"/index.php"+i(t,e||{}):o()+i(t,e||{})};var r=function(t,e,n){var r=-1!==OC.coreApps.indexOf(t),i=o();return"php"!==n.substring(n.length-3)||r?"php"===n.substring(n.length-3)||r?(i+="settings"!==t&&"core"!==t&&"search"!==t||"ajax"!==e?"/":"/index.php/",r||(i+="apps/"),""!==t&&(i+=t+="/"),e&&(i+=e+"/"),i+=n):(i=OC.appswebroots[t],e&&(i+="/"+e+"/"),"/"!==i.substring(i.length-1)&&(i+="/"),i+=n):(i+="/index.php/apps/"+t,"index.php"!==n&&(i+="/",e&&(i+=encodeURI(e+"/")),i+=n)),i};e.FW=r;var o=function(){return OC.webroot}},7450:(t,e,n)=>{window,t.exports=function(t){var e={};function n(r){if(e[r])return e[r].exports;var o=e[r]={i:r,l:!1,exports:{}};return t[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=t,n.c=e,n.d=function(t,e,r){n.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:r})},n.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},n.t=function(t,e){if(1&e&&(t=n(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var o in t)n.d(r,o,function(e){return t[e]}.bind(null,o));return r},n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,"a",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p="/dist/",n(n.s=108)}([function(t,e,n){"use strict";function r(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var n=t&&("undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"]);if(null!=n){var r,o,i=[],a=!0,s=!1;try{for(n=n.call(t);!(a=(r=n.next()).done)&&(i.push(r.value),!e||i.length!==e);a=!0);}catch(t){s=!0,o=t}finally{try{a||null==n.return||n.return()}finally{if(s)throw o}}return i}}(t,e)||function(t,e){if(t){if("string"==typeof t)return o(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?o(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function o(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n<e;n++)r[n]=t[n];return r}t.exports=function(t){var e=r(t,4),n=e[1],o=e[3];if(!o)return n;if("function"==typeof btoa){var i=btoa(unescape(encodeURIComponent(JSON.stringify(o)))),a="sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(i),s="/*# ".concat(a," */"),l=o.sources.map((function(t){return"/*# sourceURL=".concat(o.sourceRoot||"").concat(t," */")}));return[n].concat(l).concat([s]).join("\n")}return[n].join("\n")}},function(t,e,n){"use strict";t.exports=function(t){var e=[];return e.toString=function(){return this.map((function(e){var n=t(e);return e[2]?"@media ".concat(e[2]," {").concat(n,"}"):n})).join("")},e.i=function(t,n,r){"string"==typeof t&&(t=[[null,t,""]]);var o={};if(r)for(var i=0;i<this.length;i++){var a=this[i][0];null!=a&&(o[a]=!0)}for(var s=0;s<t.length;s++){var l=[].concat(t[s]);r&&o[l[0]]||(n&&(l[2]?l[2]="".concat(n," and ").concat(l[2]):l[2]=n),e.push(l))}},e}},function(t,e,n){"use strict";var r,o=function(){return void 0===r&&(r=Boolean(window&&document&&document.all&&!window.atob)),r},i=function(){var t={};return function(e){if(void 0===t[e]){var n=document.querySelector(e);if(window.HTMLIFrameElement&&n instanceof window.HTMLIFrameElement)try{n=n.contentDocument.head}catch(t){n=null}t[e]=n}return t[e]}}(),a=[];function s(t){for(var e=-1,n=0;n<a.length;n++)if(a[n].identifier===t){e=n;break}return e}function l(t,e){for(var n={},r=[],o=0;o<t.length;o++){var i=t[o],l=e.base?i[0]+e.base:i[0],u=n[l]||0,c="".concat(l," ").concat(u);n[l]=u+1;var p=s(c),f={css:i[1],media:i[2],sourceMap:i[3]};-1!==p?(a[p].references++,a[p].updater(f)):a.push({identifier:c,updater:v(f,e),references:1}),r.push(c)}return r}function u(t){var e=document.createElement("style"),r=t.attributes||{};if(void 0===r.nonce){var o=n.nc;o&&(r.nonce=o)}if(Object.keys(r).forEach((function(t){e.setAttribute(t,r[t])})),"function"==typeof t.insert)t.insert(e);else{var a=i(t.insert||"head");if(!a)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");a.appendChild(e)}return e}var c,p=(c=[],function(t,e){return c[t]=e,c.filter(Boolean).join("\n")});function f(t,e,n,r){var o=n?"":r.media?"@media ".concat(r.media," {").concat(r.css,"}"):r.css;if(t.styleSheet)t.styleSheet.cssText=p(e,o);else{var i=document.createTextNode(o),a=t.childNodes;a[e]&&t.removeChild(a[e]),a.length?t.insertBefore(i,a[e]):t.appendChild(i)}}function d(t,e,n){var r=n.css,o=n.media,i=n.sourceMap;if(o?t.setAttribute("media",o):t.removeAttribute("media"),i&&"undefined"!=typeof btoa&&(r+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(i))))," */")),t.styleSheet)t.styleSheet.cssText=r;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(r))}}var h=null,m=0;function v(t,e){var n,r,o;if(e.singleton){var i=m++;n=h||(h=u(e)),r=f.bind(null,n,i,!1),o=f.bind(null,n,i,!0)}else n=u(e),r=d.bind(null,n,e),o=function(){!function(t){if(null===t.parentNode)return!1;t.parentNode.removeChild(t)}(n)};return r(t),function(e){if(e){if(e.css===t.css&&e.media===t.media&&e.sourceMap===t.sourceMap)return;r(t=e)}else o()}}t.exports=function(t,e){(e=e||{}).singleton||"boolean"==typeof e.singleton||(e.singleton=o());var n=l(t=t||[],e);return function(t){if(t=t||[],"[object Array]"===Object.prototype.toString.call(t)){for(var r=0;r<n.length;r++){var o=s(n[r]);a[o].references--}for(var i=l(t,e),u=0;u<n.length;u++){var c=s(n[u]);0===a[c].references&&(a[c].updater(),a.splice(c,1))}n=i}}}},function(t,e,n){"use strict";function r(t,e,n,r,o,i,a,s){var l,u="function"==typeof t?t.options:t;if(e&&(u.render=e,u.staticRenderFns=n,u._compiled=!0),r&&(u.functional=!0),i&&(u._scopeId="data-v-"+i),a?(l=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__),o&&o.call(this,t),t&&t._registeredComponents&&t._registeredComponents.add(a)},u._ssrRegister=l):o&&(l=s?function(){o.call(this,(u.functional?this.parent:this).$root.$options.shadowRoot)}:o),l)if(u.functional){u._injectStyles=l;var c=u.render;u.render=function(t,e){return l.call(e),c(t,e)}}else{var p=u.beforeCreate;u.beforeCreate=p?[].concat(p,l):[l]}return{exports:t,options:u}}n.d(e,"a",(function(){return r}))},function(t,e,n){"use strict";n.d(e,"b",(function(){return s})),n.d(e,"a",(function(){return a}));var r=n(11),o=Object(r.getGettextBuilder)().detectLocale();[{locale:"ar",translations:{"{tag} (invisible)":"{tag} (غير مرئي)","{tag} (restricted)":"{tag} (مقيد)",Actions:"الإجراءات",Activities:"النشاطات","Animals & Nature":"الحيوانات والطبيعة","Avatar of {displayName}":"صورة {displayName} الرمزية","Avatar of {displayName}, {status}":"صورة {displayName} الرمزية، {status}","Cancel changes":"إلغاء التغييرات",Choose:"إختيار",Close:"أغلق","Close navigation":"إغلاق المتصفح","Confirm changes":"تأكيد التغييرات",Custom:"مخصص","Edit item":"تعديل عنصر","External documentation for {title}":"الوثائق الخارجية لـ{title}",Flags:"الأعلام","Food & Drink":"الطعام والشراب","Frequently used":"كثيرا ما تستخدم",Global:"عالمي","Go back to the list":"العودة إلى القائمة","Message limit of {count} characters reached":"تم الوصول إلى الحد الأقصى لعدد الأحرف في الرسالة: {count} حرف",Next:"التالي","No emoji found":"لم يتم العثور على أي رمز تعبيري","No results":"ليس هناك أية نتيجة",Objects:"الأشياء","Open navigation":"فتح المتصفح","Pause slideshow":"إيقاف العرض مؤقتًا","People & Body":"الناس والجسم","Pick an emoji":"اختر رمزًا تعبيريًا","Please select a time zone:":"الرجاء تحديد المنطقة الزمنية:",Previous:"السابق",Search:"بحث","Search results":"نتائج البحث","Select a tag":"اختر علامة",Settings:"الإعدادات","Settings navigation":"إعدادات المتصفح","Smileys & Emotion":"الوجوه و الرموز التعبيرية","Start slideshow":"بدء العرض",Submit:"إرسال",Symbols:"الرموز","Travel & Places":"السفر والأماكن","Type to search time zone":"اكتب للبحث عن منطقة زمنية","Unable to search the group":"تعذر البحث في المجموعة","Undo changes":"التراجع عن التغييرات","Write message, @ to mention someone, : for emoji autocompletion …":"اكتب رسالة، @ للإشارة إلى شخص ما، : للإكمال التلقائي للرموز التعبيرية ..."}},{locale:"br",translations:{"{tag} (invisible)":"{tag} (diwelus)","{tag} (restricted)":"{tag} (bevennet)",Actions:"Oberioù",Activities:"Oberiantizoù","Animals & Nature":"Loened & Natur",Choose:"Dibab",Close:"Serriñ",Custom:"Personelañ",Flags:"Bannieloù","Food & Drink":"Boued & Evajoù","Frequently used":"Implijet alies",Next:"Da heul","No emoji found":"Emoji ebet kavet","No results":"Disoc'h ebet",Objects:"Traoù","Pause slideshow":"Arsav an diaporama","People & Body":"Tud & Korf","Pick an emoji":"Choaz un emoji",Previous:"A-raok",Search:"Klask","Search results":"Disoc'hoù an enklask","Select a tag":"Choaz ur c'hlav",Settings:"Arventennoù","Smileys & Emotion":"Smileyioù & Fromoù","Start slideshow":"Kregiñ an diaporama",Symbols:"Arouezioù","Travel & Places":"Beaj & Lec'hioù","Unable to search the group":"Dibosupl eo klask ar strollad"}},{locale:"ca",translations:{"{tag} (invisible)":"{tag} (invisible)","{tag} (restricted)":"{tag} (restringit)",Actions:"Accions",Activities:"Activitats","Animals & Nature":"Animals i natura","Cancel changes":"Cancel·la els canvis",Choose:"Tria",Close:"Tanca","Confirm changes":"Confirmeu els canvis",Custom:"Personalitzat","External documentation for {title}":"Documentació externa per a {title}",Flags:"Marques","Food & Drink":"Menjar i begudes","Frequently used":"Utilitzats recentment","Message limit of {count} characters reached":"S'ha arribat al límit de {count} caràcters per missatge",Next:"Següent","No emoji found":"No s'ha trobat cap emoji","No results":"Sense resultats",Objects:"Objectes","Pause slideshow":"Atura la presentació","People & Body":"Persones i cos","Pick an emoji":"Trieu un emoji",Previous:"Anterior",Search:"Cerca","Search results":"Resultats de cerca","Select a tag":"Selecciona una etiqueta",Settings:"Paràmetres","Settings navigation":"Navegació d'opcions","Smileys & Emotion":"Cares i emocions","Start slideshow":"Inicia la presentació",Submit:"Envia",Symbols:"Símbols","Travel & Places":"Viatges i llocs","Unable to search the group":"No es pot cercar el grup","Write message, @ to mention someone …":"Escriu un missatge, @ per mencionar algú..."}},{locale:"cs_CZ",translations:{"{tag} (invisible)":"{tag} (neviditelné)","{tag} (restricted)":"{tag} (omezené)",Actions:"Akce",Activities:"Aktivity","Animals & Nature":"Zvířata a příroda","Avatar of {displayName}":"Zástupný obrázek uživatele {displayName}","Avatar of {displayName}, {status}":"Zástupný obrázek uživatele {displayName}, {status}","Cancel changes":"Zrušit změny",Choose:"Zvolit",Close:"Zavřít","Close navigation":"Zavřít navigaci","Confirm changes":"Potvrdit změny",Custom:"Uživatelsky určené","Edit item":"Upravit položku","External documentation for {title}":"Externí dokumentace k {title}",Flags:"Příznaky","Food & Drink":"Jídlo a pití","Frequently used":"Často používané",Global:"Globální","Go back to the list":"Jít zpět na seznam","Message limit of {count} characters reached":"Dosaženo limitu počtu ({count}) znaků zprávy",Next:"Následující","No emoji found":"Nenalezeno žádné emoji","No results":"Nic nenalezeno",Objects:"Objekty","Open navigation":"Otevřít navigaci","Pause slideshow":"Pozastavit prezentaci","People & Body":"Lidé a tělo","Pick an emoji":"Vybrat emoji","Please select a time zone:":"Vyberte časovou zónu:",Previous:"Předchozí",Search:"Hledat","Search results":"Výsledky hledání","Select a tag":"Vybrat štítek",Settings:"Nastavení","Settings navigation":"Pohyb po nastavení","Smileys & Emotion":"Úsměvy a emoce","Start slideshow":"Spustit prezentaci",Submit:"Odeslat",Symbols:"Symboly","Travel & Places":"Cestování a místa","Type to search time zone":"Psaním vyhledejte časovou zónu","Unable to search the group":"Nedaří se hledat skupinu","Undo changes":"Vzít změny zpět","Write message, @ to mention someone, : for emoji autocompletion …":"Napište zprávu – pokud chcete někoho zmínit, napište před jeho uživatelským jménem @ (zavináč); automatické doplňování emotikonů zahájíte napsáním : (dvojtečky)…"}},{locale:"da",translations:{"{tag} (invisible)":"{tag} (usynlig)","{tag} (restricted)":"{tag} (begrænset)",Actions:"Handlinger",Activities:"Aktiviteter","Animals & Nature":"Dyr & Natur",Choose:"Vælg",Close:"Luk",Custom:"Brugerdefineret",Flags:"Flag","Food & Drink":"Mad & Drikke","Frequently used":"Ofte brugt","Message limit of {count} characters reached":"Begrænsning på {count} tegn er nået",Next:"Videre","No emoji found":"Ingen emoji fundet","No results":"Ingen resultater",Objects:"Objekter","Pause slideshow":"Suspender fremvisning","People & Body":"Mennesker & Menneskekroppen","Pick an emoji":"Vælg en emoji",Previous:"Forrige",Search:"Søg","Search results":"Søgeresultater","Select a tag":"Vælg et mærke",Settings:"Indstillinger","Settings navigation":"Naviger i indstillinger","Smileys & Emotion":"Smileys & Emotion","Start slideshow":"Start fremvisning",Symbols:"Symboler","Travel & Places":"Rejser & Rejsemål","Unable to search the group":"Kan ikke søge på denne gruppe","Write message, @ to mention someone …":"Skriv i meddelelse, @ for at nævne nogen …"}},{locale:"de",translations:{"{tag} (invisible)":"{tag} (unsichtbar)","{tag} (restricted)":"{tag} (eingeschränkt)",Actions:"Aktionen",Activities:"Aktivitäten","Animals & Nature":"Tiere & Natur","Avatar of {displayName}":"Avatar von {displayName}","Avatar of {displayName}, {status}":"Avatar von {displayName}, {status}","Cancel changes":"Änderungen verwerfen",Choose:"Auswählen",Close:"Schließen","Close navigation":"Navigation schließen","Confirm changes":"Änderungen bestätigen",Custom:"Benutzerdefiniert","Edit item":"Objekt bearbeiten","External documentation for {title}":"Externe Dokumentation für {title}",Flags:"Flaggen","Food & Drink":"Essen & Trinken","Frequently used":"Häufig verwendet",Global:"Global","Go back to the list":"Zurück zur Liste","Message limit of {count} characters reached":"Nachrichtenlimit von {count} Zeichen erreicht",Next:"Weiter","No emoji found":"Kein Emoji gefunden","No results":"Keine Ergebnisse",Objects:"Gegenstände","Open navigation":"Navigation öffnen","Pause slideshow":"Diashow pausieren","People & Body":"Menschen & Körper","Pick an emoji":"Ein Emoji auswählen","Please select a time zone:":"Bitte wählen Sie eine Zeitzone:",Previous:"Vorherige",Search:"Suche","Search results":"Suchergebnisse","Select a tag":"Schlagwort auswählen",Settings:"Einstellungen","Settings navigation":"Einstellungen für die Navigation","Smileys & Emotion":"Smileys & Emotionen","Start slideshow":"Diashow starten",Submit:"Einreichen",Symbols:"Symbole","Travel & Places":"Reisen & Orte","Type to search time zone":"Tippen, um Zeitzone zu suchen","Unable to search the group":"Die Gruppe konnte nicht durchsucht werden","Undo changes":"Änderungen rückgängig machen","Write message, @ to mention someone, : for emoji autocompletion …":"Nachricht schreiben, @, um jemanden zu erwähnen, : für die automatische Vervollständigung von Emojis … "}},{locale:"de_DE",translations:{"{tag} (invisible)":"{tag} (unsichtbar)","{tag} (restricted)":"{tag} (eingeschränkt)",Actions:"Aktionen",Activities:"Aktivitäten","Animals & Nature":"Tiere & Natur","Avatar of {displayName}":"Avatar von {displayName}","Avatar of {displayName}, {status}":"Avatar von {displayName}, {status}","Cancel changes":"Änderungen verwerfen",Choose:"Auswählen",Close:"Schließen","Close navigation":"Navigation schließen","Confirm changes":"Änderungen bestätigen",Custom:"Benutzerdefiniert","Edit item":"Objekt bearbeiten","External documentation for {title}":"Externe Dokumentation für {title}",Flags:"Flaggen","Food & Drink":"Essen & Trinken","Frequently used":"Häufig verwendet",Global:"Global","Go back to the list":"Zurück zur Liste","Message limit of {count} characters reached":"Nachrichtenlimit von {count} Zeichen erreicht",Next:"Weiter","No emoji found":"Kein Emoji gefunden","No results":"Keine Ergebnisse",Objects:"Objekte","Open navigation":"Navigation öffnen","Pause slideshow":"Diashow pausieren","People & Body":"Menschen & Körper","Pick an emoji":"Ein Emoji auswählen","Please select a time zone:":"Bitte eine Zeitzone auswählen:",Previous:"Vorherige",Search:"Suche","Search results":"Suchergebnisse","Select a tag":"Schlagwort auswählen",Settings:"Einstellungen","Settings navigation":"Einstellungen für die Navigation","Smileys & Emotion":"Smileys & Emotionen","Start slideshow":"Diashow starten",Submit:"Einreichen",Symbols:"Symbole","Travel & Places":"Reisen & Orte","Type to search time zone":"Tippen, um eine Zeitzone zu suchen","Unable to search the group":"Die Gruppe kann nicht durchsucht werden","Undo changes":"Änderungen rückgängig machen","Write message, @ to mention someone, : for emoji autocompletion …":"Nachricht schreiben, @, um jemanden zu erwähnen, : für die automatische Vervollständigung von Emojis …"}},{locale:"el",translations:{"{tag} (invisible)":"{tag} (αόρατο)","{tag} (restricted)":"{tag} (περιορισμένο)",Actions:"Ενέργειες",Activities:"Δραστηριότητες","Animals & Nature":"Ζώα & Φύση","Avatar of {displayName}":"Άβαταρ του {displayName}","Cancel changes":"Ακύρωση αλλαγών",Choose:"Επιλογή",Close:"Κλείσιμο","Close navigation":"Κλείσιμο πλοήγησης","Confirm changes":"Επιβεβαίωση αλλαγών",Custom:"Προσαρμογή","Edit item":"Επεξεργασία","External documentation for {title}":"Εξωτερική τεκμηρίωση για {title}",Flags:"Σημαίες","Food & Drink":"Φαγητό & Ποτό","Frequently used":"Συχνά χρησιμοποιούμενο",Global:"Καθολικό","Go back to the list":"Επιστροφή στην αρχική λίστα ","Message limit of {count} characters reached":"Συμπληρώθηκε το όριο των {count} χαρακτήρων του μηνύματος",Next:"Επόμενο","No emoji found":"Δεν βρέθηκε emoji","No results":"Κανένα αποτέλεσμα",Objects:"Αντικείμενα","Open navigation":"Άνοιγμα πλοήγησης","Pause slideshow":"Παύση προβολής διαφανειών","People & Body":"Άνθρωποι & Σώμα","Pick an emoji":"Επιλέξτε ένα emoji","Please select a time zone:":"Παρακαλούμε επιλέξτε μια ζώνη ώρας:",Previous:"Προηγούμενο",Search:"Αναζήτηση","Search results":"Αποτελέσματα αναζήτησης","Select a tag":"Επιλογή ετικέτας",Settings:"Ρυθμίσεις","Settings navigation":"Πλοήγηση ρυθμίσεων","Smileys & Emotion":"Φατσούλες & Συναίσθημα","Start slideshow":"Έναρξη προβολής διαφανειών",Submit:"Υποβολή",Symbols:"Σύμβολα","Travel & Places":"Ταξίδια & Τοποθεσίες","Type to search time zone":"Πληκτρολογήστε για αναζήτηση ζώνης ώρας","Unable to search the group":"Δεν είναι δυνατή η αναζήτηση της ομάδας","Undo changes":"Αναίρεση Αλλαγών","Write message, @ to mention someone …":"Γράψτε ένα μήνυμα, και με το σύμβολο @, μνημονεύστε κάποιον …"}},{locale:"eo",translations:{"{tag} (invisible)":"{tag} (kaŝita)","{tag} (restricted)":"{tag} (limigita)",Actions:"Agoj",Activities:"Aktiveco","Animals & Nature":"Bestoj & Naturo",Choose:"Elektu",Close:"Fermu",Custom:"Propra",Flags:"Flagoj","Food & Drink":"Manĝaĵo & Trinkaĵo","Frequently used":"Ofte uzataj","Message limit of {count} characters reached":"La limo je {count} da literoj atingita",Next:"Sekva","No emoji found":"La emoĝio forestas","No results":"La rezulto forestas",Objects:"Objektoj","Pause slideshow":"Payzi bildprezenton","People & Body":"Homoj & Korpo","Pick an emoji":"Elekti emoĝion ",Previous:"Antaŭa",Search:"Serĉi","Search results":"Serĉrezultoj","Select a tag":"Elektu etikedon",Settings:"Agordo","Settings navigation":"Agorda navigado","Smileys & Emotion":"Ridoj kaj Emocioj","Start slideshow":"Komenci bildprezenton",Symbols:"Signoj","Travel & Places":"Vojaĵoj & Lokoj","Unable to search the group":"Ne eblas serĉi en la grupo","Write message, @ to mention someone …":"Mesaĝi, uzu @ por mencii iun ..."}},{locale:"es",translations:{"{tag} (invisible)":"{tag} (invisible)","{tag} (restricted)":"{tag} (restringido)",Actions:"Acciones",Activities:"Actividades","Animals & Nature":"Animales y naturaleza","Avatar of {displayName}":"Avatar de {displayName}","Avatar of {displayName}, {status}":"Avatar de {displayName}, {status}","Cancel changes":"Cancelar cambios",Choose:"Elegir",Close:"Cerrar","Close navigation":"Cerrar navegación","Confirm changes":"Confirmar cambios",Custom:"Personalizado","Edit item":"Editar elemento","External documentation for {title}":"Documentacion externa de {title}",Flags:"Banderas","Food & Drink":"Comida y bebida","Frequently used":"Usado con frecuenca",Global:"Global","Go back to the list":"Volver a la lista","Message limit of {count} characters reached":"El mensaje ha alcanzado el límite de {count} caracteres",Next:"Siguiente","No emoji found":"No hay ningún emoji","No results":" Ningún resultado",Objects:"Objetos","Open navigation":"Abrir navegación","Pause slideshow":"Pausar la presentación ","People & Body":"Personas y cuerpos","Pick an emoji":"Elegir un emoji","Please select a time zone:":"Por favor elige un huso de horario:",Previous:"Anterior",Search:"Buscar","Search results":"Resultados de la búsqueda","Select a tag":"Seleccione una etiqueta",Settings:"Ajustes","Settings navigation":"Navegación por ajustes","Smileys & Emotion":"Smileys y emoticonos","Start slideshow":"Iniciar la presentación",Submit:"Enviar",Symbols:"Símbolos","Travel & Places":"Viajes y lugares","Type to search time zone":"Escribe para buscar un huso de horario","Unable to search the group":"No es posible buscar en el grupo","Undo changes":"Deshacer cambios","Write message, @ to mention someone …":"Escriba un mensaje, @ para mencionar a alguien..."}},{locale:"eu",translations:{"{tag} (invisible)":"{tag} (ikusezina)","{tag} (restricted)":"{tag} (mugatua)",Actions:"Ekintzak",Activities:"Jarduerak","Animals & Nature":"Animaliak eta Natura","Avatar of {displayName}":"{displayName}-(e)n irudia","Cancel changes":"Ezeztatu aldaketak",Choose:"Aukeratu",Close:"Itxi","Close navigation":"Itxi nabigazioa","Confirm changes":"Baieztatu aldaketak",Custom:"Pertsonalizatua","External documentation for {title}":"Kanpoko dokumentazioa {title}(r)entzat",Flags:"Banderak","Food & Drink":"Janaria eta edariak","Frequently used":"Askotan erabilia",Global:"Globala","Go back to the list":"Bueltatu zerrendara","Message limit of {count} characters reached":"Mezuaren {count} karaketere-limitera heldu zara",Next:"Hurrengoa","No emoji found":"Ez da emojirik aurkitu","No results":"Emaitzarik ez",Objects:"Objektuak","Open navigation":"Ireki nabigazioa","Pause slideshow":"Pausatu diaporama","People & Body":"Jendea eta gorputza","Pick an emoji":"Aukeratu emoji bat","Please select a time zone:":"Mesedez hautatu ordu-zona bat:",Previous:"Aurrekoa",Search:"Bilatu","Search results":"Bilaketa emaitzak","Select a tag":"Hautatu etiketa bat",Settings:"Ezarpenak","Settings navigation":"Nabigazio ezarpenak","Smileys & Emotion":"Smileyak eta emozioa","Start slideshow":"Hasi diaporama",Submit:"Bidali",Symbols:"Sinboloak","Travel & Places":"Bidaiak eta lekuak","Type to search time zone":"Idatzi ordu-zona bat bilatzeko","Unable to search the group":"Ezin izan da taldea bilatu","Write message, @ to mention someone …":"Idatzi mezua, @ norbait aipatzeko …"}},{locale:"fi_FI",translations:{"{tag} (invisible)":"{tag} (näkymätön)","{tag} (restricted)":"{tag} (rajoitettu)",Actions:"Toiminnot",Activities:"Aktiviteetit","Animals & Nature":"Eläimet & luonto","Avatar of {displayName}":"Käyttäjän {displayName} avatar","Avatar of {displayName}, {status}":"Käyttäjän {displayName} avatar, {status}","Cancel changes":"Peruuta muutokset",Choose:"Valitse",Close:"Sulje","Close navigation":"Sulje navigaatio","Confirm changes":"Vahvista muutokset",Custom:"Mukautettu","Edit item":"Muokkaa kohdetta","External documentation for {title}":"Ulkoinen dokumentaatio kohteelle {title}",Flags:"Liput","Food & Drink":"Ruoka & juoma","Frequently used":"Usein käytetyt",Global:"Yleinen","Go back to the list":"Siirry takaisin listaan","Message limit of {count} characters reached":"Viestin merkken enimmäisimäärä {count} täynnä ",Next:"Seuraava","No emoji found":"Emojia ei löytynyt","No results":"Ei tuloksia",Objects:"Esineet & asiat","Open navigation":"Avaa navigaatio","Pause slideshow":"Keskeytä diaesitys","People & Body":"Ihmiset & keho","Pick an emoji":"Valitse emoji","Please select a time zone:":"Valitse aikavyöhyke:",Previous:"Edellinen",Search:"Etsi","Search results":"Hakutulokset","Select a tag":"Valitse tagi",Settings:"Asetukset","Settings navigation":"Asetusnavigaatio","Smileys & Emotion":"Hymiöt & tunteet","Start slideshow":"Aloita diaesitys",Submit:"Lähetä",Symbols:"Symbolit","Travel & Places":"Matkustus & kohteet","Type to search time zone":"Kirjoita etsiäksesi aikavyöhyke","Unable to search the group":"Ryhmää ei voi hakea","Undo changes":"Kumoa muutokset","Write message, @ to mention someone …":"Kirjoita viesti, @ mainitaksesi jonkun..."}},{locale:"fr",translations:{"{tag} (invisible)":"{tag} (invisible)","{tag} (restricted)":"{tag} (restreint)",Actions:"Actions",Activities:"Activités","Animals & Nature":"Animaux & Nature","Avatar of {displayName}":"Avatar de {displayName}","Avatar of {displayName}, {status}":"Avatar de {displayName}, {status}","Cancel changes":"Annuler les modifications",Choose:"Choisir",Close:"Fermer","Close navigation":"Fermer la navigation","Confirm changes":"Confirmer les modifications",Custom:"Personnalisé","Edit item":"Éditer l'élément","External documentation for {title}":"Documentation externe pour {title}",Flags:"Drapeaux","Food & Drink":"Nourriture & Boissons","Frequently used":"Utilisés fréquemment",Global:"Global","Go back to the list":"Retourner à la liste","Message limit of {count} characters reached":"Limite de messages de {count} caractères atteinte",Next:"Suivant","No emoji found":"Pas d’émoji trouvé","No results":"Aucun résultat",Objects:"Objets","Open navigation":"Ouvrir la navigation","Pause slideshow":"Mettre le diaporama en pause","People & Body":"Personnes & Corps","Pick an emoji":"Choisissez un émoji","Please select a time zone:":"Sélectionnez un fuseau horaire : ",Previous:"Précédent",Search:"Chercher","Search results":"Résultats de recherche","Select a tag":"Sélectionnez une balise",Settings:"Paramètres","Settings navigation":"Navigation dans les paramètres","Smileys & Emotion":"Smileys & Émotions","Start slideshow":"Démarrer le diaporama",Submit:"Valider",Symbols:"Symboles","Travel & Places":"Voyage & Lieux","Type to search time zone":"Saisissez les premiers lettres pour rechercher un fuseau horaire","Unable to search the group":"Impossible de chercher le groupe","Undo changes":"Annuler les changements","Write message, @ to mention someone …":"Écrivez un message, @ pour mentionner quelqu'un…"}},{locale:"gl",translations:{"{tag} (invisible)":"{tag} (invisíbel)","{tag} (restricted)":"{tag} (restrinxido)",Actions:"Accións",Activities:"Actividades","Animals & Nature":"Animais e natureza","Cancel changes":"Cancelar os cambios",Choose:"Escoller",Close:"Pechar","Confirm changes":"Confirma os cambios",Custom:"Personalizado","External documentation for {title}":"Documentación externa para {title}",Flags:"Bandeiras","Food & Drink":"Comida e bebida","Frequently used":"Usado con frecuencia","Message limit of {count} characters reached":"Acadouse o límite de {count} caracteres por mensaxe",Next:"Seguinte","No emoji found":"Non se atopou ningún «emoji»","No results":"Sen resultados",Objects:"Obxectos","Pause slideshow":"Pausar o diaporama","People & Body":"Persoas e corpo","Pick an emoji":"Escolla un «emoji»",Previous:"Anterir",Search:"Buscar","Search results":"Resultados da busca","Select a tag":"Seleccione unha etiqueta",Settings:"Axustes","Settings navigation":"Navegación polos axustes","Smileys & Emotion":"Sorrisos e emocións","Start slideshow":"Iniciar o diaporama",Submit:"Enviar",Symbols:"Símbolos","Travel & Places":"Viaxes e lugares","Unable to search the group":"Non foi posíbel buscar o grupo","Write message, @ to mention someone …":"Escriba a mensaxe, @ para mencionar a alguén…"}},{locale:"he",translations:{"{tag} (invisible)":"{tag} (נסתר)","{tag} (restricted)":"{tag} (מוגבל)",Actions:"פעולות",Activities:"פעילויות","Animals & Nature":"חיות וטבע",Choose:"בחירה",Close:"סגירה",Custom:"בהתאמה אישית",Flags:"דגלים","Food & Drink":"מזון ומשקאות","Frequently used":"בשימוש תדיר",Next:"הבא","No emoji found":"לא נמצא אמוג׳י","No results":"אין תוצאות",Objects:"חפצים","Pause slideshow":"השהיית מצגת","People & Body":"אנשים וגוף","Pick an emoji":"נא לבחור אמוג׳י",Previous:"הקודם",Search:"חיפוש","Search results":"תוצאות חיפוש","Select a tag":"בחירת תגית",Settings:"הגדרות","Smileys & Emotion":"חייכנים ורגשונים","Start slideshow":"התחלת המצגת",Symbols:"סמלים","Travel & Places":"טיולים ומקומות","Unable to search the group":"לא ניתן לחפש בקבוצה"}},{locale:"hu_HU",translations:{"{tag} (invisible)":"{tag} (láthatatlan)","{tag} (restricted)":"{tag} (korlátozott)",Actions:"Műveletek",Activities:"Tevékenységek","Animals & Nature":"Állatok és természet","Avatar of {displayName}":"{displayName} profilképe","Cancel changes":"Változtatások elvetése",Choose:"Válassszon",Close:"Bezárás","Confirm changes":"Változtatások megerősítése",Custom:"Egyéni","External documentation for {title}":"Külső dokumentáció ehhez: {title}",Flags:"Zászló","Food & Drink":"Étel és ital","Frequently used":"Gyakran használt",Global:"Globális","Message limit of {count} characters reached":"{count} karakteres üzenetkorlát elérve",Next:"Következő","No emoji found":"Nem található emodzsi","No results":"Nincs találat",Objects:"Tárgyak","Pause slideshow":"Diavetítés szüneteltetése","People & Body":"Emberek és test","Pick an emoji":"Válasszon egy emodzsit","Please select a time zone:":"Válasszon időzónát:",Previous:"Előző",Search:"Keresés","Search results":"Találatok","Select a tag":"Válasszon címkét",Settings:"Beállítások","Settings navigation":"Navigáció a beállításokban","Smileys & Emotion":"Mosolyok és érzelmek","Start slideshow":"Diavetítés indítása",Submit:"Beküldés",Symbols:"Szimbólumok","Travel & Places":"Utazás és helyek","Type to search time zone":"Gépeljen az időzóna kereséséhez","Unable to search the group":"A csoport nem kereshető","Write message, @ to mention someone …":"Írjon üzenetet, @ valaki megemlítéséhez…"}},{locale:"is",translations:{"{tag} (invisible)":"{tag} (ósýnilegt)","{tag} (restricted)":"{tag} (takmarkað)",Actions:"Aðgerðir",Activities:"Aðgerðir","Animals & Nature":"Dýr og náttúra",Choose:"Velja",Close:"Loka",Custom:"Sérsniðið",Flags:"Flögg","Food & Drink":"Matur og drykkur","Frequently used":"Oftast notað",Next:"Næsta","No emoji found":"Ekkert tjáningartákn fannst","No results":"Engar niðurstöður",Objects:"Hlutir","Pause slideshow":"Gera hlé á skyggnusýningu","People & Body":"Fólk og líkami","Pick an emoji":"Veldu tjáningartákn",Previous:"Fyrri",Search:"Leita","Search results":"Leitarniðurstöður","Select a tag":"Veldu merki",Settings:"Stillingar","Smileys & Emotion":"Broskallar og tilfinningar","Start slideshow":"Byrja skyggnusýningu",Symbols:"Tákn","Travel & Places":"Staðir og ferðalög","Unable to search the group":"Get ekki leitað í hópnum"}},{locale:"it",translations:{"{tag} (invisible)":"{tag} (invisibile)","{tag} (restricted)":"{tag} (limitato)",Actions:"Azioni",Activities:"Attività","Animals & Nature":"Animali e natura","Avatar of {displayName}":"Avatar di {displayName}","Cancel changes":"Annulla modifiche",Choose:"Scegli",Close:"Chiudi","Confirm changes":"Conferma modifiche",Custom:"Personalizzato","External documentation for {title}":"Documentazione esterna per {title}",Flags:"Bandiere","Food & Drink":"Cibo e bevande","Frequently used":"Usati di frequente","Message limit of {count} characters reached":"Limite dei messaggi di {count} caratteri raggiunto",Next:"Successivo","No emoji found":"Nessun emoji trovato","No results":"Nessun risultato",Objects:"Oggetti","Pause slideshow":"Presentazione in pausa","People & Body":"Persone e corpo","Pick an emoji":"Scegli un emoji",Previous:"Precedente",Search:"Cerca","Search results":"Risultati di ricerca","Select a tag":"Seleziona un'etichetta",Settings:"Impostazioni","Settings navigation":"Navigazione delle impostazioni","Smileys & Emotion":"Faccine ed emozioni","Start slideshow":"Avvia presentazione",Submit:"Invia",Symbols:"Simboli","Travel & Places":"Viaggi e luoghi","Unable to search the group":"Impossibile cercare il gruppo","Write message, @ to mention someone …":"Scrivi messaggio, @ per menzionare qualcuno…"}},{locale:"ja_JP",translations:{"{tag} (invisible)":"{タグ} (不可視)","{tag} (restricted)":"{タグ} (制限付)",Actions:"操作",Activities:"アクティビティ","Animals & Nature":"動物と自然","Avatar of {displayName}":"{displayName} のアバター","Cancel changes":"変更をキャンセル",Choose:"選択",Close:"閉じる","Confirm changes":"変更を承認",Custom:"カスタム","External documentation for {title}":"{title} のための添付文書",Flags:"国旗","Food & Drink":"食べ物と飲み物","Frequently used":"よく使うもの",Global:"全体","Message limit of {count} characters reached":"{count} 文字のメッセージ上限に達しています",Next:"次","No emoji found":"絵文字が見つかりません","No results":"なし",Objects:"物","Pause slideshow":"スライドショーを一時停止","People & Body":"様々な人と体の部位","Pick an emoji":"絵文字を選択","Please select a time zone:":"タイムゾーンを選んで下さい:",Previous:"前",Search:"検索","Search results":"検索結果","Select a tag":"タグを選択",Settings:"設定","Settings navigation":"ナビゲーション設定","Smileys & Emotion":"感情表現","Start slideshow":"スライドショーを開始",Submit:"提出",Symbols:"記号","Travel & Places":"旅行と場所","Type to search time zone":"タイムゾーン検索のため入力してください","Unable to search the group":"グループを検索できません","Write message, @ to mention someone …":"メッセージを記入 @をつけるとその人に通知が行きます"}},{locale:"lt_LT",translations:{"{tag} (invisible)":"{tag} (nematoma)","{tag} (restricted)":"{tag} (apribota)",Actions:"Veiksmai",Activities:"Veiklos","Animals & Nature":"Gyvūnai ir gamta",Choose:"Pasirinkti",Close:"Užverti",Custom:"Tinkinti","External documentation for {title}":"Išorinė {title} dokumentacija",Flags:"Vėliavos","Food & Drink":"Maistas ir gėrimai","Frequently used":"Dažniausiai naudoti","Message limit of {count} characters reached":"Pasiekta {count} simbolių žinutės riba",Next:"Kitas","No emoji found":"Nerasta jaustukų","No results":"Nėra rezultatų",Objects:"Objektai","Pause slideshow":"Pristabdyti skaidrių rodymą","People & Body":"Žmonės ir kūnas","Pick an emoji":"Pasirinkti jaustuką",Previous:"Ankstesnis",Search:"Ieškoti","Search results":"Paieškos rezultatai","Select a tag":"Pasirinkti žymę",Settings:"Nustatymai","Settings navigation":"Naršymas nustatymuose","Smileys & Emotion":"Šypsenos ir emocijos","Start slideshow":"Pradėti skaidrių rodymą",Submit:"Pateikti",Symbols:"Simboliai","Travel & Places":"Kelionės ir vietos","Unable to search the group":"Nepavyko atlikti paiešką grupėje","Write message, @ to mention someone …":"Rašykite žinutę, naudokite @ norėdami kažką paminėti…"}},{locale:"lv",translations:{"{tag} (invisible)":"{tag} (neredzams)","{tag} (restricted)":"{tag} (ierobežots)",Choose:"Izvēlēties",Close:"Aizvērt",Next:"Nākamais","No results":"Nav rezultātu","Pause slideshow":"Pauzēt slaidrādi",Previous:"Iepriekšējais","Select a tag":"Izvēlēties birku",Settings:"Iestatījumi","Start slideshow":"Sākt slaidrādi"}},{locale:"mk",translations:{"{tag} (invisible)":"{tag} (невидливо)","{tag} (restricted)":"{tag} (ограничено)",Actions:"Акции",Activities:"Активности","Animals & Nature":"Животни & Природа",Choose:"Избери",Close:"Затвори",Custom:"Прилагодени",Flags:"Знамиња","Food & Drink":"Храна & Пијалоци","Frequently used":"Најчесто користени","Message limit of {count} characters reached":"Ограничувањето на должината на пораката од {count} карактери е надминато",Next:"Следно","No emoji found":"Не се пронајдени емотикони","No results":"Нема резултати",Objects:"Објекти","Pause slideshow":"Пузирај слајдшоу","People & Body":"Луѓе & Тело","Pick an emoji":"Избери емотикон",Previous:"Предходно",Search:"Барај","Search results":"Резултати од барувањето","Select a tag":"Избери ознака",Settings:"Параметри","Settings navigation":"Параметри за навигација","Smileys & Emotion":"Смешковци & Емотикони","Start slideshow":"Стартувај слајдшоу",Symbols:"Симболи","Travel & Places":"Патувања & Места","Unable to search the group":"Неможе да се принајде групата","Write message, @ to mention someone …":"Напиши порака, @ за да спомнеш некој …"}},{locale:"my",translations:{"{tag} (invisible)":"{tag} (ကွယ်ဝှက်ထား)","{tag} (restricted)":"{tag} (ကန့်သတ်)",Actions:"လုပ်ဆောင်ချက်များ",Activities:"ပြုလုပ်ဆောင်တာများ","Animals & Nature":"တိရစ္ဆာန်များနှင့် သဘာဝ","Avatar of {displayName}":"{displayName} ၏ ကိုယ်ပွား","Cancel changes":"ပြောင်းလဲမှုများ ပယ်ဖျက်ရန်",Choose:"ရွေးချယ်ရန်",Close:"ပိတ်ရန်","Confirm changes":"ပြောင်းလဲမှုများ အတည်ပြုရန်",Custom:"အလိုကျချိန်ညှိမှု","External documentation for {title}":"{title} အတွက် ပြင်ပ စာရွက်စာတမ်း",Flags:"အလံများ","Food & Drink":"အစားအသောက်","Frequently used":"မကြာခဏအသုံးပြုသော",Global:"ကမ္ဘာလုံးဆိုင်ရာ","Message limit of {count} characters reached":"ကန့်သတ် စာလုံးရေ {count} လုံး ပြည့်ပါပြီ",Next:"နောက်သို့ဆက်ရန်","No emoji found":"အီမိုဂျီ ရှာဖွေမတွေ့နိုင်ပါ","No results":"ရလဒ်မရှိပါ",Objects:"အရာဝတ္ထုများ","Pause slideshow":"စလိုက်ရှိုး ခေတ္တရပ်ရန်","People & Body":"လူပုဂ္ဂိုလ်များနှင့် ခန္ဓာကိုယ်","Pick an emoji":"အီမိုဂျီရွေးရန်","Please select a time zone:":"ဒေသစံတော်ချိန် ရွေးချယ်ပေးပါ",Previous:"ယခင်",Search:"ရှာဖွေရန်","Search results":"ရှာဖွေမှု ရလဒ်များ","Select a tag":"tag ရွေးချယ်ရန်",Settings:"ချိန်ညှိချက်များ","Settings navigation":"ချိန်ညှိချက်အညွှန်း","Smileys & Emotion":"စမိုင်လီများနှင့် အီမိုရှင်း","Start slideshow":"စလိုက်ရှိုးအား စတင်ရန်",Submit:"တင်သွင်းရန်",Symbols:"သင်္ကေတများ","Travel & Places":"ခရီးသွားလာခြင်းနှင့် နေရာများ","Type to search time zone":"ဒေသစံတော်ချိန်များ ရှာဖွေရန် စာရိုက်ပါ","Unable to search the group":"အဖွဲ့အား ရှာဖွေ၍ မရနိုင်ပါ","Write message, @ to mention someone …":"စာရေးသားရန်၊ တစ်စုံတစ်ဦးအား @ အသုံးပြု ရည်ညွှန်းရန်..."}},{locale:"nb_NO",translations:{"{tag} (invisible)":"{tag} (usynlig)","{tag} (restricted)":"{tag} (beskyttet)",Actions:"Handlinger",Activities:"Aktiviteter","Animals & Nature":"Dyr og natur","Avatar of {displayName}":"Avataren til {displayName}","Avatar of {displayName}, {status}":"{displayName}'s avatar, {status}","Cancel changes":"Avbryt endringer",Choose:"Velg",Close:"Lukk","Close navigation":"Lukk navigasjon","Confirm changes":"Bekreft endringer",Custom:"Tilpasset","Edit item":"Rediger","External documentation for {title}":"Ekstern dokumentasjon for {title}",Flags:"Flagg","Food & Drink":"Mat og drikke","Frequently used":"Ofte brukt",Global:"Global","Go back to the list":"Gå tilbake til listen","Message limit of {count} characters reached":"Karakter begrensing {count} nådd i melding",Next:"Neste","No emoji found":"Fant ingen emoji","No results":"Ingen resultater",Objects:"Objekter","Open navigation":"Åpne navigasjon","Pause slideshow":"Pause lysbildefremvisning","People & Body":"Mennesker og kropp","Pick an emoji":"Velg en emoji","Please select a time zone:":"Vennligst velg tidssone",Previous:"Forrige",Search:"Søk","Search results":"Søkeresultater","Select a tag":"Velg en merkelapp",Settings:"Innstillinger","Settings navigation":"Navigasjons instillinger","Smileys & Emotion":"Smilefjes og følelser","Start slideshow":"Start lysbildefremvisning",Submit:"Send",Symbols:"Symboler","Travel & Places":"Reise og steder","Type to search time zone":"Skriv for å søke etter tidssone","Unable to search the group":"Kunne ikke søke i gruppen","Undo changes":"Tilbakestill endringer","Write message, @ to mention someone …":"Bruk @ for å nevne noen i en melding"}},{locale:"nl",translations:{"{tag} (invisible)":"{tag} (onzichtbaar)","{tag} (restricted)":"{tag} (beperkt)",Actions:"Acties",Activities:"Activiteiten","Animals & Nature":"Dieren & Natuur","Avatar of {displayName}":"Avatar van {displayName}","Avatar of {displayName}, {status}":"Avatar van {displayName}, {status}","Cancel changes":"Wijzigingen annuleren",Choose:"Kies",Close:"Sluiten","Close navigation":"Navigatie sluiten","Confirm changes":"Wijzigingen bevestigen",Custom:"Aangepast","Edit item":"Item bewerken","External documentation for {title}":"Externe documentatie voor {title}",Flags:"Vlaggen","Food & Drink":"Eten & Drinken","Frequently used":"Vaak gebruikt",Global:"Globaal","Go back to the list":"Ga terug naar de lijst","Message limit of {count} characters reached":"Berichtlimiet van {count} karakters bereikt",Next:"Volgende","No emoji found":"Geen emoji gevonden","No results":"Geen resultaten",Objects:"Objecten","Open navigation":"Navigatie openen","Pause slideshow":"Pauzeer diavoorstelling","People & Body":"Mensen & Lichaam","Pick an emoji":"Kies een emoji","Please select a time zone:":"Selecteer een tijdzone:",Previous:"Vorige",Search:"Zoeken","Search results":"Zoekresultaten","Select a tag":"Selecteer een label",Settings:"Instellingen","Settings navigation":"Instellingen navigatie","Smileys & Emotion":"Smileys & Emotie","Start slideshow":"Start diavoorstelling",Submit:"Verwerken",Symbols:"Symbolen","Travel & Places":"Reizen & Plaatsen","Type to search time zone":"Type om de tijdzone te zoeken","Unable to search the group":"Kan niet in de groep zoeken","Undo changes":"Wijzigingen ongedaan maken","Write message, @ to mention someone, : for emoji autocompletion …":"Schrijf bericht, @ om iemand te noemen, : voor emoji auto-aanvullen ..."}},{locale:"oc",translations:{"{tag} (invisible)":"{tag} (invisible)","{tag} (restricted)":"{tag} (limit)",Actions:"Accions",Choose:"Causir",Close:"Tampar",Next:"Seguent","No results":"Cap de resultat","Pause slideshow":"Metre en pausa lo diaporama",Previous:"Precedent","Select a tag":"Seleccionar una etiqueta",Settings:"Paramètres","Start slideshow":"Lançar lo diaporama"}},{locale:"pl",translations:{"{tag} (invisible)":"{tag} (niewidoczna)","{tag} (restricted)":"{tag} (ograniczona)",Actions:"Działania",Activities:"Aktywność","Animals & Nature":"Zwierzęta i natura","Avatar of {displayName}":"Awatar {displayName}","Avatar of {displayName}, {status}":"Awatar {displayName}, {status}","Cancel changes":"Anuluj zmiany",Choose:"Wybierz",Close:"Zamknij","Close navigation":"Zamknij nawigację","Confirm changes":"Potwierdź zmiany",Custom:"Zwyczajne","Edit item":"Edytuj element","External documentation for {title}":"Dokumentacja zewnętrzna dla {title}",Flags:"Flagi","Food & Drink":"Jedzenie i picie","Frequently used":"Często używane",Global:"Globalnie","Go back to the list":"Powrót do listy","Message limit of {count} characters reached":"Przekroczono limit wiadomości wynoszący {count} znaków",Next:"Następny","No emoji found":"Nie znaleziono emotikonów","No results":"Brak wyników",Objects:"Obiekty","Open navigation":"Otwórz nawigację","Pause slideshow":"Wstrzymaj pokaz slajdów","People & Body":"Ludzie i ciało","Pick an emoji":"Wybierz emoji","Please select a time zone:":"Wybierz strefę czasową:",Previous:"Poprzedni",Search:"Szukaj","Search results":"Wyniki wyszukiwania","Select a tag":"Wybierz etykietę",Settings:"Ustawienia","Settings navigation":"Ustawienia nawigacji","Smileys & Emotion":"Buźki i emotikony","Start slideshow":"Rozpocznij pokaz slajdów",Submit:"Wyślij",Symbols:"Symbole","Travel & Places":"Podróże i miejsca","Type to search time zone":"Wpisz, aby wyszukać strefę czasową","Unable to search the group":"Nie można przeszukać grupy","Undo changes":"Cofnij zmiany","Write message, @ to mention someone, : for emoji autocompletion …":"Napisz wiadomość, @ aby o kimś wspomnieć, : dla autouzupełniania emotikonów…"}},{locale:"pt_BR",translations:{"{tag} (invisible)":"{tag} (invisível)","{tag} (restricted)":"{tag} (restrito) ",Actions:"Ações",Activities:"Atividades","Animals & Nature":"Animais & Natureza","Avatar of {displayName}":"Avatar de {displayName}","Avatar of {displayName}, {status}":"Avatar de {displayName}, {status}","Cancel changes":"Cancelar alterações",Choose:"Escolher",Close:"Fechar","Close navigation":"Fechar navegação","Confirm changes":"Confirmar alterações",Custom:"Personalizado","Edit item":"Editar item","External documentation for {title}":"Documentação externa para {title}",Flags:"Bandeiras","Food & Drink":"Comida & Bebida","Frequently used":"Mais usados",Global:"Global","Go back to the list":"Volte para a lista","Message limit of {count} characters reached":"Limite de mensagem de {count} caracteres atingido",Next:"Próximo","No emoji found":"Nenhum emoji encontrado","No results":"Sem resultados",Objects:"Objetos","Open navigation":"Abrir navegação","Pause slideshow":"Pausar apresentação de slides","People & Body":"Pessoas & Corpo","Pick an emoji":"Escolha um emoji","Please select a time zone:":"Selecione um fuso horário: ",Previous:"Anterior",Search:"Pesquisar","Search results":"Resultados da pesquisa","Select a tag":"Selecionar uma tag",Settings:"Configurações","Settings navigation":"Navegação de configurações","Smileys & Emotion":"Smiles & Emoções","Start slideshow":"Iniciar apresentação de slides",Submit:"Enviar",Symbols:"Símbolo","Travel & Places":"Viagem & Lugares","Type to search time zone":"Digite para pesquisar o fuso horário ","Unable to search the group":"Não foi possível pesquisar o grupo","Undo changes":"Desfazer modificações","Write message, @ to mention someone, : for emoji autocompletion …":"Escreva mensagem, @ para mencionar alguém, : para autocompleção emoji..."}},{locale:"pt_PT",translations:{"{tag} (invisible)":"{tag} (invisivel)","{tag} (restricted)":"{tag} (restrito)",Actions:"Ações",Choose:"Escolher",Close:"Fechar",Next:"Seguinte","No results":"Sem resultados","Pause slideshow":"Pausar diaporama",Previous:"Anterior","Select a tag":"Selecionar uma etiqueta",Settings:"Definições","Start slideshow":"Iniciar diaporama","Unable to search the group":"Não é possível pesquisar o grupo"}},{locale:"ru",translations:{"{tag} (invisible)":"{tag} (невидимое)","{tag} (restricted)":"{tag} (ограниченное)",Actions:"Действия ",Activities:"События","Animals & Nature":"Животные и природа ","Avatar of {displayName}":"Аватар {displayName}","Cancel changes":"Отменить изменения",Choose:"Выберите",Close:"Закрыть","Confirm changes":"Подтвердить изменения",Custom:"Пользовательское","External documentation for {title}":"Внешняя документация для {title}",Flags:"Флаги","Food & Drink":"Еда, напиток","Frequently used":"Часто используемый",Global:"Глобальный","Message limit of {count} characters reached":"Достигнуто ограничение на количество символов в {count}",Next:"Следующее","No emoji found":"Эмодзи не найдено","No results":"Результаты отсуствуют",Objects:"Объекты","Pause slideshow":"Приостановить показ слйдов","People & Body":"Люди и тело","Pick an emoji":"Выберите эмодзи","Please select a time zone:":"Пожалуйста, выберите часовой пояс:",Previous:"Предыдущее",Search:"Поиск","Search results":"Результаты поиска","Select a tag":"Выберите метку",Settings:"Параметры","Settings navigation":"Навигация по настройкам","Smileys & Emotion":"Смайлики и эмоции","Start slideshow":"Начать показ слайдов",Submit:"Утвердить",Symbols:"Символы","Travel & Places":"Путешествия и места","Type to search time zone":"Введите для поиска часового пояса","Unable to search the group":"Невозможно найти группу","Write message, @ to mention someone …":"Напишите сообщение, используйте @ чтобы упомянуть кого-то…"}},{locale:"sk_SK",translations:{"{tag} (invisible)":"{tag} (neviditeľný)","{tag} (restricted)":"{tag} (obmedzený)",Actions:"Akcie",Activities:"Aktivity","Animals & Nature":"Zvieratá a príroda","Avatar of {displayName}":"Avatar {displayName}","Cancel changes":"Zrušiť zmeny",Choose:"Vybrať",Close:"Zatvoriť","Close navigation":"Zavrieť navigáciu","Confirm changes":"Potvrdiť zmeny",Custom:"Zvyk","Edit item":"Upraviť položku","External documentation for {title}":"Externá dokumentácia pre {title}",Flags:"Vlajky","Food & Drink":"Jedlo a nápoje","Frequently used":"Často používané",Global:"Globálne","Go back to the list":"Naspäť na zoznam","Message limit of {count} characters reached":"Limit správy na {count} znakov dosiahnutý",Next:"Ďalší","No emoji found":"Nenašli sa žiadne emodži","No results":"Žiadne výsledky",Objects:"Objekty","Open navigation":"Otvoriť navigáciu","Pause slideshow":"Pozastaviť prezentáciu","People & Body":"Ľudia a telo","Pick an emoji":"Vyberte si emodži","Please select a time zone:":"Prosím vyberte časovú zónu:",Previous:"Predchádzajúci",Search:"Hľadať","Search results":"Výsledky vyhľadávania","Select a tag":"Vybrať štítok",Settings:"Nastavenia","Settings navigation":"Navigácia v nastaveniach","Smileys & Emotion":"Smajlíky a emócie","Start slideshow":"Začať prezentáciu",Submit:"Odoslať",Symbols:"Symboly","Travel & Places":"Cestovanie a miesta","Type to search time zone":"Začníte písať pre vyhľadávanie časovej zóny","Unable to search the group":"Skupinu sa nepodarilo nájsť","Undo changes":"Vrátiť zmeny","Write message, @ to mention someone …":"Napíšte správu, @ pre spomenutie niekoho ..."}},{locale:"sl",translations:{"{tag} (invisible)":"{tag} (nevidno)","{tag} (restricted)":"{tag} (omejeno)",Actions:"Dejanja",Activities:"Dejavnosti","Animals & Nature":"Živali in Narava","Avatar of {displayName}":"Podoba {displayName}","Cancel changes":"Prekliči spremembe",Choose:"Izbor",Close:"Zapri","Confirm changes":"Potrdi spremembe",Custom:"Po meri","External documentation for {title}":"Zunanja dokumentacija za {title}",Flags:"Zastavice","Food & Drink":"Hrana in Pijača","Frequently used":"Pogostost uporabe",Global:"Splošno","Message limit of {count} characters reached":"Dosežena omejitev {count} znakov na sporočilo.",Next:"Naslednji","No emoji found":"Ni najdenih izraznih ikon","No results":"Ni zadetkov",Objects:"Predmeti","Pause slideshow":"Ustavi predstavitev","People & Body":"Ljudje in Telo","Pick an emoji":"Izbor izrazne ikone","Please select a time zone:":"Izbor časovnega pasu:",Previous:"Predhodni",Search:"Iskanje","Search results":"Zadetki iskanja","Select a tag":"Izbor oznake",Settings:"Nastavitve","Settings navigation":"Krmarjenje nastavitev","Smileys & Emotion":"Izrazne ikone","Start slideshow":"Začni predstavitev",Submit:"Pošlji",Symbols:"Simboli","Travel & Places":"Potovanja in Kraji","Type to search time zone":"Vpišite niz za iskanje časovnega pasu","Unable to search the group":"Ni mogoče iskati po skupini","Write message, @ to mention someone …":"Napišite sporočilo, z @ omenite osebo ..."}},{locale:"sv",translations:{"{tag} (invisible)":"{tag} (osynlig)","{tag} (restricted)":"{tag} (begränsad)",Actions:"Åtgärder",Activities:"Aktiviteter","Animals & Nature":"Djur & Natur","Avatar of {displayName}":"{displayName}s avatar","Avatar of {displayName}, {status}":"{displayName}s avatar, {status}","Cancel changes":"Avbryt ändringar",Choose:"Välj",Close:"Stäng","Close navigation":"Stäng navigering","Confirm changes":"Bekräfta ändringar",Custom:"Anpassad","Edit item":"Ändra","External documentation for {title}":"Extern dokumentation för {title}",Flags:"Flaggor","Food & Drink":"Mat & Dryck","Frequently used":"Används ofta",Global:"Global","Go back to the list":"Gå tillbaka till listan","Message limit of {count} characters reached":"Meddelandegräns {count} tecken används",Next:"Nästa","No emoji found":"Hittade inga emojis","No results":"Inga resultat",Objects:"Objekt","Open navigation":"Öppna navigering","Pause slideshow":"Pausa bildspelet","People & Body":"Kropp & Själ","Pick an emoji":"Välj en emoji","Please select a time zone:":"Välj tidszon:",Previous:"Föregående",Search:"Sök","Search results":"Sökresultat","Select a tag":"Välj en tag",Settings:"Inställningar","Settings navigation":"Inställningsmeny","Smileys & Emotion":"Selfies & Känslor","Start slideshow":"Starta bildspelet",Submit:"Skicka",Symbols:"Symboler","Travel & Places":"Resor & Sevärdigheter","Type to search time zone":"Skriv för att välja tidszon","Unable to search the group":"Kunde inte söka i gruppen","Undo changes":"Ångra ändringar","Write message, @ to mention someone, : for emoji autocompletion …":"Skriv meddelande, @ för att nämna någon, : för automatiska emojiförslag ..."}},{locale:"tr",translations:{"{tag} (invisible)":"{tag} (görünmez)","{tag} (restricted)":"{tag} (kısıtlı)",Actions:"İşlemler",Activities:"Etkinlikler","Animals & Nature":"Hayvanlar ve Doğa","Avatar of {displayName}":"{displayName} avatarı","Avatar of {displayName}, {status}":"{displayName}, {status} avatarı","Cancel changes":"Değişiklikleri iptal et",Choose:"Seçin",Close:"Kapat","Close navigation":"Gezinmeyi kapat","Confirm changes":"Değişiklikleri onayla",Custom:"Özel","Edit item":"Ögeyi düzenle","External documentation for {title}":"{title} için dış belgeler",Flags:"Bayraklar","Food & Drink":"Yeme ve İçme","Frequently used":"Sık kullanılanlar",Global:"Evrensel","Go back to the list":"Listeye dön","Message limit of {count} characters reached":"{count} karakter ileti sınırına ulaşıldı",Next:"Sonraki","No emoji found":"Herhangi bir emoji bulunamadı","No results":"Herhangi bir sonuç bulunamadı",Objects:"Nesneler","Open navigation":"Gezinmeyi aç","Pause slideshow":"Slayt sunumunu duraklat","People & Body":"İnsanlar ve Beden","Pick an emoji":"Bir emoji seçin","Please select a time zone:":"Lütfen bir saat dilimi seçin:",Previous:"Önceki",Search:"Arama","Search results":"Arama sonuçları","Select a tag":"Bir etiket seçin",Settings:"Ayarlar","Settings navigation":"Gezinme ayarları","Smileys & Emotion":"İfadeler ve Duygular","Start slideshow":"Slayt sunumunu başlat",Submit:"Gönder",Symbols:"Simgeler","Travel & Places":"Gezi ve Yerler","Type to search time zone":"Saat dilimi aramak için yazmaya başlayın","Unable to search the group":"Grupta arama yapılamadı","Undo changes":"Değişiklikleri geri al","Write message, @ to mention someone, : for emoji autocompletion …":"İleti yazın, birini anmak için @, otomatik emoji tamamlamak için : kullanın…"}},{locale:"uk",translations:{"{tag} (invisible)":"{tag} (invisible)","{tag} (restricted)":"{tag} (restricted)",Actions:"Дії",Activities:"Діяльність","Animals & Nature":"Тварини та природа",Choose:"Виберіть",Close:"Закрити",Custom:"Власне",Flags:"Прапори","Food & Drink":"Їжа та напитки","Frequently used":"Найчастіші",Next:"Вперед","No emoji found":"Емоційки відсутні","No results":"Відсутні результати",Objects:"Об'єкти","Pause slideshow":"Пауза у показі слайдів","People & Body":"Люди та жести","Pick an emoji":"Виберіть емоційку",Previous:"Назад",Search:"Пошук","Search results":"Результати пошуку","Select a tag":"Виберіть позначку",Settings:"Налаштування","Smileys & Emotion":"Усміхайлики та емоційки","Start slideshow":"Почати показ слайдів",Symbols:"Символи","Travel & Places":"Поїздки та місця","Unable to search the group":"Неможливо шукати в групі"}},{locale:"zh_CN",translations:{"{tag} (invisible)":"{tag} (不可见)","{tag} (restricted)":"{tag} (受限)",Actions:"行为",Activities:"活动","Animals & Nature":"动物 & 自然","Avatar of {displayName}":"{displayName}的头像","Avatar of {displayName}, {status}":"{displayName}的头像,{status}","Cancel changes":"取消更改",Choose:"选择",Close:"关闭","Close navigation":"关闭导航","Confirm changes":"确认更改",Custom:"自定义","Edit item":"编辑项目","External documentation for {title}":"{title}的外部文档",Flags:"旗帜","Food & Drink":"食物 & 饮品","Frequently used":"经常使用",Global:"全局","Go back to the list":"返回至列表","Message limit of {count} characters reached":"已达到 {count} 个字符的消息限制",Next:"下一个","No emoji found":"表情未找到","No results":"无结果",Objects:"物体","Open navigation":"开启导航","Pause slideshow":"暂停幻灯片","People & Body":"人 & 身体","Pick an emoji":"选择一个表情","Please select a time zone:":"请选择一个时区:",Previous:"上一个",Search:"搜索","Search results":"搜索结果","Select a tag":"选择一个标签",Settings:"设置","Settings navigation":"设置向导","Smileys & Emotion":"笑脸 & 情感","Start slideshow":"开始幻灯片",Submit:"提交",Symbols:"符号","Travel & Places":"旅游 & 地点","Type to search time zone":"打字以搜索时区","Unable to search the group":"无法搜索分组","Undo changes":"撤销更改","Write message, @ to mention someone, : for emoji autocompletion …":"写信息,@ 提到某人,: 用于表情符号自动完成 ..."}},{locale:"zh_HK",translations:{"{tag} (invisible)":"{tag} (隱藏)","{tag} (restricted)":"{tag} (受限)",Actions:"動作",Activities:"活動","Animals & Nature":"動物與自然","Avatar of {displayName}":"{displayName} 的頭像","Avatar of {displayName}, {status}":"{displayName}的頭像,{status}","Cancel changes":"取消更改",Choose:"選擇",Close:"關閉","Close navigation":"關閉導航","Confirm changes":"確認更改",Custom:"自定義","Edit item":"編輯項目","External documentation for {title}":"{title} 的外部文檔",Flags:"旗幟","Food & Drink":"食物與飲料","Frequently used":"經常使用",Global:"全球的","Go back to the list":"返回清單","Message limit of {count} characters reached":"已達到訊息最多 {count} 字元限制",Next:"下一個","No emoji found":"未找到表情符號","No results":"無結果",Objects:"物件","Open navigation":"開啟導航","Pause slideshow":"暫停幻燈片","People & Body":"人物","Pick an emoji":"選擇表情符號","Please select a time zone:":"請選擇時區:",Previous:"上一個",Search:"搜尋","Search results":"搜尋結果","Select a tag":"選擇標籤",Settings:"設定","Settings navigation":"設定值導覽","Smileys & Emotion":"表情","Start slideshow":"開始幻燈片",Submit:"提交",Symbols:"標誌","Travel & Places":"旅遊與景點","Type to search time zone":"鍵入以搜索時區","Unable to search the group":"無法搜尋群組","Undo changes":"取消更改","Write message, @ to mention someone …":"輸入訊息時可使用 @ 來標示某人..."}},{locale:"zh_TW",translations:{"{tag} (invisible)":"{tag} (隱藏)","{tag} (restricted)":"{tag} (受限)",Actions:"動作",Activities:"活動","Animals & Nature":"動物與自然",Choose:"選擇",Close:"關閉",Custom:"自定義",Flags:"旗幟","Food & Drink":"食物與飲料","Frequently used":"最近使用","Message limit of {count} characters reached":"已達到訊息最多 {count} 字元限制",Next:"下一個","No emoji found":"未找到表情符號","No results":"無結果",Objects:"物件","Pause slideshow":"暫停幻燈片","People & Body":"人物","Pick an emoji":"選擇表情符號",Previous:"上一個",Search:"搜尋","Search results":"搜尋結果","Select a tag":"選擇標籤",Settings:"設定","Settings navigation":"設定值導覽","Smileys & Emotion":"表情","Start slideshow":"開始幻燈片",Symbols:"標誌","Travel & Places":"旅遊與景點","Unable to search the group":"無法搜尋群組","Write message, @ to mention someone …":"輸入訊息時可使用 @ 來標示某人..."}}].forEach((function(t){var e={};for(var n in t.translations)t.translations[n].pluralId?e[n]={msgid:n,msgid_plural:t.translations[n].pluralId,msgstr:t.translations[n].msgstr}:e[n]={msgid:n,msgstr:[t.translations[n]]};o.addTranslation(t.locale,{translations:{"":e}})}));var i=o.build(),a=i.ngettext.bind(i),s=i.gettext.bind(i)},function(t,e){t.exports=n(2998)},function(t,e){t.exports=n(144)},,function(t,e,n){"use strict";var r=n(0),o=n.n(r),i=n(1),a=n.n(i)()(o.a);a.push([t.i,".material-design-icon{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.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","",{version:3,sources:["webpack://./../../assets/material-icons.css","webpack://./Popover.vue"],names:[],mappings:"AAGA,sBACC,YAAa,CACb,iBAAkB,CAClB,mBAAoB,CACpB,kBAAmB,CACnB,sBAAuB,CC0GxB,SACC,cAAe,CACf,wBAAyB,CAEzB,sDAAuD,CAEvD,gBACC,SAAU,CACV,4BAA6B,CAC7B,kCAAmC,CACnC,uCAAwC,CACxC,gBAGA,iBAAkB,CAClB,SAAU,CACV,OAAQ,CACR,QAAS,CACT,WApBgB,CAqBhB,kBAAmB,CACnB,yCAA0C,CApB5C,6BAwBE,kBA1BgB,CAElB,6CA2BG,YA7Be,CA8Bf,6BAA8B,CAC9B,YAAa,CACb,eAAgB,CAChB,6BAjCe,CAkCf,yCAA0C,CAC1C,0CAA2C,CAC3C,wCAAyC,CAlC5C,gCAuCE,eAzCgB,CAElB,gDA0CG,SA5Ce,CA6Cf,6BAA8B,CAC9B,YAAa,CACb,eAAgB,CAChB,6BAhDe,CAiDf,uCAAwC,CACxC,yCAA0C,CAC1C,wCAAyC,CAjD5C,+BAsDE,gBAxDgB,CAElB,+CAyDG,4BAA6B,CAC7B,UA5De,CA6Df,cAAe,CACf,aAAc,CACd,6BAAsD,CACtD,uCAAwC,CACxC,0CAA2C,CAC3C,wCAAyC,CAhE5C,8BAqEE,iBAvEgB,CAElB,8CAwEG,4BAA6B,CAC7B,WA3Ee,CA4Ef,cAAe,CACf,aAAc,CACd,6BA9Ee,CA+Ef,uCAAwC,CACxC,yCAA0C,CAC1C,0CAA2C,CA/E9C,6BAoFE,iBAAkB,CAClB,2EAA6E,CAC7E,SAAU,CAtFZ,8BA0FE,kBAAmB,CACnB,yCAA0C,CAC1C,SAAU",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","$scope_version:\"75cef38\"; @import 'variables'; @import 'material-icons';\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n$arrow-width: 10px;\n\n.popover {\n\tz-index: 100000;\n\tdisplay: block !important;\n\n\tfilter: drop-shadow(0 1px 10px var(--color-box-shadow));\n\n\t&__inner {\n\t\tpadding: 0;\n\t\tcolor: var(--color-main-text);\n\t\tborder-radius: var(--border-radius);\n\t\tbackground: var(--color-main-background);\n\t}\n\n\t&__arrow {\n\t\tposition: absolute;\n\t\tz-index: 1;\n\t\twidth: 0;\n\t\theight: 0;\n\t\tmargin: $arrow-width;\n\t\tborder-style: solid;\n\t\tborder-color: var(--color-main-background);\n\t}\n\n\t&[x-placement^='top'] {\n\t\tmargin-bottom: $arrow-width;\n\n\t\t.popover__arrow {\n\t\t\tbottom: -$arrow-width;\n\t\t\tleft: calc(50% - $arrow-width);\n\t\t\tmargin-top: 0;\n\t\t\tmargin-bottom: 0;\n\t\t\tborder-width: $arrow-width $arrow-width 0 $arrow-width;\n\t\t\tborder-right-color: transparent !important;\n\t\t\tborder-bottom-color: transparent !important;\n\t\t\tborder-left-color: transparent !important;\n\t\t}\n\t}\n\n\t&[x-placement^='bottom'] {\n\t\tmargin-top: $arrow-width;\n\n\t\t.popover__arrow {\n\t\t\ttop: -$arrow-width;\n\t\t\tleft: calc(50% - $arrow-width);\n\t\t\tmargin-top: 0;\n\t\t\tmargin-bottom: 0;\n\t\t\tborder-width: 0 $arrow-width $arrow-width $arrow-width;\n\t\t\tborder-top-color: transparent !important;\n\t\t\tborder-right-color: transparent !important;\n\t\t\tborder-left-color: transparent !important;\n\t\t}\n\t}\n\n\t&[x-placement^='right'] {\n\t\tmargin-left: $arrow-width;\n\n\t\t.popover__arrow {\n\t\t\ttop: calc(50% - $arrow-width);\n\t\t\tleft: -$arrow-width;\n\t\t\tmargin-right: 0;\n\t\t\tmargin-left: 0;\n\t\t\tborder-width: $arrow-width $arrow-width $arrow-width 0;\n\t\t\tborder-top-color: transparent !important;\n\t\t\tborder-bottom-color: transparent !important;\n\t\t\tborder-left-color: transparent !important;\n\t\t}\n\t}\n\n\t&[x-placement^='left'] {\n\t\tmargin-right: $arrow-width;\n\n\t\t.popover__arrow {\n\t\t\ttop: calc(50% - $arrow-width);\n\t\t\tright: -$arrow-width;\n\t\t\tmargin-right: 0;\n\t\t\tmargin-left: 0;\n\t\t\tborder-width: $arrow-width 0 $arrow-width $arrow-width;\n\t\t\tborder-top-color: transparent !important;\n\t\t\tborder-right-color: transparent !important;\n\t\t\tborder-bottom-color: transparent !important;\n\t\t}\n\t}\n\n\t&[aria-hidden='true'] {\n\t\tvisibility: hidden;\n\t\ttransition: opacity var(--animation-quick), visibility var(--animation-quick);\n\t\topacity: 0;\n\t}\n\n\t&[aria-hidden='false'] {\n\t\tvisibility: visible;\n\t\ttransition: opacity var(--animation-quick);\n\t\topacity: 1;\n\t}\n}\n\n"],sourceRoot:""}]),e.a=a},function(t,e){},function(t,e,n){"use strict";n.r(e);var r=n(5),o=n(2),i=n.n(o),a=n(12),s={insert:"head",singleton:!1};i()(a.a,s),a.a.locals,r.VTooltip.options.defaultTemplate='<div class="vue-tooltip" role="tooltip" data-v-'.concat("75cef38",'><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>'),r.VTooltip.options.defaultHtml=!1,r.VTooltip.options.defaultDelay={show:500,hide:200},e.default=r.VTooltip},function(t,e){t.exports=n(3955)},function(t,e,n){"use strict";var r=n(0),o=n.n(r),i=n(1),a=n.n(i)()(o.a);a.push([t.i,".material-design-icon{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.vue-tooltip[data-v-75cef38]{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-75cef38][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-75cef38][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-75cef38][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-75cef38][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-75cef38][aria-hidden='true']{visibility:hidden;transition:opacity .15s, visibility .15s;opacity:0}.vue-tooltip[data-v-75cef38][aria-hidden='false']{visibility:visible;transition:opacity .15s;opacity:1}.vue-tooltip[data-v-75cef38] .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-75cef38] .tooltip-arrow{position:absolute;z-index:1;width:0;height:0;margin:0;border-style:solid;border-color:var(--color-main-background)}\n","",{version:3,sources:["webpack://./../../assets/material-icons.css","webpack://./index.scss"],names:[],mappings:"AAGA,sBACC,YAAa,CACb,iBAAkB,CAClB,mBAAoB,CACpB,kBAAmB,CACnB,sBAAuB,CCOxB,6BACC,iBAAkB,CAClB,cAAe,CACf,UAAW,CACX,SAAU,CACV,aAAc,CACd,QAAS,CAET,eAAgB,CAChB,cAAe,CACf,eAAgB,CAChB,gBAAiB,CACjB,SAAU,CACV,eAAgB,CAEhB,eAAgB,CAChB,sDAAuD,CAhBxD,gEAqBG,QAAS,CACT,YAAa,CACb,eAAgB,CAChB,6BA1Be,CA2Bf,8BAA+B,CAC/B,+BAAgC,CAChC,6BAA8B,CA3BjC,mEAkCG,KAAM,CACN,YAAa,CACb,eAAgB,CAChB,6BAvCe,CAwCf,4BAA6B,CAC7B,8BAA+B,CAC/B,6BAA8B,CAxCjC,kEA+CG,UAAW,CACX,cAAe,CACf,aAAc,CACd,6BAAsD,CACtD,4BAA6B,CAC7B,+BAAgC,CAChC,6BAA8B,CArDjC,iEA4DG,SAAU,CACV,cAAe,CACf,aAAc,CACd,6BAjEe,CAkEf,4BAA6B,CAC7B,8BAA+B,CAC/B,+BAAgC,CAlEnC,iDAwEE,iBAAkB,CAClB,wCAAyC,CACzC,SAAU,CA1EZ,kDA6EE,kBAAmB,CACnB,uBAAwB,CACxB,SAAU,CA/EZ,4CAoFE,eAAgB,CAChB,eAAgB,CAChB,iBAAkB,CAClB,4BAA6B,CAC7B,kCAAmC,CACnC,6CAA8C,CAzFhD,4CA8FE,iBAAkB,CAClB,SAAU,CACV,OAAQ,CACR,QAAS,CACT,QAAS,CACT,kBAAmB,CACnB,yCAA0C",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","$scope_version:\"75cef38\"; @import 'variables'; @import 'material-icons';\n/**\n* @copyright Copyright (c) 2016, John Molakvoæ <skjnldsv@protonmail.com>\n* @copyright Copyright (c) 2016, Robin Appelman <robin@icewind.nl>\n* @copyright Copyright (c) 2016, Jan-Christoph Borchardt <hey@jancborchardt.net>\n* @copyright Copyright (c) 2016, Erik Pellikka <erik@pellikka.org>\n* @copyright Copyright (c) 2015, Vincent Petry <pvince81@owncloud.com>\n*\n* Bootstrap v3.3.5 (http://getbootstrap.com)\n* Copyright 2011-2015 Twitter, Inc.\n* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n*/\n\n$arrow-width: 10px;\n\n.vue-tooltip[data-v-#{$scope_version}] {\n\tposition: absolute;\n\tz-index: 100000;\n\tright: auto;\n\tleft: auto;\n\tdisplay: block;\n\tmargin: 0;\n\t/* default to top */\n\tmargin-top: -3px;\n\tpadding: 10px 0;\n\ttext-align: left;\n\ttext-align: start;\n\topacity: 0;\n\tline-height: 1.6;\n\n\tline-break: auto;\n\tfilter: drop-shadow(0 1px 10px var(--color-box-shadow));\n\n\t// TOP\n\t&[x-placement^='top'] {\n\t\t.tooltip-arrow {\n\t\t\tbottom: 0;\n\t\t\tmargin-top: 0;\n\t\t\tmargin-bottom: 0;\n\t\t\tborder-width: $arrow-width $arrow-width 0 $arrow-width;\n\t\t\tborder-right-color: transparent;\n\t\t\tborder-bottom-color: transparent;\n\t\t\tborder-left-color: transparent;\n\t\t}\n\t}\n\n\t// BOTTOM\n\t&[x-placement^='bottom'] {\n\t\t.tooltip-arrow {\n\t\t\ttop: 0;\n\t\t\tmargin-top: 0;\n\t\t\tmargin-bottom: 0;\n\t\t\tborder-width: 0 $arrow-width $arrow-width $arrow-width;\n\t\t\tborder-top-color: transparent;\n\t\t\tborder-right-color: transparent;\n\t\t\tborder-left-color: transparent;\n\t\t}\n\t}\n\n\t// RIGHT\n\t&[x-placement^='right'] {\n\t\t.tooltip-arrow {\n\t\t\tright: 100%;\n\t\t\tmargin-right: 0;\n\t\t\tmargin-left: 0;\n\t\t\tborder-width: $arrow-width $arrow-width $arrow-width 0;\n\t\t\tborder-top-color: transparent;\n\t\t\tborder-bottom-color: transparent;\n\t\t\tborder-left-color: transparent;\n\t\t}\n\t}\n\n\t// LEFT\n\t&[x-placement^='left'] {\n\t\t.tooltip-arrow {\n\t\t\tleft: 100%;\n\t\t\tmargin-right: 0;\n\t\t\tmargin-left: 0;\n\t\t\tborder-width: $arrow-width 0 $arrow-width $arrow-width;\n\t\t\tborder-top-color: transparent;\n\t\t\tborder-right-color: transparent;\n\t\t\tborder-bottom-color: transparent;\n\t\t}\n\t}\n\n\t// HIDDEN / SHOWN\n\t&[aria-hidden='true'] {\n\t\tvisibility: hidden;\n\t\ttransition: opacity .15s, visibility .15s;\n\t\topacity: 0;\n\t}\n\t&[aria-hidden='false'] {\n\t\tvisibility: visible;\n\t\ttransition: opacity .15s;\n\t\topacity: 1;\n\t}\n\n\t// CONTENT\n\t.tooltip-inner {\n\t\tmax-width: 350px;\n\t\tpadding: 5px 8px;\n\t\ttext-align: center;\n\t\tcolor: var(--color-main-text);\n\t\tborder-radius: var(--border-radius);\n\t\tbackground-color: var(--color-main-background);\n\t}\n\n\t// ARROW\n\t.tooltip-arrow {\n\t\tposition: absolute;\n\t\tz-index: 1;\n\t\twidth: 0;\n\t\theight: 0;\n\t\tmargin: 0;\n\t\tborder-style: solid;\n\t\tborder-color: var(--color-main-background);\n\t}\n}\n"],sourceRoot:""}]),e.a=a},,function(t,e,n){"use strict";var r={name:"Popover",components:{VPopover:n(5).VPopover},mounted:function(){var t=this;this.$watch((function(){return t.$refs.popover.isOpen}),(function(e){e?t.$emit("after-show"):t.$emit("after-hide")}))}},o=n(2),i=n.n(o),a=n(8),s={insert:"head",singleton:!1},l=(i()(a.a,s),a.a.locals,n(3)),u=n(9),c=n.n(u),p=Object(l.a)(r,(function(){var t=this,e=t.$createElement;return(t._self._c||e)("VPopover",t._g(t._b({ref:"popover",attrs:{"popover-base-class":"popover","popover-wrapper-class":"popover__wrapper","popover-arrow-class":"popover__arrow","popover-inner-class":"popover__inner"},scopedSlots:t._u([{key:"popover",fn:function(){return[t._t("default")]},proxy:!0}],null,!0)},"VPopover",t.$attrs,!1),t.$listeners),[t._t("trigger")],2)}),[],!1,null,null,null);"function"==typeof c.a&&c()(p),e.a=p.exports},function(t,e,n){"use strict";e.a=function(t){return Math.random().toString(36).replace(/[^a-z]+/g,"").substr(0,t||5)}},function(t,e){t.exports=n(9578)},,,function(t,e,n){"use strict";n.r(e);var r=n(14);e.default=r.a},,,,,,function(t,e,n){"use strict";var r=n(6),o=n.n(r);e.a={before:function(){this.$slots.default&&""!==this.text.trim()||(o.a.util.warn("".concat(this.$options.name," cannot be empty and requires a meaningful text content"),this),this.$destroy(),this.$el.remove())},beforeUpdate:function(){this.text=this.getText()},data:function(){return{text:this.getText()}},computed:{isLongText:function(){return this.text&&this.text.trim().length>20}},methods:{getText:function(){return this.$slots.default?this.$slots.default[0].text.trim():""}}}},function(t,e,n){"use strict";var r=n(4);e.a={methods:{n:r.a,t:r.b}}},,function(t,e,n){"use strict";var r=n(0),o=n.n(r),i=n(1),a=n.n(i)()(o.a);a.push([t.i,".material-design-icon[data-v-6aa4b9df]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.action-item[data-v-6aa4b9df]{position:relative;display:inline-block}.action-item--single[data-v-6aa4b9df]:hover,.action-item--single[data-v-6aa4b9df]:focus,.action-item--single[data-v-6aa4b9df]:active,.action-item__menutoggle[data-v-6aa4b9df]:hover,.action-item__menutoggle[data-v-6aa4b9df]:focus,.action-item__menutoggle[data-v-6aa4b9df]:active{opacity:1;background-color:rgba(127,127,127,0.25) !important}.action-item__menutoggle[data-v-6aa4b9df]:disabled,.action-item--single[data-v-6aa4b9df]:disabled{opacity:.3 !important}.action-item.action-item--open .action-item__menutoggle[data-v-6aa4b9df]{opacity:1;background-color:rgba(127,127,127,0.25)}.action-item--single[data-v-6aa4b9df],.action-item__menutoggle[data-v-6aa4b9df]{box-sizing:border-box;width:auto;min-width:44px;height:44px;margin:0;padding:0;cursor:pointer;border:none;border-radius:22px;background-color:transparent}.action-item--single--with-title[data-v-6aa4b9df],.action-item__menutoggle--with-title[data-v-6aa4b9df]{position:relative;padding:0 14px;padding-left:44px;white-space:nowrap;opacity:1;border:1px solid var(--color-border-dark);background-color:var(--color-background-dark);background-position:14px center;font-size:inherit}.action-item--single--with-title[data-v-6aa4b9df] span,.action-item__menutoggle--with-title[data-v-6aa4b9df] span{width:24px;height:24px;line-height:16px;position:absolute;top:0;left:0}.action-item[data-v-6aa4b9df] .material-design-icon{width:44px;height:44px;opacity:1}.action-item[data-v-6aa4b9df] .material-design-icon .material-design-icon__svg{vertical-align:middle}.action-item__menutoggle[data-v-6aa4b9df]{display:flex;align-items:center;justify-content:center;opacity:.7;font-weight:bold;line-height:16px}.action-item__menutoggle--primary[data-v-6aa4b9df]{opacity:1;color:var(--color-primary-text);border:none;background-color:var(--color-primary-element)}.action-item--open .action-item__menutoggle--primary[data-v-6aa4b9df],.action-item__menutoggle--primary[data-v-6aa4b9df]:hover,.action-item__menutoggle--primary[data-v-6aa4b9df]:focus,.action-item__menutoggle--primary[data-v-6aa4b9df]:active{color:var(--color-primary-text) !important;background-color:var(--color-primary-element-light) !important}.action-item--single[data-v-6aa4b9df]{opacity:.7}.action-item--single[data-v-6aa4b9df]:hover,.action-item--single[data-v-6aa4b9df]:focus,.action-item--single[data-v-6aa4b9df]:active{opacity:1}.action-item--single>[hidden][data-v-6aa4b9df]{display:none}.ie .action-item__menu[data-v-6aa4b9df],.ie .action-item__menu .action-item__menu_arrow[data-v-6aa4b9df],.edge .action-item__menu[data-v-6aa4b9df],.edge .action-item__menu .action-item__menu_arrow[data-v-6aa4b9df]{border:1px solid var(--color-border)}\n","",{version:3,sources:["webpack://./../../assets/material-icons.css","webpack://./Actions.vue","webpack://./../../assets/variables.scss"],names:[],mappings:"AAGA,uCACC,YAAa,CACb,iBAAkB,CAClB,mBAAoB,CACpB,kBAAmB,CACnB,sBAAuB,CC+oBxB,8BACC,iBAAkB,CAClB,oBAAqB,CAIrB,sRAMC,SCvnBc,CDynBd,kDAA2C,CAC3C,kGAKA,qBAAsB,CApBxB,yEAwBE,SCnoBc,CDooBd,uCChoBgD,CDioBhD,gFAKA,qBAAsB,CACtB,UAAW,CACX,cC/pBmB,CDgqBnB,WChqBmB,CDiqBnB,QAAS,CACT,SAAU,CACV,cAAe,CACf,WAAY,CACZ,kBAAkC,CAClC,4BAA6B,CAE7B,wGACC,iBAAkB,CAClB,cClqB6C,CDmqB7C,iBC3qBkB,CD4qBlB,kBAAmB,CACnB,SC1pBa,CD2pBb,yCAA0C,CAE1C,6CAA8C,CAC9C,+BAAwC,CACxC,iBAAkB,CAVlB,kHAeC,UAAW,CACX,WAAY,CACZ,gBCrrBY,CDsrBZ,iBAAkB,CAClB,KAAM,CACN,MAAO,CA9DX,oDAoEE,UClsBmB,CDmsBnB,WCnsBmB,CDosBnB,SCjrBc,CD2mBhB,+EAyEG,qBAAsB,CACtB,0CAMD,YAAa,CACb,kBAAmB,CACnB,sBAAuB,CACvB,UC/rBiB,CDgsBjB,gBAAiB,CACjB,gBC/sBc,CDitBd,mDACC,SCnsBa,CDosBb,+BAAgC,CAChC,WAAY,CACZ,6CAA8C,CAC9C,kPAIC,0CAA2C,CAC3C,8DAA+D,CAC/D,sCAKF,UCntBiB,CDktBjB,qIAKC,SCttBa,CDitBd,+CASC,YAAa,CACb,sNAQD,oCAAqC",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","$scope_version:\"75cef38\"; @import 'variables'; @import 'material-icons';\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.action-item {\n\tposition: relative;\n\tdisplay: inline-block;\n\n\t// put a grey round background when menu is opened\n\t// or hover-focused\n\t&--single:hover,\n\t&--single:focus,\n\t&--single:active,\n\t&__menutoggle:hover,\n\t&__menutoggle:focus,\n\t&__menutoggle:active {\n\t\topacity: $opacity_full;\n\t\t// good looking on dark AND white bg, override server styling\n\t\tbackground-color: $icon-focus-bg !important;\n\t}\n\n\t// TODO: handle this in the future button component\n\t&__menutoggle:disabled,\n\t&--single:disabled {\n\t\topacity: .3 !important;\n\t}\n\n\t&.action-item--open .action-item__menutoggle {\n\t\topacity: $opacity_full;\n\t\tbackground-color: $action-background-hover;\n\t}\n\n\t// icons\n\t&--single,\n\t&__menutoggle {\n\t\tbox-sizing: border-box;\n\t\twidth: auto;\n\t\tmin-width: $clickable-area;\n\t\theight: $clickable-area;\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t\tcursor: pointer;\n\t\tborder: none;\n\t\tborder-radius: $clickable-area / 2;\n\t\tbackground-color: transparent;\n\n\t\t&--with-title {\n\t\t\tposition: relative;\n\t\t\tpadding: 0 $icon-margin;\n\t\t\tpadding-left: $clickable-area;\n\t\t\twhite-space: nowrap;\n\t\t\topacity: $opacity_full;\n\t\t\tborder: 1px solid var(--color-border-dark);\n\t\t\t// with a title, we need to display this as a real button\n\t\t\tbackground-color: var(--color-background-dark);\n\t\t\tbackground-position: $icon-margin center;\n\t\t\tfont-size: inherit;\n\n\t\t\t// non-background icon class\n\t\t\t// image slot\n\t\t\t/deep/ span {\n\t\t\t\twidth: 24px;\n\t\t\t\theight: 24px;\n\t\t\t\tline-height: $icon-size;\n\t\t\t\tposition: absolute;\n\t\t\t\ttop: 0;\n\t\t\t\tleft: 0;\n\t\t\t}\n\t\t}\n\t}\n\n\t&::v-deep .material-design-icon {\n\t\twidth: $clickable-area;\n\t\theight: $clickable-area;\n\t\topacity: $opacity_full;\n\n\t\t.material-design-icon__svg {\n\t\t\tvertical-align: middle;\n\t\t}\n\t}\n\n\t// icon-more\n\t&__menutoggle {\n\t\t// align menu icon in center\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\topacity: $opacity_normal;\n\t\tfont-weight: bold;\n\t\tline-height: $icon-size;\n\n\t\t&--primary {\n\t\t\topacity: $opacity_full;\n\t\t\tcolor: var(--color-primary-text);\n\t\t\tborder: none;\n\t\t\tbackground-color: var(--color-primary-element);\n\t\t\t.action-item--open &,\n\t\t\t&:hover,\n\t\t\t&:focus,\n\t\t\t&:active {\n\t\t\t\tcolor: var(--color-primary-text) !important;\n\t\t\t\tbackground-color: var(--color-primary-element-light) !important;\n\t\t\t}\n\t\t}\n\t}\n\n\t&--single {\n\t\topacity: $opacity_normal;\n\t\t&:hover,\n\t\t&:focus,\n\t\t&:active {\n\t\t\topacity: $opacity_full;\n\t\t}\n\t\t// hide anything the slot is displaying\n\t\t& > [hidden] {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n}\n\n.ie,\n.edge {\n\t.action-item__menu,\n\t.action-item__menu .action-item__menu_arrow {\n\t\tborder: 1px solid var(--color-border);\n\t}\n}\n\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 */\n\n// https://uxplanet.org/7-rules-for-mobile-ui-button-design-e9cf2ea54556\n// recommended is 48px\n// 44px is what we choose and have very good visual-to-usability ratio\n$clickable-area: 44px;\n\n// background icon size\n// also used for the scss icon font\n$icon-size: 16px;\n\n// icon padding for a $clickable-area width and a $icon-size icon\n// ( 44px - 16px ) / 2\n$icon-margin: ($clickable-area - $icon-size) / 2;\n\n// transparency background for icons\n$icon-focus-bg: rgba(127, 127, 127, .25);\n\n// popovermenu arrow width from the triangle center\n$arrow-width: 9px;\n\n// opacities\n$opacity_disabled: .5;\n$opacity_normal: .7;\n$opacity_full: 1;\n\n// menu round background hover feedback\n// good looking on dark AND white bg\n$action-background-hover: rgba(127, 127, 127, .25);\n\n// various structure data used in the \n// `AppNavigation` component\n$header-height: 50px;\n$navigation-width: 300px;\n\n// mobile breakpoint\n$breakpoint-mobile: 1024px;\n"],sourceRoot:""}]),e.a=a},function(t,e){},,function(t,e,n){"use strict";var r=n(25),o=function(t,e){for(var n=t.$parent;n;){if(n.$options.name===e)return n;n=n.$parent}};e.a={mixins:[r.a],props:{icon:{type:String,default:""},title:{type:String,default:""},closeAfterClick:{type:Boolean,default:!1},ariaLabel:{type:String,default:""}},computed:{isIconUrl:function(){try{return new URL(this.icon)}catch(t){return!1}}},methods:{onClick:function(t){if(this.$emit("click",t),this.closeAfterClick){var e=o(this,"Actions");e&&e.closeMenu&&e.closeMenu()}}}}},,,,,,function(t,e,n){"use strict";var r=n(16),o=n.n(r),i=n(10),a=n(15),s=n(4),l=n(19);function u(t){return function(t){if(Array.isArray(t))return c(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||function(t,e){if(t){if("string"==typeof t)return c(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?c(t,e):void 0}}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function c(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n<e;n++)r[n]=t[n];return r}function p(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function f(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?p(Object(n),!0).forEach((function(e){d(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):p(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function d(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var h={name:"Actions",directives:{tooltip:i.default},components:{DotsHorizontal:o.a,Popover:l.default,VNodes:{functional:!0,render:function(t,e){return e.props.vnodes}}},props:{open:{type:Boolean,default:!1},forceMenu:{type:Boolean,default:!1},forceTitle:{type:Boolean,default:!1},menuTitle:{type:String,default:null},primary:{type:Boolean,default:!1},defaultIcon:{type:String,default:""},ariaLabel:{type:String,default:Object(s.b)("Actions")},placement:{type:String,default:"bottom"},boundariesElement:{type:Element,default:function(){return document.querySelector("body")}},container:{type:String,default:"body"},disabled:{type:Boolean,default:!1}},data:function(){return{actions:[],opened:this.open,focusIndex:0,randomId:"menu-"+Object(a.a)(),children:this.$children}},computed:{hasMultipleActions:function(){return this.actions.length>1},isValidSingleAction:function(){return 1===this.actions.length&&null!==this.firstActionElement},singleActionTitle:function(){return this.forceTitle?this.menuTitle:""},isDisabled:function(){var t,e;return this.disabled||1===this.actions.length&&(null===(t=this.firstAction)||void 0===t||null===(e=t.$props)||void 0===e?void 0:e.disabled)},firstActionVNode:function(){return this.actions[0]},firstAction:function(){return this.children[0]?this.children[0]:{}},firstActionBinding:function(){if(this.firstActionVNode&&this.firstActionVNode.componentOptions){var t=this.firstActionVNode.componentOptions.tag;if("ActionLink"===t)return f(f({is:"a",href:this.firstAction.href,target:this.firstAction.target,"aria-label":this.firstAction.ariaLabel},this.firstAction.$attrs),this.firstAction.$props);if("ActionRouter"===t)return f(f({is:"router-link",to:this.firstAction.to,exact:this.firstAction.exact,"aria-label":this.firstAction.ariaLabel},this.firstAction.$attrs),this.firstAction.$props);if("ActionButton"===t)return f(f({is:"button","aria-label":this.firstAction.ariaLabel},this.firstAction.$attrs),this.firstAction.$props)}return null},firstActionEvent:function(){var t,e,n;return null===(t=this.firstActionVNode)||void 0===t||null===(e=t.componentOptions)||void 0===e||null===(n=e.listeners)||void 0===n?void 0:n.click},firstActionEventBinding:function(){return this.firstActionEvent?"click":null},firstActionIconSlot:function(){var t,e;return null===(t=this.firstAction)||void 0===t||null===(e=t.$slots)||void 0===e?void 0:e.icon},firstActionClass:function(){return((this.firstActionVNode&&this.firstActionVNode.data.staticClass)+" "+(this.firstActionVNode&&this.firstActionVNode.data.class)).trim()},iconSlotIsPopulated:function(){return!!this.$slots.icon}},watch:{open:function(t){t!==this.opened&&(this.opened=t)}},beforeMount:function(){this.initActions()},beforeUpdate:function(){this.initActions()},methods:{openMenu:function(t){this.opened||(this.opened=!0,this.$emit("update:open",!0),this.$emit("open"))},closeMenu:function(t){this.opened&&(this.opened=!1,this.$emit("update:open",!1),this.$emit("close"),this.opened=!1,this.focusIndex=0,this.$refs.menuButton.focus())},onOpen:function(t){var e=this;this.$nextTick((function(){e.focusFirstAction(t)}))},onMouseFocusAction:function(t){if(document.activeElement!==t.target){var e=t.target.closest("li");if(e){var n=e.querySelector(".focusable");if(n){var r=u(this.$refs.menu.querySelectorAll(".focusable")).indexOf(n);r>-1&&(this.focusIndex=r,this.focusAction())}}}},removeCurrentActive:function(){var t=this.$refs.menu.querySelector("li.active");t&&t.classList.remove("active")},focusAction:function(){var t=this.$refs.menu.querySelectorAll(".focusable")[this.focusIndex];if(t){this.removeCurrentActive();var e=t.closest("li.action");t.focus(),e&&e.classList.add("active")}},focusPreviousAction:function(t){this.opened&&(0===this.focusIndex?this.closeMenu():(this.preventIfEvent(t),this.focusIndex=this.focusIndex-1),this.focusAction())},focusNextAction:function(t){if(this.opened){var e=this.$refs.menu.querySelectorAll(".focusable").length-1;this.focusIndex===e?this.closeMenu():(this.preventIfEvent(t),this.focusIndex=this.focusIndex+1),this.focusAction()}},focusFirstAction:function(t){this.opened&&(this.preventIfEvent(t),this.focusIndex=0,this.focusAction())},focusLastAction:function(t){this.opened&&(this.preventIfEvent(t),this.focusIndex=this.$el.querySelectorAll(".focusable").length-1,this.focusAction())},preventIfEvent:function(t){t&&(t.preventDefault(),t.stopPropagation())},execFirstAction:function(t){this.firstActionEvent&&this.firstActionEvent(t)},initActions:function(){this.actions=(this.$slots.default||[]).filter((function(t){return!!t&&!!t.componentOptions}))},onFocus:function(t){this.$emit("focus",t)},onBlur:function(t){this.$emit("blur",t)}}},m=n(2),v=n.n(m),g=n(28),y={insert:"head",singleton:!1},A=(v()(g.a,y),g.a.locals,n(3)),b=n(29),C=n.n(b),w=Object(A.a)(h,(function(){var t,e=this,n=e.$createElement,r=e._self._c||n;return e.isValidSingleAction&&!e.forceMenu?r("element",e._b({directives:[{name:"tooltip",rawName:"v-tooltip.auto",value:e.firstAction.text,expression:"firstAction.text",modifiers:{auto:!0}}],staticClass:"action-item action-item--single",class:(t={},t[e.firstAction.icon]=e.firstAction.icon,t[e.firstActionClass]=e.firstActionClass,t["action-item--single--with-title"]=e.singleActionTitle,t),attrs:{rel:"nofollow noreferrer noopener",disabled:e.isDisabled},on:e._d({focus:e.onFocus,blur:e.onBlur},[e.firstActionEventBinding,e.execFirstAction])},"element",e.firstActionBinding,!1),[r("VNodes",{attrs:{vnodes:e.firstActionIconSlot}}),e._v("\n\n\t"+e._s(e.singleActionTitle)+"\n\n\t"),e._v(" "),r("span",{attrs:{"aria-hidden":!0,hidden:""}},[e._t("default")],2)],1):r("div",{directives:[{name:"show",rawName:"v-show",value:e.hasMultipleActions||e.forceMenu,expression:"hasMultipleActions || forceMenu"}],staticClass:"action-item",class:{"action-item--open":e.opened}},[r("Popover",{attrs:{delay:0,"handle-resize":!0,open:e.opened,placement:e.placement,"boundaries-element":e.boundariesElement,container:e.container},on:{"update:open":function(t){e.opened=t},show:e.openMenu,"after-show":e.onOpen,hide:e.closeMenu},scopedSlots:e._u([{key:"trigger",fn:function(){var t;return[r("button",{ref:"menuButton",staticClass:"icon action-item__menutoggle",class:(t={},t[e.defaultIcon]=!e.iconSlotIsPopulated,t["action-item__menutoggle--with-title"]=e.menuTitle,t["action-item__menutoggle--with-icon-slot"]=e.iconSlotIsPopulated,t["action-item__menutoggle--default-icon"]=!e.iconSlotIsPopulated&&""===e.defaultIcon,t["action-item__menutoggle--primary"]=e.primary,t),attrs:{disabled:e.disabled,"aria-haspopup":"true","aria-label":e.ariaLabel,"aria-controls":e.randomId,"aria-expanded":e.opened?"true":"false","test-attr":"1",type:"button"},on:{focus:e.onFocus,blur:e.onBlur}},[e.iconSlotIsPopulated?e._t("icon"):""===e.defaultIcon?r("DotsHorizontal",{attrs:{size:20,decorative:""}}):e._e(),e._v("\n\t\t\t\t"+e._s(e.menuTitle)+"\n\t\t\t")],2)]},proxy:!0}],null,!0)},[e._v(" "),r("div",{directives:[{name:"show",rawName:"v-show",value:e.opened,expression:"opened"}],ref:"menu",class:{open:e.opened},attrs:{tabindex:"-1"},on:{keydown:[function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"up",38,t.key,["Up","ArrowUp"])||t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:e.focusPreviousAction(t)},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"down",40,t.key,["Down","ArrowDown"])||t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:e.focusNextAction(t)},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"tab",9,t.key,"Tab")||t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:e.focusNextAction(t)},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"tab",9,t.key,"Tab")?null:t.shiftKey?t.ctrlKey||t.altKey||t.metaKey?null:e.focusPreviousAction(t):null},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"page-up",void 0,t.key,void 0)||t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:e.focusFirstAction(t)},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"page-down",void 0,t.key,void 0)||t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:e.focusLastAction(t)},function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"esc",27,t.key,["Esc","Escape"])||t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:(t.preventDefault(),e.closeMenu(t))}],mousemove:e.onMouseFocusAction}},[r("ul",{attrs:{id:e.randomId,tabindex:"-1"}},[e.opened?[e._t("default")]:e._e()],2)])])],1)}),[],!1,null,"6aa4b9df",null);"function"==typeof C.a&&C()(w),e.a=w.exports},,,,,,,,,,,,,,,,function(t,e,n){"use strict";n.r(e);var r=n(37);e.default=r.a},,,,,,function(t,e,n){"use strict";e.a=function(t){t.mounted?Array.isArray(t.mounted)||(t.mounted=[t.mounted]):t.mounted=[],t.mounted.push((function(){this.$el.setAttribute("data-v-".concat("75cef38"),"")}))}},,,function(t,e,n){"use strict";var r=n(0),o=n.n(r),i=n(1),a=n.n(i)()(o.a);a.push([t.i,".material-design-icon[data-v-71ea20d2]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}li.active[data-v-71ea20d2]{background-color:var(--color-background-hover)}.action--disabled[data-v-71ea20d2]{pointer-events:none;opacity:.5}.action--disabled[data-v-71ea20d2]:hover,.action--disabled[data-v-71ea20d2]:focus{cursor:default;opacity:.5}.action--disabled *[data-v-71ea20d2]{opacity:1 !important}.action-button[data-v-71ea20d2]{display:flex;align-items:flex-start;width:100%;height:auto;margin:0;padding:0;padding-right:14px;box-sizing:border-box;cursor:pointer;white-space:nowrap;opacity:.7;color:var(--color-main-text);border:0;border-radius:0;background-color:transparent;box-shadow:none;font-weight:normal;font-size:var(--default-font-size);line-height:44px}.action-button[data-v-71ea20d2]:hover,.action-button[data-v-71ea20d2]:focus{opacity:1}.action-button>span[data-v-71ea20d2]{cursor:pointer;white-space:nowrap}.action-button__icon[data-v-71ea20d2]{width:44px;height:44px;opacity:1;background-position:14px center;background-size:16px;background-repeat:no-repeat}.action-button[data-v-71ea20d2] .material-design-icon{width:44px;height:44px;opacity:1}.action-button[data-v-71ea20d2] .material-design-icon .material-design-icon__svg{vertical-align:middle}.action-button p[data-v-71ea20d2]{max-width:220px;line-height:1.6em;padding:10.8px 0;cursor:pointer;text-align:left;overflow:hidden;text-overflow:ellipsis}.action-button__longtext[data-v-71ea20d2]{cursor:pointer;white-space:pre-wrap}.action-button__title[data-v-71ea20d2]{font-weight:bold;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;max-width:100%;display:inline-block}\n","",{version:3,sources:["webpack://./../../assets/material-icons.css","webpack://./../../assets/action.scss","webpack://./../../assets/variables.scss"],names:[],mappings:"AAGA,uCACC,YAAa,CACb,iBAAkB,CAClB,mBAAoB,CACpB,kBAAmB,CACnB,sBAAuB,CACvB,2BCiBE,8CAA+C,CAC/C,mCAMD,mBAAoB,CACpB,UCQmB,CDVpB,kFAIE,cAAe,CACf,UCKkB,CDVpB,qCAQE,oBAAqB,CACrB,gCAOD,YAAa,CACb,sBAAuB,CAEvB,UAAW,CACX,WAAY,CACZ,QAAS,CACT,SAAU,CACV,kBCtB8C,CDuB9C,qBAAsB,CAEtB,cAAe,CACf,kBAAmB,CAEnB,UClBiB,CDmBjB,4BAA6B,CAC7B,QAAS,CACT,eAAgB,CAChB,4BAA6B,CAC7B,eAAgB,CAEhB,kBAAmB,CACnB,kCAAmC,CACnC,gBC7CmB,CDsBpB,4EA2BE,SC9Ba,CDGf,qCA+BE,cAAe,CACf,kBAAmB,CACnB,sCAGA,UC1DkB,CD2DlB,WC3DkB,CD4DlB,SCzCa,CD0Cb,+BAAwC,CACxC,oBC1Da,CD2Db,2BAA4B,CAzC9B,sDA6CE,UCnEkB,CDoElB,WCpEkB,CDqElB,SClDa,CDGf,iFAkDG,qBAAsB,CAlDzB,kCAwDE,eAAgB,CAChB,iBAAkB,CAGlB,gBAA8C,CAE9C,cAAe,CACf,eAAgB,CAGhB,eAAgB,CAChB,sBAAuB,CACvB,0CAGA,cAAe,CAEf,oBAAqB,CACrB,uCAGA,gBAAiB,CACjB,sBAAuB,CACvB,eAAgB,CAChB,kBAAmB,CACnB,cAAe,CACf,oBAAqB",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\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 */\n\n@mixin action-active {\n\tli {\n\t\t&.active {\n\t\t\tbackground-color: var(--color-background-hover);\n\t\t}\n\t}\n}\n\n@mixin action--disabled {\n\t.action--disabled {\n\t\tpointer-events: none;\n\t\topacity: $opacity_disabled;\n\t\t&:hover, &:focus {\n\t\t\tcursor: default;\n\t\t\topacity: $opacity_disabled;\n\t\t}\n\t\t& * {\n\t\t\topacity: 1 !important;\n\t\t}\n\t}\n}\n\n\n@mixin action-item($name) {\n\t.action-#{$name} {\n\t\tdisplay: flex;\n\t\talign-items: flex-start;\n\n\t\twidth: 100%;\n\t\theight: auto;\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t\tpadding-right: $icon-margin;\n\t\tbox-sizing: border-box; // otherwise router-link overflows in Firefox\n\n\t\tcursor: pointer;\n\t\twhite-space: nowrap;\n\n\t\topacity: $opacity_normal;\n\t\tcolor: var(--color-main-text);\n\t\tborder: 0;\n\t\tborder-radius: 0; // otherwise Safari will cut the border-radius area\n\t\tbackground-color: transparent;\n\t\tbox-shadow: none;\n\n\t\tfont-weight: normal;\n\t\tfont-size: var(--default-font-size);\n\t\tline-height: $clickable-area;\n\n\t\t&:hover,\n\t\t&:focus {\n\t\t\topacity: $opacity_full;\n\t\t}\n\n\t\t& > span {\n\t\t\tcursor: pointer;\n\t\t\twhite-space: nowrap;\n\t\t}\n\n\t\t&__icon {\n\t\t\twidth: $clickable-area;\n\t\t\theight: $clickable-area;\n\t\t\topacity: $opacity_full;\n\t\t\tbackground-position: $icon-margin center;\n\t\t\tbackground-size: $icon-size;\n\t\t\tbackground-repeat: no-repeat;\n\t\t}\n\n\t\t&::v-deep .material-design-icon {\n\t\t\twidth: $clickable-area;\n\t\t\theight: $clickable-area;\n\t\t\topacity: $opacity_full;\n\n\t\t\t.material-design-icon__svg {\n\t\t\t\tvertical-align: middle;\n\t\t\t}\n\t\t}\n\n\t\t// long text area\n\t\tp {\n\t\t\tmax-width: 220px;\n\t\t\tline-height: 1.6em;\n\n\t\t\t// 14px are currently 1em line-height. Mixing units as '44px - 1.6em' does not work.\n\t\t\tpadding: #{($clickable-area - 1.6*14px) / 2} 0;\n\n\t\t\tcursor: pointer;\n\t\t\ttext-align: left;\n\n\t\t\t// in case there are no spaces like long email addresses\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t}\n\n\t\t&__longtext {\n\t\t\tcursor: pointer;\n\t\t\t// allow the use of `\\n`\n\t\t\twhite-space: pre-wrap;\n\t\t}\n\n\t\t&__title {\n\t\t\tfont-weight: bold;\n\t\t\ttext-overflow: ellipsis;\n\t\t\toverflow: hidden;\n\t\t\twhite-space: nowrap;\n\t\t\tmax-width: 100%;\n\t\t\tdisplay: inline-block;\n\t\t}\n\t}\n}\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 */\n\n// https://uxplanet.org/7-rules-for-mobile-ui-button-design-e9cf2ea54556\n// recommended is 48px\n// 44px is what we choose and have very good visual-to-usability ratio\n$clickable-area: 44px;\n\n// background icon size\n// also used for the scss icon font\n$icon-size: 16px;\n\n// icon padding for a $clickable-area width and a $icon-size icon\n// ( 44px - 16px ) / 2\n$icon-margin: ($clickable-area - $icon-size) / 2;\n\n// transparency background for icons\n$icon-focus-bg: rgba(127, 127, 127, .25);\n\n// popovermenu arrow width from the triangle center\n$arrow-width: 9px;\n\n// opacities\n$opacity_disabled: .5;\n$opacity_normal: .7;\n$opacity_full: 1;\n\n// menu round background hover feedback\n// good looking on dark AND white bg\n$action-background-hover: rgba(127, 127, 127, .25);\n\n// various structure data used in the \n// `AppNavigation` component\n$header-height: 50px;\n$navigation-width: 300px;\n\n// mobile breakpoint\n$breakpoint-mobile: 1024px;\n"],sourceRoot:""}]),e.a=a},function(t,e){},,,,,,function(t,e,n){"use strict";var r={name:"ActionButton",mixins:[n(31).a],props:{disabled:{type:Boolean,default:!1}},computed:{isFocusable:function(){return!this.disabled}}},o=n(2),i=n.n(o),a=n(62),s={insert:"head",singleton:!1},l=(i()(a.a,s),a.a.locals,n(3)),u=n(63),c=n.n(u),p=Object(l.a)(r,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("li",{staticClass:"action",class:{"action--disabled":t.disabled}},[n("button",{staticClass:"action-button",class:{focusable:t.isFocusable},attrs:{"aria-label":t.ariaLabel,type:"button"},on:{click:t.onClick}},[t._t("icon",[n("span",{staticClass:"action-button__icon",class:[t.isIconUrl?"action-button__icon--url":t.icon],style:{backgroundImage:t.isIconUrl?"url("+t.icon+")":null}})]),t._v(" "),t.title?n("p",[n("strong",{staticClass:"action-button__title"},[t._v("\n\t\t\t\t"+t._s(t.title)+"\n\t\t\t")]),t._v(" "),n("br"),t._v(" "),n("span",{staticClass:"action-button__longtext",domProps:{textContent:t._s(t.text)}})]):t.isLongText?n("p",{staticClass:"action-button__longtext",domProps:{textContent:t._s(t.text)}}):n("span",{staticClass:"action-button__text"},[t._v(t._s(t.text))]),t._v(" "),t._e()],2)])}),[],!1,null,"71ea20d2",null);"function"==typeof c.a&&c()(p),e.a=p.exports},,,function(t,e){t.exports=n(8039)},,,function(t,e){t.exports=n(1567)},,,,function(t,e){t.exports=n(840)},function(t,e,n){"use strict";n.r(e);var r=n(69);e.default=r.a},,,,,,,,,,,,,function(t,e,n){"use strict";var r=n(0),o=n.n(r),i=n(1),a=n.n(i)()(o.a);a.push([t.i,".material-design-icon[data-v-3e8e4882]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.modal-mask[data-v-3e8e4882]{position:fixed;z-index:9998;top:0;left:0;display:block;width:100%;height:100%;background-color:rgba(0,0,0,0.5)}.modal-mask--dark[data-v-3e8e4882]{background-color:rgba(0,0,0,0.92)}.modal-header[data-v-3e8e4882]{position:absolute;z-index:10001;top:0;right:0;left:0;display:flex !important;align-items:center;justify-content:center;width:100%;height:50px;transition:opacity 250ms, visibility 250ms}.modal-header.invisible[style*='display:none'][data-v-3e8e4882],.modal-header.invisible[style*='display: none'][data-v-3e8e4882]{visibility:hidden}.modal-header .modal-title[data-v-3e8e4882]{overflow-x:hidden;box-sizing:border-box;width:100%;padding:0 132px 0 12px;transition:padding ease 100ms;white-space:nowrap;text-overflow:ellipsis;color:#fff;font-size:14px}@media only screen and (min-width: 512px){.modal-header .modal-title[data-v-3e8e4882]{padding-left:132px;text-align:center}}.modal-header .icons-menu[data-v-3e8e4882]{position:absolute;right:0;display:flex;align-items:center;justify-content:flex-end}.modal-header .icons-menu .header-close[data-v-3e8e4882]{display:flex;align-items:center;justify-content:center;box-sizing:border-box;margin:3px;padding:0}.modal-header .icons-menu .play-pause-icons[data-v-3e8e4882]{position:relative;width:50px;height:50px;margin:0;padding:0;cursor:pointer;border:none;background-color:transparent}.modal-header .icons-menu .play-pause-icons:hover .play-pause-icons__play[data-v-3e8e4882],.modal-header .icons-menu .play-pause-icons:hover .play-pause-icons__pause[data-v-3e8e4882],.modal-header .icons-menu .play-pause-icons:focus .play-pause-icons__play[data-v-3e8e4882],.modal-header .icons-menu .play-pause-icons:focus .play-pause-icons__pause[data-v-3e8e4882]{opacity:1;border-radius:22px;background-color:rgba(127,127,127,0.25)}.modal-header .icons-menu .play-pause-icons__play[data-v-3e8e4882],.modal-header .icons-menu .play-pause-icons__pause[data-v-3e8e4882]{box-sizing:border-box;width:44px;height:44px;margin:3px;cursor:pointer;opacity:.7}.modal-header .icons-menu .header-actions[data-v-3e8e4882]{margin:3px;color:white}.modal-header .icons-menu .action-item--single[data-v-3e8e4882]{box-sizing:border-box;width:44px;height:44px;cursor:pointer;background-position:center;background-size:22px}.modal-header .icons-menu[data-v-3e8e4882] button{color:#fff}.modal-header .icons-menu[data-v-3e8e4882] .action-item__menutoggle{padding:0}.modal-header .icons-menu[data-v-3e8e4882] .action-item__menutoggle span,.modal-header .icons-menu[data-v-3e8e4882] .action-item__menutoggle svg{width:var(--icon-size);height:var(--icon-size)}.modal-wrapper[data-v-3e8e4882]{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:100%;height:100%}.modal-wrapper .prev[data-v-3e8e4882],.modal-wrapper .next[data-v-3e8e4882]{z-index:10000;display:flex !important;align-items:center;justify-content:center;width:8%;min-width:44px;height:35vw;position:absolute;transition:opacity 250ms, visibility 250ms}.modal-wrapper .prev.invisible[style*='display:none'][data-v-3e8e4882],.modal-wrapper .prev.invisible[style*='display: none'][data-v-3e8e4882],.modal-wrapper .next.invisible[style*='display:none'][data-v-3e8e4882],.modal-wrapper .next.invisible[style*='display: none'][data-v-3e8e4882]{visibility:hidden}.modal-wrapper .prev[data-v-3e8e4882]{left:0}.modal-wrapper .next[data-v-3e8e4882]{right:0}.modal-wrapper .icon-next[data-v-3e8e4882],.modal-wrapper .icon-previous[data-v-3e8e4882]{box-sizing:border-box;width:44px;height:44px;color:white;background-image:none;display:flex}.modal-wrapper .modal-container[data-v-3e8e4882]{display:block;overflow:auto;padding:0;transition:transform 300ms ease;border-radius:var(--border-radius-large);background-color:var(--color-main-background);box-shadow:0 0 40px rgba(0,0,0,0.2)}.modal-wrapper--small .modal-container[data-v-3e8e4882]{width:330px;max-height:90%}.modal-wrapper--normal .modal-container[data-v-3e8e4882]{max-width:90%;width:600px;max-height:90%;height:600px}.modal-wrapper--large .modal-container[data-v-3e8e4882]{max-width:90%;width:900px;max-height:90%;height:700px}.modal-wrapper--full .modal-container[data-v-3e8e4882]{width:100%;height:calc(100% - var(--header-height));position:absolute;top:50px;border-radius:0}@media only screen and (max-width: 512px){.modal-wrapper:not(.modal-wrapper--small) .modal-container[data-v-3e8e4882]{max-width:initial;width:100%;max-height:initial;height:calc(100% - var(--header-height));position:absolute;top:50px;border-radius:0}}.fade-enter-active[data-v-3e8e4882],.fade-leave-active[data-v-3e8e4882]{transition:opacity 250ms}.fade-enter[data-v-3e8e4882],.fade-leave-to[data-v-3e8e4882]{opacity:0}.fade-visibility-enter[data-v-3e8e4882],.fade-visibility-leave-to[data-v-3e8e4882]{visibility:hidden;opacity:0}.modal-in-enter-active[data-v-3e8e4882],.modal-in-leave-active[data-v-3e8e4882],.modal-out-enter-active[data-v-3e8e4882],.modal-out-leave-active[data-v-3e8e4882]{transition:opacity 250ms}.modal-in-enter[data-v-3e8e4882],.modal-in-leave-to[data-v-3e8e4882],.modal-out-enter[data-v-3e8e4882],.modal-out-leave-to[data-v-3e8e4882]{opacity:0}.modal-in-enter .modal-container[data-v-3e8e4882],.modal-in-leave-to .modal-container[data-v-3e8e4882]{transform:scale(0.9)}.modal-out-enter .modal-container[data-v-3e8e4882],.modal-out-leave-to .modal-container[data-v-3e8e4882]{transform:scale(1.1)}.modal-mask .play-pause-icons .progress-ring[data-v-3e8e4882]{position:absolute;top:0;left:0;transform:rotate(-90deg)}.modal-mask .play-pause-icons .progress-ring .progress-ring__circle[data-v-3e8e4882]{transition:100ms stroke-dashoffset;transform-origin:50% 50%;animation:progressring-data-v-3e8e4882 linear var(--slideshow-duration) infinite;stroke-linecap:round;stroke-dashoffset:94.24778;stroke-dasharray:94.24778}.modal-mask .play-pause-icons--paused .icon-pause[data-v-3e8e4882]{animation:breath-data-v-3e8e4882 2s cubic-bezier(0.4, 0, 0.2, 1) infinite}.modal-mask .play-pause-icons--paused .progress-ring__circle[data-v-3e8e4882]{animation-play-state:paused !important}@keyframes progressring-data-v-3e8e4882{from{stroke-dashoffset:94.24778}to{stroke-dashoffset:0}}@keyframes breath-data-v-3e8e4882{0%{opacity:1}50%{opacity:0}100%{opacity:1}}\n","",{version:3,sources:["webpack://./../../assets/material-icons.css","webpack://./Modal.vue","webpack://./../../assets/variables.scss"],names:[],mappings:"AAGA,uCACC,YAAa,CACb,iBAAkB,CAClB,mBAAoB,CACpB,kBAAmB,CACnB,sBAAuB,CC6gBxB,6BACC,cAAe,CACf,YAAa,CACb,KAAM,CACN,MAAO,CACP,aAAc,CACd,UAAW,CACX,WAAY,CACZ,gCAAmC,CACnC,mCACC,iCAAoC,CACpC,+BAID,iBAAkB,CAClB,aAAc,CACd,KAAM,CACN,OAAQ,CACR,MAAO,CAGP,uBAAwB,CACxB,kBAAmB,CACnB,sBAAuB,CACvB,UAAW,CACX,WC3fmB,CD4fnB,0CACiB,CAdlB,iIAmBE,iBAAkB,CAnBpB,4CAuBE,iBAAkB,CAClB,qBAAsB,CACtB,UAAW,CACX,sBAAwC,CACxC,6BAA8B,CAC9B,kBAAmB,CACnB,sBAAuB,CACvB,UAAW,CACX,cCjiB8C,CDkiB9C,0CAhCF,4CAqCG,kBAAc,CACd,iBAAkB,CAClB,CAvCH,2CA2CE,iBAAkB,CAClB,OAAQ,CACR,YAAa,CACb,kBAAmB,CACnB,wBAAyB,CA/C3B,yDAkDG,YAAa,CACb,kBAAmB,CACnB,sBAAuB,CACvB,qBAAsB,CACtB,UAA8C,CAC9C,SAAU,CAvDb,6DA2DG,iBAAkB,CAClB,UC3iBiB,CD4iBjB,WC5iBiB,CD6iBjB,QAAS,CACT,SAAU,CACV,cAAe,CACf,WAAY,CACZ,4BAA6B,CAlEhC,8WAuEK,SC9jBW,CD+jBX,kBAAkC,CAClC,uCCxkBmC,CD+fxC,uIA8EI,qBAAsB,CACtB,UCzlBiB,CD0lBjB,WC1lBiB,CD2lBjB,UAA8C,CAC9C,cAAe,CACf,UC3kBe,CDwfnB,2DAwFG,UAA8C,CAC9C,WAAY,CAzFf,gEA6FG,qBAAsB,CACtB,UCxmBkB,CDymBlB,WCzmBkB,CD0mBlB,cAAe,CACf,0BAA2B,CAC3B,oBAAqB,CAlGxB,mDAuGG,UAAW,CAvGd,oEA4GG,SAAU,CA5Gb,iJA8GI,sBAAuB,CACvB,uBAAwB,CACxB,gCAMH,YAAa,CACb,kBAAmB,CACnB,sBAAuB,CACvB,qBAAsB,CACtB,UAAW,CACX,WAAY,CANb,4EAWE,aAAc,CAEd,uBAAwB,CACxB,kBAAmB,CACnB,sBAAuB,CACvB,QAAS,CACT,cChpBmB,CDipBnB,WAAY,CACZ,iBAAkB,CAClB,0CACiB,CArBnB,8RA6BG,iBAAkB,CA7BrB,sCAiCE,MAAO,CAjCT,sCAoCE,OAAQ,CApCV,0FA0CE,qBAAsB,CACtB,UC1qBmB,CD2qBnB,WC3qBmB,CD4qBnB,WAAY,CACZ,qBAAsB,CACtB,YAAa,CA/Cf,iDAoDE,aAAc,CACd,aAAc,CACd,SAAU,CACV,+BAAgC,CAChC,wCAAyC,CACzC,6CAA8C,CAC9C,mCAAsC,CACtC,wDAKC,WAAY,CACZ,cAAe,CACf,yDAIA,aAAc,CACd,WAAY,CACZ,cAAe,CACf,YAAa,CACb,wDAIA,aAAc,CACd,WAAY,CACZ,cAAe,CACf,YAAa,CACb,uDAIA,UAAW,CACX,wCAAyC,CACzC,iBAAkB,CAClB,QC7rBiB,CD8rBjB,eAAgB,CAChB,0CA3FH,4EAiGG,iBAAkB,CAClB,UAAW,CACX,kBAAmB,CACnB,wCAAyC,CACzC,iBAAkB,CAClB,QC1sBiB,CD2sBjB,eAAgB,CAChB,CAKH,wEAEC,wBAAyB,CACzB,6DAIA,SAAU,CACV,mFAIA,iBAAkB,CAClB,SAAU,CACV,kKAMA,wBAAyB,CACzB,4IAMA,SAAU,CACV,uGAIA,oBAAoB,CACpB,yGAIA,oBAAqB,CACrB,8DAQC,iBAAkB,CAClB,KAAM,CACN,MAAO,CACP,wBAAyB,CAL3B,qFAOG,kCAAmC,CACnC,wBAAyB,CACzB,gFAAiE,CAEjE,oBAAqB,CACrB,0BAfQ,CAgBR,yBAhBQ,CAGX,mEAkBG,yEAAwD,CAlB3D,8EAqBG,sCAAuC,CACvC,wCAMF,KACC,0BAhCS,CAkCV,GACC,mBAAoB,CAAA,CAItB,kCACC,GACC,SAAU,CAEX,IACC,SAAU,CAEX,KACC,SAAU,CAAA",sourcesContent:["/*\n* Ensure proper alignment of the vue material icons\n*/\n.material-design-icon {\n\tdisplay: flex;\n\talign-self: center;\n\tjustify-self: center;\n\talign-items: center;\n\tjustify-content: center;\n}\n","$scope_version:\"75cef38\"; @import 'variables'; @import 'material-icons';\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.modal-mask {\n\tposition: fixed;\n\tz-index: 9998;\n\ttop: 0;\n\tleft: 0;\n\tdisplay: block;\n\twidth: 100%;\n\theight: 100%;\n\tbackground-color: rgba(0, 0, 0, .5);\n\t&--dark {\n\t\tbackground-color: rgba(0, 0, 0, .92);\n\t}\n}\n\n.modal-header {\n\tposition: absolute;\n\tz-index: 10001;\n\ttop: 0;\n\tright: 0;\n\tleft: 0;\n\t// prevent vue show to use display:none and reseting\n\t// the circle animation loop\n\tdisplay: flex !important;\n\talign-items: center;\n\tjustify-content: center;\n\twidth: 100%;\n\theight: $header-height;\n\ttransition: opacity 250ms,\n\t\tvisibility 250ms;\n\n\t// replace display by visibility\n\t&.invisible[style*='display:none'],\n\t&.invisible[style*='display: none'] {\n\t\tvisibility: hidden;\n\t}\n\n\t.modal-title {\n\t\toverflow-x: hidden;\n\t\tbox-sizing: border-box;\n\t\twidth: 100%;\n\t\tpadding: 0 #{$clickable-area * 3} 0 12px; // maximum actions is 3\n\t\ttransition: padding ease 100ms;\n\t\twhite-space: nowrap;\n\t\ttext-overflow: ellipsis;\n\t\tcolor: #fff;\n\t\tfont-size: $icon-margin;\n\t}\n\n\t// On wider screens the title can be centered\n\t@media only screen and (min-width: $breakpoint-mobile/2) {\n\t\t.modal-title {\n\t\t\tpadding-left: #{$clickable-area * 3}; // maximum actions is 3\n\t\t\ttext-align: center;\n\t\t}\n\t}\n\n\t.icons-menu {\n\t\tposition: absolute;\n\t\tright: 0;\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tjustify-content: flex-end;\n\n\t\t.header-close {\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\t\t\tjustify-content: center;\n\t\t\tbox-sizing: border-box;\n\t\t\tmargin: ($header-height - $clickable-area) / 2;\n\t\t\tpadding: 0;\n\t\t}\n\n\t\t.play-pause-icons {\n\t\t\tposition: relative;\n\t\t\twidth: $header-height;\n\t\t\theight: $header-height;\n\t\t\tmargin: 0;\n\t\t\tpadding: 0;\n\t\t\tcursor: pointer;\n\t\t\tborder: none;\n\t\t\tbackground-color: transparent;\n\t\t\t&:hover,\n\t\t\t&:focus {\n\t\t\t\t.play-pause-icons__play,\n\t\t\t\t.play-pause-icons__pause {\n\t\t\t\t\topacity: $opacity_full;\n\t\t\t\t\tborder-radius: $clickable-area / 2;\n\t\t\t\t\tbackground-color: $icon-focus-bg;\n\t\t\t\t}\n\t\t\t}\n\t\t\t&__play,\n\t\t\t&__pause {\n\t\t\t\tbox-sizing: border-box;\n\t\t\t\twidth: $clickable-area;\n\t\t\t\theight: $clickable-area;\n\t\t\t\tmargin: ($header-height - $clickable-area) / 2;\n\t\t\t\tcursor: pointer;\n\t\t\t\topacity: $opacity_normal;\n\t\t\t}\n\t\t}\n\n\t\t.header-actions {\n\t\t\tmargin: ($header-height - $clickable-area) / 2;\n\t\t\tcolor: white;\n\t\t}\n\n\t\t.action-item--single {\n\t\t\tbox-sizing: border-box;\n\t\t\twidth: $clickable-area;\n\t\t\theight: $clickable-area;\n\t\t\tcursor: pointer;\n\t\t\tbackground-position: center;\n\t\t\tbackground-size: 22px;\n\t\t}\n\n\t\t::v-deep button {\n\t\t\t// force white instead of default main text\n\t\t\tcolor: #fff;\n\t\t}\n\n\t\t// Force the Actions menu icon to be the same size as other icons\n\t\t&::v-deep .action-item__menutoggle {\n\t\t\tpadding: 0;\n\t\t\tspan, svg {\n\t\t\t\twidth: var(--icon-size);\n\t\t\t\theight: var(--icon-size);\n\t\t\t}\n\t\t}\n\t}\n}\n\n.modal-wrapper {\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\tbox-sizing: border-box;\n\twidth: 100%;\n\theight: 100%;\n\n\t/* Navigation buttons */\n\t.prev,\n\t.next {\n\t\tz-index: 10000;\n\t\t// ignore display: none\n\t\tdisplay: flex !important;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\twidth: 8%;\n\t\tmin-width: $clickable-area;\n\t\theight: 35vw;\n\t\tposition: absolute;\n\t\ttransition: opacity 250ms,\n\t\t\tvisibility 250ms;\n\n\t\t// we want to keep the elements on page\n\t\t// even if hidden to avoid having a unbalanced\n\t\t// centered content\n\t\t// replace display by visibility\n\t\t&.invisible[style*='display:none'],\n\t\t&.invisible[style*='display: none'] {\n\t\t\tvisibility: hidden;\n\t\t}\n\t}\n\t.prev {\n\t\tleft: 0;\n\t}\n\t.next {\n\t\tright: 0;\n\t}\n\n\t// buttons/icons\n\t.icon-next,\n\t.icon-previous {\n\t\tbox-sizing: border-box;\n\t\twidth: $clickable-area;\n\t\theight: $clickable-area;\n\t\tcolor: white;\n\t\tbackground-image: none;\n\t\tdisplay: flex;\n\t}\n\n\t/* Content */\n\t.modal-container {\n\t\tdisplay: block;\n\t\toverflow: auto; // avoids unecessary hacks if the content should be bigger than the modal\n\t\tpadding: 0;\n\t\ttransition: transform 300ms ease;\n\t\tborder-radius: var(--border-radius-large);\n\t\tbackground-color: var(--color-main-background);\n\t\tbox-shadow: 0 0 40px rgba(0, 0, 0, .2);\n\t}\n\n\t// Sizing\n\t&--small {\n\t\t.modal-container {\n\t\t\twidth: 330px;\n\t\t\tmax-height: 90%;\n\t\t}\n\t}\n\t&--normal {\n\t\t.modal-container {\n\t\t\tmax-width: 90%;\n\t\t\twidth: 600px;\n\t\t\tmax-height: 90%;\n\t\t\theight: 600px;\n\t\t}\n\t}\n\t&--large {\n\t\t.modal-container {\n\t\t\tmax-width: 90%;\n\t\t\twidth: 900px;\n\t\t\tmax-height: 90%;\n\t\t\theight: 700px;\n\t\t}\n\t}\n\t&--full {\n\t\t.modal-container {\n\t\t\twidth: 100%;\n\t\t\theight: calc(100% - var(--header-height));\n\t\t\tposition: absolute;\n\t\t\ttop: $header-height;\n\t\t\tborder-radius: 0;\n\t\t}\n\t}\n\n\t// Make modal full screen on mobile\n\t@media only screen and (max-width: $breakpoint-mobile/2) {\n\t\t&:not(&--small) .modal-container {\n\t\t\tmax-width: initial;\n\t\t\twidth: 100%;\n\t\t\tmax-height: initial;\n\t\t\theight: calc(100% - var(--header-height));\n\t\t\tposition: absolute;\n\t\t\ttop: $header-height;\n\t\t\tborder-radius: 0;\n\t\t}\n\t}\n}\n\n/* TRANSITIONS */\n.fade-enter-active,\n.fade-leave-active {\n\ttransition: opacity 250ms;\n}\n\n.fade-enter,\n.fade-leave-to {\n\topacity: 0;\n}\n\n.fade-visibility-enter,\n.fade-visibility-leave-to {\n\tvisibility: hidden;\n\topacity: 0;\n}\n\n.modal-in-enter-active,\n.modal-in-leave-active,\n.modal-out-enter-active,\n.modal-out-leave-active {\n\ttransition: opacity 250ms;\n}\n\n.modal-in-enter,\n.modal-in-leave-to,\n.modal-out-enter,\n.modal-out-leave-to {\n\topacity: 0;\n}\n\n.modal-in-enter .modal-container,\n.modal-in-leave-to .modal-container {\n\ttransform: scale(.9);\n}\n\n.modal-out-enter .modal-container,\n.modal-out-leave-to .modal-container {\n\ttransform: scale(1.1);\n}\n\n// animated circle\n$radius: 15;\n$pi: 3.14159265358979;\n\n.modal-mask .play-pause-icons {\n\t.progress-ring {\n\t\tposition: absolute;\n\t\ttop: 0;\n\t\tleft: 0;\n\t\ttransform: rotate(-90deg);\n\t\t.progress-ring__circle {\n\t\t\ttransition: 100ms stroke-dashoffset;\n\t\t\ttransform-origin: 50% 50%; // axis compensation\n\t\t\tanimation: progressring linear var(--slideshow-duration) infinite;\n\n\t\t\tstroke-linecap: round;\n\t\t\tstroke-dashoffset: $radius * 2 * $pi; // radius * 2 * PI\n\t\t\tstroke-dasharray: $radius * 2 * $pi; // radius * 2 * PI\n\t\t}\n\t}\n\t&--paused {\n\t\t.icon-pause {\n\t\t\tanimation: breath 2s cubic-bezier(.4, 0, .2, 1) infinite;\n\t\t}\n\t\t.progress-ring__circle {\n\t\t\tanimation-play-state: paused !important;\n\t\t}\n\t}\n}\n\n// keyframes get scoped too and break the animation name, we need them unscoped\n@keyframes progressring {\n\tfrom {\n\t\tstroke-dashoffset: $radius * 2 * $pi; // radius * 2 * PI\n\t}\n\tto {\n\t\tstroke-dashoffset: 0;\n\t}\n}\n\n@keyframes breath {\n\t0% {\n\t\topacity: 1;\n\t}\n\t50% {\n\t\topacity: 0;\n\t}\n\t100% {\n\t\topacity: 1;\n\t}\n}\n\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 */\n\n// https://uxplanet.org/7-rules-for-mobile-ui-button-design-e9cf2ea54556\n// recommended is 48px\n// 44px is what we choose and have very good visual-to-usability ratio\n$clickable-area: 44px;\n\n// background icon size\n// also used for the scss icon font\n$icon-size: 16px;\n\n// icon padding for a $clickable-area width and a $icon-size icon\n// ( 44px - 16px ) / 2\n$icon-margin: ($clickable-area - $icon-size) / 2;\n\n// transparency background for icons\n$icon-focus-bg: rgba(127, 127, 127, .25);\n\n// popovermenu arrow width from the triangle center\n$arrow-width: 9px;\n\n// opacities\n$opacity_disabled: .5;\n$opacity_normal: .7;\n$opacity_full: 1;\n\n// menu round background hover feedback\n// good looking on dark AND white bg\n$action-background-hover: rgba(127, 127, 127, .25);\n\n// various structure data used in the \n// `AppNavigation` component\n$header-height: 50px;\n$navigation-width: 300px;\n\n// mobile breakpoint\n$breakpoint-mobile: 1024px;\n"],sourceRoot:""}]),e.a=a},function(t,e){},,,,,,,,,,,,,,function(t,e,n){"use strict";n.r(e);var r=n(59),o=n(79),i=n.n(o),a=n(125),s=n.n(a),l=n(75),u=n.n(l),c=n(72),p=n.n(c),f=n(126),d=n.n(f),h=n(127),m=n.n(h),v=n(53),g=n(80),y=n(26),A=n(4),b=n(10);function C(t,e){var n,r,o,i=e;this.start=function(){o=!0,r=new Date,n=setTimeout(t,i)},this.pause=function(){o=!1,clearTimeout(n),i-=new Date-r},this.clear=function(){o=!1,clearTimeout(n),i=0},this.getTimeLeft=function(){return o&&(this.pause(),this.start()),i},this.getStateRunning=function(){return o},this.start()}var w={name:"Modal",components:{ActionButton:g.default,Actions:v.default,ChevronLeft:s.a,ChevronRight:u.a,Close:p.a,Pause:d.a,Play:m.a},directives:{tooltip:b.default},mixins:[y.a],props:{title:{type:String,default:""},hasPrevious:{type:Boolean,default:!1},hasNext:{type:Boolean,default:!1},outTransition:{type:Boolean,default:!1},enableSlideshow:{type:Boolean,default:!1},clearViewDelay:{type:Number,default:5e3},slideshowDelay:{type:Number,default:5e3},slideshowPaused:{type:Boolean,default:!1},enableSwipe:{type:Boolean,default:!0},spreadNavigation:{type:Boolean,default:!1},size:{type:String,default:"normal",validator:function(t){return["small","normal","large","full"].includes(t)}},canClose:{type:Boolean,default:!0},dark:{type:Boolean,default:!1},container:{type:String,default:"body"}},data:function(){return{mc:null,showModal:!1,clearView:!1,clearViewTimeout:null,playing:!1,slideshowTimeout:null,iconSize:24}},computed:{modalTransitionName:function(){return"modal-".concat(this.outTransition?"out":"in")},playPauseTitle:function(){return this.playing?Object(A.b)("Pause slideshow"):Object(A.b)("Start slideshow")},cssVariables:function(){return{"--slideshow-duration":this.slideshowDelay+"ms","--icon-size":this.iconSize+"px"}}},watch:{slideshowPaused:function(t){this.slideshowTimeout&&(t?this.slideshowTimeout.pause():this.slideshowTimeout.start())}},beforeMount:function(){window.addEventListener("keydown",this.handleKeydown)},beforeDestroy:function(){window.removeEventListener("keydown",this.handleKeydown),this.mc.off("swipeleft swiperight"),this.mc.destroy()},mounted:function(){var t=this;this.showModal=!0,this.handleMouseMove(),this.mc=new i.a(this.$refs.mask),this.mc.on("swipeleft swiperight",(function(e){t.handleSwipe(e)})),"body"===this.container?document.body.insertBefore(this.$el,document.body.lastChild):document.querySelector(this.container).appendChild(this.$el)},destroyed:function(){this.$el.remove()},methods:{previous:function(t){this.hasPrevious&&(t&&this.resetSlideshow(),this.$emit("previous",t))},next:function(t){this.hasNext&&(t&&this.resetSlideshow(),this.$emit("next",t))},close:function(t){var e=this;this.canClose&&(this.showModal=!1,setTimeout((function(){e.$emit("close",t)}),300))},handleKeydown:function(t){switch(t.keyCode){case 37:this.previous(t);break;case 13:case 39:this.next(t);break;case 27:this.close(t)}},handleSwipe:function(t){this.enableSwipe&&("swipeleft"===t.type?this.next(t):"swiperight"===t.type&&this.previous(t))},handleMouseMove:function(){var t=this;this.clearViewDelay>0&&(this.clearView=!1,clearTimeout(this.clearViewTimeout),this.clearViewTimeout=setTimeout((function(){t.clearView=!0}),this.clearViewDelay))},togglePlayPause:function(){this.playing=!this.playing,this.playing?this.handleSlideshow():this.clearSlideshowTimeout()},resetSlideshow:function(){this.playing=!this.playing,this.clearSlideshowTimeout(),this.$nextTick((function(){this.togglePlayPause()}))},handleSlideshow:function(){var t=this;this.playing=!0,this.hasNext?this.slideshowTimeout=new C((function(){t.next(),t.handleSlideshow()}),this.slideshowDelay):(this.playing=!1,this.clearSlideshowTimeout())},clearSlideshowTimeout:function(){this.slideshowTimeout&&this.slideshowTimeout.clear()}}},x=n(2),_=n.n(x),S=n(93),k={insert:"head",singleton:!1},E=(_()(S.a,k),S.a.locals,n(3)),O=n(94),j=n.n(O),T=Object(E.a)(w,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("transition",{attrs:{name:"fade"}},[n("div",{ref:"mask",staticClass:"modal-mask",class:{"modal-mask--dark":t.dark},style:t.cssVariables,on:{click:t.handleMouseMove,mousemove:t.handleMouseMove,touchmove:t.handleMouseMove}},[n("transition",{attrs:{name:"fade-visibility"}},[n("div",{directives:[{name:"show",rawName:"v-show",value:!t.clearView,expression:"!clearView"}],staticClass:"modal-header",class:{invisible:t.clearView}},[""!==t.title.trim()?n("div",{staticClass:"modal-title"},[t._v("\n\t\t\t\t\t"+t._s(t.title)+"\n\t\t\t\t")]):t._e(),t._v(" "),n("div",{staticClass:"icons-menu"},[t.hasNext&&t.enableSlideshow?n("button",{directives:[{name:"tooltip",rawName:"v-tooltip.auto",value:t.playPauseTitle,expression:"playPauseTitle",modifiers:{auto:!0}}],staticClass:"play-pause-icons",class:{"play-pause-icons--paused":t.slideshowPaused},attrs:{type:"button"},on:{click:t.togglePlayPause}},[t.playing?n("Pause",{staticClass:"play-pause-icons__pause",attrs:{size:t.iconSize,title:"",decorative:""}}):n("Play",{staticClass:"play-pause-icons__play",attrs:{size:t.iconSize,title:"",decorative:""}}),t._v(" "),n("span",{staticClass:"hidden-visually"},[t._v("\n\t\t\t\t\t\t\t"+t._s(t.playPauseTitle)+"\n\t\t\t\t\t\t")]),t._v(" "),t.playing?n("svg",{staticClass:"progress-ring",attrs:{height:"50",width:"50"}},[n("circle",{staticClass:"progress-ring__circle",attrs:{stroke:"white","stroke-width":"2",fill:"transparent",r:"15",cx:"25",cy:"25"}})]):t._e()],1):t._e(),t._v(" "),n("Actions",{staticClass:"header-actions"},[t._t("actions")],2),t._v(" "),t.canClose?n("Actions",{staticClass:"header-close"},[n("ActionButton",{on:{click:t.close},scopedSlots:t._u([{key:"icon",fn:function(){return[n("Close",{attrs:{size:t.iconSize,title:"",decorative:""}})]},proxy:!0}],null,!1,1372351874)},[t._v("\n\t\t\t\t\t\t\t"+t._s(t.t("Close"))+"\n\t\t\t\t\t\t")])],1):t._e()],1)])]),t._v(" "),n("transition",{attrs:{name:t.modalTransitionName}},[n("div",{directives:[{name:"show",rawName:"v-show",value:t.showModal,expression:"showModal"}],staticClass:"modal-wrapper",class:["modal-wrapper--"+t.size,t.spreadNavigation?"modal-wrapper--spread-navigation":""],on:{mousedown:function(e){return e.target!==e.currentTarget?null:t.close(e)}}},[n("transition",{attrs:{name:"fade-visibility"}},[n("a",{directives:[{name:"show",rawName:"v-show",value:t.hasPrevious&&!t.clearView,expression:"hasPrevious && !clearView"}],staticClass:"prev",class:{invisible:t.clearView||!t.hasPrevious},attrs:{href:"#"},on:{click:function(e){return e.preventDefault(),e.stopPropagation(),t.previous(e)}}},[n("span",{staticClass:"icon-previous"},[n("ChevronLeft",{attrs:{size:40,title:"",decorative:""}}),t._v(" "),n("span",{staticClass:"hidden-visually"},[t._v("\n\t\t\t\t\t\t\t\t"+t._s(t.t("Previous"))+"\n\t\t\t\t\t\t\t")])],1)])]),t._v(" "),n("div",{staticClass:"modal-container"},[t._t("default")],2),t._v(" "),n("transition",{attrs:{name:"fade-visibility"}},[n("a",{directives:[{name:"show",rawName:"v-show",value:t.hasNext&&!t.clearView,expression:"hasNext && !clearView"}],staticClass:"next",class:{invisible:t.clearView||!t.hasNext},attrs:{href:"#"},on:{click:function(e){return e.preventDefault(),e.stopPropagation(),t.next(e)}}},[n("span",{staticClass:"icon-next"},[n("ChevronRight",{attrs:{size:40,title:"",decorative:""}}),t._v(" "),n("span",{staticClass:"hidden-visually"},[t._v("\n\t\t\t\t\t\t\t\t"+t._s(t.t("Next"))+"\n\t\t\t\t\t\t\t")])],1)])])],1)])],1)])}),[],!1,null,"3e8e4882",null);"function"==typeof j.a&&j()(T);var B=T.exports;Object(r.a)(B),e.default=B},,,,,,,,,,,,,,,,,function(t,e){t.exports=n(1889)},function(t,e){t.exports=n(3817)},function(t,e){t.exports=n(1170)}])},6314:(t,e,n)=>{"use strict";var r=["BigInt64Array","BigUint64Array","Float32Array","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Uint8Array","Uint8ClampedArray"],o="undefined"==typeof globalThis?n.g:globalThis;t.exports=function(){for(var t=[],e=0;e<r.length;e++)"function"==typeof o[r[e]]&&(t[t.length]=r[e]);return t}},9669:(t,e,n)=>{t.exports=n(1609)},5448:(t,e,n)=>{"use strict";var r=n(4867),o=n(6026),i=n(4372),a=n(5327),s=n(4097),l=n(4109),u=n(7985),c=n(5061),p=n(5655),f=n(5263);t.exports=function(t){return new Promise((function(e,n){var d,h=t.data,m=t.headers,v=t.responseType;function g(){t.cancelToken&&t.cancelToken.unsubscribe(d),t.signal&&t.signal.removeEventListener("abort",d)}r.isFormData(h)&&delete m["Content-Type"];var y=new XMLHttpRequest;if(t.auth){var A=t.auth.username||"",b=t.auth.password?unescape(encodeURIComponent(t.auth.password)):"";m.Authorization="Basic "+btoa(A+":"+b)}var C=s(t.baseURL,t.url);function w(){if(y){var r="getAllResponseHeaders"in y?l(y.getAllResponseHeaders()):null,i={data:v&&"text"!==v&&"json"!==v?y.response:y.responseText,status:y.status,statusText:y.statusText,headers:r,config:t,request:y};o((function(t){e(t),g()}),(function(t){n(t),g()}),i),y=null}}if(y.open(t.method.toUpperCase(),a(C,t.params,t.paramsSerializer),!0),y.timeout=t.timeout,"onloadend"in y?y.onloadend=w:y.onreadystatechange=function(){y&&4===y.readyState&&(0!==y.status||y.responseURL&&0===y.responseURL.indexOf("file:"))&&setTimeout(w)},y.onabort=function(){y&&(n(c("Request aborted",t,"ECONNABORTED",y)),y=null)},y.onerror=function(){n(c("Network Error",t,null,y)),y=null},y.ontimeout=function(){var e=t.timeout?"timeout of "+t.timeout+"ms exceeded":"timeout exceeded",r=t.transitional||p.transitional;t.timeoutErrorMessage&&(e=t.timeoutErrorMessage),n(c(e,t,r.clarifyTimeoutError?"ETIMEDOUT":"ECONNABORTED",y)),y=null},r.isStandardBrowserEnv()){var x=(t.withCredentials||u(C))&&t.xsrfCookieName?i.read(t.xsrfCookieName):void 0;x&&(m[t.xsrfHeaderName]=x)}"setRequestHeader"in y&&r.forEach(m,(function(t,e){void 0===h&&"content-type"===e.toLowerCase()?delete m[e]:y.setRequestHeader(e,t)})),r.isUndefined(t.withCredentials)||(y.withCredentials=!!t.withCredentials),v&&"json"!==v&&(y.responseType=t.responseType),"function"==typeof t.onDownloadProgress&&y.addEventListener("progress",t.onDownloadProgress),"function"==typeof t.onUploadProgress&&y.upload&&y.upload.addEventListener("progress",t.onUploadProgress),(t.cancelToken||t.signal)&&(d=function(t){y&&(n(!t||t&&t.type?new f("canceled"):t),y.abort(),y=null)},t.cancelToken&&t.cancelToken.subscribe(d),t.signal&&(t.signal.aborted?d():t.signal.addEventListener("abort",d))),h||(h=null),y.send(h)}))}},1609:(t,e,n)=>{"use strict";var r=n(4867),o=n(1849),i=n(321),a=n(7185);var s=function t(e){var n=new i(e),s=o(i.prototype.request,n);return r.extend(s,i.prototype,n),r.extend(s,n),s.create=function(n){return t(a(e,n))},s}(n(5655));s.Axios=i,s.Cancel=n(5263),s.CancelToken=n(4972),s.isCancel=n(6502),s.VERSION=n(7288).version,s.all=function(t){return Promise.all(t)},s.spread=n(8713),s.isAxiosError=n(6268),t.exports=s,t.exports.default=s},5263:t=>{"use strict";function e(t){this.message=t}e.prototype.toString=function(){return"Cancel"+(this.message?": "+this.message:"")},e.prototype.__CANCEL__=!0,t.exports=e},4972:(t,e,n)=>{"use strict";var r=n(5263);function o(t){if("function"!=typeof t)throw new TypeError("executor must be a function.");var e;this.promise=new Promise((function(t){e=t}));var n=this;this.promise.then((function(t){if(n._listeners){var e,r=n._listeners.length;for(e=0;e<r;e++)n._listeners[e](t);n._listeners=null}})),this.promise.then=function(t){var e,r=new Promise((function(t){n.subscribe(t),e=t})).then(t);return r.cancel=function(){n.unsubscribe(e)},r},t((function(t){n.reason||(n.reason=new r(t),e(n.reason))}))}o.prototype.throwIfRequested=function(){if(this.reason)throw this.reason},o.prototype.subscribe=function(t){this.reason?t(this.reason):this._listeners?this._listeners.push(t):this._listeners=[t]},o.prototype.unsubscribe=function(t){if(this._listeners){var e=this._listeners.indexOf(t);-1!==e&&this._listeners.splice(e,1)}},o.source=function(){var t;return{token:new o((function(e){t=e})),cancel:t}},t.exports=o},6502:t=>{"use strict";t.exports=function(t){return!(!t||!t.__CANCEL__)}},321:(t,e,n)=>{"use strict";var r=n(4867),o=n(5327),i=n(782),a=n(3572),s=n(7185),l=n(4875),u=l.validators;function c(t){this.defaults=t,this.interceptors={request:new i,response:new i}}c.prototype.request=function(t){"string"==typeof t?(t=arguments[1]||{}).url=arguments[0]:t=t||{},(t=s(this.defaults,t)).method?t.method=t.method.toLowerCase():this.defaults.method?t.method=this.defaults.method.toLowerCase():t.method="get";var e=t.transitional;void 0!==e&&l.assertOptions(e,{silentJSONParsing:u.transitional(u.boolean),forcedJSONParsing:u.transitional(u.boolean),clarifyTimeoutError:u.transitional(u.boolean)},!1);var n=[],r=!0;this.interceptors.request.forEach((function(e){"function"==typeof e.runWhen&&!1===e.runWhen(t)||(r=r&&e.synchronous,n.unshift(e.fulfilled,e.rejected))}));var o,i=[];if(this.interceptors.response.forEach((function(t){i.push(t.fulfilled,t.rejected)})),!r){var c=[a,void 0];for(Array.prototype.unshift.apply(c,n),c=c.concat(i),o=Promise.resolve(t);c.length;)o=o.then(c.shift(),c.shift());return o}for(var p=t;n.length;){var f=n.shift(),d=n.shift();try{p=f(p)}catch(t){d(t);break}}try{o=a(p)}catch(t){return Promise.reject(t)}for(;i.length;)o=o.then(i.shift(),i.shift());return o},c.prototype.getUri=function(t){return t=s(this.defaults,t),o(t.url,t.params,t.paramsSerializer).replace(/^\?/,"")},r.forEach(["delete","get","head","options"],(function(t){c.prototype[t]=function(e,n){return this.request(s(n||{},{method:t,url:e,data:(n||{}).data}))}})),r.forEach(["post","put","patch"],(function(t){c.prototype[t]=function(e,n,r){return this.request(s(r||{},{method:t,url:e,data:n}))}})),t.exports=c},782:(t,e,n)=>{"use strict";var r=n(4867);function o(){this.handlers=[]}o.prototype.use=function(t,e,n){return this.handlers.push({fulfilled:t,rejected:e,synchronous:!!n&&n.synchronous,runWhen:n?n.runWhen:null}),this.handlers.length-1},o.prototype.eject=function(t){this.handlers[t]&&(this.handlers[t]=null)},o.prototype.forEach=function(t){r.forEach(this.handlers,(function(e){null!==e&&t(e)}))},t.exports=o},4097:(t,e,n)=>{"use strict";var r=n(1793),o=n(7303);t.exports=function(t,e){return t&&!r(e)?o(t,e):e}},5061:(t,e,n)=>{"use strict";var r=n(481);t.exports=function(t,e,n,o,i){var a=new Error(t);return r(a,e,n,o,i)}},3572:(t,e,n)=>{"use strict";var r=n(4867),o=n(8527),i=n(6502),a=n(5655),s=n(5263);function l(t){if(t.cancelToken&&t.cancelToken.throwIfRequested(),t.signal&&t.signal.aborted)throw new s("canceled")}t.exports=function(t){return l(t),t.headers=t.headers||{},t.data=o.call(t,t.data,t.headers,t.transformRequest),t.headers=r.merge(t.headers.common||{},t.headers[t.method]||{},t.headers),r.forEach(["delete","get","head","post","put","patch","common"],(function(e){delete t.headers[e]})),(t.adapter||a.adapter)(t).then((function(e){return l(t),e.data=o.call(t,e.data,e.headers,t.transformResponse),e}),(function(e){return i(e)||(l(t),e&&e.response&&(e.response.data=o.call(t,e.response.data,e.response.headers,t.transformResponse))),Promise.reject(e)}))}},481:t=>{"use strict";t.exports=function(t,e,n,r,o){return t.config=e,n&&(t.code=n),t.request=r,t.response=o,t.isAxiosError=!0,t.toJSON=function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:this.config,code:this.code,status:this.response&&this.response.status?this.response.status:null}},t}},7185:(t,e,n)=>{"use strict";var r=n(4867);t.exports=function(t,e){e=e||{};var n={};function o(t,e){return r.isPlainObject(t)&&r.isPlainObject(e)?r.merge(t,e):r.isPlainObject(e)?r.merge({},e):r.isArray(e)?e.slice():e}function i(n){return r.isUndefined(e[n])?r.isUndefined(t[n])?void 0:o(void 0,t[n]):o(t[n],e[n])}function a(t){if(!r.isUndefined(e[t]))return o(void 0,e[t])}function s(n){return r.isUndefined(e[n])?r.isUndefined(t[n])?void 0:o(void 0,t[n]):o(void 0,e[n])}function l(n){return n in e?o(t[n],e[n]):n in t?o(void 0,t[n]):void 0}var u={url:a,method:a,data:a,baseURL:s,transformRequest:s,transformResponse:s,paramsSerializer:s,timeout:s,timeoutMessage:s,withCredentials:s,adapter:s,responseType:s,xsrfCookieName:s,xsrfHeaderName:s,onUploadProgress:s,onDownloadProgress:s,decompress:s,maxContentLength:s,maxBodyLength:s,transport:s,httpAgent:s,httpsAgent:s,cancelToken:s,socketPath:s,responseEncoding:s,validateStatus:l};return r.forEach(Object.keys(t).concat(Object.keys(e)),(function(t){var e=u[t]||i,o=e(t);r.isUndefined(o)&&e!==l||(n[t]=o)})),n}},6026:(t,e,n)=>{"use strict";var r=n(5061);t.exports=function(t,e,n){var o=n.config.validateStatus;n.status&&o&&!o(n.status)?e(r("Request failed with status code "+n.status,n.config,null,n.request,n)):t(n)}},8527:(t,e,n)=>{"use strict";var r=n(4867),o=n(5655);t.exports=function(t,e,n){var i=this||o;return r.forEach(n,(function(n){t=n.call(i,t,e)})),t}},5655:(t,e,n)=>{"use strict";var r=n(4155),o=n(4867),i=n(6016),a=n(481),s={"Content-Type":"application/x-www-form-urlencoded"};function l(t,e){!o.isUndefined(t)&&o.isUndefined(t["Content-Type"])&&(t["Content-Type"]=e)}var u,c={transitional:{silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},adapter:(("undefined"!=typeof XMLHttpRequest||void 0!==r&&"[object process]"===Object.prototype.toString.call(r))&&(u=n(5448)),u),transformRequest:[function(t,e){return i(e,"Accept"),i(e,"Content-Type"),o.isFormData(t)||o.isArrayBuffer(t)||o.isBuffer(t)||o.isStream(t)||o.isFile(t)||o.isBlob(t)?t:o.isArrayBufferView(t)?t.buffer:o.isURLSearchParams(t)?(l(e,"application/x-www-form-urlencoded;charset=utf-8"),t.toString()):o.isObject(t)||e&&"application/json"===e["Content-Type"]?(l(e,"application/json"),function(t,e,n){if(o.isString(t))try{return(e||JSON.parse)(t),o.trim(t)}catch(t){if("SyntaxError"!==t.name)throw t}return(n||JSON.stringify)(t)}(t)):t}],transformResponse:[function(t){var e=this.transitional||c.transitional,n=e&&e.silentJSONParsing,r=e&&e.forcedJSONParsing,i=!n&&"json"===this.responseType;if(i||r&&o.isString(t)&&t.length)try{return JSON.parse(t)}catch(t){if(i){if("SyntaxError"===t.name)throw a(t,this,"E_JSON_PARSE");throw t}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*"}}};o.forEach(["delete","get","head"],(function(t){c.headers[t]={}})),o.forEach(["post","put","patch"],(function(t){c.headers[t]=o.merge(s)})),t.exports=c},7288:t=>{t.exports={version:"0.24.0"}},1849:t=>{"use strict";t.exports=function(t,e){return function(){for(var n=new Array(arguments.length),r=0;r<n.length;r++)n[r]=arguments[r];return t.apply(e,n)}}},5327:(t,e,n)=>{"use strict";var r=n(4867);function o(t){return encodeURIComponent(t).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}t.exports=function(t,e,n){if(!e)return t;var i;if(n)i=n(e);else if(r.isURLSearchParams(e))i=e.toString();else{var a=[];r.forEach(e,(function(t,e){null!=t&&(r.isArray(t)?e+="[]":t=[t],r.forEach(t,(function(t){r.isDate(t)?t=t.toISOString():r.isObject(t)&&(t=JSON.stringify(t)),a.push(o(e)+"="+o(t))})))})),i=a.join("&")}if(i){var s=t.indexOf("#");-1!==s&&(t=t.slice(0,s)),t+=(-1===t.indexOf("?")?"?":"&")+i}return t}},7303:t=>{"use strict";t.exports=function(t,e){return e?t.replace(/\/+$/,"")+"/"+e.replace(/^\/+/,""):t}},4372:(t,e,n)=>{"use strict";var r=n(4867);t.exports=r.isStandardBrowserEnv()?{write:function(t,e,n,o,i,a){var s=[];s.push(t+"="+encodeURIComponent(e)),r.isNumber(n)&&s.push("expires="+new Date(n).toGMTString()),r.isString(o)&&s.push("path="+o),r.isString(i)&&s.push("domain="+i),!0===a&&s.push("secure"),document.cookie=s.join("; ")},read:function(t){var e=document.cookie.match(new RegExp("(^|;\\s*)("+t+")=([^;]*)"));return e?decodeURIComponent(e[3]):null},remove:function(t){this.write(t,"",Date.now()-864e5)}}:{write:function(){},read:function(){return null},remove:function(){}}},1793:t=>{"use strict";t.exports=function(t){return/^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(t)}},6268:t=>{"use strict";t.exports=function(t){return"object"==typeof t&&!0===t.isAxiosError}},7985:(t,e,n)=>{"use strict";var r=n(4867);t.exports=r.isStandardBrowserEnv()?function(){var t,e=/(msie|trident)/i.test(navigator.userAgent),n=document.createElement("a");function o(t){var r=t;return e&&(n.setAttribute("href",r),r=n.href),n.setAttribute("href",r),{href:n.href,protocol:n.protocol?n.protocol.replace(/:$/,""):"",host:n.host,search:n.search?n.search.replace(/^\?/,""):"",hash:n.hash?n.hash.replace(/^#/,""):"",hostname:n.hostname,port:n.port,pathname:"/"===n.pathname.charAt(0)?n.pathname:"/"+n.pathname}}return t=o(window.location.href),function(e){var n=r.isString(e)?o(e):e;return n.protocol===t.protocol&&n.host===t.host}}():function(){return!0}},6016:(t,e,n)=>{"use strict";var r=n(4867);t.exports=function(t,e){r.forEach(t,(function(n,r){r!==e&&r.toUpperCase()===e.toUpperCase()&&(t[e]=n,delete t[r])}))}},4109:(t,e,n)=>{"use strict";var r=n(4867),o=["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"];t.exports=function(t){var e,n,i,a={};return t?(r.forEach(t.split("\n"),(function(t){if(i=t.indexOf(":"),e=r.trim(t.substr(0,i)).toLowerCase(),n=r.trim(t.substr(i+1)),e){if(a[e]&&o.indexOf(e)>=0)return;a[e]="set-cookie"===e?(a[e]?a[e]:[]).concat([n]):a[e]?a[e]+", "+n:n}})),a):a}},8713:t=>{"use strict";t.exports=function(t){return function(e){return t.apply(null,e)}}},4875:(t,e,n)=>{"use strict";var r=n(5108),o=n(7288).version,i={};["object","boolean","number","function","string","symbol"].forEach((function(t,e){i[t]=function(n){return typeof n===t||"a"+(e<1?"n ":" ")+t}}));var a={};i.transitional=function(t,e,n){function i(t,e){return"[Axios v"+o+"] Transitional option '"+t+"'"+e+(n?". "+n:"")}return function(n,o,s){if(!1===t)throw new Error(i(o," has been removed"+(e?" in "+e:"")));return e&&!a[o]&&(a[o]=!0,r.warn(i(o," has been deprecated since v"+e+" and will be removed in the near future"))),!t||t(n,o,s)}},t.exports={assertOptions:function(t,e,n){if("object"!=typeof t)throw new TypeError("options must be an object");for(var r=Object.keys(t),o=r.length;o-- >0;){var i=r[o],a=e[i];if(a){var s=t[i],l=void 0===s||a(s,i,t);if(!0!==l)throw new TypeError("option "+i+" must be "+l)}else if(!0!==n)throw Error("Unknown option "+i)}},validators:i}},4867:(t,e,n)=>{"use strict";var r=n(1849),o=Object.prototype.toString;function i(t){return"[object Array]"===o.call(t)}function a(t){return void 0===t}function s(t){return null!==t&&"object"==typeof t}function l(t){if("[object Object]"!==o.call(t))return!1;var e=Object.getPrototypeOf(t);return null===e||e===Object.prototype}function u(t){return"[object Function]"===o.call(t)}function c(t,e){if(null!=t)if("object"!=typeof t&&(t=[t]),i(t))for(var n=0,r=t.length;n<r;n++)e.call(null,t[n],n,t);else for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&e.call(null,t[o],o,t)}t.exports={isArray:i,isArrayBuffer:function(t){return"[object ArrayBuffer]"===o.call(t)},isBuffer:function(t){return null!==t&&!a(t)&&null!==t.constructor&&!a(t.constructor)&&"function"==typeof t.constructor.isBuffer&&t.constructor.isBuffer(t)},isFormData:function(t){return"undefined"!=typeof FormData&&t instanceof FormData},isArrayBufferView:function(t){return"undefined"!=typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(t):t&&t.buffer&&t.buffer instanceof ArrayBuffer},isString:function(t){return"string"==typeof t},isNumber:function(t){return"number"==typeof t},isObject:s,isPlainObject:l,isUndefined:a,isDate:function(t){return"[object Date]"===o.call(t)},isFile:function(t){return"[object File]"===o.call(t)},isBlob:function(t){return"[object Blob]"===o.call(t)},isFunction:u,isStream:function(t){return s(t)&&u(t.pipe)},isURLSearchParams:function(t){return"undefined"!=typeof URLSearchParams&&t instanceof URLSearchParams},isStandardBrowserEnv:function(){return("undefined"==typeof navigator||"ReactNative"!==navigator.product&&"NativeScript"!==navigator.product&&"NS"!==navigator.product)&&("undefined"!=typeof window&&"undefined"!=typeof document)},forEach:c,merge:function t(){var e={};function n(n,r){l(e[r])&&l(n)?e[r]=t(e[r],n):l(n)?e[r]=t({},n):i(n)?e[r]=n.slice():e[r]=n}for(var r=0,o=arguments.length;r<o;r++)c(arguments[r],n);return e},extend:function(t,e,n){return c(e,(function(e,o){t[o]=n&&"function"==typeof e?r(e,n):e})),t},trim:function(t){return t.trim?t.trim():t.replace(/^\s+|\s+$/g,"")},stripBOM:function(t){return 65279===t.charCodeAt(0)&&(t=t.slice(1)),t}}},1924:(t,e,n)=>{"use strict";var r=n(210),o=n(5559),i=o(r("String.prototype.indexOf"));t.exports=function(t,e){var n=r(t,!!e);return"function"==typeof n&&i(t,".prototype.")>-1?o(n):n}},5559:(t,e,n)=>{"use strict";var r=n(8612),o=n(210),i=o("%Function.prototype.apply%"),a=o("%Function.prototype.call%"),s=o("%Reflect.apply%",!0)||r.call(a,i),l=o("%Object.getOwnPropertyDescriptor%",!0),u=o("%Object.defineProperty%",!0),c=o("%Math.max%");if(u)try{u({},"a",{value:1})}catch(t){u=null}t.exports=function(t){var e=s(r,a,arguments);if(l&&u){var n=l(e,"length");n.configurable&&u(e,"length",{value:1+c(0,t.length-(arguments.length-1))})}return e};var p=function(){return s(r,i,arguments)};u?u(t.exports,"apply",{value:p}):t.exports.apply=p},5108:(t,e,n)=>{var r=n(374),o=n(686);function i(){return(new Date).getTime()}var a,s=Array.prototype.slice,l={};a=void 0!==n.g&&n.g.console?n.g.console:"undefined"!=typeof window&&window.console?window.console:{};for(var u=[[function(){},"log"],[function(){a.log.apply(a,arguments)},"info"],[function(){a.log.apply(a,arguments)},"warn"],[function(){a.warn.apply(a,arguments)},"error"],[function(t){l[t]=i()},"time"],[function(t){var e=l[t];if(!e)throw new Error("No such label: "+t);delete l[t];var n=i()-e;a.log(t+": "+n+"ms")},"timeEnd"],[function(){var t=new Error;t.name="Trace",t.message=r.format.apply(null,arguments),a.error(t.stack)},"trace"],[function(t){a.log(r.inspect(t)+"\n")},"dir"],[function(t){if(!t){var e=s.call(arguments,1);o.ok(!1,r.format.apply(null,e))}},"assert"]],c=0;c<u.length;c++){var p=u[c],f=p[0],d=p[1];a[d]||(a[d]=f)}t.exports=a},3099:t=>{t.exports=function(t){if("function"!=typeof t)throw TypeError(String(t)+" is not a function");return t}},6077:(t,e,n)=>{var r=n(111);t.exports=function(t){if(!r(t)&&null!==t)throw TypeError("Can't set "+String(t)+" as a prototype");return t}},1223:(t,e,n)=>{var r=n(5112),o=n(30),i=n(3070),a=r("unscopables"),s=Array.prototype;null==s[a]&&i.f(s,a,{configurable:!0,value:o(null)}),t.exports=function(t){s[a][t]=!0}},1530:(t,e,n)=>{"use strict";var r=n(8710).charAt;t.exports=function(t,e,n){return e+(n?r(t,e).length:1)}},5787:t=>{t.exports=function(t,e,n){if(!(t instanceof e))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return t}},9670:(t,e,n)=>{var r=n(111);t.exports=function(t){if(!r(t))throw TypeError(String(t)+" is not an object");return t}},8533:(t,e,n)=>{"use strict";var r=n(2092).forEach,o=n(9341),i=n(9207),a=o("forEach"),s=i("forEach");t.exports=a&&s?[].forEach:function(t){return r(this,t,arguments.length>1?arguments[1]:void 0)}},1318:(t,e,n)=>{var r=n(5656),o=n(7466),i=n(1400),a=function(t){return function(e,n,a){var s,l=r(e),u=o(l.length),c=i(a,u);if(t&&n!=n){for(;u>c;)if((s=l[c++])!=s)return!0}else for(;u>c;c++)if((t||c in l)&&l[c]===n)return t||c||0;return!t&&-1}};t.exports={includes:a(!0),indexOf:a(!1)}},2092:(t,e,n)=>{var r=n(9974),o=n(8361),i=n(7908),a=n(7466),s=n(5417),l=[].push,u=function(t){var e=1==t,n=2==t,u=3==t,c=4==t,p=6==t,f=5==t||p;return function(d,h,m,v){for(var g,y,A=i(d),b=o(A),C=r(h,m,3),w=a(b.length),x=0,_=v||s,S=e?_(d,w):n?_(d,0):void 0;w>x;x++)if((f||x in b)&&(y=C(g=b[x],x,A),t))if(e)S[x]=y;else if(y)switch(t){case 3:return!0;case 5:return g;case 6:return x;case 2:l.call(S,g)}else if(c)return!1;return p?-1:u||c?c:S}};t.exports={forEach:u(0),map:u(1),filter:u(2),some:u(3),every:u(4),find:u(5),findIndex:u(6)}},1194:(t,e,n)=>{var r=n(7293),o=n(5112),i=n(7392),a=o("species");t.exports=function(t){return i>=51||!r((function(){var e=[];return(e.constructor={})[a]=function(){return{foo:1}},1!==e[t](Boolean).foo}))}},9341:(t,e,n)=>{"use strict";var r=n(7293);t.exports=function(t,e){var n=[][t];return!!n&&r((function(){n.call(null,e||function(){throw 1},1)}))}},9207:(t,e,n)=>{var r=n(9781),o=n(7293),i=n(6656),a=Object.defineProperty,s={},l=function(t){throw t};t.exports=function(t,e){if(i(s,t))return s[t];e||(e={});var n=[][t],u=!!i(e,"ACCESSORS")&&e.ACCESSORS,c=i(e,0)?e[0]:l,p=i(e,1)?e[1]:void 0;return s[t]=!!n&&!o((function(){if(u&&!r)return!0;var t={length:-1};u?a(t,1,{enumerable:!0,get:l}):t[1]=1,n.call(t,c,p)}))}},5417:(t,e,n)=>{var r=n(111),o=n(3157),i=n(5112)("species");t.exports=function(t,e){var n;return o(t)&&("function"!=typeof(n=t.constructor)||n!==Array&&!o(n.prototype)?r(n)&&null===(n=n[i])&&(n=void 0):n=void 0),new(void 0===n?Array:n)(0===e?0:e)}},3411:(t,e,n)=>{var r=n(9670);t.exports=function(t,e,n,o){try{return o?e(r(n)[0],n[1]):e(n)}catch(e){var i=t.return;throw void 0!==i&&r(i.call(t)),e}}},7072:(t,e,n)=>{var r=n(5112)("iterator"),o=!1;try{var i=0,a={next:function(){return{done:!!i++}},return:function(){o=!0}};a[r]=function(){return this},Array.from(a,(function(){throw 2}))}catch(t){}t.exports=function(t,e){if(!e&&!o)return!1;var n=!1;try{var i={};i[r]=function(){return{next:function(){return{done:n=!0}}}},t(i)}catch(t){}return n}},4326:t=>{var e={}.toString;t.exports=function(t){return e.call(t).slice(8,-1)}},648:(t,e,n)=>{var r=n(1694),o=n(4326),i=n(5112)("toStringTag"),a="Arguments"==o(function(){return arguments}());t.exports=r?o:function(t){var e,n,r;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=function(t,e){try{return t[e]}catch(t){}}(e=Object(t),i))?n:a?o(e):"Object"==(r=o(e))&&"function"==typeof e.callee?"Arguments":r}},5631:(t,e,n)=>{"use strict";var r=n(3070).f,o=n(30),i=n(2248),a=n(9974),s=n(5787),l=n(408),u=n(654),c=n(6340),p=n(9781),f=n(2423).fastKey,d=n(9909),h=d.set,m=d.getterFor;t.exports={getConstructor:function(t,e,n,u){var c=t((function(t,r){s(t,c,e),h(t,{type:e,index:o(null),first:void 0,last:void 0,size:0}),p||(t.size=0),null!=r&&l(r,t[u],t,n)})),d=m(e),v=function(t,e,n){var r,o,i=d(t),a=g(t,e);return a?a.value=n:(i.last=a={index:o=f(e,!0),key:e,value:n,previous:r=i.last,next:void 0,removed:!1},i.first||(i.first=a),r&&(r.next=a),p?i.size++:t.size++,"F"!==o&&(i.index[o]=a)),t},g=function(t,e){var n,r=d(t),o=f(e);if("F"!==o)return r.index[o];for(n=r.first;n;n=n.next)if(n.key==e)return n};return i(c.prototype,{clear:function(){for(var t=d(this),e=t.index,n=t.first;n;)n.removed=!0,n.previous&&(n.previous=n.previous.next=void 0),delete e[n.index],n=n.next;t.first=t.last=void 0,p?t.size=0:this.size=0},delete:function(t){var e=this,n=d(e),r=g(e,t);if(r){var o=r.next,i=r.previous;delete n.index[r.index],r.removed=!0,i&&(i.next=o),o&&(o.previous=i),n.first==r&&(n.first=o),n.last==r&&(n.last=i),p?n.size--:e.size--}return!!r},forEach:function(t){for(var e,n=d(this),r=a(t,arguments.length>1?arguments[1]:void 0,3);e=e?e.next:n.first;)for(r(e.value,e.key,this);e&&e.removed;)e=e.previous},has:function(t){return!!g(this,t)}}),i(c.prototype,n?{get:function(t){var e=g(this,t);return e&&e.value},set:function(t,e){return v(this,0===t?0:t,e)}}:{add:function(t){return v(this,t=0===t?0:t,t)}}),p&&r(c.prototype,"size",{get:function(){return d(this).size}}),c},setStrong:function(t,e,n){var r=e+" Iterator",o=m(e),i=m(r);u(t,e,(function(t,e){h(this,{type:r,target:t,state:o(t),kind:e,last:void 0})}),(function(){for(var t=i(this),e=t.kind,n=t.last;n&&n.removed;)n=n.previous;return t.target&&(t.last=n=n?n.next:t.state.first)?"keys"==e?{value:n.key,done:!1}:"values"==e?{value:n.value,done:!1}:{value:[n.key,n.value],done:!1}:(t.target=void 0,{value:void 0,done:!0})}),n?"entries":"values",!n,!0),c(e)}}},7710:(t,e,n)=>{"use strict";var r=n(2109),o=n(7854),i=n(4705),a=n(1320),s=n(2423),l=n(408),u=n(5787),c=n(111),p=n(7293),f=n(7072),d=n(8003),h=n(9587);t.exports=function(t,e,n){var m=-1!==t.indexOf("Map"),v=-1!==t.indexOf("Weak"),g=m?"set":"add",y=o[t],A=y&&y.prototype,b=y,C={},w=function(t){var e=A[t];a(A,t,"add"==t?function(t){return e.call(this,0===t?0:t),this}:"delete"==t?function(t){return!(v&&!c(t))&&e.call(this,0===t?0:t)}:"get"==t?function(t){return v&&!c(t)?void 0:e.call(this,0===t?0:t)}:"has"==t?function(t){return!(v&&!c(t))&&e.call(this,0===t?0:t)}:function(t,n){return e.call(this,0===t?0:t,n),this})};if(i(t,"function"!=typeof y||!(v||A.forEach&&!p((function(){(new y).entries().next()})))))b=n.getConstructor(e,t,m,g),s.REQUIRED=!0;else if(i(t,!0)){var x=new b,_=x[g](v?{}:-0,1)!=x,S=p((function(){x.has(1)})),k=f((function(t){new y(t)})),E=!v&&p((function(){for(var t=new y,e=5;e--;)t[g](e,e);return!t.has(-0)}));k||((b=e((function(e,n){u(e,b,t);var r=h(new y,e,b);return null!=n&&l(n,r[g],r,m),r}))).prototype=A,A.constructor=b),(S||E)&&(w("delete"),w("has"),m&&w("get")),(E||_)&&w(g),v&&A.clear&&delete A.clear}return C[t]=b,r({global:!0,forced:b!=y},C),d(b,t),v||n.setStrong(b,t,m),b}},9920:(t,e,n)=>{var r=n(6656),o=n(3887),i=n(1236),a=n(3070);t.exports=function(t,e){for(var n=o(e),s=a.f,l=i.f,u=0;u<n.length;u++){var c=n[u];r(t,c)||s(t,c,l(e,c))}}},8544:(t,e,n)=>{var r=n(7293);t.exports=!r((function(){function t(){}return t.prototype.constructor=null,Object.getPrototypeOf(new t)!==t.prototype}))},4994:(t,e,n)=>{"use strict";var r=n(3383).IteratorPrototype,o=n(30),i=n(9114),a=n(8003),s=n(7497),l=function(){return this};t.exports=function(t,e,n){var u=e+" Iterator";return t.prototype=o(r,{next:i(1,n)}),a(t,u,!1,!0),s[u]=l,t}},8880:(t,e,n)=>{var r=n(9781),o=n(3070),i=n(9114);t.exports=r?function(t,e,n){return o.f(t,e,i(1,n))}:function(t,e,n){return t[e]=n,t}},9114:t=>{t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},6135:(t,e,n)=>{"use strict";var r=n(7593),o=n(3070),i=n(9114);t.exports=function(t,e,n){var a=r(e);a in t?o.f(t,a,i(0,n)):t[a]=n}},654:(t,e,n)=>{"use strict";var r=n(2109),o=n(4994),i=n(9518),a=n(7674),s=n(8003),l=n(8880),u=n(1320),c=n(5112),p=n(1913),f=n(7497),d=n(3383),h=d.IteratorPrototype,m=d.BUGGY_SAFARI_ITERATORS,v=c("iterator"),g="keys",y="values",A="entries",b=function(){return this};t.exports=function(t,e,n,c,d,C,w){o(n,e,c);var x,_,S,k=function(t){if(t===d&&B)return B;if(!m&&t in j)return j[t];switch(t){case g:case y:case A:return function(){return new n(this,t)}}return function(){return new n(this)}},E=e+" Iterator",O=!1,j=t.prototype,T=j[v]||j["@@iterator"]||d&&j[d],B=!m&&T||k(d),N="Array"==e&&j.entries||T;if(N&&(x=i(N.call(new t)),h!==Object.prototype&&x.next&&(p||i(x)===h||(a?a(x,h):"function"!=typeof x[v]&&l(x,v,b)),s(x,E,!0,!0),p&&(f[E]=b))),d==y&&T&&T.name!==y&&(O=!0,B=function(){return T.call(this)}),p&&!w||j[v]===B||l(j,v,B),f[e]=B,d)if(_={values:k(y),keys:C?B:k(g),entries:k(A)},w)for(S in _)(m||O||!(S in j))&&u(j,S,_[S]);else r({target:e,proto:!0,forced:m||O},_);return _}},9781:(t,e,n)=>{var r=n(7293);t.exports=!r((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]}))},317:(t,e,n)=>{var r=n(7854),o=n(111),i=r.document,a=o(i)&&o(i.createElement);t.exports=function(t){return a?i.createElement(t):{}}},8324:t=>{t.exports={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0}},8113:(t,e,n)=>{var r=n(5005);t.exports=r("navigator","userAgent")||""},7392:(t,e,n)=>{var r,o,i=n(7854),a=n(8113),s=i.process,l=s&&s.versions,u=l&&l.v8;u?o=(r=u.split("."))[0]+r[1]:a&&(!(r=a.match(/Edge\/(\d+)/))||r[1]>=74)&&(r=a.match(/Chrome\/(\d+)/))&&(o=r[1]),t.exports=o&&+o},748:t=>{t.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},2109:(t,e,n)=>{var r=n(7854),o=n(1236).f,i=n(8880),a=n(1320),s=n(3505),l=n(9920),u=n(4705);t.exports=function(t,e){var n,c,p,f,d,h=t.target,m=t.global,v=t.stat;if(n=m?r:v?r[h]||s(h,{}):(r[h]||{}).prototype)for(c in e){if(f=e[c],p=t.noTargetGet?(d=o(n,c))&&d.value:n[c],!u(m?c:h+(v?".":"#")+c,t.forced)&&void 0!==p){if(typeof f==typeof p)continue;l(f,p)}(t.sham||p&&p.sham)&&i(f,"sham",!0),a(n,c,f,t)}}},7293:t=>{t.exports=function(t){try{return!!t()}catch(t){return!0}}},7007:(t,e,n)=>{"use strict";n(4916);var r=n(1320),o=n(7293),i=n(5112),a=n(2261),s=n(8880),l=i("species"),u=!o((function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:"7"},t},"7"!=="".replace(t,"$<a>")})),c="$0"==="a".replace(/./,"$0"),p=i("replace"),f=!!/./[p]&&""===/./[p]("a","$0"),d=!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]}));t.exports=function(t,e,n,p){var h=i(t),m=!o((function(){var e={};return e[h]=function(){return 7},7!=""[t](e)})),v=m&&!o((function(){var e=!1,n=/a/;return"split"===t&&((n={}).constructor={},n.constructor[l]=function(){return n},n.flags="",n[h]=/./[h]),n.exec=function(){return e=!0,null},n[h](""),!e}));if(!m||!v||"replace"===t&&(!u||!c||f)||"split"===t&&!d){var g=/./[h],y=n(h,""[t],(function(t,e,n,r,o){return e.exec===a?m&&!o?{done:!0,value:g.call(e,n,r)}:{done:!0,value:t.call(n,e,r)}:{done:!1}}),{REPLACE_KEEPS_$0:c,REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE:f}),A=y[0],b=y[1];r(String.prototype,t,A),r(RegExp.prototype,h,2==e?function(t,e){return b.call(t,this,e)}:function(t){return b.call(t,this)})}p&&s(RegExp.prototype[h],"sham",!0)}},6677:(t,e,n)=>{var r=n(7293);t.exports=!r((function(){return Object.isExtensible(Object.preventExtensions({}))}))},9974:(t,e,n)=>{var r=n(3099);t.exports=function(t,e,n){if(r(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)}}},5005:(t,e,n)=>{var r=n(857),o=n(7854),i=function(t){return"function"==typeof t?t:void 0};t.exports=function(t,e){return arguments.length<2?i(r[t])||i(o[t]):r[t]&&r[t][e]||o[t]&&o[t][e]}},1246:(t,e,n)=>{var r=n(648),o=n(7497),i=n(5112)("iterator");t.exports=function(t){if(null!=t)return t[i]||t["@@iterator"]||o[r(t)]}},7854:(t,e,n)=>{var r=function(t){return t&&t.Math==Math&&t};t.exports=r("object"==typeof globalThis&&globalThis)||r("object"==typeof window&&window)||r("object"==typeof self&&self)||r("object"==typeof n.g&&n.g)||Function("return this")()},6656:t=>{var e={}.hasOwnProperty;t.exports=function(t,n){return e.call(t,n)}},3501:t=>{t.exports={}},490:(t,e,n)=>{var r=n(5005);t.exports=r("document","documentElement")},4664:(t,e,n)=>{var r=n(9781),o=n(7293),i=n(317);t.exports=!r&&!o((function(){return 7!=Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},8361:(t,e,n)=>{var r=n(7293),o=n(4326),i="".split;t.exports=r((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==o(t)?i.call(t,""):Object(t)}:Object},9587:(t,e,n)=>{var r=n(111),o=n(7674);t.exports=function(t,e,n){var i,a;return o&&"function"==typeof(i=e.constructor)&&i!==n&&r(a=i.prototype)&&a!==n.prototype&&o(t,a),t}},2788:(t,e,n)=>{var r=n(5465),o=Function.toString;"function"!=typeof r.inspectSource&&(r.inspectSource=function(t){return o.call(t)}),t.exports=r.inspectSource},2423:(t,e,n)=>{var r=n(3501),o=n(111),i=n(6656),a=n(3070).f,s=n(9711),l=n(6677),u=s("meta"),c=0,p=Object.isExtensible||function(){return!0},f=function(t){a(t,u,{value:{objectID:"O"+ ++c,weakData:{}}})},d=t.exports={REQUIRED:!1,fastKey:function(t,e){if(!o(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!i(t,u)){if(!p(t))return"F";if(!e)return"E";f(t)}return t[u].objectID},getWeakData:function(t,e){if(!i(t,u)){if(!p(t))return!0;if(!e)return!1;f(t)}return t[u].weakData},onFreeze:function(t){return l&&d.REQUIRED&&p(t)&&!i(t,u)&&f(t),t}};r[u]=!0},9909:(t,e,n)=>{var r,o,i,a=n(8536),s=n(7854),l=n(111),u=n(8880),c=n(6656),p=n(6200),f=n(3501),d=s.WeakMap;if(a){var h=new d,m=h.get,v=h.has,g=h.set;r=function(t,e){return g.call(h,t,e),e},o=function(t){return m.call(h,t)||{}},i=function(t){return v.call(h,t)}}else{var y=p("state");f[y]=!0,r=function(t,e){return u(t,y,e),e},o=function(t){return c(t,y)?t[y]:{}},i=function(t){return c(t,y)}}t.exports={set:r,get:o,has:i,enforce:function(t){return i(t)?o(t):r(t,{})},getterFor:function(t){return function(e){var n;if(!l(e)||(n=o(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return n}}}},7659:(t,e,n)=>{var r=n(5112),o=n(7497),i=r("iterator"),a=Array.prototype;t.exports=function(t){return void 0!==t&&(o.Array===t||a[i]===t)}},3157:(t,e,n)=>{var r=n(4326);t.exports=Array.isArray||function(t){return"Array"==r(t)}},4705:(t,e,n)=>{var r=n(7293),o=/#|\.prototype\./,i=function(t,e){var n=s[a(t)];return n==u||n!=l&&("function"==typeof e?r(e):!!e)},a=i.normalize=function(t){return String(t).replace(o,".").toLowerCase()},s=i.data={},l=i.NATIVE="N",u=i.POLYFILL="P";t.exports=i},111:t=>{t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},1913:t=>{t.exports=!1},408:(t,e,n)=>{var r=n(9670),o=n(7659),i=n(7466),a=n(9974),s=n(1246),l=n(3411),u=function(t,e){this.stopped=t,this.result=e};(t.exports=function(t,e,n,c,p){var f,d,h,m,v,g,y,A=a(e,n,c?2:1);if(p)f=t;else{if("function"!=typeof(d=s(t)))throw TypeError("Target is not iterable");if(o(d)){for(h=0,m=i(t.length);m>h;h++)if((v=c?A(r(y=t[h])[0],y[1]):A(t[h]))&&v instanceof u)return v;return new u(!1)}f=d.call(t)}for(g=f.next;!(y=g.call(f)).done;)if("object"==typeof(v=l(f,A,y.value,c))&&v&&v instanceof u)return v;return new u(!1)}).stop=function(t){return new u(!0,t)}},3383:(t,e,n)=>{"use strict";var r,o,i,a=n(9518),s=n(8880),l=n(6656),u=n(5112),c=n(1913),p=u("iterator"),f=!1;[].keys&&("next"in(i=[].keys())?(o=a(a(i)))!==Object.prototype&&(r=o):f=!0),null==r&&(r={}),c||l(r,p)||s(r,p,(function(){return this})),t.exports={IteratorPrototype:r,BUGGY_SAFARI_ITERATORS:f}},7497:t=>{t.exports={}},133:(t,e,n)=>{var r=n(7293);t.exports=!!Object.getOwnPropertySymbols&&!r((function(){return!String(Symbol())}))},8536:(t,e,n)=>{var r=n(7854),o=n(2788),i=r.WeakMap;t.exports="function"==typeof i&&/native code/.test(o(i))},1574:(t,e,n)=>{"use strict";var r=n(9781),o=n(7293),i=n(1956),a=n(5181),s=n(5296),l=n(7908),u=n(8361),c=Object.assign,p=Object.defineProperty;t.exports=!c||o((function(){if(r&&1!==c({b:1},c(p({},"a",{enumerable:!0,get:function(){p(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var t={},e={},n=Symbol(),o="abcdefghijklmnopqrst";return t[n]=7,o.split("").forEach((function(t){e[t]=t})),7!=c({},t)[n]||i(c({},e)).join("")!=o}))?function(t,e){for(var n=l(t),o=arguments.length,c=1,p=a.f,f=s.f;o>c;)for(var d,h=u(arguments[c++]),m=p?i(h).concat(p(h)):i(h),v=m.length,g=0;v>g;)d=m[g++],r&&!f.call(h,d)||(n[d]=h[d]);return n}:c},30:(t,e,n)=>{var r,o=n(9670),i=n(6048),a=n(748),s=n(3501),l=n(490),u=n(317),c=n(6200),p=c("IE_PROTO"),f=function(){},d=function(t){return"<script>"+t+"</"+"script>"},h=function(){try{r=document.domain&&new ActiveXObject("htmlfile")}catch(t){}var t,e;h=r?function(t){t.write(d("")),t.close();var e=t.parentWindow.Object;return t=null,e}(r):((e=u("iframe")).style.display="none",l.appendChild(e),e.src=String("javascript:"),(t=e.contentWindow.document).open(),t.write(d("document.F=Object")),t.close(),t.F);for(var n=a.length;n--;)delete h.prototype[a[n]];return h()};s[p]=!0,t.exports=Object.create||function(t,e){var n;return null!==t?(f.prototype=o(t),n=new f,f.prototype=null,n[p]=t):n=h(),void 0===e?n:i(n,e)}},6048:(t,e,n)=>{var r=n(9781),o=n(3070),i=n(9670),a=n(1956);t.exports=r?Object.defineProperties:function(t,e){i(t);for(var n,r=a(e),s=r.length,l=0;s>l;)o.f(t,n=r[l++],e[n]);return t}},3070:(t,e,n)=>{var r=n(9781),o=n(4664),i=n(9670),a=n(7593),s=Object.defineProperty;e.f=r?s:function(t,e,n){if(i(t),e=a(e,!0),i(n),o)try{return s(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}},1236:(t,e,n)=>{var r=n(9781),o=n(5296),i=n(9114),a=n(5656),s=n(7593),l=n(6656),u=n(4664),c=Object.getOwnPropertyDescriptor;e.f=r?c:function(t,e){if(t=a(t),e=s(e,!0),u)try{return c(t,e)}catch(t){}if(l(t,e))return i(!o.f.call(t,e),t[e])}},8006:(t,e,n)=>{var r=n(6324),o=n(748).concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return r(t,o)}},5181:(t,e)=>{e.f=Object.getOwnPropertySymbols},9518:(t,e,n)=>{var r=n(6656),o=n(7908),i=n(6200),a=n(8544),s=i("IE_PROTO"),l=Object.prototype;t.exports=a?Object.getPrototypeOf:function(t){return t=o(t),r(t,s)?t[s]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?l:null}},6324:(t,e,n)=>{var r=n(6656),o=n(5656),i=n(1318).indexOf,a=n(3501);t.exports=function(t,e){var n,s=o(t),l=0,u=[];for(n in s)!r(a,n)&&r(s,n)&&u.push(n);for(;e.length>l;)r(s,n=e[l++])&&(~i(u,n)||u.push(n));return u}},1956:(t,e,n)=>{var r=n(6324),o=n(748);t.exports=Object.keys||function(t){return r(t,o)}},5296:(t,e)=>{"use strict";var n={}.propertyIsEnumerable,r=Object.getOwnPropertyDescriptor,o=r&&!n.call({1:2},1);e.f=o?function(t){var e=r(this,t);return!!e&&e.enumerable}:n},7674:(t,e,n)=>{var r=n(9670),o=n(6077);t.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var t,e=!1,n={};try{(t=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set).call(n,[]),e=n instanceof Array}catch(t){}return function(n,i){return r(n),o(i),e?t.call(n,i):n.__proto__=i,n}}():void 0)},288:(t,e,n)=>{"use strict";var r=n(1694),o=n(648);t.exports=r?{}.toString:function(){return"[object "+o(this)+"]"}},3887:(t,e,n)=>{var r=n(5005),o=n(8006),i=n(5181),a=n(9670);t.exports=r("Reflect","ownKeys")||function(t){var e=o.f(a(t)),n=i.f;return n?e.concat(n(t)):e}},857:(t,e,n)=>{var r=n(7854);t.exports=r},2248:(t,e,n)=>{var r=n(1320);t.exports=function(t,e,n){for(var o in e)r(t,o,e[o],n);return t}},1320:(t,e,n)=>{var r=n(7854),o=n(8880),i=n(6656),a=n(3505),s=n(2788),l=n(9909),u=l.get,c=l.enforce,p=String(String).split("String");(t.exports=function(t,e,n,s){var l=!!s&&!!s.unsafe,u=!!s&&!!s.enumerable,f=!!s&&!!s.noTargetGet;"function"==typeof n&&("string"!=typeof e||i(n,"name")||o(n,"name",e),c(n).source=p.join("string"==typeof e?e:"")),t!==r?(l?!f&&t[e]&&(u=!0):delete t[e],u?t[e]=n:o(t,e,n)):u?t[e]=n:a(e,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&u(this).source||s(this)}))},7651:(t,e,n)=>{var r=n(4326),o=n(2261);t.exports=function(t,e){var n=t.exec;if("function"==typeof n){var i=n.call(t,e);if("object"!=typeof i)throw TypeError("RegExp exec method returned something other than an Object or null");return i}if("RegExp"!==r(t))throw TypeError("RegExp#exec called on incompatible receiver");return o.call(t,e)}},2261:(t,e,n)=>{"use strict";var r,o,i=n(7066),a=n(2999),s=RegExp.prototype.exec,l=String.prototype.replace,u=s,c=(r=/a/,o=/b*/g,s.call(r,"a"),s.call(o,"a"),0!==r.lastIndex||0!==o.lastIndex),p=a.UNSUPPORTED_Y||a.BROKEN_CARET,f=void 0!==/()??/.exec("")[1];(c||f||p)&&(u=function(t){var e,n,r,o,a=this,u=p&&a.sticky,d=i.call(a),h=a.source,m=0,v=t;return u&&(-1===(d=d.replace("y","")).indexOf("g")&&(d+="g"),v=String(t).slice(a.lastIndex),a.lastIndex>0&&(!a.multiline||a.multiline&&"\n"!==t[a.lastIndex-1])&&(h="(?: "+h+")",v=" "+v,m++),n=new RegExp("^(?:"+h+")",d)),f&&(n=new RegExp("^"+h+"$(?!\\s)",d)),c&&(e=a.lastIndex),r=s.call(u?n:a,v),u?r?(r.input=r.input.slice(m),r[0]=r[0].slice(m),r.index=a.lastIndex,a.lastIndex+=r[0].length):a.lastIndex=0:c&&r&&(a.lastIndex=a.global?r.index+r[0].length:e),f&&r&&r.length>1&&l.call(r[0],n,(function(){for(o=1;o<arguments.length-2;o++)void 0===arguments[o]&&(r[o]=void 0)})),r}),t.exports=u},7066:(t,e,n)=>{"use strict";var r=n(9670);t.exports=function(){var t=r(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}},2999:(t,e,n)=>{"use strict";var r=n(7293);function o(t,e){return RegExp(t,e)}e.UNSUPPORTED_Y=r((function(){var t=o("a","y");return t.lastIndex=2,null!=t.exec("abcd")})),e.BROKEN_CARET=r((function(){var t=o("^r","gy");return t.lastIndex=2,null!=t.exec("str")}))},4488:t=>{t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},3505:(t,e,n)=>{var r=n(7854),o=n(8880);t.exports=function(t,e){try{o(r,t,e)}catch(n){r[t]=e}return e}},6340:(t,e,n)=>{"use strict";var r=n(5005),o=n(3070),i=n(5112),a=n(9781),s=i("species");t.exports=function(t){var e=r(t),n=o.f;a&&e&&!e[s]&&n(e,s,{configurable:!0,get:function(){return this}})}},8003:(t,e,n)=>{var r=n(3070).f,o=n(6656),i=n(5112)("toStringTag");t.exports=function(t,e,n){t&&!o(t=n?t:t.prototype,i)&&r(t,i,{configurable:!0,value:e})}},6200:(t,e,n)=>{var r=n(2309),o=n(9711),i=r("keys");t.exports=function(t){return i[t]||(i[t]=o(t))}},5465:(t,e,n)=>{var r=n(7854),o=n(3505),i="__core-js_shared__",a=r[i]||o(i,{});t.exports=a},2309:(t,e,n)=>{var r=n(1913),o=n(5465);(t.exports=function(t,e){return o[t]||(o[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.6.5",mode:r?"pure":"global",copyright:"© 2020 Denis Pushkarev (zloirock.ru)"})},8710:(t,e,n)=>{var r=n(9958),o=n(4488),i=function(t){return function(e,n){var i,a,s=String(o(e)),l=r(n),u=s.length;return l<0||l>=u?t?"":void 0:(i=s.charCodeAt(l))<55296||i>56319||l+1===u||(a=s.charCodeAt(l+1))<56320||a>57343?t?s.charAt(l):i:t?s.slice(l,l+2):a-56320+(i-55296<<10)+65536}};t.exports={codeAt:i(!1),charAt:i(!0)}},1400:(t,e,n)=>{var r=n(9958),o=Math.max,i=Math.min;t.exports=function(t,e){var n=r(t);return n<0?o(n+e,0):i(n,e)}},5656:(t,e,n)=>{var r=n(8361),o=n(4488);t.exports=function(t){return r(o(t))}},9958:t=>{var e=Math.ceil,n=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?n:e)(t)}},7466:(t,e,n)=>{var r=n(9958),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},7908:(t,e,n)=>{var r=n(4488);t.exports=function(t){return Object(r(t))}},7593:(t,e,n)=>{var r=n(111);t.exports=function(t,e){if(!r(t))return t;var n,o;if(e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;if("function"==typeof(n=t.valueOf)&&!r(o=n.call(t)))return o;if(!e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;throw TypeError("Can't convert object to primitive value")}},1694:(t,e,n)=>{var r={};r[n(5112)("toStringTag")]="z",t.exports="[object z]"===String(r)},9711:t=>{var e=0,n=Math.random();t.exports=function(t){return"Symbol("+String(void 0===t?"":t)+")_"+(++e+n).toString(36)}},3307:(t,e,n)=>{var r=n(133);t.exports=r&&!Symbol.sham&&"symbol"==typeof Symbol.iterator},5112:(t,e,n)=>{var r=n(7854),o=n(2309),i=n(6656),a=n(9711),s=n(133),l=n(3307),u=o("wks"),c=r.Symbol,p=l?c:c&&c.withoutSetter||a;t.exports=function(t){return i(u,t)||(s&&i(c,t)?u[t]=c[t]:u[t]=p("Symbol."+t)),u[t]}},2222:(t,e,n)=>{"use strict";var r=n(2109),o=n(7293),i=n(3157),a=n(111),s=n(7908),l=n(7466),u=n(6135),c=n(5417),p=n(1194),f=n(5112),d=n(7392),h=f("isConcatSpreadable"),m=9007199254740991,v="Maximum allowed index exceeded",g=d>=51||!o((function(){var t=[];return t[h]=!1,t.concat()[0]!==t})),y=p("concat"),A=function(t){if(!a(t))return!1;var e=t[h];return void 0!==e?!!e:i(t)};r({target:"Array",proto:!0,forced:!g||!y},{concat:function(t){var e,n,r,o,i,a=s(this),p=c(a,0),f=0;for(e=-1,r=arguments.length;e<r;e++)if(A(i=-1===e?a:arguments[e])){if(f+(o=l(i.length))>m)throw TypeError(v);for(n=0;n<o;n++,f++)n in i&&u(p,f,i[n])}else{if(f>=m)throw TypeError(v);u(p,f++,i)}return p.length=f,p}})},7327:(t,e,n)=>{"use strict";var r=n(2109),o=n(2092).filter,i=n(1194),a=n(9207),s=i("filter"),l=a("filter");r({target:"Array",proto:!0,forced:!s||!l},{filter:function(t){return o(this,t,arguments.length>1?arguments[1]:void 0)}})},9554:(t,e,n)=>{"use strict";var r=n(2109),o=n(8533);r({target:"Array",proto:!0,forced:[].forEach!=o},{forEach:o})},2772:(t,e,n)=>{"use strict";var r=n(2109),o=n(1318).indexOf,i=n(9341),a=n(9207),s=[].indexOf,l=!!s&&1/[1].indexOf(1,-0)<0,u=i("indexOf"),c=a("indexOf",{ACCESSORS:!0,1:0});r({target:"Array",proto:!0,forced:l||!u||!c},{indexOf:function(t){return l?s.apply(this,arguments)||0:o(this,t,arguments.length>1?arguments[1]:void 0)}})},6992:(t,e,n)=>{"use strict";var r=n(5656),o=n(1223),i=n(7497),a=n(9909),s=n(654),l="Array Iterator",u=a.set,c=a.getterFor(l);t.exports=s(Array,"Array",(function(t,e){u(this,{type:l,target:r(t),index:0,kind:e})}),(function(){var t=c(this),e=t.target,n=t.kind,r=t.index++;return!e||r>=e.length?(t.target=void 0,{value:void 0,done:!0}):"keys"==n?{value:r,done:!1}:"values"==n?{value:e[r],done:!1}:{value:[r,e[r]],done:!1}}),"values"),i.Arguments=i.Array,o("keys"),o("values"),o("entries")},1532:(t,e,n)=>{"use strict";var r=n(7710),o=n(5631);t.exports=r("Map",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),o)},9601:(t,e,n)=>{var r=n(2109),o=n(1574);r({target:"Object",stat:!0,forced:Object.assign!==o},{assign:o})},1539:(t,e,n)=>{var r=n(1694),o=n(1320),i=n(288);r||o(Object.prototype,"toString",i,{unsafe:!0})},4916:(t,e,n)=>{"use strict";var r=n(2109),o=n(2261);r({target:"RegExp",proto:!0,forced:/./.exec!==o},{exec:o})},9714:(t,e,n)=>{"use strict";var r=n(1320),o=n(9670),i=n(7293),a=n(7066),s="toString",l=RegExp.prototype,u=l.toString,c=i((function(){return"/a/b"!=u.call({source:"a",flags:"b"})})),p=u.name!=s;(c||p)&&r(RegExp.prototype,s,(function(){var t=o(this),e=String(t.source),n=t.flags;return"/"+e+"/"+String(void 0===n&&t instanceof RegExp&&!("flags"in l)?a.call(t):n)}),{unsafe:!0})},8783:(t,e,n)=>{"use strict";var r=n(8710).charAt,o=n(9909),i=n(654),a="String Iterator",s=o.set,l=o.getterFor(a);i(String,"String",(function(t){s(this,{type:a,string:String(t),index:0})}),(function(){var t,e=l(this),n=e.string,o=e.index;return o>=n.length?{value:void 0,done:!0}:(t=r(n,o),e.index+=t.length,{value:t,done:!1})}))},5306:(t,e,n)=>{"use strict";var r=n(7007),o=n(9670),i=n(7908),a=n(7466),s=n(9958),l=n(4488),u=n(1530),c=n(7651),p=Math.max,f=Math.min,d=Math.floor,h=/\$([$&'`]|\d\d?|<[^>]*>)/g,m=/\$([$&'`]|\d\d?)/g;r("replace",2,(function(t,e,n,r){var v=r.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE,g=r.REPLACE_KEEPS_$0,y=v?"$":"$0";return[function(n,r){var o=l(this),i=null==n?void 0:n[t];return void 0!==i?i.call(n,o,r):e.call(String(o),n,r)},function(t,r){if(!v&&g||"string"==typeof r&&-1===r.indexOf(y)){var i=n(e,t,this,r);if(i.done)return i.value}var l=o(t),d=String(this),h="function"==typeof r;h||(r=String(r));var m=l.global;if(m){var b=l.unicode;l.lastIndex=0}for(var C=[];;){var w=c(l,d);if(null===w)break;if(C.push(w),!m)break;""===String(w[0])&&(l.lastIndex=u(d,a(l.lastIndex),b))}for(var x,_="",S=0,k=0;k<C.length;k++){w=C[k];for(var E=String(w[0]),O=p(f(s(w.index),d.length),0),j=[],T=1;T<w.length;T++)j.push(void 0===(x=w[T])?x:String(x));var B=w.groups;if(h){var N=[E].concat(j,O,d);void 0!==B&&N.push(B);var P=String(r.apply(void 0,N))}else P=A(E,d,O,j,B,r);O>=S&&(_+=d.slice(S,O)+P,S=O+E.length)}return _+d.slice(S)}];function A(t,n,r,o,a,s){var l=r+t.length,u=o.length,c=m;return void 0!==a&&(a=i(a),c=h),e.call(s,c,(function(e,i){var s;switch(i.charAt(0)){case"$":return"$";case"&":return t;case"`":return n.slice(0,r);case"'":return n.slice(l);case"<":s=a[i.slice(1,-1)];break;default:var c=+i;if(0===c)return e;if(c>u){var p=d(c/10);return 0===p?e:p<=u?void 0===o[p-1]?i.charAt(1):o[p-1]+i.charAt(1):e}s=o[c-1]}return void 0===s?"":s}))}}))},4747:(t,e,n)=>{var r=n(7854),o=n(8324),i=n(8533),a=n(8880);for(var s in o){var l=r[s],u=l&&l.prototype;if(u&&u.forEach!==i)try{a(u,"forEach",i)}catch(t){u.forEach=i}}},3948:(t,e,n)=>{var r=n(7854),o=n(8324),i=n(6992),a=n(8880),s=n(5112),l=s("iterator"),u=s("toStringTag"),c=i.values;for(var p in o){var f=r[p],d=f&&f.prototype;if(d){if(d[l]!==c)try{a(d,l,c)}catch(t){d[l]=c}if(d[u]||a(d,u,p),o[p])for(var h in i)if(d[h]!==i[h])try{a(d,h,i[h])}catch(t){d[h]=i[h]}}}},6060:(t,e,n)=>{"use strict";n.d(e,{Z:()=>s});var r=n(7537),o=n.n(r),i=n(3645),a=n.n(i)()(o());a.push([t.id,"#firstrunwizard .page{display:flex;flex-direction:row;flex-wrap:wrap;margin:auto}#firstrunwizard .page h3{margin:10px 0 10px;line-height:120%;padding:0}#firstrunwizard .page .image{padding:20px;max-width:calc(50% - 40px);flex-grow:1}#firstrunwizard .page .image img{width:100%}#firstrunwizard .page .content{padding:20px;width:100%}#firstrunwizard .page p{margin-bottom:20px}#firstrunwizard .page .description-block:first-child{margin-bottom:20px}#firstrunwizard .page .description{margin:20px;width:auto;flex-grow:1;max-width:calc(50% - 40px)}#firstrunwizard .page ul{margin:10px}#firstrunwizard .page ul li{margin-left:20px;margin-bottom:10px;list-style:circle outside}#firstrunwizard .page a:not(.button):hover,#firstrunwizard .page a:not(.button):focus{text-decoration:underline}#firstrunwizard .page .button{display:inline-block}#firstrunwizard .page .button img{width:16px;height:16px;opacity:.5;margin-top:-3px;vertical-align:middle}#firstrunwizard .content-clients{width:100%;text-align:center}#firstrunwizard .content-clients a{text-decoration:none;display:inline-block}#firstrunwizard .content-clients .clientslinks .appsmall{height:32px;width:32px;position:relative;opacity:.5;vertical-align:middle}#firstrunwizard .content-clients .clientslinks .button{display:inline-block;padding:8px;font-weight:normal;font-size:14px}#firstrunwizard .content-final h3{background-position:0;background-size:16px 16px;padding-left:26px;opacity:.7}#firstrunwizard p a{font-weight:bold;color:var(--color-primary)}#firstrunwizard p a:hover,#firstrunwizard p a:focus{color:var(color-text-light)}#firstrunwizard .footnote{margin-top:40px}#firstrunwizard .modal-wrapper .icon-next{background-color:var(--color-primary);color:var(--color-primary-text);box-shadow:0 2px 8px rgba(0,0,0,.33);left:22px}#firstrunwizard .modal-wrapper .icon-previous{background-color:var(--color-primary-light);color:var(--color-primary-light-text);box-shadow:0 2px 8px rgba(0,0,0,.33);left:22px}.clientslinks{margin-top:20px;margin-bottom:20px}#wizard-values{list-style-type:none;display:flex;flex-wrap:wrap;margin:0}#wizard-values li{display:block;min-width:250px;width:33%;flex-grow:1;margin:20px 0 20px 0}#wizard-values li span{opacity:.7;display:block;height:50px;width:50px;background-size:40px;margin:auto}#wizard-values li h3{margin:10px 0 10px 0;font-size:130%;text-align:center}.details-link{text-align:center}@media only screen and (max-width: 680px){#firstrunwizard .firstrunwizard-header div.logo{background-size:120px}#firstrunwizard h2{font-size:20px}#firstrunwizard .page>div{max-width:100% !important;width:100%}#firstrunwizard .page #wizard-values li{min-width:100%;overflow:hidden;display:flex}#firstrunwizard .page #wizard-values li span{width:44px !important;padding-right:20px;flex-grow:0}#firstrunwizard .page #wizard-values li h3{font-size:12px;text-align:left;flex-grow:1}#firstrunwizard .page.content-final{padding-bottom:50px}.modal-mask .modal-wrapper .next,.prev{top:220px;align-items:start !important}}","",{version:3,sources:["webpack://./src/App.vue"],names:[],mappings:"AA4CC,sBACC,YAAA,CACA,kBAAA,CACA,cAAA,CACA,WAAA,CAEA,yBACC,kBAAA,CACA,gBAAA,CACA,SAAA,CAED,6BACC,YAAA,CACA,0BAAA,CACA,WAAA,CACA,iCACC,UAAA,CAGF,+BACC,YAAA,CACA,UAAA,CAED,wBACC,kBAAA,CAED,qDACC,kBAAA,CAED,mCACC,WAAA,CACA,UAAA,CACA,WAAA,CACA,0BAAA,CAED,yBACC,WAAA,CACA,4BACC,gBAAA,CACA,kBAAA,CACA,yBAAA,CAID,sFAEC,yBAAA,CAGF,8BACC,oBAAA,CAEA,kCACC,UAAA,CACA,WAAA,CACA,UAAA,CACA,eAAA,CACA,qBAAA,CAKH,iCACC,UAAA,CACA,iBAAA,CACA,mCACC,oBAAA,CACA,oBAAA,CAED,yDACC,WAAA,CACA,UAAA,CACA,iBAAA,CACA,UAAA,CACA,qBAAA,CAED,uDACC,oBAAA,CACA,WAAA,CACA,kBAAA,CACA,cAAA,CAID,kCACC,qBAAA,CACA,yBAAA,CACA,iBAAA,CACA,UAAA,CAGF,oBACC,gBAAA,CACA,0BAAA,CACA,oDAEC,2BAAA,CAIF,0BACC,eAAA,CAKA,0CACC,qCAAA,CACA,+BAAA,CACA,oCAAA,CACA,SAAA,CAGD,8CACC,2CAAA,CACA,qCAAA,CACA,oCAAA,CACA,SAAA,CAKH,cACC,eAAA,CACA,kBAAA,CAGD,eACC,oBAAA,CACA,YAAA,CACA,cAAA,CACA,QAAA,CACA,kBACC,aAAA,CACA,eAAA,CACA,SAAA,CACA,WAAA,CACA,oBAAA,CACA,uBACC,UAAA,CACA,aAAA,CACA,WAAA,CACA,UAAA,CACA,oBAAA,CACA,WAAA,CAED,qBACC,oBAAA,CACA,cAAA,CACA,iBAAA,CAKH,cACC,iBAAA,CAGD,0CAEE,gDACC,qBAAA,CAED,mBACC,cAAA,CAED,0BACC,yBAAA,CACA,UAAA,CAGA,wCACC,cAAA,CACA,eAAA,CACA,YAAA,CACA,6CACC,qBAAA,CACA,kBAAA,CACA,WAAA,CAED,2CACC,cAAA,CACA,eAAA,CACA,WAAA,CAIF,oCACC,mBAAA,CAKH,uCACC,SAAA,CACA,4BAAA,CAAA",sourcesContent:["\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n/* Page styling needs to be unscoped, since we load it separately from the server */\n#firstrunwizard {\n\n\t.page {\n\t\tdisplay: flex;\n\t\tflex-direction: row;\n\t\tflex-wrap: wrap;\n\t\tmargin: auto;\n\n\t\th3 {\n\t\t\tmargin: 10px 0 10px;\n\t\t\tline-height: 120%;\n\t\t\tpadding: 0;\n\t\t}\n\t\t.image {\n\t\t\tpadding: 20px;\n\t\t\tmax-width: calc(50% - 40px);\n\t\t\tflex-grow: 1;\n\t\t\timg {\n\t\t\t\twidth: 100%;\n\t\t\t}\n\t\t}\n\t\t.content {\n\t\t\tpadding: 20px;\n\t\t\twidth: 100%;\n\t\t}\n\t\tp {\n\t\t\tmargin-bottom: 20px;\n\t\t}\n\t\t.description-block:first-child {\n\t\t\tmargin-bottom: 20px;\n\t\t}\n\t\t.description {\n\t\t\tmargin: 20px;\n\t\t\twidth: auto;\n\t\t\tflex-grow: 1;\n\t\t\tmax-width: calc(50% - 40px);\n\t\t}\n\t\tul {\n\t\t\tmargin: 10px;\n\t\t\tli {\n\t\t\t\tmargin-left: 20px;\n\t\t\t\tmargin-bottom: 10px;\n\t\t\t\tlist-style: circle outside;\n\t\t\t}\n\t\t}\n\t\ta:not(.button) {\n\t\t\t&:hover,\n\t\t\t&:focus {\n\t\t\t\ttext-decoration: underline;\n\t\t\t}\n\t\t}\n\t\t.button {\n\t\t\tdisplay: inline-block;\n\n\t\t\timg {\n\t\t\t\twidth: 16px;\n\t\t\t\theight: 16px;\n\t\t\t\topacity: .5;\n\t\t\t\tmargin-top: -3px;\n\t\t\t\tvertical-align: middle;\n\t\t\t}\n\t\t}\n\t}\n\n\t.content-clients {\n\t\twidth: 100%;\n\t\ttext-align: center;\n\t\ta {\n\t\t\ttext-decoration: none;\n\t\t\tdisplay: inline-block;\n\t\t}\n\t\t.clientslinks .appsmall {\n\t\t\theight: 32px;\n\t\t\twidth: 32px;\n\t\t\tposition: relative;\n\t\t\topacity: .5;\n\t\t\tvertical-align: middle;\n\t\t}\n\t\t.clientslinks .button {\n\t\t\tdisplay: inline-block;\n\t\t\tpadding: 8px;\n\t\t\tfont-weight: normal;\n\t\t\tfont-size: 14px;\n\t\t}\n\t}\n\t.content-final {\n\t\th3 {\n\t\t\tbackground-position: 0;\n\t\t\tbackground-size: 16px 16px;\n\t\t\tpadding-left: 26px;\n\t\t\topacity: .7;\n\t\t}\n\t}\n\tp a {\n\t\tfont-weight: bold;\n\t\tcolor: var(--color-primary);\n\t\t&:hover,\n\t\t&:focus {\n\t\t\tcolor: var(color-text-light);\n\t\t}\n\t}\n\n\t.footnote {\n\t\tmargin-top: 40px;\n\t}\n\n\t// primary on next button\n\t.modal-wrapper {\n\t\t.icon-next {\n\t\t\tbackground-color: var(--color-primary);\n\t\t\tcolor: var(--color-primary-text);\n\t\t\tbox-shadow: 0 2px 8px rgba(0, 0, 0, .33);\n\t\t\tleft: 22px;\n\t\t}\n\n\t\t.icon-previous {\n\t\t\tbackground-color: var(--color-primary-light);\n\t\t\tcolor: var(--color-primary-light-text);\n\t\t\tbox-shadow: 0 2px 8px rgba(0, 0, 0, .33);\n\t\t\tleft: 22px;\n\t\t}\n\t}\n}\n\n.clientslinks {\n\tmargin-top: 20px;\n\tmargin-bottom: 20px;\n}\n\n#wizard-values {\n\tlist-style-type: none;\n\tdisplay: flex;\n\tflex-wrap: wrap;\n\tmargin: 0;\n\tli {\n\t\tdisplay: block;\n\t\tmin-width: 250px;\n\t\twidth: 33%;\n\t\tflex-grow: 1;\n\t\tmargin: 20px 0 20px 0;\n\t\tspan {\n\t\t\topacity: .7;\n\t\t\tdisplay: block;\n\t\t\theight: 50px;\n\t\t\twidth: 50px;\n\t\t\tbackground-size: 40px;\n\t\t\tmargin: auto;\n\t\t}\n\t\th3 {\n\t\t\tmargin: 10px 0 10px 0;\n\t\t\tfont-size: 130%;\n\t\t\ttext-align: center;\n\t\t}\n\t}\n}\n\n.details-link {\n\ttext-align: center;\n}\n\n@media only screen and (max-width: 680px) {\n\t#firstrunwizard {\n\t\t.firstrunwizard-header div.logo {\n\t\t\tbackground-size: 120px;\n\t\t}\n\t\th2 {\n\t\t\tfont-size: 20px;\n\t\t}\n\t\t.page > div {\n\t\t\tmax-width: 100% !important;\n\t\t\twidth: 100%;\n\t\t}\n\t\t.page {\n\t\t\t#wizard-values li {\n\t\t\t\tmin-width: 100%;\n\t\t\t\toverflow: hidden;\n\t\t\t\tdisplay: flex;\n\t\t\t\tspan {\n\t\t\t\t\twidth: 44px !important;\n\t\t\t\t\tpadding-right: 20px;\n\t\t\t\t\tflex-grow: 0;\n\t\t\t\t}\n\t\t\t\th3 {\n\t\t\t\t\tfont-size: 12px;\n\t\t\t\t\ttext-align: left;\n\t\t\t\t\tflex-grow: 1;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t&.content-final {\n\t\t\t\tpadding-bottom: 50px;\n\t\t\t}\n\t\t}\n\t}\n\t// fix button position on mobile (so that they don't overlap with text)\n\t.modal-mask .modal-wrapper .next, .prev {\n\t\ttop: 220px;\n\t\talign-items: start !important;\n\t}\n}\n"],sourceRoot:""}]);const s=a},4165:(t,e,n)=>{"use strict";n.d(e,{Z:()=>s});var r=n(7537),o=n.n(r),i=n(3645),a=n.n(i)()(o());a.push([t.id,".modal-mask[data-v-e75b1dfa]{background-color:rgba(0,0,0,.7)}.modal-mask[data-v-e75b1dfa] .modal-wrapper{position:relative}.modal-mask[data-v-e75b1dfa] .modal-container{display:flex;flex-direction:column;position:relative}.modal-mask .modal-body[data-v-e75b1dfa]{flex-grow:1;display:flex;overflow-x:hidden;overflow-y:auto}.modal-mask .modal-body>div[data-v-e75b1dfa]{display:flex;flex-grow:1;align-items:center;justify-content:center}.modal-header[data-v-e75b1dfa]{flex-shrink:0}.modal-header .firstrunwizard-header[data-v-e75b1dfa]{padding:20px 12px;background:var(--color-primary) var(--image-login-background) no-repeat 50% 50%;background-size:cover;color:var(--color-primary-text);text-align:center}.modal-header .firstrunwizard-header .logo[data-v-e75b1dfa]{background:var(--image-logo) no-repeat center;background-size:contain;width:175px;height:100px;max-height:20vh;margin:0 auto}.modal-header .firstrunwizard-header h2[data-v-e75b1dfa]{font-size:20px;margin-top:7px;line-height:150%;color:var(--color-primary-text);font-weight:300;padding:0 0 10px}.modal-default-button[data-v-e75b1dfa]{align-self:flex-end}.modal-footer[data-v-e75b1dfa]{overflow:hidden;position:absolute;display:flex;bottom:0;right:0}.modal-footer button[data-v-e75b1dfa]{margin:10px}.next-enter-active[data-v-e75b1dfa],.next-leave-active[data-v-e75b1dfa],.previous-enter-active[data-v-e75b1dfa],.previous-leave-active[data-v-e75b1dfa]{transition:transform .1s,opacity .25s}.next-enter[data-v-e75b1dfa]{transform:translateX(50%);opacity:0}.next-leave-to[data-v-e75b1dfa]{transform:translateX(-50%);opacity:0}.previous-enter[data-v-e75b1dfa]{transform:translateX(-50%);opacity:0}.previous-leave-to[data-v-e75b1dfa]{transform:translateX(50%);opacity:0}","",{version:3,sources:["webpack://./src/App.vue"],names:[],mappings:"AAqPA,6BACC,+BAAA,CAEA,4CACC,iBAAA,CAGD,8CACC,YAAA,CACA,qBAAA,CACA,iBAAA,CAGD,yCACC,WAAA,CACA,YAAA,CACA,iBAAA,CACA,eAAA,CAEA,6CACC,YAAA,CACA,WAAA,CACA,kBAAA,CACA,sBAAA,CAKH,+BACC,aAAA,CAEA,sDACC,iBAAA,CACA,+EAAA,CACA,qBAAA,CACA,+BAAA,CACA,iBAAA,CACA,4DACC,6CAAA,CACA,uBAAA,CACA,WAAA,CACA,YAAA,CACA,eAAA,CACA,aAAA,CAED,yDACC,cAAA,CACA,cAAA,CACA,gBAAA,CACA,+BAAA,CACA,eAAA,CACA,gBAAA,CAKH,uCACC,mBAAA,CAGD,+BACC,eAAA,CACA,iBAAA,CACA,YAAA,CACA,QAAA,CACA,OAAA,CAGD,sCACC,WAAA,CAID,wJAEC,qCAAA,CAGD,6BACC,yBAAA,CACA,SAAA,CAGD,gCACC,0BAAA,CACA,SAAA,CAGD,iCACC,0BAAA,CACA,SAAA,CAGD,oCACC,yBAAA,CACA,SAAA",sourcesContent:["\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.modal-mask {\n\tbackground-color: rgba(0, 0, 0, 0.7);\n\n\t&::v-deep .modal-wrapper {\n\t\tposition: relative;\n\t}\n\n\t&::v-deep .modal-container {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\tposition: relative;\n\t}\n\n\t.modal-body {\n\t\tflex-grow: 1;\n\t\tdisplay: flex;\n\t\toverflow-x: hidden;\n\t\toverflow-y: auto;\n\n\t\t& > div {\n\t\t\tdisplay: flex;\n\t\t\tflex-grow: 1;\n\t\t\talign-items: center;\n\t\t\tjustify-content: center;\n\t\t}\n\t}\n}\n\n.modal-header {\n\tflex-shrink: 0;\n\n\t.firstrunwizard-header {\n\t\tpadding: 20px 12px;\n\t\tbackground: var(--color-primary) var(--image-login-background) no-repeat 50% 50%;\n\t\tbackground-size: cover;\n\t\tcolor: var(--color-primary-text);\n\t\ttext-align: center;\n\t\t.logo {\n\t\t\tbackground: var(--image-logo) no-repeat center;\n\t\t\tbackground-size: contain;\n\t\t\twidth: 175px;\n\t\t\theight: 100px;\n\t\t\tmax-height: 20vh;\n\t\t\tmargin: 0 auto;\n\t\t}\n\t\th2 {\n\t\t\tfont-size: 20px;\n\t\t\tmargin-top: 7px;\n\t\t\tline-height: 150%;\n\t\t\tcolor: var(--color-primary-text);\n\t\t\tfont-weight: 300;\n\t\t\tpadding: 0 0 10px;\n\t\t}\n\t}\n}\n\n.modal-default-button {\n\talign-self: flex-end;\n}\n\n.modal-footer {\n\toverflow: hidden;\n\tposition: absolute;\n\tdisplay: flex;\n\tbottom: 0;\n\tright: 0;\n}\n\n.modal-footer button {\n\tmargin: 10px;\n}\n\n/* Transitions */\n.next-enter-active, .next-leave-active,\n.previous-enter-active, .previous-leave-active {\n\ttransition: transform .1s, opacity .25s;\n}\n\n.next-enter {\n\ttransform: translateX(50%);\n\topacity: 0;\n}\n\n.next-leave-to {\n\ttransform: translateX(-50%);\n\topacity: 0;\n}\n\n.previous-enter {\n\ttransform: translateX(-50%);\n\topacity: 0;\n}\n\n.previous-leave-to {\n\ttransform: translateX(50%);\n\topacity: 0;\n}\n"],sourceRoot:""}]);const s=a},3392:(t,e,n)=>{"use strict";n.d(e,{Z:()=>s});var r=n(7537),o=n.n(r),i=n(3645),a=n.n(i)()(o());a.push([t.id,"video[data-v-70de3a6e]{width:100%;height:100%;object-fit:cover}.video-wrapper[data-v-70de3a6e]{background-color:var(--color-primary)}","",{version:3,sources:["webpack://./src/components/IntroVideo.vue"],names:[],mappings:"AAuDA,uBACC,UAAA,CACA,WAAA,CACA,gBAAA,CAGD,gCACC,qCAAA",sourcesContent:["\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvideo {\n\twidth: 100%;\n\theight: 100%;\n\tobject-fit: cover;\n}\n\n.video-wrapper {\n\tbackground-color: var(--color-primary);\n}\n"],sourceRoot:""}]);const s=a},3645:t=>{"use strict";t.exports=function(t){var e=[];return e.toString=function(){return this.map((function(e){var n="",r=void 0!==e[5];return e[4]&&(n+="@supports (".concat(e[4],") {")),e[2]&&(n+="@media ".concat(e[2]," {")),r&&(n+="@layer".concat(e[5].length>0?" ".concat(e[5]):""," {")),n+=t(e),r&&(n+="}"),e[2]&&(n+="}"),e[4]&&(n+="}"),n})).join("")},e.i=function(t,n,r,o,i){"string"==typeof t&&(t=[[null,t,void 0]]);var a={};if(r)for(var s=0;s<this.length;s++){var l=this[s][0];null!=l&&(a[l]=!0)}for(var u=0;u<t.length;u++){var c=[].concat(t[u]);r&&a[c[0]]||(void 0!==i&&(void 0===c[5]||(c[1]="@layer".concat(c[5].length>0?" ".concat(c[5]):""," {").concat(c[1],"}")),c[5]=i),n&&(c[2]?(c[1]="@media ".concat(c[2]," {").concat(c[1],"}"),c[2]=n):c[2]=n),o&&(c[4]?(c[1]="@supports (".concat(c[4],") {").concat(c[1],"}"),c[4]=o):c[4]="".concat(o)),e.push(c))}},e}},7537:t=>{"use strict";t.exports=function(t){var e=t[1],n=t[3];if(!n)return e;if("function"==typeof btoa){var r=btoa(unescape(encodeURIComponent(JSON.stringify(n)))),o="sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(r),i="/*# ".concat(o," */"),a=n.sources.map((function(t){return"/*# sourceURL=".concat(n.sourceRoot||"").concat(t," */")}));return[e].concat(a).concat([i]).join("\n")}return[e].join("\n")}},4289:(t,e,n)=>{"use strict";var r=n(2215),o="function"==typeof Symbol&&"symbol"==typeof Symbol("foo"),i=Object.prototype.toString,a=Array.prototype.concat,s=Object.defineProperty,l=s&&function(){var t={};try{for(var e in s(t,"x",{enumerable:!1,value:t}),t)return!1;return t.x===t}catch(t){return!1}}(),u=function(t,e,n,r){var o;(!(e in t)||"function"==typeof(o=r)&&"[object Function]"===i.call(o)&&r())&&(l?s(t,e,{configurable:!0,enumerable:!1,value:n,writable:!0}):t[e]=n)},c=function(t,e){var n=arguments.length>2?arguments[2]:{},i=r(e);o&&(i=a.call(i,Object.getOwnPropertySymbols(e)));for(var s=0;s<i.length;s+=1)u(t,i[s],e[i[s]],n[i[s]])};c.supportsDescriptors=!!l,t.exports=c},4079:(t,e,n)=>{"use strict";var r=n(210)("%Object.getOwnPropertyDescriptor%",!0);if(r)try{r([],"length")}catch(t){r=null}t.exports=r},8091:t=>{"use strict";function e(t,e){if(null==t)throw new TypeError("Cannot convert first argument to object");for(var n=Object(t),r=1;r<arguments.length;r++){var o=arguments[r];if(null!=o)for(var i=Object.keys(Object(o)),a=0,s=i.length;a<s;a++){var l=i[a],u=Object.getOwnPropertyDescriptor(o,l);void 0!==u&&u.enumerable&&(n[l]=o[l])}}return n}t.exports={assign:e,polyfill:function(){Object.assign||Object.defineProperty(Object,"assign",{enumerable:!1,configurable:!0,writable:!0,value:e})}}},9804:t=>{var e=Object.prototype.hasOwnProperty,n=Object.prototype.toString;t.exports=function(t,r,o){if("[object Function]"!==n.call(r))throw new TypeError("iterator must be a function");var i=t.length;if(i===+i)for(var a=0;a<i;a++)r.call(o,t[a],a,t);else for(var s in t)e.call(t,s)&&r.call(o,t[s],s,t)}},7648:t=>{"use strict";var e="Function.prototype.bind called on incompatible ",n=Array.prototype.slice,r=Object.prototype.toString,o="[object Function]";t.exports=function(t){var i=this;if("function"!=typeof i||r.call(i)!==o)throw new TypeError(e+i);for(var a,s=n.call(arguments,1),l=function(){if(this instanceof a){var e=i.apply(this,s.concat(n.call(arguments)));return Object(e)===e?e:this}return i.apply(t,s.concat(n.call(arguments)))},u=Math.max(0,i.length-s.length),c=[],p=0;p<u;p++)c.push("$"+p);if(a=Function("binder","return function ("+c.join(",")+"){ return binder.apply(this,arguments); }")(l),i.prototype){var f=function(){};f.prototype=i.prototype,a.prototype=new f,f.prototype=null}return a}},8612:(t,e,n)=>{"use strict";var r=n(7648);t.exports=Function.prototype.bind||r},210:(t,e,n)=>{"use strict";var r,o=SyntaxError,i=Function,a=TypeError,s=function(t){try{return i('"use strict"; return ('+t+").constructor;")()}catch(t){}},l=Object.getOwnPropertyDescriptor;if(l)try{l({},"")}catch(t){l=null}var u=function(){throw new a},c=l?function(){try{return u}catch(t){try{return l(arguments,"callee").get}catch(t){return u}}}():u,p=n(1405)(),f=Object.getPrototypeOf||function(t){return t.__proto__},d={},h="undefined"==typeof Uint8Array?r:f(Uint8Array),m={"%AggregateError%":"undefined"==typeof AggregateError?r:AggregateError,"%Array%":Array,"%ArrayBuffer%":"undefined"==typeof ArrayBuffer?r:ArrayBuffer,"%ArrayIteratorPrototype%":p?f([][Symbol.iterator]()):r,"%AsyncFromSyncIteratorPrototype%":r,"%AsyncFunction%":d,"%AsyncGenerator%":d,"%AsyncGeneratorFunction%":d,"%AsyncIteratorPrototype%":d,"%Atomics%":"undefined"==typeof Atomics?r:Atomics,"%BigInt%":"undefined"==typeof BigInt?r:BigInt,"%Boolean%":Boolean,"%DataView%":"undefined"==typeof DataView?r:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":Error,"%eval%":eval,"%EvalError%":EvalError,"%Float32Array%":"undefined"==typeof Float32Array?r:Float32Array,"%Float64Array%":"undefined"==typeof Float64Array?r:Float64Array,"%FinalizationRegistry%":"undefined"==typeof FinalizationRegistry?r:FinalizationRegistry,"%Function%":i,"%GeneratorFunction%":d,"%Int8Array%":"undefined"==typeof Int8Array?r:Int8Array,"%Int16Array%":"undefined"==typeof Int16Array?r:Int16Array,"%Int32Array%":"undefined"==typeof Int32Array?r:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":p?f(f([][Symbol.iterator]())):r,"%JSON%":"object"==typeof JSON?JSON:r,"%Map%":"undefined"==typeof Map?r:Map,"%MapIteratorPrototype%":"undefined"!=typeof Map&&p?f((new Map)[Symbol.iterator]()):r,"%Math%":Math,"%Number%":Number,"%Object%":Object,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":"undefined"==typeof Promise?r:Promise,"%Proxy%":"undefined"==typeof Proxy?r:Proxy,"%RangeError%":RangeError,"%ReferenceError%":ReferenceError,"%Reflect%":"undefined"==typeof Reflect?r:Reflect,"%RegExp%":RegExp,"%Set%":"undefined"==typeof Set?r:Set,"%SetIteratorPrototype%":"undefined"!=typeof Set&&p?f((new Set)[Symbol.iterator]()):r,"%SharedArrayBuffer%":"undefined"==typeof SharedArrayBuffer?r:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":p?f(""[Symbol.iterator]()):r,"%Symbol%":p?Symbol:r,"%SyntaxError%":o,"%ThrowTypeError%":c,"%TypedArray%":h,"%TypeError%":a,"%Uint8Array%":"undefined"==typeof Uint8Array?r:Uint8Array,"%Uint8ClampedArray%":"undefined"==typeof Uint8ClampedArray?r:Uint8ClampedArray,"%Uint16Array%":"undefined"==typeof Uint16Array?r:Uint16Array,"%Uint32Array%":"undefined"==typeof Uint32Array?r:Uint32Array,"%URIError%":URIError,"%WeakMap%":"undefined"==typeof WeakMap?r:WeakMap,"%WeakRef%":"undefined"==typeof WeakRef?r:WeakRef,"%WeakSet%":"undefined"==typeof WeakSet?r:WeakSet},v=function t(e){var n;if("%AsyncFunction%"===e)n=s("async function () {}");else if("%GeneratorFunction%"===e)n=s("function* () {}");else if("%AsyncGeneratorFunction%"===e)n=s("async function* () {}");else if("%AsyncGenerator%"===e){var r=t("%AsyncGeneratorFunction%");r&&(n=r.prototype)}else if("%AsyncIteratorPrototype%"===e){var o=t("%AsyncGenerator%");o&&(n=f(o.prototype))}return m[e]=n,n},g={"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},y=n(8612),A=n(7642),b=y.call(Function.call,Array.prototype.concat),C=y.call(Function.apply,Array.prototype.splice),w=y.call(Function.call,String.prototype.replace),x=y.call(Function.call,String.prototype.slice),_=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,S=/\\(\\)?/g,k=function(t){var e=x(t,0,1),n=x(t,-1);if("%"===e&&"%"!==n)throw new o("invalid intrinsic syntax, expected closing `%`");if("%"===n&&"%"!==e)throw new o("invalid intrinsic syntax, expected opening `%`");var r=[];return w(t,_,(function(t,e,n,o){r[r.length]=n?w(o,S,"$1"):e||t})),r},E=function(t,e){var n,r=t;if(A(g,r)&&(r="%"+(n=g[r])[0]+"%"),A(m,r)){var i=m[r];if(i===d&&(i=v(r)),void 0===i&&!e)throw new a("intrinsic "+t+" exists, but is not available. Please file an issue!");return{alias:n,name:r,value:i}}throw new o("intrinsic "+t+" does not exist!")};t.exports=function(t,e){if("string"!=typeof t||0===t.length)throw new a("intrinsic name must be a non-empty string");if(arguments.length>1&&"boolean"!=typeof e)throw new a('"allowMissing" argument must be a boolean');var n=k(t),r=n.length>0?n[0]:"",i=E("%"+r+"%",e),s=i.name,u=i.value,c=!1,p=i.alias;p&&(r=p[0],C(n,b([0,1],p)));for(var f=1,d=!0;f<n.length;f+=1){var h=n[f],v=x(h,0,1),g=x(h,-1);if(('"'===v||"'"===v||"`"===v||'"'===g||"'"===g||"`"===g)&&v!==g)throw new o("property names with quotes must have matching quotes");if("constructor"!==h&&d||(c=!0),A(m,s="%"+(r+="."+h)+"%"))u=m[s];else if(null!=u){if(!(h in u)){if(!e)throw new a("base intrinsic for "+t+" exists, but the property is not available.");return}if(l&&f+1>=n.length){var y=l(u,h);u=(d=!!y)&&"get"in y&&!("originalValue"in y.get)?y.get:u[h]}else d=A(u,h),u=u[h];d&&!c&&(m[s]=u)}}return u}},840:(t,e,n)=>{var r;!function(o,i,a,s){"use strict";var l,u=["","webkit","Moz","MS","ms","o"],c=i.createElement("div"),p=Math.round,f=Math.abs,d=Date.now;function h(t,e,n){return setTimeout(C(t,n),e)}function m(t,e,n){return!!Array.isArray(t)&&(v(t,n[e],n),!0)}function v(t,e,n){var r;if(t)if(t.forEach)t.forEach(e,n);else if(t.length!==s)for(r=0;r<t.length;)e.call(n,t[r],r,t),r++;else for(r in t)t.hasOwnProperty(r)&&e.call(n,t[r],r,t)}function g(t,e,n){var r="DEPRECATED METHOD: "+e+"\n"+n+" AT \n";return function(){var e=new Error("get-stack-trace"),n=e&&e.stack?e.stack.replace(/^[^\(]+?[\n$]/gm,"").replace(/^\s+at\s+/gm,"").replace(/^Object.<anonymous>\s*\(/gm,"{anonymous}()@"):"Unknown Stack Trace",i=o.console&&(o.console.warn||o.console.log);return i&&i.call(o.console,r,n),t.apply(this,arguments)}}l="function"!=typeof Object.assign?function(t){if(t===s||null===t)throw new TypeError("Cannot convert undefined or null to object");for(var e=Object(t),n=1;n<arguments.length;n++){var r=arguments[n];if(r!==s&&null!==r)for(var o in r)r.hasOwnProperty(o)&&(e[o]=r[o])}return e}:Object.assign;var y=g((function(t,e,n){for(var r=Object.keys(e),o=0;o<r.length;)(!n||n&&t[r[o]]===s)&&(t[r[o]]=e[r[o]]),o++;return t}),"extend","Use `assign`."),A=g((function(t,e){return y(t,e,!0)}),"merge","Use `assign`.");function b(t,e,n){var r,o=e.prototype;(r=t.prototype=Object.create(o)).constructor=t,r._super=o,n&&l(r,n)}function C(t,e){return function(){return t.apply(e,arguments)}}function w(t,e){return"function"==typeof t?t.apply(e&&e[0]||s,e):t}function x(t,e){return t===s?e:t}function _(t,e,n){v(O(e),(function(e){t.addEventListener(e,n,!1)}))}function S(t,e,n){v(O(e),(function(e){t.removeEventListener(e,n,!1)}))}function k(t,e){for(;t;){if(t==e)return!0;t=t.parentNode}return!1}function E(t,e){return t.indexOf(e)>-1}function O(t){return t.trim().split(/\s+/g)}function j(t,e,n){if(t.indexOf&&!n)return t.indexOf(e);for(var r=0;r<t.length;){if(n&&t[r][n]==e||!n&&t[r]===e)return r;r++}return-1}function T(t){return Array.prototype.slice.call(t,0)}function B(t,e,n){for(var r=[],o=[],i=0;i<t.length;){var a=e?t[i][e]:t[i];j(o,a)<0&&r.push(t[i]),o[i]=a,i++}return n&&(r=e?r.sort((function(t,n){return t[e]>n[e]})):r.sort()),r}function N(t,e){for(var n,r,o=e[0].toUpperCase()+e.slice(1),i=0;i<u.length;){if((r=(n=u[i])?n+o:e)in t)return r;i++}return s}var P=1;function $(t){var e=t.ownerDocument||t;return e.defaultView||e.parentWindow||o}var I="ontouchstart"in o,z=N(o,"PointerEvent")!==s,F=I&&/mobile|tablet|ip(ad|hone|od)|android/i.test(navigator.userAgent),D="touch",L="mouse",R=24,M=["x","y"],U=["clientX","clientY"];function G(t,e){var n=this;this.manager=t,this.callback=e,this.element=t.element,this.target=t.options.inputTarget,this.domHandler=function(e){w(t.options.enable,[t])&&n.handler(e)},this.init()}function q(t,e,n){var r=n.pointers.length,o=n.changedPointers.length,i=1&e&&r-o==0,a=12&e&&r-o==0;n.isFirst=!!i,n.isFinal=!!a,i&&(t.session={}),n.eventType=e,function(t,e){var n=t.session,r=e.pointers,o=r.length;n.firstInput||(n.firstInput=V(e));o>1&&!n.firstMultiple?n.firstMultiple=V(e):1===o&&(n.firstMultiple=!1);var i=n.firstInput,a=n.firstMultiple,l=a?a.center:i.center,u=e.center=W(r);e.timeStamp=d(),e.deltaTime=e.timeStamp-i.timeStamp,e.angle=X(l,u),e.distance=K(l,u),function(t,e){var n=e.center,r=t.offsetDelta||{},o=t.prevDelta||{},i=t.prevInput||{};1!==e.eventType&&4!==i.eventType||(o=t.prevDelta={x:i.deltaX||0,y:i.deltaY||0},r=t.offsetDelta={x:n.x,y:n.y});e.deltaX=o.x+(n.x-r.x),e.deltaY=o.y+(n.y-r.y)}(n,e),e.offsetDirection=Y(e.deltaX,e.deltaY);var c=H(e.deltaTime,e.deltaX,e.deltaY);e.overallVelocityX=c.x,e.overallVelocityY=c.y,e.overallVelocity=f(c.x)>f(c.y)?c.x:c.y,e.scale=a?(p=a.pointers,h=r,K(h[0],h[1],U)/K(p[0],p[1],U)):1,e.rotation=a?function(t,e){return X(e[1],e[0],U)+X(t[1],t[0],U)}(a.pointers,r):0,e.maxPointers=n.prevInput?e.pointers.length>n.prevInput.maxPointers?e.pointers.length:n.prevInput.maxPointers:e.pointers.length,function(t,e){var n,r,o,i,a=t.lastInterval||e,l=e.timeStamp-a.timeStamp;if(8!=e.eventType&&(l>25||a.velocity===s)){var u=e.deltaX-a.deltaX,c=e.deltaY-a.deltaY,p=H(l,u,c);r=p.x,o=p.y,n=f(p.x)>f(p.y)?p.x:p.y,i=Y(u,c),t.lastInterval=e}else n=a.velocity,r=a.velocityX,o=a.velocityY,i=a.direction;e.velocity=n,e.velocityX=r,e.velocityY=o,e.direction=i}(n,e);var p,h;var m=t.element;k(e.srcEvent.target,m)&&(m=e.srcEvent.target);e.target=m}(t,n),t.emit("hammer.input",n),t.recognize(n),t.session.prevInput=n}function V(t){for(var e=[],n=0;n<t.pointers.length;)e[n]={clientX:p(t.pointers[n].clientX),clientY:p(t.pointers[n].clientY)},n++;return{timeStamp:d(),pointers:e,center:W(e),deltaX:t.deltaX,deltaY:t.deltaY}}function W(t){var e=t.length;if(1===e)return{x:p(t[0].clientX),y:p(t[0].clientY)};for(var n=0,r=0,o=0;o<e;)n+=t[o].clientX,r+=t[o].clientY,o++;return{x:p(n/e),y:p(r/e)}}function H(t,e,n){return{x:e/t||0,y:n/t||0}}function Y(t,e){return t===e?1:f(t)>=f(e)?t<0?2:4:e<0?8:16}function K(t,e,n){n||(n=M);var r=e[n[0]]-t[n[0]],o=e[n[1]]-t[n[1]];return Math.sqrt(r*r+o*o)}function X(t,e,n){n||(n=M);var r=e[n[0]]-t[n[0]],o=e[n[1]]-t[n[1]];return 180*Math.atan2(o,r)/Math.PI}G.prototype={handler:function(){},init:function(){this.evEl&&_(this.element,this.evEl,this.domHandler),this.evTarget&&_(this.target,this.evTarget,this.domHandler),this.evWin&&_($(this.element),this.evWin,this.domHandler)},destroy:function(){this.evEl&&S(this.element,this.evEl,this.domHandler),this.evTarget&&S(this.target,this.evTarget,this.domHandler),this.evWin&&S($(this.element),this.evWin,this.domHandler)}};var Z={mousedown:1,mousemove:2,mouseup:4},J="mousedown",Q="mousemove mouseup";function tt(){this.evEl=J,this.evWin=Q,this.pressed=!1,G.apply(this,arguments)}b(tt,G,{handler:function(t){var e=Z[t.type];1&e&&0===t.button&&(this.pressed=!0),2&e&&1!==t.which&&(e=4),this.pressed&&(4&e&&(this.pressed=!1),this.callback(this.manager,e,{pointers:[t],changedPointers:[t],pointerType:L,srcEvent:t}))}});var et={pointerdown:1,pointermove:2,pointerup:4,pointercancel:8,pointerout:8},nt={2:D,3:"pen",4:L,5:"kinect"},rt="pointerdown",ot="pointermove pointerup pointercancel";function it(){this.evEl=rt,this.evWin=ot,G.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}o.MSPointerEvent&&!o.PointerEvent&&(rt="MSPointerDown",ot="MSPointerMove MSPointerUp MSPointerCancel"),b(it,G,{handler:function(t){var e=this.store,n=!1,r=t.type.toLowerCase().replace("ms",""),o=et[r],i=nt[t.pointerType]||t.pointerType,a=i==D,s=j(e,t.pointerId,"pointerId");1&o&&(0===t.button||a)?s<0&&(e.push(t),s=e.length-1):12&o&&(n=!0),s<0||(e[s]=t,this.callback(this.manager,o,{pointers:e,changedPointers:[t],pointerType:i,srcEvent:t}),n&&e.splice(s,1))}});var at={touchstart:1,touchmove:2,touchend:4,touchcancel:8},st="touchstart",lt="touchstart touchmove touchend touchcancel";function ut(){this.evTarget=st,this.evWin=lt,this.started=!1,G.apply(this,arguments)}function ct(t,e){var n=T(t.touches),r=T(t.changedTouches);return 12&e&&(n=B(n.concat(r),"identifier",!0)),[n,r]}b(ut,G,{handler:function(t){var e=at[t.type];if(1===e&&(this.started=!0),this.started){var n=ct.call(this,t,e);12&e&&n[0].length-n[1].length==0&&(this.started=!1),this.callback(this.manager,e,{pointers:n[0],changedPointers:n[1],pointerType:D,srcEvent:t})}}});var pt={touchstart:1,touchmove:2,touchend:4,touchcancel:8},ft="touchstart touchmove touchend touchcancel";function dt(){this.evTarget=ft,this.targetIds={},G.apply(this,arguments)}function ht(t,e){var n=T(t.touches),r=this.targetIds;if(3&e&&1===n.length)return r[n[0].identifier]=!0,[n,n];var o,i,a=T(t.changedTouches),s=[],l=this.target;if(i=n.filter((function(t){return k(t.target,l)})),1===e)for(o=0;o<i.length;)r[i[o].identifier]=!0,o++;for(o=0;o<a.length;)r[a[o].identifier]&&s.push(a[o]),12&e&&delete r[a[o].identifier],o++;return s.length?[B(i.concat(s),"identifier",!0),s]:void 0}b(dt,G,{handler:function(t){var e=pt[t.type],n=ht.call(this,t,e);n&&this.callback(this.manager,e,{pointers:n[0],changedPointers:n[1],pointerType:D,srcEvent:t})}});function mt(){G.apply(this,arguments);var t=C(this.handler,this);this.touch=new dt(this.manager,t),this.mouse=new tt(this.manager,t),this.primaryTouch=null,this.lastTouches=[]}function vt(t,e){1&t?(this.primaryTouch=e.changedPointers[0].identifier,gt.call(this,e)):12&t&&gt.call(this,e)}function gt(t){var e=t.changedPointers[0];if(e.identifier===this.primaryTouch){var n={x:e.clientX,y:e.clientY};this.lastTouches.push(n);var r=this.lastTouches;setTimeout((function(){var t=r.indexOf(n);t>-1&&r.splice(t,1)}),2500)}}function yt(t){for(var e=t.srcEvent.clientX,n=t.srcEvent.clientY,r=0;r<this.lastTouches.length;r++){var o=this.lastTouches[r],i=Math.abs(e-o.x),a=Math.abs(n-o.y);if(i<=25&&a<=25)return!0}return!1}b(mt,G,{handler:function(t,e,n){var r=n.pointerType==D,o=n.pointerType==L;if(!(o&&n.sourceCapabilities&&n.sourceCapabilities.firesTouchEvents)){if(r)vt.call(this,e,n);else if(o&&yt.call(this,n))return;this.callback(t,e,n)}},destroy:function(){this.touch.destroy(),this.mouse.destroy()}});var At=N(c.style,"touchAction"),bt=At!==s,Ct="compute",wt="auto",xt="manipulation",_t="none",St="pan-x",kt="pan-y",Et=function(){if(!bt)return!1;var t={},e=o.CSS&&o.CSS.supports;return["auto","manipulation","pan-y","pan-x","pan-x pan-y","none"].forEach((function(n){t[n]=!e||o.CSS.supports("touch-action",n)})),t}();function Ot(t,e){this.manager=t,this.set(e)}Ot.prototype={set:function(t){t==Ct&&(t=this.compute()),bt&&this.manager.element.style&&Et[t]&&(this.manager.element.style[At]=t),this.actions=t.toLowerCase().trim()},update:function(){this.set(this.manager.options.touchAction)},compute:function(){var t=[];return v(this.manager.recognizers,(function(e){w(e.options.enable,[e])&&(t=t.concat(e.getTouchAction()))})),function(t){if(E(t,_t))return _t;var e=E(t,St),n=E(t,kt);if(e&&n)return _t;if(e||n)return e?St:kt;if(E(t,xt))return xt;return wt}(t.join(" "))},preventDefaults:function(t){var e=t.srcEvent,n=t.offsetDirection;if(this.manager.session.prevented)e.preventDefault();else{var r=this.actions,o=E(r,_t)&&!Et.none,i=E(r,kt)&&!Et["pan-y"],a=E(r,St)&&!Et["pan-x"];if(o){var s=1===t.pointers.length,l=t.distance<2,u=t.deltaTime<250;if(s&&l&&u)return}if(!a||!i)return o||i&&6&n||a&&n&R?this.preventSrc(e):void 0}},preventSrc:function(t){this.manager.session.prevented=!0,t.preventDefault()}};var jt=32;function Tt(t){this.options=l({},this.defaults,t||{}),this.id=P++,this.manager=null,this.options.enable=x(this.options.enable,!0),this.state=1,this.simultaneous={},this.requireFail=[]}function Bt(t){return 16&t?"cancel":8&t?"end":4&t?"move":2&t?"start":""}function Nt(t){return 16==t?"down":8==t?"up":2==t?"left":4==t?"right":""}function Pt(t,e){var n=e.manager;return n?n.get(t):t}function $t(){Tt.apply(this,arguments)}function It(){$t.apply(this,arguments),this.pX=null,this.pY=null}function zt(){$t.apply(this,arguments)}function Ft(){Tt.apply(this,arguments),this._timer=null,this._input=null}function Dt(){$t.apply(this,arguments)}function Lt(){$t.apply(this,arguments)}function Rt(){Tt.apply(this,arguments),this.pTime=!1,this.pCenter=!1,this._timer=null,this._input=null,this.count=0}function Mt(t,e){return(e=e||{}).recognizers=x(e.recognizers,Mt.defaults.preset),new Ut(t,e)}Tt.prototype={defaults:{},set:function(t){return l(this.options,t),this.manager&&this.manager.touchAction.update(),this},recognizeWith:function(t){if(m(t,"recognizeWith",this))return this;var e=this.simultaneous;return e[(t=Pt(t,this)).id]||(e[t.id]=t,t.recognizeWith(this)),this},dropRecognizeWith:function(t){return m(t,"dropRecognizeWith",this)||(t=Pt(t,this),delete this.simultaneous[t.id]),this},requireFailure:function(t){if(m(t,"requireFailure",this))return this;var e=this.requireFail;return-1===j(e,t=Pt(t,this))&&(e.push(t),t.requireFailure(this)),this},dropRequireFailure:function(t){if(m(t,"dropRequireFailure",this))return this;t=Pt(t,this);var e=j(this.requireFail,t);return e>-1&&this.requireFail.splice(e,1),this},hasRequireFailures:function(){return this.requireFail.length>0},canRecognizeWith:function(t){return!!this.simultaneous[t.id]},emit:function(t){var e=this,n=this.state;function r(n){e.manager.emit(n,t)}n<8&&r(e.options.event+Bt(n)),r(e.options.event),t.additionalEvent&&r(t.additionalEvent),n>=8&&r(e.options.event+Bt(n))},tryEmit:function(t){if(this.canEmit())return this.emit(t);this.state=jt},canEmit:function(){for(var t=0;t<this.requireFail.length;){if(!(33&this.requireFail[t].state))return!1;t++}return!0},recognize:function(t){var e=l({},t);if(!w(this.options.enable,[this,e]))return this.reset(),void(this.state=jt);56&this.state&&(this.state=1),this.state=this.process(e),30&this.state&&this.tryEmit(e)},process:function(t){},getTouchAction:function(){},reset:function(){}},b($t,Tt,{defaults:{pointers:1},attrTest:function(t){var e=this.options.pointers;return 0===e||t.pointers.length===e},process:function(t){var e=this.state,n=t.eventType,r=6&e,o=this.attrTest(t);return r&&(8&n||!o)?16|e:r||o?4&n?8|e:2&e?4|e:2:jt}}),b(It,$t,{defaults:{event:"pan",threshold:10,pointers:1,direction:30},getTouchAction:function(){var t=this.options.direction,e=[];return 6&t&&e.push(kt),t&R&&e.push(St),e},directionTest:function(t){var e=this.options,n=!0,r=t.distance,o=t.direction,i=t.deltaX,a=t.deltaY;return o&e.direction||(6&e.direction?(o=0===i?1:i<0?2:4,n=i!=this.pX,r=Math.abs(t.deltaX)):(o=0===a?1:a<0?8:16,n=a!=this.pY,r=Math.abs(t.deltaY))),t.direction=o,n&&r>e.threshold&&o&e.direction},attrTest:function(t){return $t.prototype.attrTest.call(this,t)&&(2&this.state||!(2&this.state)&&this.directionTest(t))},emit:function(t){this.pX=t.deltaX,this.pY=t.deltaY;var e=Nt(t.direction);e&&(t.additionalEvent=this.options.event+e),this._super.emit.call(this,t)}}),b(zt,$t,{defaults:{event:"pinch",threshold:0,pointers:2},getTouchAction:function(){return[_t]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.scale-1)>this.options.threshold||2&this.state)},emit:function(t){if(1!==t.scale){var e=t.scale<1?"in":"out";t.additionalEvent=this.options.event+e}this._super.emit.call(this,t)}}),b(Ft,Tt,{defaults:{event:"press",pointers:1,time:251,threshold:9},getTouchAction:function(){return[wt]},process:function(t){var e=this.options,n=t.pointers.length===e.pointers,r=t.distance<e.threshold,o=t.deltaTime>e.time;if(this._input=t,!r||!n||12&t.eventType&&!o)this.reset();else if(1&t.eventType)this.reset(),this._timer=h((function(){this.state=8,this.tryEmit()}),e.time,this);else if(4&t.eventType)return 8;return jt},reset:function(){clearTimeout(this._timer)},emit:function(t){8===this.state&&(t&&4&t.eventType?this.manager.emit(this.options.event+"up",t):(this._input.timeStamp=d(),this.manager.emit(this.options.event,this._input)))}}),b(Dt,$t,{defaults:{event:"rotate",threshold:0,pointers:2},getTouchAction:function(){return[_t]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.rotation)>this.options.threshold||2&this.state)}}),b(Lt,$t,{defaults:{event:"swipe",threshold:10,velocity:.3,direction:30,pointers:1},getTouchAction:function(){return It.prototype.getTouchAction.call(this)},attrTest:function(t){var e,n=this.options.direction;return 30&n?e=t.overallVelocity:6&n?e=t.overallVelocityX:n&R&&(e=t.overallVelocityY),this._super.attrTest.call(this,t)&&n&t.offsetDirection&&t.distance>this.options.threshold&&t.maxPointers==this.options.pointers&&f(e)>this.options.velocity&&4&t.eventType},emit:function(t){var e=Nt(t.offsetDirection);e&&this.manager.emit(this.options.event+e,t),this.manager.emit(this.options.event,t)}}),b(Rt,Tt,{defaults:{event:"tap",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},getTouchAction:function(){return[xt]},process:function(t){var e=this.options,n=t.pointers.length===e.pointers,r=t.distance<e.threshold,o=t.deltaTime<e.time;if(this.reset(),1&t.eventType&&0===this.count)return this.failTimeout();if(r&&o&&n){if(4!=t.eventType)return this.failTimeout();var i=!this.pTime||t.timeStamp-this.pTime<e.interval,a=!this.pCenter||K(this.pCenter,t.center)<e.posThreshold;if(this.pTime=t.timeStamp,this.pCenter=t.center,a&&i?this.count+=1:this.count=1,this._input=t,0===this.count%e.taps)return this.hasRequireFailures()?(this._timer=h((function(){this.state=8,this.tryEmit()}),e.interval,this),2):8}return jt},failTimeout:function(){return this._timer=h((function(){this.state=jt}),this.options.interval,this),jt},reset:function(){clearTimeout(this._timer)},emit:function(){8==this.state&&(this._input.tapCount=this.count,this.manager.emit(this.options.event,this._input))}}),Mt.VERSION="2.0.7",Mt.defaults={domEvents:!1,touchAction:Ct,enable:!0,inputTarget:null,inputClass:null,preset:[[Dt,{enable:!1}],[zt,{enable:!1},["rotate"]],[Lt,{direction:6}],[It,{direction:6},["swipe"]],[Rt],[Rt,{event:"doubletap",taps:2},["tap"]],[Ft]],cssProps:{userSelect:"none",touchSelect:"none",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}};function Ut(t,e){var n;this.options=l({},Mt.defaults,e||{}),this.options.inputTarget=this.options.inputTarget||t,this.handlers={},this.session={},this.recognizers=[],this.oldCssProps={},this.element=t,this.input=new((n=this).options.inputClass||(z?it:F?dt:I?mt:tt))(n,q),this.touchAction=new Ot(this,this.options.touchAction),Gt(this,!0),v(this.options.recognizers,(function(t){var e=this.add(new t[0](t[1]));t[2]&&e.recognizeWith(t[2]),t[3]&&e.requireFailure(t[3])}),this)}function Gt(t,e){var n,r=t.element;r.style&&(v(t.options.cssProps,(function(o,i){n=N(r.style,i),e?(t.oldCssProps[n]=r.style[n],r.style[n]=o):r.style[n]=t.oldCssProps[n]||""})),e||(t.oldCssProps={}))}Ut.prototype={set:function(t){return l(this.options,t),t.touchAction&&this.touchAction.update(),t.inputTarget&&(this.input.destroy(),this.input.target=t.inputTarget,this.input.init()),this},stop:function(t){this.session.stopped=t?2:1},recognize:function(t){var e=this.session;if(!e.stopped){var n;this.touchAction.preventDefaults(t);var r=this.recognizers,o=e.curRecognizer;(!o||o&&8&o.state)&&(o=e.curRecognizer=null);for(var i=0;i<r.length;)n=r[i],2===e.stopped||o&&n!=o&&!n.canRecognizeWith(o)?n.reset():n.recognize(t),!o&&14&n.state&&(o=e.curRecognizer=n),i++}},get:function(t){if(t instanceof Tt)return t;for(var e=this.recognizers,n=0;n<e.length;n++)if(e[n].options.event==t)return e[n];return null},add:function(t){if(m(t,"add",this))return this;var e=this.get(t.options.event);return e&&this.remove(e),this.recognizers.push(t),t.manager=this,this.touchAction.update(),t},remove:function(t){if(m(t,"remove",this))return this;if(t=this.get(t)){var e=this.recognizers,n=j(e,t);-1!==n&&(e.splice(n,1),this.touchAction.update())}return this},on:function(t,e){if(t!==s&&e!==s){var n=this.handlers;return v(O(t),(function(t){n[t]=n[t]||[],n[t].push(e)})),this}},off:function(t,e){if(t!==s){var n=this.handlers;return v(O(t),(function(t){e?n[t]&&n[t].splice(j(n[t],e),1):delete n[t]})),this}},emit:function(t,e){this.options.domEvents&&function(t,e){var n=i.createEvent("Event");n.initEvent(t,!0,!0),n.gesture=e,e.target.dispatchEvent(n)}(t,e);var n=this.handlers[t]&&this.handlers[t].slice();if(n&&n.length){e.type=t,e.preventDefault=function(){e.srcEvent.preventDefault()};for(var r=0;r<n.length;)n[r](e),r++}},destroy:function(){this.element&&Gt(this,!1),this.handlers={},this.session={},this.input.destroy(),this.element=null}},l(Mt,{INPUT_START:1,INPUT_MOVE:2,INPUT_END:4,INPUT_CANCEL:8,STATE_POSSIBLE:1,STATE_BEGAN:2,STATE_CHANGED:4,STATE_ENDED:8,STATE_RECOGNIZED:8,STATE_CANCELLED:16,STATE_FAILED:jt,DIRECTION_NONE:1,DIRECTION_LEFT:2,DIRECTION_RIGHT:4,DIRECTION_UP:8,DIRECTION_DOWN:16,DIRECTION_HORIZONTAL:6,DIRECTION_VERTICAL:R,DIRECTION_ALL:30,Manager:Ut,Input:G,TouchAction:Ot,TouchInput:dt,MouseInput:tt,PointerEventInput:it,TouchMouseInput:mt,SingleTouchInput:ut,Recognizer:Tt,AttrRecognizer:$t,Tap:Rt,Pan:It,Swipe:Lt,Pinch:zt,Rotate:Dt,Press:Ft,on:_,off:S,each:v,merge:A,extend:y,assign:l,inherit:b,bindFn:C,prefixed:N}),(void 0!==o?o:"undefined"!=typeof self?self:{}).Hammer=Mt,(r=function(){return Mt}.call(e,n,e,t))===s||(t.exports=r)}(window,document)},1405:(t,e,n)=>{"use strict";var r="undefined"!=typeof Symbol&&Symbol,o=n(5419);t.exports=function(){return"function"==typeof r&&("function"==typeof Symbol&&("symbol"==typeof r("foo")&&("symbol"==typeof Symbol("bar")&&o())))}},5419:t=>{"use strict";t.exports=function(){if("function"!=typeof Symbol||"function"!=typeof Object.getOwnPropertySymbols)return!1;if("symbol"==typeof Symbol.iterator)return!0;var t={},e=Symbol("test"),n=Object(e);if("string"==typeof e)return!1;if("[object Symbol]"!==Object.prototype.toString.call(e))return!1;if("[object Symbol]"!==Object.prototype.toString.call(n))return!1;for(e in t[e]=42,t)return!1;if("function"==typeof Object.keys&&0!==Object.keys(t).length)return!1;if("function"==typeof Object.getOwnPropertyNames&&0!==Object.getOwnPropertyNames(t).length)return!1;var r=Object.getOwnPropertySymbols(t);if(1!==r.length||r[0]!==e)return!1;if(!Object.prototype.propertyIsEnumerable.call(t,e))return!1;if("function"==typeof Object.getOwnPropertyDescriptor){var o=Object.getOwnPropertyDescriptor(t,e);if(42!==o.value||!0!==o.enumerable)return!1}return!0}},6410:(t,e,n)=>{"use strict";var r=n(5419);t.exports=function(){return r()&&!!Symbol.toStringTag}},7642:(t,e,n)=>{"use strict";var r=n(8612);t.exports=r.call(Function.call,Object.prototype.hasOwnProperty)},2584:(t,e,n)=>{"use strict";var r=n(6410)(),o=n(1924)("Object.prototype.toString"),i=function(t){return!(r&&t&&"object"==typeof t&&Symbol.toStringTag in t)&&"[object Arguments]"===o(t)},a=function(t){return!!i(t)||null!==t&&"object"==typeof t&&"number"==typeof t.length&&t.length>=0&&"[object Array]"!==o(t)&&"[object Function]"===o(t.callee)},s=function(){return i(arguments)}();i.isLegacyArguments=a,t.exports=s?i:a},8662:(t,e,n)=>{"use strict";var r,o=Object.prototype.toString,i=Function.prototype.toString,a=/^\s*(?:function)?\*/,s=n(6410)(),l=Object.getPrototypeOf;t.exports=function(t){if("function"!=typeof t)return!1;if(a.test(i.call(t)))return!0;if(!s)return"[object GeneratorFunction]"===o.call(t);if(!l)return!1;if(void 0===r){var e=function(){if(!s)return!1;try{return Function("return function*() {}")()}catch(t){}}();r=!!e&&l(e)}return l(t)===r}},8611:t=>{"use strict";t.exports=function(t){return t!=t}},360:(t,e,n)=>{"use strict";var r=n(5559),o=n(4289),i=n(8611),a=n(9415),s=n(3194),l=r(a(),Number);o(l,{getPolyfill:a,implementation:i,shim:s}),t.exports=l},9415:(t,e,n)=>{"use strict";var r=n(8611);t.exports=function(){return Number.isNaN&&Number.isNaN(NaN)&&!Number.isNaN("a")?Number.isNaN:r}},3194:(t,e,n)=>{"use strict";var r=n(4289),o=n(9415);t.exports=function(){var t=o();return r(Number,{isNaN:t},{isNaN:function(){return Number.isNaN!==t}}),t}},5692:(t,e,n)=>{"use strict";var r=n(9804),o=n(6314),i=n(1924),a=i("Object.prototype.toString"),s=n(6410)(),l="undefined"==typeof globalThis?n.g:globalThis,u=o(),c=i("Array.prototype.indexOf",!0)||function(t,e){for(var n=0;n<t.length;n+=1)if(t[n]===e)return n;return-1},p=i("String.prototype.slice"),f={},d=n(4079),h=Object.getPrototypeOf;s&&d&&h&&r(u,(function(t){var e=new l[t];if(Symbol.toStringTag in e){var n=h(e),r=d(n,Symbol.toStringTag);if(!r){var o=h(n);r=d(o,Symbol.toStringTag)}f[t]=r.get}}));t.exports=function(t){if(!t||"object"!=typeof t)return!1;if(!s||!(Symbol.toStringTag in t)){var e=p(a(t),8,-1);return c(u,e)>-1}return!!d&&function(t){var e=!1;return r(f,(function(n,r){if(!e)try{e=n.call(t)===r}catch(t){}})),e}(t)}},9208:(t,e,n)=>{var r="__lodash_hash_undefined__",o="[object Function]",i="[object GeneratorFunction]",a=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,s=/^\w*$/,l=/^\./,u=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,c=/\\(\\)?/g,p=/^\[object .+?Constructor\]$/,f="object"==typeof n.g&&n.g&&n.g.Object===Object&&n.g,d="object"==typeof self&&self&&self.Object===Object&&self,h=f||d||Function("return this")();var m,v=Array.prototype,g=Function.prototype,y=Object.prototype,A=h["__core-js_shared__"],b=(m=/[^.]+$/.exec(A&&A.keys&&A.keys.IE_PROTO||""))?"Symbol(src)_1."+m:"",C=g.toString,w=y.hasOwnProperty,x=y.toString,_=RegExp("^"+C.call(w).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),S=h.Symbol,k=v.splice,E=D(h,"Map"),O=D(Object,"create"),j=S?S.prototype:void 0,T=j?j.toString:void 0;function B(t){var e=-1,n=t?t.length:0;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}function N(t){var e=-1,n=t?t.length:0;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}function P(t){var e=-1,n=t?t.length:0;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}function $(t,e){for(var n,r,o=t.length;o--;)if((n=t[o][0])===(r=e)||n!=n&&r!=r)return o;return-1}function I(t,e){var n;e=function(t,e){if(U(t))return!1;var n=typeof t;if("number"==n||"symbol"==n||"boolean"==n||null==t||q(t))return!0;return s.test(t)||!a.test(t)||null!=e&&t in Object(e)}(e,t)?[e]:U(n=e)?n:L(n);for(var r=0,o=e.length;null!=t&&r<o;)t=t[R(e[r++])];return r&&r==o?t:void 0}function z(t){if(!G(t)||(e=t,b&&b in e))return!1;var e,n=function(t){var e=G(t)?x.call(t):"";return e==o||e==i}(t)||function(t){var e=!1;if(null!=t&&"function"!=typeof t.toString)try{e=!!(t+"")}catch(t){}return e}(t)?_:p;return n.test(function(t){if(null!=t){try{return C.call(t)}catch(t){}try{return t+""}catch(t){}}return""}(t))}function F(t,e){var n,r,o=t.__data__;return("string"==(r=typeof(n=e))||"number"==r||"symbol"==r||"boolean"==r?"__proto__"!==n:null===n)?o["string"==typeof e?"string":"hash"]:o.map}function D(t,e){var n=function(t,e){return null==t?void 0:t[e]}(t,e);return z(n)?n:void 0}B.prototype.clear=function(){this.__data__=O?O(null):{}},B.prototype.delete=function(t){return this.has(t)&&delete this.__data__[t]},B.prototype.get=function(t){var e=this.__data__;if(O){var n=e[t];return n===r?void 0:n}return w.call(e,t)?e[t]:void 0},B.prototype.has=function(t){var e=this.__data__;return O?void 0!==e[t]:w.call(e,t)},B.prototype.set=function(t,e){return this.__data__[t]=O&&void 0===e?r:e,this},N.prototype.clear=function(){this.__data__=[]},N.prototype.delete=function(t){var e=this.__data__,n=$(e,t);return!(n<0)&&(n==e.length-1?e.pop():k.call(e,n,1),!0)},N.prototype.get=function(t){var e=this.__data__,n=$(e,t);return n<0?void 0:e[n][1]},N.prototype.has=function(t){return $(this.__data__,t)>-1},N.prototype.set=function(t,e){var n=this.__data__,r=$(n,t);return r<0?n.push([t,e]):n[r][1]=e,this},P.prototype.clear=function(){this.__data__={hash:new B,map:new(E||N),string:new B}},P.prototype.delete=function(t){return F(this,t).delete(t)},P.prototype.get=function(t){return F(this,t).get(t)},P.prototype.has=function(t){return F(this,t).has(t)},P.prototype.set=function(t,e){return F(this,t).set(t,e),this};var L=M((function(t){var e;t=null==(e=t)?"":function(t){if("string"==typeof t)return t;if(q(t))return T?T.call(t):"";var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}(e);var n=[];return l.test(t)&&n.push(""),t.replace(u,(function(t,e,r,o){n.push(r?o.replace(c,"$1"):e||t)})),n}));function R(t){if("string"==typeof t||q(t))return t;var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}function M(t,e){if("function"!=typeof t||e&&"function"!=typeof e)throw new TypeError("Expected a function");var n=function(){var r=arguments,o=e?e.apply(this,r):r[0],i=n.cache;if(i.has(o))return i.get(o);var a=t.apply(this,r);return n.cache=i.set(o,a),a};return n.cache=new(M.Cache||P),n}M.Cache=P;var U=Array.isArray;function G(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}function q(t){return"symbol"==typeof t||function(t){return!!t&&"object"==typeof t}(t)&&"[object Symbol]"==x.call(t)}t.exports=function(t,e,n){var r=null==t?void 0:I(t,e);return void 0===r?n:r}},8552:(t,e,n)=>{var r=n(852)(n(5639),"DataView");t.exports=r},1989:(t,e,n)=>{var r=n(1789),o=n(401),i=n(7667),a=n(1327),s=n(1866);function l(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}l.prototype.clear=r,l.prototype.delete=o,l.prototype.get=i,l.prototype.has=a,l.prototype.set=s,t.exports=l},8407:(t,e,n)=>{var r=n(7040),o=n(4125),i=n(2117),a=n(7518),s=n(3399);function l(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}l.prototype.clear=r,l.prototype.delete=o,l.prototype.get=i,l.prototype.has=a,l.prototype.set=s,t.exports=l},7071:(t,e,n)=>{var r=n(852)(n(5639),"Map");t.exports=r},3369:(t,e,n)=>{var r=n(4785),o=n(1285),i=n(6e3),a=n(9916),s=n(5265);function l(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}l.prototype.clear=r,l.prototype.delete=o,l.prototype.get=i,l.prototype.has=a,l.prototype.set=s,t.exports=l},3818:(t,e,n)=>{var r=n(852)(n(5639),"Promise");t.exports=r},8525:(t,e,n)=>{var r=n(852)(n(5639),"Set");t.exports=r},8668:(t,e,n)=>{var r=n(3369),o=n(619),i=n(2385);function a(t){var e=-1,n=null==t?0:t.length;for(this.__data__=new r;++e<n;)this.add(t[e])}a.prototype.add=a.prototype.push=o,a.prototype.has=i,t.exports=a},6384:(t,e,n)=>{var r=n(8407),o=n(7465),i=n(3779),a=n(7599),s=n(4758),l=n(4309);function u(t){var e=this.__data__=new r(t);this.size=e.size}u.prototype.clear=o,u.prototype.delete=i,u.prototype.get=a,u.prototype.has=s,u.prototype.set=l,t.exports=u},2705:(t,e,n)=>{var r=n(5639).Symbol;t.exports=r},1149:(t,e,n)=>{var r=n(5639).Uint8Array;t.exports=r},577:(t,e,n)=>{var r=n(852)(n(5639),"WeakMap");t.exports=r},6874:t=>{t.exports=function(t,e,n){switch(n.length){case 0:return t.call(e);case 1:return t.call(e,n[0]);case 2:return t.call(e,n[0],n[1]);case 3:return t.call(e,n[0],n[1],n[2])}return t.apply(e,n)}},4963:t=>{t.exports=function(t,e){for(var n=-1,r=null==t?0:t.length,o=0,i=[];++n<r;){var a=t[n];e(a,n,t)&&(i[o++]=a)}return i}},4636:(t,e,n)=>{var r=n(2545),o=n(5694),i=n(1469),a=n(4144),s=n(5776),l=n(6719),u=Object.prototype.hasOwnProperty;t.exports=function(t,e){var n=i(t),c=!n&&o(t),p=!n&&!c&&a(t),f=!n&&!c&&!p&&l(t),d=n||c||p||f,h=d?r(t.length,String):[],m=h.length;for(var v in t)!e&&!u.call(t,v)||d&&("length"==v||p&&("offset"==v||"parent"==v)||f&&("buffer"==v||"byteLength"==v||"byteOffset"==v)||s(v,m))||h.push(v);return h}},2488:t=>{t.exports=function(t,e){for(var n=-1,r=e.length,o=t.length;++n<r;)t[o+n]=e[n];return t}},2908:t=>{t.exports=function(t,e){for(var n=-1,r=null==t?0:t.length;++n<r;)if(e(t[n],n,t))return!0;return!1}},6556:(t,e,n)=>{var r=n(9465),o=n(7813);t.exports=function(t,e,n){(void 0!==n&&!o(t[e],n)||void 0===n&&!(e in t))&&r(t,e,n)}},4865:(t,e,n)=>{var r=n(9465),o=n(7813),i=Object.prototype.hasOwnProperty;t.exports=function(t,e,n){var a=t[e];i.call(t,e)&&o(a,n)&&(void 0!==n||e in t)||r(t,e,n)}},8470:(t,e,n)=>{var r=n(7813);t.exports=function(t,e){for(var n=t.length;n--;)if(r(t[n][0],e))return n;return-1}},9465:(t,e,n)=>{var r=n(8777);t.exports=function(t,e,n){"__proto__"==e&&r?r(t,e,{configurable:!0,enumerable:!0,value:n,writable:!0}):t[e]=n}},3118:(t,e,n)=>{var r=n(3218),o=Object.create,i=function(){function t(){}return function(e){if(!r(e))return{};if(o)return o(e);t.prototype=e;var n=new t;return t.prototype=void 0,n}}();t.exports=i},8483:(t,e,n)=>{var r=n(5063)();t.exports=r},8866:(t,e,n)=>{var r=n(2488),o=n(1469);t.exports=function(t,e,n){var i=e(t);return o(t)?i:r(i,n(t))}},4239:(t,e,n)=>{var r=n(2705),o=n(9607),i=n(2333),a=r?r.toStringTag:void 0;t.exports=function(t){return null==t?void 0===t?"[object Undefined]":"[object Null]":a&&a in Object(t)?o(t):i(t)}},9454:(t,e,n)=>{var r=n(4239),o=n(7005);t.exports=function(t){return o(t)&&"[object Arguments]"==r(t)}},939:(t,e,n)=>{var r=n(2492),o=n(7005);t.exports=function t(e,n,i,a,s){return e===n||(null==e||null==n||!o(e)&&!o(n)?e!=e&&n!=n:r(e,n,i,a,t,s))}},2492:(t,e,n)=>{var r=n(6384),o=n(7114),i=n(8351),a=n(6096),s=n(4160),l=n(1469),u=n(4144),c=n(6719),p="[object Arguments]",f="[object Array]",d="[object Object]",h=Object.prototype.hasOwnProperty;t.exports=function(t,e,n,m,v,g){var y=l(t),A=l(e),b=y?f:s(t),C=A?f:s(e),w=(b=b==p?d:b)==d,x=(C=C==p?d:C)==d,_=b==C;if(_&&u(t)){if(!u(e))return!1;y=!0,w=!1}if(_&&!w)return g||(g=new r),y||c(t)?o(t,e,n,m,v,g):i(t,e,b,n,m,v,g);if(!(1&n)){var S=w&&h.call(t,"__wrapped__"),k=x&&h.call(e,"__wrapped__");if(S||k){var E=S?t.value():t,O=k?e.value():e;return g||(g=new r),v(E,O,n,m,g)}}return!!_&&(g||(g=new r),a(t,e,n,m,v,g))}},8458:(t,e,n)=>{var r=n(3560),o=n(5346),i=n(3218),a=n(346),s=/^\[object .+?Constructor\]$/,l=Function.prototype,u=Object.prototype,c=l.toString,p=u.hasOwnProperty,f=RegExp("^"+c.call(p).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");t.exports=function(t){return!(!i(t)||o(t))&&(r(t)?f:s).test(a(t))}},8749:(t,e,n)=>{var r=n(4239),o=n(1780),i=n(7005),a={};a["[object Float32Array]"]=a["[object Float64Array]"]=a["[object Int8Array]"]=a["[object Int16Array]"]=a["[object Int32Array]"]=a["[object Uint8Array]"]=a["[object Uint8ClampedArray]"]=a["[object Uint16Array]"]=a["[object Uint32Array]"]=!0,a["[object Arguments]"]=a["[object Array]"]=a["[object ArrayBuffer]"]=a["[object Boolean]"]=a["[object DataView]"]=a["[object Date]"]=a["[object Error]"]=a["[object Function]"]=a["[object Map]"]=a["[object Number]"]=a["[object Object]"]=a["[object RegExp]"]=a["[object Set]"]=a["[object String]"]=a["[object WeakMap]"]=!1,t.exports=function(t){return i(t)&&o(t.length)&&!!a[r(t)]}},280:(t,e,n)=>{var r=n(5726),o=n(6916),i=Object.prototype.hasOwnProperty;t.exports=function(t){if(!r(t))return o(t);var e=[];for(var n in Object(t))i.call(t,n)&&"constructor"!=n&&e.push(n);return e}},313:(t,e,n)=>{var r=n(3218),o=n(5726),i=n(3498),a=Object.prototype.hasOwnProperty;t.exports=function(t){if(!r(t))return i(t);var e=o(t),n=[];for(var s in t)("constructor"!=s||!e&&a.call(t,s))&&n.push(s);return n}},2980:(t,e,n)=>{var r=n(6384),o=n(6556),i=n(8483),a=n(9783),s=n(3218),l=n(1704),u=n(6390);t.exports=function t(e,n,c,p,f){e!==n&&i(n,(function(i,l){if(f||(f=new r),s(i))a(e,n,l,c,t,p,f);else{var d=p?p(u(e,l),i,l+"",e,n,f):void 0;void 0===d&&(d=i),o(e,l,d)}}),l)}},9783:(t,e,n)=>{var r=n(6556),o=n(4626),i=n(7133),a=n(278),s=n(8517),l=n(5694),u=n(1469),c=n(9246),p=n(4144),f=n(3560),d=n(3218),h=n(8630),m=n(6719),v=n(6390),g=n(9881);t.exports=function(t,e,n,y,A,b,C){var w=v(t,n),x=v(e,n),_=C.get(x);if(_)r(t,n,_);else{var S=b?b(w,x,n+"",t,e,C):void 0,k=void 0===S;if(k){var E=u(x),O=!E&&p(x),j=!E&&!O&&m(x);S=x,E||O||j?u(w)?S=w:c(w)?S=a(w):O?(k=!1,S=o(x,!0)):j?(k=!1,S=i(x,!0)):S=[]:h(x)||l(x)?(S=w,l(w)?S=g(w):d(w)&&!f(w)||(S=s(x))):k=!1}k&&(C.set(x,S),A(S,x,y,b,C),C.delete(x)),r(t,n,S)}}},5976:(t,e,n)=>{var r=n(6557),o=n(5357),i=n(61);t.exports=function(t,e){return i(o(t,e,r),t+"")}},6560:(t,e,n)=>{var r=n(5703),o=n(8777),i=n(6557),a=o?function(t,e){return o(t,"toString",{configurable:!0,enumerable:!1,value:r(e),writable:!0})}:i;t.exports=a},2545:t=>{t.exports=function(t,e){for(var n=-1,r=Array(t);++n<t;)r[n]=e(n);return r}},1717:t=>{t.exports=function(t){return function(e){return t(e)}}},4757:t=>{t.exports=function(t,e){return t.has(e)}},4318:(t,e,n)=>{var r=n(1149);t.exports=function(t){var e=new t.constructor(t.byteLength);return new r(e).set(new r(t)),e}},4626:(t,e,n)=>{t=n.nmd(t);var r=n(5639),o=e&&!e.nodeType&&e,i=o&&t&&!t.nodeType&&t,a=i&&i.exports===o?r.Buffer:void 0,s=a?a.allocUnsafe:void 0;t.exports=function(t,e){if(e)return t.slice();var n=t.length,r=s?s(n):new t.constructor(n);return t.copy(r),r}},7133:(t,e,n)=>{var r=n(4318);t.exports=function(t,e){var n=e?r(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.length)}},278:t=>{t.exports=function(t,e){var n=-1,r=t.length;for(e||(e=Array(r));++n<r;)e[n]=t[n];return e}},8363:(t,e,n)=>{var r=n(4865),o=n(9465);t.exports=function(t,e,n,i){var a=!n;n||(n={});for(var s=-1,l=e.length;++s<l;){var u=e[s],c=i?i(n[u],t[u],u,n,t):void 0;void 0===c&&(c=t[u]),a?o(n,u,c):r(n,u,c)}return n}},4429:(t,e,n)=>{var r=n(5639)["__core-js_shared__"];t.exports=r},1463:(t,e,n)=>{var r=n(5976),o=n(6612);t.exports=function(t){return r((function(e,n){var r=-1,i=n.length,a=i>1?n[i-1]:void 0,s=i>2?n[2]:void 0;for(a=t.length>3&&"function"==typeof a?(i--,a):void 0,s&&o(n[0],n[1],s)&&(a=i<3?void 0:a,i=1),e=Object(e);++r<i;){var l=n[r];l&&t(e,l,r,a)}return e}))}},5063:t=>{t.exports=function(t){return function(e,n,r){for(var o=-1,i=Object(e),a=r(e),s=a.length;s--;){var l=a[t?s:++o];if(!1===n(i[l],l,i))break}return e}}},8777:(t,e,n)=>{var r=n(852),o=function(){try{var t=r(Object,"defineProperty");return t({},"",{}),t}catch(t){}}();t.exports=o},7114:(t,e,n)=>{var r=n(8668),o=n(2908),i=n(4757);t.exports=function(t,e,n,a,s,l){var u=1&n,c=t.length,p=e.length;if(c!=p&&!(u&&p>c))return!1;var f=l.get(t),d=l.get(e);if(f&&d)return f==e&&d==t;var h=-1,m=!0,v=2&n?new r:void 0;for(l.set(t,e),l.set(e,t);++h<c;){var g=t[h],y=e[h];if(a)var A=u?a(y,g,h,e,t,l):a(g,y,h,t,e,l);if(void 0!==A){if(A)continue;m=!1;break}if(v){if(!o(e,(function(t,e){if(!i(v,e)&&(g===t||s(g,t,n,a,l)))return v.push(e)}))){m=!1;break}}else if(g!==y&&!s(g,y,n,a,l)){m=!1;break}}return l.delete(t),l.delete(e),m}},8351:(t,e,n)=>{var r=n(2705),o=n(1149),i=n(7813),a=n(7114),s=n(8776),l=n(1814),u=r?r.prototype:void 0,c=u?u.valueOf:void 0;t.exports=function(t,e,n,r,u,p,f){switch(n){case"[object DataView]":if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case"[object ArrayBuffer]":return!(t.byteLength!=e.byteLength||!p(new o(t),new o(e)));case"[object Boolean]":case"[object Date]":case"[object Number]":return i(+t,+e);case"[object Error]":return t.name==e.name&&t.message==e.message;case"[object RegExp]":case"[object String]":return t==e+"";case"[object Map]":var d=s;case"[object Set]":var h=1&r;if(d||(d=l),t.size!=e.size&&!h)return!1;var m=f.get(t);if(m)return m==e;r|=2,f.set(t,e);var v=a(d(t),d(e),r,u,p,f);return f.delete(t),v;case"[object Symbol]":if(c)return c.call(t)==c.call(e)}return!1}},6096:(t,e,n)=>{var r=n(8234),o=Object.prototype.hasOwnProperty;t.exports=function(t,e,n,i,a,s){var l=1&n,u=r(t),c=u.length;if(c!=r(e).length&&!l)return!1;for(var p=c;p--;){var f=u[p];if(!(l?f in e:o.call(e,f)))return!1}var d=s.get(t),h=s.get(e);if(d&&h)return d==e&&h==t;var m=!0;s.set(t,e),s.set(e,t);for(var v=l;++p<c;){var g=t[f=u[p]],y=e[f];if(i)var A=l?i(y,g,f,e,t,s):i(g,y,f,t,e,s);if(!(void 0===A?g===y||a(g,y,n,i,s):A)){m=!1;break}v||(v="constructor"==f)}if(m&&!v){var b=t.constructor,C=e.constructor;b==C||!("constructor"in t)||!("constructor"in e)||"function"==typeof b&&b instanceof b&&"function"==typeof C&&C instanceof C||(m=!1)}return s.delete(t),s.delete(e),m}},1957:(t,e,n)=>{var r="object"==typeof n.g&&n.g&&n.g.Object===Object&&n.g;t.exports=r},8234:(t,e,n)=>{var r=n(8866),o=n(9551),i=n(3674);t.exports=function(t){return r(t,i,o)}},5050:(t,e,n)=>{var r=n(7019);t.exports=function(t,e){var n=t.__data__;return r(e)?n["string"==typeof e?"string":"hash"]:n.map}},852:(t,e,n)=>{var r=n(8458),o=n(7801);t.exports=function(t,e){var n=o(t,e);return r(n)?n:void 0}},5924:(t,e,n)=>{var r=n(5569)(Object.getPrototypeOf,Object);t.exports=r},9607:(t,e,n)=>{var r=n(2705),o=Object.prototype,i=o.hasOwnProperty,a=o.toString,s=r?r.toStringTag:void 0;t.exports=function(t){var e=i.call(t,s),n=t[s];try{t[s]=void 0;var r=!0}catch(t){}var o=a.call(t);return r&&(e?t[s]=n:delete t[s]),o}},9551:(t,e,n)=>{var r=n(4963),o=n(479),i=Object.prototype.propertyIsEnumerable,a=Object.getOwnPropertySymbols,s=a?function(t){return null==t?[]:(t=Object(t),r(a(t),(function(e){return i.call(t,e)})))}:o;t.exports=s},4160:(t,e,n)=>{var r=n(8552),o=n(7071),i=n(3818),a=n(8525),s=n(577),l=n(4239),u=n(346),c="[object Map]",p="[object Promise]",f="[object Set]",d="[object WeakMap]",h="[object DataView]",m=u(r),v=u(o),g=u(i),y=u(a),A=u(s),b=l;(r&&b(new r(new ArrayBuffer(1)))!=h||o&&b(new o)!=c||i&&b(i.resolve())!=p||a&&b(new a)!=f||s&&b(new s)!=d)&&(b=function(t){var e=l(t),n="[object Object]"==e?t.constructor:void 0,r=n?u(n):"";if(r)switch(r){case m:return h;case v:return c;case g:return p;case y:return f;case A:return d}return e}),t.exports=b},7801:t=>{t.exports=function(t,e){return null==t?void 0:t[e]}},1789:(t,e,n)=>{var r=n(4536);t.exports=function(){this.__data__=r?r(null):{},this.size=0}},401:t=>{t.exports=function(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}},7667:(t,e,n)=>{var r=n(4536),o=Object.prototype.hasOwnProperty;t.exports=function(t){var e=this.__data__;if(r){var n=e[t];return"__lodash_hash_undefined__"===n?void 0:n}return o.call(e,t)?e[t]:void 0}},1327:(t,e,n)=>{var r=n(4536),o=Object.prototype.hasOwnProperty;t.exports=function(t){var e=this.__data__;return r?void 0!==e[t]:o.call(e,t)}},1866:(t,e,n)=>{var r=n(4536);t.exports=function(t,e){var n=this.__data__;return this.size+=this.has(t)?0:1,n[t]=r&&void 0===e?"__lodash_hash_undefined__":e,this}},8517:(t,e,n)=>{var r=n(3118),o=n(5924),i=n(5726);t.exports=function(t){return"function"!=typeof t.constructor||i(t)?{}:r(o(t))}},5776:t=>{var e=/^(?:0|[1-9]\d*)$/;t.exports=function(t,n){var r=typeof t;return!!(n=null==n?9007199254740991:n)&&("number"==r||"symbol"!=r&&e.test(t))&&t>-1&&t%1==0&&t<n}},6612:(t,e,n)=>{var r=n(7813),o=n(1240),i=n(5776),a=n(3218);t.exports=function(t,e,n){if(!a(n))return!1;var s=typeof e;return!!("number"==s?o(n)&&i(e,n.length):"string"==s&&e in n)&&r(n[e],t)}},7019:t=>{t.exports=function(t){var e=typeof t;return"string"==e||"number"==e||"symbol"==e||"boolean"==e?"__proto__"!==t:null===t}},5346:(t,e,n)=>{var r,o=n(4429),i=(r=/[^.]+$/.exec(o&&o.keys&&o.keys.IE_PROTO||""))?"Symbol(src)_1."+r:"";t.exports=function(t){return!!i&&i in t}},5726:t=>{var e=Object.prototype;t.exports=function(t){var n=t&&t.constructor;return t===("function"==typeof n&&n.prototype||e)}},7040:t=>{t.exports=function(){this.__data__=[],this.size=0}},4125:(t,e,n)=>{var r=n(8470),o=Array.prototype.splice;t.exports=function(t){var e=this.__data__,n=r(e,t);return!(n<0)&&(n==e.length-1?e.pop():o.call(e,n,1),--this.size,!0)}},2117:(t,e,n)=>{var r=n(8470);t.exports=function(t){var e=this.__data__,n=r(e,t);return n<0?void 0:e[n][1]}},7518:(t,e,n)=>{var r=n(8470);t.exports=function(t){return r(this.__data__,t)>-1}},3399:(t,e,n)=>{var r=n(8470);t.exports=function(t,e){var n=this.__data__,o=r(n,t);return o<0?(++this.size,n.push([t,e])):n[o][1]=e,this}},4785:(t,e,n)=>{var r=n(1989),o=n(8407),i=n(7071);t.exports=function(){this.size=0,this.__data__={hash:new r,map:new(i||o),string:new r}}},1285:(t,e,n)=>{var r=n(5050);t.exports=function(t){var e=r(this,t).delete(t);return this.size-=e?1:0,e}},6e3:(t,e,n)=>{var r=n(5050);t.exports=function(t){return r(this,t).get(t)}},9916:(t,e,n)=>{var r=n(5050);t.exports=function(t){return r(this,t).has(t)}},5265:(t,e,n)=>{var r=n(5050);t.exports=function(t,e){var n=r(this,t),o=n.size;return n.set(t,e),this.size+=n.size==o?0:1,this}},8776:t=>{t.exports=function(t){var e=-1,n=Array(t.size);return t.forEach((function(t,r){n[++e]=[r,t]})),n}},4536:(t,e,n)=>{var r=n(852)(Object,"create");t.exports=r},6916:(t,e,n)=>{var r=n(5569)(Object.keys,Object);t.exports=r},3498:t=>{t.exports=function(t){var e=[];if(null!=t)for(var n in Object(t))e.push(n);return e}},1167:(t,e,n)=>{t=n.nmd(t);var r=n(1957),o=e&&!e.nodeType&&e,i=o&&t&&!t.nodeType&&t,a=i&&i.exports===o&&r.process,s=function(){try{var t=i&&i.require&&i.require("util").types;return t||a&&a.binding&&a.binding("util")}catch(t){}}();t.exports=s},2333:t=>{var e=Object.prototype.toString;t.exports=function(t){return e.call(t)}},5569:t=>{t.exports=function(t,e){return function(n){return t(e(n))}}},5357:(t,e,n)=>{var r=n(6874),o=Math.max;t.exports=function(t,e,n){return e=o(void 0===e?t.length-1:e,0),function(){for(var i=arguments,a=-1,s=o(i.length-e,0),l=Array(s);++a<s;)l[a]=i[e+a];a=-1;for(var u=Array(e+1);++a<e;)u[a]=i[a];return u[e]=n(l),r(t,this,u)}}},5639:(t,e,n)=>{var r=n(1957),o="object"==typeof self&&self&&self.Object===Object&&self,i=r||o||Function("return this")();t.exports=i},6390:t=>{t.exports=function(t,e){if(("constructor"!==e||"function"!=typeof t[e])&&"__proto__"!=e)return t[e]}},619:t=>{t.exports=function(t){return this.__data__.set(t,"__lodash_hash_undefined__"),this}},2385:t=>{t.exports=function(t){return this.__data__.has(t)}},1814:t=>{t.exports=function(t){var e=-1,n=Array(t.size);return t.forEach((function(t){n[++e]=t})),n}},61:(t,e,n)=>{var r=n(6560),o=n(1275)(r);t.exports=o},1275:t=>{var e=Date.now;t.exports=function(t){var n=0,r=0;return function(){var o=e(),i=16-(o-r);if(r=o,i>0){if(++n>=800)return arguments[0]}else n=0;return t.apply(void 0,arguments)}}},7465:(t,e,n)=>{var r=n(8407);t.exports=function(){this.__data__=new r,this.size=0}},3779:t=>{t.exports=function(t){var e=this.__data__,n=e.delete(t);return this.size=e.size,n}},7599:t=>{t.exports=function(t){return this.__data__.get(t)}},4758:t=>{t.exports=function(t){return this.__data__.has(t)}},4309:(t,e,n)=>{var r=n(8407),o=n(7071),i=n(3369);t.exports=function(t,e){var n=this.__data__;if(n instanceof r){var a=n.__data__;if(!o||a.length<199)return a.push([t,e]),this.size=++n.size,this;n=this.__data__=new i(a)}return n.set(t,e),this.size=n.size,this}},346:t=>{var e=Function.prototype.toString;t.exports=function(t){if(null!=t){try{return e.call(t)}catch(t){}try{return t+""}catch(t){}}return""}},5703:t=>{t.exports=function(t){return function(){return t}}},7813:t=>{t.exports=function(t,e){return t===e||t!=t&&e!=e}},6557:t=>{t.exports=function(t){return t}},5694:(t,e,n)=>{var r=n(9454),o=n(7005),i=Object.prototype,a=i.hasOwnProperty,s=i.propertyIsEnumerable,l=r(function(){return arguments}())?r:function(t){return o(t)&&a.call(t,"callee")&&!s.call(t,"callee")};t.exports=l},1469:t=>{var e=Array.isArray;t.exports=e},1240:(t,e,n)=>{var r=n(3560),o=n(1780);t.exports=function(t){return null!=t&&o(t.length)&&!r(t)}},9246:(t,e,n)=>{var r=n(1240),o=n(7005);t.exports=function(t){return o(t)&&r(t)}},4144:(t,e,n)=>{t=n.nmd(t);var r=n(5639),o=n(5062),i=e&&!e.nodeType&&e,a=i&&t&&!t.nodeType&&t,s=a&&a.exports===i?r.Buffer:void 0,l=(s?s.isBuffer:void 0)||o;t.exports=l},8446:(t,e,n)=>{var r=n(939);t.exports=function(t,e){return r(t,e)}},3560:(t,e,n)=>{var r=n(4239),o=n(3218);t.exports=function(t){if(!o(t))return!1;var e=r(t);return"[object Function]"==e||"[object GeneratorFunction]"==e||"[object AsyncFunction]"==e||"[object Proxy]"==e}},1780:t=>{t.exports=function(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=9007199254740991}},3218:t=>{t.exports=function(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}},7005:t=>{t.exports=function(t){return null!=t&&"object"==typeof t}},8630:(t,e,n)=>{var r=n(4239),o=n(5924),i=n(7005),a=Function.prototype,s=Object.prototype,l=a.toString,u=s.hasOwnProperty,c=l.call(Object);t.exports=function(t){if(!i(t)||"[object Object]"!=r(t))return!1;var e=o(t);if(null===e)return!0;var n=u.call(e,"constructor")&&e.constructor;return"function"==typeof n&&n instanceof n&&l.call(n)==c}},6719:(t,e,n)=>{var r=n(8749),o=n(1717),i=n(1167),a=i&&i.isTypedArray,s=a?o(a):r;t.exports=s},3674:(t,e,n)=>{var r=n(4636),o=n(280),i=n(1240);t.exports=function(t){return i(t)?r(t):o(t)}},1704:(t,e,n)=>{var r=n(4636),o=n(313),i=n(1240);t.exports=function(t){return i(t)?r(t,!0):o(t)}},3857:(t,e,n)=>{var r=n(2980),o=n(1463)((function(t,e,n){r(t,e,n)}));t.exports=o},479:t=>{t.exports=function(){return[]}},5062:t=>{t.exports=function(){return!1}},9881:(t,e,n)=>{var r=n(8363),o=n(1704);t.exports=function(t){return r(t,o(t))}},7699:(t,e,n)=>{"use strict";var r=n(5108),o=n(9208),i=n(4587);function a(t){t=t||{},this.catalogs={},this.locale="",this.domain="messages",this.listeners=[],this.sourceLocale="",t.sourceLocale&&("string"==typeof t.sourceLocale?this.sourceLocale=t.sourceLocale:this.warn("The `sourceLocale` option should be a string")),this.debug="debug"in t&&!0===t.debug}t.exports=a,a.prototype.on=function(t,e){this.listeners.push({eventName:t,callback:e})},a.prototype.off=function(t,e){this.listeners=this.listeners.filter((function(n){return!1==(n.eventName===t&&n.callback===e)}))},a.prototype.emit=function(t,e){for(var n=0;n<this.listeners.length;n++){var r=this.listeners[n];r.eventName===t&&r.callback(e)}},a.prototype.warn=function(t){this.debug&&r.warn(t),this.emit("error",new Error(t))},a.prototype.addTranslations=function(t,e,n){this.catalogs[t]||(this.catalogs[t]={}),this.catalogs[t][e]=n},a.prototype.setLocale=function(t){"string"==typeof t?(""===t.trim()&&this.warn("You called setLocale() with an empty value, which makes little sense."),t===this.sourceLocale||this.catalogs[t]||this.warn('You called setLocale() with "'+t+'", but no translations for that locale has been added.'),this.locale=t):this.warn("You called setLocale() with an argument of type "+typeof t+". The locale must be a string.")},a.prototype.setTextDomain=function(t){"string"==typeof t?(""===t.trim()&&this.warn("You called setTextDomain() with an empty `domain` value."),this.domain=t):this.warn("You called setTextDomain() with an argument of type "+typeof t+". The domain must be a string.")},a.prototype.gettext=function(t){return this.dnpgettext(this.domain,"",t)},a.prototype.dgettext=function(t,e){return this.dnpgettext(t,"",e)},a.prototype.ngettext=function(t,e,n){return this.dnpgettext(this.domain,"",t,e,n)},a.prototype.dngettext=function(t,e,n,r){return this.dnpgettext(t,"",e,n,r)},a.prototype.pgettext=function(t,e){return this.dnpgettext(this.domain,t,e)},a.prototype.dpgettext=function(t,e,n){return this.dnpgettext(t,e,n)},a.prototype.npgettext=function(t,e,n,r){return this.dnpgettext(this.domain,t,e,n,r)},a.prototype.dnpgettext=function(t,e,n,r,o){var s,l,u=n;if(e=e||"",isNaN(o)||1===o||(u=r||n),s=this._getTranslation(t,e,n)){if("number"==typeof o)"boolean"==typeof(l=(0,i[a.getLanguageCode(this.locale)].pluralsFunc)(o))&&(l=l?1:0);else l=0;return s.msgstr[l]||u}return this.sourceLocale&&this.locale===this.sourceLocale||this.warn('No translation was found for msgid "'+n+'" in msgctxt "'+e+'" and domain "'+t+'"'),u},a.prototype.getComment=function(t,e,n){var r;return(r=this._getTranslation(t,e,n))&&r.comments||{}},a.prototype._getTranslation=function(t,e,n){return e=e||"",o(this.catalogs,[this.locale,t,"translations",e,n])},a.getLanguageCode=function(t){return t.split(/[\-_]/)[0].toLowerCase()},a.prototype.textdomain=function(t){this.debug&&r.warn("textdomain(domain) was used to set locales in node-gettext v1. Make sure you are using it for domains, and switch to setLocale(locale) if you are not.\n\n To read more about the migration from node-gettext v1 to v2, see https://github.com/alexanderwallin/node-gettext/#migrating-from-1x-to-2x\n\nThis warning will be removed in the final 2.0.0"),this.setTextDomain(t)},a.prototype.setlocale=function(t){this.setLocale(t)},a.prototype.addTextdomain=function(){r.error("addTextdomain() is deprecated.\n\n* To add translations, use addTranslations()\n* To set the default domain, use setTextDomain() (or its alias textdomain())\n\nTo read more about the migration from node-gettext v1 to v2, see https://github.com/alexanderwallin/node-gettext/#migrating-from-1x-to-2x")}},4587:t=>{"use strict";t.exports={ach:{name:"Acholi",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(t){return t>1}},af:{name:"Afrikaans",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},ak:{name:"Akan",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(t){return t>1}},am:{name:"Amharic",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(t){return t>1}},an:{name:"Aragonese",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},ar:{name:"Arabic",examples:[{plural:0,sample:0},{plural:1,sample:1},{plural:2,sample:2},{plural:3,sample:3},{plural:4,sample:11},{plural:5,sample:100}],nplurals:6,pluralsText:"nplurals = 6; plural = (n === 0 ? 0 : n === 1 ? 1 : n === 2 ? 2 : n % 100 >= 3 && n % 100 <= 10 ? 3 : n % 100 >= 11 ? 4 : 5)",pluralsFunc:function(t){return 0===t?0:1===t?1:2===t?2:t%100>=3&&t%100<=10?3:t%100>=11?4:5}},arn:{name:"Mapudungun",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(t){return t>1}},ast:{name:"Asturian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},ay:{name:"Aymará",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},az:{name:"Azerbaijani",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},be:{name:"Belarusian",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:5}],nplurals:3,pluralsText:"nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)",pluralsFunc:function(t){return t%10==1&&t%100!=11?0:t%10>=2&&t%10<=4&&(t%100<10||t%100>=20)?1:2}},bg:{name:"Bulgarian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},bn:{name:"Bengali",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},bo:{name:"Tibetan",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},br:{name:"Breton",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(t){return t>1}},brx:{name:"Bodo",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},bs:{name:"Bosnian",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:5}],nplurals:3,pluralsText:"nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)",pluralsFunc:function(t){return t%10==1&&t%100!=11?0:t%10>=2&&t%10<=4&&(t%100<10||t%100>=20)?1:2}},ca:{name:"Catalan",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},cgg:{name:"Chiga",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},cs:{name:"Czech",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:5}],nplurals:3,pluralsText:"nplurals = 3; plural = (n === 1 ? 0 : (n >= 2 && n <= 4) ? 1 : 2)",pluralsFunc:function(t){return 1===t?0:t>=2&&t<=4?1:2}},csb:{name:"Kashubian",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:5}],nplurals:3,pluralsText:"nplurals = 3; plural = (n === 1 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)",pluralsFunc:function(t){return 1===t?0:t%10>=2&&t%10<=4&&(t%100<10||t%100>=20)?1:2}},cy:{name:"Welsh",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:3},{plural:3,sample:8}],nplurals:4,pluralsText:"nplurals = 4; plural = (n === 1 ? 0 : n === 2 ? 1 : (n !== 8 && n !== 11) ? 2 : 3)",pluralsFunc:function(t){return 1===t?0:2===t?1:8!==t&&11!==t?2:3}},da:{name:"Danish",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},de:{name:"German",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},doi:{name:"Dogri",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},dz:{name:"Dzongkha",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},el:{name:"Greek",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},en:{name:"English",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},eo:{name:"Esperanto",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},es:{name:"Spanish",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},et:{name:"Estonian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},eu:{name:"Basque",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},fa:{name:"Persian",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},ff:{name:"Fulah",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},fi:{name:"Finnish",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},fil:{name:"Filipino",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(t){return t>1}},fo:{name:"Faroese",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},fr:{name:"French",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(t){return t>1}},fur:{name:"Friulian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},fy:{name:"Frisian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},ga:{name:"Irish",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:3},{plural:3,sample:7},{plural:4,sample:11}],nplurals:5,pluralsText:"nplurals = 5; plural = (n === 1 ? 0 : n === 2 ? 1 : n < 7 ? 2 : n < 11 ? 3 : 4)",pluralsFunc:function(t){return 1===t?0:2===t?1:t<7?2:t<11?3:4}},gd:{name:"Scottish Gaelic",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:3},{plural:3,sample:20}],nplurals:4,pluralsText:"nplurals = 4; plural = ((n === 1 || n === 11) ? 0 : (n === 2 || n === 12) ? 1 : (n > 2 && n < 20) ? 2 : 3)",pluralsFunc:function(t){return 1===t||11===t?0:2===t||12===t?1:t>2&&t<20?2:3}},gl:{name:"Galician",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},gu:{name:"Gujarati",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},gun:{name:"Gun",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(t){return t>1}},ha:{name:"Hausa",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},he:{name:"Hebrew",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},hi:{name:"Hindi",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},hne:{name:"Chhattisgarhi",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},hr:{name:"Croatian",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:5}],nplurals:3,pluralsText:"nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)",pluralsFunc:function(t){return t%10==1&&t%100!=11?0:t%10>=2&&t%10<=4&&(t%100<10||t%100>=20)?1:2}},hu:{name:"Hungarian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},hy:{name:"Armenian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},id:{name:"Indonesian",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},is:{name:"Icelandic",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n % 10 !== 1 || n % 100 === 11)",pluralsFunc:function(t){return t%10!=1||t%100==11}},it:{name:"Italian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},ja:{name:"Japanese",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},jbo:{name:"Lojban",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},jv:{name:"Javanese",examples:[{plural:0,sample:0},{plural:1,sample:1}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 0)",pluralsFunc:function(t){return 0!==t}},ka:{name:"Georgian",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},kk:{name:"Kazakh",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},km:{name:"Khmer",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},kn:{name:"Kannada",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},ko:{name:"Korean",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},ku:{name:"Kurdish",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},kw:{name:"Cornish",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:3},{plural:3,sample:4}],nplurals:4,pluralsText:"nplurals = 4; plural = (n === 1 ? 0 : n === 2 ? 1 : n === 3 ? 2 : 3)",pluralsFunc:function(t){return 1===t?0:2===t?1:3===t?2:3}},ky:{name:"Kyrgyz",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},lb:{name:"Letzeburgesch",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},ln:{name:"Lingala",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(t){return t>1}},lo:{name:"Lao",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},lt:{name:"Lithuanian",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:10}],nplurals:3,pluralsText:"nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)",pluralsFunc:function(t){return t%10==1&&t%100!=11?0:t%10>=2&&(t%100<10||t%100>=20)?1:2}},lv:{name:"Latvian",examples:[{plural:2,sample:0},{plural:0,sample:1},{plural:1,sample:2}],nplurals:3,pluralsText:"nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n !== 0 ? 1 : 2)",pluralsFunc:function(t){return t%10==1&&t%100!=11?0:0!==t?1:2}},mai:{name:"Maithili",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},mfe:{name:"Mauritian Creole",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(t){return t>1}},mg:{name:"Malagasy",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(t){return t>1}},mi:{name:"Maori",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(t){return t>1}},mk:{name:"Macedonian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n === 1 || n % 10 === 1 ? 0 : 1)",pluralsFunc:function(t){return 1===t||t%10==1?0:1}},ml:{name:"Malayalam",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},mn:{name:"Mongolian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},mni:{name:"Manipuri",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},mnk:{name:"Mandinka",examples:[{plural:0,sample:0},{plural:1,sample:1},{plural:2,sample:2}],nplurals:3,pluralsText:"nplurals = 3; plural = (n === 0 ? 0 : n === 1 ? 1 : 2)",pluralsFunc:function(t){return 0===t?0:1===t?1:2}},mr:{name:"Marathi",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},ms:{name:"Malay",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},mt:{name:"Maltese",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:11},{plural:3,sample:20}],nplurals:4,pluralsText:"nplurals = 4; plural = (n === 1 ? 0 : n === 0 || ( n % 100 > 1 && n % 100 < 11) ? 1 : (n % 100 > 10 && n % 100 < 20 ) ? 2 : 3)",pluralsFunc:function(t){return 1===t?0:0===t||t%100>1&&t%100<11?1:t%100>10&&t%100<20?2:3}},my:{name:"Burmese",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},nah:{name:"Nahuatl",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},nap:{name:"Neapolitan",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},nb:{name:"Norwegian Bokmal",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},ne:{name:"Nepali",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},nl:{name:"Dutch",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},nn:{name:"Norwegian Nynorsk",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},no:{name:"Norwegian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},nso:{name:"Northern Sotho",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},oc:{name:"Occitan",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(t){return t>1}},or:{name:"Oriya",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},pa:{name:"Punjabi",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},pap:{name:"Papiamento",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},pl:{name:"Polish",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:5}],nplurals:3,pluralsText:"nplurals = 3; plural = (n === 1 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)",pluralsFunc:function(t){return 1===t?0:t%10>=2&&t%10<=4&&(t%100<10||t%100>=20)?1:2}},pms:{name:"Piemontese",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},ps:{name:"Pashto",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},pt:{name:"Portuguese",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},rm:{name:"Romansh",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},ro:{name:"Romanian",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:20}],nplurals:3,pluralsText:"nplurals = 3; plural = (n === 1 ? 0 : (n === 0 || (n % 100 > 0 && n % 100 < 20)) ? 1 : 2)",pluralsFunc:function(t){return 1===t?0:0===t||t%100>0&&t%100<20?1:2}},ru:{name:"Russian",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:5}],nplurals:3,pluralsText:"nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)",pluralsFunc:function(t){return t%10==1&&t%100!=11?0:t%10>=2&&t%10<=4&&(t%100<10||t%100>=20)?1:2}},rw:{name:"Kinyarwanda",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},sah:{name:"Yakut",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},sat:{name:"Santali",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},sco:{name:"Scots",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},sd:{name:"Sindhi",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},se:{name:"Northern Sami",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},si:{name:"Sinhala",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},sk:{name:"Slovak",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:5}],nplurals:3,pluralsText:"nplurals = 3; plural = (n === 1 ? 0 : (n >= 2 && n <= 4) ? 1 : 2)",pluralsFunc:function(t){return 1===t?0:t>=2&&t<=4?1:2}},sl:{name:"Slovenian",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:3},{plural:3,sample:5}],nplurals:4,pluralsText:"nplurals = 4; plural = (n % 100 === 1 ? 0 : n % 100 === 2 ? 1 : n % 100 === 3 || n % 100 === 4 ? 2 : 3)",pluralsFunc:function(t){return t%100==1?0:t%100==2?1:t%100==3||t%100==4?2:3}},so:{name:"Somali",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},son:{name:"Songhay",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},sq:{name:"Albanian",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},sr:{name:"Serbian",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:5}],nplurals:3,pluralsText:"nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)",pluralsFunc:function(t){return t%10==1&&t%100!=11?0:t%10>=2&&t%10<=4&&(t%100<10||t%100>=20)?1:2}},su:{name:"Sundanese",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},sv:{name:"Swedish",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},sw:{name:"Swahili",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},ta:{name:"Tamil",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},te:{name:"Telugu",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},tg:{name:"Tajik",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(t){return t>1}},th:{name:"Thai",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},ti:{name:"Tigrinya",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(t){return t>1}},tk:{name:"Turkmen",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},tr:{name:"Turkish",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(t){return t>1}},tt:{name:"Tatar",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},ug:{name:"Uyghur",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},uk:{name:"Ukrainian",examples:[{plural:0,sample:1},{plural:1,sample:2},{plural:2,sample:5}],nplurals:3,pluralsText:"nplurals = 3; plural = (n % 10 === 1 && n % 100 !== 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2)",pluralsFunc:function(t){return t%10==1&&t%100!=11?0:t%10>=2&&t%10<=4&&(t%100<10||t%100>=20)?1:2}},ur:{name:"Urdu",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},uz:{name:"Uzbek",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(t){return t>1}},vi:{name:"Vietnamese",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},wa:{name:"Walloon",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n > 1)",pluralsFunc:function(t){return t>1}},wo:{name:"Wolof",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}},yo:{name:"Yoruba",examples:[{plural:0,sample:1},{plural:1,sample:2}],nplurals:2,pluralsText:"nplurals = 2; plural = (n !== 1)",pluralsFunc:function(t){return 1!==t}},zh:{name:"Chinese",examples:[{plural:0,sample:1}],nplurals:1,pluralsText:"nplurals = 1; plural = 0",pluralsFunc:function(){return 0}}}},686:(t,e,n)=>{"use strict";var r=n(4155),o=n(5108);function i(t){return i="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},i(t)}var a,s,l=n(729).codes,u=l.ERR_AMBIGUOUS_ARGUMENT,c=l.ERR_INVALID_ARG_TYPE,p=l.ERR_INVALID_ARG_VALUE,f=l.ERR_INVALID_RETURN_VALUE,d=l.ERR_MISSING_ARGS,h=n(1969),m=n(374).inspect,v=n(374).types,g=v.isPromise,y=v.isRegExp,A=Object.assign?Object.assign:n(8091).assign,b=Object.is?Object.is:n(609);new Map;function C(){var t=n(3632);a=t.isDeepEqual,s=t.isDeepStrictEqual}var w=!1,x=t.exports=E,_={};function S(t){if(t.message instanceof Error)throw t.message;throw new h(t)}function k(t,e,n,r){if(!n){var o=!1;if(0===e)o=!0,r="No value argument passed to `assert.ok()`";else if(r instanceof Error)throw r;var i=new h({actual:n,expected:!0,message:r,operator:"==",stackStartFn:t});throw i.generatedMessage=o,i}}function E(){for(var t=arguments.length,e=new Array(t),n=0;n<t;n++)e[n]=arguments[n];k.apply(void 0,[E,e.length].concat(e))}x.fail=function t(e,n,i,a,s){var l,u=arguments.length;if(0===u)l="Failed";else if(1===u)i=e,e=void 0;else{if(!1===w){w=!0;var c=r.emitWarning?r.emitWarning:o.warn.bind(o);c("assert.fail() with more than one argument is deprecated. Please use assert.strictEqual() instead or only pass a message.","DeprecationWarning","DEP0094")}2===u&&(a="!=")}if(i instanceof Error)throw i;var p={actual:e,expected:n,operator:void 0===a?"fail":a,stackStartFn:s||t};void 0!==i&&(p.message=i);var f=new h(p);throw l&&(f.message=l,f.generatedMessage=!0),f},x.AssertionError=h,x.ok=E,x.equal=function t(e,n,r){if(arguments.length<2)throw new d("actual","expected");e!=n&&S({actual:e,expected:n,message:r,operator:"==",stackStartFn:t})},x.notEqual=function t(e,n,r){if(arguments.length<2)throw new d("actual","expected");e==n&&S({actual:e,expected:n,message:r,operator:"!=",stackStartFn:t})},x.deepEqual=function t(e,n,r){if(arguments.length<2)throw new d("actual","expected");void 0===a&&C(),a(e,n)||S({actual:e,expected:n,message:r,operator:"deepEqual",stackStartFn:t})},x.notDeepEqual=function t(e,n,r){if(arguments.length<2)throw new d("actual","expected");void 0===a&&C(),a(e,n)&&S({actual:e,expected:n,message:r,operator:"notDeepEqual",stackStartFn:t})},x.deepStrictEqual=function t(e,n,r){if(arguments.length<2)throw new d("actual","expected");void 0===a&&C(),s(e,n)||S({actual:e,expected:n,message:r,operator:"deepStrictEqual",stackStartFn:t})},x.notDeepStrictEqual=function t(e,n,r){if(arguments.length<2)throw new d("actual","expected");void 0===a&&C();s(e,n)&&S({actual:e,expected:n,message:r,operator:"notDeepStrictEqual",stackStartFn:t})},x.strictEqual=function t(e,n,r){if(arguments.length<2)throw new d("actual","expected");b(e,n)||S({actual:e,expected:n,message:r,operator:"strictEqual",stackStartFn:t})},x.notStrictEqual=function t(e,n,r){if(arguments.length<2)throw new d("actual","expected");b(e,n)&&S({actual:e,expected:n,message:r,operator:"notStrictEqual",stackStartFn:t})};var O=function t(e,n,r){var o=this;!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),n.forEach((function(t){t in e&&(void 0!==r&&"string"==typeof r[t]&&y(e[t])&&e[t].test(r[t])?o[t]=r[t]:o[t]=e[t])}))};function j(t,e,n,r,o,i){if(!(n in t)||!s(t[n],e[n])){if(!r){var a=new O(t,o),l=new O(e,o,t),u=new h({actual:a,expected:l,operator:"deepStrictEqual",stackStartFn:i});throw u.actual=t,u.expected=e,u.operator=i.name,u}S({actual:t,expected:e,message:r,operator:i.name,stackStartFn:i})}}function T(t,e,n,r){if("function"!=typeof e){if(y(e))return e.test(t);if(2===arguments.length)throw new c("expected",["Function","RegExp"],e);if("object"!==i(t)||null===t){var o=new h({actual:t,expected:e,message:n,operator:"deepStrictEqual",stackStartFn:r});throw o.operator=r.name,o}var s=Object.keys(e);if(e instanceof Error)s.push("name","message");else if(0===s.length)throw new p("error",e,"may not be an empty object");return void 0===a&&C(),s.forEach((function(o){"string"==typeof t[o]&&y(e[o])&&e[o].test(t[o])||j(t,e,o,n,s,r)})),!0}return void 0!==e.prototype&&t instanceof e||!Error.isPrototypeOf(e)&&!0===e.call({},t)}function B(t){if("function"!=typeof t)throw new c("fn","Function",t);try{t()}catch(t){return t}return _}function N(t){return g(t)||null!==t&&"object"===i(t)&&"function"==typeof t.then&&"function"==typeof t.catch}function P(t){return Promise.resolve().then((function(){var e;if("function"==typeof t){if(!N(e=t()))throw new f("instance of Promise","promiseFn",e)}else{if(!N(t))throw new c("promiseFn",["Function","Promise"],t);e=t}return Promise.resolve().then((function(){return e})).then((function(){return _})).catch((function(t){return t}))}))}function $(t,e,n,r){if("string"==typeof n){if(4===arguments.length)throw new c("error",["Object","Error","Function","RegExp"],n);if("object"===i(e)&&null!==e){if(e.message===n)throw new u("error/message",'The error message "'.concat(e.message,'" is identical to the message.'))}else if(e===n)throw new u("error/message",'The error "'.concat(e,'" is identical to the message.'));r=n,n=void 0}else if(null!=n&&"object"!==i(n)&&"function"!=typeof n)throw new c("error",["Object","Error","Function","RegExp"],n);if(e===_){var o="";n&&n.name&&(o+=" (".concat(n.name,")")),o+=r?": ".concat(r):".";var a="rejects"===t.name?"rejection":"exception";S({actual:void 0,expected:n,operator:t.name,message:"Missing expected ".concat(a).concat(o),stackStartFn:t})}if(n&&!T(e,n,r,t))throw e}function I(t,e,n,r){if(e!==_){if("string"==typeof n&&(r=n,n=void 0),!n||T(e,n)){var o=r?": ".concat(r):".",i="doesNotReject"===t.name?"rejection":"exception";S({actual:e,expected:n,operator:t.name,message:"Got unwanted ".concat(i).concat(o,"\n")+'Actual message: "'.concat(e&&e.message,'"'),stackStartFn:t})}throw e}}function z(){for(var t=arguments.length,e=new Array(t),n=0;n<t;n++)e[n]=arguments[n];k.apply(void 0,[z,e.length].concat(e))}x.throws=function t(e){for(var n=arguments.length,r=new Array(n>1?n-1:0),o=1;o<n;o++)r[o-1]=arguments[o];$.apply(void 0,[t,B(e)].concat(r))},x.rejects=function t(e){for(var n=arguments.length,r=new Array(n>1?n-1:0),o=1;o<n;o++)r[o-1]=arguments[o];return P(e).then((function(e){return $.apply(void 0,[t,e].concat(r))}))},x.doesNotThrow=function t(e){for(var n=arguments.length,r=new Array(n>1?n-1:0),o=1;o<n;o++)r[o-1]=arguments[o];I.apply(void 0,[t,B(e)].concat(r))},x.doesNotReject=function t(e){for(var n=arguments.length,r=new Array(n>1?n-1:0),o=1;o<n;o++)r[o-1]=arguments[o];return P(e).then((function(e){return I.apply(void 0,[t,e].concat(r))}))},x.ifError=function t(e){if(null!=e){var n="ifError got unwanted exception: ";"object"===i(e)&&"string"==typeof e.message?0===e.message.length&&e.constructor?n+=e.constructor.name:n+=e.message:n+=m(e);var r=new h({actual:e,expected:null,operator:"ifError",message:n,stackStartFn:t}),o=e.stack;if("string"==typeof o){var a=o.split("\n");a.shift();for(var s=r.stack.split("\n"),l=0;l<a.length;l++){var u=s.indexOf(a[l]);if(-1!==u){s=s.slice(0,u);break}}r.stack="".concat(s.join("\n"),"\n").concat(a.join("\n"))}throw r}},x.strict=A(z,x,{equal:x.strictEqual,deepEqual:x.deepStrictEqual,notEqual:x.notStrictEqual,notDeepEqual:x.notDeepStrictEqual}),x.strict.strict=x.strict},1969:(t,e,n)=>{"use strict";var r=n(4155);function o(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function i(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}function a(t,e){return!e||"object"!==d(e)&&"function"!=typeof e?s(t):e}function s(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}function l(t){var e="function"==typeof Map?new Map:void 0;return l=function(t){if(null===t||(n=t,-1===Function.toString.call(n).indexOf("[native code]")))return t;var n;if("function"!=typeof t)throw new TypeError("Super expression must either be null or a function");if(void 0!==e){if(e.has(t))return e.get(t);e.set(t,r)}function r(){return c(t,arguments,f(this).constructor)}return r.prototype=Object.create(t.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}),p(r,t)},l(t)}function u(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(t){return!1}}function c(t,e,n){return c=u()?Reflect.construct:function(t,e,n){var r=[null];r.push.apply(r,e);var o=new(Function.bind.apply(t,r));return n&&p(o,n.prototype),o},c.apply(null,arguments)}function p(t,e){return p=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t},p(t,e)}function f(t){return f=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)},f(t)}function d(t){return d="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},d(t)}var h=n(374).inspect,m=n(729).codes.ERR_INVALID_ARG_TYPE;function v(t,e,n){return(void 0===n||n>t.length)&&(n=t.length),t.substring(n-e.length,n)===e}var g="",y="",A="",b="",C={deepStrictEqual:"Expected values to be strictly deep-equal:",strictEqual:"Expected values to be strictly equal:",strictEqualObject:'Expected "actual" to be reference-equal to "expected":',deepEqual:"Expected values to be loosely deep-equal:",equal:"Expected values to be loosely equal:",notDeepStrictEqual:'Expected "actual" not to be strictly deep-equal to:',notStrictEqual:'Expected "actual" to be strictly unequal to:',notStrictEqualObject:'Expected "actual" not to be reference-equal to "expected":',notDeepEqual:'Expected "actual" not to be loosely deep-equal to:',notEqual:'Expected "actual" to be loosely unequal to:',notIdentical:"Values identical but not reference-equal:"};function w(t){var e=Object.keys(t),n=Object.create(Object.getPrototypeOf(t));return e.forEach((function(e){n[e]=t[e]})),Object.defineProperty(n,"message",{value:t.message}),n}function x(t){return h(t,{compact:!1,customInspect:!1,depth:1e3,maxArrayLength:1/0,showHidden:!1,breakLength:1/0,showProxy:!1,sorted:!0,getters:!0})}function _(t,e,n){var o="",i="",a=0,s="",l=!1,u=x(t),c=u.split("\n"),p=x(e).split("\n"),f=0,h="";if("strictEqual"===n&&"object"===d(t)&&"object"===d(e)&&null!==t&&null!==e&&(n="strictEqualObject"),1===c.length&&1===p.length&&c[0]!==p[0]){var m=c[0].length+p[0].length;if(m<=10){if(!("object"===d(t)&&null!==t||"object"===d(e)&&null!==e||0===t&&0===e))return"".concat(C[n],"\n\n")+"".concat(c[0]," !== ").concat(p[0],"\n")}else if("strictEqualObject"!==n){if(m<(r.stderr&&r.stderr.isTTY?r.stderr.columns:80)){for(;c[0][f]===p[0][f];)f++;f>2&&(h="\n ".concat(function(t,e){if(e=Math.floor(e),0==t.length||0==e)return"";var n=t.length*e;for(e=Math.floor(Math.log(e)/Math.log(2));e;)t+=t,e--;return t+t.substring(0,n-t.length)}(" ",f),"^"),f=0)}}}for(var w=c[c.length-1],_=p[p.length-1];w===_&&(f++<2?s="\n ".concat(w).concat(s):o=w,c.pop(),p.pop(),0!==c.length&&0!==p.length);)w=c[c.length-1],_=p[p.length-1];var S=Math.max(c.length,p.length);if(0===S){var k=u.split("\n");if(k.length>30)for(k[26]="".concat(g,"...").concat(b);k.length>27;)k.pop();return"".concat(C.notIdentical,"\n\n").concat(k.join("\n"),"\n")}f>3&&(s="\n".concat(g,"...").concat(b).concat(s),l=!0),""!==o&&(s="\n ".concat(o).concat(s),o="");var E=0,O=C[n]+"\n".concat(y,"+ actual").concat(b," ").concat(A,"- expected").concat(b),j=" ".concat(g,"...").concat(b," Lines skipped");for(f=0;f<S;f++){var T=f-a;if(c.length<f+1)T>1&&f>2&&(T>4?(i+="\n".concat(g,"...").concat(b),l=!0):T>3&&(i+="\n ".concat(p[f-2]),E++),i+="\n ".concat(p[f-1]),E++),a=f,o+="\n".concat(A,"-").concat(b," ").concat(p[f]),E++;else if(p.length<f+1)T>1&&f>2&&(T>4?(i+="\n".concat(g,"...").concat(b),l=!0):T>3&&(i+="\n ".concat(c[f-2]),E++),i+="\n ".concat(c[f-1]),E++),a=f,i+="\n".concat(y,"+").concat(b," ").concat(c[f]),E++;else{var B=p[f],N=c[f],P=N!==B&&(!v(N,",")||N.slice(0,-1)!==B);P&&v(B,",")&&B.slice(0,-1)===N&&(P=!1,N+=","),P?(T>1&&f>2&&(T>4?(i+="\n".concat(g,"...").concat(b),l=!0):T>3&&(i+="\n ".concat(c[f-2]),E++),i+="\n ".concat(c[f-1]),E++),a=f,i+="\n".concat(y,"+").concat(b," ").concat(N),o+="\n".concat(A,"-").concat(b," ").concat(B),E+=2):(i+=o,o="",1!==T&&0!==f||(i+="\n ".concat(N),E++))}if(E>20&&f<S-2)return"".concat(O).concat(j,"\n").concat(i,"\n").concat(g,"...").concat(b).concat(o,"\n")+"".concat(g,"...").concat(b)}return"".concat(O).concat(l?j:"","\n").concat(i).concat(o).concat(s).concat(h)}var S=function(t){function e(t){var n;if(function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,e),"object"!==d(t)||null===t)throw new m("options","Object",t);var o=t.message,i=t.operator,l=t.stackStartFn,u=t.actual,c=t.expected,p=Error.stackTraceLimit;if(Error.stackTraceLimit=0,null!=o)n=a(this,f(e).call(this,String(o)));else if(r.stderr&&r.stderr.isTTY&&(r.stderr&&r.stderr.getColorDepth&&1!==r.stderr.getColorDepth()?(g="",y="",b="",A=""):(g="",y="",b="",A="")),"object"===d(u)&&null!==u&&"object"===d(c)&&null!==c&&"stack"in u&&u instanceof Error&&"stack"in c&&c instanceof Error&&(u=w(u),c=w(c)),"deepStrictEqual"===i||"strictEqual"===i)n=a(this,f(e).call(this,_(u,c,i)));else if("notDeepStrictEqual"===i||"notStrictEqual"===i){var h=C[i],v=x(u).split("\n");if("notStrictEqual"===i&&"object"===d(u)&&null!==u&&(h=C.notStrictEqualObject),v.length>30)for(v[26]="".concat(g,"...").concat(b);v.length>27;)v.pop();n=1===v.length?a(this,f(e).call(this,"".concat(h," ").concat(v[0]))):a(this,f(e).call(this,"".concat(h,"\n\n").concat(v.join("\n"),"\n")))}else{var S=x(u),k="",E=C[i];"notDeepEqual"===i||"notEqual"===i?(S="".concat(C[i],"\n\n").concat(S)).length>1024&&(S="".concat(S.slice(0,1021),"...")):(k="".concat(x(c)),S.length>512&&(S="".concat(S.slice(0,509),"...")),k.length>512&&(k="".concat(k.slice(0,509),"...")),"deepEqual"===i||"equal"===i?S="".concat(E,"\n\n").concat(S,"\n\nshould equal\n\n"):k=" ".concat(i," ").concat(k)),n=a(this,f(e).call(this,"".concat(S).concat(k)))}return Error.stackTraceLimit=p,n.generatedMessage=!o,Object.defineProperty(s(n),"name",{value:"AssertionError [ERR_ASSERTION]",enumerable:!1,writable:!0,configurable:!0}),n.code="ERR_ASSERTION",n.actual=u,n.expected=c,n.operator=i,Error.captureStackTrace&&Error.captureStackTrace(s(n),l),n.stack,n.name="AssertionError",a(n)}var n,l,u;return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&p(t,e)}(e,t),n=e,l=[{key:"toString",value:function(){return"".concat(this.name," [").concat(this.code,"]: ").concat(this.message)}},{key:h.custom,value:function(t,e){return h(this,function(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter((function(t){return Object.getOwnPropertyDescriptor(n,t).enumerable})))),r.forEach((function(e){o(t,e,n[e])}))}return t}({},e,{customInspect:!1,depth:0}))}}],l&&i(n.prototype,l),u&&i(n,u),e}(l(Error));t.exports=S},729:(t,e,n)=>{"use strict";function r(t){return r="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},r(t)}function o(t,e){return!e||"object"!==r(e)&&"function"!=typeof e?function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t):e}function i(t){return i=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)},i(t)}function a(t,e){return a=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t},a(t,e)}var s,l,u={};function c(t,e,n){n||(n=Error);var r=function(n){function r(n,a,s){var l;return function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,r),l=o(this,i(r).call(this,function(t,n,r){return"string"==typeof e?e:e(t,n,r)}(n,a,s))),l.code=t,l}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&a(t,e)}(r,n),r}(n);u[t]=r}function p(t,e){if(Array.isArray(t)){var n=t.length;return t=t.map((function(t){return String(t)})),n>2?"one of ".concat(e," ").concat(t.slice(0,n-1).join(", "),", or ")+t[n-1]:2===n?"one of ".concat(e," ").concat(t[0]," or ").concat(t[1]):"of ".concat(e," ").concat(t[0])}return"of ".concat(e," ").concat(String(t))}c("ERR_AMBIGUOUS_ARGUMENT",'The "%s" argument is ambiguous. %s',TypeError),c("ERR_INVALID_ARG_TYPE",(function(t,e,o){var i,a,l,u;if(void 0===s&&(s=n(686)),s("string"==typeof t,"'name' must be a string"),"string"==typeof e&&(a="not ",e.substr(!l||l<0?0:+l,a.length)===a)?(i="must not be",e=e.replace(/^not /,"")):i="must be",function(t,e,n){return(void 0===n||n>t.length)&&(n=t.length),t.substring(n-e.length,n)===e}(t," argument"))u="The ".concat(t," ").concat(i," ").concat(p(e,"type"));else{var c=function(t,e,n){return"number"!=typeof n&&(n=0),!(n+e.length>t.length)&&-1!==t.indexOf(e,n)}(t,".")?"property":"argument";u='The "'.concat(t,'" ').concat(c," ").concat(i," ").concat(p(e,"type"))}return u+=". Received type ".concat(r(o))}),TypeError),c("ERR_INVALID_ARG_VALUE",(function(t,e){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"is invalid";void 0===l&&(l=n(374));var o=l.inspect(e);return o.length>128&&(o="".concat(o.slice(0,128),"...")),"The argument '".concat(t,"' ").concat(r,". Received ").concat(o)}),TypeError,RangeError),c("ERR_INVALID_RETURN_VALUE",(function(t,e,n){var o;return o=n&&n.constructor&&n.constructor.name?"instance of ".concat(n.constructor.name):"type ".concat(r(n)),"Expected ".concat(t,' to be returned from the "').concat(e,'"')+" function but got ".concat(o,".")}),TypeError),c("ERR_MISSING_ARGS",(function(){for(var t=arguments.length,e=new Array(t),r=0;r<t;r++)e[r]=arguments[r];void 0===s&&(s=n(686)),s(e.length>0,"At least one arg needs to be specified");var o="The ",i=e.length;switch(e=e.map((function(t){return'"'.concat(t,'"')})),i){case 1:o+="".concat(e[0]," argument");break;case 2:o+="".concat(e[0]," and ").concat(e[1]," arguments");break;default:o+=e.slice(0,i-1).join(", "),o+=", and ".concat(e[i-1]," arguments")}return"".concat(o," must be specified")}),TypeError),t.exports.codes=u},3632:(t,e,n)=>{"use strict";function r(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var n=[],r=!0,o=!1,i=void 0;try{for(var a,s=t[Symbol.iterator]();!(r=(a=s.next()).done)&&(n.push(a.value),!e||n.length!==e);r=!0);}catch(t){o=!0,i=t}finally{try{r||null==s.return||s.return()}finally{if(o)throw i}}return n}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}()}function o(t){return o="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},o(t)}var i=void 0!==/a/g.flags,a=function(t){var e=[];return t.forEach((function(t){return e.push(t)})),e},s=function(t){var e=[];return t.forEach((function(t,n){return e.push([n,t])})),e},l=Object.is?Object.is:n(609),u=Object.getOwnPropertySymbols?Object.getOwnPropertySymbols:function(){return[]},c=Number.isNaN?Number.isNaN:n(360);function p(t){return t.call.bind(t)}var f=p(Object.prototype.hasOwnProperty),d=p(Object.prototype.propertyIsEnumerable),h=p(Object.prototype.toString),m=n(374).types,v=m.isAnyArrayBuffer,g=m.isArrayBufferView,y=m.isDate,A=m.isMap,b=m.isRegExp,C=m.isSet,w=m.isNativeError,x=m.isBoxedPrimitive,_=m.isNumberObject,S=m.isStringObject,k=m.isBooleanObject,E=m.isBigIntObject,O=m.isSymbolObject,j=m.isFloat32Array,T=m.isFloat64Array;function B(t){if(0===t.length||t.length>10)return!0;for(var e=0;e<t.length;e++){var n=t.charCodeAt(e);if(n<48||n>57)return!0}return 10===t.length&&t>=Math.pow(2,32)}function N(t){return Object.keys(t).filter(B).concat(u(t).filter(Object.prototype.propertyIsEnumerable.bind(t)))}function P(t,e){if(t===e)return 0;for(var n=t.length,r=e.length,o=0,i=Math.min(n,r);o<i;++o)if(t[o]!==e[o]){n=t[o],r=e[o];break}return n<r?-1:r<n?1:0}function $(t,e,n,r){if(t===e)return 0!==t||(!n||l(t,e));if(n){if("object"!==o(t))return"number"==typeof t&&c(t)&&c(e);if("object"!==o(e)||null===t||null===e)return!1;if(Object.getPrototypeOf(t)!==Object.getPrototypeOf(e))return!1}else{if(null===t||"object"!==o(t))return(null===e||"object"!==o(e))&&t==e;if(null===e||"object"!==o(e))return!1}var a,s,u,p,f=h(t);if(f!==h(e))return!1;if(Array.isArray(t)){if(t.length!==e.length)return!1;var d=N(t),m=N(e);return d.length===m.length&&z(t,e,n,r,1,d)}if("[object Object]"===f&&(!A(t)&&A(e)||!C(t)&&C(e)))return!1;if(y(t)){if(!y(e)||Date.prototype.getTime.call(t)!==Date.prototype.getTime.call(e))return!1}else if(b(t)){if(!b(e)||(u=t,p=e,!(i?u.source===p.source&&u.flags===p.flags:RegExp.prototype.toString.call(u)===RegExp.prototype.toString.call(p))))return!1}else if(w(t)||t instanceof Error){if(t.message!==e.message||t.name!==e.name)return!1}else{if(g(t)){if(n||!j(t)&&!T(t)){if(!function(t,e){return t.byteLength===e.byteLength&&0===P(new Uint8Array(t.buffer,t.byteOffset,t.byteLength),new Uint8Array(e.buffer,e.byteOffset,e.byteLength))}(t,e))return!1}else if(!function(t,e){if(t.byteLength!==e.byteLength)return!1;for(var n=0;n<t.byteLength;n++)if(t[n]!==e[n])return!1;return!0}(t,e))return!1;var B=N(t),$=N(e);return B.length===$.length&&z(t,e,n,r,0,B)}if(C(t))return!(!C(e)||t.size!==e.size)&&z(t,e,n,r,2);if(A(t))return!(!A(e)||t.size!==e.size)&&z(t,e,n,r,3);if(v(t)){if(s=e,(a=t).byteLength!==s.byteLength||0!==P(new Uint8Array(a),new Uint8Array(s)))return!1}else if(x(t)&&!function(t,e){return _(t)?_(e)&&l(Number.prototype.valueOf.call(t),Number.prototype.valueOf.call(e)):S(t)?S(e)&&String.prototype.valueOf.call(t)===String.prototype.valueOf.call(e):k(t)?k(e)&&Boolean.prototype.valueOf.call(t)===Boolean.prototype.valueOf.call(e):E(t)?E(e)&&BigInt.prototype.valueOf.call(t)===BigInt.prototype.valueOf.call(e):O(e)&&Symbol.prototype.valueOf.call(t)===Symbol.prototype.valueOf.call(e)}(t,e))return!1}return z(t,e,n,r,0)}function I(t,e){return e.filter((function(e){return d(t,e)}))}function z(t,e,n,r,o,i){if(5===arguments.length){i=Object.keys(t);var a=Object.keys(e);if(i.length!==a.length)return!1}for(var s=0;s<i.length;s++)if(!f(e,i[s]))return!1;if(n&&5===arguments.length){var l=u(t);if(0!==l.length){var c=0;for(s=0;s<l.length;s++){var p=l[s];if(d(t,p)){if(!d(e,p))return!1;i.push(p),c++}else if(d(e,p))return!1}var h=u(e);if(l.length!==h.length&&I(e,h).length!==c)return!1}else{var m=u(e);if(0!==m.length&&0!==I(e,m).length)return!1}}if(0===i.length&&(0===o||1===o&&0===t.length||0===t.size))return!0;if(void 0===r)r={val1:new Map,val2:new Map,position:0};else{var v=r.val1.get(t);if(void 0!==v){var g=r.val2.get(e);if(void 0!==g)return v===g}r.position++}r.val1.set(t,r.position),r.val2.set(e,r.position);var y=U(t,e,n,i,r,o);return r.val1.delete(t),r.val2.delete(e),y}function F(t,e,n,r){for(var o=a(t),i=0;i<o.length;i++){var s=o[i];if($(e,s,n,r))return t.delete(s),!0}return!1}function D(t){switch(o(t)){case"undefined":return null;case"object":return;case"symbol":return!1;case"string":t=+t;case"number":if(c(t))return!1}return!0}function L(t,e,n){var r=D(n);return null!=r?r:e.has(r)&&!t.has(r)}function R(t,e,n,r,o){var i=D(n);if(null!=i)return i;var a=e.get(i);return!(void 0===a&&!e.has(i)||!$(r,a,!1,o))&&(!t.has(i)&&$(r,a,!1,o))}function M(t,e,n,r,o,i){for(var s=a(t),l=0;l<s.length;l++){var u=s[l];if($(n,u,o,i)&&$(r,e.get(u),o,i))return t.delete(u),!0}return!1}function U(t,e,n,i,l,u){var c=0;if(2===u){if(!function(t,e,n,r){for(var i=null,s=a(t),l=0;l<s.length;l++){var u=s[l];if("object"===o(u)&&null!==u)null===i&&(i=new Set),i.add(u);else if(!e.has(u)){if(n)return!1;if(!L(t,e,u))return!1;null===i&&(i=new Set),i.add(u)}}if(null!==i){for(var c=a(e),p=0;p<c.length;p++){var f=c[p];if("object"===o(f)&&null!==f){if(!F(i,f,n,r))return!1}else if(!n&&!t.has(f)&&!F(i,f,n,r))return!1}return 0===i.size}return!0}(t,e,n,l))return!1}else if(3===u){if(!function(t,e,n,i){for(var a=null,l=s(t),u=0;u<l.length;u++){var c=r(l[u],2),p=c[0],f=c[1];if("object"===o(p)&&null!==p)null===a&&(a=new Set),a.add(p);else{var d=e.get(p);if(void 0===d&&!e.has(p)||!$(f,d,n,i)){if(n)return!1;if(!R(t,e,p,f,i))return!1;null===a&&(a=new Set),a.add(p)}}}if(null!==a){for(var h=s(e),m=0;m<h.length;m++){var v=r(h[m],2),g=(p=v[0],v[1]);if("object"===o(p)&&null!==p){if(!M(a,t,p,g,n,i))return!1}else if(!(n||t.has(p)&&$(t.get(p),g,!1,i)||M(a,t,p,g,!1,i)))return!1}return 0===a.size}return!0}(t,e,n,l))return!1}else if(1===u)for(;c<t.length;c++){if(!f(t,c)){if(f(e,c))return!1;for(var p=Object.keys(t);c<p.length;c++){var d=p[c];if(!f(e,d)||!$(t[d],e[d],n,l))return!1}return p.length===Object.keys(e).length}if(!f(e,c)||!$(t[c],e[c],n,l))return!1}for(c=0;c<i.length;c++){var h=i[c];if(!$(t[h],e[h],n,l))return!1}return!0}t.exports={isDeepEqual:function(t,e){return $(t,e,false)},isDeepStrictEqual:function(t,e){return $(t,e,true)}}},553:t=>{"function"==typeof Object.create?t.exports=function(t,e){e&&(t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}))}:t.exports=function(t,e){if(e){t.super_=e;var n=function(){};n.prototype=e.prototype,t.prototype=new n,t.prototype.constructor=t}}},7872:t=>{t.exports=function(t){return t&&"object"==typeof t&&"function"==typeof t.copy&&"function"==typeof t.fill&&"function"==typeof t.readUInt8}},4851:(t,e,n)=>{"use strict";var r=n(2584),o=n(8662),i=n(6430),a=n(5692);function s(t){return t.call.bind(t)}var l="undefined"!=typeof BigInt,u="undefined"!=typeof Symbol,c=s(Object.prototype.toString),p=s(Number.prototype.valueOf),f=s(String.prototype.valueOf),d=s(Boolean.prototype.valueOf);if(l)var h=s(BigInt.prototype.valueOf);if(u)var m=s(Symbol.prototype.valueOf);function v(t,e){if("object"!=typeof t)return!1;try{return e(t),!0}catch(t){return!1}}function g(t){return"[object Map]"===c(t)}function y(t){return"[object Set]"===c(t)}function A(t){return"[object WeakMap]"===c(t)}function b(t){return"[object WeakSet]"===c(t)}function C(t){return"[object ArrayBuffer]"===c(t)}function w(t){return"undefined"!=typeof ArrayBuffer&&(C.working?C(t):t instanceof ArrayBuffer)}function x(t){return"[object DataView]"===c(t)}function _(t){return"undefined"!=typeof DataView&&(x.working?x(t):t instanceof DataView)}e.isArgumentsObject=r,e.isGeneratorFunction=o,e.isTypedArray=a,e.isPromise=function(t){return"undefined"!=typeof Promise&&t instanceof Promise||null!==t&&"object"==typeof t&&"function"==typeof t.then&&"function"==typeof t.catch},e.isArrayBufferView=function(t){return"undefined"!=typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(t):a(t)||_(t)},e.isUint8Array=function(t){return"Uint8Array"===i(t)},e.isUint8ClampedArray=function(t){return"Uint8ClampedArray"===i(t)},e.isUint16Array=function(t){return"Uint16Array"===i(t)},e.isUint32Array=function(t){return"Uint32Array"===i(t)},e.isInt8Array=function(t){return"Int8Array"===i(t)},e.isInt16Array=function(t){return"Int16Array"===i(t)},e.isInt32Array=function(t){return"Int32Array"===i(t)},e.isFloat32Array=function(t){return"Float32Array"===i(t)},e.isFloat64Array=function(t){return"Float64Array"===i(t)},e.isBigInt64Array=function(t){return"BigInt64Array"===i(t)},e.isBigUint64Array=function(t){return"BigUint64Array"===i(t)},g.working="undefined"!=typeof Map&&g(new Map),e.isMap=function(t){return"undefined"!=typeof Map&&(g.working?g(t):t instanceof Map)},y.working="undefined"!=typeof Set&&y(new Set),e.isSet=function(t){return"undefined"!=typeof Set&&(y.working?y(t):t instanceof Set)},A.working="undefined"!=typeof WeakMap&&A(new WeakMap),e.isWeakMap=function(t){return"undefined"!=typeof WeakMap&&(A.working?A(t):t instanceof WeakMap)},b.working="undefined"!=typeof WeakSet&&b(new WeakSet),e.isWeakSet=function(t){return b(t)},C.working="undefined"!=typeof ArrayBuffer&&C(new ArrayBuffer),e.isArrayBuffer=w,x.working="undefined"!=typeof ArrayBuffer&&"undefined"!=typeof DataView&&x(new DataView(new ArrayBuffer(1),0,1)),e.isDataView=_;var S="undefined"!=typeof SharedArrayBuffer?SharedArrayBuffer:void 0;function k(t){return"[object SharedArrayBuffer]"===c(t)}function E(t){return void 0!==S&&(void 0===k.working&&(k.working=k(new S)),k.working?k(t):t instanceof S)}function O(t){return v(t,p)}function j(t){return v(t,f)}function T(t){return v(t,d)}function B(t){return l&&v(t,h)}function N(t){return u&&v(t,m)}e.isSharedArrayBuffer=E,e.isAsyncFunction=function(t){return"[object AsyncFunction]"===c(t)},e.isMapIterator=function(t){return"[object Map Iterator]"===c(t)},e.isSetIterator=function(t){return"[object Set Iterator]"===c(t)},e.isGeneratorObject=function(t){return"[object Generator]"===c(t)},e.isWebAssemblyCompiledModule=function(t){return"[object WebAssembly.Module]"===c(t)},e.isNumberObject=O,e.isStringObject=j,e.isBooleanObject=T,e.isBigIntObject=B,e.isSymbolObject=N,e.isBoxedPrimitive=function(t){return O(t)||j(t)||T(t)||B(t)||N(t)},e.isAnyArrayBuffer=function(t){return"undefined"!=typeof Uint8Array&&(w(t)||E(t))},["isProxy","isExternal","isModuleNamespaceObject"].forEach((function(t){Object.defineProperty(e,t,{enumerable:!1,value:function(){throw new Error(t+" is not supported in userland")}})}))},374:(t,e,n)=>{var r=n(4155),o=n(5108),i=Object.getOwnPropertyDescriptors||function(t){for(var e=Object.keys(t),n={},r=0;r<e.length;r++)n[e[r]]=Object.getOwnPropertyDescriptor(t,e[r]);return n},a=/%[sdj%]/g;e.format=function(t){if(!b(t)){for(var e=[],n=0;n<arguments.length;n++)e.push(c(arguments[n]));return e.join(" ")}n=1;for(var r=arguments,o=r.length,i=String(t).replace(a,(function(t){if("%%"===t)return"%";if(n>=o)return t;switch(t){case"%s":return String(r[n++]);case"%d":return Number(r[n++]);case"%j":try{return JSON.stringify(r[n++])}catch(t){return"[Circular]"}default:return t}})),s=r[n];n<o;s=r[++n])y(s)||!x(s)?i+=" "+s:i+=" "+c(s);return i},e.deprecate=function(t,n){if(void 0!==r&&!0===r.noDeprecation)return t;if(void 0===r)return function(){return e.deprecate(t,n).apply(this,arguments)};var i=!1;return function(){if(!i){if(r.throwDeprecation)throw new Error(n);r.traceDeprecation?o.trace(n):o.error(n),i=!0}return t.apply(this,arguments)}};var s={},l=/^$/;if(r.env.NODE_DEBUG){var u=r.env.NODE_DEBUG;u=u.replace(/[|\\{}()[\]^$+?.]/g,"\\$&").replace(/\*/g,".*").replace(/,/g,"$|^").toUpperCase(),l=new RegExp("^"+u+"$","i")}function c(t,n){var r={seen:[],stylize:f};return arguments.length>=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),g(n)?r.showHidden=n:n&&e._extend(r,n),C(r.showHidden)&&(r.showHidden=!1),C(r.depth)&&(r.depth=2),C(r.colors)&&(r.colors=!1),C(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=p),d(r,t,r.depth)}function p(t,e){var n=c.styles[e];return n?"["+c.colors[n][0]+"m"+t+"["+c.colors[n][1]+"m":t}function f(t,e){return t}function d(t,n,r){if(t.customInspect&&n&&k(n.inspect)&&n.inspect!==e.inspect&&(!n.constructor||n.constructor.prototype!==n)){var o=n.inspect(r,t);return b(o)||(o=d(t,o,r)),o}var i=function(t,e){if(C(e))return t.stylize("undefined","undefined");if(b(e)){var n="'"+JSON.stringify(e).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return t.stylize(n,"string")}if(A(e))return t.stylize(""+e,"number");if(g(e))return t.stylize(""+e,"boolean");if(y(e))return t.stylize("null","null")}(t,n);if(i)return i;var a=Object.keys(n),s=function(t){var e={};return t.forEach((function(t,n){e[t]=!0})),e}(a);if(t.showHidden&&(a=Object.getOwnPropertyNames(n)),S(n)&&(a.indexOf("message")>=0||a.indexOf("description")>=0))return h(n);if(0===a.length){if(k(n)){var l=n.name?": "+n.name:"";return t.stylize("[Function"+l+"]","special")}if(w(n))return t.stylize(RegExp.prototype.toString.call(n),"regexp");if(_(n))return t.stylize(Date.prototype.toString.call(n),"date");if(S(n))return h(n)}var u,c="",p=!1,f=["{","}"];(v(n)&&(p=!0,f=["[","]"]),k(n))&&(c=" [Function"+(n.name?": "+n.name:"")+"]");return w(n)&&(c=" "+RegExp.prototype.toString.call(n)),_(n)&&(c=" "+Date.prototype.toUTCString.call(n)),S(n)&&(c=" "+h(n)),0!==a.length||p&&0!=n.length?r<0?w(n)?t.stylize(RegExp.prototype.toString.call(n),"regexp"):t.stylize("[Object]","special"):(t.seen.push(n),u=p?function(t,e,n,r,o){for(var i=[],a=0,s=e.length;a<s;++a)B(e,String(a))?i.push(m(t,e,n,r,String(a),!0)):i.push("");return o.forEach((function(o){o.match(/^\d+$/)||i.push(m(t,e,n,r,o,!0))})),i}(t,n,r,s,a):a.map((function(e){return m(t,n,r,s,e,p)})),t.seen.pop(),function(t,e,n){if(t.reduce((function(t,e){return e.indexOf("\n")>=0&&0,t+e.replace(/\u001b\[\d\d?m/g,"").length+1}),0)>60)return n[0]+(""===e?"":e+"\n ")+" "+t.join(",\n ")+" "+n[1];return n[0]+e+" "+t.join(", ")+" "+n[1]}(u,c,f)):f[0]+c+f[1]}function h(t){return"["+Error.prototype.toString.call(t)+"]"}function m(t,e,n,r,o,i){var a,s,l;if((l=Object.getOwnPropertyDescriptor(e,o)||{value:e[o]}).get?s=l.set?t.stylize("[Getter/Setter]","special"):t.stylize("[Getter]","special"):l.set&&(s=t.stylize("[Setter]","special")),B(r,o)||(a="["+o+"]"),s||(t.seen.indexOf(l.value)<0?(s=y(n)?d(t,l.value,null):d(t,l.value,n-1)).indexOf("\n")>-1&&(s=i?s.split("\n").map((function(t){return" "+t})).join("\n").substr(2):"\n"+s.split("\n").map((function(t){return" "+t})).join("\n")):s=t.stylize("[Circular]","special")),C(a)){if(i&&o.match(/^\d+$/))return s;(a=JSON.stringify(""+o)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(a=a.substr(1,a.length-2),a=t.stylize(a,"name")):(a=a.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),a=t.stylize(a,"string"))}return a+": "+s}function v(t){return Array.isArray(t)}function g(t){return"boolean"==typeof t}function y(t){return null===t}function A(t){return"number"==typeof t}function b(t){return"string"==typeof t}function C(t){return void 0===t}function w(t){return x(t)&&"[object RegExp]"===E(t)}function x(t){return"object"==typeof t&&null!==t}function _(t){return x(t)&&"[object Date]"===E(t)}function S(t){return x(t)&&("[object Error]"===E(t)||t instanceof Error)}function k(t){return"function"==typeof t}function E(t){return Object.prototype.toString.call(t)}function O(t){return t<10?"0"+t.toString(10):t.toString(10)}e.debuglog=function(t){if(t=t.toUpperCase(),!s[t])if(l.test(t)){var n=r.pid;s[t]=function(){var r=e.format.apply(e,arguments);o.error("%s %d: %s",t,n,r)}}else s[t]=function(){};return s[t]},e.inspect=c,c.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},c.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},e.types=n(4851),e.isArray=v,e.isBoolean=g,e.isNull=y,e.isNullOrUndefined=function(t){return null==t},e.isNumber=A,e.isString=b,e.isSymbol=function(t){return"symbol"==typeof t},e.isUndefined=C,e.isRegExp=w,e.types.isRegExp=w,e.isObject=x,e.isDate=_,e.types.isDate=_,e.isError=S,e.types.isNativeError=S,e.isFunction=k,e.isPrimitive=function(t){return null===t||"boolean"==typeof t||"number"==typeof t||"string"==typeof t||"symbol"==typeof t||void 0===t},e.isBuffer=n(7872);var j=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function T(){var t=new Date,e=[O(t.getHours()),O(t.getMinutes()),O(t.getSeconds())].join(":");return[t.getDate(),j[t.getMonth()],e].join(" ")}function B(t,e){return Object.prototype.hasOwnProperty.call(t,e)}e.log=function(){o.log("%s - %s",T(),e.format.apply(e,arguments))},e.inherits=n(553),e._extend=function(t,e){if(!e||!x(e))return t;for(var n=Object.keys(e),r=n.length;r--;)t[n[r]]=e[n[r]];return t};var N="undefined"!=typeof Symbol?Symbol("util.promisify.custom"):void 0;function P(t,e){if(!t){var n=new Error("Promise was rejected with a falsy value");n.reason=t,t=n}return e(t)}e.promisify=function(t){if("function"!=typeof t)throw new TypeError('The "original" argument must be of type Function');if(N&&t[N]){var e;if("function"!=typeof(e=t[N]))throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(e,N,{value:e,enumerable:!1,writable:!1,configurable:!0}),e}function e(){for(var e,n,r=new Promise((function(t,r){e=t,n=r})),o=[],i=0;i<arguments.length;i++)o.push(arguments[i]);o.push((function(t,r){t?n(t):e(r)}));try{t.apply(this,o)}catch(t){n(t)}return r}return Object.setPrototypeOf(e,Object.getPrototypeOf(t)),N&&Object.defineProperty(e,N,{value:e,enumerable:!1,writable:!1,configurable:!0}),Object.defineProperties(e,i(t))},e.promisify.custom=N,e.callbackify=function(t){if("function"!=typeof t)throw new TypeError('The "original" argument must be of type Function');function e(){for(var e=[],n=0;n<arguments.length;n++)e.push(arguments[n]);var o=e.pop();if("function"!=typeof o)throw new TypeError("The last argument must be of type Function");var i=this,a=function(){return o.apply(i,arguments)};t.apply(this,e).then((function(t){r.nextTick(a.bind(null,null,t))}),(function(t){r.nextTick(P.bind(null,t,a))}))}return Object.setPrototypeOf(e,Object.getPrototypeOf(t)),Object.defineProperties(e,i(t)),e}},4244:t=>{"use strict";var e=function(t){return t!=t};t.exports=function(t,n){return 0===t&&0===n?1/t==1/n:t===n||!(!e(t)||!e(n))}},609:(t,e,n)=>{"use strict";var r=n(4289),o=n(5559),i=n(4244),a=n(5624),s=n(2281),l=o(a(),Object);r(l,{getPolyfill:a,implementation:i,shim:s}),t.exports=l},5624:(t,e,n)=>{"use strict";var r=n(4244);t.exports=function(){return"function"==typeof Object.is?Object.is:r}},2281:(t,e,n)=>{"use strict";var r=n(5624),o=n(4289);t.exports=function(){var t=r();return o(Object,{is:t},{is:function(){return Object.is!==t}}),t}},8987:(t,e,n)=>{"use strict";var r;if(!Object.keys){var o=Object.prototype.hasOwnProperty,i=Object.prototype.toString,a=n(1414),s=Object.prototype.propertyIsEnumerable,l=!s.call({toString:null},"toString"),u=s.call((function(){}),"prototype"),c=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],p=function(t){var e=t.constructor;return e&&e.prototype===t},f={$applicationCache:!0,$console:!0,$external:!0,$frame:!0,$frameElement:!0,$frames:!0,$innerHeight:!0,$innerWidth:!0,$onmozfullscreenchange:!0,$onmozfullscreenerror:!0,$outerHeight:!0,$outerWidth:!0,$pageXOffset:!0,$pageYOffset:!0,$parent:!0,$scrollLeft:!0,$scrollTop:!0,$scrollX:!0,$scrollY:!0,$self:!0,$webkitIndexedDB:!0,$webkitStorageInfo:!0,$window:!0},d=function(){if("undefined"==typeof window)return!1;for(var t in window)try{if(!f["$"+t]&&o.call(window,t)&&null!==window[t]&&"object"==typeof window[t])try{p(window[t])}catch(t){return!0}}catch(t){return!0}return!1}();r=function(t){var e=null!==t&&"object"==typeof t,n="[object Function]"===i.call(t),r=a(t),s=e&&"[object String]"===i.call(t),f=[];if(!e&&!n&&!r)throw new TypeError("Object.keys called on a non-object");var h=u&&n;if(s&&t.length>0&&!o.call(t,0))for(var m=0;m<t.length;++m)f.push(String(m));if(r&&t.length>0)for(var v=0;v<t.length;++v)f.push(String(v));else for(var g in t)h&&"prototype"===g||!o.call(t,g)||f.push(String(g));if(l)for(var y=function(t){if("undefined"==typeof window||!d)return p(t);try{return p(t)}catch(t){return!1}}(t),A=0;A<c.length;++A)y&&"constructor"===c[A]||!o.call(t,c[A])||f.push(c[A]);return f}}t.exports=r},2215:(t,e,n)=>{"use strict";var r=Array.prototype.slice,o=n(1414),i=Object.keys,a=i?function(t){return i(t)}:n(8987),s=Object.keys;a.shim=function(){if(Object.keys){var t=function(){var t=Object.keys(arguments);return t&&t.length===arguments.length}(1,2);t||(Object.keys=function(t){return o(t)?s(r.call(t)):s(t)})}else Object.keys=a;return Object.keys||a},t.exports=a},1414:t=>{"use strict";var e=Object.prototype.toString;t.exports=function(t){var n=e.call(t),r="[object Arguments]"===n;return r||(r="[object Array]"!==n&&null!==t&&"object"==typeof t&&"number"==typeof t.length&&t.length>=0&&"[object Function]"===e.call(t.callee)),r}},4155:t=>{var e,n,r=t.exports={};function o(){throw new Error("setTimeout has not been defined")}function i(){throw new Error("clearTimeout has not been defined")}function a(t){if(e===setTimeout)return setTimeout(t,0);if((e===o||!e)&&setTimeout)return e=setTimeout,setTimeout(t,0);try{return e(t,0)}catch(n){try{return e.call(null,t,0)}catch(n){return e.call(this,t,0)}}}!function(){try{e="function"==typeof setTimeout?setTimeout:o}catch(t){e=o}try{n="function"==typeof clearTimeout?clearTimeout:i}catch(t){n=i}}();var s,l=[],u=!1,c=-1;function p(){u&&s&&(u=!1,s.length?l=s.concat(l):c=-1,l.length&&f())}function f(){if(!u){var t=a(p);u=!0;for(var e=l.length;e;){for(s=l,l=[];++c<e;)s&&s[c].run();c=-1,e=l.length}s=null,u=!1,function(t){if(n===clearTimeout)return clearTimeout(t);if((n===i||!n)&&clearTimeout)return n=clearTimeout,clearTimeout(t);try{n(t)}catch(e){try{return n.call(null,t)}catch(e){return n.call(this,t)}}}(t)}}function d(t,e){this.fun=t,this.array=e}function h(){}r.nextTick=function(t){var e=new Array(arguments.length-1);if(arguments.length>1)for(var n=1;n<arguments.length;n++)e[n-1]=arguments[n];l.push(new d(t,e)),1!==l.length||u||a(f)},d.prototype.run=function(){this.fun.apply(null,this.array)},r.title="browser",r.browser=!0,r.env={},r.argv=[],r.version="",r.versions={},r.on=h,r.addListener=h,r.once=h,r.off=h,r.removeListener=h,r.removeAllListeners=h,r.emit=h,r.prependListener=h,r.prependOnceListener=h,r.listeners=function(t){return[]},r.binding=function(t){throw new Error("process.binding is not supported")},r.cwd=function(){return"/"},r.chdir=function(t){throw new Error("process.chdir is not supported")},r.umask=function(){return 0}},6376:(t,e,n)=>{const r=n(4225),{MAX_LENGTH:o,MAX_SAFE_INTEGER:i}=n(3295),{re:a,t:s}=n(5765),l=n(2893),{compareIdentifiers:u}=n(6742);class c{constructor(t,e){if(e=l(e),t instanceof c){if(t.loose===!!e.loose&&t.includePrerelease===!!e.includePrerelease)return t;t=t.version}else if("string"!=typeof t)throw new TypeError(`Invalid Version: ${t}`);if(t.length>o)throw new TypeError(`version is longer than ${o} characters`);r("SemVer",t,e),this.options=e,this.loose=!!e.loose,this.includePrerelease=!!e.includePrerelease;const n=t.trim().match(e.loose?a[s.LOOSE]:a[s.FULL]);if(!n)throw new TypeError(`Invalid Version: ${t}`);if(this.raw=t,this.major=+n[1],this.minor=+n[2],this.patch=+n[3],this.major>i||this.major<0)throw new TypeError("Invalid major version");if(this.minor>i||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>i||this.patch<0)throw new TypeError("Invalid patch version");n[4]?this.prerelease=n[4].split(".").map((t=>{if(/^[0-9]+$/.test(t)){const e=+t;if(e>=0&&e<i)return e}return t})):this.prerelease=[],this.build=n[5]?n[5].split("."):[],this.format()}format(){return this.version=`${this.major}.${this.minor}.${this.patch}`,this.prerelease.length&&(this.version+=`-${this.prerelease.join(".")}`),this.version}toString(){return this.version}compare(t){if(r("SemVer.compare",this.version,this.options,t),!(t instanceof c)){if("string"==typeof t&&t===this.version)return 0;t=new c(t,this.options)}return t.version===this.version?0:this.compareMain(t)||this.comparePre(t)}compareMain(t){return t instanceof c||(t=new c(t,this.options)),u(this.major,t.major)||u(this.minor,t.minor)||u(this.patch,t.patch)}comparePre(t){if(t instanceof c||(t=new c(t,this.options)),this.prerelease.length&&!t.prerelease.length)return-1;if(!this.prerelease.length&&t.prerelease.length)return 1;if(!this.prerelease.length&&!t.prerelease.length)return 0;let e=0;do{const n=this.prerelease[e],o=t.prerelease[e];if(r("prerelease compare",e,n,o),void 0===n&&void 0===o)return 0;if(void 0===o)return 1;if(void 0===n)return-1;if(n!==o)return u(n,o)}while(++e)}compareBuild(t){t instanceof c||(t=new c(t,this.options));let e=0;do{const n=this.build[e],o=t.build[e];if(r("prerelease compare",e,n,o),void 0===n&&void 0===o)return 0;if(void 0===o)return 1;if(void 0===n)return-1;if(n!==o)return u(n,o)}while(++e)}inc(t,e){switch(t){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",e);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",e);break;case"prepatch":this.prerelease.length=0,this.inc("patch",e),this.inc("pre",e);break;case"prerelease":0===this.prerelease.length&&this.inc("patch",e),this.inc("pre",e);break;case"major":0===this.minor&&0===this.patch&&0!==this.prerelease.length||this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":0===this.patch&&0!==this.prerelease.length||this.minor++,this.patch=0,this.prerelease=[];break;case"patch":0===this.prerelease.length&&this.patch++,this.prerelease=[];break;case"pre":if(0===this.prerelease.length)this.prerelease=[0];else{let t=this.prerelease.length;for(;--t>=0;)"number"==typeof this.prerelease[t]&&(this.prerelease[t]++,t=-2);-1===t&&this.prerelease.push(0)}e&&(this.prerelease[0]===e?isNaN(this.prerelease[1])&&(this.prerelease=[e,0]):this.prerelease=[e,0]);break;default:throw new Error(`invalid increment argument: ${t}`)}return this.format(),this.raw=this.version,this}}t.exports=c},8679:(t,e,n)=>{const r=n(6376);t.exports=(t,e)=>new r(t,e).major},3959:(t,e,n)=>{const{MAX_LENGTH:r}=n(3295),{re:o,t:i}=n(5765),a=n(6376),s=n(2893);t.exports=(t,e)=>{if(e=s(e),t instanceof a)return t;if("string"!=typeof t)return null;if(t.length>r)return null;if(!(e.loose?o[i.LOOSE]:o[i.FULL]).test(t))return null;try{return new a(t,e)}catch(t){return null}}},6397:(t,e,n)=>{const r=n(3959);t.exports=(t,e)=>{const n=r(t,e);return n?n.version:null}},3295:t=>{const e=Number.MAX_SAFE_INTEGER||9007199254740991;t.exports={SEMVER_SPEC_VERSION:"2.0.0",MAX_LENGTH:256,MAX_SAFE_INTEGER:e,MAX_SAFE_COMPONENT_LENGTH:16}},4225:(t,e,n)=>{var r=n(4155),o=n(5108);const i="object"==typeof r&&r.env&&r.env.NODE_DEBUG&&/\bsemver\b/i.test(r.env.NODE_DEBUG)?(...t)=>o.error("SEMVER",...t):()=>{};t.exports=i},6742:t=>{const e=/^[0-9]+$/,n=(t,n)=>{const r=e.test(t),o=e.test(n);return r&&o&&(t=+t,n=+n),t===n?0:r&&!o?-1:o&&!r?1:t<n?-1:1};t.exports={compareIdentifiers:n,rcompareIdentifiers:(t,e)=>n(e,t)}},2893:t=>{const e=["includePrerelease","loose","rtl"];t.exports=t=>t?"object"!=typeof t?{loose:!0}:e.filter((e=>t[e])).reduce(((t,e)=>(t[e]=!0,t)),{}):{}},5765:(t,e,n)=>{const{MAX_SAFE_COMPONENT_LENGTH:r}=n(3295),o=n(4225),i=(e=t.exports={}).re=[],a=e.src=[],s=e.t={};let l=0;const u=(t,e,n)=>{const r=l++;o(r,e),s[t]=r,a[r]=e,i[r]=new RegExp(e,n?"g":void 0)};u("NUMERICIDENTIFIER","0|[1-9]\\d*"),u("NUMERICIDENTIFIERLOOSE","[0-9]+"),u("NONNUMERICIDENTIFIER","\\d*[a-zA-Z-][a-zA-Z0-9-]*"),u("MAINVERSION",`(${a[s.NUMERICIDENTIFIER]})\\.(${a[s.NUMERICIDENTIFIER]})\\.(${a[s.NUMERICIDENTIFIER]})`),u("MAINVERSIONLOOSE",`(${a[s.NUMERICIDENTIFIERLOOSE]})\\.(${a[s.NUMERICIDENTIFIERLOOSE]})\\.(${a[s.NUMERICIDENTIFIERLOOSE]})`),u("PRERELEASEIDENTIFIER",`(?:${a[s.NUMERICIDENTIFIER]}|${a[s.NONNUMERICIDENTIFIER]})`),u("PRERELEASEIDENTIFIERLOOSE",`(?:${a[s.NUMERICIDENTIFIERLOOSE]}|${a[s.NONNUMERICIDENTIFIER]})`),u("PRERELEASE",`(?:-(${a[s.PRERELEASEIDENTIFIER]}(?:\\.${a[s.PRERELEASEIDENTIFIER]})*))`),u("PRERELEASELOOSE",`(?:-?(${a[s.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${a[s.PRERELEASEIDENTIFIERLOOSE]})*))`),u("BUILDIDENTIFIER","[0-9A-Za-z-]+"),u("BUILD",`(?:\\+(${a[s.BUILDIDENTIFIER]}(?:\\.${a[s.BUILDIDENTIFIER]})*))`),u("FULLPLAIN",`v?${a[s.MAINVERSION]}${a[s.PRERELEASE]}?${a[s.BUILD]}?`),u("FULL",`^${a[s.FULLPLAIN]}$`),u("LOOSEPLAIN",`[v=\\s]*${a[s.MAINVERSIONLOOSE]}${a[s.PRERELEASELOOSE]}?${a[s.BUILD]}?`),u("LOOSE",`^${a[s.LOOSEPLAIN]}$`),u("GTLT","((?:<|>)?=?)"),u("XRANGEIDENTIFIERLOOSE",`${a[s.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`),u("XRANGEIDENTIFIER",`${a[s.NUMERICIDENTIFIER]}|x|X|\\*`),u("XRANGEPLAIN",`[v=\\s]*(${a[s.XRANGEIDENTIFIER]})(?:\\.(${a[s.XRANGEIDENTIFIER]})(?:\\.(${a[s.XRANGEIDENTIFIER]})(?:${a[s.PRERELEASE]})?${a[s.BUILD]}?)?)?`),u("XRANGEPLAINLOOSE",`[v=\\s]*(${a[s.XRANGEIDENTIFIERLOOSE]})(?:\\.(${a[s.XRANGEIDENTIFIERLOOSE]})(?:\\.(${a[s.XRANGEIDENTIFIERLOOSE]})(?:${a[s.PRERELEASELOOSE]})?${a[s.BUILD]}?)?)?`),u("XRANGE",`^${a[s.GTLT]}\\s*${a[s.XRANGEPLAIN]}$`),u("XRANGELOOSE",`^${a[s.GTLT]}\\s*${a[s.XRANGEPLAINLOOSE]}$`),u("COERCE",`(^|[^\\d])(\\d{1,${r}})(?:\\.(\\d{1,${r}}))?(?:\\.(\\d{1,${r}}))?(?:$|[^\\d])`),u("COERCERTL",a[s.COERCE],!0),u("LONETILDE","(?:~>?)"),u("TILDETRIM",`(\\s*)${a[s.LONETILDE]}\\s+`,!0),e.tildeTrimReplace="$1~",u("TILDE",`^${a[s.LONETILDE]}${a[s.XRANGEPLAIN]}$`),u("TILDELOOSE",`^${a[s.LONETILDE]}${a[s.XRANGEPLAINLOOSE]}$`),u("LONECARET","(?:\\^)"),u("CARETTRIM",`(\\s*)${a[s.LONECARET]}\\s+`,!0),e.caretTrimReplace="$1^",u("CARET",`^${a[s.LONECARET]}${a[s.XRANGEPLAIN]}$`),u("CARETLOOSE",`^${a[s.LONECARET]}${a[s.XRANGEPLAINLOOSE]}$`),u("COMPARATORLOOSE",`^${a[s.GTLT]}\\s*(${a[s.LOOSEPLAIN]})$|^$`),u("COMPARATOR",`^${a[s.GTLT]}\\s*(${a[s.FULLPLAIN]})$|^$`),u("COMPARATORTRIM",`(\\s*)${a[s.GTLT]}\\s*(${a[s.LOOSEPLAIN]}|${a[s.XRANGEPLAIN]})`,!0),e.comparatorTrimReplace="$1$2$3",u("HYPHENRANGE",`^\\s*(${a[s.XRANGEPLAIN]})\\s+-\\s+(${a[s.XRANGEPLAIN]})\\s*$`),u("HYPHENRANGELOOSE",`^\\s*(${a[s.XRANGEPLAINLOOSE]})\\s+-\\s+(${a[s.XRANGEPLAINLOOSE]})\\s*$`),u("STAR","(<|>)?=?\\s*\\*"),u("GTE0","^\\s*>=\\s*0.0.0\\s*$"),u("GTE0PRE","^\\s*>=\\s*0.0.0-0\\s*$")},3379:t=>{"use strict";var e=[];function n(t){for(var n=-1,r=0;r<e.length;r++)if(e[r].identifier===t){n=r;break}return n}function r(t,r){for(var i={},a=[],s=0;s<t.length;s++){var l=t[s],u=r.base?l[0]+r.base:l[0],c=i[u]||0,p="".concat(u," ").concat(c);i[u]=c+1;var f=n(p),d={css:l[1],media:l[2],sourceMap:l[3],supports:l[4],layer:l[5]};if(-1!==f)e[f].references++,e[f].updater(d);else{var h=o(d,r);r.byIndex=s,e.splice(s,0,{identifier:p,updater:h,references:1})}a.push(p)}return a}function o(t,e){var n=e.domAPI(e);n.update(t);return function(e){if(e){if(e.css===t.css&&e.media===t.media&&e.sourceMap===t.sourceMap&&e.supports===t.supports&&e.layer===t.layer)return;n.update(t=e)}else n.remove()}}t.exports=function(t,o){var i=r(t=t||[],o=o||{});return function(t){t=t||[];for(var a=0;a<i.length;a++){var s=n(i[a]);e[s].references--}for(var l=r(t,o),u=0;u<i.length;u++){var c=n(i[u]);0===e[c].references&&(e[c].updater(),e.splice(c,1))}i=l}}},569:t=>{"use strict";var e={};t.exports=function(t,n){var r=function(t){if(void 0===e[t]){var n=document.querySelector(t);if(window.HTMLIFrameElement&&n instanceof window.HTMLIFrameElement)try{n=n.contentDocument.head}catch(t){n=null}e[t]=n}return e[t]}(t);if(!r)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");r.appendChild(n)}},9216:t=>{"use strict";t.exports=function(t){var e=document.createElement("style");return t.setAttributes(e,t.attributes),t.insert(e,t.options),e}},3565:(t,e,n)=>{"use strict";t.exports=function(t){var e=n.nc;e&&t.setAttribute("nonce",e)}},7795:t=>{"use strict";t.exports=function(t){var e=t.insertStyleElement(t);return{update:function(n){!function(t,e,n){var r="";n.supports&&(r+="@supports (".concat(n.supports,") {")),n.media&&(r+="@media ".concat(n.media," {"));var o=void 0!==n.layer;o&&(r+="@layer".concat(n.layer.length>0?" ".concat(n.layer):""," {")),r+=n.css,o&&(r+="}"),n.media&&(r+="}"),n.supports&&(r+="}");var i=n.sourceMap;i&&"undefined"!=typeof btoa&&(r+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(i))))," */")),e.styleTagTransform(r,t,e.options)}(e,t,n)},remove:function(){!function(t){if(null===t.parentNode)return!1;t.parentNode.removeChild(t)}(e)}}}},4589:t=>{"use strict";t.exports=function(t,e){if(e.styleSheet)e.styleSheet.cssText=t;else{for(;e.firstChild;)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(t))}}},2998:(t,e,n)=>{"use strict";function r(t){return r="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},r(t)}function o(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function i(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}n.r(e),n.d(e,{VClosePopover:()=>ye,VPopover:()=>Ae,VTooltip:()=>ge,createTooltip:()=>Ht,default:()=>we,destroyTooltip:()=>Yt,install:()=>ve});var a=n(5108),s="undefined"!=typeof window&&"undefined"!=typeof document&&"undefined"!=typeof navigator,l=function(){for(var t=["Edge","Trident","Firefox"],e=0;e<t.length;e+=1)if(s&&navigator.userAgent.indexOf(t[e])>=0)return 1;return 0}();var u=s&&window.Promise?function(t){var e=!1;return function(){e||(e=!0,window.Promise.resolve().then((function(){e=!1,t()})))}}:function(t){var e=!1;return function(){e||(e=!0,setTimeout((function(){e=!1,t()}),l))}};function c(t){return t&&"[object Function]"==={}.toString.call(t)}function p(t,e){if(1!==t.nodeType)return[];var n=t.ownerDocument.defaultView.getComputedStyle(t,null);return e?n[e]:n}function f(t){return"HTML"===t.nodeName?t:t.parentNode||t.host}function d(t){if(!t)return document.body;switch(t.nodeName){case"HTML":case"BODY":return t.ownerDocument.body;case"#document":return t.body}var e=p(t),n=e.overflow,r=e.overflowX,o=e.overflowY;return/(auto|scroll|overlay)/.test(n+o+r)?t:d(f(t))}function h(t){return t&&t.referenceNode?t.referenceNode:t}var m=s&&!(!window.MSInputMethodContext||!document.documentMode),v=s&&/MSIE 10/.test(navigator.userAgent);function g(t){return 11===t?m:10===t?v:m||v}function y(t){if(!t)return document.documentElement;for(var e=g(10)?document.body:null,n=t.offsetParent||null;n===e&&t.nextElementSibling;)n=(t=t.nextElementSibling).offsetParent;var r=n&&n.nodeName;return r&&"BODY"!==r&&"HTML"!==r?-1!==["TH","TD","TABLE"].indexOf(n.nodeName)&&"static"===p(n,"position")?y(n):n:t?t.ownerDocument.documentElement:document.documentElement}function A(t){return null!==t.parentNode?A(t.parentNode):t}function b(t,e){if(!(t&&t.nodeType&&e&&e.nodeType))return document.documentElement;var n=t.compareDocumentPosition(e)&Node.DOCUMENT_POSITION_FOLLOWING,r=n?t:e,o=n?e:t,i=document.createRange();i.setStart(r,0),i.setEnd(o,0);var a,s,l=i.commonAncestorContainer;if(t!==l&&e!==l||r.contains(o))return"BODY"===(s=(a=l).nodeName)||"HTML"!==s&&y(a.firstElementChild)!==a?y(l):l;var u=A(t);return u.host?b(u.host,e):b(t,A(e).host)}function C(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"top",n="top"===e?"scrollTop":"scrollLeft",r=t.nodeName;if("BODY"===r||"HTML"===r){var o=t.ownerDocument.documentElement,i=t.ownerDocument.scrollingElement||o;return i[n]}return t[n]}function w(t,e){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=C(e,"top"),o=C(e,"left"),i=n?-1:1;return t.top+=r*i,t.bottom+=r*i,t.left+=o*i,t.right+=o*i,t}function x(t,e){var n="x"===e?"Left":"Top",r="Left"===n?"Right":"Bottom";return parseFloat(t["border"+n+"Width"])+parseFloat(t["border"+r+"Width"])}function _(t,e,n,r){return Math.max(e["offset"+t],e["scroll"+t],n["client"+t],n["offset"+t],n["scroll"+t],g(10)?parseInt(n["offset"+t])+parseInt(r["margin"+("Height"===t?"Top":"Left")])+parseInt(r["margin"+("Height"===t?"Bottom":"Right")]):0)}function S(t){var e=t.body,n=t.documentElement,r=g(10)&&getComputedStyle(n);return{height:_("Height",e,n,r),width:_("Width",e,n,r)}}var k=function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")},E=function(){function t(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}return function(e,n,r){return n&&t(e.prototype,n),r&&t(e,r),e}}(),O=function(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t},j=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t};function T(t){return j({},t,{right:t.left+t.width,bottom:t.top+t.height})}function B(t){var e={};try{if(g(10)){e=t.getBoundingClientRect();var n=C(t,"top"),r=C(t,"left");e.top+=n,e.left+=r,e.bottom+=n,e.right+=r}else e=t.getBoundingClientRect()}catch(t){}var o={left:e.left,top:e.top,width:e.right-e.left,height:e.bottom-e.top},i="HTML"===t.nodeName?S(t.ownerDocument):{},a=i.width||t.clientWidth||o.width,s=i.height||t.clientHeight||o.height,l=t.offsetWidth-a,u=t.offsetHeight-s;if(l||u){var c=p(t);l-=x(c,"x"),u-=x(c,"y"),o.width-=l,o.height-=u}return T(o)}function N(t,e){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=g(10),o="HTML"===e.nodeName,i=B(t),a=B(e),s=d(t),l=p(e),u=parseFloat(l.borderTopWidth),c=parseFloat(l.borderLeftWidth);n&&o&&(a.top=Math.max(a.top,0),a.left=Math.max(a.left,0));var f=T({top:i.top-a.top-u,left:i.left-a.left-c,width:i.width,height:i.height});if(f.marginTop=0,f.marginLeft=0,!r&&o){var h=parseFloat(l.marginTop),m=parseFloat(l.marginLeft);f.top-=u-h,f.bottom-=u-h,f.left-=c-m,f.right-=c-m,f.marginTop=h,f.marginLeft=m}return(r&&!n?e.contains(s):e===s&&"BODY"!==s.nodeName)&&(f=w(f,e)),f}function P(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=t.ownerDocument.documentElement,r=N(t,n),o=Math.max(n.clientWidth,window.innerWidth||0),i=Math.max(n.clientHeight,window.innerHeight||0),a=e?0:C(n),s=e?0:C(n,"left"),l={top:a-r.top+r.marginTop,left:s-r.left+r.marginLeft,width:o,height:i};return T(l)}function $(t){var e=t.nodeName;if("BODY"===e||"HTML"===e)return!1;if("fixed"===p(t,"position"))return!0;var n=f(t);return!!n&&$(n)}function I(t){if(!t||!t.parentElement||g())return document.documentElement;for(var e=t.parentElement;e&&"none"===p(e,"transform");)e=e.parentElement;return e||document.documentElement}function z(t,e,n,r){var o=arguments.length>4&&void 0!==arguments[4]&&arguments[4],i={top:0,left:0},a=o?I(t):b(t,h(e));if("viewport"===r)i=P(a,o);else{var s=void 0;"scrollParent"===r?"BODY"===(s=d(f(e))).nodeName&&(s=t.ownerDocument.documentElement):s="window"===r?t.ownerDocument.documentElement:r;var l=N(s,a,o);if("HTML"!==s.nodeName||$(a))i=l;else{var u=S(t.ownerDocument),c=u.height,p=u.width;i.top+=l.top-l.marginTop,i.bottom=c+l.top,i.left+=l.left-l.marginLeft,i.right=p+l.left}}var m="number"==typeof(n=n||0);return i.left+=m?n:n.left||0,i.top+=m?n:n.top||0,i.right-=m?n:n.right||0,i.bottom-=m?n:n.bottom||0,i}function F(t){return t.width*t.height}function D(t,e,n,r,o){var i=arguments.length>5&&void 0!==arguments[5]?arguments[5]:0;if(-1===t.indexOf("auto"))return t;var a=z(n,r,i,o),s={top:{width:a.width,height:e.top-a.top},right:{width:a.right-e.right,height:a.height},bottom:{width:a.width,height:a.bottom-e.bottom},left:{width:e.left-a.left,height:a.height}},l=Object.keys(s).map((function(t){return j({key:t},s[t],{area:F(s[t])})})).sort((function(t,e){return e.area-t.area})),u=l.filter((function(t){var e=t.width,r=t.height;return e>=n.clientWidth&&r>=n.clientHeight})),c=u.length>0?u[0].key:l[0].key,p=t.split("-")[1];return c+(p?"-"+p:"")}function L(t,e,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,o=r?I(e):b(e,h(n));return N(n,o,r)}function R(t){var e=t.ownerDocument.defaultView.getComputedStyle(t),n=parseFloat(e.marginTop||0)+parseFloat(e.marginBottom||0),r=parseFloat(e.marginLeft||0)+parseFloat(e.marginRight||0);return{width:t.offsetWidth+r,height:t.offsetHeight+n}}function M(t){var e={left:"right",right:"left",bottom:"top",top:"bottom"};return t.replace(/left|right|bottom|top/g,(function(t){return e[t]}))}function U(t,e,n){n=n.split("-")[0];var r=R(t),o={width:r.width,height:r.height},i=-1!==["right","left"].indexOf(n),a=i?"top":"left",s=i?"left":"top",l=i?"height":"width",u=i?"width":"height";return o[a]=e[a]+e[l]/2-r[l]/2,o[s]=n===s?e[s]-r[u]:e[M(s)],o}function G(t,e){return Array.prototype.find?t.find(e):t.filter(e)[0]}function q(t,e,n){return(void 0===n?t:t.slice(0,function(t,e,n){if(Array.prototype.findIndex)return t.findIndex((function(t){return t[e]===n}));var r=G(t,(function(t){return t[e]===n}));return t.indexOf(r)}(t,"name",n))).forEach((function(t){t.function&&a.warn("`modifier.function` is deprecated, use `modifier.fn`!");var n=t.function||t.fn;t.enabled&&c(n)&&(e.offsets.popper=T(e.offsets.popper),e.offsets.reference=T(e.offsets.reference),e=n(e,t))})),e}function V(){if(!this.state.isDestroyed){var t={instance:this,styles:{},arrowStyles:{},attributes:{},flipped:!1,offsets:{}};t.offsets.reference=L(this.state,this.popper,this.reference,this.options.positionFixed),t.placement=D(this.options.placement,t.offsets.reference,this.popper,this.reference,this.options.modifiers.flip.boundariesElement,this.options.modifiers.flip.padding),t.originalPlacement=t.placement,t.positionFixed=this.options.positionFixed,t.offsets.popper=U(this.popper,t.offsets.reference,t.placement),t.offsets.popper.position=this.options.positionFixed?"fixed":"absolute",t=q(this.modifiers,t),this.state.isCreated?this.options.onUpdate(t):(this.state.isCreated=!0,this.options.onCreate(t))}}function W(t,e){return t.some((function(t){var n=t.name;return t.enabled&&n===e}))}function H(t){for(var e=[!1,"ms","Webkit","Moz","O"],n=t.charAt(0).toUpperCase()+t.slice(1),r=0;r<e.length;r++){var o=e[r],i=o?""+o+n:t;if(void 0!==document.body.style[i])return i}return null}function Y(){return this.state.isDestroyed=!0,W(this.modifiers,"applyStyle")&&(this.popper.removeAttribute("x-placement"),this.popper.style.position="",this.popper.style.top="",this.popper.style.left="",this.popper.style.right="",this.popper.style.bottom="",this.popper.style.willChange="",this.popper.style[H("transform")]=""),this.disableEventListeners(),this.options.removeOnDestroy&&this.popper.parentNode.removeChild(this.popper),this}function K(t){var e=t.ownerDocument;return e?e.defaultView:window}function X(t,e,n,r){var o="BODY"===t.nodeName,i=o?t.ownerDocument.defaultView:t;i.addEventListener(e,n,{passive:!0}),o||X(d(i.parentNode),e,n,r),r.push(i)}function Z(t,e,n,r){n.updateBound=r,K(t).addEventListener("resize",n.updateBound,{passive:!0});var o=d(t);return X(o,"scroll",n.updateBound,n.scrollParents),n.scrollElement=o,n.eventsEnabled=!0,n}function J(){this.state.eventsEnabled||(this.state=Z(this.reference,this.options,this.state,this.scheduleUpdate))}function Q(){this.state.eventsEnabled&&(cancelAnimationFrame(this.scheduleUpdate),this.state=function(t,e){return K(t).removeEventListener("resize",e.updateBound),e.scrollParents.forEach((function(t){t.removeEventListener("scroll",e.updateBound)})),e.updateBound=null,e.scrollParents=[],e.scrollElement=null,e.eventsEnabled=!1,e}(this.reference,this.state))}function tt(t){return""!==t&&!isNaN(parseFloat(t))&&isFinite(t)}function et(t,e){Object.keys(e).forEach((function(n){var r="";-1!==["width","height","top","right","bottom","left"].indexOf(n)&&tt(e[n])&&(r="px"),t.style[n]=e[n]+r}))}var nt=s&&/Firefox/i.test(navigator.userAgent);function rt(t,e,n){var r=G(t,(function(t){return t.name===e})),o=!!r&&t.some((function(t){return t.name===n&&t.enabled&&t.order<r.order}));if(!o){var i="`"+e+"`",s="`"+n+"`";a.warn(s+" modifier is required by "+i+" modifier in order to work, be sure to include it before "+i+"!")}return o}var ot=["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"],it=ot.slice(3);function at(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=it.indexOf(t),r=it.slice(n+1).concat(it.slice(0,n));return e?r.reverse():r}var st="flip",lt="clockwise",ut="counterclockwise";function ct(t,e,n,r){var o=[0,0],i=-1!==["right","left"].indexOf(r),s=t.split(/(\+|\-)/).map((function(t){return t.trim()})),l=s.indexOf(G(s,(function(t){return-1!==t.search(/,|\s/)})));s[l]&&-1===s[l].indexOf(",")&&a.warn("Offsets separated by white space(s) are deprecated, use a comma (,) instead.");var u=/\s*,\s*|\s+/,c=-1!==l?[s.slice(0,l).concat([s[l].split(u)[0]]),[s[l].split(u)[1]].concat(s.slice(l+1))]:[s];return c=c.map((function(t,r){var o=(1===r?!i:i)?"height":"width",a=!1;return t.reduce((function(t,e){return""===t[t.length-1]&&-1!==["+","-"].indexOf(e)?(t[t.length-1]=e,a=!0,t):a?(t[t.length-1]+=e,a=!1,t):t.concat(e)}),[]).map((function(t){return function(t,e,n,r){var o=t.match(/((?:\-|\+)?\d*\.?\d*)(.*)/),i=+o[1],a=o[2];if(!i)return t;if(0===a.indexOf("%")){return T("%p"===a?n:r)[e]/100*i}if("vh"===a||"vw"===a)return("vh"===a?Math.max(document.documentElement.clientHeight,window.innerHeight||0):Math.max(document.documentElement.clientWidth,window.innerWidth||0))/100*i;return i}(t,o,e,n)}))})),c.forEach((function(t,e){t.forEach((function(n,r){tt(n)&&(o[e]+=n*("-"===t[r-1]?-1:1))}))})),o}var pt={shift:{order:100,enabled:!0,fn:function(t){var e=t.placement,n=e.split("-")[0],r=e.split("-")[1];if(r){var o=t.offsets,i=o.reference,a=o.popper,s=-1!==["bottom","top"].indexOf(n),l=s?"left":"top",u=s?"width":"height",c={start:O({},l,i[l]),end:O({},l,i[l]+i[u]-a[u])};t.offsets.popper=j({},a,c[r])}return t}},offset:{order:200,enabled:!0,fn:function(t,e){var n=e.offset,r=t.placement,o=t.offsets,i=o.popper,a=o.reference,s=r.split("-")[0],l=void 0;return l=tt(+n)?[+n,0]:ct(n,i,a,s),"left"===s?(i.top+=l[0],i.left-=l[1]):"right"===s?(i.top+=l[0],i.left+=l[1]):"top"===s?(i.left+=l[0],i.top-=l[1]):"bottom"===s&&(i.left+=l[0],i.top+=l[1]),t.popper=i,t},offset:0},preventOverflow:{order:300,enabled:!0,fn:function(t,e){var n=e.boundariesElement||y(t.instance.popper);t.instance.reference===n&&(n=y(n));var r=H("transform"),o=t.instance.popper.style,i=o.top,a=o.left,s=o[r];o.top="",o.left="",o[r]="";var l=z(t.instance.popper,t.instance.reference,e.padding,n,t.positionFixed);o.top=i,o.left=a,o[r]=s,e.boundaries=l;var u=e.priority,c=t.offsets.popper,p={primary:function(t){var n=c[t];return c[t]<l[t]&&!e.escapeWithReference&&(n=Math.max(c[t],l[t])),O({},t,n)},secondary:function(t){var n="right"===t?"left":"top",r=c[n];return c[t]>l[t]&&!e.escapeWithReference&&(r=Math.min(c[n],l[t]-("right"===t?c.width:c.height))),O({},n,r)}};return u.forEach((function(t){var e=-1!==["left","top"].indexOf(t)?"primary":"secondary";c=j({},c,p[e](t))})),t.offsets.popper=c,t},priority:["left","right","top","bottom"],padding:5,boundariesElement:"scrollParent"},keepTogether:{order:400,enabled:!0,fn:function(t){var e=t.offsets,n=e.popper,r=e.reference,o=t.placement.split("-")[0],i=Math.floor,a=-1!==["top","bottom"].indexOf(o),s=a?"right":"bottom",l=a?"left":"top",u=a?"width":"height";return n[s]<i(r[l])&&(t.offsets.popper[l]=i(r[l])-n[u]),n[l]>i(r[s])&&(t.offsets.popper[l]=i(r[s])),t}},arrow:{order:500,enabled:!0,fn:function(t,e){var n;if(!rt(t.instance.modifiers,"arrow","keepTogether"))return t;var r=e.element;if("string"==typeof r){if(!(r=t.instance.popper.querySelector(r)))return t}else if(!t.instance.popper.contains(r))return a.warn("WARNING: `arrow.element` must be child of its popper element!"),t;var o=t.placement.split("-")[0],i=t.offsets,s=i.popper,l=i.reference,u=-1!==["left","right"].indexOf(o),c=u?"height":"width",f=u?"Top":"Left",d=f.toLowerCase(),h=u?"left":"top",m=u?"bottom":"right",v=R(r)[c];l[m]-v<s[d]&&(t.offsets.popper[d]-=s[d]-(l[m]-v)),l[d]+v>s[m]&&(t.offsets.popper[d]+=l[d]+v-s[m]),t.offsets.popper=T(t.offsets.popper);var g=l[d]+l[c]/2-v/2,y=p(t.instance.popper),A=parseFloat(y["margin"+f]),b=parseFloat(y["border"+f+"Width"]),C=g-t.offsets.popper[d]-A-b;return C=Math.max(Math.min(s[c]-v,C),0),t.arrowElement=r,t.offsets.arrow=(O(n={},d,Math.round(C)),O(n,h,""),n),t},element:"[x-arrow]"},flip:{order:600,enabled:!0,fn:function(t,e){if(W(t.instance.modifiers,"inner"))return t;if(t.flipped&&t.placement===t.originalPlacement)return t;var n=z(t.instance.popper,t.instance.reference,e.padding,e.boundariesElement,t.positionFixed),r=t.placement.split("-")[0],o=M(r),i=t.placement.split("-")[1]||"",a=[];switch(e.behavior){case st:a=[r,o];break;case lt:a=at(r);break;case ut:a=at(r,!0);break;default:a=e.behavior}return a.forEach((function(s,l){if(r!==s||a.length===l+1)return t;r=t.placement.split("-")[0],o=M(r);var u=t.offsets.popper,c=t.offsets.reference,p=Math.floor,f="left"===r&&p(u.right)>p(c.left)||"right"===r&&p(u.left)<p(c.right)||"top"===r&&p(u.bottom)>p(c.top)||"bottom"===r&&p(u.top)<p(c.bottom),d=p(u.left)<p(n.left),h=p(u.right)>p(n.right),m=p(u.top)<p(n.top),v=p(u.bottom)>p(n.bottom),g="left"===r&&d||"right"===r&&h||"top"===r&&m||"bottom"===r&&v,y=-1!==["top","bottom"].indexOf(r),A=!!e.flipVariations&&(y&&"start"===i&&d||y&&"end"===i&&h||!y&&"start"===i&&m||!y&&"end"===i&&v),b=!!e.flipVariationsByContent&&(y&&"start"===i&&h||y&&"end"===i&&d||!y&&"start"===i&&v||!y&&"end"===i&&m),C=A||b;(f||g||C)&&(t.flipped=!0,(f||g)&&(r=a[l+1]),C&&(i=function(t){return"end"===t?"start":"start"===t?"end":t}(i)),t.placement=r+(i?"-"+i:""),t.offsets.popper=j({},t.offsets.popper,U(t.instance.popper,t.offsets.reference,t.placement)),t=q(t.instance.modifiers,t,"flip"))})),t},behavior:"flip",padding:5,boundariesElement:"viewport",flipVariations:!1,flipVariationsByContent:!1},inner:{order:700,enabled:!1,fn:function(t){var e=t.placement,n=e.split("-")[0],r=t.offsets,o=r.popper,i=r.reference,a=-1!==["left","right"].indexOf(n),s=-1===["top","left"].indexOf(n);return o[a?"left":"top"]=i[n]-(s?o[a?"width":"height"]:0),t.placement=M(e),t.offsets.popper=T(o),t}},hide:{order:800,enabled:!0,fn:function(t){if(!rt(t.instance.modifiers,"hide","preventOverflow"))return t;var e=t.offsets.reference,n=G(t.instance.modifiers,(function(t){return"preventOverflow"===t.name})).boundaries;if(e.bottom<n.top||e.left>n.right||e.top>n.bottom||e.right<n.left){if(!0===t.hide)return t;t.hide=!0,t.attributes["x-out-of-boundaries"]=""}else{if(!1===t.hide)return t;t.hide=!1,t.attributes["x-out-of-boundaries"]=!1}return t}},computeStyle:{order:850,enabled:!0,fn:function(t,e){var n=e.x,r=e.y,o=t.offsets.popper,i=G(t.instance.modifiers,(function(t){return"applyStyle"===t.name})).gpuAcceleration;void 0!==i&&a.warn("WARNING: `gpuAcceleration` option moved to `computeStyle` modifier and will not be supported in future versions of Popper.js!");var s=void 0!==i?i:e.gpuAcceleration,l=y(t.instance.popper),u=B(l),c={position:o.position},p=function(t,e){var n=t.offsets,r=n.popper,o=n.reference,i=Math.round,a=Math.floor,s=function(t){return t},l=i(o.width),u=i(r.width),c=-1!==["left","right"].indexOf(t.placement),p=-1!==t.placement.indexOf("-"),f=e?c||p||l%2==u%2?i:a:s,d=e?i:s;return{left:f(l%2==1&&u%2==1&&!p&&e?r.left-1:r.left),top:d(r.top),bottom:d(r.bottom),right:f(r.right)}}(t,window.devicePixelRatio<2||!nt),f="bottom"===n?"top":"bottom",d="right"===r?"left":"right",h=H("transform"),m=void 0,v=void 0;if(v="bottom"===f?"HTML"===l.nodeName?-l.clientHeight+p.bottom:-u.height+p.bottom:p.top,m="right"===d?"HTML"===l.nodeName?-l.clientWidth+p.right:-u.width+p.right:p.left,s&&h)c[h]="translate3d("+m+"px, "+v+"px, 0)",c[f]=0,c[d]=0,c.willChange="transform";else{var g="bottom"===f?-1:1,A="right"===d?-1:1;c[f]=v*g,c[d]=m*A,c.willChange=f+", "+d}var b={"x-placement":t.placement};return t.attributes=j({},b,t.attributes),t.styles=j({},c,t.styles),t.arrowStyles=j({},t.offsets.arrow,t.arrowStyles),t},gpuAcceleration:!0,x:"bottom",y:"right"},applyStyle:{order:900,enabled:!0,fn:function(t){var e,n;return et(t.instance.popper,t.styles),e=t.instance.popper,n=t.attributes,Object.keys(n).forEach((function(t){!1!==n[t]?e.setAttribute(t,n[t]):e.removeAttribute(t)})),t.arrowElement&&Object.keys(t.arrowStyles).length&&et(t.arrowElement,t.arrowStyles),t},onLoad:function(t,e,n,r,o){var i=L(o,e,t,n.positionFixed),a=D(n.placement,i,e,t,n.modifiers.flip.boundariesElement,n.modifiers.flip.padding);return e.setAttribute("x-placement",a),et(e,{position:n.positionFixed?"fixed":"absolute"}),n},gpuAcceleration:void 0}},ft={placement:"bottom",positionFixed:!1,eventsEnabled:!0,removeOnDestroy:!1,onCreate:function(){},onUpdate:function(){},modifiers:pt},dt=function(){function t(e,n){var r=this,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};k(this,t),this.scheduleUpdate=function(){return requestAnimationFrame(r.update)},this.update=u(this.update.bind(this)),this.options=j({},t.Defaults,o),this.state={isDestroyed:!1,isCreated:!1,scrollParents:[]},this.reference=e&&e.jquery?e[0]:e,this.popper=n&&n.jquery?n[0]:n,this.options.modifiers={},Object.keys(j({},t.Defaults.modifiers,o.modifiers)).forEach((function(e){r.options.modifiers[e]=j({},t.Defaults.modifiers[e]||{},o.modifiers?o.modifiers[e]:{})})),this.modifiers=Object.keys(this.options.modifiers).map((function(t){return j({name:t},r.options.modifiers[t])})).sort((function(t,e){return t.order-e.order})),this.modifiers.forEach((function(t){t.enabled&&c(t.onLoad)&&t.onLoad(r.reference,r.popper,r.options,t,r.state)})),this.update();var i=this.options.eventsEnabled;i&&this.enableEventListeners(),this.state.eventsEnabled=i}return E(t,[{key:"update",value:function(){return V.call(this)}},{key:"destroy",value:function(){return Y.call(this)}},{key:"enableEventListeners",value:function(){return J.call(this)}},{key:"disableEventListeners",value:function(){return Q.call(this)}}]),t}();dt.Utils=("undefined"!=typeof window?window:n.g).PopperUtils,dt.placements=ot,dt.Defaults=ft;const ht=dt;var mt,vt=n(8446),gt=n.n(vt);function yt(){yt.init||(yt.init=!0,mt=-1!==function(){var t=window.navigator.userAgent,e=t.indexOf("MSIE ");if(e>0)return parseInt(t.substring(e+5,t.indexOf(".",e)),10);if(t.indexOf("Trident/")>0){var n=t.indexOf("rv:");return parseInt(t.substring(n+3,t.indexOf(".",n)),10)}var r=t.indexOf("Edge/");return r>0?parseInt(t.substring(r+5,t.indexOf(".",r)),10):-1}())}function At(t,e,n,r,o,i,a,s,l,u){"boolean"!=typeof a&&(l=s,s=a,a=!1);var c,p="function"==typeof n?n.options:n;if(t&&t.render&&(p.render=t.render,p.staticRenderFns=t.staticRenderFns,p._compiled=!0,o&&(p.functional=!0)),r&&(p._scopeId=r),i?(c=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,l(t)),t&&t._registeredComponents&&t._registeredComponents.add(i)},p._ssrRegister=c):e&&(c=a?function(t){e.call(this,u(t,this.$root.$options.shadowRoot))}:function(t){e.call(this,s(t))}),c)if(p.functional){var f=p.render;p.render=function(t,e){return c.call(e),f(t,e)}}else{var d=p.beforeCreate;p.beforeCreate=d?[].concat(d,c):[c]}return n}var bt={name:"ResizeObserver",props:{emitOnMount:{type:Boolean,default:!1},ignoreWidth:{type:Boolean,default:!1},ignoreHeight:{type:Boolean,default:!1}},mounted:function(){var t=this;yt(),this.$nextTick((function(){t._w=t.$el.offsetWidth,t._h=t.$el.offsetHeight,t.emitOnMount&&t.emitSize()}));var e=document.createElement("object");this._resizeObject=e,e.setAttribute("aria-hidden","true"),e.setAttribute("tabindex",-1),e.onload=this.addResizeHandlers,e.type="text/html",mt&&this.$el.appendChild(e),e.data="about:blank",mt||this.$el.appendChild(e)},beforeDestroy:function(){this.removeResizeHandlers()},methods:{compareAndNotify:function(){(!this.ignoreWidth&&this._w!==this.$el.offsetWidth||!this.ignoreHeight&&this._h!==this.$el.offsetHeight)&&(this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitSize())},emitSize:function(){this.$emit("notify",{width:this._w,height:this._h})},addResizeHandlers:function(){this._resizeObject.contentDocument.defaultView.addEventListener("resize",this.compareAndNotify),this.compareAndNotify()},removeResizeHandlers:function(){this._resizeObject&&this._resizeObject.onload&&(!mt&&this._resizeObject.contentDocument&&this._resizeObject.contentDocument.defaultView.removeEventListener("resize",this.compareAndNotify),this.$el.removeChild(this._resizeObject),this._resizeObject.onload=null,this._resizeObject=null)}}},Ct=function(){var t=this.$createElement;return(this._self._c||t)("div",{staticClass:"resize-observer",attrs:{tabindex:"-1"}})};Ct._withStripped=!0;var wt=At({render:Ct,staticRenderFns:[]},undefined,bt,"data-v-8859cc6c",false,undefined,!1,void 0,void 0,void 0);var xt={version:"1.0.1",install:function(t){t.component("resize-observer",wt),t.component("ResizeObserver",wt)}},_t=null;"undefined"!=typeof window?_t=window.Vue:void 0!==n.g&&(_t=n.g.Vue),_t&&_t.use(xt);var St=n(3857),kt=n.n(St),Et=n(5108),Ot=function(){};function jt(t){return"string"==typeof t&&(t=t.split(" ")),t}function Tt(t,e){var n,r=jt(e);n=t.className instanceof Ot?jt(t.className.baseVal):jt(t.className),r.forEach((function(t){-1===n.indexOf(t)&&n.push(t)})),t instanceof SVGElement?t.setAttribute("class",n.join(" ")):t.className=n.join(" ")}function Bt(t,e){var n,r=jt(e);n=t.className instanceof Ot?jt(t.className.baseVal):jt(t.className),r.forEach((function(t){var e=n.indexOf(t);-1!==e&&n.splice(e,1)})),t instanceof SVGElement?t.setAttribute("class",n.join(" ")):t.className=n.join(" ")}"undefined"!=typeof window&&(Ot=window.SVGAnimatedString);var Nt=!1;if("undefined"!=typeof window){Nt=!1;try{var Pt=Object.defineProperty({},"passive",{get:function(){Nt=!0}});window.addEventListener("test",null,Pt)}catch(t){}}function $t(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function It(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?$t(Object(n),!0).forEach((function(e){o(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):$t(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}var zt={container:!1,delay:0,html:!1,placement:"top",title:"",template:'<div class="tooltip" role="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>',trigger:"hover focus",offset:0},Ft=[],Dt=function(){function t(e,n){var r=this;!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),o(this,"_events",[]),o(this,"_setTooltipNodeEvent",(function(t,e,n,o){var i=t.relatedreference||t.toElement||t.relatedTarget;return!!r._tooltipNode.contains(i)&&(r._tooltipNode.addEventListener(t.type,(function n(i){var a=i.relatedreference||i.toElement||i.relatedTarget;r._tooltipNode.removeEventListener(t.type,n),e.contains(a)||r._scheduleHide(e,o.delay,o,i)})),!0)})),n=It(It({},zt),n),e.jquery&&(e=e[0]),this.show=this.show.bind(this),this.hide=this.hide.bind(this),this.reference=e,this.options=n,this._isOpen=!1,this._init()}var e,n,r;return e=t,(n=[{key:"show",value:function(){this._show(this.reference,this.options)}},{key:"hide",value:function(){this._hide()}},{key:"dispose",value:function(){this._dispose()}},{key:"toggle",value:function(){return this._isOpen?this.hide():this.show()}},{key:"setClasses",value:function(t){this._classes=t}},{key:"setContent",value:function(t){this.options.title=t,this._tooltipNode&&this._setContent(t,this.options)}},{key:"setOptions",value:function(t){var e=!1,n=t&&t.classes||Xt.options.defaultClass;gt()(this._classes,n)||(this.setClasses(n),e=!0),t=qt(t);var r=!1,o=!1;for(var i in this.options.offset===t.offset&&this.options.placement===t.placement||(r=!0),(this.options.template!==t.template||this.options.trigger!==t.trigger||this.options.container!==t.container||e)&&(o=!0),t)this.options[i]=t[i];if(this._tooltipNode)if(o){var a=this._isOpen;this.dispose(),this._init(),a&&this.show()}else r&&this.popperInstance.update()}},{key:"_init",value:function(){var t="string"==typeof this.options.trigger?this.options.trigger.split(" "):[];this._isDisposed=!1,this._enableDocumentTouch=-1===t.indexOf("manual"),t=t.filter((function(t){return-1!==["click","hover","focus"].indexOf(t)})),this._setEventListeners(this.reference,t,this.options),this.$_originalTitle=this.reference.getAttribute("title"),this.reference.removeAttribute("title"),this.reference.setAttribute("data-original-title",this.$_originalTitle)}},{key:"_create",value:function(t,e){var n=this,r=window.document.createElement("div");r.innerHTML=e.trim();var o=r.childNodes[0];return o.id=this.options.ariaId||"tooltip_".concat(Math.random().toString(36).substr(2,10)),o.setAttribute("aria-hidden","true"),this.options.autoHide&&-1!==this.options.trigger.indexOf("hover")&&(o.addEventListener("mouseenter",(function(e){return n._scheduleHide(t,n.options.delay,n.options,e)})),o.addEventListener("click",(function(e){return n._scheduleHide(t,n.options.delay,n.options,e)}))),o}},{key:"_setContent",value:function(t,e){var n=this;this.asyncContent=!1,this._applyContent(t,e).then((function(){n.popperInstance&&n.popperInstance.update()}))}},{key:"_applyContent",value:function(t,e){var n=this;return new Promise((function(r,o){var i=e.html,a=n._tooltipNode;if(a){var s=a.querySelector(n.options.innerSelector);if(1===t.nodeType){if(i){for(;s.firstChild;)s.removeChild(s.firstChild);s.appendChild(t)}}else{if("function"==typeof t){var l=t();return void(l&&"function"==typeof l.then?(n.asyncContent=!0,e.loadingClass&&Tt(a,e.loadingClass),e.loadingContent&&n._applyContent(e.loadingContent,e),l.then((function(t){return e.loadingClass&&Bt(a,e.loadingClass),n._applyContent(t,e)})).then(r).catch(o)):n._applyContent(l,e).then(r).catch(o))}i?s.innerHTML=t:s.innerText=t}r()}}))}},{key:"_show",value:function(t,e){if(!e||"string"!=typeof e.container||document.querySelector(e.container)){clearTimeout(this._disposeTimer),delete(e=Object.assign({},e)).offset;var n=!0;this._tooltipNode&&(Tt(this._tooltipNode,this._classes),n=!1);var r=this._ensureShown(t,e);return n&&this._tooltipNode&&Tt(this._tooltipNode,this._classes),Tt(t,["v-tooltip-open"]),r}}},{key:"_ensureShown",value:function(t,e){var n=this;if(this._isOpen)return this;if(this._isOpen=!0,Ft.push(this),this._tooltipNode)return this._tooltipNode.style.display="",this._tooltipNode.setAttribute("aria-hidden","false"),this.popperInstance.enableEventListeners(),this.popperInstance.update(),this.asyncContent&&this._setContent(e.title,e),this;var r=t.getAttribute("title")||e.title;if(!r)return this;var o=this._create(t,e.template);this._tooltipNode=o,t.setAttribute("aria-describedby",o.id);var i=this._findContainer(e.container,t);this._append(o,i);var a=It(It({},e.popperOptions),{},{placement:e.placement});return a.modifiers=It(It({},a.modifiers),{},{arrow:{element:this.options.arrowSelector}}),e.boundariesElement&&(a.modifiers.preventOverflow={boundariesElement:e.boundariesElement}),this.popperInstance=new ht(t,o,a),this._setContent(r,e),requestAnimationFrame((function(){!n._isDisposed&&n.popperInstance?(n.popperInstance.update(),requestAnimationFrame((function(){n._isDisposed?n.dispose():n._isOpen&&o.setAttribute("aria-hidden","false")}))):n.dispose()})),this}},{key:"_noLongerOpen",value:function(){var t=Ft.indexOf(this);-1!==t&&Ft.splice(t,1)}},{key:"_hide",value:function(){var t=this;if(!this._isOpen)return this;this._isOpen=!1,this._noLongerOpen(),this._tooltipNode.style.display="none",this._tooltipNode.setAttribute("aria-hidden","true"),this.popperInstance&&this.popperInstance.disableEventListeners(),clearTimeout(this._disposeTimer);var e=Xt.options.disposeTimeout;return null!==e&&(this._disposeTimer=setTimeout((function(){t._tooltipNode&&(t._tooltipNode.removeEventListener("mouseenter",t.hide),t._tooltipNode.removeEventListener("click",t.hide),t._removeTooltipNode())}),e)),Bt(this.reference,["v-tooltip-open"]),this}},{key:"_removeTooltipNode",value:function(){if(this._tooltipNode){var t=this._tooltipNode.parentNode;t&&(t.removeChild(this._tooltipNode),this.reference.removeAttribute("aria-describedby")),this._tooltipNode=null}}},{key:"_dispose",value:function(){var t=this;return this._isDisposed=!0,this.reference.removeAttribute("data-original-title"),this.$_originalTitle&&this.reference.setAttribute("title",this.$_originalTitle),this._events.forEach((function(e){var n=e.func,r=e.event;t.reference.removeEventListener(r,n)})),this._events=[],this._tooltipNode?(this._hide(),this._tooltipNode.removeEventListener("mouseenter",this.hide),this._tooltipNode.removeEventListener("click",this.hide),this.popperInstance.destroy(),this.popperInstance.options.removeOnDestroy||this._removeTooltipNode()):this._noLongerOpen(),this}},{key:"_findContainer",value:function(t,e){return"string"==typeof t?t=window.document.querySelector(t):!1===t&&(t=e.parentNode),t}},{key:"_append",value:function(t,e){e.appendChild(t)}},{key:"_setEventListeners",value:function(t,e,n){var r=this,o=[],i=[];e.forEach((function(t){switch(t){case"hover":o.push("mouseenter"),i.push("mouseleave"),r.options.hideOnTargetClick&&i.push("click");break;case"focus":o.push("focus"),i.push("blur"),r.options.hideOnTargetClick&&i.push("click");break;case"click":o.push("click"),i.push("click")}})),o.forEach((function(e){var o=function(e){!0!==r._isOpen&&(e.usedByTooltip=!0,r._scheduleShow(t,n.delay,n,e))};r._events.push({event:e,func:o}),t.addEventListener(e,o)})),i.forEach((function(e){var o=function(e){!0!==e.usedByTooltip&&r._scheduleHide(t,n.delay,n,e)};r._events.push({event:e,func:o}),t.addEventListener(e,o)}))}},{key:"_onDocumentTouch",value:function(t){this._enableDocumentTouch&&this._scheduleHide(this.reference,this.options.delay,this.options,t)}},{key:"_scheduleShow",value:function(t,e,n){var r=this,o=e&&e.show||e||0;clearTimeout(this._scheduleTimer),this._scheduleTimer=window.setTimeout((function(){return r._show(t,n)}),o)}},{key:"_scheduleHide",value:function(t,e,n,r){var o=this,i=e&&e.hide||e||0;clearTimeout(this._scheduleTimer),this._scheduleTimer=window.setTimeout((function(){if(!1!==o._isOpen&&o._tooltipNode.ownerDocument.body.contains(o._tooltipNode)){if("mouseleave"===r.type&&o._setTooltipNodeEvent(r,t,e,n))return;o._hide(t,n)}}),i)}}])&&i(e.prototype,n),r&&i(e,r),t}();function Lt(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function Rt(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?Lt(Object(n),!0).forEach((function(e){o(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):Lt(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}"undefined"!=typeof document&&document.addEventListener("touchstart",(function(t){for(var e=0;e<Ft.length;e++)Ft[e]._onDocumentTouch(t)}),!Nt||{passive:!0,capture:!0});var Mt={enabled:!0},Ut=["top","top-start","top-end","right","right-start","right-end","bottom","bottom-start","bottom-end","left","left-start","left-end"],Gt={defaultPlacement:"top",defaultClass:"vue-tooltip-theme",defaultTargetClass:"has-tooltip",defaultHtml:!0,defaultTemplate:'<div class="tooltip" role="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>',defaultArrowSelector:".tooltip-arrow, .tooltip__arrow",defaultInnerSelector:".tooltip-inner, .tooltip__inner",defaultDelay:0,defaultTrigger:"hover focus",defaultOffset:0,defaultContainer:"body",defaultBoundariesElement:void 0,defaultPopperOptions:{},defaultLoadingClass:"tooltip-loading",defaultLoadingContent:"...",autoHide:!0,defaultHideOnTargetClick:!0,disposeTimeout:5e3,popover:{defaultPlacement:"bottom",defaultClass:"vue-popover-theme",defaultBaseClass:"tooltip popover",defaultWrapperClass:"wrapper",defaultInnerClass:"tooltip-inner popover-inner",defaultArrowClass:"tooltip-arrow popover-arrow",defaultOpenClass:"open",defaultDelay:0,defaultTrigger:"click",defaultOffset:0,defaultContainer:"body",defaultBoundariesElement:void 0,defaultPopperOptions:{},defaultAutoHide:!0,defaultHandleResize:!0}};function qt(t){var e={placement:void 0!==t.placement?t.placement:Xt.options.defaultPlacement,delay:void 0!==t.delay?t.delay:Xt.options.defaultDelay,html:void 0!==t.html?t.html:Xt.options.defaultHtml,template:void 0!==t.template?t.template:Xt.options.defaultTemplate,arrowSelector:void 0!==t.arrowSelector?t.arrowSelector:Xt.options.defaultArrowSelector,innerSelector:void 0!==t.innerSelector?t.innerSelector:Xt.options.defaultInnerSelector,trigger:void 0!==t.trigger?t.trigger:Xt.options.defaultTrigger,offset:void 0!==t.offset?t.offset:Xt.options.defaultOffset,container:void 0!==t.container?t.container:Xt.options.defaultContainer,boundariesElement:void 0!==t.boundariesElement?t.boundariesElement:Xt.options.defaultBoundariesElement,autoHide:void 0!==t.autoHide?t.autoHide:Xt.options.autoHide,hideOnTargetClick:void 0!==t.hideOnTargetClick?t.hideOnTargetClick:Xt.options.defaultHideOnTargetClick,loadingClass:void 0!==t.loadingClass?t.loadingClass:Xt.options.defaultLoadingClass,loadingContent:void 0!==t.loadingContent?t.loadingContent:Xt.options.defaultLoadingContent,popperOptions:Rt({},void 0!==t.popperOptions?t.popperOptions:Xt.options.defaultPopperOptions)};if(e.offset){var n=r(e.offset),o=e.offset;("number"===n||"string"===n&&-1===o.indexOf(","))&&(o="0, ".concat(o)),e.popperOptions.modifiers||(e.popperOptions.modifiers={}),e.popperOptions.modifiers.offset={offset:o}}return e.trigger&&-1!==e.trigger.indexOf("click")&&(e.hideOnTargetClick=!1),e}function Vt(t,e){for(var n=t.placement,r=0;r<Ut.length;r++){var o=Ut[r];e[o]&&(n=o)}return n}function Wt(t){var e=r(t);return"string"===e?t:!(!t||"object"!==e)&&t.content}function Ht(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o=Wt(e),i=void 0!==e.classes?e.classes:Xt.options.defaultClass,a=Rt({title:o},qt(Rt(Rt({},"object"===r(e)?e:{}),{},{placement:Vt(e,n)}))),s=t._tooltip=new Dt(t,a);s.setClasses(i),s._vueEl=t;var l=void 0!==e.targetClasses?e.targetClasses:Xt.options.defaultTargetClass;return t._tooltipTargetClasses=l,Tt(t,l),s}function Yt(t){t._tooltip&&(t._tooltip.dispose(),delete t._tooltip,delete t._tooltipOldShow),t._tooltipTargetClasses&&(Bt(t,t._tooltipTargetClasses),delete t._tooltipTargetClasses)}function Kt(t,e){var n=e.value;e.oldValue;var r,o=e.modifiers,i=Wt(n);i&&Mt.enabled?(t._tooltip?((r=t._tooltip).setContent(i),r.setOptions(Rt(Rt({},n),{},{placement:Vt(n,o)}))):r=Ht(t,n,o),void 0!==n.show&&n.show!==t._tooltipOldShow&&(t._tooltipOldShow=n.show,n.show?r.show():r.hide())):Yt(t)}var Xt={options:Gt,bind:Kt,update:Kt,unbind:function(t){Yt(t)}};function Zt(t){t.addEventListener("click",Qt),t.addEventListener("touchstart",te,!!Nt&&{passive:!0})}function Jt(t){t.removeEventListener("click",Qt),t.removeEventListener("touchstart",te),t.removeEventListener("touchend",ee),t.removeEventListener("touchcancel",ne)}function Qt(t){var e=t.currentTarget;t.closePopover=!e.$_vclosepopover_touch,t.closeAllPopover=e.$_closePopoverModifiers&&!!e.$_closePopoverModifiers.all}function te(t){if(1===t.changedTouches.length){var e=t.currentTarget;e.$_vclosepopover_touch=!0;var n=t.changedTouches[0];e.$_vclosepopover_touchPoint=n,e.addEventListener("touchend",ee),e.addEventListener("touchcancel",ne)}}function ee(t){var e=t.currentTarget;if(e.$_vclosepopover_touch=!1,1===t.changedTouches.length){var n=t.changedTouches[0],r=e.$_vclosepopover_touchPoint;t.closePopover=Math.abs(n.screenY-r.screenY)<20&&Math.abs(n.screenX-r.screenX)<20,t.closeAllPopover=e.$_closePopoverModifiers&&!!e.$_closePopoverModifiers.all}}function ne(t){t.currentTarget.$_vclosepopover_touch=!1}var re={bind:function(t,e){var n=e.value,r=e.modifiers;t.$_closePopoverModifiers=r,(void 0===n||n)&&Zt(t)},update:function(t,e){var n=e.value,r=e.oldValue,o=e.modifiers;t.$_closePopoverModifiers=o,n!==r&&(void 0===n||n?Zt(t):Jt(t))},unbind:function(t){Jt(t)}};function oe(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function ie(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?oe(Object(n),!0).forEach((function(e){o(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):oe(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function ae(t){var e=Xt.options.popover[t];return void 0===e?Xt.options[t]:e}var se=!1;"undefined"!=typeof window&&"undefined"!=typeof navigator&&(se=/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream);var le=[],ue=function(){};"undefined"!=typeof window&&(ue=window.Element);var ce={name:"VPopover",components:{ResizeObserver:wt},props:{open:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},placement:{type:String,default:function(){return ae("defaultPlacement")}},delay:{type:[String,Number,Object],default:function(){return ae("defaultDelay")}},offset:{type:[String,Number],default:function(){return ae("defaultOffset")}},trigger:{type:String,default:function(){return ae("defaultTrigger")}},container:{type:[String,Object,ue,Boolean],default:function(){return ae("defaultContainer")}},boundariesElement:{type:[String,ue],default:function(){return ae("defaultBoundariesElement")}},popperOptions:{type:Object,default:function(){return ae("defaultPopperOptions")}},popoverClass:{type:[String,Array],default:function(){return ae("defaultClass")}},popoverBaseClass:{type:[String,Array],default:function(){return Xt.options.popover.defaultBaseClass}},popoverInnerClass:{type:[String,Array],default:function(){return Xt.options.popover.defaultInnerClass}},popoverWrapperClass:{type:[String,Array],default:function(){return Xt.options.popover.defaultWrapperClass}},popoverArrowClass:{type:[String,Array],default:function(){return Xt.options.popover.defaultArrowClass}},autoHide:{type:Boolean,default:function(){return Xt.options.popover.defaultAutoHide}},handleResize:{type:Boolean,default:function(){return Xt.options.popover.defaultHandleResize}},openGroup:{type:String,default:null},openClass:{type:[String,Array],default:function(){return Xt.options.popover.defaultOpenClass}},ariaId:{default:null}},data:function(){return{isOpen:!1,id:Math.random().toString(36).substr(2,10)}},computed:{cssClass:function(){return o({},this.openClass,this.isOpen)},popoverId:function(){return"popover_".concat(null!=this.ariaId?this.ariaId:this.id)}},watch:{open:function(t){t?this.show():this.hide()},disabled:function(t,e){t!==e&&(t?this.hide():this.open&&this.show())},container:function(t){if(this.isOpen&&this.popperInstance){var e=this.$refs.popover,n=this.$refs.trigger,r=this.$_findContainer(this.container,n);if(!r)return void Et.warn("No container for popover",this);r.appendChild(e),this.popperInstance.scheduleUpdate()}},trigger:function(t){this.$_removeEventListeners(),this.$_addEventListeners()},placement:function(t){var e=this;this.$_updatePopper((function(){e.popperInstance.options.placement=t}))},offset:"$_restartPopper",boundariesElement:"$_restartPopper",popperOptions:{handler:"$_restartPopper",deep:!0}},created:function(){this.$_isDisposed=!1,this.$_mounted=!1,this.$_events=[],this.$_preventOpen=!1},mounted:function(){var t=this.$refs.popover;t.parentNode&&t.parentNode.removeChild(t),this.$_init(),this.open&&this.show()},deactivated:function(){this.hide()},beforeDestroy:function(){this.dispose()},methods:{show:function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=e.event;e.skipDelay;var r=e.force,o=void 0!==r&&r;!o&&this.disabled||(this.$_scheduleShow(n),this.$emit("show")),this.$emit("update:open",!0),this.$_beingShowed=!0,requestAnimationFrame((function(){t.$_beingShowed=!1}))},hide:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=t.event;t.skipDelay,this.$_scheduleHide(e),this.$emit("hide"),this.$emit("update:open",!1)},dispose:function(){if(this.$_isDisposed=!0,this.$_removeEventListeners(),this.hide({skipDelay:!0}),this.popperInstance&&(this.popperInstance.destroy(),!this.popperInstance.options.removeOnDestroy)){var t=this.$refs.popover;t.parentNode&&t.parentNode.removeChild(t)}this.$_mounted=!1,this.popperInstance=null,this.isOpen=!1,this.$emit("dispose")},$_init:function(){-1===this.trigger.indexOf("manual")&&this.$_addEventListeners()},$_show:function(){var t=this,e=this.$refs.trigger,n=this.$refs.popover;if(clearTimeout(this.$_disposeTimer),!this.isOpen){if(this.popperInstance&&(this.isOpen=!0,this.popperInstance.enableEventListeners(),this.popperInstance.scheduleUpdate()),!this.$_mounted){var r=this.$_findContainer(this.container,e);if(!r)return void Et.warn("No container for popover",this);r.appendChild(n),this.$_mounted=!0,this.isOpen=!1,this.popperInstance&&requestAnimationFrame((function(){t.hidden||(t.isOpen=!0)}))}if(!this.popperInstance){var o=ie(ie({},this.popperOptions),{},{placement:this.placement});if(o.modifiers=ie(ie({},o.modifiers),{},{arrow:ie(ie({},o.modifiers&&o.modifiers.arrow),{},{element:this.$refs.arrow})}),this.offset){var i=this.$_getOffset();o.modifiers.offset=ie(ie({},o.modifiers&&o.modifiers.offset),{},{offset:i})}this.boundariesElement&&(o.modifiers.preventOverflow=ie(ie({},o.modifiers&&o.modifiers.preventOverflow),{},{boundariesElement:this.boundariesElement})),this.popperInstance=new ht(e,n,o),requestAnimationFrame((function(){if(t.hidden)return t.hidden=!1,void t.$_hide();!t.$_isDisposed&&t.popperInstance?(t.popperInstance.scheduleUpdate(),requestAnimationFrame((function(){if(t.hidden)return t.hidden=!1,void t.$_hide();t.$_isDisposed?t.dispose():t.isOpen=!0}))):t.dispose()}))}var a=this.openGroup;if(a)for(var s,l=0;l<le.length;l++)(s=le[l]).openGroup!==a&&(s.hide(),s.$emit("close-group"));le.push(this),this.$emit("apply-show")}},$_hide:function(){var t=this;if(this.isOpen){var e=le.indexOf(this);-1!==e&&le.splice(e,1),this.isOpen=!1,this.popperInstance&&this.popperInstance.disableEventListeners(),clearTimeout(this.$_disposeTimer);var n=Xt.options.popover.disposeTimeout||Xt.options.disposeTimeout;null!==n&&(this.$_disposeTimer=setTimeout((function(){var e=t.$refs.popover;e&&(e.parentNode&&e.parentNode.removeChild(e),t.$_mounted=!1)}),n)),this.$emit("apply-hide")}},$_findContainer:function(t,e){return"string"==typeof t?t=window.document.querySelector(t):!1===t&&(t=e.parentNode),t},$_getOffset:function(){var t=r(this.offset),e=this.offset;return("number"===t||"string"===t&&-1===e.indexOf(","))&&(e="0, ".concat(e)),e},$_addEventListeners:function(){var t=this,e=this.$refs.trigger,n=[],r=[];("string"==typeof this.trigger?this.trigger.split(" ").filter((function(t){return-1!==["click","hover","focus"].indexOf(t)})):[]).forEach((function(t){switch(t){case"hover":n.push("mouseenter"),r.push("mouseleave");break;case"focus":n.push("focus"),r.push("blur");break;case"click":n.push("click"),r.push("click")}})),n.forEach((function(n){var r=function(e){t.isOpen||(e.usedByTooltip=!0,!t.$_preventOpen&&t.show({event:e}),t.hidden=!1)};t.$_events.push({event:n,func:r}),e.addEventListener(n,r)})),r.forEach((function(n){var r=function(e){e.usedByTooltip||(t.hide({event:e}),t.hidden=!0)};t.$_events.push({event:n,func:r}),e.addEventListener(n,r)}))},$_scheduleShow:function(){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(clearTimeout(this.$_scheduleTimer),t)this.$_show();else{var e=parseInt(this.delay&&this.delay.show||this.delay||0);this.$_scheduleTimer=setTimeout(this.$_show.bind(this),e)}},$_scheduleHide:function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,n=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(clearTimeout(this.$_scheduleTimer),n)this.$_hide();else{var r=parseInt(this.delay&&this.delay.hide||this.delay||0);this.$_scheduleTimer=setTimeout((function(){if(t.isOpen){if(e&&"mouseleave"===e.type)if(t.$_setTooltipNodeEvent(e))return;t.$_hide()}}),r)}},$_setTooltipNodeEvent:function(t){var e=this,n=this.$refs.trigger,r=this.$refs.popover,o=t.relatedreference||t.toElement||t.relatedTarget;return!!r.contains(o)&&(r.addEventListener(t.type,(function o(i){var a=i.relatedreference||i.toElement||i.relatedTarget;r.removeEventListener(t.type,o),n.contains(a)||e.hide({event:i})})),!0)},$_removeEventListeners:function(){var t=this.$refs.trigger;this.$_events.forEach((function(e){var n=e.func,r=e.event;t.removeEventListener(r,n)})),this.$_events=[]},$_updatePopper:function(t){this.popperInstance&&(t(),this.isOpen&&this.popperInstance.scheduleUpdate())},$_restartPopper:function(){if(this.popperInstance){var t=this.isOpen;this.dispose(),this.$_isDisposed=!1,this.$_init(),t&&this.show({skipDelay:!0,force:!0})}},$_handleGlobalClose:function(t){var e=this,n=arguments.length>1&&void 0!==arguments[1]&&arguments[1];this.$_beingShowed||(this.hide({event:t}),t.closePopover?this.$emit("close-directive"):this.$emit("auto-hide"),n&&(this.$_preventOpen=!0,setTimeout((function(){e.$_preventOpen=!1}),300)))},$_handleResize:function(){this.isOpen&&this.popperInstance&&(this.popperInstance.scheduleUpdate(),this.$emit("resize"))}}};function pe(t){for(var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=function(n){var r=le[n];if(r.$refs.popover){var o=r.$refs.popover.contains(t.target);requestAnimationFrame((function(){(t.closeAllPopover||t.closePopover&&o||r.autoHide&&!o)&&r.$_handleGlobalClose(t,e)}))}},r=0;r<le.length;r++)n(r)}function fe(t,e,n,r,o,i,a,s,l,u){"boolean"!=typeof a&&(l=s,s=a,a=!1);const c="function"==typeof n?n.options:n;let p;if(t&&t.render&&(c.render=t.render,c.staticRenderFns=t.staticRenderFns,c._compiled=!0,o&&(c.functional=!0)),r&&(c._scopeId=r),i?(p=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,l(t)),t&&t._registeredComponents&&t._registeredComponents.add(i)},c._ssrRegister=p):e&&(p=a?function(t){e.call(this,u(t,this.$root.$options.shadowRoot))}:function(t){e.call(this,s(t))}),p)if(c.functional){const t=c.render;c.render=function(e,n){return p.call(n),t(e,n)}}else{const t=c.beforeCreate;c.beforeCreate=t?[].concat(t,p):[p]}return n}"undefined"!=typeof document&&"undefined"!=typeof window&&(se?document.addEventListener("touchend",(function(t){pe(t,!0)}),!Nt||{passive:!0,capture:!0}):window.addEventListener("click",(function(t){pe(t)}),!0));var de=ce,he=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"v-popover",class:t.cssClass},[n("div",{ref:"trigger",staticClass:"trigger",staticStyle:{display:"inline-block"},attrs:{"aria-describedby":t.isOpen?t.popoverId:void 0,tabindex:-1!==t.trigger.indexOf("focus")?0:void 0}},[t._t("default")],2),t._v(" "),n("div",{ref:"popover",class:[t.popoverBaseClass,t.popoverClass,t.cssClass],style:{visibility:t.isOpen?"visible":"hidden"},attrs:{id:t.popoverId,"aria-hidden":t.isOpen?"false":"true",tabindex:t.autoHide?0:void 0},on:{keyup:function(e){if(!e.type.indexOf("key")&&t._k(e.keyCode,"esc",27,e.key,["Esc","Escape"]))return null;t.autoHide&&t.hide()}}},[n("div",{class:t.popoverWrapperClass},[n("div",{ref:"inner",class:t.popoverInnerClass,staticStyle:{position:"relative"}},[n("div",[t._t("popover",null,{isOpen:t.isOpen})],2),t._v(" "),t.handleResize?n("ResizeObserver",{on:{notify:t.$_handleResize}}):t._e()],1),t._v(" "),n("div",{ref:"arrow",class:t.popoverArrowClass})])])])};he._withStripped=!0;var me=fe({render:he,staticRenderFns:[]},undefined,de,undefined,false,undefined,!1,void 0,void 0,void 0);function ve(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!ve.installed){ve.installed=!0;var n={};kt()(n,Gt,e),be.options=n,Xt.options=n,t.directive("tooltip",Xt),t.directive("close-popover",re),t.component("VPopover",me)}}!function(t,e){void 0===e&&(e={});var n=e.insertAt;if(t&&"undefined"!=typeof document){var r=document.head||document.getElementsByTagName("head")[0],o=document.createElement("style");o.type="text/css","top"===n&&r.firstChild?r.insertBefore(o,r.firstChild):r.appendChild(o),o.styleSheet?o.styleSheet.cssText=t:o.appendChild(document.createTextNode(t))}}(".resize-observer[data-v-8859cc6c]{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-8859cc6c] object{display:block;position:absolute;top:0;left:0;height:100%;width:100%;overflow:hidden;pointer-events:none;z-index:-1}");var ge=Xt,ye=re,Ae=me,be={install:ve,get enabled(){return Mt.enabled},set enabled(t){Mt.enabled=t}},Ce=null;"undefined"!=typeof window?Ce=window.Vue:void 0!==n.g&&(Ce=n.g.Vue),Ce&&Ce.use(be);const we=be},1889:(t,e,n)=>{"use strict";n.r(e),n.d(e,{default:()=>o});const r={name:"ChevronLeftIcon",props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const o=(0,n(1900).Z)(r,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("span",t._b({staticClass:"material-design-icon chevron-left-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[n("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[n("path",{attrs:{d:"M15.41,16.58L10.83,12L15.41,7.41L14,6L8,12L14,18L15.41,16.58Z"}},[t.title?n("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports},1567:(t,e,n)=>{"use strict";n.r(e),n.d(e,{default:()=>o});const r={name:"ChevronRightIcon",props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const o=(0,n(1900).Z)(r,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("span",t._b({staticClass:"material-design-icon chevron-right-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[n("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[n("path",{attrs:{d:"M8.59,16.58L13.17,12L8.59,7.41L10,6L16,12L10,18L8.59,16.58Z"}},[t.title?n("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports},8039:(t,e,n)=>{"use strict";n.r(e),n.d(e,{default:()=>o});const r={name:"CloseIcon",props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const o=(0,n(1900).Z)(r,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("span",t._b({staticClass:"material-design-icon close-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[n("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[n("path",{attrs:{d:"M19,6.41L17.59,5L12,10.59L6.41,5L5,6.41L10.59,12L5,17.59L6.41,19L12,13.41L17.59,19L19,17.59L13.41,12L19,6.41Z"}},[t.title?n("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports},9578:(t,e,n)=>{"use strict";n.r(e),n.d(e,{default:()=>o});const r={name:"DotsHorizontalIcon",props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const o=(0,n(1900).Z)(r,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("span",t._b({staticClass:"material-design-icon dots-horizontal-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[n("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[n("path",{attrs:{d:"M16,12A2,2 0 0,1 18,10A2,2 0 0,1 20,12A2,2 0 0,1 18,14A2,2 0 0,1 16,12M10,12A2,2 0 0,1 12,10A2,2 0 0,1 14,12A2,2 0 0,1 12,14A2,2 0 0,1 10,12M4,12A2,2 0 0,1 6,10A2,2 0 0,1 8,12A2,2 0 0,1 6,14A2,2 0 0,1 4,12Z"}},[t.title?n("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports},3817:(t,e,n)=>{"use strict";n.r(e),n.d(e,{default:()=>o});const r={name:"PauseIcon",props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const o=(0,n(1900).Z)(r,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("span",t._b({staticClass:"material-design-icon pause-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[n("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[n("path",{attrs:{d:"M14,19H18V5H14M6,19H10V5H6V19Z"}},[t.title?n("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports},1170:(t,e,n)=>{"use strict";n.r(e),n.d(e,{default:()=>o});const r={name:"PlayIcon",props:{title:{type:String},fillColor:{type:String,default:"currentColor"},size:{type:Number,default:24}}};const o=(0,n(1900).Z)(r,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("span",t._b({staticClass:"material-design-icon play-icon",attrs:{"aria-hidden":!t.title,"aria-label":t.title,role:"img"},on:{click:function(e){return t.$emit("click",e)}}},"span",t.$attrs,!1),[n("svg",{staticClass:"material-design-icon__svg",attrs:{fill:t.fillColor,width:t.size,height:t.size,viewBox:"0 0 24 24"}},[n("path",{attrs:{d:"M8,5.14V19.14L19,12.14L8,5.14Z"}},[t.title?n("title",[t._v(t._s(t.title))]):t._e()])])])}),[],!1,null,null,null).exports},1900:(t,e,n)=>{"use strict";function r(t,e,n,r,o,i,a,s){var l,u="function"==typeof t?t.options:t;if(e&&(u.render=e,u.staticRenderFns=n,u._compiled=!0),r&&(u.functional=!0),i&&(u._scopeId="data-v-"+i),a?(l=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__),o&&o.call(this,t),t&&t._registeredComponents&&t._registeredComponents.add(a)},u._ssrRegister=l):o&&(l=s?function(){o.call(this,(u.functional?this.parent:this).$root.$options.shadowRoot)}:o),l)if(u.functional){u._injectStyles=l;var c=u.render;u.render=function(t,e){return l.call(e),c(t,e)}}else{var p=u.beforeCreate;u.beforeCreate=p?[].concat(p,l):[l]}return{exports:t,options:u}}n.d(e,{Z:()=>r})},144:(t,e,n)=>{"use strict";n.r(e),n.d(e,{default:()=>qo});var r=n(5108),o=Object.freeze({});function i(t){return null==t}function a(t){return null!=t}function s(t){return!0===t}function l(t){return"string"==typeof t||"number"==typeof t||"symbol"==typeof t||"boolean"==typeof t}function u(t){return null!==t&&"object"==typeof t}var c=Object.prototype.toString;function p(t){return"[object Object]"===c.call(t)}function f(t){return"[object RegExp]"===c.call(t)}function d(t){var e=parseFloat(String(t));return e>=0&&Math.floor(e)===e&&isFinite(t)}function h(t){return a(t)&&"function"==typeof t.then&&"function"==typeof t.catch}function m(t){return null==t?"":Array.isArray(t)||p(t)&&t.toString===c?JSON.stringify(t,null,2):String(t)}function v(t){var e=parseFloat(t);return isNaN(e)?t:e}function g(t,e){for(var n=Object.create(null),r=t.split(","),o=0;o<r.length;o++)n[r[o]]=!0;return e?function(t){return n[t.toLowerCase()]}:function(t){return n[t]}}g("slot,component",!0);var y=g("key,ref,slot,slot-scope,is");function A(t,e){if(t.length){var n=t.indexOf(e);if(n>-1)return t.splice(n,1)}}var b=Object.prototype.hasOwnProperty;function C(t,e){return b.call(t,e)}function w(t){var e=Object.create(null);return function(n){return e[n]||(e[n]=t(n))}}var x=/-(\w)/g,_=w((function(t){return t.replace(x,(function(t,e){return e?e.toUpperCase():""}))})),S=w((function(t){return t.charAt(0).toUpperCase()+t.slice(1)})),k=/\B([A-Z])/g,E=w((function(t){return t.replace(k,"-$1").toLowerCase()}));var O=Function.prototype.bind?function(t,e){return t.bind(e)}:function(t,e){function n(n){var r=arguments.length;return r?r>1?t.apply(e,arguments):t.call(e,n):t.call(e)}return n._length=t.length,n};function j(t,e){e=e||0;for(var n=t.length-e,r=new Array(n);n--;)r[n]=t[n+e];return r}function T(t,e){for(var n in e)t[n]=e[n];return t}function B(t){for(var e={},n=0;n<t.length;n++)t[n]&&T(e,t[n]);return e}function N(t,e,n){}var P=function(t,e,n){return!1},$=function(t){return t};function I(t,e){if(t===e)return!0;var n=u(t),r=u(e);if(!n||!r)return!n&&!r&&String(t)===String(e);try{var o=Array.isArray(t),i=Array.isArray(e);if(o&&i)return t.length===e.length&&t.every((function(t,n){return I(t,e[n])}));if(t instanceof Date&&e instanceof Date)return t.getTime()===e.getTime();if(o||i)return!1;var a=Object.keys(t),s=Object.keys(e);return a.length===s.length&&a.every((function(n){return I(t[n],e[n])}))}catch(t){return!1}}function z(t,e){for(var n=0;n<t.length;n++)if(I(t[n],e))return n;return-1}function F(t){var e=!1;return function(){e||(e=!0,t.apply(this,arguments))}}var D="data-server-rendered",L=["component","directive","filter"],R=["beforeCreate","created","beforeMount","mounted","beforeUpdate","updated","beforeDestroy","destroyed","activated","deactivated","errorCaptured","serverPrefetch"],M={optionMergeStrategies:Object.create(null),silent:!1,productionTip:!1,devtools:!1,performance:!1,errorHandler:null,warnHandler:null,ignoredElements:[],keyCodes:Object.create(null),isReservedTag:P,isReservedAttr:P,isUnknownElement:P,getTagNamespace:N,parsePlatformTagName:$,mustUseProp:P,async:!0,_lifecycleHooks:R},U=/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/;function G(t){var e=(t+"").charCodeAt(0);return 36===e||95===e}function q(t,e,n,r){Object.defineProperty(t,e,{value:n,enumerable:!!r,writable:!0,configurable:!0})}var V=new RegExp("[^"+U.source+".$_\\d]");var W,H="__proto__"in{},Y="undefined"!=typeof window,K="undefined"!=typeof WXEnvironment&&!!WXEnvironment.platform,X=K&&WXEnvironment.platform.toLowerCase(),Z=Y&&window.navigator.userAgent.toLowerCase(),J=Z&&/msie|trident/.test(Z),Q=Z&&Z.indexOf("msie 9.0")>0,tt=Z&&Z.indexOf("edge/")>0,et=(Z&&Z.indexOf("android"),Z&&/iphone|ipad|ipod|ios/.test(Z)||"ios"===X),nt=(Z&&/chrome\/\d+/.test(Z),Z&&/phantomjs/.test(Z),Z&&Z.match(/firefox\/(\d+)/)),rt={}.watch,ot=!1;if(Y)try{var it={};Object.defineProperty(it,"passive",{get:function(){ot=!0}}),window.addEventListener("test-passive",null,it)}catch(t){}var at=function(){return void 0===W&&(W=!Y&&!K&&void 0!==n.g&&(n.g.process&&"server"===n.g.process.env.VUE_ENV)),W},st=Y&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__;function lt(t){return"function"==typeof t&&/native code/.test(t.toString())}var ut,ct="undefined"!=typeof Symbol&&lt(Symbol)&&"undefined"!=typeof Reflect&&lt(Reflect.ownKeys);ut="undefined"!=typeof Set&&lt(Set)?Set:function(){function t(){this.set=Object.create(null)}return t.prototype.has=function(t){return!0===this.set[t]},t.prototype.add=function(t){this.set[t]=!0},t.prototype.clear=function(){this.set=Object.create(null)},t}();var pt=N,ft=0,dt=function(){this.id=ft++,this.subs=[]};dt.prototype.addSub=function(t){this.subs.push(t)},dt.prototype.removeSub=function(t){A(this.subs,t)},dt.prototype.depend=function(){dt.target&&dt.target.addDep(this)},dt.prototype.notify=function(){var t=this.subs.slice();for(var e=0,n=t.length;e<n;e++)t[e].update()},dt.target=null;var ht=[];function mt(t){ht.push(t),dt.target=t}function vt(){ht.pop(),dt.target=ht[ht.length-1]}var gt=function(t,e,n,r,o,i,a,s){this.tag=t,this.data=e,this.children=n,this.text=r,this.elm=o,this.ns=void 0,this.context=i,this.fnContext=void 0,this.fnOptions=void 0,this.fnScopeId=void 0,this.key=e&&e.key,this.componentOptions=a,this.componentInstance=void 0,this.parent=void 0,this.raw=!1,this.isStatic=!1,this.isRootInsert=!0,this.isComment=!1,this.isCloned=!1,this.isOnce=!1,this.asyncFactory=s,this.asyncMeta=void 0,this.isAsyncPlaceholder=!1},yt={child:{configurable:!0}};yt.child.get=function(){return this.componentInstance},Object.defineProperties(gt.prototype,yt);var At=function(t){void 0===t&&(t="");var e=new gt;return e.text=t,e.isComment=!0,e};function bt(t){return new gt(void 0,void 0,void 0,String(t))}function Ct(t){var e=new gt(t.tag,t.data,t.children&&t.children.slice(),t.text,t.elm,t.context,t.componentOptions,t.asyncFactory);return e.ns=t.ns,e.isStatic=t.isStatic,e.key=t.key,e.isComment=t.isComment,e.fnContext=t.fnContext,e.fnOptions=t.fnOptions,e.fnScopeId=t.fnScopeId,e.asyncMeta=t.asyncMeta,e.isCloned=!0,e}var wt=Array.prototype,xt=Object.create(wt);["push","pop","shift","unshift","splice","sort","reverse"].forEach((function(t){var e=wt[t];q(xt,t,(function(){for(var n=[],r=arguments.length;r--;)n[r]=arguments[r];var o,i=e.apply(this,n),a=this.__ob__;switch(t){case"push":case"unshift":o=n;break;case"splice":o=n.slice(2)}return o&&a.observeArray(o),a.dep.notify(),i}))}));var _t=Object.getOwnPropertyNames(xt),St=!0;function kt(t){St=t}var Et=function(t){this.value=t,this.dep=new dt,this.vmCount=0,q(t,"__ob__",this),Array.isArray(t)?(H?function(t,e){t.__proto__=e}(t,xt):function(t,e,n){for(var r=0,o=n.length;r<o;r++){var i=n[r];q(t,i,e[i])}}(t,xt,_t),this.observeArray(t)):this.walk(t)};function Ot(t,e){var n;if(u(t)&&!(t instanceof gt))return C(t,"__ob__")&&t.__ob__ instanceof Et?n=t.__ob__:St&&!at()&&(Array.isArray(t)||p(t))&&Object.isExtensible(t)&&!t._isVue&&(n=new Et(t)),e&&n&&n.vmCount++,n}function jt(t,e,n,r,o){var i=new dt,a=Object.getOwnPropertyDescriptor(t,e);if(!a||!1!==a.configurable){var s=a&&a.get,l=a&&a.set;s&&!l||2!==arguments.length||(n=t[e]);var u=!o&&Ot(n);Object.defineProperty(t,e,{enumerable:!0,configurable:!0,get:function(){var e=s?s.call(t):n;return dt.target&&(i.depend(),u&&(u.dep.depend(),Array.isArray(e)&&Nt(e))),e},set:function(e){var r=s?s.call(t):n;e===r||e!=e&&r!=r||s&&!l||(l?l.call(t,e):n=e,u=!o&&Ot(e),i.notify())}})}}function Tt(t,e,n){if(Array.isArray(t)&&d(e))return t.length=Math.max(t.length,e),t.splice(e,1,n),n;if(e in t&&!(e in Object.prototype))return t[e]=n,n;var r=t.__ob__;return t._isVue||r&&r.vmCount?n:r?(jt(r.value,e,n),r.dep.notify(),n):(t[e]=n,n)}function Bt(t,e){if(Array.isArray(t)&&d(e))t.splice(e,1);else{var n=t.__ob__;t._isVue||n&&n.vmCount||C(t,e)&&(delete t[e],n&&n.dep.notify())}}function Nt(t){for(var e=void 0,n=0,r=t.length;n<r;n++)(e=t[n])&&e.__ob__&&e.__ob__.dep.depend(),Array.isArray(e)&&Nt(e)}Et.prototype.walk=function(t){for(var e=Object.keys(t),n=0;n<e.length;n++)jt(t,e[n])},Et.prototype.observeArray=function(t){for(var e=0,n=t.length;e<n;e++)Ot(t[e])};var Pt=M.optionMergeStrategies;function $t(t,e){if(!e)return t;for(var n,r,o,i=ct?Reflect.ownKeys(e):Object.keys(e),a=0;a<i.length;a++)"__ob__"!==(n=i[a])&&(r=t[n],o=e[n],C(t,n)?r!==o&&p(r)&&p(o)&&$t(r,o):Tt(t,n,o));return t}function It(t,e,n){return n?function(){var r="function"==typeof e?e.call(n,n):e,o="function"==typeof t?t.call(n,n):t;return r?$t(r,o):o}:e?t?function(){return $t("function"==typeof e?e.call(this,this):e,"function"==typeof t?t.call(this,this):t)}:e:t}function zt(t,e){var n=e?t?t.concat(e):Array.isArray(e)?e:[e]:t;return n?function(t){for(var e=[],n=0;n<t.length;n++)-1===e.indexOf(t[n])&&e.push(t[n]);return e}(n):n}function Ft(t,e,n,r){var o=Object.create(t||null);return e?T(o,e):o}Pt.data=function(t,e,n){return n?It(t,e,n):e&&"function"!=typeof e?t:It(t,e)},R.forEach((function(t){Pt[t]=zt})),L.forEach((function(t){Pt[t+"s"]=Ft})),Pt.watch=function(t,e,n,r){if(t===rt&&(t=void 0),e===rt&&(e=void 0),!e)return Object.create(t||null);if(!t)return e;var o={};for(var i in T(o,t),e){var a=o[i],s=e[i];a&&!Array.isArray(a)&&(a=[a]),o[i]=a?a.concat(s):Array.isArray(s)?s:[s]}return o},Pt.props=Pt.methods=Pt.inject=Pt.computed=function(t,e,n,r){if(!t)return e;var o=Object.create(null);return T(o,t),e&&T(o,e),o},Pt.provide=It;var Dt=function(t,e){return void 0===e?t:e};function Lt(t,e,n){if("function"==typeof e&&(e=e.options),function(t,e){var n=t.props;if(n){var r,o,i={};if(Array.isArray(n))for(r=n.length;r--;)"string"==typeof(o=n[r])&&(i[_(o)]={type:null});else if(p(n))for(var a in n)o=n[a],i[_(a)]=p(o)?o:{type:o};t.props=i}}(e),function(t,e){var n=t.inject;if(n){var r=t.inject={};if(Array.isArray(n))for(var o=0;o<n.length;o++)r[n[o]]={from:n[o]};else if(p(n))for(var i in n){var a=n[i];r[i]=p(a)?T({from:i},a):{from:a}}}}(e),function(t){var e=t.directives;if(e)for(var n in e){var r=e[n];"function"==typeof r&&(e[n]={bind:r,update:r})}}(e),!e._base&&(e.extends&&(t=Lt(t,e.extends,n)),e.mixins))for(var r=0,o=e.mixins.length;r<o;r++)t=Lt(t,e.mixins[r],n);var i,a={};for(i in t)s(i);for(i in e)C(t,i)||s(i);function s(r){var o=Pt[r]||Dt;a[r]=o(t[r],e[r],n,r)}return a}function Rt(t,e,n,r){if("string"==typeof n){var o=t[e];if(C(o,n))return o[n];var i=_(n);if(C(o,i))return o[i];var a=S(i);return C(o,a)?o[a]:o[n]||o[i]||o[a]}}function Mt(t,e,n,r){var o=e[t],i=!C(n,t),a=n[t],s=Vt(Boolean,o.type);if(s>-1)if(i&&!C(o,"default"))a=!1;else if(""===a||a===E(t)){var l=Vt(String,o.type);(l<0||s<l)&&(a=!0)}if(void 0===a){a=function(t,e,n){if(!C(e,"default"))return;var r=e.default;0;if(t&&t.$options.propsData&&void 0===t.$options.propsData[n]&&void 0!==t._props[n])return t._props[n];return"function"==typeof r&&"Function"!==Gt(e.type)?r.call(t):r}(r,o,t);var u=St;kt(!0),Ot(a),kt(u)}return a}var Ut=/^\s*function (\w+)/;function Gt(t){var e=t&&t.toString().match(Ut);return e?e[1]:""}function qt(t,e){return Gt(t)===Gt(e)}function Vt(t,e){if(!Array.isArray(e))return qt(e,t)?0:-1;for(var n=0,r=e.length;n<r;n++)if(qt(e[n],t))return n;return-1}function Wt(t,e,n){mt();try{if(e)for(var r=e;r=r.$parent;){var o=r.$options.errorCaptured;if(o)for(var i=0;i<o.length;i++)try{if(!1===o[i].call(r,t,e,n))return}catch(t){Yt(t,r,"errorCaptured hook")}}Yt(t,e,n)}finally{vt()}}function Ht(t,e,n,r,o){var i;try{(i=n?t.apply(e,n):t.call(e))&&!i._isVue&&h(i)&&!i._handled&&(i.catch((function(t){return Wt(t,r,o+" (Promise/async)")})),i._handled=!0)}catch(t){Wt(t,r,o)}return i}function Yt(t,e,n){if(M.errorHandler)try{return M.errorHandler.call(null,t,e,n)}catch(e){e!==t&&Kt(e,null,"config.errorHandler")}Kt(t,e,n)}function Kt(t,e,n){if(!Y&&!K||void 0===r)throw t;r.error(t)}var Xt,Zt=!1,Jt=[],Qt=!1;function te(){Qt=!1;var t=Jt.slice(0);Jt.length=0;for(var e=0;e<t.length;e++)t[e]()}if("undefined"!=typeof Promise&&lt(Promise)){var ee=Promise.resolve();Xt=function(){ee.then(te),et&&setTimeout(N)},Zt=!0}else if(J||"undefined"==typeof MutationObserver||!lt(MutationObserver)&&"[object MutationObserverConstructor]"!==MutationObserver.toString())Xt="undefined"!=typeof setImmediate&&lt(setImmediate)?function(){setImmediate(te)}:function(){setTimeout(te,0)};else{var ne=1,re=new MutationObserver(te),oe=document.createTextNode(String(ne));re.observe(oe,{characterData:!0}),Xt=function(){ne=(ne+1)%2,oe.data=String(ne)},Zt=!0}function ie(t,e){var n;if(Jt.push((function(){if(t)try{t.call(e)}catch(t){Wt(t,e,"nextTick")}else n&&n(e)})),Qt||(Qt=!0,Xt()),!t&&"undefined"!=typeof Promise)return new Promise((function(t){n=t}))}var ae=new ut;function se(t){le(t,ae),ae.clear()}function le(t,e){var n,r,o=Array.isArray(t);if(!(!o&&!u(t)||Object.isFrozen(t)||t instanceof gt)){if(t.__ob__){var i=t.__ob__.dep.id;if(e.has(i))return;e.add(i)}if(o)for(n=t.length;n--;)le(t[n],e);else for(n=(r=Object.keys(t)).length;n--;)le(t[r[n]],e)}}var ue=w((function(t){var e="&"===t.charAt(0),n="~"===(t=e?t.slice(1):t).charAt(0),r="!"===(t=n?t.slice(1):t).charAt(0);return{name:t=r?t.slice(1):t,once:n,capture:r,passive:e}}));function ce(t,e){function n(){var t=arguments,r=n.fns;if(!Array.isArray(r))return Ht(r,null,arguments,e,"v-on handler");for(var o=r.slice(),i=0;i<o.length;i++)Ht(o[i],null,t,e,"v-on handler")}return n.fns=t,n}function pe(t,e,n,r,o,a){var l,u,c,p;for(l in t)u=t[l],c=e[l],p=ue(l),i(u)||(i(c)?(i(u.fns)&&(u=t[l]=ce(u,a)),s(p.once)&&(u=t[l]=o(p.name,u,p.capture)),n(p.name,u,p.capture,p.passive,p.params)):u!==c&&(c.fns=u,t[l]=c));for(l in e)i(t[l])&&r((p=ue(l)).name,e[l],p.capture)}function fe(t,e,n){var r;t instanceof gt&&(t=t.data.hook||(t.data.hook={}));var o=t[e];function l(){n.apply(this,arguments),A(r.fns,l)}i(o)?r=ce([l]):a(o.fns)&&s(o.merged)?(r=o).fns.push(l):r=ce([o,l]),r.merged=!0,t[e]=r}function de(t,e,n,r,o){if(a(e)){if(C(e,n))return t[n]=e[n],o||delete e[n],!0;if(C(e,r))return t[n]=e[r],o||delete e[r],!0}return!1}function he(t){return l(t)?[bt(t)]:Array.isArray(t)?ve(t):void 0}function me(t){return a(t)&&a(t.text)&&!1===t.isComment}function ve(t,e){var n,r,o,u,c=[];for(n=0;n<t.length;n++)i(r=t[n])||"boolean"==typeof r||(u=c[o=c.length-1],Array.isArray(r)?r.length>0&&(me((r=ve(r,(e||"")+"_"+n))[0])&&me(u)&&(c[o]=bt(u.text+r[0].text),r.shift()),c.push.apply(c,r)):l(r)?me(u)?c[o]=bt(u.text+r):""!==r&&c.push(bt(r)):me(r)&&me(u)?c[o]=bt(u.text+r.text):(s(t._isVList)&&a(r.tag)&&i(r.key)&&a(e)&&(r.key="__vlist"+e+"_"+n+"__"),c.push(r)));return c}function ge(t,e){if(t){for(var n=Object.create(null),r=ct?Reflect.ownKeys(t):Object.keys(t),o=0;o<r.length;o++){var i=r[o];if("__ob__"!==i){for(var a=t[i].from,s=e;s;){if(s._provided&&C(s._provided,a)){n[i]=s._provided[a];break}s=s.$parent}if(!s)if("default"in t[i]){var l=t[i].default;n[i]="function"==typeof l?l.call(e):l}else 0}}return n}}function ye(t,e){if(!t||!t.length)return{};for(var n={},r=0,o=t.length;r<o;r++){var i=t[r],a=i.data;if(a&&a.attrs&&a.attrs.slot&&delete a.attrs.slot,i.context!==e&&i.fnContext!==e||!a||null==a.slot)(n.default||(n.default=[])).push(i);else{var s=a.slot,l=n[s]||(n[s]=[]);"template"===i.tag?l.push.apply(l,i.children||[]):l.push(i)}}for(var u in n)n[u].every(Ae)&&delete n[u];return n}function Ae(t){return t.isComment&&!t.asyncFactory||" "===t.text}function be(t){return t.isComment&&t.asyncFactory}function Ce(t,e,n){var r,i=Object.keys(e).length>0,a=t?!!t.$stable:!i,s=t&&t.$key;if(t){if(t._normalized)return t._normalized;if(a&&n&&n!==o&&s===n.$key&&!i&&!n.$hasNormal)return n;for(var l in r={},t)t[l]&&"$"!==l[0]&&(r[l]=we(e,l,t[l]))}else r={};for(var u in e)u in r||(r[u]=xe(e,u));return t&&Object.isExtensible(t)&&(t._normalized=r),q(r,"$stable",a),q(r,"$key",s),q(r,"$hasNormal",i),r}function we(t,e,n){var r=function(){var t=arguments.length?n.apply(null,arguments):n({}),e=(t=t&&"object"==typeof t&&!Array.isArray(t)?[t]:he(t))&&t[0];return t&&(!e||1===t.length&&e.isComment&&!be(e))?void 0:t};return n.proxy&&Object.defineProperty(t,e,{get:r,enumerable:!0,configurable:!0}),r}function xe(t,e){return function(){return t[e]}}function _e(t,e){var n,r,o,i,s;if(Array.isArray(t)||"string"==typeof t)for(n=new Array(t.length),r=0,o=t.length;r<o;r++)n[r]=e(t[r],r);else if("number"==typeof t)for(n=new Array(t),r=0;r<t;r++)n[r]=e(r+1,r);else if(u(t))if(ct&&t[Symbol.iterator]){n=[];for(var l=t[Symbol.iterator](),c=l.next();!c.done;)n.push(e(c.value,n.length)),c=l.next()}else for(i=Object.keys(t),n=new Array(i.length),r=0,o=i.length;r<o;r++)s=i[r],n[r]=e(t[s],s,r);return a(n)||(n=[]),n._isVList=!0,n}function Se(t,e,n,r){var o,i=this.$scopedSlots[t];i?(n=n||{},r&&(n=T(T({},r),n)),o=i(n)||("function"==typeof e?e():e)):o=this.$slots[t]||("function"==typeof e?e():e);var a=n&&n.slot;return a?this.$createElement("template",{slot:a},o):o}function ke(t){return Rt(this.$options,"filters",t)||$}function Ee(t,e){return Array.isArray(t)?-1===t.indexOf(e):t!==e}function Oe(t,e,n,r,o){var i=M.keyCodes[e]||n;return o&&r&&!M.keyCodes[e]?Ee(o,r):i?Ee(i,t):r?E(r)!==e:void 0===t}function je(t,e,n,r,o){if(n)if(u(n)){var i;Array.isArray(n)&&(n=B(n));var a=function(a){if("class"===a||"style"===a||y(a))i=t;else{var s=t.attrs&&t.attrs.type;i=r||M.mustUseProp(e,s,a)?t.domProps||(t.domProps={}):t.attrs||(t.attrs={})}var l=_(a),u=E(a);l in i||u in i||(i[a]=n[a],o&&((t.on||(t.on={}))["update:"+a]=function(t){n[a]=t}))};for(var s in n)a(s)}else;return t}function Te(t,e){var n=this._staticTrees||(this._staticTrees=[]),r=n[t];return r&&!e||Ne(r=n[t]=this.$options.staticRenderFns[t].call(this._renderProxy,null,this),"__static__"+t,!1),r}function Be(t,e,n){return Ne(t,"__once__"+e+(n?"_"+n:""),!0),t}function Ne(t,e,n){if(Array.isArray(t))for(var r=0;r<t.length;r++)t[r]&&"string"!=typeof t[r]&&Pe(t[r],e+"_"+r,n);else Pe(t,e,n)}function Pe(t,e,n){t.isStatic=!0,t.key=e,t.isOnce=n}function $e(t,e){if(e)if(p(e)){var n=t.on=t.on?T({},t.on):{};for(var r in e){var o=n[r],i=e[r];n[r]=o?[].concat(o,i):i}}else;return t}function Ie(t,e,n,r){e=e||{$stable:!n};for(var o=0;o<t.length;o++){var i=t[o];Array.isArray(i)?Ie(i,e,n):i&&(i.proxy&&(i.fn.proxy=!0),e[i.key]=i.fn)}return r&&(e.$key=r),e}function ze(t,e){for(var n=0;n<e.length;n+=2){var r=e[n];"string"==typeof r&&r&&(t[e[n]]=e[n+1])}return t}function Fe(t,e){return"string"==typeof t?e+t:t}function De(t){t._o=Be,t._n=v,t._s=m,t._l=_e,t._t=Se,t._q=I,t._i=z,t._m=Te,t._f=ke,t._k=Oe,t._b=je,t._v=bt,t._e=At,t._u=Ie,t._g=$e,t._d=ze,t._p=Fe}function Le(t,e,n,r,i){var a,l=this,u=i.options;C(r,"_uid")?(a=Object.create(r))._original=r:(a=r,r=r._original);var c=s(u._compiled),p=!c;this.data=t,this.props=e,this.children=n,this.parent=r,this.listeners=t.on||o,this.injections=ge(u.inject,r),this.slots=function(){return l.$slots||Ce(t.scopedSlots,l.$slots=ye(n,r)),l.$slots},Object.defineProperty(this,"scopedSlots",{enumerable:!0,get:function(){return Ce(t.scopedSlots,this.slots())}}),c&&(this.$options=u,this.$slots=this.slots(),this.$scopedSlots=Ce(t.scopedSlots,this.$slots)),u._scopeId?this._c=function(t,e,n,o){var i=We(a,t,e,n,o,p);return i&&!Array.isArray(i)&&(i.fnScopeId=u._scopeId,i.fnContext=r),i}:this._c=function(t,e,n,r){return We(a,t,e,n,r,p)}}function Re(t,e,n,r,o){var i=Ct(t);return i.fnContext=n,i.fnOptions=r,e.slot&&((i.data||(i.data={})).slot=e.slot),i}function Me(t,e){for(var n in e)t[_(n)]=e[n]}De(Le.prototype);var Ue={init:function(t,e){if(t.componentInstance&&!t.componentInstance._isDestroyed&&t.data.keepAlive){var n=t;Ue.prepatch(n,n)}else{(t.componentInstance=function(t,e){var n={_isComponent:!0,_parentVnode:t,parent:e},r=t.data.inlineTemplate;a(r)&&(n.render=r.render,n.staticRenderFns=r.staticRenderFns);return new t.componentOptions.Ctor(n)}(t,nn)).$mount(e?t.elm:void 0,e)}},prepatch:function(t,e){var n=e.componentOptions;!function(t,e,n,r,i){0;var a=r.data.scopedSlots,s=t.$scopedSlots,l=!!(a&&!a.$stable||s!==o&&!s.$stable||a&&t.$scopedSlots.$key!==a.$key||!a&&t.$scopedSlots.$key),u=!!(i||t.$options._renderChildren||l);t.$options._parentVnode=r,t.$vnode=r,t._vnode&&(t._vnode.parent=r);if(t.$options._renderChildren=i,t.$attrs=r.data.attrs||o,t.$listeners=n||o,e&&t.$options.props){kt(!1);for(var c=t._props,p=t.$options._propKeys||[],f=0;f<p.length;f++){var d=p[f],h=t.$options.props;c[d]=Mt(d,h,e,t)}kt(!0),t.$options.propsData=e}n=n||o;var m=t.$options._parentListeners;t.$options._parentListeners=n,en(t,n,m),u&&(t.$slots=ye(i,r.context),t.$forceUpdate());0}(e.componentInstance=t.componentInstance,n.propsData,n.listeners,e,n.children)},insert:function(t){var e,n=t.context,r=t.componentInstance;r._isMounted||(r._isMounted=!0,ln(r,"mounted")),t.data.keepAlive&&(n._isMounted?((e=r)._inactive=!1,cn.push(e)):an(r,!0))},destroy:function(t){var e=t.componentInstance;e._isDestroyed||(t.data.keepAlive?sn(e,!0):e.$destroy())}},Ge=Object.keys(Ue);function qe(t,e,n,r,l){if(!i(t)){var c=n.$options._base;if(u(t)&&(t=c.extend(t)),"function"==typeof t){var p;if(i(t.cid)&&(t=function(t,e){if(s(t.error)&&a(t.errorComp))return t.errorComp;if(a(t.resolved))return t.resolved;var n=Ke;n&&a(t.owners)&&-1===t.owners.indexOf(n)&&t.owners.push(n);if(s(t.loading)&&a(t.loadingComp))return t.loadingComp;if(n&&!a(t.owners)){var r=t.owners=[n],o=!0,l=null,c=null;n.$on("hook:destroyed",(function(){return A(r,n)}));var p=function(t){for(var e=0,n=r.length;e<n;e++)r[e].$forceUpdate();t&&(r.length=0,null!==l&&(clearTimeout(l),l=null),null!==c&&(clearTimeout(c),c=null))},f=F((function(n){t.resolved=Xe(n,e),o?r.length=0:p(!0)})),d=F((function(e){a(t.errorComp)&&(t.error=!0,p(!0))})),m=t(f,d);return u(m)&&(h(m)?i(t.resolved)&&m.then(f,d):h(m.component)&&(m.component.then(f,d),a(m.error)&&(t.errorComp=Xe(m.error,e)),a(m.loading)&&(t.loadingComp=Xe(m.loading,e),0===m.delay?t.loading=!0:l=setTimeout((function(){l=null,i(t.resolved)&&i(t.error)&&(t.loading=!0,p(!1))}),m.delay||200)),a(m.timeout)&&(c=setTimeout((function(){c=null,i(t.resolved)&&d(null)}),m.timeout)))),o=!1,t.loading?t.loadingComp:t.resolved}}(p=t,c),void 0===t))return function(t,e,n,r,o){var i=At();return i.asyncFactory=t,i.asyncMeta={data:e,context:n,children:r,tag:o},i}(p,e,n,r,l);e=e||{},Tn(t),a(e.model)&&function(t,e){var n=t.model&&t.model.prop||"value",r=t.model&&t.model.event||"input";(e.attrs||(e.attrs={}))[n]=e.model.value;var o=e.on||(e.on={}),i=o[r],s=e.model.callback;a(i)?(Array.isArray(i)?-1===i.indexOf(s):i!==s)&&(o[r]=[s].concat(i)):o[r]=s}(t.options,e);var f=function(t,e,n){var r=e.options.props;if(!i(r)){var o={},s=t.attrs,l=t.props;if(a(s)||a(l))for(var u in r){var c=E(u);de(o,l,u,c,!0)||de(o,s,u,c,!1)}return o}}(e,t);if(s(t.options.functional))return function(t,e,n,r,i){var s=t.options,l={},u=s.props;if(a(u))for(var c in u)l[c]=Mt(c,u,e||o);else a(n.attrs)&&Me(l,n.attrs),a(n.props)&&Me(l,n.props);var p=new Le(n,l,i,r,t),f=s.render.call(null,p._c,p);if(f instanceof gt)return Re(f,n,p.parent,s);if(Array.isArray(f)){for(var d=he(f)||[],h=new Array(d.length),m=0;m<d.length;m++)h[m]=Re(d[m],n,p.parent,s);return h}}(t,f,e,n,r);var d=e.on;if(e.on=e.nativeOn,s(t.options.abstract)){var m=e.slot;e={},m&&(e.slot=m)}!function(t){for(var e=t.hook||(t.hook={}),n=0;n<Ge.length;n++){var r=Ge[n],o=e[r],i=Ue[r];o===i||o&&o._merged||(e[r]=o?Ve(i,o):i)}}(e);var v=t.options.name||l;return new gt("vue-component-"+t.cid+(v?"-"+v:""),e,void 0,void 0,void 0,n,{Ctor:t,propsData:f,listeners:d,tag:l,children:r},p)}}}function Ve(t,e){var n=function(n,r){t(n,r),e(n,r)};return n._merged=!0,n}function We(t,e,n,r,o,i){return(Array.isArray(n)||l(n))&&(o=r,r=n,n=void 0),s(i)&&(o=2),function(t,e,n,r,o){if(a(n)&&a(n.__ob__))return At();a(n)&&a(n.is)&&(e=n.is);if(!e)return At();0;Array.isArray(r)&&"function"==typeof r[0]&&((n=n||{}).scopedSlots={default:r[0]},r.length=0);2===o?r=he(r):1===o&&(r=function(t){for(var e=0;e<t.length;e++)if(Array.isArray(t[e]))return Array.prototype.concat.apply([],t);return t}(r));var i,s;if("string"==typeof e){var l;s=t.$vnode&&t.$vnode.ns||M.getTagNamespace(e),i=M.isReservedTag(e)?new gt(M.parsePlatformTagName(e),n,r,void 0,void 0,t):n&&n.pre||!a(l=Rt(t.$options,"components",e))?new gt(e,n,r,void 0,void 0,t):qe(l,n,t,r,e)}else i=qe(e,n,t,r);return Array.isArray(i)?i:a(i)?(a(s)&&He(i,s),a(n)&&function(t){u(t.style)&&se(t.style);u(t.class)&&se(t.class)}(n),i):At()}(t,e,n,r,o)}function He(t,e,n){if(t.ns=e,"foreignObject"===t.tag&&(e=void 0,n=!0),a(t.children))for(var r=0,o=t.children.length;r<o;r++){var l=t.children[r];a(l.tag)&&(i(l.ns)||s(n)&&"svg"!==l.tag)&&He(l,e,n)}}var Ye,Ke=null;function Xe(t,e){return(t.__esModule||ct&&"Module"===t[Symbol.toStringTag])&&(t=t.default),u(t)?e.extend(t):t}function Ze(t){if(Array.isArray(t))for(var e=0;e<t.length;e++){var n=t[e];if(a(n)&&(a(n.componentOptions)||be(n)))return n}}function Je(t,e){Ye.$on(t,e)}function Qe(t,e){Ye.$off(t,e)}function tn(t,e){var n=Ye;return function r(){var o=e.apply(null,arguments);null!==o&&n.$off(t,r)}}function en(t,e,n){Ye=t,pe(e,n||{},Je,Qe,tn,t),Ye=void 0}var nn=null;function rn(t){var e=nn;return nn=t,function(){nn=e}}function on(t){for(;t&&(t=t.$parent);)if(t._inactive)return!0;return!1}function an(t,e){if(e){if(t._directInactive=!1,on(t))return}else if(t._directInactive)return;if(t._inactive||null===t._inactive){t._inactive=!1;for(var n=0;n<t.$children.length;n++)an(t.$children[n]);ln(t,"activated")}}function sn(t,e){if(!(e&&(t._directInactive=!0,on(t))||t._inactive)){t._inactive=!0;for(var n=0;n<t.$children.length;n++)sn(t.$children[n]);ln(t,"deactivated")}}function ln(t,e){mt();var n=t.$options[e],r=e+" hook";if(n)for(var o=0,i=n.length;o<i;o++)Ht(n[o],t,null,t,r);t._hasHookEvent&&t.$emit("hook:"+e),vt()}var un=[],cn=[],pn={},fn=!1,dn=!1,hn=0;var mn=0,vn=Date.now;if(Y&&!J){var gn=window.performance;gn&&"function"==typeof gn.now&&vn()>document.createEvent("Event").timeStamp&&(vn=function(){return gn.now()})}function yn(){var t,e;for(mn=vn(),dn=!0,un.sort((function(t,e){return t.id-e.id})),hn=0;hn<un.length;hn++)(t=un[hn]).before&&t.before(),e=t.id,pn[e]=null,t.run();var n=cn.slice(),r=un.slice();hn=un.length=cn.length=0,pn={},fn=dn=!1,function(t){for(var e=0;e<t.length;e++)t[e]._inactive=!0,an(t[e],!0)}(n),function(t){var e=t.length;for(;e--;){var n=t[e],r=n.vm;r._watcher===n&&r._isMounted&&!r._isDestroyed&&ln(r,"updated")}}(r),st&&M.devtools&&st.emit("flush")}var An=0,bn=function(t,e,n,r,o){this.vm=t,o&&(t._watcher=this),t._watchers.push(this),r?(this.deep=!!r.deep,this.user=!!r.user,this.lazy=!!r.lazy,this.sync=!!r.sync,this.before=r.before):this.deep=this.user=this.lazy=this.sync=!1,this.cb=n,this.id=++An,this.active=!0,this.dirty=this.lazy,this.deps=[],this.newDeps=[],this.depIds=new ut,this.newDepIds=new ut,this.expression="","function"==typeof e?this.getter=e:(this.getter=function(t){if(!V.test(t)){var e=t.split(".");return function(t){for(var n=0;n<e.length;n++){if(!t)return;t=t[e[n]]}return t}}}(e),this.getter||(this.getter=N)),this.value=this.lazy?void 0:this.get()};bn.prototype.get=function(){var t;mt(this);var e=this.vm;try{t=this.getter.call(e,e)}catch(t){if(!this.user)throw t;Wt(t,e,'getter for watcher "'+this.expression+'"')}finally{this.deep&&se(t),vt(),this.cleanupDeps()}return t},bn.prototype.addDep=function(t){var e=t.id;this.newDepIds.has(e)||(this.newDepIds.add(e),this.newDeps.push(t),this.depIds.has(e)||t.addSub(this))},bn.prototype.cleanupDeps=function(){for(var t=this.deps.length;t--;){var e=this.deps[t];this.newDepIds.has(e.id)||e.removeSub(this)}var n=this.depIds;this.depIds=this.newDepIds,this.newDepIds=n,this.newDepIds.clear(),n=this.deps,this.deps=this.newDeps,this.newDeps=n,this.newDeps.length=0},bn.prototype.update=function(){this.lazy?this.dirty=!0:this.sync?this.run():function(t){var e=t.id;if(null==pn[e]){if(pn[e]=!0,dn){for(var n=un.length-1;n>hn&&un[n].id>t.id;)n--;un.splice(n+1,0,t)}else un.push(t);fn||(fn=!0,ie(yn))}}(this)},bn.prototype.run=function(){if(this.active){var t=this.get();if(t!==this.value||u(t)||this.deep){var e=this.value;if(this.value=t,this.user){var n='callback for watcher "'+this.expression+'"';Ht(this.cb,this.vm,[t,e],this.vm,n)}else this.cb.call(this.vm,t,e)}}},bn.prototype.evaluate=function(){this.value=this.get(),this.dirty=!1},bn.prototype.depend=function(){for(var t=this.deps.length;t--;)this.deps[t].depend()},bn.prototype.teardown=function(){if(this.active){this.vm._isBeingDestroyed||A(this.vm._watchers,this);for(var t=this.deps.length;t--;)this.deps[t].removeSub(this);this.active=!1}};var Cn={enumerable:!0,configurable:!0,get:N,set:N};function wn(t,e,n){Cn.get=function(){return this[e][n]},Cn.set=function(t){this[e][n]=t},Object.defineProperty(t,n,Cn)}function xn(t){t._watchers=[];var e=t.$options;e.props&&function(t,e){var n=t.$options.propsData||{},r=t._props={},o=t.$options._propKeys=[];t.$parent&&kt(!1);var i=function(i){o.push(i);var a=Mt(i,e,n,t);jt(r,i,a),i in t||wn(t,"_props",i)};for(var a in e)i(a);kt(!0)}(t,e.props),e.methods&&function(t,e){t.$options.props;for(var n in e)t[n]="function"!=typeof e[n]?N:O(e[n],t)}(t,e.methods),e.data?function(t){var e=t.$options.data;p(e=t._data="function"==typeof e?function(t,e){mt();try{return t.call(e,e)}catch(t){return Wt(t,e,"data()"),{}}finally{vt()}}(e,t):e||{})||(e={});var n=Object.keys(e),r=t.$options.props,o=(t.$options.methods,n.length);for(;o--;){var i=n[o];0,r&&C(r,i)||G(i)||wn(t,"_data",i)}Ot(e,!0)}(t):Ot(t._data={},!0),e.computed&&function(t,e){var n=t._computedWatchers=Object.create(null),r=at();for(var o in e){var i=e[o],a="function"==typeof i?i:i.get;0,r||(n[o]=new bn(t,a||N,N,_n)),o in t||Sn(t,o,i)}}(t,e.computed),e.watch&&e.watch!==rt&&function(t,e){for(var n in e){var r=e[n];if(Array.isArray(r))for(var o=0;o<r.length;o++)On(t,n,r[o]);else On(t,n,r)}}(t,e.watch)}var _n={lazy:!0};function Sn(t,e,n){var r=!at();"function"==typeof n?(Cn.get=r?kn(e):En(n),Cn.set=N):(Cn.get=n.get?r&&!1!==n.cache?kn(e):En(n.get):N,Cn.set=n.set||N),Object.defineProperty(t,e,Cn)}function kn(t){return function(){var e=this._computedWatchers&&this._computedWatchers[t];if(e)return e.dirty&&e.evaluate(),dt.target&&e.depend(),e.value}}function En(t){return function(){return t.call(this,this)}}function On(t,e,n,r){return p(n)&&(r=n,n=n.handler),"string"==typeof n&&(n=t[n]),t.$watch(e,n,r)}var jn=0;function Tn(t){var e=t.options;if(t.super){var n=Tn(t.super);if(n!==t.superOptions){t.superOptions=n;var r=function(t){var e,n=t.options,r=t.sealedOptions;for(var o in n)n[o]!==r[o]&&(e||(e={}),e[o]=n[o]);return e}(t);r&&T(t.extendOptions,r),(e=t.options=Lt(n,t.extendOptions)).name&&(e.components[e.name]=t)}}return e}function Bn(t){this._init(t)}function Nn(t){t.cid=0;var e=1;t.extend=function(t){t=t||{};var n=this,r=n.cid,o=t._Ctor||(t._Ctor={});if(o[r])return o[r];var i=t.name||n.options.name;var a=function(t){this._init(t)};return(a.prototype=Object.create(n.prototype)).constructor=a,a.cid=e++,a.options=Lt(n.options,t),a.super=n,a.options.props&&function(t){var e=t.options.props;for(var n in e)wn(t.prototype,"_props",n)}(a),a.options.computed&&function(t){var e=t.options.computed;for(var n in e)Sn(t.prototype,n,e[n])}(a),a.extend=n.extend,a.mixin=n.mixin,a.use=n.use,L.forEach((function(t){a[t]=n[t]})),i&&(a.options.components[i]=a),a.superOptions=n.options,a.extendOptions=t,a.sealedOptions=T({},a.options),o[r]=a,a}}function Pn(t){return t&&(t.Ctor.options.name||t.tag)}function $n(t,e){return Array.isArray(t)?t.indexOf(e)>-1:"string"==typeof t?t.split(",").indexOf(e)>-1:!!f(t)&&t.test(e)}function In(t,e){var n=t.cache,r=t.keys,o=t._vnode;for(var i in n){var a=n[i];if(a){var s=a.name;s&&!e(s)&&zn(n,i,r,o)}}}function zn(t,e,n,r){var o=t[e];!o||r&&o.tag===r.tag||o.componentInstance.$destroy(),t[e]=null,A(n,e)}!function(t){t.prototype._init=function(t){var e=this;e._uid=jn++,e._isVue=!0,t&&t._isComponent?function(t,e){var n=t.$options=Object.create(t.constructor.options),r=e._parentVnode;n.parent=e.parent,n._parentVnode=r;var o=r.componentOptions;n.propsData=o.propsData,n._parentListeners=o.listeners,n._renderChildren=o.children,n._componentTag=o.tag,e.render&&(n.render=e.render,n.staticRenderFns=e.staticRenderFns)}(e,t):e.$options=Lt(Tn(e.constructor),t||{},e),e._renderProxy=e,e._self=e,function(t){var e=t.$options,n=e.parent;if(n&&!e.abstract){for(;n.$options.abstract&&n.$parent;)n=n.$parent;n.$children.push(t)}t.$parent=n,t.$root=n?n.$root:t,t.$children=[],t.$refs={},t._watcher=null,t._inactive=null,t._directInactive=!1,t._isMounted=!1,t._isDestroyed=!1,t._isBeingDestroyed=!1}(e),function(t){t._events=Object.create(null),t._hasHookEvent=!1;var e=t.$options._parentListeners;e&&en(t,e)}(e),function(t){t._vnode=null,t._staticTrees=null;var e=t.$options,n=t.$vnode=e._parentVnode,r=n&&n.context;t.$slots=ye(e._renderChildren,r),t.$scopedSlots=o,t._c=function(e,n,r,o){return We(t,e,n,r,o,!1)},t.$createElement=function(e,n,r,o){return We(t,e,n,r,o,!0)};var i=n&&n.data;jt(t,"$attrs",i&&i.attrs||o,null,!0),jt(t,"$listeners",e._parentListeners||o,null,!0)}(e),ln(e,"beforeCreate"),function(t){var e=ge(t.$options.inject,t);e&&(kt(!1),Object.keys(e).forEach((function(n){jt(t,n,e[n])})),kt(!0))}(e),xn(e),function(t){var e=t.$options.provide;e&&(t._provided="function"==typeof e?e.call(t):e)}(e),ln(e,"created"),e.$options.el&&e.$mount(e.$options.el)}}(Bn),function(t){var e={get:function(){return this._data}},n={get:function(){return this._props}};Object.defineProperty(t.prototype,"$data",e),Object.defineProperty(t.prototype,"$props",n),t.prototype.$set=Tt,t.prototype.$delete=Bt,t.prototype.$watch=function(t,e,n){var r=this;if(p(e))return On(r,t,e,n);(n=n||{}).user=!0;var o=new bn(r,t,e,n);if(n.immediate){var i='callback for immediate watcher "'+o.expression+'"';mt(),Ht(e,r,[o.value],r,i),vt()}return function(){o.teardown()}}}(Bn),function(t){var e=/^hook:/;t.prototype.$on=function(t,n){var r=this;if(Array.isArray(t))for(var o=0,i=t.length;o<i;o++)r.$on(t[o],n);else(r._events[t]||(r._events[t]=[])).push(n),e.test(t)&&(r._hasHookEvent=!0);return r},t.prototype.$once=function(t,e){var n=this;function r(){n.$off(t,r),e.apply(n,arguments)}return r.fn=e,n.$on(t,r),n},t.prototype.$off=function(t,e){var n=this;if(!arguments.length)return n._events=Object.create(null),n;if(Array.isArray(t)){for(var r=0,o=t.length;r<o;r++)n.$off(t[r],e);return n}var i,a=n._events[t];if(!a)return n;if(!e)return n._events[t]=null,n;for(var s=a.length;s--;)if((i=a[s])===e||i.fn===e){a.splice(s,1);break}return n},t.prototype.$emit=function(t){var e=this,n=e._events[t];if(n){n=n.length>1?j(n):n;for(var r=j(arguments,1),o='event handler for "'+t+'"',i=0,a=n.length;i<a;i++)Ht(n[i],e,r,e,o)}return e}}(Bn),function(t){t.prototype._update=function(t,e){var n=this,r=n.$el,o=n._vnode,i=rn(n);n._vnode=t,n.$el=o?n.__patch__(o,t):n.__patch__(n.$el,t,e,!1),i(),r&&(r.__vue__=null),n.$el&&(n.$el.__vue__=n),n.$vnode&&n.$parent&&n.$vnode===n.$parent._vnode&&(n.$parent.$el=n.$el)},t.prototype.$forceUpdate=function(){this._watcher&&this._watcher.update()},t.prototype.$destroy=function(){var t=this;if(!t._isBeingDestroyed){ln(t,"beforeDestroy"),t._isBeingDestroyed=!0;var e=t.$parent;!e||e._isBeingDestroyed||t.$options.abstract||A(e.$children,t),t._watcher&&t._watcher.teardown();for(var n=t._watchers.length;n--;)t._watchers[n].teardown();t._data.__ob__&&t._data.__ob__.vmCount--,t._isDestroyed=!0,t.__patch__(t._vnode,null),ln(t,"destroyed"),t.$off(),t.$el&&(t.$el.__vue__=null),t.$vnode&&(t.$vnode.parent=null)}}}(Bn),function(t){De(t.prototype),t.prototype.$nextTick=function(t){return ie(t,this)},t.prototype._render=function(){var t,e=this,n=e.$options,r=n.render,o=n._parentVnode;o&&(e.$scopedSlots=Ce(o.data.scopedSlots,e.$slots,e.$scopedSlots)),e.$vnode=o;try{Ke=e,t=r.call(e._renderProxy,e.$createElement)}catch(n){Wt(n,e,"render"),t=e._vnode}finally{Ke=null}return Array.isArray(t)&&1===t.length&&(t=t[0]),t instanceof gt||(t=At()),t.parent=o,t}}(Bn);var Fn=[String,RegExp,Array],Dn={name:"keep-alive",abstract:!0,props:{include:Fn,exclude:Fn,max:[String,Number]},methods:{cacheVNode:function(){var t=this,e=t.cache,n=t.keys,r=t.vnodeToCache,o=t.keyToCache;if(r){var i=r.tag,a=r.componentInstance,s=r.componentOptions;e[o]={name:Pn(s),tag:i,componentInstance:a},n.push(o),this.max&&n.length>parseInt(this.max)&&zn(e,n[0],n,this._vnode),this.vnodeToCache=null}}},created:function(){this.cache=Object.create(null),this.keys=[]},destroyed:function(){for(var t in this.cache)zn(this.cache,t,this.keys)},mounted:function(){var t=this;this.cacheVNode(),this.$watch("include",(function(e){In(t,(function(t){return $n(e,t)}))})),this.$watch("exclude",(function(e){In(t,(function(t){return!$n(e,t)}))}))},updated:function(){this.cacheVNode()},render:function(){var t=this.$slots.default,e=Ze(t),n=e&&e.componentOptions;if(n){var r=Pn(n),o=this.include,i=this.exclude;if(o&&(!r||!$n(o,r))||i&&r&&$n(i,r))return e;var a=this.cache,s=this.keys,l=null==e.key?n.Ctor.cid+(n.tag?"::"+n.tag:""):e.key;a[l]?(e.componentInstance=a[l].componentInstance,A(s,l),s.push(l)):(this.vnodeToCache=e,this.keyToCache=l),e.data.keepAlive=!0}return e||t&&t[0]}},Ln={KeepAlive:Dn};!function(t){var e={get:function(){return M}};Object.defineProperty(t,"config",e),t.util={warn:pt,extend:T,mergeOptions:Lt,defineReactive:jt},t.set=Tt,t.delete=Bt,t.nextTick=ie,t.observable=function(t){return Ot(t),t},t.options=Object.create(null),L.forEach((function(e){t.options[e+"s"]=Object.create(null)})),t.options._base=t,T(t.options.components,Ln),function(t){t.use=function(t){var e=this._installedPlugins||(this._installedPlugins=[]);if(e.indexOf(t)>-1)return this;var n=j(arguments,1);return n.unshift(this),"function"==typeof t.install?t.install.apply(t,n):"function"==typeof t&&t.apply(null,n),e.push(t),this}}(t),function(t){t.mixin=function(t){return this.options=Lt(this.options,t),this}}(t),Nn(t),function(t){L.forEach((function(e){t[e]=function(t,n){return n?("component"===e&&p(n)&&(n.name=n.name||t,n=this.options._base.extend(n)),"directive"===e&&"function"==typeof n&&(n={bind:n,update:n}),this.options[e+"s"][t]=n,n):this.options[e+"s"][t]}}))}(t)}(Bn),Object.defineProperty(Bn.prototype,"$isServer",{get:at}),Object.defineProperty(Bn.prototype,"$ssrContext",{get:function(){return this.$vnode&&this.$vnode.ssrContext}}),Object.defineProperty(Bn,"FunctionalRenderContext",{value:Le}),Bn.version="2.6.14";var Rn=g("style,class"),Mn=g("input,textarea,option,select,progress"),Un=g("contenteditable,draggable,spellcheck"),Gn=g("events,caret,typing,plaintext-only"),qn=g("allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,default,defaultchecked,defaultmuted,defaultselected,defer,disabled,enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,required,reversed,scoped,seamless,selected,sortable,truespeed,typemustmatch,visible"),Vn="http://www.w3.org/1999/xlink",Wn=function(t){return":"===t.charAt(5)&&"xlink"===t.slice(0,5)},Hn=function(t){return Wn(t)?t.slice(6,t.length):""},Yn=function(t){return null==t||!1===t};function Kn(t){for(var e=t.data,n=t,r=t;a(r.componentInstance);)(r=r.componentInstance._vnode)&&r.data&&(e=Xn(r.data,e));for(;a(n=n.parent);)n&&n.data&&(e=Xn(e,n.data));return function(t,e){if(a(t)||a(e))return Zn(t,Jn(e));return""}(e.staticClass,e.class)}function Xn(t,e){return{staticClass:Zn(t.staticClass,e.staticClass),class:a(t.class)?[t.class,e.class]:e.class}}function Zn(t,e){return t?e?t+" "+e:t:e||""}function Jn(t){return Array.isArray(t)?function(t){for(var e,n="",r=0,o=t.length;r<o;r++)a(e=Jn(t[r]))&&""!==e&&(n&&(n+=" "),n+=e);return n}(t):u(t)?function(t){var e="";for(var n in t)t[n]&&(e&&(e+=" "),e+=n);return e}(t):"string"==typeof t?t:""}var Qn={svg:"http://www.w3.org/2000/svg",math:"http://www.w3.org/1998/Math/MathML"},tr=g("html,body,base,head,link,meta,style,title,address,article,aside,footer,header,h1,h2,h3,h4,h5,h6,hgroup,nav,section,div,dd,dl,dt,figcaption,figure,picture,hr,img,li,main,ol,p,pre,ul,a,b,abbr,bdi,bdo,br,cite,code,data,dfn,em,i,kbd,mark,q,rp,rt,rtc,ruby,s,samp,small,span,strong,sub,sup,time,u,var,wbr,area,audio,map,track,video,embed,object,param,source,canvas,script,noscript,del,ins,caption,col,colgroup,table,thead,tbody,td,th,tr,button,datalist,fieldset,form,input,label,legend,meter,optgroup,option,output,progress,select,textarea,details,dialog,menu,menuitem,summary,content,element,shadow,template,blockquote,iframe,tfoot"),er=g("svg,animate,circle,clippath,cursor,defs,desc,ellipse,filter,font-face,foreignobject,g,glyph,image,line,marker,mask,missing-glyph,path,pattern,polygon,polyline,rect,switch,symbol,text,textpath,tspan,use,view",!0),nr=function(t){return tr(t)||er(t)};var rr=Object.create(null);var or=g("text,number,password,search,email,tel,url");var ir=Object.freeze({createElement:function(t,e){var n=document.createElement(t);return"select"!==t||e.data&&e.data.attrs&&void 0!==e.data.attrs.multiple&&n.setAttribute("multiple","multiple"),n},createElementNS:function(t,e){return document.createElementNS(Qn[t],e)},createTextNode:function(t){return document.createTextNode(t)},createComment:function(t){return document.createComment(t)},insertBefore:function(t,e,n){t.insertBefore(e,n)},removeChild:function(t,e){t.removeChild(e)},appendChild:function(t,e){t.appendChild(e)},parentNode:function(t){return t.parentNode},nextSibling:function(t){return t.nextSibling},tagName:function(t){return t.tagName},setTextContent:function(t,e){t.textContent=e},setStyleScope:function(t,e){t.setAttribute(e,"")}}),ar={create:function(t,e){sr(e)},update:function(t,e){t.data.ref!==e.data.ref&&(sr(t,!0),sr(e))},destroy:function(t){sr(t,!0)}};function sr(t,e){var n=t.data.ref;if(a(n)){var r=t.context,o=t.componentInstance||t.elm,i=r.$refs;e?Array.isArray(i[n])?A(i[n],o):i[n]===o&&(i[n]=void 0):t.data.refInFor?Array.isArray(i[n])?i[n].indexOf(o)<0&&i[n].push(o):i[n]=[o]:i[n]=o}}var lr=new gt("",{},[]),ur=["create","activate","update","remove","destroy"];function cr(t,e){return t.key===e.key&&t.asyncFactory===e.asyncFactory&&(t.tag===e.tag&&t.isComment===e.isComment&&a(t.data)===a(e.data)&&function(t,e){if("input"!==t.tag)return!0;var n,r=a(n=t.data)&&a(n=n.attrs)&&n.type,o=a(n=e.data)&&a(n=n.attrs)&&n.type;return r===o||or(r)&&or(o)}(t,e)||s(t.isAsyncPlaceholder)&&i(e.asyncFactory.error))}function pr(t,e,n){var r,o,i={};for(r=e;r<=n;++r)a(o=t[r].key)&&(i[o]=r);return i}var fr={create:dr,update:dr,destroy:function(t){dr(t,lr)}};function dr(t,e){(t.data.directives||e.data.directives)&&function(t,e){var n,r,o,i=t===lr,a=e===lr,s=mr(t.data.directives,t.context),l=mr(e.data.directives,e.context),u=[],c=[];for(n in l)r=s[n],o=l[n],r?(o.oldValue=r.value,o.oldArg=r.arg,gr(o,"update",e,t),o.def&&o.def.componentUpdated&&c.push(o)):(gr(o,"bind",e,t),o.def&&o.def.inserted&&u.push(o));if(u.length){var p=function(){for(var n=0;n<u.length;n++)gr(u[n],"inserted",e,t)};i?fe(e,"insert",p):p()}c.length&&fe(e,"postpatch",(function(){for(var n=0;n<c.length;n++)gr(c[n],"componentUpdated",e,t)}));if(!i)for(n in s)l[n]||gr(s[n],"unbind",t,t,a)}(t,e)}var hr=Object.create(null);function mr(t,e){var n,r,o=Object.create(null);if(!t)return o;for(n=0;n<t.length;n++)(r=t[n]).modifiers||(r.modifiers=hr),o[vr(r)]=r,r.def=Rt(e.$options,"directives",r.name);return o}function vr(t){return t.rawName||t.name+"."+Object.keys(t.modifiers||{}).join(".")}function gr(t,e,n,r,o){var i=t.def&&t.def[e];if(i)try{i(n.elm,t,n,r,o)}catch(r){Wt(r,n.context,"directive "+t.name+" "+e+" hook")}}var yr=[ar,fr];function Ar(t,e){var n=e.componentOptions;if(!(a(n)&&!1===n.Ctor.options.inheritAttrs||i(t.data.attrs)&&i(e.data.attrs))){var r,o,s=e.elm,l=t.data.attrs||{},u=e.data.attrs||{};for(r in a(u.__ob__)&&(u=e.data.attrs=T({},u)),u)o=u[r],l[r]!==o&&br(s,r,o,e.data.pre);for(r in(J||tt)&&u.value!==l.value&&br(s,"value",u.value),l)i(u[r])&&(Wn(r)?s.removeAttributeNS(Vn,Hn(r)):Un(r)||s.removeAttribute(r))}}function br(t,e,n,r){r||t.tagName.indexOf("-")>-1?Cr(t,e,n):qn(e)?Yn(n)?t.removeAttribute(e):(n="allowfullscreen"===e&&"EMBED"===t.tagName?"true":e,t.setAttribute(e,n)):Un(e)?t.setAttribute(e,function(t,e){return Yn(e)||"false"===e?"false":"contenteditable"===t&&Gn(e)?e:"true"}(e,n)):Wn(e)?Yn(n)?t.removeAttributeNS(Vn,Hn(e)):t.setAttributeNS(Vn,e,n):Cr(t,e,n)}function Cr(t,e,n){if(Yn(n))t.removeAttribute(e);else{if(J&&!Q&&"TEXTAREA"===t.tagName&&"placeholder"===e&&""!==n&&!t.__ieph){var r=function(e){e.stopImmediatePropagation(),t.removeEventListener("input",r)};t.addEventListener("input",r),t.__ieph=!0}t.setAttribute(e,n)}}var wr={create:Ar,update:Ar};function xr(t,e){var n=e.elm,r=e.data,o=t.data;if(!(i(r.staticClass)&&i(r.class)&&(i(o)||i(o.staticClass)&&i(o.class)))){var s=Kn(e),l=n._transitionClasses;a(l)&&(s=Zn(s,Jn(l))),s!==n._prevClass&&(n.setAttribute("class",s),n._prevClass=s)}}var _r,Sr={create:xr,update:xr};function kr(t,e,n){var r=_r;return function o(){var i=e.apply(null,arguments);null!==i&&jr(t,o,n,r)}}var Er=Zt&&!(nt&&Number(nt[1])<=53);function Or(t,e,n,r){if(Er){var o=mn,i=e;e=i._wrapper=function(t){if(t.target===t.currentTarget||t.timeStamp>=o||t.timeStamp<=0||t.target.ownerDocument!==document)return i.apply(this,arguments)}}_r.addEventListener(t,e,ot?{capture:n,passive:r}:n)}function jr(t,e,n,r){(r||_r).removeEventListener(t,e._wrapper||e,n)}function Tr(t,e){if(!i(t.data.on)||!i(e.data.on)){var n=e.data.on||{},r=t.data.on||{};_r=e.elm,function(t){if(a(t.__r)){var e=J?"change":"input";t[e]=[].concat(t.__r,t[e]||[]),delete t.__r}a(t.__c)&&(t.change=[].concat(t.__c,t.change||[]),delete t.__c)}(n),pe(n,r,Or,jr,kr,e.context),_r=void 0}}var Br,Nr={create:Tr,update:Tr};function Pr(t,e){if(!i(t.data.domProps)||!i(e.data.domProps)){var n,r,o=e.elm,s=t.data.domProps||{},l=e.data.domProps||{};for(n in a(l.__ob__)&&(l=e.data.domProps=T({},l)),s)n in l||(o[n]="");for(n in l){if(r=l[n],"textContent"===n||"innerHTML"===n){if(e.children&&(e.children.length=0),r===s[n])continue;1===o.childNodes.length&&o.removeChild(o.childNodes[0])}if("value"===n&&"PROGRESS"!==o.tagName){o._value=r;var u=i(r)?"":String(r);$r(o,u)&&(o.value=u)}else if("innerHTML"===n&&er(o.tagName)&&i(o.innerHTML)){(Br=Br||document.createElement("div")).innerHTML="<svg>"+r+"</svg>";for(var c=Br.firstChild;o.firstChild;)o.removeChild(o.firstChild);for(;c.firstChild;)o.appendChild(c.firstChild)}else if(r!==s[n])try{o[n]=r}catch(t){}}}}function $r(t,e){return!t.composing&&("OPTION"===t.tagName||function(t,e){var n=!0;try{n=document.activeElement!==t}catch(t){}return n&&t.value!==e}(t,e)||function(t,e){var n=t.value,r=t._vModifiers;if(a(r)){if(r.number)return v(n)!==v(e);if(r.trim)return n.trim()!==e.trim()}return n!==e}(t,e))}var Ir={create:Pr,update:Pr},zr=w((function(t){var e={},n=/:(.+)/;return t.split(/;(?![^(]*\))/g).forEach((function(t){if(t){var r=t.split(n);r.length>1&&(e[r[0].trim()]=r[1].trim())}})),e}));function Fr(t){var e=Dr(t.style);return t.staticStyle?T(t.staticStyle,e):e}function Dr(t){return Array.isArray(t)?B(t):"string"==typeof t?zr(t):t}var Lr,Rr=/^--/,Mr=/\s*!important$/,Ur=function(t,e,n){if(Rr.test(e))t.style.setProperty(e,n);else if(Mr.test(n))t.style.setProperty(E(e),n.replace(Mr,""),"important");else{var r=qr(e);if(Array.isArray(n))for(var o=0,i=n.length;o<i;o++)t.style[r]=n[o];else t.style[r]=n}},Gr=["Webkit","Moz","ms"],qr=w((function(t){if(Lr=Lr||document.createElement("div").style,"filter"!==(t=_(t))&&t in Lr)return t;for(var e=t.charAt(0).toUpperCase()+t.slice(1),n=0;n<Gr.length;n++){var r=Gr[n]+e;if(r in Lr)return r}}));function Vr(t,e){var n=e.data,r=t.data;if(!(i(n.staticStyle)&&i(n.style)&&i(r.staticStyle)&&i(r.style))){var o,s,l=e.elm,u=r.staticStyle,c=r.normalizedStyle||r.style||{},p=u||c,f=Dr(e.data.style)||{};e.data.normalizedStyle=a(f.__ob__)?T({},f):f;var d=function(t,e){var n,r={};if(e)for(var o=t;o.componentInstance;)(o=o.componentInstance._vnode)&&o.data&&(n=Fr(o.data))&&T(r,n);(n=Fr(t.data))&&T(r,n);for(var i=t;i=i.parent;)i.data&&(n=Fr(i.data))&&T(r,n);return r}(e,!0);for(s in p)i(d[s])&&Ur(l,s,"");for(s in d)(o=d[s])!==p[s]&&Ur(l,s,null==o?"":o)}}var Wr={create:Vr,update:Vr},Hr=/\s+/;function Yr(t,e){if(e&&(e=e.trim()))if(t.classList)e.indexOf(" ")>-1?e.split(Hr).forEach((function(e){return t.classList.add(e)})):t.classList.add(e);else{var n=" "+(t.getAttribute("class")||"")+" ";n.indexOf(" "+e+" ")<0&&t.setAttribute("class",(n+e).trim())}}function Kr(t,e){if(e&&(e=e.trim()))if(t.classList)e.indexOf(" ")>-1?e.split(Hr).forEach((function(e){return t.classList.remove(e)})):t.classList.remove(e),t.classList.length||t.removeAttribute("class");else{for(var n=" "+(t.getAttribute("class")||"")+" ",r=" "+e+" ";n.indexOf(r)>=0;)n=n.replace(r," ");(n=n.trim())?t.setAttribute("class",n):t.removeAttribute("class")}}function Xr(t){if(t){if("object"==typeof t){var e={};return!1!==t.css&&T(e,Zr(t.name||"v")),T(e,t),e}return"string"==typeof t?Zr(t):void 0}}var Zr=w((function(t){return{enterClass:t+"-enter",enterToClass:t+"-enter-to",enterActiveClass:t+"-enter-active",leaveClass:t+"-leave",leaveToClass:t+"-leave-to",leaveActiveClass:t+"-leave-active"}})),Jr=Y&&!Q,Qr="transition",to="animation",eo="transition",no="transitionend",ro="animation",oo="animationend";Jr&&(void 0===window.ontransitionend&&void 0!==window.onwebkittransitionend&&(eo="WebkitTransition",no="webkitTransitionEnd"),void 0===window.onanimationend&&void 0!==window.onwebkitanimationend&&(ro="WebkitAnimation",oo="webkitAnimationEnd"));var io=Y?window.requestAnimationFrame?window.requestAnimationFrame.bind(window):setTimeout:function(t){return t()};function ao(t){io((function(){io(t)}))}function so(t,e){var n=t._transitionClasses||(t._transitionClasses=[]);n.indexOf(e)<0&&(n.push(e),Yr(t,e))}function lo(t,e){t._transitionClasses&&A(t._transitionClasses,e),Kr(t,e)}function uo(t,e,n){var r=po(t,e),o=r.type,i=r.timeout,a=r.propCount;if(!o)return n();var s=o===Qr?no:oo,l=0,u=function(){t.removeEventListener(s,c),n()},c=function(e){e.target===t&&++l>=a&&u()};setTimeout((function(){l<a&&u()}),i+1),t.addEventListener(s,c)}var co=/\b(transform|all)(,|$)/;function po(t,e){var n,r=window.getComputedStyle(t),o=(r[eo+"Delay"]||"").split(", "),i=(r[eo+"Duration"]||"").split(", "),a=fo(o,i),s=(r[ro+"Delay"]||"").split(", "),l=(r[ro+"Duration"]||"").split(", "),u=fo(s,l),c=0,p=0;return e===Qr?a>0&&(n=Qr,c=a,p=i.length):e===to?u>0&&(n=to,c=u,p=l.length):p=(n=(c=Math.max(a,u))>0?a>u?Qr:to:null)?n===Qr?i.length:l.length:0,{type:n,timeout:c,propCount:p,hasTransform:n===Qr&&co.test(r[eo+"Property"])}}function fo(t,e){for(;t.length<e.length;)t=t.concat(t);return Math.max.apply(null,e.map((function(e,n){return ho(e)+ho(t[n])})))}function ho(t){return 1e3*Number(t.slice(0,-1).replace(",","."))}function mo(t,e){var n=t.elm;a(n._leaveCb)&&(n._leaveCb.cancelled=!0,n._leaveCb());var r=Xr(t.data.transition);if(!i(r)&&!a(n._enterCb)&&1===n.nodeType){for(var o=r.css,s=r.type,l=r.enterClass,c=r.enterToClass,p=r.enterActiveClass,f=r.appearClass,d=r.appearToClass,h=r.appearActiveClass,m=r.beforeEnter,g=r.enter,y=r.afterEnter,A=r.enterCancelled,b=r.beforeAppear,C=r.appear,w=r.afterAppear,x=r.appearCancelled,_=r.duration,S=nn,k=nn.$vnode;k&&k.parent;)S=k.context,k=k.parent;var E=!S._isMounted||!t.isRootInsert;if(!E||C||""===C){var O=E&&f?f:l,j=E&&h?h:p,T=E&&d?d:c,B=E&&b||m,N=E&&"function"==typeof C?C:g,P=E&&w||y,$=E&&x||A,I=v(u(_)?_.enter:_);0;var z=!1!==o&&!Q,D=yo(N),L=n._enterCb=F((function(){z&&(lo(n,T),lo(n,j)),L.cancelled?(z&&lo(n,O),$&&$(n)):P&&P(n),n._enterCb=null}));t.data.show||fe(t,"insert",(function(){var e=n.parentNode,r=e&&e._pending&&e._pending[t.key];r&&r.tag===t.tag&&r.elm._leaveCb&&r.elm._leaveCb(),N&&N(n,L)})),B&&B(n),z&&(so(n,O),so(n,j),ao((function(){lo(n,O),L.cancelled||(so(n,T),D||(go(I)?setTimeout(L,I):uo(n,s,L)))}))),t.data.show&&(e&&e(),N&&N(n,L)),z||D||L()}}}function vo(t,e){var n=t.elm;a(n._enterCb)&&(n._enterCb.cancelled=!0,n._enterCb());var r=Xr(t.data.transition);if(i(r)||1!==n.nodeType)return e();if(!a(n._leaveCb)){var o=r.css,s=r.type,l=r.leaveClass,c=r.leaveToClass,p=r.leaveActiveClass,f=r.beforeLeave,d=r.leave,h=r.afterLeave,m=r.leaveCancelled,g=r.delayLeave,y=r.duration,A=!1!==o&&!Q,b=yo(d),C=v(u(y)?y.leave:y);0;var w=n._leaveCb=F((function(){n.parentNode&&n.parentNode._pending&&(n.parentNode._pending[t.key]=null),A&&(lo(n,c),lo(n,p)),w.cancelled?(A&&lo(n,l),m&&m(n)):(e(),h&&h(n)),n._leaveCb=null}));g?g(x):x()}function x(){w.cancelled||(!t.data.show&&n.parentNode&&((n.parentNode._pending||(n.parentNode._pending={}))[t.key]=t),f&&f(n),A&&(so(n,l),so(n,p),ao((function(){lo(n,l),w.cancelled||(so(n,c),b||(go(C)?setTimeout(w,C):uo(n,s,w)))}))),d&&d(n,w),A||b||w())}}function go(t){return"number"==typeof t&&!isNaN(t)}function yo(t){if(i(t))return!1;var e=t.fns;return a(e)?yo(Array.isArray(e)?e[0]:e):(t._length||t.length)>1}function Ao(t,e){!0!==e.data.show&&mo(e)}var bo=function(t){var e,n,r={},o=t.modules,u=t.nodeOps;for(e=0;e<ur.length;++e)for(r[ur[e]]=[],n=0;n<o.length;++n)a(o[n][ur[e]])&&r[ur[e]].push(o[n][ur[e]]);function c(t){var e=u.parentNode(t);a(e)&&u.removeChild(e,t)}function p(t,e,n,o,i,l,c){if(a(t.elm)&&a(l)&&(t=l[c]=Ct(t)),t.isRootInsert=!i,!function(t,e,n,o){var i=t.data;if(a(i)){var l=a(t.componentInstance)&&i.keepAlive;if(a(i=i.hook)&&a(i=i.init)&&i(t,!1),a(t.componentInstance))return f(t,e),d(n,t.elm,o),s(l)&&function(t,e,n,o){var i,s=t;for(;s.componentInstance;)if(a(i=(s=s.componentInstance._vnode).data)&&a(i=i.transition)){for(i=0;i<r.activate.length;++i)r.activate[i](lr,s);e.push(s);break}d(n,t.elm,o)}(t,e,n,o),!0}}(t,e,n,o)){var p=t.data,m=t.children,g=t.tag;a(g)?(t.elm=t.ns?u.createElementNS(t.ns,g):u.createElement(g,t),y(t),h(t,m,e),a(p)&&v(t,e),d(n,t.elm,o)):s(t.isComment)?(t.elm=u.createComment(t.text),d(n,t.elm,o)):(t.elm=u.createTextNode(t.text),d(n,t.elm,o))}}function f(t,e){a(t.data.pendingInsert)&&(e.push.apply(e,t.data.pendingInsert),t.data.pendingInsert=null),t.elm=t.componentInstance.$el,m(t)?(v(t,e),y(t)):(sr(t),e.push(t))}function d(t,e,n){a(t)&&(a(n)?u.parentNode(n)===t&&u.insertBefore(t,e,n):u.appendChild(t,e))}function h(t,e,n){if(Array.isArray(e)){0;for(var r=0;r<e.length;++r)p(e[r],n,t.elm,null,!0,e,r)}else l(t.text)&&u.appendChild(t.elm,u.createTextNode(String(t.text)))}function m(t){for(;t.componentInstance;)t=t.componentInstance._vnode;return a(t.tag)}function v(t,n){for(var o=0;o<r.create.length;++o)r.create[o](lr,t);a(e=t.data.hook)&&(a(e.create)&&e.create(lr,t),a(e.insert)&&n.push(t))}function y(t){var e;if(a(e=t.fnScopeId))u.setStyleScope(t.elm,e);else for(var n=t;n;)a(e=n.context)&&a(e=e.$options._scopeId)&&u.setStyleScope(t.elm,e),n=n.parent;a(e=nn)&&e!==t.context&&e!==t.fnContext&&a(e=e.$options._scopeId)&&u.setStyleScope(t.elm,e)}function A(t,e,n,r,o,i){for(;r<=o;++r)p(n[r],i,t,e,!1,n,r)}function b(t){var e,n,o=t.data;if(a(o))for(a(e=o.hook)&&a(e=e.destroy)&&e(t),e=0;e<r.destroy.length;++e)r.destroy[e](t);if(a(e=t.children))for(n=0;n<t.children.length;++n)b(t.children[n])}function C(t,e,n){for(;e<=n;++e){var r=t[e];a(r)&&(a(r.tag)?(w(r),b(r)):c(r.elm))}}function w(t,e){if(a(e)||a(t.data)){var n,o=r.remove.length+1;for(a(e)?e.listeners+=o:e=function(t,e){function n(){0==--n.listeners&&c(t)}return n.listeners=e,n}(t.elm,o),a(n=t.componentInstance)&&a(n=n._vnode)&&a(n.data)&&w(n,e),n=0;n<r.remove.length;++n)r.remove[n](t,e);a(n=t.data.hook)&&a(n=n.remove)?n(t,e):e()}else c(t.elm)}function x(t,e,n,r){for(var o=n;o<r;o++){var i=e[o];if(a(i)&&cr(t,i))return o}}function _(t,e,n,o,l,c){if(t!==e){a(e.elm)&&a(o)&&(e=o[l]=Ct(e));var f=e.elm=t.elm;if(s(t.isAsyncPlaceholder))a(e.asyncFactory.resolved)?E(t.elm,e,n):e.isAsyncPlaceholder=!0;else if(s(e.isStatic)&&s(t.isStatic)&&e.key===t.key&&(s(e.isCloned)||s(e.isOnce)))e.componentInstance=t.componentInstance;else{var d,h=e.data;a(h)&&a(d=h.hook)&&a(d=d.prepatch)&&d(t,e);var v=t.children,g=e.children;if(a(h)&&m(e)){for(d=0;d<r.update.length;++d)r.update[d](t,e);a(d=h.hook)&&a(d=d.update)&&d(t,e)}i(e.text)?a(v)&&a(g)?v!==g&&function(t,e,n,r,o){var s,l,c,f=0,d=0,h=e.length-1,m=e[0],v=e[h],g=n.length-1,y=n[0],b=n[g],w=!o;for(;f<=h&&d<=g;)i(m)?m=e[++f]:i(v)?v=e[--h]:cr(m,y)?(_(m,y,r,n,d),m=e[++f],y=n[++d]):cr(v,b)?(_(v,b,r,n,g),v=e[--h],b=n[--g]):cr(m,b)?(_(m,b,r,n,g),w&&u.insertBefore(t,m.elm,u.nextSibling(v.elm)),m=e[++f],b=n[--g]):cr(v,y)?(_(v,y,r,n,d),w&&u.insertBefore(t,v.elm,m.elm),v=e[--h],y=n[++d]):(i(s)&&(s=pr(e,f,h)),i(l=a(y.key)?s[y.key]:x(y,e,f,h))?p(y,r,t,m.elm,!1,n,d):cr(c=e[l],y)?(_(c,y,r,n,d),e[l]=void 0,w&&u.insertBefore(t,c.elm,m.elm)):p(y,r,t,m.elm,!1,n,d),y=n[++d]);f>h?A(t,i(n[g+1])?null:n[g+1].elm,n,d,g,r):d>g&&C(e,f,h)}(f,v,g,n,c):a(g)?(a(t.text)&&u.setTextContent(f,""),A(f,null,g,0,g.length-1,n)):a(v)?C(v,0,v.length-1):a(t.text)&&u.setTextContent(f,""):t.text!==e.text&&u.setTextContent(f,e.text),a(h)&&a(d=h.hook)&&a(d=d.postpatch)&&d(t,e)}}}function S(t,e,n){if(s(n)&&a(t.parent))t.parent.data.pendingInsert=e;else for(var r=0;r<e.length;++r)e[r].data.hook.insert(e[r])}var k=g("attrs,class,staticClass,staticStyle,key");function E(t,e,n,r){var o,i=e.tag,l=e.data,u=e.children;if(r=r||l&&l.pre,e.elm=t,s(e.isComment)&&a(e.asyncFactory))return e.isAsyncPlaceholder=!0,!0;if(a(l)&&(a(o=l.hook)&&a(o=o.init)&&o(e,!0),a(o=e.componentInstance)))return f(e,n),!0;if(a(i)){if(a(u))if(t.hasChildNodes())if(a(o=l)&&a(o=o.domProps)&&a(o=o.innerHTML)){if(o!==t.innerHTML)return!1}else{for(var c=!0,p=t.firstChild,d=0;d<u.length;d++){if(!p||!E(p,u[d],n,r)){c=!1;break}p=p.nextSibling}if(!c||p)return!1}else h(e,u,n);if(a(l)){var m=!1;for(var g in l)if(!k(g)){m=!0,v(e,n);break}!m&&l.class&&se(l.class)}}else t.data!==e.text&&(t.data=e.text);return!0}return function(t,e,n,o){if(!i(e)){var l,c=!1,f=[];if(i(t))c=!0,p(e,f);else{var d=a(t.nodeType);if(!d&&cr(t,e))_(t,e,f,null,null,o);else{if(d){if(1===t.nodeType&&t.hasAttribute(D)&&(t.removeAttribute(D),n=!0),s(n)&&E(t,e,f))return S(e,f,!0),t;l=t,t=new gt(u.tagName(l).toLowerCase(),{},[],void 0,l)}var h=t.elm,v=u.parentNode(h);if(p(e,f,h._leaveCb?null:v,u.nextSibling(h)),a(e.parent))for(var g=e.parent,y=m(e);g;){for(var A=0;A<r.destroy.length;++A)r.destroy[A](g);if(g.elm=e.elm,y){for(var w=0;w<r.create.length;++w)r.create[w](lr,g);var x=g.data.hook.insert;if(x.merged)for(var k=1;k<x.fns.length;k++)x.fns[k]()}else sr(g);g=g.parent}a(v)?C([t],0,0):a(t.tag)&&b(t)}}return S(e,f,c),e.elm}a(t)&&b(t)}}({nodeOps:ir,modules:[wr,Sr,Nr,Ir,Wr,Y?{create:Ao,activate:Ao,remove:function(t,e){!0!==t.data.show?vo(t,e):e()}}:{}].concat(yr)});Q&&document.addEventListener("selectionchange",(function(){var t=document.activeElement;t&&t.vmodel&&Oo(t,"input")}));var Co={inserted:function(t,e,n,r){"select"===n.tag?(r.elm&&!r.elm._vOptions?fe(n,"postpatch",(function(){Co.componentUpdated(t,e,n)})):wo(t,e,n.context),t._vOptions=[].map.call(t.options,So)):("textarea"===n.tag||or(t.type))&&(t._vModifiers=e.modifiers,e.modifiers.lazy||(t.addEventListener("compositionstart",ko),t.addEventListener("compositionend",Eo),t.addEventListener("change",Eo),Q&&(t.vmodel=!0)))},componentUpdated:function(t,e,n){if("select"===n.tag){wo(t,e,n.context);var r=t._vOptions,o=t._vOptions=[].map.call(t.options,So);if(o.some((function(t,e){return!I(t,r[e])})))(t.multiple?e.value.some((function(t){return _o(t,o)})):e.value!==e.oldValue&&_o(e.value,o))&&Oo(t,"change")}}};function wo(t,e,n){xo(t,e,n),(J||tt)&&setTimeout((function(){xo(t,e,n)}),0)}function xo(t,e,n){var r=e.value,o=t.multiple;if(!o||Array.isArray(r)){for(var i,a,s=0,l=t.options.length;s<l;s++)if(a=t.options[s],o)i=z(r,So(a))>-1,a.selected!==i&&(a.selected=i);else if(I(So(a),r))return void(t.selectedIndex!==s&&(t.selectedIndex=s));o||(t.selectedIndex=-1)}}function _o(t,e){return e.every((function(e){return!I(e,t)}))}function So(t){return"_value"in t?t._value:t.value}function ko(t){t.target.composing=!0}function Eo(t){t.target.composing&&(t.target.composing=!1,Oo(t.target,"input"))}function Oo(t,e){var n=document.createEvent("HTMLEvents");n.initEvent(e,!0,!0),t.dispatchEvent(n)}function jo(t){return!t.componentInstance||t.data&&t.data.transition?t:jo(t.componentInstance._vnode)}var To={bind:function(t,e,n){var r=e.value,o=(n=jo(n)).data&&n.data.transition,i=t.__vOriginalDisplay="none"===t.style.display?"":t.style.display;r&&o?(n.data.show=!0,mo(n,(function(){t.style.display=i}))):t.style.display=r?i:"none"},update:function(t,e,n){var r=e.value;!r!=!e.oldValue&&((n=jo(n)).data&&n.data.transition?(n.data.show=!0,r?mo(n,(function(){t.style.display=t.__vOriginalDisplay})):vo(n,(function(){t.style.display="none"}))):t.style.display=r?t.__vOriginalDisplay:"none")},unbind:function(t,e,n,r,o){o||(t.style.display=t.__vOriginalDisplay)}},Bo={model:Co,show:To},No={name:String,appear:Boolean,css:Boolean,mode:String,type:String,enterClass:String,leaveClass:String,enterToClass:String,leaveToClass:String,enterActiveClass:String,leaveActiveClass:String,appearClass:String,appearActiveClass:String,appearToClass:String,duration:[Number,String,Object]};function Po(t){var e=t&&t.componentOptions;return e&&e.Ctor.options.abstract?Po(Ze(e.children)):t}function $o(t){var e={},n=t.$options;for(var r in n.propsData)e[r]=t[r];var o=n._parentListeners;for(var i in o)e[_(i)]=o[i];return e}function Io(t,e){if(/\d-keep-alive$/.test(e.tag))return t("keep-alive",{props:e.componentOptions.propsData})}var zo=function(t){return t.tag||be(t)},Fo=function(t){return"show"===t.name},Do={name:"transition",props:No,abstract:!0,render:function(t){var e=this,n=this.$slots.default;if(n&&(n=n.filter(zo)).length){0;var r=this.mode;0;var o=n[0];if(function(t){for(;t=t.parent;)if(t.data.transition)return!0}(this.$vnode))return o;var i=Po(o);if(!i)return o;if(this._leaving)return Io(t,o);var a="__transition-"+this._uid+"-";i.key=null==i.key?i.isComment?a+"comment":a+i.tag:l(i.key)?0===String(i.key).indexOf(a)?i.key:a+i.key:i.key;var s=(i.data||(i.data={})).transition=$o(this),u=this._vnode,c=Po(u);if(i.data.directives&&i.data.directives.some(Fo)&&(i.data.show=!0),c&&c.data&&!function(t,e){return e.key===t.key&&e.tag===t.tag}(i,c)&&!be(c)&&(!c.componentInstance||!c.componentInstance._vnode.isComment)){var p=c.data.transition=T({},s);if("out-in"===r)return this._leaving=!0,fe(p,"afterLeave",(function(){e._leaving=!1,e.$forceUpdate()})),Io(t,o);if("in-out"===r){if(be(i))return u;var f,d=function(){f()};fe(s,"afterEnter",d),fe(s,"enterCancelled",d),fe(p,"delayLeave",(function(t){f=t}))}}return o}}},Lo=T({tag:String,moveClass:String},No);function Ro(t){t.elm._moveCb&&t.elm._moveCb(),t.elm._enterCb&&t.elm._enterCb()}function Mo(t){t.data.newPos=t.elm.getBoundingClientRect()}function Uo(t){var e=t.data.pos,n=t.data.newPos,r=e.left-n.left,o=e.top-n.top;if(r||o){t.data.moved=!0;var i=t.elm.style;i.transform=i.WebkitTransform="translate("+r+"px,"+o+"px)",i.transitionDuration="0s"}}delete Lo.mode;var Go={Transition:Do,TransitionGroup:{props:Lo,beforeMount:function(){var t=this,e=this._update;this._update=function(n,r){var o=rn(t);t.__patch__(t._vnode,t.kept,!1,!0),t._vnode=t.kept,o(),e.call(t,n,r)}},render:function(t){for(var e=this.tag||this.$vnode.data.tag||"span",n=Object.create(null),r=this.prevChildren=this.children,o=this.$slots.default||[],i=this.children=[],a=$o(this),s=0;s<o.length;s++){var l=o[s];if(l.tag)if(null!=l.key&&0!==String(l.key).indexOf("__vlist"))i.push(l),n[l.key]=l,(l.data||(l.data={})).transition=a;else;}if(r){for(var u=[],c=[],p=0;p<r.length;p++){var f=r[p];f.data.transition=a,f.data.pos=f.elm.getBoundingClientRect(),n[f.key]?u.push(f):c.push(f)}this.kept=t(e,null,u),this.removed=c}return t(e,null,i)},updated:function(){var t=this.prevChildren,e=this.moveClass||(this.name||"v")+"-move";t.length&&this.hasMove(t[0].elm,e)&&(t.forEach(Ro),t.forEach(Mo),t.forEach(Uo),this._reflow=document.body.offsetHeight,t.forEach((function(t){if(t.data.moved){var n=t.elm,r=n.style;so(n,e),r.transform=r.WebkitTransform=r.transitionDuration="",n.addEventListener(no,n._moveCb=function t(r){r&&r.target!==n||r&&!/transform$/.test(r.propertyName)||(n.removeEventListener(no,t),n._moveCb=null,lo(n,e))})}})))},methods:{hasMove:function(t,e){if(!Jr)return!1;if(this._hasMove)return this._hasMove;var n=t.cloneNode();t._transitionClasses&&t._transitionClasses.forEach((function(t){Kr(n,t)})),Yr(n,e),n.style.display="none",this.$el.appendChild(n);var r=po(n);return this.$el.removeChild(n),this._hasMove=r.hasTransform}}}};Bn.config.mustUseProp=function(t,e,n){return"value"===n&&Mn(t)&&"button"!==e||"selected"===n&&"option"===t||"checked"===n&&"input"===t||"muted"===n&&"video"===t},Bn.config.isReservedTag=nr,Bn.config.isReservedAttr=Rn,Bn.config.getTagNamespace=function(t){return er(t)?"svg":"math"===t?"math":void 0},Bn.config.isUnknownElement=function(t){if(!Y)return!0;if(nr(t))return!1;if(t=t.toLowerCase(),null!=rr[t])return rr[t];var e=document.createElement(t);return t.indexOf("-")>-1?rr[t]=e.constructor===window.HTMLUnknownElement||e.constructor===window.HTMLElement:rr[t]=/HTMLUnknownElement/.test(e.toString())},T(Bn.options.directives,Bo),T(Bn.options.components,Go),Bn.prototype.__patch__=Y?bo:N,Bn.prototype.$mount=function(t,e){return function(t,e,n){var r;return t.$el=e,t.$options.render||(t.$options.render=At),ln(t,"beforeMount"),r=function(){t._update(t._render(),n)},new bn(t,r,N,{before:function(){t._isMounted&&!t._isDestroyed&&ln(t,"beforeUpdate")}},!0),n=!1,null==t.$vnode&&(t._isMounted=!0,ln(t,"mounted")),t}(this,t=t&&Y?function(t){if("string"==typeof t){return document.querySelector(t)||document.createElement("div")}return t}(t):void 0,e)},Y&&setTimeout((function(){M.devtools&&st&&st.emit("init",Bn)}),0);const qo=Bn},6430:(t,e,n)=>{"use strict";var r=n(9804),o=n(6314),i=n(1924),a=i("Object.prototype.toString"),s=n(6410)(),l="undefined"==typeof globalThis?n.g:globalThis,u=o(),c=i("String.prototype.slice"),p={},f=n(4079),d=Object.getPrototypeOf;s&&f&&d&&r(u,(function(t){if("function"==typeof l[t]){var e=new l[t];if(Symbol.toStringTag in e){var n=d(e),r=f(n,Symbol.toStringTag);if(!r){var o=d(n);r=f(o,Symbol.toStringTag)}p[t]=r.get}}}));var h=n(5692);t.exports=function(t){return!!h(t)&&(s&&Symbol.toStringTag in t?function(t){var e=!1;return r(p,(function(n,r){if(!e)try{var o=n.call(t);o===r&&(e=o)}catch(t){}})),e}(t):c(a(t),8,-1))}}},n={};function r(t){var o=n[t];if(void 0!==o)return o.exports;var i=n[t]={id:t,loaded:!1,exports:{}};return e[t](i,i.exports,r),i.loaded=!0,i.exports}r.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return r.d(e,{a:e}),e},r.d=(t,e)=>{for(var n in e)r.o(e,n)&&!r.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:e[n]})},r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),r.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),r.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},r.nmd=t=>(t.paths=[],t.children||(t.children=[]),t),r.p="/apps/firstrunwizard/js/",(()=>{"use strict";var e=r(144),n=r(9753),o=r(9944),i=r(7450),a=r.n(i),s=r(4820);const l={name:"IntroVideo",data:()=>({videoMp4:(0,n.FW)("firstrunwizard","img","Nextcloud.mp4"),videoWebm:(0,n.FW)("firstrunwizard","img","Nextcloud.webm")}),computed:{videoFallbackText:()=>t("firstrunwizard","Welcome to {cloudName}!",{cloudName:window.OC.theme.name})}};var u=r(3379),c=r.n(u),p=r(7795),f=r.n(p),d=r(569),h=r.n(d),m=r(3565),v=r.n(m),g=r(9216),y=r.n(g),A=r(4589),b=r.n(A),C=r(3392),w={};w.styleTagTransform=b(),w.setAttributes=v(),w.insert=h().bind(null,"head"),w.domAPI=f(),w.insertStyleElement=y();c()(C.Z,w);C.Z&&C.Z.locals&&C.Z.locals;var x=r(1900);const _=(0,x.Z)(l,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"video-wrapper"},[n("video",{ref:"video",attrs:{playsinline:"",autoplay:"",muted:""},domProps:{muted:!0}},[n("source",{attrs:{src:t.videoWebm,type:"video/webm"}}),t._v(" "),n("source",{attrs:{src:t.videoMp4,type:"video/mp4"}}),t._v("\n\t\t"+t._s(t.videoFallbackText)+"\n\t")])])}),[],!1,null,"70de3a6e",null).exports;var S=r(5108);const k={name:"App",components:{Modal:a()},data:()=>({showModal:!1,withIntro:!0,slides:[],currentSlide:0,fadeDirection:"next",slidesLoaded:!1}),computed:{slideList(){if(this.withIntro)return this.slides;return this.slides.slice(1)},hasNext(){return this.currentSlide<this.slideList.length-1},hasPrevious(){return this.currentSlide>0},isLast(){return this.currentSlide===this.slideList.length-1},isFirst(){return 0===this.currentSlide},startButtonText:()=>t("firstrunwizard","Start using {cloudName}",{cloudName:window.OC.theme.name})},async created(){this.slides=[_],window.addEventListener("resize",this.onResize)},beforeDestroy(){window.removeEventListener("resize",this.onResize)},methods:{async loadStaticSlides(){if(!this.slidesLoaded)try{const t=await s.Z.get((0,n.nu)("/apps/firstrunwizard/wizard"));this.slides.push(...t.data.slides),this.withIntro=t.data.hasVideo,this.slidesLoaded=!0}catch(t){S.error("Failed to load slides")}},async open(t=!0){await this.loadStaticSlides(),this.withIntro=this.withIntro&t,this.showModal=!0,this.currentSlide=0},close(){this.showModal=!1,s.Z.delete((0,n.nu)("/apps/firstrunwizard/wizard"))},next(){this.fadeDirection="next",this.isLast?this.close():this.currentSlide+=1},previous(){this.fadeDirection="previous",this.isFirst||(this.currentSlide-=1)}}};var E=r(6060),O={};O.styleTagTransform=b(),O.setAttributes=v(),O.insert=h().bind(null,"head"),O.domAPI=f(),O.insertStyleElement=y();c()(E.Z,O);E.Z&&E.Z.locals&&E.Z.locals;var j=r(4165),T={};T.styleTagTransform=b(),T.setAttributes=v(),T.insert=h().bind(null,"head"),T.domAPI=f(),T.insertStyleElement=y();c()(j.Z,T);j.Z&&j.Z.locals&&j.Z.locals;const B=(0,x.Z)(k,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.showModal&&t.slideList.length>0?n("Modal",{attrs:{id:"firstrunwizard",size:"large","has-previous":t.hasPrevious,"has-next":t.hasNext,"clear-view-delay":-1,name:"modal"},on:{previous:t.previous,next:t.next,close:t.close}},[0===t.currentSlide&&t.withIntro?t._e():n("div",{staticClass:"modal-header"},[n("div",{staticClass:"firstrunwizard-header"},[n("div",{staticClass:"logo"},[n("p",{staticClass:"hidden-visually"},[t._v("\n\t\t\t\t\t"+t._s(t.oc_defaults.name)+"\n\t\t\t\t")])]),t._v(" "),n("h2",{domProps:{innerHTML:t._s(t.oc_defaults.slogan)}}),t._v(" "),n("p")])]),t._v(" "),n("div",{staticClass:"modal-body"},[t.slideList.length>0?t._t("body",(function(){return[n("transition",{attrs:{name:t.fadeDirection,mode:"out-in"}},["inline"===t.slideList[t.currentSlide].type?n("div",{key:t.currentSlide,domProps:{innerHTML:t._s(t.slideList[t.currentSlide].content)}}):n(t.slideList[t.currentSlide],{tag:"div",on:{finished:function(e){t.currentSlide++}}})],1)]})):t._e()],2),t._v(" "),n("div",{staticClass:"modal-footer"},[t.isLast?n("button",{staticClass:"primary modal-default-button",on:{click:t.close}},[t._v("\n\t\t\t"+t._s(t.startButtonText)+"\n\t\t")]):t._e()])]):t._e()}),[],!1,null,"e75b1dfa",null).exports;r.p=(0,n.FW)("firstrunwizard","","js/"),e.default.prototype.t=o.translate,e.default.prototype.n=o.translatePlural,e.default.prototype.oc_defaults=window.oc_defaults;const N=document.createElement("div");N.id="firstrunwizard",document.querySelector("body").appendChild(N);const P=(new(e.default.extend(B))).$mount(N);window.OCA.FirstRunWizard={open:P.open}})()})();
+//# sourceMappingURL=firstrunwizard-main.js.map?v=8b8f74c4c728762acacd \ No newline at end of file
diff --git a/js/firstrunwizard-main.js.map b/js/firstrunwizard-main.js.map
index 1e3515ed..595f7ab4 100644
--- a/js/firstrunwizard-main.js.map
+++ b/js/firstrunwizard-main.js.map
@@ -1 +1 @@
-{"version":3,"sources":["webpack:///firstrunwizard/node_modules/@nextcloud/auth/dist/index.js","webpack:///firstrunwizard/node_modules/@nextcloud/auth/dist/requesttoken.js","webpack:///firstrunwizard/node_modules/@nextcloud/auth/dist/user.js","webpack:///firstrunwizard/node_modules/@nextcloud/axios/dist/index.js","webpack:///firstrunwizard/node_modules/@nextcloud/event-bus/dist/ProxyBus.js","webpack:///firstrunwizard/node_modules/@nextcloud/event-bus/dist/SimpleBus.js","webpack:///firstrunwizard/node_modules/@nextcloud/event-bus/dist/index.js","webpack:///firstrunwizard/node_modules/@nextcloud/l10n/dist/gettext.js","webpack:///firstrunwizard/node_modules/@nextcloud/l10n/dist/index.js","webpack:///firstrunwizard/node_modules/@nextcloud/router/dist/index.js","webpack:///firstrunwizard/node_modules/@nextcloud/vue/dist/Components/Modal.js","webpack:///firstrunwizard/node_modules/available-typed-arrays/index.js","webpack:///firstrunwizard/node_modules/axios/index.js","webpack:///firstrunwizard/node_modules/axios/lib/adapters/xhr.js","webpack:///firstrunwizard/node_modules/axios/lib/axios.js","webpack:///firstrunwizard/node_modules/axios/lib/cancel/Cancel.js","webpack:///firstrunwizard/node_modules/axios/lib/cancel/CancelToken.js","webpack:///firstrunwizard/node_modules/axios/lib/cancel/isCancel.js","webpack:///firstrunwizard/node_modules/axios/lib/core/Axios.js","webpack:///firstrunwizard/node_modules/axios/lib/core/InterceptorManager.js","webpack:///firstrunwizard/node_modules/axios/lib/core/buildFullPath.js","webpack:///firstrunwizard/node_modules/axios/lib/core/createError.js","webpack:///firstrunwizard/node_modules/axios/lib/core/dispatchRequest.js","webpack:///firstrunwizard/node_modules/axios/lib/core/enhanceError.js","webpack:///firstrunwizard/node_modules/axios/lib/core/mergeConfig.js","webpack:///firstrunwizard/node_modules/axios/lib/core/settle.js","webpack:///firstrunwizard/node_modules/axios/lib/core/transformData.js","webpack:///firstrunwizard/node_modules/axios/lib/defaults.js","webpack:///firstrunwizard/node_modules/axios/lib/env/data.js","webpack:///firstrunwizard/node_modules/axios/lib/helpers/bind.js","webpack:///firstrunwizard/node_modules/axios/lib/helpers/buildURL.js","webpack:///firstrunwizard/node_modules/axios/lib/helpers/combineURLs.js","webpack:///firstrunwizard/node_modules/axios/lib/helpers/cookies.js","webpack:///firstrunwizard/node_modules/axios/lib/helpers/isAbsoluteURL.js","webpack:///firstrunwizard/node_modules/axios/lib/helpers/isAxiosError.js","webpack:///firstrunwizard/node_modules/axios/lib/helpers/isURLSameOrigin.js","webpack:///firstrunwizard/node_modules/axios/lib/helpers/normalizeHeaderName.js","webpack:///firstrunwizard/node_modules/axios/lib/helpers/parseHeaders.js","webpack:///firstrunwizard/node_modules/axios/lib/helpers/spread.js","webpack:///firstrunwizard/node_modules/axios/lib/helpers/validator.js","webpack:///firstrunwizard/node_modules/axios/lib/utils.js","webpack:///firstrunwizard/node_modules/call-bind/callBound.js","webpack:///firstrunwizard/node_modules/call-bind/index.js","webpack:///firstrunwizard/node_modules/console-browserify/index.js","webpack:///firstrunwizard/node_modules/core-js/internals/a-function.js","webpack:///firstrunwizard/node_modules/core-js/internals/a-possible-prototype.js","webpack:///firstrunwizard/node_modules/core-js/internals/add-to-unscopables.js","webpack:///firstrunwizard/node_modules/core-js/internals/advance-string-index.js","webpack:///firstrunwizard/node_modules/core-js/internals/an-instance.js","webpack:///firstrunwizard/node_modules/core-js/internals/an-object.js","webpack:///firstrunwizard/node_modules/core-js/internals/array-for-each.js","webpack:///firstrunwizard/node_modules/core-js/internals/array-from.js","webpack:///firstrunwizard/node_modules/core-js/internals/array-includes.js","webpack:///firstrunwizard/node_modules/core-js/internals/array-iteration.js","webpack:///firstrunwizard/node_modules/core-js/internals/array-method-has-species-support.js","webpack:///firstrunwizard/node_modules/core-js/internals/array-method-is-strict.js","webpack:///firstrunwizard/node_modules/core-js/internals/array-method-uses-to-length.js","webpack:///firstrunwizard/node_modules/core-js/internals/array-species-create.js","webpack:///firstrunwizard/node_modules/core-js/internals/call-with-safe-iteration-closing.js","webpack:///firstrunwizard/node_modules/core-js/internals/check-correctness-of-iteration.js","webpack:///firstrunwizard/node_modules/core-js/internals/classof-raw.js","webpack:///firstrunwizard/node_modules/core-js/internals/classof.js","webpack:///firstrunwizard/node_modules/core-js/internals/collection-strong.js","webpack:///firstrunwizard/node_modules/core-js/internals/collection.js","webpack:///firstrunwizard/node_modules/core-js/internals/copy-constructor-properties.js","webpack:///firstrunwizard/node_modules/core-js/internals/correct-prototype-getter.js","webpack:///firstrunwizard/node_modules/core-js/internals/create-iterator-constructor.js","webpack:///firstrunwizard/node_modules/core-js/internals/create-non-enumerable-property.js","webpack:///firstrunwizard/node_modules/core-js/internals/create-property-descriptor.js","webpack:///firstrunwizard/node_modules/core-js/internals/create-property.js","webpack:///firstrunwizard/node_modules/core-js/internals/define-iterator.js","webpack:///firstrunwizard/node_modules/core-js/internals/define-well-known-symbol.js","webpack:///firstrunwizard/node_modules/core-js/internals/descriptors.js","webpack:///firstrunwizard/node_modules/core-js/internals/document-create-element.js","webpack:///firstrunwizard/node_modules/core-js/internals/dom-iterables.js","webpack:///firstrunwizard/node_modules/core-js/internals/engine-user-agent.js","webpack:///firstrunwizard/node_modules/core-js/internals/engine-v8-version.js","webpack:///firstrunwizard/node_modules/core-js/internals/enum-bug-keys.js","webpack:///firstrunwizard/node_modules/core-js/internals/export.js","webpack:///firstrunwizard/node_modules/core-js/internals/fails.js","webpack:///firstrunwizard/node_modules/core-js/internals/fix-regexp-well-known-symbol-logic.js","webpack:///firstrunwizard/node_modules/core-js/internals/freezing.js","webpack:///firstrunwizard/node_modules/core-js/internals/function-bind-context.js","webpack:///firstrunwizard/node_modules/core-js/internals/get-built-in.js","webpack:///firstrunwizard/node_modules/core-js/internals/get-iterator-method.js","webpack:///firstrunwizard/node_modules/core-js/internals/get-iterator.js","webpack:///firstrunwizard/node_modules/core-js/internals/global.js","webpack:///firstrunwizard/node_modules/core-js/internals/has.js","webpack:///firstrunwizard/node_modules/core-js/internals/hidden-keys.js","webpack:///firstrunwizard/node_modules/core-js/internals/html.js","webpack:///firstrunwizard/node_modules/core-js/internals/ie8-dom-define.js","webpack:///firstrunwizard/node_modules/core-js/internals/indexed-object.js","webpack:///firstrunwizard/node_modules/core-js/internals/inherit-if-required.js","webpack:///firstrunwizard/node_modules/core-js/internals/inspect-source.js","webpack:///firstrunwizard/node_modules/core-js/internals/internal-metadata.js","webpack:///firstrunwizard/node_modules/core-js/internals/internal-state.js","webpack:///firstrunwizard/node_modules/core-js/internals/is-array-iterator-method.js","webpack:///firstrunwizard/node_modules/core-js/internals/is-array.js","webpack:///firstrunwizard/node_modules/core-js/internals/is-forced.js","webpack:///firstrunwizard/node_modules/core-js/internals/is-object.js","webpack:///firstrunwizard/node_modules/core-js/internals/is-pure.js","webpack:///firstrunwizard/node_modules/core-js/internals/iterate.js","webpack:///firstrunwizard/node_modules/core-js/internals/iterators-core.js","webpack:///firstrunwizard/node_modules/core-js/internals/iterators.js","webpack:///firstrunwizard/node_modules/core-js/internals/native-symbol.js","webpack:///firstrunwizard/node_modules/core-js/internals/native-url.js","webpack:///firstrunwizard/node_modules/core-js/internals/native-weak-map.js","webpack:///firstrunwizard/node_modules/core-js/internals/object-assign.js","webpack:///firstrunwizard/node_modules/core-js/internals/object-create.js","webpack:///firstrunwizard/node_modules/core-js/internals/object-define-properties.js","webpack:///firstrunwizard/node_modules/core-js/internals/object-define-property.js","webpack:///firstrunwizard/node_modules/core-js/internals/object-get-own-property-descriptor.js","webpack:///firstrunwizard/node_modules/core-js/internals/object-get-own-property-names-external.js","webpack:///firstrunwizard/node_modules/core-js/internals/object-get-own-property-names.js","webpack:///firstrunwizard/node_modules/core-js/internals/object-get-own-property-symbols.js","webpack:///firstrunwizard/node_modules/core-js/internals/object-get-prototype-of.js","webpack:///firstrunwizard/node_modules/core-js/internals/object-keys-internal.js","webpack:///firstrunwizard/node_modules/core-js/internals/object-keys.js","webpack:///firstrunwizard/node_modules/core-js/internals/object-property-is-enumerable.js","webpack:///firstrunwizard/node_modules/core-js/internals/object-set-prototype-of.js","webpack:///firstrunwizard/node_modules/core-js/internals/object-to-string.js","webpack:///firstrunwizard/node_modules/core-js/internals/own-keys.js","webpack:///firstrunwizard/node_modules/core-js/internals/path.js","webpack:///firstrunwizard/node_modules/core-js/internals/redefine-all.js","webpack:///firstrunwizard/node_modules/core-js/internals/redefine.js","webpack:///firstrunwizard/node_modules/core-js/internals/regexp-exec-abstract.js","webpack:///firstrunwizard/node_modules/core-js/internals/regexp-exec.js","webpack:///firstrunwizard/node_modules/core-js/internals/regexp-flags.js","webpack:///firstrunwizard/node_modules/core-js/internals/regexp-sticky-helpers.js","webpack:///firstrunwizard/node_modules/core-js/internals/require-object-coercible.js","webpack:///firstrunwizard/node_modules/core-js/internals/set-global.js","webpack:///firstrunwizard/node_modules/core-js/internals/set-species.js","webpack:///firstrunwizard/node_modules/core-js/internals/set-to-string-tag.js","webpack:///firstrunwizard/node_modules/core-js/internals/shared-key.js","webpack:///firstrunwizard/node_modules/core-js/internals/shared-store.js","webpack:///firstrunwizard/node_modules/core-js/internals/shared.js","webpack:///firstrunwizard/node_modules/core-js/internals/string-multibyte.js","webpack:///firstrunwizard/node_modules/core-js/internals/string-punycode-to-ascii.js","webpack:///firstrunwizard/node_modules/core-js/internals/string-trim-forced.js","webpack:///firstrunwizard/node_modules/core-js/internals/string-trim.js","webpack:///firstrunwizard/node_modules/core-js/internals/to-absolute-index.js","webpack:///firstrunwizard/node_modules/core-js/internals/to-indexed-object.js","webpack:///firstrunwizard/node_modules/core-js/internals/to-integer.js","webpack:///firstrunwizard/node_modules/core-js/internals/to-length.js","webpack:///firstrunwizard/node_modules/core-js/internals/to-object.js","webpack:///firstrunwizard/node_modules/core-js/internals/to-primitive.js","webpack:///firstrunwizard/node_modules/core-js/internals/to-string-tag-support.js","webpack:///firstrunwizard/node_modules/core-js/internals/uid.js","webpack:///firstrunwizard/node_modules/core-js/internals/use-symbol-as-uid.js","webpack:///firstrunwizard/node_modules/core-js/internals/well-known-symbol-wrapped.js","webpack:///firstrunwizard/node_modules/core-js/internals/well-known-symbol.js","webpack:///firstrunwizard/node_modules/core-js/internals/whitespaces.js","webpack:///firstrunwizard/node_modules/core-js/modules/es.array.concat.js","webpack:///firstrunwizard/node_modules/core-js/modules/es.array.filter.js","webpack:///firstrunwizard/node_modules/core-js/modules/es.array.for-each.js","webpack:///firstrunwizard/node_modules/core-js/modules/es.array.from.js","webpack:///firstrunwizard/node_modules/core-js/modules/es.array.index-of.js","webpack:///firstrunwizard/node_modules/core-js/modules/es.array.iterator.js","webpack:///firstrunwizard/node_modules/core-js/modules/es.array.slice.js","webpack:///firstrunwizard/node_modules/core-js/modules/es.array.splice.js","webpack:///firstrunwizard/node_modules/core-js/modules/es.function.name.js","webpack:///firstrunwizard/node_modules/core-js/modules/es.map.js","webpack:///firstrunwizard/node_modules/core-js/modules/es.number.constructor.js","webpack:///firstrunwizard/node_modules/core-js/modules/es.object.assign.js","webpack:///firstrunwizard/node_modules/core-js/modules/es.object.get-own-property-descriptor.js","webpack:///firstrunwizard/node_modules/core-js/modules/es.object.get-own-property-descriptors.js","webpack:///firstrunwizard/node_modules/core-js/modules/es.object.keys.js","webpack:///firstrunwizard/node_modules/core-js/modules/es.object.to-string.js","webpack:///firstrunwizard/node_modules/core-js/modules/es.regexp.exec.js","webpack:///firstrunwizard/node_modules/core-js/modules/es.regexp.to-string.js","webpack:///firstrunwizard/node_modules/core-js/modules/es.string.iterator.js","webpack:///firstrunwizard/node_modules/core-js/modules/es.string.replace.js","webpack:///firstrunwizard/node_modules/core-js/modules/es.string.trim.js","webpack:///firstrunwizard/node_modules/core-js/modules/es.symbol.description.js","webpack:///firstrunwizard/node_modules/core-js/modules/es.symbol.iterator.js","webpack:///firstrunwizard/node_modules/core-js/modules/es.symbol.js","webpack:///firstrunwizard/node_modules/core-js/modules/web.dom-collections.for-each.js","webpack:///firstrunwizard/node_modules/core-js/modules/web.dom-collections.iterator.js","webpack:///firstrunwizard/node_modules/core-js/modules/web.url-search-params.js","webpack:///firstrunwizard/node_modules/core-js/modules/web.url.js","webpack:///firstrunwizard/src/App.vue?vue&type=style&index=0&lang=scss&","webpack:///firstrunwizard/src/App.vue?vue&type=style&index=1&id=063e1a6a&lang=scss&scoped=true&","webpack:///firstrunwizard/src/components/IntroVideo.vue?vue&type=style&index=0&id=70de3a6e&scoped=true&lang=scss&","webpack:///firstrunwizard/node_modules/css-loader/dist/runtime/api.js","webpack:///firstrunwizard/node_modules/css-loader/dist/runtime/sourceMaps.js","webpack:///firstrunwizard/node_modules/define-properties/index.js","webpack:///firstrunwizard/node_modules/es-abstract/helpers/getOwnPropertyDescriptor.js","webpack:///firstrunwizard/node_modules/es6-object-assign/index.js","webpack:///firstrunwizard/node_modules/foreach/index.js","webpack:///firstrunwizard/node_modules/function-bind/implementation.js","webpack:///firstrunwizard/node_modules/function-bind/index.js","webpack:///firstrunwizard/node_modules/get-intrinsic/index.js","webpack:///firstrunwizard/node_modules/hammerjs/hammer.js","webpack:///firstrunwizard/node_modules/has-symbols/index.js","webpack:///firstrunwizard/node_modules/has-symbols/shams.js","webpack:///firstrunwizard/node_modules/has-tostringtag/shams.js","webpack:///firstrunwizard/node_modules/has/src/index.js","webpack:///firstrunwizard/node_modules/is-arguments/index.js","webpack:///firstrunwizard/node_modules/is-generator-function/index.js","webpack:///firstrunwizard/node_modules/is-nan/implementation.js","webpack:///firstrunwizard/node_modules/is-nan/index.js","webpack:///firstrunwizard/node_modules/is-nan/polyfill.js","webpack:///firstrunwizard/node_modules/is-nan/shim.js","webpack:///firstrunwizard/node_modules/is-typed-array/index.js","webpack:///firstrunwizard/node_modules/lodash.get/index.js","webpack:///firstrunwizard/node_modules/lodash/_DataView.js","webpack:///firstrunwizard/node_modules/lodash/_Hash.js","webpack:///firstrunwizard/node_modules/lodash/_ListCache.js","webpack:///firstrunwizard/node_modules/lodash/_Map.js","webpack:///firstrunwizard/node_modules/lodash/_MapCache.js","webpack:///firstrunwizard/node_modules/lodash/_Promise.js","webpack:///firstrunwizard/node_modules/lodash/_Set.js","webpack:///firstrunwizard/node_modules/lodash/_SetCache.js","webpack:///firstrunwizard/node_modules/lodash/_Stack.js","webpack:///firstrunwizard/node_modules/lodash/_Symbol.js","webpack:///firstrunwizard/node_modules/lodash/_Uint8Array.js","webpack:///firstrunwizard/node_modules/lodash/_WeakMap.js","webpack:///firstrunwizard/node_modules/lodash/_apply.js","webpack:///firstrunwizard/node_modules/lodash/_arrayFilter.js","webpack:///firstrunwizard/node_modules/lodash/_arrayLikeKeys.js","webpack:///firstrunwizard/node_modules/lodash/_arrayPush.js","webpack:///firstrunwizard/node_modules/lodash/_arraySome.js","webpack:///firstrunwizard/node_modules/lodash/_assignMergeValue.js","webpack:///firstrunwizard/node_modules/lodash/_assignValue.js","webpack:///firstrunwizard/node_modules/lodash/_assocIndexOf.js","webpack:///firstrunwizard/node_modules/lodash/_baseAssignValue.js","webpack:///firstrunwizard/node_modules/lodash/_baseCreate.js","webpack:///firstrunwizard/node_modules/lodash/_baseFor.js","webpack:///firstrunwizard/node_modules/lodash/_baseGetAllKeys.js","webpack:///firstrunwizard/node_modules/lodash/_baseGetTag.js","webpack:///firstrunwizard/node_modules/lodash/_baseIsArguments.js","webpack:///firstrunwizard/node_modules/lodash/_baseIsEqual.js","webpack:///firstrunwizard/node_modules/lodash/_baseIsEqualDeep.js","webpack:///firstrunwizard/node_modules/lodash/_baseIsNative.js","webpack:///firstrunwizard/node_modules/lodash/_baseIsTypedArray.js","webpack:///firstrunwizard/node_modules/lodash/_baseKeys.js","webpack:///firstrunwizard/node_modules/lodash/_baseKeysIn.js","webpack:///firstrunwizard/node_modules/lodash/_baseMerge.js","webpack:///firstrunwizard/node_modules/lodash/_baseMergeDeep.js","webpack:///firstrunwizard/node_modules/lodash/_baseRest.js","webpack:///firstrunwizard/node_modules/lodash/_baseSetToString.js","webpack:///firstrunwizard/node_modules/lodash/_baseTimes.js","webpack:///firstrunwizard/node_modules/lodash/_baseUnary.js","webpack:///firstrunwizard/node_modules/lodash/_cacheHas.js","webpack:///firstrunwizard/node_modules/lodash/_cloneArrayBuffer.js","webpack:///firstrunwizard/node_modules/lodash/_cloneBuffer.js","webpack:///firstrunwizard/node_modules/lodash/_cloneTypedArray.js","webpack:///firstrunwizard/node_modules/lodash/_copyArray.js","webpack:///firstrunwizard/node_modules/lodash/_copyObject.js","webpack:///firstrunwizard/node_modules/lodash/_coreJsData.js","webpack:///firstrunwizard/node_modules/lodash/_createAssigner.js","webpack:///firstrunwizard/node_modules/lodash/_createBaseFor.js","webpack:///firstrunwizard/node_modules/lodash/_defineProperty.js","webpack:///firstrunwizard/node_modules/lodash/_equalArrays.js","webpack:///firstrunwizard/node_modules/lodash/_equalByTag.js","webpack:///firstrunwizard/node_modules/lodash/_equalObjects.js","webpack:///firstrunwizard/node_modules/lodash/_freeGlobal.js","webpack:///firstrunwizard/node_modules/lodash/_getAllKeys.js","webpack:///firstrunwizard/node_modules/lodash/_getMapData.js","webpack:///firstrunwizard/node_modules/lodash/_getNative.js","webpack:///firstrunwizard/node_modules/lodash/_getPrototype.js","webpack:///firstrunwizard/node_modules/lodash/_getRawTag.js","webpack:///firstrunwizard/node_modules/lodash/_getSymbols.js","webpack:///firstrunwizard/node_modules/lodash/_getTag.js","webpack:///firstrunwizard/node_modules/lodash/_getValue.js","webpack:///firstrunwizard/node_modules/lodash/_hashClear.js","webpack:///firstrunwizard/node_modules/lodash/_hashDelete.js","webpack:///firstrunwizard/node_modules/lodash/_hashGet.js","webpack:///firstrunwizard/node_modules/lodash/_hashHas.js","webpack:///firstrunwizard/node_modules/lodash/_hashSet.js","webpack:///firstrunwizard/node_modules/lodash/_initCloneObject.js","webpack:///firstrunwizard/node_modules/lodash/_isIndex.js","webpack:///firstrunwizard/node_modules/lodash/_isIterateeCall.js","webpack:///firstrunwizard/node_modules/lodash/_isKeyable.js","webpack:///firstrunwizard/node_modules/lodash/_isMasked.js","webpack:///firstrunwizard/node_modules/lodash/_isPrototype.js","webpack:///firstrunwizard/node_modules/lodash/_listCacheClear.js","webpack:///firstrunwizard/node_modules/lodash/_listCacheDelete.js","webpack:///firstrunwizard/node_modules/lodash/_listCacheGet.js","webpack:///firstrunwizard/node_modules/lodash/_listCacheHas.js","webpack:///firstrunwizard/node_modules/lodash/_listCacheSet.js","webpack:///firstrunwizard/node_modules/lodash/_mapCacheClear.js","webpack:///firstrunwizard/node_modules/lodash/_mapCacheDelete.js","webpack:///firstrunwizard/node_modules/lodash/_mapCacheGet.js","webpack:///firstrunwizard/node_modules/lodash/_mapCacheHas.js","webpack:///firstrunwizard/node_modules/lodash/_mapCacheSet.js","webpack:///firstrunwizard/node_modules/lodash/_mapToArray.js","webpack:///firstrunwizard/node_modules/lodash/_nativeCreate.js","webpack:///firstrunwizard/node_modules/lodash/_nativeKeys.js","webpack:///firstrunwizard/node_modules/lodash/_nativeKeysIn.js","webpack:///firstrunwizard/node_modules/lodash/_nodeUtil.js","webpack:///firstrunwizard/node_modules/lodash/_objectToString.js","webpack:///firstrunwizard/node_modules/lodash/_overArg.js","webpack:///firstrunwizard/node_modules/lodash/_overRest.js","webpack:///firstrunwizard/node_modules/lodash/_root.js","webpack:///firstrunwizard/node_modules/lodash/_safeGet.js","webpack:///firstrunwizard/node_modules/lodash/_setCacheAdd.js","webpack:///firstrunwizard/node_modules/lodash/_setCacheHas.js","webpack:///firstrunwizard/node_modules/lodash/_setToArray.js","webpack:///firstrunwizard/node_modules/lodash/_setToString.js","webpack:///firstrunwizard/node_modules/lodash/_shortOut.js","webpack:///firstrunwizard/node_modules/lodash/_stackClear.js","webpack:///firstrunwizard/node_modules/lodash/_stackDelete.js","webpack:///firstrunwizard/node_modules/lodash/_stackGet.js","webpack:///firstrunwizard/node_modules/lodash/_stackHas.js","webpack:///firstrunwizard/node_modules/lodash/_stackSet.js","webpack:///firstrunwizard/node_modules/lodash/_toSource.js","webpack:///firstrunwizard/node_modules/lodash/constant.js","webpack:///firstrunwizard/node_modules/lodash/eq.js","webpack:///firstrunwizard/node_modules/lodash/identity.js","webpack:///firstrunwizard/node_modules/lodash/isArguments.js","webpack:///firstrunwizard/node_modules/lodash/isArray.js","webpack:///firstrunwizard/node_modules/lodash/isArrayLike.js","webpack:///firstrunwizard/node_modules/lodash/isArrayLikeObject.js","webpack:///firstrunwizard/node_modules/lodash/isBuffer.js","webpack:///firstrunwizard/node_modules/lodash/isEqual.js","webpack:///firstrunwizard/node_modules/lodash/isFunction.js","webpack:///firstrunwizard/node_modules/lodash/isLength.js","webpack:///firstrunwizard/node_modules/lodash/isObject.js","webpack:///firstrunwizard/node_modules/lodash/isObjectLike.js","webpack:///firstrunwizard/node_modules/lodash/isPlainObject.js","webpack:///firstrunwizard/node_modules/lodash/isTypedArray.js","webpack:///firstrunwizard/node_modules/lodash/keys.js","webpack:///firstrunwizard/node_modules/lodash/keysIn.js","webpack:///firstrunwizard/node_modules/lodash/merge.js","webpack:///firstrunwizard/node_modules/lodash/stubArray.js","webpack:///firstrunwizard/node_modules/lodash/stubFalse.js","webpack:///firstrunwizard/node_modules/lodash/toPlainObject.js","webpack:///firstrunwizard/node_modules/node-gettext/lib/gettext.js","webpack:///firstrunwizard/node_modules/node-gettext/lib/plurals.js","webpack:///firstrunwizard/node_modules/node-polyfill-webpack-plugin/node_modules/assert/build/assert.js","webpack:///firstrunwizard/node_modules/node-polyfill-webpack-plugin/node_modules/assert/build/internal/assert/assertion_error.js","webpack:///firstrunwizard/node_modules/node-polyfill-webpack-plugin/node_modules/assert/build/internal/errors.js","webpack:///firstrunwizard/node_modules/node-polyfill-webpack-plugin/node_modules/assert/build/internal/util/comparisons.js","webpack:///firstrunwizard/node_modules/node-polyfill-webpack-plugin/node_modules/inherits/inherits_browser.js","webpack:///firstrunwizard/node_modules/node-polyfill-webpack-plugin/node_modules/util/support/isBufferBrowser.js","webpack:///firstrunwizard/node_modules/node-polyfill-webpack-plugin/node_modules/util/support/types.js","webpack:///firstrunwizard/node_modules/node-polyfill-webpack-plugin/node_modules/util/util.js","webpack:///firstrunwizard/node_modules/object-is/implementation.js","webpack:///firstrunwizard/node_modules/object-is/index.js","webpack:///firstrunwizard/node_modules/object-is/polyfill.js","webpack:///firstrunwizard/node_modules/object-is/shim.js","webpack:///firstrunwizard/node_modules/object-keys/implementation.js","webpack:///firstrunwizard/node_modules/object-keys/index.js","webpack:///firstrunwizard/node_modules/object-keys/isArguments.js","webpack:///firstrunwizard/node_modules/process/browser.js","webpack:///firstrunwizard/node_modules/semver/classes/semver.js","webpack:///firstrunwizard/node_modules/semver/functions/major.js","webpack:///firstrunwizard/node_modules/semver/functions/parse.js","webpack:///firstrunwizard/node_modules/semver/functions/valid.js","webpack:///firstrunwizard/node_modules/semver/internal/constants.js","webpack:///firstrunwizard/node_modules/semver/internal/debug.js","webpack:///firstrunwizard/node_modules/semver/internal/identifiers.js","webpack:///firstrunwizard/node_modules/semver/internal/parse-options.js","webpack:///firstrunwizard/node_modules/semver/internal/re.js","webpack:///firstrunwizard/node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js","webpack:///firstrunwizard/node_modules/style-loader/dist/runtime/insertBySelector.js","webpack:///firstrunwizard/node_modules/style-loader/dist/runtime/insertStyleElement.js","webpack:///firstrunwizard/node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js","webpack:///firstrunwizard/node_modules/style-loader/dist/runtime/styleDomAPI.js","webpack:///firstrunwizard/node_modules/style-loader/dist/runtime/styleTagTransform.js","webpack:///firstrunwizard/node_modules/@babel/runtime/helpers/esm/typeof.js","webpack:///firstrunwizard/node_modules/@babel/runtime/helpers/esm/defineProperty.js","webpack:///firstrunwizard/node_modules/@babel/runtime/helpers/esm/createClass.js","webpack:///firstrunwizard/node_modules/popper.js/dist/esm/popper.js","webpack:///firstrunwizard/node_modules/v-tooltip/node_modules/vue-resize/dist/vue-resize.esm.js","webpack:///firstrunwizard/node_modules/v-tooltip/dist/v-tooltip.esm.js","webpack:///firstrunwizard/node_modules/@babel/runtime/helpers/esm/classCallCheck.js","webpack:///firstrunwizard/node_modules/vue/dist/vue.runtime.esm.js","webpack:///firstrunwizard/node_modules/which-typed-array/index.js","webpack:///firstrunwizard/webpack/bootstrap","webpack:///firstrunwizard/webpack/runtime/compat get default export","webpack:///firstrunwizard/webpack/runtime/define property getters","webpack:///firstrunwizard/webpack/runtime/global","webpack:///firstrunwizard/webpack/runtime/hasOwnProperty shorthand","webpack:///firstrunwizard/webpack/runtime/make namespace object","webpack:///firstrunwizard/webpack/runtime/node module decorator","webpack:///firstrunwizard/webpack/runtime/publicPath","webpack:///firstrunwizard/src/components/IntroVideo.vue","webpack:///firstrunwizard/src/components/IntroVideo.vue?vue&type=script&lang=js&","webpack://firstrunwizard/./src/components/IntroVideo.vue?fbfe","webpack:///firstrunwizard/node_modules/vue-loader/lib/runtime/componentNormalizer.js","webpack://firstrunwizard/./src/components/IntroVideo.vue?a94f","webpack:///firstrunwizard/src/components/IntroVideo.vue?vue&type=template&id=70de3a6e&scoped=true&","webpack:///firstrunwizard/src/App.vue","webpack:///firstrunwizard/src/App.vue?vue&type=script&lang=js&","webpack://firstrunwizard/./src/App.vue?e404","webpack://firstrunwizard/./src/App.vue?85ec","webpack://firstrunwizard/./src/App.vue?f581","webpack:///firstrunwizard/src/App.vue?vue&type=template&id=063e1a6a&scoped=true&","webpack:///firstrunwizard/src/main.js"],"names":["Object","defineProperty","exports","value","enumerable","get","_requesttoken","getRequestToken","onRequestTokenUpdate","_user","getCurrentUser","token","observer","observers","push","_eventBus","tokenElement","document","getElementsByTagName","getAttribute","subscribe","e","forEach","console","error","uid","displayName","isAdmin","uidElement","displayNameElement","OC","isUserAdmin","obj","_getRequestToken","_axios","__esModule","default","_auth","client","create","headers","requesttoken","cancelableClient","assign","CancelToken","isCancel","defaults","_default","ProxyBus","_valid","_interopRequireDefault","_major","_defineProperties","target","props","i","length","descriptor","configurable","writable","key","packageJson","bus","instance","Constructor","TypeError","_classCallCheck","this","getVersion","warn","protoProps","staticProps","name","handler","unsubscribe","event","emit","prototype","SimpleBus","Map","handlers","set","concat","filter","h","_ProxyBus","_SimpleBus","window","_nc_event_bus","getGettextBuilder","GettextBuilder","_nodeGettext","_","_createClass","translations","debug","language","locale","setLanguage","getLanguage","replace","data","GettextWrapper","gt","sourceLocale","addTranslations","setLocale","translated","vars","a","b","r","toString","original","placeholders","arguments","undefined","subtitudePlaceholders","gettext","singular","plural","count","ngettext","getLocale","getCanonicalLocale","translate","app","text","options","L10N","translatePlural","textSingular","textPlural","getFirstDay","firstDay","getDayNames","dayNames","getDayNamesShort","dayNamesShort","getDayNamesMin","dayNamesMin","getMonthNames","monthNames","getMonthNamesShort","monthNamesShort","url","params","allOptions","escape","noRewrite","_build","encodeURIComponent","charAt","config","modRewriteWorking","getRootUrl","generateFilePath","type","file","isCore","coreApps","indexOf","link","substring","appswebroots","encodeURI","webroot","module","t","n","A","o","l","call","m","c","d","Symbol","toStringTag","bind","hasOwnProperty","p","s","Array","isArray","iterator","next","done","return","slice","constructor","from","test","btoa","unescape","JSON","stringify","sources","map","sourceRoot","join","Boolean","all","atob","querySelector","HTMLIFrameElement","contentDocument","head","identifier","base","u","css","media","sourceMap","references","updater","C","createElement","attributes","nonce","nc","keys","setAttribute","insert","Error","appendChild","styleSheet","cssText","createTextNode","childNodes","removeChild","insertBefore","g","removeAttribute","firstChild","singleton","parentNode","splice","render","staticRenderFns","_compiled","functional","_scopeId","$vnode","ssrContext","parent","__VUE_SSR_CONTEXT__","_registeredComponents","add","_ssrRegister","$root","$options","shadowRoot","_injectStyles","beforeCreate","hash","needQuotes","detectLocale","Actions","Activities","Choose","Close","Custom","Flags","Next","Objects","Previous","Search","Settings","Symbols","Submit","pluralId","msgid","msgid_plural","msgstr","addTranslation","build","version","names","mappings","sourcesContent","locals","VTooltip","defaultTemplate","defaultHtml","components","VPopover","mounted","$watch","$refs","popover","isOpen","$emit","$createElement","_self","_c","_g","_b","ref","attrs","$attrs","$listeners","_t","_v","slot","Math","random","substr","before","$slots","trim","util","$destroy","$el","remove","beforeUpdate","getText","computed","isLongText","methods","$parent","mixins","icon","String","title","closeAfterClick","ariaLabel","isIconUrl","URL","onClick","closeMenu","componentOptions","tag","f","getOwnPropertySymbols","getOwnPropertyDescriptor","apply","getOwnPropertyDescriptors","defineProperties","directives","tooltip","Popover","VNodes","vnodes","open","forceMenu","menuTitle","primary","defaultIcon","placement","boundariesElement","Element","container","disabled","actions","opened","focusIndex","randomId","children","$children","hasMultipleActions","isValidSingleAction","firstActionElement","firstActionVNode","firstAction","firstActionBinding","is","href","$props","to","exact","firstActionEvent","listeners","click","firstActionEventBinding","firstActionIconSlot","firstActionClass","staticClass","class","iconSlotIsPopulated","watch","beforeMount","initActions","openMenu","menuButton","focus","onOpen","$nextTick","focusFirstAction","onMouseFocusAction","activeElement","closest","menu","querySelectorAll","focusAction","removeCurrentActive","classList","focusPreviousAction","preventIfEvent","focusNextAction","focusLastAction","preventDefault","stopPropagation","execFirstAction","onFocus","onBlur","v","y","B","rawName","expression","modifiers","auto","rel","on","_d","blur","hidden","delay","show","hide","_s","tabindex","keydown","_k","keyCode","ctrlKey","shiftKey","altKey","metaKey","mousemove","id","_e","isFocusable","focusable","style","backgroundImage","domProps","textContent","start","Date","setTimeout","pause","clearTimeout","clear","getTimeLeft","getStateRunning","ActionButton","hasPrevious","hasNext","outTransition","enableSlideshow","clearViewDelay","Number","slideshowDelay","slideshowPaused","enableSwipe","spreadNavigation","size","validator","canClose","dark","mc","showModal","clearView","clearViewTimeout","playing","slideshowTimeout","modalTransitionName","playPauseTitle","addEventListener","handleKeydown","beforeDestroy","removeEventListener","off","destroy","handleMouseMove","mask","handleSwipe","body","lastChild","destroyed","previous","resetSlideshow","close","togglePlayPause","handleSlideshow","clearSlideshowTimeout","touchmove","invisible","height","width","stroke","fill","cx","cy","mousedown","currentTarget","possibleNames","globalThis","out","utils","settle","cookies","buildURL","buildFullPath","parseHeaders","isURLSameOrigin","createError","Cancel","Promise","resolve","reject","onCanceled","requestData","requestHeaders","responseType","cancelToken","signal","isFormData","request","XMLHttpRequest","auth","username","password","Authorization","fullPath","baseURL","onloadend","responseHeaders","getAllResponseHeaders","response","responseText","status","statusText","err","method","toUpperCase","paramsSerializer","timeout","onreadystatechange","readyState","responseURL","onabort","onerror","ontimeout","timeoutErrorMessage","transitional","clarifyTimeoutError","isStandardBrowserEnv","xsrfValue","withCredentials","xsrfCookieName","read","xsrfHeaderName","val","toLowerCase","setRequestHeader","isUndefined","onDownloadProgress","onUploadProgress","upload","cancel","abort","aborted","send","Axios","mergeConfig","axios","createInstance","defaultConfig","context","extend","instanceConfig","VERSION","promises","spread","isAxiosError","message","__CANCEL__","executor","resolvePromise","promise","then","_listeners","onfulfilled","_resolve","reason","throwIfRequested","listener","index","source","InterceptorManager","dispatchRequest","validators","interceptors","assertOptions","silentJSONParsing","boolean","forcedJSONParsing","requestInterceptorChain","synchronousRequestInterceptors","interceptor","runWhen","synchronous","unshift","fulfilled","rejected","responseInterceptorChain","chain","shift","newConfig","onFulfilled","onRejected","getUri","use","eject","fn","isAbsoluteURL","combineURLs","requestedURL","enhanceError","code","transformData","throwIfCancellationRequested","transformRequest","merge","common","adapter","transformResponse","toJSON","description","number","fileName","lineNumber","columnNumber","stack","config1","config2","getMergedValue","isPlainObject","mergeDeepProperties","prop","valueFromConfig2","defaultToConfig2","mergeDirectKeys","mergeMap","configValue","validateStatus","fns","normalizeHeaderName","DEFAULT_CONTENT_TYPE","setContentTypeIfUnset","process","isArrayBuffer","isBuffer","isStream","isFile","isBlob","isArrayBufferView","buffer","isURLSearchParams","isObject","rawValue","parser","encoder","isString","parse","stringifySafely","strictJSONParsing","maxContentLength","maxBodyLength","thisArg","args","encode","serializedParams","parts","isDate","toISOString","hashmarkIndex","relativeURL","write","expires","path","domain","secure","cookie","isNumber","toGMTString","match","RegExp","decodeURIComponent","now","payload","originURL","msie","navigator","userAgent","urlParsingNode","resolveURL","protocol","host","search","hostname","port","pathname","location","requestURL","parsed","normalizedName","ignoreDuplicateOf","split","line","callback","arr","thing","deprecatedWarnings","formatMessage","opt","desc","opts","schema","allowUnknown","result","getPrototypeOf","isFunction","FormData","ArrayBuffer","isView","pipe","URLSearchParams","product","assignValue","str","stripBOM","content","charCodeAt","GetIntrinsic","callBind","$indexOf","allowMissing","intrinsic","$apply","$call","$reflectApply","$gOPD","$defineProperty","$max","originalFunction","func","applyBind","assert","getTime","times","functions","log","label","time","duration","format","object","inspect","ok","tuple","it","wellKnownSymbol","definePropertyModule","UNSCOPABLES","ArrayPrototype","S","unicode","$forEach","arrayMethodIsStrict","arrayMethodUsesToLength","STRICT_METHOD","USES_TO_LENGTH","callbackfn","toObject","callWithSafeIterationClosing","isArrayIteratorMethod","toLength","createProperty","getIteratorMethod","arrayLike","step","O","argumentsLength","mapfn","mapping","iteratorMethod","toIndexedObject","toAbsoluteIndex","createMethod","IS_INCLUDES","$this","el","fromIndex","includes","IndexedObject","arraySpeciesCreate","TYPE","IS_MAP","IS_FILTER","IS_SOME","IS_EVERY","IS_FIND_INDEX","NO_HOLES","that","specificCreate","self","boundFunction","some","every","find","findIndex","fails","V8_VERSION","SPECIES","METHOD_NAME","array","foo","argument","DESCRIPTORS","has","cache","thrower","ACCESSORS","argument0","argument1","originalArray","anObject","ENTRIES","returnMethod","ITERATOR","SAFE_CLOSING","called","iteratorWithReturn","exec","SKIP_CLOSING","ITERATION_SUPPORT","TO_STRING_TAG_SUPPORT","classofRaw","TO_STRING_TAG","CORRECT_ARGUMENTS","tryGet","callee","redefineAll","anInstance","iterate","defineIterator","setSpecies","fastKey","InternalStateModule","setInternalState","internalStateGetterFor","getterFor","getConstructor","wrapper","CONSTRUCTOR_NAME","ADDER","iterable","first","last","getInternalState","define","state","entry","getEntry","removed","prev","setStrong","ITERATOR_NAME","getInternalCollectionState","getInternalIteratorState","iterated","kind","$","global","isForced","redefine","InternalMetadataModule","checkCorrectnessOfIteration","setToStringTag","inheritIfRequired","IS_WEAK","NativeConstructor","NativePrototype","exported","fixMethod","KEY","nativeMethod","entries","REQUIRED","HASNT_CHAINING","THROWS_ON_PRIMITIVES","ACCEPT_ITERABLES","BUGGY_ZERO","$instance","dummy","forced","ownKeys","getOwnPropertyDescriptorModule","F","IteratorPrototype","createPropertyDescriptor","Iterators","returnThis","IteratorConstructor","NAME","bitmap","toPrimitive","propertyKey","createIteratorConstructor","setPrototypeOf","createNonEnumerableProperty","IS_PURE","IteratorsCore","BUGGY_SAFARI_ITERATORS","KEYS","VALUES","Iterable","DEFAULT","IS_SET","FORCED","CurrentIteratorPrototype","getIterationMethod","KIND","defaultIterator","IterablePrototype","INCORRECT_VALUES_NAME","nativeIterator","anyNativeIterator","values","proto","wrappedWellKnownSymbolModule","EXISTS","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","getBuiltIn","versions","v8","setGlobal","copyConstructorProperties","targetProperty","sourceProperty","TARGET","GLOBAL","STATIC","stat","noTargetGet","sham","regexpExec","REPLACE_SUPPORTS_NAMED_GROUPS","re","groups","REPLACE_KEEPS_$0","REPLACE","REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE","SPLIT_WORKS_WITH_OVERWRITTEN_EXEC","originalExec","SYMBOL","DELEGATES_TO_SYMBOL","DELEGATES_TO_EXEC","execCalled","flags","nativeRegExpMethod","regexp","arg2","forceStringMethod","stringMethod","regexMethod","string","arg","isExtensible","preventExtensions","aFunction","variable","namespace","classof","check","Function","propertyIsEnumerable","Wrapper","NewTarget","NewTargetPrototype","store","functionToString","inspectSource","hiddenKeys","FREEZING","METADATA","setMetadata","objectID","weakData","meta","getWeakData","onFreeze","NATIVE_WEAK_MAP","objectHas","sharedKey","WeakMap","wmget","wmhas","wmset","metadata","STATE","enforce","replacement","feature","detection","normalize","POLYFILL","NATIVE","Result","stopped","AS_ENTRIES","IS_ITERATOR","iterFn","stop","PrototypeOfArrayIteratorPrototype","arrayIterator","searchParams","sort","objectKeys","getOwnPropertySymbolsModule","propertyIsEnumerableModule","nativeAssign","symbol","alphabet","chr","T","j","activeXDocument","enumBugKeys","html","documentCreateElement","IE_PROTO","EmptyConstructor","scriptTag","LT","NullProtoObject","ActiveXObject","iframeDocument","iframe","temp","parentWindow","NullProtoObjectViaActiveX","display","src","contentWindow","Properties","IE8_DOM_DEFINE","nativeDefineProperty","P","Attributes","nativeGetOwnPropertyDescriptor","nativeGetOwnPropertyNames","windowNames","getOwnPropertyNames","getWindowNames","internalObjectKeys","CORRECT_PROTOTYPE_GETTER","ObjectPrototype","nativePropertyIsEnumerable","NASHORN_BUG","V","aPossiblePrototype","setter","CORRECT_SETTER","__proto__","getOwnPropertyNamesModule","enforceInternalState","TEMPLATE","unsafe","simple","R","re1","re2","regexpFlags","stickyHelpers","nativeExec","nativeReplace","patchedExec","UPDATES_LAST_INDEX_WRONG","lastIndex","UNSUPPORTED_Y","BROKEN_CARET","NPCG_INCLUDED","reCopy","sticky","charsAdded","strCopy","multiline","input","ignoreCase","dotAll","RE","TAG","shared","SHARED","mode","copyright","toInteger","requireObjectCoercible","CONVERT_TO_STRING","pos","second","position","codeAt","maxInt","regexNonASCII","regexSeparators","OVERFLOW_ERROR","floor","stringFromCharCode","fromCharCode","digitToBasic","digit","adapt","delta","numPoints","firstTime","k","baseMinusTMin","output","counter","extra","ucs2decode","currentValue","inputLength","bias","basicLength","handledCPCount","handledCPCountPlusOne","RangeError","q","qMinusT","baseMinusT","encoded","labels","whitespaces","whitespace","ltrim","rtrim","end","max","min","integer","ceil","isNaN","PREFERRED_STRING","valueOf","postfix","NATIVE_SYMBOL","USE_SYMBOL_AS_UID","WellKnownSymbolsStore","createWellKnownSymbol","withoutSetter","arrayMethodHasSpeciesSupport","IS_CONCAT_SPREADABLE","MAX_SAFE_INTEGER","MAXIMUM_ALLOWED_INDEX_EXCEEDED","IS_CONCAT_SPREADABLE_SUPPORT","SPECIES_SUPPORT","isConcatSpreadable","spreadable","len","E","$filter","HAS_SPECIES_SUPPORT","nativeIndexOf","NEGATIVE_ZERO","searchElement","addToUnscopables","ARRAY_ITERATOR","Arguments","nativeSlice","fin","MAXIMUM_ALLOWED_LENGTH_EXCEEDED","deleteCount","insertCount","actualDeleteCount","actualStart","FunctionPrototype","FunctionPrototypeToString","nameRE","collection","collectionStrong","init","NUMBER","NativeNumber","NumberPrototype","BROKEN_CLASSOF","toNumber","third","radix","maxCode","digits","NaN","parseInt","NumberWrapper","FAILS_ON_PRIMITIVES","nativeKeys","TO_STRING","RegExpPrototype","nativeToString","NOT_GENERIC","INCORRECT_NAME","rf","STRING_ITERATOR","point","fixRegExpWellKnownSymbolLogic","advanceStringIndex","regExpExec","SUBSTITUTION_SYMBOLS","SUBSTITUTION_SYMBOLS_NO_NAMED","maybeCallNative","UNSAFE_SUBSTITUTE","searchValue","replaceValue","replacer","res","rx","functionalReplace","fullUnicode","results","accumulatedResult","nextSourcePosition","matched","captures","namedCaptures","replacerArgs","getSubstitution","tailPos","symbols","ch","capture","$trim","forcedStringTrimMethod","NativeSymbol","EmptyStringDescriptionStore","SymbolWrapper","symbolPrototype","symbolToString","native","defineWellKnownSymbol","nativeObjectCreate","getOwnPropertyNamesExternal","HIDDEN","TO_PRIMITIVE","$Symbol","$stringify","AllSymbols","ObjectPrototypeSymbols","StringToSymbolRegistry","SymbolToStringRegistry","QObject","USE_SETTER","findChild","setSymbolDescriptor","ObjectPrototypeDescriptor","wrap","isSymbol","$defineProperties","properties","$getOwnPropertySymbols","$propertyIsEnumerable","$getOwnPropertyDescriptor","$getOwnPropertyNames","IS_OBJECT_PROTOTYPE","keyFor","sym","useSetter","useSimple","space","$replacer","DOMIterables","COLLECTION_NAME","Collection","CollectionPrototype","ArrayIteratorMethods","ArrayValues","USE_NATIVE_URL","hasOwn","getIterator","$fetch","Headers","URL_SEARCH_PARAMS","URL_SEARCH_PARAMS_ITERATOR","getInternalParamsState","plus","sequences","percentSequence","bytes","percentDecode","sequence","deserialize","serialize","parseSearchParams","query","attribute","updateSearchParams","validateArgumentsLength","passed","required","URLSearchParamsIterator","URLSearchParamsConstructor","entryIterator","entryNext","updateURL","URLSearchParamsPrototype","append","getAll","found","entriesIndex","sliceIndex","fetch","getState","EOF","arrayFrom","toASCII","URLSearchParamsModule","NativeURL","getInternalSearchParamsState","getInternalURLState","pow","INVALID_SCHEME","INVALID_HOST","INVALID_PORT","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","pop","numbersSeen","ipv4Piece","swaps","swap","address","pieceIndex","compress","pointer","char","serializeHost","ignore0","ipv6","maxIndex","maxLength","currStart","currLength","findLongestZeroSequence","fragmentPercentEncodeSet","pathPercentEncodeSet","userinfoPercentEncodeSet","specialSchemes","ftp","http","https","ws","wss","scheme","includesCredentials","cannotHaveUsernamePasswordPort","cannotBeABaseURL","isWindowsDriveLetter","normalized","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","serializeURL","origin","getOrigin","getProtocol","getUsername","getPassword","getHost","getHostname","getPort","getPathname","getSearch","getSearchParams","getHash","URLPrototype","accessorDescriptor","getter","nativeCreateObjectURL","createObjectURL","nativeRevokeObjectURL","revokeObjectURL","blob","___CSS_LOADER_EXPORT___","cssWithMappingToString","list","item","needLayer","modules","dedupe","supports","layer","alreadyImportedModules","cssMapping","base64","sourceMapping","sourceURLs","hasSymbols","toStr","origDefineProperty","supportsDescriptors","x","arePropertyDescriptorsSupported","predicate","predicates","firstSource","nextSource","keysArray","nextIndex","nextKey","polyfill","ctx","ERROR_MESSAGE","funcType","bound","binder","boundLength","boundArgs","Empty","implementation","$SyntaxError","SyntaxError","$Function","$TypeError","getEvalledConstructor","expressionSyntax","throwTypeError","ThrowTypeError","calleeThrows","gOPDthrows","getProto","needsEval","TypedArray","Uint8Array","INTRINSICS","AggregateError","Atomics","BigInt","DataView","decodeURI","eval","EvalError","Float32Array","Float64Array","FinalizationRegistry","Int8Array","Int16Array","Int32Array","isFinite","parseFloat","Proxy","ReferenceError","Reflect","Set","SharedArrayBuffer","Uint8ClampedArray","Uint16Array","Uint32Array","URIError","WeakRef","WeakSet","doEval","gen","LEGACY_ALIASES","$concat","$spliceApply","$replace","$strSlice","rePropName","reEscapeChar","stringToPath","quote","subString","getBaseIntrinsic","alias","intrinsicName","intrinsicBaseName","intrinsicRealName","skipFurtherCaching","isOwn","exportName","VENDOR_PREFIXES","TEST_ELEMENT","round","abs","setTimeoutContext","bindFn","invokeArrayArg","each","deprecate","deprecationMessage","dest","inherit","child","childP","baseP","_super","boolOrFn","ifUndefined","val1","val2","addEventListeners","types","splitStr","removeEventListeners","hasParent","node","inStr","inArray","findByKey","toArray","uniqueArray","prefixed","property","prefix","camelProp","_uniqueId","getWindowForElement","element","doc","ownerDocument","defaultView","SUPPORT_TOUCH","SUPPORT_POINTER_EVENTS","SUPPORT_ONLY_TOUCH","INPUT_TYPE_TOUCH","INPUT_TYPE_MOUSE","DIRECTION_VERTICAL","DIRECTION_UP","PROPS_XY","PROPS_CLIENT_XY","Input","manager","inputTarget","domHandler","ev","enable","inputHandler","eventType","pointersLen","pointers","changedPointersLen","changedPointers","isFirst","isFinal","session","pointersLength","firstInput","simpleCloneInputData","firstMultiple","offsetCenter","center","getCenter","timeStamp","deltaTime","angle","getAngle","distance","getDistance","offset","offsetDelta","prevDelta","prevInput","deltaX","deltaY","computeDeltaXY","offsetDirection","getDirection","overallVelocity","getVelocity","overallVelocityX","overallVelocityY","scale","rotation","getRotation","maxPointers","velocity","velocityX","velocityY","direction","lastInterval","computeIntervalInputData","srcEvent","computeInputData","recognize","clientX","clientY","p1","p2","sqrt","atan2","PI","evEl","evTarget","evWin","MOUSE_INPUT_MAP","mouseup","MOUSE_ELEMENT_EVENTS","MOUSE_WINDOW_EVENTS","MouseInput","pressed","button","which","pointerType","POINTER_INPUT_MAP","pointerdown","pointermove","pointerup","pointercancel","pointerout","IE10_POINTER_TYPE_ENUM","POINTER_ELEMENT_EVENTS","POINTER_WINDOW_EVENTS","PointerEventInput","pointerEvents","MSPointerEvent","PointerEvent","removePointer","eventTypeNormalized","isTouch","storeIndex","pointerId","SINGLE_TOUCH_INPUT_MAP","touchstart","touchend","touchcancel","SINGLE_TOUCH_TARGET_EVENTS","SINGLE_TOUCH_WINDOW_EVENTS","SingleTouchInput","started","normalizeSingleTouches","touches","changed","changedTouches","TOUCH_INPUT_MAP","TOUCH_TARGET_EVENTS","TouchInput","targetIds","getTouches","allTouches","targetTouches","changedTargetTouches","touch","TouchMouseInput","mouse","primaryTouch","lastTouches","recordTouches","eventData","setLastTouch","lastTouch","lts","isSyntheticEvent","dx","dy","inputEvent","inputData","isMouse","sourceCapabilities","firesTouchEvents","PREFIXED_TOUCH_ACTION","NATIVE_TOUCH_ACTION","TOUCH_ACTION_COMPUTE","TOUCH_ACTION_AUTO","TOUCH_ACTION_MANIPULATION","TOUCH_ACTION_NONE","TOUCH_ACTION_PAN_X","TOUCH_ACTION_PAN_Y","TOUCH_ACTION_MAP","touchMap","cssSupports","CSS","getTouchActionProps","TouchAction","compute","update","touchAction","recognizers","recognizer","getTouchAction","hasPanX","hasPanY","cleanTouchActions","preventDefaults","prevented","hasNone","isTapPointer","isTapMovement","isTapTouchTime","DIRECTION_LEFT","preventSrc","STATE_FAILED","Recognizer","simultaneous","requireFail","stateStr","directionStr","getRecognizerByNameIfManager","otherRecognizer","AttrRecognizer","PanRecognizer","pX","pY","PinchRecognizer","PressRecognizer","_timer","_input","RotateRecognizer","SwipeRecognizer","TapRecognizer","pTime","pCenter","Hammer","preset","Manager","recognizeWith","dropRecognizeWith","requireFailure","dropRequireFailure","hasRequireFailures","canRecognizeWith","additionalEvent","tryEmit","canEmit","inputDataClone","reset","attrTest","optionPointers","isRecognized","isValid","threshold","DIRECTION_HORIZONTAL","directionTest","hasMoved","inOut","validPointers","validMovement","validTime","taps","interval","posThreshold","validTouchTime","failTimeout","validInterval","validMultiTap","tapCount","domEvents","inputClass","cssProps","userSelect","touchSelect","touchCallout","contentZooming","userDrag","tapHighlightColor","oldCssProps","toggleCssProps","force","curRecognizer","existing","events","gestureEvent","createEvent","initEvent","gesture","dispatchEvent","triggerDomEvent","INPUT_START","INPUT_MOVE","INPUT_END","INPUT_CANCEL","STATE_POSSIBLE","STATE_BEGAN","STATE_CHANGED","STATE_ENDED","STATE_RECOGNIZED","STATE_CANCELLED","DIRECTION_NONE","DIRECTION_RIGHT","DIRECTION_DOWN","DIRECTION_ALL","Tap","Pan","Swipe","Pinch","Rotate","Press","origSymbol","hasSymbolSham","symObj","syms","hasToStringTag","$toString","callBound","isStandardArguments","isLegacyArguments","supportsStandardArguments","GeneratorFunction","fnToStr","isFnRegex","generatorFunc","getGeneratorFunc","getPolyfill","shim","availableTypedArrays","typedArrays","$slice","toStrTags","gOPD","typedArray","superProto","anyTrue","tryTypedArrays","HASH_UNDEFINED","funcTag","genTag","reIsDeepProp","reIsPlainProp","reLeadingDot","reIsHostCtor","freeGlobal","freeSelf","root","arrayProto","funcProto","objectProto","coreJsData","maskSrcKey","funcToString","objectToString","reIsNative","getNative","nativeCreate","symbolProto","Hash","ListCache","MapCache","assocIndexOf","other","baseGet","isKey","toKey","baseIsNative","pattern","isHostObject","toSource","getMapData","__data__","getValue","memoize","baseToString","resolver","memoized","Cache","isObjectLike","defaultValue","hashClear","hashDelete","hashGet","hashHas","hashSet","listCacheClear","listCacheDelete","listCacheGet","listCacheHas","listCacheSet","mapCacheClear","mapCacheDelete","mapCacheGet","mapCacheHas","mapCacheSet","setCacheAdd","setCacheHas","SetCache","stackClear","stackDelete","stackGet","stackHas","stackSet","Stack","resIndex","baseTimes","isArguments","isIndex","isTypedArray","inherited","isArr","isArg","isBuff","isType","skipIndexes","baseAssignValue","eq","objValue","objectCreate","baseCreate","baseFor","createBaseFor","arrayPush","keysFunc","symbolsFunc","getRawTag","symToStringTag","baseGetTag","baseIsEqualDeep","baseIsEqual","bitmask","customizer","equalArrays","equalByTag","equalObjects","getTag","argsTag","arrayTag","objectTag","equalFunc","objIsArr","othIsArr","objTag","othTag","objIsObj","othIsObj","isSameTag","objIsWrapped","othIsWrapped","objUnwrapped","othUnwrapped","isMasked","isLength","typedArrayTags","isPrototype","nativeKeysIn","isProto","assignMergeValue","baseMergeDeep","keysIn","safeGet","baseMerge","srcIndex","srcValue","newValue","cloneBuffer","cloneTypedArray","copyArray","initCloneObject","isArrayLikeObject","toPlainObject","mergeFunc","stacked","isCommon","isTyped","identity","overRest","setToString","constant","baseSetToString","iteratee","arrayBuffer","byteLength","freeExports","nodeType","freeModule","Buffer","allocUnsafe","isDeep","copy","cloneArrayBuffer","byteOffset","isNew","baseRest","isIterateeCall","assigner","guard","fromRight","arraySome","cacheHas","isPartial","arrLength","othLength","arrStacked","othStacked","seen","arrValue","othValue","compared","othIndex","mapToArray","setToArray","symbolValueOf","convert","getAllKeys","objProps","objLength","objStacked","skipCtor","objCtor","othCtor","baseGetAllKeys","getSymbols","isKeyable","getPrototype","overArg","nativeObjectToString","unmasked","arrayFilter","stubArray","nativeGetSymbols","mapTag","promiseTag","setTag","weakMapTag","dataViewTag","dataViewCtorString","mapCtorString","promiseCtorString","setCtorString","weakMapCtorString","Ctor","ctorString","reIsUint","isArrayLike","freeProcess","nodeUtil","require","binding","transform","nativeMax","otherArgs","shortOut","nativeNow","lastCalled","stamp","remaining","pairs","LARGE_ARRAY_SIZE","baseIsArguments","stubFalse","objectCtorString","baseIsTypedArray","baseUnary","nodeIsTypedArray","arrayLikeKeys","baseKeys","baseKeysIn","createAssigner","copyObject","plurals","Gettext","catalogs","eventName","setTextDomain","dnpgettext","dgettext","msgidPlural","dngettext","pgettext","msgctxt","dpgettext","npgettext","translation","defaultTranslation","_getTranslation","pluralsFunc","getLanguageCode","getComment","comments","textdomain","setlocale","addTextdomain","ach","examples","sample","nplurals","pluralsText","af","ak","am","an","ar","arn","ast","ay","az","be","bg","bn","bo","br","brx","bs","ca","cgg","cs","csb","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","ms","mt","my","nah","nap","nb","ne","nl","nn","no","nso","oc","or","pa","pap","pl","pms","ps","pt","rm","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","_typeof","isDeepEqual","isDeepStrictEqual","_require$codes","codes","ERR_AMBIGUOUS_ARGUMENT","ERR_INVALID_ARG_TYPE","ERR_INVALID_ARG_VALUE","ERR_INVALID_RETURN_VALUE","ERR_MISSING_ARGS","AssertionError","_require$types","isPromise","isRegExp","objectAssign","objectIs","lazyLoadComparison","comparison","warned","NO_EXCEPTION_SENTINEL","innerFail","innerOk","argLen","generatedMessage","actual","expected","operator","stackStartFn","_len","_key","fail","internalMessage","argsLen","emitWarning","errArgs","equal","notEqual","deepEqual","notDeepEqual","deepStrictEqual","notDeepStrictEqual","strictEqual","notStrictEqual","Comparison","_this","compareExceptionKey","expectedException","msg","isPrototypeOf","getActual","checkIsPromise","catch","waitForActual","promiseFn","resultPromise","expectsError","details","fnType","expectsNoError","strict","_len6","_key6","throws","_len2","_key2","rejects","_len3","_key3","doesNotThrow","_len4","_key4","doesNotReject","_len5","_key5","ifError","newErr","origStack","tmp2","tmp1","_defineProperty","_possibleConstructorReturn","_assertThisInitialized","_wrapNativeSuper","Class","_cache","_construct","_getPrototypeOf","_setPrototypeOf","isNativeReflectConstruct","construct","Parent","endsWith","this_len","blue","green","red","white","kReadableOperator","strictEqualObject","notStrictEqualObject","notIdentical","copyError","inspectValue","compact","customInspect","depth","maxArrayLength","Infinity","showHidden","breakLength","showProxy","sorted","getters","createErrDiff","lastPos","skipped","actualInspected","actualLines","expectedLines","indicator","stderr","isTTY","columns","maxCount","repeat","maxLines","_actualLines","printedLines","skippedMsg","cur","expectedLine","actualLine","divergingLines","_Error","limit","stackTraceLimit","getColorDepth","_res","knownOperators","captureStackTrace","subClass","superClass","_inherits","custom","recurseTimes","_objectSpread","createErrorType","Base","NodeError","_Base","arg1","arg3","getMessage","oneOf","determiner","inspected","_slicedToArray","_arrayWithHoles","_arr","_n","_i","_iterableToArrayLimit","_nonIterableRest","regexFlagsSupported","arrayFromSet","arrayFromMap","objectGetOwnPropertySymbols","numberIsNaN","uncurryThis","isAnyArrayBuffer","isMap","isSet","isNativeError","isBoxedPrimitive","isNumberObject","isStringObject","isBooleanObject","isBigIntObject","isSymbolObject","isFloat32Array","isFloat64Array","isNonIndex","getOwnNonIndexProperties","compare","innerDeepEqual","memos","buf1","buf2","val1Tag","keys1","keys2","keyCheck","areSimilarTypedArrays","areSimilarFloatArrays","_keys","_keys2","isEqualBoxedPrimitive","getEnumerables","iterationType","aKeys","bKeys","symbolKeysA","symbolKeysB","_symbolKeysB","val2MemoA","val2MemoB","areEq","objEquiv","delete","setHasEqualElement","memo","setValues","findLooseMatchingPrimitives","prim","setMightHaveLoosePrim","altValue","mapMightHaveLoosePrim","curB","mapHasEqualEntry","key1","item1","key2","aValues","bValues","_val","setEquiv","aEntries","_aEntries$i","item2","bEntries","_i2","_bEntries$_i","mapEquiv","keysA","ctor","superCtor","super_","TempCtor","readUInt8","isArgumentsObject","isGeneratorFunction","whichTypedArray","BigIntSupported","SymbolSupported","ObjectToString","numberValue","stringValue","booleanValue","bigIntValue","symbolValue","checkBoxedPrimitive","prototypeValueOf","isMapToString","isSetToString","isWeakMapToString","isWeakSetToString","isArrayBufferToString","working","isDataViewToString","isDataView","isUint8Array","isUint8ClampedArray","isUint16Array","isUint32Array","isInt8Array","isInt16Array","isInt32Array","isBigInt64Array","isBigUint64Array","isWeakMap","isWeakSet","SharedArrayBufferCopy","isSharedArrayBufferToString","isSharedArrayBuffer","isAsyncFunction","isMapIterator","isSetIterator","isGeneratorObject","isWebAssemblyCompiledModule","descriptors","formatRegExp","objects","isNull","noDeprecation","throwDeprecation","traceDeprecation","trace","debugs","debugEnvRegex","env","NODE_DEBUG","debugEnv","stylize","stylizeNoColor","colors","isBoolean","_extend","stylizeWithColor","formatValue","styleType","styles","ret","primitive","formatPrimitive","visibleKeys","idx","arrayToHash","isError","formatError","braces","toUTCString","formatProperty","formatArray","reduce","numLinesEst","reduceToSingleString","pad","debuglog","pid","isNullOrUndefined","isPrimitive","months","timestamp","getHours","getMinutes","getSeconds","getDate","getMonth","inherits","kCustomPromisifiedSymbol","callbackifyOnRejected","cb","newReason","promisify","promiseResolve","promiseReject","callbackify","callbackified","maybeCb","nextTick","rej","keysShim","isArgs","isEnumerable","hasDontEnumBug","hasProtoEnumBug","dontEnums","equalsConstructorPrototype","excludedKeys","$applicationCache","$console","$external","$frame","$frameElement","$frames","$innerHeight","$innerWidth","$onmozfullscreenchange","$onmozfullscreenerror","$outerHeight","$outerWidth","$pageXOffset","$pageYOffset","$scrollLeft","$scrollTop","$scrollX","$scrollY","$self","$webkitIndexedDB","$webkitStorageInfo","$window","hasAutomationEqualityBug","theKeys","skipProto","skipConstructor","equalsConstructorPrototypeIfNotBuggy","origKeys","originalKeys","keysWorksWithArguments","cachedSetTimeout","cachedClearTimeout","defaultSetTimout","defaultClearTimeout","runTimeout","fun","currentQueue","queue","draining","queueIndex","cleanUpNextTick","drainQueue","run","marker","runClearTimeout","Item","noop","browser","argv","addListener","once","removeListener","removeAllListeners","prependListener","prependOnceListener","cwd","chdir","dir","umask","MAX_LENGTH","parseOptions","compareIdentifiers","SemVer","loose","includePrerelease","LOOSE","FULL","raw","major","minor","patch","prerelease","num","compareMain","comparePre","compareBuild","inc","release","er","SEMVER_SPEC_VERSION","MAX_SAFE_COMPONENT_LENGTH","numeric","anum","bnum","rcompareIdentifiers","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","stylesInDOM","getIndexByIdentifier","modulesToDom","idCountMap","identifiers","indexByIdentifier","addElementStyle","byIndex","api","domAPI","newObj","lastIdentifiers","newList","newLastIdentifiers","_index","styleTarget","getTarget","setAttributes","styleElement","insertStyleElement","styleTagTransform","removeStyleElement","isBrowser","timeoutDuration","longerTimeoutBrowsers","debounce","scheduled","functionToCheck","getStyleComputedProperty","getComputedStyle","getParentNode","nodeName","getScrollParent","_getStyleComputedProp","overflow","overflowX","overflowY","getReferenceNode","reference","referenceNode","isIE11","MSInputMethodContext","documentMode","isIE10","isIE","getOffsetParent","documentElement","noOffsetParent","offsetParent","nextElementSibling","getRoot","findCommonOffsetParent","element1","element2","order","compareDocumentPosition","Node","DOCUMENT_POSITION_FOLLOWING","range","createRange","setStart","setEnd","commonAncestorContainer","contains","firstElementChild","element1root","getScroll","side","upperSide","scrollingElement","includeScroll","rect","subtract","scrollTop","scrollLeft","modifier","top","bottom","left","right","getBordersSize","axis","sideA","sideB","getSize","computedStyle","getWindowSizes","classCallCheck","createClass","_extends","getClientRect","offsets","getBoundingClientRect","sizes","clientWidth","clientHeight","horizScrollbar","offsetWidth","vertScrollbar","offsetHeight","getOffsetRectRelativeToArbitraryNode","fixedPosition","isHTML","childrenRect","parentRect","scrollParent","borderTopWidth","borderLeftWidth","marginTop","marginLeft","getViewportOffsetRectRelativeToArtbitraryNode","excludeScroll","relativeOffset","innerWidth","innerHeight","isFixed","getFixedPositionOffsetParent","parentElement","getBoundaries","popper","padding","boundaries","boundariesNode","_getWindowSizes","isPaddingNumber","getArea","_ref","computeAutoPlacement","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","attachToScrollParents","scrollParents","isBody","passive","setupEventListeners","updateBound","scrollElement","eventsEnabled","enableEventListeners","scheduleUpdate","cancelAnimationFrame","isNumeric","setStyles","unit","isFirefox","isModifierRequired","requestingName","requestedName","requesting","isRequired","_requesting","requested","placements","validPlacements","clockwise","reverse","BEHAVIORS","parseOffset","basePlacement","useHeight","fragments","frag","divider","splitRegex","ops","op","mergeWithPrevious","toValue","index2","shiftvariation","_data$offsets","isVertical","shiftOffsets","preventOverflow","transformProp","popperStyles","priority","escapeWithReference","secondary","keepTogether","opSide","arrow","_data$offsets$arrow","arrowElement","sideCapitalized","altSide","arrowElementSize","popperMarginSide","popperBorderSide","sideValue","placementOpposite","flipOrder","behavior","refOffsets","overlapsRef","overflowsLeft","overflowsRight","overflowsTop","overflowsBottom","overflowsBoundaries","flippedVariationByRef","flipVariations","flippedVariationByContent","flipVariationsByContent","flippedVariation","getOppositeVariation","inner","subtractLength","computeStyle","legacyGpuAccelerationOption","gpuAcceleration","offsetParentRect","shouldRound","noRound","referenceWidth","popperWidth","isVariation","horizontalToInteger","verticalToInteger","getRoundedOffsets","devicePixelRatio","prefixedProperty","invertTop","invertLeft","applyStyle","onLoad","modifierOptions","Defaults","Popper","requestAnimationFrame","jquery","Utils","PopperUtils","initCompat","ua","rv","edge","getInternetExplorerVersion","normalizeComponent","template","script","scopeId","isFunctionalTemplate","moduleIdentifier","shadowMode","createInjector","createInjectorSSR","createInjectorShadow","hook","originalRender","__vue_script__","emitOnMount","ignoreWidth","ignoreHeight","_w","_h","emitSize","_resizeObject","onload","addResizeHandlers","removeResizeHandlers","compareAndNotify","__vue_render__","_withStripped","__vue_component__","install","Vue","component","GlobalVue","SVGAnimatedString","convertToArray","addClasses","classes","newClasses","className","baseVal","newClass","SVGElement","removeClasses","supportsPassive","ownKeys$2","enumerableOnly","_objectSpread$2","DEFAULT_OPTIONS","trigger","openTooltips","Tooltip","_reference","_options","evt","relatedreference","toElement","relatedTarget","_tooltipNode","evt2","relatedreference2","_scheduleHide","_isOpen","_init","_show","_hide","_dispose","_classes","_setContent","classesUpdated","directive","defaultClass","setClasses","getOptions","needPopperUpdate","needRestart","dispose","popperInstance","_isDisposed","_enableDocumentTouch","_setEventListeners","$_originalTitle","_this2","tooltipGenerator","innerHTML","tooltipNode","ariaId","autoHide","_this3","asyncContent","_applyContent","_this4","allowHtml","rootNode","titleNode","innerSelector","loadingClass","loadingContent","asyncResult","innerText","_disposeTimer","updateClasses","_ensureShown","_this5","_create","_findContainer","_append","popperOptions","arrowSelector","_this6","_noLongerOpen","disposeTime","disposeTimeout","_removeTooltipNode","_this7","_events","_this8","directEvents","oppositeEvents","hideOnTargetClick","usedByTooltip","_scheduleShow","_this9","computedDelay","_scheduleTimer","_this10","_setTooltipNodeEvent","ownKeys$1","_objectSpread$1","_onDocumentTouch","positions","defaultOptions","defaultPlacement","defaultTargetClass","defaultArrowSelector","defaultInnerSelector","defaultDelay","defaultTrigger","defaultOffset","defaultContainer","defaultBoundariesElement","defaultPopperOptions","defaultLoadingClass","defaultLoadingContent","defaultHideOnTargetClick","defaultBaseClass","defaultWrapperClass","defaultInnerClass","defaultArrowClass","defaultOpenClass","defaultAutoHide","defaultHandleResize","typeofOffset","getPlacement","getContent","createTooltip","_tooltip","_vueEl","targetClasses","_tooltipTargetClasses","destroyTooltip","_tooltipOldShow","oldValue","setContent","setOptions","unbind","addListeners","onTouchStart","removeListeners","onTouchEnd","onTouchCancel","closePopover","$_vclosepopover_touch","closeAllPopover","$_closePopoverModifiers","$_vclosepopover_touchPoint","firstTouch","screenY","screenX","vclosepopover","getDefault","isIOS","MSStream","openPopovers","ResizeObserver","popoverClass","popoverBaseClass","popoverInnerClass","popoverWrapperClass","popoverArrowClass","handleResize","openGroup","openClass","cssClass","popoverId","oldVal","popoverNode","$_findContainer","$_removeEventListeners","$_addEventListeners","$_updatePopper","deep","created","$_isDisposed","$_mounted","$_events","$_preventOpen","$_init","deactivated","skipDelay","_ref2$force","$_scheduleShow","$_beingShowed","_ref3","$_scheduleHide","$_show","$_disposeTimer","$_getOffset","$_hide","$_scheduleTimer","$_setTooltipNodeEvent","event2","_ref4","$_restartPopper","$_handleGlobalClose","$_handleResize","handleGlobalClose","_loop","_vm","staticStyle","visibility","keyup","$event","notify","installed","finalOptions","insertAt","styleInject","VClosePopover","emptyObject","freeze","isUndef","isDef","isTrue","_toString","isValidArrayIndex","makeMap","expectsLowerCase","isReservedAttribute","cached","camelizeRE","camelize","capitalize","hyphenateRE","hyphenate","boundFn","_length","_from","looseEqual","isObjectA","isObjectB","isArrayA","isArrayB","keysB","looseIndexOf","SSR_ATTR","ASSET_TYPES","LIFECYCLE_HOOKS","optionMergeStrategies","silent","productionTip","devtools","performance","errorHandler","warnHandler","ignoredElements","keyCodes","isReservedTag","isReservedAttr","isUnknownElement","getTagNamespace","parsePlatformTagName","mustUseProp","async","_lifecycleHooks","unicodeRegExp","isReserved","def","bailRE","_isServer","hasProto","inBrowser","inWeex","WXEnvironment","platform","weexPlatform","UA","isIE9","isEdge","isFF","nativeWatch","isServerRendering","VUE_ENV","__VUE_DEVTOOLS_GLOBAL_HOOK__","isNative","_Set","hasSymbol","Dep","subs","addSub","sub","removeSub","depend","addDep","targetStack","pushTarget","popTarget","VNode","elm","asyncFactory","ns","fnContext","fnOptions","fnScopeId","componentInstance","isStatic","isRootInsert","isComment","isCloned","isOnce","asyncMeta","isAsyncPlaceholder","prototypeAccessors","createEmptyVNode","createTextVNode","cloneVNode","vnode","cloned","arrayMethods","inserted","ob","__ob__","observeArray","dep","arrayKeys","shouldObserve","toggleObserving","Observer","vmCount","protoAugment","copyAugment","walk","observe","asRootData","_isVue","defineReactive$$1","customSetter","shallow","childOb","dependArray","newVal","del","items","strats","mergeData","toVal","fromVal","mergeDataOrFn","parentVal","childVal","vm","instanceData","defaultData","mergeHook","hooks","dedupeHooks","mergeAssets","key$1","inject","provide","defaultStrat","mergeOptions","normalizeProps","normalizeInject","dirs","def$$1","normalizeDirectives","_base","extends","mergeField","strat","resolveAsset","warnMissing","assets","camelizedId","PascalCaseId","validateProp","propOptions","propsData","absent","booleanIndex","getTypeIndex","stringIndex","_props","getType","getPropDefaultValue","prevShouldObserve","functionTypeCheckRE","isSameType","expectedTypes","handleError","info","errorCaptured","globalHandleError","invokeWithErrorHandling","_handled","logError","timerFunc","isUsingMicroTask","callbacks","pending","flushCallbacks","copies","MutationObserver","setImmediate","textNode","characterData","seenObjects","traverse","_traverse","isA","isFrozen","depId","normalizeEvent","once$$1","createFnInvoker","invoker","arguments$1","updateListeners","oldOn","remove$$1","createOnceHandler","old","mergeVNodeHook","hookKey","oldHook","wrappedHook","merged","checkProp","preserve","normalizeChildren","normalizeArrayChildren","isTextNode","nestedIndex","_isVList","resolveInject","provideKey","_provided","provideDefault","resolveSlots","slots","name$1","isWhitespace","normalizeScopedSlots","normalSlots","prevSlots","hasNormalSlots","isStable","$stable","$key","_normalized","$hasNormal","normalizeScopedSlot","key$2","proxyNormalSlot","proxy","renderList","renderSlot","fallbackRender","bindObject","nodes","scopedSlotFn","$scopedSlots","resolveFilter","isKeyNotMatch","expect","checkKeyCodes","eventKeyCode","builtInKeyCode","eventKeyName","builtInKeyName","mappedKeyCode","bindObjectProps","asProp","isSync","loop","camelizedKey","hyphenatedKey","renderStatic","isInFor","_staticTrees","tree","markStatic","_renderProxy","markOnce","markStaticNode","bindObjectListeners","ours","resolveScopedSlots","hasDynamicKeys","contentHashKey","bindDynamicKeys","baseObj","prependModifier","installRenderHelpers","_o","_l","_q","_m","_f","_u","_p","FunctionalRenderContext","contextVm","this$1","_original","isCompiled","needNormalization","injections","scopedSlots","cloneAndMarkFunctionalResult","renderContext","clone","mergeProps","componentVNodeHooks","hydrating","_isDestroyed","keepAlive","mountedNode","prepatch","_isComponent","_parentVnode","inlineTemplate","createComponentInstanceForVnode","activeInstance","$mount","oldVnode","parentVnode","renderChildren","newScopedSlots","oldScopedSlots","hasDynamicScopedSlot","needsForceUpdate","_renderChildren","_vnode","propKeys","_propKeys","oldListeners","_parentListeners","updateComponentListeners","$forceUpdate","updateChildComponent","_isMounted","callHook","_inactive","activatedChildren","activateChildComponent","deactivateChildComponent","hooksToMerge","createComponent","baseCtor","cid","factory","errorComp","resolved","owner","currentRenderingInstance","owners","loading","loadingComp","sync","timerLoading","timerTimeout","$on","forceRender","renderCompleted","ensureCtor","resolveAsyncComponent","createAsyncPlaceholder","resolveConstructorOptions","model","transformModel","extractPropsFromVNodeData","createFunctionalComponent","nativeOn","abstract","toMerge","_merged","mergeHook$1","installComponentHooks","f1","f2","normalizationType","alwaysNormalize","simpleNormalizeChildren","pre","applyNS","registerDeepBindings","_createElement","comp","getFirstComponentChild","remove$1","$off","_target","onceHandler","setActiveInstance","prevActiveInstance","isInInactiveTree","direct","_directInactive","_hasHookEvent","waiting","flushing","currentFlushTimestamp","getNow","flushSchedulerQueue","watcher","activatedQueue","updatedQueue","callActivatedHooks","_watcher","callUpdatedHooks","uid$2","Watcher","expOrFn","isRenderWatcher","_watchers","user","lazy","active","dirty","deps","newDeps","depIds","newDepIds","segments","parsePath","cleanupDeps","tmp","queueWatcher","evaluate","teardown","_isBeingDestroyed","sharedPropertyDefinition","sourceKey","initState","propsOptions","initProps","initMethods","_data","getData","initData","watchers","_computedWatchers","isSSR","userDef","computedWatcherOptions","defineComputed","initComputed","createWatcher","initWatch","shouldCache","createComputedGetter","createGetterInvoker","uid$3","super","superOptions","modifiedOptions","modified","latest","sealed","sealedOptions","resolveModifiedOptions","extendOptions","initExtend","Super","SuperId","cachedCtors","_Ctor","Sub","Comp","initProps$1","initComputed$1","mixin","getComponentName","matches","pruneCache","keepAliveInstance","pruneCacheEntry","current","_uid","vnodeComponentOptions","_componentTag","initInternalComponent","initLifecycle","initEvents","parentData","initRender","initInjections","initProvide","initMixin","dataDef","propsDef","$set","$delete","immediate","stateMixin","hookRE","$once","i$1","cbs","eventsMixin","_update","prevEl","prevVnode","restoreActiveInstance","__patch__","__vue__","lifecycleMixin","_render","renderMixin","patternTypes","KeepAlive","include","exclude","cacheVNode","vnodeToCache","keyToCache","updated","builtInComponents","configDef","defineReactive","observable","plugin","installedPlugins","_installedPlugins","initUse","initMixin$1","definition","initAssetRegisters","initGlobalAPI","acceptValue","isEnumeratedAttr","isValidContentEditableValue","isBooleanAttr","xlinkNS","isXlink","getXlinkProp","isFalsyAttrValue","genClassForVnode","childNode","mergeClassData","dynamicClass","stringifyClass","renderClass","stringified","stringifyArray","stringifyObject","namespaceMap","svg","math","isHTMLTag","isSVG","unknownElementCache","isTextInputType","nodeOps","tagName","multiple","createElementNS","createComment","newNode","nextSibling","setTextContent","setStyleScope","registerRef","isRemoval","refs","refInFor","emptyNode","sameVnode","typeA","typeB","sameInputType","createKeyToOldIdx","beginIdx","endIdx","updateDirectives","oldDir","isCreate","isDestroy","oldDirs","normalizeDirectives$1","newDirs","dirsWithInsert","dirsWithPostpatch","oldArg","callHook$1","componentUpdated","callInsert","emptyModifiers","getRawDirName","baseModules","updateAttrs","inheritAttrs","oldAttrs","setAttr","removeAttributeNS","isInPre","baseSetAttr","convertEnumeratedValue","setAttributeNS","__ieph","blocker","stopImmediatePropagation","updateClass","oldData","cls","transitionClass","_transitionClasses","_prevClass","target$1","klass","createOnceHandler$1","remove$2","useMicrotaskFix","add$1","attachedTimestamp","_wrapper","updateDOMListeners","change","normalizeEvents","svgContainer","updateDOMProps","oldProps","_value","strCur","shouldUpdateValue","checkVal","composing","notInFocus","isNotInFocusAndDirty","_vModifiers","isDirtyWithModifiers","parseStyleText","propertyDelimiter","normalizeStyleData","normalizeStyleBinding","bindingStyle","emptyStyle","cssVarRE","importantRE","setProp","setProperty","vendorNames","capName","updateStyle","oldStaticStyle","oldStyleBinding","normalizedStyle","oldStyle","newStyle","checkChild","styleData","getStyle","whitespaceRE","addClass","removeClass","tar","resolveTransition","autoCssTransition","enterClass","enterToClass","enterActiveClass","leaveClass","leaveToClass","leaveActiveClass","hasTransition","TRANSITION","ANIMATION","transitionProp","transitionEndEvent","animationProp","animationEndEvent","ontransitionend","onwebkittransitionend","onanimationend","onwebkitanimationend","raf","nextFrame","addTransitionClass","transitionClasses","removeTransitionClass","whenTransitionEnds","expectedType","getTransitionInfo","propCount","ended","onEnd","transformRE","transitionDelays","transitionDurations","transitionTimeout","getTimeout","animationDelays","animationDurations","animationTimeout","hasTransform","delays","durations","toMs","enter","toggleDisplay","_leaveCb","cancelled","transition","_enterCb","appearClass","appearToClass","appearActiveClass","beforeEnter","afterEnter","enterCancelled","beforeAppear","appear","afterAppear","appearCancelled","transitionNode","isAppear","startClass","activeClass","toClass","beforeEnterHook","enterHook","afterEnterHook","enterCancelledHook","explicitEnterDuration","expectsCSS","userWantsControl","getHookArgumentsLength","pendingNode","_pending","isValidDuration","leave","beforeLeave","afterLeave","leaveCancelled","delayLeave","explicitLeaveDuration","performLeave","invokerFns","_enter","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","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","_vOptions","setSelected","onCompositionStart","onCompositionEnd","prevOptions","curOptions","hasNoMatchingOption","actuallySetSelected","isMultiple","selected","option","selectedIndex","locateNode","transition$$1","originalDisplay","__vOriginalDisplay","platformDirectives","transitionProps","getRealChild","compOptions","extractTransitionData","placeholder","rawChild","isNotTextNode","isVShowDirective","Transition","hasParentTransition","_leaving","oldRawChild","oldChild","isSameChild","delayedLeave","moveClass","callPendingCbs","_moveCb","recordPosition","newPos","applyTranslation","oldPos","moved","WebkitTransform","transitionDuration","platformComponents","TransitionGroup","kept","prevChildren","rawChildren","transitionData","c$1","hasMove","_reflow","propertyName","_hasMove","cloneNode","attr","HTMLUnknownElement","HTMLElement","updateComponent","mountComponent","foundName","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","loaded","__webpack_modules__","nmd","paths","scriptExports","functionalTemplate","injectStyles","videoWebm","videoMp4","videoFallbackText","slideList","isMobile","currentSlide","withIntro","oc_defaults","slogan","fadeDirection","startButtonText","__webpack_public_path__","App","OCA","FirstRunWizard"],"mappings":"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","file":"firstrunwizard-main.js?v=ee34bc9a06cb1a38e30f","sourcesContent":["\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"getRequestToken\", {\n enumerable: true,\n get: function get() {\n return _requesttoken.getRequestToken;\n }\n});\nObject.defineProperty(exports, \"onRequestTokenUpdate\", {\n enumerable: true,\n get: function get() {\n return _requesttoken.onRequestTokenUpdate;\n }\n});\nObject.defineProperty(exports, \"getCurrentUser\", {\n enumerable: true,\n get: function get() {\n return _user.getCurrentUser;\n }\n});\n\nvar _requesttoken = require(\"./requesttoken\");\n\nvar _user = require(\"./user\");\n//# sourceMappingURL=index.js.map","\"use strict\";\n\nrequire(\"core-js/modules/es.array.for-each\");\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getRequestToken = getRequestToken;\nexports.onRequestTokenUpdate = onRequestTokenUpdate;\n\nvar _eventBus = require(\"@nextcloud/event-bus\");\n\nvar tokenElement = document.getElementsByTagName('head')[0];\nvar token = tokenElement ? tokenElement.getAttribute('data-requesttoken') : null;\nvar observers = [];\n\nfunction getRequestToken() {\n return token;\n}\n\nfunction onRequestTokenUpdate(observer) {\n observers.push(observer);\n} // Listen to server event and keep token in sync\n\n\n(0, _eventBus.subscribe)('csrf-token-update', function (e) {\n token = e.token;\n observers.forEach(function (observer) {\n try {\n observer(e.token);\n } catch (e) {\n console.error('error updating CSRF token observer', e);\n }\n });\n});\n//# sourceMappingURL=requesttoken.js.map","\"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\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\nvar _getRequestToken;\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nconst client = _axios.default.create({\n headers: {\n requesttoken: (_getRequestToken = (0, _auth.getRequestToken)()) !== null && _getRequestToken !== void 0 ? _getRequestToken : ''\n }\n});\n\nconst cancelableClient = Object.assign(client, {\n CancelToken: _axios.default.CancelToken,\n isCancel: _axios.default.isCancel\n});\n(0, _auth.onRequestTokenUpdate)(token => client.defaults.headers.requesttoken = token);\nvar _default = cancelableClient;\nexports.default = _default;\n//# sourceMappingURL=index.js.map","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.ProxyBus = void 0;\n\nvar _valid = _interopRequireDefault(require(\"semver/functions/valid\"));\n\nvar _major = _interopRequireDefault(require(\"semver/functions/major\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar packageJson = {\n name: \"@nextcloud/event-bus\",\n version: \"1.2.0\",\n description: \"\",\n main: \"dist/index.js\",\n types: \"dist/index.d.ts\",\n scripts: {\n build: \"babel ./lib --out-dir dist --extensions '.ts,.tsx' --source-maps && tsc --emitDeclarationOnly\",\n \"build:doc\": \"typedoc --excludeNotExported --mode file --out dist/doc lib/index.ts && touch dist/doc/.nojekyll\",\n \"check-types\": \"tsc\",\n dev: \"babel ./lib --out-dir dist --extensions '.ts,.tsx' --watch\",\n test: \"jest\",\n \"test:watch\": \"jest --watchAll\"\n },\n keywords: [\"nextcloud\"],\n homepage: \"https://github.com/nextcloud/nextcloud-event-bus#readme\",\n author: \"Christoph Wurst\",\n license: \"GPL-3.0-or-later\",\n repository: {\n type: \"git\",\n url: \"https://github.com/nextcloud/nextcloud-event-bus\"\n },\n dependencies: {\n \"@types/semver\": \"^7.1.0\",\n \"core-js\": \"^3.6.2\",\n semver: \"^7.3.2\"\n },\n devDependencies: {\n \"@babel/cli\": \"^7.6.0\",\n \"@babel/core\": \"^7.6.0\",\n \"@babel/plugin-proposal-class-properties\": \"^7.5.5\",\n \"@babel/preset-env\": \"^7.6.0\",\n \"@babel/preset-typescript\": \"^7.6.0\",\n \"@nextcloud/browserslist-config\": \"^1.0.0\",\n \"babel-jest\": \"^26.0.1\",\n \"babel-plugin-inline-json-import\": \"^0.3.2\",\n jest: \"^26.0.1\",\n typedoc: \"^0.17.2\",\n typescript: \"^3.6.3\"\n },\n browserslist: [\"extends @nextcloud/browserslist-config\"]\n};\n\nvar ProxyBus = /*#__PURE__*/function () {\n function ProxyBus(bus) {\n _classCallCheck(this, ProxyBus);\n\n _defineProperty(this, \"bus\", void 0);\n\n if (typeof bus.getVersion !== 'function' || !(0, _valid.default)(bus.getVersion())) {\n console.warn('Proxying an event bus with an unknown or invalid version');\n } else if ((0, _major.default)(bus.getVersion()) !== (0, _major.default)(this.getVersion())) {\n console.warn('Proxying an event bus of version ' + bus.getVersion() + ' with ' + this.getVersion());\n }\n\n this.bus = bus;\n }\n\n _createClass(ProxyBus, [{\n key: \"getVersion\",\n value: function getVersion() {\n return packageJson.version;\n }\n }, {\n key: \"subscribe\",\n value: function subscribe(name, handler) {\n this.bus.subscribe(name, handler);\n }\n }, {\n key: \"unsubscribe\",\n value: function unsubscribe(name, handler) {\n this.bus.unsubscribe(name, handler);\n }\n }, {\n key: \"emit\",\n value: function emit(name, event) {\n this.bus.emit(name, event);\n }\n }]);\n\n return ProxyBus;\n}();\n\nexports.ProxyBus = ProxyBus;\n//# sourceMappingURL=ProxyBus.js.map","\"use strict\";\n\nrequire(\"core-js/modules/es.array.concat\");\n\nrequire(\"core-js/modules/es.array.filter\");\n\nrequire(\"core-js/modules/es.array.for-each\");\n\nrequire(\"core-js/modules/es.array.iterator\");\n\nrequire(\"core-js/modules/es.map\");\n\nrequire(\"core-js/modules/es.object.to-string\");\n\nrequire(\"core-js/modules/es.string.iterator\");\n\nrequire(\"core-js/modules/web.dom-collections.for-each\");\n\nrequire(\"core-js/modules/web.dom-collections.iterator\");\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.SimpleBus = void 0;\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar packageJson = {\n name: \"@nextcloud/event-bus\",\n version: \"1.2.0\",\n description: \"\",\n main: \"dist/index.js\",\n types: \"dist/index.d.ts\",\n scripts: {\n build: \"babel ./lib --out-dir dist --extensions '.ts,.tsx' --source-maps && tsc --emitDeclarationOnly\",\n \"build:doc\": \"typedoc --excludeNotExported --mode file --out dist/doc lib/index.ts && touch dist/doc/.nojekyll\",\n \"check-types\": \"tsc\",\n dev: \"babel ./lib --out-dir dist --extensions '.ts,.tsx' --watch\",\n test: \"jest\",\n \"test:watch\": \"jest --watchAll\"\n },\n keywords: [\"nextcloud\"],\n homepage: \"https://github.com/nextcloud/nextcloud-event-bus#readme\",\n author: \"Christoph Wurst\",\n license: \"GPL-3.0-or-later\",\n repository: {\n type: \"git\",\n url: \"https://github.com/nextcloud/nextcloud-event-bus\"\n },\n dependencies: {\n \"@types/semver\": \"^7.1.0\",\n \"core-js\": \"^3.6.2\",\n semver: \"^7.3.2\"\n },\n devDependencies: {\n \"@babel/cli\": \"^7.6.0\",\n \"@babel/core\": \"^7.6.0\",\n \"@babel/plugin-proposal-class-properties\": \"^7.5.5\",\n \"@babel/preset-env\": \"^7.6.0\",\n \"@babel/preset-typescript\": \"^7.6.0\",\n \"@nextcloud/browserslist-config\": \"^1.0.0\",\n \"babel-jest\": \"^26.0.1\",\n \"babel-plugin-inline-json-import\": \"^0.3.2\",\n jest: \"^26.0.1\",\n typedoc: \"^0.17.2\",\n typescript: \"^3.6.3\"\n },\n browserslist: [\"extends @nextcloud/browserslist-config\"]\n};\n\nvar SimpleBus = /*#__PURE__*/function () {\n function SimpleBus() {\n _classCallCheck(this, SimpleBus);\n\n _defineProperty(this, \"handlers\", new Map());\n }\n\n _createClass(SimpleBus, [{\n key: \"getVersion\",\n value: function getVersion() {\n return packageJson.version;\n }\n }, {\n key: \"subscribe\",\n value: function subscribe(name, handler) {\n this.handlers.set(name, (this.handlers.get(name) || []).concat(handler));\n }\n }, {\n key: \"unsubscribe\",\n value: function unsubscribe(name, handler) {\n this.handlers.set(name, (this.handlers.get(name) || []).filter(function (h) {\n return h != handler;\n }));\n }\n }, {\n key: \"emit\",\n value: function emit(name, event) {\n (this.handlers.get(name) || []).forEach(function (h) {\n try {\n h(event);\n } catch (e) {\n console.error('could not invoke event listener', e);\n }\n });\n }\n }]);\n\n return SimpleBus;\n}();\n\nexports.SimpleBus = SimpleBus;\n//# sourceMappingURL=SimpleBus.js.map","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.subscribe = subscribe;\nexports.unsubscribe = unsubscribe;\nexports.emit = emit;\n\nvar _ProxyBus = require(\"./ProxyBus\");\n\nvar _SimpleBus = require(\"./SimpleBus\");\n\nfunction getBus() {\n if (typeof window.OC !== 'undefined' && window.OC._eventBus && typeof window._nc_event_bus === 'undefined') {\n console.warn('found old event bus instance at OC._eventBus. Update your version!');\n window._nc_event_bus = window.OC._eventBus;\n } // Either use an existing event bus instance or create one\n\n\n if (typeof window._nc_event_bus !== 'undefined') {\n return new _ProxyBus.ProxyBus(window._nc_event_bus);\n } else {\n return window._nc_event_bus = new _SimpleBus.SimpleBus();\n }\n}\n\nvar bus = getBus();\n/**\n * Register an event listener\n *\n * @param name name of the event\n * @param handler callback invoked for every matching event emitted on the bus\n */\n\nfunction subscribe(name, handler) {\n bus.subscribe(name, handler);\n}\n/**\n * Unregister a previously registered event listener\n *\n * Note: doesn't work with anonymous functions (closures). Use method of an object or store listener function in variable.\n *\n * @param name name of the event\n * @param handler callback passed to `subscribed`\n */\n\n\nfunction unsubscribe(name, handler) {\n bus.unsubscribe(name, handler);\n}\n/**\n * Emit an event\n *\n * @param name name of the event\n * @param event event payload\n */\n\n\nfunction emit(name, event) {\n bus.emit(name, event);\n}\n//# sourceMappingURL=index.js.map","\"use strict\";\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.getGettextBuilder = getGettextBuilder;\n\nvar _nodeGettext = _interopRequireDefault(require(\"node-gettext\"));\n\nvar _ = require(\".\");\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, _.getLanguage)().replace('-', '_'));\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//# sourceMappingURL=gettext.js.map","\"use strict\";\n\nrequire(\"core-js/modules/es.regexp.exec\");\n\nrequire(\"core-js/modules/es.string.replace\");\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//# sourceMappingURL=index.js.map","\"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","!function(t,n){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=n():\"function\"==typeof define&&define.amd?define(\"Components/Modal\",[],n):\"object\"==typeof exports?exports[\"Components/Modal\"]=n():(t.NextcloudVue=t.NextcloudVue||{},t.NextcloudVue[\"Components/Modal\"]=n())}(window,(function(){return function(t){var n={};function e(A){if(n[A])return n[A].exports;var o=n[A]={i:A,l:!1,exports:{}};return t[A].call(o.exports,o,o.exports,e),o.l=!0,o.exports}return e.m=t,e.c=n,e.d=function(t,n,A){e.o(t,n)||Object.defineProperty(t,n,{enumerable:!0,get:A})},e.r=function(t){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(t,\"__esModule\",{value:!0})},e.t=function(t,n){if(1&n&&(t=e(t)),8&n)return t;if(4&n&&\"object\"==typeof t&&t&&t.__esModule)return t;var A=Object.create(null);if(e.r(A),Object.defineProperty(A,\"default\",{enumerable:!0,value:t}),2&n&&\"string\"!=typeof t)for(var o in t)e.d(A,o,function(n){return t[n]}.bind(null,o));return A},e.n=function(t){var n=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(n,\"a\",n),n},e.o=function(t,n){return Object.prototype.hasOwnProperty.call(t,n)},e.p=\"/dist/\",e(e.s=129)}([function(t,n,e){\"use strict\";function A(t,n){return function(t){if(Array.isArray(t))return t}(t)||function(t,n){if(\"undefined\"==typeof Symbol||!(Symbol.iterator in Object(t)))return;var e=[],A=!0,o=!1,i=void 0;try{for(var a,r=t[Symbol.iterator]();!(A=(a=r.next()).done)&&(e.push(a.value),!n||e.length!==n);A=!0);}catch(t){o=!0,i=t}finally{try{A||null==r.return||r.return()}finally{if(o)throw i}}return e}(t,n)||function(t,n){if(!t)return;if(\"string\"==typeof t)return o(t,n);var e=Object.prototype.toString.call(t).slice(8,-1);\"Object\"===e&&t.constructor&&(e=t.constructor.name);if(\"Map\"===e||\"Set\"===e)return Array.from(t);if(\"Arguments\"===e||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e))return o(t,n)}(t,n)||function(){throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}()}function o(t,n){(null==n||n>t.length)&&(n=t.length);for(var e=0,A=new Array(n);e<n;e++)A[e]=t[e];return A}t.exports=function(t){var n=A(t,4),e=n[1],o=n[3];if(\"function\"==typeof btoa){var i=btoa(unescape(encodeURIComponent(JSON.stringify(o)))),a=\"sourceMappingURL=data:application/json;charset=utf-8;base64,\".concat(i),r=\"/*# \".concat(a,\" */\"),s=o.sources.map((function(t){return\"/*# sourceURL=\".concat(o.sourceRoot||\"\").concat(t,\" */\")}));return[e].concat(s).concat([r]).join(\"\\n\")}return[e].join(\"\\n\")}},function(t,n,e){\"use strict\";t.exports=function(t){var n=[];return n.toString=function(){return this.map((function(n){var e=t(n);return n[2]?\"@media \".concat(n[2],\" {\").concat(e,\"}\"):e})).join(\"\")},n.i=function(t,e,A){\"string\"==typeof t&&(t=[[null,t,\"\"]]);var o={};if(A)for(var i=0;i<this.length;i++){var a=this[i][0];null!=a&&(o[a]=!0)}for(var r=0;r<t.length;r++){var s=[].concat(t[r]);A&&o[s[0]]||(e&&(s[2]?s[2]=\"\".concat(e,\" and \").concat(s[2]):s[2]=e),n.push(s))}},n}},function(t,n,e){\"use strict\";var A,o=function(){return void 0===A&&(A=Boolean(window&&document&&document.all&&!window.atob)),A},i=function(){var t={};return function(n){if(void 0===t[n]){var e=document.querySelector(n);if(window.HTMLIFrameElement&&e instanceof window.HTMLIFrameElement)try{e=e.contentDocument.head}catch(t){e=null}t[n]=e}return t[n]}}(),a=[];function r(t){for(var n=-1,e=0;e<a.length;e++)if(a[e].identifier===t){n=e;break}return n}function s(t,n){for(var e={},A=[],o=0;o<t.length;o++){var i=t[o],s=n.base?i[0]+n.base:i[0],c=e[s]||0,l=\"\".concat(s,\" \").concat(c);e[s]=c+1;var d=r(l),u={css:i[1],media:i[2],sourceMap:i[3]};-1!==d?(a[d].references++,a[d].updater(u)):a.push({identifier:l,updater:C(u,n),references:1}),A.push(l)}return A}function c(t){var n=document.createElement(\"style\"),A=t.attributes||{};if(void 0===A.nonce){var o=e.nc;o&&(A.nonce=o)}if(Object.keys(A).forEach((function(t){n.setAttribute(t,A[t])})),\"function\"==typeof t.insert)t.insert(n);else{var a=i(t.insert||\"head\");if(!a)throw new Error(\"Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.\");a.appendChild(n)}return n}var l,d=(l=[],function(t,n){return l[t]=n,l.filter(Boolean).join(\"\\n\")});function u(t,n,e,A){var o=e?\"\":A.media?\"@media \".concat(A.media,\" {\").concat(A.css,\"}\"):A.css;if(t.styleSheet)t.styleSheet.cssText=d(n,o);else{var i=document.createTextNode(o),a=t.childNodes;a[n]&&t.removeChild(a[n]),a.length?t.insertBefore(i,a[n]):t.appendChild(i)}}function g(t,n,e){var A=e.css,o=e.media,i=e.sourceMap;if(o?t.setAttribute(\"media\",o):t.removeAttribute(\"media\"),i&&\"undefined\"!=typeof btoa&&(A+=\"\\n/*# sourceMappingURL=data:application/json;base64,\".concat(btoa(unescape(encodeURIComponent(JSON.stringify(i)))),\" */\")),t.styleSheet)t.styleSheet.cssText=A;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(A))}}var m=null,p=0;function C(t,n){var e,A,o;if(n.singleton){var i=p++;e=m||(m=c(n)),A=u.bind(null,e,i,!1),o=u.bind(null,e,i,!0)}else e=c(n),A=g.bind(null,e,n),o=function(){!function(t){if(null===t.parentNode)return!1;t.parentNode.removeChild(t)}(e)};return A(t),function(n){if(n){if(n.css===t.css&&n.media===t.media&&n.sourceMap===t.sourceMap)return;A(t=n)}else o()}}t.exports=function(t,n){(n=n||{}).singleton||\"boolean\"==typeof n.singleton||(n.singleton=o());var e=s(t=t||[],n);return function(t){if(t=t||[],\"[object Array]\"===Object.prototype.toString.call(t)){for(var A=0;A<e.length;A++){var o=r(e[A]);a[o].references--}for(var i=s(t,n),c=0;c<e.length;c++){var l=r(e[c]);0===a[l].references&&(a[l].updater(),a.splice(l,1))}e=i}}}},function(t,n,e){\"use strict\";function A(t,n,e,A,o,i,a,r){var s,c=\"function\"==typeof t?t.options:t;if(n&&(c.render=n,c.staticRenderFns=e,c._compiled=!0),A&&(c.functional=!0),i&&(c._scopeId=\"data-v-\"+i),a?(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__),o&&o.call(this,t),t&&t._registeredComponents&&t._registeredComponents.add(a)},c._ssrRegister=s):o&&(s=r?function(){o.call(this,(c.functional?this.parent:this).$root.$options.shadowRoot)}:o),s)if(c.functional){c._injectStyles=s;var l=c.render;c.render=function(t,n){return s.call(n),l(t,n)}}else{var d=c.beforeCreate;c.beforeCreate=d?[].concat(d,s):[s]}return{exports:t,options:c}}e.d(n,\"a\",(function(){return A}))},function(t,n,e){\"use strict\";t.exports=function(t,n){return n||(n={}),\"string\"!=typeof(t=t&&t.__esModule?t.default:t)?t:(/^['\"].*['\"]$/.test(t)&&(t=t.slice(1,-1)),n.hash&&(t+=n.hash),/[\"'() \\t\\n]/.test(t)||n.needQuotes?'\"'.concat(t.replace(/\"/g,'\\\\\"').replace(/\\n/g,\"\\\\n\"),'\"'):t)}},function(t,n){t.exports=require(\"vue\")},function(t,n){t.exports=require(\"core-js/modules/es.object.to-string.js\")},function(t,n){t.exports=require(\"v-tooltip\")},function(t,n,e){\"use strict\";n.a=\"data:application/vnd.ms-fontobject;base64,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\"},function(t,n,e){\"use strict\";n.a=\"data:font/woff;base64,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PAE55eh8gAAAAQAAAAEAADh+5rVfDzz1AAsTiAAAAADclJzcAAAAANxDwN3/4AAAE5MTiAAAAAgAAgAAAAAAAAABAAATiAAAAAATiP/g//UTkwABAAAAAAAAAAAAAAAAAAAABwAAAAATiAAAE4gAABOIAAATiAAABjYAABOIAAAAAP//AAAAAAAAAAAAAAAA/+AAAAAAAAAAAAAAACIANgBYAGwAgACUALQBDgF8AZoCEAImAjQCQgKoAyIDpgP+AAEAAAATAEsAAwAAAAAAAgAAAAoACgAAAP8AAAAAAAAAAAAQAMYAAQAAAAAAAQAUAAAAAQAAAAAAAgAHABQAAQAAAAAAAwAUABsAAQAAAAAABAAUAC8AAQAAAAAABQALAEMAAQAAAAAABgAUAE4AAQAAAAAACgArAGIAAQAAAAAACwATAI0AAwABBAkAAQAoAKAAAwABBAkAAgAOAMgAAwABBAkAAwAoANYAAwABBAkABAAoAP4AAwABBAkABQAWASYAAwABBAkABgAoATwAAwABBAkACgBWAWQAAwABBAkACwAmAbppY29uZm9udC12dWUtNmI0OTRmY1JlZ3VsYXJpY29uZm9udC12dWUtNmI0OTRmY2ljb25mb250LXZ1ZS02YjQ5NGZjVmVyc2lvbiAxLjBpY29uZm9udC12dWUtNmI0OTRmY0dlbmVyYXRlZCBieSBzdmcydHRmIGZyb20gRm9udGVsbG8gcHJvamVjdC5odHRwOi8vZm9udGVsbG8uY29tAGkAYwBvAG4AZgBvAG4AdAAtAHYAdQBlAC0ANgBiADQAOQA0AGYAYwBSAGUAZwB1AGwAYQByAGkAYwBvAG4AZgBvAG4AdAAtAHYAdQBlAC0ANgBiADQAOQA0AGYAYwBpAGMAbwBuAGYAbwBuAHQALQB2AHUAZQAtADYAYgA0ADkANABmAGMAVgBlAHIAcwBpAG8AbgAgADEALgAwAGkAYwBvAG4AZgBvAG4AdAAtAHYAdQBlAC0ANgBiADQAOQA0AGYAYwBHAGUAbgBlAHIAYQB0AGUAZAAgAGIAeQAgAHMAdgBnADIAdAB0AGYAIABmAHIAbwBtACAARgBvAG4AdABlAGwAbABvACAAcAByAG8AagBlAGMAdAAuAGgAdAB0AHAAOgAvAC8AZgBvAG4AdABlAGwAbABvAC4AYwBvAG0AAAACAAAAAAAAADIAAAAAAAAAAAAAAAAAAAAAAAAAAAATABMAAAECAQMBBAEFAQYBBwEIAQkBCgELAQwBDQEOAQ8BEAERARIBExFhcnJvdy1sZWZ0LWRvdWJsZQphcnJvdy1sZWZ0EmFycm93LXJpZ2h0LWRvdWJsZQthcnJvdy1yaWdodApicmVhZGNydW1iCWNoZWNrbWFyawVjbG9zZQdjb25maXJtBGluZm8EbWVudQRtb3JlBXBhdXNlBHBsYXkKdHJpYW5nbGUtcxB1c2VyLXN0YXR1cy1hd2F5D3VzZXItc3RhdHVzLWRuZBV1c2VyLXN0YXR1cy1pbnZpc2libGUSdXNlci1zdGF0dXMtb25saW5lAAA=\"},function(t,n,e){\"use strict\";n.a=\"data:font/ttf;base64,AAEAAAAKAIAAAwAgT1MvMnTjj9EAAACsAAAAYGNtYXAADeu4AAABDAAAAUJnbHlmx0c5TAAAAlAAAAf8aGVhZCtpwcYAAApMAAAANmhoZWEm/ROFAAAKhAAAACRobXR4Z77//wAACqgAAAA0bG9jYQ28D2YAAArcAAAAKG1heHABIABXAAALBAAAACBuYW1lcf1aSAAACyQAAAKmcG9zdD9UvtcAAA3MAAABFgAEEsoBkAAFAAAMZQ2sAAACvAxlDawAAAlgAPUFCgAAAgAFAwAAAAAAAAAAAAAQAAAAAAAAAAAAAABQZkVkAEDqAeoSE4gAAAHCE4gAAAAAAAEAAAAAAAAAAAAAACAAAAAAAAMAAAADAAAAHAABAAAAAAA8AAMAAQAAABwABAAgAAAABAAEAAEAAOoS//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+AXIBPAE55eh8gAAAAQAAAAEAADh+5rVfDzz1AAsTiAAAAADclJzcAAAAANxDwN3/4AAAE5MTiAAAAAgAAgAAAAAAAAABAAATiAAAAAATiP/g//UTkwABAAAAAAAAAAAAAAAAAAAABwAAAAATiAAAE4gAABOIAAATiAAABjYAABOIAAAAAP//AAAAAAAAAAAAAAAA/+AAAAAAAAAAAAAAACIANgBYAGwAgACUALQBDgF8AZoCEAImAjQCQgKoAyIDpgP+AAEAAAATAEsAAwAAAAAAAgAAAAoACgAAAP8AAAAAAAAAAAAQAMYAAQAAAAAAAQAUAAAAAQAAAAAAAgAHABQAAQAAAAAAAwAUABsAAQAAAAAABAAUAC8AAQAAAAAABQALAEMAAQAAAAAABgAUAE4AAQAAAAAACgArAGIAAQAAAAAACwATAI0AAwABBAkAAQAoAKAAAwABBAkAAgAOAMgAAwABBAkAAwAoANYAAwABBAkABAAoAP4AAwABBAkABQAWASYAAwABBAkABgAoATwAAwABBAkACgBWAWQAAwABBAkACwAmAbppY29uZm9udC12dWUtNmI0OTRmY1JlZ3VsYXJpY29uZm9udC12dWUtNmI0OTRmY2ljb25mb250LXZ1ZS02YjQ5NGZjVmVyc2lvbiAxLjBpY29uZm9udC12dWUtNmI0OTRmY0dlbmVyYXRlZCBieSBzdmcydHRmIGZyb20gRm9udGVsbG8gcHJvamVjdC5odHRwOi8vZm9udGVsbG8uY29tAGkAYwBvAG4AZgBvAG4AdAAtAHYAdQBlAC0ANgBiADQAOQA0AGYAYwBSAGUAZwB1AGwAYQByAGkAYwBvAG4AZgBvAG4AdAAtAHYAdQBlAC0ANgBiADQAOQA0AGYAYwBpAGMAbwBuAGYAbwBuAHQALQB2AHUAZQAtADYAYgA0ADkANABmAGMAVgBlAHIAcwBpAG8AbgAgADEALgAwAGkAYwBvAG4AZgBvAG4AdAAtAHYAdQBlAC0ANgBiADQAOQA0AGYAYwBHAGUAbgBlAHIAYQB0AGUAZAAgAGIAeQAgAHMAdgBnADIAdAB0AGYAIABmAHIAbwBtACAARgBvAG4AdABlAGwAbABvACAAcAByAG8AagBlAGMAdAAuAGgAdAB0AHAAOgAvAC8AZgBvAG4AdABlAGwAbABvAC4AYwBvAG0AAAACAAAAAAAAADIAAAAAAAAAAAAAAAAAAAAAAAAAAAATABMAAAECAQMBBAEFAQYBBwEIAQkBCgELAQwBDQEOAQ8BEAERARIBExFhcnJvdy1sZWZ0LWRvdWJsZQphcnJvdy1sZWZ0EmFycm93LXJpZ2h0LWRvdWJsZQthcnJvdy1yaWdodApicmVhZGNydW1iCWNoZWNrbWFyawVjbG9zZQdjb25maXJtBGluZm8EbWVudQRtb3JlBXBhdXNlBHBsYXkKdHJpYW5nbGUtcxB1c2VyLXN0YXR1cy1hd2F5D3VzZXItc3RhdHVzLWRuZBV1c2VyLXN0YXR1cy1pbnZpc2libGUSdXNlci1zdGF0dXMtb25saW5lAAA=\"},function(t,n,e){\"use strict\";n.a=\"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCIgPjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48bWV0YWRhdGE+PC9tZXRhZGF0YT48ZGVmcz48Zm9udCBpZD0iaWNvbmZvbnQtdnVlLTZiNDk0ZmMiIGhvcml6LWFkdi14PSI1MDAwIj48Zm9udC1mYWNlIGZvbnQtZmFtaWx5PSJpY29uZm9udC12dWUtNmI0OTRmYyIgZm9udC13ZWlnaHQ9IjQwMCIgZm9udC1zdHJldGNoPSJub3JtYWwiIHVuaXRzLXBlci1lbT0iNTAwMCIgcGFub3NlLTE9IjIgMCA1IDMgMCAwIDAgMCAwIDAiIGFzY2VudD0iNTAwMCIgZGVzY2VudD0iMCIgeC1oZWlnaHQ9IjAiIGJib3g9Ii0zMiAwIDUwMTEgNTAwMCIgdW5kZXJsaW5lLXRoaWNrbmVzcz0iMCIgdW5kZXJsaW5lLXBvc2l0aW9uPSI1MCIgdW5pY29kZS1yYW5nZT0iVStlYTAxLWVhMTIiIC8+PG1pc3NpbmctZ2x5cGggaG9yaXotYWR2LXg9IjAiICAvPjxnbHlwaCBnbHlwaC1uYW1lPSJhcnJvdy1sZWZ0LWRvdWJsZSIgdW5pY29kZT0iJiN4ZWEwMTsiIGQ9Ik0zNzUwIDM5MDYgbC0xNDA2IC0xNDA2IGwxNDA2IC0xNDA2IGwwIDMxMiBsLTEwOTQgMTA5NCBsMTA5NCAxMDk0IGwwIDMxMiBaTTIzNDQgMzkwNiBsLTE0MDYgLTE0MDYgbDE0MDYgLTE0MDYgbDAgMzEyIGwtMTA5NCAxMDk0IGwxMDk0IDEwOTQgbDAgMzEyIFoiIC8+PGdseXBoIGdseXBoLW5hbWU9ImFycm93LWxlZnQiIHVuaWNvZGU9IiYjeGVhMDI7IiBkPSJNMTU2MyAyNTAwIGwxODc1IC0xODc1IGwwIC0zMTIgbC0yMTg4IDIxODcgbDIxODggMjE4OCBsMCAtMzEzIGwtMTg3NSAtMTg3NSBaIiAvPjxnbHlwaCBnbHlwaC1uYW1lPSJhcnJvdy1yaWdodC1kb3VibGUiIHVuaWNvZGU9IiYjeGVhMDM7IiBkPSJNMTI1MCAxMDk0IGwxNDA2IDE0MDYgbC0xNDA2IDE0MDYgbDAgLTMxMiBsMTA5NCAtMTA5NCBsLTEwOTQgLTEwOTQgbDAgLTMxMiBaTTI2NTYgMTA5NCBsMTQwNyAxNDA2IGwtMTQwNyAxNDA2IGwwIC0zMTIgbDEwOTQgLTEwOTQgbC0xMDk0IC0xMDk0IGwwIC0zMTIgWiIgLz48Z2x5cGggZ2x5cGgtbmFtZT0iYXJyb3ctcmlnaHQiIHVuaWNvZGU9IiYjeGVhMDQ7IiBkPSJNMzQzOCAyNTAwIGwtMTg3NSAxODc1IGwwIDMxMyBsMjE4NyAtMjE4OCBsLTIxODcgLTIxODcgbDAgMzEyIGwxODc1IDE4NzUgWiIgLz48Z2x5cGggZ2x5cGgtbmFtZT0iYnJlYWRjcnVtYiIgdW5pY29kZT0iJiN4ZWEwNTsiIGQ9Ik0xNDggNTAwMCBsLTE0OCAtODUgbDEzOTQgLTI0MTUgbC0xMzk0IC0yNDE1IGwxNDggLTg1IGwxNDQzIDI1MDAgbC0xNDQzIDI1MDAgWiIgLz48Z2x5cGggZ2x5cGgtbmFtZT0iY2hlY2ttYXJrIiB1bmljb2RlPSImI3hlYTA2OyIgZD0iTTQwNDUgMzk3MSBsLTIwNjEgLTIwNjEgbC0xMDI5IDEwMjkgbC00NDIgLTQ0MSBsMTQ3MSAtMTQ3MSBsMjUwMyAyNTAyIGwtNDQyIDQ0MiBaIiAvPjxnbHlwaCBnbHlwaC1uYW1lPSJjbG9zZSIgdW5pY29kZT0iJiN4ZWEwNzsiIGQ9Ik00Mzc1IDExNTYgbC01MzEgLTUzMSBsLTEzNDQgMTM0NCBsLTEzNDQgLTEzNDQgbC01MzEgNTMxIGwxMzQ0IDEzNDQgbC0xMzQ0IDEzNDQgbDUzMSA1MzEgbDEzNDQgLTEzNDQgbDEzNDQgMTM0NCBsNTMxIC01MzEgbC0xMzQ0IC0xMzQ0IGwxMzQ0IC0xMzQ0IFoiIC8+PGdseXBoIGdseXBoLW5hbWU9ImNvbmZpcm0iIHVuaWNvZGU9IiYjeGVhMDg7IiBkPSJNMjY1NiA0ODQ0IHEtMTAxIDAgLTE4MCAtNTcgcS03NCAtNTIgLTEwOSAtMTM4IHEtMzUgLTg2IC0xOSAtMTc1IHExOCAtOTYgOTAgLTE2NyBsMTQ5NSAtMTQ5NCBsLTM2MTYgMCBxLTc3IDEgLTEzOSAtMjYgcS01OCAtMjQgLTk5IC03MCBxLTM5IC00NCAtNTkgLTEwMSBxLTIwIC01NiAtMjAgLTExNiBxMCAtNjAgMjAgLTExNiBxMjAgLTU3IDU5IC0xMDEgcTQxIC00NiA5OSAtNzAgcTYyIC0yNyAxMzkgLTI1IGwzNjE2IDAgbC0xNDk1IC0xNDk1IHEtNTUgLTUzIC04MSAtMTE2IHEtMjQgLTU5IC0yMSAtMTIxIHEzIC01OCAzMCAtMTEzIHEyNSAtNTQgNjggLTk3IHE0MyAtNDMgOTYgLTY4IHE1NSAtMjYgMTE0IC0yOSBxNjIgLTMgMTIwIDIxIHE2MyAyNSAxMTYgODEgbDIwMjkgMjAyOCBxNTkgNjAgODAgMTQxIHEyMSA4MCAxIDE1OSBxLTIxIDgyIC04MSAxNDIgbC0yMDI5IDIwMjggcS00NCA0NSAtMTAyIDcwIHEtNTggMjUgLTEyMiAyNSBaIiAvPjxnbHlwaCBnbHlwaC1uYW1lPSJpbmZvIiB1bmljb2RlPSImI3hlYTA5OyIgZD0iTTI0MjIgNDY4OCBxLTExMSAwIC0yMTMgLTQzIHEtOTggLTQyIC0xNzQgLTExNy41IHEtNzYgLTc1LjUgLTExNyAtMTc0LjUgcS00MyAtMTAxIC00MyAtMjEyLjUgcTAgLTExMS41IDQzIC0yMTIuNSBxNDEgLTk4IDExNyAtMTc0IHE3NiAtNzYgMTc0IC0xMTcgcTEwMiAtNDMgMjEzIC00MyBxMTExIDAgMjEzIDQzIHE5OCA0MSAxNzMuNSAxMTcgcTc1LjUgNzYgMTE3LjUgMTc0IHE0MyAxMDEgNDMgMjEyLjUgcTAgMTExLjUgLTQzIDIxMi41IHEtNDIgOTkgLTExNy41IDE3NC41IHEtNzUuNSA3NS41IC0xNzMuNSAxMTcuNSBxLTEwMiA0MyAtMjEzIDQzIFpNMTU2MyAzMTI1IHEtODYgMCAtMTU4IC00MyBxLTcxIC00MSAtMTEyIC0xMTIgcS00MyAtNzIgLTQzIC0xNTcuNSBxMCAtODUuNSA0MyAtMTU3LjUgcTQxIC03MSAxMTIgLTExMiBxNzIgLTQzIDE1OCAtNDMgbDYyNSAwIGwwIC0xNTYyIGwtNjI1IDAgcS04NiAwIC0xNTggLTQzIHEtNzEgLTQxIC0xMTIgLTExMiBxLTQzIC03MyAtNDMgLTE1OCBxMCAtODUgNDMgLTE1OCBxNDEgLTcxIDExMiAtMTEyIHE3MiAtNDMgMTU4IC00MiBsMTg3NSAwIHE4NSAwIDE1NyA0MiBxNzEgNDEgMTEyIDExMiBxNDMgNzMgNDMgMTU4IHEwIDg1IC00MyAxNTggcS00MSA3MSAtMTEyIDExMiBxLTcyIDQzIC0xNTcgNDMgbC02MjUgMCBsMCAxODc1IHEwIDg1IC00MyAxNTcgcS00MSA3MSAtMTEyIDExMiBxLTczIDQzIC0xNTggNDMgbC05MzcgMCBaIiAvPjxnbHlwaCBnbHlwaC1uYW1lPSJtZW51IiB1bmljb2RlPSImI3hlYTBhOyIgZD0iTTYyNSA0Mzc1IGwwIC02MjUgbDM3NTAgMCBsMCA2MjUgbC0zNzUwIDAgWk02MjUgMjgxMyBsMCAtNjI1IGwzNzUwIDAgbDAgNjI1IGwtMzc1MCAwIFpNNjI1IDEyNTAgbDAgLTYyNSBsMzc1MCAwIGwwIDYyNSBsLTM3NTAgMCBaIiAvPjxnbHlwaCBnbHlwaC1uYW1lPSJtb3JlIiB1bmljb2RlPSImI3hlYTBiOyIgZD0iTTc4MSAzMDQ3IHExMTIgMCAyMTMgLTQzIHE5OCAtNDIgMTc0IC0xMTcuNSBxNzYgLTc1LjUgMTE3IC0xNzMuNSBxNDMgLTEwMiA0MyAtMjEzIHEwIC0xMTEgLTQzIC0yMTMgcS00MSAtOTggLTExNyAtMTczLjUgcS03NiAtNzUuNSAtMTc0IC0xMTcuNSBxLTEwMSAtNDMgLTIxMi41IC00MyBxLTExMS41IDAgLTIxMy41IDQzIHEtOTggNDIgLTE3My41IDExNy41IHEtNzUuNSA3NS41IC0xMTcuNSAxNzMuNSBxLTQzIDEwMiAtNDMgMjEzIHEwIDExMSA0MyAyMTMgcTQyIDk4IDExNy41IDE3My41IHE3NS41IDc1LjUgMTczLjUgMTE3LjUgcTEwMiA0MyAyMTMgNDMgWk0yNTAwIDMwNDcgcTExMSAwIDIxMyAtNDMgcTk4IC00MiAxNzMuNSAtMTE3LjUgcTc1LjUgLTc1LjUgMTE3LjUgLTE3My41IHE0MyAtMTAyIDQzIC0yMTMgcTAgLTExMSAtNDMgLTIxMyBxLTQyIC05OCAtMTE3LjUgLTE3My41IHEtNzUuNSAtNzUuNSAtMTczLjUgLTExNy41IHEtMTAyIC00MyAtMjEzIC00MyBxLTExMSAwIC0yMTMgNDMgcS05OCA0MiAtMTczLjUgMTE3LjUgcS03NS41IDc1LjUgLTExNy41IDE3My41IHEtNDMgMTAyIC00MyAyMTMgcTAgMTExIDQzIDIxMyBxNDIgOTggMTE3LjUgMTczLjUgcTc1LjUgNzUuNSAxNzMuNSAxMTcuNSBxMTAyIDQzIDIxMyA0MyBaTTQyMTkgMzA0NyBxMTExIDAgMjEzIC00MyBxOTggLTQyIDE3My41IC0xMTcuNSBxNzUuNSAtNzUuNSAxMTcuNSAtMTczLjUgcTQzIC0xMDIgNDMgLTIxMyBxMCAtMTExIC00MyAtMjEzIHEtNDIgLTk4IC0xMTcuNSAtMTczLjUgcS03NS41IC03NS41IC0xNzMuNSAtMTE3LjUgcS0xMDIgLTQzIC0yMTMuNSAtNDMgcS0xMTEuNSAwIC0yMTIuNSA0MyBxLTk4IDQyIC0xNzQgMTE3LjUgcS03NiA3NS41IC0xMTcgMTczLjUgcS00MyAxMDIgLTQzIDIxMyBxMCAxMTEgNDMgMjEzIHE0MSA5OCAxMTcgMTczLjUgcTc2IDc1LjUgMTc0IDExNy41IHExMDEgNDMgMjEzIDQzIFoiIC8+PGdseXBoIGdseXBoLW5hbWU9InBhdXNlIiB1bmljb2RlPSImI3hlYTBjOyIgZD0iTTkzOCA0MDYzIGwwIC0zMTI1IGwxMjUwIDAgbDAgMzEyNSBsLTEyNTAgMCBaTTI4MTMgNDA2MyBsMCAtMzEyNSBsMTI1MCAwIGwwIDMxMjUgbC0xMjUwIDAgWiIgLz48Z2x5cGggZ2x5cGgtbmFtZT0icGxheSIgdW5pY29kZT0iJiN4ZWEwZDsiIGQ9Ik02MjUgNDM3NSBsMzc1MCAtMTg3NSBsLTM3NTAgLTE4NzUgbDAgMzc1MCBaIiAvPjxnbHlwaCBnbHlwaC1uYW1lPSJ0cmlhbmdsZS1zIiB1bmljb2RlPSImI3hlYTBlOyIgZD0iTTEyNTAgMzEyNSBsMTI1MCAtMTI1MCBsMTI1MCAxMjQ4IGwtMjUwMCAyIFoiIC8+PGdseXBoIGdseXBoLW5hbWU9InVzZXItc3RhdHVzLWF3YXkiIHVuaWNvZGU9IiYjeGVhMGY7IiBkPSJNMjE1NiA0OTY5IHEtMzYwIC00NiAtNjk1IC0xOTcgcS0zMjYgLTE0NyAtNjAxIC0zODAgcS0yNzQgLTIzMSAtNDcyIC01MjggcS0yMDIgLTMwMSAtMzA5IC02NDIgcS0xMTAgLTM1MyAtMTEwIC03MjIgcTAgLTQwNiAxMjggLTc4OCBxMTIzIC0zNzAgMzU2IC02ODYgcTIyOSAtMzEzIDU0MiAtNTQyIHEzMTYgLTIzMiA2ODYgLTM1NiBxMzgyIC0xMjggNzg4IC0xMjggcTM2OSAwIDcyMiAxMDcgcTM0MiAxMDQgNjQ0IDMwMSBxMjk4IDE5NCA1MzMgNDYzIHEyMzYgMjcwIDM4OSA1OTMgcTE1NiAzMzEgMjEyIDY5MiBxLTE4OCAtMjA0IC00MjMuNSAtMzUxIHEtMjM1LjUgLTE0NyAtNDk4LjUgLTIyNSBxLTI2OSAtODAgLTU0NyAtODAgcS0zMjIgMCAtNjI4IDEwMyBxLTI5NSA5OSAtNTQ4IDI4NiBxLTI1MSAxODQgLTQzNSA0MzUgcS0xODcgMjUzIC0yODYgNTQ4IHEtMTAzIDMwNiAtMTAzIDYyOCBxMCAyOTMgODAgNTY4IHE3OCAyNjkgMjI1LjUgNDk4LjUgcTE0Ny41IDIyOS41IDM1MC41IDQwMi41IFoiIC8+PGdseXBoIGdseXBoLW5hbWU9InVzZXItc3RhdHVzLWRuZCIgdW5pY29kZT0iJiN4ZWExMDsiIGQ9Ik0yNTAwIDUwMDAgcS00MDYgMCAtNzg4IC0xMjggcS0zNzAgLTEyNCAtNjg2IC0zNTYgcS0zMTMgLTIyOSAtNTQyIC01NDIgcS0yMzIgLTMxNiAtMzU2IC02ODYgcS0xMjggLTM4MiAtMTI4IC03ODggcTAgLTQwNiAxMjggLTc4OCBxMTI0IC0zNzAgMzU2IC02ODYgcTIyOSAtMzEzIDU0MiAtNTQyIHEzMTYgLTIzMiA2ODYgLTM1NiBxMzgyIC0xMjggNzg4IC0xMjggcTQwNiAwIDc4OCAxMjggcTM3MCAxMjQgNjg2IDM1NiBxMzEzIDIyOSA1NDIgNTQyIHEyMzIgMzE2IDM1NiA2ODYgcTEyOCAzODIgMTI4IDc4OCBxMCA0MDYgLTEyOCA3ODggcS0xMjQgMzcwIC0zNTYgNjg2IHEtMjI5IDMxMyAtNTQyIDU0MiBxLTMxNiAyMzIgLTY4NiAzNTYgcS0zODIgMTI4IC03ODggMTI4IFpNMTU2MyAyOTY5IGwxODc1IDAgcTkxIDAgMTc4IC0zOCBxODQgLTM3IDE1MCAtMTAzIHE2NiAtNjYgMTAyIC0xNDkgcTM4IC04NyAzOCAtMTc5IHEwIC05MiAtMzggLTE3OSBxLTM2IC04MyAtMTAyIC0xNDkgcS02NiAtNjYgLTE1MCAtMTAzIHEtODcgLTM4IC0xNzggLTM4IGwtMTg3NSAwIHEtOTIgMCAtMTc5IDM4IHEtODQgMzcgLTE1MCAxMDMgcS02NiA2NiAtMTAyIDE0OSBxLTM4IDg3IC0zOCAxNzkgcTAgOTIgMzggMTc5IHEzNiA4MyAxMDIgMTQ5IHE2NiA2NiAxNTAgMTAzIHE4NyAzOCAxNzkgMzggWiIgLz48Z2x5cGggZ2x5cGgtbmFtZT0idXNlci1zdGF0dXMtaW52aXNpYmxlIiB1bmljb2RlPSImI3hlYTExOyIgZD0iTTI1MDAgNTAwMCBxLTQwNiAwIC03ODggLTEyOCBxLTM3MCAtMTI0IC02ODYgLTM1NiBxLTMxMyAtMjI5IC01NDIgLTU0MiBxLTIzMiAtMzE2IC0zNTYgLTY4NiBxLTEyOCAtMzgyIC0xMjggLTc4OCBxMCAtNDA2IDEyOCAtNzg4IHExMjQgLTM3MCAzNTYgLTY4NiBxMjI5IC0zMTMgNTQyIC01NDIgcTMxNiAtMjMyIDY4NiAtMzU2IHEzODIgLTEyOCA3ODggLTEyOCBxNDA2IDAgNzg4IDEyOCBxMzcwIDEyNCA2ODYgMzU2IHEzMTMgMjI5IDU0MiA1NDIgcTIzMiAzMTYgMzU2IDY4NiBxMTI4IDM4MiAxMjggNzg4IHEwIDQwNiAtMTI4IDc4OCBxLTEyNCAzNzAgLTM1NiA2ODYgcS0yMjkgMzEzIC01NDIgNTQyIHEtMzE2IDIzMiAtNjg2IDM1NiBxLTM4MiAxMjggLTc4OCAxMjggWk0yNTAwIDQwMDAgcTMxMSAwIDU5MCAtMTE2IHEyNzEgLTExMiA0NzYuNSAtMzE3LjUgcTIwNS41IC0yMDUuNSAzMTcuNSAtNDc2LjUgcTExNiAtMjc5IDExNiAtNTkwIHEwIC0zMTEgLTExNiAtNTkwIHEtMTEyIC0yNzEgLTMxNy41IC00NzYuNSBxLTIwNS41IC0yMDUuNSAtNDc2LjUgLTMxNy41IHEtMjc5IC0xMTYgLTU5MCAtMTE2IHEtMzExIDAgLTU5MCAxMTYgcS0yNzEgMTEyIC00NzYuNSAzMTcuNSBxLTIwNS41IDIwNS41IC0zMTcuNSA0NzYuNSBxLTExNiAyNzkgLTExNiA1OTAgcTAgMzExIDExNiA1OTAgcTExMiAyNzEgMzE3LjUgNDc2LjUgcTIwNS41IDIwNS41IDQ3Ni41IDMxNy41IHEyNzkgMTE2IDU5MCAxMTYgWiIgLz48Z2x5cGggZ2x5cGgtbmFtZT0idXNlci1zdGF0dXMtb25saW5lIiB1bmljb2RlPSImI3hlYTEyOyIgZD0iTTE1MDAgMTUwMCBsMjAwMCAwIGwwIDIwMDAgbC0yMDAwIDAgbDAgLTIwMDAgWk0yNTAwIDUwMDAgcS00MDYgMCAtNzg4IC0xMjggcS0zNzAgLTEyNCAtNjg2IC0zNTYgcS0zMTMgLTIyOSAtNTQyIC01NDIgcS0yMzIgLTMxNiAtMzU2IC02ODYgcS0xMjggLTM4MiAtMTI4IC03ODggcTAgLTQwNiAxMjggLTc4OCBxMTI0IC0zNzAgMzU2IC02ODYgcTIyOSAtMzEzIDU0MiAtNTQyIHEzMTYgLTIzMiA2ODYgLTM1NiBxMzgyIC0xMjggNzg4IC0xMjggcTQwNiAwIDc4OCAxMjggcTM3MCAxMjQgNjg2IDM1NiBxMzEzIDIyOSA1NDIgNTQyIHEyMzIgMzE2IDM1NiA2ODYgcTEyOCAzODIgMTI4IDc4OCBxMCA0MDYgLTEyOCA3ODggcS0xMjQgMzcwIC0zNTYgNjg2IHEtMjI5IDMxMyAtNTQyIDU0MiBxLTMxNiAyMzIgLTY4NiAzNTYgcS0zODIgMTI4IC03ODggMTI4IFoiIC8+PC9mb250PjwvZGVmcz48L3N2Zz4=\"},function(t,n,e){\"use strict\";e.d(n,\"b\",(function(){return r})),e.d(n,\"a\",(function(){return a}));e(26);var A=e(33),o=Object(A.getGettextBuilder)().detectLocale();[{locale:\"br\",translations:{\"{tag} (invisible)\":\"{tag} (diwelus)\",\"{tag} (restricted)\":\"{tag} (bevennet)\",Actions:\"Oberioù\",Activities:\"Oberiantizoù\",\"Animals & Nature\":\"Loened & Natur\",Choose:\"Dibab\",Close:\"Serriñ\",Custom:\"Personelañ\",Flags:\"Bannieloù\",\"Food & Drink\":\"Boued & Evajoù\",\"Frequently used\":\"Implijet alies\",Next:\"Da heul\",\"No emoji found\":\"Emoji ebet kavet\",\"No results\":\"Disoc'h ebet\",Objects:\"Traoù\",\"Pause slideshow\":\"Arsav an diaporama\",\"People & Body\":\"Tud & Korf\",\"Pick an emoji\":\"Choaz un emoji\",Previous:\"A-raok\",Search:\"Klask\",\"Search results\":\"Disoc'hoù an enklask\",\"Select a tag\":\"Choaz ur c'hlav\",Settings:\"Arventennoù\",\"Smileys & Emotion\":\"Smileyioù & Fromoù\",\"Start slideshow\":\"Kregiñ an diaporama\",Symbols:\"Arouezioù\",\"Travel & Places\":\"Beaj & Lec'hioù\",\"Unable to search the group\":\"Dibosupl eo klask ar strollad\"}},{locale:\"ca\",translations:{\"{tag} (invisible)\":\"{tag} (invisible)\",\"{tag} (restricted)\":\"{tag} (restringit)\",Actions:\"Accions\",Activities:\"Activitats\",\"Animals & Nature\":\"Animals i natura\",Choose:\"Tria\",Close:\"Tanca\",Custom:\"Personalitzat\",Flags:\"Marques\",\"Food & Drink\":\"Menjar i begudes\",\"Frequently used\":\"Utilitzats recentment\",\"Message limit of {count} characters reached\":\"S'ha arribat al límit de {count} caràcters per missatge\",Next:\"Següent\",\"No emoji found\":\"No s'ha trobat cap emoji\",\"No results\":\"Sense resultats\",Objects:\"Objectes\",\"Pause slideshow\":\"Atura la presentació\",\"People & Body\":\"Persones i cos\",\"Pick an emoji\":\"Trieu un emoji\",Previous:\"Anterior\",Search:\"Cerca\",\"Search results\":\"Resultats de cerca\",\"Select a tag\":\"Selecciona una etiqueta\",Settings:\"Paràmetres\",\"Settings navigation\":\"Navegació d'opcions\",\"Smileys & Emotion\":\"Cares i emocions\",\"Start slideshow\":\"Inicia la presentació\",Symbols:\"Símbols\",\"Travel & Places\":\"Viatges i llocs\",\"Unable to search the group\":\"No es pot cercar el grup\",\"Write message, @ to mention someone …\":\"Escriu un missatge, @ per mencionar algú...\"}},{locale:\"cs_CZ\",translations:{\"{tag} (invisible)\":\"{tag} (neviditelné)\",\"{tag} (restricted)\":\"{tag} (omezené)\",Actions:\"Akce\",Activities:\"Aktivity\",\"Animals & Nature\":\"Zvířata a příroda\",Choose:\"Zvolit\",Close:\"Zavřít\",Custom:\"Uživatelsky určené\",\"External documentation for {title}\":\"Externí dokumentace k {title}\",Flags:\"Příznaky\",\"Food & Drink\":\"Jídlo a pití\",\"Frequently used\":\"Často používané\",\"Message limit of {count} characters reached\":\"Dosaženo limitu počtu ({count}) znaků zprávy\",Next:\"Následující\",\"No emoji found\":\"Nenalezeno žádné emoji\",\"No results\":\"Nic nenalezeno\",Objects:\"Objekty\",\"Pause slideshow\":\"Pozastavit prezentaci\",\"People & Body\":\"Lidé a tělo\",\"Pick an emoji\":\"Vybrat emoji\",Previous:\"Předchozí\",Search:\"Hledat\",\"Search results\":\"Výsledky hledání\",\"Select a tag\":\"Vybrat štítek\",Settings:\"Nastavení\",\"Settings navigation\":\"Pohyb po nastavení\",\"Smileys & Emotion\":\"Úsměvy a emoce\",\"Start slideshow\":\"Spustit prezentaci\",Submit:\"Odeslat\",Symbols:\"Symboly\",\"Travel & Places\":\"Cestování a místa\",\"Unable to search the group\":\"Nedaří se hledat skupinu\",\"Write message, @ to mention someone …\":\"Pište zprávu, pokud chcete někoho zmínit, použijte @ …\"}},{locale:\"da\",translations:{\"{tag} (invisible)\":\"{tag} (usynlig)\",\"{tag} (restricted)\":\"{tag} (begrænset)\",Actions:\"Handlinger\",Activities:\"Aktiviteter\",\"Animals & Nature\":\"Dyr & Natur\",Choose:\"Vælg\",Close:\"Luk\",Custom:\"Brugerdefineret\",Flags:\"Flag\",\"Food & Drink\":\"Mad & Drikke\",\"Frequently used\":\"Ofte brugt\",\"Message limit of {count} characters reached\":\"Begrænsning på {count} tegn er nået\",Next:\"Videre\",\"No emoji found\":\"Ingen emoji fundet\",\"No results\":\"Ingen resultater\",Objects:\"Objekter\",\"Pause slideshow\":\"Suspender fremvisning\",\"People & Body\":\"Mennesker & Menneskekroppen\",\"Pick an emoji\":\"Vælg en emoji\",Previous:\"Forrige\",Search:\"Søg\",\"Search results\":\"Søgeresultater\",\"Select a tag\":\"Vælg et mærke\",Settings:\"Indstillinger\",\"Settings navigation\":\"Naviger i indstillinger\",\"Smileys & Emotion\":\"Smileys & Emotion\",\"Start slideshow\":\"Start fremvisning\",Symbols:\"Symboler\",\"Travel & Places\":\"Rejser & Rejsemål\",\"Unable to search the group\":\"Kan ikke søge på denne gruppe\",\"Write message, @ to mention someone …\":\"Skriv i meddelelse, @ for at nævne nogen …\"}},{locale:\"de\",translations:{\"{tag} (invisible)\":\"{tag} (unsichtbar)\",\"{tag} (restricted)\":\"{tag} (eingeschränkt)\",Actions:\"Aktionen\",Activities:\"Aktivitäten\",\"Animals & Nature\":\"Tiere & Natur\",Choose:\"Auswählen\",Close:\"Schließen\",Custom:\"Benutzerdefiniert\",\"External documentation for {title}\":\"Externe Dokumentation für {title}\",Flags:\"Flaggen\",\"Food & Drink\":\"Essen & Trinken\",\"Frequently used\":\"Häufig verwendet\",\"Message limit of {count} characters reached\":\"Nachrichtenlimit von {count} Zeichen erreicht\",Next:\"Weiter\",\"No emoji found\":\"Kein Emoji gefunden\",\"No results\":\"Keine Ergebnisse\",Objects:\"Gegenstände\",\"Pause slideshow\":\"Diashow pausieren\",\"People & Body\":\"Menschen & Körper\",\"Pick an emoji\":\"Ein Emoji auswählen\",Previous:\"Vorherige\",Search:\"Suche\",\"Search results\":\"Suchergebnisse\",\"Select a tag\":\"Schlagwort auswählen\",Settings:\"Einstellungen\",\"Settings navigation\":\"Einstellungen-Navigation\",\"Smileys & Emotion\":\"Smileys & Emotionen\",\"Start slideshow\":\"Diashow starten\",Submit:\"Einreichen\",Symbols:\"Symbole\",\"Travel & Places\":\"Reisen & Orte\",\"Unable to search the group\":\"Die Gruppe konnte nicht durchsucht werden\",\"Write message, @ to mention someone …\":\"Nachricht schreiben, @ um jemanden zu erwähnen ...\"}},{locale:\"de_DE\",translations:{\"{tag} (invisible)\":\"{tag} (unsichtbar)\",\"{tag} (restricted)\":\"{tag} (eingeschränkt)\",Actions:\"Aktionen\",Activities:\"Aktivitäten\",\"Animals & Nature\":\"Tiere & Natur\",Choose:\"Auswählen\",Close:\"Schließen\",Custom:\"Benutzerdefiniert\",\"External documentation for {title}\":\"Externe Dokumentation für {title}\",Flags:\"Flaggen\",\"Food & Drink\":\"Essen & Trinken\",\"Frequently used\":\"Häufig verwendet\",\"Message limit of {count} characters reached\":\"Nachrichtenlimit von {count} Zeichen erreicht\",Next:\"Weiter\",\"No emoji found\":\"Kein Emoji gefunden\",\"No results\":\"Keine Ergebnisse\",Objects:\"Gegenstände\",\"Pause slideshow\":\"Diashow pausieren\",\"People & Body\":\"Menschen & Körper\",\"Pick an emoji\":\"Ein Emoji auswählen\",Previous:\"Vorherige\",Search:\"Suche\",\"Search results\":\"Suchergebnisse\",\"Select a tag\":\"Schlagwort auswählen\",Settings:\"Einstellungen\",\"Settings navigation\":\"Einstellungen-Navigation\",\"Smileys & Emotion\":\"Smileys & Emotionen\",\"Start slideshow\":\"Diashow starten\",Submit:\"Einreichen\",Symbols:\"Symbole\",\"Travel & Places\":\"Reisen & Orte\",\"Unable to search the group\":\"Die Gruppe kann nicht durchsucht werden\",\"Write message, @ to mention someone …\":\"Nachricht schreiben, @ um jemanden zu erwähnen ...\"}},{locale:\"el\",translations:{\"{tag} (invisible)\":\"{tag} (αόρατο)\",\"{tag} (restricted)\":\"{tag} (περιορισμένο)\",Actions:\"Ενέργειες\",Activities:\"Δραστηριότητες\",\"Animals & Nature\":\"Ζώα & Φύση\",Choose:\"Επιλογή\",Close:\"Κλείσιμο\",Custom:\"Προσαρμογή\",Flags:\"Σημαίες\",\"Food & Drink\":\"Φαγητό & Ποτό\",\"Frequently used\":\"Συχνά χρησιμοποιούμενο\",Next:\"Επόμενο\",\"No emoji found\":\"Δεν βρέθηκε emoji\",\"No results\":\"Κανένα αποτέλεσμα\",Objects:\"Αντικείμενα\",\"Pause slideshow\":\"Παύση προβολής διαφανειών\",\"People & Body\":\"Άνθρωποι & Σώμα\",\"Pick an emoji\":\"Επιλέξτε ένα emoji\",Previous:\"Προηγούμενο\",Search:\"Αναζήτηση\",\"Search results\":\"Αποτελέσματα αναζήτησης\",\"Select a tag\":\"Επιλογή ετικέτας\",Settings:\"Ρυθμίσεις\",\"Smileys & Emotion\":\"Φατσούλες & Συναίσθημα\",\"Start slideshow\":\"Έναρξη προβολής διαφανειών\",Symbols:\"Σύμβολα\",\"Travel & Places\":\"Ταξίδια & Τοποθεσίες\",\"Unable to search the group\":\"Δεν είναι δυνατή η αναζήτηση της ομάδας\"}},{locale:\"eo\",translations:{\"{tag} (invisible)\":\"{tag} (kaŝita)\",\"{tag} (restricted)\":\"{tag} (limigita)\",Actions:\"Agoj\",Activities:\"Aktiveco\",\"Animals & Nature\":\"Bestoj & Naturo\",Choose:\"Elektu\",Close:\"Fermu\",Custom:\"Propra\",Flags:\"Flagoj\",\"Food & Drink\":\"Manĝaĵo & Trinkaĵo\",\"Frequently used\":\"Ofte uzataj\",\"Message limit of {count} characters reached\":\"La limo je {count} da literoj atingita\",Next:\"Sekva\",\"No emoji found\":\"La emoĝio forestas\",\"No results\":\"La rezulto forestas\",Objects:\"Objektoj\",\"Pause slideshow\":\"Payzi bildprezenton\",\"People & Body\":\"Homoj & Korpo\",\"Pick an emoji\":\"Elekti emoĝion \",Previous:\"Antaŭa\",Search:\"Serĉi\",\"Search results\":\"Serĉrezultoj\",\"Select a tag\":\"Elektu etikedon\",Settings:\"Agordo\",\"Settings navigation\":\"Agorda navigado\",\"Smileys & Emotion\":\"Ridoj kaj Emocioj\",\"Start slideshow\":\"Komenci bildprezenton\",Symbols:\"Signoj\",\"Travel & Places\":\"Vojaĵoj & Lokoj\",\"Unable to search the group\":\"Ne eblas serĉi en la grupo\",\"Write message, @ to mention someone …\":\"Mesaĝi, uzu @ por mencii iun ...\"}},{locale:\"es\",translations:{\"{tag} (invisible)\":\"{tag} (invisible)\",\"{tag} (restricted)\":\"{tag} (restringido)\",Actions:\"Acciones\",Activities:\"Actividades\",\"Animals & Nature\":\"Animales y naturaleza\",Choose:\"Elegir\",Close:\"Cerrar\",Custom:\"Personalizado\",Flags:\"Banderas\",\"Food & Drink\":\"Comida y bebida\",\"Frequently used\":\"Usado con frecuenca\",\"Message limit of {count} characters reached\":\"El mensaje ha alcanzado el límite de {count} caracteres\",Next:\"Siguiente\",\"No emoji found\":\"No hay ningún emoji\",\"No results\":\" Ningún resultado\",Objects:\"Objetos\",\"Pause slideshow\":\"Pausar la presentación \",\"People & Body\":\"Personas y cuerpos\",\"Pick an emoji\":\"Elegir un emoji\",Previous:\"Anterior\",Search:\"Buscar\",\"Search results\":\"Resultados de la búsqueda\",\"Select a tag\":\"Seleccione una etiqueta\",Settings:\"Ajustes\",\"Settings navigation\":\"Navegación por ajustes\",\"Smileys & Emotion\":\"Smileys y emoticonos\",\"Start slideshow\":\"Iniciar la presentación\",Symbols:\"Símbolos\",\"Travel & Places\":\"Viajes y lugares\",\"Unable to search the group\":\"No es posible buscar en el grupo\",\"Write message, @ to mention someone …\":\"Escriba un mensaje, @ para mencionar a alguien...\"}},{locale:\"eu\",translations:{\"{tag} (invisible)\":\"{tag} (ikusezina)\",\"{tag} (restricted)\":\"{tag} (mugatua)\",Choose:\"Aukeratu\",Close:\"Itxi\",Next:\"Hurrengoa\",\"No results\":\"Emaitzarik ez\",\"Pause slideshow\":\"Pausatu diaporama\",Previous:\"Aurrekoa\",\"Select a tag\":\"Hautatu etiketa bat\",Settings:\"Ezarpenak\",\"Start slideshow\":\"Hasi diaporama\"}},{locale:\"fi_FI\",translations:{\"{tag} (invisible)\":\"{tag} (näkymätön)\",\"{tag} (restricted)\":\"{tag} (rajoitettu)\",Actions:\"Toiminnot\",Activities:\"Aktiviteetit\",\"Animals & Nature\":\"Eläimet & luonto\",Choose:\"Valitse\",Close:\"Sulje\",Custom:\"Mukautettu\",Flags:\"Liput\",\"Food & Drink\":\"Ruoka & juoma\",\"Frequently used\":\"Usein käytetyt\",\"Message limit of {count} characters reached\":\"Viestin maksimimerkkimäärä {count} täynnä \",Next:\"Seuraava\",\"No emoji found\":\"Emojia ei löytynyt\",\"No results\":\"Ei tuloksia\",Objects:\"Esineet & asiat\",\"Pause slideshow\":\"Keskeytä diaesitys\",\"People & Body\":\"Ihmiset & keho\",\"Pick an emoji\":\"Valitse emoji\",Previous:\"Edellinen\",Search:\"Etsi\",\"Search results\":\"Hakutulokset\",\"Select a tag\":\"Valitse tagi\",Settings:\"Asetukset\",\"Settings navigation\":\"Asetusnavigaatio\",\"Smileys & Emotion\":\"Hymiöt ja & tunteet\",\"Start slideshow\":\"Aloita diaesitys\",Symbols:\"Symbolit\",\"Travel & Places\":\"Matkustus & kohteet\",\"Unable to search the group\":\"Ryhmää ei voi hakea\",\"Write message, @ to mention someone …\":\"Kirjoita viesti, @ mainitaksesi jonkun...\"}},{locale:\"fr\",translations:{\"{tag} (invisible)\":\"{tag} (invisible)\",\"{tag} (restricted)\":\"{tag} (restreint)\",Actions:\"Actions\",Activities:\"Activités\",\"Animals & Nature\":\"Animaux & Nature\",Choose:\"Choisir\",Close:\"Fermer\",Custom:\"Personnalisé\",Flags:\"Drapeaux\",\"Food & Drink\":\"Nourriture & Boissons\",\"Frequently used\":\"Utilisés fréquemment\",\"Message limit of {count} characters reached\":\"Limite de messages de {count} caractères atteinte\",Next:\"Suivant\",\"No emoji found\":\"Pas d’émoji trouvé\",\"No results\":\"Aucun résultat\",Objects:\"Objets\",\"Pause slideshow\":\"Mettre le diaporama en pause\",\"People & Body\":\"Personnes & Corps\",\"Pick an emoji\":\"Choisissez un émoji\",Previous:\"Précédent\",Search:\"Chercher\",\"Search results\":\"Résultats de recherche\",\"Select a tag\":\"Sélectionnez une balise\",Settings:\"Paramètres\",\"Settings navigation\":\"Navigation dans les paramètres\",\"Smileys & Emotion\":\"Smileys & Émotions\",\"Start slideshow\":\"Démarrer le diaporama\",Symbols:\"Symboles\",\"Travel & Places\":\"Voyage & Lieux\",\"Unable to search the group\":\"Impossible de chercher le groupe\",\"Write message, @ to mention someone …\":\"Écrivez un message, @ pour mentionner quelqu'un…\"}},{locale:\"gl\",translations:{\"{tag} (invisible)\":\"{tag} (invisíbel)\",\"{tag} (restricted)\":\"{tag} (restrinxido)\",Actions:\"Accións\",Activities:\"Actividades\",\"Animals & Nature\":\"Animais e natureza\",Choose:\"Escoller\",Close:\"Pechar\",Custom:\"Personalizado\",Flags:\"Bandeiras\",\"Food & Drink\":\"Comida e bebida\",\"Frequently used\":\"Usado con frecuencia\",\"Message limit of {count} characters reached\":\"Acadouse o límite de {count} caracteres por mensaxe\",Next:\"Seguinte\",\"No emoji found\":\"Non se atopou ningún «emoji»\",\"No results\":\"Sen resultados\",Objects:\"Obxectos\",\"Pause slideshow\":\"Pausar o diaporama\",\"People & Body\":\"Persoas e corpo\",\"Pick an emoji\":\"Escolla un «emoji»\",Previous:\"Anterir\",Search:\"Buscar\",\"Search results\":\"Resultados da busca\",\"Select a tag\":\"Seleccione unha etiqueta\",Settings:\"Axustes\",\"Settings navigation\":\"Navegación de axustes\",\"Smileys & Emotion\":\"Sorrisos e emocións\",\"Start slideshow\":\"Iniciar o diaporama\",Symbols:\"Símbolos\",\"Travel & Places\":\"Viaxes e lugares\",\"Unable to search the group\":\"Non foi posíbel buscar o grupo\",\"Write message, @ to mention someone …\":\"Escriba a mensaxe, @ para mencionar a alguén…\"}},{locale:\"he\",translations:{\"{tag} (invisible)\":\"{tag} (נסתר)\",\"{tag} (restricted)\":\"{tag} (מוגבל)\",Actions:\"פעולות\",Activities:\"פעילויות\",\"Animals & Nature\":\"חיות וטבע\",Choose:\"בחירה\",Close:\"סגירה\",Custom:\"בהתאמה אישית\",Flags:\"דגלים\",\"Food & Drink\":\"מזון ומשקאות\",\"Frequently used\":\"בשימוש תדיר\",Next:\"הבא\",\"No emoji found\":\"לא נמצא אמוג׳י\",\"No results\":\"אין תוצאות\",Objects:\"חפצים\",\"Pause slideshow\":\"השהיית מצגת\",\"People & Body\":\"אנשים וגוף\",\"Pick an emoji\":\"נא לבחור אמוג׳י\",Previous:\"הקודם\",Search:\"חיפוש\",\"Search results\":\"תוצאות חיפוש\",\"Select a tag\":\"בחירת תגית\",Settings:\"הגדרות\",\"Smileys & Emotion\":\"חייכנים ורגשונים\",\"Start slideshow\":\"התחלת המצגת\",Symbols:\"סמלים\",\"Travel & Places\":\"טיולים ומקומות\",\"Unable to search the group\":\"לא ניתן לחפש בקבוצה\"}},{locale:\"hu_HU\",translations:{\"{tag} (invisible)\":\"{tag} (láthatatlan)\",\"{tag} (restricted)\":\"{tag} (korlátozott)\",Actions:\"Műveletek\",Activities:\"Tevékenységek\",\"Animals & Nature\":\"Állatok és természet\",Choose:\"Válassszon\",Close:\"Bezárás\",Custom:\"Egyéni\",Flags:\"Zászló\",\"Food & Drink\":\"Étel és ital\",\"Frequently used\":\"Gyakran használt\",\"Message limit of {count} characters reached\":\"{count} karakteres üzenetkorlát elérve\",Next:\"Következő\",\"No emoji found\":\"Nem található emodzsi\",\"No results\":\"Nincs találat\",Objects:\"Tárgyak\",\"Pause slideshow\":\"Diavetítés szüneteltetése\",\"People & Body\":\"Emberek és test\",\"Pick an emoji\":\"Válasszon egy emodzsit\",Previous:\"Előző\",Search:\"Keresés\",\"Search results\":\"Találatok\",\"Select a tag\":\"Válasszon címkét\",Settings:\"Beállítások\",\"Settings navigation\":\"Navigáció a beállításokban\",\"Smileys & Emotion\":\"Mosolyok és érzelmek\",\"Start slideshow\":\"Diavetítés indítása\",Symbols:\"Szimbólumok\",\"Travel & Places\":\"Utazás és helyek\",\"Unable to search the group\":\"A csoport nem kereshető\",\"Write message, @ to mention someone …\":\"Írjon üzenetet, @ valaki megemlítéséhez…\"}},{locale:\"is\",translations:{\"{tag} (invisible)\":\"{tag} (ósýnilegt)\",\"{tag} (restricted)\":\"{tag} (takmarkað)\",Actions:\"Aðgerðir\",Activities:\"Aðgerðir\",\"Animals & Nature\":\"Dýr og náttúra\",Choose:\"Velja\",Close:\"Loka\",Custom:\"Sérsniðið\",Flags:\"Flögg\",\"Food & Drink\":\"Matur og drykkur\",\"Frequently used\":\"Oftast notað\",Next:\"Næsta\",\"No emoji found\":\"Ekkert tjáningartákn fannst\",\"No results\":\"Engar niðurstöður\",Objects:\"Hlutir\",\"Pause slideshow\":\"Gera hlé á skyggnusýningu\",\"People & Body\":\"Fólk og líkami\",\"Pick an emoji\":\"Veldu tjáningartákn\",Previous:\"Fyrri\",Search:\"Leita\",\"Search results\":\"Leitarniðurstöður\",\"Select a tag\":\"Veldu merki\",Settings:\"Stillingar\",\"Smileys & Emotion\":\"Broskallar og tilfinningar\",\"Start slideshow\":\"Byrja skyggnusýningu\",Symbols:\"Tákn\",\"Travel & Places\":\"Staðir og ferðalög\",\"Unable to search the group\":\"Get ekki leitað í hópnum\"}},{locale:\"it\",translations:{\"{tag} (invisible)\":\"{tag} (invisibile)\",\"{tag} (restricted)\":\"{tag} (limitato)\",Actions:\"Azioni\",Activities:\"Attività\",\"Animals & Nature\":\"Animali e natura\",Choose:\"Scegli\",Close:\"Chiudi\",Custom:\"Personalizzato\",\"External documentation for {title}\":\"Documentazione esterna per {title}\",Flags:\"Bandiere\",\"Food & Drink\":\"Cibo e bevande\",\"Frequently used\":\"Usati di frequente\",\"Message limit of {count} characters reached\":\"Limite dei messaggi di {count} caratteri raggiunto\",Next:\"Successivo\",\"No emoji found\":\"Nessun emoji trovato\",\"No results\":\"Nessun risultato\",Objects:\"Oggetti\",\"Pause slideshow\":\"Presentazione in pausa\",\"People & Body\":\"Persone e corpo\",\"Pick an emoji\":\"Scegli un emoji\",Previous:\"Precedente\",Search:\"Cerca\",\"Search results\":\"Risultati di ricerca\",\"Select a tag\":\"Seleziona un'etichetta\",Settings:\"Impostazioni\",\"Settings navigation\":\"Navigazione delle impostazioni\",\"Smileys & Emotion\":\"Faccine ed emozioni\",\"Start slideshow\":\"Avvia presentazione\",Submit:\"Invia\",Symbols:\"Simboli\",\"Travel & Places\":\"Viaggi e luoghi\",\"Unable to search the group\":\"Impossibile cercare il gruppo\",\"Write message, @ to mention someone …\":\"Scrivi messaggio, @ per menzionare qualcuno…\"}},{locale:\"ja_JP\",translations:{\"{tag} (invisible)\":\"{タグ} (不可視)\",\"{tag} (restricted)\":\"{タグ} (制限付)\",Actions:\"操作\",Activities:\"アクティビティ\",\"Animals & Nature\":\"動物と自然\",Choose:\"選択\",Close:\"閉じる\",Custom:\"カスタム\",Flags:\"国旗\",\"Food & Drink\":\"食べ物と飲み物\",\"Frequently used\":\"よく使うもの\",\"Message limit of {count} characters reached\":\"{count} 文字のメッセージ上限に達しています\",Next:\"次\",\"No emoji found\":\"絵文字が見つかりません\",\"No results\":\"なし\",Objects:\"物\",\"Pause slideshow\":\"スライドショーを一時停止\",\"People & Body\":\"様々な人と体の部位\",\"Pick an emoji\":\"絵文字を選択\",Previous:\"前\",Search:\"検索\",\"Search results\":\"検索結果\",\"Select a tag\":\"タグを選択\",Settings:\"設定\",\"Settings navigation\":\"ナビゲーション設定\",\"Smileys & Emotion\":\"笑顔と気持ち\",\"Start slideshow\":\"スライドショーを開始\",Symbols:\"記号\",\"Travel & Places\":\"旅行と場所\",\"Unable to search the group\":\"グループを検索できません\",\"Write message, @ to mention someone …\":\"メッセージを書く、@ で通知します。\"}},{locale:\"lt_LT\",translations:{\"{tag} (invisible)\":\"{tag} (nematoma)\",\"{tag} (restricted)\":\"{tag} (apribota)\",Actions:\"Veiksmai\",Activities:\"Veiklos\",\"Animals & Nature\":\"Gyvūnai ir gamta\",Choose:\"Pasirinkti\",Close:\"Užverti\",Custom:\"Tinkinti\",\"External documentation for {title}\":\"Išorinė {title} dokumentacija\",Flags:\"Vėliavos\",\"Food & Drink\":\"Maistas ir gėrimai\",\"Frequently used\":\"Dažniausiai naudoti\",\"Message limit of {count} characters reached\":\"Pasiekta {count} simbolių žinutės riba\",Next:\"Kitas\",\"No emoji found\":\"Nerasta jaustukų\",\"No results\":\"Nėra rezultatų\",Objects:\"Objektai\",\"Pause slideshow\":\"Pristabdyti skaidrių rodymą\",\"People & Body\":\"Žmonės ir kūnas\",\"Pick an emoji\":\"Pasirinkti jaustuką\",Previous:\"Ankstesnis\",Search:\"Ieškoti\",\"Search results\":\"Paieškos rezultatai\",\"Select a tag\":\"Pasirinkti žymę\",Settings:\"Nustatymai\",\"Settings navigation\":\"Naršymas nustatymuose\",\"Smileys & Emotion\":\"Šypsenos ir emocijos\",\"Start slideshow\":\"Pradėti skaidrių rodymą\",Submit:\"Pateikti\",Symbols:\"Simboliai\",\"Travel & Places\":\"Kelionės ir vietos\",\"Unable to search the group\":\"Nepavyko atlikti paiešką grupėje\",\"Write message, @ to mention someone …\":\"Rašykite žinutę, naudokite @ norėdami kažką paminėti…\"}},{locale:\"lv\",translations:{\"{tag} (invisible)\":\"{tag} (neredzams)\",\"{tag} (restricted)\":\"{tag} (ierobežots)\",Choose:\"Izvēlēties\",Close:\"Aizvērt\",Next:\"Nākamais\",\"No results\":\"Nav rezultātu\",\"Pause slideshow\":\"Pauzēt slaidrādi\",Previous:\"Iepriekšējais\",\"Select a tag\":\"Izvēlēties birku\",Settings:\"Iestatījumi\",\"Start slideshow\":\"Sākt slaidrādi\"}},{locale:\"mk\",translations:{\"{tag} (invisible)\":\"{tag} (невидливо)\",\"{tag} (restricted)\":\"{tag} (ограничено)\",Actions:\"Акции\",Activities:\"Активности\",\"Animals & Nature\":\"Животни & Природа\",Choose:\"Избери\",Close:\"Затвори\",Custom:\"Прилагодени\",Flags:\"Знамиња\",\"Food & Drink\":\"Храна & Пијалоци\",\"Frequently used\":\"Најчесто користени\",\"Message limit of {count} characters reached\":\"Ограничувањето на должината на пораката од {count} карактери е надминато\",Next:\"Следно\",\"No emoji found\":\"Не се пронајдени емотикони\",\"No results\":\"Нема резултати\",Objects:\"Објекти\",\"Pause slideshow\":\"Пузирај слајдшоу\",\"People & Body\":\"Луѓе & Тело\",\"Pick an emoji\":\"Избери емотикон\",Previous:\"Предходно\",Search:\"Барај\",\"Search results\":\"Резултати од барувањето\",\"Select a tag\":\"Избери ознака\",Settings:\"Параметри\",\"Settings navigation\":\"Параметри за навигација\",\"Smileys & Emotion\":\"Смешковци & Емотикони\",\"Start slideshow\":\"Стартувај слајдшоу\",Symbols:\"Симболи\",\"Travel & Places\":\"Патувања & Места\",\"Unable to search the group\":\"Неможе да се принајде групата\",\"Write message, @ to mention someone …\":\"Напиши порака, @ за да спомнеш некој …\"}},{locale:\"nb_NO\",translations:{\"{tag} (invisible)\":\"{tag} (usynlig)\",\"{tag} (restricted)\":\"{tag} (beskyttet)\",Actions:\"Handlinger\",Activities:\"Aktiviteter\",\"Animals & Nature\":\"Dyr og natur\",Choose:\"Velg\",Close:\"Lukk\",Custom:\"Selvvalgt\",Flags:\"Flagg\",\"Food & Drink\":\"Mat og drikke\",\"Frequently used\":\"Ofte brukt\",Next:\"Neste\",\"No emoji found\":\"Fant ingen emoji\",\"No results\":\"Ingen resultater\",Objects:\"Objekter\",\"Pause slideshow\":\"Pause lysbildefremvisning\",\"People & Body\":\"Mennesker og kropp\",\"Pick an emoji\":\"Velg en emoji\",Previous:\"Forrige\",Search:\"Søk\",\"Search results\":\"Søkeresultater\",\"Select a tag\":\"Velg en merkelapp\",Settings:\"Innstillinger\",\"Smileys & Emotion\":\"Smilefjes og følelser\",\"Start slideshow\":\"Start lysbildefremvisning\",Symbols:\"Symboler\",\"Travel & Places\":\"Reise og steder\",\"Unable to search the group\":\"Kunne ikke søke i gruppen\"}},{locale:\"nl\",translations:{\"{tag} (invisible)\":\"{tag} (onzichtbaar)\",\"{tag} (restricted)\":\"{tag} (beperkt)\",Actions:\"Acties\",Activities:\"Activiteiten\",\"Animals & Nature\":\"Dieren & Natuur\",Choose:\"Kies\",Close:\"Sluiten\",Custom:\"Aangepast\",Flags:\"Vlaggen\",\"Food & Drink\":\"Eten & Drinken\",\"Frequently used\":\"Vaak gebruikt\",\"Message limit of {count} characters reached\":\"Berichtlengte van {count} karakters bereikt\",Next:\"Volgende\",\"No emoji found\":\"Geen emoji gevonden\",\"No results\":\"Geen resultaten\",Objects:\"Objecten\",\"Pause slideshow\":\"Pauzeer diavoorstelling\",\"People & Body\":\"Mensen & Lichaam\",\"Pick an emoji\":\"Kies een emoji\",Previous:\"Vorige\",Search:\"Zoeken\",\"Search results\":\"Zoekresultaten\",\"Select a tag\":\"Selecteer een label\",Settings:\"Instellingen\",\"Settings navigation\":\"Instellingen navigatie\",\"Smileys & Emotion\":\"Smileys & Emotie\",\"Start slideshow\":\"Start diavoorstelling\",Symbols:\"Symbolen\",\"Travel & Places\":\"Reizen & Plaatsen\",\"Unable to search the group\":\"Kan niet in de groep zoeken\",\"Write message, @ to mention someone …\":\"Schrijf een bericht, @ om iemand te noemen ...\"}},{locale:\"oc\",translations:{\"{tag} (invisible)\":\"{tag} (invisible)\",\"{tag} (restricted)\":\"{tag} (limit)\",Actions:\"Accions\",Choose:\"Causir\",Close:\"Tampar\",Next:\"Seguent\",\"No results\":\"Cap de resultat\",\"Pause slideshow\":\"Metre en pausa lo diaporama\",Previous:\"Precedent\",\"Select a tag\":\"Seleccionar una etiqueta\",Settings:\"Paramètres\",\"Start slideshow\":\"Lançar lo diaporama\"}},{locale:\"pl\",translations:{\"{tag} (invisible)\":\"{tag} (niewidoczna)\",\"{tag} (restricted)\":\"{tag} (ograniczona)\",Actions:\"Działania\",Activities:\"Aktywność\",\"Animals & Nature\":\"Zwierzęta i natura\",Choose:\"Wybierz\",Close:\"Zamknij\",Custom:\"Zwyczajne\",\"External documentation for {title}\":\"Dokumentacja zewnętrzna dla {title}\",Flags:\"Flagi\",\"Food & Drink\":\"Jedzenie i picie\",\"Frequently used\":\"Często używane\",\"Message limit of {count} characters reached\":\"Przekroczono limit wiadomości wynoszący {count} znaków\",Next:\"Następny\",\"No emoji found\":\"Nie znaleziono emotikonów\",\"No results\":\"Brak wyników\",Objects:\"Obiekty\",\"Pause slideshow\":\"Wstrzymaj pokaz slajdów\",\"People & Body\":\"Ludzie i ciało\",\"Pick an emoji\":\"Wybierz emoji\",Previous:\"Poprzedni\",Search:\"Szukaj\",\"Search results\":\"Wyniki wyszukiwania\",\"Select a tag\":\"Wybierz etykietę\",Settings:\"Ustawienia\",\"Settings navigation\":\"Nawigacja ustawień\",\"Smileys & Emotion\":\"Buźki i emotikony\",\"Start slideshow\":\"Rozpocznij pokaz slajdów\",Submit:\"Wyślij\",Symbols:\"Symbole\",\"Travel & Places\":\"Podróże i miejsca\",\"Unable to search the group\":\"Nie można przeszukać grupy\",\"Write message, @ to mention someone …\":\"Napisz wiadomość, aby wspomnieć o kimś użyj @…\"}},{locale:\"pt_BR\",translations:{\"{tag} (invisible)\":\"{tag} (invisível)\",\"{tag} (restricted)\":\"{tag} (restrito) \",Actions:\"Ações\",Activities:\"Atividades\",\"Animals & Nature\":\"Animais & Natureza\",Choose:\"Escolher\",Close:\"Fechar\",Custom:\"Personalizado\",\"External documentation for {title}\":\"Documentação externa para {title}\",Flags:\"Bandeiras\",\"Food & Drink\":\"Comida & Bebida\",\"Frequently used\":\"Mais usados\",\"Message limit of {count} characters reached\":\"Limite de mensagem de {count} caracteres atingido\",Next:\"Próximo\",\"No emoji found\":\"Nenhum emoji encontrado\",\"No results\":\"Sem resultados\",Objects:\"Objetos\",\"Pause slideshow\":\"Pausar apresentação de slides\",\"People & Body\":\"Pessoas & Corpo\",\"Pick an emoji\":\"Escolha um emoji\",Previous:\"Anterior\",Search:\"Pesquisar\",\"Search results\":\"Resultados da pesquisa\",\"Select a tag\":\"Selecionar uma tag\",Settings:\"Configurações\",\"Settings navigation\":\"Navegação de configurações\",\"Smileys & Emotion\":\"Smiles & Emoções\",\"Start slideshow\":\"Iniciar apresentação de slides\",Submit:\"Enviar\",Symbols:\"Símbolo\",\"Travel & Places\":\"Viagem & Lugares\",\"Unable to search the group\":\"Não foi possível pesquisar o grupo\",\"Write message, @ to mention someone …\":\"Escreva mensagem, @ para mencionar alguém ...\"}},{locale:\"pt_PT\",translations:{\"{tag} (invisible)\":\"{tag} (invisivel)\",\"{tag} (restricted)\":\"{tag} (restrito)\",Actions:\"Ações\",Choose:\"Escolher\",Close:\"Fechar\",Next:\"Seguinte\",\"No results\":\"Sem resultados\",\"Pause slideshow\":\"Pausar diaporama\",Previous:\"Anterior\",\"Select a tag\":\"Selecionar uma etiqueta\",Settings:\"Definições\",\"Start slideshow\":\"Iniciar diaporama\",\"Unable to search the group\":\"Não é possível pesquisar o grupo\"}},{locale:\"ru\",translations:{\"{tag} (invisible)\":\"{tag} (невидимое)\",\"{tag} (restricted)\":\"{tag} (ограниченное)\",Choose:\"Выберите\",Close:\"Закрыть\",Next:\"Следующее\",\"No results\":\"Результаты отсуствуют\",\"Pause slideshow\":\"Приостановить показ слйдов\",Previous:\"Предыдущее\",\"Select a tag\":\"Выберите метку\",Settings:\"Параметры\",\"Start slideshow\":\"Начать показ слайдов\"}},{locale:\"sk_SK\",translations:{\"{tag} (invisible)\":\"{tag} (neviditeľný)\",\"{tag} (restricted)\":\"{tag} (obmedzený)\",Actions:\"Akcie\",Activities:\"Aktivity\",\"Animals & Nature\":\"Zvieratá a príroda\",Choose:\"Vybrať\",Close:\"Zatvoriť\",Custom:\"Zvyk\",Flags:\"Vlajky\",\"Food & Drink\":\"Jedlo a nápoje\",\"Frequently used\":\"Často používané\",Next:\"Ďalší\",\"No emoji found\":\"Nenašli sa žiadne emodži\",\"No results\":\"Žiadne výsledky\",Objects:\"Objekty\",\"Pause slideshow\":\"Pozastaviť prezentáciu\",\"People & Body\":\"Ľudia a telo\",\"Pick an emoji\":\"Vyberte si emodži\",Previous:\"Predchádzajúci\",Search:\"Hľadať\",\"Search results\":\"Výsledky vyhľadávania\",\"Select a tag\":\"Vybrať štítok\",Settings:\"Nastavenia\",\"Smileys & Emotion\":\"Smajlíky a emócie\",\"Start slideshow\":\"Začať prezentáciu\",Symbols:\"Symboly\",\"Travel & Places\":\"Cestovanie a miesta\",\"Unable to search the group\":\"Skupinu sa nepodarilo nájsť\"}},{locale:\"sl\",translations:{\"{tag} (invisible)\":\"{tag} (nevidno)\",\"{tag} (restricted)\":\"{tag} (omejeno)\",Actions:\"Dejanja\",Activities:\"Dejavnosti\",\"Animals & Nature\":\"Živali in Narava\",Choose:\"Izbor\",Close:\"Zapri\",Custom:\"Po meri\",Flags:\"Zastavice\",\"Food & Drink\":\"Hrana in Pijača\",\"Frequently used\":\"Pogostost uporabe\",Next:\"Naslednji\",\"No emoji found\":\"Ni najdenih izraznih ikon\",\"No results\":\"Ni zadetkov\",Objects:\"Predmeti\",\"Pause slideshow\":\"Ustavi predstavitev\",\"People & Body\":\"Ljudje in Telo\",\"Pick an emoji\":\"Izbor izrazne ikone\",Previous:\"Predhodni\",Search:\"Iskanje\",\"Search results\":\"Zadetki iskanja\",\"Select a tag\":\"Izbor oznake\",Settings:\"Nastavitve\",\"Settings navigation\":\"Krmarjenje nastavitev\",\"Smileys & Emotion\":\"Izrazne ikone\",\"Start slideshow\":\"Začni predstavitev\",Symbols:\"Simboli\",\"Travel & Places\":\"Potovanja in Kraji\",\"Unable to search the group\":\"Ni mogoče iskati po skuspini\",\"Write message, @ to mention someone …\":\"Napišite sporočilo, z @ omenite osebo ...\"}},{locale:\"sv\",translations:{\"{tag} (invisible)\":\"{tag} (osynlig)\",\"{tag} (restricted)\":\"{tag} (begränsad)\",Actions:\"Åtgärder\",Activities:\"Aktiviteter\",\"Animals & Nature\":\"Djur & Natur\",Choose:\"Välj\",Close:\"Stäng\",Custom:\"Anpassad\",Flags:\"Flaggor\",\"Food & Drink\":\"Mat & Dryck\",\"Frequently used\":\"Används ofta\",\"Message limit of {count} characters reached\":\"Meddelandegräns {count} tecken används\",Next:\"Nästa\",\"No emoji found\":\"Hittade inga emojis\",\"No results\":\"Inga resultat\",Objects:\"Objekt\",\"Pause slideshow\":\"Pausa bildspelet\",\"People & Body\":\"Kropp & Själ\",\"Pick an emoji\":\"Välj en emoji\",Previous:\"Föregående\",Search:\"Sök\",\"Search results\":\"Sökresultat\",\"Select a tag\":\"Välj en tag\",Settings:\"Inställningar\",\"Settings navigation\":\"Inställningsmeny\",\"Smileys & Emotion\":\"Selfies & Känslor\",\"Start slideshow\":\"Starta bildspelet\",Symbols:\"Symboler\",\"Travel & Places\":\"Resor & Sevärdigheter\",\"Unable to search the group\":\"Kunde inte söka i gruppen\",\"Write message, @ to mention someone …\":\"Skicka meddelande, skriv @ för att omnämna någon ...\"}},{locale:\"tr\",translations:{\"{tag} (invisible)\":\"{tag} (görünmez)\",\"{tag} (restricted)\":\"{tag} (kısıtlı)\",Actions:\"İşlemler\",Activities:\"Etkinlikler\",\"Animals & Nature\":\"Hayvanlar ve Doğa\",Choose:\"Seçin\",Close:\"Kapat\",Custom:\"Özel\",\"External documentation for {title}\":\"{title} için dış belgeler\",Flags:\"Bayraklar\",\"Food & Drink\":\"Yeme ve İçme\",\"Frequently used\":\"Sık kullanılanlar\",\"Message limit of {count} characters reached\":\"{count} karakter ileti sınırına ulaşıldı\",Next:\"Sonraki\",\"No emoji found\":\"Herhangi bir emoji bulunamadı\",\"No results\":\"Herhangi bir sonuç bulunamadı\",Objects:\"Nesneler\",\"Pause slideshow\":\"Slayt sunumunu duraklat\",\"People & Body\":\"İnsanlar ve Beden\",\"Pick an emoji\":\"Bir emoji seçin\",Previous:\"Önceki\",Search:\"Arama\",\"Search results\":\"Arama sonuçları\",\"Select a tag\":\"Bir etiket seçin\",Settings:\"Ayarlar\",\"Settings navigation\":\"Gezinme ayarları\",\"Smileys & Emotion\":\"İfadeler ve Duygular\",\"Start slideshow\":\"Slayt sunumunu başlat\",Submit:\"Gönder\",Symbols:\"Simgeler\",\"Travel & Places\":\"Gezi ve Yerler\",\"Unable to search the group\":\"Grupta arama yapılamadı\",\"Write message, @ to mention someone …\":\"İletiyi yazın. Birini anmak için @ kullanın …\"}},{locale:\"uk\",translations:{\"{tag} (invisible)\":\"{tag} (invisible)\",\"{tag} (restricted)\":\"{tag} (restricted)\",Actions:\"Дії\",Activities:\"Діяльність\",\"Animals & Nature\":\"Тварини та природа\",Choose:\"Виберіть\",Close:\"Закрити\",Custom:\"Власне\",Flags:\"Прапори\",\"Food & Drink\":\"Їжа та напитки\",\"Frequently used\":\"Найчастіші\",Next:\"Вперед\",\"No emoji found\":\"Емоційки відсутні\",\"No results\":\"Відсутні результати\",Objects:\"Об'єкти\",\"Pause slideshow\":\"Пауза у показі слайдів\",\"People & Body\":\"Люди та жести\",\"Pick an emoji\":\"Виберіть емоційку\",Previous:\"Назад\",Search:\"Пошук\",\"Search results\":\"Результати пошуку\",\"Select a tag\":\"Виберіть позначку\",Settings:\"Налаштування\",\"Smileys & Emotion\":\"Усміхайлики та емоційки\",\"Start slideshow\":\"Почати показ слайдів\",Symbols:\"Символи\",\"Travel & Places\":\"Поїздки та місця\",\"Unable to search the group\":\"Неможливо шукати в групі\"}},{locale:\"zh_CN\",translations:{\"{tag} (invisible)\":\"{tag} (不可见)\",\"{tag} (restricted)\":\"{tag} (受限)\",Actions:\"行为\",Activities:\"活动\",\"Animals & Nature\":\"动物 & 自然\",Choose:\"选择\",Close:\"关闭\",Custom:\"自定义\",Flags:\"旗帜\",\"Food & Drink\":\"食物 & 饮品\",\"Frequently used\":\"经常使用\",\"Message limit of {count} characters reached\":\"已达到 {count} 个字符的消息限制\",Next:\"下一个\",\"No emoji found\":\"表情未找到\",\"No results\":\"无结果\",Objects:\"物体\",\"Pause slideshow\":\"暂停幻灯片\",\"People & Body\":\"人 & 身体\",\"Pick an emoji\":\"选择一个表情\",Previous:\"上一个\",Search:\"搜索\",\"Search results\":\"搜索结果\",\"Select a tag\":\"选择一个标签\",Settings:\"设置\",\"Settings navigation\":\"设置向导\",\"Smileys & Emotion\":\"笑脸 & 情感\",\"Start slideshow\":\"开始幻灯片\",Symbols:\"符号\",\"Travel & Places\":\"旅游 & 地点\",\"Unable to search the group\":\"无法搜索分组\",\"Write message, @ to mention someone …\":\"输入消息,输入 @ 来提醒某人\"}},{locale:\"zh_HK\",translations:{\"{tag} (invisible)\":\"{tag} (隱藏)\",\"{tag} (restricted)\":\"{tag} (受限)\",Actions:\"動作\",Activities:\"活動\",\"Animals & Nature\":\"動物與自然\",Choose:\"選擇\",Close:\"關閉\",Custom:\"自定義\",\"External documentation for {title}\":\"{title} 的外部文檔\",Flags:\"旗幟\",\"Food & Drink\":\"食物與飲料\",\"Frequently used\":\"經常使用\",\"Message limit of {count} characters reached\":\"已達到訊息最多 {count} 字元限制\",Next:\"下一個\",\"No emoji found\":\"未找到表情符號\",\"No results\":\"無結果\",Objects:\"物件\",\"Pause slideshow\":\"暫停幻燈片\",\"People & Body\":\"人物\",\"Pick an emoji\":\"選擇表情符號\",Previous:\"上一個\",Search:\"搜尋\",\"Search results\":\"搜尋結果\",\"Select a tag\":\"選擇標籤\",Settings:\"設定\",\"Settings navigation\":\"設定值導覽\",\"Smileys & Emotion\":\"表情\",\"Start slideshow\":\"開始幻燈片\",Submit:\"提交\",Symbols:\"標誌\",\"Travel & Places\":\"旅遊與景點\",\"Unable to search the group\":\"無法搜尋群組\",\"Write message, @ to mention someone …\":\"輸入訊息時可使用 @ 來標示某人...\"}},{locale:\"zh_TW\",translations:{\"{tag} (invisible)\":\"{tag} (隱藏)\",\"{tag} (restricted)\":\"{tag} (受限)\",Actions:\"動作\",Activities:\"活動\",\"Animals & Nature\":\"動物與自然\",Choose:\"選擇\",Close:\"關閉\",Custom:\"自定義\",Flags:\"旗幟\",\"Food & Drink\":\"食物與飲料\",\"Frequently used\":\"最近使用\",\"Message limit of {count} characters reached\":\"已達到訊息最多 {count} 字元限制\",Next:\"下一個\",\"No emoji found\":\"未找到表情符號\",\"No results\":\"無結果\",Objects:\"物件\",\"Pause slideshow\":\"暫停幻燈片\",\"People & Body\":\"人物\",\"Pick an emoji\":\"選擇表情符號\",Previous:\"上一個\",Search:\"搜尋\",\"Search results\":\"搜尋結果\",\"Select a tag\":\"選擇標籤\",Settings:\"設定\",\"Settings navigation\":\"設定值導覽\",\"Smileys & Emotion\":\"表情\",\"Start slideshow\":\"開始幻燈片\",Symbols:\"標誌\",\"Travel & Places\":\"旅遊與景點\",\"Unable to search the group\":\"無法搜尋群組\",\"Write message, @ to mention someone …\":\"輸入訊息時可使用 @ 來標示某人...\"}}].forEach((function(t){var n={};for(var e in t.translations)t.translations[e].pluralId?n[e]={msgid:e,msgid_plural:t.translations[e].pluralId,msgstr:t.translations[e].msgstr}:n[e]={msgid:e,msgstr:[t.translations[e]]};o.addTranslation(t.locale,{translations:{\"\":n}})}));var i=o.build(),a=i.ngettext.bind(i),r=i.gettext.bind(i)},,function(t,n){t.exports=require(\"core-js/modules/es.function.name.js\")},function(t,n){t.exports=require(\"core-js/modules/es.regexp.exec.js\")},function(t,n){t.exports=require(\"core-js/modules/es.string.iterator.js\")},function(t,n){t.exports=require(\"core-js/modules/es.array.iterator.js\")},function(t,n){t.exports=require(\"core-js/modules/web.dom-collections.iterator.js\")},function(t,n,e){\"use strict\";var A=e(0),o=e.n(A),i=e(1),a=e.n(i)()(o.a);a.push([t.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\",\"\",{version:3,sources:[\"webpack://./Popover.vue\"],names:[],mappings:\"AAgHA,SACC,cAAe,CACf,wBAAyB,CAEzB,sDAAuD,CAEvD,gBACC,SAAU,CACV,4BAA6B,CAC7B,kCAAmC,CACnC,uCAAwC,CACxC,gBAGA,iBAAkB,CAClB,SAAU,CACV,OAAQ,CACR,QAAS,CACT,WApBgB,CAqBhB,kBAAmB,CACnB,yCAA0C,CApB5C,6BAwBE,kBA1BgB,CAElB,6CA2BG,YA7Be,CA8Bf,6BAA8B,CAC9B,YAAa,CACb,eAAgB,CAChB,6BAjCe,CAkCf,yCAA0C,CAC1C,0CAA2C,CAC3C,wCAAyC,CAlC5C,gCAuCE,eAzCgB,CAElB,gDA0CG,SA5Ce,CA6Cf,6BAA8B,CAC9B,YAAa,CACb,eAAgB,CAChB,6BAhDe,CAiDf,uCAAwC,CACxC,yCAA0C,CAC1C,wCAAyC,CAjD5C,+BAsDE,gBAxDgB,CAElB,+CAyDG,4BAA6B,CAC7B,UA5De,CA6Df,cAAe,CACf,aAAc,CACd,6BAAsD,CACtD,uCAAwC,CACxC,0CAA2C,CAC3C,wCAAyC,CAhE5C,8BAqEE,iBAvEgB,CAElB,8CAwEG,4BAA6B,CAC7B,WA3Ee,CA4Ef,cAAe,CACf,aAAc,CACd,6BA9Ee,CA+Ef,uCAAwC,CACxC,yCAA0C,CAC1C,0CAA2C,CA/E9C,6BAoFE,iBAAkB,CAClB,2EAA6E,CAC7E,SAAU,CAtFZ,8BA0FE,kBAAmB,CACnB,yCAA0C,CAC1C,SAAU\",sourcesContent:[\"$scope_version:\\\"6b494fc\\\"; @import 'variables';\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n$arrow-width: 10px;\\n\\n.popover {\\n\\tz-index: 100000;\\n\\tdisplay: block !important;\\n\\n\\tfilter: drop-shadow(0 1px 10px var(--color-box-shadow));\\n\\n\\t&__inner {\\n\\t\\tpadding: 0;\\n\\t\\tcolor: var(--color-main-text);\\n\\t\\tborder-radius: var(--border-radius);\\n\\t\\tbackground: var(--color-main-background);\\n\\t}\\n\\n\\t&__arrow {\\n\\t\\tposition: absolute;\\n\\t\\tz-index: 1;\\n\\t\\twidth: 0;\\n\\t\\theight: 0;\\n\\t\\tmargin: $arrow-width;\\n\\t\\tborder-style: solid;\\n\\t\\tborder-color: var(--color-main-background);\\n\\t}\\n\\n\\t&[x-placement^='top'] {\\n\\t\\tmargin-bottom: $arrow-width;\\n\\n\\t\\t.popover__arrow {\\n\\t\\t\\tbottom: -$arrow-width;\\n\\t\\t\\tleft: calc(50% - $arrow-width);\\n\\t\\t\\tmargin-top: 0;\\n\\t\\t\\tmargin-bottom: 0;\\n\\t\\t\\tborder-width: $arrow-width $arrow-width 0 $arrow-width;\\n\\t\\t\\tborder-right-color: transparent !important;\\n\\t\\t\\tborder-bottom-color: transparent !important;\\n\\t\\t\\tborder-left-color: transparent !important;\\n\\t\\t}\\n\\t}\\n\\n\\t&[x-placement^='bottom'] {\\n\\t\\tmargin-top: $arrow-width;\\n\\n\\t\\t.popover__arrow {\\n\\t\\t\\ttop: -$arrow-width;\\n\\t\\t\\tleft: calc(50% - $arrow-width);\\n\\t\\t\\tmargin-top: 0;\\n\\t\\t\\tmargin-bottom: 0;\\n\\t\\t\\tborder-width: 0 $arrow-width $arrow-width $arrow-width;\\n\\t\\t\\tborder-top-color: transparent !important;\\n\\t\\t\\tborder-right-color: transparent !important;\\n\\t\\t\\tborder-left-color: transparent !important;\\n\\t\\t}\\n\\t}\\n\\n\\t&[x-placement^='right'] {\\n\\t\\tmargin-left: $arrow-width;\\n\\n\\t\\t.popover__arrow {\\n\\t\\t\\ttop: calc(50% - $arrow-width);\\n\\t\\t\\tleft: -$arrow-width;\\n\\t\\t\\tmargin-right: 0;\\n\\t\\t\\tmargin-left: 0;\\n\\t\\t\\tborder-width: $arrow-width $arrow-width $arrow-width 0;\\n\\t\\t\\tborder-top-color: transparent !important;\\n\\t\\t\\tborder-bottom-color: transparent !important;\\n\\t\\t\\tborder-left-color: transparent !important;\\n\\t\\t}\\n\\t}\\n\\n\\t&[x-placement^='left'] {\\n\\t\\tmargin-right: $arrow-width;\\n\\n\\t\\t.popover__arrow {\\n\\t\\t\\ttop: calc(50% - $arrow-width);\\n\\t\\t\\tright: -$arrow-width;\\n\\t\\t\\tmargin-right: 0;\\n\\t\\t\\tmargin-left: 0;\\n\\t\\t\\tborder-width: $arrow-width 0 $arrow-width $arrow-width;\\n\\t\\t\\tborder-top-color: transparent !important;\\n\\t\\t\\tborder-right-color: transparent !important;\\n\\t\\t\\tborder-bottom-color: transparent !important;\\n\\t\\t}\\n\\t}\\n\\n\\t&[aria-hidden='true'] {\\n\\t\\tvisibility: hidden;\\n\\t\\ttransition: opacity var(--animation-quick), visibility var(--animation-quick);\\n\\t\\topacity: 0;\\n\\t}\\n\\n\\t&[aria-hidden='false'] {\\n\\t\\tvisibility: visible;\\n\\t\\ttransition: opacity var(--animation-quick);\\n\\t\\topacity: 1;\\n\\t}\\n}\\n\\n\"],sourceRoot:\"\"}]),n.a=a},function(t,n){},function(t,n,e){\"use strict\";e.r(n);var A=e(7),o=e(2),i=e.n(o),a=e(22),r={insert:\"head\",singleton:!1};i()(a.a,r),a.a.locals;\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(\"6b494fc\",'><div class=\"tooltip-arrow\"></div><div class=\"tooltip-inner\"></div></div>'),A.VTooltip.options.defaultHtml=!1;n.default=A.VTooltip},function(t,n,e){\"use strict\";var A=e(0),o=e.n(A),i=e(1),a=e.n(i)()(o.a);a.push([t.i,\".vue-tooltip[data-v-6b494fc]{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-6b494fc][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-6b494fc][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-6b494fc][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-6b494fc][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-6b494fc][aria-hidden='true']{visibility:hidden;transition:opacity .15s, visibility .15s;opacity:0}.vue-tooltip[data-v-6b494fc][aria-hidden='false']{visibility:visible;transition:opacity .15s;opacity:1}.vue-tooltip[data-v-6b494fc] .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-6b494fc] .tooltip-arrow{position:absolute;z-index:1;width:0;height:0;margin:0;border-style:solid;border-color:var(--color-main-background)}\\n\",\"\",{version:3,sources:[\"webpack://./index.scss\"],names:[],mappings:\"AAeA,6BACC,iBAAkB,CAClB,cAAe,CACf,UAAW,CACX,SAAU,CACV,aAAc,CACd,QAAS,CAET,eAAgB,CAChB,cAAe,CACf,eAAgB,CAChB,gBAAiB,CACjB,SAAU,CACV,eAAgB,CAEhB,eAAgB,CAChB,sDAAuD,CAhBxD,gEAqBG,QAAS,CACT,YAAa,CACb,eAAgB,CAChB,6BA1Be,CA2Bf,8BAA+B,CAC/B,+BAAgC,CAChC,6BAA8B,CA3BjC,mEAkCG,KAAM,CACN,YAAa,CACb,eAAgB,CAChB,6BAvCe,CAwCf,4BAA6B,CAC7B,8BAA+B,CAC/B,6BAA8B,CAxCjC,kEA+CG,UAAW,CACX,cAAe,CACf,aAAc,CACd,6BAAsD,CACtD,4BAA6B,CAC7B,+BAAgC,CAChC,6BAA8B,CArDjC,iEA4DG,SAAU,CACV,cAAe,CACf,aAAc,CACd,6BAjEe,CAkEf,4BAA6B,CAC7B,8BAA+B,CAC/B,+BAAgC,CAlEnC,iDAwEE,iBAAkB,CAClB,wCAAyC,CACzC,SAAU,CA1EZ,kDA6EE,kBAAmB,CACnB,uBAAwB,CACxB,SAAU,CA/EZ,4CAoFE,eAAgB,CAChB,eAAgB,CAChB,iBAAkB,CAClB,4BAA6B,CAC7B,kCAAmC,CACnC,6CAA8C,CAzFhD,4CA8FE,iBAAkB,CAClB,SAAU,CACV,OAAQ,CACR,QAAS,CACT,QAAS,CACT,kBAAmB,CACnB,yCAA0C\",sourcesContent:[\"$scope_version:\\\"6b494fc\\\"; @import 'variables';\\n/**\\n* @copyright Copyright (c) 2016, John Molakvoæ <skjnldsv@protonmail.com>\\n* @copyright Copyright (c) 2016, Robin Appelman <robin@icewind.nl>\\n* @copyright Copyright (c) 2016, Jan-Christoph Borchardt <hey@jancborchardt.net>\\n* @copyright Copyright (c) 2016, Erik Pellikka <erik@pellikka.org>\\n* @copyright Copyright (c) 2015, Vincent Petry <pvince81@owncloud.com>\\n*\\n* Bootstrap v3.3.5 (http://getbootstrap.com)\\n* Copyright 2011-2015 Twitter, Inc.\\n* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\\n*/\\n\\n$arrow-width: 10px;\\n\\n.vue-tooltip[data-v-#{$scope_version}] {\\n\\tposition: absolute;\\n\\tz-index: 100000;\\n\\tright: auto;\\n\\tleft: auto;\\n\\tdisplay: block;\\n\\tmargin: 0;\\n\\t/* default to top */\\n\\tmargin-top: -3px;\\n\\tpadding: 10px 0;\\n\\ttext-align: left;\\n\\ttext-align: start;\\n\\topacity: 0;\\n\\tline-height: 1.6;\\n\\n\\tline-break: auto;\\n\\tfilter: drop-shadow(0 1px 10px var(--color-box-shadow));\\n\\n\\t// TOP\\n\\t&[x-placement^='top'] {\\n\\t\\t.tooltip-arrow {\\n\\t\\t\\tbottom: 0;\\n\\t\\t\\tmargin-top: 0;\\n\\t\\t\\tmargin-bottom: 0;\\n\\t\\t\\tborder-width: $arrow-width $arrow-width 0 $arrow-width;\\n\\t\\t\\tborder-right-color: transparent;\\n\\t\\t\\tborder-bottom-color: transparent;\\n\\t\\t\\tborder-left-color: transparent;\\n\\t\\t}\\n\\t}\\n\\n\\t// BOTTOM\\n\\t&[x-placement^='bottom'] {\\n\\t\\t.tooltip-arrow {\\n\\t\\t\\ttop: 0;\\n\\t\\t\\tmargin-top: 0;\\n\\t\\t\\tmargin-bottom: 0;\\n\\t\\t\\tborder-width: 0 $arrow-width $arrow-width $arrow-width;\\n\\t\\t\\tborder-top-color: transparent;\\n\\t\\t\\tborder-right-color: transparent;\\n\\t\\t\\tborder-left-color: transparent;\\n\\t\\t}\\n\\t}\\n\\n\\t// RIGHT\\n\\t&[x-placement^='right'] {\\n\\t\\t.tooltip-arrow {\\n\\t\\t\\tright: 100%;\\n\\t\\t\\tmargin-right: 0;\\n\\t\\t\\tmargin-left: 0;\\n\\t\\t\\tborder-width: $arrow-width $arrow-width $arrow-width 0;\\n\\t\\t\\tborder-top-color: transparent;\\n\\t\\t\\tborder-bottom-color: transparent;\\n\\t\\t\\tborder-left-color: transparent;\\n\\t\\t}\\n\\t}\\n\\n\\t// LEFT\\n\\t&[x-placement^='left'] {\\n\\t\\t.tooltip-arrow {\\n\\t\\t\\tleft: 100%;\\n\\t\\t\\tmargin-right: 0;\\n\\t\\t\\tmargin-left: 0;\\n\\t\\t\\tborder-width: $arrow-width 0 $arrow-width $arrow-width;\\n\\t\\t\\tborder-top-color: transparent;\\n\\t\\t\\tborder-right-color: transparent;\\n\\t\\t\\tborder-bottom-color: transparent;\\n\\t\\t}\\n\\t}\\n\\n\\t// HIDDEN / SHOWN\\n\\t&[aria-hidden='true'] {\\n\\t\\tvisibility: hidden;\\n\\t\\ttransition: opacity .15s, visibility .15s;\\n\\t\\topacity: 0;\\n\\t}\\n\\t&[aria-hidden='false'] {\\n\\t\\tvisibility: visible;\\n\\t\\ttransition: opacity .15s;\\n\\t\\topacity: 1;\\n\\t}\\n\\n\\t// CONTENT\\n\\t.tooltip-inner {\\n\\t\\tmax-width: 350px;\\n\\t\\tpadding: 5px 8px;\\n\\t\\ttext-align: center;\\n\\t\\tcolor: var(--color-main-text);\\n\\t\\tborder-radius: var(--border-radius);\\n\\t\\tbackground-color: var(--color-main-background);\\n\\t}\\n\\n\\t// ARROW\\n\\t.tooltip-arrow {\\n\\t\\tposition: absolute;\\n\\t\\tz-index: 1;\\n\\t\\twidth: 0;\\n\\t\\theight: 0;\\n\\t\\tmargin: 0;\\n\\t\\tborder-style: solid;\\n\\t\\tborder-color: var(--color-main-background);\\n\\t}\\n}\\n\"],sourceRoot:\"\"}]),n.a=a},,function(t,n){t.exports=require(\"core-js/modules/es.string.replace.js\")},function(t,n){t.exports=require(\"core-js/modules/es.regexp.to-string.js\")},function(t,n){t.exports=require(\"core-js/modules/web.dom-collections.for-each.js\")},function(t,n){t.exports=require(\"core-js/modules/es.array.concat.js\")},function(t,n,e){\"use strict\";var A={name:\"Popover\",components:{VPopover:e(7).VPopover},mounted:function(){var t=this;this.$watch((function(){return t.$refs.popover.isOpen}),(function(n){n?t.$emit(\"after-show\"):t.$emit(\"after-hide\")}))}},o=e(2),i=e.n(o),a=e(19),r={insert:\"head\",singleton:!1},s=(i()(a.a,r),a.a.locals,e(3)),c=e(20),l=e.n(c),d=Object(s.a)(A,(function(){var t=this.$createElement,n=this._self._c||t;return n(\"VPopover\",this._g(this._b({ref:\"popover\",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(\" \"),n(\"template\",{slot:\"popover\"},[this._t(\"default\")],2)],2)}),[],!1,null,null,null);\"function\"==typeof l.a&&l()(d);n.a=d.exports},,function(t,n){t.exports=require(\"core-js/modules/es.string.trim.js\")},function(t,n){t.exports=require(\"core-js/modules/es.number.constructor.js\")},function(t,n){t.exports=require(\"core-js/modules/es.symbol.js\")},function(t,n){t.exports=require(\"@nextcloud/l10n/dist/gettext\")},function(t,n,e){\"use strict\";e(24),e(15),e(6),e(25);n.a=function(t){return Math.random().toString(36).replace(/[^a-z]+/g,\"\").substr(0,t||5)}},,,,function(t,n){t.exports=require(\"core-js/modules/es.symbol.description.js\")},function(t,n,e){\"use strict\";e(30),e(14);var A=e(5),o=e.n(A);\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 */n.a={before:function(){this.$slots.default&&\"\"!==this.text.trim()||(o.a.util.warn(\"\".concat(this.$options.name,\" cannot be empty and requires a meaningful text content\"),this),this.$destroy(),this.$el.remove())},beforeUpdate:function(){this.text=this.getText()},data:function(){return{text:this.getText()}},computed:{isLongText:function(){return this.text&&this.text.trim().length>20}},methods:{getText:function(){return this.$slots.default?this.$slots.default[0].text.trim():\"\"}}}},function(t,n){t.exports=require(\"core-js/modules/web.url.js\")},function(t,n){t.exports=require(\"core-js/modules/es.array.slice.js\")},,,,,function(t,n){t.exports=require(\"core-js/modules/es.symbol.iterator.js\")},function(t,n,e){\"use strict\";e.r(n);var A=e(28);\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 */n.default=A.a},,function(t,n,e){\"use strict\";e(40),e(6),e(16),e(17),e(18);var A=e(39),o=(e(14),function(t,n){for(var e=t.$parent;e;){if(e.$options.name===n)return e;e=e.$parent}});n.a={mixins:[A.a],props:{icon:{type:String,default:\"\"},title:{type:String,default:\"\"},closeAfterClick:{type:Boolean,default:!1},ariaLabel:{type:String,default:\"\"}},computed:{isIconUrl:function(){try{return new URL(this.icon)}catch(t){return!1}}},methods:{onClick:function(t){if(this.$emit(\"click\",t),this.closeAfterClick){var n=o(this,\"Actions\");n&&n.closeMenu&&n.closeMenu()}}}}},function(t,n,e){\"use strict\";e(27),e(14),e(101);var A=e(5),o=e.n(A);n.a=function(t,n,e){if(void 0!==t)for(var A=t.length-1;A>=0;A--){var i=t[A],a=!i.componentOptions&&i.tag&&-1===n.indexOf(i.tag),r=!!i.componentOptions&&\"string\"==typeof i.componentOptions.tag,s=r&&-1===n.indexOf(i.componentOptions.tag);(a||!r||s)&&((a||s)&&o.a.util.warn(\"\".concat(a?i.tag:i.componentOptions.tag,\" is not allowed inside the \").concat(e.$options.name,\" component\"),e),t.splice(A,1))}}},function(t,n){t.exports=require(\"core-js/modules/es.array.filter.js\")},function(t,n){t.exports=require(\"core-js/modules/es.array.from.js\")},,,,,,,,,function(t,n,e){\"use strict\";var A=e(12);n.a={methods:{n:A.a,t:A.b}}},,,,,,function(t,n,e){\"use strict\";var A=e(0),o=e.n(A),i=e(1),a=e.n(i),r=e(4),s=e.n(r),c=e(8),l=e(9),d=e(10),u=e(11),g=a()(o.a),m=s()(c.a),p=s()(l.a),C=s()(d.a),f=s()(u.a);g.push([t.i,'@font-face{font-family:\"iconfont-vue-6b494fc\";src:url('+m+\");src:url(\"+m+') format(\"embedded-opentype\"),url('+p+') format(\"woff\"),url('+C+') format(\"truetype\"),url('+f+') format(\"svg\")}.icon[data-v-551c21fd]{font-style:normal;font-weight:400}.icon.arrow-left-double[data-v-551c21fd]:before{font-family:\"iconfont-vue-6b494fc\";content:\"\"}.icon.arrow-left[data-v-551c21fd]:before{font-family:\"iconfont-vue-6b494fc\";content:\"\"}.icon.arrow-right-double[data-v-551c21fd]:before{font-family:\"iconfont-vue-6b494fc\";content:\"\"}.icon.arrow-right[data-v-551c21fd]:before{font-family:\"iconfont-vue-6b494fc\";content:\"\"}.icon.breadcrumb[data-v-551c21fd]:before{font-family:\"iconfont-vue-6b494fc\";content:\"\"}.icon.checkmark[data-v-551c21fd]:before{font-family:\"iconfont-vue-6b494fc\";content:\"\"}.icon.close[data-v-551c21fd]:before{font-family:\"iconfont-vue-6b494fc\";content:\"\"}.icon.confirm[data-v-551c21fd]:before{font-family:\"iconfont-vue-6b494fc\";content:\"\"}.icon.info[data-v-551c21fd]:before{font-family:\"iconfont-vue-6b494fc\";content:\"\"}.icon.menu[data-v-551c21fd]:before{font-family:\"iconfont-vue-6b494fc\";content:\"\"}.icon.more[data-v-551c21fd]:before{font-family:\"iconfont-vue-6b494fc\";content:\"\"}.icon.pause[data-v-551c21fd]:before{font-family:\"iconfont-vue-6b494fc\";content:\"\"}.icon.play[data-v-551c21fd]:before{font-family:\"iconfont-vue-6b494fc\";content:\"\"}.icon.triangle-s[data-v-551c21fd]:before{font-family:\"iconfont-vue-6b494fc\";content:\"\"}.icon.user-status-away[data-v-551c21fd]:before{font-family:\"iconfont-vue-6b494fc\";content:\"\"}.icon.user-status-dnd[data-v-551c21fd]:before{font-family:\"iconfont-vue-6b494fc\";content:\"\"}.icon.user-status-invisible[data-v-551c21fd]:before{font-family:\"iconfont-vue-6b494fc\";content:\"\"}.icon.user-status-online[data-v-551c21fd]:before{font-family:\"iconfont-vue-6b494fc\";content:\"\"}.action-item[data-v-551c21fd]{position:relative;display:inline-block}.action-item--single[data-v-551c21fd]:hover,.action-item--single[data-v-551c21fd]:focus,.action-item--single[data-v-551c21fd]:active,.action-item__menutoggle[data-v-551c21fd]:hover,.action-item__menutoggle[data-v-551c21fd]:focus,.action-item__menutoggle[data-v-551c21fd]:active{opacity:1;background-color:rgba(127,127,127,0.25)}.action-item__menutoggle[data-v-551c21fd]:disabled,.action-item--single[data-v-551c21fd]:disabled{opacity:.3 !important}.action-item.action-item--open .action-item__menutoggle[data-v-551c21fd]{opacity:1;background-color:rgba(127,127,127,0.25)}.action-item--single[data-v-551c21fd],.action-item__menutoggle[data-v-551c21fd]{box-sizing:border-box;width:auto;min-width:44px;height:44px;margin:0;padding:14px;cursor:pointer;border:none;border-radius:22px;background-color:transparent}.action-item__menutoggle[data-v-551c21fd]{display:flex;align-items:center;justify-content:center;opacity:.7;font-weight:bold;line-height:16px}.action-item__menutoggle[data-v-551c21fd] span{width:16px;height:16px;line-height:16px}.action-item__menutoggle[data-v-551c21fd]:before{content:\\'\\'}.action-item__menutoggle--default-icon[data-v-551c21fd]:before{font-family:\"iconfont-vue-6b494fc\";font-style:normal;font-weight:400;content:\"\"}.action-item__menutoggle--default-icon[data-v-551c21fd]::before{font-size:16px}.action-item__menutoggle--with-title[data-v-551c21fd]{position:relative;padding-left:44px;white-space:nowrap;opacity:1;border:1px solid var(--color-border-dark);background-color:var(--color-background-dark);background-position:14px center;font-size:inherit}.action-item__menutoggle--with-title[data-v-551c21fd]:before{position:absolute;top:14px;left:14px}.action-item__menutoggle--primary[data-v-551c21fd]{opacity:1;color:var(--color-primary-text);border:none;background-color:var(--color-primary-element)}.action-item--open .action-item__menutoggle--primary[data-v-551c21fd],.action-item__menutoggle--primary[data-v-551c21fd]:hover,.action-item__menutoggle--primary[data-v-551c21fd]:focus,.action-item__menutoggle--primary[data-v-551c21fd]:active{color:var(--color-primary-text) !important;background-color:var(--color-primary-element-light) !important}.action-item--single[data-v-551c21fd]{opacity:.7}.action-item--single[data-v-551c21fd]:hover,.action-item--single[data-v-551c21fd]:focus,.action-item--single[data-v-551c21fd]:active{opacity:1}.action-item--single>[hidden][data-v-551c21fd]{display:none}.ie .action-item__menu[data-v-551c21fd],.ie .action-item__menu .action-item__menu_arrow[data-v-551c21fd],.edge .action-item__menu[data-v-551c21fd],.edge .action-item__menu .action-item__menu_arrow[data-v-551c21fd]{border:1px solid var(--color-border)}\\n',\"\",{version:3,sources:[\"webpack://./../../fonts/scss/iconfont-vue.scss\",\"webpack://./Actions.vue\",\"webpack://./../../assets/variables.scss\"],names:[],mappings:\"AA2FE,WACC,kCAAmC,CACnC,2CAAuC,CACvC,+OAGmD,CAMpD,uBACE,iBAAkB,CAClB,eAAgB,CAFlB,gDAMM,kCAAmC,CACnC,WA5Ge,CAAO,yCA0GL,kCACJ,CAAsB,WA1G3B,CAAA,iDAyGU,kCACL,CAAA,WAzGG,CAAA,0CAwGL,kCACE,CAAA,WAxGJ,CAAA,yCAuGC,kCACG,CAAA,WACN,CAxGC,wCAsGC,kCACI,CAAA,WACb,CAAO,oCAFF,kCACQ,CAAA,WACb,CAAA,sCAFO,kCACM,CAAA,WACb,CAAA,mCAFI,kCACS,CAAA,WACb,CAAA,mCAPD,kCAMc,CAAA,WACb,CAAA,mCAPD,kCAMc,CAAA,WACb,CAAA,oCAPD,kCAMc,CAAA,WACb,CAAA,mCAPD,kCAMc,CAAA,WAAsB,CACnC,yCAPD,kCAMc,CAAA,WAAA,CAAsB,+CANpC,kCAMc,CAAA,WAAA,CAAA,8CANd,kCAMc,CAAA,WAAA,CAAA,oDANd,kCAMc,CAAA,WAAA,CAAA,iDANd,kCAMc,CAAA,WAAA,CAAA,8BA1FG,iBC6nBZ,CACX,oBACA,CAAA,sRASC,SAAA,CAAY,uCCvnBE,CAAA,kGD+nBd,qBACA,CAAA,yEAGmB,SAAA,CAAA,uCCvnBK,CAAA,gFD8nBxB,qBACA,CAAA,UAAY,CAAA,cACL,CAAA,WACP,CAAS,QACT,CAAA,YACA,CAAA,cClpBY,CAAA,WDopBJ,CAAA,kBAER,CAAA,4BACA,CAAA,0CACA,YAAA,CAAA,kBAMA,CAAA,sBACA,CAAA,UAAe,CAAE,gBCrpBF,CAAE,gBDupBJ,CAAI,+CANjB,UAUA,CAAA,WACC,CAAK,gBC1qBI,CAAI,iDD+pBd,UAAY,CAAA,+DAkBX,kCD7sBF,CAAA,iBAAsB,CAkFnB,eAAY,CAAA,WACZ,CAAA,gEC4nBD,cAAc,CAAA,sDAIb,iBAAA,CAGW,iBACF,CAAQ,kBC/rBA,CDisBlB,SAAA,CAAA,yCAEkB,CAAA,6CAEA,CAAA,+BAClB,CAAA,iBAAkC,CAAM,6DARxC,iBAAY,CAWJ,QACP,CAAQ,SAAU,CAClB,mDAEA,SAAA,CAAA,+BAKM,CAAA,WAAA,CAAA,6CAEW,CAAA,kPAJlB,0CASQ,CAAA,8DACW,CAAA,sCAClB,UAAA,CAAA,qIAIF,SAAA,CAAA,+CAAA,YAQI,CAAA,sNASc,oCACA\",sourcesContent:['$__iconfont__data: map-merge(if(global_variable_exists(\\'__iconfont__data\\'), $__iconfont__data, ()), (\\n\\t\"iconfont-vue-6b494fc\": (\\n\\t\\t\"arrow-left-double\": \"\\\\ea01\",\\n\\t\\t\"arrow-left\": \"\\\\ea02\",\\n\\t\\t\"arrow-right-double\": \"\\\\ea03\",\\n\\t\\t\"arrow-right\": \"\\\\ea04\",\\n\\t\\t\"breadcrumb\": \"\\\\ea05\",\\n\\t\\t\"checkmark\": \"\\\\ea06\",\\n\\t\\t\"close\": \"\\\\ea07\",\\n\\t\\t\"confirm\": \"\\\\ea08\",\\n\\t\\t\"info\": \"\\\\ea09\",\\n\\t\\t\"menu\": \"\\\\ea0a\",\\n\\t\\t\"more\": \"\\\\ea0b\",\\n\\t\\t\"pause\": \"\\\\ea0c\",\\n\\t\\t\"play\": \"\\\\ea0d\",\\n\\t\\t\"triangle-s\": \"\\\\ea0e\",\\n\\t\\t\"user-status-away\": \"\\\\ea0f\",\\n\\t\\t\"user-status-dnd\": \"\\\\ea10\",\\n\\t\\t\"user-status-invisible\": \"\\\\ea11\",\\n\\t\\t\"user-status-online\": \"\\\\ea12\"\\n\\t)\\n));\\n\\n\\n$create-font-face: true !default; // should the @font-face tag get created?\\n\\n// should there be a custom class for each icon? will be .filename\\n$create-icon-classes: true !default; \\n\\n// what is the common class name that icons share? in this case icons need to have .icon.filename in their classes\\n// this requires you to have 2 classes on each icon html element, but reduced redeclaration of the font family\\n// for each icon\\n$icon-common-class: \\'icon\\' !default;\\n\\n// if you whish to prefix your filenames, here you can do so.\\n// if this string stays empty, your classes will use the filename, for example\\n// an icon called star.svg will result in a class called .star\\n// if you use the prefix to be \\'icon-\\' it would result in .icon-star\\n$icon-prefix: \\'\\' !default; \\n\\n// helper function to get the correct font group\\n@function iconfont-group($group: null) {\\n @if (null == $group) {\\n $group: nth(map-keys($__iconfont__data), 1);\\n }\\n @if (false == map-has-key($__iconfont__data, $group)) {\\n @warn \\'Undefined Iconfont Family!\\';\\n @return ();\\n }\\n @return map-get($__iconfont__data, $group);\\n}\\n\\n// helper function to get the correct icon of a group\\n@function iconfont-item($name) {\\n $slash: str-index($name, \\'/\\');\\n $group: null;\\n @if ($slash) {\\n $group: str-slice($name, 0, $slash - 1);\\n $name: str-slice($name, $slash + 1);\\n } @else {\\n $group: nth(map-keys($__iconfont__data), 1);\\n }\\n $group: iconfont-group($group);\\n @if (false == map-has-key($group, $name)) {\\n @warn \\'Undefined Iconfont Glyph!\\';\\n @return \\'\\';\\n }\\n @return map-get($group, $name);\\n}\\n\\n// complete mixing to include the icon\\n// usage:\\n// .my_icon{ @include iconfont(\\'star\\') }\\n@mixin iconfont($icon) {\\n $slash: str-index($icon, \\'/\\');\\n $group: null;\\n @if ($slash) {\\n $group: str-slice($icon, 0, $slash - 1);\\n } @else {\\n $group: nth(map-keys($__iconfont__data), 1);\\n }\\n &:before {\\n font-family: $group;\\n font-style: normal;\\n font-weight: 400;\\n content: iconfont-item($icon);\\n }\\n}\\n\\n// creates the font face tag if the variable is set to true (default)\\n@if $create-font-face == true {\\n @font-face {\\n font-family: \"iconfont-vue-6b494fc\";\\n src: url(\\'../iconfont-vue-6b494fc.eot\\'); /* IE9 Compat Modes */\\n src: url(\\'../iconfont-vue-6b494fc.eot?#iefix\\') format(\\'embedded-opentype\\'), /* IE6-IE8 */\\n url(\\'../iconfont-vue-6b494fc.woff\\') format(\\'woff\\'), /* Pretty Modern Browsers */\\n url(\\'../iconfont-vue-6b494fc.ttf\\') format(\\'truetype\\'), /* Safari, Android, iOS */\\n url(\\'../iconfont-vue-6b494fc.svg\\') format(\\'svg\\'); /* Legacy iOS */\\n }\\n}\\n\\n// creates icon classes for each individual loaded svg (default)\\n@if $create-icon-classes == true {\\n .#{$icon-common-class} {\\n font-style: normal;\\n font-weight: 400;\\n\\n @each $icon, $content in map-get($__iconfont__data, \"iconfont-vue-6b494fc\") {\\n &.#{$icon-prefix}#{$icon}:before {\\n font-family: \"iconfont-vue-6b494fc\";\\n content: iconfont-item(\"iconfont-vue-6b494fc/#{$icon}\");\\n }\\n }\\n }\\n}\\n',\"$scope_version:\\\"6b494fc\\\"; @import 'variables';\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n@import '../../fonts/scss/iconfont-vue';\\n\\n.action-item {\\n\\tposition: relative;\\n\\tdisplay: inline-block;\\n\\n\\t// put a grey round background when menu is opened\\n\\t// or hover-focused\\n\\t&--single:hover,\\n\\t&--single:focus,\\n\\t&--single:active,\\n\\t&__menutoggle:hover,\\n\\t&__menutoggle:focus,\\n\\t&__menutoggle:active {\\n\\t\\topacity: $opacity_full;\\n\\t\\t// good looking on dark AND white bg\\n\\t\\tbackground-color: $icon-focus-bg;\\n\\t}\\n\\n\\t// TODO: handle this in the future button component\\n\\t&__menutoggle:disabled,\\n\\t&--single:disabled {\\n\\t\\topacity: .3 !important;\\n\\t}\\n\\n\\t&.action-item--open .action-item__menutoggle {\\n\\t\\topacity: $opacity_full;\\n\\t\\tbackground-color: $action-background-hover;\\n\\t}\\n\\n\\t// icons\\n\\t&--single,\\n\\t&__menutoggle {\\n\\t\\tbox-sizing: border-box;\\n\\t\\twidth: auto;\\n\\t\\tmin-width: $clickable-area;\\n\\t\\theight: $clickable-area;\\n\\t\\tmargin: 0;\\n\\t\\tpadding: $icon-margin;\\n\\t\\tcursor: pointer;\\n\\t\\tborder: none;\\n\\t\\tborder-radius: $clickable-area / 2;\\n\\t\\tbackground-color: transparent;\\n\\t}\\n\\n\\t// icon-more\\n\\t&__menutoggle {\\n\\t\\t// align menu icon in center\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\tjustify-content: center;\\n\\t\\topacity: $opacity_normal;\\n\\t\\tfont-weight: bold;\\n\\t\\tline-height: $icon-size;\\n\\n\\t\\t// image slot\\n\\t\\t/deep/ span {\\n\\t\\t\\twidth: $icon-size;\\n\\t\\t\\theight: $icon-size;\\n\\t\\t\\tline-height: $icon-size;\\n\\t\\t}\\n\\n\\t\\t&:before {\\n\\t\\t\\tcontent: '';\\n\\t\\t}\\n\\n\\t\\t&--default-icon {\\n\\t\\t\\t@include iconfont('more');\\n\\t\\t\\t&::before {\\n\\t\\t\\t\\tfont-size: $icon-size;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t&--with-title {\\n\\t\\t\\tposition: relative;\\n\\t\\t\\tpadding-left: $clickable-area;\\n\\t\\t\\twhite-space: nowrap;\\n\\t\\t\\topacity: $opacity_full;\\n\\t\\t\\tborder: 1px solid var(--color-border-dark);\\n\\t\\t\\t// with a title, we need to display this as a real button\\n\\t\\t\\tbackground-color: var(--color-background-dark);\\n\\t\\t\\tbackground-position: $icon-margin center;\\n\\t\\t\\tfont-size: inherit;\\n\\t\\t\\t// non-background icon class\\n\\t\\t\\t&:before {\\n\\t\\t\\t\\tposition: absolute;\\n\\t\\t\\t\\ttop: $icon-margin;\\n\\t\\t\\t\\tleft: $icon-margin;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t&--primary {\\n\\t\\t\\topacity: $opacity_full;\\n\\t\\t\\tcolor: var(--color-primary-text);\\n\\t\\t\\tborder: none;\\n\\t\\t\\tbackground-color: var(--color-primary-element);\\n\\t\\t\\t.action-item--open &,\\n\\t\\t\\t&:hover,\\n\\t\\t\\t&:focus,\\n\\t\\t\\t&:active {\\n\\t\\t\\t\\tcolor: var(--color-primary-text) !important;\\n\\t\\t\\t\\tbackground-color: var(--color-primary-element-light) !important;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t&--single {\\n\\t\\topacity: $opacity_normal;\\n\\t\\t&:hover,\\n\\t\\t&:focus,\\n\\t\\t&:active {\\n\\t\\t\\topacity: $opacity_full;\\n\\t\\t}\\n\\t\\t// hide anything the slot is displaying\\n\\t\\t& > [hidden] {\\n\\t\\t\\tdisplay: none;\\n\\t\\t}\\n\\t}\\n}\\n\\n.ie,\\n.edge {\\n\\t.action-item__menu,\\n\\t.action-item__menu .action-item__menu_arrow {\\n\\t\\tborder: 1px solid var(--color-border);\\n\\t}\\n}\\n\\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 */\\n\\n// https://uxplanet.org/7-rules-for-mobile-ui-button-design-e9cf2ea54556\\n// recommended is 48px\\n// 44px is what we choose and have very good visual-to-usability ratio\\n$clickable-area: 44px;\\n\\n// background icon size\\n// also used for the scss icon font\\n$icon-size: 16px;\\n\\n// icon padding for a $clickable-area width and a $icon-size icon\\n// ( 44px - 16px ) / 2\\n$icon-margin: ($clickable-area - $icon-size) / 2;\\n\\n// transparency background for icons\\n$icon-focus-bg: rgba(127, 127, 127, .25);\\n\\n// popovermenu arrow width from the triangle center\\n$arrow-width: 9px;\\n\\n// opacities\\n$opacity_disabled: .5;\\n$opacity_normal: .7;\\n$opacity_full: 1;\\n\\n// menu round background hover feedback\\n// good looking on dark AND white bg\\n$action-background-hover: rgba(127, 127, 127, .25);\\n\\n// various structure data used in the \\n// `AppNavigation` component\\n$header-height: 50px;\\n$navigation-width: 300px;\\n\\n// mobile breakpoint\\n$breakpoint-mobile: 1024px;\\n\"],sourceRoot:\"\"}]),n.a=g},function(t,n){},function(t,n){t.exports=require(\"core-js/modules/es.object.keys.js\")},,function(t,n){t.exports=require(\"core-js/modules/es.object.get-own-property-descriptor.js\")},function(t,n){t.exports=require(\"core-js/modules/es.object.get-own-property-descriptors.js\")},function(t,n,e){\"use strict\";e.r(n);var A=e(85);\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 */n.default=A.a},,,,,,,,,,function(t,n,e){\"use strict\";\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 */n.a=function(t){t.mounted?Array.isArray(t.mounted)||(t.mounted=[t.mounted]):t.mounted=[],t.mounted.push((function(){this.$el.setAttribute(\"data-v-\".concat(\"6b494fc\"),\"\")}))}},,function(t,n,e){\"use strict\";e(27),e(51),e(69),e(32),e(71),e(26),e(72),e(38),e(6),e(46),e(16),e(17),e(18),e(52),e(41),e(14);var A=e(21),o=e(34),i=e(50),a=e(12),r=e(47);function s(t){return function(t){if(Array.isArray(t))return c(t)}(t)||function(t){if(\"undefined\"!=typeof Symbol&&Symbol.iterator in Object(t))return Array.from(t)}(t)||function(t,n){if(!t)return;if(\"string\"==typeof t)return c(t,n);var e=Object.prototype.toString.call(t).slice(8,-1);\"Object\"===e&&t.constructor&&(e=t.constructor.name);if(\"Map\"===e||\"Set\"===e)return Array.from(t);if(\"Arguments\"===e||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e))return c(t,n)}(t)||function(){throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}()}function c(t,n){(null==n||n>t.length)&&(n=t.length);for(var e=0,A=new Array(n);e<n;e++)A[e]=t[e];return A}function l(t,n){var e=Object.keys(t);if(Object.getOwnPropertySymbols){var A=Object.getOwnPropertySymbols(t);n&&(A=A.filter((function(n){return Object.getOwnPropertyDescriptor(t,n).enumerable}))),e.push.apply(e,A)}return e}function d(t){for(var n=1;n<arguments.length;n++){var e=null!=arguments[n]?arguments[n]:{};n%2?l(Object(e),!0).forEach((function(n){u(t,n,e[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(e)):l(Object(e)).forEach((function(n){Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(e,n))}))}return t}function u(t,n,e){return n in t?Object.defineProperty(t,n,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[n]=e,t}var g=[\"ActionButton\",\"ActionCheckbox\",\"ActionInput\",\"ActionLink\",\"ActionRadio\",\"ActionRouter\",\"ActionSeparator\",\"ActionText\",\"ActionTextEditable\"],m={name:\"Actions\",directives:{tooltip:A.default},components:{Popover:r.default,VNodes:{functional:!0,render:function(t,n){return n.props.vnodes}}},props:{open:{type:Boolean,default:!1},forceMenu:{type:Boolean,default:!1},menuTitle:{type:String,default:null},primary:{type:Boolean,default:!1},defaultIcon:{type:String,default:\"action-item__menutoggle--default-icon\"},ariaLabel:{type:String,default:Object(a.b)(\"Actions\")},placement:{type:String,default:\"bottom\"},boundariesElement:{type:Element,default:function(){return document.querySelector(\"body\")}},container:{type:String,default:\"body\"},disabled:{type:Boolean,default:!1}},data:function(){return{actions:[],opened:this.open,focusIndex:0,randomId:\"menu-\"+Object(o.a)(),children:this.$children}},computed:{hasMultipleActions:function(){return this.actions.length>1},isValidSingleAction:function(){return 1===this.actions.length&&null!==this.firstActionElement},firstActionVNode:function(){return this.actions[0]},firstAction:function(){return this.children[0]?this.children[0]:{}},firstActionBinding:function(){if(this.firstActionVNode&&this.firstActionVNode.componentOptions){var t=this.firstActionVNode.componentOptions.tag;if(\"ActionLink\"===t)return d(d({is:\"a\",href:this.firstAction.href,target:this.firstAction.target,\"aria-label\":this.firstAction.ariaLabel},this.firstAction.$attrs),this.firstAction.$props);if(\"ActionRouter\"===t)return d(d({is:\"router-link\",to:this.firstAction.to,exact:this.firstAction.exact,\"aria-label\":this.firstAction.ariaLabel},this.firstAction.$attrs),this.firstAction.$props);if(\"ActionButton\"===t)return d(d({is:\"button\",\"aria-label\":this.firstAction.ariaLabel},this.firstAction.$attrs),this.firstAction.$props)}return null},firstActionEvent:function(){var t,n,e;return null===(t=this.firstActionVNode)||void 0===t||null===(n=t.componentOptions)||void 0===n||null===(e=n.listeners)||void 0===e?void 0:e.click},firstActionEventBinding:function(){return this.firstActionEvent?\"click\":null},firstActionIconSlot:function(){var t,n;return null===(t=this.firstAction)||void 0===t||null===(n=t.$slots)||void 0===n?void 0:n.icon},firstActionClass:function(){var t=this.firstActionVNode&&this.firstActionVNode.data.staticClass,n=this.firstActionVNode&&this.firstActionVNode.data.class;return\"\".concat(t,\" \").concat(n)},iconSlotIsPopulated:function(){return!!this.$slots.icon}},watch:{open:function(t){t!==this.opened&&(this.opened=t)}},beforeMount:function(){this.initActions(),Object(i.a)(this.$slots.default,g,this)},beforeUpdate:function(){this.initActions(),Object(i.a)(this.$slots.default,g,this)},methods:{openMenu:function(t){this.opened||(this.opened=!0,this.$emit(\"update:open\",!0),this.$emit(\"open\"))},closeMenu:function(t){this.opened&&(this.opened=!1,this.$emit(\"update:open\",!1),this.$emit(\"close\"),this.opened=!1,this.focusIndex=0,this.$refs.menuButton.focus())},onOpen:function(t){var n=this;this.$nextTick((function(){n.focusFirstAction(t)}))},onMouseFocusAction:function(t){if(document.activeElement!==t.target){var n=t.target.closest(\"li\");if(n){var e=n.querySelector(\".focusable\");if(e){var A=s(this.$refs.menu.querySelectorAll(\".focusable\")).indexOf(e);A>-1&&(this.focusIndex=A,this.focusAction())}}}},removeCurrentActive:function(){var t=this.$refs.menu.querySelector(\"li.active\");t&&t.classList.remove(\"active\")},focusAction:function(){var t=this.$refs.menu.querySelectorAll(\".focusable\")[this.focusIndex];if(t){this.removeCurrentActive();var n=t.closest(\"li.action\");t.focus(),n&&n.classList.add(\"active\")}},focusPreviousAction:function(t){this.opened&&(0===this.focusIndex?this.closeMenu():(this.preventIfEvent(t),this.focusIndex=this.focusIndex-1),this.focusAction())},focusNextAction:function(t){if(this.opened){var n=this.$refs.menu.querySelectorAll(\".focusable\").length-1;this.focusIndex===n?this.closeMenu():(this.preventIfEvent(t),this.focusIndex=this.focusIndex+1),this.focusAction()}},focusFirstAction:function(t){this.opened&&(this.preventIfEvent(t),this.focusIndex=0,this.focusAction())},focusLastAction:function(t){this.opened&&(this.preventIfEvent(t),this.focusIndex=this.$el.querySelectorAll(\".focusable\").length-1,this.focusAction())},preventIfEvent:function(t){t&&(t.preventDefault(),t.stopPropagation())},execFirstAction:function(t){this.firstActionEvent&&this.firstActionEvent(t)},initActions:function(){this.actions=(this.$slots.default||[]).filter((function(t){return!!t&&!!t.componentOptions}))},onFocus:function(t){this.$emit(\"focus\",t)},onBlur:function(t){this.$emit(\"blur\",t)}}},p=e(2),C=e.n(p),f=e(67),h={insert:\"head\",singleton:!1},b=(C()(f.a,h),f.a.locals,e(3)),v=e(68),y=e.n(v),B=Object(b.a)(m,(function(){var t,n,e=this,A=e.$createElement,o=e._self._c||A;return e.isValidSingleAction&&!e.forceMenu?o(\"element\",e._b({directives:[{name:\"tooltip\",rawName:\"v-tooltip.auto\",value:e.firstAction.text,expression:\"firstAction.text\",modifiers:{auto:!0}}],staticClass:\"action-item action-item--single\",class:(t={},t[e.firstAction.icon]=!e.iconSlotIsPopulated,t[e.firstActionClass]=!e.iconSlotIsPopulated,t),attrs:{rel:\"noreferrer noopener\",disabled:e.disabled},on:e._d({focus:e.onFocus,blur:e.onBlur},[e.firstActionEventBinding,e.execFirstAction])},\"element\",e.firstActionBinding,!1),[o(\"VNodes\",{attrs:{vnodes:e.firstActionIconSlot}}),e._v(\" \"),o(\"span\",{attrs:{\"aria-hidden\":!0,hidden:\"\"}},[e._t(\"default\")],2)],1):o(\"div\",{directives:[{name:\"show\",rawName:\"v-show\",value:e.hasMultipleActions||e.forceMenu,expression:\"hasMultipleActions || forceMenu\"}],staticClass:\"action-item\",class:{\"action-item--open\":e.opened}},[o(\"Popover\",{attrs:{delay:0,\"handle-resize\":!0,open:e.opened,placement:e.placement,\"boundaries-element\":e.boundariesElement,container:e.container},on:{\"update:open\":function(t){e.opened=t},show:e.openMenu,\"after-show\":e.onOpen,hide:e.closeMenu}},[o(\"button\",{ref:\"menuButton\",staticClass:\"icon action-item__menutoggle\",class:(n={},n[e.defaultIcon]=!e.iconSlotIsPopulated,n[\"action-item__menutoggle--with-title\"]=e.menuTitle,n[\"action-item__menutoggle--primary\"]=e.primary,n),attrs:{slot:\"trigger\",disabled:e.disabled,\"aria-label\":e.ariaLabel,\"aria-haspopup\":\"true\",\"aria-controls\":e.randomId,\"test-attr\":\"1\",\"aria-expanded\":e.opened?\"true\":\"false\"},on:{focus:e.onFocus,blur:e.onBlur},slot:\"trigger\"},[e._t(\"icon\"),e._v(\"\\n\\t\\t\\t\"+e._s(e.menuTitle)+\"\\n\\t\\t\")],2),e._v(\" \"),o(\"div\",{directives:[{name:\"show\",rawName:\"v-show\",value:e.opened,expression:\"opened\"}],ref:\"menu\",class:{open:e.opened},attrs:{tabindex:\"-1\"},on:{keydown:[function(t){return!t.type.indexOf(\"key\")&&e._k(t.keyCode,\"up\",38,t.key,[\"Up\",\"ArrowUp\"])||t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:e.focusPreviousAction(t)},function(t){return!t.type.indexOf(\"key\")&&e._k(t.keyCode,\"down\",40,t.key,[\"Down\",\"ArrowDown\"])||t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:e.focusNextAction(t)},function(t){return!t.type.indexOf(\"key\")&&e._k(t.keyCode,\"tab\",9,t.key,\"Tab\")||t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:e.focusNextAction(t)},function(t){return!t.type.indexOf(\"key\")&&e._k(t.keyCode,\"tab\",9,t.key,\"Tab\")?null:t.shiftKey?t.ctrlKey||t.altKey||t.metaKey?null:e.focusPreviousAction(t):null},function(t){return!t.type.indexOf(\"key\")&&e._k(t.keyCode,\"page-up\",void 0,t.key,void 0)||t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:e.focusFirstAction(t)},function(t){return!t.type.indexOf(\"key\")&&e._k(t.keyCode,\"page-down\",void 0,t.key,void 0)||t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:e.focusLastAction(t)},function(t){return!t.type.indexOf(\"key\")&&e._k(t.keyCode,\"esc\",27,t.key,[\"Esc\",\"Escape\"])||t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:(t.preventDefault(),e.closeMenu(t))}],mousemove:e.onMouseFocusAction}},[o(\"ul\",{attrs:{id:e.randomId,tabindex:\"-1\"}},[e.opened?[e._t(\"default\")]:e._e()],2)])])],1)}),[],!1,null,\"551c21fd\",null);\"function\"==typeof y.a&&y()(B);n.a=B.exports},,,,,,,,,function(t,n,e){\"use strict\";var A=e(0),o=e.n(A),i=e(1),a=e.n(i)()(o.a);a.push([t.i,\"li.active[data-v-42b28436]{background-color:var(--color-background-hover)}.action--disabled[data-v-42b28436]{pointer-events:none;opacity:.5}.action--disabled[data-v-42b28436]:hover,.action--disabled[data-v-42b28436]:focus{cursor:default;opacity:.5}.action--disabled *[data-v-42b28436]{opacity:1 !important}.action-button[data-v-42b28436]{display:flex;align-items:flex-start;width:100%;height:auto;margin:0;padding:0;padding-right:14px;cursor:pointer;white-space:nowrap;opacity:.7;color:var(--color-main-text);border:0;border-radius:0;background-color:transparent;box-shadow:none;font-weight:normal;font-size:var(--default-font-size);line-height:44px}.action-button[data-v-42b28436]:hover,.action-button[data-v-42b28436]:focus{opacity:1}.action-button>span[data-v-42b28436]{cursor:pointer;white-space:nowrap}.action-button__icon[data-v-42b28436]{width:44px;height:44px;opacity:1;background-position:14px center;background-size:16px;background-repeat:no-repeat}.action-button .material-design-icon[data-v-42b28436]{width:44px;height:44px;opacity:1}.action-button .material-design-icon .material-design-icon__svg[data-v-42b28436]{vertical-align:middle}.action-button p[data-v-42b28436]{width:220px;padding:7px 0;cursor:pointer;text-align:left;line-height:1.6em;overflow:hidden;text-overflow:ellipsis}.action-button__longtext[data-v-42b28436]{cursor:pointer;white-space:pre-wrap}.action-button__title[data-v-42b28436]{font-weight:bold;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;max-width:100%;display:inline-block}\\n\",\"\",{version:3,sources:[\"webpack://./../../assets/action.scss\",\"webpack://./../../assets/variables.scss\"],names:[],mappings:\"AAwBC,2BAEE,8CAA+C,CAC/C,mCAMD,mBAAoB,CACpB,UCQmB,CDVpB,kFAIE,cAAe,CACf,UCKkB,CDVpB,qCAQE,oBAAqB,CACrB,gCAOD,YAAa,CACb,sBAAuB,CAEvB,UAAW,CACX,WAAY,CACZ,QAAS,CACT,SAAU,CACV,kBCtB8C,CDwB9C,cAAe,CACf,kBAAmB,CAEnB,UCjBiB,CDkBjB,4BAA6B,CAC7B,QAAS,CACT,eAAgB,CAChB,4BAA6B,CAC7B,eAAgB,CAEhB,kBAAmB,CACnB,kCAAmC,CACnC,gBC5CmB,CDsBpB,4EA0BE,SC7Ba,CDGf,qCA8BE,cAAe,CACf,kBAAmB,CACnB,sCAGA,UCzDkB,CD0DlB,WC1DkB,CD2DlB,SCxCa,CDyCb,+BAAwC,CACxC,oBCzDa,CD0Db,2BAA4B,CAxC9B,sDA4CE,UClEkB,CDmElB,WCnEkB,CDoElB,SCjDa,CDGf,iFAiDG,qBAAsB,CAjDzB,kCAuDE,WAAY,CACZ,aAA8B,CAE9B,cAAe,CACf,eAAgB,CAEhB,iBAAkB,CAGlB,eAAgB,CAChB,sBAAuB,CACvB,0CAGA,cAAe,CAEf,oBAAqB,CACrB,uCAGA,gBAAiB,CACjB,sBAAuB,CACvB,eAAgB,CAChB,kBAAmB,CACnB,cAAe,CACf,oBAAqB\",sourcesContent:[\"/**\\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @author John Molakvoæ <skjnldsv@protonmail.com>\\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 */\\n\\n@mixin action-active {\\n\\tli {\\n\\t\\t&.active {\\n\\t\\t\\tbackground-color: var(--color-background-hover);\\n\\t\\t}\\n\\t}\\n}\\n\\n@mixin action--disabled {\\n\\t.action--disabled {\\n\\t\\tpointer-events: none;\\n\\t\\topacity: $opacity_disabled;\\n\\t\\t&:hover, &:focus {\\n\\t\\t\\tcursor: default;\\n\\t\\t\\topacity: $opacity_disabled;\\n\\t\\t}\\n\\t\\t& * {\\n\\t\\t\\topacity: 1 !important;\\n\\t\\t}\\n\\t}\\n}\\n\\n\\n@mixin action-item($name) {\\n\\t.action-#{$name} {\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: flex-start;\\n\\n\\t\\twidth: 100%;\\n\\t\\theight: auto;\\n\\t\\tmargin: 0;\\n\\t\\tpadding: 0;\\n\\t\\tpadding-right: $icon-margin;\\n\\n\\t\\tcursor: pointer;\\n\\t\\twhite-space: nowrap;\\n\\n\\t\\topacity: $opacity_normal;\\n\\t\\tcolor: var(--color-main-text);\\n\\t\\tborder: 0;\\n\\t\\tborder-radius: 0; // otherwise Safari will cut the border-radius area\\n\\t\\tbackground-color: transparent;\\n\\t\\tbox-shadow: none;\\n\\n\\t\\tfont-weight: normal;\\n\\t\\tfont-size: var(--default-font-size);\\n\\t\\tline-height: $clickable-area;\\n\\n\\t\\t&:hover,\\n\\t\\t&:focus {\\n\\t\\t\\topacity: $opacity_full;\\n\\t\\t}\\n\\n\\t\\t& > span {\\n\\t\\t\\tcursor: pointer;\\n\\t\\t\\twhite-space: nowrap;\\n\\t\\t}\\n\\n\\t\\t&__icon {\\n\\t\\t\\twidth: $clickable-area;\\n\\t\\t\\theight: $clickable-area;\\n\\t\\t\\topacity: $opacity_full;\\n\\t\\t\\tbackground-position: $icon-margin center;\\n\\t\\t\\tbackground-size: $icon-size;\\n\\t\\t\\tbackground-repeat: no-repeat;\\n\\t\\t}\\n\\n\\t\\t.material-design-icon {\\n\\t\\t\\twidth: $clickable-area;\\n\\t\\t\\theight: $clickable-area;\\n\\t\\t\\topacity: $opacity_full;\\n\\n\\t\\t\\t.material-design-icon__svg {\\n\\t\\t\\t\\tvertical-align: middle;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t// long text area\\n\\t\\tp {\\n\\t\\t\\twidth: 220px;\\n\\t\\t\\tpadding: #{$icon-margin / 2} 0;\\n\\n\\t\\t\\tcursor: pointer;\\n\\t\\t\\ttext-align: left;\\n\\n\\t\\t\\tline-height: 1.6em;\\n\\n\\t\\t\\t// in case there are no spaces like long email addresses\\n\\t\\t\\toverflow: hidden;\\n\\t\\t\\ttext-overflow: ellipsis;\\n\\t\\t}\\n\\n\\t\\t&__longtext {\\n\\t\\t\\tcursor: pointer;\\n\\t\\t\\t// allow the use of `\\\\n`\\n\\t\\t\\twhite-space: pre-wrap;\\n\\t\\t}\\n\\n\\t\\t&__title {\\n\\t\\t\\tfont-weight: bold;\\n\\t\\t\\ttext-overflow: ellipsis;\\n\\t\\t\\toverflow: hidden;\\n\\t\\t\\twhite-space: nowrap;\\n\\t\\t\\tmax-width: 100%;\\n\\t\\t\\tdisplay: inline-block;\\n\\t\\t}\\n\\t}\\n}\\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 */\\n\\n// https://uxplanet.org/7-rules-for-mobile-ui-button-design-e9cf2ea54556\\n// recommended is 48px\\n// 44px is what we choose and have very good visual-to-usability ratio\\n$clickable-area: 44px;\\n\\n// background icon size\\n// also used for the scss icon font\\n$icon-size: 16px;\\n\\n// icon padding for a $clickable-area width and a $icon-size icon\\n// ( 44px - 16px ) / 2\\n$icon-margin: ($clickable-area - $icon-size) / 2;\\n\\n// transparency background for icons\\n$icon-focus-bg: rgba(127, 127, 127, .25);\\n\\n// popovermenu arrow width from the triangle center\\n$arrow-width: 9px;\\n\\n// opacities\\n$opacity_disabled: .5;\\n$opacity_normal: .7;\\n$opacity_full: 1;\\n\\n// menu round background hover feedback\\n// good looking on dark AND white bg\\n$action-background-hover: rgba(127, 127, 127, .25);\\n\\n// various structure data used in the \\n// `AppNavigation` component\\n$header-height: 50px;\\n$navigation-width: 300px;\\n\\n// mobile breakpoint\\n$breakpoint-mobile: 1024px;\\n\"],sourceRoot:\"\"}]),n.a=a},function(t,n){},,,,,,function(t,n){t.exports=require(\"core-js/modules/es.array.splice.js\")},function(t,n,e){\"use strict\";var A={name:\"ActionButton\",mixins:[e(49).a],props:{disabled:{type:Boolean,default:!1}},computed:{isFocusable:function(){return!this.disabled}}},o=e(2),i=e.n(o),a=e(94),r={insert:\"head\",singleton:!1},s=(i()(a.a,r),a.a.locals,e(3)),c=e(95),l=e.n(c),d=Object(s.a)(A,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e(\"li\",{staticClass:\"action\",class:{\"action--disabled\":t.disabled}},[e(\"button\",{staticClass:\"action-button\",class:{focusable:t.isFocusable},attrs:{\"aria-label\":t.ariaLabel},on:{click:t.onClick}},[e(\"span\",{staticClass:\"action-button__icon\",class:[t.isIconUrl?\"action-button__icon--url\":t.icon],style:{backgroundImage:t.isIconUrl?\"url(\"+t.icon+\")\":null}},[t._t(\"icon\")],2),t._v(\" \"),t.title?e(\"p\",[e(\"strong\",{staticClass:\"action-button__title\"},[t._v(\"\\n\\t\\t\\t\\t\"+t._s(t.title)+\"\\n\\t\\t\\t\")]),t._v(\" \"),e(\"br\"),t._v(\" \"),e(\"span\",{staticClass:\"action-button__longtext\",domProps:{textContent:t._s(t.text)}})]):t.isLongText?e(\"p\",{staticClass:\"action-button__longtext\",domProps:{textContent:t._s(t.text)}}):e(\"span\",{staticClass:\"action-button__text\"},[t._v(t._s(t.text))]),t._v(\" \"),t._e()],2)])}),[],!1,null,\"42b28436\",null);\"function\"==typeof l.a&&l()(d);n.a=d.exports},,,,,,,function(t,n){t.exports=require(\"hammerjs\")},function(t,n,e){\"use strict\";e.r(n);var A=e(102);\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 */n.default=A.a},,,,,,,,,function(t,n,e){\"use strict\";var A=e(0),o=e.n(A),i=e(1),a=e.n(i),r=e(4),s=e.n(r),c=e(8),l=e(9),d=e(10),u=e(11),g=a()(o.a),m=s()(c.a),p=s()(l.a),C=s()(d.a),f=s()(u.a);g.push([t.i,'@font-face{font-family:\"iconfont-vue-6b494fc\";src:url('+m+\");src:url(\"+m+') format(\"embedded-opentype\"),url('+p+') format(\"woff\"),url('+C+') format(\"truetype\"),url('+f+') format(\"svg\")}.icon[data-v-3e0b109b]{font-style:normal;font-weight:400}.icon.arrow-left-double[data-v-3e0b109b]:before{font-family:\"iconfont-vue-6b494fc\";content:\"\"}.icon.arrow-left[data-v-3e0b109b]:before{font-family:\"iconfont-vue-6b494fc\";content:\"\"}.icon.arrow-right-double[data-v-3e0b109b]:before{font-family:\"iconfont-vue-6b494fc\";content:\"\"}.icon.arrow-right[data-v-3e0b109b]:before{font-family:\"iconfont-vue-6b494fc\";content:\"\"}.icon.breadcrumb[data-v-3e0b109b]:before{font-family:\"iconfont-vue-6b494fc\";content:\"\"}.icon.checkmark[data-v-3e0b109b]:before{font-family:\"iconfont-vue-6b494fc\";content:\"\"}.icon.close[data-v-3e0b109b]:before{font-family:\"iconfont-vue-6b494fc\";content:\"\"}.icon.confirm[data-v-3e0b109b]:before{font-family:\"iconfont-vue-6b494fc\";content:\"\"}.icon.info[data-v-3e0b109b]:before{font-family:\"iconfont-vue-6b494fc\";content:\"\"}.icon.menu[data-v-3e0b109b]:before{font-family:\"iconfont-vue-6b494fc\";content:\"\"}.icon.more[data-v-3e0b109b]:before{font-family:\"iconfont-vue-6b494fc\";content:\"\"}.icon.pause[data-v-3e0b109b]:before{font-family:\"iconfont-vue-6b494fc\";content:\"\"}.icon.play[data-v-3e0b109b]:before{font-family:\"iconfont-vue-6b494fc\";content:\"\"}.icon.triangle-s[data-v-3e0b109b]:before{font-family:\"iconfont-vue-6b494fc\";content:\"\"}.icon.user-status-away[data-v-3e0b109b]:before{font-family:\"iconfont-vue-6b494fc\";content:\"\"}.icon.user-status-dnd[data-v-3e0b109b]:before{font-family:\"iconfont-vue-6b494fc\";content:\"\"}.icon.user-status-invisible[data-v-3e0b109b]:before{font-family:\"iconfont-vue-6b494fc\";content:\"\"}.icon.user-status-online[data-v-3e0b109b]:before{font-family:\"iconfont-vue-6b494fc\";content:\"\"}.modal-mask[data-v-3e0b109b]{position:fixed;z-index:9998;top:0;left:0;display:block;width:100%;height:100%;background-color:rgba(0,0,0,0.5)}.modal-mask--dark[data-v-3e0b109b]{background-color:rgba(0,0,0,0.92)}.modal-header[data-v-3e0b109b]{position:absolute;z-index:10001;top:0;right:0;left:0;display:flex !important;align-items:center;justify-content:center;width:100%;height:50px;transition:opacity 250ms, visibility 250ms}.modal-header.invisible[style*=\\'display:none\\'][data-v-3e0b109b],.modal-header.invisible[style*=\\'display: none\\'][data-v-3e0b109b]{visibility:hidden}.modal-header .modal-title[data-v-3e0b109b]{overflow-x:hidden;box-sizing:border-box;width:100%;padding:0 132px 0 12px;transition:padding ease 100ms;white-space:nowrap;text-overflow:ellipsis;color:#fff;font-size:14px}@media only screen and (min-width: 512px){.modal-header .modal-title[data-v-3e0b109b]{text-align:center;padding-left:132px}}.modal-header .icons-menu[data-v-3e0b109b]{position:absolute;right:0;display:flex;align-items:center;justify-content:flex-end}.modal-header .icons-menu .icon-close[data-v-3e0b109b]{box-sizing:border-box;margin:3px;padding:10px 11px;color:#fff;background-image:none;font-size:23px}.modal-header .icons-menu .icon-close[data-v-3e0b109b]:before{font-family:\"iconfont-vue-6b494fc\";font-style:normal;font-weight:400;content:\"\"}.modal-header .icons-menu .play-pause[data-v-3e0b109b]{position:relative;width:50px;height:50px;margin:0;padding:0;cursor:pointer;color:white;border:none;background-color:transparent;font-size:22px}.modal-header .icons-menu .play-pause:hover .icon-play[data-v-3e0b109b],.modal-header .icons-menu .play-pause:hover .icon-pause[data-v-3e0b109b],.modal-header .icons-menu .play-pause:focus .icon-play[data-v-3e0b109b],.modal-header .icons-menu .play-pause:focus .icon-pause[data-v-3e0b109b]{opacity:1;border-radius:22px;background-color:rgba(127,127,127,0.25)}.modal-header .icons-menu .play-pause .icon-play[data-v-3e0b109b],.modal-header .icons-menu .play-pause .icon-pause[data-v-3e0b109b]{box-sizing:border-box;width:44px;height:44px;margin:3px;opacity:.7;background-image:none;cursor:pointer}.modal-header .icons-menu .play-pause .icon-play[data-v-3e0b109b]{padding:11px 13px}.modal-header .icons-menu .play-pause .icon-play[data-v-3e0b109b]:before{font-family:\"iconfont-vue-6b494fc\";font-style:normal;font-weight:400;content:\"\"}.modal-header .icons-menu .play-pause .icon-pause[data-v-3e0b109b]{padding:12px;font-size:19.5px}.modal-header .icons-menu .play-pause .icon-pause[data-v-3e0b109b]:before{font-family:\"iconfont-vue-6b494fc\";font-style:normal;font-weight:400;content:\"\"}.modal-header .icons-menu .header-actions[data-v-3e0b109b]{margin:3px;color:white}.modal-header .icons-menu .action-item--single[data-v-3e0b109b]{box-sizing:border-box;width:44px;height:44px;cursor:pointer;background-position:center;background-size:22px}.modal-header .icons-menu[data-v-3e0b109b] .action-item__menutoggle{padding:13px 11px;color:#fff;font-size:22px}.modal-wrapper[data-v-3e0b109b]{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:100%;height:100%}.modal-wrapper .prev[data-v-3e0b109b],.modal-wrapper .next[data-v-3e0b109b]{z-index:10000;display:flex !important;align-items:center;justify-content:center;width:15%;min-width:60px;height:100%;transition:opacity 250ms, visibility 250ms}.modal-wrapper .prev.invisible[style*=\\'display:none\\'][data-v-3e0b109b],.modal-wrapper .prev.invisible[style*=\\'display: none\\'][data-v-3e0b109b],.modal-wrapper .next.invisible[style*=\\'display:none\\'][data-v-3e0b109b],.modal-wrapper .next.invisible[style*=\\'display: none\\'][data-v-3e0b109b]{visibility:hidden}.modal-wrapper .icon-next[data-v-3e0b109b],.modal-wrapper .icon-previous[data-v-3e0b109b]{box-sizing:border-box;width:44px;height:44px;padding:12px 11px;color:white;border-radius:22px;background-image:none;font-size:24px}.modal-wrapper .icon-previous[data-v-3e0b109b]:before{font-family:\"iconfont-vue-6b494fc\";font-style:normal;font-weight:400;content:\"\"}.modal-wrapper .icon-next[data-v-3e0b109b]:before{font-family:\"iconfont-vue-6b494fc\";font-style:normal;font-weight:400;content:\"\"}.modal-wrapper .modal-container[data-v-3e0b109b]{display:block;overflow:hidden;padding:0;transition:transform 300ms ease;border-radius:var(--border-radius-large);background-color:var(--color-main-background);box-shadow:0 0 40px rgba(0,0,0,0.2)}.modal-wrapper:not(.modal-wrapper--large):not(.modal-wrapper--full) .modal-container[data-v-3e0b109b]{max-width:900px;max-height:80%}.modal-wrapper--full .modal-container[data-v-3e0b109b]{max-width:100%;max-height:100%;border-radius:0}.modal-wrapper--full .prev[data-v-3e0b109b],.modal-wrapper--full .next[data-v-3e0b109b],.modal-wrapper--spread-navigation .prev[data-v-3e0b109b],.modal-wrapper--spread-navigation .next[data-v-3e0b109b]{position:absolute;width:10%}.modal-wrapper--full .prev[data-v-3e0b109b],.modal-wrapper--spread-navigation .prev[data-v-3e0b109b]{left:0}.modal-wrapper--full .next[data-v-3e0b109b],.modal-wrapper--spread-navigation .next[data-v-3e0b109b]{right:0}.modal-wrapper--large .modal-container[data-v-3e0b109b]{max-width:85%;max-height:90%}.modal-wrapper--large .prev[data-v-3e0b109b],.modal-wrapper--large .next[data-v-3e0b109b]{width:10%;min-width:44px}.fade-enter-active[data-v-3e0b109b],.fade-leave-active[data-v-3e0b109b]{transition:opacity 250ms}.fade-enter[data-v-3e0b109b],.fade-leave-to[data-v-3e0b109b]{opacity:0}.fade-visibility-enter[data-v-3e0b109b],.fade-visibility-leave-to[data-v-3e0b109b]{visibility:hidden;opacity:0}.modal-in-enter-active[data-v-3e0b109b],.modal-in-leave-active[data-v-3e0b109b],.modal-out-enter-active[data-v-3e0b109b],.modal-out-leave-active[data-v-3e0b109b]{transition:opacity 250ms}.modal-in-enter[data-v-3e0b109b],.modal-in-leave-to[data-v-3e0b109b],.modal-out-enter[data-v-3e0b109b],.modal-out-leave-to[data-v-3e0b109b]{opacity:0}.modal-in-enter .modal-container[data-v-3e0b109b],.modal-in-leave-to .modal-container[data-v-3e0b109b]{transform:scale(0.9)}.modal-out-enter .modal-container[data-v-3e0b109b],.modal-out-leave-to .modal-container[data-v-3e0b109b]{transform:scale(1.1)}.modal-mask .play-pause .progress-ring[data-v-3e0b109b]{position:absolute;top:0;left:0;transform:rotate(-90deg)}.modal-mask .play-pause .progress-ring .progress-ring__circle[data-v-3e0b109b]{transition:100ms stroke-dashoffset;transform-origin:50% 50%;animation:progressring-data-v-3e0b109b linear 3s infinite;stroke-linecap:round;stroke-dashoffset:94.24778;stroke-dasharray:94.24778}.modal-mask .play-pause--paused .icon-pause[data-v-3e0b109b]{animation:breath-data-v-3e0b109b 2s cubic-bezier(0.4, 0, 0.2, 1) infinite}.modal-mask .play-pause--paused .progress-ring__circle[data-v-3e0b109b]{animation-play-state:paused !important}@keyframes progressring-data-v-3e0b109b{from{stroke-dashoffset:94.24778}to{stroke-dashoffset:0}}@keyframes breath-data-v-3e0b109b{0%{opacity:1}50%{opacity:0}100%{opacity:1}}\\n',\"\",{version:3,sources:[\"webpack://./../../fonts/scss/iconfont-vue.scss\",\"webpack://./Modal.vue\",\"webpack://./../../assets/variables.scss\"],names:[],mappings:\"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\",sourcesContent:['$__iconfont__data: map-merge(if(global_variable_exists(\\'__iconfont__data\\'), $__iconfont__data, ()), (\\n\\t\"iconfont-vue-6b494fc\": (\\n\\t\\t\"arrow-left-double\": \"\\\\ea01\",\\n\\t\\t\"arrow-left\": \"\\\\ea02\",\\n\\t\\t\"arrow-right-double\": \"\\\\ea03\",\\n\\t\\t\"arrow-right\": \"\\\\ea04\",\\n\\t\\t\"breadcrumb\": \"\\\\ea05\",\\n\\t\\t\"checkmark\": \"\\\\ea06\",\\n\\t\\t\"close\": \"\\\\ea07\",\\n\\t\\t\"confirm\": \"\\\\ea08\",\\n\\t\\t\"info\": \"\\\\ea09\",\\n\\t\\t\"menu\": \"\\\\ea0a\",\\n\\t\\t\"more\": \"\\\\ea0b\",\\n\\t\\t\"pause\": \"\\\\ea0c\",\\n\\t\\t\"play\": \"\\\\ea0d\",\\n\\t\\t\"triangle-s\": \"\\\\ea0e\",\\n\\t\\t\"user-status-away\": \"\\\\ea0f\",\\n\\t\\t\"user-status-dnd\": \"\\\\ea10\",\\n\\t\\t\"user-status-invisible\": \"\\\\ea11\",\\n\\t\\t\"user-status-online\": \"\\\\ea12\"\\n\\t)\\n));\\n\\n\\n$create-font-face: true !default; // should the @font-face tag get created?\\n\\n// should there be a custom class for each icon? will be .filename\\n$create-icon-classes: true !default; \\n\\n// what is the common class name that icons share? in this case icons need to have .icon.filename in their classes\\n// this requires you to have 2 classes on each icon html element, but reduced redeclaration of the font family\\n// for each icon\\n$icon-common-class: \\'icon\\' !default;\\n\\n// if you whish to prefix your filenames, here you can do so.\\n// if this string stays empty, your classes will use the filename, for example\\n// an icon called star.svg will result in a class called .star\\n// if you use the prefix to be \\'icon-\\' it would result in .icon-star\\n$icon-prefix: \\'\\' !default; \\n\\n// helper function to get the correct font group\\n@function iconfont-group($group: null) {\\n @if (null == $group) {\\n $group: nth(map-keys($__iconfont__data), 1);\\n }\\n @if (false == map-has-key($__iconfont__data, $group)) {\\n @warn \\'Undefined Iconfont Family!\\';\\n @return ();\\n }\\n @return map-get($__iconfont__data, $group);\\n}\\n\\n// helper function to get the correct icon of a group\\n@function iconfont-item($name) {\\n $slash: str-index($name, \\'/\\');\\n $group: null;\\n @if ($slash) {\\n $group: str-slice($name, 0, $slash - 1);\\n $name: str-slice($name, $slash + 1);\\n } @else {\\n $group: nth(map-keys($__iconfont__data), 1);\\n }\\n $group: iconfont-group($group);\\n @if (false == map-has-key($group, $name)) {\\n @warn \\'Undefined Iconfont Glyph!\\';\\n @return \\'\\';\\n }\\n @return map-get($group, $name);\\n}\\n\\n// complete mixing to include the icon\\n// usage:\\n// .my_icon{ @include iconfont(\\'star\\') }\\n@mixin iconfont($icon) {\\n $slash: str-index($icon, \\'/\\');\\n $group: null;\\n @if ($slash) {\\n $group: str-slice($icon, 0, $slash - 1);\\n } @else {\\n $group: nth(map-keys($__iconfont__data), 1);\\n }\\n &:before {\\n font-family: $group;\\n font-style: normal;\\n font-weight: 400;\\n content: iconfont-item($icon);\\n }\\n}\\n\\n// creates the font face tag if the variable is set to true (default)\\n@if $create-font-face == true {\\n @font-face {\\n font-family: \"iconfont-vue-6b494fc\";\\n src: url(\\'../iconfont-vue-6b494fc.eot\\'); /* IE9 Compat Modes */\\n src: url(\\'../iconfont-vue-6b494fc.eot?#iefix\\') format(\\'embedded-opentype\\'), /* IE6-IE8 */\\n url(\\'../iconfont-vue-6b494fc.woff\\') format(\\'woff\\'), /* Pretty Modern Browsers */\\n url(\\'../iconfont-vue-6b494fc.ttf\\') format(\\'truetype\\'), /* Safari, Android, iOS */\\n url(\\'../iconfont-vue-6b494fc.svg\\') format(\\'svg\\'); /* Legacy iOS */\\n }\\n}\\n\\n// creates icon classes for each individual loaded svg (default)\\n@if $create-icon-classes == true {\\n .#{$icon-common-class} {\\n font-style: normal;\\n font-weight: 400;\\n\\n @each $icon, $content in map-get($__iconfont__data, \"iconfont-vue-6b494fc\") {\\n &.#{$icon-prefix}#{$icon}:before {\\n font-family: \"iconfont-vue-6b494fc\";\\n content: iconfont-item(\"iconfont-vue-6b494fc/#{$icon}\");\\n }\\n }\\n }\\n}\\n',\"$scope_version:\\\"6b494fc\\\"; @import 'variables';\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n@import '../../fonts/scss/iconfont-vue';\\n$header-size: 50px;\\n\\n.modal-mask {\\n\\tposition: fixed;\\n\\tz-index: 9998;\\n\\ttop: 0;\\n\\tleft: 0;\\n\\tdisplay: block;\\n\\twidth: 100%;\\n\\theight: 100%;\\n\\tbackground-color: rgba(0, 0, 0, .5);\\n\\t&--dark {\\n\\t\\tbackground-color: rgba(0, 0, 0, .92);\\n\\t}\\n}\\n\\n.modal-header {\\n\\tposition: absolute;\\n\\tz-index: 10001;\\n\\ttop: 0;\\n\\tright: 0;\\n\\tleft: 0;\\n\\t// prevent vue show to use display:none and reseting\\n\\t// the circle animation loop\\n\\tdisplay: flex !important;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n\\twidth: 100%;\\n\\theight: $header-size;\\n\\ttransition: opacity 250ms,\\n\\t\\tvisibility 250ms;\\n\\n\\t// replace display by visibility\\n\\t&.invisible[style*='display:none'],\\n\\t&.invisible[style*='display: none'] {\\n\\t\\tvisibility: hidden;\\n\\t}\\n\\n\\t.modal-title {\\n\\t\\toverflow-x: hidden;\\n\\t\\tbox-sizing: border-box;\\n\\t\\twidth: 100%;\\n\\t\\tpadding: 0 #{$clickable-area * 3} 0 12px; // maximum actions is 3\\n\\t\\ttransition: padding ease 100ms;\\n\\t\\twhite-space: nowrap;\\n\\t\\ttext-overflow: ellipsis;\\n\\t\\tcolor: #fff;\\n\\t\\tfont-size: $icon-margin;\\n\\t}\\n\\n\\t// On wider screens the title can be centered\\n\\t@media only screen and (min-width: $breakpoint-mobile/2) {\\n\\t\\t.modal-title {\\n\\t\\t\\ttext-align: center;\\n\\t\\t\\tpadding-left: #{$clickable-area * 3}; // maximum actions is 3\\n\\t\\t}\\n\\t}\\n\\n\\t.icons-menu {\\n\\t\\tposition: absolute;\\n\\t\\tright: 0;\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\tjustify-content: flex-end;\\n\\n\\t\\t.icon-close {\\n\\t\\t\\tbox-sizing: border-box;\\n\\t\\t\\tmargin: ($header-size - $clickable-area) / 2;\\n\\t\\t\\t// not using $icon-margin since we have a custom font size\\n\\t\\t\\t// and alignement seems odd\\n\\t\\t\\tpadding: 10px 11px;\\n\\t\\t\\tcolor: #fff;\\n\\t\\t\\tbackground-image: none;\\n\\t\\t\\tfont-size: 23px;\\n\\n\\t\\t\\t@include iconfont('close');\\n\\t\\t}\\n\\n\\t\\t.play-pause {\\n\\t\\t\\tposition: relative;\\n\\t\\t\\twidth: $header-size;\\n\\t\\t\\theight: $header-size;\\n\\t\\t\\tmargin: 0;\\n\\t\\t\\tpadding: 0;\\n\\t\\t\\tcursor: pointer;\\n\\t\\t\\tcolor: white;\\n\\t\\t\\tborder: none;\\n\\t\\t\\tbackground-color: transparent;\\n\\t\\t\\tfont-size: 22px;\\n\\t\\t\\t&:hover,\\n\\t\\t\\t&:focus {\\n\\t\\t\\t\\t.icon-play,\\n\\t\\t\\t\\t.icon-pause {\\n\\t\\t\\t\\t\\topacity: 1;\\n\\t\\t\\t\\t\\tborder-radius: $clickable-area / 2;\\n\\t\\t\\t\\t\\tbackground-color: $icon-focus-bg;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t\\t.icon-play,\\n\\t\\t\\t.icon-pause {\\n\\t\\t\\t\\tbox-sizing: border-box;\\n\\t\\t\\t\\twidth: $clickable-area;\\n\\t\\t\\t\\theight: $clickable-area;\\n\\t\\t\\t\\tmargin: ($header-size - $clickable-area) / 2;\\n\\t\\t\\t\\topacity: .7;\\n\\t\\t\\t\\tbackground-image: none;\\n\\t\\t\\t\\tcursor: pointer;\\n\\t\\t\\t}\\n\\t\\t\\t.icon-play {\\n\\t\\t\\t\\t// better visual\\n\\t\\t\\t\\tpadding: 11px 13px;\\n\\t\\t\\t\\t@include iconfont('play');\\n\\t\\t\\t}\\n\\t\\t\\t.icon-pause {\\n\\t\\t\\t\\tpadding: 12px;\\n\\t\\t\\t\\t// ! align with circle\\n\\t\\t\\t\\tfont-size: 19.5px;\\n\\t\\t\\t\\t@include iconfont('pause');\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t.header-actions {\\n\\t\\t\\tmargin: ($header-size - $clickable-area) / 2;\\n\\t\\t\\tcolor: white;\\n\\t\\t}\\n\\n\\t\\t.action-item--single {\\n\\t\\t\\tbox-sizing: border-box;\\n\\t\\t\\twidth: $clickable-area;\\n\\t\\t\\theight: $clickable-area;\\n\\t\\t\\tcursor: pointer;\\n\\t\\t\\tbackground-position: center;\\n\\t\\t\\tbackground-size: 22px;\\n\\t\\t}\\n\\n\\t\\t&::v-deep .action-item__menutoggle {\\n\\t\\t\\tpadding: 13px 11px;\\n\\t\\t\\t// force white instead of default main text\\n\\t\\t\\tcolor: #fff;\\n\\t\\t\\t// 22px is a somehow better looking for the icon-more icon\\n\\t\\t\\tfont-size: 22px;\\n\\t\\t}\\n\\n\\t}\\n}\\n\\n.modal-wrapper {\\n\\tdisplay: flex;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n\\tbox-sizing: border-box;\\n\\twidth: 100%;\\n\\theight: 100%;\\n\\n\\t/* Navigation buttons */\\n\\t.prev,\\n\\t.next {\\n\\t\\tz-index: 10000;\\n\\t\\t// ignore display: none\\n\\t\\tdisplay: flex !important;\\n\\t\\talign-items: center;\\n\\t\\tjustify-content: center;\\n\\t\\twidth: 15%;\\n\\t\\tmin-width: 60px;\\n\\t\\theight: 100%;\\n\\t\\ttransition: opacity 250ms,\\n\\t\\t\\tvisibility 250ms;\\n\\n\\t\\t// we want to keep the elements on page\\n\\t\\t// even if hidden to avoid having a unbalanced\\n\\t\\t// centered content\\n\\t\\t// replace display by visibility\\n\\t\\t&.invisible[style*='display:none'],\\n\\t\\t&.invisible[style*='display: none'] {\\n\\t\\t\\tvisibility: hidden;\\n\\t\\t}\\n\\t}\\n\\n\\t// buttons/icons\\n\\t.icon-next,\\n\\t.icon-previous {\\n\\t\\tbox-sizing: border-box;\\n\\t\\twidth: $clickable-area;\\n\\t\\theight: $clickable-area;\\n\\t\\tpadding: 12px 11px;\\n\\t\\tcolor: white;\\n\\t\\tborder-radius: $clickable-area / 2;\\n\\t\\tbackground-image: none;\\n\\t\\tfont-size: 24px;\\n\\t}\\n\\t.icon-previous {\\n\\t\\t@include iconfont('arrow-left');\\n\\t}\\n\\t.icon-next {\\n\\t\\t@include iconfont('arrow-right');\\n\\t}\\n\\n\\t/* Content */\\n\\t.modal-container {\\n\\t\\tdisplay: block;\\n\\t\\toverflow: hidden;\\n\\t\\tpadding: 0;\\n\\t\\ttransition: transform 300ms ease;\\n\\t\\tborder-radius: var(--border-radius-large);\\n\\t\\tbackground-color: var(--color-main-background);\\n\\t\\tbox-shadow: 0 0 40px rgba(0, 0, 0, .2);\\n\\t}\\n\\t&:not(&--large):not(&--full) .modal-container {\\n\\t\\tmax-width: 900px;\\n\\t\\tmax-height: 80%;\\n\\t}\\n\\n\\t// Sizing\\n\\t&--full {\\n\\t\\t.modal-container {\\n\\t\\t\\tmax-width: 100%;\\n\\t\\t\\tmax-height: 100%;\\n\\t\\t\\tborder-radius: 0;\\n\\t\\t}\\n\\t}\\n\\t&--full,\\n\\t&--spread-navigation {\\n\\t\\t.prev,\\n\\t\\t.next {\\n\\t\\t\\tposition: absolute;\\n\\t\\t\\twidth: 10%;\\n\\t\\t}\\n\\t\\t.prev {\\n\\t\\t\\tleft: 0;\\n\\t\\t}\\n\\t\\t.next {\\n\\t\\t\\tright: 0;\\n\\t\\t}\\n\\t}\\n\\t&--large {\\n\\t\\t.modal-container {\\n\\t\\t\\tmax-width: 85%;\\n\\t\\t\\tmax-height: 90%;\\n\\t\\t}\\n\\t\\t.prev,\\n\\t\\t.next {\\n\\t\\t\\twidth: 10%;\\n\\t\\t\\tmin-width: $clickable-area;\\n\\t\\t}\\n\\t}\\n}\\n\\n/* TRANSITIONS */\\n.fade-enter-active,\\n.fade-leave-active {\\n\\ttransition: opacity 250ms;\\n}\\n\\n.fade-enter,\\n.fade-leave-to {\\n\\topacity: 0;\\n}\\n\\n.fade-visibility-enter,\\n.fade-visibility-leave-to {\\n\\tvisibility: hidden;\\n\\topacity: 0;\\n}\\n\\n.modal-in-enter-active,\\n.modal-in-leave-active,\\n.modal-out-enter-active,\\n.modal-out-leave-active {\\n\\ttransition: opacity 250ms;\\n}\\n\\n.modal-in-enter,\\n.modal-in-leave-to,\\n.modal-out-enter,\\n.modal-out-leave-to {\\n\\topacity: 0;\\n}\\n\\n.modal-in-enter .modal-container,\\n.modal-in-leave-to .modal-container {\\n\\ttransform: scale(.9);\\n}\\n\\n.modal-out-enter .modal-container,\\n.modal-out-leave-to .modal-container {\\n\\ttransform: scale(1.1);\\n}\\n\\n// animated circle\\n$radius: 15;\\n$pi: 3.14159265358979;\\n\\n.modal-mask .play-pause {\\n\\t.progress-ring {\\n\\t\\tposition: absolute;\\n\\t\\ttop: 0;\\n\\t\\tleft: 0;\\n\\t\\ttransform: rotate(-90deg);\\n\\t\\t.progress-ring__circle {\\n\\t\\t\\ttransition: 100ms stroke-dashoffset;\\n\\t\\t\\ttransform-origin: 50% 50%; // axis compensation\\n\\t\\t\\tanimation: progressring linear 3s infinite;\\n\\n\\t\\t\\tstroke-linecap: round;\\n\\t\\t\\tstroke-dashoffset: $radius * 2 * $pi; // radius * 2 * PI\\n\\t\\t\\tstroke-dasharray: $radius * 2 * $pi; // radius * 2 * PI\\n\\t\\t}\\n\\t}\\n\\t&--paused {\\n\\t\\t.icon-pause {\\n\\t\\t\\tanimation: breath 2s cubic-bezier(0.4, 0, 0.2, 1) infinite;\\n\\t\\t}\\n\\t\\t.progress-ring__circle {\\n\\t\\t\\tanimation-play-state: paused !important;\\n\\t\\t}\\n\\t}\\n}\\n\\n// keyframes get scoped too and break the animation name, we need them unscoped\\n@keyframes progressring {\\n\\tfrom {\\n\\t\\tstroke-dashoffset: $radius * 2 * $pi; // radius * 2 * PI\\n\\t}\\n\\tto {\\n\\t\\tstroke-dashoffset: 0;\\n\\t}\\n}\\n\\n@keyframes breath {\\n\\t0% {\\n\\t\\topacity: 1;\\n\\t}\\n\\t50% {\\n\\t\\topacity: 0;\\n\\t}\\n\\t100% {\\n\\t\\topacity: 1;\\n\\t}\\n}\\n\\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 */\\n\\n// https://uxplanet.org/7-rules-for-mobile-ui-button-design-e9cf2ea54556\\n// recommended is 48px\\n// 44px is what we choose and have very good visual-to-usability ratio\\n$clickable-area: 44px;\\n\\n// background icon size\\n// also used for the scss icon font\\n$icon-size: 16px;\\n\\n// icon padding for a $clickable-area width and a $icon-size icon\\n// ( 44px - 16px ) / 2\\n$icon-margin: ($clickable-area - $icon-size) / 2;\\n\\n// transparency background for icons\\n$icon-focus-bg: rgba(127, 127, 127, .25);\\n\\n// popovermenu arrow width from the triangle center\\n$arrow-width: 9px;\\n\\n// opacities\\n$opacity_disabled: .5;\\n$opacity_normal: .7;\\n$opacity_full: 1;\\n\\n// menu round background hover feedback\\n// good looking on dark AND white bg\\n$action-background-hover: rgba(127, 127, 127, .25);\\n\\n// various structure data used in the \\n// `AppNavigation` component\\n$header-height: 50px;\\n$navigation-width: 300px;\\n\\n// mobile breakpoint\\n$breakpoint-mobile: 1024px;\\n\"],sourceRoot:\"\"}]),n.a=g},function(t,n){},,,,,,,,,function(t,n,e){\"use strict\";e.r(n);var A=e(83),o=(e(31),e(109)),i=e.n(o),a=e(73),r=e(110),s=e(61),c=e(12),l=e(21);\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 d(t,n){var e,A,o,i=n;this.start=function(){o=!0,A=new Date,e=setTimeout(t,i)},this.pause=function(){o=!1,clearTimeout(e),i-=new Date-A},this.clear=function(){o=!1,clearTimeout(e),i=0},this.getTimeLeft=function(){return o&&(this.pause(),this.start()),i},this.getStateRunning=function(){return o},this.start()}var u={name:\"Modal\",components:{Actions:a.default,ActionButton:r.default},directives:{tooltip:l.default},mixins:[s.a],props:{title:{type:String,default:\"\"},hasPrevious:{type:Boolean,default:!1},hasNext:{type:Boolean,default:!1},outTransition:{type:Boolean,default:!1},enableSlideshow:{type:Boolean,default:!1},clearViewDelay:{type:Number,default:5e3},slideshowDelay:{type:Number,default:3e3},slideshowPaused:{type:Boolean,default:!1},enableSwipe:{type:Boolean,default:!0},spreadNavigation:{type:Boolean,default:!1},size:{type:String,default:\"normal\",validator:function(t){return-1!==[\"normal\",\"large\",\"full\"].indexOf(t)}},canClose:{type:Boolean,default:!0},dark:{type:Boolean,default:!1},container:{type:String,default:\"body\"}},data:function(){return{mc:null,showModal:!1,clearView:!1,clearViewTimeout:null,playing:!1,slideshowTimeout:null}},computed:{modalTransitionName:function(){return\"modal-\".concat(this.outTransition?\"out\":\"in\")},playPauseTitle:function(){return this.playing?Object(c.b)(\"Pause slideshow\"):Object(c.b)(\"Start slideshow\")}},watch:{slideshowPaused:function(t){this.slideshowTimeout&&(t?this.slideshowTimeout.pause():this.slideshowTimeout.start())}},beforeMount:function(){window.addEventListener(\"keydown\",this.handleKeydown)},beforeDestroy:function(){window.removeEventListener(\"keydown\",this.handleKeydown),this.mc.off(\"swipeleft swiperight\"),this.mc.destroy()},mounted:function(){var t=this;(this.showModal=!0,this.handleMouseMove(),this.mc=new i.a(this.$refs.mask),this.mc.on(\"swipeleft swiperight\",(function(n){t.handleSwipe(n)})),\"body\"===this.container)?document.body.insertBefore(this.$el,document.body.lastChild):document.querySelector(this.container).appendChild(this.$el)},destroyed:function(){this.$el.remove()},methods:{previous:function(t){this.hasPrevious&&(t&&this.resetSlideshow(),this.$emit(\"previous\",t))},next:function(t){this.hasNext&&(t&&this.resetSlideshow(),this.$emit(\"next\",t))},close:function(t){var n=this;this.canClose&&(this.showModal=!1,setTimeout((function(){n.$emit(\"close\",t)}),300))},handleKeydown:function(t){switch(t.keyCode){case 37:this.previous(t);break;case 13:case 39:this.next(t);break;case 27:this.close(t)}},handleSwipe:function(t){this.enableSwipe&&(\"swipeleft\"===t.type?this.next(t):\"swiperight\"===t.type&&this.previous(t))},handleMouseMove:function(){var t=this;this.clearViewDelay>0&&(this.clearView=!1,clearTimeout(this.clearViewTimeout),this.clearViewTimeout=setTimeout((function(){t.clearView=!0}),this.clearViewDelay))},togglePlayPause:function(){this.playing=!this.playing,this.playing?this.handleSlideshow():this.clearSlideshowTimeout()},resetSlideshow:function(){this.playing=!this.playing,this.clearSlideshowTimeout(),this.$nextTick((function(){this.togglePlayPause()}))},handleSlideshow:function(){var t=this;this.playing=!0,this.hasNext?this.slideshowTimeout=new d((function(){t.next(),t.handleSlideshow()}),this.slideshowDelay):(this.playing=!1,this.clearSlideshowTimeout())},clearSlideshowTimeout:function(){this.slideshowTimeout&&this.slideshowTimeout.clear()}}},g=e(2),m=e.n(g),p=e(119),C={insert:\"head\",singleton:!1},f=(m()(p.a,C),p.a.locals,e(3)),h=e(120),b=e.n(h),v=Object(f.a)(u,(function(){var t=this,n=t.$createElement,e=t._self._c||n;return e(\"transition\",{attrs:{name:\"fade\"}},[e(\"div\",{ref:\"mask\",staticClass:\"modal-mask\",class:{\"modal-mask--dark\":t.dark},on:{click:t.handleMouseMove,mousemove:t.handleMouseMove,touchmove:t.handleMouseMove}},[e(\"transition\",{attrs:{name:\"fade-visibility\"}},[e(\"div\",{directives:[{name:\"show\",rawName:\"v-show\",value:!t.clearView,expression:\"!clearView\"}],staticClass:\"modal-header\",class:{invisible:t.clearView}},[\"\"!==t.title.trim()?e(\"div\",{staticClass:\"modal-title\"},[t._v(\"\\n\\t\\t\\t\\t\\t\"+t._s(t.title)+\"\\n\\t\\t\\t\\t\")]):t._e(),t._v(\" \"),e(\"div\",{staticClass:\"icons-menu\"},[t.hasNext&&t.enableSlideshow?e(\"button\",{directives:[{name:\"tooltip\",rawName:\"v-tooltip.auto\",value:t.playPauseTitle,expression:\"playPauseTitle\",modifiers:{auto:!0}}],staticClass:\"play-pause\",class:{\"play-pause--paused\":t.slideshowPaused},on:{click:t.togglePlayPause}},[e(\"div\",{class:[t.playing?\"icon-pause\":\"icon-play\"]},[e(\"span\",{staticClass:\"hidden-visually\"},[t._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\\t\"+t._s(t.playPauseTitle)+\"\\n\\t\\t\\t\\t\\t\\t\\t\")])]),t._v(\" \"),t.playing?e(\"svg\",{staticClass:\"progress-ring\",attrs:{height:\"50\",width:\"50\"}},[e(\"circle\",{staticClass:\"progress-ring__circle\",attrs:{stroke:\"white\",\"stroke-width\":\"2\",fill:\"transparent\",r:\"15\",cx:\"25\",cy:\"25\"}})]):t._e()]):t._e(),t._v(\" \"),e(\"Actions\",{staticClass:\"header-actions\"},[t._t(\"actions\")],2),t._v(\" \"),t.canClose?e(\"Actions\",{staticClass:\"header-close\"},[e(\"ActionButton\",{attrs:{icon:\"icon-close\"},on:{click:t.close}},[t._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\"+t._s(t.t(\"Close\"))+\"\\n\\t\\t\\t\\t\\t\\t\")])],1):t._e()],1)])]),t._v(\" \"),e(\"transition\",{attrs:{name:t.modalTransitionName}},[e(\"div\",{directives:[{name:\"show\",rawName:\"v-show\",value:t.showModal,expression:\"showModal\"}],staticClass:\"modal-wrapper\",class:[\"modal-wrapper--\"+t.size,t.spreadNavigation?\"modal-wrapper--spread-navigation\":\"\"],on:{mousedown:function(n){return n.target!==n.currentTarget?null:t.close(n)}}},[e(\"transition\",{attrs:{name:\"fade-visibility\"}},[e(\"a\",{directives:[{name:\"show\",rawName:\"v-show\",value:t.hasPrevious&&!t.clearView,expression:\"hasPrevious && !clearView\"}],staticClass:\"prev\",class:{invisible:t.clearView||!t.hasPrevious},on:{click:t.previous}},[e(\"div\",{staticClass:\"icon icon-previous\"},[e(\"span\",{staticClass:\"hidden-visually\"},[t._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\\t\"+t._s(t.t(\"Previous\"))+\"\\n\\t\\t\\t\\t\\t\\t\\t\")])])])]),t._v(\" \"),e(\"div\",{staticClass:\"modal-container\"},[t._t(\"default\")],2),t._v(\" \"),e(\"transition\",{attrs:{name:\"fade-visibility\"}},[e(\"a\",{directives:[{name:\"show\",rawName:\"v-show\",value:t.hasNext&&!t.clearView,expression:\"hasNext && !clearView\"}],staticClass:\"next\",class:{invisible:t.clearView||!t.hasNext},on:{click:t.next}},[e(\"div\",{staticClass:\"icon icon-next\"},[e(\"span\",{staticClass:\"hidden-visually\"},[t._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\\t\"+t._s(t.t(\"Next\"))+\"\\n\\t\\t\\t\\t\\t\\t\\t\")])])])])],1)])],1)])}),[],!1,null,\"3e0b109b\",null);\"function\"==typeof b.a&&b()(v);var y=v.exports;\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 */Object(A.a)(y);n.default=y}])}));\n//# sourceMappingURL=Modal.js.map","'use strict';\n\nvar possibleNames = [\n\t'BigInt64Array',\n\t'BigUint64Array',\n\t'Float32Array',\n\t'Float64Array',\n\t'Int16Array',\n\t'Int32Array',\n\t'Int8Array',\n\t'Uint16Array',\n\t'Uint32Array',\n\t'Uint8Array',\n\t'Uint8ClampedArray'\n];\n\nvar g = typeof globalThis === 'undefined' ? global : globalThis;\n\nmodule.exports = function availableTypedArrays() {\n\tvar out = [];\n\tfor (var i = 0; i < possibleNames.length; i++) {\n\t\tif (typeof g[possibleNames[i]] === 'function') {\n\t\t\tout[out.length] = possibleNames[i];\n\t\t}\n\t}\n\treturn out;\n};\n","module.exports = require('./lib/axios');","'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');\nvar defaults = require('../defaults');\nvar Cancel = require('../cancel/Cancel');\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 var responseType = config.responseType;\n var onCanceled;\n function done() {\n if (config.cancelToken) {\n config.cancelToken.unsubscribe(onCanceled);\n }\n\n if (config.signal) {\n config.signal.removeEventListener('abort', onCanceled);\n }\n }\n\n if (utils.isFormData(requestData)) {\n delete requestHeaders['Content-Type']; // Let the browser set it\n }\n\n var request = new XMLHttpRequest();\n\n // HTTP basic authentication\n if (config.auth) {\n var username = config.auth.username || '';\n var password = config.auth.password ? 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 function onloadend() {\n if (!request) {\n return;\n }\n // Prepare the response\n var responseHeaders = 'getAllResponseHeaders' in request ? parseHeaders(request.getAllResponseHeaders()) : null;\n var responseData = !responseType || responseType === 'text' || responseType === 'json' ?\n 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(function _resolve(value) {\n resolve(value);\n done();\n }, function _reject(err) {\n reject(err);\n done();\n }, response);\n\n // Clean up request\n request = null;\n }\n\n if ('onloadend' in request) {\n // Use onloadend if available\n request.onloadend = onloadend;\n } else {\n // Listen for ready state to emulate onloadend\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 // readystate handler is calling before onerror or ontimeout handlers,\n // so we should call onloadend on the next 'tick'\n setTimeout(onloadend);\n };\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 = config.timeout ? 'timeout of ' + config.timeout + 'ms exceeded' : 'timeout exceeded';\n var transitional = config.transitional || defaults.transitional;\n if (config.timeoutErrorMessage) {\n timeoutErrorMessage = config.timeoutErrorMessage;\n }\n reject(createError(\n timeoutErrorMessage,\n config,\n transitional.clarifyTimeoutError ? 'ETIMEDOUT' : '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 (responseType && responseType !== 'json') {\n request.responseType = config.responseType;\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 || config.signal) {\n // Handle cancellation\n // eslint-disable-next-line func-names\n onCanceled = function(cancel) {\n if (!request) {\n return;\n }\n reject(!cancel || (cancel && cancel.type) ? new Cancel('canceled') : cancel);\n request.abort();\n request = null;\n };\n\n config.cancelToken && config.cancelToken.subscribe(onCanceled);\n if (config.signal) {\n config.signal.aborted ? onCanceled() : config.signal.addEventListener('abort', onCanceled);\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 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 // Factory for creating new instances\n instance.create = function create(instanceConfig) {\n return createInstance(mergeConfig(defaultConfig, instanceConfig));\n };\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// Expose Cancel & CancelToken\naxios.Cancel = require('./cancel/Cancel');\naxios.CancelToken = require('./cancel/CancelToken');\naxios.isCancel = require('./cancel/isCancel');\naxios.VERSION = require('./env/data').version;\n\n// Expose all/spread\naxios.all = function all(promises) {\n return Promise.all(promises);\n};\naxios.spread = require('./helpers/spread');\n\n// Expose isAxiosError\naxios.isAxiosError = require('./helpers/isAxiosError');\n\nmodule.exports = axios;\n\n// Allow use of default import syntax in TypeScript\nmodule.exports.default = axios;\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\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\n this.promise = new Promise(function promiseExecutor(resolve) {\n resolvePromise = resolve;\n });\n\n var token = this;\n\n // eslint-disable-next-line func-names\n this.promise.then(function(cancel) {\n if (!token._listeners) return;\n\n var i;\n var l = token._listeners.length;\n\n for (i = 0; i < l; i++) {\n token._listeners[i](cancel);\n }\n token._listeners = null;\n });\n\n // eslint-disable-next-line func-names\n this.promise.then = function(onfulfilled) {\n var _resolve;\n // eslint-disable-next-line func-names\n var promise = new Promise(function(resolve) {\n token.subscribe(resolve);\n _resolve = resolve;\n }).then(onfulfilled);\n\n promise.cancel = function reject() {\n token.unsubscribe(_resolve);\n };\n\n return promise;\n };\n\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 * Subscribe to the cancel signal\n */\n\nCancelToken.prototype.subscribe = function subscribe(listener) {\n if (this.reason) {\n listener(this.reason);\n return;\n }\n\n if (this._listeners) {\n this._listeners.push(listener);\n } else {\n this._listeners = [listener];\n }\n};\n\n/**\n * Unsubscribe from the cancel signal\n */\n\nCancelToken.prototype.unsubscribe = function unsubscribe(listener) {\n if (!this._listeners) {\n return;\n }\n var index = this._listeners.indexOf(listener);\n if (index !== -1) {\n this._listeners.splice(index, 1);\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\nmodule.exports = function isCancel(value) {\n return !!(value && value.__CANCEL__);\n};\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');\nvar validator = require('../helpers/validator');\n\nvar validators = validator.validators;\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 var transitional = config.transitional;\n\n if (transitional !== undefined) {\n validator.assertOptions(transitional, {\n silentJSONParsing: validators.transitional(validators.boolean),\n forcedJSONParsing: validators.transitional(validators.boolean),\n clarifyTimeoutError: validators.transitional(validators.boolean)\n }, false);\n }\n\n // filter out skipped interceptors\n var requestInterceptorChain = [];\n var synchronousRequestInterceptors = true;\n this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {\n if (typeof interceptor.runWhen === 'function' && interceptor.runWhen(config) === false) {\n return;\n }\n\n synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous;\n\n requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected);\n });\n\n var responseInterceptorChain = [];\n this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {\n responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected);\n });\n\n var promise;\n\n if (!synchronousRequestInterceptors) {\n var chain = [dispatchRequest, undefined];\n\n Array.prototype.unshift.apply(chain, requestInterceptorChain);\n chain = chain.concat(responseInterceptorChain);\n\n promise = Promise.resolve(config);\n while (chain.length) {\n promise = promise.then(chain.shift(), chain.shift());\n }\n\n return promise;\n }\n\n\n var newConfig = config;\n while (requestInterceptorChain.length) {\n var onFulfilled = requestInterceptorChain.shift();\n var onRejected = requestInterceptorChain.shift();\n try {\n newConfig = onFulfilled(newConfig);\n } catch (error) {\n onRejected(error);\n break;\n }\n }\n\n try {\n promise = dispatchRequest(newConfig);\n } catch (error) {\n return Promise.reject(error);\n }\n\n while (responseInterceptorChain.length) {\n promise = promise.then(responseInterceptorChain.shift(), responseInterceptorChain.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 data: (config || {}).data\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, options) {\n this.handlers.push({\n fulfilled: fulfilled,\n rejected: rejected,\n synchronous: options ? options.synchronous : false,\n runWhen: options ? options.runWhen : null\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 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\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');\nvar transformData = require('./transformData');\nvar isCancel = require('../cancel/isCancel');\nvar defaults = require('../defaults');\nvar Cancel = require('../cancel/Cancel');\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 if (config.signal && config.signal.aborted) {\n throw new Cancel('canceled');\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.call(\n config,\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.call(\n config,\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.call(\n config,\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\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 status: this.response && this.response.status ? this.response.status : null\n };\n };\n return error;\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 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 // eslint-disable-next-line consistent-return\n function mergeDeepProperties(prop) {\n if (!utils.isUndefined(config2[prop])) {\n return getMergedValue(config1[prop], config2[prop]);\n } else if (!utils.isUndefined(config1[prop])) {\n return getMergedValue(undefined, config1[prop]);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function valueFromConfig2(prop) {\n if (!utils.isUndefined(config2[prop])) {\n return getMergedValue(undefined, config2[prop]);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function defaultToConfig2(prop) {\n if (!utils.isUndefined(config2[prop])) {\n return getMergedValue(undefined, config2[prop]);\n } else if (!utils.isUndefined(config1[prop])) {\n return getMergedValue(undefined, config1[prop]);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDirectKeys(prop) {\n if (prop in config2) {\n return getMergedValue(config1[prop], config2[prop]);\n } else if (prop in config1) {\n return getMergedValue(undefined, config1[prop]);\n }\n }\n\n var mergeMap = {\n 'url': valueFromConfig2,\n 'method': valueFromConfig2,\n 'data': valueFromConfig2,\n 'baseURL': defaultToConfig2,\n 'transformRequest': defaultToConfig2,\n 'transformResponse': defaultToConfig2,\n 'paramsSerializer': defaultToConfig2,\n 'timeout': defaultToConfig2,\n 'timeoutMessage': defaultToConfig2,\n 'withCredentials': defaultToConfig2,\n 'adapter': defaultToConfig2,\n 'responseType': defaultToConfig2,\n 'xsrfCookieName': defaultToConfig2,\n 'xsrfHeaderName': defaultToConfig2,\n 'onUploadProgress': defaultToConfig2,\n 'onDownloadProgress': defaultToConfig2,\n 'decompress': defaultToConfig2,\n 'maxContentLength': defaultToConfig2,\n 'maxBodyLength': defaultToConfig2,\n 'transport': defaultToConfig2,\n 'httpAgent': defaultToConfig2,\n 'httpsAgent': defaultToConfig2,\n 'cancelToken': defaultToConfig2,\n 'socketPath': defaultToConfig2,\n 'responseEncoding': defaultToConfig2,\n 'validateStatus': mergeDirectKeys\n };\n\n utils.forEach(Object.keys(config1).concat(Object.keys(config2)), function computeConfigValue(prop) {\n var merge = mergeMap[prop] || mergeDeepProperties;\n var configValue = merge(prop);\n (utils.isUndefined(configValue) && merge !== mergeDirectKeys) || (config[prop] = configValue);\n });\n\n return config;\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\nvar utils = require('./../utils');\nvar defaults = require('./../defaults');\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 var context = this || defaults;\n /*eslint no-param-reassign:0*/\n utils.forEach(fns, function transform(fn) {\n data = fn.call(context, data, headers);\n });\n\n return data;\n};\n","'use strict';\n\nvar utils = require('./utils');\nvar normalizeHeaderName = require('./helpers/normalizeHeaderName');\nvar enhanceError = require('./core/enhanceError');\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\nfunction stringifySafely(rawValue, parser, encoder) {\n if (utils.isString(rawValue)) {\n try {\n (parser || JSON.parse)(rawValue);\n return utils.trim(rawValue);\n } catch (e) {\n if (e.name !== 'SyntaxError') {\n throw e;\n }\n }\n }\n\n return (encoder || JSON.stringify)(rawValue);\n}\n\nvar defaults = {\n\n transitional: {\n silentJSONParsing: true,\n forcedJSONParsing: true,\n clarifyTimeoutError: false\n },\n\n adapter: getDefaultAdapter(),\n\n transformRequest: [function transformRequest(data, headers) {\n normalizeHeaderName(headers, 'Accept');\n normalizeHeaderName(headers, 'Content-Type');\n\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) || (headers && headers['Content-Type'] === 'application/json')) {\n setContentTypeIfUnset(headers, 'application/json');\n return stringifySafely(data);\n }\n return data;\n }],\n\n transformResponse: [function transformResponse(data) {\n var transitional = this.transitional || defaults.transitional;\n var silentJSONParsing = transitional && transitional.silentJSONParsing;\n var forcedJSONParsing = transitional && transitional.forcedJSONParsing;\n var strictJSONParsing = !silentJSONParsing && this.responseType === 'json';\n\n if (strictJSONParsing || (forcedJSONParsing && utils.isString(data) && data.length)) {\n try {\n return JSON.parse(data);\n } catch (e) {\n if (strictJSONParsing) {\n if (e.name === 'SyntaxError') {\n throw enhanceError(e, this, 'E_JSON_PARSE');\n }\n throw e;\n }\n }\n }\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 headers: {\n common: {\n 'Accept': 'application/json, text/plain, */*'\n }\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","module.exports = {\n \"version\": \"0.24.0\"\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\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\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\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 * Determines whether the payload is an error thrown by Axios\n *\n * @param {*} payload The value to test\n * @returns {boolean} True if the payload is an error thrown by Axios, otherwise false\n */\nmodule.exports = function isAxiosError(payload) {\n return (typeof payload === 'object') && (payload.isAxiosError === true);\n};\n","'use strict';\n\nvar utils = require('./../utils');\n\nmodule.exports = (\n utils.isStandardBrowserEnv() ?\n\n // Standard browser envs have full support of the APIs needed to test\n // whether the request URL is of the same origin as current location.\n (function standardBrowserEnv() {\n var msie = /(msie|trident)/i.test(navigator.userAgent);\n var urlParsingNode = document.createElement('a');\n var originURL;\n\n /**\n * Parse a URL to discover it's components\n *\n * @param {String} url The URL to be parsed\n * @returns {Object}\n */\n function resolveURL(url) {\n var href = url;\n\n if (msie) {\n // IE needs attribute set twice to normalize properties\n urlParsingNode.setAttribute('href', href);\n href = urlParsingNode.href;\n }\n\n urlParsingNode.setAttribute('href', href);\n\n // urlParsingNode provides the UrlUtils interface - http://url.spec.whatwg.org/#urlutils\n return {\n href: urlParsingNode.href,\n protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, '') : '',\n host: urlParsingNode.host,\n search: urlParsingNode.search ? urlParsingNode.search.replace(/^\\?/, '') : '',\n hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, '') : '',\n hostname: urlParsingNode.hostname,\n port: urlParsingNode.port,\n pathname: (urlParsingNode.pathname.charAt(0) === '/') ?\n urlParsingNode.pathname :\n '/' + urlParsingNode.pathname\n };\n }\n\n originURL = resolveURL(window.location.href);\n\n /**\n * Determine if a URL shares the same origin as the current location\n *\n * @param {String} requestURL The URL to test\n * @returns {boolean} True if URL shares the same origin, otherwise false\n */\n return function isURLSameOrigin(requestURL) {\n var parsed = (utils.isString(requestURL)) ? resolveURL(requestURL) : requestURL;\n return (parsed.protocol === originURL.protocol &&\n parsed.host === originURL.host);\n };\n })() :\n\n // Non standard browser envs (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return function isURLSameOrigin() {\n return true;\n };\n })()\n);\n","'use strict';\n\nvar utils = require('../utils');\n\nmodule.exports = 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 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\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\nvar VERSION = require('../env/data').version;\n\nvar validators = {};\n\n// eslint-disable-next-line func-names\n['object', 'boolean', 'number', 'function', 'string', 'symbol'].forEach(function(type, i) {\n validators[type] = function validator(thing) {\n return typeof thing === type || 'a' + (i < 1 ? 'n ' : ' ') + type;\n };\n});\n\nvar deprecatedWarnings = {};\n\n/**\n * Transitional option validator\n * @param {function|boolean?} validator - set to false if the transitional option has been removed\n * @param {string?} version - deprecated version / removed since version\n * @param {string?} message - some message with additional info\n * @returns {function}\n */\nvalidators.transitional = function transitional(validator, version, message) {\n function formatMessage(opt, desc) {\n return '[Axios v' + VERSION + '] Transitional option \\'' + opt + '\\'' + desc + (message ? '. ' + message : '');\n }\n\n // eslint-disable-next-line func-names\n return function(value, opt, opts) {\n if (validator === false) {\n throw new Error(formatMessage(opt, ' has been removed' + (version ? ' in ' + version : '')));\n }\n\n if (version && !deprecatedWarnings[opt]) {\n deprecatedWarnings[opt] = true;\n // eslint-disable-next-line no-console\n console.warn(\n formatMessage(\n opt,\n ' has been deprecated since v' + version + ' and will be removed in the near future'\n )\n );\n }\n\n return validator ? validator(value, opt, opts) : true;\n };\n};\n\n/**\n * Assert object's properties type\n * @param {object} options\n * @param {object} schema\n * @param {boolean?} allowUnknown\n */\n\nfunction assertOptions(options, schema, allowUnknown) {\n if (typeof options !== 'object') {\n throw new TypeError('options must be an object');\n }\n var keys = Object.keys(options);\n var i = keys.length;\n while (i-- > 0) {\n var opt = keys[i];\n var validator = schema[opt];\n if (validator) {\n var value = options[opt];\n var result = value === undefined || validator(value, opt, options);\n if (result !== true) {\n throw new TypeError('option ' + opt + ' must be ' + result);\n }\n continue;\n }\n if (allowUnknown !== true) {\n throw Error('Unknown option ' + opt);\n }\n }\n}\n\nmodule.exports = {\n assertOptions: assertOptions,\n validators: validators\n};\n","'use strict';\n\nvar bind = require('./helpers/bind');\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.trim ? str.trim() : str.replace(/^\\s+|\\s+$/g, '');\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","'use strict';\n\nvar GetIntrinsic = require('get-intrinsic');\n\nvar callBind = require('./');\n\nvar $indexOf = callBind(GetIntrinsic('String.prototype.indexOf'));\n\nmodule.exports = function callBoundIntrinsic(name, allowMissing) {\n\tvar intrinsic = GetIntrinsic(name, !!allowMissing);\n\tif (typeof intrinsic === 'function' && $indexOf(name, '.prototype.') > -1) {\n\t\treturn callBind(intrinsic);\n\t}\n\treturn intrinsic;\n};\n","'use strict';\n\nvar bind = require('function-bind');\nvar GetIntrinsic = require('get-intrinsic');\n\nvar $apply = GetIntrinsic('%Function.prototype.apply%');\nvar $call = GetIntrinsic('%Function.prototype.call%');\nvar $reflectApply = GetIntrinsic('%Reflect.apply%', true) || bind.call($call, $apply);\n\nvar $gOPD = GetIntrinsic('%Object.getOwnPropertyDescriptor%', true);\nvar $defineProperty = GetIntrinsic('%Object.defineProperty%', true);\nvar $max = GetIntrinsic('%Math.max%');\n\nif ($defineProperty) {\n\ttry {\n\t\t$defineProperty({}, 'a', { value: 1 });\n\t} catch (e) {\n\t\t// IE 8 has a broken defineProperty\n\t\t$defineProperty = null;\n\t}\n}\n\nmodule.exports = function callBind(originalFunction) {\n\tvar func = $reflectApply(bind, $call, arguments);\n\tif ($gOPD && $defineProperty) {\n\t\tvar desc = $gOPD(func, 'length');\n\t\tif (desc.configurable) {\n\t\t\t// original length, plus the receiver, minus any additional arguments (after the receiver)\n\t\t\t$defineProperty(\n\t\t\t\tfunc,\n\t\t\t\t'length',\n\t\t\t\t{ value: 1 + $max(0, originalFunction.length - (arguments.length - 1)) }\n\t\t\t);\n\t\t}\n\t}\n\treturn func;\n};\n\nvar applyBind = function applyBind() {\n\treturn $reflectApply(bind, $apply, arguments);\n};\n\nif ($defineProperty) {\n\t$defineProperty(module.exports, 'apply', { value: applyBind });\n} else {\n\tmodule.exports.apply = applyBind;\n}\n","/*global window, global*/\nvar util = require(\"util\")\nvar assert = require(\"assert\")\nfunction now() { return new Date().getTime() }\n\nvar slice = Array.prototype.slice\nvar console\nvar times = {}\n\nif (typeof global !== \"undefined\" && global.console) {\n console = global.console\n} else if (typeof window !== \"undefined\" && window.console) {\n console = window.console\n} else {\n console = {}\n}\n\nvar functions = [\n [log, \"log\"],\n [info, \"info\"],\n [warn, \"warn\"],\n [error, \"error\"],\n [time, \"time\"],\n [timeEnd, \"timeEnd\"],\n [trace, \"trace\"],\n [dir, \"dir\"],\n [consoleAssert, \"assert\"]\n]\n\nfor (var i = 0; i < functions.length; i++) {\n var tuple = functions[i]\n var f = tuple[0]\n var name = tuple[1]\n\n if (!console[name]) {\n console[name] = f\n }\n}\n\nmodule.exports = console\n\nfunction log() {}\n\nfunction info() {\n console.log.apply(console, arguments)\n}\n\nfunction warn() {\n console.log.apply(console, arguments)\n}\n\nfunction error() {\n console.warn.apply(console, arguments)\n}\n\nfunction time(label) {\n times[label] = now()\n}\n\nfunction timeEnd(label) {\n var time = times[label]\n if (!time) {\n throw new Error(\"No such label: \" + label)\n }\n\n delete times[label]\n var duration = now() - time\n console.log(label + \": \" + duration + \"ms\")\n}\n\nfunction trace() {\n var err = new Error()\n err.name = \"Trace\"\n err.message = util.format.apply(null, arguments)\n console.error(err.stack)\n}\n\nfunction dir(object) {\n console.log(util.inspect(object) + \"\\n\")\n}\n\nfunction consoleAssert(expression) {\n if (!expression) {\n var arr = slice.call(arguments, 1)\n assert.ok(false, util.format.apply(null, arr))\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 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","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","'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","module.exports = function (it, Constructor, name) {\n if (!(it instanceof Constructor)) {\n throw TypeError('Incorrect ' + (name ? name + ' ' : '') + 'invocation');\n } return it;\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","'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","'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 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 bind = require('../internals/function-bind-context');\nvar IndexedObject = require('../internals/indexed-object');\nvar toObject = require('../internals/to-object');\nvar toLength = require('../internals/to-length');\nvar arraySpeciesCreate = require('../internals/array-species-create');\n\nvar push = [].push;\n\n// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex }` methods implementation\nvar createMethod = function (TYPE) {\n var IS_MAP = TYPE == 1;\n var IS_FILTER = TYPE == 2;\n var IS_SOME = TYPE == 3;\n var IS_EVERY = TYPE == 4;\n var IS_FIND_INDEX = TYPE == 6;\n var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;\n return function ($this, callbackfn, that, specificCreate) {\n var O = toObject($this);\n var self = IndexedObject(O);\n var boundFunction = bind(callbackfn, that, 3);\n var length = toLength(self.length);\n var index = 0;\n var create = specificCreate || arraySpeciesCreate;\n var target = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;\n var value, result;\n for (;length > index; index++) if (NO_HOLES || index in self) {\n value = self[index];\n result = boundFunction(value, index, O);\n if (TYPE) {\n if (IS_MAP) target[index] = result; // map\n else if (result) switch (TYPE) {\n case 3: return true; // some\n case 5: return value; // find\n case 6: return index; // findIndex\n case 2: push.call(target, value); // filter\n } else if (IS_EVERY) return false; // every\n }\n }\n return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.forEach` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.foreach\n forEach: createMethod(0),\n // `Array.prototype.map` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.map\n map: createMethod(1),\n // `Array.prototype.filter` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.filter\n filter: createMethod(2),\n // `Array.prototype.some` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.some\n some: createMethod(3),\n // `Array.prototype.every` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.every\n every: createMethod(4),\n // `Array.prototype.find` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.find\n find: createMethod(5),\n // `Array.prototype.findIndex` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.findIndex\n findIndex: createMethod(6)\n};\n","var 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 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","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 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 anObject = require('../internals/an-object');\n\n// call something on iterator step with safe closing on error\nmodule.exports = function (iterator, fn, value, ENTRIES) {\n try {\n return ENTRIES ? fn(anObject(value)[0], value[1]) : fn(value);\n // 7.4.6 IteratorClose(iterator, completion)\n } catch (error) {\n var returnMethod = iterator['return'];\n if (returnMethod !== undefined) anObject(returnMethod.call(iterator));\n throw error;\n }\n};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar SAFE_CLOSING = false;\n\ntry {\n var called = 0;\n var iteratorWithReturn = {\n next: function () {\n return { done: !!called++ };\n },\n 'return': function () {\n SAFE_CLOSING = true;\n }\n };\n iteratorWithReturn[ITERATOR] = function () {\n return this;\n };\n // eslint-disable-next-line no-throw-literal\n Array.from(iteratorWithReturn, function () { throw 2; });\n} catch (error) { /* empty */ }\n\nmodule.exports = function (exec, SKIP_CLOSING) {\n if (!SKIP_CLOSING && !SAFE_CLOSING) return false;\n var ITERATION_SUPPORT = false;\n try {\n var object = {};\n object[ITERATOR] = function () {\n return {\n next: function () {\n return { done: ITERATION_SUPPORT = true };\n }\n };\n };\n exec(object);\n } catch (error) { /* empty */ }\n return ITERATION_SUPPORT;\n};\n","var toString = {}.toString;\n\nmodule.exports = function (it) {\n return toString.call(it).slice(8, -1);\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","'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 $ = 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 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 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","'use strict';\nvar IteratorPrototype = require('../internals/iterators-core').IteratorPrototype;\nvar create = require('../internals/object-create');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar Iterators = require('../internals/iterators');\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (IteratorConstructor, NAME, next) {\n var TO_STRING_TAG = NAME + ' Iterator';\n IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(1, next) });\n setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);\n Iterators[TO_STRING_TAG] = returnThis;\n return IteratorConstructor;\n};\n","var 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 (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\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","'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 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 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 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","// 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 getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('navigator', 'userAgent') || '';\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","// 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 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","module.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\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","var fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n return Object.isExtensible(Object.preventExtensions({}));\n});\n","var aFunction = require('../internals/a-function');\n\n// optional / simple context binding\nmodule.exports = function (fn, that, length) {\n aFunction(fn);\n if (that === undefined) return fn;\n switch (length) {\n case 0: return function () {\n return fn.call(that);\n };\n case 1: return function (a) {\n return fn.call(that, a);\n };\n case 2: return function (a, b) {\n return fn.call(that, a, b);\n };\n case 3: return function (a, b, c) {\n return fn.call(that, a, b, c);\n };\n }\n return function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","var 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 classof = require('../internals/classof');\nvar Iterators = require('../internals/iterators');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\n\nmodule.exports = function (it) {\n if (it != undefined) return it[ITERATOR]\n || it['@@iterator']\n || Iterators[classof(it)];\n};\n","var anObject = require('../internals/an-object');\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","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 hasOwnProperty = {}.hasOwnProperty;\n\nmodule.exports = function (it, key) {\n return hasOwnProperty.call(it, key);\n};\n","module.exports = {};\n","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\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 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 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","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 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 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 wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayPrototype = Array.prototype;\n\n// check on default Array iterator\nmodule.exports = function (it) {\n return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);\n};\n","var classof = require('../internals/classof-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\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","module.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n","module.exports = false;\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","'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","module.exports = {};\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 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","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","'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","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 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 DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar anObject = require('../internals/an-object');\nvar toPrimitive = require('../internals/to-primitive');\n\nvar nativeDefineProperty = Object.defineProperty;\n\n// `Object.defineProperty` method\n// https://tc39.github.io/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? nativeDefineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPrimitive(P, true);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return nativeDefineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar 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 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","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","exports.f = Object.getOwnPropertySymbols;\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 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 internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\n// `Object.keys` method\n// https://tc39.github.io/ecma262/#sec-object.keys\nmodule.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n};\n","'use strict';\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 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","'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 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 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 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 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","'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","'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';\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","// `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 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","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar definePropertyModule = require('../internals/object-define-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (CONSTRUCTOR_NAME) {\n var Constructor = getBuiltIn(CONSTRUCTOR_NAME);\n var defineProperty = definePropertyModule.f;\n\n if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) {\n defineProperty(Constructor, SPECIES, {\n configurable: true,\n get: function () { return this; }\n });\n }\n};\n","var defineProperty = require('../internals/object-define-property').f;\nvar has = require('../internals/has');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\n\nmodule.exports = function (it, TAG, STATIC) {\n if (it && !has(it = STATIC ? it : it.prototype, TO_STRING_TAG)) {\n defineProperty(it, TO_STRING_TAG, { configurable: true, value: TAG });\n }\n};\n","var 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 global = require('../internals/global');\nvar setGlobal = require('../internals/set-global');\n\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || setGlobal(SHARED, {});\n\nmodule.exports = store;\n","var IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.6.5',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2020 Denis Pushkarev (zloirock.ru)'\n});\n","var 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';\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","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","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","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","// 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 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 toInteger = require('../internals/to-integer');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.github.io/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toInteger(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","var requireObjectCoercible = require('../internals/require-object-coercible');\n\n// `ToObject` abstract operation\n// https://tc39.github.io/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return Object(requireObjectCoercible(argument));\n};\n","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 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 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 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 wellKnownSymbol = require('../internals/well-known-symbol');\n\nexports.f = wellKnownSymbol;\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","// 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","'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 $ = 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","'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","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 $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 toIndexedObject = require('../internals/to-indexed-object');\nvar addToUnscopables = require('../internals/add-to-unscopables');\nvar Iterators = require('../internals/iterators');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineIterator = require('../internals/define-iterator');\n\nvar ARRAY_ITERATOR = 'Array Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR);\n\n// `Array.prototype.entries` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.entries\n// `Array.prototype.keys` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.keys\n// `Array.prototype.values` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.values\n// `Array.prototype[@@iterator]` method\n// https://tc39.github.io/ecma262/#sec-array.prototype-@@iterator\n// `CreateArrayIterator` internal method\n// https://tc39.github.io/ecma262/#sec-createarrayiterator\nmodule.exports = defineIterator(Array, 'Array', function (iterated, kind) {\n setInternalState(this, {\n type: ARRAY_ITERATOR,\n target: toIndexedObject(iterated), // target\n index: 0, // next index\n kind: kind // kind\n });\n// `%ArrayIteratorPrototype%.next` method\n// https://tc39.github.io/ecma262/#sec-%arrayiteratorprototype%.next\n}, function () {\n var state = getInternalState(this);\n var target = state.target;\n var kind = state.kind;\n var index = state.index++;\n if (!target || index >= target.length) {\n state.target = undefined;\n return { value: undefined, done: true };\n }\n if (kind == 'keys') return { value: index, done: false };\n if (kind == 'values') return { value: target[index], done: false };\n return { value: [index, target[index]], done: false };\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values%\n// https://tc39.github.io/ecma262/#sec-createunmappedargumentsobject\n// https://tc39.github.io/ecma262/#sec-createmappedargumentsobject\nIterators.Arguments = Iterators.Array;\n\n// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n","'use strict';\nvar $ = 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","'use strict';\nvar $ = require('../internals/export');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar toInteger = require('../internals/to-integer');\nvar toLength = require('../internals/to-length');\nvar toObject = require('../internals/to-object');\nvar arraySpeciesCreate = require('../internals/array-species-create');\nvar createProperty = require('../internals/create-property');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('splice');\nvar USES_TO_LENGTH = arrayMethodUsesToLength('splice', { ACCESSORS: true, 0: 0, 1: 2 });\n\nvar max = Math.max;\nvar min = Math.min;\nvar MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF;\nvar MAXIMUM_ALLOWED_LENGTH_EXCEEDED = 'Maximum allowed length exceeded';\n\n// `Array.prototype.splice` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.splice\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT || !USES_TO_LENGTH }, {\n splice: function splice(start, deleteCount /* , ...items */) {\n var O = toObject(this);\n var len = toLength(O.length);\n var actualStart = toAbsoluteIndex(start, len);\n var argumentsLength = arguments.length;\n var insertCount, actualDeleteCount, A, k, from, to;\n if (argumentsLength === 0) {\n insertCount = actualDeleteCount = 0;\n } else if (argumentsLength === 1) {\n insertCount = 0;\n actualDeleteCount = len - actualStart;\n } else {\n insertCount = argumentsLength - 2;\n actualDeleteCount = min(max(toInteger(deleteCount), 0), len - actualStart);\n }\n if (len + insertCount - actualDeleteCount > MAX_SAFE_INTEGER) {\n throw TypeError(MAXIMUM_ALLOWED_LENGTH_EXCEEDED);\n }\n A = arraySpeciesCreate(O, actualDeleteCount);\n for (k = 0; k < actualDeleteCount; k++) {\n from = actualStart + k;\n if (from in O) createProperty(A, k, O[from]);\n }\n A.length = actualDeleteCount;\n if (insertCount < actualDeleteCount) {\n for (k = actualStart; k < len - actualDeleteCount; k++) {\n from = k + actualDeleteCount;\n to = k + insertCount;\n if (from in O) O[to] = O[from];\n else delete O[to];\n }\n for (k = len; k > len - actualDeleteCount + insertCount; k--) delete O[k - 1];\n } else if (insertCount > actualDeleteCount) {\n for (k = len - actualDeleteCount; k > actualStart; k--) {\n from = k + actualDeleteCount - 1;\n to = k + insertCount - 1;\n if (from in O) O[to] = O[from];\n else delete O[to];\n }\n }\n for (k = 0; k < insertCount; k++) {\n O[k + actualStart] = arguments[k + 2];\n }\n O.length = len - actualDeleteCount + insertCount;\n return A;\n }\n});\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 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 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","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 $ = require('../internals/export');\nvar fails = require('../internals/fails');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar nativeGetOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar FAILS_ON_PRIMITIVES = fails(function () { nativeGetOwnPropertyDescriptor(1); });\nvar FORCED = !DESCRIPTORS || FAILS_ON_PRIMITIVES;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptor\n$({ target: 'Object', stat: true, forced: FORCED, sham: !DESCRIPTORS }, {\n getOwnPropertyDescriptor: function getOwnPropertyDescriptor(it, key) {\n return nativeGetOwnPropertyDescriptor(toIndexedObject(it), key);\n }\n});\n","var $ = require('../internals/export');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar ownKeys = require('../internals/own-keys');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar createProperty = require('../internals/create-property');\n\n// `Object.getOwnPropertyDescriptors` method\n// https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptors\n$({ target: 'Object', stat: true, sham: !DESCRIPTORS }, {\n getOwnPropertyDescriptors: function getOwnPropertyDescriptors(object) {\n var O = toIndexedObject(object);\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n var keys = ownKeys(O);\n var result = {};\n var index = 0;\n var key, descriptor;\n while (keys.length > index) {\n descriptor = getOwnPropertyDescriptor(O, key = keys[index++]);\n if (descriptor !== undefined) createProperty(result, key, descriptor);\n }\n return result;\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","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 $ = 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 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 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","'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';\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","// `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","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","'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 global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar forEach = require('../internals/array-for-each');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nfor (var COLLECTION_NAME in DOMIterables) {\n var Collection = global[COLLECTION_NAME];\n var CollectionPrototype = Collection && Collection.prototype;\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype && CollectionPrototype.forEach !== forEach) try {\n createNonEnumerableProperty(CollectionPrototype, 'forEach', forEach);\n } catch (error) {\n CollectionPrototype.forEach = forEach;\n }\n}\n","var global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar ArrayIteratorMethods = require('../modules/es.array.iterator');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar ArrayValues = ArrayIteratorMethods.values;\n\nfor (var COLLECTION_NAME in DOMIterables) {\n var Collection = global[COLLECTION_NAME];\n var CollectionPrototype = Collection && Collection.prototype;\n if (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[ITERATOR] !== ArrayValues) try {\n createNonEnumerableProperty(CollectionPrototype, ITERATOR, ArrayValues);\n } catch (error) {\n CollectionPrototype[ITERATOR] = ArrayValues;\n }\n if (!CollectionPrototype[TO_STRING_TAG]) {\n createNonEnumerableProperty(CollectionPrototype, TO_STRING_TAG, COLLECTION_NAME);\n }\n if (DOMIterables[COLLECTION_NAME]) for (var METHOD_NAME in ArrayIteratorMethods) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME]) try {\n createNonEnumerableProperty(CollectionPrototype, METHOD_NAME, ArrayIteratorMethods[METHOD_NAME]);\n } catch (error) {\n CollectionPrototype[METHOD_NAME] = ArrayIteratorMethods[METHOD_NAME];\n }\n }\n }\n}\n","'use strict';\n// 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","'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","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"#firstrunwizard .page{display:flex;flex-direction:row;flex-wrap:wrap;margin:auto}#firstrunwizard .page h3{margin:10px 0 10px;line-height:120%;padding:0}#firstrunwizard .page .image{padding:20px;max-width:calc(50% - 40px);flex-grow:1}#firstrunwizard .page .image img{width:100%}#firstrunwizard .page .content{padding:20px;width:100%}#firstrunwizard .page p{margin-bottom:20px}#firstrunwizard .page .description-block:first-child{margin-bottom:20px}#firstrunwizard .page .description{margin:20px;width:auto;flex-grow:1;max-width:calc(50% - 40px)}#firstrunwizard .page ul{margin:10px}#firstrunwizard .page ul li{margin-left:20px;margin-bottom:10px;list-style:circle outside}#firstrunwizard .page a:not(.button):hover,#firstrunwizard .page a:not(.button):focus{text-decoration:underline}#firstrunwizard .page .button{display:inline-block}#firstrunwizard .page .button img{width:16px;height:16px;opacity:.5;margin-top:-3px;vertical-align:middle}#firstrunwizard .content-clients{width:100%;text-align:center}#firstrunwizard .content-clients a{text-decoration:none;display:inline-block}#firstrunwizard .content-clients .clientslinks .appsmall{height:32px;width:32px;position:relative;opacity:.5;vertical-align:middle}#firstrunwizard .content-clients .clientslinks .button{display:inline-block;padding:8px;font-weight:normal;font-size:14px}#firstrunwizard .content-final h3{background-position:0;background-size:16px 16px;padding-left:26px;opacity:.7}#firstrunwizard p a{font-weight:bold;color:var(--color-primary)}#firstrunwizard p a:hover,#firstrunwizard p a:focus{color:var(color-text-light)}#firstrunwizard .footnote{margin-top:40px}#firstrunwizard .modal-wrapper .icon-next{background-color:var(--color-primary);color:var(--color-primary-text);box-shadow:0 2px 8px rgba(0,0,0,.33);left:22px}.clientslinks{margin-top:20px;margin-bottom:20px}#wizard-values{list-style-type:none;display:flex;flex-wrap:wrap;margin:0}#wizard-values li{display:block;min-width:250px;width:33%;flex-grow:1;margin:20px 0 20px 0}#wizard-values li span{opacity:.7;display:block;height:50px;width:50px;background-size:40px;margin:auto}#wizard-values li h3{margin:10px 0 10px 0;font-size:130%;text-align:center}.details-link{text-align:center}@media only screen and (max-width: 680px){#firstrunwizard .firstrunwizard-header div.logo{background-size:120px}#firstrunwizard h2{font-size:20px}#firstrunwizard .page>div{max-width:100% !important;width:100%}#firstrunwizard .page #wizard-values li{min-width:100%;overflow:hidden;display:flex}#firstrunwizard .page #wizard-values li span{width:44px !important;padding-right:20px;flex-grow:0}#firstrunwizard .page #wizard-values li h3{font-size:12px;text-align:left;flex-grow:1}#firstrunwizard .page.content-final{padding-bottom:50px}}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/App.vue\"],\"names\":[],\"mappings\":\"AA4CC,sBACC,YAAA,CACA,kBAAA,CACA,cAAA,CACA,WAAA,CAEA,yBACC,kBAAA,CACA,gBAAA,CACA,SAAA,CAED,6BACC,YAAA,CACA,0BAAA,CACA,WAAA,CACA,iCACC,UAAA,CAGF,+BACC,YAAA,CACA,UAAA,CAED,wBACC,kBAAA,CAED,qDACC,kBAAA,CAED,mCACC,WAAA,CACA,UAAA,CACA,WAAA,CACA,0BAAA,CAED,yBACC,WAAA,CACA,4BACC,gBAAA,CACA,kBAAA,CACA,yBAAA,CAID,sFAEC,yBAAA,CAGF,8BACC,oBAAA,CAEA,kCACC,UAAA,CACA,WAAA,CACA,UAAA,CACA,eAAA,CACA,qBAAA,CAKH,iCACC,UAAA,CACA,iBAAA,CACA,mCACC,oBAAA,CACA,oBAAA,CAED,yDACC,WAAA,CACA,UAAA,CACA,iBAAA,CACA,UAAA,CACA,qBAAA,CAED,uDACC,oBAAA,CACA,WAAA,CACA,kBAAA,CACA,cAAA,CAID,kCACC,qBAAA,CACA,yBAAA,CACA,iBAAA,CACA,UAAA,CAGF,oBACC,gBAAA,CACA,0BAAA,CACA,oDAEC,2BAAA,CAIF,0BACC,eAAA,CAID,0CACC,qCAAA,CACA,+BAAA,CACA,oCAAA,CACA,SAAA,CAIF,cACC,eAAA,CACA,kBAAA,CAGD,eACC,oBAAA,CACA,YAAA,CACA,cAAA,CACA,QAAA,CACA,kBACC,aAAA,CACA,eAAA,CACA,SAAA,CACA,WAAA,CACA,oBAAA,CACA,uBACC,UAAA,CACA,aAAA,CACA,WAAA,CACA,UAAA,CACA,oBAAA,CACA,WAAA,CAED,qBACC,oBAAA,CACA,cAAA,CACA,iBAAA,CAKH,cACC,iBAAA,CAGD,0CAEE,gDACC,qBAAA,CAED,mBACC,cAAA,CAED,0BACC,yBAAA,CACA,UAAA,CAGA,wCACC,cAAA,CACA,eAAA,CACA,YAAA,CACA,6CACC,qBAAA,CACA,kBAAA,CACA,WAAA,CAED,2CACC,cAAA,CACA,eAAA,CACA,WAAA,CAIF,oCACC,mBAAA,CAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n/* Page styling needs to be unscoped, since we load it separately from the server */\\n#firstrunwizard {\\n\\n\\t.page {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: row;\\n\\t\\tflex-wrap: wrap;\\n\\t\\tmargin: auto;\\n\\n\\t\\th3 {\\n\\t\\t\\tmargin: 10px 0 10px;\\n\\t\\t\\tline-height: 120%;\\n\\t\\t\\tpadding: 0;\\n\\t\\t}\\n\\t\\t.image {\\n\\t\\t\\tpadding: 20px;\\n\\t\\t\\tmax-width: calc(50% - 40px);\\n\\t\\t\\tflex-grow: 1;\\n\\t\\t\\timg {\\n\\t\\t\\t\\twidth: 100%;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t\\t.content {\\n\\t\\t\\tpadding: 20px;\\n\\t\\t\\twidth: 100%;\\n\\t\\t}\\n\\t\\tp {\\n\\t\\t\\tmargin-bottom: 20px;\\n\\t\\t}\\n\\t\\t.description-block:first-child {\\n\\t\\t\\tmargin-bottom: 20px;\\n\\t\\t}\\n\\t\\t.description {\\n\\t\\t\\tmargin: 20px;\\n\\t\\t\\twidth: auto;\\n\\t\\t\\tflex-grow: 1;\\n\\t\\t\\tmax-width: calc(50% - 40px);\\n\\t\\t}\\n\\t\\tul {\\n\\t\\t\\tmargin: 10px;\\n\\t\\t\\tli {\\n\\t\\t\\t\\tmargin-left: 20px;\\n\\t\\t\\t\\tmargin-bottom: 10px;\\n\\t\\t\\t\\tlist-style: circle outside;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t\\ta:not(.button) {\\n\\t\\t\\t&:hover,\\n\\t\\t\\t&:focus {\\n\\t\\t\\t\\ttext-decoration: underline;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t\\t.button {\\n\\t\\t\\tdisplay: inline-block;\\n\\n\\t\\t\\timg {\\n\\t\\t\\t\\twidth: 16px;\\n\\t\\t\\t\\theight: 16px;\\n\\t\\t\\t\\topacity: .5;\\n\\t\\t\\t\\tmargin-top: -3px;\\n\\t\\t\\t\\tvertical-align: middle;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t.content-clients {\\n\\t\\twidth: 100%;\\n\\t\\ttext-align: center;\\n\\t\\ta {\\n\\t\\t\\ttext-decoration: none;\\n\\t\\t\\tdisplay: inline-block;\\n\\t\\t}\\n\\t\\t.clientslinks .appsmall {\\n\\t\\t\\theight: 32px;\\n\\t\\t\\twidth: 32px;\\n\\t\\t\\tposition: relative;\\n\\t\\t\\topacity: .5;\\n\\t\\t\\tvertical-align: middle;\\n\\t\\t}\\n\\t\\t.clientslinks .button {\\n\\t\\t\\tdisplay: inline-block;\\n\\t\\t\\tpadding: 8px;\\n\\t\\t\\tfont-weight: normal;\\n\\t\\t\\tfont-size: 14px;\\n\\t\\t}\\n\\t}\\n\\t.content-final {\\n\\t\\th3 {\\n\\t\\t\\tbackground-position: 0;\\n\\t\\t\\tbackground-size: 16px 16px;\\n\\t\\t\\tpadding-left: 26px;\\n\\t\\t\\topacity: .7;\\n\\t\\t}\\n\\t}\\n\\tp a {\\n\\t\\tfont-weight: bold;\\n\\t\\tcolor: var(--color-primary);\\n\\t\\t&:hover,\\n\\t\\t&:focus {\\n\\t\\t\\tcolor: var(color-text-light);\\n\\t\\t}\\n\\t}\\n\\n\\t.footnote {\\n\\t\\tmargin-top: 40px;\\n\\t}\\n\\n\\t// primary on next button\\n\\t.modal-wrapper .icon-next {\\n\\t\\tbackground-color: var(--color-primary);\\n\\t\\tcolor: var(--color-primary-text);\\n\\t\\tbox-shadow: 0 2px 8px rgba(0, 0, 0, .33);\\n\\t\\tleft: 22px;\\n\\t}\\n}\\n\\n.clientslinks {\\n\\tmargin-top: 20px;\\n\\tmargin-bottom: 20px;\\n}\\n\\n#wizard-values {\\n\\tlist-style-type: none;\\n\\tdisplay: flex;\\n\\tflex-wrap: wrap;\\n\\tmargin: 0;\\n\\tli {\\n\\t\\tdisplay: block;\\n\\t\\tmin-width: 250px;\\n\\t\\twidth: 33%;\\n\\t\\tflex-grow: 1;\\n\\t\\tmargin: 20px 0 20px 0;\\n\\t\\tspan {\\n\\t\\t\\topacity: .7;\\n\\t\\t\\tdisplay: block;\\n\\t\\t\\theight: 50px;\\n\\t\\t\\twidth: 50px;\\n\\t\\t\\tbackground-size: 40px;\\n\\t\\t\\tmargin: auto;\\n\\t\\t}\\n\\t\\th3 {\\n\\t\\t\\tmargin: 10px 0 10px 0;\\n\\t\\t\\tfont-size: 130%;\\n\\t\\t\\ttext-align: center;\\n\\t\\t}\\n\\t}\\n}\\n\\n.details-link {\\n\\ttext-align: center;\\n}\\n\\n@media only screen and (max-width: 680px) {\\n\\t#firstrunwizard {\\n\\t\\t.firstrunwizard-header div.logo {\\n\\t\\t\\tbackground-size: 120px;\\n\\t\\t}\\n\\t\\th2 {\\n\\t\\t\\tfont-size: 20px;\\n\\t\\t}\\n\\t\\t.page > div {\\n\\t\\t\\tmax-width: 100% !important;\\n\\t\\t\\twidth: 100%;\\n\\t\\t}\\n\\t\\t.page {\\n\\t\\t\\t#wizard-values li {\\n\\t\\t\\t\\tmin-width: 100%;\\n\\t\\t\\t\\toverflow: hidden;\\n\\t\\t\\t\\tdisplay: flex;\\n\\t\\t\\t\\tspan {\\n\\t\\t\\t\\t\\twidth: 44px !important;\\n\\t\\t\\t\\t\\tpadding-right: 20px;\\n\\t\\t\\t\\t\\tflex-grow: 0;\\n\\t\\t\\t\\t}\\n\\t\\t\\t\\th3 {\\n\\t\\t\\t\\t\\tfont-size: 12px;\\n\\t\\t\\t\\t\\ttext-align: left;\\n\\t\\t\\t\\t\\tflex-grow: 1;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\n\\t\\t\\t&.content-final {\\n\\t\\t\\t\\tpadding-bottom: 50px;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".modal-mask[data-v-063e1a6a]{background-color:rgba(0,0,0,.7)}.modal-mask[data-v-063e1a6a] .modal-wrapper{position:relative}.modal-mask[data-v-063e1a6a] .modal-container{display:flex;flex-direction:column;height:95% !important;width:95% !important;max-width:900px;max-height:650px !important;position:relative}.modal-mask .modal-body[data-v-063e1a6a]{flex-grow:1;display:flex;overflow-x:hidden;overflow-y:auto}.modal-mask .modal-body>div[data-v-063e1a6a]{display:flex;flex-grow:1;align-items:center;justify-content:center}.modal-header[data-v-063e1a6a]{height:180px;max-height:40vh;overflow:hidden;flex-shrink:0}.modal-header .firstrunwizard-header[data-v-063e1a6a]{padding:20px 12px;background:var(--color-primary) var(--image-login-background) no-repeat 50% 50%;background-size:cover;color:var(--color-primary-text);text-align:center}.modal-header .firstrunwizard-header .logo[data-v-063e1a6a]{background:var(--image-logo) no-repeat center;background-size:contain;width:175px;height:100px;max-height:20vh;margin:0 auto}.modal-header .firstrunwizard-header h2[data-v-063e1a6a]{font-size:20px;margin-top:7px;line-height:150%;color:var(--color-primary-text);font-weight:300;padding:0 0 10px}.modal-default-button[data-v-063e1a6a]{align-self:flex-end}.modal-footer[data-v-063e1a6a]{overflow:hidden;position:absolute;display:flex;bottom:0;right:0}.modal-footer button[data-v-063e1a6a]{margin:10px}.next-enter-active[data-v-063e1a6a],.next-leave-active[data-v-063e1a6a],.previous-enter-active[data-v-063e1a6a],.previous-leave-active[data-v-063e1a6a]{transition:transform .1s,opacity .25s}.next-enter[data-v-063e1a6a]{transform:translateX(50%);opacity:0}.next-leave-to[data-v-063e1a6a]{transform:translateX(-50%);opacity:0}.previous-enter[data-v-063e1a6a]{transform:translateX(-50%);opacity:0}.previous-leave-to[data-v-063e1a6a]{transform:translateX(50%);opacity:0}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/App.vue\"],\"names\":[],\"mappings\":\"AAuOA,6BACC,+BAAA,CAEA,4CACC,iBAAA,CAGD,8CACC,YAAA,CACA,qBAAA,CACA,qBAAA,CACA,oBAAA,CACA,eAAA,CACA,2BAAA,CACA,iBAAA,CAGD,yCACC,WAAA,CACA,YAAA,CACA,iBAAA,CACA,eAAA,CAEA,6CACC,YAAA,CACA,WAAA,CACA,kBAAA,CACA,sBAAA,CAKH,+BACC,YAAA,CACA,eAAA,CACA,eAAA,CACA,aAAA,CAEA,sDACC,iBAAA,CACA,+EAAA,CACA,qBAAA,CACA,+BAAA,CACA,iBAAA,CACA,4DACC,6CAAA,CACA,uBAAA,CACA,WAAA,CACA,YAAA,CACA,eAAA,CACA,aAAA,CAED,yDACC,cAAA,CACA,cAAA,CACA,gBAAA,CACA,+BAAA,CACA,eAAA,CACA,gBAAA,CAKH,uCACC,mBAAA,CAGD,+BACC,eAAA,CACA,iBAAA,CACA,YAAA,CACA,QAAA,CACA,OAAA,CAGD,sCACC,WAAA,CAID,wJAEC,qCAAA,CAGD,6BACC,yBAAA,CACA,SAAA,CAGD,gCACC,0BAAA,CACA,SAAA,CAGD,iCACC,0BAAA,CACA,SAAA,CAGD,oCACC,yBAAA,CACA,SAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.modal-mask {\\n\\tbackground-color: rgba(0, 0, 0, 0.7);\\n\\n\\t&::v-deep .modal-wrapper {\\n\\t\\tposition: relative;\\n\\t}\\n\\n\\t&::v-deep .modal-container {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\theight: 95% !important;\\n\\t\\twidth: 95% !important;\\n\\t\\tmax-width: 900px;\\n\\t\\tmax-height: 650px !important;\\n\\t\\tposition: relative;\\n\\t}\\n\\n\\t.modal-body {\\n\\t\\tflex-grow: 1;\\n\\t\\tdisplay: flex;\\n\\t\\toverflow-x: hidden;\\n\\t\\toverflow-y: auto;\\n\\n\\t\\t& > div {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tflex-grow: 1;\\n\\t\\t\\talign-items: center;\\n\\t\\t\\tjustify-content: center;\\n\\t\\t}\\n\\t}\\n}\\n\\n.modal-header {\\n\\theight: 180px;\\n\\tmax-height: 40vh;\\n\\toverflow: hidden;\\n\\tflex-shrink: 0;\\n\\n\\t.firstrunwizard-header {\\n\\t\\tpadding: 20px 12px;\\n\\t\\tbackground: var(--color-primary) var(--image-login-background) no-repeat 50% 50%;\\n\\t\\tbackground-size: cover;\\n\\t\\tcolor: var(--color-primary-text);\\n\\t\\ttext-align: center;\\n\\t\\t.logo {\\n\\t\\t\\tbackground: var(--image-logo) no-repeat center;\\n\\t\\t\\tbackground-size: contain;\\n\\t\\t\\twidth: 175px;\\n\\t\\t\\theight: 100px;\\n\\t\\t\\tmax-height: 20vh;\\n\\t\\t\\tmargin: 0 auto;\\n\\t\\t}\\n\\t\\th2 {\\n\\t\\t\\tfont-size: 20px;\\n\\t\\t\\tmargin-top: 7px;\\n\\t\\t\\tline-height: 150%;\\n\\t\\t\\tcolor: var(--color-primary-text);\\n\\t\\t\\tfont-weight: 300;\\n\\t\\t\\tpadding: 0 0 10px;\\n\\t\\t}\\n\\t}\\n}\\n\\n.modal-default-button {\\n\\talign-self: flex-end;\\n}\\n\\n.modal-footer {\\n\\toverflow: hidden;\\n\\tposition: absolute;\\n\\tdisplay: flex;\\n\\tbottom: 0;\\n\\tright: 0;\\n}\\n\\n.modal-footer button {\\n\\tmargin: 10px;\\n}\\n\\n/* Transitions */\\n.next-enter-active, .next-leave-active,\\n.previous-enter-active, .previous-leave-active {\\n\\ttransition: transform .1s, opacity .25s;\\n}\\n\\n.next-enter {\\n\\ttransform: translateX(50%);\\n\\topacity: 0;\\n}\\n\\n.next-leave-to {\\n\\ttransform: translateX(-50%);\\n\\topacity: 0;\\n}\\n\\n.previous-enter {\\n\\ttransform: translateX(-50%);\\n\\topacity: 0;\\n}\\n\\n.previous-leave-to {\\n\\ttransform: translateX(50%);\\n\\topacity: 0;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"video[data-v-70de3a6e]{width:100%;height:100%;object-fit:cover}.video-wrapper[data-v-70de3a6e]{background-color:var(--color-primary)}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/IntroVideo.vue\"],\"names\":[],\"mappings\":\"AAuDA,uBACC,UAAA,CACA,WAAA,CACA,gBAAA,CAGD,gCACC,qCAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\nvideo {\\n\\twidth: 100%;\\n\\theight: 100%;\\n\\tobject-fit: cover;\\n}\\n\\n.video-wrapper {\\n\\tbackground-color: var(--color-primary);\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\"use strict\";\n\n/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n*/\nmodule.exports = function (cssWithMappingToString) {\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 = \"\";\n var needLayer = typeof item[5] !== \"undefined\";\n\n if (item[4]) {\n content += \"@supports (\".concat(item[4], \") {\");\n }\n\n if (item[2]) {\n content += \"@media \".concat(item[2], \" {\");\n }\n\n if (needLayer) {\n content += \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\");\n }\n\n content += cssWithMappingToString(item);\n\n if (needLayer) {\n content += \"}\";\n }\n\n if (item[2]) {\n content += \"}\";\n }\n\n if (item[4]) {\n content += \"}\";\n }\n\n return content;\n }).join(\"\");\n }; // import a list of modules into the list\n\n\n list.i = function i(modules, media, dedupe, supports, layer) {\n if (typeof modules === \"string\") {\n modules = [[null, modules, undefined]];\n }\n\n var alreadyImportedModules = {};\n\n if (dedupe) {\n for (var k = 0; k < this.length; k++) {\n var id = this[k][0];\n\n if (id != null) {\n alreadyImportedModules[id] = true;\n }\n }\n }\n\n for (var _k = 0; _k < modules.length; _k++) {\n var item = [].concat(modules[_k]);\n\n if (dedupe && alreadyImportedModules[item[0]]) {\n continue;\n }\n\n if (typeof layer !== \"undefined\") {\n if (typeof item[5] === \"undefined\") {\n item[5] = layer;\n } else {\n item[1] = \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\").concat(item[1], \"}\");\n item[5] = layer;\n }\n }\n\n if (media) {\n if (!item[2]) {\n item[2] = media;\n } else {\n item[1] = \"@media \".concat(item[2], \" {\").concat(item[1], \"}\");\n item[2] = media;\n }\n }\n\n if (supports) {\n if (!item[4]) {\n item[4] = \"\".concat(supports);\n } else {\n item[1] = \"@supports (\".concat(item[4], \") {\").concat(item[1], \"}\");\n item[4] = supports;\n }\n }\n\n list.push(item);\n }\n };\n\n return list;\n};","\"use strict\";\n\nmodule.exports = function (item) {\n var content = item[1];\n var cssMapping = item[3];\n\n if (!cssMapping) {\n return content;\n }\n\n if (typeof btoa === \"function\") {\n var base64 = btoa(unescape(encodeURIComponent(JSON.stringify(cssMapping))));\n var data = \"sourceMappingURL=data:application/json;charset=utf-8;base64,\".concat(base64);\n var sourceMapping = \"/*# \".concat(data, \" */\");\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};","'use strict';\n\nvar keys = require('object-keys');\nvar hasSymbols = typeof Symbol === 'function' && typeof Symbol('foo') === 'symbol';\n\nvar toStr = Object.prototype.toString;\nvar concat = Array.prototype.concat;\nvar origDefineProperty = Object.defineProperty;\n\nvar isFunction = function (fn) {\n\treturn typeof fn === 'function' && toStr.call(fn) === '[object Function]';\n};\n\nvar arePropertyDescriptorsSupported = function () {\n\tvar obj = {};\n\ttry {\n\t\torigDefineProperty(obj, 'x', { enumerable: false, value: obj });\n\t\t// eslint-disable-next-line no-unused-vars, no-restricted-syntax\n\t\tfor (var _ in obj) { // jscs:ignore disallowUnusedVariables\n\t\t\treturn false;\n\t\t}\n\t\treturn obj.x === obj;\n\t} catch (e) { /* this is IE 8. */\n\t\treturn false;\n\t}\n};\nvar supportsDescriptors = origDefineProperty && arePropertyDescriptorsSupported();\n\nvar defineProperty = function (object, name, value, predicate) {\n\tif (name in object && (!isFunction(predicate) || !predicate())) {\n\t\treturn;\n\t}\n\tif (supportsDescriptors) {\n\t\torigDefineProperty(object, name, {\n\t\t\tconfigurable: true,\n\t\t\tenumerable: false,\n\t\t\tvalue: value,\n\t\t\twritable: true\n\t\t});\n\t} else {\n\t\tobject[name] = value;\n\t}\n};\n\nvar defineProperties = function (object, map) {\n\tvar predicates = arguments.length > 2 ? arguments[2] : {};\n\tvar props = keys(map);\n\tif (hasSymbols) {\n\t\tprops = concat.call(props, Object.getOwnPropertySymbols(map));\n\t}\n\tfor (var i = 0; i < props.length; i += 1) {\n\t\tdefineProperty(object, props[i], map[props[i]], predicates[props[i]]);\n\t}\n};\n\ndefineProperties.supportsDescriptors = !!supportsDescriptors;\n\nmodule.exports = defineProperties;\n","'use strict';\n\nvar GetIntrinsic = require('get-intrinsic');\n\nvar $gOPD = GetIntrinsic('%Object.getOwnPropertyDescriptor%', true);\nif ($gOPD) {\n\ttry {\n\t\t$gOPD([], 'length');\n\t} catch (e) {\n\t\t// IE 8 has a broken gOPD\n\t\t$gOPD = null;\n\t}\n}\n\nmodule.exports = $gOPD;\n","/**\n * Code refactored from Mozilla Developer Network:\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/assign\n */\n\n'use strict';\n\nfunction assign(target, firstSource) {\n if (target === undefined || target === null) {\n throw new TypeError('Cannot convert first argument to object');\n }\n\n var to = Object(target);\n for (var i = 1; i < arguments.length; i++) {\n var nextSource = arguments[i];\n if (nextSource === undefined || nextSource === null) {\n continue;\n }\n\n var keysArray = Object.keys(Object(nextSource));\n for (var nextIndex = 0, len = keysArray.length; nextIndex < len; nextIndex++) {\n var nextKey = keysArray[nextIndex];\n var desc = Object.getOwnPropertyDescriptor(nextSource, nextKey);\n if (desc !== undefined && desc.enumerable) {\n to[nextKey] = nextSource[nextKey];\n }\n }\n }\n return to;\n}\n\nfunction polyfill() {\n if (!Object.assign) {\n Object.defineProperty(Object, 'assign', {\n enumerable: false,\n configurable: true,\n writable: true,\n value: assign\n });\n }\n}\n\nmodule.exports = {\n assign: assign,\n polyfill: polyfill\n};\n","\nvar hasOwn = Object.prototype.hasOwnProperty;\nvar toString = Object.prototype.toString;\n\nmodule.exports = function forEach (obj, fn, ctx) {\n if (toString.call(fn) !== '[object Function]') {\n throw new TypeError('iterator must be a function');\n }\n var l = obj.length;\n if (l === +l) {\n for (var i = 0; i < l; i++) {\n fn.call(ctx, obj[i], i, obj);\n }\n } else {\n for (var k in obj) {\n if (hasOwn.call(obj, k)) {\n fn.call(ctx, obj[k], k, obj);\n }\n }\n }\n};\n\n","'use strict';\n\n/* eslint no-invalid-this: 1 */\n\nvar ERROR_MESSAGE = 'Function.prototype.bind called on incompatible ';\nvar slice = Array.prototype.slice;\nvar toStr = Object.prototype.toString;\nvar funcType = '[object Function]';\n\nmodule.exports = function bind(that) {\n var target = this;\n if (typeof target !== 'function' || toStr.call(target) !== funcType) {\n throw new TypeError(ERROR_MESSAGE + target);\n }\n var args = slice.call(arguments, 1);\n\n var bound;\n var binder = function () {\n if (this instanceof bound) {\n var result = target.apply(\n this,\n args.concat(slice.call(arguments))\n );\n if (Object(result) === result) {\n return result;\n }\n return this;\n } else {\n return target.apply(\n that,\n args.concat(slice.call(arguments))\n );\n }\n };\n\n var boundLength = Math.max(0, target.length - args.length);\n var boundArgs = [];\n for (var i = 0; i < boundLength; i++) {\n boundArgs.push('$' + i);\n }\n\n bound = Function('binder', 'return function (' + boundArgs.join(',') + '){ return binder.apply(this,arguments); }')(binder);\n\n if (target.prototype) {\n var Empty = function Empty() {};\n Empty.prototype = target.prototype;\n bound.prototype = new Empty();\n Empty.prototype = null;\n }\n\n return bound;\n};\n","'use strict';\n\nvar implementation = require('./implementation');\n\nmodule.exports = Function.prototype.bind || implementation;\n","'use strict';\n\nvar undefined;\n\nvar $SyntaxError = SyntaxError;\nvar $Function = Function;\nvar $TypeError = TypeError;\n\n// eslint-disable-next-line consistent-return\nvar getEvalledConstructor = function (expressionSyntax) {\n\ttry {\n\t\treturn $Function('\"use strict\"; return (' + expressionSyntax + ').constructor;')();\n\t} catch (e) {}\n};\n\nvar $gOPD = Object.getOwnPropertyDescriptor;\nif ($gOPD) {\n\ttry {\n\t\t$gOPD({}, '');\n\t} catch (e) {\n\t\t$gOPD = null; // this is IE 8, which has a broken gOPD\n\t}\n}\n\nvar throwTypeError = function () {\n\tthrow new $TypeError();\n};\nvar ThrowTypeError = $gOPD\n\t? (function () {\n\t\ttry {\n\t\t\t// eslint-disable-next-line no-unused-expressions, no-caller, no-restricted-properties\n\t\t\targuments.callee; // IE 8 does not throw here\n\t\t\treturn throwTypeError;\n\t\t} catch (calleeThrows) {\n\t\t\ttry {\n\t\t\t\t// IE 8 throws on Object.getOwnPropertyDescriptor(arguments, '')\n\t\t\t\treturn $gOPD(arguments, 'callee').get;\n\t\t\t} catch (gOPDthrows) {\n\t\t\t\treturn throwTypeError;\n\t\t\t}\n\t\t}\n\t}())\n\t: throwTypeError;\n\nvar hasSymbols = require('has-symbols')();\n\nvar getProto = Object.getPrototypeOf || function (x) { return x.__proto__; }; // eslint-disable-line no-proto\n\nvar needsEval = {};\n\nvar TypedArray = typeof Uint8Array === 'undefined' ? undefined : getProto(Uint8Array);\n\nvar INTRINSICS = {\n\t'%AggregateError%': typeof AggregateError === 'undefined' ? undefined : AggregateError,\n\t'%Array%': Array,\n\t'%ArrayBuffer%': typeof ArrayBuffer === 'undefined' ? undefined : ArrayBuffer,\n\t'%ArrayIteratorPrototype%': hasSymbols ? getProto([][Symbol.iterator]()) : undefined,\n\t'%AsyncFromSyncIteratorPrototype%': undefined,\n\t'%AsyncFunction%': needsEval,\n\t'%AsyncGenerator%': needsEval,\n\t'%AsyncGeneratorFunction%': needsEval,\n\t'%AsyncIteratorPrototype%': needsEval,\n\t'%Atomics%': typeof Atomics === 'undefined' ? undefined : Atomics,\n\t'%BigInt%': typeof BigInt === 'undefined' ? undefined : BigInt,\n\t'%Boolean%': Boolean,\n\t'%DataView%': typeof DataView === 'undefined' ? undefined : DataView,\n\t'%Date%': Date,\n\t'%decodeURI%': decodeURI,\n\t'%decodeURIComponent%': decodeURIComponent,\n\t'%encodeURI%': encodeURI,\n\t'%encodeURIComponent%': encodeURIComponent,\n\t'%Error%': Error,\n\t'%eval%': eval, // eslint-disable-line no-eval\n\t'%EvalError%': EvalError,\n\t'%Float32Array%': typeof Float32Array === 'undefined' ? undefined : Float32Array,\n\t'%Float64Array%': typeof Float64Array === 'undefined' ? undefined : Float64Array,\n\t'%FinalizationRegistry%': typeof FinalizationRegistry === 'undefined' ? undefined : FinalizationRegistry,\n\t'%Function%': $Function,\n\t'%GeneratorFunction%': needsEval,\n\t'%Int8Array%': typeof Int8Array === 'undefined' ? undefined : Int8Array,\n\t'%Int16Array%': typeof Int16Array === 'undefined' ? undefined : Int16Array,\n\t'%Int32Array%': typeof Int32Array === 'undefined' ? undefined : Int32Array,\n\t'%isFinite%': isFinite,\n\t'%isNaN%': isNaN,\n\t'%IteratorPrototype%': hasSymbols ? getProto(getProto([][Symbol.iterator]())) : undefined,\n\t'%JSON%': typeof JSON === 'object' ? JSON : undefined,\n\t'%Map%': typeof Map === 'undefined' ? undefined : Map,\n\t'%MapIteratorPrototype%': typeof Map === 'undefined' || !hasSymbols ? undefined : getProto(new Map()[Symbol.iterator]()),\n\t'%Math%': Math,\n\t'%Number%': Number,\n\t'%Object%': Object,\n\t'%parseFloat%': parseFloat,\n\t'%parseInt%': parseInt,\n\t'%Promise%': typeof Promise === 'undefined' ? undefined : Promise,\n\t'%Proxy%': typeof Proxy === 'undefined' ? undefined : Proxy,\n\t'%RangeError%': RangeError,\n\t'%ReferenceError%': ReferenceError,\n\t'%Reflect%': typeof Reflect === 'undefined' ? undefined : Reflect,\n\t'%RegExp%': RegExp,\n\t'%Set%': typeof Set === 'undefined' ? undefined : Set,\n\t'%SetIteratorPrototype%': typeof Set === 'undefined' || !hasSymbols ? undefined : getProto(new Set()[Symbol.iterator]()),\n\t'%SharedArrayBuffer%': typeof SharedArrayBuffer === 'undefined' ? undefined : SharedArrayBuffer,\n\t'%String%': String,\n\t'%StringIteratorPrototype%': hasSymbols ? getProto(''[Symbol.iterator]()) : undefined,\n\t'%Symbol%': hasSymbols ? Symbol : undefined,\n\t'%SyntaxError%': $SyntaxError,\n\t'%ThrowTypeError%': ThrowTypeError,\n\t'%TypedArray%': TypedArray,\n\t'%TypeError%': $TypeError,\n\t'%Uint8Array%': typeof Uint8Array === 'undefined' ? undefined : Uint8Array,\n\t'%Uint8ClampedArray%': typeof Uint8ClampedArray === 'undefined' ? undefined : Uint8ClampedArray,\n\t'%Uint16Array%': typeof Uint16Array === 'undefined' ? undefined : Uint16Array,\n\t'%Uint32Array%': typeof Uint32Array === 'undefined' ? undefined : Uint32Array,\n\t'%URIError%': URIError,\n\t'%WeakMap%': typeof WeakMap === 'undefined' ? undefined : WeakMap,\n\t'%WeakRef%': typeof WeakRef === 'undefined' ? undefined : WeakRef,\n\t'%WeakSet%': typeof WeakSet === 'undefined' ? undefined : WeakSet\n};\n\nvar doEval = function doEval(name) {\n\tvar value;\n\tif (name === '%AsyncFunction%') {\n\t\tvalue = getEvalledConstructor('async function () {}');\n\t} else if (name === '%GeneratorFunction%') {\n\t\tvalue = getEvalledConstructor('function* () {}');\n\t} else if (name === '%AsyncGeneratorFunction%') {\n\t\tvalue = getEvalledConstructor('async function* () {}');\n\t} else if (name === '%AsyncGenerator%') {\n\t\tvar fn = doEval('%AsyncGeneratorFunction%');\n\t\tif (fn) {\n\t\t\tvalue = fn.prototype;\n\t\t}\n\t} else if (name === '%AsyncIteratorPrototype%') {\n\t\tvar gen = doEval('%AsyncGenerator%');\n\t\tif (gen) {\n\t\t\tvalue = getProto(gen.prototype);\n\t\t}\n\t}\n\n\tINTRINSICS[name] = value;\n\n\treturn value;\n};\n\nvar LEGACY_ALIASES = {\n\t'%ArrayBufferPrototype%': ['ArrayBuffer', 'prototype'],\n\t'%ArrayPrototype%': ['Array', 'prototype'],\n\t'%ArrayProto_entries%': ['Array', 'prototype', 'entries'],\n\t'%ArrayProto_forEach%': ['Array', 'prototype', 'forEach'],\n\t'%ArrayProto_keys%': ['Array', 'prototype', 'keys'],\n\t'%ArrayProto_values%': ['Array', 'prototype', 'values'],\n\t'%AsyncFunctionPrototype%': ['AsyncFunction', 'prototype'],\n\t'%AsyncGenerator%': ['AsyncGeneratorFunction', 'prototype'],\n\t'%AsyncGeneratorPrototype%': ['AsyncGeneratorFunction', 'prototype', 'prototype'],\n\t'%BooleanPrototype%': ['Boolean', 'prototype'],\n\t'%DataViewPrototype%': ['DataView', 'prototype'],\n\t'%DatePrototype%': ['Date', 'prototype'],\n\t'%ErrorPrototype%': ['Error', 'prototype'],\n\t'%EvalErrorPrototype%': ['EvalError', 'prototype'],\n\t'%Float32ArrayPrototype%': ['Float32Array', 'prototype'],\n\t'%Float64ArrayPrototype%': ['Float64Array', 'prototype'],\n\t'%FunctionPrototype%': ['Function', 'prototype'],\n\t'%Generator%': ['GeneratorFunction', 'prototype'],\n\t'%GeneratorPrototype%': ['GeneratorFunction', 'prototype', 'prototype'],\n\t'%Int8ArrayPrototype%': ['Int8Array', 'prototype'],\n\t'%Int16ArrayPrototype%': ['Int16Array', 'prototype'],\n\t'%Int32ArrayPrototype%': ['Int32Array', 'prototype'],\n\t'%JSONParse%': ['JSON', 'parse'],\n\t'%JSONStringify%': ['JSON', 'stringify'],\n\t'%MapPrototype%': ['Map', 'prototype'],\n\t'%NumberPrototype%': ['Number', 'prototype'],\n\t'%ObjectPrototype%': ['Object', 'prototype'],\n\t'%ObjProto_toString%': ['Object', 'prototype', 'toString'],\n\t'%ObjProto_valueOf%': ['Object', 'prototype', 'valueOf'],\n\t'%PromisePrototype%': ['Promise', 'prototype'],\n\t'%PromiseProto_then%': ['Promise', 'prototype', 'then'],\n\t'%Promise_all%': ['Promise', 'all'],\n\t'%Promise_reject%': ['Promise', 'reject'],\n\t'%Promise_resolve%': ['Promise', 'resolve'],\n\t'%RangeErrorPrototype%': ['RangeError', 'prototype'],\n\t'%ReferenceErrorPrototype%': ['ReferenceError', 'prototype'],\n\t'%RegExpPrototype%': ['RegExp', 'prototype'],\n\t'%SetPrototype%': ['Set', 'prototype'],\n\t'%SharedArrayBufferPrototype%': ['SharedArrayBuffer', 'prototype'],\n\t'%StringPrototype%': ['String', 'prototype'],\n\t'%SymbolPrototype%': ['Symbol', 'prototype'],\n\t'%SyntaxErrorPrototype%': ['SyntaxError', 'prototype'],\n\t'%TypedArrayPrototype%': ['TypedArray', 'prototype'],\n\t'%TypeErrorPrototype%': ['TypeError', 'prototype'],\n\t'%Uint8ArrayPrototype%': ['Uint8Array', 'prototype'],\n\t'%Uint8ClampedArrayPrototype%': ['Uint8ClampedArray', 'prototype'],\n\t'%Uint16ArrayPrototype%': ['Uint16Array', 'prototype'],\n\t'%Uint32ArrayPrototype%': ['Uint32Array', 'prototype'],\n\t'%URIErrorPrototype%': ['URIError', 'prototype'],\n\t'%WeakMapPrototype%': ['WeakMap', 'prototype'],\n\t'%WeakSetPrototype%': ['WeakSet', 'prototype']\n};\n\nvar bind = require('function-bind');\nvar hasOwn = require('has');\nvar $concat = bind.call(Function.call, Array.prototype.concat);\nvar $spliceApply = bind.call(Function.apply, Array.prototype.splice);\nvar $replace = bind.call(Function.call, String.prototype.replace);\nvar $strSlice = bind.call(Function.call, String.prototype.slice);\n\n/* adapted from https://github.com/lodash/lodash/blob/4.17.15/dist/lodash.js#L6735-L6744 */\nvar rePropName = /[^%.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|%$))/g;\nvar reEscapeChar = /\\\\(\\\\)?/g; /** Used to match backslashes in property paths. */\nvar stringToPath = function stringToPath(string) {\n\tvar first = $strSlice(string, 0, 1);\n\tvar last = $strSlice(string, -1);\n\tif (first === '%' && last !== '%') {\n\t\tthrow new $SyntaxError('invalid intrinsic syntax, expected closing `%`');\n\t} else if (last === '%' && first !== '%') {\n\t\tthrow new $SyntaxError('invalid intrinsic syntax, expected opening `%`');\n\t}\n\tvar result = [];\n\t$replace(string, rePropName, function (match, number, quote, subString) {\n\t\tresult[result.length] = quote ? $replace(subString, reEscapeChar, '$1') : number || match;\n\t});\n\treturn result;\n};\n/* end adaptation */\n\nvar getBaseIntrinsic = function getBaseIntrinsic(name, allowMissing) {\n\tvar intrinsicName = name;\n\tvar alias;\n\tif (hasOwn(LEGACY_ALIASES, intrinsicName)) {\n\t\talias = LEGACY_ALIASES[intrinsicName];\n\t\tintrinsicName = '%' + alias[0] + '%';\n\t}\n\n\tif (hasOwn(INTRINSICS, intrinsicName)) {\n\t\tvar value = INTRINSICS[intrinsicName];\n\t\tif (value === needsEval) {\n\t\t\tvalue = doEval(intrinsicName);\n\t\t}\n\t\tif (typeof value === 'undefined' && !allowMissing) {\n\t\t\tthrow new $TypeError('intrinsic ' + name + ' exists, but is not available. Please file an issue!');\n\t\t}\n\n\t\treturn {\n\t\t\talias: alias,\n\t\t\tname: intrinsicName,\n\t\t\tvalue: value\n\t\t};\n\t}\n\n\tthrow new $SyntaxError('intrinsic ' + name + ' does not exist!');\n};\n\nmodule.exports = function GetIntrinsic(name, allowMissing) {\n\tif (typeof name !== 'string' || name.length === 0) {\n\t\tthrow new $TypeError('intrinsic name must be a non-empty string');\n\t}\n\tif (arguments.length > 1 && typeof allowMissing !== 'boolean') {\n\t\tthrow new $TypeError('\"allowMissing\" argument must be a boolean');\n\t}\n\n\tvar parts = stringToPath(name);\n\tvar intrinsicBaseName = parts.length > 0 ? parts[0] : '';\n\n\tvar intrinsic = getBaseIntrinsic('%' + intrinsicBaseName + '%', allowMissing);\n\tvar intrinsicRealName = intrinsic.name;\n\tvar value = intrinsic.value;\n\tvar skipFurtherCaching = false;\n\n\tvar alias = intrinsic.alias;\n\tif (alias) {\n\t\tintrinsicBaseName = alias[0];\n\t\t$spliceApply(parts, $concat([0, 1], alias));\n\t}\n\n\tfor (var i = 1, isOwn = true; i < parts.length; i += 1) {\n\t\tvar part = parts[i];\n\t\tvar first = $strSlice(part, 0, 1);\n\t\tvar last = $strSlice(part, -1);\n\t\tif (\n\t\t\t(\n\t\t\t\t(first === '\"' || first === \"'\" || first === '`')\n\t\t\t\t|| (last === '\"' || last === \"'\" || last === '`')\n\t\t\t)\n\t\t\t&& first !== last\n\t\t) {\n\t\t\tthrow new $SyntaxError('property names with quotes must have matching quotes');\n\t\t}\n\t\tif (part === 'constructor' || !isOwn) {\n\t\t\tskipFurtherCaching = true;\n\t\t}\n\n\t\tintrinsicBaseName += '.' + part;\n\t\tintrinsicRealName = '%' + intrinsicBaseName + '%';\n\n\t\tif (hasOwn(INTRINSICS, intrinsicRealName)) {\n\t\t\tvalue = INTRINSICS[intrinsicRealName];\n\t\t} else if (value != null) {\n\t\t\tif (!(part in value)) {\n\t\t\t\tif (!allowMissing) {\n\t\t\t\t\tthrow new $TypeError('base intrinsic for ' + name + ' exists, but the property is not available.');\n\t\t\t\t}\n\t\t\t\treturn void undefined;\n\t\t\t}\n\t\t\tif ($gOPD && (i + 1) >= parts.length) {\n\t\t\t\tvar desc = $gOPD(value, part);\n\t\t\t\tisOwn = !!desc;\n\n\t\t\t\t// By convention, when a data property is converted to an accessor\n\t\t\t\t// property to emulate a data property that does not suffer from\n\t\t\t\t// the override mistake, that accessor's getter is marked with\n\t\t\t\t// an `originalValue` property. Here, when we detect this, we\n\t\t\t\t// uphold the illusion by pretending to see that original data\n\t\t\t\t// property, i.e., returning the value rather than the getter\n\t\t\t\t// itself.\n\t\t\t\tif (isOwn && 'get' in desc && !('originalValue' in desc.get)) {\n\t\t\t\t\tvalue = desc.get;\n\t\t\t\t} else {\n\t\t\t\t\tvalue = value[part];\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tisOwn = hasOwn(value, part);\n\t\t\t\tvalue = value[part];\n\t\t\t}\n\n\t\t\tif (isOwn && !skipFurtherCaching) {\n\t\t\t\tINTRINSICS[intrinsicRealName] = value;\n\t\t\t}\n\t\t}\n\t}\n\treturn value;\n};\n","/*! Hammer.JS - v2.0.7 - 2016-04-22\n * http://hammerjs.github.io/\n *\n * Copyright (c) 2016 Jorik Tangelder;\n * Licensed under the MIT license */\n(function(window, document, exportName, undefined) {\n 'use strict';\n\nvar VENDOR_PREFIXES = ['', 'webkit', 'Moz', 'MS', 'ms', 'o'];\nvar TEST_ELEMENT = document.createElement('div');\n\nvar TYPE_FUNCTION = 'function';\n\nvar round = Math.round;\nvar abs = Math.abs;\nvar now = Date.now;\n\n/**\n * set a timeout with a given scope\n * @param {Function} fn\n * @param {Number} timeout\n * @param {Object} context\n * @returns {number}\n */\nfunction setTimeoutContext(fn, timeout, context) {\n return setTimeout(bindFn(fn, context), timeout);\n}\n\n/**\n * if the argument is an array, we want to execute the fn on each entry\n * if it aint an array we don't want to do a thing.\n * this is used by all the methods that accept a single and array argument.\n * @param {*|Array} arg\n * @param {String} fn\n * @param {Object} [context]\n * @returns {Boolean}\n */\nfunction invokeArrayArg(arg, fn, context) {\n if (Array.isArray(arg)) {\n each(arg, context[fn], context);\n return true;\n }\n return false;\n}\n\n/**\n * walk objects and arrays\n * @param {Object} obj\n * @param {Function} iterator\n * @param {Object} context\n */\nfunction each(obj, iterator, context) {\n var i;\n\n if (!obj) {\n return;\n }\n\n if (obj.forEach) {\n obj.forEach(iterator, context);\n } else if (obj.length !== undefined) {\n i = 0;\n while (i < obj.length) {\n iterator.call(context, obj[i], i, obj);\n i++;\n }\n } else {\n for (i in obj) {\n obj.hasOwnProperty(i) && iterator.call(context, obj[i], i, obj);\n }\n }\n}\n\n/**\n * wrap a method with a deprecation warning and stack trace\n * @param {Function} method\n * @param {String} name\n * @param {String} message\n * @returns {Function} A new function wrapping the supplied method.\n */\nfunction deprecate(method, name, message) {\n var deprecationMessage = 'DEPRECATED METHOD: ' + name + '\\n' + message + ' AT \\n';\n return function() {\n var e = new Error('get-stack-trace');\n var stack = e && e.stack ? e.stack.replace(/^[^\\(]+?[\\n$]/gm, '')\n .replace(/^\\s+at\\s+/gm, '')\n .replace(/^Object.<anonymous>\\s*\\(/gm, '{anonymous}()@') : 'Unknown Stack Trace';\n\n var log = window.console && (window.console.warn || window.console.log);\n if (log) {\n log.call(window.console, deprecationMessage, stack);\n }\n return method.apply(this, arguments);\n };\n}\n\n/**\n * extend object.\n * means that properties in dest will be overwritten by the ones in src.\n * @param {Object} target\n * @param {...Object} objects_to_assign\n * @returns {Object} target\n */\nvar assign;\nif (typeof Object.assign !== 'function') {\n assign = function assign(target) {\n if (target === undefined || target === null) {\n throw new TypeError('Cannot convert undefined or null to object');\n }\n\n var output = Object(target);\n for (var index = 1; index < arguments.length; index++) {\n var source = arguments[index];\n if (source !== undefined && source !== null) {\n for (var nextKey in source) {\n if (source.hasOwnProperty(nextKey)) {\n output[nextKey] = source[nextKey];\n }\n }\n }\n }\n return output;\n };\n} else {\n assign = Object.assign;\n}\n\n/**\n * extend object.\n * means that properties in dest will be overwritten by the ones in src.\n * @param {Object} dest\n * @param {Object} src\n * @param {Boolean} [merge=false]\n * @returns {Object} dest\n */\nvar extend = deprecate(function extend(dest, src, merge) {\n var keys = Object.keys(src);\n var i = 0;\n while (i < keys.length) {\n if (!merge || (merge && dest[keys[i]] === undefined)) {\n dest[keys[i]] = src[keys[i]];\n }\n i++;\n }\n return dest;\n}, 'extend', 'Use `assign`.');\n\n/**\n * merge the values from src in the dest.\n * means that properties that exist in dest will not be overwritten by src\n * @param {Object} dest\n * @param {Object} src\n * @returns {Object} dest\n */\nvar merge = deprecate(function merge(dest, src) {\n return extend(dest, src, true);\n}, 'merge', 'Use `assign`.');\n\n/**\n * simple class inheritance\n * @param {Function} child\n * @param {Function} base\n * @param {Object} [properties]\n */\nfunction inherit(child, base, properties) {\n var baseP = base.prototype,\n childP;\n\n childP = child.prototype = Object.create(baseP);\n childP.constructor = child;\n childP._super = baseP;\n\n if (properties) {\n assign(childP, properties);\n }\n}\n\n/**\n * simple function bind\n * @param {Function} fn\n * @param {Object} context\n * @returns {Function}\n */\nfunction bindFn(fn, context) {\n return function boundFn() {\n return fn.apply(context, arguments);\n };\n}\n\n/**\n * let a boolean value also be a function that must return a boolean\n * this first item in args will be used as the context\n * @param {Boolean|Function} val\n * @param {Array} [args]\n * @returns {Boolean}\n */\nfunction boolOrFn(val, args) {\n if (typeof val == TYPE_FUNCTION) {\n return val.apply(args ? args[0] || undefined : undefined, args);\n }\n return val;\n}\n\n/**\n * use the val2 when val1 is undefined\n * @param {*} val1\n * @param {*} val2\n * @returns {*}\n */\nfunction ifUndefined(val1, val2) {\n return (val1 === undefined) ? val2 : val1;\n}\n\n/**\n * addEventListener with multiple events at once\n * @param {EventTarget} target\n * @param {String} types\n * @param {Function} handler\n */\nfunction addEventListeners(target, types, handler) {\n each(splitStr(types), function(type) {\n target.addEventListener(type, handler, false);\n });\n}\n\n/**\n * removeEventListener with multiple events at once\n * @param {EventTarget} target\n * @param {String} types\n * @param {Function} handler\n */\nfunction removeEventListeners(target, types, handler) {\n each(splitStr(types), function(type) {\n target.removeEventListener(type, handler, false);\n });\n}\n\n/**\n * find if a node is in the given parent\n * @method hasParent\n * @param {HTMLElement} node\n * @param {HTMLElement} parent\n * @return {Boolean} found\n */\nfunction hasParent(node, parent) {\n while (node) {\n if (node == parent) {\n return true;\n }\n node = node.parentNode;\n }\n return false;\n}\n\n/**\n * small indexOf wrapper\n * @param {String} str\n * @param {String} find\n * @returns {Boolean} found\n */\nfunction inStr(str, find) {\n return str.indexOf(find) > -1;\n}\n\n/**\n * split string on whitespace\n * @param {String} str\n * @returns {Array} words\n */\nfunction splitStr(str) {\n return str.trim().split(/\\s+/g);\n}\n\n/**\n * find if a array contains the object using indexOf or a simple polyFill\n * @param {Array} src\n * @param {String} find\n * @param {String} [findByKey]\n * @return {Boolean|Number} false when not found, or the index\n */\nfunction inArray(src, find, findByKey) {\n if (src.indexOf && !findByKey) {\n return src.indexOf(find);\n } else {\n var i = 0;\n while (i < src.length) {\n if ((findByKey && src[i][findByKey] == find) || (!findByKey && src[i] === find)) {\n return i;\n }\n i++;\n }\n return -1;\n }\n}\n\n/**\n * convert array-like objects to real arrays\n * @param {Object} obj\n * @returns {Array}\n */\nfunction toArray(obj) {\n return Array.prototype.slice.call(obj, 0);\n}\n\n/**\n * unique array with objects based on a key (like 'id') or just by the array's value\n * @param {Array} src [{id:1},{id:2},{id:1}]\n * @param {String} [key]\n * @param {Boolean} [sort=False]\n * @returns {Array} [{id:1},{id:2}]\n */\nfunction uniqueArray(src, key, sort) {\n var results = [];\n var values = [];\n var i = 0;\n\n while (i < src.length) {\n var val = key ? src[i][key] : src[i];\n if (inArray(values, val) < 0) {\n results.push(src[i]);\n }\n values[i] = val;\n i++;\n }\n\n if (sort) {\n if (!key) {\n results = results.sort();\n } else {\n results = results.sort(function sortUniqueArray(a, b) {\n return a[key] > b[key];\n });\n }\n }\n\n return results;\n}\n\n/**\n * get the prefixed property\n * @param {Object} obj\n * @param {String} property\n * @returns {String|Undefined} prefixed\n */\nfunction prefixed(obj, property) {\n var prefix, prop;\n var camelProp = property[0].toUpperCase() + property.slice(1);\n\n var i = 0;\n while (i < VENDOR_PREFIXES.length) {\n prefix = VENDOR_PREFIXES[i];\n prop = (prefix) ? prefix + camelProp : property;\n\n if (prop in obj) {\n return prop;\n }\n i++;\n }\n return undefined;\n}\n\n/**\n * get a unique id\n * @returns {number} uniqueId\n */\nvar _uniqueId = 1;\nfunction uniqueId() {\n return _uniqueId++;\n}\n\n/**\n * get the window object of an element\n * @param {HTMLElement} element\n * @returns {DocumentView|Window}\n */\nfunction getWindowForElement(element) {\n var doc = element.ownerDocument || element;\n return (doc.defaultView || doc.parentWindow || window);\n}\n\nvar MOBILE_REGEX = /mobile|tablet|ip(ad|hone|od)|android/i;\n\nvar SUPPORT_TOUCH = ('ontouchstart' in window);\nvar SUPPORT_POINTER_EVENTS = prefixed(window, 'PointerEvent') !== undefined;\nvar SUPPORT_ONLY_TOUCH = SUPPORT_TOUCH && MOBILE_REGEX.test(navigator.userAgent);\n\nvar INPUT_TYPE_TOUCH = 'touch';\nvar INPUT_TYPE_PEN = 'pen';\nvar INPUT_TYPE_MOUSE = 'mouse';\nvar INPUT_TYPE_KINECT = 'kinect';\n\nvar COMPUTE_INTERVAL = 25;\n\nvar INPUT_START = 1;\nvar INPUT_MOVE = 2;\nvar INPUT_END = 4;\nvar INPUT_CANCEL = 8;\n\nvar DIRECTION_NONE = 1;\nvar DIRECTION_LEFT = 2;\nvar DIRECTION_RIGHT = 4;\nvar DIRECTION_UP = 8;\nvar DIRECTION_DOWN = 16;\n\nvar DIRECTION_HORIZONTAL = DIRECTION_LEFT | DIRECTION_RIGHT;\nvar DIRECTION_VERTICAL = DIRECTION_UP | DIRECTION_DOWN;\nvar DIRECTION_ALL = DIRECTION_HORIZONTAL | DIRECTION_VERTICAL;\n\nvar PROPS_XY = ['x', 'y'];\nvar PROPS_CLIENT_XY = ['clientX', 'clientY'];\n\n/**\n * create new input type manager\n * @param {Manager} manager\n * @param {Function} callback\n * @returns {Input}\n * @constructor\n */\nfunction Input(manager, callback) {\n var self = this;\n this.manager = manager;\n this.callback = callback;\n this.element = manager.element;\n this.target = manager.options.inputTarget;\n\n // smaller wrapper around the handler, for the scope and the enabled state of the manager,\n // so when disabled the input events are completely bypassed.\n this.domHandler = function(ev) {\n if (boolOrFn(manager.options.enable, [manager])) {\n self.handler(ev);\n }\n };\n\n this.init();\n\n}\n\nInput.prototype = {\n /**\n * should handle the inputEvent data and trigger the callback\n * @virtual\n */\n handler: function() { },\n\n /**\n * bind the events\n */\n init: function() {\n this.evEl && addEventListeners(this.element, this.evEl, this.domHandler);\n this.evTarget && addEventListeners(this.target, this.evTarget, this.domHandler);\n this.evWin && addEventListeners(getWindowForElement(this.element), this.evWin, this.domHandler);\n },\n\n /**\n * unbind the events\n */\n destroy: function() {\n this.evEl && removeEventListeners(this.element, this.evEl, this.domHandler);\n this.evTarget && removeEventListeners(this.target, this.evTarget, this.domHandler);\n this.evWin && removeEventListeners(getWindowForElement(this.element), this.evWin, this.domHandler);\n }\n};\n\n/**\n * create new input type manager\n * called by the Manager constructor\n * @param {Hammer} manager\n * @returns {Input}\n */\nfunction createInputInstance(manager) {\n var Type;\n var inputClass = manager.options.inputClass;\n\n if (inputClass) {\n Type = inputClass;\n } else if (SUPPORT_POINTER_EVENTS) {\n Type = PointerEventInput;\n } else if (SUPPORT_ONLY_TOUCH) {\n Type = TouchInput;\n } else if (!SUPPORT_TOUCH) {\n Type = MouseInput;\n } else {\n Type = TouchMouseInput;\n }\n return new (Type)(manager, inputHandler);\n}\n\n/**\n * handle input events\n * @param {Manager} manager\n * @param {String} eventType\n * @param {Object} input\n */\nfunction inputHandler(manager, eventType, input) {\n var pointersLen = input.pointers.length;\n var changedPointersLen = input.changedPointers.length;\n var isFirst = (eventType & INPUT_START && (pointersLen - changedPointersLen === 0));\n var isFinal = (eventType & (INPUT_END | INPUT_CANCEL) && (pointersLen - changedPointersLen === 0));\n\n input.isFirst = !!isFirst;\n input.isFinal = !!isFinal;\n\n if (isFirst) {\n manager.session = {};\n }\n\n // source event is the normalized value of the domEvents\n // like 'touchstart, mouseup, pointerdown'\n input.eventType = eventType;\n\n // compute scale, rotation etc\n computeInputData(manager, input);\n\n // emit secret event\n manager.emit('hammer.input', input);\n\n manager.recognize(input);\n manager.session.prevInput = input;\n}\n\n/**\n * extend the data with some usable properties like scale, rotate, velocity etc\n * @param {Object} manager\n * @param {Object} input\n */\nfunction computeInputData(manager, input) {\n var session = manager.session;\n var pointers = input.pointers;\n var pointersLength = pointers.length;\n\n // store the first input to calculate the distance and direction\n if (!session.firstInput) {\n session.firstInput = simpleCloneInputData(input);\n }\n\n // to compute scale and rotation we need to store the multiple touches\n if (pointersLength > 1 && !session.firstMultiple) {\n session.firstMultiple = simpleCloneInputData(input);\n } else if (pointersLength === 1) {\n session.firstMultiple = false;\n }\n\n var firstInput = session.firstInput;\n var firstMultiple = session.firstMultiple;\n var offsetCenter = firstMultiple ? firstMultiple.center : firstInput.center;\n\n var center = input.center = getCenter(pointers);\n input.timeStamp = now();\n input.deltaTime = input.timeStamp - firstInput.timeStamp;\n\n input.angle = getAngle(offsetCenter, center);\n input.distance = getDistance(offsetCenter, center);\n\n computeDeltaXY(session, input);\n input.offsetDirection = getDirection(input.deltaX, input.deltaY);\n\n var overallVelocity = getVelocity(input.deltaTime, input.deltaX, input.deltaY);\n input.overallVelocityX = overallVelocity.x;\n input.overallVelocityY = overallVelocity.y;\n input.overallVelocity = (abs(overallVelocity.x) > abs(overallVelocity.y)) ? overallVelocity.x : overallVelocity.y;\n\n input.scale = firstMultiple ? getScale(firstMultiple.pointers, pointers) : 1;\n input.rotation = firstMultiple ? getRotation(firstMultiple.pointers, pointers) : 0;\n\n input.maxPointers = !session.prevInput ? input.pointers.length : ((input.pointers.length >\n session.prevInput.maxPointers) ? input.pointers.length : session.prevInput.maxPointers);\n\n computeIntervalInputData(session, input);\n\n // find the correct target\n var target = manager.element;\n if (hasParent(input.srcEvent.target, target)) {\n target = input.srcEvent.target;\n }\n input.target = target;\n}\n\nfunction computeDeltaXY(session, input) {\n var center = input.center;\n var offset = session.offsetDelta || {};\n var prevDelta = session.prevDelta || {};\n var prevInput = session.prevInput || {};\n\n if (input.eventType === INPUT_START || prevInput.eventType === INPUT_END) {\n prevDelta = session.prevDelta = {\n x: prevInput.deltaX || 0,\n y: prevInput.deltaY || 0\n };\n\n offset = session.offsetDelta = {\n x: center.x,\n y: center.y\n };\n }\n\n input.deltaX = prevDelta.x + (center.x - offset.x);\n input.deltaY = prevDelta.y + (center.y - offset.y);\n}\n\n/**\n * velocity is calculated every x ms\n * @param {Object} session\n * @param {Object} input\n */\nfunction computeIntervalInputData(session, input) {\n var last = session.lastInterval || input,\n deltaTime = input.timeStamp - last.timeStamp,\n velocity, velocityX, velocityY, direction;\n\n if (input.eventType != INPUT_CANCEL && (deltaTime > COMPUTE_INTERVAL || last.velocity === undefined)) {\n var deltaX = input.deltaX - last.deltaX;\n var deltaY = input.deltaY - last.deltaY;\n\n var v = getVelocity(deltaTime, deltaX, deltaY);\n velocityX = v.x;\n velocityY = v.y;\n velocity = (abs(v.x) > abs(v.y)) ? v.x : v.y;\n direction = getDirection(deltaX, deltaY);\n\n session.lastInterval = input;\n } else {\n // use latest velocity info if it doesn't overtake a minimum period\n velocity = last.velocity;\n velocityX = last.velocityX;\n velocityY = last.velocityY;\n direction = last.direction;\n }\n\n input.velocity = velocity;\n input.velocityX = velocityX;\n input.velocityY = velocityY;\n input.direction = direction;\n}\n\n/**\n * create a simple clone from the input used for storage of firstInput and firstMultiple\n * @param {Object} input\n * @returns {Object} clonedInputData\n */\nfunction simpleCloneInputData(input) {\n // make a simple copy of the pointers because we will get a reference if we don't\n // we only need clientXY for the calculations\n var pointers = [];\n var i = 0;\n while (i < input.pointers.length) {\n pointers[i] = {\n clientX: round(input.pointers[i].clientX),\n clientY: round(input.pointers[i].clientY)\n };\n i++;\n }\n\n return {\n timeStamp: now(),\n pointers: pointers,\n center: getCenter(pointers),\n deltaX: input.deltaX,\n deltaY: input.deltaY\n };\n}\n\n/**\n * get the center of all the pointers\n * @param {Array} pointers\n * @return {Object} center contains `x` and `y` properties\n */\nfunction getCenter(pointers) {\n var pointersLength = pointers.length;\n\n // no need to loop when only one touch\n if (pointersLength === 1) {\n return {\n x: round(pointers[0].clientX),\n y: round(pointers[0].clientY)\n };\n }\n\n var x = 0, y = 0, i = 0;\n while (i < pointersLength) {\n x += pointers[i].clientX;\n y += pointers[i].clientY;\n i++;\n }\n\n return {\n x: round(x / pointersLength),\n y: round(y / pointersLength)\n };\n}\n\n/**\n * calculate the velocity between two points. unit is in px per ms.\n * @param {Number} deltaTime\n * @param {Number} x\n * @param {Number} y\n * @return {Object} velocity `x` and `y`\n */\nfunction getVelocity(deltaTime, x, y) {\n return {\n x: x / deltaTime || 0,\n y: y / deltaTime || 0\n };\n}\n\n/**\n * get the direction between two points\n * @param {Number} x\n * @param {Number} y\n * @return {Number} direction\n */\nfunction getDirection(x, y) {\n if (x === y) {\n return DIRECTION_NONE;\n }\n\n if (abs(x) >= abs(y)) {\n return x < 0 ? DIRECTION_LEFT : DIRECTION_RIGHT;\n }\n return y < 0 ? DIRECTION_UP : DIRECTION_DOWN;\n}\n\n/**\n * calculate the absolute distance between two points\n * @param {Object} p1 {x, y}\n * @param {Object} p2 {x, y}\n * @param {Array} [props] containing x and y keys\n * @return {Number} distance\n */\nfunction getDistance(p1, p2, props) {\n if (!props) {\n props = PROPS_XY;\n }\n var x = p2[props[0]] - p1[props[0]],\n y = p2[props[1]] - p1[props[1]];\n\n return Math.sqrt((x * x) + (y * y));\n}\n\n/**\n * calculate the angle between two coordinates\n * @param {Object} p1\n * @param {Object} p2\n * @param {Array} [props] containing x and y keys\n * @return {Number} angle\n */\nfunction getAngle(p1, p2, props) {\n if (!props) {\n props = PROPS_XY;\n }\n var x = p2[props[0]] - p1[props[0]],\n y = p2[props[1]] - p1[props[1]];\n return Math.atan2(y, x) * 180 / Math.PI;\n}\n\n/**\n * calculate the rotation degrees between two pointersets\n * @param {Array} start array of pointers\n * @param {Array} end array of pointers\n * @return {Number} rotation\n */\nfunction getRotation(start, end) {\n return getAngle(end[1], end[0], PROPS_CLIENT_XY) + getAngle(start[1], start[0], PROPS_CLIENT_XY);\n}\n\n/**\n * calculate the scale factor between two pointersets\n * no scale is 1, and goes down to 0 when pinched together, and bigger when pinched out\n * @param {Array} start array of pointers\n * @param {Array} end array of pointers\n * @return {Number} scale\n */\nfunction getScale(start, end) {\n return getDistance(end[0], end[1], PROPS_CLIENT_XY) / getDistance(start[0], start[1], PROPS_CLIENT_XY);\n}\n\nvar MOUSE_INPUT_MAP = {\n mousedown: INPUT_START,\n mousemove: INPUT_MOVE,\n mouseup: INPUT_END\n};\n\nvar MOUSE_ELEMENT_EVENTS = 'mousedown';\nvar MOUSE_WINDOW_EVENTS = 'mousemove mouseup';\n\n/**\n * Mouse events input\n * @constructor\n * @extends Input\n */\nfunction MouseInput() {\n this.evEl = MOUSE_ELEMENT_EVENTS;\n this.evWin = MOUSE_WINDOW_EVENTS;\n\n this.pressed = false; // mousedown state\n\n Input.apply(this, arguments);\n}\n\ninherit(MouseInput, Input, {\n /**\n * handle mouse events\n * @param {Object} ev\n */\n handler: function MEhandler(ev) {\n var eventType = MOUSE_INPUT_MAP[ev.type];\n\n // on start we want to have the left mouse button down\n if (eventType & INPUT_START && ev.button === 0) {\n this.pressed = true;\n }\n\n if (eventType & INPUT_MOVE && ev.which !== 1) {\n eventType = INPUT_END;\n }\n\n // mouse must be down\n if (!this.pressed) {\n return;\n }\n\n if (eventType & INPUT_END) {\n this.pressed = false;\n }\n\n this.callback(this.manager, eventType, {\n pointers: [ev],\n changedPointers: [ev],\n pointerType: INPUT_TYPE_MOUSE,\n srcEvent: ev\n });\n }\n});\n\nvar POINTER_INPUT_MAP = {\n pointerdown: INPUT_START,\n pointermove: INPUT_MOVE,\n pointerup: INPUT_END,\n pointercancel: INPUT_CANCEL,\n pointerout: INPUT_CANCEL\n};\n\n// in IE10 the pointer types is defined as an enum\nvar IE10_POINTER_TYPE_ENUM = {\n 2: INPUT_TYPE_TOUCH,\n 3: INPUT_TYPE_PEN,\n 4: INPUT_TYPE_MOUSE,\n 5: INPUT_TYPE_KINECT // see https://twitter.com/jacobrossi/status/480596438489890816\n};\n\nvar POINTER_ELEMENT_EVENTS = 'pointerdown';\nvar POINTER_WINDOW_EVENTS = 'pointermove pointerup pointercancel';\n\n// IE10 has prefixed support, and case-sensitive\nif (window.MSPointerEvent && !window.PointerEvent) {\n POINTER_ELEMENT_EVENTS = 'MSPointerDown';\n POINTER_WINDOW_EVENTS = 'MSPointerMove MSPointerUp MSPointerCancel';\n}\n\n/**\n * Pointer events input\n * @constructor\n * @extends Input\n */\nfunction PointerEventInput() {\n this.evEl = POINTER_ELEMENT_EVENTS;\n this.evWin = POINTER_WINDOW_EVENTS;\n\n Input.apply(this, arguments);\n\n this.store = (this.manager.session.pointerEvents = []);\n}\n\ninherit(PointerEventInput, Input, {\n /**\n * handle mouse events\n * @param {Object} ev\n */\n handler: function PEhandler(ev) {\n var store = this.store;\n var removePointer = false;\n\n var eventTypeNormalized = ev.type.toLowerCase().replace('ms', '');\n var eventType = POINTER_INPUT_MAP[eventTypeNormalized];\n var pointerType = IE10_POINTER_TYPE_ENUM[ev.pointerType] || ev.pointerType;\n\n var isTouch = (pointerType == INPUT_TYPE_TOUCH);\n\n // get index of the event in the store\n var storeIndex = inArray(store, ev.pointerId, 'pointerId');\n\n // start and mouse must be down\n if (eventType & INPUT_START && (ev.button === 0 || isTouch)) {\n if (storeIndex < 0) {\n store.push(ev);\n storeIndex = store.length - 1;\n }\n } else if (eventType & (INPUT_END | INPUT_CANCEL)) {\n removePointer = true;\n }\n\n // it not found, so the pointer hasn't been down (so it's probably a hover)\n if (storeIndex < 0) {\n return;\n }\n\n // update the event in the store\n store[storeIndex] = ev;\n\n this.callback(this.manager, eventType, {\n pointers: store,\n changedPointers: [ev],\n pointerType: pointerType,\n srcEvent: ev\n });\n\n if (removePointer) {\n // remove from the store\n store.splice(storeIndex, 1);\n }\n }\n});\n\nvar SINGLE_TOUCH_INPUT_MAP = {\n touchstart: INPUT_START,\n touchmove: INPUT_MOVE,\n touchend: INPUT_END,\n touchcancel: INPUT_CANCEL\n};\n\nvar SINGLE_TOUCH_TARGET_EVENTS = 'touchstart';\nvar SINGLE_TOUCH_WINDOW_EVENTS = 'touchstart touchmove touchend touchcancel';\n\n/**\n * Touch events input\n * @constructor\n * @extends Input\n */\nfunction SingleTouchInput() {\n this.evTarget = SINGLE_TOUCH_TARGET_EVENTS;\n this.evWin = SINGLE_TOUCH_WINDOW_EVENTS;\n this.started = false;\n\n Input.apply(this, arguments);\n}\n\ninherit(SingleTouchInput, Input, {\n handler: function TEhandler(ev) {\n var type = SINGLE_TOUCH_INPUT_MAP[ev.type];\n\n // should we handle the touch events?\n if (type === INPUT_START) {\n this.started = true;\n }\n\n if (!this.started) {\n return;\n }\n\n var touches = normalizeSingleTouches.call(this, ev, type);\n\n // when done, reset the started state\n if (type & (INPUT_END | INPUT_CANCEL) && touches[0].length - touches[1].length === 0) {\n this.started = false;\n }\n\n this.callback(this.manager, type, {\n pointers: touches[0],\n changedPointers: touches[1],\n pointerType: INPUT_TYPE_TOUCH,\n srcEvent: ev\n });\n }\n});\n\n/**\n * @this {TouchInput}\n * @param {Object} ev\n * @param {Number} type flag\n * @returns {undefined|Array} [all, changed]\n */\nfunction normalizeSingleTouches(ev, type) {\n var all = toArray(ev.touches);\n var changed = toArray(ev.changedTouches);\n\n if (type & (INPUT_END | INPUT_CANCEL)) {\n all = uniqueArray(all.concat(changed), 'identifier', true);\n }\n\n return [all, changed];\n}\n\nvar TOUCH_INPUT_MAP = {\n touchstart: INPUT_START,\n touchmove: INPUT_MOVE,\n touchend: INPUT_END,\n touchcancel: INPUT_CANCEL\n};\n\nvar TOUCH_TARGET_EVENTS = 'touchstart touchmove touchend touchcancel';\n\n/**\n * Multi-user touch events input\n * @constructor\n * @extends Input\n */\nfunction TouchInput() {\n this.evTarget = TOUCH_TARGET_EVENTS;\n this.targetIds = {};\n\n Input.apply(this, arguments);\n}\n\ninherit(TouchInput, Input, {\n handler: function MTEhandler(ev) {\n var type = TOUCH_INPUT_MAP[ev.type];\n var touches = getTouches.call(this, ev, type);\n if (!touches) {\n return;\n }\n\n this.callback(this.manager, type, {\n pointers: touches[0],\n changedPointers: touches[1],\n pointerType: INPUT_TYPE_TOUCH,\n srcEvent: ev\n });\n }\n});\n\n/**\n * @this {TouchInput}\n * @param {Object} ev\n * @param {Number} type flag\n * @returns {undefined|Array} [all, changed]\n */\nfunction getTouches(ev, type) {\n var allTouches = toArray(ev.touches);\n var targetIds = this.targetIds;\n\n // when there is only one touch, the process can be simplified\n if (type & (INPUT_START | INPUT_MOVE) && allTouches.length === 1) {\n targetIds[allTouches[0].identifier] = true;\n return [allTouches, allTouches];\n }\n\n var i,\n targetTouches,\n changedTouches = toArray(ev.changedTouches),\n changedTargetTouches = [],\n target = this.target;\n\n // get target touches from touches\n targetTouches = allTouches.filter(function(touch) {\n return hasParent(touch.target, target);\n });\n\n // collect touches\n if (type === INPUT_START) {\n i = 0;\n while (i < targetTouches.length) {\n targetIds[targetTouches[i].identifier] = true;\n i++;\n }\n }\n\n // filter changed touches to only contain touches that exist in the collected target ids\n i = 0;\n while (i < changedTouches.length) {\n if (targetIds[changedTouches[i].identifier]) {\n changedTargetTouches.push(changedTouches[i]);\n }\n\n // cleanup removed touches\n if (type & (INPUT_END | INPUT_CANCEL)) {\n delete targetIds[changedTouches[i].identifier];\n }\n i++;\n }\n\n if (!changedTargetTouches.length) {\n return;\n }\n\n return [\n // merge targetTouches with changedTargetTouches so it contains ALL touches, including 'end' and 'cancel'\n uniqueArray(targetTouches.concat(changedTargetTouches), 'identifier', true),\n changedTargetTouches\n ];\n}\n\n/**\n * Combined touch and mouse input\n *\n * Touch has a higher priority then mouse, and while touching no mouse events are allowed.\n * This because touch devices also emit mouse events while doing a touch.\n *\n * @constructor\n * @extends Input\n */\n\nvar DEDUP_TIMEOUT = 2500;\nvar DEDUP_DISTANCE = 25;\n\nfunction TouchMouseInput() {\n Input.apply(this, arguments);\n\n var handler = bindFn(this.handler, this);\n this.touch = new TouchInput(this.manager, handler);\n this.mouse = new MouseInput(this.manager, handler);\n\n this.primaryTouch = null;\n this.lastTouches = [];\n}\n\ninherit(TouchMouseInput, Input, {\n /**\n * handle mouse and touch events\n * @param {Hammer} manager\n * @param {String} inputEvent\n * @param {Object} inputData\n */\n handler: function TMEhandler(manager, inputEvent, inputData) {\n var isTouch = (inputData.pointerType == INPUT_TYPE_TOUCH),\n isMouse = (inputData.pointerType == INPUT_TYPE_MOUSE);\n\n if (isMouse && inputData.sourceCapabilities && inputData.sourceCapabilities.firesTouchEvents) {\n return;\n }\n\n // when we're in a touch event, record touches to de-dupe synthetic mouse event\n if (isTouch) {\n recordTouches.call(this, inputEvent, inputData);\n } else if (isMouse && isSyntheticEvent.call(this, inputData)) {\n return;\n }\n\n this.callback(manager, inputEvent, inputData);\n },\n\n /**\n * remove the event listeners\n */\n destroy: function destroy() {\n this.touch.destroy();\n this.mouse.destroy();\n }\n});\n\nfunction recordTouches(eventType, eventData) {\n if (eventType & INPUT_START) {\n this.primaryTouch = eventData.changedPointers[0].identifier;\n setLastTouch.call(this, eventData);\n } else if (eventType & (INPUT_END | INPUT_CANCEL)) {\n setLastTouch.call(this, eventData);\n }\n}\n\nfunction setLastTouch(eventData) {\n var touch = eventData.changedPointers[0];\n\n if (touch.identifier === this.primaryTouch) {\n var lastTouch = {x: touch.clientX, y: touch.clientY};\n this.lastTouches.push(lastTouch);\n var lts = this.lastTouches;\n var removeLastTouch = function() {\n var i = lts.indexOf(lastTouch);\n if (i > -1) {\n lts.splice(i, 1);\n }\n };\n setTimeout(removeLastTouch, DEDUP_TIMEOUT);\n }\n}\n\nfunction isSyntheticEvent(eventData) {\n var x = eventData.srcEvent.clientX, y = eventData.srcEvent.clientY;\n for (var i = 0; i < this.lastTouches.length; i++) {\n var t = this.lastTouches[i];\n var dx = Math.abs(x - t.x), dy = Math.abs(y - t.y);\n if (dx <= DEDUP_DISTANCE && dy <= DEDUP_DISTANCE) {\n return true;\n }\n }\n return false;\n}\n\nvar PREFIXED_TOUCH_ACTION = prefixed(TEST_ELEMENT.style, 'touchAction');\nvar NATIVE_TOUCH_ACTION = PREFIXED_TOUCH_ACTION !== undefined;\n\n// magical touchAction value\nvar TOUCH_ACTION_COMPUTE = 'compute';\nvar TOUCH_ACTION_AUTO = 'auto';\nvar TOUCH_ACTION_MANIPULATION = 'manipulation'; // not implemented\nvar TOUCH_ACTION_NONE = 'none';\nvar TOUCH_ACTION_PAN_X = 'pan-x';\nvar TOUCH_ACTION_PAN_Y = 'pan-y';\nvar TOUCH_ACTION_MAP = getTouchActionProps();\n\n/**\n * Touch Action\n * sets the touchAction property or uses the js alternative\n * @param {Manager} manager\n * @param {String} value\n * @constructor\n */\nfunction TouchAction(manager, value) {\n this.manager = manager;\n this.set(value);\n}\n\nTouchAction.prototype = {\n /**\n * set the touchAction value on the element or enable the polyfill\n * @param {String} value\n */\n set: function(value) {\n // find out the touch-action by the event handlers\n if (value == TOUCH_ACTION_COMPUTE) {\n value = this.compute();\n }\n\n if (NATIVE_TOUCH_ACTION && this.manager.element.style && TOUCH_ACTION_MAP[value]) {\n this.manager.element.style[PREFIXED_TOUCH_ACTION] = value;\n }\n this.actions = value.toLowerCase().trim();\n },\n\n /**\n * just re-set the touchAction value\n */\n update: function() {\n this.set(this.manager.options.touchAction);\n },\n\n /**\n * compute the value for the touchAction property based on the recognizer's settings\n * @returns {String} value\n */\n compute: function() {\n var actions = [];\n each(this.manager.recognizers, function(recognizer) {\n if (boolOrFn(recognizer.options.enable, [recognizer])) {\n actions = actions.concat(recognizer.getTouchAction());\n }\n });\n return cleanTouchActions(actions.join(' '));\n },\n\n /**\n * this method is called on each input cycle and provides the preventing of the browser behavior\n * @param {Object} input\n */\n preventDefaults: function(input) {\n var srcEvent = input.srcEvent;\n var direction = input.offsetDirection;\n\n // if the touch action did prevented once this session\n if (this.manager.session.prevented) {\n srcEvent.preventDefault();\n return;\n }\n\n var actions = this.actions;\n var hasNone = inStr(actions, TOUCH_ACTION_NONE) && !TOUCH_ACTION_MAP[TOUCH_ACTION_NONE];\n var hasPanY = inStr(actions, TOUCH_ACTION_PAN_Y) && !TOUCH_ACTION_MAP[TOUCH_ACTION_PAN_Y];\n var hasPanX = inStr(actions, TOUCH_ACTION_PAN_X) && !TOUCH_ACTION_MAP[TOUCH_ACTION_PAN_X];\n\n if (hasNone) {\n //do not prevent defaults if this is a tap gesture\n\n var isTapPointer = input.pointers.length === 1;\n var isTapMovement = input.distance < 2;\n var isTapTouchTime = input.deltaTime < 250;\n\n if (isTapPointer && isTapMovement && isTapTouchTime) {\n return;\n }\n }\n\n if (hasPanX && hasPanY) {\n // `pan-x pan-y` means browser handles all scrolling/panning, do not prevent\n return;\n }\n\n if (hasNone ||\n (hasPanY && direction & DIRECTION_HORIZONTAL) ||\n (hasPanX && direction & DIRECTION_VERTICAL)) {\n return this.preventSrc(srcEvent);\n }\n },\n\n /**\n * call preventDefault to prevent the browser's default behavior (scrolling in most cases)\n * @param {Object} srcEvent\n */\n preventSrc: function(srcEvent) {\n this.manager.session.prevented = true;\n srcEvent.preventDefault();\n }\n};\n\n/**\n * when the touchActions are collected they are not a valid value, so we need to clean things up. *\n * @param {String} actions\n * @returns {*}\n */\nfunction cleanTouchActions(actions) {\n // none\n if (inStr(actions, TOUCH_ACTION_NONE)) {\n return TOUCH_ACTION_NONE;\n }\n\n var hasPanX = inStr(actions, TOUCH_ACTION_PAN_X);\n var hasPanY = inStr(actions, TOUCH_ACTION_PAN_Y);\n\n // if both pan-x and pan-y are set (different recognizers\n // for different directions, e.g. horizontal pan but vertical swipe?)\n // we need none (as otherwise with pan-x pan-y combined none of these\n // recognizers will work, since the browser would handle all panning\n if (hasPanX && hasPanY) {\n return TOUCH_ACTION_NONE;\n }\n\n // pan-x OR pan-y\n if (hasPanX || hasPanY) {\n return hasPanX ? TOUCH_ACTION_PAN_X : TOUCH_ACTION_PAN_Y;\n }\n\n // manipulation\n if (inStr(actions, TOUCH_ACTION_MANIPULATION)) {\n return TOUCH_ACTION_MANIPULATION;\n }\n\n return TOUCH_ACTION_AUTO;\n}\n\nfunction getTouchActionProps() {\n if (!NATIVE_TOUCH_ACTION) {\n return false;\n }\n var touchMap = {};\n var cssSupports = window.CSS && window.CSS.supports;\n ['auto', 'manipulation', 'pan-y', 'pan-x', 'pan-x pan-y', 'none'].forEach(function(val) {\n\n // If css.supports is not supported but there is native touch-action assume it supports\n // all values. This is the case for IE 10 and 11.\n touchMap[val] = cssSupports ? window.CSS.supports('touch-action', val) : true;\n });\n return touchMap;\n}\n\n/**\n * Recognizer flow explained; *\n * All recognizers have the initial state of POSSIBLE when a input session starts.\n * The definition of a input session is from the first input until the last input, with all it's movement in it. *\n * Example session for mouse-input: mousedown -> mousemove -> mouseup\n *\n * On each recognizing cycle (see Manager.recognize) the .recognize() method is executed\n * which determines with state it should be.\n *\n * If the recognizer has the state FAILED, CANCELLED or RECOGNIZED (equals ENDED), it is reset to\n * POSSIBLE to give it another change on the next cycle.\n *\n * Possible\n * |\n * +-----+---------------+\n * | |\n * +-----+-----+ |\n * | | |\n * Failed Cancelled |\n * +-------+------+\n * | |\n * Recognized Began\n * |\n * Changed\n * |\n * Ended/Recognized\n */\nvar STATE_POSSIBLE = 1;\nvar STATE_BEGAN = 2;\nvar STATE_CHANGED = 4;\nvar STATE_ENDED = 8;\nvar STATE_RECOGNIZED = STATE_ENDED;\nvar STATE_CANCELLED = 16;\nvar STATE_FAILED = 32;\n\n/**\n * Recognizer\n * Every recognizer needs to extend from this class.\n * @constructor\n * @param {Object} options\n */\nfunction Recognizer(options) {\n this.options = assign({}, this.defaults, options || {});\n\n this.id = uniqueId();\n\n this.manager = null;\n\n // default is enable true\n this.options.enable = ifUndefined(this.options.enable, true);\n\n this.state = STATE_POSSIBLE;\n\n this.simultaneous = {};\n this.requireFail = [];\n}\n\nRecognizer.prototype = {\n /**\n * @virtual\n * @type {Object}\n */\n defaults: {},\n\n /**\n * set options\n * @param {Object} options\n * @return {Recognizer}\n */\n set: function(options) {\n assign(this.options, options);\n\n // also update the touchAction, in case something changed about the directions/enabled state\n this.manager && this.manager.touchAction.update();\n return this;\n },\n\n /**\n * recognize simultaneous with an other recognizer.\n * @param {Recognizer} otherRecognizer\n * @returns {Recognizer} this\n */\n recognizeWith: function(otherRecognizer) {\n if (invokeArrayArg(otherRecognizer, 'recognizeWith', this)) {\n return this;\n }\n\n var simultaneous = this.simultaneous;\n otherRecognizer = getRecognizerByNameIfManager(otherRecognizer, this);\n if (!simultaneous[otherRecognizer.id]) {\n simultaneous[otherRecognizer.id] = otherRecognizer;\n otherRecognizer.recognizeWith(this);\n }\n return this;\n },\n\n /**\n * drop the simultaneous link. it doesnt remove the link on the other recognizer.\n * @param {Recognizer} otherRecognizer\n * @returns {Recognizer} this\n */\n dropRecognizeWith: function(otherRecognizer) {\n if (invokeArrayArg(otherRecognizer, 'dropRecognizeWith', this)) {\n return this;\n }\n\n otherRecognizer = getRecognizerByNameIfManager(otherRecognizer, this);\n delete this.simultaneous[otherRecognizer.id];\n return this;\n },\n\n /**\n * recognizer can only run when an other is failing\n * @param {Recognizer} otherRecognizer\n * @returns {Recognizer} this\n */\n requireFailure: function(otherRecognizer) {\n if (invokeArrayArg(otherRecognizer, 'requireFailure', this)) {\n return this;\n }\n\n var requireFail = this.requireFail;\n otherRecognizer = getRecognizerByNameIfManager(otherRecognizer, this);\n if (inArray(requireFail, otherRecognizer) === -1) {\n requireFail.push(otherRecognizer);\n otherRecognizer.requireFailure(this);\n }\n return this;\n },\n\n /**\n * drop the requireFailure link. it does not remove the link on the other recognizer.\n * @param {Recognizer} otherRecognizer\n * @returns {Recognizer} this\n */\n dropRequireFailure: function(otherRecognizer) {\n if (invokeArrayArg(otherRecognizer, 'dropRequireFailure', this)) {\n return this;\n }\n\n otherRecognizer = getRecognizerByNameIfManager(otherRecognizer, this);\n var index = inArray(this.requireFail, otherRecognizer);\n if (index > -1) {\n this.requireFail.splice(index, 1);\n }\n return this;\n },\n\n /**\n * has require failures boolean\n * @returns {boolean}\n */\n hasRequireFailures: function() {\n return this.requireFail.length > 0;\n },\n\n /**\n * if the recognizer can recognize simultaneous with an other recognizer\n * @param {Recognizer} otherRecognizer\n * @returns {Boolean}\n */\n canRecognizeWith: function(otherRecognizer) {\n return !!this.simultaneous[otherRecognizer.id];\n },\n\n /**\n * You should use `tryEmit` instead of `emit` directly to check\n * that all the needed recognizers has failed before emitting.\n * @param {Object} input\n */\n emit: function(input) {\n var self = this;\n var state = this.state;\n\n function emit(event) {\n self.manager.emit(event, input);\n }\n\n // 'panstart' and 'panmove'\n if (state < STATE_ENDED) {\n emit(self.options.event + stateStr(state));\n }\n\n emit(self.options.event); // simple 'eventName' events\n\n if (input.additionalEvent) { // additional event(panleft, panright, pinchin, pinchout...)\n emit(input.additionalEvent);\n }\n\n // panend and pancancel\n if (state >= STATE_ENDED) {\n emit(self.options.event + stateStr(state));\n }\n },\n\n /**\n * Check that all the require failure recognizers has failed,\n * if true, it emits a gesture event,\n * otherwise, setup the state to FAILED.\n * @param {Object} input\n */\n tryEmit: function(input) {\n if (this.canEmit()) {\n return this.emit(input);\n }\n // it's failing anyway\n this.state = STATE_FAILED;\n },\n\n /**\n * can we emit?\n * @returns {boolean}\n */\n canEmit: function() {\n var i = 0;\n while (i < this.requireFail.length) {\n if (!(this.requireFail[i].state & (STATE_FAILED | STATE_POSSIBLE))) {\n return false;\n }\n i++;\n }\n return true;\n },\n\n /**\n * update the recognizer\n * @param {Object} inputData\n */\n recognize: function(inputData) {\n // make a new copy of the inputData\n // so we can change the inputData without messing up the other recognizers\n var inputDataClone = assign({}, inputData);\n\n // is is enabled and allow recognizing?\n if (!boolOrFn(this.options.enable, [this, inputDataClone])) {\n this.reset();\n this.state = STATE_FAILED;\n return;\n }\n\n // reset when we've reached the end\n if (this.state & (STATE_RECOGNIZED | STATE_CANCELLED | STATE_FAILED)) {\n this.state = STATE_POSSIBLE;\n }\n\n this.state = this.process(inputDataClone);\n\n // the recognizer has recognized a gesture\n // so trigger an event\n if (this.state & (STATE_BEGAN | STATE_CHANGED | STATE_ENDED | STATE_CANCELLED)) {\n this.tryEmit(inputDataClone);\n }\n },\n\n /**\n * return the state of the recognizer\n * the actual recognizing happens in this method\n * @virtual\n * @param {Object} inputData\n * @returns {Const} STATE\n */\n process: function(inputData) { }, // jshint ignore:line\n\n /**\n * return the preferred touch-action\n * @virtual\n * @returns {Array}\n */\n getTouchAction: function() { },\n\n /**\n * called when the gesture isn't allowed to recognize\n * like when another is being recognized or it is disabled\n * @virtual\n */\n reset: function() { }\n};\n\n/**\n * get a usable string, used as event postfix\n * @param {Const} state\n * @returns {String} state\n */\nfunction stateStr(state) {\n if (state & STATE_CANCELLED) {\n return 'cancel';\n } else if (state & STATE_ENDED) {\n return 'end';\n } else if (state & STATE_CHANGED) {\n return 'move';\n } else if (state & STATE_BEGAN) {\n return 'start';\n }\n return '';\n}\n\n/**\n * direction cons to string\n * @param {Const} direction\n * @returns {String}\n */\nfunction directionStr(direction) {\n if (direction == DIRECTION_DOWN) {\n return 'down';\n } else if (direction == DIRECTION_UP) {\n return 'up';\n } else if (direction == DIRECTION_LEFT) {\n return 'left';\n } else if (direction == DIRECTION_RIGHT) {\n return 'right';\n }\n return '';\n}\n\n/**\n * get a recognizer by name if it is bound to a manager\n * @param {Recognizer|String} otherRecognizer\n * @param {Recognizer} recognizer\n * @returns {Recognizer}\n */\nfunction getRecognizerByNameIfManager(otherRecognizer, recognizer) {\n var manager = recognizer.manager;\n if (manager) {\n return manager.get(otherRecognizer);\n }\n return otherRecognizer;\n}\n\n/**\n * This recognizer is just used as a base for the simple attribute recognizers.\n * @constructor\n * @extends Recognizer\n */\nfunction AttrRecognizer() {\n Recognizer.apply(this, arguments);\n}\n\ninherit(AttrRecognizer, Recognizer, {\n /**\n * @namespace\n * @memberof AttrRecognizer\n */\n defaults: {\n /**\n * @type {Number}\n * @default 1\n */\n pointers: 1\n },\n\n /**\n * Used to check if it the recognizer receives valid input, like input.distance > 10.\n * @memberof AttrRecognizer\n * @param {Object} input\n * @returns {Boolean} recognized\n */\n attrTest: function(input) {\n var optionPointers = this.options.pointers;\n return optionPointers === 0 || input.pointers.length === optionPointers;\n },\n\n /**\n * Process the input and return the state for the recognizer\n * @memberof AttrRecognizer\n * @param {Object} input\n * @returns {*} State\n */\n process: function(input) {\n var state = this.state;\n var eventType = input.eventType;\n\n var isRecognized = state & (STATE_BEGAN | STATE_CHANGED);\n var isValid = this.attrTest(input);\n\n // on cancel input and we've recognized before, return STATE_CANCELLED\n if (isRecognized && (eventType & INPUT_CANCEL || !isValid)) {\n return state | STATE_CANCELLED;\n } else if (isRecognized || isValid) {\n if (eventType & INPUT_END) {\n return state | STATE_ENDED;\n } else if (!(state & STATE_BEGAN)) {\n return STATE_BEGAN;\n }\n return state | STATE_CHANGED;\n }\n return STATE_FAILED;\n }\n});\n\n/**\n * Pan\n * Recognized when the pointer is down and moved in the allowed direction.\n * @constructor\n * @extends AttrRecognizer\n */\nfunction PanRecognizer() {\n AttrRecognizer.apply(this, arguments);\n\n this.pX = null;\n this.pY = null;\n}\n\ninherit(PanRecognizer, AttrRecognizer, {\n /**\n * @namespace\n * @memberof PanRecognizer\n */\n defaults: {\n event: 'pan',\n threshold: 10,\n pointers: 1,\n direction: DIRECTION_ALL\n },\n\n getTouchAction: function() {\n var direction = this.options.direction;\n var actions = [];\n if (direction & DIRECTION_HORIZONTAL) {\n actions.push(TOUCH_ACTION_PAN_Y);\n }\n if (direction & DIRECTION_VERTICAL) {\n actions.push(TOUCH_ACTION_PAN_X);\n }\n return actions;\n },\n\n directionTest: function(input) {\n var options = this.options;\n var hasMoved = true;\n var distance = input.distance;\n var direction = input.direction;\n var x = input.deltaX;\n var y = input.deltaY;\n\n // lock to axis?\n if (!(direction & options.direction)) {\n if (options.direction & DIRECTION_HORIZONTAL) {\n direction = (x === 0) ? DIRECTION_NONE : (x < 0) ? DIRECTION_LEFT : DIRECTION_RIGHT;\n hasMoved = x != this.pX;\n distance = Math.abs(input.deltaX);\n } else {\n direction = (y === 0) ? DIRECTION_NONE : (y < 0) ? DIRECTION_UP : DIRECTION_DOWN;\n hasMoved = y != this.pY;\n distance = Math.abs(input.deltaY);\n }\n }\n input.direction = direction;\n return hasMoved && distance > options.threshold && direction & options.direction;\n },\n\n attrTest: function(input) {\n return AttrRecognizer.prototype.attrTest.call(this, input) &&\n (this.state & STATE_BEGAN || (!(this.state & STATE_BEGAN) && this.directionTest(input)));\n },\n\n emit: function(input) {\n\n this.pX = input.deltaX;\n this.pY = input.deltaY;\n\n var direction = directionStr(input.direction);\n\n if (direction) {\n input.additionalEvent = this.options.event + direction;\n }\n this._super.emit.call(this, input);\n }\n});\n\n/**\n * Pinch\n * Recognized when two or more pointers are moving toward (zoom-in) or away from each other (zoom-out).\n * @constructor\n * @extends AttrRecognizer\n */\nfunction PinchRecognizer() {\n AttrRecognizer.apply(this, arguments);\n}\n\ninherit(PinchRecognizer, AttrRecognizer, {\n /**\n * @namespace\n * @memberof PinchRecognizer\n */\n defaults: {\n event: 'pinch',\n threshold: 0,\n pointers: 2\n },\n\n getTouchAction: function() {\n return [TOUCH_ACTION_NONE];\n },\n\n attrTest: function(input) {\n return this._super.attrTest.call(this, input) &&\n (Math.abs(input.scale - 1) > this.options.threshold || this.state & STATE_BEGAN);\n },\n\n emit: function(input) {\n if (input.scale !== 1) {\n var inOut = input.scale < 1 ? 'in' : 'out';\n input.additionalEvent = this.options.event + inOut;\n }\n this._super.emit.call(this, input);\n }\n});\n\n/**\n * Press\n * Recognized when the pointer is down for x ms without any movement.\n * @constructor\n * @extends Recognizer\n */\nfunction PressRecognizer() {\n Recognizer.apply(this, arguments);\n\n this._timer = null;\n this._input = null;\n}\n\ninherit(PressRecognizer, Recognizer, {\n /**\n * @namespace\n * @memberof PressRecognizer\n */\n defaults: {\n event: 'press',\n pointers: 1,\n time: 251, // minimal time of the pointer to be pressed\n threshold: 9 // a minimal movement is ok, but keep it low\n },\n\n getTouchAction: function() {\n return [TOUCH_ACTION_AUTO];\n },\n\n process: function(input) {\n var options = this.options;\n var validPointers = input.pointers.length === options.pointers;\n var validMovement = input.distance < options.threshold;\n var validTime = input.deltaTime > options.time;\n\n this._input = input;\n\n // we only allow little movement\n // and we've reached an end event, so a tap is possible\n if (!validMovement || !validPointers || (input.eventType & (INPUT_END | INPUT_CANCEL) && !validTime)) {\n this.reset();\n } else if (input.eventType & INPUT_START) {\n this.reset();\n this._timer = setTimeoutContext(function() {\n this.state = STATE_RECOGNIZED;\n this.tryEmit();\n }, options.time, this);\n } else if (input.eventType & INPUT_END) {\n return STATE_RECOGNIZED;\n }\n return STATE_FAILED;\n },\n\n reset: function() {\n clearTimeout(this._timer);\n },\n\n emit: function(input) {\n if (this.state !== STATE_RECOGNIZED) {\n return;\n }\n\n if (input && (input.eventType & INPUT_END)) {\n this.manager.emit(this.options.event + 'up', input);\n } else {\n this._input.timeStamp = now();\n this.manager.emit(this.options.event, this._input);\n }\n }\n});\n\n/**\n * Rotate\n * Recognized when two or more pointer are moving in a circular motion.\n * @constructor\n * @extends AttrRecognizer\n */\nfunction RotateRecognizer() {\n AttrRecognizer.apply(this, arguments);\n}\n\ninherit(RotateRecognizer, AttrRecognizer, {\n /**\n * @namespace\n * @memberof RotateRecognizer\n */\n defaults: {\n event: 'rotate',\n threshold: 0,\n pointers: 2\n },\n\n getTouchAction: function() {\n return [TOUCH_ACTION_NONE];\n },\n\n attrTest: function(input) {\n return this._super.attrTest.call(this, input) &&\n (Math.abs(input.rotation) > this.options.threshold || this.state & STATE_BEGAN);\n }\n});\n\n/**\n * Swipe\n * Recognized when the pointer is moving fast (velocity), with enough distance in the allowed direction.\n * @constructor\n * @extends AttrRecognizer\n */\nfunction SwipeRecognizer() {\n AttrRecognizer.apply(this, arguments);\n}\n\ninherit(SwipeRecognizer, AttrRecognizer, {\n /**\n * @namespace\n * @memberof SwipeRecognizer\n */\n defaults: {\n event: 'swipe',\n threshold: 10,\n velocity: 0.3,\n direction: DIRECTION_HORIZONTAL | DIRECTION_VERTICAL,\n pointers: 1\n },\n\n getTouchAction: function() {\n return PanRecognizer.prototype.getTouchAction.call(this);\n },\n\n attrTest: function(input) {\n var direction = this.options.direction;\n var velocity;\n\n if (direction & (DIRECTION_HORIZONTAL | DIRECTION_VERTICAL)) {\n velocity = input.overallVelocity;\n } else if (direction & DIRECTION_HORIZONTAL) {\n velocity = input.overallVelocityX;\n } else if (direction & DIRECTION_VERTICAL) {\n velocity = input.overallVelocityY;\n }\n\n return this._super.attrTest.call(this, input) &&\n direction & input.offsetDirection &&\n input.distance > this.options.threshold &&\n input.maxPointers == this.options.pointers &&\n abs(velocity) > this.options.velocity && input.eventType & INPUT_END;\n },\n\n emit: function(input) {\n var direction = directionStr(input.offsetDirection);\n if (direction) {\n this.manager.emit(this.options.event + direction, input);\n }\n\n this.manager.emit(this.options.event, input);\n }\n});\n\n/**\n * A tap is ecognized when the pointer is doing a small tap/click. Multiple taps are recognized if they occur\n * between the given interval and position. The delay option can be used to recognize multi-taps without firing\n * a single tap.\n *\n * The eventData from the emitted event contains the property `tapCount`, which contains the amount of\n * multi-taps being recognized.\n * @constructor\n * @extends Recognizer\n */\nfunction TapRecognizer() {\n Recognizer.apply(this, arguments);\n\n // previous time and center,\n // used for tap counting\n this.pTime = false;\n this.pCenter = false;\n\n this._timer = null;\n this._input = null;\n this.count = 0;\n}\n\ninherit(TapRecognizer, Recognizer, {\n /**\n * @namespace\n * @memberof PinchRecognizer\n */\n defaults: {\n event: 'tap',\n pointers: 1,\n taps: 1,\n interval: 300, // max time between the multi-tap taps\n time: 250, // max time of the pointer to be down (like finger on the screen)\n threshold: 9, // a minimal movement is ok, but keep it low\n posThreshold: 10 // a multi-tap can be a bit off the initial position\n },\n\n getTouchAction: function() {\n return [TOUCH_ACTION_MANIPULATION];\n },\n\n process: function(input) {\n var options = this.options;\n\n var validPointers = input.pointers.length === options.pointers;\n var validMovement = input.distance < options.threshold;\n var validTouchTime = input.deltaTime < options.time;\n\n this.reset();\n\n if ((input.eventType & INPUT_START) && (this.count === 0)) {\n return this.failTimeout();\n }\n\n // we only allow little movement\n // and we've reached an end event, so a tap is possible\n if (validMovement && validTouchTime && validPointers) {\n if (input.eventType != INPUT_END) {\n return this.failTimeout();\n }\n\n var validInterval = this.pTime ? (input.timeStamp - this.pTime < options.interval) : true;\n var validMultiTap = !this.pCenter || getDistance(this.pCenter, input.center) < options.posThreshold;\n\n this.pTime = input.timeStamp;\n this.pCenter = input.center;\n\n if (!validMultiTap || !validInterval) {\n this.count = 1;\n } else {\n this.count += 1;\n }\n\n this._input = input;\n\n // if tap count matches we have recognized it,\n // else it has began recognizing...\n var tapCount = this.count % options.taps;\n if (tapCount === 0) {\n // no failing requirements, immediately trigger the tap event\n // or wait as long as the multitap interval to trigger\n if (!this.hasRequireFailures()) {\n return STATE_RECOGNIZED;\n } else {\n this._timer = setTimeoutContext(function() {\n this.state = STATE_RECOGNIZED;\n this.tryEmit();\n }, options.interval, this);\n return STATE_BEGAN;\n }\n }\n }\n return STATE_FAILED;\n },\n\n failTimeout: function() {\n this._timer = setTimeoutContext(function() {\n this.state = STATE_FAILED;\n }, this.options.interval, this);\n return STATE_FAILED;\n },\n\n reset: function() {\n clearTimeout(this._timer);\n },\n\n emit: function() {\n if (this.state == STATE_RECOGNIZED) {\n this._input.tapCount = this.count;\n this.manager.emit(this.options.event, this._input);\n }\n }\n});\n\n/**\n * Simple way to create a manager with a default set of recognizers.\n * @param {HTMLElement} element\n * @param {Object} [options]\n * @constructor\n */\nfunction Hammer(element, options) {\n options = options || {};\n options.recognizers = ifUndefined(options.recognizers, Hammer.defaults.preset);\n return new Manager(element, options);\n}\n\n/**\n * @const {string}\n */\nHammer.VERSION = '2.0.7';\n\n/**\n * default settings\n * @namespace\n */\nHammer.defaults = {\n /**\n * set if DOM events are being triggered.\n * But this is slower and unused by simple implementations, so disabled by default.\n * @type {Boolean}\n * @default false\n */\n domEvents: false,\n\n /**\n * The value for the touchAction property/fallback.\n * When set to `compute` it will magically set the correct value based on the added recognizers.\n * @type {String}\n * @default compute\n */\n touchAction: TOUCH_ACTION_COMPUTE,\n\n /**\n * @type {Boolean}\n * @default true\n */\n enable: true,\n\n /**\n * EXPERIMENTAL FEATURE -- can be removed/changed\n * Change the parent input target element.\n * If Null, then it is being set the to main element.\n * @type {Null|EventTarget}\n * @default null\n */\n inputTarget: null,\n\n /**\n * force an input class\n * @type {Null|Function}\n * @default null\n */\n inputClass: null,\n\n /**\n * Default recognizer setup when calling `Hammer()`\n * When creating a new Manager these will be skipped.\n * @type {Array}\n */\n preset: [\n // RecognizerClass, options, [recognizeWith, ...], [requireFailure, ...]\n [RotateRecognizer, {enable: false}],\n [PinchRecognizer, {enable: false}, ['rotate']],\n [SwipeRecognizer, {direction: DIRECTION_HORIZONTAL}],\n [PanRecognizer, {direction: DIRECTION_HORIZONTAL}, ['swipe']],\n [TapRecognizer],\n [TapRecognizer, {event: 'doubletap', taps: 2}, ['tap']],\n [PressRecognizer]\n ],\n\n /**\n * Some CSS properties can be used to improve the working of Hammer.\n * Add them to this method and they will be set when creating a new Manager.\n * @namespace\n */\n cssProps: {\n /**\n * Disables text selection to improve the dragging gesture. Mainly for desktop browsers.\n * @type {String}\n * @default 'none'\n */\n userSelect: 'none',\n\n /**\n * Disable the Windows Phone grippers when pressing an element.\n * @type {String}\n * @default 'none'\n */\n touchSelect: 'none',\n\n /**\n * Disables the default callout shown when you touch and hold a touch target.\n * On iOS, when you touch and hold a touch target such as a link, Safari displays\n * a callout containing information about the link. This property allows you to disable that callout.\n * @type {String}\n * @default 'none'\n */\n touchCallout: 'none',\n\n /**\n * Specifies whether zooming is enabled. Used by IE10>\n * @type {String}\n * @default 'none'\n */\n contentZooming: 'none',\n\n /**\n * Specifies that an entire element should be draggable instead of its contents. Mainly for desktop browsers.\n * @type {String}\n * @default 'none'\n */\n userDrag: 'none',\n\n /**\n * Overrides the highlight color shown when the user taps a link or a JavaScript\n * clickable element in iOS. This property obeys the alpha value, if specified.\n * @type {String}\n * @default 'rgba(0,0,0,0)'\n */\n tapHighlightColor: 'rgba(0,0,0,0)'\n }\n};\n\nvar STOP = 1;\nvar FORCED_STOP = 2;\n\n/**\n * Manager\n * @param {HTMLElement} element\n * @param {Object} [options]\n * @constructor\n */\nfunction Manager(element, options) {\n this.options = assign({}, Hammer.defaults, options || {});\n\n this.options.inputTarget = this.options.inputTarget || element;\n\n this.handlers = {};\n this.session = {};\n this.recognizers = [];\n this.oldCssProps = {};\n\n this.element = element;\n this.input = createInputInstance(this);\n this.touchAction = new TouchAction(this, this.options.touchAction);\n\n toggleCssProps(this, true);\n\n each(this.options.recognizers, function(item) {\n var recognizer = this.add(new (item[0])(item[1]));\n item[2] && recognizer.recognizeWith(item[2]);\n item[3] && recognizer.requireFailure(item[3]);\n }, this);\n}\n\nManager.prototype = {\n /**\n * set options\n * @param {Object} options\n * @returns {Manager}\n */\n set: function(options) {\n assign(this.options, options);\n\n // Options that need a little more setup\n if (options.touchAction) {\n this.touchAction.update();\n }\n if (options.inputTarget) {\n // Clean up existing event listeners and reinitialize\n this.input.destroy();\n this.input.target = options.inputTarget;\n this.input.init();\n }\n return this;\n },\n\n /**\n * stop recognizing for this session.\n * This session will be discarded, when a new [input]start event is fired.\n * When forced, the recognizer cycle is stopped immediately.\n * @param {Boolean} [force]\n */\n stop: function(force) {\n this.session.stopped = force ? FORCED_STOP : STOP;\n },\n\n /**\n * run the recognizers!\n * called by the inputHandler function on every movement of the pointers (touches)\n * it walks through all the recognizers and tries to detect the gesture that is being made\n * @param {Object} inputData\n */\n recognize: function(inputData) {\n var session = this.session;\n if (session.stopped) {\n return;\n }\n\n // run the touch-action polyfill\n this.touchAction.preventDefaults(inputData);\n\n var recognizer;\n var recognizers = this.recognizers;\n\n // this holds the recognizer that is being recognized.\n // so the recognizer's state needs to be BEGAN, CHANGED, ENDED or RECOGNIZED\n // if no recognizer is detecting a thing, it is set to `null`\n var curRecognizer = session.curRecognizer;\n\n // reset when the last recognizer is recognized\n // or when we're in a new session\n if (!curRecognizer || (curRecognizer && curRecognizer.state & STATE_RECOGNIZED)) {\n curRecognizer = session.curRecognizer = null;\n }\n\n var i = 0;\n while (i < recognizers.length) {\n recognizer = recognizers[i];\n\n // find out if we are allowed try to recognize the input for this one.\n // 1. allow if the session is NOT forced stopped (see the .stop() method)\n // 2. allow if we still haven't recognized a gesture in this session, or the this recognizer is the one\n // that is being recognized.\n // 3. allow if the recognizer is allowed to run simultaneous with the current recognized recognizer.\n // this can be setup with the `recognizeWith()` method on the recognizer.\n if (session.stopped !== FORCED_STOP && ( // 1\n !curRecognizer || recognizer == curRecognizer || // 2\n recognizer.canRecognizeWith(curRecognizer))) { // 3\n recognizer.recognize(inputData);\n } else {\n recognizer.reset();\n }\n\n // if the recognizer has been recognizing the input as a valid gesture, we want to store this one as the\n // current active recognizer. but only if we don't already have an active recognizer\n if (!curRecognizer && recognizer.state & (STATE_BEGAN | STATE_CHANGED | STATE_ENDED)) {\n curRecognizer = session.curRecognizer = recognizer;\n }\n i++;\n }\n },\n\n /**\n * get a recognizer by its event name.\n * @param {Recognizer|String} recognizer\n * @returns {Recognizer|Null}\n */\n get: function(recognizer) {\n if (recognizer instanceof Recognizer) {\n return recognizer;\n }\n\n var recognizers = this.recognizers;\n for (var i = 0; i < recognizers.length; i++) {\n if (recognizers[i].options.event == recognizer) {\n return recognizers[i];\n }\n }\n return null;\n },\n\n /**\n * add a recognizer to the manager\n * existing recognizers with the same event name will be removed\n * @param {Recognizer} recognizer\n * @returns {Recognizer|Manager}\n */\n add: function(recognizer) {\n if (invokeArrayArg(recognizer, 'add', this)) {\n return this;\n }\n\n // remove existing\n var existing = this.get(recognizer.options.event);\n if (existing) {\n this.remove(existing);\n }\n\n this.recognizers.push(recognizer);\n recognizer.manager = this;\n\n this.touchAction.update();\n return recognizer;\n },\n\n /**\n * remove a recognizer by name or instance\n * @param {Recognizer|String} recognizer\n * @returns {Manager}\n */\n remove: function(recognizer) {\n if (invokeArrayArg(recognizer, 'remove', this)) {\n return this;\n }\n\n recognizer = this.get(recognizer);\n\n // let's make sure this recognizer exists\n if (recognizer) {\n var recognizers = this.recognizers;\n var index = inArray(recognizers, recognizer);\n\n if (index !== -1) {\n recognizers.splice(index, 1);\n this.touchAction.update();\n }\n }\n\n return this;\n },\n\n /**\n * bind event\n * @param {String} events\n * @param {Function} handler\n * @returns {EventEmitter} this\n */\n on: function(events, handler) {\n if (events === undefined) {\n return;\n }\n if (handler === undefined) {\n return;\n }\n\n var handlers = this.handlers;\n each(splitStr(events), function(event) {\n handlers[event] = handlers[event] || [];\n handlers[event].push(handler);\n });\n return this;\n },\n\n /**\n * unbind event, leave emit blank to remove all handlers\n * @param {String} events\n * @param {Function} [handler]\n * @returns {EventEmitter} this\n */\n off: function(events, handler) {\n if (events === undefined) {\n return;\n }\n\n var handlers = this.handlers;\n each(splitStr(events), function(event) {\n if (!handler) {\n delete handlers[event];\n } else {\n handlers[event] && handlers[event].splice(inArray(handlers[event], handler), 1);\n }\n });\n return this;\n },\n\n /**\n * emit event to the listeners\n * @param {String} event\n * @param {Object} data\n */\n emit: function(event, data) {\n // we also want to trigger dom events\n if (this.options.domEvents) {\n triggerDomEvent(event, data);\n }\n\n // no handlers, so skip it all\n var handlers = this.handlers[event] && this.handlers[event].slice();\n if (!handlers || !handlers.length) {\n return;\n }\n\n data.type = event;\n data.preventDefault = function() {\n data.srcEvent.preventDefault();\n };\n\n var i = 0;\n while (i < handlers.length) {\n handlers[i](data);\n i++;\n }\n },\n\n /**\n * destroy the manager and unbinds all events\n * it doesn't unbind dom events, that is the user own responsibility\n */\n destroy: function() {\n this.element && toggleCssProps(this, false);\n\n this.handlers = {};\n this.session = {};\n this.input.destroy();\n this.element = null;\n }\n};\n\n/**\n * add/remove the css properties as defined in manager.options.cssProps\n * @param {Manager} manager\n * @param {Boolean} add\n */\nfunction toggleCssProps(manager, add) {\n var element = manager.element;\n if (!element.style) {\n return;\n }\n var prop;\n each(manager.options.cssProps, function(value, name) {\n prop = prefixed(element.style, name);\n if (add) {\n manager.oldCssProps[prop] = element.style[prop];\n element.style[prop] = value;\n } else {\n element.style[prop] = manager.oldCssProps[prop] || '';\n }\n });\n if (!add) {\n manager.oldCssProps = {};\n }\n}\n\n/**\n * trigger dom event\n * @param {String} event\n * @param {Object} data\n */\nfunction triggerDomEvent(event, data) {\n var gestureEvent = document.createEvent('Event');\n gestureEvent.initEvent(event, true, true);\n gestureEvent.gesture = data;\n data.target.dispatchEvent(gestureEvent);\n}\n\nassign(Hammer, {\n INPUT_START: INPUT_START,\n INPUT_MOVE: INPUT_MOVE,\n INPUT_END: INPUT_END,\n INPUT_CANCEL: INPUT_CANCEL,\n\n STATE_POSSIBLE: STATE_POSSIBLE,\n STATE_BEGAN: STATE_BEGAN,\n STATE_CHANGED: STATE_CHANGED,\n STATE_ENDED: STATE_ENDED,\n STATE_RECOGNIZED: STATE_RECOGNIZED,\n STATE_CANCELLED: STATE_CANCELLED,\n STATE_FAILED: STATE_FAILED,\n\n DIRECTION_NONE: DIRECTION_NONE,\n DIRECTION_LEFT: DIRECTION_LEFT,\n DIRECTION_RIGHT: DIRECTION_RIGHT,\n DIRECTION_UP: DIRECTION_UP,\n DIRECTION_DOWN: DIRECTION_DOWN,\n DIRECTION_HORIZONTAL: DIRECTION_HORIZONTAL,\n DIRECTION_VERTICAL: DIRECTION_VERTICAL,\n DIRECTION_ALL: DIRECTION_ALL,\n\n Manager: Manager,\n Input: Input,\n TouchAction: TouchAction,\n\n TouchInput: TouchInput,\n MouseInput: MouseInput,\n PointerEventInput: PointerEventInput,\n TouchMouseInput: TouchMouseInput,\n SingleTouchInput: SingleTouchInput,\n\n Recognizer: Recognizer,\n AttrRecognizer: AttrRecognizer,\n Tap: TapRecognizer,\n Pan: PanRecognizer,\n Swipe: SwipeRecognizer,\n Pinch: PinchRecognizer,\n Rotate: RotateRecognizer,\n Press: PressRecognizer,\n\n on: addEventListeners,\n off: removeEventListeners,\n each: each,\n merge: merge,\n extend: extend,\n assign: assign,\n inherit: inherit,\n bindFn: bindFn,\n prefixed: prefixed\n});\n\n// this prevents errors when Hammer is loaded in the presence of an AMD\n// style loader but by script tag, not by the loader.\nvar freeGlobal = (typeof window !== 'undefined' ? window : (typeof self !== 'undefined' ? self : {})); // jshint ignore:line\nfreeGlobal.Hammer = Hammer;\n\nif (typeof define === 'function' && define.amd) {\n define(function() {\n return Hammer;\n });\n} else if (typeof module != 'undefined' && module.exports) {\n module.exports = Hammer;\n} else {\n window[exportName] = Hammer;\n}\n\n})(window, document, 'Hammer');\n","'use strict';\n\nvar origSymbol = typeof Symbol !== 'undefined' && Symbol;\nvar hasSymbolSham = require('./shams');\n\nmodule.exports = function hasNativeSymbols() {\n\tif (typeof origSymbol !== 'function') { return false; }\n\tif (typeof Symbol !== 'function') { return false; }\n\tif (typeof origSymbol('foo') !== 'symbol') { return false; }\n\tif (typeof Symbol('bar') !== 'symbol') { return false; }\n\n\treturn hasSymbolSham();\n};\n","'use strict';\n\n/* eslint complexity: [2, 18], max-statements: [2, 33] */\nmodule.exports = function hasSymbols() {\n\tif (typeof Symbol !== 'function' || typeof Object.getOwnPropertySymbols !== 'function') { return false; }\n\tif (typeof Symbol.iterator === 'symbol') { return true; }\n\n\tvar obj = {};\n\tvar sym = Symbol('test');\n\tvar symObj = Object(sym);\n\tif (typeof sym === 'string') { return false; }\n\n\tif (Object.prototype.toString.call(sym) !== '[object Symbol]') { return false; }\n\tif (Object.prototype.toString.call(symObj) !== '[object Symbol]') { return false; }\n\n\t// temp disabled per https://github.com/ljharb/object.assign/issues/17\n\t// if (sym instanceof Symbol) { return false; }\n\t// temp disabled per https://github.com/WebReflection/get-own-property-symbols/issues/4\n\t// if (!(symObj instanceof Symbol)) { return false; }\n\n\t// if (typeof Symbol.prototype.toString !== 'function') { return false; }\n\t// if (String(sym) !== Symbol.prototype.toString.call(sym)) { return false; }\n\n\tvar symVal = 42;\n\tobj[sym] = symVal;\n\tfor (sym in obj) { return false; } // eslint-disable-line no-restricted-syntax, no-unreachable-loop\n\tif (typeof Object.keys === 'function' && Object.keys(obj).length !== 0) { return false; }\n\n\tif (typeof Object.getOwnPropertyNames === 'function' && Object.getOwnPropertyNames(obj).length !== 0) { return false; }\n\n\tvar syms = Object.getOwnPropertySymbols(obj);\n\tif (syms.length !== 1 || syms[0] !== sym) { return false; }\n\n\tif (!Object.prototype.propertyIsEnumerable.call(obj, sym)) { return false; }\n\n\tif (typeof Object.getOwnPropertyDescriptor === 'function') {\n\t\tvar descriptor = Object.getOwnPropertyDescriptor(obj, sym);\n\t\tif (descriptor.value !== symVal || descriptor.enumerable !== true) { return false; }\n\t}\n\n\treturn true;\n};\n","'use strict';\n\nvar hasSymbols = require('has-symbols/shams');\n\nmodule.exports = function hasToStringTagShams() {\n\treturn hasSymbols() && !!Symbol.toStringTag;\n};\n","'use strict';\n\nvar bind = require('function-bind');\n\nmodule.exports = bind.call(Function.call, Object.prototype.hasOwnProperty);\n","'use strict';\n\nvar hasToStringTag = require('has-tostringtag/shams')();\nvar callBound = require('call-bind/callBound');\n\nvar $toString = callBound('Object.prototype.toString');\n\nvar isStandardArguments = function isArguments(value) {\n\tif (hasToStringTag && value && typeof value === 'object' && Symbol.toStringTag in value) {\n\t\treturn false;\n\t}\n\treturn $toString(value) === '[object Arguments]';\n};\n\nvar isLegacyArguments = function isArguments(value) {\n\tif (isStandardArguments(value)) {\n\t\treturn true;\n\t}\n\treturn value !== null &&\n\t\ttypeof value === 'object' &&\n\t\ttypeof value.length === 'number' &&\n\t\tvalue.length >= 0 &&\n\t\t$toString(value) !== '[object Array]' &&\n\t\t$toString(value.callee) === '[object Function]';\n};\n\nvar supportsStandardArguments = (function () {\n\treturn isStandardArguments(arguments);\n}());\n\nisStandardArguments.isLegacyArguments = isLegacyArguments; // for tests\n\nmodule.exports = supportsStandardArguments ? isStandardArguments : isLegacyArguments;\n","'use strict';\n\nvar toStr = Object.prototype.toString;\nvar fnToStr = Function.prototype.toString;\nvar isFnRegex = /^\\s*(?:function)?\\*/;\nvar hasToStringTag = require('has-tostringtag/shams')();\nvar getProto = Object.getPrototypeOf;\nvar getGeneratorFunc = function () { // eslint-disable-line consistent-return\n\tif (!hasToStringTag) {\n\t\treturn false;\n\t}\n\ttry {\n\t\treturn Function('return function*() {}')();\n\t} catch (e) {\n\t}\n};\nvar GeneratorFunction;\n\nmodule.exports = function isGeneratorFunction(fn) {\n\tif (typeof fn !== 'function') {\n\t\treturn false;\n\t}\n\tif (isFnRegex.test(fnToStr.call(fn))) {\n\t\treturn true;\n\t}\n\tif (!hasToStringTag) {\n\t\tvar str = toStr.call(fn);\n\t\treturn str === '[object GeneratorFunction]';\n\t}\n\tif (!getProto) {\n\t\treturn false;\n\t}\n\tif (typeof GeneratorFunction === 'undefined') {\n\t\tvar generatorFunc = getGeneratorFunc();\n\t\tGeneratorFunction = generatorFunc ? getProto(generatorFunc) : false;\n\t}\n\treturn getProto(fn) === GeneratorFunction;\n};\n","'use strict';\n\n/* http://www.ecma-international.org/ecma-262/6.0/#sec-number.isnan */\n\nmodule.exports = function isNaN(value) {\n\treturn value !== value;\n};\n","'use strict';\n\nvar callBind = require('call-bind');\nvar define = require('define-properties');\n\nvar implementation = require('./implementation');\nvar getPolyfill = require('./polyfill');\nvar shim = require('./shim');\n\nvar polyfill = callBind(getPolyfill(), Number);\n\n/* http://www.ecma-international.org/ecma-262/6.0/#sec-number.isnan */\n\ndefine(polyfill, {\n\tgetPolyfill: getPolyfill,\n\timplementation: implementation,\n\tshim: shim\n});\n\nmodule.exports = polyfill;\n","'use strict';\n\nvar implementation = require('./implementation');\n\nmodule.exports = function getPolyfill() {\n\tif (Number.isNaN && Number.isNaN(NaN) && !Number.isNaN('a')) {\n\t\treturn Number.isNaN;\n\t}\n\treturn implementation;\n};\n","'use strict';\n\nvar define = require('define-properties');\nvar getPolyfill = require('./polyfill');\n\n/* http://www.ecma-international.org/ecma-262/6.0/#sec-number.isnan */\n\nmodule.exports = function shimNumberIsNaN() {\n\tvar polyfill = getPolyfill();\n\tdefine(Number, { isNaN: polyfill }, {\n\t\tisNaN: function testIsNaN() {\n\t\t\treturn Number.isNaN !== polyfill;\n\t\t}\n\t});\n\treturn polyfill;\n};\n","'use strict';\n\nvar forEach = require('foreach');\nvar availableTypedArrays = require('available-typed-arrays');\nvar callBound = require('call-bind/callBound');\n\nvar $toString = callBound('Object.prototype.toString');\nvar hasToStringTag = require('has-tostringtag/shams')();\n\nvar g = typeof globalThis === 'undefined' ? global : globalThis;\nvar typedArrays = availableTypedArrays();\n\nvar $indexOf = callBound('Array.prototype.indexOf', true) || function indexOf(array, value) {\n\tfor (var i = 0; i < array.length; i += 1) {\n\t\tif (array[i] === value) {\n\t\t\treturn i;\n\t\t}\n\t}\n\treturn -1;\n};\nvar $slice = callBound('String.prototype.slice');\nvar toStrTags = {};\nvar gOPD = require('es-abstract/helpers/getOwnPropertyDescriptor');\nvar getPrototypeOf = Object.getPrototypeOf; // require('getprototypeof');\nif (hasToStringTag && gOPD && getPrototypeOf) {\n\tforEach(typedArrays, function (typedArray) {\n\t\tvar arr = new g[typedArray]();\n\t\tif (Symbol.toStringTag in arr) {\n\t\t\tvar proto = getPrototypeOf(arr);\n\t\t\tvar descriptor = gOPD(proto, Symbol.toStringTag);\n\t\t\tif (!descriptor) {\n\t\t\t\tvar superProto = getPrototypeOf(proto);\n\t\t\t\tdescriptor = gOPD(superProto, Symbol.toStringTag);\n\t\t\t}\n\t\t\ttoStrTags[typedArray] = descriptor.get;\n\t\t}\n\t});\n}\n\nvar tryTypedArrays = function tryAllTypedArrays(value) {\n\tvar anyTrue = false;\n\tforEach(toStrTags, function (getter, typedArray) {\n\t\tif (!anyTrue) {\n\t\t\ttry {\n\t\t\t\tanyTrue = getter.call(value) === typedArray;\n\t\t\t} catch (e) { /**/ }\n\t\t}\n\t});\n\treturn anyTrue;\n};\n\nmodule.exports = function isTypedArray(value) {\n\tif (!value || typeof value !== 'object') { return false; }\n\tif (!hasToStringTag || !(Symbol.toStringTag in value)) {\n\t\tvar tag = $slice($toString(value), 8, -1);\n\t\treturn $indexOf(typedArrays, tag) > -1;\n\t}\n\tif (!gOPD) { return false; }\n\treturn tryTypedArrays(value);\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","var getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar DataView = getNative(root, 'DataView');\n\nmodule.exports = DataView;\n","var hashClear = require('./_hashClear'),\n hashDelete = require('./_hashDelete'),\n hashGet = require('./_hashGet'),\n hashHas = require('./_hashHas'),\n hashSet = require('./_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\nmodule.exports = Hash;\n","var listCacheClear = require('./_listCacheClear'),\n listCacheDelete = require('./_listCacheDelete'),\n listCacheGet = require('./_listCacheGet'),\n listCacheHas = require('./_listCacheHas'),\n listCacheSet = require('./_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\nmodule.exports = ListCache;\n","var getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar Map = getNative(root, 'Map');\n\nmodule.exports = Map;\n","var mapCacheClear = require('./_mapCacheClear'),\n mapCacheDelete = require('./_mapCacheDelete'),\n mapCacheGet = require('./_mapCacheGet'),\n mapCacheHas = require('./_mapCacheHas'),\n mapCacheSet = require('./_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\nmodule.exports = MapCache;\n","var getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar Promise = getNative(root, 'Promise');\n\nmodule.exports = Promise;\n","var getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar Set = getNative(root, 'Set');\n\nmodule.exports = Set;\n","var MapCache = require('./_MapCache'),\n setCacheAdd = require('./_setCacheAdd'),\n setCacheHas = require('./_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\nmodule.exports = SetCache;\n","var ListCache = require('./_ListCache'),\n stackClear = require('./_stackClear'),\n stackDelete = require('./_stackDelete'),\n stackGet = require('./_stackGet'),\n stackHas = require('./_stackHas'),\n stackSet = require('./_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\nmodule.exports = Stack;\n","var root = require('./_root');\n\n/** Built-in value references. */\nvar Symbol = root.Symbol;\n\nmodule.exports = Symbol;\n","var root = require('./_root');\n\n/** Built-in value references. */\nvar Uint8Array = root.Uint8Array;\n\nmodule.exports = Uint8Array;\n","var getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar WeakMap = getNative(root, 'WeakMap');\n\nmodule.exports = WeakMap;\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\nmodule.exports = apply;\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\nmodule.exports = arrayFilter;\n","var baseTimes = require('./_baseTimes'),\n isArguments = require('./isArguments'),\n isArray = require('./isArray'),\n isBuffer = require('./isBuffer'),\n isIndex = require('./_isIndex'),\n isTypedArray = require('./isTypedArray');\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 * 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(value),\n isArg = !isArr && isArguments(value),\n isBuff = !isArr && !isArg && isBuffer(value),\n isType = !isArr && !isArg && !isBuff && isTypedArray(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.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\nmodule.exports = arrayLikeKeys;\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\nmodule.exports = arrayPush;\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\nmodule.exports = arraySome;\n","var baseAssignValue = require('./_baseAssignValue'),\n eq = require('./eq');\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(object[key], value)) ||\n (value === undefined && !(key in object))) {\n baseAssignValue(object, key, value);\n }\n}\n\nmodule.exports = assignMergeValue;\n","var baseAssignValue = require('./_baseAssignValue'),\n eq = require('./eq');\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 * 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.call(object, key) && eq(objValue, value)) ||\n (value === undefined && !(key in object))) {\n baseAssignValue(object, key, value);\n }\n}\n\nmodule.exports = assignValue;\n","var eq = require('./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(array[length][0], key)) {\n return length;\n }\n }\n return -1;\n}\n\nmodule.exports = assocIndexOf;\n","var defineProperty = require('./_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) {\n defineProperty(object, key, {\n 'configurable': true,\n 'enumerable': true,\n 'value': value,\n 'writable': true\n });\n } else {\n object[key] = value;\n }\n}\n\nmodule.exports = baseAssignValue;\n","var isObject = require('./isObject');\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(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\nmodule.exports = baseCreate;\n","var createBaseFor = require('./_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\nmodule.exports = baseFor;\n","var arrayPush = require('./_arrayPush'),\n isArray = require('./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(object) ? result : arrayPush(result, symbolsFunc(object));\n}\n\nmodule.exports = baseGetAllKeys;\n","var Symbol = require('./_Symbol'),\n getRawTag = require('./_getRawTag'),\n objectToString = require('./_objectToString');\n\n/** `Object#toString` result references. */\nvar nullTag = '[object Null]',\n undefinedTag = '[object Undefined]';\n\n/** Built-in value references. */\nvar symToStringTag = 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 && symToStringTag in Object(value))\n ? getRawTag(value)\n : objectToString(value);\n}\n\nmodule.exports = baseGetTag;\n","var baseGetTag = require('./_baseGetTag'),\n isObjectLike = require('./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(value) && baseGetTag(value) == argsTag;\n}\n\nmodule.exports = baseIsArguments;\n","var baseIsEqualDeep = require('./_baseIsEqualDeep'),\n isObjectLike = require('./isObjectLike');\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(value) && !isObjectLike(other))) {\n return value !== value && other !== other;\n }\n return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack);\n}\n\nmodule.exports = baseIsEqual;\n","var Stack = require('./_Stack'),\n equalArrays = require('./_equalArrays'),\n equalByTag = require('./_equalByTag'),\n equalObjects = require('./_equalObjects'),\n getTag = require('./_getTag'),\n isArray = require('./isArray'),\n isBuffer = require('./isBuffer'),\n isTypedArray = require('./isTypedArray');\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1;\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]',\n arrayTag = '[object Array]',\n objectTag = '[object Object]';\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 * 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(object),\n othIsArr = isArray(other),\n objTag = objIsArr ? arrayTag : getTag(object),\n othTag = othIsArr ? arrayTag : getTag(other);\n\n objTag = objTag == argsTag ? objectTag : objTag;\n othTag = othTag == argsTag ? objectTag : othTag;\n\n var objIsObj = objTag == objectTag,\n othIsObj = othTag == objectTag,\n isSameTag = objTag == othTag;\n\n if (isSameTag && isBuffer(object)) {\n if (!isBuffer(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(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)) {\n var objIsWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'),\n othIsWrapped = othIsObj && hasOwnProperty.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\nmodule.exports = baseIsEqualDeep;\n","var isFunction = require('./isFunction'),\n isMasked = require('./_isMasked'),\n isObject = require('./isObject'),\n toSource = require('./_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 = Function.prototype,\n objectProto = Object.prototype;\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/** 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/**\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) ? reIsNative : reIsHostCtor;\n return pattern.test(toSource(value));\n}\n\nmodule.exports = baseIsNative;\n","var baseGetTag = require('./_baseGetTag'),\n isLength = require('./isLength'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]',\n arrayTag = '[object Array]',\n boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n errorTag = '[object Error]',\n funcTag = '[object Function]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n objectTag = '[object Object]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n weakMapTag = '[object WeakMap]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[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] = typedArrayTags[arrayTag] =\ntypedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] =\ntypedArrayTags[dataViewTag] = typedArrayTags[dateTag] =\ntypedArrayTags[errorTag] = typedArrayTags[funcTag] =\ntypedArrayTags[mapTag] = typedArrayTags[numberTag] =\ntypedArrayTags[objectTag] = typedArrayTags[regexpTag] =\ntypedArrayTags[setTag] = typedArrayTags[stringTag] =\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(value) &&\n isLength(value.length) && !!typedArrayTags[baseGetTag(value)];\n}\n\nmodule.exports = baseIsTypedArray;\n","var isPrototype = require('./_isPrototype'),\n nativeKeys = require('./_nativeKeys');\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 * 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.call(object, key) && key != 'constructor') {\n result.push(key);\n }\n }\n return result;\n}\n\nmodule.exports = baseKeys;\n","var isObject = require('./isObject'),\n isPrototype = require('./_isPrototype'),\n nativeKeysIn = require('./_nativeKeysIn');\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 * 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(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.call(object, key)))) {\n result.push(key);\n }\n }\n return result;\n}\n\nmodule.exports = baseKeysIn;\n","var Stack = require('./_Stack'),\n assignMergeValue = require('./_assignMergeValue'),\n baseFor = require('./_baseFor'),\n baseMergeDeep = require('./_baseMergeDeep'),\n isObject = require('./isObject'),\n keysIn = require('./keysIn'),\n safeGet = require('./_safeGet');\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(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);\n}\n\nmodule.exports = baseMerge;\n","var assignMergeValue = require('./_assignMergeValue'),\n cloneBuffer = require('./_cloneBuffer'),\n cloneTypedArray = require('./_cloneTypedArray'),\n copyArray = require('./_copyArray'),\n initCloneObject = require('./_initCloneObject'),\n isArguments = require('./isArguments'),\n isArray = require('./isArray'),\n isArrayLikeObject = require('./isArrayLikeObject'),\n isBuffer = require('./isBuffer'),\n isFunction = require('./isFunction'),\n isObject = require('./isObject'),\n isPlainObject = require('./isPlainObject'),\n isTypedArray = require('./isTypedArray'),\n safeGet = require('./_safeGet'),\n toPlainObject = require('./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(srcValue),\n isBuff = !isArr && isBuffer(srcValue),\n isTyped = !isArr && !isBuff && isTypedArray(srcValue);\n\n newValue = srcValue;\n if (isArr || isBuff || isTyped) {\n if (isArray(objValue)) {\n newValue = objValue;\n }\n else if (isArrayLikeObject(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(srcValue) || isArguments(srcValue)) {\n newValue = objValue;\n if (isArguments(objValue)) {\n newValue = toPlainObject(objValue);\n }\n else if (!isObject(objValue) || isFunction(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\nmodule.exports = baseMergeDeep;\n","var identity = require('./identity'),\n overRest = require('./_overRest'),\n setToString = require('./_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), func + '');\n}\n\nmodule.exports = baseRest;\n","var constant = require('./constant'),\n defineProperty = require('./_defineProperty'),\n identity = require('./identity');\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 ? identity : function(func, string) {\n return defineProperty(func, 'toString', {\n 'configurable': true,\n 'enumerable': false,\n 'value': constant(string),\n 'writable': true\n });\n};\n\nmodule.exports = baseSetToString;\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\nmodule.exports = baseTimes;\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\nmodule.exports = baseUnary;\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\nmodule.exports = cacheHas;\n","var Uint8Array = require('./_Uint8Array');\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\nmodule.exports = cloneArrayBuffer;\n","var root = require('./_root');\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == '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","var cloneArrayBuffer = require('./_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\nmodule.exports = cloneTypedArray;\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\nmodule.exports = copyArray;\n","var assignValue = require('./_assignValue'),\n baseAssignValue = require('./_baseAssignValue');\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\nmodule.exports = copyObject;\n","var root = require('./_root');\n\n/** Used to detect overreaching core-js shims. */\nvar coreJsData = root['__core-js_shared__'];\n\nmodule.exports = coreJsData;\n","var baseRest = require('./_baseRest'),\n isIterateeCall = require('./_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\nmodule.exports = createAssigner;\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\nmodule.exports = createBaseFor;\n","var getNative = require('./_getNative');\n\nvar defineProperty = (function() {\n try {\n var func = getNative(Object, 'defineProperty');\n func({}, '', {});\n return func;\n } catch (e) {}\n}());\n\nmodule.exports = defineProperty;\n","var SetCache = require('./_SetCache'),\n arraySome = require('./_arraySome'),\n cacheHas = require('./_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 // Check that cyclic values are equal.\n var arrStacked = stack.get(array);\n var othStacked = stack.get(other);\n if (arrStacked && othStacked) {\n return arrStacked == other && othStacked == array;\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\nmodule.exports = equalArrays;\n","var Symbol = require('./_Symbol'),\n Uint8Array = require('./_Uint8Array'),\n eq = require('./eq'),\n equalArrays = require('./_equalArrays'),\n mapToArray = require('./_mapToArray'),\n setToArray = require('./_setToArray');\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1,\n COMPARE_UNORDERED_FLAG = 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(+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;\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;\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\nmodule.exports = equalByTag;\n","var getAllKeys = require('./_getAllKeys');\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 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 * 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,\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.call(other, key))) {\n return false;\n }\n }\n // Check that cyclic values are equal.\n var objStacked = stack.get(object);\n var othStacked = stack.get(other);\n if (objStacked && othStacked) {\n return objStacked == other && othStacked == object;\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\nmodule.exports = equalObjects;\n","/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\nmodule.exports = freeGlobal;\n","var baseGetAllKeys = require('./_baseGetAllKeys'),\n getSymbols = require('./_getSymbols'),\n keys = require('./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, getSymbols);\n}\n\nmodule.exports = getAllKeys;\n","var isKeyable = require('./_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\nmodule.exports = getMapData;\n","var baseIsNative = require('./_baseIsNative'),\n getValue = require('./_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\nmodule.exports = getNative;\n","var overArg = require('./_overArg');\n\n/** Built-in value references. */\nvar getPrototype = overArg(Object.getPrototypeOf, Object);\n\nmodule.exports = getPrototype;\n","var Symbol = require('./_Symbol');\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\nmodule.exports = getRawTag;\n","var arrayFilter = require('./_arrayFilter'),\n stubArray = require('./stubArray');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Built-in value references. */\nvar propertyIsEnumerable = objectProto.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 : 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\nmodule.exports = getSymbols;\n","var DataView = require('./_DataView'),\n Map = require('./_Map'),\n Promise = require('./_Promise'),\n Set = require('./_Set'),\n WeakMap = require('./_WeakMap'),\n baseGetTag = require('./_baseGetTag'),\n toSource = require('./_toSource');\n\n/** `Object#toString` result references. */\nvar mapTag = '[object Map]',\n objectTag = '[object Object]',\n promiseTag = '[object Promise]',\n setTag = '[object Set]',\n weakMapTag = '[object WeakMap]';\n\nvar dataViewTag = '[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) ||\n (Map && getTag(new Map) != mapTag) ||\n (Promise && getTag(Promise.resolve()) != promiseTag) ||\n (Set && getTag(new Set) != setTag) ||\n (WeakMap && getTag(new WeakMap) != weakMapTag)) {\n getTag = function(value) {\n var result = baseGetTag(value),\n Ctor = result == objectTag ? value.constructor : undefined,\n ctorString = Ctor ? toSource(Ctor) : '';\n\n if (ctorString) {\n switch (ctorString) {\n case dataViewCtorString: return dataViewTag;\n case mapCtorString: return mapTag;\n case promiseCtorString: return promiseTag;\n case setCtorString: return setTag;\n case weakMapCtorString: return weakMapTag;\n }\n }\n return result;\n };\n}\n\nmodule.exports = getTag;\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\nmodule.exports = getValue;\n","var nativeCreate = require('./_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\nmodule.exports = hashClear;\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\nmodule.exports = hashDelete;\n","var nativeCreate = require('./_nativeCreate');\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 = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.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.call(data, key) ? data[key] : undefined;\n}\n\nmodule.exports = hashGet;\n","var nativeCreate = require('./_nativeCreate');\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 * 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\nmodule.exports = hashHas;\n","var nativeCreate = require('./_nativeCreate');\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__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 : value;\n return this;\n}\n\nmodule.exports = hashSet;\n","var baseCreate = require('./_baseCreate'),\n getPrototype = require('./_getPrototype'),\n isPrototype = require('./_isPrototype');\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\nmodule.exports = initCloneObject;\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\nmodule.exports = isIndex;\n","var eq = require('./eq'),\n isArrayLike = require('./isArrayLike'),\n isIndex = require('./_isIndex'),\n isObject = require('./isObject');\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(object)) {\n return false;\n }\n var type = typeof index;\n if (type == 'number'\n ? (isArrayLike(object) && isIndex(index, object.length))\n : (type == 'string' && index in object)\n ) {\n return eq(object[index], value);\n }\n return false;\n}\n\nmodule.exports = isIterateeCall;\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\nmodule.exports = isKeyable;\n","var coreJsData = require('./_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\nmodule.exports = isMasked;\n","/** Used for built-in method references. */\nvar objectProto = 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;\n\n return value === proto;\n}\n\nmodule.exports = isPrototype;\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\nmodule.exports = listCacheClear;\n","var assocIndexOf = require('./_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\nmodule.exports = listCacheDelete;\n","var assocIndexOf = require('./_assocIndexOf');\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\nmodule.exports = listCacheGet;\n","var assocIndexOf = require('./_assocIndexOf');\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\nmodule.exports = listCacheHas;\n","var assocIndexOf = require('./_assocIndexOf');\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\nmodule.exports = listCacheSet;\n","var Hash = require('./_Hash'),\n ListCache = require('./_ListCache'),\n Map = require('./_Map');\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\nmodule.exports = mapCacheClear;\n","var getMapData = require('./_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\nmodule.exports = mapCacheDelete;\n","var getMapData = require('./_getMapData');\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\nmodule.exports = mapCacheGet;\n","var getMapData = require('./_getMapData');\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\nmodule.exports = mapCacheHas;\n","var getMapData = require('./_getMapData');\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\nmodule.exports = mapCacheSet;\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\nmodule.exports = mapToArray;\n","var getNative = require('./_getNative');\n\n/* Built-in method references that are verified to be native. */\nvar nativeCreate = getNative(Object, 'create');\n\nmodule.exports = nativeCreate;\n","var overArg = require('./_overArg');\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeKeys = overArg(Object.keys, Object);\n\nmodule.exports = nativeKeys;\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\nmodule.exports = nativeKeysIn;\n","var freeGlobal = require('./_freeGlobal');\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == '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","/** Used for built-in method references. */\nvar objectProto = 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 = objectProto.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.call(value);\n}\n\nmodule.exports = objectToString;\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\nmodule.exports = overArg;\n","var apply = require('./_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\nmodule.exports = overRest;\n","var freeGlobal = require('./_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\nmodule.exports = root;\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\nmodule.exports = safeGet;\n","/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__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);\n return this;\n}\n\nmodule.exports = setCacheAdd;\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\nmodule.exports = setCacheHas;\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\nmodule.exports = setToArray;\n","var baseSetToString = require('./_baseSetToString'),\n shortOut = require('./_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\nmodule.exports = setToString;\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\nmodule.exports = shortOut;\n","var ListCache = require('./_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\nmodule.exports = stackClear;\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\nmodule.exports = stackDelete;\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\nmodule.exports = stackGet;\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\nmodule.exports = stackHas;\n","var ListCache = require('./_ListCache'),\n Map = require('./_Map'),\n MapCache = require('./_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\nmodule.exports = stackSet;\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\nmodule.exports = toSource;\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\nmodule.exports = constant;\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\nmodule.exports = eq;\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\nmodule.exports = identity;\n","var baseIsArguments = require('./_baseIsArguments'),\n isObjectLike = require('./isObjectLike');\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/** Built-in value references. */\nvar propertyIsEnumerable = objectProto.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(value) && hasOwnProperty.call(value, 'callee') &&\n !propertyIsEnumerable.call(value, 'callee');\n};\n\nmodule.exports = isArguments;\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\nmodule.exports = isArray;\n","var isFunction = require('./isFunction'),\n isLength = require('./isLength');\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(value.length) && !isFunction(value);\n}\n\nmodule.exports = isArrayLike;\n","var isArrayLike = require('./isArrayLike'),\n isObjectLike = require('./isObjectLike');\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(value) && isArrayLike(value);\n}\n\nmodule.exports = isArrayLikeObject;\n","var root = require('./_root'),\n stubFalse = require('./stubFalse');\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == '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;\n\nmodule.exports = isBuffer;\n","var baseIsEqual = require('./_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\nmodule.exports = isEqual;\n","var baseGetTag = require('./_baseGetTag'),\n isObject = require('./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(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\nmodule.exports = isFunction;\n","/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER = 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;\n}\n\nmodule.exports = isLength;\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\nmodule.exports = isObject;\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\nmodule.exports = isObjectLike;\n","var baseGetTag = require('./_baseGetTag'),\n getPrototype = require('./_getPrototype'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar objectTag = '[object Object]';\n\n/** Used for built-in method references. */\nvar funcProto = Function.prototype,\n objectProto = Object.prototype;\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/** Used to infer the `Object` constructor. */\nvar objectCtorString = funcToString.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(value) || baseGetTag(value) != objectTag) {\n return false;\n }\n var proto = getPrototype(value);\n if (proto === null) {\n return true;\n }\n var Ctor = hasOwnProperty.call(proto, 'constructor') && proto.constructor;\n return typeof Ctor == 'function' && Ctor instanceof Ctor &&\n funcToString.call(Ctor) == objectCtorString;\n}\n\nmodule.exports = isPlainObject;\n","var baseIsTypedArray = require('./_baseIsTypedArray'),\n baseUnary = require('./_baseUnary'),\n nodeUtil = require('./_nodeUtil');\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\nmodule.exports = isTypedArray;\n","var arrayLikeKeys = require('./_arrayLikeKeys'),\n baseKeys = require('./_baseKeys'),\n isArrayLike = require('./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(object) ? arrayLikeKeys(object) : baseKeys(object);\n}\n\nmodule.exports = keys;\n","var arrayLikeKeys = require('./_arrayLikeKeys'),\n baseKeysIn = require('./_baseKeysIn'),\n isArrayLike = require('./isArrayLike');\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(object) ? arrayLikeKeys(object, true) : baseKeysIn(object);\n}\n\nmodule.exports = keysIn;\n","var baseMerge = require('./_baseMerge'),\n createAssigner = require('./_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\nmodule.exports = merge;\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\nmodule.exports = stubArray;\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\nmodule.exports = stubFalse;\n","var copyObject = require('./_copyObject'),\n keysIn = require('./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(value));\n}\n\nmodule.exports = toPlainObject;\n","'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 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 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","'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: 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","// Currently in sync with Node.js lib/assert.js\n// https://github.com/nodejs/node/commit/2a51ae424a513ec9a6aa3466baa0cc1d55dd4f3b\n// Originally from narwhal.js (http://narwhaljs.org)\n// Copyright (c) 2009 Thomas Robinson <280north.com>\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\n// deal in the Software without restriction, including without limitation the\n// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or\n// sell 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\n// all 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 BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN\n// ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\n// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n'use strict';\n\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar _require = require('./internal/errors'),\n _require$codes = _require.codes,\n ERR_AMBIGUOUS_ARGUMENT = _require$codes.ERR_AMBIGUOUS_ARGUMENT,\n ERR_INVALID_ARG_TYPE = _require$codes.ERR_INVALID_ARG_TYPE,\n ERR_INVALID_ARG_VALUE = _require$codes.ERR_INVALID_ARG_VALUE,\n ERR_INVALID_RETURN_VALUE = _require$codes.ERR_INVALID_RETURN_VALUE,\n ERR_MISSING_ARGS = _require$codes.ERR_MISSING_ARGS;\n\nvar AssertionError = require('./internal/assert/assertion_error');\n\nvar _require2 = require('util/'),\n inspect = _require2.inspect;\n\nvar _require$types = require('util/').types,\n isPromise = _require$types.isPromise,\n isRegExp = _require$types.isRegExp;\n\nvar objectAssign = Object.assign ? Object.assign : require('es6-object-assign').assign;\nvar objectIs = Object.is ? Object.is : require('object-is');\nvar errorCache = new Map();\nvar isDeepEqual;\nvar isDeepStrictEqual;\nvar parseExpressionAt;\nvar findNodeAround;\nvar decoder;\n\nfunction lazyLoadComparison() {\n var comparison = require('./internal/util/comparisons');\n\n isDeepEqual = comparison.isDeepEqual;\n isDeepStrictEqual = comparison.isDeepStrictEqual;\n} // Escape control characters but not \\n and \\t to keep the line breaks and\n// indentation intact.\n// eslint-disable-next-line no-control-regex\n\n\nvar escapeSequencesRegExp = /[\\x00-\\x08\\x0b\\x0c\\x0e-\\x1f]/g;\nvar meta = [\"\\\\u0000\", \"\\\\u0001\", \"\\\\u0002\", \"\\\\u0003\", \"\\\\u0004\", \"\\\\u0005\", \"\\\\u0006\", \"\\\\u0007\", '\\\\b', '', '', \"\\\\u000b\", '\\\\f', '', \"\\\\u000e\", \"\\\\u000f\", \"\\\\u0010\", \"\\\\u0011\", \"\\\\u0012\", \"\\\\u0013\", \"\\\\u0014\", \"\\\\u0015\", \"\\\\u0016\", \"\\\\u0017\", \"\\\\u0018\", \"\\\\u0019\", \"\\\\u001a\", \"\\\\u001b\", \"\\\\u001c\", \"\\\\u001d\", \"\\\\u001e\", \"\\\\u001f\"];\n\nvar escapeFn = function escapeFn(str) {\n return meta[str.charCodeAt(0)];\n};\n\nvar warned = false; // The assert module provides functions that throw\n// AssertionError's when particular conditions are not met. The\n// assert module must conform to the following interface.\n\nvar assert = module.exports = ok;\nvar NO_EXCEPTION_SENTINEL = {}; // All of the following functions must throw an AssertionError\n// when a corresponding condition is not met, with a message that\n// may be undefined if not provided. All assertion methods provide\n// both the actual and expected values to the assertion error for\n// display purposes.\n\nfunction innerFail(obj) {\n if (obj.message instanceof Error) throw obj.message;\n throw new AssertionError(obj);\n}\n\nfunction fail(actual, expected, message, operator, stackStartFn) {\n var argsLen = arguments.length;\n var internalMessage;\n\n if (argsLen === 0) {\n internalMessage = 'Failed';\n } else if (argsLen === 1) {\n message = actual;\n actual = undefined;\n } else {\n if (warned === false) {\n warned = true;\n var warn = process.emitWarning ? process.emitWarning : console.warn.bind(console);\n warn('assert.fail() with more than one argument is deprecated. ' + 'Please use assert.strictEqual() instead or only pass a message.', 'DeprecationWarning', 'DEP0094');\n }\n\n if (argsLen === 2) operator = '!=';\n }\n\n if (message instanceof Error) throw message;\n var errArgs = {\n actual: actual,\n expected: expected,\n operator: operator === undefined ? 'fail' : operator,\n stackStartFn: stackStartFn || fail\n };\n\n if (message !== undefined) {\n errArgs.message = message;\n }\n\n var err = new AssertionError(errArgs);\n\n if (internalMessage) {\n err.message = internalMessage;\n err.generatedMessage = true;\n }\n\n throw err;\n}\n\nassert.fail = fail; // The AssertionError is defined in internal/error.\n\nassert.AssertionError = AssertionError;\n\nfunction innerOk(fn, argLen, value, message) {\n if (!value) {\n var generatedMessage = false;\n\n if (argLen === 0) {\n generatedMessage = true;\n message = 'No value argument passed to `assert.ok()`';\n } else if (message instanceof Error) {\n throw message;\n }\n\n var err = new AssertionError({\n actual: value,\n expected: true,\n message: message,\n operator: '==',\n stackStartFn: fn\n });\n err.generatedMessage = generatedMessage;\n throw err;\n }\n} // Pure assertion tests whether a value is truthy, as determined\n// by !!value.\n\n\nfunction ok() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n innerOk.apply(void 0, [ok, args.length].concat(args));\n}\n\nassert.ok = ok; // The equality assertion tests shallow, coercive equality with ==.\n\n/* eslint-disable no-restricted-properties */\n\nassert.equal = function equal(actual, expected, message) {\n if (arguments.length < 2) {\n throw new ERR_MISSING_ARGS('actual', 'expected');\n } // eslint-disable-next-line eqeqeq\n\n\n if (actual != expected) {\n innerFail({\n actual: actual,\n expected: expected,\n message: message,\n operator: '==',\n stackStartFn: equal\n });\n }\n}; // The non-equality assertion tests for whether two objects are not\n// equal with !=.\n\n\nassert.notEqual = function notEqual(actual, expected, message) {\n if (arguments.length < 2) {\n throw new ERR_MISSING_ARGS('actual', 'expected');\n } // eslint-disable-next-line eqeqeq\n\n\n if (actual == expected) {\n innerFail({\n actual: actual,\n expected: expected,\n message: message,\n operator: '!=',\n stackStartFn: notEqual\n });\n }\n}; // The equivalence assertion tests a deep equality relation.\n\n\nassert.deepEqual = function deepEqual(actual, expected, message) {\n if (arguments.length < 2) {\n throw new ERR_MISSING_ARGS('actual', 'expected');\n }\n\n if (isDeepEqual === undefined) lazyLoadComparison();\n\n if (!isDeepEqual(actual, expected)) {\n innerFail({\n actual: actual,\n expected: expected,\n message: message,\n operator: 'deepEqual',\n stackStartFn: deepEqual\n });\n }\n}; // The non-equivalence assertion tests for any deep inequality.\n\n\nassert.notDeepEqual = function notDeepEqual(actual, expected, message) {\n if (arguments.length < 2) {\n throw new ERR_MISSING_ARGS('actual', 'expected');\n }\n\n if (isDeepEqual === undefined) lazyLoadComparison();\n\n if (isDeepEqual(actual, expected)) {\n innerFail({\n actual: actual,\n expected: expected,\n message: message,\n operator: 'notDeepEqual',\n stackStartFn: notDeepEqual\n });\n }\n};\n/* eslint-enable */\n\n\nassert.deepStrictEqual = function deepStrictEqual(actual, expected, message) {\n if (arguments.length < 2) {\n throw new ERR_MISSING_ARGS('actual', 'expected');\n }\n\n if (isDeepEqual === undefined) lazyLoadComparison();\n\n if (!isDeepStrictEqual(actual, expected)) {\n innerFail({\n actual: actual,\n expected: expected,\n message: message,\n operator: 'deepStrictEqual',\n stackStartFn: deepStrictEqual\n });\n }\n};\n\nassert.notDeepStrictEqual = notDeepStrictEqual;\n\nfunction notDeepStrictEqual(actual, expected, message) {\n if (arguments.length < 2) {\n throw new ERR_MISSING_ARGS('actual', 'expected');\n }\n\n if (isDeepEqual === undefined) lazyLoadComparison();\n\n if (isDeepStrictEqual(actual, expected)) {\n innerFail({\n actual: actual,\n expected: expected,\n message: message,\n operator: 'notDeepStrictEqual',\n stackStartFn: notDeepStrictEqual\n });\n }\n}\n\nassert.strictEqual = function strictEqual(actual, expected, message) {\n if (arguments.length < 2) {\n throw new ERR_MISSING_ARGS('actual', 'expected');\n }\n\n if (!objectIs(actual, expected)) {\n innerFail({\n actual: actual,\n expected: expected,\n message: message,\n operator: 'strictEqual',\n stackStartFn: strictEqual\n });\n }\n};\n\nassert.notStrictEqual = function notStrictEqual(actual, expected, message) {\n if (arguments.length < 2) {\n throw new ERR_MISSING_ARGS('actual', 'expected');\n }\n\n if (objectIs(actual, expected)) {\n innerFail({\n actual: actual,\n expected: expected,\n message: message,\n operator: 'notStrictEqual',\n stackStartFn: notStrictEqual\n });\n }\n};\n\nvar Comparison = function Comparison(obj, keys, actual) {\n var _this = this;\n\n _classCallCheck(this, Comparison);\n\n keys.forEach(function (key) {\n if (key in obj) {\n if (actual !== undefined && typeof actual[key] === 'string' && isRegExp(obj[key]) && obj[key].test(actual[key])) {\n _this[key] = actual[key];\n } else {\n _this[key] = obj[key];\n }\n }\n });\n};\n\nfunction compareExceptionKey(actual, expected, key, message, keys, fn) {\n if (!(key in actual) || !isDeepStrictEqual(actual[key], expected[key])) {\n if (!message) {\n // Create placeholder objects to create a nice output.\n var a = new Comparison(actual, keys);\n var b = new Comparison(expected, keys, actual);\n var err = new AssertionError({\n actual: a,\n expected: b,\n operator: 'deepStrictEqual',\n stackStartFn: fn\n });\n err.actual = actual;\n err.expected = expected;\n err.operator = fn.name;\n throw err;\n }\n\n innerFail({\n actual: actual,\n expected: expected,\n message: message,\n operator: fn.name,\n stackStartFn: fn\n });\n }\n}\n\nfunction expectedException(actual, expected, msg, fn) {\n if (typeof expected !== 'function') {\n if (isRegExp(expected)) return expected.test(actual); // assert.doesNotThrow does not accept objects.\n\n if (arguments.length === 2) {\n throw new ERR_INVALID_ARG_TYPE('expected', ['Function', 'RegExp'], expected);\n } // Handle primitives properly.\n\n\n if (_typeof(actual) !== 'object' || actual === null) {\n var err = new AssertionError({\n actual: actual,\n expected: expected,\n message: msg,\n operator: 'deepStrictEqual',\n stackStartFn: fn\n });\n err.operator = fn.name;\n throw err;\n }\n\n var keys = Object.keys(expected); // Special handle errors to make sure the name and the message are compared\n // as well.\n\n if (expected instanceof Error) {\n keys.push('name', 'message');\n } else if (keys.length === 0) {\n throw new ERR_INVALID_ARG_VALUE('error', expected, 'may not be an empty object');\n }\n\n if (isDeepEqual === undefined) lazyLoadComparison();\n keys.forEach(function (key) {\n if (typeof actual[key] === 'string' && isRegExp(expected[key]) && expected[key].test(actual[key])) {\n return;\n }\n\n compareExceptionKey(actual, expected, key, msg, keys, fn);\n });\n return true;\n } // Guard instanceof against arrow functions as they don't have a prototype.\n\n\n if (expected.prototype !== undefined && actual instanceof expected) {\n return true;\n }\n\n if (Error.isPrototypeOf(expected)) {\n return false;\n }\n\n return expected.call({}, actual) === true;\n}\n\nfunction getActual(fn) {\n if (typeof fn !== 'function') {\n throw new ERR_INVALID_ARG_TYPE('fn', 'Function', fn);\n }\n\n try {\n fn();\n } catch (e) {\n return e;\n }\n\n return NO_EXCEPTION_SENTINEL;\n}\n\nfunction checkIsPromise(obj) {\n // Accept native ES6 promises and promises that are implemented in a similar\n // way. Do not accept thenables that use a function as `obj` and that have no\n // `catch` handler.\n // TODO: thenables are checked up until they have the correct methods,\n // but according to documentation, the `then` method should receive\n // the `fulfill` and `reject` arguments as well or it may be never resolved.\n return isPromise(obj) || obj !== null && _typeof(obj) === 'object' && typeof obj.then === 'function' && typeof obj.catch === 'function';\n}\n\nfunction waitForActual(promiseFn) {\n return Promise.resolve().then(function () {\n var resultPromise;\n\n if (typeof promiseFn === 'function') {\n // Return a rejected promise if `promiseFn` throws synchronously.\n resultPromise = promiseFn(); // Fail in case no promise is returned.\n\n if (!checkIsPromise(resultPromise)) {\n throw new ERR_INVALID_RETURN_VALUE('instance of Promise', 'promiseFn', resultPromise);\n }\n } else if (checkIsPromise(promiseFn)) {\n resultPromise = promiseFn;\n } else {\n throw new ERR_INVALID_ARG_TYPE('promiseFn', ['Function', 'Promise'], promiseFn);\n }\n\n return Promise.resolve().then(function () {\n return resultPromise;\n }).then(function () {\n return NO_EXCEPTION_SENTINEL;\n }).catch(function (e) {\n return e;\n });\n });\n}\n\nfunction expectsError(stackStartFn, actual, error, message) {\n if (typeof error === 'string') {\n if (arguments.length === 4) {\n throw new ERR_INVALID_ARG_TYPE('error', ['Object', 'Error', 'Function', 'RegExp'], error);\n }\n\n if (_typeof(actual) === 'object' && actual !== null) {\n if (actual.message === error) {\n throw new ERR_AMBIGUOUS_ARGUMENT('error/message', \"The error message \\\"\".concat(actual.message, \"\\\" is identical to the message.\"));\n }\n } else if (actual === error) {\n throw new ERR_AMBIGUOUS_ARGUMENT('error/message', \"The error \\\"\".concat(actual, \"\\\" is identical to the message.\"));\n }\n\n message = error;\n error = undefined;\n } else if (error != null && _typeof(error) !== 'object' && typeof error !== 'function') {\n throw new ERR_INVALID_ARG_TYPE('error', ['Object', 'Error', 'Function', 'RegExp'], error);\n }\n\n if (actual === NO_EXCEPTION_SENTINEL) {\n var details = '';\n\n if (error && error.name) {\n details += \" (\".concat(error.name, \")\");\n }\n\n details += message ? \": \".concat(message) : '.';\n var fnType = stackStartFn.name === 'rejects' ? 'rejection' : 'exception';\n innerFail({\n actual: undefined,\n expected: error,\n operator: stackStartFn.name,\n message: \"Missing expected \".concat(fnType).concat(details),\n stackStartFn: stackStartFn\n });\n }\n\n if (error && !expectedException(actual, error, message, stackStartFn)) {\n throw actual;\n }\n}\n\nfunction expectsNoError(stackStartFn, actual, error, message) {\n if (actual === NO_EXCEPTION_SENTINEL) return;\n\n if (typeof error === 'string') {\n message = error;\n error = undefined;\n }\n\n if (!error || expectedException(actual, error)) {\n var details = message ? \": \".concat(message) : '.';\n var fnType = stackStartFn.name === 'doesNotReject' ? 'rejection' : 'exception';\n innerFail({\n actual: actual,\n expected: error,\n operator: stackStartFn.name,\n message: \"Got unwanted \".concat(fnType).concat(details, \"\\n\") + \"Actual message: \\\"\".concat(actual && actual.message, \"\\\"\"),\n stackStartFn: stackStartFn\n });\n }\n\n throw actual;\n}\n\nassert.throws = function throws(promiseFn) {\n for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n args[_key2 - 1] = arguments[_key2];\n }\n\n expectsError.apply(void 0, [throws, getActual(promiseFn)].concat(args));\n};\n\nassert.rejects = function rejects(promiseFn) {\n for (var _len3 = arguments.length, args = new Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) {\n args[_key3 - 1] = arguments[_key3];\n }\n\n return waitForActual(promiseFn).then(function (result) {\n return expectsError.apply(void 0, [rejects, result].concat(args));\n });\n};\n\nassert.doesNotThrow = function doesNotThrow(fn) {\n for (var _len4 = arguments.length, args = new Array(_len4 > 1 ? _len4 - 1 : 0), _key4 = 1; _key4 < _len4; _key4++) {\n args[_key4 - 1] = arguments[_key4];\n }\n\n expectsNoError.apply(void 0, [doesNotThrow, getActual(fn)].concat(args));\n};\n\nassert.doesNotReject = function doesNotReject(fn) {\n for (var _len5 = arguments.length, args = new Array(_len5 > 1 ? _len5 - 1 : 0), _key5 = 1; _key5 < _len5; _key5++) {\n args[_key5 - 1] = arguments[_key5];\n }\n\n return waitForActual(fn).then(function (result) {\n return expectsNoError.apply(void 0, [doesNotReject, result].concat(args));\n });\n};\n\nassert.ifError = function ifError(err) {\n if (err !== null && err !== undefined) {\n var message = 'ifError got unwanted exception: ';\n\n if (_typeof(err) === 'object' && typeof err.message === 'string') {\n if (err.message.length === 0 && err.constructor) {\n message += err.constructor.name;\n } else {\n message += err.message;\n }\n } else {\n message += inspect(err);\n }\n\n var newErr = new AssertionError({\n actual: err,\n expected: null,\n operator: 'ifError',\n message: message,\n stackStartFn: ifError\n }); // Make sure we actually have a stack trace!\n\n var origStack = err.stack;\n\n if (typeof origStack === 'string') {\n // This will remove any duplicated frames from the error frames taken\n // from within `ifError` and add the original error frames to the newly\n // created ones.\n var tmp2 = origStack.split('\\n');\n tmp2.shift(); // Filter all frames existing in err.stack.\n\n var tmp1 = newErr.stack.split('\\n');\n\n for (var i = 0; i < tmp2.length; i++) {\n // Find the first occurrence of the frame.\n var pos = tmp1.indexOf(tmp2[i]);\n\n if (pos !== -1) {\n // Only keep new frames.\n tmp1 = tmp1.slice(0, pos);\n break;\n }\n }\n\n newErr.stack = \"\".concat(tmp1.join('\\n'), \"\\n\").concat(tmp2.join('\\n'));\n }\n\n throw newErr;\n }\n}; // Expose a strict only variant of assert\n\n\nfunction strict() {\n for (var _len6 = arguments.length, args = new Array(_len6), _key6 = 0; _key6 < _len6; _key6++) {\n args[_key6] = arguments[_key6];\n }\n\n innerOk.apply(void 0, [strict, args.length].concat(args));\n}\n\nassert.strict = objectAssign(strict, assert, {\n equal: assert.strictEqual,\n deepEqual: assert.deepStrictEqual,\n notEqual: assert.notStrictEqual,\n notDeepEqual: assert.notDeepStrictEqual\n});\nassert.strict.strict = assert.strict;","// Currently in sync with Node.js lib/internal/assert/assertion_error.js\n// https://github.com/nodejs/node/commit/0817840f775032169ddd70c85ac059f18ffcc81c\n'use strict';\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }\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\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 _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _wrapNativeSuper(Class) { var _cache = typeof Map === \"function\" ? new Map() : undefined; _wrapNativeSuper = function _wrapNativeSuper(Class) { if (Class === null || !_isNativeFunction(Class)) return Class; if (typeof Class !== \"function\") { throw new TypeError(\"Super expression must either be null or a function\"); } if (typeof _cache !== \"undefined\") { if (_cache.has(Class)) return _cache.get(Class); _cache.set(Class, Wrapper); } function Wrapper() { return _construct(Class, arguments, _getPrototypeOf(this).constructor); } Wrapper.prototype = Object.create(Class.prototype, { constructor: { value: Wrapper, enumerable: false, writable: true, configurable: true } }); return _setPrototypeOf(Wrapper, Class); }; return _wrapNativeSuper(Class); }\n\nfunction isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _construct(Parent, args, Class) { if (isNativeReflectConstruct()) { _construct = Reflect.construct; } else { _construct = function _construct(Parent, args, Class) { var a = [null]; a.push.apply(a, args); var Constructor = Function.bind.apply(Parent, a); var instance = new Constructor(); if (Class) _setPrototypeOf(instance, Class.prototype); return instance; }; } return _construct.apply(null, arguments); }\n\nfunction _isNativeFunction(fn) { return Function.toString.call(fn).indexOf(\"[native code]\") !== -1; }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nvar _require = require('util/'),\n inspect = _require.inspect;\n\nvar _require2 = require('../errors'),\n ERR_INVALID_ARG_TYPE = _require2.codes.ERR_INVALID_ARG_TYPE; // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/endsWith\n\n\nfunction endsWith(str, search, this_len) {\n if (this_len === undefined || this_len > str.length) {\n this_len = str.length;\n }\n\n return str.substring(this_len - search.length, this_len) === search;\n} // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/repeat\n\n\nfunction repeat(str, count) {\n count = Math.floor(count);\n if (str.length == 0 || count == 0) return '';\n var maxCount = str.length * count;\n count = Math.floor(Math.log(count) / Math.log(2));\n\n while (count) {\n str += str;\n count--;\n }\n\n str += str.substring(0, maxCount - str.length);\n return str;\n}\n\nvar blue = '';\nvar green = '';\nvar red = '';\nvar white = '';\nvar kReadableOperator = {\n deepStrictEqual: 'Expected values to be strictly deep-equal:',\n strictEqual: 'Expected values to be strictly equal:',\n strictEqualObject: 'Expected \"actual\" to be reference-equal to \"expected\":',\n deepEqual: 'Expected values to be loosely deep-equal:',\n equal: 'Expected values to be loosely equal:',\n notDeepStrictEqual: 'Expected \"actual\" not to be strictly deep-equal to:',\n notStrictEqual: 'Expected \"actual\" to be strictly unequal to:',\n notStrictEqualObject: 'Expected \"actual\" not to be reference-equal to \"expected\":',\n notDeepEqual: 'Expected \"actual\" not to be loosely deep-equal to:',\n notEqual: 'Expected \"actual\" to be loosely unequal to:',\n notIdentical: 'Values identical but not reference-equal:'\n}; // Comparing short primitives should just show === / !== instead of using the\n// diff.\n\nvar kMaxShortLength = 10;\n\nfunction copyError(source) {\n var keys = Object.keys(source);\n var target = Object.create(Object.getPrototypeOf(source));\n keys.forEach(function (key) {\n target[key] = source[key];\n });\n Object.defineProperty(target, 'message', {\n value: source.message\n });\n return target;\n}\n\nfunction inspectValue(val) {\n // The util.inspect default values could be changed. This makes sure the\n // error messages contain the necessary information nevertheless.\n return inspect(val, {\n compact: false,\n customInspect: false,\n depth: 1000,\n maxArrayLength: Infinity,\n // Assert compares only enumerable properties (with a few exceptions).\n showHidden: false,\n // Having a long line as error is better than wrapping the line for\n // comparison for now.\n // TODO(BridgeAR): `breakLength` should be limited as soon as soon as we\n // have meta information about the inspected properties (i.e., know where\n // in what line the property starts and ends).\n breakLength: Infinity,\n // Assert does not detect proxies currently.\n showProxy: false,\n sorted: true,\n // Inspect getters as we also check them when comparing entries.\n getters: true\n });\n}\n\nfunction createErrDiff(actual, expected, operator) {\n var other = '';\n var res = '';\n var lastPos = 0;\n var end = '';\n var skipped = false;\n var actualInspected = inspectValue(actual);\n var actualLines = actualInspected.split('\\n');\n var expectedLines = inspectValue(expected).split('\\n');\n var i = 0;\n var indicator = ''; // In case both values are objects explicitly mark them as not reference equal\n // for the `strictEqual` operator.\n\n if (operator === 'strictEqual' && _typeof(actual) === 'object' && _typeof(expected) === 'object' && actual !== null && expected !== null) {\n operator = 'strictEqualObject';\n } // If \"actual\" and \"expected\" fit on a single line and they are not strictly\n // equal, check further special handling.\n\n\n if (actualLines.length === 1 && expectedLines.length === 1 && actualLines[0] !== expectedLines[0]) {\n var inputLength = actualLines[0].length + expectedLines[0].length; // If the character length of \"actual\" and \"expected\" together is less than\n // kMaxShortLength and if neither is an object and at least one of them is\n // not `zero`, use the strict equal comparison to visualize the output.\n\n if (inputLength <= kMaxShortLength) {\n if ((_typeof(actual) !== 'object' || actual === null) && (_typeof(expected) !== 'object' || expected === null) && (actual !== 0 || expected !== 0)) {\n // -0 === +0\n return \"\".concat(kReadableOperator[operator], \"\\n\\n\") + \"\".concat(actualLines[0], \" !== \").concat(expectedLines[0], \"\\n\");\n }\n } else if (operator !== 'strictEqualObject') {\n // If the stderr is a tty and the input length is lower than the current\n // columns per line, add a mismatch indicator below the output. If it is\n // not a tty, use a default value of 80 characters.\n var maxLength = process.stderr && process.stderr.isTTY ? process.stderr.columns : 80;\n\n if (inputLength < maxLength) {\n while (actualLines[0][i] === expectedLines[0][i]) {\n i++;\n } // Ignore the first characters.\n\n\n if (i > 2) {\n // Add position indicator for the first mismatch in case it is a\n // single line and the input length is less than the column length.\n indicator = \"\\n \".concat(repeat(' ', i), \"^\");\n i = 0;\n }\n }\n }\n } // Remove all ending lines that match (this optimizes the output for\n // readability by reducing the number of total changed lines).\n\n\n var a = actualLines[actualLines.length - 1];\n var b = expectedLines[expectedLines.length - 1];\n\n while (a === b) {\n if (i++ < 2) {\n end = \"\\n \".concat(a).concat(end);\n } else {\n other = a;\n }\n\n actualLines.pop();\n expectedLines.pop();\n if (actualLines.length === 0 || expectedLines.length === 0) break;\n a = actualLines[actualLines.length - 1];\n b = expectedLines[expectedLines.length - 1];\n }\n\n var maxLines = Math.max(actualLines.length, expectedLines.length); // Strict equal with identical objects that are not identical by reference.\n // E.g., assert.deepStrictEqual({ a: Symbol() }, { a: Symbol() })\n\n if (maxLines === 0) {\n // We have to get the result again. The lines were all removed before.\n var _actualLines = actualInspected.split('\\n'); // Only remove lines in case it makes sense to collapse those.\n // TODO: Accept env to always show the full error.\n\n\n if (_actualLines.length > 30) {\n _actualLines[26] = \"\".concat(blue, \"...\").concat(white);\n\n while (_actualLines.length > 27) {\n _actualLines.pop();\n }\n }\n\n return \"\".concat(kReadableOperator.notIdentical, \"\\n\\n\").concat(_actualLines.join('\\n'), \"\\n\");\n }\n\n if (i > 3) {\n end = \"\\n\".concat(blue, \"...\").concat(white).concat(end);\n skipped = true;\n }\n\n if (other !== '') {\n end = \"\\n \".concat(other).concat(end);\n other = '';\n }\n\n var printedLines = 0;\n var msg = kReadableOperator[operator] + \"\\n\".concat(green, \"+ actual\").concat(white, \" \").concat(red, \"- expected\").concat(white);\n var skippedMsg = \" \".concat(blue, \"...\").concat(white, \" Lines skipped\");\n\n for (i = 0; i < maxLines; i++) {\n // Only extra expected lines exist\n var cur = i - lastPos;\n\n if (actualLines.length < i + 1) {\n // If the last diverging line is more than one line above and the\n // current line is at least line three, add some of the former lines and\n // also add dots to indicate skipped entries.\n if (cur > 1 && i > 2) {\n if (cur > 4) {\n res += \"\\n\".concat(blue, \"...\").concat(white);\n skipped = true;\n } else if (cur > 3) {\n res += \"\\n \".concat(expectedLines[i - 2]);\n printedLines++;\n }\n\n res += \"\\n \".concat(expectedLines[i - 1]);\n printedLines++;\n } // Mark the current line as the last diverging one.\n\n\n lastPos = i; // Add the expected line to the cache.\n\n other += \"\\n\".concat(red, \"-\").concat(white, \" \").concat(expectedLines[i]);\n printedLines++; // Only extra actual lines exist\n } else if (expectedLines.length < i + 1) {\n // If the last diverging line is more than one line above and the\n // current line is at least line three, add some of the former lines and\n // also add dots to indicate skipped entries.\n if (cur > 1 && i > 2) {\n if (cur > 4) {\n res += \"\\n\".concat(blue, \"...\").concat(white);\n skipped = true;\n } else if (cur > 3) {\n res += \"\\n \".concat(actualLines[i - 2]);\n printedLines++;\n }\n\n res += \"\\n \".concat(actualLines[i - 1]);\n printedLines++;\n } // Mark the current line as the last diverging one.\n\n\n lastPos = i; // Add the actual line to the result.\n\n res += \"\\n\".concat(green, \"+\").concat(white, \" \").concat(actualLines[i]);\n printedLines++; // Lines diverge\n } else {\n var expectedLine = expectedLines[i];\n var actualLine = actualLines[i]; // If the lines diverge, specifically check for lines that only diverge by\n // a trailing comma. In that case it is actually identical and we should\n // mark it as such.\n\n var divergingLines = actualLine !== expectedLine && (!endsWith(actualLine, ',') || actualLine.slice(0, -1) !== expectedLine); // If the expected line has a trailing comma but is otherwise identical,\n // add a comma at the end of the actual line. Otherwise the output could\n // look weird as in:\n //\n // [\n // 1 // No comma at the end!\n // + 2\n // ]\n //\n\n if (divergingLines && endsWith(expectedLine, ',') && expectedLine.slice(0, -1) === actualLine) {\n divergingLines = false;\n actualLine += ',';\n }\n\n if (divergingLines) {\n // If the last diverging line is more than one line above and the\n // current line is at least line three, add some of the former lines and\n // also add dots to indicate skipped entries.\n if (cur > 1 && i > 2) {\n if (cur > 4) {\n res += \"\\n\".concat(blue, \"...\").concat(white);\n skipped = true;\n } else if (cur > 3) {\n res += \"\\n \".concat(actualLines[i - 2]);\n printedLines++;\n }\n\n res += \"\\n \".concat(actualLines[i - 1]);\n printedLines++;\n } // Mark the current line as the last diverging one.\n\n\n lastPos = i; // Add the actual line to the result and cache the expected diverging\n // line so consecutive diverging lines show up as +++--- and not +-+-+-.\n\n res += \"\\n\".concat(green, \"+\").concat(white, \" \").concat(actualLine);\n other += \"\\n\".concat(red, \"-\").concat(white, \" \").concat(expectedLine);\n printedLines += 2; // Lines are identical\n } else {\n // Add all cached information to the result before adding other things\n // and reset the cache.\n res += other;\n other = ''; // If the last diverging line is exactly one line above or if it is the\n // very first line, add the line to the result.\n\n if (cur === 1 || i === 0) {\n res += \"\\n \".concat(actualLine);\n printedLines++;\n }\n }\n } // Inspected object to big (Show ~20 rows max)\n\n\n if (printedLines > 20 && i < maxLines - 2) {\n return \"\".concat(msg).concat(skippedMsg, \"\\n\").concat(res, \"\\n\").concat(blue, \"...\").concat(white).concat(other, \"\\n\") + \"\".concat(blue, \"...\").concat(white);\n }\n }\n\n return \"\".concat(msg).concat(skipped ? skippedMsg : '', \"\\n\").concat(res).concat(other).concat(end).concat(indicator);\n}\n\nvar AssertionError =\n/*#__PURE__*/\nfunction (_Error) {\n _inherits(AssertionError, _Error);\n\n function AssertionError(options) {\n var _this;\n\n _classCallCheck(this, AssertionError);\n\n if (_typeof(options) !== 'object' || options === null) {\n throw new ERR_INVALID_ARG_TYPE('options', 'Object', options);\n }\n\n var message = options.message,\n operator = options.operator,\n stackStartFn = options.stackStartFn;\n var actual = options.actual,\n expected = options.expected;\n var limit = Error.stackTraceLimit;\n Error.stackTraceLimit = 0;\n\n if (message != null) {\n _this = _possibleConstructorReturn(this, _getPrototypeOf(AssertionError).call(this, String(message)));\n } else {\n if (process.stderr && process.stderr.isTTY) {\n // Reset on each call to make sure we handle dynamically set environment\n // variables correct.\n if (process.stderr && process.stderr.getColorDepth && process.stderr.getColorDepth() !== 1) {\n blue = \"\\x1B[34m\";\n green = \"\\x1B[32m\";\n white = \"\\x1B[39m\";\n red = \"\\x1B[31m\";\n } else {\n blue = '';\n green = '';\n white = '';\n red = '';\n }\n } // Prevent the error stack from being visible by duplicating the error\n // in a very close way to the original in case both sides are actually\n // instances of Error.\n\n\n if (_typeof(actual) === 'object' && actual !== null && _typeof(expected) === 'object' && expected !== null && 'stack' in actual && actual instanceof Error && 'stack' in expected && expected instanceof Error) {\n actual = copyError(actual);\n expected = copyError(expected);\n }\n\n if (operator === 'deepStrictEqual' || operator === 'strictEqual') {\n _this = _possibleConstructorReturn(this, _getPrototypeOf(AssertionError).call(this, createErrDiff(actual, expected, operator)));\n } else if (operator === 'notDeepStrictEqual' || operator === 'notStrictEqual') {\n // In case the objects are equal but the operator requires unequal, show\n // the first object and say A equals B\n var base = kReadableOperator[operator];\n var res = inspectValue(actual).split('\\n'); // In case \"actual\" is an object, it should not be reference equal.\n\n if (operator === 'notStrictEqual' && _typeof(actual) === 'object' && actual !== null) {\n base = kReadableOperator.notStrictEqualObject;\n } // Only remove lines in case it makes sense to collapse those.\n // TODO: Accept env to always show the full error.\n\n\n if (res.length > 30) {\n res[26] = \"\".concat(blue, \"...\").concat(white);\n\n while (res.length > 27) {\n res.pop();\n }\n } // Only print a single input.\n\n\n if (res.length === 1) {\n _this = _possibleConstructorReturn(this, _getPrototypeOf(AssertionError).call(this, \"\".concat(base, \" \").concat(res[0])));\n } else {\n _this = _possibleConstructorReturn(this, _getPrototypeOf(AssertionError).call(this, \"\".concat(base, \"\\n\\n\").concat(res.join('\\n'), \"\\n\")));\n }\n } else {\n var _res = inspectValue(actual);\n\n var other = '';\n var knownOperators = kReadableOperator[operator];\n\n if (operator === 'notDeepEqual' || operator === 'notEqual') {\n _res = \"\".concat(kReadableOperator[operator], \"\\n\\n\").concat(_res);\n\n if (_res.length > 1024) {\n _res = \"\".concat(_res.slice(0, 1021), \"...\");\n }\n } else {\n other = \"\".concat(inspectValue(expected));\n\n if (_res.length > 512) {\n _res = \"\".concat(_res.slice(0, 509), \"...\");\n }\n\n if (other.length > 512) {\n other = \"\".concat(other.slice(0, 509), \"...\");\n }\n\n if (operator === 'deepEqual' || operator === 'equal') {\n _res = \"\".concat(knownOperators, \"\\n\\n\").concat(_res, \"\\n\\nshould equal\\n\\n\");\n } else {\n other = \" \".concat(operator, \" \").concat(other);\n }\n }\n\n _this = _possibleConstructorReturn(this, _getPrototypeOf(AssertionError).call(this, \"\".concat(_res).concat(other)));\n }\n }\n\n Error.stackTraceLimit = limit;\n _this.generatedMessage = !message;\n Object.defineProperty(_assertThisInitialized(_this), 'name', {\n value: 'AssertionError [ERR_ASSERTION]',\n enumerable: false,\n writable: true,\n configurable: true\n });\n _this.code = 'ERR_ASSERTION';\n _this.actual = actual;\n _this.expected = expected;\n _this.operator = operator;\n\n if (Error.captureStackTrace) {\n // eslint-disable-next-line no-restricted-syntax\n Error.captureStackTrace(_assertThisInitialized(_this), stackStartFn);\n } // Create error message including the error code in the name.\n\n\n _this.stack; // Reset the name.\n\n _this.name = 'AssertionError';\n return _possibleConstructorReturn(_this);\n }\n\n _createClass(AssertionError, [{\n key: \"toString\",\n value: function toString() {\n return \"\".concat(this.name, \" [\").concat(this.code, \"]: \").concat(this.message);\n }\n }, {\n key: inspect.custom,\n value: function value(recurseTimes, ctx) {\n // This limits the `actual` and `expected` property default inspection to\n // the minimum depth. Otherwise those values would be too verbose compared\n // to the actual error message which contains a combined view of these two\n // input values.\n return inspect(this, _objectSpread({}, ctx, {\n customInspect: false,\n depth: 0\n }));\n }\n }]);\n\n return AssertionError;\n}(_wrapNativeSuper(Error));\n\nmodule.exports = AssertionError;","// Currently in sync with Node.js lib/internal/errors.js\n// https://github.com/nodejs/node/commit/3b044962c48fe313905877a96b5d0894a5404f6f\n\n/* eslint node-core/documented-errors: \"error\" */\n\n/* eslint node-core/alphabetize-errors: \"error\" */\n\n/* eslint node-core/prefer-util-format-errors: \"error\" */\n'use strict'; // The whole point behind this internal module is to allow Node.js to no\n// longer be forced to treat every error message change as a semver-major\n// change. The NodeError classes here all expose a `code` property whose\n// value statically and permanently identifies the error. While the error\n// message may change, the code should not.\n\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nvar codes = {}; // Lazy loaded\n\nvar assert;\nvar util;\n\nfunction createErrorType(code, message, Base) {\n if (!Base) {\n Base = Error;\n }\n\n function getMessage(arg1, arg2, arg3) {\n if (typeof message === 'string') {\n return message;\n } else {\n return message(arg1, arg2, arg3);\n }\n }\n\n var NodeError =\n /*#__PURE__*/\n function (_Base) {\n _inherits(NodeError, _Base);\n\n function NodeError(arg1, arg2, arg3) {\n var _this;\n\n _classCallCheck(this, NodeError);\n\n _this = _possibleConstructorReturn(this, _getPrototypeOf(NodeError).call(this, getMessage(arg1, arg2, arg3)));\n _this.code = code;\n return _this;\n }\n\n return NodeError;\n }(Base);\n\n codes[code] = NodeError;\n} // https://github.com/nodejs/node/blob/v10.8.0/lib/internal/errors.js\n\n\nfunction oneOf(expected, thing) {\n if (Array.isArray(expected)) {\n var len = expected.length;\n expected = expected.map(function (i) {\n return String(i);\n });\n\n if (len > 2) {\n return \"one of \".concat(thing, \" \").concat(expected.slice(0, len - 1).join(', '), \", or \") + expected[len - 1];\n } else if (len === 2) {\n return \"one of \".concat(thing, \" \").concat(expected[0], \" or \").concat(expected[1]);\n } else {\n return \"of \".concat(thing, \" \").concat(expected[0]);\n }\n } else {\n return \"of \".concat(thing, \" \").concat(String(expected));\n }\n} // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/startsWith\n\n\nfunction startsWith(str, search, pos) {\n return str.substr(!pos || pos < 0 ? 0 : +pos, search.length) === search;\n} // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/endsWith\n\n\nfunction endsWith(str, search, this_len) {\n if (this_len === undefined || this_len > str.length) {\n this_len = str.length;\n }\n\n return str.substring(this_len - search.length, this_len) === search;\n} // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/includes\n\n\nfunction includes(str, search, start) {\n if (typeof start !== 'number') {\n start = 0;\n }\n\n if (start + search.length > str.length) {\n return false;\n } else {\n return str.indexOf(search, start) !== -1;\n }\n}\n\ncreateErrorType('ERR_AMBIGUOUS_ARGUMENT', 'The \"%s\" argument is ambiguous. %s', TypeError);\ncreateErrorType('ERR_INVALID_ARG_TYPE', function (name, expected, actual) {\n if (assert === undefined) assert = require('../assert');\n assert(typeof name === 'string', \"'name' must be a string\"); // determiner: 'must be' or 'must not be'\n\n var determiner;\n\n if (typeof expected === 'string' && startsWith(expected, 'not ')) {\n determiner = 'must not be';\n expected = expected.replace(/^not /, '');\n } else {\n determiner = 'must be';\n }\n\n var msg;\n\n if (endsWith(name, ' argument')) {\n // For cases like 'first argument'\n msg = \"The \".concat(name, \" \").concat(determiner, \" \").concat(oneOf(expected, 'type'));\n } else {\n var type = includes(name, '.') ? 'property' : 'argument';\n msg = \"The \\\"\".concat(name, \"\\\" \").concat(type, \" \").concat(determiner, \" \").concat(oneOf(expected, 'type'));\n } // TODO(BridgeAR): Improve the output by showing `null` and similar.\n\n\n msg += \". Received type \".concat(_typeof(actual));\n return msg;\n}, TypeError);\ncreateErrorType('ERR_INVALID_ARG_VALUE', function (name, value) {\n var reason = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'is invalid';\n if (util === undefined) util = require('util/');\n var inspected = util.inspect(value);\n\n if (inspected.length > 128) {\n inspected = \"\".concat(inspected.slice(0, 128), \"...\");\n }\n\n return \"The argument '\".concat(name, \"' \").concat(reason, \". Received \").concat(inspected);\n}, TypeError, RangeError);\ncreateErrorType('ERR_INVALID_RETURN_VALUE', function (input, name, value) {\n var type;\n\n if (value && value.constructor && value.constructor.name) {\n type = \"instance of \".concat(value.constructor.name);\n } else {\n type = \"type \".concat(_typeof(value));\n }\n\n return \"Expected \".concat(input, \" to be returned from the \\\"\").concat(name, \"\\\"\") + \" function but got \".concat(type, \".\");\n}, TypeError);\ncreateErrorType('ERR_MISSING_ARGS', function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n if (assert === undefined) assert = require('../assert');\n assert(args.length > 0, 'At least one arg needs to be specified');\n var msg = 'The ';\n var len = args.length;\n args = args.map(function (a) {\n return \"\\\"\".concat(a, \"\\\"\");\n });\n\n switch (len) {\n case 1:\n msg += \"\".concat(args[0], \" argument\");\n break;\n\n case 2:\n msg += \"\".concat(args[0], \" and \").concat(args[1], \" arguments\");\n break;\n\n default:\n msg += args.slice(0, len - 1).join(', ');\n msg += \", and \".concat(args[len - 1], \" arguments\");\n break;\n }\n\n return \"\".concat(msg, \" must be specified\");\n}, TypeError);\nmodule.exports.codes = codes;","// Currently in sync with Node.js lib/internal/util/comparisons.js\n// https://github.com/nodejs/node/commit/112cc7c27551254aa2b17098fb774867f05ed0d9\n'use strict';\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance\"); }\n\nfunction _iterableToArrayLimit(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nvar regexFlagsSupported = /a/g.flags !== undefined;\n\nvar arrayFromSet = function arrayFromSet(set) {\n var array = [];\n set.forEach(function (value) {\n return array.push(value);\n });\n return array;\n};\n\nvar arrayFromMap = function arrayFromMap(map) {\n var array = [];\n map.forEach(function (value, key) {\n return array.push([key, value]);\n });\n return array;\n};\n\nvar objectIs = Object.is ? Object.is : require('object-is');\nvar objectGetOwnPropertySymbols = Object.getOwnPropertySymbols ? Object.getOwnPropertySymbols : function () {\n return [];\n};\nvar numberIsNaN = Number.isNaN ? Number.isNaN : require('is-nan');\n\nfunction uncurryThis(f) {\n return f.call.bind(f);\n}\n\nvar hasOwnProperty = uncurryThis(Object.prototype.hasOwnProperty);\nvar propertyIsEnumerable = uncurryThis(Object.prototype.propertyIsEnumerable);\nvar objectToString = uncurryThis(Object.prototype.toString);\n\nvar _require$types = require('util/').types,\n isAnyArrayBuffer = _require$types.isAnyArrayBuffer,\n isArrayBufferView = _require$types.isArrayBufferView,\n isDate = _require$types.isDate,\n isMap = _require$types.isMap,\n isRegExp = _require$types.isRegExp,\n isSet = _require$types.isSet,\n isNativeError = _require$types.isNativeError,\n isBoxedPrimitive = _require$types.isBoxedPrimitive,\n isNumberObject = _require$types.isNumberObject,\n isStringObject = _require$types.isStringObject,\n isBooleanObject = _require$types.isBooleanObject,\n isBigIntObject = _require$types.isBigIntObject,\n isSymbolObject = _require$types.isSymbolObject,\n isFloat32Array = _require$types.isFloat32Array,\n isFloat64Array = _require$types.isFloat64Array;\n\nfunction isNonIndex(key) {\n if (key.length === 0 || key.length > 10) return true;\n\n for (var i = 0; i < key.length; i++) {\n var code = key.charCodeAt(i);\n if (code < 48 || code > 57) return true;\n } // The maximum size for an array is 2 ** 32 -1.\n\n\n return key.length === 10 && key >= Math.pow(2, 32);\n}\n\nfunction getOwnNonIndexProperties(value) {\n return Object.keys(value).filter(isNonIndex).concat(objectGetOwnPropertySymbols(value).filter(Object.prototype.propertyIsEnumerable.bind(value)));\n} // Taken from https://github.com/feross/buffer/blob/680e9e5e488f22aac27599a57dc844a6315928dd/index.js\n// original notice:\n\n/*!\n * The buffer module from node.js, for the browser.\n *\n * @author Feross Aboukhadijeh <feross@feross.org> <http://feross.org>\n * @license MIT\n */\n\n\nfunction compare(a, b) {\n if (a === b) {\n return 0;\n }\n\n var x = a.length;\n var y = b.length;\n\n for (var i = 0, len = Math.min(x, y); i < len; ++i) {\n if (a[i] !== b[i]) {\n x = a[i];\n y = b[i];\n break;\n }\n }\n\n if (x < y) {\n return -1;\n }\n\n if (y < x) {\n return 1;\n }\n\n return 0;\n}\n\nvar ONLY_ENUMERABLE = undefined;\nvar kStrict = true;\nvar kLoose = false;\nvar kNoIterator = 0;\nvar kIsArray = 1;\nvar kIsSet = 2;\nvar kIsMap = 3; // Check if they have the same source and flags\n\nfunction areSimilarRegExps(a, b) {\n return regexFlagsSupported ? a.source === b.source && a.flags === b.flags : RegExp.prototype.toString.call(a) === RegExp.prototype.toString.call(b);\n}\n\nfunction areSimilarFloatArrays(a, b) {\n if (a.byteLength !== b.byteLength) {\n return false;\n }\n\n for (var offset = 0; offset < a.byteLength; offset++) {\n if (a[offset] !== b[offset]) {\n return false;\n }\n }\n\n return true;\n}\n\nfunction areSimilarTypedArrays(a, b) {\n if (a.byteLength !== b.byteLength) {\n return false;\n }\n\n return compare(new Uint8Array(a.buffer, a.byteOffset, a.byteLength), new Uint8Array(b.buffer, b.byteOffset, b.byteLength)) === 0;\n}\n\nfunction areEqualArrayBuffers(buf1, buf2) {\n return buf1.byteLength === buf2.byteLength && compare(new Uint8Array(buf1), new Uint8Array(buf2)) === 0;\n}\n\nfunction isEqualBoxedPrimitive(val1, val2) {\n if (isNumberObject(val1)) {\n return isNumberObject(val2) && objectIs(Number.prototype.valueOf.call(val1), Number.prototype.valueOf.call(val2));\n }\n\n if (isStringObject(val1)) {\n return isStringObject(val2) && String.prototype.valueOf.call(val1) === String.prototype.valueOf.call(val2);\n }\n\n if (isBooleanObject(val1)) {\n return isBooleanObject(val2) && Boolean.prototype.valueOf.call(val1) === Boolean.prototype.valueOf.call(val2);\n }\n\n if (isBigIntObject(val1)) {\n return isBigIntObject(val2) && BigInt.prototype.valueOf.call(val1) === BigInt.prototype.valueOf.call(val2);\n }\n\n return isSymbolObject(val2) && Symbol.prototype.valueOf.call(val1) === Symbol.prototype.valueOf.call(val2);\n} // Notes: Type tags are historical [[Class]] properties that can be set by\n// FunctionTemplate::SetClassName() in C++ or Symbol.toStringTag in JS\n// and retrieved using Object.prototype.toString.call(obj) in JS\n// See https://tc39.github.io/ecma262/#sec-object.prototype.tostring\n// for a list of tags pre-defined in the spec.\n// There are some unspecified tags in the wild too (e.g. typed array tags).\n// Since tags can be altered, they only serve fast failures\n//\n// Typed arrays and buffers are checked by comparing the content in their\n// underlying ArrayBuffer. This optimization requires that it's\n// reasonable to interpret their underlying memory in the same way,\n// which is checked by comparing their type tags.\n// (e.g. a Uint8Array and a Uint16Array with the same memory content\n// could still be different because they will be interpreted differently).\n//\n// For strict comparison, objects should have\n// a) The same built-in type tags\n// b) The same prototypes.\n\n\nfunction innerDeepEqual(val1, val2, strict, memos) {\n // All identical values are equivalent, as determined by ===.\n if (val1 === val2) {\n if (val1 !== 0) return true;\n return strict ? objectIs(val1, val2) : true;\n } // Check more closely if val1 and val2 are equal.\n\n\n if (strict) {\n if (_typeof(val1) !== 'object') {\n return typeof val1 === 'number' && numberIsNaN(val1) && numberIsNaN(val2);\n }\n\n if (_typeof(val2) !== 'object' || val1 === null || val2 === null) {\n return false;\n }\n\n if (Object.getPrototypeOf(val1) !== Object.getPrototypeOf(val2)) {\n return false;\n }\n } else {\n if (val1 === null || _typeof(val1) !== 'object') {\n if (val2 === null || _typeof(val2) !== 'object') {\n // eslint-disable-next-line eqeqeq\n return val1 == val2;\n }\n\n return false;\n }\n\n if (val2 === null || _typeof(val2) !== 'object') {\n return false;\n }\n }\n\n var val1Tag = objectToString(val1);\n var val2Tag = objectToString(val2);\n\n if (val1Tag !== val2Tag) {\n return false;\n }\n\n if (Array.isArray(val1)) {\n // Check for sparse arrays and general fast path\n if (val1.length !== val2.length) {\n return false;\n }\n\n var keys1 = getOwnNonIndexProperties(val1, ONLY_ENUMERABLE);\n var keys2 = getOwnNonIndexProperties(val2, ONLY_ENUMERABLE);\n\n if (keys1.length !== keys2.length) {\n return false;\n }\n\n return keyCheck(val1, val2, strict, memos, kIsArray, keys1);\n } // [browserify] This triggers on certain types in IE (Map/Set) so we don't\n // wan't to early return out of the rest of the checks. However we can check\n // if the second value is one of these values and the first isn't.\n\n\n if (val1Tag === '[object Object]') {\n // return keyCheck(val1, val2, strict, memos, kNoIterator);\n if (!isMap(val1) && isMap(val2) || !isSet(val1) && isSet(val2)) {\n return false;\n }\n }\n\n if (isDate(val1)) {\n if (!isDate(val2) || Date.prototype.getTime.call(val1) !== Date.prototype.getTime.call(val2)) {\n return false;\n }\n } else if (isRegExp(val1)) {\n if (!isRegExp(val2) || !areSimilarRegExps(val1, val2)) {\n return false;\n }\n } else if (isNativeError(val1) || val1 instanceof Error) {\n // Do not compare the stack as it might differ even though the error itself\n // is otherwise identical.\n if (val1.message !== val2.message || val1.name !== val2.name) {\n return false;\n }\n } else if (isArrayBufferView(val1)) {\n if (!strict && (isFloat32Array(val1) || isFloat64Array(val1))) {\n if (!areSimilarFloatArrays(val1, val2)) {\n return false;\n }\n } else if (!areSimilarTypedArrays(val1, val2)) {\n return false;\n } // Buffer.compare returns true, so val1.length === val2.length. If they both\n // only contain numeric keys, we don't need to exam further than checking\n // the symbols.\n\n\n var _keys = getOwnNonIndexProperties(val1, ONLY_ENUMERABLE);\n\n var _keys2 = getOwnNonIndexProperties(val2, ONLY_ENUMERABLE);\n\n if (_keys.length !== _keys2.length) {\n return false;\n }\n\n return keyCheck(val1, val2, strict, memos, kNoIterator, _keys);\n } else if (isSet(val1)) {\n if (!isSet(val2) || val1.size !== val2.size) {\n return false;\n }\n\n return keyCheck(val1, val2, strict, memos, kIsSet);\n } else if (isMap(val1)) {\n if (!isMap(val2) || val1.size !== val2.size) {\n return false;\n }\n\n return keyCheck(val1, val2, strict, memos, kIsMap);\n } else if (isAnyArrayBuffer(val1)) {\n if (!areEqualArrayBuffers(val1, val2)) {\n return false;\n }\n } else if (isBoxedPrimitive(val1) && !isEqualBoxedPrimitive(val1, val2)) {\n return false;\n }\n\n return keyCheck(val1, val2, strict, memos, kNoIterator);\n}\n\nfunction getEnumerables(val, keys) {\n return keys.filter(function (k) {\n return propertyIsEnumerable(val, k);\n });\n}\n\nfunction keyCheck(val1, val2, strict, memos, iterationType, aKeys) {\n // For all remaining Object pairs, including Array, objects and Maps,\n // equivalence is determined by having:\n // a) The same number of owned enumerable properties\n // b) The same set of keys/indexes (although not necessarily the same order)\n // c) Equivalent values for every corresponding key/index\n // d) For Sets and Maps, equal contents\n // Note: this accounts for both named and indexed properties on Arrays.\n if (arguments.length === 5) {\n aKeys = Object.keys(val1);\n var bKeys = Object.keys(val2); // The pair must have the same number of owned properties.\n\n if (aKeys.length !== bKeys.length) {\n return false;\n }\n } // Cheap key test\n\n\n var i = 0;\n\n for (; i < aKeys.length; i++) {\n if (!hasOwnProperty(val2, aKeys[i])) {\n return false;\n }\n }\n\n if (strict && arguments.length === 5) {\n var symbolKeysA = objectGetOwnPropertySymbols(val1);\n\n if (symbolKeysA.length !== 0) {\n var count = 0;\n\n for (i = 0; i < symbolKeysA.length; i++) {\n var key = symbolKeysA[i];\n\n if (propertyIsEnumerable(val1, key)) {\n if (!propertyIsEnumerable(val2, key)) {\n return false;\n }\n\n aKeys.push(key);\n count++;\n } else if (propertyIsEnumerable(val2, key)) {\n return false;\n }\n }\n\n var symbolKeysB = objectGetOwnPropertySymbols(val2);\n\n if (symbolKeysA.length !== symbolKeysB.length && getEnumerables(val2, symbolKeysB).length !== count) {\n return false;\n }\n } else {\n var _symbolKeysB = objectGetOwnPropertySymbols(val2);\n\n if (_symbolKeysB.length !== 0 && getEnumerables(val2, _symbolKeysB).length !== 0) {\n return false;\n }\n }\n }\n\n if (aKeys.length === 0 && (iterationType === kNoIterator || iterationType === kIsArray && val1.length === 0 || val1.size === 0)) {\n return true;\n } // Use memos to handle cycles.\n\n\n if (memos === undefined) {\n memos = {\n val1: new Map(),\n val2: new Map(),\n position: 0\n };\n } else {\n // We prevent up to two map.has(x) calls by directly retrieving the value\n // and checking for undefined. The map can only contain numbers, so it is\n // safe to check for undefined only.\n var val2MemoA = memos.val1.get(val1);\n\n if (val2MemoA !== undefined) {\n var val2MemoB = memos.val2.get(val2);\n\n if (val2MemoB !== undefined) {\n return val2MemoA === val2MemoB;\n }\n }\n\n memos.position++;\n }\n\n memos.val1.set(val1, memos.position);\n memos.val2.set(val2, memos.position);\n var areEq = objEquiv(val1, val2, strict, aKeys, memos, iterationType);\n memos.val1.delete(val1);\n memos.val2.delete(val2);\n return areEq;\n}\n\nfunction setHasEqualElement(set, val1, strict, memo) {\n // Go looking.\n var setValues = arrayFromSet(set);\n\n for (var i = 0; i < setValues.length; i++) {\n var val2 = setValues[i];\n\n if (innerDeepEqual(val1, val2, strict, memo)) {\n // Remove the matching element to make sure we do not check that again.\n set.delete(val2);\n return true;\n }\n }\n\n return false;\n} // See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Equality_comparisons_and_sameness#Loose_equality_using\n// Sadly it is not possible to detect corresponding values properly in case the\n// type is a string, number, bigint or boolean. The reason is that those values\n// can match lots of different string values (e.g., 1n == '+00001').\n\n\nfunction findLooseMatchingPrimitives(prim) {\n switch (_typeof(prim)) {\n case 'undefined':\n return null;\n\n case 'object':\n // Only pass in null as object!\n return undefined;\n\n case 'symbol':\n return false;\n\n case 'string':\n prim = +prim;\n // Loose equal entries exist only if the string is possible to convert to\n // a regular number and not NaN.\n // Fall through\n\n case 'number':\n if (numberIsNaN(prim)) {\n return false;\n }\n\n }\n\n return true;\n}\n\nfunction setMightHaveLoosePrim(a, b, prim) {\n var altValue = findLooseMatchingPrimitives(prim);\n if (altValue != null) return altValue;\n return b.has(altValue) && !a.has(altValue);\n}\n\nfunction mapMightHaveLoosePrim(a, b, prim, item, memo) {\n var altValue = findLooseMatchingPrimitives(prim);\n\n if (altValue != null) {\n return altValue;\n }\n\n var curB = b.get(altValue);\n\n if (curB === undefined && !b.has(altValue) || !innerDeepEqual(item, curB, false, memo)) {\n return false;\n }\n\n return !a.has(altValue) && innerDeepEqual(item, curB, false, memo);\n}\n\nfunction setEquiv(a, b, strict, memo) {\n // This is a lazily initiated Set of entries which have to be compared\n // pairwise.\n var set = null;\n var aValues = arrayFromSet(a);\n\n for (var i = 0; i < aValues.length; i++) {\n var val = aValues[i]; // Note: Checking for the objects first improves the performance for object\n // heavy sets but it is a minor slow down for primitives. As they are fast\n // to check this improves the worst case scenario instead.\n\n if (_typeof(val) === 'object' && val !== null) {\n if (set === null) {\n set = new Set();\n } // If the specified value doesn't exist in the second set its an not null\n // object (or non strict only: a not matching primitive) we'll need to go\n // hunting for something thats deep-(strict-)equal to it. To make this\n // O(n log n) complexity we have to copy these values in a new set first.\n\n\n set.add(val);\n } else if (!b.has(val)) {\n if (strict) return false; // Fast path to detect missing string, symbol, undefined and null values.\n\n if (!setMightHaveLoosePrim(a, b, val)) {\n return false;\n }\n\n if (set === null) {\n set = new Set();\n }\n\n set.add(val);\n }\n }\n\n if (set !== null) {\n var bValues = arrayFromSet(b);\n\n for (var _i = 0; _i < bValues.length; _i++) {\n var _val = bValues[_i]; // We have to check if a primitive value is already\n // matching and only if it's not, go hunting for it.\n\n if (_typeof(_val) === 'object' && _val !== null) {\n if (!setHasEqualElement(set, _val, strict, memo)) return false;\n } else if (!strict && !a.has(_val) && !setHasEqualElement(set, _val, strict, memo)) {\n return false;\n }\n }\n\n return set.size === 0;\n }\n\n return true;\n}\n\nfunction mapHasEqualEntry(set, map, key1, item1, strict, memo) {\n // To be able to handle cases like:\n // Map([[{}, 'a'], [{}, 'b']]) vs Map([[{}, 'b'], [{}, 'a']])\n // ... we need to consider *all* matching keys, not just the first we find.\n var setValues = arrayFromSet(set);\n\n for (var i = 0; i < setValues.length; i++) {\n var key2 = setValues[i];\n\n if (innerDeepEqual(key1, key2, strict, memo) && innerDeepEqual(item1, map.get(key2), strict, memo)) {\n set.delete(key2);\n return true;\n }\n }\n\n return false;\n}\n\nfunction mapEquiv(a, b, strict, memo) {\n var set = null;\n var aEntries = arrayFromMap(a);\n\n for (var i = 0; i < aEntries.length; i++) {\n var _aEntries$i = _slicedToArray(aEntries[i], 2),\n key = _aEntries$i[0],\n item1 = _aEntries$i[1];\n\n if (_typeof(key) === 'object' && key !== null) {\n if (set === null) {\n set = new Set();\n }\n\n set.add(key);\n } else {\n // By directly retrieving the value we prevent another b.has(key) check in\n // almost all possible cases.\n var item2 = b.get(key);\n\n if (item2 === undefined && !b.has(key) || !innerDeepEqual(item1, item2, strict, memo)) {\n if (strict) return false; // Fast path to detect missing string, symbol, undefined and null\n // keys.\n\n if (!mapMightHaveLoosePrim(a, b, key, item1, memo)) return false;\n\n if (set === null) {\n set = new Set();\n }\n\n set.add(key);\n }\n }\n }\n\n if (set !== null) {\n var bEntries = arrayFromMap(b);\n\n for (var _i2 = 0; _i2 < bEntries.length; _i2++) {\n var _bEntries$_i = _slicedToArray(bEntries[_i2], 2),\n key = _bEntries$_i[0],\n item = _bEntries$_i[1];\n\n if (_typeof(key) === 'object' && key !== null) {\n if (!mapHasEqualEntry(set, a, key, item, strict, memo)) return false;\n } else if (!strict && (!a.has(key) || !innerDeepEqual(a.get(key), item, false, memo)) && !mapHasEqualEntry(set, a, key, item, false, memo)) {\n return false;\n }\n }\n\n return set.size === 0;\n }\n\n return true;\n}\n\nfunction objEquiv(a, b, strict, keys, memos, iterationType) {\n // Sets and maps don't have their entries accessible via normal object\n // properties.\n var i = 0;\n\n if (iterationType === kIsSet) {\n if (!setEquiv(a, b, strict, memos)) {\n return false;\n }\n } else if (iterationType === kIsMap) {\n if (!mapEquiv(a, b, strict, memos)) {\n return false;\n }\n } else if (iterationType === kIsArray) {\n for (; i < a.length; i++) {\n if (hasOwnProperty(a, i)) {\n if (!hasOwnProperty(b, i) || !innerDeepEqual(a[i], b[i], strict, memos)) {\n return false;\n }\n } else if (hasOwnProperty(b, i)) {\n return false;\n } else {\n // Array is sparse.\n var keysA = Object.keys(a);\n\n for (; i < keysA.length; i++) {\n var key = keysA[i];\n\n if (!hasOwnProperty(b, key) || !innerDeepEqual(a[key], b[key], strict, memos)) {\n return false;\n }\n }\n\n if (keysA.length !== Object.keys(b).length) {\n return false;\n }\n\n return true;\n }\n }\n } // The pair must have equivalent values for every corresponding key.\n // Possibly expensive deep test:\n\n\n for (i = 0; i < keys.length; i++) {\n var _key = keys[i];\n\n if (!innerDeepEqual(a[_key], b[_key], strict, memos)) {\n return false;\n }\n }\n\n return true;\n}\n\nfunction isDeepEqual(val1, val2) {\n return innerDeepEqual(val1, val2, kLoose);\n}\n\nfunction isDeepStrictEqual(val1, val2) {\n return innerDeepEqual(val1, val2, kStrict);\n}\n\nmodule.exports = {\n isDeepEqual: isDeepEqual,\n isDeepStrictEqual: isDeepStrictEqual\n};","if (typeof Object.create === 'function') {\n // implementation from standard node.js 'util' module\n module.exports = function inherits(ctor, superCtor) {\n if (superCtor) {\n ctor.super_ = superCtor\n ctor.prototype = Object.create(superCtor.prototype, {\n constructor: {\n value: ctor,\n enumerable: false,\n writable: true,\n configurable: true\n }\n })\n }\n };\n} else {\n // old school shim for old browsers\n module.exports = function inherits(ctor, superCtor) {\n if (superCtor) {\n ctor.super_ = superCtor\n var TempCtor = function () {}\n TempCtor.prototype = superCtor.prototype\n ctor.prototype = new TempCtor()\n ctor.prototype.constructor = ctor\n }\n }\n}\n","module.exports = function isBuffer(arg) {\n return arg && typeof arg === 'object'\n && typeof arg.copy === 'function'\n && typeof arg.fill === 'function'\n && typeof arg.readUInt8 === 'function';\n}","// Currently in sync with Node.js lib/internal/util/types.js\n// https://github.com/nodejs/node/commit/112cc7c27551254aa2b17098fb774867f05ed0d9\n\n'use strict';\n\nvar isArgumentsObject = require('is-arguments');\nvar isGeneratorFunction = require('is-generator-function');\nvar whichTypedArray = require('which-typed-array');\nvar isTypedArray = require('is-typed-array');\n\nfunction uncurryThis(f) {\n return f.call.bind(f);\n}\n\nvar BigIntSupported = typeof BigInt !== 'undefined';\nvar SymbolSupported = typeof Symbol !== 'undefined';\n\nvar ObjectToString = uncurryThis(Object.prototype.toString);\n\nvar numberValue = uncurryThis(Number.prototype.valueOf);\nvar stringValue = uncurryThis(String.prototype.valueOf);\nvar booleanValue = uncurryThis(Boolean.prototype.valueOf);\n\nif (BigIntSupported) {\n var bigIntValue = uncurryThis(BigInt.prototype.valueOf);\n}\n\nif (SymbolSupported) {\n var symbolValue = uncurryThis(Symbol.prototype.valueOf);\n}\n\nfunction checkBoxedPrimitive(value, prototypeValueOf) {\n if (typeof value !== 'object') {\n return false;\n }\n try {\n prototypeValueOf(value);\n return true;\n } catch(e) {\n return false;\n }\n}\n\nexports.isArgumentsObject = isArgumentsObject;\nexports.isGeneratorFunction = isGeneratorFunction;\nexports.isTypedArray = isTypedArray;\n\n// Taken from here and modified for better browser support\n// https://github.com/sindresorhus/p-is-promise/blob/cda35a513bda03f977ad5cde3a079d237e82d7ef/index.js\nfunction isPromise(input) {\n\treturn (\n\t\t(\n\t\t\ttypeof Promise !== 'undefined' &&\n\t\t\tinput instanceof Promise\n\t\t) ||\n\t\t(\n\t\t\tinput !== null &&\n\t\t\ttypeof input === 'object' &&\n\t\t\ttypeof input.then === 'function' &&\n\t\t\ttypeof input.catch === 'function'\n\t\t)\n\t);\n}\nexports.isPromise = isPromise;\n\nfunction isArrayBufferView(value) {\n if (typeof ArrayBuffer !== 'undefined' && ArrayBuffer.isView) {\n return ArrayBuffer.isView(value);\n }\n\n return (\n isTypedArray(value) ||\n isDataView(value)\n );\n}\nexports.isArrayBufferView = isArrayBufferView;\n\n\nfunction isUint8Array(value) {\n return whichTypedArray(value) === 'Uint8Array';\n}\nexports.isUint8Array = isUint8Array;\n\nfunction isUint8ClampedArray(value) {\n return whichTypedArray(value) === 'Uint8ClampedArray';\n}\nexports.isUint8ClampedArray = isUint8ClampedArray;\n\nfunction isUint16Array(value) {\n return whichTypedArray(value) === 'Uint16Array';\n}\nexports.isUint16Array = isUint16Array;\n\nfunction isUint32Array(value) {\n return whichTypedArray(value) === 'Uint32Array';\n}\nexports.isUint32Array = isUint32Array;\n\nfunction isInt8Array(value) {\n return whichTypedArray(value) === 'Int8Array';\n}\nexports.isInt8Array = isInt8Array;\n\nfunction isInt16Array(value) {\n return whichTypedArray(value) === 'Int16Array';\n}\nexports.isInt16Array = isInt16Array;\n\nfunction isInt32Array(value) {\n return whichTypedArray(value) === 'Int32Array';\n}\nexports.isInt32Array = isInt32Array;\n\nfunction isFloat32Array(value) {\n return whichTypedArray(value) === 'Float32Array';\n}\nexports.isFloat32Array = isFloat32Array;\n\nfunction isFloat64Array(value) {\n return whichTypedArray(value) === 'Float64Array';\n}\nexports.isFloat64Array = isFloat64Array;\n\nfunction isBigInt64Array(value) {\n return whichTypedArray(value) === 'BigInt64Array';\n}\nexports.isBigInt64Array = isBigInt64Array;\n\nfunction isBigUint64Array(value) {\n return whichTypedArray(value) === 'BigUint64Array';\n}\nexports.isBigUint64Array = isBigUint64Array;\n\nfunction isMapToString(value) {\n return ObjectToString(value) === '[object Map]';\n}\nisMapToString.working = (\n typeof Map !== 'undefined' &&\n isMapToString(new Map())\n);\n\nfunction isMap(value) {\n if (typeof Map === 'undefined') {\n return false;\n }\n\n return isMapToString.working\n ? isMapToString(value)\n : value instanceof Map;\n}\nexports.isMap = isMap;\n\nfunction isSetToString(value) {\n return ObjectToString(value) === '[object Set]';\n}\nisSetToString.working = (\n typeof Set !== 'undefined' &&\n isSetToString(new Set())\n);\nfunction isSet(value) {\n if (typeof Set === 'undefined') {\n return false;\n }\n\n return isSetToString.working\n ? isSetToString(value)\n : value instanceof Set;\n}\nexports.isSet = isSet;\n\nfunction isWeakMapToString(value) {\n return ObjectToString(value) === '[object WeakMap]';\n}\nisWeakMapToString.working = (\n typeof WeakMap !== 'undefined' &&\n isWeakMapToString(new WeakMap())\n);\nfunction isWeakMap(value) {\n if (typeof WeakMap === 'undefined') {\n return false;\n }\n\n return isWeakMapToString.working\n ? isWeakMapToString(value)\n : value instanceof WeakMap;\n}\nexports.isWeakMap = isWeakMap;\n\nfunction isWeakSetToString(value) {\n return ObjectToString(value) === '[object WeakSet]';\n}\nisWeakSetToString.working = (\n typeof WeakSet !== 'undefined' &&\n isWeakSetToString(new WeakSet())\n);\nfunction isWeakSet(value) {\n return isWeakSetToString(value);\n}\nexports.isWeakSet = isWeakSet;\n\nfunction isArrayBufferToString(value) {\n return ObjectToString(value) === '[object ArrayBuffer]';\n}\nisArrayBufferToString.working = (\n typeof ArrayBuffer !== 'undefined' &&\n isArrayBufferToString(new ArrayBuffer())\n);\nfunction isArrayBuffer(value) {\n if (typeof ArrayBuffer === 'undefined') {\n return false;\n }\n\n return isArrayBufferToString.working\n ? isArrayBufferToString(value)\n : value instanceof ArrayBuffer;\n}\nexports.isArrayBuffer = isArrayBuffer;\n\nfunction isDataViewToString(value) {\n return ObjectToString(value) === '[object DataView]';\n}\nisDataViewToString.working = (\n typeof ArrayBuffer !== 'undefined' &&\n typeof DataView !== 'undefined' &&\n isDataViewToString(new DataView(new ArrayBuffer(1), 0, 1))\n);\nfunction isDataView(value) {\n if (typeof DataView === 'undefined') {\n return false;\n }\n\n return isDataViewToString.working\n ? isDataViewToString(value)\n : value instanceof DataView;\n}\nexports.isDataView = isDataView;\n\n// Store a copy of SharedArrayBuffer in case it's deleted elsewhere\nvar SharedArrayBufferCopy = typeof SharedArrayBuffer !== 'undefined' ? SharedArrayBuffer : undefined;\nfunction isSharedArrayBufferToString(value) {\n return ObjectToString(value) === '[object SharedArrayBuffer]';\n}\nfunction isSharedArrayBuffer(value) {\n if (typeof SharedArrayBufferCopy === 'undefined') {\n return false;\n }\n\n if (typeof isSharedArrayBufferToString.working === 'undefined') {\n isSharedArrayBufferToString.working = isSharedArrayBufferToString(new SharedArrayBufferCopy());\n }\n\n return isSharedArrayBufferToString.working\n ? isSharedArrayBufferToString(value)\n : value instanceof SharedArrayBufferCopy;\n}\nexports.isSharedArrayBuffer = isSharedArrayBuffer;\n\nfunction isAsyncFunction(value) {\n return ObjectToString(value) === '[object AsyncFunction]';\n}\nexports.isAsyncFunction = isAsyncFunction;\n\nfunction isMapIterator(value) {\n return ObjectToString(value) === '[object Map Iterator]';\n}\nexports.isMapIterator = isMapIterator;\n\nfunction isSetIterator(value) {\n return ObjectToString(value) === '[object Set Iterator]';\n}\nexports.isSetIterator = isSetIterator;\n\nfunction isGeneratorObject(value) {\n return ObjectToString(value) === '[object Generator]';\n}\nexports.isGeneratorObject = isGeneratorObject;\n\nfunction isWebAssemblyCompiledModule(value) {\n return ObjectToString(value) === '[object WebAssembly.Module]';\n}\nexports.isWebAssemblyCompiledModule = isWebAssemblyCompiledModule;\n\nfunction isNumberObject(value) {\n return checkBoxedPrimitive(value, numberValue);\n}\nexports.isNumberObject = isNumberObject;\n\nfunction isStringObject(value) {\n return checkBoxedPrimitive(value, stringValue);\n}\nexports.isStringObject = isStringObject;\n\nfunction isBooleanObject(value) {\n return checkBoxedPrimitive(value, booleanValue);\n}\nexports.isBooleanObject = isBooleanObject;\n\nfunction isBigIntObject(value) {\n return BigIntSupported && checkBoxedPrimitive(value, bigIntValue);\n}\nexports.isBigIntObject = isBigIntObject;\n\nfunction isSymbolObject(value) {\n return SymbolSupported && checkBoxedPrimitive(value, symbolValue);\n}\nexports.isSymbolObject = isSymbolObject;\n\nfunction isBoxedPrimitive(value) {\n return (\n isNumberObject(value) ||\n isStringObject(value) ||\n isBooleanObject(value) ||\n isBigIntObject(value) ||\n isSymbolObject(value)\n );\n}\nexports.isBoxedPrimitive = isBoxedPrimitive;\n\nfunction isAnyArrayBuffer(value) {\n return typeof Uint8Array !== 'undefined' && (\n isArrayBuffer(value) ||\n isSharedArrayBuffer(value)\n );\n}\nexports.isAnyArrayBuffer = isAnyArrayBuffer;\n\n['isProxy', 'isExternal', 'isModuleNamespaceObject'].forEach(function(method) {\n Object.defineProperty(exports, method, {\n enumerable: false,\n value: function() {\n throw new Error(method + ' is not supported in userland');\n }\n });\n});\n","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\nvar getOwnPropertyDescriptors = Object.getOwnPropertyDescriptors ||\n function getOwnPropertyDescriptors(obj) {\n var keys = Object.keys(obj);\n var descriptors = {};\n for (var i = 0; i < keys.length; i++) {\n descriptors[keys[i]] = Object.getOwnPropertyDescriptor(obj, keys[i]);\n }\n return descriptors;\n };\n\nvar formatRegExp = /%[sdj%]/g;\nexports.format = function(f) {\n if (!isString(f)) {\n var objects = [];\n for (var i = 0; i < arguments.length; i++) {\n objects.push(inspect(arguments[i]));\n }\n return objects.join(' ');\n }\n\n var i = 1;\n var args = arguments;\n var len = args.length;\n var str = String(f).replace(formatRegExp, function(x) {\n if (x === '%%') return '%';\n if (i >= len) return x;\n switch (x) {\n case '%s': return String(args[i++]);\n case '%d': return Number(args[i++]);\n case '%j':\n try {\n return JSON.stringify(args[i++]);\n } catch (_) {\n return '[Circular]';\n }\n default:\n return x;\n }\n });\n for (var x = args[i]; i < len; x = args[++i]) {\n if (isNull(x) || !isObject(x)) {\n str += ' ' + x;\n } else {\n str += ' ' + inspect(x);\n }\n }\n return str;\n};\n\n\n// Mark that a method should not be used.\n// Returns a modified function which warns once by default.\n// If --no-deprecation is set, then it is a no-op.\nexports.deprecate = function(fn, msg) {\n if (typeof process !== 'undefined' && process.noDeprecation === true) {\n return fn;\n }\n\n // Allow for deprecating things in the process of starting up.\n if (typeof process === 'undefined') {\n return function() {\n return exports.deprecate(fn, msg).apply(this, arguments);\n };\n }\n\n var warned = false;\n function deprecated() {\n if (!warned) {\n if (process.throwDeprecation) {\n throw new Error(msg);\n } else if (process.traceDeprecation) {\n console.trace(msg);\n } else {\n console.error(msg);\n }\n warned = true;\n }\n return fn.apply(this, arguments);\n }\n\n return deprecated;\n};\n\n\nvar debugs = {};\nvar debugEnvRegex = /^$/;\n\nif (process.env.NODE_DEBUG) {\n var debugEnv = process.env.NODE_DEBUG;\n debugEnv = debugEnv.replace(/[|\\\\{}()[\\]^$+?.]/g, '\\\\$&')\n .replace(/\\*/g, '.*')\n .replace(/,/g, '$|^')\n .toUpperCase();\n debugEnvRegex = new RegExp('^' + debugEnv + '$', 'i');\n}\nexports.debuglog = function(set) {\n set = set.toUpperCase();\n if (!debugs[set]) {\n if (debugEnvRegex.test(set)) {\n var pid = process.pid;\n debugs[set] = function() {\n var msg = exports.format.apply(exports, arguments);\n console.error('%s %d: %s', set, pid, msg);\n };\n } else {\n debugs[set] = function() {};\n }\n }\n return debugs[set];\n};\n\n\n/**\n * Echos the value of a value. Trys to print the value out\n * in the best way possible given the different types.\n *\n * @param {Object} obj The object to print out.\n * @param {Object} opts Optional options object that alters the output.\n */\n/* legacy: obj, showHidden, depth, colors*/\nfunction inspect(obj, opts) {\n // default options\n var ctx = {\n seen: [],\n stylize: stylizeNoColor\n };\n // legacy...\n if (arguments.length >= 3) ctx.depth = arguments[2];\n if (arguments.length >= 4) ctx.colors = arguments[3];\n if (isBoolean(opts)) {\n // legacy...\n ctx.showHidden = opts;\n } else if (opts) {\n // got an \"options\" object\n exports._extend(ctx, opts);\n }\n // set default options\n if (isUndefined(ctx.showHidden)) ctx.showHidden = false;\n if (isUndefined(ctx.depth)) ctx.depth = 2;\n if (isUndefined(ctx.colors)) ctx.colors = false;\n if (isUndefined(ctx.customInspect)) ctx.customInspect = true;\n if (ctx.colors) ctx.stylize = stylizeWithColor;\n return formatValue(ctx, obj, ctx.depth);\n}\nexports.inspect = inspect;\n\n\n// http://en.wikipedia.org/wiki/ANSI_escape_code#graphics\ninspect.colors = {\n 'bold' : [1, 22],\n 'italic' : [3, 23],\n 'underline' : [4, 24],\n 'inverse' : [7, 27],\n 'white' : [37, 39],\n 'grey' : [90, 39],\n 'black' : [30, 39],\n 'blue' : [34, 39],\n 'cyan' : [36, 39],\n 'green' : [32, 39],\n 'magenta' : [35, 39],\n 'red' : [31, 39],\n 'yellow' : [33, 39]\n};\n\n// Don't use 'blue' not visible on cmd.exe\ninspect.styles = {\n 'special': 'cyan',\n 'number': 'yellow',\n 'boolean': 'yellow',\n 'undefined': 'grey',\n 'null': 'bold',\n 'string': 'green',\n 'date': 'magenta',\n // \"name\": intentionally not styling\n 'regexp': 'red'\n};\n\n\nfunction stylizeWithColor(str, styleType) {\n var style = inspect.styles[styleType];\n\n if (style) {\n return '\\u001b[' + inspect.colors[style][0] + 'm' + str +\n '\\u001b[' + inspect.colors[style][1] + 'm';\n } else {\n return str;\n }\n}\n\n\nfunction stylizeNoColor(str, styleType) {\n return str;\n}\n\n\nfunction arrayToHash(array) {\n var hash = {};\n\n array.forEach(function(val, idx) {\n hash[val] = true;\n });\n\n return hash;\n}\n\n\nfunction formatValue(ctx, value, recurseTimes) {\n // Provide a hook for user-specified inspect functions.\n // Check that value is an object with an inspect function on it\n if (ctx.customInspect &&\n value &&\n isFunction(value.inspect) &&\n // Filter out the util module, it's inspect function is special\n value.inspect !== exports.inspect &&\n // Also filter out any prototype objects using the circular check.\n !(value.constructor && value.constructor.prototype === value)) {\n var ret = value.inspect(recurseTimes, ctx);\n if (!isString(ret)) {\n ret = formatValue(ctx, ret, recurseTimes);\n }\n return ret;\n }\n\n // Primitive types cannot have properties\n var primitive = formatPrimitive(ctx, value);\n if (primitive) {\n return primitive;\n }\n\n // Look up the keys of the object.\n var keys = Object.keys(value);\n var visibleKeys = arrayToHash(keys);\n\n if (ctx.showHidden) {\n keys = Object.getOwnPropertyNames(value);\n }\n\n // IE doesn't make error fields non-enumerable\n // http://msdn.microsoft.com/en-us/library/ie/dww52sbt(v=vs.94).aspx\n if (isError(value)\n && (keys.indexOf('message') >= 0 || keys.indexOf('description') >= 0)) {\n return formatError(value);\n }\n\n // Some type of object without properties can be shortcutted.\n if (keys.length === 0) {\n if (isFunction(value)) {\n var name = value.name ? ': ' + value.name : '';\n return ctx.stylize('[Function' + name + ']', 'special');\n }\n if (isRegExp(value)) {\n return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp');\n }\n if (isDate(value)) {\n return ctx.stylize(Date.prototype.toString.call(value), 'date');\n }\n if (isError(value)) {\n return formatError(value);\n }\n }\n\n var base = '', array = false, braces = ['{', '}'];\n\n // Make Array say that they are Array\n if (isArray(value)) {\n array = true;\n braces = ['[', ']'];\n }\n\n // Make functions say that they are functions\n if (isFunction(value)) {\n var n = value.name ? ': ' + value.name : '';\n base = ' [Function' + n + ']';\n }\n\n // Make RegExps say that they are RegExps\n if (isRegExp(value)) {\n base = ' ' + RegExp.prototype.toString.call(value);\n }\n\n // Make dates with properties first say the date\n if (isDate(value)) {\n base = ' ' + Date.prototype.toUTCString.call(value);\n }\n\n // Make error with message first say the error\n if (isError(value)) {\n base = ' ' + formatError(value);\n }\n\n if (keys.length === 0 && (!array || value.length == 0)) {\n return braces[0] + base + braces[1];\n }\n\n if (recurseTimes < 0) {\n if (isRegExp(value)) {\n return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp');\n } else {\n return ctx.stylize('[Object]', 'special');\n }\n }\n\n ctx.seen.push(value);\n\n var output;\n if (array) {\n output = formatArray(ctx, value, recurseTimes, visibleKeys, keys);\n } else {\n output = keys.map(function(key) {\n return formatProperty(ctx, value, recurseTimes, visibleKeys, key, array);\n });\n }\n\n ctx.seen.pop();\n\n return reduceToSingleString(output, base, braces);\n}\n\n\nfunction formatPrimitive(ctx, value) {\n if (isUndefined(value))\n return ctx.stylize('undefined', 'undefined');\n if (isString(value)) {\n var simple = '\\'' + JSON.stringify(value).replace(/^\"|\"$/g, '')\n .replace(/'/g, \"\\\\'\")\n .replace(/\\\\\"/g, '\"') + '\\'';\n return ctx.stylize(simple, 'string');\n }\n if (isNumber(value))\n return ctx.stylize('' + value, 'number');\n if (isBoolean(value))\n return ctx.stylize('' + value, 'boolean');\n // For some reason typeof null is \"object\", so special case here.\n if (isNull(value))\n return ctx.stylize('null', 'null');\n}\n\n\nfunction formatError(value) {\n return '[' + Error.prototype.toString.call(value) + ']';\n}\n\n\nfunction formatArray(ctx, value, recurseTimes, visibleKeys, keys) {\n var output = [];\n for (var i = 0, l = value.length; i < l; ++i) {\n if (hasOwnProperty(value, String(i))) {\n output.push(formatProperty(ctx, value, recurseTimes, visibleKeys,\n String(i), true));\n } else {\n output.push('');\n }\n }\n keys.forEach(function(key) {\n if (!key.match(/^\\d+$/)) {\n output.push(formatProperty(ctx, value, recurseTimes, visibleKeys,\n key, true));\n }\n });\n return output;\n}\n\n\nfunction formatProperty(ctx, value, recurseTimes, visibleKeys, key, array) {\n var name, str, desc;\n desc = Object.getOwnPropertyDescriptor(value, key) || { value: value[key] };\n if (desc.get) {\n if (desc.set) {\n str = ctx.stylize('[Getter/Setter]', 'special');\n } else {\n str = ctx.stylize('[Getter]', 'special');\n }\n } else {\n if (desc.set) {\n str = ctx.stylize('[Setter]', 'special');\n }\n }\n if (!hasOwnProperty(visibleKeys, key)) {\n name = '[' + key + ']';\n }\n if (!str) {\n if (ctx.seen.indexOf(desc.value) < 0) {\n if (isNull(recurseTimes)) {\n str = formatValue(ctx, desc.value, null);\n } else {\n str = formatValue(ctx, desc.value, recurseTimes - 1);\n }\n if (str.indexOf('\\n') > -1) {\n if (array) {\n str = str.split('\\n').map(function(line) {\n return ' ' + line;\n }).join('\\n').substr(2);\n } else {\n str = '\\n' + str.split('\\n').map(function(line) {\n return ' ' + line;\n }).join('\\n');\n }\n }\n } else {\n str = ctx.stylize('[Circular]', 'special');\n }\n }\n if (isUndefined(name)) {\n if (array && key.match(/^\\d+$/)) {\n return str;\n }\n name = JSON.stringify('' + key);\n if (name.match(/^\"([a-zA-Z_][a-zA-Z_0-9]*)\"$/)) {\n name = name.substr(1, name.length - 2);\n name = ctx.stylize(name, 'name');\n } else {\n name = name.replace(/'/g, \"\\\\'\")\n .replace(/\\\\\"/g, '\"')\n .replace(/(^\"|\"$)/g, \"'\");\n name = ctx.stylize(name, 'string');\n }\n }\n\n return name + ': ' + str;\n}\n\n\nfunction reduceToSingleString(output, base, braces) {\n var numLinesEst = 0;\n var length = output.reduce(function(prev, cur) {\n numLinesEst++;\n if (cur.indexOf('\\n') >= 0) numLinesEst++;\n return prev + cur.replace(/\\u001b\\[\\d\\d?m/g, '').length + 1;\n }, 0);\n\n if (length > 60) {\n return braces[0] +\n (base === '' ? '' : base + '\\n ') +\n ' ' +\n output.join(',\\n ') +\n ' ' +\n braces[1];\n }\n\n return braces[0] + base + ' ' + output.join(', ') + ' ' + braces[1];\n}\n\n\n// NOTE: These type checking functions intentionally don't use `instanceof`\n// because it is fragile and can be easily faked with `Object.create()`.\nexports.types = require('./support/types');\n\nfunction isArray(ar) {\n return Array.isArray(ar);\n}\nexports.isArray = isArray;\n\nfunction isBoolean(arg) {\n return typeof arg === 'boolean';\n}\nexports.isBoolean = isBoolean;\n\nfunction isNull(arg) {\n return arg === null;\n}\nexports.isNull = isNull;\n\nfunction isNullOrUndefined(arg) {\n return arg == null;\n}\nexports.isNullOrUndefined = isNullOrUndefined;\n\nfunction isNumber(arg) {\n return typeof arg === 'number';\n}\nexports.isNumber = isNumber;\n\nfunction isString(arg) {\n return typeof arg === 'string';\n}\nexports.isString = isString;\n\nfunction isSymbol(arg) {\n return typeof arg === 'symbol';\n}\nexports.isSymbol = isSymbol;\n\nfunction isUndefined(arg) {\n return arg === void 0;\n}\nexports.isUndefined = isUndefined;\n\nfunction isRegExp(re) {\n return isObject(re) && objectToString(re) === '[object RegExp]';\n}\nexports.isRegExp = isRegExp;\nexports.types.isRegExp = isRegExp;\n\nfunction isObject(arg) {\n return typeof arg === 'object' && arg !== null;\n}\nexports.isObject = isObject;\n\nfunction isDate(d) {\n return isObject(d) && objectToString(d) === '[object Date]';\n}\nexports.isDate = isDate;\nexports.types.isDate = isDate;\n\nfunction isError(e) {\n return isObject(e) &&\n (objectToString(e) === '[object Error]' || e instanceof Error);\n}\nexports.isError = isError;\nexports.types.isNativeError = isError;\n\nfunction isFunction(arg) {\n return typeof arg === 'function';\n}\nexports.isFunction = isFunction;\n\nfunction isPrimitive(arg) {\n return arg === null ||\n typeof arg === 'boolean' ||\n typeof arg === 'number' ||\n typeof arg === 'string' ||\n typeof arg === 'symbol' || // ES6 symbol\n typeof arg === 'undefined';\n}\nexports.isPrimitive = isPrimitive;\n\nexports.isBuffer = require('./support/isBuffer');\n\nfunction objectToString(o) {\n return Object.prototype.toString.call(o);\n}\n\n\nfunction pad(n) {\n return n < 10 ? '0' + n.toString(10) : n.toString(10);\n}\n\n\nvar months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep',\n 'Oct', 'Nov', 'Dec'];\n\n// 26 Feb 16:19:34\nfunction timestamp() {\n var d = new Date();\n var time = [pad(d.getHours()),\n pad(d.getMinutes()),\n pad(d.getSeconds())].join(':');\n return [d.getDate(), months[d.getMonth()], time].join(' ');\n}\n\n\n// log is just a thin wrapper to console.log that prepends a timestamp\nexports.log = function() {\n console.log('%s - %s', timestamp(), exports.format.apply(exports, arguments));\n};\n\n\n/**\n * Inherit the prototype methods from one constructor into another.\n *\n * The Function.prototype.inherits from lang.js rewritten as a standalone\n * function (not on Function.prototype). NOTE: If this file is to be loaded\n * during bootstrapping this function needs to be rewritten using some native\n * functions as prototype setup using normal JavaScript does not work as\n * expected during bootstrapping (see mirror.js in r114903).\n *\n * @param {function} ctor Constructor function which needs to inherit the\n * prototype.\n * @param {function} superCtor Constructor function to inherit prototype from.\n */\nexports.inherits = require('inherits');\n\nexports._extend = function(origin, add) {\n // Don't do anything if add isn't an object\n if (!add || !isObject(add)) return origin;\n\n var keys = Object.keys(add);\n var i = keys.length;\n while (i--) {\n origin[keys[i]] = add[keys[i]];\n }\n return origin;\n};\n\nfunction hasOwnProperty(obj, prop) {\n return Object.prototype.hasOwnProperty.call(obj, prop);\n}\n\nvar kCustomPromisifiedSymbol = typeof Symbol !== 'undefined' ? Symbol('util.promisify.custom') : undefined;\n\nexports.promisify = function promisify(original) {\n if (typeof original !== 'function')\n throw new TypeError('The \"original\" argument must be of type Function');\n\n if (kCustomPromisifiedSymbol && original[kCustomPromisifiedSymbol]) {\n var fn = original[kCustomPromisifiedSymbol];\n if (typeof fn !== 'function') {\n throw new TypeError('The \"util.promisify.custom\" argument must be of type Function');\n }\n Object.defineProperty(fn, kCustomPromisifiedSymbol, {\n value: fn, enumerable: false, writable: false, configurable: true\n });\n return fn;\n }\n\n function fn() {\n var promiseResolve, promiseReject;\n var promise = new Promise(function (resolve, reject) {\n promiseResolve = resolve;\n promiseReject = reject;\n });\n\n var args = [];\n for (var i = 0; i < arguments.length; i++) {\n args.push(arguments[i]);\n }\n args.push(function (err, value) {\n if (err) {\n promiseReject(err);\n } else {\n promiseResolve(value);\n }\n });\n\n try {\n original.apply(this, args);\n } catch (err) {\n promiseReject(err);\n }\n\n return promise;\n }\n\n Object.setPrototypeOf(fn, Object.getPrototypeOf(original));\n\n if (kCustomPromisifiedSymbol) Object.defineProperty(fn, kCustomPromisifiedSymbol, {\n value: fn, enumerable: false, writable: false, configurable: true\n });\n return Object.defineProperties(\n fn,\n getOwnPropertyDescriptors(original)\n );\n}\n\nexports.promisify.custom = kCustomPromisifiedSymbol\n\nfunction callbackifyOnRejected(reason, cb) {\n // `!reason` guard inspired by bluebird (Ref: https://goo.gl/t5IS6M).\n // Because `null` is a special error value in callbacks which means \"no error\n // occurred\", we error-wrap so the callback consumer can distinguish between\n // \"the promise rejected with null\" or \"the promise fulfilled with undefined\".\n if (!reason) {\n var newReason = new Error('Promise was rejected with a falsy value');\n newReason.reason = reason;\n reason = newReason;\n }\n return cb(reason);\n}\n\nfunction callbackify(original) {\n if (typeof original !== 'function') {\n throw new TypeError('The \"original\" argument must be of type Function');\n }\n\n // We DO NOT return the promise as it gives the user a false sense that\n // the promise is actually somehow related to the callback's execution\n // and that the callback throwing will reject the promise.\n function callbackified() {\n var args = [];\n for (var i = 0; i < arguments.length; i++) {\n args.push(arguments[i]);\n }\n\n var maybeCb = args.pop();\n if (typeof maybeCb !== 'function') {\n throw new TypeError('The last argument must be of type Function');\n }\n var self = this;\n var cb = function() {\n return maybeCb.apply(self, arguments);\n };\n // In true node style we process the callback on `nextTick` with all the\n // implications (stack, `uncaughtException`, `async_hooks`)\n original.apply(this, args)\n .then(function(ret) { process.nextTick(cb.bind(null, null, ret)) },\n function(rej) { process.nextTick(callbackifyOnRejected.bind(null, rej, cb)) });\n }\n\n Object.setPrototypeOf(callbackified, Object.getPrototypeOf(original));\n Object.defineProperties(callbackified,\n getOwnPropertyDescriptors(original));\n return callbackified;\n}\nexports.callbackify = callbackify;\n","'use strict';\n\nvar numberIsNaN = function (value) {\n\treturn value !== value;\n};\n\nmodule.exports = function is(a, b) {\n\tif (a === 0 && b === 0) {\n\t\treturn 1 / a === 1 / b;\n\t}\n\tif (a === b) {\n\t\treturn true;\n\t}\n\tif (numberIsNaN(a) && numberIsNaN(b)) {\n\t\treturn true;\n\t}\n\treturn false;\n};\n\n","'use strict';\n\nvar define = require('define-properties');\nvar callBind = require('call-bind');\n\nvar implementation = require('./implementation');\nvar getPolyfill = require('./polyfill');\nvar shim = require('./shim');\n\nvar polyfill = callBind(getPolyfill(), Object);\n\ndefine(polyfill, {\n\tgetPolyfill: getPolyfill,\n\timplementation: implementation,\n\tshim: shim\n});\n\nmodule.exports = polyfill;\n","'use strict';\n\nvar implementation = require('./implementation');\n\nmodule.exports = function getPolyfill() {\n\treturn typeof Object.is === 'function' ? Object.is : implementation;\n};\n","'use strict';\n\nvar getPolyfill = require('./polyfill');\nvar define = require('define-properties');\n\nmodule.exports = function shimObjectIs() {\n\tvar polyfill = getPolyfill();\n\tdefine(Object, { is: polyfill }, {\n\t\tis: function testObjectIs() {\n\t\t\treturn Object.is !== polyfill;\n\t\t}\n\t});\n\treturn polyfill;\n};\n","'use strict';\n\nvar keysShim;\nif (!Object.keys) {\n\t// modified from https://github.com/es-shims/es5-shim\n\tvar has = Object.prototype.hasOwnProperty;\n\tvar toStr = Object.prototype.toString;\n\tvar isArgs = require('./isArguments'); // eslint-disable-line global-require\n\tvar isEnumerable = Object.prototype.propertyIsEnumerable;\n\tvar hasDontEnumBug = !isEnumerable.call({ toString: null }, 'toString');\n\tvar hasProtoEnumBug = isEnumerable.call(function () {}, 'prototype');\n\tvar dontEnums = [\n\t\t'toString',\n\t\t'toLocaleString',\n\t\t'valueOf',\n\t\t'hasOwnProperty',\n\t\t'isPrototypeOf',\n\t\t'propertyIsEnumerable',\n\t\t'constructor'\n\t];\n\tvar equalsConstructorPrototype = function (o) {\n\t\tvar ctor = o.constructor;\n\t\treturn ctor && ctor.prototype === o;\n\t};\n\tvar excludedKeys = {\n\t\t$applicationCache: true,\n\t\t$console: true,\n\t\t$external: true,\n\t\t$frame: true,\n\t\t$frameElement: true,\n\t\t$frames: true,\n\t\t$innerHeight: true,\n\t\t$innerWidth: true,\n\t\t$onmozfullscreenchange: true,\n\t\t$onmozfullscreenerror: true,\n\t\t$outerHeight: true,\n\t\t$outerWidth: true,\n\t\t$pageXOffset: true,\n\t\t$pageYOffset: true,\n\t\t$parent: true,\n\t\t$scrollLeft: true,\n\t\t$scrollTop: true,\n\t\t$scrollX: true,\n\t\t$scrollY: true,\n\t\t$self: true,\n\t\t$webkitIndexedDB: true,\n\t\t$webkitStorageInfo: true,\n\t\t$window: true\n\t};\n\tvar hasAutomationEqualityBug = (function () {\n\t\t/* global window */\n\t\tif (typeof window === 'undefined') { return false; }\n\t\tfor (var k in window) {\n\t\t\ttry {\n\t\t\t\tif (!excludedKeys['$' + k] && has.call(window, k) && window[k] !== null && typeof window[k] === 'object') {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tequalsConstructorPrototype(window[k]);\n\t\t\t\t\t} catch (e) {\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} catch (e) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}());\n\tvar equalsConstructorPrototypeIfNotBuggy = function (o) {\n\t\t/* global window */\n\t\tif (typeof window === 'undefined' || !hasAutomationEqualityBug) {\n\t\t\treturn equalsConstructorPrototype(o);\n\t\t}\n\t\ttry {\n\t\t\treturn equalsConstructorPrototype(o);\n\t\t} catch (e) {\n\t\t\treturn false;\n\t\t}\n\t};\n\n\tkeysShim = function keys(object) {\n\t\tvar isObject = object !== null && typeof object === 'object';\n\t\tvar isFunction = toStr.call(object) === '[object Function]';\n\t\tvar isArguments = isArgs(object);\n\t\tvar isString = isObject && toStr.call(object) === '[object String]';\n\t\tvar theKeys = [];\n\n\t\tif (!isObject && !isFunction && !isArguments) {\n\t\t\tthrow new TypeError('Object.keys called on a non-object');\n\t\t}\n\n\t\tvar skipProto = hasProtoEnumBug && isFunction;\n\t\tif (isString && object.length > 0 && !has.call(object, 0)) {\n\t\t\tfor (var i = 0; i < object.length; ++i) {\n\t\t\t\ttheKeys.push(String(i));\n\t\t\t}\n\t\t}\n\n\t\tif (isArguments && object.length > 0) {\n\t\t\tfor (var j = 0; j < object.length; ++j) {\n\t\t\t\ttheKeys.push(String(j));\n\t\t\t}\n\t\t} else {\n\t\t\tfor (var name in object) {\n\t\t\t\tif (!(skipProto && name === 'prototype') && has.call(object, name)) {\n\t\t\t\t\ttheKeys.push(String(name));\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (hasDontEnumBug) {\n\t\t\tvar skipConstructor = equalsConstructorPrototypeIfNotBuggy(object);\n\n\t\t\tfor (var k = 0; k < dontEnums.length; ++k) {\n\t\t\t\tif (!(skipConstructor && dontEnums[k] === 'constructor') && has.call(object, dontEnums[k])) {\n\t\t\t\t\ttheKeys.push(dontEnums[k]);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn theKeys;\n\t};\n}\nmodule.exports = keysShim;\n","'use strict';\n\nvar slice = Array.prototype.slice;\nvar isArgs = require('./isArguments');\n\nvar origKeys = Object.keys;\nvar keysShim = origKeys ? function keys(o) { return origKeys(o); } : require('./implementation');\n\nvar originalKeys = Object.keys;\n\nkeysShim.shim = function shimObjectKeys() {\n\tif (Object.keys) {\n\t\tvar keysWorksWithArguments = (function () {\n\t\t\t// Safari 5.0 bug\n\t\t\tvar args = Object.keys(arguments);\n\t\t\treturn args && args.length === arguments.length;\n\t\t}(1, 2));\n\t\tif (!keysWorksWithArguments) {\n\t\t\tObject.keys = function keys(object) { // eslint-disable-line func-name-matching\n\t\t\t\tif (isArgs(object)) {\n\t\t\t\t\treturn originalKeys(slice.call(object));\n\t\t\t\t}\n\t\t\t\treturn originalKeys(object);\n\t\t\t};\n\t\t}\n\t} else {\n\t\tObject.keys = keysShim;\n\t}\n\treturn Object.keys || keysShim;\n};\n\nmodule.exports = keysShim;\n","'use strict';\n\nvar toStr = Object.prototype.toString;\n\nmodule.exports = function isArguments(value) {\n\tvar str = toStr.call(value);\n\tvar isArgs = str === '[object Arguments]';\n\tif (!isArgs) {\n\t\tisArgs = str !== '[object Array]' &&\n\t\t\tvalue !== null &&\n\t\t\ttypeof value === 'object' &&\n\t\t\ttypeof value.length === 'number' &&\n\t\t\tvalue.length >= 0 &&\n\t\t\ttoStr.call(value.callee) === '[object Function]';\n\t}\n\treturn isArgs;\n};\n","// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n","const debug = require('../internal/debug')\nconst { MAX_LENGTH, MAX_SAFE_INTEGER } = require('../internal/constants')\nconst { re, t } = require('../internal/re')\n\nconst parseOptions = require('../internal/parse-options')\nconst { compareIdentifiers } = require('../internal/identifiers')\nclass SemVer {\n constructor (version, options) {\n options = parseOptions(options)\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","const SemVer = require('../classes/semver')\nconst major = (a, loose) => new SemVer(a, loose).major\nmodule.exports = major\n","const {MAX_LENGTH} = require('../internal/constants')\nconst { re, t } = require('../internal/re')\nconst SemVer = require('../classes/semver')\n\nconst parseOptions = require('../internal/parse-options')\nconst parse = (version, options) => {\n options = parseOptions(options)\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 parse = require('./parse')\nconst valid = (version, options) => {\n const v = parse(version, options)\n return v ? v.version : null\n}\nmodule.exports = valid\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","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 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","// parse out just the options we care about so we always get a consistent\n// obj with keys in a consistent order.\nconst opts = ['includePrerelease', 'loose', 'rtl']\nconst parseOptions = options =>\n !options ? {}\n : typeof options !== 'object' ? { loose: true }\n : opts.filter(k => options[k]).reduce((options, k) => {\n options[k] = true\n return options\n }, {})\nmodule.exports = parseOptions\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","\"use strict\";\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 indexByIdentifier = getIndexByIdentifier(identifier);\n var obj = {\n css: item[1],\n media: item[2],\n sourceMap: item[3],\n supports: item[4],\n layer: item[5]\n };\n\n if (indexByIdentifier !== -1) {\n stylesInDOM[indexByIdentifier].references++;\n stylesInDOM[indexByIdentifier].updater(obj);\n } else {\n var updater = addElementStyle(obj, options);\n options.byIndex = i;\n stylesInDOM.splice(i, 0, {\n identifier: identifier,\n updater: updater,\n references: 1\n });\n }\n\n identifiers.push(identifier);\n }\n\n return identifiers;\n}\n\nfunction addElementStyle(obj, options) {\n var api = options.domAPI(options);\n api.update(obj);\n\n var updater = function updater(newObj) {\n if (newObj) {\n if (newObj.css === obj.css && newObj.media === obj.media && newObj.sourceMap === obj.sourceMap && newObj.supports === obj.supports && newObj.layer === obj.layer) {\n return;\n }\n\n api.update(obj = newObj);\n } else {\n api.remove();\n }\n };\n\n return updater;\n}\n\nmodule.exports = function (list, options) {\n options = options || {};\n list = list || [];\n var lastIdentifiers = modulesToDom(list, options);\n return function update(newList) {\n newList = newList || [];\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\nvar memo = {};\n/* istanbul ignore next */\n\nfunction getTarget(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/* istanbul ignore next */\n\n\nfunction insertBySelector(insert, style) {\n var target = getTarget(insert);\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\nmodule.exports = insertBySelector;","\"use strict\";\n\n/* istanbul ignore next */\nfunction insertStyleElement(options) {\n var element = document.createElement(\"style\");\n options.setAttributes(element, options.attributes);\n options.insert(element, options.options);\n return element;\n}\n\nmodule.exports = insertStyleElement;","\"use strict\";\n\n/* istanbul ignore next */\nfunction setAttributesWithoutAttributes(styleElement) {\n var nonce = typeof __webpack_nonce__ !== \"undefined\" ? __webpack_nonce__ : null;\n\n if (nonce) {\n styleElement.setAttribute(\"nonce\", nonce);\n }\n}\n\nmodule.exports = setAttributesWithoutAttributes;","\"use strict\";\n\n/* istanbul ignore next */\nfunction apply(styleElement, options, obj) {\n var css = \"\";\n\n if (obj.supports) {\n css += \"@supports (\".concat(obj.supports, \") {\");\n }\n\n if (obj.media) {\n css += \"@media \".concat(obj.media, \" {\");\n }\n\n var needLayer = typeof obj.layer !== \"undefined\";\n\n if (needLayer) {\n css += \"@layer\".concat(obj.layer.length > 0 ? \" \".concat(obj.layer) : \"\", \" {\");\n }\n\n css += obj.css;\n\n if (needLayer) {\n css += \"}\";\n }\n\n if (obj.media) {\n css += \"}\";\n }\n\n if (obj.supports) {\n css += \"}\";\n }\n\n var sourceMap = obj.sourceMap;\n\n if (sourceMap && typeof btoa !== \"undefined\") {\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 options.styleTagTransform(css, styleElement, options.options);\n}\n\nfunction removeStyleElement(styleElement) {\n // istanbul ignore if\n if (styleElement.parentNode === null) {\n return false;\n }\n\n styleElement.parentNode.removeChild(styleElement);\n}\n/* istanbul ignore next */\n\n\nfunction domAPI(options) {\n var styleElement = options.insertStyleElement(options);\n return {\n update: function update(obj) {\n apply(styleElement, options, obj);\n },\n remove: function remove() {\n removeStyleElement(styleElement);\n }\n };\n}\n\nmodule.exports = domAPI;","\"use strict\";\n\n/* istanbul ignore next */\nfunction styleTagTransform(css, styleElement) {\n if (styleElement.styleSheet) {\n styleElement.styleSheet.cssText = css;\n } else {\n while (styleElement.firstChild) {\n styleElement.removeChild(styleElement.firstChild);\n }\n\n styleElement.appendChild(document.createTextNode(css));\n }\n}\n\nmodule.exports = styleTagTransform;","export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}","export default function _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}","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\nexport default function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\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","function getInternetExplorerVersion() {\n var ua = window.navigator.userAgent;\n var msie = ua.indexOf('MSIE ');\n\n if (msie > 0) {\n // IE 10 or older => return version number\n return parseInt(ua.substring(msie + 5, ua.indexOf('.', msie)), 10);\n }\n\n var trident = ua.indexOf('Trident/');\n\n if (trident > 0) {\n // IE 11 => return version number\n var rv = ua.indexOf('rv:');\n return parseInt(ua.substring(rv + 3, ua.indexOf('.', rv)), 10);\n }\n\n var edge = ua.indexOf('Edge/');\n\n if (edge > 0) {\n // Edge (IE 12+) => return version number\n return parseInt(ua.substring(edge + 5, ua.indexOf('.', edge)), 10);\n } // other browser\n\n\n return -1;\n}\n\n//\nvar isIE;\n\nfunction initCompat() {\n if (!initCompat.init) {\n initCompat.init = true;\n isIE = getInternetExplorerVersion() !== -1;\n }\n}\n\nvar script = {\n name: 'ResizeObserver',\n props: {\n emitOnMount: {\n type: Boolean,\n default: false\n },\n ignoreWidth: {\n type: Boolean,\n default: false\n },\n ignoreHeight: {\n type: Boolean,\n default: false\n }\n },\n mounted: function mounted() {\n var _this = this;\n\n initCompat();\n this.$nextTick(function () {\n _this._w = _this.$el.offsetWidth;\n _this._h = _this.$el.offsetHeight;\n\n if (_this.emitOnMount) {\n _this.emitSize();\n }\n });\n var object = document.createElement('object');\n this._resizeObject = object;\n object.setAttribute('aria-hidden', 'true');\n object.setAttribute('tabindex', -1);\n object.onload = this.addResizeHandlers;\n object.type = 'text/html';\n\n if (isIE) {\n this.$el.appendChild(object);\n }\n\n object.data = 'about:blank';\n\n if (!isIE) {\n this.$el.appendChild(object);\n }\n },\n beforeDestroy: function beforeDestroy() {\n this.removeResizeHandlers();\n },\n methods: {\n compareAndNotify: function compareAndNotify() {\n if (!this.ignoreWidth && this._w !== this.$el.offsetWidth || !this.ignoreHeight && this._h !== this.$el.offsetHeight) {\n this._w = this.$el.offsetWidth;\n this._h = this.$el.offsetHeight;\n this.emitSize();\n }\n },\n emitSize: function emitSize() {\n this.$emit('notify', {\n width: this._w,\n height: this._h\n });\n },\n addResizeHandlers: function addResizeHandlers() {\n this._resizeObject.contentDocument.defaultView.addEventListener('resize', this.compareAndNotify);\n\n this.compareAndNotify();\n },\n removeResizeHandlers: function removeResizeHandlers() {\n if (this._resizeObject && this._resizeObject.onload) {\n if (!isIE && this._resizeObject.contentDocument) {\n this._resizeObject.contentDocument.defaultView.removeEventListener('resize', this.compareAndNotify);\n }\n\n this.$el.removeChild(this._resizeObject);\n this._resizeObject.onload = null;\n this._resizeObject = null;\n }\n }\n }\n};\n\nfunction normalizeComponent(template, style, script, scopeId, isFunctionalTemplate, moduleIdentifier\n/* server only */\n, shadowMode, createInjector, createInjectorSSR, createInjectorShadow) {\n if (typeof shadowMode !== 'boolean') {\n createInjectorSSR = createInjector;\n createInjector = shadowMode;\n shadowMode = false;\n } // Vue.extend constructor export interop.\n\n\n var options = typeof script === 'function' ? script.options : script; // render functions\n\n if (template && template.render) {\n options.render = template.render;\n options.staticRenderFns = template.staticRenderFns;\n options._compiled = true; // functional template\n\n if (isFunctionalTemplate) {\n options.functional = true;\n }\n } // scopedId\n\n\n if (scopeId) {\n options._scopeId = scopeId;\n }\n\n var hook;\n\n if (moduleIdentifier) {\n // server build\n hook = function hook(context) {\n // 2.3 injection\n context = 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\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__;\n } // inject component styles\n\n\n if (style) {\n style.call(this, createInjectorSSR(context));\n } // register component module identifier for async chunk inference\n\n\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier);\n }\n }; // used by ssr in case component is cached and beforeCreate\n // never gets called\n\n\n options._ssrRegister = hook;\n } else if (style) {\n hook = shadowMode ? function (context) {\n style.call(this, createInjectorShadow(context, this.$root.$options.shadowRoot));\n } : function (context) {\n style.call(this, createInjector(context));\n };\n }\n\n if (hook) {\n if (options.functional) {\n // register for functional component in vue file\n var originalRender = options.render;\n\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 ? [].concat(existing, hook) : [hook];\n }\n }\n\n return script;\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: \"resize-observer\",\n attrs: {\n tabindex: \"-1\"\n }\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__ = \"data-v-8859cc6c\";\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__ = /*#__PURE__*/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\nfunction install(Vue) {\n // eslint-disable-next-line vue/component-definition-name-casing\n Vue.component('resize-observer', __vue_component__);\n Vue.component('ResizeObserver', __vue_component__);\n}\n\nvar plugin = {\n // eslint-disable-next-line no-undef\n version: \"1.0.1\",\n install: install\n};\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 { __vue_component__ as ResizeObserver, install };\n//# sourceMappingURL=vue-resize.esm.js.map\n","import _typeof from '@babel/runtime/helpers/typeof';\nimport _defineProperty from '@babel/runtime/helpers/defineProperty';\nimport _classCallCheck from '@babel/runtime/helpers/classCallCheck';\nimport _createClass from '@babel/runtime/helpers/createClass';\nimport Popper from 'popper.js';\nimport isEqual from 'lodash/isEqual';\nimport { ResizeObserver } from 'vue-resize';\nimport merge from 'lodash/merge';\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\nfunction ownKeys$2(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread$2(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$2(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$2(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\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 = /*#__PURE__*/function () {\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 * @param {string} [options.ariaId] Id used for accessibility\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 = _objectSpread$2(_objectSpread$2({}, 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(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 var _this2 = this;\n\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 = this.options.ariaId || \"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', function (evt) {\n return _this2._scheduleHide(reference, _this2.options.delay, _this2.options, evt);\n });\n tooltipNode.addEventListener('click', function (evt) {\n return _this2._scheduleHide(reference, _this2.options.delay, _this2.options, evt);\n });\n } // return the generated tooltip node\n\n\n return tooltipNode;\n }\n }, {\n key: \"_setContent\",\n value: function _setContent(content, options) {\n var _this3 = this;\n\n this.asyncContent = false;\n\n this._applyContent(content, options).then(function () {\n if (!_this3.popperInstance) return;\n\n _this3.popperInstance.update();\n });\n }\n }, {\n key: \"_applyContent\",\n value: function _applyContent(title, options) {\n var _this4 = this;\n\n return new Promise(function (resolve, reject) {\n var allowHtml = options.html;\n var rootNode = _this4._tooltipNode;\n if (!rootNode) return;\n var titleNode = rootNode.querySelector(_this4.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 _this4.asyncContent = true;\n options.loadingClass && addClasses(rootNode, options.loadingClass);\n\n if (options.loadingContent) {\n _this4._applyContent(options.loadingContent, options);\n }\n\n result.then(function (asyncResult) {\n options.loadingClass && removeClasses(rootNode, options.loadingClass);\n return _this4._applyContent(asyncResult, options);\n }).then(resolve).catch(reject);\n } else {\n _this4._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 _this5 = 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 = _objectSpread$2(_objectSpread$2({}, options.popperOptions), {}, {\n placement: options.placement\n });\n\n popperOptions.modifiers = _objectSpread$2(_objectSpread$2({}, 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 (!_this5._isDisposed && _this5.popperInstance) {\n _this5.popperInstance.update(); // Show the tooltip\n\n\n requestAnimationFrame(function () {\n if (!_this5._isDisposed) {\n _this5._isOpen && tooltipNode.setAttribute('aria-hidden', 'false');\n } else {\n _this5.dispose();\n }\n });\n } else {\n _this5.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 _this6 = 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 if (this.popperInstance) {\n this.popperInstance.disableEventListeners();\n }\n\n clearTimeout(this._disposeTimer);\n var disposeTime = directive.options.disposeTimeout;\n\n if (disposeTime !== null) {\n this._disposeTimer = setTimeout(function () {\n if (_this6._tooltipNode) {\n _this6._tooltipNode.removeEventListener('mouseenter', _this6.hide);\n\n _this6._tooltipNode.removeEventListener('click', _this6.hide); // Don't remove popper instance, just the HTML element\n\n\n _this6._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 _this7 = 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 _this7.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 _this8 = 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 (_this8.options.hideOnTargetClick) oppositeEvents.push('click');\n break;\n\n case 'focus':\n directEvents.push('focus');\n oppositeEvents.push('blur');\n if (_this8.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 (_this8._isOpen === true) {\n return;\n }\n\n evt.usedByTooltip = true;\n\n _this8._scheduleShow(reference, options.delay, options, evt);\n };\n\n _this8._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 _this8._scheduleHide(reference, options.delay, options, evt);\n };\n\n _this8._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 _this9 = 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 _this9._show(reference, options);\n }, computedDelay);\n }\n }, {\n key: \"_scheduleHide\",\n value: function _scheduleHide(reference, delay, options, evt) {\n var _this10 = 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 (_this10._isOpen === false) {\n return;\n }\n\n if (!_this10._tooltipNode.ownerDocument.body.contains(_this10._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 = _this10._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 _this10._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\nfunction ownKeys$1(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$1(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\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: _objectSpread$1({}, 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 = _objectSpread$1({\n title: content\n }, getOptions(_objectSpread$1(_objectSpread$1({}, _typeof(value) === 'object' ? 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 _ref.oldValue;\n var 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(_objectSpread$1(_objectSpread$1({}, 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 ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\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 ariaId: {\n default: null\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.ariaId != null ? this.ariaId : 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;\n var _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;\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 this.isOpen = false;\n\n if (this.popperInstance) {\n requestAnimationFrame(function () {\n if (!_this3.hidden) {\n _this3.isOpen = true;\n }\n });\n }\n }\n\n if (!this.popperInstance) {\n var popperOptions = _objectSpread(_objectSpread({}, this.popperOptions), {}, {\n placement: this.placement\n });\n\n popperOptions.modifiers = _objectSpread(_objectSpread({}, popperOptions.modifiers), {}, {\n arrow: _objectSpread(_objectSpread({}, 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 = _objectSpread(_objectSpread({}, popperOptions.modifiers && popperOptions.modifiers.offset), {}, {\n offset: offset\n });\n }\n\n if (this.boundariesElement) {\n popperOptions.modifiers.preventOverflow = _objectSpread(_objectSpread({}, 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.isOpen ? _vm.popoverId : undefined,\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\", null, {\n isOpen: _vm.isOpen\n })], 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__ = /*#__PURE__*/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\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_248z = \".resize-observer[data-v-8859cc6c]{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-8859cc6c] object{display:block;position:absolute;top:0;left:0;height:100%;width:100%;overflow:hidden;pointer-events:none;z-index:-1}\";\nstyleInject(css_248z);\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(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('VPopover', __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","export default function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}","/*!\n * Vue.js v2.6.14\n * (c) 2014-2021 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], vm);\n expectedTypes.push(assertedType.expectedType || '');\n valid = assertedType.valid;\n }\n }\n\n var haveExpectedTypes = expectedTypes.some(function (t) { return t; });\n if (!valid && haveExpectedTypes) {\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|BigInt)$/;\n\nfunction assertType (value, type, vm) {\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 try {\n valid = value instanceof type;\n } catch (e) {\n warn('Invalid prop type: \"' + String(type) + '\" is not a constructor', vm);\n valid = false;\n }\n }\n return {\n valid: valid,\n expectedType: expectedType\n }\n}\n\nvar functionTypeCheckRE = /^\\s*function (\\w+)/;\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(functionTypeCheckRE);\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 // check if we need to specify expected value\n if (\n expectedTypes.length === 1 &&\n isExplicable(expectedType) &&\n isExplicable(typeof value) &&\n !isBoolean(expectedType, receivedType)\n ) {\n message += \" with value \" + (styleValue(value, expectedType));\n }\n message += \", got \" + receivedType + \" \";\n // check if we need to specify received value\n if (isExplicable(receivedType)) {\n message += \"with value \" + (styleValue(value, receivedType)) + \".\";\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\nvar EXPLICABLE_TYPES = ['string', 'number', 'boolean'];\nfunction isExplicable (value) {\n return EXPLICABLE_TYPES.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,BigInt,' +\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 isAsyncPlaceholder (node) {\n return node.isComment && node.asyncFactory\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 var vnode = res && res[0];\n return res && (\n !vnode ||\n (res.length === 1 && vnode.isComment && !isAsyncPlaceholder(vnode)) // #9658, #10391\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 fallbackRender,\n props,\n bindObject\n) {\n var scopedSlotFn = this.$scopedSlots[name];\n var nodes;\n if (scopedSlotFn) {\n // scoped slot\n props = props || {};\n if (bindObject) {\n if (process.env.NODE_ENV !== 'production' && !isObject(bindObject)) {\n warn('slot v-bind without argument expects an Object', this);\n }\n props = extend(extend({}, bindObject), props);\n }\n nodes =\n scopedSlotFn(props) ||\n (typeof fallbackRender === 'function' ? fallbackRender() : fallbackRender);\n } else {\n nodes =\n this.$slots[name] ||\n (typeof fallbackRender === 'function' ? fallbackRender() : fallbackRender);\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 return eventKeyCode === undefined\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 // we know it's MountedComponentVNode but flow doesn't\n vnode,\n // activeInstance in lifecycle state\n parent\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) && data.tag !== 'component') {\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 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 (!newScopedSlots && vm.$scopedSlots.$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 var info = \"callback for watcher \\\"\" + (this.expression) + \"\\\"\";\n invokeWithErrorHandling(this.cb, this.vm, [value, oldValue], this.vm, info);\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 } else if (vm.$options.methods && key in vm.$options.methods) {\n warn((\"The computed property \\\"\" + key + \"\\\" is already defined as a method.\"), 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 var info = \"callback for immediate watcher \\\"\" + (watcher.expression) + \"\\\"\";\n pushTarget();\n invokeWithErrorHandling(cb, vm, [watcher.value], vm, info);\n popTarget();\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\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 entry = cache[key];\n if (entry) {\n var name = entry.name;\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 entry = cache[key];\n if (entry && (!current || entry.tag !== current.tag)) {\n entry.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 methods: {\n cacheVNode: function cacheVNode() {\n var ref = this;\n var cache = ref.cache;\n var keys = ref.keys;\n var vnodeToCache = ref.vnodeToCache;\n var keyToCache = ref.keyToCache;\n if (vnodeToCache) {\n var tag = vnodeToCache.tag;\n var componentInstance = vnodeToCache.componentInstance;\n var componentOptions = vnodeToCache.componentOptions;\n cache[keyToCache] = {\n name: getComponentName(componentOptions),\n tag: tag,\n componentInstance: componentInstance,\n };\n keys.push(keyToCache);\n // prune oldest entry\n if (this.max && keys.length > parseInt(this.max)) {\n pruneCacheEntry(cache, keys[0], keys, this._vnode);\n }\n this.vnodeToCache = null;\n }\n }\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.cacheVNode();\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 updated: function updated () {\n this.cacheVNode();\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 // delay setting the cache until update\n this.vnodeToCache = vnode;\n this.keyToCache = key;\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.14';\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,' +\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 a.asyncFactory === b.asyncFactory && (\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 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, vnode.data.pre);\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, isInPre) {\n if (isInPre || 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","'use strict';\n\nvar forEach = require('foreach');\nvar availableTypedArrays = require('available-typed-arrays');\nvar callBound = require('call-bind/callBound');\n\nvar $toString = callBound('Object.prototype.toString');\nvar hasToStringTag = require('has-tostringtag/shams')();\n\nvar g = typeof globalThis === 'undefined' ? global : globalThis;\nvar typedArrays = availableTypedArrays();\n\nvar $slice = callBound('String.prototype.slice');\nvar toStrTags = {};\nvar gOPD = require('es-abstract/helpers/getOwnPropertyDescriptor');\nvar getPrototypeOf = Object.getPrototypeOf; // require('getprototypeof');\nif (hasToStringTag && gOPD && getPrototypeOf) {\n\tforEach(typedArrays, function (typedArray) {\n\t\tif (typeof g[typedArray] === 'function') {\n\t\t\tvar arr = new g[typedArray]();\n\t\t\tif (Symbol.toStringTag in arr) {\n\t\t\t\tvar proto = getPrototypeOf(arr);\n\t\t\t\tvar descriptor = gOPD(proto, Symbol.toStringTag);\n\t\t\t\tif (!descriptor) {\n\t\t\t\t\tvar superProto = getPrototypeOf(proto);\n\t\t\t\t\tdescriptor = gOPD(superProto, Symbol.toStringTag);\n\t\t\t\t}\n\t\t\t\ttoStrTags[typedArray] = descriptor.get;\n\t\t\t}\n\t\t}\n\t});\n}\n\nvar tryTypedArrays = function tryAllTypedArrays(value) {\n\tvar foundName = false;\n\tforEach(toStrTags, function (getter, typedArray) {\n\t\tif (!foundName) {\n\t\t\ttry {\n\t\t\t\tvar name = getter.call(value);\n\t\t\t\tif (name === typedArray) {\n\t\t\t\t\tfoundName = name;\n\t\t\t\t}\n\t\t\t} catch (e) {}\n\t\t}\n\t});\n\treturn foundName;\n};\n\nvar isTypedArray = require('is-typed-array');\n\nmodule.exports = function whichTypedArray(value) {\n\tif (!isTypedArray(value)) { return false; }\n\tif (!hasToStringTag || !(Symbol.toStringTag in value)) { return $slice($toString(value), 8, -1); }\n\treturn tryTypedArrays(value);\n};\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.p = \"/apps/firstrunwizard/js/\";","<!--\n - @copyright Copyright (c) 2019 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 -->\n\n<template>\n\t<div class=\"video-wrapper\">\n\t\t<video ref=\"video\"\n\t\t\tplaysinline\n\t\t\tautoplay\n\t\t\tmuted>\n\t\t\t<source :src=\"videoWebm\" type=\"video/webm\">\n\t\t\t<source :src=\"videoMp4\" type=\"video/mp4\">\n\t\t\t{{ videoFallbackText }}\n\t\t</video>\n\t</div>\n</template>\n\n<script>\nimport { generateFilePath } from '@nextcloud/router'\n\nexport default {\n\tname: 'IntroVideo',\n\tdata() {\n\t\treturn {\n\t\t\tvideoMp4: generateFilePath('firstrunwizard', 'img', 'Nextcloud.mp4'),\n\t\t\tvideoWebm: generateFilePath('firstrunwizard', 'img', 'Nextcloud.webm'),\n\t\t}\n\t},\n\tcomputed: {\n\t\tvideoFallbackText() {\n\t\t\treturn t('firstrunwizard', 'Welcome to {cloudName}!', { cloudName: window.OC.theme.name })\n\t\t},\n\t},\n}\n</script>\n\n<style scoped lang=\"scss\">\n\tvideo {\n\t\twidth: 100%;\n\t\theight: 100%;\n\t\tobject-fit: cover;\n\t}\n\n\t.video-wrapper {\n\t\tbackground-color: var(--color-primary);\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!./IntroVideo.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!./IntroVideo.vue?vue&type=script&lang=js&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../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!./IntroVideo.vue?vue&type=style&index=0&id=70de3a6e&scoped=true&lang=scss&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../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!./IntroVideo.vue?vue&type=style&index=0&id=70de3a6e&scoped=true&lang=scss&\";\n export default content && content.locals ? content.locals : undefined;\n","/* globals __VUE_SSR_CONTEXT__ */\n\n// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).\n// This module is a runtime utility for cleaner component module output and will\n// be included in the final webpack user bundle.\n\nexport default function normalizeComponent (\n scriptExports,\n render,\n staticRenderFns,\n functionalTemplate,\n injectStyles,\n scopeId,\n moduleIdentifier, /* server only */\n shadowMode /* vue-cli only */\n) {\n // Vue.extend constructor export interop\n var options = typeof scriptExports === 'function'\n ? scriptExports.options\n : scriptExports\n\n // render functions\n if (render) {\n options.render = render\n options.staticRenderFns = staticRenderFns\n options._compiled = true\n }\n\n // functional template\n if (functionalTemplate) {\n options.functional = true\n }\n\n // scopedId\n if (scopeId) {\n options._scopeId = 'data-v-' + scopeId\n }\n\n var hook\n if (moduleIdentifier) { // server build\n hook = function (context) {\n // 2.3 injection\n context =\n context || // cached call\n (this.$vnode && this.$vnode.ssrContext) || // stateful\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional\n // 2.2 with runInNewContext: true\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__\n }\n // inject component styles\n if (injectStyles) {\n injectStyles.call(this, context)\n }\n // register component module identifier for async chunk inferrence\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier)\n }\n }\n // used by ssr in case component is cached and beforeCreate\n // never gets called\n options._ssrRegister = hook\n } else if (injectStyles) {\n hook = shadowMode\n ? function () {\n injectStyles.call(\n this,\n (options.functional ? this.parent : this).$root.$options.shadowRoot\n )\n }\n : injectStyles\n }\n\n if (hook) {\n if (options.functional) {\n // for template-only hot-reload because in that case the render fn doesn't\n // go through the normalizer\n options._injectStyles = hook\n // register for functional component in vue file\n var originalRender = options.render\n options.render = function renderWithStyleInjection (h, context) {\n hook.call(context)\n return originalRender(h, context)\n }\n } else {\n // inject component registration as beforeCreate hook\n var existing = options.beforeCreate\n options.beforeCreate = existing\n ? [].concat(existing, hook)\n : [hook]\n }\n }\n\n return {\n exports: scriptExports,\n options: options\n }\n}\n","import { render, staticRenderFns } from \"./IntroVideo.vue?vue&type=template&id=70de3a6e&scoped=true&\"\nimport script from \"./IntroVideo.vue?vue&type=script&lang=js&\"\nexport * from \"./IntroVideo.vue?vue&type=script&lang=js&\"\nimport style0 from \"./IntroVideo.vue?vue&type=style&index=0&id=70de3a6e&scoped=true&lang=scss&\"\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 \"70de3a6e\",\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:\"video-wrapper\"},[_c('video',{ref:\"video\",attrs:{\"playsinline\":\"\",\"autoplay\":\"\",\"muted\":\"\"},domProps:{\"muted\":true}},[_c('source',{attrs:{\"src\":_vm.videoWebm,\"type\":\"video/webm\"}}),_vm._v(\" \"),_c('source',{attrs:{\"src\":_vm.videoMp4,\"type\":\"video/mp4\"}}),_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.videoFallbackText)+\"\\n\\t\")])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n\t<Modal\n\t\tv-if=\"showModal && slideList.length > 0\"\n\t\tid=\"firstrunwizard\"\n\t\t:has-previous=\"hasPrevious\"\n\t\t:has-next=\"hasNext\"\n\t\t:size=\"isMobile ? 'full' : 'normal'\"\n\t\t:clear-view-delay=\"-1 /* disable fade-out because of accessibility reasons */\"\n\t\tname=\"modal\"\n\t\t@previous=\"previous\"\n\t\t@next=\"next\"\n\t\t@close=\"close\">\n\t\t<div v-if=\"currentSlide !== 0 || !withIntro\" class=\"modal-header\">\n\t\t\t<div class=\"firstrunwizard-header\">\n\t\t\t\t<div class=\"logo\">\n\t\t\t\t\t<p class=\"hidden-visually\">\n\t\t\t\t\t\t{{ oc_defaults.name }}\n\t\t\t\t\t</p>\n\t\t\t\t</div>\n\t\t\t\t<!-- eslint-disable-next-line vue/no-v-html -->\n\t\t\t\t<h2 v-html=\"oc_defaults.slogan\" />\n\t\t\t\t<p />\n\t\t\t</div>\n\t\t</div>\n\t\t<div class=\"modal-body\">\n\t\t\t<slot v-if=\"slideList.length > 0\" name=\"body\">\n\t\t\t\t<transition :name=\"fadeDirection\" mode=\"out-in\">\n\t\t\t\t\t<!-- eslint-disable-next-line vue/no-v-html -->\n\t\t\t\t\t<div v-if=\"slideList[currentSlide].type === 'inline'\" :key=\"currentSlide\" v-html=\"slideList[currentSlide].content\" />\n\t\t\t\t\t<div :is=\"slideList[currentSlide]\" v-else @finished=\"currentSlide++\" />\n\t\t\t\t</transition>\n\t\t\t</slot>\n\t\t</div>\n\t\t<div class=\"modal-footer\">\n\t\t\t<button v-if=\"isLast\" class=\"primary modal-default-button\" @click=\"close\">\n\t\t\t\t{{ startButtonText }}\n\t\t\t</button>\n\t\t</div>\n\t</Modal>\n</template>\n<style lang=\"scss\">\n\t/* Page styling needs to be unscoped, since we load it separately from the server */\n\t#firstrunwizard {\n\n\t\t.page {\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: row;\n\t\t\tflex-wrap: wrap;\n\t\t\tmargin: auto;\n\n\t\t\th3 {\n\t\t\t\tmargin: 10px 0 10px;\n\t\t\t\tline-height: 120%;\n\t\t\t\tpadding: 0;\n\t\t\t}\n\t\t\t.image {\n\t\t\t\tpadding: 20px;\n\t\t\t\tmax-width: calc(50% - 40px);\n\t\t\t\tflex-grow: 1;\n\t\t\t\timg {\n\t\t\t\t\twidth: 100%;\n\t\t\t\t}\n\t\t\t}\n\t\t\t.content {\n\t\t\t\tpadding: 20px;\n\t\t\t\twidth: 100%;\n\t\t\t}\n\t\t\tp {\n\t\t\t\tmargin-bottom: 20px;\n\t\t\t}\n\t\t\t.description-block:first-child {\n\t\t\t\tmargin-bottom: 20px;\n\t\t\t}\n\t\t\t.description {\n\t\t\t\tmargin: 20px;\n\t\t\t\twidth: auto;\n\t\t\t\tflex-grow: 1;\n\t\t\t\tmax-width: calc(50% - 40px);\n\t\t\t}\n\t\t\tul {\n\t\t\t\tmargin: 10px;\n\t\t\t\tli {\n\t\t\t\t\tmargin-left: 20px;\n\t\t\t\t\tmargin-bottom: 10px;\n\t\t\t\t\tlist-style: circle outside;\n\t\t\t\t}\n\t\t\t}\n\t\t\ta:not(.button) {\n\t\t\t\t&:hover,\n\t\t\t\t&:focus {\n\t\t\t\t\ttext-decoration: underline;\n\t\t\t\t}\n\t\t\t}\n\t\t\t.button {\n\t\t\t\tdisplay: inline-block;\n\n\t\t\t\timg {\n\t\t\t\t\twidth: 16px;\n\t\t\t\t\theight: 16px;\n\t\t\t\t\topacity: .5;\n\t\t\t\t\tmargin-top: -3px;\n\t\t\t\t\tvertical-align: middle;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t.content-clients {\n\t\t\twidth: 100%;\n\t\t\ttext-align: center;\n\t\t\ta {\n\t\t\t\ttext-decoration: none;\n\t\t\t\tdisplay: inline-block;\n\t\t\t}\n\t\t\t.clientslinks .appsmall {\n\t\t\t\theight: 32px;\n\t\t\t\twidth: 32px;\n\t\t\t\tposition: relative;\n\t\t\t\topacity: .5;\n\t\t\t\tvertical-align: middle;\n\t\t\t}\n\t\t\t.clientslinks .button {\n\t\t\t\tdisplay: inline-block;\n\t\t\t\tpadding: 8px;\n\t\t\t\tfont-weight: normal;\n\t\t\t\tfont-size: 14px;\n\t\t\t}\n\t\t}\n\t\t.content-final {\n\t\t\th3 {\n\t\t\t\tbackground-position: 0;\n\t\t\t\tbackground-size: 16px 16px;\n\t\t\t\tpadding-left: 26px;\n\t\t\t\topacity: .7;\n\t\t\t}\n\t\t}\n\t\tp a {\n\t\t\tfont-weight: bold;\n\t\t\tcolor: var(--color-primary);\n\t\t\t&:hover,\n\t\t\t&:focus {\n\t\t\t\tcolor: var(color-text-light);\n\t\t\t}\n\t\t}\n\n\t\t.footnote {\n\t\t\tmargin-top: 40px;\n\t\t}\n\n\t\t// primary on next button\n\t\t.modal-wrapper .icon-next {\n\t\t\tbackground-color: var(--color-primary);\n\t\t\tcolor: var(--color-primary-text);\n\t\t\tbox-shadow: 0 2px 8px rgba(0, 0, 0, .33);\n\t\t\tleft: 22px;\n\t\t}\n\t}\n\n\t.clientslinks {\n\t\tmargin-top: 20px;\n\t\tmargin-bottom: 20px;\n\t}\n\n\t#wizard-values {\n\t\tlist-style-type: none;\n\t\tdisplay: flex;\n\t\tflex-wrap: wrap;\n\t\tmargin: 0;\n\t\tli {\n\t\t\tdisplay: block;\n\t\t\tmin-width: 250px;\n\t\t\twidth: 33%;\n\t\t\tflex-grow: 1;\n\t\t\tmargin: 20px 0 20px 0;\n\t\t\tspan {\n\t\t\t\topacity: .7;\n\t\t\t\tdisplay: block;\n\t\t\t\theight: 50px;\n\t\t\t\twidth: 50px;\n\t\t\t\tbackground-size: 40px;\n\t\t\t\tmargin: auto;\n\t\t\t}\n\t\t\th3 {\n\t\t\t\tmargin: 10px 0 10px 0;\n\t\t\t\tfont-size: 130%;\n\t\t\t\ttext-align: center;\n\t\t\t}\n\t\t}\n\t}\n\n\t.details-link {\n\t\ttext-align: center;\n\t}\n\n\t@media only screen and (max-width: 680px) {\n\t\t#firstrunwizard {\n\t\t\t.firstrunwizard-header div.logo {\n\t\t\t\tbackground-size: 120px;\n\t\t\t}\n\t\t\th2 {\n\t\t\t\tfont-size: 20px;\n\t\t\t}\n\t\t\t.page > div {\n\t\t\t\tmax-width: 100% !important;\n\t\t\t\twidth: 100%;\n\t\t\t}\n\t\t\t.page {\n\t\t\t\t#wizard-values li {\n\t\t\t\t\tmin-width: 100%;\n\t\t\t\t\toverflow: hidden;\n\t\t\t\t\tdisplay: flex;\n\t\t\t\t\tspan {\n\t\t\t\t\t\twidth: 44px !important;\n\t\t\t\t\t\tpadding-right: 20px;\n\t\t\t\t\t\tflex-grow: 0;\n\t\t\t\t\t}\n\t\t\t\t\th3 {\n\t\t\t\t\t\tfont-size: 12px;\n\t\t\t\t\t\ttext-align: left;\n\t\t\t\t\t\tflex-grow: 1;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t&.content-final {\n\t\t\t\t\tpadding-bottom: 50px;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n</style>\n\n<style lang=\"scss\" scoped>\n\t.modal-mask {\n\t\tbackground-color: rgba(0, 0, 0, 0.7);\n\n\t\t&::v-deep .modal-wrapper {\n\t\t\tposition: relative;\n\t\t}\n\n\t\t&::v-deep .modal-container {\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\t\t\theight: 95% !important;\n\t\t\twidth: 95% !important;\n\t\t\tmax-width: 900px;\n\t\t\tmax-height: 650px !important;\n\t\t\tposition: relative;\n\t\t}\n\n\t\t.modal-body {\n\t\t\tflex-grow: 1;\n\t\t\tdisplay: flex;\n\t\t\toverflow-x: hidden;\n\t\t\toverflow-y: auto;\n\n\t\t\t& > div {\n\t\t\t\tdisplay: flex;\n\t\t\t\tflex-grow: 1;\n\t\t\t\talign-items: center;\n\t\t\t\tjustify-content: center;\n\t\t\t}\n\t\t}\n\t}\n\n\t.modal-header {\n\t\theight: 180px;\n\t\tmax-height: 40vh;\n\t\toverflow: hidden;\n\t\tflex-shrink: 0;\n\n\t\t.firstrunwizard-header {\n\t\t\tpadding: 20px 12px;\n\t\t\tbackground: var(--color-primary) var(--image-login-background) no-repeat 50% 50%;\n\t\t\tbackground-size: cover;\n\t\t\tcolor: var(--color-primary-text);\n\t\t\ttext-align: center;\n\t\t\t.logo {\n\t\t\t\tbackground: var(--image-logo) no-repeat center;\n\t\t\t\tbackground-size: contain;\n\t\t\t\twidth: 175px;\n\t\t\t\theight: 100px;\n\t\t\t\tmax-height: 20vh;\n\t\t\t\tmargin: 0 auto;\n\t\t\t}\n\t\t\th2 {\n\t\t\t\tfont-size: 20px;\n\t\t\t\tmargin-top: 7px;\n\t\t\t\tline-height: 150%;\n\t\t\t\tcolor: var(--color-primary-text);\n\t\t\t\tfont-weight: 300;\n\t\t\t\tpadding: 0 0 10px;\n\t\t\t}\n\t\t}\n\t}\n\n\t.modal-default-button {\n\t\talign-self: flex-end;\n\t}\n\n\t.modal-footer {\n\t\toverflow: hidden;\n\t\tposition: absolute;\n\t\tdisplay: flex;\n\t\tbottom: 0;\n\t\tright: 0;\n\t}\n\n\t.modal-footer button {\n\t\tmargin: 10px;\n\t}\n\n\t/* Transitions */\n\t.next-enter-active, .next-leave-active,\n\t.previous-enter-active, .previous-leave-active {\n\t\ttransition: transform .1s, opacity .25s;\n\t}\n\n\t.next-enter {\n\t\ttransform: translateX(50%);\n\t\topacity: 0;\n\t}\n\n\t.next-leave-to {\n\t\ttransform: translateX(-50%);\n\t\topacity: 0;\n\t}\n\n\t.previous-enter {\n\t\ttransform: translateX(-50%);\n\t\topacity: 0;\n\t}\n\n\t.previous-leave-to {\n\t\ttransform: translateX(50%);\n\t\topacity: 0;\n\t}\n</style>\n<script>\nimport Modal from '@nextcloud/vue/dist/Components/Modal'\nimport axios from '@nextcloud/axios'\nimport { generateUrl } from '@nextcloud/router'\nimport IntroVideo from './components/IntroVideo'\n\nexport default {\n\tname: 'App',\n\tcomponents: {\n\t\tModal,\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tshowModal: false,\n\t\t\twithIntro: true,\n\t\t\tslides: [],\n\t\t\tcurrentSlide: 0,\n\t\t\tfadeDirection: 'next',\n\t\t\tisMobile: window.outerWidth < 1024,\n\t\t\tslidesLoaded: false,\n\t\t}\n\t},\n\tcomputed: {\n\t\tslideList() {\n\t\t\tif (this.withIntro) {\n\t\t\t\treturn this.slides\n\t\t\t}\n\t\t\tconst slides = this.slides\n\t\t\treturn slides.slice(1)\n\t\t},\n\t\thasNext() {\n\t\t\treturn this.currentSlide < this.slideList.length - 1\n\t\t},\n\t\thasPrevious() {\n\t\t\treturn this.currentSlide > 0\n\t\t},\n\t\tisLast() {\n\t\t\treturn this.currentSlide === this.slideList.length - 1\n\t\t},\n\t\tisFirst() {\n\t\t\treturn this.currentSlide === 0\n\t\t},\n\t\tstartButtonText() {\n\t\t\treturn t('firstrunwizard', 'Start using {cloudName}', { cloudName: window.OC.theme.name })\n\t\t},\n\t},\n\tasync created() {\n\t\tthis.slides = [IntroVideo]\n\t\twindow.addEventListener('resize', this.onResize)\n\t},\n\tbeforeDestroy() {\n\t\twindow.removeEventListener('resize', this.onResize)\n\t},\n\tmethods: {\n\t\tasync loadStaticSlides() {\n\t\t\tif (this.slidesLoaded) {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\ttry {\n\t\t\t\tconst response = await axios.get(generateUrl('/apps/firstrunwizard/wizard'))\n\t\t\t\tthis.slides.push(...response.data.slides)\n\t\t\t\tthis.withIntro = response.data.hasVideo\n\t\t\t\tthis.slidesLoaded = true\n\t\t\t} catch (e) {\n\t\t\t\tconsole.error('Failed to load slides')\n\t\t\t}\n\t\t},\n\t\tasync open(withIntro = true) {\n\t\t\tawait this.loadStaticSlides()\n\t\t\tthis.withIntro = this.withIntro & withIntro\n\t\t\tthis.showModal = true\n\t\t\tthis.currentSlide = 0\n\t\t},\n\t\tclose() {\n\t\t\tthis.showModal = false\n\t\t\taxios.delete(generateUrl('/apps/firstrunwizard/wizard'))\n\t\t},\n\t\tnext() {\n\t\t\tthis.fadeDirection = 'next'\n\t\t\tif (this.isLast) {\n\t\t\t\tthis.close()\n\t\t\t\treturn\n\t\t\t}\n\t\t\tthis.currentSlide += 1\n\t\t},\n\t\tprevious() {\n\t\t\tthis.fadeDirection = 'previous'\n\t\t\tif (this.isFirst) {\n\t\t\t\treturn\n\t\t\t}\n\t\t\tthis.currentSlide -= 1\n\t\t},\n\t\tonResize(event) {\n\t\t\t// Update mobile mode\n\t\t\tthis.isMobile = window.outerWidth < 768\n\t\t},\n\t},\n}\n</script>\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&\"","\n import API from \"!../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../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!./App.vue?vue&type=style&index=0&lang=scss&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../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!./App.vue?vue&type=style&index=0&lang=scss&\";\n export default content && content.locals ? content.locals : undefined;\n","\n import API from \"!../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../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!./App.vue?vue&type=style&index=1&id=063e1a6a&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../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!./App.vue?vue&type=style&index=1&id=063e1a6a&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=063e1a6a&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&lang=scss&\"\nimport style1 from \"./App.vue?vue&type=style&index=1&id=063e1a6a&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 \"063e1a6a\",\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.showModal && _vm.slideList.length > 0)?_c('Modal',{attrs:{\"id\":\"firstrunwizard\",\"has-previous\":_vm.hasPrevious,\"has-next\":_vm.hasNext,\"size\":_vm.isMobile ? 'full' : 'normal',\"clear-view-delay\":-1 /* disable fade-out because of accessibility reasons */,\"name\":\"modal\"},on:{\"previous\":_vm.previous,\"next\":_vm.next,\"close\":_vm.close}},[(_vm.currentSlide !== 0 || !_vm.withIntro)?_c('div',{staticClass:\"modal-header\"},[_c('div',{staticClass:\"firstrunwizard-header\"},[_c('div',{staticClass:\"logo\"},[_c('p',{staticClass:\"hidden-visually\"},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.oc_defaults.name)+\"\\n\\t\\t\\t\\t\")])]),_vm._v(\" \"),_c('h2',{domProps:{\"innerHTML\":_vm._s(_vm.oc_defaults.slogan)}}),_vm._v(\" \"),_c('p')])]):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"modal-body\"},[(_vm.slideList.length > 0)?_vm._t(\"body\",function(){return [_c('transition',{attrs:{\"name\":_vm.fadeDirection,\"mode\":\"out-in\"}},[(_vm.slideList[_vm.currentSlide].type === 'inline')?_c('div',{key:_vm.currentSlide,domProps:{\"innerHTML\":_vm._s(_vm.slideList[_vm.currentSlide].content)}}):_c(_vm.slideList[_vm.currentSlide],{tag:\"div\",on:{\"finished\":function($event){_vm.currentSlide++}}})],1)]}):_vm._e()],2),_vm._v(\" \"),_c('div',{staticClass:\"modal-footer\"},[(_vm.isLast)?_c('button',{staticClass:\"primary modal-default-button\",on:{\"click\":_vm.close}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.startButtonText)+\"\\n\\t\\t\")]):_vm._e()])]):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import Vue from 'vue'\nimport { generateFilePath } from '@nextcloud/router'\nimport { translate, translatePlural } from '@nextcloud/l10n'\n\nimport App from './App.vue'\n// eslint-disable-next-line\n__webpack_public_path__ = generateFilePath('firstrunwizard', '', 'js/');\n\nVue.prototype.t = translate\nVue.prototype.n = translatePlural\n// eslint-disable-next-line\nVue.prototype.oc_defaults = window.oc_defaults\n\nconst el = document.createElement('div')\nel.id = 'firstrunwizard'\ndocument.querySelector('body').appendChild(el)\n\nconst View = Vue.extend(App)\nconst vm = new View().$mount(el)\n\nwindow.OCA.FirstRunWizard = {\n\topen: vm.open,\n}\n"],"sourceRoot":""} \ No newline at end of file
+{"version":3,"sources":["webpack:///firstrunwizard/node_modules/@nextcloud/auth/dist/index.js","webpack:///firstrunwizard/node_modules/@nextcloud/auth/dist/requesttoken.js","webpack:///firstrunwizard/node_modules/@nextcloud/auth/dist/user.js","webpack:///firstrunwizard/node_modules/@nextcloud/axios/dist/index.js","webpack:///firstrunwizard/node_modules/@nextcloud/event-bus/dist/ProxyBus.js","webpack:///firstrunwizard/node_modules/@nextcloud/event-bus/dist/SimpleBus.js","webpack:///firstrunwizard/node_modules/@nextcloud/event-bus/dist/index.js","webpack:///firstrunwizard/node_modules/@nextcloud/l10n/dist/gettext.js","webpack:///firstrunwizard/node_modules/@nextcloud/l10n/dist/index.js","webpack:///firstrunwizard/node_modules/@nextcloud/router/dist/index.js","webpack:///firstrunwizard/node_modules/@nextcloud/vue/dist/Components/Modal.js","webpack:///firstrunwizard/node_modules/available-typed-arrays/index.js","webpack:///firstrunwizard/node_modules/axios/index.js","webpack:///firstrunwizard/node_modules/axios/lib/adapters/xhr.js","webpack:///firstrunwizard/node_modules/axios/lib/axios.js","webpack:///firstrunwizard/node_modules/axios/lib/cancel/Cancel.js","webpack:///firstrunwizard/node_modules/axios/lib/cancel/CancelToken.js","webpack:///firstrunwizard/node_modules/axios/lib/cancel/isCancel.js","webpack:///firstrunwizard/node_modules/axios/lib/core/Axios.js","webpack:///firstrunwizard/node_modules/axios/lib/core/InterceptorManager.js","webpack:///firstrunwizard/node_modules/axios/lib/core/buildFullPath.js","webpack:///firstrunwizard/node_modules/axios/lib/core/createError.js","webpack:///firstrunwizard/node_modules/axios/lib/core/dispatchRequest.js","webpack:///firstrunwizard/node_modules/axios/lib/core/enhanceError.js","webpack:///firstrunwizard/node_modules/axios/lib/core/mergeConfig.js","webpack:///firstrunwizard/node_modules/axios/lib/core/settle.js","webpack:///firstrunwizard/node_modules/axios/lib/core/transformData.js","webpack:///firstrunwizard/node_modules/axios/lib/defaults.js","webpack:///firstrunwizard/node_modules/axios/lib/env/data.js","webpack:///firstrunwizard/node_modules/axios/lib/helpers/bind.js","webpack:///firstrunwizard/node_modules/axios/lib/helpers/buildURL.js","webpack:///firstrunwizard/node_modules/axios/lib/helpers/combineURLs.js","webpack:///firstrunwizard/node_modules/axios/lib/helpers/cookies.js","webpack:///firstrunwizard/node_modules/axios/lib/helpers/isAbsoluteURL.js","webpack:///firstrunwizard/node_modules/axios/lib/helpers/isAxiosError.js","webpack:///firstrunwizard/node_modules/axios/lib/helpers/isURLSameOrigin.js","webpack:///firstrunwizard/node_modules/axios/lib/helpers/normalizeHeaderName.js","webpack:///firstrunwizard/node_modules/axios/lib/helpers/parseHeaders.js","webpack:///firstrunwizard/node_modules/axios/lib/helpers/spread.js","webpack:///firstrunwizard/node_modules/axios/lib/helpers/validator.js","webpack:///firstrunwizard/node_modules/axios/lib/utils.js","webpack:///firstrunwizard/node_modules/call-bind/callBound.js","webpack:///firstrunwizard/node_modules/call-bind/index.js","webpack:///firstrunwizard/node_modules/console-browserify/index.js","webpack:///firstrunwizard/node_modules/core-js/internals/a-function.js","webpack:///firstrunwizard/node_modules/core-js/internals/a-possible-prototype.js","webpack:///firstrunwizard/node_modules/core-js/internals/add-to-unscopables.js","webpack:///firstrunwizard/node_modules/core-js/internals/advance-string-index.js","webpack:///firstrunwizard/node_modules/core-js/internals/an-instance.js","webpack:///firstrunwizard/node_modules/core-js/internals/an-object.js","webpack:///firstrunwizard/node_modules/core-js/internals/array-for-each.js","webpack:///firstrunwizard/node_modules/core-js/internals/array-includes.js","webpack:///firstrunwizard/node_modules/core-js/internals/array-iteration.js","webpack:///firstrunwizard/node_modules/core-js/internals/array-method-has-species-support.js","webpack:///firstrunwizard/node_modules/core-js/internals/array-method-is-strict.js","webpack:///firstrunwizard/node_modules/core-js/internals/array-method-uses-to-length.js","webpack:///firstrunwizard/node_modules/core-js/internals/array-species-create.js","webpack:///firstrunwizard/node_modules/core-js/internals/call-with-safe-iteration-closing.js","webpack:///firstrunwizard/node_modules/core-js/internals/check-correctness-of-iteration.js","webpack:///firstrunwizard/node_modules/core-js/internals/classof-raw.js","webpack:///firstrunwizard/node_modules/core-js/internals/classof.js","webpack:///firstrunwizard/node_modules/core-js/internals/collection-strong.js","webpack:///firstrunwizard/node_modules/core-js/internals/collection.js","webpack:///firstrunwizard/node_modules/core-js/internals/copy-constructor-properties.js","webpack:///firstrunwizard/node_modules/core-js/internals/correct-prototype-getter.js","webpack:///firstrunwizard/node_modules/core-js/internals/create-iterator-constructor.js","webpack:///firstrunwizard/node_modules/core-js/internals/create-non-enumerable-property.js","webpack:///firstrunwizard/node_modules/core-js/internals/create-property-descriptor.js","webpack:///firstrunwizard/node_modules/core-js/internals/create-property.js","webpack:///firstrunwizard/node_modules/core-js/internals/define-iterator.js","webpack:///firstrunwizard/node_modules/core-js/internals/descriptors.js","webpack:///firstrunwizard/node_modules/core-js/internals/document-create-element.js","webpack:///firstrunwizard/node_modules/core-js/internals/dom-iterables.js","webpack:///firstrunwizard/node_modules/core-js/internals/engine-user-agent.js","webpack:///firstrunwizard/node_modules/core-js/internals/engine-v8-version.js","webpack:///firstrunwizard/node_modules/core-js/internals/enum-bug-keys.js","webpack:///firstrunwizard/node_modules/core-js/internals/export.js","webpack:///firstrunwizard/node_modules/core-js/internals/fails.js","webpack:///firstrunwizard/node_modules/core-js/internals/fix-regexp-well-known-symbol-logic.js","webpack:///firstrunwizard/node_modules/core-js/internals/freezing.js","webpack:///firstrunwizard/node_modules/core-js/internals/function-bind-context.js","webpack:///firstrunwizard/node_modules/core-js/internals/get-built-in.js","webpack:///firstrunwizard/node_modules/core-js/internals/get-iterator-method.js","webpack:///firstrunwizard/node_modules/core-js/internals/global.js","webpack:///firstrunwizard/node_modules/core-js/internals/has.js","webpack:///firstrunwizard/node_modules/core-js/internals/hidden-keys.js","webpack:///firstrunwizard/node_modules/core-js/internals/html.js","webpack:///firstrunwizard/node_modules/core-js/internals/ie8-dom-define.js","webpack:///firstrunwizard/node_modules/core-js/internals/indexed-object.js","webpack:///firstrunwizard/node_modules/core-js/internals/inherit-if-required.js","webpack:///firstrunwizard/node_modules/core-js/internals/inspect-source.js","webpack:///firstrunwizard/node_modules/core-js/internals/internal-metadata.js","webpack:///firstrunwizard/node_modules/core-js/internals/internal-state.js","webpack:///firstrunwizard/node_modules/core-js/internals/is-array-iterator-method.js","webpack:///firstrunwizard/node_modules/core-js/internals/is-array.js","webpack:///firstrunwizard/node_modules/core-js/internals/is-forced.js","webpack:///firstrunwizard/node_modules/core-js/internals/is-object.js","webpack:///firstrunwizard/node_modules/core-js/internals/is-pure.js","webpack:///firstrunwizard/node_modules/core-js/internals/iterate.js","webpack:///firstrunwizard/node_modules/core-js/internals/iterators-core.js","webpack:///firstrunwizard/node_modules/core-js/internals/iterators.js","webpack:///firstrunwizard/node_modules/core-js/internals/native-symbol.js","webpack:///firstrunwizard/node_modules/core-js/internals/native-weak-map.js","webpack:///firstrunwizard/node_modules/core-js/internals/object-assign.js","webpack:///firstrunwizard/node_modules/core-js/internals/object-create.js","webpack:///firstrunwizard/node_modules/core-js/internals/object-define-properties.js","webpack:///firstrunwizard/node_modules/core-js/internals/object-define-property.js","webpack:///firstrunwizard/node_modules/core-js/internals/object-get-own-property-descriptor.js","webpack:///firstrunwizard/node_modules/core-js/internals/object-get-own-property-names.js","webpack:///firstrunwizard/node_modules/core-js/internals/object-get-own-property-symbols.js","webpack:///firstrunwizard/node_modules/core-js/internals/object-get-prototype-of.js","webpack:///firstrunwizard/node_modules/core-js/internals/object-keys-internal.js","webpack:///firstrunwizard/node_modules/core-js/internals/object-keys.js","webpack:///firstrunwizard/node_modules/core-js/internals/object-property-is-enumerable.js","webpack:///firstrunwizard/node_modules/core-js/internals/object-set-prototype-of.js","webpack:///firstrunwizard/node_modules/core-js/internals/object-to-string.js","webpack:///firstrunwizard/node_modules/core-js/internals/own-keys.js","webpack:///firstrunwizard/node_modules/core-js/internals/path.js","webpack:///firstrunwizard/node_modules/core-js/internals/redefine-all.js","webpack:///firstrunwizard/node_modules/core-js/internals/redefine.js","webpack:///firstrunwizard/node_modules/core-js/internals/regexp-exec-abstract.js","webpack:///firstrunwizard/node_modules/core-js/internals/regexp-exec.js","webpack:///firstrunwizard/node_modules/core-js/internals/regexp-flags.js","webpack:///firstrunwizard/node_modules/core-js/internals/regexp-sticky-helpers.js","webpack:///firstrunwizard/node_modules/core-js/internals/require-object-coercible.js","webpack:///firstrunwizard/node_modules/core-js/internals/set-global.js","webpack:///firstrunwizard/node_modules/core-js/internals/set-species.js","webpack:///firstrunwizard/node_modules/core-js/internals/set-to-string-tag.js","webpack:///firstrunwizard/node_modules/core-js/internals/shared-key.js","webpack:///firstrunwizard/node_modules/core-js/internals/shared-store.js","webpack:///firstrunwizard/node_modules/core-js/internals/shared.js","webpack:///firstrunwizard/node_modules/core-js/internals/string-multibyte.js","webpack:///firstrunwizard/node_modules/core-js/internals/to-absolute-index.js","webpack:///firstrunwizard/node_modules/core-js/internals/to-indexed-object.js","webpack:///firstrunwizard/node_modules/core-js/internals/to-integer.js","webpack:///firstrunwizard/node_modules/core-js/internals/to-length.js","webpack:///firstrunwizard/node_modules/core-js/internals/to-object.js","webpack:///firstrunwizard/node_modules/core-js/internals/to-primitive.js","webpack:///firstrunwizard/node_modules/core-js/internals/to-string-tag-support.js","webpack:///firstrunwizard/node_modules/core-js/internals/uid.js","webpack:///firstrunwizard/node_modules/core-js/internals/use-symbol-as-uid.js","webpack:///firstrunwizard/node_modules/core-js/internals/well-known-symbol.js","webpack:///firstrunwizard/node_modules/core-js/modules/es.array.concat.js","webpack:///firstrunwizard/node_modules/core-js/modules/es.array.filter.js","webpack:///firstrunwizard/node_modules/core-js/modules/es.array.for-each.js","webpack:///firstrunwizard/node_modules/core-js/modules/es.array.index-of.js","webpack:///firstrunwizard/node_modules/core-js/modules/es.array.iterator.js","webpack:///firstrunwizard/node_modules/core-js/modules/es.map.js","webpack:///firstrunwizard/node_modules/core-js/modules/es.object.assign.js","webpack:///firstrunwizard/node_modules/core-js/modules/es.object.to-string.js","webpack:///firstrunwizard/node_modules/core-js/modules/es.regexp.exec.js","webpack:///firstrunwizard/node_modules/core-js/modules/es.regexp.to-string.js","webpack:///firstrunwizard/node_modules/core-js/modules/es.string.iterator.js","webpack:///firstrunwizard/node_modules/core-js/modules/es.string.replace.js","webpack:///firstrunwizard/node_modules/core-js/modules/web.dom-collections.for-each.js","webpack:///firstrunwizard/node_modules/core-js/modules/web.dom-collections.iterator.js","webpack:///firstrunwizard/src/App.vue?vue&type=style&index=0&lang=scss&","webpack:///firstrunwizard/src/App.vue?vue&type=style&index=1&id=e75b1dfa&lang=scss&scoped=true&","webpack:///firstrunwizard/src/components/IntroVideo.vue?vue&type=style&index=0&id=70de3a6e&scoped=true&lang=scss&","webpack:///firstrunwizard/node_modules/css-loader/dist/runtime/api.js","webpack:///firstrunwizard/node_modules/css-loader/dist/runtime/sourceMaps.js","webpack:///firstrunwizard/node_modules/define-properties/index.js","webpack:///firstrunwizard/node_modules/es-abstract/helpers/getOwnPropertyDescriptor.js","webpack:///firstrunwizard/node_modules/es6-object-assign/index.js","webpack:///firstrunwizard/node_modules/foreach/index.js","webpack:///firstrunwizard/node_modules/function-bind/implementation.js","webpack:///firstrunwizard/node_modules/function-bind/index.js","webpack:///firstrunwizard/node_modules/get-intrinsic/index.js","webpack:///firstrunwizard/node_modules/hammerjs/hammer.js","webpack:///firstrunwizard/node_modules/has-symbols/index.js","webpack:///firstrunwizard/node_modules/has-symbols/shams.js","webpack:///firstrunwizard/node_modules/has-tostringtag/shams.js","webpack:///firstrunwizard/node_modules/has/src/index.js","webpack:///firstrunwizard/node_modules/is-arguments/index.js","webpack:///firstrunwizard/node_modules/is-generator-function/index.js","webpack:///firstrunwizard/node_modules/is-nan/implementation.js","webpack:///firstrunwizard/node_modules/is-nan/index.js","webpack:///firstrunwizard/node_modules/is-nan/polyfill.js","webpack:///firstrunwizard/node_modules/is-nan/shim.js","webpack:///firstrunwizard/node_modules/is-typed-array/index.js","webpack:///firstrunwizard/node_modules/lodash.get/index.js","webpack:///firstrunwizard/node_modules/lodash/_DataView.js","webpack:///firstrunwizard/node_modules/lodash/_Hash.js","webpack:///firstrunwizard/node_modules/lodash/_ListCache.js","webpack:///firstrunwizard/node_modules/lodash/_Map.js","webpack:///firstrunwizard/node_modules/lodash/_MapCache.js","webpack:///firstrunwizard/node_modules/lodash/_Promise.js","webpack:///firstrunwizard/node_modules/lodash/_Set.js","webpack:///firstrunwizard/node_modules/lodash/_SetCache.js","webpack:///firstrunwizard/node_modules/lodash/_Stack.js","webpack:///firstrunwizard/node_modules/lodash/_Symbol.js","webpack:///firstrunwizard/node_modules/lodash/_Uint8Array.js","webpack:///firstrunwizard/node_modules/lodash/_WeakMap.js","webpack:///firstrunwizard/node_modules/lodash/_apply.js","webpack:///firstrunwizard/node_modules/lodash/_arrayFilter.js","webpack:///firstrunwizard/node_modules/lodash/_arrayLikeKeys.js","webpack:///firstrunwizard/node_modules/lodash/_arrayPush.js","webpack:///firstrunwizard/node_modules/lodash/_arraySome.js","webpack:///firstrunwizard/node_modules/lodash/_assignMergeValue.js","webpack:///firstrunwizard/node_modules/lodash/_assignValue.js","webpack:///firstrunwizard/node_modules/lodash/_assocIndexOf.js","webpack:///firstrunwizard/node_modules/lodash/_baseAssignValue.js","webpack:///firstrunwizard/node_modules/lodash/_baseCreate.js","webpack:///firstrunwizard/node_modules/lodash/_baseFor.js","webpack:///firstrunwizard/node_modules/lodash/_baseGetAllKeys.js","webpack:///firstrunwizard/node_modules/lodash/_baseGetTag.js","webpack:///firstrunwizard/node_modules/lodash/_baseIsArguments.js","webpack:///firstrunwizard/node_modules/lodash/_baseIsEqual.js","webpack:///firstrunwizard/node_modules/lodash/_baseIsEqualDeep.js","webpack:///firstrunwizard/node_modules/lodash/_baseIsNative.js","webpack:///firstrunwizard/node_modules/lodash/_baseIsTypedArray.js","webpack:///firstrunwizard/node_modules/lodash/_baseKeys.js","webpack:///firstrunwizard/node_modules/lodash/_baseKeysIn.js","webpack:///firstrunwizard/node_modules/lodash/_baseMerge.js","webpack:///firstrunwizard/node_modules/lodash/_baseMergeDeep.js","webpack:///firstrunwizard/node_modules/lodash/_baseRest.js","webpack:///firstrunwizard/node_modules/lodash/_baseSetToString.js","webpack:///firstrunwizard/node_modules/lodash/_baseTimes.js","webpack:///firstrunwizard/node_modules/lodash/_baseUnary.js","webpack:///firstrunwizard/node_modules/lodash/_cacheHas.js","webpack:///firstrunwizard/node_modules/lodash/_cloneArrayBuffer.js","webpack:///firstrunwizard/node_modules/lodash/_cloneBuffer.js","webpack:///firstrunwizard/node_modules/lodash/_cloneTypedArray.js","webpack:///firstrunwizard/node_modules/lodash/_copyArray.js","webpack:///firstrunwizard/node_modules/lodash/_copyObject.js","webpack:///firstrunwizard/node_modules/lodash/_coreJsData.js","webpack:///firstrunwizard/node_modules/lodash/_createAssigner.js","webpack:///firstrunwizard/node_modules/lodash/_createBaseFor.js","webpack:///firstrunwizard/node_modules/lodash/_defineProperty.js","webpack:///firstrunwizard/node_modules/lodash/_equalArrays.js","webpack:///firstrunwizard/node_modules/lodash/_equalByTag.js","webpack:///firstrunwizard/node_modules/lodash/_equalObjects.js","webpack:///firstrunwizard/node_modules/lodash/_freeGlobal.js","webpack:///firstrunwizard/node_modules/lodash/_getAllKeys.js","webpack:///firstrunwizard/node_modules/lodash/_getMapData.js","webpack:///firstrunwizard/node_modules/lodash/_getNative.js","webpack:///firstrunwizard/node_modules/lodash/_getPrototype.js","webpack:///firstrunwizard/node_modules/lodash/_getRawTag.js","webpack:///firstrunwizard/node_modules/lodash/_getSymbols.js","webpack:///firstrunwizard/node_modules/lodash/_getTag.js","webpack:///firstrunwizard/node_modules/lodash/_getValue.js","webpack:///firstrunwizard/node_modules/lodash/_hashClear.js","webpack:///firstrunwizard/node_modules/lodash/_hashDelete.js","webpack:///firstrunwizard/node_modules/lodash/_hashGet.js","webpack:///firstrunwizard/node_modules/lodash/_hashHas.js","webpack:///firstrunwizard/node_modules/lodash/_hashSet.js","webpack:///firstrunwizard/node_modules/lodash/_initCloneObject.js","webpack:///firstrunwizard/node_modules/lodash/_isIndex.js","webpack:///firstrunwizard/node_modules/lodash/_isIterateeCall.js","webpack:///firstrunwizard/node_modules/lodash/_isKeyable.js","webpack:///firstrunwizard/node_modules/lodash/_isMasked.js","webpack:///firstrunwizard/node_modules/lodash/_isPrototype.js","webpack:///firstrunwizard/node_modules/lodash/_listCacheClear.js","webpack:///firstrunwizard/node_modules/lodash/_listCacheDelete.js","webpack:///firstrunwizard/node_modules/lodash/_listCacheGet.js","webpack:///firstrunwizard/node_modules/lodash/_listCacheHas.js","webpack:///firstrunwizard/node_modules/lodash/_listCacheSet.js","webpack:///firstrunwizard/node_modules/lodash/_mapCacheClear.js","webpack:///firstrunwizard/node_modules/lodash/_mapCacheDelete.js","webpack:///firstrunwizard/node_modules/lodash/_mapCacheGet.js","webpack:///firstrunwizard/node_modules/lodash/_mapCacheHas.js","webpack:///firstrunwizard/node_modules/lodash/_mapCacheSet.js","webpack:///firstrunwizard/node_modules/lodash/_mapToArray.js","webpack:///firstrunwizard/node_modules/lodash/_nativeCreate.js","webpack:///firstrunwizard/node_modules/lodash/_nativeKeys.js","webpack:///firstrunwizard/node_modules/lodash/_nativeKeysIn.js","webpack:///firstrunwizard/node_modules/lodash/_nodeUtil.js","webpack:///firstrunwizard/node_modules/lodash/_objectToString.js","webpack:///firstrunwizard/node_modules/lodash/_overArg.js","webpack:///firstrunwizard/node_modules/lodash/_overRest.js","webpack:///firstrunwizard/node_modules/lodash/_root.js","webpack:///firstrunwizard/node_modules/lodash/_safeGet.js","webpack:///firstrunwizard/node_modules/lodash/_setCacheAdd.js","webpack:///firstrunwizard/node_modules/lodash/_setCacheHas.js","webpack:///firstrunwizard/node_modules/lodash/_setToArray.js","webpack:///firstrunwizard/node_modules/lodash/_setToString.js","webpack:///firstrunwizard/node_modules/lodash/_shortOut.js","webpack:///firstrunwizard/node_modules/lodash/_stackClear.js","webpack:///firstrunwizard/node_modules/lodash/_stackDelete.js","webpack:///firstrunwizard/node_modules/lodash/_stackGet.js","webpack:///firstrunwizard/node_modules/lodash/_stackHas.js","webpack:///firstrunwizard/node_modules/lodash/_stackSet.js","webpack:///firstrunwizard/node_modules/lodash/_toSource.js","webpack:///firstrunwizard/node_modules/lodash/constant.js","webpack:///firstrunwizard/node_modules/lodash/eq.js","webpack:///firstrunwizard/node_modules/lodash/identity.js","webpack:///firstrunwizard/node_modules/lodash/isArguments.js","webpack:///firstrunwizard/node_modules/lodash/isArray.js","webpack:///firstrunwizard/node_modules/lodash/isArrayLike.js","webpack:///firstrunwizard/node_modules/lodash/isArrayLikeObject.js","webpack:///firstrunwizard/node_modules/lodash/isBuffer.js","webpack:///firstrunwizard/node_modules/lodash/isEqual.js","webpack:///firstrunwizard/node_modules/lodash/isFunction.js","webpack:///firstrunwizard/node_modules/lodash/isLength.js","webpack:///firstrunwizard/node_modules/lodash/isObject.js","webpack:///firstrunwizard/node_modules/lodash/isObjectLike.js","webpack:///firstrunwizard/node_modules/lodash/isPlainObject.js","webpack:///firstrunwizard/node_modules/lodash/isTypedArray.js","webpack:///firstrunwizard/node_modules/lodash/keys.js","webpack:///firstrunwizard/node_modules/lodash/keysIn.js","webpack:///firstrunwizard/node_modules/lodash/merge.js","webpack:///firstrunwizard/node_modules/lodash/stubArray.js","webpack:///firstrunwizard/node_modules/lodash/stubFalse.js","webpack:///firstrunwizard/node_modules/lodash/toPlainObject.js","webpack:///firstrunwizard/node_modules/node-gettext/lib/gettext.js","webpack:///firstrunwizard/node_modules/node-gettext/lib/plurals.js","webpack:///firstrunwizard/node_modules/node-polyfill-webpack-plugin/node_modules/assert/build/assert.js","webpack:///firstrunwizard/node_modules/node-polyfill-webpack-plugin/node_modules/assert/build/internal/assert/assertion_error.js","webpack:///firstrunwizard/node_modules/node-polyfill-webpack-plugin/node_modules/assert/build/internal/errors.js","webpack:///firstrunwizard/node_modules/node-polyfill-webpack-plugin/node_modules/assert/build/internal/util/comparisons.js","webpack:///firstrunwizard/node_modules/node-polyfill-webpack-plugin/node_modules/inherits/inherits_browser.js","webpack:///firstrunwizard/node_modules/node-polyfill-webpack-plugin/node_modules/util/support/isBufferBrowser.js","webpack:///firstrunwizard/node_modules/node-polyfill-webpack-plugin/node_modules/util/support/types.js","webpack:///firstrunwizard/node_modules/node-polyfill-webpack-plugin/node_modules/util/util.js","webpack:///firstrunwizard/node_modules/object-is/implementation.js","webpack:///firstrunwizard/node_modules/object-is/index.js","webpack:///firstrunwizard/node_modules/object-is/polyfill.js","webpack:///firstrunwizard/node_modules/object-is/shim.js","webpack:///firstrunwizard/node_modules/object-keys/implementation.js","webpack:///firstrunwizard/node_modules/object-keys/index.js","webpack:///firstrunwizard/node_modules/object-keys/isArguments.js","webpack:///firstrunwizard/node_modules/process/browser.js","webpack:///firstrunwizard/node_modules/semver/classes/semver.js","webpack:///firstrunwizard/node_modules/semver/functions/major.js","webpack:///firstrunwizard/node_modules/semver/functions/parse.js","webpack:///firstrunwizard/node_modules/semver/functions/valid.js","webpack:///firstrunwizard/node_modules/semver/internal/constants.js","webpack:///firstrunwizard/node_modules/semver/internal/debug.js","webpack:///firstrunwizard/node_modules/semver/internal/identifiers.js","webpack:///firstrunwizard/node_modules/semver/internal/parse-options.js","webpack:///firstrunwizard/node_modules/semver/internal/re.js","webpack:///firstrunwizard/node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js","webpack:///firstrunwizard/node_modules/style-loader/dist/runtime/insertBySelector.js","webpack:///firstrunwizard/node_modules/style-loader/dist/runtime/insertStyleElement.js","webpack:///firstrunwizard/node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js","webpack:///firstrunwizard/node_modules/style-loader/dist/runtime/styleDomAPI.js","webpack:///firstrunwizard/node_modules/style-loader/dist/runtime/styleTagTransform.js","webpack:///firstrunwizard/node_modules/@babel/runtime/helpers/esm/typeof.js","webpack:///firstrunwizard/node_modules/@babel/runtime/helpers/esm/defineProperty.js","webpack:///firstrunwizard/node_modules/@babel/runtime/helpers/esm/createClass.js","webpack:///firstrunwizard/node_modules/popper.js/dist/esm/popper.js","webpack:///firstrunwizard/node_modules/v-tooltip/node_modules/vue-resize/dist/vue-resize.esm.js","webpack:///firstrunwizard/node_modules/v-tooltip/dist/v-tooltip.esm.js","webpack:///firstrunwizard/node_modules/@babel/runtime/helpers/esm/classCallCheck.js","webpack:///firstrunwizard/node_modules/vue-material-design-icons/ChevronLeft.vue","webpack:///firstrunwizard/node_modules/vue-material-design-icons/ChevronLeft.vue?vue&type=script&lang=js&","webpack://firstrunwizard/./node_modules/vue-material-design-icons/ChevronLeft.vue?e7bb","webpack:///firstrunwizard/node_modules/vue-material-design-icons/ChevronLeft.vue?vue&type=template&id=5de37570&","webpack:///firstrunwizard/node_modules/vue-material-design-icons/ChevronRight.vue","webpack:///firstrunwizard/node_modules/vue-material-design-icons/ChevronRight.vue?vue&type=script&lang=js&","webpack://firstrunwizard/./node_modules/vue-material-design-icons/ChevronRight.vue?621b","webpack:///firstrunwizard/node_modules/vue-material-design-icons/ChevronRight.vue?vue&type=template&id=fbe63c02&","webpack:///firstrunwizard/node_modules/vue-material-design-icons/Close.vue","webpack:///firstrunwizard/node_modules/vue-material-design-icons/Close.vue?vue&type=script&lang=js&","webpack://firstrunwizard/./node_modules/vue-material-design-icons/Close.vue?c1a9","webpack:///firstrunwizard/node_modules/vue-material-design-icons/Close.vue?vue&type=template&id=6c71068e&","webpack:///firstrunwizard/node_modules/vue-material-design-icons/DotsHorizontal.vue","webpack:///firstrunwizard/node_modules/vue-material-design-icons/DotsHorizontal.vue?vue&type=script&lang=js&","webpack://firstrunwizard/./node_modules/vue-material-design-icons/DotsHorizontal.vue?c5a1","webpack:///firstrunwizard/node_modules/vue-material-design-icons/DotsHorizontal.vue?vue&type=template&id=ea59d84c&","webpack:///firstrunwizard/node_modules/vue-material-design-icons/Pause.vue","webpack:///firstrunwizard/node_modules/vue-material-design-icons/Pause.vue?vue&type=script&lang=js&","webpack://firstrunwizard/./node_modules/vue-material-design-icons/Pause.vue?888e","webpack:///firstrunwizard/node_modules/vue-material-design-icons/Pause.vue?vue&type=template&id=3335ab9e&","webpack:///firstrunwizard/node_modules/vue-material-design-icons/Play.vue","webpack:///firstrunwizard/node_modules/vue-material-design-icons/Play.vue?vue&type=script&lang=js&","webpack://firstrunwizard/./node_modules/vue-material-design-icons/Play.vue?6342","webpack:///firstrunwizard/node_modules/vue-material-design-icons/Play.vue?vue&type=template&id=4d9eb9d0&","webpack:///firstrunwizard/node_modules/vue-loader/lib/runtime/componentNormalizer.js","webpack:///firstrunwizard/node_modules/vue/dist/vue.runtime.esm.js","webpack:///firstrunwizard/node_modules/which-typed-array/index.js","webpack:///firstrunwizard/webpack/bootstrap","webpack:///firstrunwizard/webpack/runtime/compat get default export","webpack:///firstrunwizard/webpack/runtime/define property getters","webpack:///firstrunwizard/webpack/runtime/global","webpack:///firstrunwizard/webpack/runtime/hasOwnProperty shorthand","webpack:///firstrunwizard/webpack/runtime/make namespace object","webpack:///firstrunwizard/webpack/runtime/node module decorator","webpack:///firstrunwizard/webpack/runtime/publicPath","webpack:///firstrunwizard/src/components/IntroVideo.vue","webpack:///firstrunwizard/src/components/IntroVideo.vue?vue&type=script&lang=js&","webpack://firstrunwizard/./src/components/IntroVideo.vue?fbfe","webpack://firstrunwizard/./src/components/IntroVideo.vue?a94f","webpack:///firstrunwizard/src/components/IntroVideo.vue?vue&type=template&id=70de3a6e&scoped=true&","webpack:///firstrunwizard/src/App.vue","webpack:///firstrunwizard/src/App.vue?vue&type=script&lang=js&","webpack://firstrunwizard/./src/App.vue?e404","webpack://firstrunwizard/./src/App.vue?9bb9","webpack://firstrunwizard/./src/App.vue?f581","webpack:///firstrunwizard/src/App.vue?vue&type=template&id=e75b1dfa&scoped=true&","webpack:///firstrunwizard/src/main.js"],"names":["Object","defineProperty","exports","value","enumerable","get","_requesttoken","getRequestToken","onRequestTokenUpdate","_user","getCurrentUser","token","observer","observers","push","_eventBus","tokenElement","document","getElementsByTagName","getAttribute","subscribe","e","forEach","console","error","uid","displayName","isAdmin","uidElement","displayNameElement","OC","isUserAdmin","obj","_getRequestToken","_axios","__esModule","default","_auth","client","create","headers","requesttoken","cancelableClient","assign","CancelToken","isCancel","defaults","_default","ProxyBus","_valid","_interopRequireDefault","_major","_defineProperties","target","props","i","length","descriptor","configurable","writable","key","packageJson","bus","instance","Constructor","TypeError","_classCallCheck","this","getVersion","warn","protoProps","staticProps","name","handler","unsubscribe","event","emit","prototype","SimpleBus","Map","handlers","set","concat","filter","h","_ProxyBus","_SimpleBus","window","_nc_event_bus","getGettextBuilder","GettextBuilder","_nodeGettext","_","_createClass","translations","debug","language","locale","setLanguage","getLanguage","replace","data","GettextWrapper","gt","sourceLocale","addTranslations","setLocale","translated","vars","a","b","r","toString","original","placeholders","arguments","undefined","subtitudePlaceholders","gettext","singular","plural","count","ngettext","getLocale","getCanonicalLocale","translate","app","text","options","L10N","translatePlural","textSingular","textPlural","getFirstDay","firstDay","getDayNames","dayNames","getDayNamesShort","dayNamesShort","getDayNamesMin","dayNamesMin","getMonthNames","monthNames","getMonthNamesShort","monthNamesShort","url","params","allOptions","escape","noRewrite","_build","encodeURIComponent","charAt","config","modRewriteWorking","getRootUrl","generateFilePath","type","file","isCore","coreApps","indexOf","link","substring","appswebroots","encodeURI","webroot","module","t","n","l","call","m","c","d","o","Symbol","toStringTag","bind","hasOwnProperty","p","s","Array","isArray","iterator","next","done","return","slice","constructor","from","test","btoa","unescape","JSON","stringify","sources","map","sourceRoot","join","Boolean","all","atob","querySelector","HTMLIFrameElement","contentDocument","head","identifier","base","u","css","media","sourceMap","references","updater","A","createElement","attributes","nonce","nc","keys","setAttribute","insert","Error","appendChild","styleSheet","cssText","createTextNode","childNodes","removeChild","insertBefore","removeAttribute","firstChild","g","singleton","parentNode","splice","render","staticRenderFns","_compiled","functional","_scopeId","$vnode","ssrContext","parent","__VUE_SSR_CONTEXT__","_registeredComponents","add","_ssrRegister","$root","$options","shadowRoot","_injectStyles","beforeCreate","detectLocale","Actions","Activities","Choose","Close","Custom","Flags","Global","Next","Objects","Previous","Search","Settings","Submit","Symbols","pluralId","msgid","msgid_plural","msgstr","addTranslation","build","version","names","mappings","sourcesContent","locals","VTooltip","defaultTemplate","defaultHtml","defaultDelay","show","hide","components","VPopover","mounted","$watch","$refs","popover","isOpen","$emit","$createElement","_self","_c","_g","_b","ref","attrs","scopedSlots","_u","fn","_t","proxy","$attrs","$listeners","Math","random","substr","before","$slots","trim","util","$destroy","$el","remove","beforeUpdate","getText","computed","isLongText","methods","$parent","mixins","icon","String","title","closeAfterClick","ariaLabel","isIconUrl","URL","onClick","closeMenu","getOwnPropertySymbols","getOwnPropertyDescriptor","apply","getOwnPropertyDescriptors","defineProperties","directives","tooltip","DotsHorizontal","Popover","VNodes","vnodes","open","forceMenu","forceTitle","menuTitle","primary","defaultIcon","placement","boundariesElement","Element","container","disabled","actions","opened","focusIndex","randomId","children","$children","hasMultipleActions","isValidSingleAction","firstActionElement","singleActionTitle","isDisabled","firstAction","$props","firstActionVNode","firstActionBinding","componentOptions","tag","is","href","to","exact","firstActionEvent","listeners","click","firstActionEventBinding","firstActionIconSlot","firstActionClass","staticClass","class","iconSlotIsPopulated","watch","beforeMount","initActions","openMenu","menuButton","focus","onOpen","$nextTick","focusFirstAction","onMouseFocusAction","activeElement","closest","menu","querySelectorAll","focusAction","removeCurrentActive","classList","focusPreviousAction","preventIfEvent","focusNextAction","focusLastAction","preventDefault","stopPropagation","execFirstAction","onFocus","onBlur","v","C","f","y","k","rawName","expression","modifiers","auto","rel","on","_d","blur","_v","_s","hidden","delay","size","decorative","_e","tabindex","keydown","_k","keyCode","ctrlKey","shiftKey","altKey","metaKey","mousemove","id","isFocusable","focusable","style","backgroundImage","domProps","textContent","start","Date","setTimeout","pause","clearTimeout","clear","getTimeLeft","getStateRunning","ActionButton","ChevronLeft","ChevronRight","Pause","Play","hasPrevious","hasNext","outTransition","enableSlideshow","clearViewDelay","Number","slideshowDelay","slideshowPaused","enableSwipe","spreadNavigation","validator","includes","canClose","dark","mc","showModal","clearView","clearViewTimeout","playing","slideshowTimeout","iconSize","modalTransitionName","playPauseTitle","cssVariables","addEventListener","handleKeydown","beforeDestroy","removeEventListener","off","destroy","handleMouseMove","mask","handleSwipe","body","lastChild","destroyed","previous","resetSlideshow","close","togglePlayPause","handleSlideshow","clearSlideshowTimeout","B","w","S","x","j","N","z","P","touchmove","invisible","height","width","stroke","fill","cx","cy","mousedown","currentTarget","possibleNames","globalThis","out","utils","settle","cookies","buildURL","buildFullPath","parseHeaders","isURLSameOrigin","createError","Cancel","Promise","resolve","reject","onCanceled","requestData","requestHeaders","responseType","cancelToken","signal","isFormData","request","XMLHttpRequest","auth","username","password","Authorization","fullPath","baseURL","onloadend","responseHeaders","getAllResponseHeaders","response","responseText","status","statusText","err","method","toUpperCase","paramsSerializer","timeout","onreadystatechange","readyState","responseURL","onabort","onerror","ontimeout","timeoutErrorMessage","transitional","clarifyTimeoutError","isStandardBrowserEnv","xsrfValue","withCredentials","xsrfCookieName","read","xsrfHeaderName","val","toLowerCase","setRequestHeader","isUndefined","onDownloadProgress","onUploadProgress","upload","cancel","abort","aborted","send","Axios","mergeConfig","axios","createInstance","defaultConfig","context","extend","instanceConfig","VERSION","promises","spread","isAxiosError","message","__CANCEL__","executor","resolvePromise","promise","then","_listeners","onfulfilled","_resolve","reason","throwIfRequested","listener","index","source","InterceptorManager","dispatchRequest","validators","interceptors","assertOptions","silentJSONParsing","boolean","forcedJSONParsing","requestInterceptorChain","synchronousRequestInterceptors","interceptor","runWhen","synchronous","unshift","fulfilled","rejected","responseInterceptorChain","chain","shift","newConfig","onFulfilled","onRejected","getUri","use","eject","isAbsoluteURL","combineURLs","requestedURL","enhanceError","code","transformData","throwIfCancellationRequested","transformRequest","merge","common","adapter","transformResponse","toJSON","description","number","fileName","lineNumber","columnNumber","stack","config1","config2","getMergedValue","isPlainObject","mergeDeepProperties","prop","valueFromConfig2","defaultToConfig2","mergeDirectKeys","mergeMap","configValue","validateStatus","fns","normalizeHeaderName","DEFAULT_CONTENT_TYPE","setContentTypeIfUnset","process","isArrayBuffer","isBuffer","isStream","isFile","isBlob","isArrayBufferView","buffer","isURLSearchParams","isObject","rawValue","parser","encoder","isString","parse","stringifySafely","strictJSONParsing","maxContentLength","maxBodyLength","thisArg","args","encode","serializedParams","parts","isDate","toISOString","hashmarkIndex","relativeURL","write","expires","path","domain","secure","cookie","isNumber","toGMTString","match","RegExp","decodeURIComponent","now","payload","originURL","msie","navigator","userAgent","urlParsingNode","resolveURL","protocol","host","search","hash","hostname","port","pathname","location","requestURL","parsed","normalizedName","ignoreDuplicateOf","split","line","callback","arr","thing","deprecatedWarnings","formatMessage","opt","desc","opts","schema","allowUnknown","result","getPrototypeOf","isFunction","FormData","ArrayBuffer","isView","pipe","URLSearchParams","product","assignValue","str","stripBOM","content","charCodeAt","GetIntrinsic","callBind","$indexOf","allowMissing","intrinsic","$apply","$call","$reflectApply","$gOPD","$defineProperty","$max","originalFunction","func","applyBind","assert","getTime","times","functions","log","label","time","duration","format","object","inspect","ok","tuple","it","wellKnownSymbol","definePropertyModule","UNSCOPABLES","ArrayPrototype","unicode","$forEach","arrayMethodIsStrict","arrayMethodUsesToLength","STRICT_METHOD","USES_TO_LENGTH","callbackfn","toIndexedObject","toLength","toAbsoluteIndex","createMethod","IS_INCLUDES","$this","el","fromIndex","O","IndexedObject","toObject","arraySpeciesCreate","TYPE","IS_MAP","IS_FILTER","IS_SOME","IS_EVERY","IS_FIND_INDEX","NO_HOLES","that","specificCreate","self","boundFunction","some","every","find","findIndex","fails","V8_VERSION","SPECIES","METHOD_NAME","array","foo","argument","DESCRIPTORS","has","cache","thrower","ACCESSORS","argument0","argument1","originalArray","anObject","ENTRIES","returnMethod","ITERATOR","SAFE_CLOSING","called","iteratorWithReturn","exec","SKIP_CLOSING","ITERATION_SUPPORT","TO_STRING_TAG_SUPPORT","classofRaw","TO_STRING_TAG","CORRECT_ARGUMENTS","tryGet","callee","redefineAll","anInstance","iterate","defineIterator","setSpecies","fastKey","InternalStateModule","setInternalState","internalStateGetterFor","getterFor","getConstructor","wrapper","CONSTRUCTOR_NAME","ADDER","iterable","first","last","getInternalState","define","state","entry","getEntry","removed","prev","setStrong","ITERATOR_NAME","getInternalCollectionState","getInternalIteratorState","iterated","kind","$","global","isForced","redefine","InternalMetadataModule","checkCorrectnessOfIteration","setToStringTag","inheritIfRequired","IS_WEAK","NativeConstructor","NativePrototype","exported","fixMethod","KEY","nativeMethod","entries","REQUIRED","HASNT_CHAINING","THROWS_ON_PRIMITIVES","ACCEPT_ITERABLES","BUGGY_ZERO","$instance","dummy","forced","ownKeys","getOwnPropertyDescriptorModule","F","IteratorPrototype","createPropertyDescriptor","Iterators","returnThis","IteratorConstructor","NAME","bitmap","toPrimitive","propertyKey","createIteratorConstructor","setPrototypeOf","createNonEnumerableProperty","IS_PURE","IteratorsCore","BUGGY_SAFARI_ITERATORS","KEYS","VALUES","Iterable","DEFAULT","IS_SET","FORCED","CurrentIteratorPrototype","getIterationMethod","KIND","defaultIterator","IterablePrototype","INCORRECT_VALUES_NAME","nativeIterator","anyNativeIterator","values","proto","EXISTS","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","getBuiltIn","versions","v8","setGlobal","copyConstructorProperties","targetProperty","sourceProperty","TARGET","GLOBAL","STATIC","stat","noTargetGet","sham","regexpExec","REPLACE_SUPPORTS_NAMED_GROUPS","re","groups","REPLACE_KEEPS_$0","REPLACE","REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE","SPLIT_WORKS_WITH_OVERWRITTEN_EXEC","originalExec","SYMBOL","DELEGATES_TO_SYMBOL","DELEGATES_TO_EXEC","execCalled","flags","nativeRegExpMethod","regexp","arg2","forceStringMethod","stringMethod","regexMethod","string","arg","isExtensible","preventExtensions","aFunction","variable","namespace","classof","check","Function","propertyIsEnumerable","Wrapper","NewTarget","NewTargetPrototype","store","functionToString","inspectSource","hiddenKeys","FREEZING","METADATA","setMetadata","objectID","weakData","meta","getWeakData","onFreeze","NATIVE_WEAK_MAP","objectHas","sharedKey","WeakMap","wmget","wmhas","wmset","metadata","STATE","enforce","replacement","feature","detection","normalize","POLYFILL","NATIVE","isArrayIteratorMethod","getIteratorMethod","callWithSafeIterationClosing","Result","stopped","AS_ENTRIES","IS_ITERATOR","iterFn","step","stop","PrototypeOfArrayIteratorPrototype","arrayIterator","objectKeys","getOwnPropertySymbolsModule","propertyIsEnumerableModule","nativeAssign","symbol","alphabet","chr","T","argumentsLength","activeXDocument","enumBugKeys","html","documentCreateElement","IE_PROTO","EmptyConstructor","scriptTag","LT","NullProtoObject","ActiveXObject","iframeDocument","iframe","temp","parentWindow","NullProtoObjectViaActiveX","display","src","contentWindow","Properties","IE8_DOM_DEFINE","nativeDefineProperty","Attributes","nativeGetOwnPropertyDescriptor","internalObjectKeys","getOwnPropertyNames","CORRECT_PROTOTYPE_GETTER","ObjectPrototype","nativePropertyIsEnumerable","NASHORN_BUG","V","aPossiblePrototype","setter","CORRECT_SETTER","__proto__","getOwnPropertyNamesModule","enforceInternalState","TEMPLATE","unsafe","simple","R","re1","re2","regexpFlags","stickyHelpers","nativeExec","nativeReplace","patchedExec","UPDATES_LAST_INDEX_WRONG","lastIndex","UNSUPPORTED_Y","BROKEN_CARET","NPCG_INCLUDED","reCopy","sticky","charsAdded","strCopy","multiline","input","ignoreCase","dotAll","RE","TAG","shared","SHARED","mode","copyright","toInteger","requireObjectCoercible","CONVERT_TO_STRING","pos","second","position","codeAt","max","min","integer","ceil","floor","isNaN","PREFERRED_STRING","valueOf","postfix","NATIVE_SYMBOL","USE_SYMBOL_AS_UID","WellKnownSymbolsStore","createWellKnownSymbol","withoutSetter","createProperty","arrayMethodHasSpeciesSupport","IS_CONCAT_SPREADABLE","MAX_SAFE_INTEGER","MAXIMUM_ALLOWED_INDEX_EXCEEDED","IS_CONCAT_SPREADABLE_SUPPORT","SPECIES_SUPPORT","isConcatSpreadable","spreadable","len","E","$filter","HAS_SPECIES_SUPPORT","nativeIndexOf","NEGATIVE_ZERO","searchElement","addToUnscopables","ARRAY_ITERATOR","Arguments","collection","collectionStrong","init","TO_STRING","RegExpPrototype","nativeToString","NOT_GENERIC","INCORRECT_NAME","rf","STRING_ITERATOR","point","fixRegExpWellKnownSymbolLogic","advanceStringIndex","regExpExec","SUBSTITUTION_SYMBOLS","SUBSTITUTION_SYMBOLS_NO_NAMED","maybeCallNative","UNSAFE_SUBSTITUTE","searchValue","replaceValue","replacer","res","rx","functionalReplace","fullUnicode","results","accumulatedResult","nextSourcePosition","matched","captures","namedCaptures","replacerArgs","getSubstitution","tailPos","symbols","ch","capture","DOMIterables","COLLECTION_NAME","Collection","CollectionPrototype","ArrayIteratorMethods","ArrayValues","___CSS_LOADER_EXPORT___","cssWithMappingToString","list","item","needLayer","modules","dedupe","supports","layer","alreadyImportedModules","cssMapping","base64","sourceMapping","sourceURLs","hasSymbols","toStr","origDefineProperty","supportsDescriptors","arePropertyDescriptorsSupported","predicate","predicates","firstSource","nextSource","keysArray","nextIndex","nextKey","polyfill","hasOwn","ctx","ERROR_MESSAGE","funcType","bound","binder","boundLength","boundArgs","Empty","implementation","$SyntaxError","SyntaxError","$Function","$TypeError","getEvalledConstructor","expressionSyntax","throwTypeError","ThrowTypeError","calleeThrows","gOPDthrows","getProto","needsEval","TypedArray","Uint8Array","INTRINSICS","AggregateError","Atomics","BigInt","DataView","decodeURI","eval","EvalError","Float32Array","Float64Array","FinalizationRegistry","Int8Array","Int16Array","Int32Array","isFinite","parseFloat","parseInt","Proxy","RangeError","ReferenceError","Reflect","Set","SharedArrayBuffer","Uint8ClampedArray","Uint16Array","Uint32Array","URIError","WeakRef","WeakSet","doEval","gen","LEGACY_ALIASES","$concat","$spliceApply","$replace","$strSlice","rePropName","reEscapeChar","stringToPath","quote","subString","getBaseIntrinsic","alias","intrinsicName","intrinsicBaseName","intrinsicRealName","skipFurtherCaching","isOwn","part","exportName","VENDOR_PREFIXES","TEST_ELEMENT","round","abs","setTimeoutContext","bindFn","invokeArrayArg","each","deprecate","deprecationMessage","output","dest","inherit","child","properties","childP","baseP","_super","boolOrFn","ifUndefined","val1","val2","addEventListeners","types","splitStr","removeEventListeners","hasParent","node","inStr","inArray","findByKey","toArray","uniqueArray","sort","prefixed","property","prefix","camelProp","_uniqueId","getWindowForElement","element","doc","ownerDocument","defaultView","SUPPORT_TOUCH","SUPPORT_POINTER_EVENTS","SUPPORT_ONLY_TOUCH","INPUT_TYPE_TOUCH","INPUT_TYPE_MOUSE","DIRECTION_VERTICAL","DIRECTION_UP","PROPS_XY","PROPS_CLIENT_XY","Input","manager","inputTarget","domHandler","ev","enable","inputHandler","eventType","pointersLen","pointers","changedPointersLen","changedPointers","isFirst","isFinal","session","pointersLength","firstInput","simpleCloneInputData","firstMultiple","offsetCenter","center","getCenter","timeStamp","deltaTime","angle","getAngle","distance","getDistance","offset","offsetDelta","prevDelta","prevInput","deltaX","deltaY","computeDeltaXY","offsetDirection","getDirection","overallVelocity","getVelocity","overallVelocityX","overallVelocityY","scale","end","rotation","getRotation","maxPointers","velocity","velocityX","velocityY","direction","lastInterval","computeIntervalInputData","srcEvent","computeInputData","recognize","clientX","clientY","p1","p2","sqrt","atan2","PI","evEl","evTarget","evWin","MOUSE_INPUT_MAP","mouseup","MOUSE_ELEMENT_EVENTS","MOUSE_WINDOW_EVENTS","MouseInput","pressed","button","which","pointerType","POINTER_INPUT_MAP","pointerdown","pointermove","pointerup","pointercancel","pointerout","IE10_POINTER_TYPE_ENUM","POINTER_ELEMENT_EVENTS","POINTER_WINDOW_EVENTS","PointerEventInput","pointerEvents","MSPointerEvent","PointerEvent","removePointer","eventTypeNormalized","isTouch","storeIndex","pointerId","SINGLE_TOUCH_INPUT_MAP","touchstart","touchend","touchcancel","SINGLE_TOUCH_TARGET_EVENTS","SINGLE_TOUCH_WINDOW_EVENTS","SingleTouchInput","started","normalizeSingleTouches","touches","changed","changedTouches","TOUCH_INPUT_MAP","TOUCH_TARGET_EVENTS","TouchInput","targetIds","getTouches","allTouches","targetTouches","changedTargetTouches","touch","TouchMouseInput","mouse","primaryTouch","lastTouches","recordTouches","eventData","setLastTouch","lastTouch","lts","isSyntheticEvent","dx","dy","inputEvent","inputData","isMouse","sourceCapabilities","firesTouchEvents","PREFIXED_TOUCH_ACTION","NATIVE_TOUCH_ACTION","TOUCH_ACTION_COMPUTE","TOUCH_ACTION_AUTO","TOUCH_ACTION_MANIPULATION","TOUCH_ACTION_NONE","TOUCH_ACTION_PAN_X","TOUCH_ACTION_PAN_Y","TOUCH_ACTION_MAP","touchMap","cssSupports","CSS","getTouchActionProps","TouchAction","compute","update","touchAction","recognizers","recognizer","getTouchAction","hasPanX","hasPanY","cleanTouchActions","preventDefaults","prevented","hasNone","isTapPointer","isTapMovement","isTapTouchTime","DIRECTION_LEFT","preventSrc","STATE_FAILED","Recognizer","simultaneous","requireFail","stateStr","directionStr","getRecognizerByNameIfManager","otherRecognizer","AttrRecognizer","PanRecognizer","pX","pY","PinchRecognizer","PressRecognizer","_timer","_input","RotateRecognizer","SwipeRecognizer","TapRecognizer","pTime","pCenter","Hammer","preset","Manager","recognizeWith","dropRecognizeWith","requireFailure","dropRequireFailure","hasRequireFailures","canRecognizeWith","additionalEvent","tryEmit","canEmit","inputDataClone","reset","attrTest","optionPointers","isRecognized","isValid","threshold","DIRECTION_HORIZONTAL","directionTest","hasMoved","inOut","validPointers","validMovement","validTime","taps","interval","posThreshold","validTouchTime","failTimeout","validInterval","validMultiTap","tapCount","domEvents","inputClass","cssProps","userSelect","touchSelect","touchCallout","contentZooming","userDrag","tapHighlightColor","oldCssProps","toggleCssProps","force","curRecognizer","existing","events","gestureEvent","createEvent","initEvent","gesture","dispatchEvent","triggerDomEvent","INPUT_START","INPUT_MOVE","INPUT_END","INPUT_CANCEL","STATE_POSSIBLE","STATE_BEGAN","STATE_CHANGED","STATE_ENDED","STATE_RECOGNIZED","STATE_CANCELLED","DIRECTION_NONE","DIRECTION_RIGHT","DIRECTION_DOWN","DIRECTION_ALL","Tap","Pan","Swipe","Pinch","Rotate","Press","origSymbol","hasSymbolSham","sym","symObj","syms","hasToStringTag","$toString","callBound","isStandardArguments","isLegacyArguments","supportsStandardArguments","GeneratorFunction","fnToStr","isFnRegex","generatorFunc","getGeneratorFunc","getPolyfill","shim","NaN","availableTypedArrays","typedArrays","$slice","toStrTags","gOPD","typedArray","superProto","anyTrue","getter","tryTypedArrays","HASH_UNDEFINED","funcTag","genTag","reIsDeepProp","reIsPlainProp","reLeadingDot","reIsHostCtor","freeGlobal","freeSelf","root","arrayProto","funcProto","objectProto","coreJsData","maskSrcKey","funcToString","objectToString","reIsNative","getNative","nativeCreate","symbolProto","symbolToString","Hash","ListCache","MapCache","assocIndexOf","other","baseGet","isSymbol","isKey","toKey","baseIsNative","pattern","isHostObject","toSource","getMapData","__data__","getValue","pop","memoize","baseToString","resolver","memoized","Cache","isObjectLike","defaultValue","hashClear","hashDelete","hashGet","hashHas","hashSet","listCacheClear","listCacheDelete","listCacheGet","listCacheHas","listCacheSet","mapCacheClear","mapCacheDelete","mapCacheGet","mapCacheHas","mapCacheSet","setCacheAdd","setCacheHas","SetCache","stackClear","stackDelete","stackGet","stackHas","stackSet","Stack","resIndex","baseTimes","isArguments","isIndex","isTypedArray","inherited","isArr","isArg","isBuff","isType","skipIndexes","baseAssignValue","eq","objValue","objectCreate","baseCreate","baseFor","createBaseFor","arrayPush","keysFunc","symbolsFunc","getRawTag","symToStringTag","baseGetTag","baseIsEqualDeep","baseIsEqual","bitmask","customizer","equalArrays","equalByTag","equalObjects","getTag","argsTag","arrayTag","objectTag","equalFunc","objIsArr","othIsArr","objTag","othTag","objIsObj","othIsObj","isSameTag","objIsWrapped","othIsWrapped","objUnwrapped","othUnwrapped","isMasked","isLength","typedArrayTags","isPrototype","nativeKeys","nativeKeysIn","isProto","assignMergeValue","baseMergeDeep","keysIn","safeGet","baseMerge","srcIndex","srcValue","newValue","cloneBuffer","cloneTypedArray","copyArray","initCloneObject","isArrayLikeObject","toPlainObject","mergeFunc","stacked","isCommon","isTyped","identity","overRest","setToString","constant","baseSetToString","iteratee","arrayBuffer","byteLength","freeExports","nodeType","freeModule","Buffer","allocUnsafe","isDeep","copy","cloneArrayBuffer","byteOffset","isNew","baseRest","isIterateeCall","assigner","guard","fromRight","arraySome","cacheHas","isPartial","arrLength","othLength","arrStacked","othStacked","seen","arrValue","othValue","compared","othIndex","mapToArray","setToArray","symbolValueOf","convert","getAllKeys","objProps","objLength","objStacked","skipCtor","objCtor","othCtor","baseGetAllKeys","getSymbols","isKeyable","getPrototype","overArg","nativeObjectToString","unmasked","arrayFilter","stubArray","nativeGetSymbols","mapTag","promiseTag","setTag","weakMapTag","dataViewTag","dataViewCtorString","mapCtorString","promiseCtorString","setCtorString","weakMapCtorString","Ctor","ctorString","reIsUint","isArrayLike","freeProcess","nodeUtil","require","binding","transform","nativeMax","otherArgs","shortOut","nativeNow","lastCalled","stamp","remaining","pairs","LARGE_ARRAY_SIZE","baseIsArguments","stubFalse","objectCtorString","baseIsTypedArray","baseUnary","nodeIsTypedArray","arrayLikeKeys","baseKeys","baseKeysIn","createAssigner","copyObject","plurals","Gettext","catalogs","eventName","setTextDomain","dnpgettext","dgettext","msgidPlural","dngettext","pgettext","msgctxt","dpgettext","npgettext","translation","defaultTranslation","_getTranslation","pluralsFunc","getLanguageCode","getComment","comments","textdomain","setlocale","addTextdomain","ach","examples","sample","nplurals","pluralsText","af","ak","am","an","ar","arn","ast","ay","az","be","bg","bn","bo","br","brx","bs","ca","cgg","cs","csb","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","ms","mt","my","nah","nap","nb","ne","nl","nn","no","nso","oc","or","pa","pap","pl","pms","ps","pt","rm","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","_typeof","isDeepEqual","isDeepStrictEqual","_require$codes","codes","ERR_AMBIGUOUS_ARGUMENT","ERR_INVALID_ARG_TYPE","ERR_INVALID_ARG_VALUE","ERR_INVALID_RETURN_VALUE","ERR_MISSING_ARGS","AssertionError","_require$types","isPromise","isRegExp","objectAssign","objectIs","lazyLoadComparison","comparison","warned","NO_EXCEPTION_SENTINEL","innerFail","innerOk","argLen","generatedMessage","actual","expected","operator","stackStartFn","_len","_key","fail","internalMessage","argsLen","emitWarning","errArgs","equal","notEqual","deepEqual","notDeepEqual","deepStrictEqual","notDeepStrictEqual","strictEqual","notStrictEqual","Comparison","_this","compareExceptionKey","expectedException","msg","isPrototypeOf","getActual","checkIsPromise","catch","waitForActual","promiseFn","resultPromise","expectsError","details","fnType","expectsNoError","strict","_len6","_key6","throws","_len2","_key2","rejects","_len3","_key3","doesNotThrow","_len4","_key4","doesNotReject","_len5","_key5","ifError","newErr","origStack","tmp2","tmp1","_defineProperty","_possibleConstructorReturn","_assertThisInitialized","_wrapNativeSuper","Class","_cache","_construct","_getPrototypeOf","_setPrototypeOf","isNativeReflectConstruct","construct","Parent","endsWith","this_len","blue","green","red","white","kReadableOperator","strictEqualObject","notStrictEqualObject","notIdentical","copyError","inspectValue","compact","customInspect","depth","maxArrayLength","Infinity","showHidden","breakLength","showProxy","sorted","getters","createErrDiff","lastPos","skipped","actualInspected","actualLines","expectedLines","indicator","inputLength","stderr","isTTY","columns","maxCount","repeat","maxLines","_actualLines","printedLines","skippedMsg","cur","expectedLine","actualLine","divergingLines","_Error","limit","stackTraceLimit","getColorDepth","_res","knownOperators","captureStackTrace","subClass","superClass","_inherits","custom","recurseTimes","_objectSpread","createErrorType","Base","NodeError","_Base","arg1","arg3","getMessage","oneOf","determiner","inspected","_slicedToArray","_arrayWithHoles","_arr","_n","_i","_iterableToArrayLimit","_nonIterableRest","regexFlagsSupported","arrayFromSet","arrayFromMap","objectGetOwnPropertySymbols","numberIsNaN","uncurryThis","isAnyArrayBuffer","isMap","isSet","isNativeError","isBoxedPrimitive","isNumberObject","isStringObject","isBooleanObject","isBigIntObject","isSymbolObject","isFloat32Array","isFloat64Array","isNonIndex","pow","getOwnNonIndexProperties","compare","innerDeepEqual","memos","buf1","buf2","val1Tag","keys1","keys2","keyCheck","areSimilarTypedArrays","areSimilarFloatArrays","_keys","_keys2","isEqualBoxedPrimitive","getEnumerables","iterationType","aKeys","bKeys","symbolKeysA","symbolKeysB","_symbolKeysB","val2MemoA","val2MemoB","areEq","objEquiv","delete","setHasEqualElement","memo","setValues","findLooseMatchingPrimitives","prim","setMightHaveLoosePrim","altValue","mapMightHaveLoosePrim","curB","mapHasEqualEntry","key1","item1","key2","aValues","bValues","_val","setEquiv","aEntries","_aEntries$i","item2","bEntries","_i2","_bEntries$_i","mapEquiv","keysA","ctor","superCtor","super_","TempCtor","readUInt8","isArgumentsObject","isGeneratorFunction","whichTypedArray","BigIntSupported","SymbolSupported","ObjectToString","numberValue","stringValue","booleanValue","bigIntValue","symbolValue","checkBoxedPrimitive","prototypeValueOf","isMapToString","isSetToString","isWeakMapToString","isWeakSetToString","isArrayBufferToString","working","isDataViewToString","isDataView","isUint8Array","isUint8ClampedArray","isUint16Array","isUint32Array","isInt8Array","isInt16Array","isInt32Array","isBigInt64Array","isBigUint64Array","isWeakMap","isWeakSet","SharedArrayBufferCopy","isSharedArrayBufferToString","isSharedArrayBuffer","isAsyncFunction","isMapIterator","isSetIterator","isGeneratorObject","isWebAssemblyCompiledModule","descriptors","formatRegExp","objects","isNull","noDeprecation","throwDeprecation","traceDeprecation","trace","debugs","debugEnvRegex","env","NODE_DEBUG","debugEnv","stylize","stylizeNoColor","colors","isBoolean","_extend","stylizeWithColor","formatValue","styleType","styles","ret","primitive","formatPrimitive","visibleKeys","idx","arrayToHash","isError","formatError","braces","toUTCString","formatProperty","formatArray","reduce","numLinesEst","reduceToSingleString","pad","debuglog","pid","isNullOrUndefined","isPrimitive","months","timestamp","getHours","getMinutes","getSeconds","getDate","getMonth","inherits","origin","kCustomPromisifiedSymbol","callbackifyOnRejected","cb","newReason","promisify","promiseResolve","promiseReject","callbackify","callbackified","maybeCb","nextTick","rej","keysShim","isArgs","isEnumerable","hasDontEnumBug","hasProtoEnumBug","dontEnums","equalsConstructorPrototype","excludedKeys","$applicationCache","$console","$external","$frame","$frameElement","$frames","$innerHeight","$innerWidth","$onmozfullscreenchange","$onmozfullscreenerror","$outerHeight","$outerWidth","$pageXOffset","$pageYOffset","$scrollLeft","$scrollTop","$scrollX","$scrollY","$self","$webkitIndexedDB","$webkitStorageInfo","$window","hasAutomationEqualityBug","theKeys","skipProto","skipConstructor","equalsConstructorPrototypeIfNotBuggy","origKeys","originalKeys","keysWorksWithArguments","cachedSetTimeout","cachedClearTimeout","defaultSetTimout","defaultClearTimeout","runTimeout","fun","currentQueue","queue","draining","queueIndex","cleanUpNextTick","drainQueue","run","marker","runClearTimeout","Item","noop","browser","argv","addListener","once","removeListener","removeAllListeners","prependListener","prependOnceListener","cwd","chdir","dir","umask","MAX_LENGTH","parseOptions","compareIdentifiers","SemVer","loose","includePrerelease","LOOSE","FULL","raw","major","minor","patch","prerelease","num","compareMain","comparePre","compareBuild","inc","release","er","SEMVER_SPEC_VERSION","MAX_SAFE_COMPONENT_LENGTH","numeric","anum","bnum","rcompareIdentifiers","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","stylesInDOM","getIndexByIdentifier","modulesToDom","idCountMap","identifiers","indexByIdentifier","addElementStyle","byIndex","api","domAPI","newObj","lastIdentifiers","newList","newLastIdentifiers","_index","styleTarget","getTarget","setAttributes","styleElement","insertStyleElement","styleTagTransform","removeStyleElement","isBrowser","timeoutDuration","longerTimeoutBrowsers","debounce","scheduled","functionToCheck","getStyleComputedProperty","getComputedStyle","getParentNode","nodeName","getScrollParent","_getStyleComputedProp","overflow","overflowX","overflowY","getReferenceNode","reference","referenceNode","isIE11","MSInputMethodContext","documentMode","isIE10","isIE","getOffsetParent","documentElement","noOffsetParent","offsetParent","nextElementSibling","getRoot","findCommonOffsetParent","element1","element2","order","compareDocumentPosition","Node","DOCUMENT_POSITION_FOLLOWING","range","createRange","setStart","setEnd","commonAncestorContainer","contains","firstElementChild","element1root","getScroll","side","upperSide","scrollingElement","includeScroll","rect","subtract","scrollTop","scrollLeft","modifier","top","bottom","left","right","getBordersSize","axis","sideA","sideB","getSize","computedStyle","getWindowSizes","classCallCheck","createClass","_extends","getClientRect","offsets","getBoundingClientRect","sizes","clientWidth","clientHeight","horizScrollbar","offsetWidth","vertScrollbar","offsetHeight","getOffsetRectRelativeToArbitraryNode","fixedPosition","isHTML","childrenRect","parentRect","scrollParent","borderTopWidth","borderLeftWidth","marginTop","marginLeft","getViewportOffsetRectRelativeToArtbitraryNode","excludeScroll","relativeOffset","innerWidth","innerHeight","isFixed","getFixedPositionOffsetParent","parentElement","getBoundaries","popper","padding","boundaries","boundariesNode","_getWindowSizes","isPaddingNumber","getArea","_ref","computeAutoPlacement","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","attachToScrollParents","scrollParents","isBody","passive","setupEventListeners","updateBound","scrollElement","eventsEnabled","enableEventListeners","scheduleUpdate","cancelAnimationFrame","isNumeric","setStyles","unit","isFirefox","isModifierRequired","requestingName","requestedName","requesting","isRequired","_requesting","requested","placements","validPlacements","clockwise","counter","reverse","BEHAVIORS","parseOffset","basePlacement","useHeight","fragments","frag","divider","splitRegex","ops","op","mergeWithPrevious","toValue","index2","shiftvariation","_data$offsets","isVertical","shiftOffsets","preventOverflow","transformProp","popperStyles","priority","escapeWithReference","secondary","keepTogether","opSide","arrow","_data$offsets$arrow","arrowElement","sideCapitalized","altSide","arrowElementSize","popperMarginSide","popperBorderSide","sideValue","placementOpposite","flipOrder","behavior","refOffsets","overlapsRef","overflowsLeft","overflowsRight","overflowsTop","overflowsBottom","overflowsBoundaries","flippedVariationByRef","flipVariations","flippedVariationByContent","flipVariationsByContent","flippedVariation","getOppositeVariation","inner","subtractLength","computeStyle","legacyGpuAccelerationOption","gpuAcceleration","offsetParentRect","shouldRound","noRound","referenceWidth","popperWidth","isVariation","horizontalToInteger","verticalToInteger","getRoundedOffsets","devicePixelRatio","prefixedProperty","invertTop","invertLeft","applyStyle","onLoad","modifierOptions","Defaults","Popper","requestAnimationFrame","jquery","Utils","PopperUtils","initCompat","ua","rv","edge","getInternetExplorerVersion","normalizeComponent","template","script","scopeId","isFunctionalTemplate","moduleIdentifier","shadowMode","createInjector","createInjectorSSR","createInjectorShadow","hook","originalRender","__vue_script__","emitOnMount","ignoreWidth","ignoreHeight","_w","_h","emitSize","_resizeObject","onload","addResizeHandlers","removeResizeHandlers","compareAndNotify","__vue_render__","_withStripped","__vue_component__","install","Vue","component","GlobalVue","SVGAnimatedString","convertToArray","addClasses","classes","newClasses","className","baseVal","newClass","SVGElement","removeClasses","supportsPassive","ownKeys$2","enumerableOnly","_objectSpread$2","DEFAULT_OPTIONS","trigger","openTooltips","Tooltip","_reference","_options","evt","relatedreference","toElement","relatedTarget","_tooltipNode","evt2","relatedreference2","_scheduleHide","_isOpen","_init","_show","_hide","_dispose","_classes","_setContent","classesUpdated","directive","defaultClass","setClasses","getOptions","needPopperUpdate","needRestart","dispose","popperInstance","_isDisposed","_enableDocumentTouch","_setEventListeners","$_originalTitle","_this2","tooltipGenerator","innerHTML","tooltipNode","ariaId","autoHide","_this3","asyncContent","_applyContent","_this4","allowHtml","rootNode","titleNode","innerSelector","loadingClass","loadingContent","asyncResult","innerText","_disposeTimer","updateClasses","_ensureShown","_this5","_create","_findContainer","_append","popperOptions","arrowSelector","_this6","_noLongerOpen","disposeTime","disposeTimeout","_removeTooltipNode","_this7","_events","_this8","directEvents","oppositeEvents","hideOnTargetClick","usedByTooltip","_scheduleShow","_this9","computedDelay","_scheduleTimer","_this10","_setTooltipNodeEvent","ownKeys$1","_objectSpread$1","_onDocumentTouch","positions","defaultOptions","defaultPlacement","defaultTargetClass","defaultArrowSelector","defaultInnerSelector","defaultTrigger","defaultOffset","defaultContainer","defaultBoundariesElement","defaultPopperOptions","defaultLoadingClass","defaultLoadingContent","defaultHideOnTargetClick","defaultBaseClass","defaultWrapperClass","defaultInnerClass","defaultArrowClass","defaultOpenClass","defaultAutoHide","defaultHandleResize","typeofOffset","getPlacement","getContent","createTooltip","_tooltip","_vueEl","targetClasses","_tooltipTargetClasses","destroyTooltip","_tooltipOldShow","oldValue","setContent","setOptions","unbind","addListeners","onTouchStart","removeListeners","onTouchEnd","onTouchCancel","closePopover","$_vclosepopover_touch","closeAllPopover","$_closePopoverModifiers","$_vclosepopover_touchPoint","firstTouch","screenY","screenX","vclosepopover","getDefault","isIOS","MSStream","openPopovers","ResizeObserver","popoverClass","popoverBaseClass","popoverInnerClass","popoverWrapperClass","popoverArrowClass","handleResize","openGroup","openClass","cssClass","popoverId","oldVal","popoverNode","$_findContainer","$_removeEventListeners","$_addEventListeners","$_updatePopper","deep","created","$_isDisposed","$_mounted","$_events","$_preventOpen","$_init","deactivated","skipDelay","_ref2$force","$_scheduleShow","$_beingShowed","_ref3","$_scheduleHide","$_show","$_disposeTimer","$_getOffset","$_hide","$_scheduleTimer","$_setTooltipNodeEvent","event2","_ref4","$_restartPopper","$_handleGlobalClose","$_handleResize","handleGlobalClose","_loop","_vm","staticStyle","visibility","keyup","$event","notify","installed","finalOptions","insertAt","styleInject","VClosePopover","fillColor","scriptExports","functionalTemplate","injectStyles","emptyObject","freeze","isUndef","isDef","isTrue","_toString","isValidArrayIndex","toNumber","makeMap","expectsLowerCase","isReservedAttribute","cached","camelizeRE","camelize","capitalize","hyphenateRE","hyphenate","boundFn","_length","_from","looseEqual","isObjectA","isObjectB","isArrayA","isArrayB","keysB","looseIndexOf","SSR_ATTR","ASSET_TYPES","LIFECYCLE_HOOKS","optionMergeStrategies","silent","productionTip","devtools","performance","errorHandler","warnHandler","ignoredElements","keyCodes","isReservedTag","isReservedAttr","isUnknownElement","getTagNamespace","parsePlatformTagName","mustUseProp","async","_lifecycleHooks","unicodeRegExp","isReserved","def","bailRE","_isServer","hasProto","inBrowser","inWeex","WXEnvironment","platform","weexPlatform","UA","isIE9","isEdge","isFF","nativeWatch","isServerRendering","VUE_ENV","__VUE_DEVTOOLS_GLOBAL_HOOK__","isNative","_Set","hasSymbol","Dep","subs","addSub","sub","removeSub","depend","addDep","targetStack","pushTarget","popTarget","VNode","elm","asyncFactory","ns","fnContext","fnOptions","fnScopeId","componentInstance","isStatic","isRootInsert","isComment","isCloned","isOnce","asyncMeta","isAsyncPlaceholder","prototypeAccessors","createEmptyVNode","createTextVNode","cloneVNode","vnode","cloned","arrayMethods","inserted","ob","__ob__","observeArray","dep","arrayKeys","shouldObserve","toggleObserving","Observer","vmCount","protoAugment","copyAugment","walk","observe","asRootData","_isVue","defineReactive$$1","customSetter","shallow","childOb","dependArray","newVal","del","items","strats","mergeData","toVal","fromVal","mergeDataOrFn","parentVal","childVal","vm","instanceData","defaultData","mergeHook","hooks","dedupeHooks","mergeAssets","key$1","inject","provide","defaultStrat","mergeOptions","normalizeProps","normalized","normalizeInject","dirs","def$$1","normalizeDirectives","_base","extends","mergeField","strat","resolveAsset","warnMissing","assets","camelizedId","PascalCaseId","validateProp","propOptions","propsData","absent","booleanIndex","getTypeIndex","stringIndex","_props","getType","getPropDefaultValue","prevShouldObserve","functionTypeCheckRE","isSameType","expectedTypes","handleError","info","errorCaptured","globalHandleError","invokeWithErrorHandling","_handled","logError","timerFunc","isUsingMicroTask","callbacks","pending","flushCallbacks","copies","MutationObserver","setImmediate","textNode","characterData","seenObjects","traverse","_traverse","isA","isFrozen","depId","normalizeEvent","once$$1","createFnInvoker","invoker","arguments$1","updateListeners","oldOn","remove$$1","createOnceHandler","old","mergeVNodeHook","hookKey","oldHook","wrappedHook","merged","checkProp","preserve","normalizeChildren","normalizeArrayChildren","isTextNode","nestedIndex","_isVList","resolveInject","provideKey","_provided","provideDefault","resolveSlots","slots","slot","name$1","isWhitespace","normalizeScopedSlots","normalSlots","prevSlots","hasNormalSlots","isStable","$stable","$key","_normalized","$hasNormal","normalizeScopedSlot","key$2","proxyNormalSlot","renderList","renderSlot","fallbackRender","bindObject","nodes","scopedSlotFn","$scopedSlots","resolveFilter","isKeyNotMatch","expect","checkKeyCodes","eventKeyCode","builtInKeyCode","eventKeyName","builtInKeyName","mappedKeyCode","bindObjectProps","asProp","isSync","loop","camelizedKey","hyphenatedKey","renderStatic","isInFor","_staticTrees","tree","markStatic","_renderProxy","markOnce","markStaticNode","bindObjectListeners","ours","resolveScopedSlots","hasDynamicKeys","contentHashKey","bindDynamicKeys","baseObj","prependModifier","installRenderHelpers","_o","_l","_q","_m","_f","_p","FunctionalRenderContext","contextVm","this$1","_original","isCompiled","needNormalization","injections","cloneAndMarkFunctionalResult","renderContext","clone","mergeProps","componentVNodeHooks","hydrating","_isDestroyed","keepAlive","mountedNode","prepatch","_isComponent","_parentVnode","inlineTemplate","createComponentInstanceForVnode","activeInstance","$mount","oldVnode","parentVnode","renderChildren","newScopedSlots","oldScopedSlots","hasDynamicScopedSlot","needsForceUpdate","_renderChildren","_vnode","propKeys","_propKeys","oldListeners","_parentListeners","updateComponentListeners","$forceUpdate","updateChildComponent","_isMounted","callHook","_inactive","activatedChildren","activateChildComponent","deactivateChildComponent","hooksToMerge","createComponent","baseCtor","cid","factory","errorComp","resolved","owner","currentRenderingInstance","owners","loading","loadingComp","sync","timerLoading","timerTimeout","$on","forceRender","renderCompleted","ensureCtor","resolveAsyncComponent","createAsyncPlaceholder","resolveConstructorOptions","model","transformModel","extractPropsFromVNodeData","createFunctionalComponent","nativeOn","abstract","toMerge","_merged","mergeHook$1","installComponentHooks","f1","f2","normalizationType","alwaysNormalize","simpleNormalizeChildren","pre","applyNS","registerDeepBindings","_createElement","comp","getFirstComponentChild","remove$1","$off","_target","onceHandler","setActiveInstance","prevActiveInstance","isInInactiveTree","direct","_directInactive","_hasHookEvent","waiting","flushing","currentFlushTimestamp","getNow","flushSchedulerQueue","watcher","activatedQueue","updatedQueue","callActivatedHooks","_watcher","callUpdatedHooks","uid$2","Watcher","expOrFn","isRenderWatcher","_watchers","user","lazy","active","dirty","deps","newDeps","depIds","newDepIds","segments","parsePath","cleanupDeps","tmp","queueWatcher","evaluate","teardown","_isBeingDestroyed","sharedPropertyDefinition","sourceKey","initState","propsOptions","initProps","initMethods","_data","getData","initData","watchers","_computedWatchers","isSSR","userDef","computedWatcherOptions","defineComputed","initComputed","createWatcher","initWatch","shouldCache","createComputedGetter","createGetterInvoker","uid$3","super","superOptions","modifiedOptions","modified","latest","sealed","sealedOptions","resolveModifiedOptions","extendOptions","initExtend","Super","SuperId","cachedCtors","_Ctor","Sub","Comp","initProps$1","initComputed$1","mixin","getComponentName","matches","pruneCache","keepAliveInstance","pruneCacheEntry","current","_uid","vnodeComponentOptions","_componentTag","initInternalComponent","initLifecycle","initEvents","parentData","initRender","initInjections","initProvide","initMixin","dataDef","propsDef","$set","$delete","immediate","stateMixin","hookRE","$once","i$1","cbs","eventsMixin","_update","prevEl","prevVnode","restoreActiveInstance","__patch__","__vue__","lifecycleMixin","_render","renderMixin","patternTypes","KeepAlive","include","exclude","cacheVNode","vnodeToCache","keyToCache","updated","builtInComponents","configDef","defineReactive","observable","plugin","installedPlugins","_installedPlugins","initUse","initMixin$1","definition","initAssetRegisters","initGlobalAPI","acceptValue","isEnumeratedAttr","isValidContentEditableValue","isBooleanAttr","xlinkNS","isXlink","getXlinkProp","isFalsyAttrValue","genClassForVnode","childNode","mergeClassData","dynamicClass","stringifyClass","renderClass","stringified","stringifyArray","stringifyObject","namespaceMap","svg","math","isHTMLTag","isSVG","unknownElementCache","isTextInputType","nodeOps","tagName","multiple","createElementNS","createComment","newNode","nextSibling","setTextContent","setStyleScope","registerRef","isRemoval","refs","refInFor","emptyNode","sameVnode","typeA","typeB","sameInputType","createKeyToOldIdx","beginIdx","endIdx","updateDirectives","oldDir","isCreate","isDestroy","oldDirs","normalizeDirectives$1","newDirs","dirsWithInsert","dirsWithPostpatch","oldArg","callHook$1","componentUpdated","callInsert","emptyModifiers","getRawDirName","baseModules","updateAttrs","inheritAttrs","oldAttrs","setAttr","removeAttributeNS","isInPre","baseSetAttr","convertEnumeratedValue","setAttributeNS","__ieph","blocker","stopImmediatePropagation","updateClass","oldData","cls","transitionClass","_transitionClasses","_prevClass","target$1","klass","createOnceHandler$1","remove$2","useMicrotaskFix","add$1","attachedTimestamp","_wrapper","updateDOMListeners","change","normalizeEvents","svgContainer","updateDOMProps","oldProps","_value","strCur","shouldUpdateValue","checkVal","composing","notInFocus","isNotInFocusAndDirty","_vModifiers","isDirtyWithModifiers","parseStyleText","propertyDelimiter","normalizeStyleData","normalizeStyleBinding","bindingStyle","emptyStyle","cssVarRE","importantRE","setProp","setProperty","vendorNames","capName","updateStyle","oldStaticStyle","oldStyleBinding","normalizedStyle","oldStyle","newStyle","checkChild","styleData","getStyle","whitespaceRE","addClass","removeClass","tar","resolveTransition","autoCssTransition","enterClass","enterToClass","enterActiveClass","leaveClass","leaveToClass","leaveActiveClass","hasTransition","TRANSITION","ANIMATION","transitionProp","transitionEndEvent","animationProp","animationEndEvent","ontransitionend","onwebkittransitionend","onanimationend","onwebkitanimationend","raf","nextFrame","addTransitionClass","transitionClasses","removeTransitionClass","whenTransitionEnds","expectedType","getTransitionInfo","propCount","ended","onEnd","transformRE","transitionDelays","transitionDurations","transitionTimeout","getTimeout","animationDelays","animationDurations","animationTimeout","hasTransform","delays","durations","toMs","enter","toggleDisplay","_leaveCb","cancelled","transition","_enterCb","appearClass","appearToClass","appearActiveClass","beforeEnter","afterEnter","enterCancelled","beforeAppear","appear","afterAppear","appearCancelled","transitionNode","isAppear","startClass","activeClass","toClass","beforeEnterHook","enterHook","afterEnterHook","enterCancelledHook","explicitEnterDuration","expectsCSS","userWantsControl","getHookArgumentsLength","pendingNode","_pending","isValidDuration","leave","beforeLeave","afterLeave","leaveCancelled","delayLeave","explicitLeaveDuration","performLeave","invokerFns","_enter","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","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","_vOptions","setSelected","onCompositionStart","onCompositionEnd","prevOptions","curOptions","hasNoMatchingOption","actuallySetSelected","isMultiple","selected","option","selectedIndex","locateNode","transition$$1","originalDisplay","__vOriginalDisplay","platformDirectives","transitionProps","getRealChild","compOptions","extractTransitionData","placeholder","rawChild","isNotTextNode","isVShowDirective","Transition","hasParentTransition","_leaving","oldRawChild","oldChild","isSameChild","delayedLeave","moveClass","callPendingCbs","_moveCb","recordPosition","newPos","applyTranslation","oldPos","moved","WebkitTransform","transitionDuration","platformComponents","TransitionGroup","kept","prevChildren","rawChildren","transitionData","c$1","hasMove","_reflow","propertyName","_hasMove","cloneNode","attr","HTMLUnknownElement","HTMLElement","updateComponent","mountComponent","query","foundName","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","loaded","__webpack_modules__","nmd","paths","videoWebm","videoMp4","videoFallbackText","slideList","currentSlide","withIntro","oc_defaults","slogan","fadeDirection","startButtonText","__webpack_public_path__","App","OCA","FirstRunWizard"],"mappings":"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","file":"firstrunwizard-main.js?v=8b8f74c4c728762acacd","sourcesContent":["\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"getRequestToken\", {\n enumerable: true,\n get: function get() {\n return _requesttoken.getRequestToken;\n }\n});\nObject.defineProperty(exports, \"onRequestTokenUpdate\", {\n enumerable: true,\n get: function get() {\n return _requesttoken.onRequestTokenUpdate;\n }\n});\nObject.defineProperty(exports, \"getCurrentUser\", {\n enumerable: true,\n get: function get() {\n return _user.getCurrentUser;\n }\n});\n\nvar _requesttoken = require(\"./requesttoken\");\n\nvar _user = require(\"./user\");\n//# sourceMappingURL=index.js.map","\"use strict\";\n\nrequire(\"core-js/modules/es.array.for-each\");\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getRequestToken = getRequestToken;\nexports.onRequestTokenUpdate = onRequestTokenUpdate;\n\nvar _eventBus = require(\"@nextcloud/event-bus\");\n\nvar tokenElement = document.getElementsByTagName('head')[0];\nvar token = tokenElement ? tokenElement.getAttribute('data-requesttoken') : null;\nvar observers = [];\n\nfunction getRequestToken() {\n return token;\n}\n\nfunction onRequestTokenUpdate(observer) {\n observers.push(observer);\n} // Listen to server event and keep token in sync\n\n\n(0, _eventBus.subscribe)('csrf-token-update', function (e) {\n token = e.token;\n observers.forEach(function (observer) {\n try {\n observer(e.token);\n } catch (e) {\n console.error('error updating CSRF token observer', e);\n }\n });\n});\n//# sourceMappingURL=requesttoken.js.map","\"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\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\nvar _getRequestToken;\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nconst client = _axios.default.create({\n headers: {\n requesttoken: (_getRequestToken = (0, _auth.getRequestToken)()) !== null && _getRequestToken !== void 0 ? _getRequestToken : ''\n }\n});\n\nconst cancelableClient = Object.assign(client, {\n CancelToken: _axios.default.CancelToken,\n isCancel: _axios.default.isCancel\n});\n(0, _auth.onRequestTokenUpdate)(token => client.defaults.headers.requesttoken = token);\nvar _default = cancelableClient;\nexports.default = _default;\n//# sourceMappingURL=index.js.map","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.ProxyBus = void 0;\n\nvar _valid = _interopRequireDefault(require(\"semver/functions/valid\"));\n\nvar _major = _interopRequireDefault(require(\"semver/functions/major\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar packageJson = {\n name: \"@nextcloud/event-bus\",\n version: \"1.2.0\",\n description: \"\",\n main: \"dist/index.js\",\n types: \"dist/index.d.ts\",\n scripts: {\n build: \"babel ./lib --out-dir dist --extensions '.ts,.tsx' --source-maps && tsc --emitDeclarationOnly\",\n \"build:doc\": \"typedoc --excludeNotExported --mode file --out dist/doc lib/index.ts && touch dist/doc/.nojekyll\",\n \"check-types\": \"tsc\",\n dev: \"babel ./lib --out-dir dist --extensions '.ts,.tsx' --watch\",\n test: \"jest\",\n \"test:watch\": \"jest --watchAll\"\n },\n keywords: [\"nextcloud\"],\n homepage: \"https://github.com/nextcloud/nextcloud-event-bus#readme\",\n author: \"Christoph Wurst\",\n license: \"GPL-3.0-or-later\",\n repository: {\n type: \"git\",\n url: \"https://github.com/nextcloud/nextcloud-event-bus\"\n },\n dependencies: {\n \"@types/semver\": \"^7.1.0\",\n \"core-js\": \"^3.6.2\",\n semver: \"^7.3.2\"\n },\n devDependencies: {\n \"@babel/cli\": \"^7.6.0\",\n \"@babel/core\": \"^7.6.0\",\n \"@babel/plugin-proposal-class-properties\": \"^7.5.5\",\n \"@babel/preset-env\": \"^7.6.0\",\n \"@babel/preset-typescript\": \"^7.6.0\",\n \"@nextcloud/browserslist-config\": \"^1.0.0\",\n \"babel-jest\": \"^26.0.1\",\n \"babel-plugin-inline-json-import\": \"^0.3.2\",\n jest: \"^26.0.1\",\n typedoc: \"^0.17.2\",\n typescript: \"^3.6.3\"\n },\n browserslist: [\"extends @nextcloud/browserslist-config\"]\n};\n\nvar ProxyBus = /*#__PURE__*/function () {\n function ProxyBus(bus) {\n _classCallCheck(this, ProxyBus);\n\n _defineProperty(this, \"bus\", void 0);\n\n if (typeof bus.getVersion !== 'function' || !(0, _valid.default)(bus.getVersion())) {\n console.warn('Proxying an event bus with an unknown or invalid version');\n } else if ((0, _major.default)(bus.getVersion()) !== (0, _major.default)(this.getVersion())) {\n console.warn('Proxying an event bus of version ' + bus.getVersion() + ' with ' + this.getVersion());\n }\n\n this.bus = bus;\n }\n\n _createClass(ProxyBus, [{\n key: \"getVersion\",\n value: function getVersion() {\n return packageJson.version;\n }\n }, {\n key: \"subscribe\",\n value: function subscribe(name, handler) {\n this.bus.subscribe(name, handler);\n }\n }, {\n key: \"unsubscribe\",\n value: function unsubscribe(name, handler) {\n this.bus.unsubscribe(name, handler);\n }\n }, {\n key: \"emit\",\n value: function emit(name, event) {\n this.bus.emit(name, event);\n }\n }]);\n\n return ProxyBus;\n}();\n\nexports.ProxyBus = ProxyBus;\n//# sourceMappingURL=ProxyBus.js.map","\"use strict\";\n\nrequire(\"core-js/modules/es.array.concat\");\n\nrequire(\"core-js/modules/es.array.filter\");\n\nrequire(\"core-js/modules/es.array.for-each\");\n\nrequire(\"core-js/modules/es.array.iterator\");\n\nrequire(\"core-js/modules/es.map\");\n\nrequire(\"core-js/modules/es.object.to-string\");\n\nrequire(\"core-js/modules/es.string.iterator\");\n\nrequire(\"core-js/modules/web.dom-collections.for-each\");\n\nrequire(\"core-js/modules/web.dom-collections.iterator\");\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.SimpleBus = void 0;\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar packageJson = {\n name: \"@nextcloud/event-bus\",\n version: \"1.2.0\",\n description: \"\",\n main: \"dist/index.js\",\n types: \"dist/index.d.ts\",\n scripts: {\n build: \"babel ./lib --out-dir dist --extensions '.ts,.tsx' --source-maps && tsc --emitDeclarationOnly\",\n \"build:doc\": \"typedoc --excludeNotExported --mode file --out dist/doc lib/index.ts && touch dist/doc/.nojekyll\",\n \"check-types\": \"tsc\",\n dev: \"babel ./lib --out-dir dist --extensions '.ts,.tsx' --watch\",\n test: \"jest\",\n \"test:watch\": \"jest --watchAll\"\n },\n keywords: [\"nextcloud\"],\n homepage: \"https://github.com/nextcloud/nextcloud-event-bus#readme\",\n author: \"Christoph Wurst\",\n license: \"GPL-3.0-or-later\",\n repository: {\n type: \"git\",\n url: \"https://github.com/nextcloud/nextcloud-event-bus\"\n },\n dependencies: {\n \"@types/semver\": \"^7.1.0\",\n \"core-js\": \"^3.6.2\",\n semver: \"^7.3.2\"\n },\n devDependencies: {\n \"@babel/cli\": \"^7.6.0\",\n \"@babel/core\": \"^7.6.0\",\n \"@babel/plugin-proposal-class-properties\": \"^7.5.5\",\n \"@babel/preset-env\": \"^7.6.0\",\n \"@babel/preset-typescript\": \"^7.6.0\",\n \"@nextcloud/browserslist-config\": \"^1.0.0\",\n \"babel-jest\": \"^26.0.1\",\n \"babel-plugin-inline-json-import\": \"^0.3.2\",\n jest: \"^26.0.1\",\n typedoc: \"^0.17.2\",\n typescript: \"^3.6.3\"\n },\n browserslist: [\"extends @nextcloud/browserslist-config\"]\n};\n\nvar SimpleBus = /*#__PURE__*/function () {\n function SimpleBus() {\n _classCallCheck(this, SimpleBus);\n\n _defineProperty(this, \"handlers\", new Map());\n }\n\n _createClass(SimpleBus, [{\n key: \"getVersion\",\n value: function getVersion() {\n return packageJson.version;\n }\n }, {\n key: \"subscribe\",\n value: function subscribe(name, handler) {\n this.handlers.set(name, (this.handlers.get(name) || []).concat(handler));\n }\n }, {\n key: \"unsubscribe\",\n value: function unsubscribe(name, handler) {\n this.handlers.set(name, (this.handlers.get(name) || []).filter(function (h) {\n return h != handler;\n }));\n }\n }, {\n key: \"emit\",\n value: function emit(name, event) {\n (this.handlers.get(name) || []).forEach(function (h) {\n try {\n h(event);\n } catch (e) {\n console.error('could not invoke event listener', e);\n }\n });\n }\n }]);\n\n return SimpleBus;\n}();\n\nexports.SimpleBus = SimpleBus;\n//# sourceMappingURL=SimpleBus.js.map","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.subscribe = subscribe;\nexports.unsubscribe = unsubscribe;\nexports.emit = emit;\n\nvar _ProxyBus = require(\"./ProxyBus\");\n\nvar _SimpleBus = require(\"./SimpleBus\");\n\nfunction getBus() {\n if (typeof window.OC !== 'undefined' && window.OC._eventBus && typeof window._nc_event_bus === 'undefined') {\n console.warn('found old event bus instance at OC._eventBus. Update your version!');\n window._nc_event_bus = window.OC._eventBus;\n } // Either use an existing event bus instance or create one\n\n\n if (typeof window._nc_event_bus !== 'undefined') {\n return new _ProxyBus.ProxyBus(window._nc_event_bus);\n } else {\n return window._nc_event_bus = new _SimpleBus.SimpleBus();\n }\n}\n\nvar bus = getBus();\n/**\n * Register an event listener\n *\n * @param name name of the event\n * @param handler callback invoked for every matching event emitted on the bus\n */\n\nfunction subscribe(name, handler) {\n bus.subscribe(name, handler);\n}\n/**\n * Unregister a previously registered event listener\n *\n * Note: doesn't work with anonymous functions (closures). Use method of an object or store listener function in variable.\n *\n * @param name name of the event\n * @param handler callback passed to `subscribed`\n */\n\n\nfunction unsubscribe(name, handler) {\n bus.unsubscribe(name, handler);\n}\n/**\n * Emit an event\n *\n * @param name name of the event\n * @param event event payload\n */\n\n\nfunction emit(name, event) {\n bus.emit(name, event);\n}\n//# sourceMappingURL=index.js.map","\"use strict\";\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.getGettextBuilder = getGettextBuilder;\n\nvar _nodeGettext = _interopRequireDefault(require(\"node-gettext\"));\n\nvar _ = require(\".\");\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, _.getLanguage)().replace('-', '_'));\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//# sourceMappingURL=gettext.js.map","\"use strict\";\n\nrequire(\"core-js/modules/es.regexp.exec\");\n\nrequire(\"core-js/modules/es.string.replace\");\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//# sourceMappingURL=index.js.map","\"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","!function(t,e){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define(\"Components/Modal\",[],e):\"object\"==typeof exports?exports[\"Components/Modal\"]=e():(t.NextcloudVue=t.NextcloudVue||{},t.NextcloudVue[\"Components/Modal\"]=e())}(window,(function(){return function(t){var e={};function n(a){if(e[a])return e[a].exports;var i=e[a]={i:a,l:!1,exports:{}};return t[a].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=t,n.c=e,n.d=function(t,e,a){n.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:a})},n.r=function(t){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(t,\"__esModule\",{value:!0})},n.t=function(t,e){if(1&e&&(t=n(t)),8&e)return t;if(4&e&&\"object\"==typeof t&&t&&t.__esModule)return t;var a=Object.create(null);if(n.r(a),Object.defineProperty(a,\"default\",{enumerable:!0,value:t}),2&e&&\"string\"!=typeof t)for(var i in t)n.d(a,i,function(e){return t[e]}.bind(null,i));return a},n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,\"a\",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p=\"/dist/\",n(n.s=108)}([function(t,e,n){\"use strict\";function a(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var n=t&&(\"undefined\"!=typeof Symbol&&t[Symbol.iterator]||t[\"@@iterator\"]);if(null==n)return;var a,i,o=[],r=!0,s=!1;try{for(n=n.call(t);!(r=(a=n.next()).done)&&(o.push(a.value),!e||o.length!==e);r=!0);}catch(t){s=!0,i=t}finally{try{r||null==n.return||n.return()}finally{if(s)throw i}}return o}(t,e)||function(t,e){if(!t)return;if(\"string\"==typeof t)return i(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);\"Object\"===n&&t.constructor&&(n=t.constructor.name);if(\"Map\"===n||\"Set\"===n)return Array.from(t);if(\"Arguments\"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return i(t,e)}(t,e)||function(){throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}()}function i(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,a=new Array(e);n<e;n++)a[n]=t[n];return a}t.exports=function(t){var e=a(t,4),n=e[1],i=e[3];if(!i)return n;if(\"function\"==typeof btoa){var o=btoa(unescape(encodeURIComponent(JSON.stringify(i)))),r=\"sourceMappingURL=data:application/json;charset=utf-8;base64,\".concat(o),s=\"/*# \".concat(r,\" */\"),l=i.sources.map((function(t){return\"/*# sourceURL=\".concat(i.sourceRoot||\"\").concat(t,\" */\")}));return[n].concat(l).concat([s]).join(\"\\n\")}return[n].join(\"\\n\")}},function(t,e,n){\"use strict\";t.exports=function(t){var e=[];return e.toString=function(){return this.map((function(e){var n=t(e);return e[2]?\"@media \".concat(e[2],\" {\").concat(n,\"}\"):n})).join(\"\")},e.i=function(t,n,a){\"string\"==typeof t&&(t=[[null,t,\"\"]]);var i={};if(a)for(var o=0;o<this.length;o++){var r=this[o][0];null!=r&&(i[r]=!0)}for(var s=0;s<t.length;s++){var l=[].concat(t[s]);a&&i[l[0]]||(n&&(l[2]?l[2]=\"\".concat(n,\" and \").concat(l[2]):l[2]=n),e.push(l))}},e}},function(t,e,n){\"use strict\";var a,i=function(){return void 0===a&&(a=Boolean(window&&document&&document.all&&!window.atob)),a},o=function(){var t={};return function(e){if(void 0===t[e]){var n=document.querySelector(e);if(window.HTMLIFrameElement&&n instanceof window.HTMLIFrameElement)try{n=n.contentDocument.head}catch(t){n=null}t[e]=n}return t[e]}}(),r=[];function s(t){for(var e=-1,n=0;n<r.length;n++)if(r[n].identifier===t){e=n;break}return e}function l(t,e){for(var n={},a=[],i=0;i<t.length;i++){var o=t[i],l=e.base?o[0]+e.base:o[0],c=n[l]||0,d=\"\".concat(l,\" \").concat(c);n[l]=c+1;var u=s(d),m={css:o[1],media:o[2],sourceMap:o[3]};-1!==u?(r[u].references++,r[u].updater(m)):r.push({identifier:d,updater:A(m,e),references:1}),a.push(d)}return a}function c(t){var e=document.createElement(\"style\"),a=t.attributes||{};if(void 0===a.nonce){var i=n.nc;i&&(a.nonce=i)}if(Object.keys(a).forEach((function(t){e.setAttribute(t,a[t])})),\"function\"==typeof t.insert)t.insert(e);else{var r=o(t.insert||\"head\");if(!r)throw new Error(\"Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.\");r.appendChild(e)}return e}var d,u=(d=[],function(t,e){return d[t]=e,d.filter(Boolean).join(\"\\n\")});function m(t,e,n,a){var i=n?\"\":a.media?\"@media \".concat(a.media,\" {\").concat(a.css,\"}\"):a.css;if(t.styleSheet)t.styleSheet.cssText=u(e,i);else{var o=document.createTextNode(i),r=t.childNodes;r[e]&&t.removeChild(r[e]),r.length?t.insertBefore(o,r[e]):t.appendChild(o)}}function p(t,e,n){var a=n.css,i=n.media,o=n.sourceMap;if(i?t.setAttribute(\"media\",i):t.removeAttribute(\"media\"),o&&\"undefined\"!=typeof btoa&&(a+=\"\\n/*# sourceMappingURL=data:application/json;base64,\".concat(btoa(unescape(encodeURIComponent(JSON.stringify(o)))),\" */\")),t.styleSheet)t.styleSheet.cssText=a;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(a))}}var h=null,g=0;function A(t,e){var n,a,i;if(e.singleton){var o=g++;n=h||(h=c(e)),a=m.bind(null,n,o,!1),i=m.bind(null,n,o,!0)}else n=c(e),a=p.bind(null,n,e),i=function(){!function(t){if(null===t.parentNode)return!1;t.parentNode.removeChild(t)}(n)};return a(t),function(e){if(e){if(e.css===t.css&&e.media===t.media&&e.sourceMap===t.sourceMap)return;a(t=e)}else i()}}t.exports=function(t,e){(e=e||{}).singleton||\"boolean\"==typeof e.singleton||(e.singleton=i());var n=l(t=t||[],e);return function(t){if(t=t||[],\"[object Array]\"===Object.prototype.toString.call(t)){for(var a=0;a<n.length;a++){var i=s(n[a]);r[i].references--}for(var o=l(t,e),c=0;c<n.length;c++){var d=s(n[c]);0===r[d].references&&(r[d].updater(),r.splice(d,1))}n=o}}}},function(t,e,n){\"use strict\";function a(t,e,n,a,i,o,r,s){var l,c=\"function\"==typeof t?t.options:t;if(e&&(c.render=e,c.staticRenderFns=n,c._compiled=!0),a&&(c.functional=!0),o&&(c._scopeId=\"data-v-\"+o),r?(l=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__),i&&i.call(this,t),t&&t._registeredComponents&&t._registeredComponents.add(r)},c._ssrRegister=l):i&&(l=s?function(){i.call(this,(c.functional?this.parent:this).$root.$options.shadowRoot)}:i),l)if(c.functional){c._injectStyles=l;var d=c.render;c.render=function(t,e){return l.call(e),d(t,e)}}else{var u=c.beforeCreate;c.beforeCreate=u?[].concat(u,l):[l]}return{exports:t,options:c}}n.d(e,\"a\",(function(){return a}))},function(t,e,n){\"use strict\";n.d(e,\"b\",(function(){return s})),n.d(e,\"a\",(function(){return r}));var a=n(11),i=Object(a.getGettextBuilder)().detectLocale();[{locale:\"ar\",translations:{\"{tag} (invisible)\":\"{tag} (غير مرئي)\",\"{tag} (restricted)\":\"{tag} (مقيد)\",Actions:\"الإجراءات\",Activities:\"النشاطات\",\"Animals & Nature\":\"الحيوانات والطبيعة\",\"Avatar of {displayName}\":\"صورة {displayName} الرمزية\",\"Avatar of {displayName}, {status}\":\"صورة {displayName} الرمزية، {status}\",\"Cancel changes\":\"إلغاء التغييرات\",Choose:\"إختيار\",Close:\"أغلق\",\"Close navigation\":\"إغلاق المتصفح\",\"Confirm changes\":\"تأكيد التغييرات\",Custom:\"مخصص\",\"Edit item\":\"تعديل عنصر\",\"External documentation for {title}\":\"الوثائق الخارجية لـ{title}\",Flags:\"الأعلام\",\"Food & Drink\":\"الطعام والشراب\",\"Frequently used\":\"كثيرا ما تستخدم\",Global:\"عالمي\",\"Go back to the list\":\"العودة إلى القائمة\",\"Message limit of {count} characters reached\":\"تم الوصول إلى الحد الأقصى لعدد الأحرف في الرسالة: {count} حرف\",Next:\"التالي\",\"No emoji found\":\"لم يتم العثور على أي رمز تعبيري\",\"No results\":\"ليس هناك أية نتيجة\",Objects:\"الأشياء\",\"Open navigation\":\"فتح المتصفح\",\"Pause slideshow\":\"إيقاف العرض مؤقتًا\",\"People & Body\":\"الناس والجسم\",\"Pick an emoji\":\"اختر رمزًا تعبيريًا\",\"Please select a time zone:\":\"الرجاء تحديد المنطقة الزمنية:\",Previous:\"السابق\",Search:\"بحث\",\"Search results\":\"نتائج البحث\",\"Select a tag\":\"اختر علامة\",Settings:\"الإعدادات\",\"Settings navigation\":\"إعدادات المتصفح\",\"Smileys & Emotion\":\"الوجوه و الرموز التعبيرية\",\"Start slideshow\":\"بدء العرض\",Submit:\"إرسال\",Symbols:\"الرموز\",\"Travel & Places\":\"السفر والأماكن\",\"Type to search time zone\":\"اكتب للبحث عن منطقة زمنية\",\"Unable to search the group\":\"تعذر البحث في المجموعة\",\"Undo changes\":\"التراجع عن التغييرات\",\"Write message, @ to mention someone, : for emoji autocompletion …\":\"اكتب رسالة، @ للإشارة إلى شخص ما، : للإكمال التلقائي للرموز التعبيرية ...\"}},{locale:\"br\",translations:{\"{tag} (invisible)\":\"{tag} (diwelus)\",\"{tag} (restricted)\":\"{tag} (bevennet)\",Actions:\"Oberioù\",Activities:\"Oberiantizoù\",\"Animals & Nature\":\"Loened & Natur\",Choose:\"Dibab\",Close:\"Serriñ\",Custom:\"Personelañ\",Flags:\"Bannieloù\",\"Food & Drink\":\"Boued & Evajoù\",\"Frequently used\":\"Implijet alies\",Next:\"Da heul\",\"No emoji found\":\"Emoji ebet kavet\",\"No results\":\"Disoc'h ebet\",Objects:\"Traoù\",\"Pause slideshow\":\"Arsav an diaporama\",\"People & Body\":\"Tud & Korf\",\"Pick an emoji\":\"Choaz un emoji\",Previous:\"A-raok\",Search:\"Klask\",\"Search results\":\"Disoc'hoù an enklask\",\"Select a tag\":\"Choaz ur c'hlav\",Settings:\"Arventennoù\",\"Smileys & Emotion\":\"Smileyioù & Fromoù\",\"Start slideshow\":\"Kregiñ an diaporama\",Symbols:\"Arouezioù\",\"Travel & Places\":\"Beaj & Lec'hioù\",\"Unable to search the group\":\"Dibosupl eo klask ar strollad\"}},{locale:\"ca\",translations:{\"{tag} (invisible)\":\"{tag} (invisible)\",\"{tag} (restricted)\":\"{tag} (restringit)\",Actions:\"Accions\",Activities:\"Activitats\",\"Animals & Nature\":\"Animals i natura\",\"Cancel changes\":\"Cancel·la els canvis\",Choose:\"Tria\",Close:\"Tanca\",\"Confirm changes\":\"Confirmeu els canvis\",Custom:\"Personalitzat\",\"External documentation for {title}\":\"Documentació externa per a {title}\",Flags:\"Marques\",\"Food & Drink\":\"Menjar i begudes\",\"Frequently used\":\"Utilitzats recentment\",\"Message limit of {count} characters reached\":\"S'ha arribat al límit de {count} caràcters per missatge\",Next:\"Següent\",\"No emoji found\":\"No s'ha trobat cap emoji\",\"No results\":\"Sense resultats\",Objects:\"Objectes\",\"Pause slideshow\":\"Atura la presentació\",\"People & Body\":\"Persones i cos\",\"Pick an emoji\":\"Trieu un emoji\",Previous:\"Anterior\",Search:\"Cerca\",\"Search results\":\"Resultats de cerca\",\"Select a tag\":\"Selecciona una etiqueta\",Settings:\"Paràmetres\",\"Settings navigation\":\"Navegació d'opcions\",\"Smileys & Emotion\":\"Cares i emocions\",\"Start slideshow\":\"Inicia la presentació\",Submit:\"Envia\",Symbols:\"Símbols\",\"Travel & Places\":\"Viatges i llocs\",\"Unable to search the group\":\"No es pot cercar el grup\",\"Write message, @ to mention someone …\":\"Escriu un missatge, @ per mencionar algú...\"}},{locale:\"cs_CZ\",translations:{\"{tag} (invisible)\":\"{tag} (neviditelné)\",\"{tag} (restricted)\":\"{tag} (omezené)\",Actions:\"Akce\",Activities:\"Aktivity\",\"Animals & Nature\":\"Zvířata a příroda\",\"Avatar of {displayName}\":\"Zástupný obrázek uživatele {displayName}\",\"Avatar of {displayName}, {status}\":\"Zástupný obrázek uživatele {displayName}, {status}\",\"Cancel changes\":\"Zrušit změny\",Choose:\"Zvolit\",Close:\"Zavřít\",\"Close navigation\":\"Zavřít navigaci\",\"Confirm changes\":\"Potvrdit změny\",Custom:\"Uživatelsky určené\",\"Edit item\":\"Upravit položku\",\"External documentation for {title}\":\"Externí dokumentace k {title}\",Flags:\"Příznaky\",\"Food & Drink\":\"Jídlo a pití\",\"Frequently used\":\"Často používané\",Global:\"Globální\",\"Go back to the list\":\"Jít zpět na seznam\",\"Message limit of {count} characters reached\":\"Dosaženo limitu počtu ({count}) znaků zprávy\",Next:\"Následující\",\"No emoji found\":\"Nenalezeno žádné emoji\",\"No results\":\"Nic nenalezeno\",Objects:\"Objekty\",\"Open navigation\":\"Otevřít navigaci\",\"Pause slideshow\":\"Pozastavit prezentaci\",\"People & Body\":\"Lidé a tělo\",\"Pick an emoji\":\"Vybrat emoji\",\"Please select a time zone:\":\"Vyberte časovou zónu:\",Previous:\"Předchozí\",Search:\"Hledat\",\"Search results\":\"Výsledky hledání\",\"Select a tag\":\"Vybrat štítek\",Settings:\"Nastavení\",\"Settings navigation\":\"Pohyb po nastavení\",\"Smileys & Emotion\":\"Úsměvy a emoce\",\"Start slideshow\":\"Spustit prezentaci\",Submit:\"Odeslat\",Symbols:\"Symboly\",\"Travel & Places\":\"Cestování a místa\",\"Type to search time zone\":\"Psaním vyhledejte časovou zónu\",\"Unable to search the group\":\"Nedaří se hledat skupinu\",\"Undo changes\":\"Vzít změny zpět\",\"Write message, @ to mention someone, : for emoji autocompletion …\":\"Napište zprávu – pokud chcete někoho zmínit, napište před jeho uživatelským jménem @ (zavináč); automatické doplňování emotikonů zahájíte napsáním : (dvojtečky)…\"}},{locale:\"da\",translations:{\"{tag} (invisible)\":\"{tag} (usynlig)\",\"{tag} (restricted)\":\"{tag} (begrænset)\",Actions:\"Handlinger\",Activities:\"Aktiviteter\",\"Animals & Nature\":\"Dyr & Natur\",Choose:\"Vælg\",Close:\"Luk\",Custom:\"Brugerdefineret\",Flags:\"Flag\",\"Food & Drink\":\"Mad & Drikke\",\"Frequently used\":\"Ofte brugt\",\"Message limit of {count} characters reached\":\"Begrænsning på {count} tegn er nået\",Next:\"Videre\",\"No emoji found\":\"Ingen emoji fundet\",\"No results\":\"Ingen resultater\",Objects:\"Objekter\",\"Pause slideshow\":\"Suspender fremvisning\",\"People & Body\":\"Mennesker & Menneskekroppen\",\"Pick an emoji\":\"Vælg en emoji\",Previous:\"Forrige\",Search:\"Søg\",\"Search results\":\"Søgeresultater\",\"Select a tag\":\"Vælg et mærke\",Settings:\"Indstillinger\",\"Settings navigation\":\"Naviger i indstillinger\",\"Smileys & Emotion\":\"Smileys & Emotion\",\"Start slideshow\":\"Start fremvisning\",Symbols:\"Symboler\",\"Travel & Places\":\"Rejser & Rejsemål\",\"Unable to search the group\":\"Kan ikke søge på denne gruppe\",\"Write message, @ to mention someone …\":\"Skriv i meddelelse, @ for at nævne nogen …\"}},{locale:\"de\",translations:{\"{tag} (invisible)\":\"{tag} (unsichtbar)\",\"{tag} (restricted)\":\"{tag} (eingeschränkt)\",Actions:\"Aktionen\",Activities:\"Aktivitäten\",\"Animals & Nature\":\"Tiere & Natur\",\"Avatar of {displayName}\":\"Avatar von {displayName}\",\"Avatar of {displayName}, {status}\":\"Avatar von {displayName}, {status}\",\"Cancel changes\":\"Änderungen verwerfen\",Choose:\"Auswählen\",Close:\"Schließen\",\"Close navigation\":\"Navigation schließen\",\"Confirm changes\":\"Änderungen bestätigen\",Custom:\"Benutzerdefiniert\",\"Edit item\":\"Objekt bearbeiten\",\"External documentation for {title}\":\"Externe Dokumentation für {title}\",Flags:\"Flaggen\",\"Food & Drink\":\"Essen & Trinken\",\"Frequently used\":\"Häufig verwendet\",Global:\"Global\",\"Go back to the list\":\"Zurück zur Liste\",\"Message limit of {count} characters reached\":\"Nachrichtenlimit von {count} Zeichen erreicht\",Next:\"Weiter\",\"No emoji found\":\"Kein Emoji gefunden\",\"No results\":\"Keine Ergebnisse\",Objects:\"Gegenstände\",\"Open navigation\":\"Navigation öffnen\",\"Pause slideshow\":\"Diashow pausieren\",\"People & Body\":\"Menschen & Körper\",\"Pick an emoji\":\"Ein Emoji auswählen\",\"Please select a time zone:\":\"Bitte wählen Sie eine Zeitzone:\",Previous:\"Vorherige\",Search:\"Suche\",\"Search results\":\"Suchergebnisse\",\"Select a tag\":\"Schlagwort auswählen\",Settings:\"Einstellungen\",\"Settings navigation\":\"Einstellungen für die Navigation\",\"Smileys & Emotion\":\"Smileys & Emotionen\",\"Start slideshow\":\"Diashow starten\",Submit:\"Einreichen\",Symbols:\"Symbole\",\"Travel & Places\":\"Reisen & Orte\",\"Type to search time zone\":\"Tippen, um Zeitzone zu suchen\",\"Unable to search the group\":\"Die Gruppe konnte nicht durchsucht werden\",\"Undo changes\":\"Änderungen rückgängig machen\",\"Write message, @ to mention someone, : for emoji autocompletion …\":\"Nachricht schreiben, @, um jemanden zu erwähnen, : für die automatische Vervollständigung von Emojis … \"}},{locale:\"de_DE\",translations:{\"{tag} (invisible)\":\"{tag} (unsichtbar)\",\"{tag} (restricted)\":\"{tag} (eingeschränkt)\",Actions:\"Aktionen\",Activities:\"Aktivitäten\",\"Animals & Nature\":\"Tiere & Natur\",\"Avatar of {displayName}\":\"Avatar von {displayName}\",\"Avatar of {displayName}, {status}\":\"Avatar von {displayName}, {status}\",\"Cancel changes\":\"Änderungen verwerfen\",Choose:\"Auswählen\",Close:\"Schließen\",\"Close navigation\":\"Navigation schließen\",\"Confirm changes\":\"Änderungen bestätigen\",Custom:\"Benutzerdefiniert\",\"Edit item\":\"Objekt bearbeiten\",\"External documentation for {title}\":\"Externe Dokumentation für {title}\",Flags:\"Flaggen\",\"Food & Drink\":\"Essen & Trinken\",\"Frequently used\":\"Häufig verwendet\",Global:\"Global\",\"Go back to the list\":\"Zurück zur Liste\",\"Message limit of {count} characters reached\":\"Nachrichtenlimit von {count} Zeichen erreicht\",Next:\"Weiter\",\"No emoji found\":\"Kein Emoji gefunden\",\"No results\":\"Keine Ergebnisse\",Objects:\"Objekte\",\"Open navigation\":\"Navigation öffnen\",\"Pause slideshow\":\"Diashow pausieren\",\"People & Body\":\"Menschen & Körper\",\"Pick an emoji\":\"Ein Emoji auswählen\",\"Please select a time zone:\":\"Bitte eine Zeitzone auswählen:\",Previous:\"Vorherige\",Search:\"Suche\",\"Search results\":\"Suchergebnisse\",\"Select a tag\":\"Schlagwort auswählen\",Settings:\"Einstellungen\",\"Settings navigation\":\"Einstellungen für die Navigation\",\"Smileys & Emotion\":\"Smileys & Emotionen\",\"Start slideshow\":\"Diashow starten\",Submit:\"Einreichen\",Symbols:\"Symbole\",\"Travel & Places\":\"Reisen & Orte\",\"Type to search time zone\":\"Tippen, um eine Zeitzone zu suchen\",\"Unable to search the group\":\"Die Gruppe kann nicht durchsucht werden\",\"Undo changes\":\"Änderungen rückgängig machen\",\"Write message, @ to mention someone, : for emoji autocompletion …\":\"Nachricht schreiben, @, um jemanden zu erwähnen, : für die automatische Vervollständigung von Emojis …\"}},{locale:\"el\",translations:{\"{tag} (invisible)\":\"{tag} (αόρατο)\",\"{tag} (restricted)\":\"{tag} (περιορισμένο)\",Actions:\"Ενέργειες\",Activities:\"Δραστηριότητες\",\"Animals & Nature\":\"Ζώα & Φύση\",\"Avatar of {displayName}\":\"Άβαταρ του {displayName}\",\"Cancel changes\":\"Ακύρωση αλλαγών\",Choose:\"Επιλογή\",Close:\"Κλείσιμο\",\"Close navigation\":\"Κλείσιμο πλοήγησης\",\"Confirm changes\":\"Επιβεβαίωση αλλαγών\",Custom:\"Προσαρμογή\",\"Edit item\":\"Επεξεργασία\",\"External documentation for {title}\":\"Εξωτερική τεκμηρίωση για {title}\",Flags:\"Σημαίες\",\"Food & Drink\":\"Φαγητό & Ποτό\",\"Frequently used\":\"Συχνά χρησιμοποιούμενο\",Global:\"Καθολικό\",\"Go back to the list\":\"Επιστροφή στην αρχική λίστα \",\"Message limit of {count} characters reached\":\"Συμπληρώθηκε το όριο των {count} χαρακτήρων του μηνύματος\",Next:\"Επόμενο\",\"No emoji found\":\"Δεν βρέθηκε emoji\",\"No results\":\"Κανένα αποτέλεσμα\",Objects:\"Αντικείμενα\",\"Open navigation\":\"Άνοιγμα πλοήγησης\",\"Pause slideshow\":\"Παύση προβολής διαφανειών\",\"People & Body\":\"Άνθρωποι & Σώμα\",\"Pick an emoji\":\"Επιλέξτε ένα emoji\",\"Please select a time zone:\":\"Παρακαλούμε επιλέξτε μια ζώνη ώρας:\",Previous:\"Προηγούμενο\",Search:\"Αναζήτηση\",\"Search results\":\"Αποτελέσματα αναζήτησης\",\"Select a tag\":\"Επιλογή ετικέτας\",Settings:\"Ρυθμίσεις\",\"Settings navigation\":\"Πλοήγηση ρυθμίσεων\",\"Smileys & Emotion\":\"Φατσούλες & Συναίσθημα\",\"Start slideshow\":\"Έναρξη προβολής διαφανειών\",Submit:\"Υποβολή\",Symbols:\"Σύμβολα\",\"Travel & Places\":\"Ταξίδια & Τοποθεσίες\",\"Type to search time zone\":\"Πληκτρολογήστε για αναζήτηση ζώνης ώρας\",\"Unable to search the group\":\"Δεν είναι δυνατή η αναζήτηση της ομάδας\",\"Undo changes\":\"Αναίρεση Αλλαγών\",\"Write message, @ to mention someone …\":\"Γράψτε ένα μήνυμα, και με το σύμβολο @, μνημονεύστε κάποιον …\"}},{locale:\"eo\",translations:{\"{tag} (invisible)\":\"{tag} (kaŝita)\",\"{tag} (restricted)\":\"{tag} (limigita)\",Actions:\"Agoj\",Activities:\"Aktiveco\",\"Animals & Nature\":\"Bestoj & Naturo\",Choose:\"Elektu\",Close:\"Fermu\",Custom:\"Propra\",Flags:\"Flagoj\",\"Food & Drink\":\"Manĝaĵo & Trinkaĵo\",\"Frequently used\":\"Ofte uzataj\",\"Message limit of {count} characters reached\":\"La limo je {count} da literoj atingita\",Next:\"Sekva\",\"No emoji found\":\"La emoĝio forestas\",\"No results\":\"La rezulto forestas\",Objects:\"Objektoj\",\"Pause slideshow\":\"Payzi bildprezenton\",\"People & Body\":\"Homoj & Korpo\",\"Pick an emoji\":\"Elekti emoĝion \",Previous:\"Antaŭa\",Search:\"Serĉi\",\"Search results\":\"Serĉrezultoj\",\"Select a tag\":\"Elektu etikedon\",Settings:\"Agordo\",\"Settings navigation\":\"Agorda navigado\",\"Smileys & Emotion\":\"Ridoj kaj Emocioj\",\"Start slideshow\":\"Komenci bildprezenton\",Symbols:\"Signoj\",\"Travel & Places\":\"Vojaĵoj & Lokoj\",\"Unable to search the group\":\"Ne eblas serĉi en la grupo\",\"Write message, @ to mention someone …\":\"Mesaĝi, uzu @ por mencii iun ...\"}},{locale:\"es\",translations:{\"{tag} (invisible)\":\"{tag} (invisible)\",\"{tag} (restricted)\":\"{tag} (restringido)\",Actions:\"Acciones\",Activities:\"Actividades\",\"Animals & Nature\":\"Animales y naturaleza\",\"Avatar of {displayName}\":\"Avatar de {displayName}\",\"Avatar of {displayName}, {status}\":\"Avatar de {displayName}, {status}\",\"Cancel changes\":\"Cancelar cambios\",Choose:\"Elegir\",Close:\"Cerrar\",\"Close navigation\":\"Cerrar navegación\",\"Confirm changes\":\"Confirmar cambios\",Custom:\"Personalizado\",\"Edit item\":\"Editar elemento\",\"External documentation for {title}\":\"Documentacion externa de {title}\",Flags:\"Banderas\",\"Food & Drink\":\"Comida y bebida\",\"Frequently used\":\"Usado con frecuenca\",Global:\"Global\",\"Go back to the list\":\"Volver a la lista\",\"Message limit of {count} characters reached\":\"El mensaje ha alcanzado el límite de {count} caracteres\",Next:\"Siguiente\",\"No emoji found\":\"No hay ningún emoji\",\"No results\":\" Ningún resultado\",Objects:\"Objetos\",\"Open navigation\":\"Abrir navegación\",\"Pause slideshow\":\"Pausar la presentación \",\"People & Body\":\"Personas y cuerpos\",\"Pick an emoji\":\"Elegir un emoji\",\"Please select a time zone:\":\"Por favor elige un huso de horario:\",Previous:\"Anterior\",Search:\"Buscar\",\"Search results\":\"Resultados de la búsqueda\",\"Select a tag\":\"Seleccione una etiqueta\",Settings:\"Ajustes\",\"Settings navigation\":\"Navegación por ajustes\",\"Smileys & Emotion\":\"Smileys y emoticonos\",\"Start slideshow\":\"Iniciar la presentación\",Submit:\"Enviar\",Symbols:\"Símbolos\",\"Travel & Places\":\"Viajes y lugares\",\"Type to search time zone\":\"Escribe para buscar un huso de horario\",\"Unable to search the group\":\"No es posible buscar en el grupo\",\"Undo changes\":\"Deshacer cambios\",\"Write message, @ to mention someone …\":\"Escriba un mensaje, @ para mencionar a alguien...\"}},{locale:\"eu\",translations:{\"{tag} (invisible)\":\"{tag} (ikusezina)\",\"{tag} (restricted)\":\"{tag} (mugatua)\",Actions:\"Ekintzak\",Activities:\"Jarduerak\",\"Animals & Nature\":\"Animaliak eta Natura\",\"Avatar of {displayName}\":\"{displayName}-(e)n irudia\",\"Cancel changes\":\"Ezeztatu aldaketak\",Choose:\"Aukeratu\",Close:\"Itxi\",\"Close navigation\":\"Itxi nabigazioa\",\"Confirm changes\":\"Baieztatu aldaketak\",Custom:\"Pertsonalizatua\",\"External documentation for {title}\":\"Kanpoko dokumentazioa {title}(r)entzat\",Flags:\"Banderak\",\"Food & Drink\":\"Janaria eta edariak\",\"Frequently used\":\"Askotan erabilia\",Global:\"Globala\",\"Go back to the list\":\"Bueltatu zerrendara\",\"Message limit of {count} characters reached\":\"Mezuaren {count} karaketere-limitera heldu zara\",Next:\"Hurrengoa\",\"No emoji found\":\"Ez da emojirik aurkitu\",\"No results\":\"Emaitzarik ez\",Objects:\"Objektuak\",\"Open navigation\":\"Ireki nabigazioa\",\"Pause slideshow\":\"Pausatu diaporama\",\"People & Body\":\"Jendea eta gorputza\",\"Pick an emoji\":\"Aukeratu emoji bat\",\"Please select a time zone:\":\"Mesedez hautatu ordu-zona bat:\",Previous:\"Aurrekoa\",Search:\"Bilatu\",\"Search results\":\"Bilaketa emaitzak\",\"Select a tag\":\"Hautatu etiketa bat\",Settings:\"Ezarpenak\",\"Settings navigation\":\"Nabigazio ezarpenak\",\"Smileys & Emotion\":\"Smileyak eta emozioa\",\"Start slideshow\":\"Hasi diaporama\",Submit:\"Bidali\",Symbols:\"Sinboloak\",\"Travel & Places\":\"Bidaiak eta lekuak\",\"Type to search time zone\":\"Idatzi ordu-zona bat bilatzeko\",\"Unable to search the group\":\"Ezin izan da taldea bilatu\",\"Write message, @ to mention someone …\":\"Idatzi mezua, @ norbait aipatzeko …\"}},{locale:\"fi_FI\",translations:{\"{tag} (invisible)\":\"{tag} (näkymätön)\",\"{tag} (restricted)\":\"{tag} (rajoitettu)\",Actions:\"Toiminnot\",Activities:\"Aktiviteetit\",\"Animals & Nature\":\"Eläimet & luonto\",\"Avatar of {displayName}\":\"Käyttäjän {displayName} avatar\",\"Avatar of {displayName}, {status}\":\"Käyttäjän {displayName} avatar, {status}\",\"Cancel changes\":\"Peruuta muutokset\",Choose:\"Valitse\",Close:\"Sulje\",\"Close navigation\":\"Sulje navigaatio\",\"Confirm changes\":\"Vahvista muutokset\",Custom:\"Mukautettu\",\"Edit item\":\"Muokkaa kohdetta\",\"External documentation for {title}\":\"Ulkoinen dokumentaatio kohteelle {title}\",Flags:\"Liput\",\"Food & Drink\":\"Ruoka & juoma\",\"Frequently used\":\"Usein käytetyt\",Global:\"Yleinen\",\"Go back to the list\":\"Siirry takaisin listaan\",\"Message limit of {count} characters reached\":\"Viestin merkken enimmäisimäärä {count} täynnä \",Next:\"Seuraava\",\"No emoji found\":\"Emojia ei löytynyt\",\"No results\":\"Ei tuloksia\",Objects:\"Esineet & asiat\",\"Open navigation\":\"Avaa navigaatio\",\"Pause slideshow\":\"Keskeytä diaesitys\",\"People & Body\":\"Ihmiset & keho\",\"Pick an emoji\":\"Valitse emoji\",\"Please select a time zone:\":\"Valitse aikavyöhyke:\",Previous:\"Edellinen\",Search:\"Etsi\",\"Search results\":\"Hakutulokset\",\"Select a tag\":\"Valitse tagi\",Settings:\"Asetukset\",\"Settings navigation\":\"Asetusnavigaatio\",\"Smileys & Emotion\":\"Hymiöt & tunteet\",\"Start slideshow\":\"Aloita diaesitys\",Submit:\"Lähetä\",Symbols:\"Symbolit\",\"Travel & Places\":\"Matkustus & kohteet\",\"Type to search time zone\":\"Kirjoita etsiäksesi aikavyöhyke\",\"Unable to search the group\":\"Ryhmää ei voi hakea\",\"Undo changes\":\"Kumoa muutokset\",\"Write message, @ to mention someone …\":\"Kirjoita viesti, @ mainitaksesi jonkun...\"}},{locale:\"fr\",translations:{\"{tag} (invisible)\":\"{tag} (invisible)\",\"{tag} (restricted)\":\"{tag} (restreint)\",Actions:\"Actions\",Activities:\"Activités\",\"Animals & Nature\":\"Animaux & Nature\",\"Avatar of {displayName}\":\"Avatar de {displayName}\",\"Avatar of {displayName}, {status}\":\"Avatar de {displayName}, {status}\",\"Cancel changes\":\"Annuler les modifications\",Choose:\"Choisir\",Close:\"Fermer\",\"Close navigation\":\"Fermer la navigation\",\"Confirm changes\":\"Confirmer les modifications\",Custom:\"Personnalisé\",\"Edit item\":\"Éditer l'élément\",\"External documentation for {title}\":\"Documentation externe pour {title}\",Flags:\"Drapeaux\",\"Food & Drink\":\"Nourriture & Boissons\",\"Frequently used\":\"Utilisés fréquemment\",Global:\"Global\",\"Go back to the list\":\"Retourner à la liste\",\"Message limit of {count} characters reached\":\"Limite de messages de {count} caractères atteinte\",Next:\"Suivant\",\"No emoji found\":\"Pas d’émoji trouvé\",\"No results\":\"Aucun résultat\",Objects:\"Objets\",\"Open navigation\":\"Ouvrir la navigation\",\"Pause slideshow\":\"Mettre le diaporama en pause\",\"People & Body\":\"Personnes & Corps\",\"Pick an emoji\":\"Choisissez un émoji\",\"Please select a time zone:\":\"Sélectionnez un fuseau horaire : \",Previous:\"Précédent\",Search:\"Chercher\",\"Search results\":\"Résultats de recherche\",\"Select a tag\":\"Sélectionnez une balise\",Settings:\"Paramètres\",\"Settings navigation\":\"Navigation dans les paramètres\",\"Smileys & Emotion\":\"Smileys & Émotions\",\"Start slideshow\":\"Démarrer le diaporama\",Submit:\"Valider\",Symbols:\"Symboles\",\"Travel & Places\":\"Voyage & Lieux\",\"Type to search time zone\":\"Saisissez les premiers lettres pour rechercher un fuseau horaire\",\"Unable to search the group\":\"Impossible de chercher le groupe\",\"Undo changes\":\"Annuler les changements\",\"Write message, @ to mention someone …\":\"Écrivez un message, @ pour mentionner quelqu'un…\"}},{locale:\"gl\",translations:{\"{tag} (invisible)\":\"{tag} (invisíbel)\",\"{tag} (restricted)\":\"{tag} (restrinxido)\",Actions:\"Accións\",Activities:\"Actividades\",\"Animals & Nature\":\"Animais e natureza\",\"Cancel changes\":\"Cancelar os cambios\",Choose:\"Escoller\",Close:\"Pechar\",\"Confirm changes\":\"Confirma os cambios\",Custom:\"Personalizado\",\"External documentation for {title}\":\"Documentación externa para {title}\",Flags:\"Bandeiras\",\"Food & Drink\":\"Comida e bebida\",\"Frequently used\":\"Usado con frecuencia\",\"Message limit of {count} characters reached\":\"Acadouse o límite de {count} caracteres por mensaxe\",Next:\"Seguinte\",\"No emoji found\":\"Non se atopou ningún «emoji»\",\"No results\":\"Sen resultados\",Objects:\"Obxectos\",\"Pause slideshow\":\"Pausar o diaporama\",\"People & Body\":\"Persoas e corpo\",\"Pick an emoji\":\"Escolla un «emoji»\",Previous:\"Anterir\",Search:\"Buscar\",\"Search results\":\"Resultados da busca\",\"Select a tag\":\"Seleccione unha etiqueta\",Settings:\"Axustes\",\"Settings navigation\":\"Navegación polos axustes\",\"Smileys & Emotion\":\"Sorrisos e emocións\",\"Start slideshow\":\"Iniciar o diaporama\",Submit:\"Enviar\",Symbols:\"Símbolos\",\"Travel & Places\":\"Viaxes e lugares\",\"Unable to search the group\":\"Non foi posíbel buscar o grupo\",\"Write message, @ to mention someone …\":\"Escriba a mensaxe, @ para mencionar a alguén…\"}},{locale:\"he\",translations:{\"{tag} (invisible)\":\"{tag} (נסתר)\",\"{tag} (restricted)\":\"{tag} (מוגבל)\",Actions:\"פעולות\",Activities:\"פעילויות\",\"Animals & Nature\":\"חיות וטבע\",Choose:\"בחירה\",Close:\"סגירה\",Custom:\"בהתאמה אישית\",Flags:\"דגלים\",\"Food & Drink\":\"מזון ומשקאות\",\"Frequently used\":\"בשימוש תדיר\",Next:\"הבא\",\"No emoji found\":\"לא נמצא אמוג׳י\",\"No results\":\"אין תוצאות\",Objects:\"חפצים\",\"Pause slideshow\":\"השהיית מצגת\",\"People & Body\":\"אנשים וגוף\",\"Pick an emoji\":\"נא לבחור אמוג׳י\",Previous:\"הקודם\",Search:\"חיפוש\",\"Search results\":\"תוצאות חיפוש\",\"Select a tag\":\"בחירת תגית\",Settings:\"הגדרות\",\"Smileys & Emotion\":\"חייכנים ורגשונים\",\"Start slideshow\":\"התחלת המצגת\",Symbols:\"סמלים\",\"Travel & Places\":\"טיולים ומקומות\",\"Unable to search the group\":\"לא ניתן לחפש בקבוצה\"}},{locale:\"hu_HU\",translations:{\"{tag} (invisible)\":\"{tag} (láthatatlan)\",\"{tag} (restricted)\":\"{tag} (korlátozott)\",Actions:\"Műveletek\",Activities:\"Tevékenységek\",\"Animals & Nature\":\"Állatok és természet\",\"Avatar of {displayName}\":\"{displayName} profilképe\",\"Cancel changes\":\"Változtatások elvetése\",Choose:\"Válassszon\",Close:\"Bezárás\",\"Confirm changes\":\"Változtatások megerősítése\",Custom:\"Egyéni\",\"External documentation for {title}\":\"Külső dokumentáció ehhez: {title}\",Flags:\"Zászló\",\"Food & Drink\":\"Étel és ital\",\"Frequently used\":\"Gyakran használt\",Global:\"Globális\",\"Message limit of {count} characters reached\":\"{count} karakteres üzenetkorlát elérve\",Next:\"Következő\",\"No emoji found\":\"Nem található emodzsi\",\"No results\":\"Nincs találat\",Objects:\"Tárgyak\",\"Pause slideshow\":\"Diavetítés szüneteltetése\",\"People & Body\":\"Emberek és test\",\"Pick an emoji\":\"Válasszon egy emodzsit\",\"Please select a time zone:\":\"Válasszon időzónát:\",Previous:\"Előző\",Search:\"Keresés\",\"Search results\":\"Találatok\",\"Select a tag\":\"Válasszon címkét\",Settings:\"Beállítások\",\"Settings navigation\":\"Navigáció a beállításokban\",\"Smileys & Emotion\":\"Mosolyok és érzelmek\",\"Start slideshow\":\"Diavetítés indítása\",Submit:\"Beküldés\",Symbols:\"Szimbólumok\",\"Travel & Places\":\"Utazás és helyek\",\"Type to search time zone\":\"Gépeljen az időzóna kereséséhez\",\"Unable to search the group\":\"A csoport nem kereshető\",\"Write message, @ to mention someone …\":\"Írjon üzenetet, @ valaki megemlítéséhez…\"}},{locale:\"is\",translations:{\"{tag} (invisible)\":\"{tag} (ósýnilegt)\",\"{tag} (restricted)\":\"{tag} (takmarkað)\",Actions:\"Aðgerðir\",Activities:\"Aðgerðir\",\"Animals & Nature\":\"Dýr og náttúra\",Choose:\"Velja\",Close:\"Loka\",Custom:\"Sérsniðið\",Flags:\"Flögg\",\"Food & Drink\":\"Matur og drykkur\",\"Frequently used\":\"Oftast notað\",Next:\"Næsta\",\"No emoji found\":\"Ekkert tjáningartákn fannst\",\"No results\":\"Engar niðurstöður\",Objects:\"Hlutir\",\"Pause slideshow\":\"Gera hlé á skyggnusýningu\",\"People & Body\":\"Fólk og líkami\",\"Pick an emoji\":\"Veldu tjáningartákn\",Previous:\"Fyrri\",Search:\"Leita\",\"Search results\":\"Leitarniðurstöður\",\"Select a tag\":\"Veldu merki\",Settings:\"Stillingar\",\"Smileys & Emotion\":\"Broskallar og tilfinningar\",\"Start slideshow\":\"Byrja skyggnusýningu\",Symbols:\"Tákn\",\"Travel & Places\":\"Staðir og ferðalög\",\"Unable to search the group\":\"Get ekki leitað í hópnum\"}},{locale:\"it\",translations:{\"{tag} (invisible)\":\"{tag} (invisibile)\",\"{tag} (restricted)\":\"{tag} (limitato)\",Actions:\"Azioni\",Activities:\"Attività\",\"Animals & Nature\":\"Animali e natura\",\"Avatar of {displayName}\":\"Avatar di {displayName}\",\"Cancel changes\":\"Annulla modifiche\",Choose:\"Scegli\",Close:\"Chiudi\",\"Confirm changes\":\"Conferma modifiche\",Custom:\"Personalizzato\",\"External documentation for {title}\":\"Documentazione esterna per {title}\",Flags:\"Bandiere\",\"Food & Drink\":\"Cibo e bevande\",\"Frequently used\":\"Usati di frequente\",\"Message limit of {count} characters reached\":\"Limite dei messaggi di {count} caratteri raggiunto\",Next:\"Successivo\",\"No emoji found\":\"Nessun emoji trovato\",\"No results\":\"Nessun risultato\",Objects:\"Oggetti\",\"Pause slideshow\":\"Presentazione in pausa\",\"People & Body\":\"Persone e corpo\",\"Pick an emoji\":\"Scegli un emoji\",Previous:\"Precedente\",Search:\"Cerca\",\"Search results\":\"Risultati di ricerca\",\"Select a tag\":\"Seleziona un'etichetta\",Settings:\"Impostazioni\",\"Settings navigation\":\"Navigazione delle impostazioni\",\"Smileys & Emotion\":\"Faccine ed emozioni\",\"Start slideshow\":\"Avvia presentazione\",Submit:\"Invia\",Symbols:\"Simboli\",\"Travel & Places\":\"Viaggi e luoghi\",\"Unable to search the group\":\"Impossibile cercare il gruppo\",\"Write message, @ to mention someone …\":\"Scrivi messaggio, @ per menzionare qualcuno…\"}},{locale:\"ja_JP\",translations:{\"{tag} (invisible)\":\"{タグ} (不可視)\",\"{tag} (restricted)\":\"{タグ} (制限付)\",Actions:\"操作\",Activities:\"アクティビティ\",\"Animals & Nature\":\"動物と自然\",\"Avatar of {displayName}\":\"{displayName} のアバター\",\"Cancel changes\":\"変更をキャンセル\",Choose:\"選択\",Close:\"閉じる\",\"Confirm changes\":\"変更を承認\",Custom:\"カスタム\",\"External documentation for {title}\":\"{title} のための添付文書\",Flags:\"国旗\",\"Food & Drink\":\"食べ物と飲み物\",\"Frequently used\":\"よく使うもの\",Global:\"全体\",\"Message limit of {count} characters reached\":\"{count} 文字のメッセージ上限に達しています\",Next:\"次\",\"No emoji found\":\"絵文字が見つかりません\",\"No results\":\"なし\",Objects:\"物\",\"Pause slideshow\":\"スライドショーを一時停止\",\"People & Body\":\"様々な人と体の部位\",\"Pick an emoji\":\"絵文字を選択\",\"Please select a time zone:\":\"タイムゾーンを選んで下さい:\",Previous:\"前\",Search:\"検索\",\"Search results\":\"検索結果\",\"Select a tag\":\"タグを選択\",Settings:\"設定\",\"Settings navigation\":\"ナビゲーション設定\",\"Smileys & Emotion\":\"感情表現\",\"Start slideshow\":\"スライドショーを開始\",Submit:\"提出\",Symbols:\"記号\",\"Travel & Places\":\"旅行と場所\",\"Type to search time zone\":\"タイムゾーン検索のため入力してください\",\"Unable to search the group\":\"グループを検索できません\",\"Write message, @ to mention someone …\":\"メッセージを記入 @をつけるとその人に通知が行きます\"}},{locale:\"lt_LT\",translations:{\"{tag} (invisible)\":\"{tag} (nematoma)\",\"{tag} (restricted)\":\"{tag} (apribota)\",Actions:\"Veiksmai\",Activities:\"Veiklos\",\"Animals & Nature\":\"Gyvūnai ir gamta\",Choose:\"Pasirinkti\",Close:\"Užverti\",Custom:\"Tinkinti\",\"External documentation for {title}\":\"Išorinė {title} dokumentacija\",Flags:\"Vėliavos\",\"Food & Drink\":\"Maistas ir gėrimai\",\"Frequently used\":\"Dažniausiai naudoti\",\"Message limit of {count} characters reached\":\"Pasiekta {count} simbolių žinutės riba\",Next:\"Kitas\",\"No emoji found\":\"Nerasta jaustukų\",\"No results\":\"Nėra rezultatų\",Objects:\"Objektai\",\"Pause slideshow\":\"Pristabdyti skaidrių rodymą\",\"People & Body\":\"Žmonės ir kūnas\",\"Pick an emoji\":\"Pasirinkti jaustuką\",Previous:\"Ankstesnis\",Search:\"Ieškoti\",\"Search results\":\"Paieškos rezultatai\",\"Select a tag\":\"Pasirinkti žymę\",Settings:\"Nustatymai\",\"Settings navigation\":\"Naršymas nustatymuose\",\"Smileys & Emotion\":\"Šypsenos ir emocijos\",\"Start slideshow\":\"Pradėti skaidrių rodymą\",Submit:\"Pateikti\",Symbols:\"Simboliai\",\"Travel & Places\":\"Kelionės ir vietos\",\"Unable to search the group\":\"Nepavyko atlikti paiešką grupėje\",\"Write message, @ to mention someone …\":\"Rašykite žinutę, naudokite @ norėdami kažką paminėti…\"}},{locale:\"lv\",translations:{\"{tag} (invisible)\":\"{tag} (neredzams)\",\"{tag} (restricted)\":\"{tag} (ierobežots)\",Choose:\"Izvēlēties\",Close:\"Aizvērt\",Next:\"Nākamais\",\"No results\":\"Nav rezultātu\",\"Pause slideshow\":\"Pauzēt slaidrādi\",Previous:\"Iepriekšējais\",\"Select a tag\":\"Izvēlēties birku\",Settings:\"Iestatījumi\",\"Start slideshow\":\"Sākt slaidrādi\"}},{locale:\"mk\",translations:{\"{tag} (invisible)\":\"{tag} (невидливо)\",\"{tag} (restricted)\":\"{tag} (ограничено)\",Actions:\"Акции\",Activities:\"Активности\",\"Animals & Nature\":\"Животни & Природа\",Choose:\"Избери\",Close:\"Затвори\",Custom:\"Прилагодени\",Flags:\"Знамиња\",\"Food & Drink\":\"Храна & Пијалоци\",\"Frequently used\":\"Најчесто користени\",\"Message limit of {count} characters reached\":\"Ограничувањето на должината на пораката од {count} карактери е надминато\",Next:\"Следно\",\"No emoji found\":\"Не се пронајдени емотикони\",\"No results\":\"Нема резултати\",Objects:\"Објекти\",\"Pause slideshow\":\"Пузирај слајдшоу\",\"People & Body\":\"Луѓе & Тело\",\"Pick an emoji\":\"Избери емотикон\",Previous:\"Предходно\",Search:\"Барај\",\"Search results\":\"Резултати од барувањето\",\"Select a tag\":\"Избери ознака\",Settings:\"Параметри\",\"Settings navigation\":\"Параметри за навигација\",\"Smileys & Emotion\":\"Смешковци & Емотикони\",\"Start slideshow\":\"Стартувај слајдшоу\",Symbols:\"Симболи\",\"Travel & Places\":\"Патувања & Места\",\"Unable to search the group\":\"Неможе да се принајде групата\",\"Write message, @ to mention someone …\":\"Напиши порака, @ за да спомнеш некој …\"}},{locale:\"my\",translations:{\"{tag} (invisible)\":\"{tag} (ကွယ်ဝှက်ထား)\",\"{tag} (restricted)\":\"{tag} (ကန့်သတ်)\",Actions:\"လုပ်ဆောင်ချက်များ\",Activities:\"ပြုလုပ်ဆောင်တာများ\",\"Animals & Nature\":\"တိရစ္ဆာန်များနှင့် သဘာဝ\",\"Avatar of {displayName}\":\"{displayName} ၏ ကိုယ်ပွား\",\"Cancel changes\":\"ပြောင်းလဲမှုများ ပယ်ဖျက်ရန်\",Choose:\"ရွေးချယ်ရန်\",Close:\"ပိတ်ရန်\",\"Confirm changes\":\"ပြောင်းလဲမှုများ အတည်ပြုရန်\",Custom:\"အလိုကျချိန်ညှိမှု\",\"External documentation for {title}\":\"{title} အတွက် ပြင်ပ စာရွက်စာတမ်း\",Flags:\"အလံများ\",\"Food & Drink\":\"အစားအသောက်\",\"Frequently used\":\"မကြာခဏအသုံးပြုသော\",Global:\"ကမ္ဘာလုံးဆိုင်ရာ\",\"Message limit of {count} characters reached\":\"ကန့်သတ် စာလုံးရေ {count} လုံး ပြည့်ပါပြီ\",Next:\"နောက်သို့ဆက်ရန်\",\"No emoji found\":\"အီမိုဂျီ ရှာဖွေမတွေ့နိုင်ပါ\",\"No results\":\"ရလဒ်မရှိပါ\",Objects:\"အရာဝတ္ထုများ\",\"Pause slideshow\":\"စလိုက်ရှိုး ခေတ္တရပ်ရန်\",\"People & Body\":\"လူပုဂ္ဂိုလ်များနှင့် ခန္ဓာကိုယ်\",\"Pick an emoji\":\"အီမိုဂျီရွေးရန်\",\"Please select a time zone:\":\"ဒေသစံတော်ချိန် ရွေးချယ်ပေးပါ\",Previous:\"ယခင်\",Search:\"ရှာဖွေရန်\",\"Search results\":\"ရှာဖွေမှု ရလဒ်များ\",\"Select a tag\":\"tag ရွေးချယ်ရန်\",Settings:\"ချိန်ညှိချက်များ\",\"Settings navigation\":\"ချိန်ညှိချက်အညွှန်း\",\"Smileys & Emotion\":\"စမိုင်လီများနှင့် အီမိုရှင်း\",\"Start slideshow\":\"စလိုက်ရှိုးအား စတင်ရန်\",Submit:\"တင်သွင်းရန်\",Symbols:\"သင်္ကေတများ\",\"Travel & Places\":\"ခရီးသွားလာခြင်းနှင့် နေရာများ\",\"Type to search time zone\":\"ဒေသစံတော်ချိန်များ ရှာဖွေရန် စာရိုက်ပါ\",\"Unable to search the group\":\"အဖွဲ့အား ရှာဖွေ၍ မရနိုင်ပါ\",\"Write message, @ to mention someone …\":\"စာရေးသားရန်၊ တစ်စုံတစ်ဦးအား @ အသုံးပြု ရည်ညွှန်းရန်...\"}},{locale:\"nb_NO\",translations:{\"{tag} (invisible)\":\"{tag} (usynlig)\",\"{tag} (restricted)\":\"{tag} (beskyttet)\",Actions:\"Handlinger\",Activities:\"Aktiviteter\",\"Animals & Nature\":\"Dyr og natur\",\"Avatar of {displayName}\":\"Avataren til {displayName}\",\"Avatar of {displayName}, {status}\":\"{displayName}'s avatar, {status}\",\"Cancel changes\":\"Avbryt endringer\",Choose:\"Velg\",Close:\"Lukk\",\"Close navigation\":\"Lukk navigasjon\",\"Confirm changes\":\"Bekreft endringer\",Custom:\"Tilpasset\",\"Edit item\":\"Rediger\",\"External documentation for {title}\":\"Ekstern dokumentasjon for {title}\",Flags:\"Flagg\",\"Food & Drink\":\"Mat og drikke\",\"Frequently used\":\"Ofte brukt\",Global:\"Global\",\"Go back to the list\":\"Gå tilbake til listen\",\"Message limit of {count} characters reached\":\"Karakter begrensing {count} nådd i melding\",Next:\"Neste\",\"No emoji found\":\"Fant ingen emoji\",\"No results\":\"Ingen resultater\",Objects:\"Objekter\",\"Open navigation\":\"Åpne navigasjon\",\"Pause slideshow\":\"Pause lysbildefremvisning\",\"People & Body\":\"Mennesker og kropp\",\"Pick an emoji\":\"Velg en emoji\",\"Please select a time zone:\":\"Vennligst velg tidssone\",Previous:\"Forrige\",Search:\"Søk\",\"Search results\":\"Søkeresultater\",\"Select a tag\":\"Velg en merkelapp\",Settings:\"Innstillinger\",\"Settings navigation\":\"Navigasjons instillinger\",\"Smileys & Emotion\":\"Smilefjes og følelser\",\"Start slideshow\":\"Start lysbildefremvisning\",Submit:\"Send\",Symbols:\"Symboler\",\"Travel & Places\":\"Reise og steder\",\"Type to search time zone\":\"Skriv for å søke etter tidssone\",\"Unable to search the group\":\"Kunne ikke søke i gruppen\",\"Undo changes\":\"Tilbakestill endringer\",\"Write message, @ to mention someone …\":\"Bruk @ for å nevne noen i en melding\"}},{locale:\"nl\",translations:{\"{tag} (invisible)\":\"{tag} (onzichtbaar)\",\"{tag} (restricted)\":\"{tag} (beperkt)\",Actions:\"Acties\",Activities:\"Activiteiten\",\"Animals & Nature\":\"Dieren & Natuur\",\"Avatar of {displayName}\":\"Avatar van {displayName}\",\"Avatar of {displayName}, {status}\":\"Avatar van {displayName}, {status}\",\"Cancel changes\":\"Wijzigingen annuleren\",Choose:\"Kies\",Close:\"Sluiten\",\"Close navigation\":\"Navigatie sluiten\",\"Confirm changes\":\"Wijzigingen bevestigen\",Custom:\"Aangepast\",\"Edit item\":\"Item bewerken\",\"External documentation for {title}\":\"Externe documentatie voor {title}\",Flags:\"Vlaggen\",\"Food & Drink\":\"Eten & Drinken\",\"Frequently used\":\"Vaak gebruikt\",Global:\"Globaal\",\"Go back to the list\":\"Ga terug naar de lijst\",\"Message limit of {count} characters reached\":\"Berichtlimiet van {count} karakters bereikt\",Next:\"Volgende\",\"No emoji found\":\"Geen emoji gevonden\",\"No results\":\"Geen resultaten\",Objects:\"Objecten\",\"Open navigation\":\"Navigatie openen\",\"Pause slideshow\":\"Pauzeer diavoorstelling\",\"People & Body\":\"Mensen & Lichaam\",\"Pick an emoji\":\"Kies een emoji\",\"Please select a time zone:\":\"Selecteer een tijdzone:\",Previous:\"Vorige\",Search:\"Zoeken\",\"Search results\":\"Zoekresultaten\",\"Select a tag\":\"Selecteer een label\",Settings:\"Instellingen\",\"Settings navigation\":\"Instellingen navigatie\",\"Smileys & Emotion\":\"Smileys & Emotie\",\"Start slideshow\":\"Start diavoorstelling\",Submit:\"Verwerken\",Symbols:\"Symbolen\",\"Travel & Places\":\"Reizen & Plaatsen\",\"Type to search time zone\":\"Type om de tijdzone te zoeken\",\"Unable to search the group\":\"Kan niet in de groep zoeken\",\"Undo changes\":\"Wijzigingen ongedaan maken\",\"Write message, @ to mention someone, : for emoji autocompletion …\":\"Schrijf bericht, @ om iemand te noemen, : voor emoji auto-aanvullen ...\"}},{locale:\"oc\",translations:{\"{tag} (invisible)\":\"{tag} (invisible)\",\"{tag} (restricted)\":\"{tag} (limit)\",Actions:\"Accions\",Choose:\"Causir\",Close:\"Tampar\",Next:\"Seguent\",\"No results\":\"Cap de resultat\",\"Pause slideshow\":\"Metre en pausa lo diaporama\",Previous:\"Precedent\",\"Select a tag\":\"Seleccionar una etiqueta\",Settings:\"Paramètres\",\"Start slideshow\":\"Lançar lo diaporama\"}},{locale:\"pl\",translations:{\"{tag} (invisible)\":\"{tag} (niewidoczna)\",\"{tag} (restricted)\":\"{tag} (ograniczona)\",Actions:\"Działania\",Activities:\"Aktywność\",\"Animals & Nature\":\"Zwierzęta i natura\",\"Avatar of {displayName}\":\"Awatar {displayName}\",\"Avatar of {displayName}, {status}\":\"Awatar {displayName}, {status}\",\"Cancel changes\":\"Anuluj zmiany\",Choose:\"Wybierz\",Close:\"Zamknij\",\"Close navigation\":\"Zamknij nawigację\",\"Confirm changes\":\"Potwierdź zmiany\",Custom:\"Zwyczajne\",\"Edit item\":\"Edytuj element\",\"External documentation for {title}\":\"Dokumentacja zewnętrzna dla {title}\",Flags:\"Flagi\",\"Food & Drink\":\"Jedzenie i picie\",\"Frequently used\":\"Często używane\",Global:\"Globalnie\",\"Go back to the list\":\"Powrót do listy\",\"Message limit of {count} characters reached\":\"Przekroczono limit wiadomości wynoszący {count} znaków\",Next:\"Następny\",\"No emoji found\":\"Nie znaleziono emotikonów\",\"No results\":\"Brak wyników\",Objects:\"Obiekty\",\"Open navigation\":\"Otwórz nawigację\",\"Pause slideshow\":\"Wstrzymaj pokaz slajdów\",\"People & Body\":\"Ludzie i ciało\",\"Pick an emoji\":\"Wybierz emoji\",\"Please select a time zone:\":\"Wybierz strefę czasową:\",Previous:\"Poprzedni\",Search:\"Szukaj\",\"Search results\":\"Wyniki wyszukiwania\",\"Select a tag\":\"Wybierz etykietę\",Settings:\"Ustawienia\",\"Settings navigation\":\"Ustawienia nawigacji\",\"Smileys & Emotion\":\"Buźki i emotikony\",\"Start slideshow\":\"Rozpocznij pokaz slajdów\",Submit:\"Wyślij\",Symbols:\"Symbole\",\"Travel & Places\":\"Podróże i miejsca\",\"Type to search time zone\":\"Wpisz, aby wyszukać strefę czasową\",\"Unable to search the group\":\"Nie można przeszukać grupy\",\"Undo changes\":\"Cofnij zmiany\",\"Write message, @ to mention someone, : for emoji autocompletion …\":\"Napisz wiadomość, @ aby o kimś wspomnieć, : dla autouzupełniania emotikonów…\"}},{locale:\"pt_BR\",translations:{\"{tag} (invisible)\":\"{tag} (invisível)\",\"{tag} (restricted)\":\"{tag} (restrito) \",Actions:\"Ações\",Activities:\"Atividades\",\"Animals & Nature\":\"Animais & Natureza\",\"Avatar of {displayName}\":\"Avatar de {displayName}\",\"Avatar of {displayName}, {status}\":\"Avatar de {displayName}, {status}\",\"Cancel changes\":\"Cancelar alterações\",Choose:\"Escolher\",Close:\"Fechar\",\"Close navigation\":\"Fechar navegação\",\"Confirm changes\":\"Confirmar alterações\",Custom:\"Personalizado\",\"Edit item\":\"Editar item\",\"External documentation for {title}\":\"Documentação externa para {title}\",Flags:\"Bandeiras\",\"Food & Drink\":\"Comida & Bebida\",\"Frequently used\":\"Mais usados\",Global:\"Global\",\"Go back to the list\":\"Volte para a lista\",\"Message limit of {count} characters reached\":\"Limite de mensagem de {count} caracteres atingido\",Next:\"Próximo\",\"No emoji found\":\"Nenhum emoji encontrado\",\"No results\":\"Sem resultados\",Objects:\"Objetos\",\"Open navigation\":\"Abrir navegação\",\"Pause slideshow\":\"Pausar apresentação de slides\",\"People & Body\":\"Pessoas & Corpo\",\"Pick an emoji\":\"Escolha um emoji\",\"Please select a time zone:\":\"Selecione um fuso horário: \",Previous:\"Anterior\",Search:\"Pesquisar\",\"Search results\":\"Resultados da pesquisa\",\"Select a tag\":\"Selecionar uma tag\",Settings:\"Configurações\",\"Settings navigation\":\"Navegação de configurações\",\"Smileys & Emotion\":\"Smiles & Emoções\",\"Start slideshow\":\"Iniciar apresentação de slides\",Submit:\"Enviar\",Symbols:\"Símbolo\",\"Travel & Places\":\"Viagem & Lugares\",\"Type to search time zone\":\"Digite para pesquisar o fuso horário \",\"Unable to search the group\":\"Não foi possível pesquisar o grupo\",\"Undo changes\":\"Desfazer modificações\",\"Write message, @ to mention someone, : for emoji autocompletion …\":\"Escreva mensagem, @ para mencionar alguém, : para autocompleção emoji...\"}},{locale:\"pt_PT\",translations:{\"{tag} (invisible)\":\"{tag} (invisivel)\",\"{tag} (restricted)\":\"{tag} (restrito)\",Actions:\"Ações\",Choose:\"Escolher\",Close:\"Fechar\",Next:\"Seguinte\",\"No results\":\"Sem resultados\",\"Pause slideshow\":\"Pausar diaporama\",Previous:\"Anterior\",\"Select a tag\":\"Selecionar uma etiqueta\",Settings:\"Definições\",\"Start slideshow\":\"Iniciar diaporama\",\"Unable to search the group\":\"Não é possível pesquisar o grupo\"}},{locale:\"ru\",translations:{\"{tag} (invisible)\":\"{tag} (невидимое)\",\"{tag} (restricted)\":\"{tag} (ограниченное)\",Actions:\"Действия \",Activities:\"События\",\"Animals & Nature\":\"Животные и природа \",\"Avatar of {displayName}\":\"Аватар {displayName}\",\"Cancel changes\":\"Отменить изменения\",Choose:\"Выберите\",Close:\"Закрыть\",\"Confirm changes\":\"Подтвердить изменения\",Custom:\"Пользовательское\",\"External documentation for {title}\":\"Внешняя документация для {title}\",Flags:\"Флаги\",\"Food & Drink\":\"Еда, напиток\",\"Frequently used\":\"Часто используемый\",Global:\"Глобальный\",\"Message limit of {count} characters reached\":\"Достигнуто ограничение на количество символов в {count}\",Next:\"Следующее\",\"No emoji found\":\"Эмодзи не найдено\",\"No results\":\"Результаты отсуствуют\",Objects:\"Объекты\",\"Pause slideshow\":\"Приостановить показ слйдов\",\"People & Body\":\"Люди и тело\",\"Pick an emoji\":\"Выберите эмодзи\",\"Please select a time zone:\":\"Пожалуйста, выберите часовой пояс:\",Previous:\"Предыдущее\",Search:\"Поиск\",\"Search results\":\"Результаты поиска\",\"Select a tag\":\"Выберите метку\",Settings:\"Параметры\",\"Settings navigation\":\"Навигация по настройкам\",\"Smileys & Emotion\":\"Смайлики и эмоции\",\"Start slideshow\":\"Начать показ слайдов\",Submit:\"Утвердить\",Symbols:\"Символы\",\"Travel & Places\":\"Путешествия и места\",\"Type to search time zone\":\"Введите для поиска часового пояса\",\"Unable to search the group\":\"Невозможно найти группу\",\"Write message, @ to mention someone …\":\"Напишите сообщение, используйте @ чтобы упомянуть кого-то…\"}},{locale:\"sk_SK\",translations:{\"{tag} (invisible)\":\"{tag} (neviditeľný)\",\"{tag} (restricted)\":\"{tag} (obmedzený)\",Actions:\"Akcie\",Activities:\"Aktivity\",\"Animals & Nature\":\"Zvieratá a príroda\",\"Avatar of {displayName}\":\"Avatar {displayName}\",\"Cancel changes\":\"Zrušiť zmeny\",Choose:\"Vybrať\",Close:\"Zatvoriť\",\"Close navigation\":\"Zavrieť navigáciu\",\"Confirm changes\":\"Potvrdiť zmeny\",Custom:\"Zvyk\",\"Edit item\":\"Upraviť položku\",\"External documentation for {title}\":\"Externá dokumentácia pre {title}\",Flags:\"Vlajky\",\"Food & Drink\":\"Jedlo a nápoje\",\"Frequently used\":\"Často používané\",Global:\"Globálne\",\"Go back to the list\":\"Naspäť na zoznam\",\"Message limit of {count} characters reached\":\"Limit správy na {count} znakov dosiahnutý\",Next:\"Ďalší\",\"No emoji found\":\"Nenašli sa žiadne emodži\",\"No results\":\"Žiadne výsledky\",Objects:\"Objekty\",\"Open navigation\":\"Otvoriť navigáciu\",\"Pause slideshow\":\"Pozastaviť prezentáciu\",\"People & Body\":\"Ľudia a telo\",\"Pick an emoji\":\"Vyberte si emodži\",\"Please select a time zone:\":\"Prosím vyberte časovú zónu:\",Previous:\"Predchádzajúci\",Search:\"Hľadať\",\"Search results\":\"Výsledky vyhľadávania\",\"Select a tag\":\"Vybrať štítok\",Settings:\"Nastavenia\",\"Settings navigation\":\"Navigácia v nastaveniach\",\"Smileys & Emotion\":\"Smajlíky a emócie\",\"Start slideshow\":\"Začať prezentáciu\",Submit:\"Odoslať\",Symbols:\"Symboly\",\"Travel & Places\":\"Cestovanie a miesta\",\"Type to search time zone\":\"Začníte písať pre vyhľadávanie časovej zóny\",\"Unable to search the group\":\"Skupinu sa nepodarilo nájsť\",\"Undo changes\":\"Vrátiť zmeny\",\"Write message, @ to mention someone …\":\"Napíšte správu, @ pre spomenutie niekoho ...\"}},{locale:\"sl\",translations:{\"{tag} (invisible)\":\"{tag} (nevidno)\",\"{tag} (restricted)\":\"{tag} (omejeno)\",Actions:\"Dejanja\",Activities:\"Dejavnosti\",\"Animals & Nature\":\"Živali in Narava\",\"Avatar of {displayName}\":\"Podoba {displayName}\",\"Cancel changes\":\"Prekliči spremembe\",Choose:\"Izbor\",Close:\"Zapri\",\"Confirm changes\":\"Potrdi spremembe\",Custom:\"Po meri\",\"External documentation for {title}\":\"Zunanja dokumentacija za {title}\",Flags:\"Zastavice\",\"Food & Drink\":\"Hrana in Pijača\",\"Frequently used\":\"Pogostost uporabe\",Global:\"Splošno\",\"Message limit of {count} characters reached\":\"Dosežena omejitev {count} znakov na sporočilo.\",Next:\"Naslednji\",\"No emoji found\":\"Ni najdenih izraznih ikon\",\"No results\":\"Ni zadetkov\",Objects:\"Predmeti\",\"Pause slideshow\":\"Ustavi predstavitev\",\"People & Body\":\"Ljudje in Telo\",\"Pick an emoji\":\"Izbor izrazne ikone\",\"Please select a time zone:\":\"Izbor časovnega pasu:\",Previous:\"Predhodni\",Search:\"Iskanje\",\"Search results\":\"Zadetki iskanja\",\"Select a tag\":\"Izbor oznake\",Settings:\"Nastavitve\",\"Settings navigation\":\"Krmarjenje nastavitev\",\"Smileys & Emotion\":\"Izrazne ikone\",\"Start slideshow\":\"Začni predstavitev\",Submit:\"Pošlji\",Symbols:\"Simboli\",\"Travel & Places\":\"Potovanja in Kraji\",\"Type to search time zone\":\"Vpišite niz za iskanje časovnega pasu\",\"Unable to search the group\":\"Ni mogoče iskati po skupini\",\"Write message, @ to mention someone …\":\"Napišite sporočilo, z @ omenite osebo ...\"}},{locale:\"sv\",translations:{\"{tag} (invisible)\":\"{tag} (osynlig)\",\"{tag} (restricted)\":\"{tag} (begränsad)\",Actions:\"Åtgärder\",Activities:\"Aktiviteter\",\"Animals & Nature\":\"Djur & Natur\",\"Avatar of {displayName}\":\"{displayName}s avatar\",\"Avatar of {displayName}, {status}\":\"{displayName}s avatar, {status}\",\"Cancel changes\":\"Avbryt ändringar\",Choose:\"Välj\",Close:\"Stäng\",\"Close navigation\":\"Stäng navigering\",\"Confirm changes\":\"Bekräfta ändringar\",Custom:\"Anpassad\",\"Edit item\":\"Ändra\",\"External documentation for {title}\":\"Extern dokumentation för {title}\",Flags:\"Flaggor\",\"Food & Drink\":\"Mat & Dryck\",\"Frequently used\":\"Används ofta\",Global:\"Global\",\"Go back to the list\":\"Gå tillbaka till listan\",\"Message limit of {count} characters reached\":\"Meddelandegräns {count} tecken används\",Next:\"Nästa\",\"No emoji found\":\"Hittade inga emojis\",\"No results\":\"Inga resultat\",Objects:\"Objekt\",\"Open navigation\":\"Öppna navigering\",\"Pause slideshow\":\"Pausa bildspelet\",\"People & Body\":\"Kropp & Själ\",\"Pick an emoji\":\"Välj en emoji\",\"Please select a time zone:\":\"Välj tidszon:\",Previous:\"Föregående\",Search:\"Sök\",\"Search results\":\"Sökresultat\",\"Select a tag\":\"Välj en tag\",Settings:\"Inställningar\",\"Settings navigation\":\"Inställningsmeny\",\"Smileys & Emotion\":\"Selfies & Känslor\",\"Start slideshow\":\"Starta bildspelet\",Submit:\"Skicka\",Symbols:\"Symboler\",\"Travel & Places\":\"Resor & Sevärdigheter\",\"Type to search time zone\":\"Skriv för att välja tidszon\",\"Unable to search the group\":\"Kunde inte söka i gruppen\",\"Undo changes\":\"Ångra ändringar\",\"Write message, @ to mention someone, : for emoji autocompletion …\":\"Skriv meddelande, @ för att nämna någon, : för automatiska emojiförslag ...\"}},{locale:\"tr\",translations:{\"{tag} (invisible)\":\"{tag} (görünmez)\",\"{tag} (restricted)\":\"{tag} (kısıtlı)\",Actions:\"İşlemler\",Activities:\"Etkinlikler\",\"Animals & Nature\":\"Hayvanlar ve Doğa\",\"Avatar of {displayName}\":\"{displayName} avatarı\",\"Avatar of {displayName}, {status}\":\"{displayName}, {status} avatarı\",\"Cancel changes\":\"Değişiklikleri iptal et\",Choose:\"Seçin\",Close:\"Kapat\",\"Close navigation\":\"Gezinmeyi kapat\",\"Confirm changes\":\"Değişiklikleri onayla\",Custom:\"Özel\",\"Edit item\":\"Ögeyi düzenle\",\"External documentation for {title}\":\"{title} için dış belgeler\",Flags:\"Bayraklar\",\"Food & Drink\":\"Yeme ve İçme\",\"Frequently used\":\"Sık kullanılanlar\",Global:\"Evrensel\",\"Go back to the list\":\"Listeye dön\",\"Message limit of {count} characters reached\":\"{count} karakter ileti sınırına ulaşıldı\",Next:\"Sonraki\",\"No emoji found\":\"Herhangi bir emoji bulunamadı\",\"No results\":\"Herhangi bir sonuç bulunamadı\",Objects:\"Nesneler\",\"Open navigation\":\"Gezinmeyi aç\",\"Pause slideshow\":\"Slayt sunumunu duraklat\",\"People & Body\":\"İnsanlar ve Beden\",\"Pick an emoji\":\"Bir emoji seçin\",\"Please select a time zone:\":\"Lütfen bir saat dilimi seçin:\",Previous:\"Önceki\",Search:\"Arama\",\"Search results\":\"Arama sonuçları\",\"Select a tag\":\"Bir etiket seçin\",Settings:\"Ayarlar\",\"Settings navigation\":\"Gezinme ayarları\",\"Smileys & Emotion\":\"İfadeler ve Duygular\",\"Start slideshow\":\"Slayt sunumunu başlat\",Submit:\"Gönder\",Symbols:\"Simgeler\",\"Travel & Places\":\"Gezi ve Yerler\",\"Type to search time zone\":\"Saat dilimi aramak için yazmaya başlayın\",\"Unable to search the group\":\"Grupta arama yapılamadı\",\"Undo changes\":\"Değişiklikleri geri al\",\"Write message, @ to mention someone, : for emoji autocompletion …\":\"İleti yazın, birini anmak için @, otomatik emoji tamamlamak için : kullanın…\"}},{locale:\"uk\",translations:{\"{tag} (invisible)\":\"{tag} (invisible)\",\"{tag} (restricted)\":\"{tag} (restricted)\",Actions:\"Дії\",Activities:\"Діяльність\",\"Animals & Nature\":\"Тварини та природа\",Choose:\"Виберіть\",Close:\"Закрити\",Custom:\"Власне\",Flags:\"Прапори\",\"Food & Drink\":\"Їжа та напитки\",\"Frequently used\":\"Найчастіші\",Next:\"Вперед\",\"No emoji found\":\"Емоційки відсутні\",\"No results\":\"Відсутні результати\",Objects:\"Об'єкти\",\"Pause slideshow\":\"Пауза у показі слайдів\",\"People & Body\":\"Люди та жести\",\"Pick an emoji\":\"Виберіть емоційку\",Previous:\"Назад\",Search:\"Пошук\",\"Search results\":\"Результати пошуку\",\"Select a tag\":\"Виберіть позначку\",Settings:\"Налаштування\",\"Smileys & Emotion\":\"Усміхайлики та емоційки\",\"Start slideshow\":\"Почати показ слайдів\",Symbols:\"Символи\",\"Travel & Places\":\"Поїздки та місця\",\"Unable to search the group\":\"Неможливо шукати в групі\"}},{locale:\"zh_CN\",translations:{\"{tag} (invisible)\":\"{tag} (不可见)\",\"{tag} (restricted)\":\"{tag} (受限)\",Actions:\"行为\",Activities:\"活动\",\"Animals & Nature\":\"动物 & 自然\",\"Avatar of {displayName}\":\"{displayName}的头像\",\"Avatar of {displayName}, {status}\":\"{displayName}的头像,{status}\",\"Cancel changes\":\"取消更改\",Choose:\"选择\",Close:\"关闭\",\"Close navigation\":\"关闭导航\",\"Confirm changes\":\"确认更改\",Custom:\"自定义\",\"Edit item\":\"编辑项目\",\"External documentation for {title}\":\"{title}的外部文档\",Flags:\"旗帜\",\"Food & Drink\":\"食物 & 饮品\",\"Frequently used\":\"经常使用\",Global:\"全局\",\"Go back to the list\":\"返回至列表\",\"Message limit of {count} characters reached\":\"已达到 {count} 个字符的消息限制\",Next:\"下一个\",\"No emoji found\":\"表情未找到\",\"No results\":\"无结果\",Objects:\"物体\",\"Open navigation\":\"开启导航\",\"Pause slideshow\":\"暂停幻灯片\",\"People & Body\":\"人 & 身体\",\"Pick an emoji\":\"选择一个表情\",\"Please select a time zone:\":\"请选择一个时区:\",Previous:\"上一个\",Search:\"搜索\",\"Search results\":\"搜索结果\",\"Select a tag\":\"选择一个标签\",Settings:\"设置\",\"Settings navigation\":\"设置向导\",\"Smileys & Emotion\":\"笑脸 & 情感\",\"Start slideshow\":\"开始幻灯片\",Submit:\"提交\",Symbols:\"符号\",\"Travel & Places\":\"旅游 & 地点\",\"Type to search time zone\":\"打字以搜索时区\",\"Unable to search the group\":\"无法搜索分组\",\"Undo changes\":\"撤销更改\",\"Write message, @ to mention someone, : for emoji autocompletion …\":\"写信息,@ 提到某人,: 用于表情符号自动完成 ...\"}},{locale:\"zh_HK\",translations:{\"{tag} (invisible)\":\"{tag} (隱藏)\",\"{tag} (restricted)\":\"{tag} (受限)\",Actions:\"動作\",Activities:\"活動\",\"Animals & Nature\":\"動物與自然\",\"Avatar of {displayName}\":\"{displayName} 的頭像\",\"Avatar of {displayName}, {status}\":\"{displayName}的頭像,{status}\",\"Cancel changes\":\"取消更改\",Choose:\"選擇\",Close:\"關閉\",\"Close navigation\":\"關閉導航\",\"Confirm changes\":\"確認更改\",Custom:\"自定義\",\"Edit item\":\"編輯項目\",\"External documentation for {title}\":\"{title} 的外部文檔\",Flags:\"旗幟\",\"Food & Drink\":\"食物與飲料\",\"Frequently used\":\"經常使用\",Global:\"全球的\",\"Go back to the list\":\"返回清單\",\"Message limit of {count} characters reached\":\"已達到訊息最多 {count} 字元限制\",Next:\"下一個\",\"No emoji found\":\"未找到表情符號\",\"No results\":\"無結果\",Objects:\"物件\",\"Open navigation\":\"開啟導航\",\"Pause slideshow\":\"暫停幻燈片\",\"People & Body\":\"人物\",\"Pick an emoji\":\"選擇表情符號\",\"Please select a time zone:\":\"請選擇時區:\",Previous:\"上一個\",Search:\"搜尋\",\"Search results\":\"搜尋結果\",\"Select a tag\":\"選擇標籤\",Settings:\"設定\",\"Settings navigation\":\"設定值導覽\",\"Smileys & Emotion\":\"表情\",\"Start slideshow\":\"開始幻燈片\",Submit:\"提交\",Symbols:\"標誌\",\"Travel & Places\":\"旅遊與景點\",\"Type to search time zone\":\"鍵入以搜索時區\",\"Unable to search the group\":\"無法搜尋群組\",\"Undo changes\":\"取消更改\",\"Write message, @ to mention someone …\":\"輸入訊息時可使用 @ 來標示某人...\"}},{locale:\"zh_TW\",translations:{\"{tag} (invisible)\":\"{tag} (隱藏)\",\"{tag} (restricted)\":\"{tag} (受限)\",Actions:\"動作\",Activities:\"活動\",\"Animals & Nature\":\"動物與自然\",Choose:\"選擇\",Close:\"關閉\",Custom:\"自定義\",Flags:\"旗幟\",\"Food & Drink\":\"食物與飲料\",\"Frequently used\":\"最近使用\",\"Message limit of {count} characters reached\":\"已達到訊息最多 {count} 字元限制\",Next:\"下一個\",\"No emoji found\":\"未找到表情符號\",\"No results\":\"無結果\",Objects:\"物件\",\"Pause slideshow\":\"暫停幻燈片\",\"People & Body\":\"人物\",\"Pick an emoji\":\"選擇表情符號\",Previous:\"上一個\",Search:\"搜尋\",\"Search results\":\"搜尋結果\",\"Select a tag\":\"選擇標籤\",Settings:\"設定\",\"Settings navigation\":\"設定值導覽\",\"Smileys & Emotion\":\"表情\",\"Start slideshow\":\"開始幻燈片\",Symbols:\"標誌\",\"Travel & Places\":\"旅遊與景點\",\"Unable to search the group\":\"無法搜尋群組\",\"Write message, @ to mention someone …\":\"輸入訊息時可使用 @ 來標示某人...\"}}].forEach((function(t){var e={};for(var n in t.translations)t.translations[n].pluralId?e[n]={msgid:n,msgid_plural:t.translations[n].pluralId,msgstr:t.translations[n].msgstr}:e[n]={msgid:n,msgstr:[t.translations[n]]};i.addTranslation(t.locale,{translations:{\"\":e}})}));var o=i.build(),r=o.ngettext.bind(o),s=o.gettext.bind(o)},function(t,e){t.exports=require(\"v-tooltip\")},function(t,e){t.exports=require(\"vue\")},,function(t,e,n){\"use strict\";var a=n(0),i=n.n(a),o=n(1),r=n.n(o)()(i.a);r.push([t.i,\".material-design-icon{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.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\",\"\",{version:3,sources:[\"webpack://./../../assets/material-icons.css\",\"webpack://./Popover.vue\"],names:[],mappings:\"AAGA,sBACC,YAAa,CACb,iBAAkB,CAClB,mBAAoB,CACpB,kBAAmB,CACnB,sBAAuB,CC0GxB,SACC,cAAe,CACf,wBAAyB,CAEzB,sDAAuD,CAEvD,gBACC,SAAU,CACV,4BAA6B,CAC7B,kCAAmC,CACnC,uCAAwC,CACxC,gBAGA,iBAAkB,CAClB,SAAU,CACV,OAAQ,CACR,QAAS,CACT,WApBgB,CAqBhB,kBAAmB,CACnB,yCAA0C,CApB5C,6BAwBE,kBA1BgB,CAElB,6CA2BG,YA7Be,CA8Bf,6BAA8B,CAC9B,YAAa,CACb,eAAgB,CAChB,6BAjCe,CAkCf,yCAA0C,CAC1C,0CAA2C,CAC3C,wCAAyC,CAlC5C,gCAuCE,eAzCgB,CAElB,gDA0CG,SA5Ce,CA6Cf,6BAA8B,CAC9B,YAAa,CACb,eAAgB,CAChB,6BAhDe,CAiDf,uCAAwC,CACxC,yCAA0C,CAC1C,wCAAyC,CAjD5C,+BAsDE,gBAxDgB,CAElB,+CAyDG,4BAA6B,CAC7B,UA5De,CA6Df,cAAe,CACf,aAAc,CACd,6BAAsD,CACtD,uCAAwC,CACxC,0CAA2C,CAC3C,wCAAyC,CAhE5C,8BAqEE,iBAvEgB,CAElB,8CAwEG,4BAA6B,CAC7B,WA3Ee,CA4Ef,cAAe,CACf,aAAc,CACd,6BA9Ee,CA+Ef,uCAAwC,CACxC,yCAA0C,CAC1C,0CAA2C,CA/E9C,6BAoFE,iBAAkB,CAClB,2EAA6E,CAC7E,SAAU,CAtFZ,8BA0FE,kBAAmB,CACnB,yCAA0C,CAC1C,SAAU\",sourcesContent:[\"/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon {\\n\\tdisplay: flex;\\n\\talign-self: center;\\n\\tjustify-self: center;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n}\\n\",\"$scope_version:\\\"75cef38\\\"; @import 'variables'; @import 'material-icons';\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n$arrow-width: 10px;\\n\\n.popover {\\n\\tz-index: 100000;\\n\\tdisplay: block !important;\\n\\n\\tfilter: drop-shadow(0 1px 10px var(--color-box-shadow));\\n\\n\\t&__inner {\\n\\t\\tpadding: 0;\\n\\t\\tcolor: var(--color-main-text);\\n\\t\\tborder-radius: var(--border-radius);\\n\\t\\tbackground: var(--color-main-background);\\n\\t}\\n\\n\\t&__arrow {\\n\\t\\tposition: absolute;\\n\\t\\tz-index: 1;\\n\\t\\twidth: 0;\\n\\t\\theight: 0;\\n\\t\\tmargin: $arrow-width;\\n\\t\\tborder-style: solid;\\n\\t\\tborder-color: var(--color-main-background);\\n\\t}\\n\\n\\t&[x-placement^='top'] {\\n\\t\\tmargin-bottom: $arrow-width;\\n\\n\\t\\t.popover__arrow {\\n\\t\\t\\tbottom: -$arrow-width;\\n\\t\\t\\tleft: calc(50% - $arrow-width);\\n\\t\\t\\tmargin-top: 0;\\n\\t\\t\\tmargin-bottom: 0;\\n\\t\\t\\tborder-width: $arrow-width $arrow-width 0 $arrow-width;\\n\\t\\t\\tborder-right-color: transparent !important;\\n\\t\\t\\tborder-bottom-color: transparent !important;\\n\\t\\t\\tborder-left-color: transparent !important;\\n\\t\\t}\\n\\t}\\n\\n\\t&[x-placement^='bottom'] {\\n\\t\\tmargin-top: $arrow-width;\\n\\n\\t\\t.popover__arrow {\\n\\t\\t\\ttop: -$arrow-width;\\n\\t\\t\\tleft: calc(50% - $arrow-width);\\n\\t\\t\\tmargin-top: 0;\\n\\t\\t\\tmargin-bottom: 0;\\n\\t\\t\\tborder-width: 0 $arrow-width $arrow-width $arrow-width;\\n\\t\\t\\tborder-top-color: transparent !important;\\n\\t\\t\\tborder-right-color: transparent !important;\\n\\t\\t\\tborder-left-color: transparent !important;\\n\\t\\t}\\n\\t}\\n\\n\\t&[x-placement^='right'] {\\n\\t\\tmargin-left: $arrow-width;\\n\\n\\t\\t.popover__arrow {\\n\\t\\t\\ttop: calc(50% - $arrow-width);\\n\\t\\t\\tleft: -$arrow-width;\\n\\t\\t\\tmargin-right: 0;\\n\\t\\t\\tmargin-left: 0;\\n\\t\\t\\tborder-width: $arrow-width $arrow-width $arrow-width 0;\\n\\t\\t\\tborder-top-color: transparent !important;\\n\\t\\t\\tborder-bottom-color: transparent !important;\\n\\t\\t\\tborder-left-color: transparent !important;\\n\\t\\t}\\n\\t}\\n\\n\\t&[x-placement^='left'] {\\n\\t\\tmargin-right: $arrow-width;\\n\\n\\t\\t.popover__arrow {\\n\\t\\t\\ttop: calc(50% - $arrow-width);\\n\\t\\t\\tright: -$arrow-width;\\n\\t\\t\\tmargin-right: 0;\\n\\t\\t\\tmargin-left: 0;\\n\\t\\t\\tborder-width: $arrow-width 0 $arrow-width $arrow-width;\\n\\t\\t\\tborder-top-color: transparent !important;\\n\\t\\t\\tborder-right-color: transparent !important;\\n\\t\\t\\tborder-bottom-color: transparent !important;\\n\\t\\t}\\n\\t}\\n\\n\\t&[aria-hidden='true'] {\\n\\t\\tvisibility: hidden;\\n\\t\\ttransition: opacity var(--animation-quick), visibility var(--animation-quick);\\n\\t\\topacity: 0;\\n\\t}\\n\\n\\t&[aria-hidden='false'] {\\n\\t\\tvisibility: visible;\\n\\t\\ttransition: opacity var(--animation-quick);\\n\\t\\topacity: 1;\\n\\t}\\n}\\n\\n\"],sourceRoot:\"\"}]),e.a=r},function(t,e){},function(t,e,n){\"use strict\";n.r(e);var a=n(5),i=n(2),o=n.n(i),r=n(12),s={insert:\"head\",singleton:!1};o()(r.a,s),r.a.locals;\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(\"75cef38\",'><div class=\"tooltip-arrow\"></div><div class=\"tooltip-inner\"></div></div>'),a.VTooltip.options.defaultHtml=!1,a.VTooltip.options.defaultDelay={show:500,hide:200};e.default=a.VTooltip},function(t,e){t.exports=require(\"@nextcloud/l10n/dist/gettext\")},function(t,e,n){\"use strict\";var a=n(0),i=n.n(a),o=n(1),r=n.n(o)()(i.a);r.push([t.i,\".material-design-icon{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.vue-tooltip[data-v-75cef38]{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-75cef38][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-75cef38][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-75cef38][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-75cef38][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-75cef38][aria-hidden='true']{visibility:hidden;transition:opacity .15s, visibility .15s;opacity:0}.vue-tooltip[data-v-75cef38][aria-hidden='false']{visibility:visible;transition:opacity .15s;opacity:1}.vue-tooltip[data-v-75cef38] .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-75cef38] .tooltip-arrow{position:absolute;z-index:1;width:0;height:0;margin:0;border-style:solid;border-color:var(--color-main-background)}\\n\",\"\",{version:3,sources:[\"webpack://./../../assets/material-icons.css\",\"webpack://./index.scss\"],names:[],mappings:\"AAGA,sBACC,YAAa,CACb,iBAAkB,CAClB,mBAAoB,CACpB,kBAAmB,CACnB,sBAAuB,CCOxB,6BACC,iBAAkB,CAClB,cAAe,CACf,UAAW,CACX,SAAU,CACV,aAAc,CACd,QAAS,CAET,eAAgB,CAChB,cAAe,CACf,eAAgB,CAChB,gBAAiB,CACjB,SAAU,CACV,eAAgB,CAEhB,eAAgB,CAChB,sDAAuD,CAhBxD,gEAqBG,QAAS,CACT,YAAa,CACb,eAAgB,CAChB,6BA1Be,CA2Bf,8BAA+B,CAC/B,+BAAgC,CAChC,6BAA8B,CA3BjC,mEAkCG,KAAM,CACN,YAAa,CACb,eAAgB,CAChB,6BAvCe,CAwCf,4BAA6B,CAC7B,8BAA+B,CAC/B,6BAA8B,CAxCjC,kEA+CG,UAAW,CACX,cAAe,CACf,aAAc,CACd,6BAAsD,CACtD,4BAA6B,CAC7B,+BAAgC,CAChC,6BAA8B,CArDjC,iEA4DG,SAAU,CACV,cAAe,CACf,aAAc,CACd,6BAjEe,CAkEf,4BAA6B,CAC7B,8BAA+B,CAC/B,+BAAgC,CAlEnC,iDAwEE,iBAAkB,CAClB,wCAAyC,CACzC,SAAU,CA1EZ,kDA6EE,kBAAmB,CACnB,uBAAwB,CACxB,SAAU,CA/EZ,4CAoFE,eAAgB,CAChB,eAAgB,CAChB,iBAAkB,CAClB,4BAA6B,CAC7B,kCAAmC,CACnC,6CAA8C,CAzFhD,4CA8FE,iBAAkB,CAClB,SAAU,CACV,OAAQ,CACR,QAAS,CACT,QAAS,CACT,kBAAmB,CACnB,yCAA0C\",sourcesContent:[\"/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon {\\n\\tdisplay: flex;\\n\\talign-self: center;\\n\\tjustify-self: center;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n}\\n\",\"$scope_version:\\\"75cef38\\\"; @import 'variables'; @import 'material-icons';\\n/**\\n* @copyright Copyright (c) 2016, John Molakvoæ <skjnldsv@protonmail.com>\\n* @copyright Copyright (c) 2016, Robin Appelman <robin@icewind.nl>\\n* @copyright Copyright (c) 2016, Jan-Christoph Borchardt <hey@jancborchardt.net>\\n* @copyright Copyright (c) 2016, Erik Pellikka <erik@pellikka.org>\\n* @copyright Copyright (c) 2015, Vincent Petry <pvince81@owncloud.com>\\n*\\n* Bootstrap v3.3.5 (http://getbootstrap.com)\\n* Copyright 2011-2015 Twitter, Inc.\\n* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\\n*/\\n\\n$arrow-width: 10px;\\n\\n.vue-tooltip[data-v-#{$scope_version}] {\\n\\tposition: absolute;\\n\\tz-index: 100000;\\n\\tright: auto;\\n\\tleft: auto;\\n\\tdisplay: block;\\n\\tmargin: 0;\\n\\t/* default to top */\\n\\tmargin-top: -3px;\\n\\tpadding: 10px 0;\\n\\ttext-align: left;\\n\\ttext-align: start;\\n\\topacity: 0;\\n\\tline-height: 1.6;\\n\\n\\tline-break: auto;\\n\\tfilter: drop-shadow(0 1px 10px var(--color-box-shadow));\\n\\n\\t// TOP\\n\\t&[x-placement^='top'] {\\n\\t\\t.tooltip-arrow {\\n\\t\\t\\tbottom: 0;\\n\\t\\t\\tmargin-top: 0;\\n\\t\\t\\tmargin-bottom: 0;\\n\\t\\t\\tborder-width: $arrow-width $arrow-width 0 $arrow-width;\\n\\t\\t\\tborder-right-color: transparent;\\n\\t\\t\\tborder-bottom-color: transparent;\\n\\t\\t\\tborder-left-color: transparent;\\n\\t\\t}\\n\\t}\\n\\n\\t// BOTTOM\\n\\t&[x-placement^='bottom'] {\\n\\t\\t.tooltip-arrow {\\n\\t\\t\\ttop: 0;\\n\\t\\t\\tmargin-top: 0;\\n\\t\\t\\tmargin-bottom: 0;\\n\\t\\t\\tborder-width: 0 $arrow-width $arrow-width $arrow-width;\\n\\t\\t\\tborder-top-color: transparent;\\n\\t\\t\\tborder-right-color: transparent;\\n\\t\\t\\tborder-left-color: transparent;\\n\\t\\t}\\n\\t}\\n\\n\\t// RIGHT\\n\\t&[x-placement^='right'] {\\n\\t\\t.tooltip-arrow {\\n\\t\\t\\tright: 100%;\\n\\t\\t\\tmargin-right: 0;\\n\\t\\t\\tmargin-left: 0;\\n\\t\\t\\tborder-width: $arrow-width $arrow-width $arrow-width 0;\\n\\t\\t\\tborder-top-color: transparent;\\n\\t\\t\\tborder-bottom-color: transparent;\\n\\t\\t\\tborder-left-color: transparent;\\n\\t\\t}\\n\\t}\\n\\n\\t// LEFT\\n\\t&[x-placement^='left'] {\\n\\t\\t.tooltip-arrow {\\n\\t\\t\\tleft: 100%;\\n\\t\\t\\tmargin-right: 0;\\n\\t\\t\\tmargin-left: 0;\\n\\t\\t\\tborder-width: $arrow-width 0 $arrow-width $arrow-width;\\n\\t\\t\\tborder-top-color: transparent;\\n\\t\\t\\tborder-right-color: transparent;\\n\\t\\t\\tborder-bottom-color: transparent;\\n\\t\\t}\\n\\t}\\n\\n\\t// HIDDEN / SHOWN\\n\\t&[aria-hidden='true'] {\\n\\t\\tvisibility: hidden;\\n\\t\\ttransition: opacity .15s, visibility .15s;\\n\\t\\topacity: 0;\\n\\t}\\n\\t&[aria-hidden='false'] {\\n\\t\\tvisibility: visible;\\n\\t\\ttransition: opacity .15s;\\n\\t\\topacity: 1;\\n\\t}\\n\\n\\t// CONTENT\\n\\t.tooltip-inner {\\n\\t\\tmax-width: 350px;\\n\\t\\tpadding: 5px 8px;\\n\\t\\ttext-align: center;\\n\\t\\tcolor: var(--color-main-text);\\n\\t\\tborder-radius: var(--border-radius);\\n\\t\\tbackground-color: var(--color-main-background);\\n\\t}\\n\\n\\t// ARROW\\n\\t.tooltip-arrow {\\n\\t\\tposition: absolute;\\n\\t\\tz-index: 1;\\n\\t\\twidth: 0;\\n\\t\\theight: 0;\\n\\t\\tmargin: 0;\\n\\t\\tborder-style: solid;\\n\\t\\tborder-color: var(--color-main-background);\\n\\t}\\n}\\n\"],sourceRoot:\"\"}]),e.a=r},,function(t,e,n){\"use strict\";var a={name:\"Popover\",components:{VPopover:n(5).VPopover},mounted:function(){var t=this;this.$watch((function(){return t.$refs.popover.isOpen}),(function(e){e?t.$emit(\"after-show\"):t.$emit(\"after-hide\")}))}},i=n(2),o=n.n(i),r=n(8),s={insert:\"head\",singleton:!1},l=(o()(r.a,s),r.a.locals,n(3)),c=n(9),d=n.n(c),u=Object(l.a)(a,(function(){var t=this,e=t.$createElement;return(t._self._c||e)(\"VPopover\",t._g(t._b({ref:\"popover\",attrs:{\"popover-base-class\":\"popover\",\"popover-wrapper-class\":\"popover__wrapper\",\"popover-arrow-class\":\"popover__arrow\",\"popover-inner-class\":\"popover__inner\"},scopedSlots:t._u([{key:\"popover\",fn:function(){return[t._t(\"default\")]},proxy:!0}],null,!0)},\"VPopover\",t.$attrs,!1),t.$listeners),[t._t(\"trigger\")],2)}),[],!1,null,null,null);\"function\"==typeof d.a&&d()(u);e.a=u.exports},function(t,e,n){\"use strict\";\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 */e.a=function(t){return Math.random().toString(36).replace(/[^a-z]+/g,\"\").substr(0,t||5)}},function(t,e){t.exports=require(\"vue-material-design-icons/DotsHorizontal\")},,,function(t,e,n){\"use strict\";n.r(e);var a=n(14);\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 */e.default=a.a},,,,,,function(t,e,n){\"use strict\";var a=n(6),i=n.n(a);\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 */e.a={before:function(){this.$slots.default&&\"\"!==this.text.trim()||(i.a.util.warn(\"\".concat(this.$options.name,\" cannot be empty and requires a meaningful text content\"),this),this.$destroy(),this.$el.remove())},beforeUpdate:function(){this.text=this.getText()},data:function(){return{text:this.getText()}},computed:{isLongText:function(){return this.text&&this.text.trim().length>20}},methods:{getText:function(){return this.$slots.default?this.$slots.default[0].text.trim():\"\"}}}},function(t,e,n){\"use strict\";var a=n(4);e.a={methods:{n:a.a,t:a.b}}},,function(t,e,n){\"use strict\";var a=n(0),i=n.n(a),o=n(1),r=n.n(o)()(i.a);r.push([t.i,\".material-design-icon[data-v-6aa4b9df]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.action-item[data-v-6aa4b9df]{position:relative;display:inline-block}.action-item--single[data-v-6aa4b9df]:hover,.action-item--single[data-v-6aa4b9df]:focus,.action-item--single[data-v-6aa4b9df]:active,.action-item__menutoggle[data-v-6aa4b9df]:hover,.action-item__menutoggle[data-v-6aa4b9df]:focus,.action-item__menutoggle[data-v-6aa4b9df]:active{opacity:1;background-color:rgba(127,127,127,0.25) !important}.action-item__menutoggle[data-v-6aa4b9df]:disabled,.action-item--single[data-v-6aa4b9df]:disabled{opacity:.3 !important}.action-item.action-item--open .action-item__menutoggle[data-v-6aa4b9df]{opacity:1;background-color:rgba(127,127,127,0.25)}.action-item--single[data-v-6aa4b9df],.action-item__menutoggle[data-v-6aa4b9df]{box-sizing:border-box;width:auto;min-width:44px;height:44px;margin:0;padding:0;cursor:pointer;border:none;border-radius:22px;background-color:transparent}.action-item--single--with-title[data-v-6aa4b9df],.action-item__menutoggle--with-title[data-v-6aa4b9df]{position:relative;padding:0 14px;padding-left:44px;white-space:nowrap;opacity:1;border:1px solid var(--color-border-dark);background-color:var(--color-background-dark);background-position:14px center;font-size:inherit}.action-item--single--with-title[data-v-6aa4b9df] span,.action-item__menutoggle--with-title[data-v-6aa4b9df] span{width:24px;height:24px;line-height:16px;position:absolute;top:0;left:0}.action-item[data-v-6aa4b9df] .material-design-icon{width:44px;height:44px;opacity:1}.action-item[data-v-6aa4b9df] .material-design-icon .material-design-icon__svg{vertical-align:middle}.action-item__menutoggle[data-v-6aa4b9df]{display:flex;align-items:center;justify-content:center;opacity:.7;font-weight:bold;line-height:16px}.action-item__menutoggle--primary[data-v-6aa4b9df]{opacity:1;color:var(--color-primary-text);border:none;background-color:var(--color-primary-element)}.action-item--open .action-item__menutoggle--primary[data-v-6aa4b9df],.action-item__menutoggle--primary[data-v-6aa4b9df]:hover,.action-item__menutoggle--primary[data-v-6aa4b9df]:focus,.action-item__menutoggle--primary[data-v-6aa4b9df]:active{color:var(--color-primary-text) !important;background-color:var(--color-primary-element-light) !important}.action-item--single[data-v-6aa4b9df]{opacity:.7}.action-item--single[data-v-6aa4b9df]:hover,.action-item--single[data-v-6aa4b9df]:focus,.action-item--single[data-v-6aa4b9df]:active{opacity:1}.action-item--single>[hidden][data-v-6aa4b9df]{display:none}.ie .action-item__menu[data-v-6aa4b9df],.ie .action-item__menu .action-item__menu_arrow[data-v-6aa4b9df],.edge .action-item__menu[data-v-6aa4b9df],.edge .action-item__menu .action-item__menu_arrow[data-v-6aa4b9df]{border:1px solid var(--color-border)}\\n\",\"\",{version:3,sources:[\"webpack://./../../assets/material-icons.css\",\"webpack://./Actions.vue\",\"webpack://./../../assets/variables.scss\"],names:[],mappings:\"AAGA,uCACC,YAAa,CACb,iBAAkB,CAClB,mBAAoB,CACpB,kBAAmB,CACnB,sBAAuB,CC+oBxB,8BACC,iBAAkB,CAClB,oBAAqB,CAIrB,sRAMC,SCvnBc,CDynBd,kDAA2C,CAC3C,kGAKA,qBAAsB,CApBxB,yEAwBE,SCnoBc,CDooBd,uCChoBgD,CDioBhD,gFAKA,qBAAsB,CACtB,UAAW,CACX,cC/pBmB,CDgqBnB,WChqBmB,CDiqBnB,QAAS,CACT,SAAU,CACV,cAAe,CACf,WAAY,CACZ,kBAAkC,CAClC,4BAA6B,CAE7B,wGACC,iBAAkB,CAClB,cClqB6C,CDmqB7C,iBC3qBkB,CD4qBlB,kBAAmB,CACnB,SC1pBa,CD2pBb,yCAA0C,CAE1C,6CAA8C,CAC9C,+BAAwC,CACxC,iBAAkB,CAVlB,kHAeC,UAAW,CACX,WAAY,CACZ,gBCrrBY,CDsrBZ,iBAAkB,CAClB,KAAM,CACN,MAAO,CA9DX,oDAoEE,UClsBmB,CDmsBnB,WCnsBmB,CDosBnB,SCjrBc,CD2mBhB,+EAyEG,qBAAsB,CACtB,0CAMD,YAAa,CACb,kBAAmB,CACnB,sBAAuB,CACvB,UC/rBiB,CDgsBjB,gBAAiB,CACjB,gBC/sBc,CDitBd,mDACC,SCnsBa,CDosBb,+BAAgC,CAChC,WAAY,CACZ,6CAA8C,CAC9C,kPAIC,0CAA2C,CAC3C,8DAA+D,CAC/D,sCAKF,UCntBiB,CDktBjB,qIAKC,SCttBa,CDitBd,+CASC,YAAa,CACb,sNAQD,oCAAqC\",sourcesContent:[\"/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon {\\n\\tdisplay: flex;\\n\\talign-self: center;\\n\\tjustify-self: center;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n}\\n\",\"$scope_version:\\\"75cef38\\\"; @import 'variables'; @import 'material-icons';\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.action-item {\\n\\tposition: relative;\\n\\tdisplay: inline-block;\\n\\n\\t// put a grey round background when menu is opened\\n\\t// or hover-focused\\n\\t&--single:hover,\\n\\t&--single:focus,\\n\\t&--single:active,\\n\\t&__menutoggle:hover,\\n\\t&__menutoggle:focus,\\n\\t&__menutoggle:active {\\n\\t\\topacity: $opacity_full;\\n\\t\\t// good looking on dark AND white bg, override server styling\\n\\t\\tbackground-color: $icon-focus-bg !important;\\n\\t}\\n\\n\\t// TODO: handle this in the future button component\\n\\t&__menutoggle:disabled,\\n\\t&--single:disabled {\\n\\t\\topacity: .3 !important;\\n\\t}\\n\\n\\t&.action-item--open .action-item__menutoggle {\\n\\t\\topacity: $opacity_full;\\n\\t\\tbackground-color: $action-background-hover;\\n\\t}\\n\\n\\t// icons\\n\\t&--single,\\n\\t&__menutoggle {\\n\\t\\tbox-sizing: border-box;\\n\\t\\twidth: auto;\\n\\t\\tmin-width: $clickable-area;\\n\\t\\theight: $clickable-area;\\n\\t\\tmargin: 0;\\n\\t\\tpadding: 0;\\n\\t\\tcursor: pointer;\\n\\t\\tborder: none;\\n\\t\\tborder-radius: $clickable-area / 2;\\n\\t\\tbackground-color: transparent;\\n\\n\\t\\t&--with-title {\\n\\t\\t\\tposition: relative;\\n\\t\\t\\tpadding: 0 $icon-margin;\\n\\t\\t\\tpadding-left: $clickable-area;\\n\\t\\t\\twhite-space: nowrap;\\n\\t\\t\\topacity: $opacity_full;\\n\\t\\t\\tborder: 1px solid var(--color-border-dark);\\n\\t\\t\\t// with a title, we need to display this as a real button\\n\\t\\t\\tbackground-color: var(--color-background-dark);\\n\\t\\t\\tbackground-position: $icon-margin center;\\n\\t\\t\\tfont-size: inherit;\\n\\n\\t\\t\\t// non-background icon class\\n\\t\\t\\t// image slot\\n\\t\\t\\t/deep/ span {\\n\\t\\t\\t\\twidth: 24px;\\n\\t\\t\\t\\theight: 24px;\\n\\t\\t\\t\\tline-height: $icon-size;\\n\\t\\t\\t\\tposition: absolute;\\n\\t\\t\\t\\ttop: 0;\\n\\t\\t\\t\\tleft: 0;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t&::v-deep .material-design-icon {\\n\\t\\twidth: $clickable-area;\\n\\t\\theight: $clickable-area;\\n\\t\\topacity: $opacity_full;\\n\\n\\t\\t.material-design-icon__svg {\\n\\t\\t\\tvertical-align: middle;\\n\\t\\t}\\n\\t}\\n\\n\\t// icon-more\\n\\t&__menutoggle {\\n\\t\\t// align menu icon in center\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\tjustify-content: center;\\n\\t\\topacity: $opacity_normal;\\n\\t\\tfont-weight: bold;\\n\\t\\tline-height: $icon-size;\\n\\n\\t\\t&--primary {\\n\\t\\t\\topacity: $opacity_full;\\n\\t\\t\\tcolor: var(--color-primary-text);\\n\\t\\t\\tborder: none;\\n\\t\\t\\tbackground-color: var(--color-primary-element);\\n\\t\\t\\t.action-item--open &,\\n\\t\\t\\t&:hover,\\n\\t\\t\\t&:focus,\\n\\t\\t\\t&:active {\\n\\t\\t\\t\\tcolor: var(--color-primary-text) !important;\\n\\t\\t\\t\\tbackground-color: var(--color-primary-element-light) !important;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t&--single {\\n\\t\\topacity: $opacity_normal;\\n\\t\\t&:hover,\\n\\t\\t&:focus,\\n\\t\\t&:active {\\n\\t\\t\\topacity: $opacity_full;\\n\\t\\t}\\n\\t\\t// hide anything the slot is displaying\\n\\t\\t& > [hidden] {\\n\\t\\t\\tdisplay: none;\\n\\t\\t}\\n\\t}\\n}\\n\\n.ie,\\n.edge {\\n\\t.action-item__menu,\\n\\t.action-item__menu .action-item__menu_arrow {\\n\\t\\tborder: 1px solid var(--color-border);\\n\\t}\\n}\\n\\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 */\\n\\n// https://uxplanet.org/7-rules-for-mobile-ui-button-design-e9cf2ea54556\\n// recommended is 48px\\n// 44px is what we choose and have very good visual-to-usability ratio\\n$clickable-area: 44px;\\n\\n// background icon size\\n// also used for the scss icon font\\n$icon-size: 16px;\\n\\n// icon padding for a $clickable-area width and a $icon-size icon\\n// ( 44px - 16px ) / 2\\n$icon-margin: ($clickable-area - $icon-size) / 2;\\n\\n// transparency background for icons\\n$icon-focus-bg: rgba(127, 127, 127, .25);\\n\\n// popovermenu arrow width from the triangle center\\n$arrow-width: 9px;\\n\\n// opacities\\n$opacity_disabled: .5;\\n$opacity_normal: .7;\\n$opacity_full: 1;\\n\\n// menu round background hover feedback\\n// good looking on dark AND white bg\\n$action-background-hover: rgba(127, 127, 127, .25);\\n\\n// various structure data used in the \\n// `AppNavigation` component\\n$header-height: 50px;\\n$navigation-width: 300px;\\n\\n// mobile breakpoint\\n$breakpoint-mobile: 1024px;\\n\"],sourceRoot:\"\"}]),e.a=r},function(t,e){},,function(t,e,n){\"use strict\";var a=n(25),i=function(t,e){for(var n=t.$parent;n;){if(n.$options.name===e)return n;n=n.$parent}};\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 */e.a={mixins:[a.a],props:{icon:{type:String,default:\"\"},title:{type:String,default:\"\"},closeAfterClick:{type:Boolean,default:!1},ariaLabel:{type:String,default:\"\"}},computed:{isIconUrl:function(){try{return new URL(this.icon)}catch(t){return!1}}},methods:{onClick:function(t){if(this.$emit(\"click\",t),this.closeAfterClick){var e=i(this,\"Actions\");e&&e.closeMenu&&e.closeMenu()}}}}},,,,,,function(t,e,n){\"use strict\";var a=n(16),i=n.n(a),o=n(10),r=n(15),s=n(4),l=n(19);function c(t){return function(t){if(Array.isArray(t))return d(t)}(t)||function(t){if(\"undefined\"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t[\"@@iterator\"])return Array.from(t)}(t)||function(t,e){if(!t)return;if(\"string\"==typeof t)return d(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);\"Object\"===n&&t.constructor&&(n=t.constructor.name);if(\"Map\"===n||\"Set\"===n)return Array.from(t);if(\"Arguments\"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return d(t,e)}(t)||function(){throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}()}function d(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,a=new Array(e);n<e;n++)a[n]=t[n];return a}function u(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,a)}return n}function m(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?u(Object(n),!0).forEach((function(e){p(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):u(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function p(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var h={name:\"Actions\",directives:{tooltip:o.default},components:{DotsHorizontal:i.a,Popover:l.default,VNodes:{functional:!0,render:function(t,e){return e.props.vnodes}}},props:{open:{type:Boolean,default:!1},forceMenu:{type:Boolean,default:!1},forceTitle:{type:Boolean,default:!1},menuTitle:{type:String,default:null},primary:{type:Boolean,default:!1},defaultIcon:{type:String,default:\"\"},ariaLabel:{type:String,default:Object(s.b)(\"Actions\")},placement:{type:String,default:\"bottom\"},boundariesElement:{type:Element,default:function(){return document.querySelector(\"body\")}},container:{type:String,default:\"body\"},disabled:{type:Boolean,default:!1}},data:function(){return{actions:[],opened:this.open,focusIndex:0,randomId:\"menu-\"+Object(r.a)(),children:this.$children}},computed:{hasMultipleActions:function(){return this.actions.length>1},isValidSingleAction:function(){return 1===this.actions.length&&null!==this.firstActionElement},singleActionTitle:function(){return this.forceTitle?this.menuTitle:\"\"},isDisabled:function(){var t,e;return this.disabled||1===this.actions.length&&(null===(t=this.firstAction)||void 0===t||null===(e=t.$props)||void 0===e?void 0:e.disabled)},firstActionVNode:function(){return this.actions[0]},firstAction:function(){return this.children[0]?this.children[0]:{}},firstActionBinding:function(){if(this.firstActionVNode&&this.firstActionVNode.componentOptions){var t=this.firstActionVNode.componentOptions.tag;if(\"ActionLink\"===t)return m(m({is:\"a\",href:this.firstAction.href,target:this.firstAction.target,\"aria-label\":this.firstAction.ariaLabel},this.firstAction.$attrs),this.firstAction.$props);if(\"ActionRouter\"===t)return m(m({is:\"router-link\",to:this.firstAction.to,exact:this.firstAction.exact,\"aria-label\":this.firstAction.ariaLabel},this.firstAction.$attrs),this.firstAction.$props);if(\"ActionButton\"===t)return m(m({is:\"button\",\"aria-label\":this.firstAction.ariaLabel},this.firstAction.$attrs),this.firstAction.$props)}return null},firstActionEvent:function(){var t,e,n;return null===(t=this.firstActionVNode)||void 0===t||null===(e=t.componentOptions)||void 0===e||null===(n=e.listeners)||void 0===n?void 0:n.click},firstActionEventBinding:function(){return this.firstActionEvent?\"click\":null},firstActionIconSlot:function(){var t,e;return null===(t=this.firstAction)||void 0===t||null===(e=t.$slots)||void 0===e?void 0:e.icon},firstActionClass:function(){return((this.firstActionVNode&&this.firstActionVNode.data.staticClass)+\" \"+(this.firstActionVNode&&this.firstActionVNode.data.class)).trim()},iconSlotIsPopulated:function(){return!!this.$slots.icon}},watch:{open:function(t){t!==this.opened&&(this.opened=t)}},beforeMount:function(){this.initActions()},beforeUpdate:function(){this.initActions()},methods:{openMenu:function(t){this.opened||(this.opened=!0,this.$emit(\"update:open\",!0),this.$emit(\"open\"))},closeMenu:function(t){this.opened&&(this.opened=!1,this.$emit(\"update:open\",!1),this.$emit(\"close\"),this.opened=!1,this.focusIndex=0,this.$refs.menuButton.focus())},onOpen:function(t){var e=this;this.$nextTick((function(){e.focusFirstAction(t)}))},onMouseFocusAction:function(t){if(document.activeElement!==t.target){var e=t.target.closest(\"li\");if(e){var n=e.querySelector(\".focusable\");if(n){var a=c(this.$refs.menu.querySelectorAll(\".focusable\")).indexOf(n);a>-1&&(this.focusIndex=a,this.focusAction())}}}},removeCurrentActive:function(){var t=this.$refs.menu.querySelector(\"li.active\");t&&t.classList.remove(\"active\")},focusAction:function(){var t=this.$refs.menu.querySelectorAll(\".focusable\")[this.focusIndex];if(t){this.removeCurrentActive();var e=t.closest(\"li.action\");t.focus(),e&&e.classList.add(\"active\")}},focusPreviousAction:function(t){this.opened&&(0===this.focusIndex?this.closeMenu():(this.preventIfEvent(t),this.focusIndex=this.focusIndex-1),this.focusAction())},focusNextAction:function(t){if(this.opened){var e=this.$refs.menu.querySelectorAll(\".focusable\").length-1;this.focusIndex===e?this.closeMenu():(this.preventIfEvent(t),this.focusIndex=this.focusIndex+1),this.focusAction()}},focusFirstAction:function(t){this.opened&&(this.preventIfEvent(t),this.focusIndex=0,this.focusAction())},focusLastAction:function(t){this.opened&&(this.preventIfEvent(t),this.focusIndex=this.$el.querySelectorAll(\".focusable\").length-1,this.focusAction())},preventIfEvent:function(t){t&&(t.preventDefault(),t.stopPropagation())},execFirstAction:function(t){this.firstActionEvent&&this.firstActionEvent(t)},initActions:function(){this.actions=(this.$slots.default||[]).filter((function(t){return!!t&&!!t.componentOptions}))},onFocus:function(t){this.$emit(\"focus\",t)},onBlur:function(t){this.$emit(\"blur\",t)}}},g=n(2),A=n.n(g),v=n(28),C={insert:\"head\",singleton:!1},f=(A()(v.a,C),v.a.locals,n(3)),b=n(29),y=n.n(b),k=Object(f.a)(h,(function(){var t,e=this,n=e.$createElement,a=e._self._c||n;return e.isValidSingleAction&&!e.forceMenu?a(\"element\",e._b({directives:[{name:\"tooltip\",rawName:\"v-tooltip.auto\",value:e.firstAction.text,expression:\"firstAction.text\",modifiers:{auto:!0}}],staticClass:\"action-item action-item--single\",class:(t={},t[e.firstAction.icon]=e.firstAction.icon,t[e.firstActionClass]=e.firstActionClass,t[\"action-item--single--with-title\"]=e.singleActionTitle,t),attrs:{rel:\"nofollow noreferrer noopener\",disabled:e.isDisabled},on:e._d({focus:e.onFocus,blur:e.onBlur},[e.firstActionEventBinding,e.execFirstAction])},\"element\",e.firstActionBinding,!1),[a(\"VNodes\",{attrs:{vnodes:e.firstActionIconSlot}}),e._v(\"\\n\\n\\t\"+e._s(e.singleActionTitle)+\"\\n\\n\\t\"),e._v(\" \"),a(\"span\",{attrs:{\"aria-hidden\":!0,hidden:\"\"}},[e._t(\"default\")],2)],1):a(\"div\",{directives:[{name:\"show\",rawName:\"v-show\",value:e.hasMultipleActions||e.forceMenu,expression:\"hasMultipleActions || forceMenu\"}],staticClass:\"action-item\",class:{\"action-item--open\":e.opened}},[a(\"Popover\",{attrs:{delay:0,\"handle-resize\":!0,open:e.opened,placement:e.placement,\"boundaries-element\":e.boundariesElement,container:e.container},on:{\"update:open\":function(t){e.opened=t},show:e.openMenu,\"after-show\":e.onOpen,hide:e.closeMenu},scopedSlots:e._u([{key:\"trigger\",fn:function(){var t;return[a(\"button\",{ref:\"menuButton\",staticClass:\"icon action-item__menutoggle\",class:(t={},t[e.defaultIcon]=!e.iconSlotIsPopulated,t[\"action-item__menutoggle--with-title\"]=e.menuTitle,t[\"action-item__menutoggle--with-icon-slot\"]=e.iconSlotIsPopulated,t[\"action-item__menutoggle--default-icon\"]=!e.iconSlotIsPopulated&&\"\"===e.defaultIcon,t[\"action-item__menutoggle--primary\"]=e.primary,t),attrs:{disabled:e.disabled,\"aria-haspopup\":\"true\",\"aria-label\":e.ariaLabel,\"aria-controls\":e.randomId,\"aria-expanded\":e.opened?\"true\":\"false\",\"test-attr\":\"1\",type:\"button\"},on:{focus:e.onFocus,blur:e.onBlur}},[e.iconSlotIsPopulated?e._t(\"icon\"):\"\"===e.defaultIcon?a(\"DotsHorizontal\",{attrs:{size:20,decorative:\"\"}}):e._e(),e._v(\"\\n\\t\\t\\t\\t\"+e._s(e.menuTitle)+\"\\n\\t\\t\\t\")],2)]},proxy:!0}],null,!0)},[e._v(\" \"),a(\"div\",{directives:[{name:\"show\",rawName:\"v-show\",value:e.opened,expression:\"opened\"}],ref:\"menu\",class:{open:e.opened},attrs:{tabindex:\"-1\"},on:{keydown:[function(t){return!t.type.indexOf(\"key\")&&e._k(t.keyCode,\"up\",38,t.key,[\"Up\",\"ArrowUp\"])||t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:e.focusPreviousAction(t)},function(t){return!t.type.indexOf(\"key\")&&e._k(t.keyCode,\"down\",40,t.key,[\"Down\",\"ArrowDown\"])||t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:e.focusNextAction(t)},function(t){return!t.type.indexOf(\"key\")&&e._k(t.keyCode,\"tab\",9,t.key,\"Tab\")||t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:e.focusNextAction(t)},function(t){return!t.type.indexOf(\"key\")&&e._k(t.keyCode,\"tab\",9,t.key,\"Tab\")?null:t.shiftKey?t.ctrlKey||t.altKey||t.metaKey?null:e.focusPreviousAction(t):null},function(t){return!t.type.indexOf(\"key\")&&e._k(t.keyCode,\"page-up\",void 0,t.key,void 0)||t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:e.focusFirstAction(t)},function(t){return!t.type.indexOf(\"key\")&&e._k(t.keyCode,\"page-down\",void 0,t.key,void 0)||t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:e.focusLastAction(t)},function(t){return!t.type.indexOf(\"key\")&&e._k(t.keyCode,\"esc\",27,t.key,[\"Esc\",\"Escape\"])||t.ctrlKey||t.shiftKey||t.altKey||t.metaKey?null:(t.preventDefault(),e.closeMenu(t))}],mousemove:e.onMouseFocusAction}},[a(\"ul\",{attrs:{id:e.randomId,tabindex:\"-1\"}},[e.opened?[e._t(\"default\")]:e._e()],2)])])],1)}),[],!1,null,\"6aa4b9df\",null);\"function\"==typeof y.a&&y()(k);e.a=k.exports},,,,,,,,,,,,,,,,function(t,e,n){\"use strict\";n.r(e);var a=n(37);\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 */e.default=a.a},,,,,,function(t,e,n){\"use strict\";\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 */e.a=function(t){t.mounted?Array.isArray(t.mounted)||(t.mounted=[t.mounted]):t.mounted=[],t.mounted.push((function(){this.$el.setAttribute(\"data-v-\".concat(\"75cef38\"),\"\")}))}},,,function(t,e,n){\"use strict\";var a=n(0),i=n.n(a),o=n(1),r=n.n(o)()(i.a);r.push([t.i,\".material-design-icon[data-v-71ea20d2]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}li.active[data-v-71ea20d2]{background-color:var(--color-background-hover)}.action--disabled[data-v-71ea20d2]{pointer-events:none;opacity:.5}.action--disabled[data-v-71ea20d2]:hover,.action--disabled[data-v-71ea20d2]:focus{cursor:default;opacity:.5}.action--disabled *[data-v-71ea20d2]{opacity:1 !important}.action-button[data-v-71ea20d2]{display:flex;align-items:flex-start;width:100%;height:auto;margin:0;padding:0;padding-right:14px;box-sizing:border-box;cursor:pointer;white-space:nowrap;opacity:.7;color:var(--color-main-text);border:0;border-radius:0;background-color:transparent;box-shadow:none;font-weight:normal;font-size:var(--default-font-size);line-height:44px}.action-button[data-v-71ea20d2]:hover,.action-button[data-v-71ea20d2]:focus{opacity:1}.action-button>span[data-v-71ea20d2]{cursor:pointer;white-space:nowrap}.action-button__icon[data-v-71ea20d2]{width:44px;height:44px;opacity:1;background-position:14px center;background-size:16px;background-repeat:no-repeat}.action-button[data-v-71ea20d2] .material-design-icon{width:44px;height:44px;opacity:1}.action-button[data-v-71ea20d2] .material-design-icon .material-design-icon__svg{vertical-align:middle}.action-button p[data-v-71ea20d2]{max-width:220px;line-height:1.6em;padding:10.8px 0;cursor:pointer;text-align:left;overflow:hidden;text-overflow:ellipsis}.action-button__longtext[data-v-71ea20d2]{cursor:pointer;white-space:pre-wrap}.action-button__title[data-v-71ea20d2]{font-weight:bold;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;max-width:100%;display:inline-block}\\n\",\"\",{version:3,sources:[\"webpack://./../../assets/material-icons.css\",\"webpack://./../../assets/action.scss\",\"webpack://./../../assets/variables.scss\"],names:[],mappings:\"AAGA,uCACC,YAAa,CACb,iBAAkB,CAClB,mBAAoB,CACpB,kBAAmB,CACnB,sBAAuB,CACvB,2BCiBE,8CAA+C,CAC/C,mCAMD,mBAAoB,CACpB,UCQmB,CDVpB,kFAIE,cAAe,CACf,UCKkB,CDVpB,qCAQE,oBAAqB,CACrB,gCAOD,YAAa,CACb,sBAAuB,CAEvB,UAAW,CACX,WAAY,CACZ,QAAS,CACT,SAAU,CACV,kBCtB8C,CDuB9C,qBAAsB,CAEtB,cAAe,CACf,kBAAmB,CAEnB,UClBiB,CDmBjB,4BAA6B,CAC7B,QAAS,CACT,eAAgB,CAChB,4BAA6B,CAC7B,eAAgB,CAEhB,kBAAmB,CACnB,kCAAmC,CACnC,gBC7CmB,CDsBpB,4EA2BE,SC9Ba,CDGf,qCA+BE,cAAe,CACf,kBAAmB,CACnB,sCAGA,UC1DkB,CD2DlB,WC3DkB,CD4DlB,SCzCa,CD0Cb,+BAAwC,CACxC,oBC1Da,CD2Db,2BAA4B,CAzC9B,sDA6CE,UCnEkB,CDoElB,WCpEkB,CDqElB,SClDa,CDGf,iFAkDG,qBAAsB,CAlDzB,kCAwDE,eAAgB,CAChB,iBAAkB,CAGlB,gBAA8C,CAE9C,cAAe,CACf,eAAgB,CAGhB,eAAgB,CAChB,sBAAuB,CACvB,0CAGA,cAAe,CAEf,oBAAqB,CACrB,uCAGA,gBAAiB,CACjB,sBAAuB,CACvB,eAAgB,CAChB,kBAAmB,CACnB,cAAe,CACf,oBAAqB\",sourcesContent:[\"/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon {\\n\\tdisplay: flex;\\n\\talign-self: center;\\n\\tjustify-self: center;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n}\\n\",\"/**\\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @author John Molakvoæ <skjnldsv@protonmail.com>\\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 */\\n\\n@mixin action-active {\\n\\tli {\\n\\t\\t&.active {\\n\\t\\t\\tbackground-color: var(--color-background-hover);\\n\\t\\t}\\n\\t}\\n}\\n\\n@mixin action--disabled {\\n\\t.action--disabled {\\n\\t\\tpointer-events: none;\\n\\t\\topacity: $opacity_disabled;\\n\\t\\t&:hover, &:focus {\\n\\t\\t\\tcursor: default;\\n\\t\\t\\topacity: $opacity_disabled;\\n\\t\\t}\\n\\t\\t& * {\\n\\t\\t\\topacity: 1 !important;\\n\\t\\t}\\n\\t}\\n}\\n\\n\\n@mixin action-item($name) {\\n\\t.action-#{$name} {\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: flex-start;\\n\\n\\t\\twidth: 100%;\\n\\t\\theight: auto;\\n\\t\\tmargin: 0;\\n\\t\\tpadding: 0;\\n\\t\\tpadding-right: $icon-margin;\\n\\t\\tbox-sizing: border-box; // otherwise router-link overflows in Firefox\\n\\n\\t\\tcursor: pointer;\\n\\t\\twhite-space: nowrap;\\n\\n\\t\\topacity: $opacity_normal;\\n\\t\\tcolor: var(--color-main-text);\\n\\t\\tborder: 0;\\n\\t\\tborder-radius: 0; // otherwise Safari will cut the border-radius area\\n\\t\\tbackground-color: transparent;\\n\\t\\tbox-shadow: none;\\n\\n\\t\\tfont-weight: normal;\\n\\t\\tfont-size: var(--default-font-size);\\n\\t\\tline-height: $clickable-area;\\n\\n\\t\\t&:hover,\\n\\t\\t&:focus {\\n\\t\\t\\topacity: $opacity_full;\\n\\t\\t}\\n\\n\\t\\t& > span {\\n\\t\\t\\tcursor: pointer;\\n\\t\\t\\twhite-space: nowrap;\\n\\t\\t}\\n\\n\\t\\t&__icon {\\n\\t\\t\\twidth: $clickable-area;\\n\\t\\t\\theight: $clickable-area;\\n\\t\\t\\topacity: $opacity_full;\\n\\t\\t\\tbackground-position: $icon-margin center;\\n\\t\\t\\tbackground-size: $icon-size;\\n\\t\\t\\tbackground-repeat: no-repeat;\\n\\t\\t}\\n\\n\\t\\t&::v-deep .material-design-icon {\\n\\t\\t\\twidth: $clickable-area;\\n\\t\\t\\theight: $clickable-area;\\n\\t\\t\\topacity: $opacity_full;\\n\\n\\t\\t\\t.material-design-icon__svg {\\n\\t\\t\\t\\tvertical-align: middle;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t// long text area\\n\\t\\tp {\\n\\t\\t\\tmax-width: 220px;\\n\\t\\t\\tline-height: 1.6em;\\n\\n\\t\\t\\t// 14px are currently 1em line-height. Mixing units as '44px - 1.6em' does not work.\\n\\t\\t\\tpadding: #{($clickable-area - 1.6*14px) / 2} 0;\\n\\n\\t\\t\\tcursor: pointer;\\n\\t\\t\\ttext-align: left;\\n\\n\\t\\t\\t// in case there are no spaces like long email addresses\\n\\t\\t\\toverflow: hidden;\\n\\t\\t\\ttext-overflow: ellipsis;\\n\\t\\t}\\n\\n\\t\\t&__longtext {\\n\\t\\t\\tcursor: pointer;\\n\\t\\t\\t// allow the use of `\\\\n`\\n\\t\\t\\twhite-space: pre-wrap;\\n\\t\\t}\\n\\n\\t\\t&__title {\\n\\t\\t\\tfont-weight: bold;\\n\\t\\t\\ttext-overflow: ellipsis;\\n\\t\\t\\toverflow: hidden;\\n\\t\\t\\twhite-space: nowrap;\\n\\t\\t\\tmax-width: 100%;\\n\\t\\t\\tdisplay: inline-block;\\n\\t\\t}\\n\\t}\\n}\\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 */\\n\\n// https://uxplanet.org/7-rules-for-mobile-ui-button-design-e9cf2ea54556\\n// recommended is 48px\\n// 44px is what we choose and have very good visual-to-usability ratio\\n$clickable-area: 44px;\\n\\n// background icon size\\n// also used for the scss icon font\\n$icon-size: 16px;\\n\\n// icon padding for a $clickable-area width and a $icon-size icon\\n// ( 44px - 16px ) / 2\\n$icon-margin: ($clickable-area - $icon-size) / 2;\\n\\n// transparency background for icons\\n$icon-focus-bg: rgba(127, 127, 127, .25);\\n\\n// popovermenu arrow width from the triangle center\\n$arrow-width: 9px;\\n\\n// opacities\\n$opacity_disabled: .5;\\n$opacity_normal: .7;\\n$opacity_full: 1;\\n\\n// menu round background hover feedback\\n// good looking on dark AND white bg\\n$action-background-hover: rgba(127, 127, 127, .25);\\n\\n// various structure data used in the \\n// `AppNavigation` component\\n$header-height: 50px;\\n$navigation-width: 300px;\\n\\n// mobile breakpoint\\n$breakpoint-mobile: 1024px;\\n\"],sourceRoot:\"\"}]),e.a=r},function(t,e){},,,,,,function(t,e,n){\"use strict\";var a={name:\"ActionButton\",mixins:[n(31).a],props:{disabled:{type:Boolean,default:!1}},computed:{isFocusable:function(){return!this.disabled}}},i=n(2),o=n.n(i),r=n(62),s={insert:\"head\",singleton:!1},l=(o()(r.a,s),r.a.locals,n(3)),c=n(63),d=n.n(c),u=Object(l.a)(a,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n(\"li\",{staticClass:\"action\",class:{\"action--disabled\":t.disabled}},[n(\"button\",{staticClass:\"action-button\",class:{focusable:t.isFocusable},attrs:{\"aria-label\":t.ariaLabel,type:\"button\"},on:{click:t.onClick}},[t._t(\"icon\",[n(\"span\",{staticClass:\"action-button__icon\",class:[t.isIconUrl?\"action-button__icon--url\":t.icon],style:{backgroundImage:t.isIconUrl?\"url(\"+t.icon+\")\":null}})]),t._v(\" \"),t.title?n(\"p\",[n(\"strong\",{staticClass:\"action-button__title\"},[t._v(\"\\n\\t\\t\\t\\t\"+t._s(t.title)+\"\\n\\t\\t\\t\")]),t._v(\" \"),n(\"br\"),t._v(\" \"),n(\"span\",{staticClass:\"action-button__longtext\",domProps:{textContent:t._s(t.text)}})]):t.isLongText?n(\"p\",{staticClass:\"action-button__longtext\",domProps:{textContent:t._s(t.text)}}):n(\"span\",{staticClass:\"action-button__text\"},[t._v(t._s(t.text))]),t._v(\" \"),t._e()],2)])}),[],!1,null,\"71ea20d2\",null);\"function\"==typeof d.a&&d()(u);e.a=u.exports},,,function(t,e){t.exports=require(\"vue-material-design-icons/Close\")},,,function(t,e){t.exports=require(\"vue-material-design-icons/ChevronRight\")},,,,function(t,e){t.exports=require(\"hammerjs\")},function(t,e,n){\"use strict\";n.r(e);var a=n(69);\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 */e.default=a.a},,,,,,,,,,,,,function(t,e,n){\"use strict\";var a=n(0),i=n.n(a),o=n(1),r=n.n(o)()(i.a);r.push([t.i,\".material-design-icon[data-v-3e8e4882]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.modal-mask[data-v-3e8e4882]{position:fixed;z-index:9998;top:0;left:0;display:block;width:100%;height:100%;background-color:rgba(0,0,0,0.5)}.modal-mask--dark[data-v-3e8e4882]{background-color:rgba(0,0,0,0.92)}.modal-header[data-v-3e8e4882]{position:absolute;z-index:10001;top:0;right:0;left:0;display:flex !important;align-items:center;justify-content:center;width:100%;height:50px;transition:opacity 250ms, visibility 250ms}.modal-header.invisible[style*='display:none'][data-v-3e8e4882],.modal-header.invisible[style*='display: none'][data-v-3e8e4882]{visibility:hidden}.modal-header .modal-title[data-v-3e8e4882]{overflow-x:hidden;box-sizing:border-box;width:100%;padding:0 132px 0 12px;transition:padding ease 100ms;white-space:nowrap;text-overflow:ellipsis;color:#fff;font-size:14px}@media only screen and (min-width: 512px){.modal-header .modal-title[data-v-3e8e4882]{padding-left:132px;text-align:center}}.modal-header .icons-menu[data-v-3e8e4882]{position:absolute;right:0;display:flex;align-items:center;justify-content:flex-end}.modal-header .icons-menu .header-close[data-v-3e8e4882]{display:flex;align-items:center;justify-content:center;box-sizing:border-box;margin:3px;padding:0}.modal-header .icons-menu .play-pause-icons[data-v-3e8e4882]{position:relative;width:50px;height:50px;margin:0;padding:0;cursor:pointer;border:none;background-color:transparent}.modal-header .icons-menu .play-pause-icons:hover .play-pause-icons__play[data-v-3e8e4882],.modal-header .icons-menu .play-pause-icons:hover .play-pause-icons__pause[data-v-3e8e4882],.modal-header .icons-menu .play-pause-icons:focus .play-pause-icons__play[data-v-3e8e4882],.modal-header .icons-menu .play-pause-icons:focus .play-pause-icons__pause[data-v-3e8e4882]{opacity:1;border-radius:22px;background-color:rgba(127,127,127,0.25)}.modal-header .icons-menu .play-pause-icons__play[data-v-3e8e4882],.modal-header .icons-menu .play-pause-icons__pause[data-v-3e8e4882]{box-sizing:border-box;width:44px;height:44px;margin:3px;cursor:pointer;opacity:.7}.modal-header .icons-menu .header-actions[data-v-3e8e4882]{margin:3px;color:white}.modal-header .icons-menu .action-item--single[data-v-3e8e4882]{box-sizing:border-box;width:44px;height:44px;cursor:pointer;background-position:center;background-size:22px}.modal-header .icons-menu[data-v-3e8e4882] button{color:#fff}.modal-header .icons-menu[data-v-3e8e4882] .action-item__menutoggle{padding:0}.modal-header .icons-menu[data-v-3e8e4882] .action-item__menutoggle span,.modal-header .icons-menu[data-v-3e8e4882] .action-item__menutoggle svg{width:var(--icon-size);height:var(--icon-size)}.modal-wrapper[data-v-3e8e4882]{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:100%;height:100%}.modal-wrapper .prev[data-v-3e8e4882],.modal-wrapper .next[data-v-3e8e4882]{z-index:10000;display:flex !important;align-items:center;justify-content:center;width:8%;min-width:44px;height:35vw;position:absolute;transition:opacity 250ms, visibility 250ms}.modal-wrapper .prev.invisible[style*='display:none'][data-v-3e8e4882],.modal-wrapper .prev.invisible[style*='display: none'][data-v-3e8e4882],.modal-wrapper .next.invisible[style*='display:none'][data-v-3e8e4882],.modal-wrapper .next.invisible[style*='display: none'][data-v-3e8e4882]{visibility:hidden}.modal-wrapper .prev[data-v-3e8e4882]{left:0}.modal-wrapper .next[data-v-3e8e4882]{right:0}.modal-wrapper .icon-next[data-v-3e8e4882],.modal-wrapper .icon-previous[data-v-3e8e4882]{box-sizing:border-box;width:44px;height:44px;color:white;background-image:none;display:flex}.modal-wrapper .modal-container[data-v-3e8e4882]{display:block;overflow:auto;padding:0;transition:transform 300ms ease;border-radius:var(--border-radius-large);background-color:var(--color-main-background);box-shadow:0 0 40px rgba(0,0,0,0.2)}.modal-wrapper--small .modal-container[data-v-3e8e4882]{width:330px;max-height:90%}.modal-wrapper--normal .modal-container[data-v-3e8e4882]{max-width:90%;width:600px;max-height:90%;height:600px}.modal-wrapper--large .modal-container[data-v-3e8e4882]{max-width:90%;width:900px;max-height:90%;height:700px}.modal-wrapper--full .modal-container[data-v-3e8e4882]{width:100%;height:calc(100% - var(--header-height));position:absolute;top:50px;border-radius:0}@media only screen and (max-width: 512px){.modal-wrapper:not(.modal-wrapper--small) .modal-container[data-v-3e8e4882]{max-width:initial;width:100%;max-height:initial;height:calc(100% - var(--header-height));position:absolute;top:50px;border-radius:0}}.fade-enter-active[data-v-3e8e4882],.fade-leave-active[data-v-3e8e4882]{transition:opacity 250ms}.fade-enter[data-v-3e8e4882],.fade-leave-to[data-v-3e8e4882]{opacity:0}.fade-visibility-enter[data-v-3e8e4882],.fade-visibility-leave-to[data-v-3e8e4882]{visibility:hidden;opacity:0}.modal-in-enter-active[data-v-3e8e4882],.modal-in-leave-active[data-v-3e8e4882],.modal-out-enter-active[data-v-3e8e4882],.modal-out-leave-active[data-v-3e8e4882]{transition:opacity 250ms}.modal-in-enter[data-v-3e8e4882],.modal-in-leave-to[data-v-3e8e4882],.modal-out-enter[data-v-3e8e4882],.modal-out-leave-to[data-v-3e8e4882]{opacity:0}.modal-in-enter .modal-container[data-v-3e8e4882],.modal-in-leave-to .modal-container[data-v-3e8e4882]{transform:scale(0.9)}.modal-out-enter .modal-container[data-v-3e8e4882],.modal-out-leave-to .modal-container[data-v-3e8e4882]{transform:scale(1.1)}.modal-mask .play-pause-icons .progress-ring[data-v-3e8e4882]{position:absolute;top:0;left:0;transform:rotate(-90deg)}.modal-mask .play-pause-icons .progress-ring .progress-ring__circle[data-v-3e8e4882]{transition:100ms stroke-dashoffset;transform-origin:50% 50%;animation:progressring-data-v-3e8e4882 linear var(--slideshow-duration) infinite;stroke-linecap:round;stroke-dashoffset:94.24778;stroke-dasharray:94.24778}.modal-mask .play-pause-icons--paused .icon-pause[data-v-3e8e4882]{animation:breath-data-v-3e8e4882 2s cubic-bezier(0.4, 0, 0.2, 1) infinite}.modal-mask .play-pause-icons--paused .progress-ring__circle[data-v-3e8e4882]{animation-play-state:paused !important}@keyframes progressring-data-v-3e8e4882{from{stroke-dashoffset:94.24778}to{stroke-dashoffset:0}}@keyframes breath-data-v-3e8e4882{0%{opacity:1}50%{opacity:0}100%{opacity:1}}\\n\",\"\",{version:3,sources:[\"webpack://./../../assets/material-icons.css\",\"webpack://./Modal.vue\",\"webpack://./../../assets/variables.scss\"],names:[],mappings:\"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\",sourcesContent:[\"/*\\n* Ensure proper alignment of the vue material icons\\n*/\\n.material-design-icon {\\n\\tdisplay: flex;\\n\\talign-self: center;\\n\\tjustify-self: center;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n}\\n\",\"$scope_version:\\\"75cef38\\\"; @import 'variables'; @import 'material-icons';\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.modal-mask {\\n\\tposition: fixed;\\n\\tz-index: 9998;\\n\\ttop: 0;\\n\\tleft: 0;\\n\\tdisplay: block;\\n\\twidth: 100%;\\n\\theight: 100%;\\n\\tbackground-color: rgba(0, 0, 0, .5);\\n\\t&--dark {\\n\\t\\tbackground-color: rgba(0, 0, 0, .92);\\n\\t}\\n}\\n\\n.modal-header {\\n\\tposition: absolute;\\n\\tz-index: 10001;\\n\\ttop: 0;\\n\\tright: 0;\\n\\tleft: 0;\\n\\t// prevent vue show to use display:none and reseting\\n\\t// the circle animation loop\\n\\tdisplay: flex !important;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n\\twidth: 100%;\\n\\theight: $header-height;\\n\\ttransition: opacity 250ms,\\n\\t\\tvisibility 250ms;\\n\\n\\t// replace display by visibility\\n\\t&.invisible[style*='display:none'],\\n\\t&.invisible[style*='display: none'] {\\n\\t\\tvisibility: hidden;\\n\\t}\\n\\n\\t.modal-title {\\n\\t\\toverflow-x: hidden;\\n\\t\\tbox-sizing: border-box;\\n\\t\\twidth: 100%;\\n\\t\\tpadding: 0 #{$clickable-area * 3} 0 12px; // maximum actions is 3\\n\\t\\ttransition: padding ease 100ms;\\n\\t\\twhite-space: nowrap;\\n\\t\\ttext-overflow: ellipsis;\\n\\t\\tcolor: #fff;\\n\\t\\tfont-size: $icon-margin;\\n\\t}\\n\\n\\t// On wider screens the title can be centered\\n\\t@media only screen and (min-width: $breakpoint-mobile/2) {\\n\\t\\t.modal-title {\\n\\t\\t\\tpadding-left: #{$clickable-area * 3}; // maximum actions is 3\\n\\t\\t\\ttext-align: center;\\n\\t\\t}\\n\\t}\\n\\n\\t.icons-menu {\\n\\t\\tposition: absolute;\\n\\t\\tright: 0;\\n\\t\\tdisplay: flex;\\n\\t\\talign-items: center;\\n\\t\\tjustify-content: flex-end;\\n\\n\\t\\t.header-close {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\talign-items: center;\\n\\t\\t\\tjustify-content: center;\\n\\t\\t\\tbox-sizing: border-box;\\n\\t\\t\\tmargin: ($header-height - $clickable-area) / 2;\\n\\t\\t\\tpadding: 0;\\n\\t\\t}\\n\\n\\t\\t.play-pause-icons {\\n\\t\\t\\tposition: relative;\\n\\t\\t\\twidth: $header-height;\\n\\t\\t\\theight: $header-height;\\n\\t\\t\\tmargin: 0;\\n\\t\\t\\tpadding: 0;\\n\\t\\t\\tcursor: pointer;\\n\\t\\t\\tborder: none;\\n\\t\\t\\tbackground-color: transparent;\\n\\t\\t\\t&:hover,\\n\\t\\t\\t&:focus {\\n\\t\\t\\t\\t.play-pause-icons__play,\\n\\t\\t\\t\\t.play-pause-icons__pause {\\n\\t\\t\\t\\t\\topacity: $opacity_full;\\n\\t\\t\\t\\t\\tborder-radius: $clickable-area / 2;\\n\\t\\t\\t\\t\\tbackground-color: $icon-focus-bg;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t\\t&__play,\\n\\t\\t\\t&__pause {\\n\\t\\t\\t\\tbox-sizing: border-box;\\n\\t\\t\\t\\twidth: $clickable-area;\\n\\t\\t\\t\\theight: $clickable-area;\\n\\t\\t\\t\\tmargin: ($header-height - $clickable-area) / 2;\\n\\t\\t\\t\\tcursor: pointer;\\n\\t\\t\\t\\topacity: $opacity_normal;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t.header-actions {\\n\\t\\t\\tmargin: ($header-height - $clickable-area) / 2;\\n\\t\\t\\tcolor: white;\\n\\t\\t}\\n\\n\\t\\t.action-item--single {\\n\\t\\t\\tbox-sizing: border-box;\\n\\t\\t\\twidth: $clickable-area;\\n\\t\\t\\theight: $clickable-area;\\n\\t\\t\\tcursor: pointer;\\n\\t\\t\\tbackground-position: center;\\n\\t\\t\\tbackground-size: 22px;\\n\\t\\t}\\n\\n\\t\\t::v-deep button {\\n\\t\\t\\t// force white instead of default main text\\n\\t\\t\\tcolor: #fff;\\n\\t\\t}\\n\\n\\t\\t// Force the Actions menu icon to be the same size as other icons\\n\\t\\t&::v-deep .action-item__menutoggle {\\n\\t\\t\\tpadding: 0;\\n\\t\\t\\tspan, svg {\\n\\t\\t\\t\\twidth: var(--icon-size);\\n\\t\\t\\t\\theight: var(--icon-size);\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\n\\n.modal-wrapper {\\n\\tdisplay: flex;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n\\tbox-sizing: border-box;\\n\\twidth: 100%;\\n\\theight: 100%;\\n\\n\\t/* Navigation buttons */\\n\\t.prev,\\n\\t.next {\\n\\t\\tz-index: 10000;\\n\\t\\t// ignore display: none\\n\\t\\tdisplay: flex !important;\\n\\t\\talign-items: center;\\n\\t\\tjustify-content: center;\\n\\t\\twidth: 8%;\\n\\t\\tmin-width: $clickable-area;\\n\\t\\theight: 35vw;\\n\\t\\tposition: absolute;\\n\\t\\ttransition: opacity 250ms,\\n\\t\\t\\tvisibility 250ms;\\n\\n\\t\\t// we want to keep the elements on page\\n\\t\\t// even if hidden to avoid having a unbalanced\\n\\t\\t// centered content\\n\\t\\t// replace display by visibility\\n\\t\\t&.invisible[style*='display:none'],\\n\\t\\t&.invisible[style*='display: none'] {\\n\\t\\t\\tvisibility: hidden;\\n\\t\\t}\\n\\t}\\n\\t.prev {\\n\\t\\tleft: 0;\\n\\t}\\n\\t.next {\\n\\t\\tright: 0;\\n\\t}\\n\\n\\t// buttons/icons\\n\\t.icon-next,\\n\\t.icon-previous {\\n\\t\\tbox-sizing: border-box;\\n\\t\\twidth: $clickable-area;\\n\\t\\theight: $clickable-area;\\n\\t\\tcolor: white;\\n\\t\\tbackground-image: none;\\n\\t\\tdisplay: flex;\\n\\t}\\n\\n\\t/* Content */\\n\\t.modal-container {\\n\\t\\tdisplay: block;\\n\\t\\toverflow: auto; // avoids unecessary hacks if the content should be bigger than the modal\\n\\t\\tpadding: 0;\\n\\t\\ttransition: transform 300ms ease;\\n\\t\\tborder-radius: var(--border-radius-large);\\n\\t\\tbackground-color: var(--color-main-background);\\n\\t\\tbox-shadow: 0 0 40px rgba(0, 0, 0, .2);\\n\\t}\\n\\n\\t// Sizing\\n\\t&--small {\\n\\t\\t.modal-container {\\n\\t\\t\\twidth: 330px;\\n\\t\\t\\tmax-height: 90%;\\n\\t\\t}\\n\\t}\\n\\t&--normal {\\n\\t\\t.modal-container {\\n\\t\\t\\tmax-width: 90%;\\n\\t\\t\\twidth: 600px;\\n\\t\\t\\tmax-height: 90%;\\n\\t\\t\\theight: 600px;\\n\\t\\t}\\n\\t}\\n\\t&--large {\\n\\t\\t.modal-container {\\n\\t\\t\\tmax-width: 90%;\\n\\t\\t\\twidth: 900px;\\n\\t\\t\\tmax-height: 90%;\\n\\t\\t\\theight: 700px;\\n\\t\\t}\\n\\t}\\n\\t&--full {\\n\\t\\t.modal-container {\\n\\t\\t\\twidth: 100%;\\n\\t\\t\\theight: calc(100% - var(--header-height));\\n\\t\\t\\tposition: absolute;\\n\\t\\t\\ttop: $header-height;\\n\\t\\t\\tborder-radius: 0;\\n\\t\\t}\\n\\t}\\n\\n\\t// Make modal full screen on mobile\\n\\t@media only screen and (max-width: $breakpoint-mobile/2) {\\n\\t\\t&:not(&--small) .modal-container {\\n\\t\\t\\tmax-width: initial;\\n\\t\\t\\twidth: 100%;\\n\\t\\t\\tmax-height: initial;\\n\\t\\t\\theight: calc(100% - var(--header-height));\\n\\t\\t\\tposition: absolute;\\n\\t\\t\\ttop: $header-height;\\n\\t\\t\\tborder-radius: 0;\\n\\t\\t}\\n\\t}\\n}\\n\\n/* TRANSITIONS */\\n.fade-enter-active,\\n.fade-leave-active {\\n\\ttransition: opacity 250ms;\\n}\\n\\n.fade-enter,\\n.fade-leave-to {\\n\\topacity: 0;\\n}\\n\\n.fade-visibility-enter,\\n.fade-visibility-leave-to {\\n\\tvisibility: hidden;\\n\\topacity: 0;\\n}\\n\\n.modal-in-enter-active,\\n.modal-in-leave-active,\\n.modal-out-enter-active,\\n.modal-out-leave-active {\\n\\ttransition: opacity 250ms;\\n}\\n\\n.modal-in-enter,\\n.modal-in-leave-to,\\n.modal-out-enter,\\n.modal-out-leave-to {\\n\\topacity: 0;\\n}\\n\\n.modal-in-enter .modal-container,\\n.modal-in-leave-to .modal-container {\\n\\ttransform: scale(.9);\\n}\\n\\n.modal-out-enter .modal-container,\\n.modal-out-leave-to .modal-container {\\n\\ttransform: scale(1.1);\\n}\\n\\n// animated circle\\n$radius: 15;\\n$pi: 3.14159265358979;\\n\\n.modal-mask .play-pause-icons {\\n\\t.progress-ring {\\n\\t\\tposition: absolute;\\n\\t\\ttop: 0;\\n\\t\\tleft: 0;\\n\\t\\ttransform: rotate(-90deg);\\n\\t\\t.progress-ring__circle {\\n\\t\\t\\ttransition: 100ms stroke-dashoffset;\\n\\t\\t\\ttransform-origin: 50% 50%; // axis compensation\\n\\t\\t\\tanimation: progressring linear var(--slideshow-duration) infinite;\\n\\n\\t\\t\\tstroke-linecap: round;\\n\\t\\t\\tstroke-dashoffset: $radius * 2 * $pi; // radius * 2 * PI\\n\\t\\t\\tstroke-dasharray: $radius * 2 * $pi; // radius * 2 * PI\\n\\t\\t}\\n\\t}\\n\\t&--paused {\\n\\t\\t.icon-pause {\\n\\t\\t\\tanimation: breath 2s cubic-bezier(.4, 0, .2, 1) infinite;\\n\\t\\t}\\n\\t\\t.progress-ring__circle {\\n\\t\\t\\tanimation-play-state: paused !important;\\n\\t\\t}\\n\\t}\\n}\\n\\n// keyframes get scoped too and break the animation name, we need them unscoped\\n@keyframes progressring {\\n\\tfrom {\\n\\t\\tstroke-dashoffset: $radius * 2 * $pi; // radius * 2 * PI\\n\\t}\\n\\tto {\\n\\t\\tstroke-dashoffset: 0;\\n\\t}\\n}\\n\\n@keyframes breath {\\n\\t0% {\\n\\t\\topacity: 1;\\n\\t}\\n\\t50% {\\n\\t\\topacity: 0;\\n\\t}\\n\\t100% {\\n\\t\\topacity: 1;\\n\\t}\\n}\\n\\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 */\\n\\n// https://uxplanet.org/7-rules-for-mobile-ui-button-design-e9cf2ea54556\\n// recommended is 48px\\n// 44px is what we choose and have very good visual-to-usability ratio\\n$clickable-area: 44px;\\n\\n// background icon size\\n// also used for the scss icon font\\n$icon-size: 16px;\\n\\n// icon padding for a $clickable-area width and a $icon-size icon\\n// ( 44px - 16px ) / 2\\n$icon-margin: ($clickable-area - $icon-size) / 2;\\n\\n// transparency background for icons\\n$icon-focus-bg: rgba(127, 127, 127, .25);\\n\\n// popovermenu arrow width from the triangle center\\n$arrow-width: 9px;\\n\\n// opacities\\n$opacity_disabled: .5;\\n$opacity_normal: .7;\\n$opacity_full: 1;\\n\\n// menu round background hover feedback\\n// good looking on dark AND white bg\\n$action-background-hover: rgba(127, 127, 127, .25);\\n\\n// various structure data used in the \\n// `AppNavigation` component\\n$header-height: 50px;\\n$navigation-width: 300px;\\n\\n// mobile breakpoint\\n$breakpoint-mobile: 1024px;\\n\"],sourceRoot:\"\"}]),e.a=r},function(t,e){},,,,,,,,,,,,,,function(t,e,n){\"use strict\";n.r(e);var a=n(59),i=n(79),o=n.n(i),r=n(125),s=n.n(r),l=n(75),c=n.n(l),d=n(72),u=n.n(d),m=n(126),p=n.n(m),h=n(127),g=n.n(h),A=n(53),v=n(80),C=n(26),f=n(4),b=n(10);\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 y(t,e){var n,a,i,o=e;this.start=function(){i=!0,a=new Date,n=setTimeout(t,o)},this.pause=function(){i=!1,clearTimeout(n),o-=new Date-a},this.clear=function(){i=!1,clearTimeout(n),o=0},this.getTimeLeft=function(){return i&&(this.pause(),this.start()),o},this.getStateRunning=function(){return i},this.start()}var k={name:\"Modal\",components:{ActionButton:v.default,Actions:A.default,ChevronLeft:s.a,ChevronRight:c.a,Close:u.a,Pause:p.a,Play:g.a},directives:{tooltip:b.default},mixins:[C.a],props:{title:{type:String,default:\"\"},hasPrevious:{type:Boolean,default:!1},hasNext:{type:Boolean,default:!1},outTransition:{type:Boolean,default:!1},enableSlideshow:{type:Boolean,default:!1},clearViewDelay:{type:Number,default:5e3},slideshowDelay:{type:Number,default:5e3},slideshowPaused:{type:Boolean,default:!1},enableSwipe:{type:Boolean,default:!0},spreadNavigation:{type:Boolean,default:!1},size:{type:String,default:\"normal\",validator:function(t){return[\"small\",\"normal\",\"large\",\"full\"].includes(t)}},canClose:{type:Boolean,default:!0},dark:{type:Boolean,default:!1},container:{type:String,default:\"body\"}},data:function(){return{mc:null,showModal:!1,clearView:!1,clearViewTimeout:null,playing:!1,slideshowTimeout:null,iconSize:24}},computed:{modalTransitionName:function(){return\"modal-\".concat(this.outTransition?\"out\":\"in\")},playPauseTitle:function(){return this.playing?Object(f.b)(\"Pause slideshow\"):Object(f.b)(\"Start slideshow\")},cssVariables:function(){return{\"--slideshow-duration\":this.slideshowDelay+\"ms\",\"--icon-size\":this.iconSize+\"px\"}}},watch:{slideshowPaused:function(t){this.slideshowTimeout&&(t?this.slideshowTimeout.pause():this.slideshowTimeout.start())}},beforeMount:function(){window.addEventListener(\"keydown\",this.handleKeydown)},beforeDestroy:function(){window.removeEventListener(\"keydown\",this.handleKeydown),this.mc.off(\"swipeleft swiperight\"),this.mc.destroy()},mounted:function(){var t=this;(this.showModal=!0,this.handleMouseMove(),this.mc=new o.a(this.$refs.mask),this.mc.on(\"swipeleft swiperight\",(function(e){t.handleSwipe(e)})),\"body\"===this.container)?document.body.insertBefore(this.$el,document.body.lastChild):document.querySelector(this.container).appendChild(this.$el)},destroyed:function(){this.$el.remove()},methods:{previous:function(t){this.hasPrevious&&(t&&this.resetSlideshow(),this.$emit(\"previous\",t))},next:function(t){this.hasNext&&(t&&this.resetSlideshow(),this.$emit(\"next\",t))},close:function(t){var e=this;this.canClose&&(this.showModal=!1,setTimeout((function(){e.$emit(\"close\",t)}),300))},handleKeydown:function(t){switch(t.keyCode){case 37:this.previous(t);break;case 13:case 39:this.next(t);break;case 27:this.close(t)}},handleSwipe:function(t){this.enableSwipe&&(\"swipeleft\"===t.type?this.next(t):\"swiperight\"===t.type&&this.previous(t))},handleMouseMove:function(){var t=this;this.clearViewDelay>0&&(this.clearView=!1,clearTimeout(this.clearViewTimeout),this.clearViewTimeout=setTimeout((function(){t.clearView=!0}),this.clearViewDelay))},togglePlayPause:function(){this.playing=!this.playing,this.playing?this.handleSlideshow():this.clearSlideshowTimeout()},resetSlideshow:function(){this.playing=!this.playing,this.clearSlideshowTimeout(),this.$nextTick((function(){this.togglePlayPause()}))},handleSlideshow:function(){var t=this;this.playing=!0,this.hasNext?this.slideshowTimeout=new y((function(){t.next(),t.handleSlideshow()}),this.slideshowDelay):(this.playing=!1,this.clearSlideshowTimeout())},clearSlideshowTimeout:function(){this.slideshowTimeout&&this.slideshowTimeout.clear()}}},B=n(2),w=n.n(B),S=n(93),x={insert:\"head\",singleton:!1},j=(w()(S.a,x),S.a.locals,n(3)),N=n(94),z=n.n(N),P=Object(j.a)(k,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n(\"transition\",{attrs:{name:\"fade\"}},[n(\"div\",{ref:\"mask\",staticClass:\"modal-mask\",class:{\"modal-mask--dark\":t.dark},style:t.cssVariables,on:{click:t.handleMouseMove,mousemove:t.handleMouseMove,touchmove:t.handleMouseMove}},[n(\"transition\",{attrs:{name:\"fade-visibility\"}},[n(\"div\",{directives:[{name:\"show\",rawName:\"v-show\",value:!t.clearView,expression:\"!clearView\"}],staticClass:\"modal-header\",class:{invisible:t.clearView}},[\"\"!==t.title.trim()?n(\"div\",{staticClass:\"modal-title\"},[t._v(\"\\n\\t\\t\\t\\t\\t\"+t._s(t.title)+\"\\n\\t\\t\\t\\t\")]):t._e(),t._v(\" \"),n(\"div\",{staticClass:\"icons-menu\"},[t.hasNext&&t.enableSlideshow?n(\"button\",{directives:[{name:\"tooltip\",rawName:\"v-tooltip.auto\",value:t.playPauseTitle,expression:\"playPauseTitle\",modifiers:{auto:!0}}],staticClass:\"play-pause-icons\",class:{\"play-pause-icons--paused\":t.slideshowPaused},attrs:{type:\"button\"},on:{click:t.togglePlayPause}},[t.playing?n(\"Pause\",{staticClass:\"play-pause-icons__pause\",attrs:{size:t.iconSize,title:\"\",decorative:\"\"}}):n(\"Play\",{staticClass:\"play-pause-icons__play\",attrs:{size:t.iconSize,title:\"\",decorative:\"\"}}),t._v(\" \"),n(\"span\",{staticClass:\"hidden-visually\"},[t._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\"+t._s(t.playPauseTitle)+\"\\n\\t\\t\\t\\t\\t\\t\")]),t._v(\" \"),t.playing?n(\"svg\",{staticClass:\"progress-ring\",attrs:{height:\"50\",width:\"50\"}},[n(\"circle\",{staticClass:\"progress-ring__circle\",attrs:{stroke:\"white\",\"stroke-width\":\"2\",fill:\"transparent\",r:\"15\",cx:\"25\",cy:\"25\"}})]):t._e()],1):t._e(),t._v(\" \"),n(\"Actions\",{staticClass:\"header-actions\"},[t._t(\"actions\")],2),t._v(\" \"),t.canClose?n(\"Actions\",{staticClass:\"header-close\"},[n(\"ActionButton\",{on:{click:t.close},scopedSlots:t._u([{key:\"icon\",fn:function(){return[n(\"Close\",{attrs:{size:t.iconSize,title:\"\",decorative:\"\"}})]},proxy:!0}],null,!1,1372351874)},[t._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\"+t._s(t.t(\"Close\"))+\"\\n\\t\\t\\t\\t\\t\\t\")])],1):t._e()],1)])]),t._v(\" \"),n(\"transition\",{attrs:{name:t.modalTransitionName}},[n(\"div\",{directives:[{name:\"show\",rawName:\"v-show\",value:t.showModal,expression:\"showModal\"}],staticClass:\"modal-wrapper\",class:[\"modal-wrapper--\"+t.size,t.spreadNavigation?\"modal-wrapper--spread-navigation\":\"\"],on:{mousedown:function(e){return e.target!==e.currentTarget?null:t.close(e)}}},[n(\"transition\",{attrs:{name:\"fade-visibility\"}},[n(\"a\",{directives:[{name:\"show\",rawName:\"v-show\",value:t.hasPrevious&&!t.clearView,expression:\"hasPrevious && !clearView\"}],staticClass:\"prev\",class:{invisible:t.clearView||!t.hasPrevious},attrs:{href:\"#\"},on:{click:function(e){return e.preventDefault(),e.stopPropagation(),t.previous(e)}}},[n(\"span\",{staticClass:\"icon-previous\"},[n(\"ChevronLeft\",{attrs:{size:40,title:\"\",decorative:\"\"}}),t._v(\" \"),n(\"span\",{staticClass:\"hidden-visually\"},[t._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\\t\"+t._s(t.t(\"Previous\"))+\"\\n\\t\\t\\t\\t\\t\\t\\t\")])],1)])]),t._v(\" \"),n(\"div\",{staticClass:\"modal-container\"},[t._t(\"default\")],2),t._v(\" \"),n(\"transition\",{attrs:{name:\"fade-visibility\"}},[n(\"a\",{directives:[{name:\"show\",rawName:\"v-show\",value:t.hasNext&&!t.clearView,expression:\"hasNext && !clearView\"}],staticClass:\"next\",class:{invisible:t.clearView||!t.hasNext},attrs:{href:\"#\"},on:{click:function(e){return e.preventDefault(),e.stopPropagation(),t.next(e)}}},[n(\"span\",{staticClass:\"icon-next\"},[n(\"ChevronRight\",{attrs:{size:40,title:\"\",decorative:\"\"}}),t._v(\" \"),n(\"span\",{staticClass:\"hidden-visually\"},[t._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\\t\"+t._s(t.t(\"Next\"))+\"\\n\\t\\t\\t\\t\\t\\t\\t\")])],1)])])],1)])],1)])}),[],!1,null,\"3e8e4882\",null);\"function\"==typeof z.a&&z()(P);var _=P.exports;\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 */Object(a.a)(_);e.default=_},,,,,,,,,,,,,,,,,function(t,e){t.exports=require(\"vue-material-design-icons/ChevronLeft\")},function(t,e){t.exports=require(\"vue-material-design-icons/Pause\")},function(t,e){t.exports=require(\"vue-material-design-icons/Play\")}])}));\n//# sourceMappingURL=Modal.js.map","'use strict';\n\nvar possibleNames = [\n\t'BigInt64Array',\n\t'BigUint64Array',\n\t'Float32Array',\n\t'Float64Array',\n\t'Int16Array',\n\t'Int32Array',\n\t'Int8Array',\n\t'Uint16Array',\n\t'Uint32Array',\n\t'Uint8Array',\n\t'Uint8ClampedArray'\n];\n\nvar g = typeof globalThis === 'undefined' ? global : globalThis;\n\nmodule.exports = function availableTypedArrays() {\n\tvar out = [];\n\tfor (var i = 0; i < possibleNames.length; i++) {\n\t\tif (typeof g[possibleNames[i]] === 'function') {\n\t\t\tout[out.length] = possibleNames[i];\n\t\t}\n\t}\n\treturn out;\n};\n","module.exports = require('./lib/axios');","'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');\nvar defaults = require('../defaults');\nvar Cancel = require('../cancel/Cancel');\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 var responseType = config.responseType;\n var onCanceled;\n function done() {\n if (config.cancelToken) {\n config.cancelToken.unsubscribe(onCanceled);\n }\n\n if (config.signal) {\n config.signal.removeEventListener('abort', onCanceled);\n }\n }\n\n if (utils.isFormData(requestData)) {\n delete requestHeaders['Content-Type']; // Let the browser set it\n }\n\n var request = new XMLHttpRequest();\n\n // HTTP basic authentication\n if (config.auth) {\n var username = config.auth.username || '';\n var password = config.auth.password ? 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 function onloadend() {\n if (!request) {\n return;\n }\n // Prepare the response\n var responseHeaders = 'getAllResponseHeaders' in request ? parseHeaders(request.getAllResponseHeaders()) : null;\n var responseData = !responseType || responseType === 'text' || responseType === 'json' ?\n 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(function _resolve(value) {\n resolve(value);\n done();\n }, function _reject(err) {\n reject(err);\n done();\n }, response);\n\n // Clean up request\n request = null;\n }\n\n if ('onloadend' in request) {\n // Use onloadend if available\n request.onloadend = onloadend;\n } else {\n // Listen for ready state to emulate onloadend\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 // readystate handler is calling before onerror or ontimeout handlers,\n // so we should call onloadend on the next 'tick'\n setTimeout(onloadend);\n };\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 = config.timeout ? 'timeout of ' + config.timeout + 'ms exceeded' : 'timeout exceeded';\n var transitional = config.transitional || defaults.transitional;\n if (config.timeoutErrorMessage) {\n timeoutErrorMessage = config.timeoutErrorMessage;\n }\n reject(createError(\n timeoutErrorMessage,\n config,\n transitional.clarifyTimeoutError ? 'ETIMEDOUT' : '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 (responseType && responseType !== 'json') {\n request.responseType = config.responseType;\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 || config.signal) {\n // Handle cancellation\n // eslint-disable-next-line func-names\n onCanceled = function(cancel) {\n if (!request) {\n return;\n }\n reject(!cancel || (cancel && cancel.type) ? new Cancel('canceled') : cancel);\n request.abort();\n request = null;\n };\n\n config.cancelToken && config.cancelToken.subscribe(onCanceled);\n if (config.signal) {\n config.signal.aborted ? onCanceled() : config.signal.addEventListener('abort', onCanceled);\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 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 // Factory for creating new instances\n instance.create = function create(instanceConfig) {\n return createInstance(mergeConfig(defaultConfig, instanceConfig));\n };\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// Expose Cancel & CancelToken\naxios.Cancel = require('./cancel/Cancel');\naxios.CancelToken = require('./cancel/CancelToken');\naxios.isCancel = require('./cancel/isCancel');\naxios.VERSION = require('./env/data').version;\n\n// Expose all/spread\naxios.all = function all(promises) {\n return Promise.all(promises);\n};\naxios.spread = require('./helpers/spread');\n\n// Expose isAxiosError\naxios.isAxiosError = require('./helpers/isAxiosError');\n\nmodule.exports = axios;\n\n// Allow use of default import syntax in TypeScript\nmodule.exports.default = axios;\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\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\n this.promise = new Promise(function promiseExecutor(resolve) {\n resolvePromise = resolve;\n });\n\n var token = this;\n\n // eslint-disable-next-line func-names\n this.promise.then(function(cancel) {\n if (!token._listeners) return;\n\n var i;\n var l = token._listeners.length;\n\n for (i = 0; i < l; i++) {\n token._listeners[i](cancel);\n }\n token._listeners = null;\n });\n\n // eslint-disable-next-line func-names\n this.promise.then = function(onfulfilled) {\n var _resolve;\n // eslint-disable-next-line func-names\n var promise = new Promise(function(resolve) {\n token.subscribe(resolve);\n _resolve = resolve;\n }).then(onfulfilled);\n\n promise.cancel = function reject() {\n token.unsubscribe(_resolve);\n };\n\n return promise;\n };\n\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 * Subscribe to the cancel signal\n */\n\nCancelToken.prototype.subscribe = function subscribe(listener) {\n if (this.reason) {\n listener(this.reason);\n return;\n }\n\n if (this._listeners) {\n this._listeners.push(listener);\n } else {\n this._listeners = [listener];\n }\n};\n\n/**\n * Unsubscribe from the cancel signal\n */\n\nCancelToken.prototype.unsubscribe = function unsubscribe(listener) {\n if (!this._listeners) {\n return;\n }\n var index = this._listeners.indexOf(listener);\n if (index !== -1) {\n this._listeners.splice(index, 1);\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\nmodule.exports = function isCancel(value) {\n return !!(value && value.__CANCEL__);\n};\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');\nvar validator = require('../helpers/validator');\n\nvar validators = validator.validators;\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 var transitional = config.transitional;\n\n if (transitional !== undefined) {\n validator.assertOptions(transitional, {\n silentJSONParsing: validators.transitional(validators.boolean),\n forcedJSONParsing: validators.transitional(validators.boolean),\n clarifyTimeoutError: validators.transitional(validators.boolean)\n }, false);\n }\n\n // filter out skipped interceptors\n var requestInterceptorChain = [];\n var synchronousRequestInterceptors = true;\n this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {\n if (typeof interceptor.runWhen === 'function' && interceptor.runWhen(config) === false) {\n return;\n }\n\n synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous;\n\n requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected);\n });\n\n var responseInterceptorChain = [];\n this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {\n responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected);\n });\n\n var promise;\n\n if (!synchronousRequestInterceptors) {\n var chain = [dispatchRequest, undefined];\n\n Array.prototype.unshift.apply(chain, requestInterceptorChain);\n chain = chain.concat(responseInterceptorChain);\n\n promise = Promise.resolve(config);\n while (chain.length) {\n promise = promise.then(chain.shift(), chain.shift());\n }\n\n return promise;\n }\n\n\n var newConfig = config;\n while (requestInterceptorChain.length) {\n var onFulfilled = requestInterceptorChain.shift();\n var onRejected = requestInterceptorChain.shift();\n try {\n newConfig = onFulfilled(newConfig);\n } catch (error) {\n onRejected(error);\n break;\n }\n }\n\n try {\n promise = dispatchRequest(newConfig);\n } catch (error) {\n return Promise.reject(error);\n }\n\n while (responseInterceptorChain.length) {\n promise = promise.then(responseInterceptorChain.shift(), responseInterceptorChain.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 data: (config || {}).data\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, options) {\n this.handlers.push({\n fulfilled: fulfilled,\n rejected: rejected,\n synchronous: options ? options.synchronous : false,\n runWhen: options ? options.runWhen : null\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 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\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');\nvar transformData = require('./transformData');\nvar isCancel = require('../cancel/isCancel');\nvar defaults = require('../defaults');\nvar Cancel = require('../cancel/Cancel');\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 if (config.signal && config.signal.aborted) {\n throw new Cancel('canceled');\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.call(\n config,\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.call(\n config,\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.call(\n config,\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\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 status: this.response && this.response.status ? this.response.status : null\n };\n };\n return error;\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 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 // eslint-disable-next-line consistent-return\n function mergeDeepProperties(prop) {\n if (!utils.isUndefined(config2[prop])) {\n return getMergedValue(config1[prop], config2[prop]);\n } else if (!utils.isUndefined(config1[prop])) {\n return getMergedValue(undefined, config1[prop]);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function valueFromConfig2(prop) {\n if (!utils.isUndefined(config2[prop])) {\n return getMergedValue(undefined, config2[prop]);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function defaultToConfig2(prop) {\n if (!utils.isUndefined(config2[prop])) {\n return getMergedValue(undefined, config2[prop]);\n } else if (!utils.isUndefined(config1[prop])) {\n return getMergedValue(undefined, config1[prop]);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDirectKeys(prop) {\n if (prop in config2) {\n return getMergedValue(config1[prop], config2[prop]);\n } else if (prop in config1) {\n return getMergedValue(undefined, config1[prop]);\n }\n }\n\n var mergeMap = {\n 'url': valueFromConfig2,\n 'method': valueFromConfig2,\n 'data': valueFromConfig2,\n 'baseURL': defaultToConfig2,\n 'transformRequest': defaultToConfig2,\n 'transformResponse': defaultToConfig2,\n 'paramsSerializer': defaultToConfig2,\n 'timeout': defaultToConfig2,\n 'timeoutMessage': defaultToConfig2,\n 'withCredentials': defaultToConfig2,\n 'adapter': defaultToConfig2,\n 'responseType': defaultToConfig2,\n 'xsrfCookieName': defaultToConfig2,\n 'xsrfHeaderName': defaultToConfig2,\n 'onUploadProgress': defaultToConfig2,\n 'onDownloadProgress': defaultToConfig2,\n 'decompress': defaultToConfig2,\n 'maxContentLength': defaultToConfig2,\n 'maxBodyLength': defaultToConfig2,\n 'transport': defaultToConfig2,\n 'httpAgent': defaultToConfig2,\n 'httpsAgent': defaultToConfig2,\n 'cancelToken': defaultToConfig2,\n 'socketPath': defaultToConfig2,\n 'responseEncoding': defaultToConfig2,\n 'validateStatus': mergeDirectKeys\n };\n\n utils.forEach(Object.keys(config1).concat(Object.keys(config2)), function computeConfigValue(prop) {\n var merge = mergeMap[prop] || mergeDeepProperties;\n var configValue = merge(prop);\n (utils.isUndefined(configValue) && merge !== mergeDirectKeys) || (config[prop] = configValue);\n });\n\n return config;\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\nvar utils = require('./../utils');\nvar defaults = require('./../defaults');\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 var context = this || defaults;\n /*eslint no-param-reassign:0*/\n utils.forEach(fns, function transform(fn) {\n data = fn.call(context, data, headers);\n });\n\n return data;\n};\n","'use strict';\n\nvar utils = require('./utils');\nvar normalizeHeaderName = require('./helpers/normalizeHeaderName');\nvar enhanceError = require('./core/enhanceError');\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\nfunction stringifySafely(rawValue, parser, encoder) {\n if (utils.isString(rawValue)) {\n try {\n (parser || JSON.parse)(rawValue);\n return utils.trim(rawValue);\n } catch (e) {\n if (e.name !== 'SyntaxError') {\n throw e;\n }\n }\n }\n\n return (encoder || JSON.stringify)(rawValue);\n}\n\nvar defaults = {\n\n transitional: {\n silentJSONParsing: true,\n forcedJSONParsing: true,\n clarifyTimeoutError: false\n },\n\n adapter: getDefaultAdapter(),\n\n transformRequest: [function transformRequest(data, headers) {\n normalizeHeaderName(headers, 'Accept');\n normalizeHeaderName(headers, 'Content-Type');\n\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) || (headers && headers['Content-Type'] === 'application/json')) {\n setContentTypeIfUnset(headers, 'application/json');\n return stringifySafely(data);\n }\n return data;\n }],\n\n transformResponse: [function transformResponse(data) {\n var transitional = this.transitional || defaults.transitional;\n var silentJSONParsing = transitional && transitional.silentJSONParsing;\n var forcedJSONParsing = transitional && transitional.forcedJSONParsing;\n var strictJSONParsing = !silentJSONParsing && this.responseType === 'json';\n\n if (strictJSONParsing || (forcedJSONParsing && utils.isString(data) && data.length)) {\n try {\n return JSON.parse(data);\n } catch (e) {\n if (strictJSONParsing) {\n if (e.name === 'SyntaxError') {\n throw enhanceError(e, this, 'E_JSON_PARSE');\n }\n throw e;\n }\n }\n }\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 headers: {\n common: {\n 'Accept': 'application/json, text/plain, */*'\n }\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","module.exports = {\n \"version\": \"0.24.0\"\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\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\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\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 * Determines whether the payload is an error thrown by Axios\n *\n * @param {*} payload The value to test\n * @returns {boolean} True if the payload is an error thrown by Axios, otherwise false\n */\nmodule.exports = function isAxiosError(payload) {\n return (typeof payload === 'object') && (payload.isAxiosError === true);\n};\n","'use strict';\n\nvar utils = require('./../utils');\n\nmodule.exports = (\n utils.isStandardBrowserEnv() ?\n\n // Standard browser envs have full support of the APIs needed to test\n // whether the request URL is of the same origin as current location.\n (function standardBrowserEnv() {\n var msie = /(msie|trident)/i.test(navigator.userAgent);\n var urlParsingNode = document.createElement('a');\n var originURL;\n\n /**\n * Parse a URL to discover it's components\n *\n * @param {String} url The URL to be parsed\n * @returns {Object}\n */\n function resolveURL(url) {\n var href = url;\n\n if (msie) {\n // IE needs attribute set twice to normalize properties\n urlParsingNode.setAttribute('href', href);\n href = urlParsingNode.href;\n }\n\n urlParsingNode.setAttribute('href', href);\n\n // urlParsingNode provides the UrlUtils interface - http://url.spec.whatwg.org/#urlutils\n return {\n href: urlParsingNode.href,\n protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, '') : '',\n host: urlParsingNode.host,\n search: urlParsingNode.search ? urlParsingNode.search.replace(/^\\?/, '') : '',\n hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, '') : '',\n hostname: urlParsingNode.hostname,\n port: urlParsingNode.port,\n pathname: (urlParsingNode.pathname.charAt(0) === '/') ?\n urlParsingNode.pathname :\n '/' + urlParsingNode.pathname\n };\n }\n\n originURL = resolveURL(window.location.href);\n\n /**\n * Determine if a URL shares the same origin as the current location\n *\n * @param {String} requestURL The URL to test\n * @returns {boolean} True if URL shares the same origin, otherwise false\n */\n return function isURLSameOrigin(requestURL) {\n var parsed = (utils.isString(requestURL)) ? resolveURL(requestURL) : requestURL;\n return (parsed.protocol === originURL.protocol &&\n parsed.host === originURL.host);\n };\n })() :\n\n // Non standard browser envs (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return function isURLSameOrigin() {\n return true;\n };\n })()\n);\n","'use strict';\n\nvar utils = require('../utils');\n\nmodule.exports = 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 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\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\nvar VERSION = require('../env/data').version;\n\nvar validators = {};\n\n// eslint-disable-next-line func-names\n['object', 'boolean', 'number', 'function', 'string', 'symbol'].forEach(function(type, i) {\n validators[type] = function validator(thing) {\n return typeof thing === type || 'a' + (i < 1 ? 'n ' : ' ') + type;\n };\n});\n\nvar deprecatedWarnings = {};\n\n/**\n * Transitional option validator\n * @param {function|boolean?} validator - set to false if the transitional option has been removed\n * @param {string?} version - deprecated version / removed since version\n * @param {string?} message - some message with additional info\n * @returns {function}\n */\nvalidators.transitional = function transitional(validator, version, message) {\n function formatMessage(opt, desc) {\n return '[Axios v' + VERSION + '] Transitional option \\'' + opt + '\\'' + desc + (message ? '. ' + message : '');\n }\n\n // eslint-disable-next-line func-names\n return function(value, opt, opts) {\n if (validator === false) {\n throw new Error(formatMessage(opt, ' has been removed' + (version ? ' in ' + version : '')));\n }\n\n if (version && !deprecatedWarnings[opt]) {\n deprecatedWarnings[opt] = true;\n // eslint-disable-next-line no-console\n console.warn(\n formatMessage(\n opt,\n ' has been deprecated since v' + version + ' and will be removed in the near future'\n )\n );\n }\n\n return validator ? validator(value, opt, opts) : true;\n };\n};\n\n/**\n * Assert object's properties type\n * @param {object} options\n * @param {object} schema\n * @param {boolean?} allowUnknown\n */\n\nfunction assertOptions(options, schema, allowUnknown) {\n if (typeof options !== 'object') {\n throw new TypeError('options must be an object');\n }\n var keys = Object.keys(options);\n var i = keys.length;\n while (i-- > 0) {\n var opt = keys[i];\n var validator = schema[opt];\n if (validator) {\n var value = options[opt];\n var result = value === undefined || validator(value, opt, options);\n if (result !== true) {\n throw new TypeError('option ' + opt + ' must be ' + result);\n }\n continue;\n }\n if (allowUnknown !== true) {\n throw Error('Unknown option ' + opt);\n }\n }\n}\n\nmodule.exports = {\n assertOptions: assertOptions,\n validators: validators\n};\n","'use strict';\n\nvar bind = require('./helpers/bind');\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.trim ? str.trim() : str.replace(/^\\s+|\\s+$/g, '');\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","'use strict';\n\nvar GetIntrinsic = require('get-intrinsic');\n\nvar callBind = require('./');\n\nvar $indexOf = callBind(GetIntrinsic('String.prototype.indexOf'));\n\nmodule.exports = function callBoundIntrinsic(name, allowMissing) {\n\tvar intrinsic = GetIntrinsic(name, !!allowMissing);\n\tif (typeof intrinsic === 'function' && $indexOf(name, '.prototype.') > -1) {\n\t\treturn callBind(intrinsic);\n\t}\n\treturn intrinsic;\n};\n","'use strict';\n\nvar bind = require('function-bind');\nvar GetIntrinsic = require('get-intrinsic');\n\nvar $apply = GetIntrinsic('%Function.prototype.apply%');\nvar $call = GetIntrinsic('%Function.prototype.call%');\nvar $reflectApply = GetIntrinsic('%Reflect.apply%', true) || bind.call($call, $apply);\n\nvar $gOPD = GetIntrinsic('%Object.getOwnPropertyDescriptor%', true);\nvar $defineProperty = GetIntrinsic('%Object.defineProperty%', true);\nvar $max = GetIntrinsic('%Math.max%');\n\nif ($defineProperty) {\n\ttry {\n\t\t$defineProperty({}, 'a', { value: 1 });\n\t} catch (e) {\n\t\t// IE 8 has a broken defineProperty\n\t\t$defineProperty = null;\n\t}\n}\n\nmodule.exports = function callBind(originalFunction) {\n\tvar func = $reflectApply(bind, $call, arguments);\n\tif ($gOPD && $defineProperty) {\n\t\tvar desc = $gOPD(func, 'length');\n\t\tif (desc.configurable) {\n\t\t\t// original length, plus the receiver, minus any additional arguments (after the receiver)\n\t\t\t$defineProperty(\n\t\t\t\tfunc,\n\t\t\t\t'length',\n\t\t\t\t{ value: 1 + $max(0, originalFunction.length - (arguments.length - 1)) }\n\t\t\t);\n\t\t}\n\t}\n\treturn func;\n};\n\nvar applyBind = function applyBind() {\n\treturn $reflectApply(bind, $apply, arguments);\n};\n\nif ($defineProperty) {\n\t$defineProperty(module.exports, 'apply', { value: applyBind });\n} else {\n\tmodule.exports.apply = applyBind;\n}\n","/*global window, global*/\nvar util = require(\"util\")\nvar assert = require(\"assert\")\nfunction now() { return new Date().getTime() }\n\nvar slice = Array.prototype.slice\nvar console\nvar times = {}\n\nif (typeof global !== \"undefined\" && global.console) {\n console = global.console\n} else if (typeof window !== \"undefined\" && window.console) {\n console = window.console\n} else {\n console = {}\n}\n\nvar functions = [\n [log, \"log\"],\n [info, \"info\"],\n [warn, \"warn\"],\n [error, \"error\"],\n [time, \"time\"],\n [timeEnd, \"timeEnd\"],\n [trace, \"trace\"],\n [dir, \"dir\"],\n [consoleAssert, \"assert\"]\n]\n\nfor (var i = 0; i < functions.length; i++) {\n var tuple = functions[i]\n var f = tuple[0]\n var name = tuple[1]\n\n if (!console[name]) {\n console[name] = f\n }\n}\n\nmodule.exports = console\n\nfunction log() {}\n\nfunction info() {\n console.log.apply(console, arguments)\n}\n\nfunction warn() {\n console.log.apply(console, arguments)\n}\n\nfunction error() {\n console.warn.apply(console, arguments)\n}\n\nfunction time(label) {\n times[label] = now()\n}\n\nfunction timeEnd(label) {\n var time = times[label]\n if (!time) {\n throw new Error(\"No such label: \" + label)\n }\n\n delete times[label]\n var duration = now() - time\n console.log(label + \": \" + duration + \"ms\")\n}\n\nfunction trace() {\n var err = new Error()\n err.name = \"Trace\"\n err.message = util.format.apply(null, arguments)\n console.error(err.stack)\n}\n\nfunction dir(object) {\n console.log(util.inspect(object) + \"\\n\")\n}\n\nfunction consoleAssert(expression) {\n if (!expression) {\n var arr = slice.call(arguments, 1)\n assert.ok(false, util.format.apply(null, arr))\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 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","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","'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","module.exports = function (it, Constructor, name) {\n if (!(it instanceof Constructor)) {\n throw TypeError('Incorrect ' + (name ? name + ' ' : '') + 'invocation');\n } return it;\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","'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 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 bind = require('../internals/function-bind-context');\nvar IndexedObject = require('../internals/indexed-object');\nvar toObject = require('../internals/to-object');\nvar toLength = require('../internals/to-length');\nvar arraySpeciesCreate = require('../internals/array-species-create');\n\nvar push = [].push;\n\n// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex }` methods implementation\nvar createMethod = function (TYPE) {\n var IS_MAP = TYPE == 1;\n var IS_FILTER = TYPE == 2;\n var IS_SOME = TYPE == 3;\n var IS_EVERY = TYPE == 4;\n var IS_FIND_INDEX = TYPE == 6;\n var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;\n return function ($this, callbackfn, that, specificCreate) {\n var O = toObject($this);\n var self = IndexedObject(O);\n var boundFunction = bind(callbackfn, that, 3);\n var length = toLength(self.length);\n var index = 0;\n var create = specificCreate || arraySpeciesCreate;\n var target = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;\n var value, result;\n for (;length > index; index++) if (NO_HOLES || index in self) {\n value = self[index];\n result = boundFunction(value, index, O);\n if (TYPE) {\n if (IS_MAP) target[index] = result; // map\n else if (result) switch (TYPE) {\n case 3: return true; // some\n case 5: return value; // find\n case 6: return index; // findIndex\n case 2: push.call(target, value); // filter\n } else if (IS_EVERY) return false; // every\n }\n }\n return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.forEach` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.foreach\n forEach: createMethod(0),\n // `Array.prototype.map` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.map\n map: createMethod(1),\n // `Array.prototype.filter` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.filter\n filter: createMethod(2),\n // `Array.prototype.some` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.some\n some: createMethod(3),\n // `Array.prototype.every` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.every\n every: createMethod(4),\n // `Array.prototype.find` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.find\n find: createMethod(5),\n // `Array.prototype.findIndex` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.findIndex\n findIndex: createMethod(6)\n};\n","var 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 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","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 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 anObject = require('../internals/an-object');\n\n// call something on iterator step with safe closing on error\nmodule.exports = function (iterator, fn, value, ENTRIES) {\n try {\n return ENTRIES ? fn(anObject(value)[0], value[1]) : fn(value);\n // 7.4.6 IteratorClose(iterator, completion)\n } catch (error) {\n var returnMethod = iterator['return'];\n if (returnMethod !== undefined) anObject(returnMethod.call(iterator));\n throw error;\n }\n};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar SAFE_CLOSING = false;\n\ntry {\n var called = 0;\n var iteratorWithReturn = {\n next: function () {\n return { done: !!called++ };\n },\n 'return': function () {\n SAFE_CLOSING = true;\n }\n };\n iteratorWithReturn[ITERATOR] = function () {\n return this;\n };\n // eslint-disable-next-line no-throw-literal\n Array.from(iteratorWithReturn, function () { throw 2; });\n} catch (error) { /* empty */ }\n\nmodule.exports = function (exec, SKIP_CLOSING) {\n if (!SKIP_CLOSING && !SAFE_CLOSING) return false;\n var ITERATION_SUPPORT = false;\n try {\n var object = {};\n object[ITERATOR] = function () {\n return {\n next: function () {\n return { done: ITERATION_SUPPORT = true };\n }\n };\n };\n exec(object);\n } catch (error) { /* empty */ }\n return ITERATION_SUPPORT;\n};\n","var toString = {}.toString;\n\nmodule.exports = function (it) {\n return toString.call(it).slice(8, -1);\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","'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 $ = 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 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 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","'use strict';\nvar IteratorPrototype = require('../internals/iterators-core').IteratorPrototype;\nvar create = require('../internals/object-create');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar Iterators = require('../internals/iterators');\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (IteratorConstructor, NAME, next) {\n var TO_STRING_TAG = NAME + ' Iterator';\n IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(1, next) });\n setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);\n Iterators[TO_STRING_TAG] = returnThis;\n return IteratorConstructor;\n};\n","var 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 (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\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","'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 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 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","// 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 getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('navigator', 'userAgent') || '';\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","// 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 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","module.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\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","var fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n return Object.isExtensible(Object.preventExtensions({}));\n});\n","var aFunction = require('../internals/a-function');\n\n// optional / simple context binding\nmodule.exports = function (fn, that, length) {\n aFunction(fn);\n if (that === undefined) return fn;\n switch (length) {\n case 0: return function () {\n return fn.call(that);\n };\n case 1: return function (a) {\n return fn.call(that, a);\n };\n case 2: return function (a, b) {\n return fn.call(that, a, b);\n };\n case 3: return function (a, b, c) {\n return fn.call(that, a, b, c);\n };\n }\n return function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","var 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 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 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 hasOwnProperty = {}.hasOwnProperty;\n\nmodule.exports = function (it, key) {\n return hasOwnProperty.call(it, key);\n};\n","module.exports = {};\n","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\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 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 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","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 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 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 wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayPrototype = Array.prototype;\n\n// check on default Array iterator\nmodule.exports = function (it) {\n return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);\n};\n","var classof = require('../internals/classof-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\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","module.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n","module.exports = false;\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","'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","module.exports = {};\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 inspectSource = require('../internals/inspect-source');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = typeof WeakMap === 'function' && /native code/.test(inspectSource(WeakMap));\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","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 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 DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar anObject = require('../internals/an-object');\nvar toPrimitive = require('../internals/to-primitive');\n\nvar nativeDefineProperty = Object.defineProperty;\n\n// `Object.defineProperty` method\n// https://tc39.github.io/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? nativeDefineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPrimitive(P, true);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return nativeDefineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar 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 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","exports.f = Object.getOwnPropertySymbols;\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 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 internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\n// `Object.keys` method\n// https://tc39.github.io/ecma262/#sec-object.keys\nmodule.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n};\n","'use strict';\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 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","'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 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 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 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 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","'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","'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';\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","// `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 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","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar definePropertyModule = require('../internals/object-define-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (CONSTRUCTOR_NAME) {\n var Constructor = getBuiltIn(CONSTRUCTOR_NAME);\n var defineProperty = definePropertyModule.f;\n\n if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) {\n defineProperty(Constructor, SPECIES, {\n configurable: true,\n get: function () { return this; }\n });\n }\n};\n","var defineProperty = require('../internals/object-define-property').f;\nvar has = require('../internals/has');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\n\nmodule.exports = function (it, TAG, STATIC) {\n if (it && !has(it = STATIC ? it : it.prototype, TO_STRING_TAG)) {\n defineProperty(it, TO_STRING_TAG, { configurable: true, value: TAG });\n }\n};\n","var 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 global = require('../internals/global');\nvar setGlobal = require('../internals/set-global');\n\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || setGlobal(SHARED, {});\n\nmodule.exports = store;\n","var IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.6.5',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2020 Denis Pushkarev (zloirock.ru)'\n});\n","var toInteger = require('../internals/to-integer');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\n// `String.prototype.{ codePointAt, at }` methods implementation\nvar createMethod = function (CONVERT_TO_STRING) {\n return function ($this, pos) {\n var S = String(requireObjectCoercible($this));\n var position = toInteger(pos);\n var size = S.length;\n var first, second;\n if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;\n first = S.charCodeAt(position);\n return first < 0xD800 || first > 0xDBFF || position + 1 === size\n || (second = S.charCodeAt(position + 1)) < 0xDC00 || second > 0xDFFF\n ? CONVERT_TO_STRING ? S.charAt(position) : first\n : CONVERT_TO_STRING ? S.slice(position, position + 2) : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;\n };\n};\n\nmodule.exports = {\n // `String.prototype.codePointAt` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.codepointat\n codeAt: createMethod(false),\n // `String.prototype.at` method\n // https://github.com/mathiasbynens/String.prototype.at\n charAt: createMethod(true)\n};\n","var 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","// 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 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 toInteger = require('../internals/to-integer');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.github.io/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toInteger(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","var requireObjectCoercible = require('../internals/require-object-coercible');\n\n// `ToObject` abstract operation\n// https://tc39.github.io/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return Object(requireObjectCoercible(argument));\n};\n","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 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 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 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 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","'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 $ = 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","'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 $ = 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 toIndexedObject = require('../internals/to-indexed-object');\nvar addToUnscopables = require('../internals/add-to-unscopables');\nvar Iterators = require('../internals/iterators');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineIterator = require('../internals/define-iterator');\n\nvar ARRAY_ITERATOR = 'Array Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR);\n\n// `Array.prototype.entries` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.entries\n// `Array.prototype.keys` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.keys\n// `Array.prototype.values` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.values\n// `Array.prototype[@@iterator]` method\n// https://tc39.github.io/ecma262/#sec-array.prototype-@@iterator\n// `CreateArrayIterator` internal method\n// https://tc39.github.io/ecma262/#sec-createarrayiterator\nmodule.exports = defineIterator(Array, 'Array', function (iterated, kind) {\n setInternalState(this, {\n type: ARRAY_ITERATOR,\n target: toIndexedObject(iterated), // target\n index: 0, // next index\n kind: kind // kind\n });\n// `%ArrayIteratorPrototype%.next` method\n// https://tc39.github.io/ecma262/#sec-%arrayiteratorprototype%.next\n}, function () {\n var state = getInternalState(this);\n var target = state.target;\n var kind = state.kind;\n var index = state.index++;\n if (!target || index >= target.length) {\n state.target = undefined;\n return { value: undefined, done: true };\n }\n if (kind == 'keys') return { value: index, done: false };\n if (kind == 'values') return { value: target[index], done: false };\n return { value: [index, target[index]], done: false };\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values%\n// https://tc39.github.io/ecma262/#sec-createunmappedargumentsobject\n// https://tc39.github.io/ecma262/#sec-createmappedargumentsobject\nIterators.Arguments = Iterators.Array;\n\n// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n","'use strict';\nvar 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","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 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 $ = 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 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 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","'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","var global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar forEach = require('../internals/array-for-each');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nfor (var COLLECTION_NAME in DOMIterables) {\n var Collection = global[COLLECTION_NAME];\n var CollectionPrototype = Collection && Collection.prototype;\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype && CollectionPrototype.forEach !== forEach) try {\n createNonEnumerableProperty(CollectionPrototype, 'forEach', forEach);\n } catch (error) {\n CollectionPrototype.forEach = forEach;\n }\n}\n","var global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar ArrayIteratorMethods = require('../modules/es.array.iterator');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar ArrayValues = ArrayIteratorMethods.values;\n\nfor (var COLLECTION_NAME in DOMIterables) {\n var Collection = global[COLLECTION_NAME];\n var CollectionPrototype = Collection && Collection.prototype;\n if (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[ITERATOR] !== ArrayValues) try {\n createNonEnumerableProperty(CollectionPrototype, ITERATOR, ArrayValues);\n } catch (error) {\n CollectionPrototype[ITERATOR] = ArrayValues;\n }\n if (!CollectionPrototype[TO_STRING_TAG]) {\n createNonEnumerableProperty(CollectionPrototype, TO_STRING_TAG, COLLECTION_NAME);\n }\n if (DOMIterables[COLLECTION_NAME]) for (var METHOD_NAME in ArrayIteratorMethods) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME]) try {\n createNonEnumerableProperty(CollectionPrototype, METHOD_NAME, ArrayIteratorMethods[METHOD_NAME]);\n } catch (error) {\n CollectionPrototype[METHOD_NAME] = ArrayIteratorMethods[METHOD_NAME];\n }\n }\n }\n}\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"#firstrunwizard .page{display:flex;flex-direction:row;flex-wrap:wrap;margin:auto}#firstrunwizard .page h3{margin:10px 0 10px;line-height:120%;padding:0}#firstrunwizard .page .image{padding:20px;max-width:calc(50% - 40px);flex-grow:1}#firstrunwizard .page .image img{width:100%}#firstrunwizard .page .content{padding:20px;width:100%}#firstrunwizard .page p{margin-bottom:20px}#firstrunwizard .page .description-block:first-child{margin-bottom:20px}#firstrunwizard .page .description{margin:20px;width:auto;flex-grow:1;max-width:calc(50% - 40px)}#firstrunwizard .page ul{margin:10px}#firstrunwizard .page ul li{margin-left:20px;margin-bottom:10px;list-style:circle outside}#firstrunwizard .page a:not(.button):hover,#firstrunwizard .page a:not(.button):focus{text-decoration:underline}#firstrunwizard .page .button{display:inline-block}#firstrunwizard .page .button img{width:16px;height:16px;opacity:.5;margin-top:-3px;vertical-align:middle}#firstrunwizard .content-clients{width:100%;text-align:center}#firstrunwizard .content-clients a{text-decoration:none;display:inline-block}#firstrunwizard .content-clients .clientslinks .appsmall{height:32px;width:32px;position:relative;opacity:.5;vertical-align:middle}#firstrunwizard .content-clients .clientslinks .button{display:inline-block;padding:8px;font-weight:normal;font-size:14px}#firstrunwizard .content-final h3{background-position:0;background-size:16px 16px;padding-left:26px;opacity:.7}#firstrunwizard p a{font-weight:bold;color:var(--color-primary)}#firstrunwizard p a:hover,#firstrunwizard p a:focus{color:var(color-text-light)}#firstrunwizard .footnote{margin-top:40px}#firstrunwizard .modal-wrapper .icon-next{background-color:var(--color-primary);color:var(--color-primary-text);box-shadow:0 2px 8px rgba(0,0,0,.33);left:22px}#firstrunwizard .modal-wrapper .icon-previous{background-color:var(--color-primary-light);color:var(--color-primary-light-text);box-shadow:0 2px 8px rgba(0,0,0,.33);left:22px}.clientslinks{margin-top:20px;margin-bottom:20px}#wizard-values{list-style-type:none;display:flex;flex-wrap:wrap;margin:0}#wizard-values li{display:block;min-width:250px;width:33%;flex-grow:1;margin:20px 0 20px 0}#wizard-values li span{opacity:.7;display:block;height:50px;width:50px;background-size:40px;margin:auto}#wizard-values li h3{margin:10px 0 10px 0;font-size:130%;text-align:center}.details-link{text-align:center}@media only screen and (max-width: 680px){#firstrunwizard .firstrunwizard-header div.logo{background-size:120px}#firstrunwizard h2{font-size:20px}#firstrunwizard .page>div{max-width:100% !important;width:100%}#firstrunwizard .page #wizard-values li{min-width:100%;overflow:hidden;display:flex}#firstrunwizard .page #wizard-values li span{width:44px !important;padding-right:20px;flex-grow:0}#firstrunwizard .page #wizard-values li h3{font-size:12px;text-align:left;flex-grow:1}#firstrunwizard .page.content-final{padding-bottom:50px}.modal-mask .modal-wrapper .next,.prev{top:220px;align-items:start !important}}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/App.vue\"],\"names\":[],\"mappings\":\"AA4CC,sBACC,YAAA,CACA,kBAAA,CACA,cAAA,CACA,WAAA,CAEA,yBACC,kBAAA,CACA,gBAAA,CACA,SAAA,CAED,6BACC,YAAA,CACA,0BAAA,CACA,WAAA,CACA,iCACC,UAAA,CAGF,+BACC,YAAA,CACA,UAAA,CAED,wBACC,kBAAA,CAED,qDACC,kBAAA,CAED,mCACC,WAAA,CACA,UAAA,CACA,WAAA,CACA,0BAAA,CAED,yBACC,WAAA,CACA,4BACC,gBAAA,CACA,kBAAA,CACA,yBAAA,CAID,sFAEC,yBAAA,CAGF,8BACC,oBAAA,CAEA,kCACC,UAAA,CACA,WAAA,CACA,UAAA,CACA,eAAA,CACA,qBAAA,CAKH,iCACC,UAAA,CACA,iBAAA,CACA,mCACC,oBAAA,CACA,oBAAA,CAED,yDACC,WAAA,CACA,UAAA,CACA,iBAAA,CACA,UAAA,CACA,qBAAA,CAED,uDACC,oBAAA,CACA,WAAA,CACA,kBAAA,CACA,cAAA,CAID,kCACC,qBAAA,CACA,yBAAA,CACA,iBAAA,CACA,UAAA,CAGF,oBACC,gBAAA,CACA,0BAAA,CACA,oDAEC,2BAAA,CAIF,0BACC,eAAA,CAKA,0CACC,qCAAA,CACA,+BAAA,CACA,oCAAA,CACA,SAAA,CAGD,8CACC,2CAAA,CACA,qCAAA,CACA,oCAAA,CACA,SAAA,CAKH,cACC,eAAA,CACA,kBAAA,CAGD,eACC,oBAAA,CACA,YAAA,CACA,cAAA,CACA,QAAA,CACA,kBACC,aAAA,CACA,eAAA,CACA,SAAA,CACA,WAAA,CACA,oBAAA,CACA,uBACC,UAAA,CACA,aAAA,CACA,WAAA,CACA,UAAA,CACA,oBAAA,CACA,WAAA,CAED,qBACC,oBAAA,CACA,cAAA,CACA,iBAAA,CAKH,cACC,iBAAA,CAGD,0CAEE,gDACC,qBAAA,CAED,mBACC,cAAA,CAED,0BACC,yBAAA,CACA,UAAA,CAGA,wCACC,cAAA,CACA,eAAA,CACA,YAAA,CACA,6CACC,qBAAA,CACA,kBAAA,CACA,WAAA,CAED,2CACC,cAAA,CACA,eAAA,CACA,WAAA,CAIF,oCACC,mBAAA,CAKH,uCACC,SAAA,CACA,4BAAA,CAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n/* Page styling needs to be unscoped, since we load it separately from the server */\\n#firstrunwizard {\\n\\n\\t.page {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: row;\\n\\t\\tflex-wrap: wrap;\\n\\t\\tmargin: auto;\\n\\n\\t\\th3 {\\n\\t\\t\\tmargin: 10px 0 10px;\\n\\t\\t\\tline-height: 120%;\\n\\t\\t\\tpadding: 0;\\n\\t\\t}\\n\\t\\t.image {\\n\\t\\t\\tpadding: 20px;\\n\\t\\t\\tmax-width: calc(50% - 40px);\\n\\t\\t\\tflex-grow: 1;\\n\\t\\t\\timg {\\n\\t\\t\\t\\twidth: 100%;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t\\t.content {\\n\\t\\t\\tpadding: 20px;\\n\\t\\t\\twidth: 100%;\\n\\t\\t}\\n\\t\\tp {\\n\\t\\t\\tmargin-bottom: 20px;\\n\\t\\t}\\n\\t\\t.description-block:first-child {\\n\\t\\t\\tmargin-bottom: 20px;\\n\\t\\t}\\n\\t\\t.description {\\n\\t\\t\\tmargin: 20px;\\n\\t\\t\\twidth: auto;\\n\\t\\t\\tflex-grow: 1;\\n\\t\\t\\tmax-width: calc(50% - 40px);\\n\\t\\t}\\n\\t\\tul {\\n\\t\\t\\tmargin: 10px;\\n\\t\\t\\tli {\\n\\t\\t\\t\\tmargin-left: 20px;\\n\\t\\t\\t\\tmargin-bottom: 10px;\\n\\t\\t\\t\\tlist-style: circle outside;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t\\ta:not(.button) {\\n\\t\\t\\t&:hover,\\n\\t\\t\\t&:focus {\\n\\t\\t\\t\\ttext-decoration: underline;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t\\t.button {\\n\\t\\t\\tdisplay: inline-block;\\n\\n\\t\\t\\timg {\\n\\t\\t\\t\\twidth: 16px;\\n\\t\\t\\t\\theight: 16px;\\n\\t\\t\\t\\topacity: .5;\\n\\t\\t\\t\\tmargin-top: -3px;\\n\\t\\t\\t\\tvertical-align: middle;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t.content-clients {\\n\\t\\twidth: 100%;\\n\\t\\ttext-align: center;\\n\\t\\ta {\\n\\t\\t\\ttext-decoration: none;\\n\\t\\t\\tdisplay: inline-block;\\n\\t\\t}\\n\\t\\t.clientslinks .appsmall {\\n\\t\\t\\theight: 32px;\\n\\t\\t\\twidth: 32px;\\n\\t\\t\\tposition: relative;\\n\\t\\t\\topacity: .5;\\n\\t\\t\\tvertical-align: middle;\\n\\t\\t}\\n\\t\\t.clientslinks .button {\\n\\t\\t\\tdisplay: inline-block;\\n\\t\\t\\tpadding: 8px;\\n\\t\\t\\tfont-weight: normal;\\n\\t\\t\\tfont-size: 14px;\\n\\t\\t}\\n\\t}\\n\\t.content-final {\\n\\t\\th3 {\\n\\t\\t\\tbackground-position: 0;\\n\\t\\t\\tbackground-size: 16px 16px;\\n\\t\\t\\tpadding-left: 26px;\\n\\t\\t\\topacity: .7;\\n\\t\\t}\\n\\t}\\n\\tp a {\\n\\t\\tfont-weight: bold;\\n\\t\\tcolor: var(--color-primary);\\n\\t\\t&:hover,\\n\\t\\t&:focus {\\n\\t\\t\\tcolor: var(color-text-light);\\n\\t\\t}\\n\\t}\\n\\n\\t.footnote {\\n\\t\\tmargin-top: 40px;\\n\\t}\\n\\n\\t// primary on next button\\n\\t.modal-wrapper {\\n\\t\\t.icon-next {\\n\\t\\t\\tbackground-color: var(--color-primary);\\n\\t\\t\\tcolor: var(--color-primary-text);\\n\\t\\t\\tbox-shadow: 0 2px 8px rgba(0, 0, 0, .33);\\n\\t\\t\\tleft: 22px;\\n\\t\\t}\\n\\n\\t\\t.icon-previous {\\n\\t\\t\\tbackground-color: var(--color-primary-light);\\n\\t\\t\\tcolor: var(--color-primary-light-text);\\n\\t\\t\\tbox-shadow: 0 2px 8px rgba(0, 0, 0, .33);\\n\\t\\t\\tleft: 22px;\\n\\t\\t}\\n\\t}\\n}\\n\\n.clientslinks {\\n\\tmargin-top: 20px;\\n\\tmargin-bottom: 20px;\\n}\\n\\n#wizard-values {\\n\\tlist-style-type: none;\\n\\tdisplay: flex;\\n\\tflex-wrap: wrap;\\n\\tmargin: 0;\\n\\tli {\\n\\t\\tdisplay: block;\\n\\t\\tmin-width: 250px;\\n\\t\\twidth: 33%;\\n\\t\\tflex-grow: 1;\\n\\t\\tmargin: 20px 0 20px 0;\\n\\t\\tspan {\\n\\t\\t\\topacity: .7;\\n\\t\\t\\tdisplay: block;\\n\\t\\t\\theight: 50px;\\n\\t\\t\\twidth: 50px;\\n\\t\\t\\tbackground-size: 40px;\\n\\t\\t\\tmargin: auto;\\n\\t\\t}\\n\\t\\th3 {\\n\\t\\t\\tmargin: 10px 0 10px 0;\\n\\t\\t\\tfont-size: 130%;\\n\\t\\t\\ttext-align: center;\\n\\t\\t}\\n\\t}\\n}\\n\\n.details-link {\\n\\ttext-align: center;\\n}\\n\\n@media only screen and (max-width: 680px) {\\n\\t#firstrunwizard {\\n\\t\\t.firstrunwizard-header div.logo {\\n\\t\\t\\tbackground-size: 120px;\\n\\t\\t}\\n\\t\\th2 {\\n\\t\\t\\tfont-size: 20px;\\n\\t\\t}\\n\\t\\t.page > div {\\n\\t\\t\\tmax-width: 100% !important;\\n\\t\\t\\twidth: 100%;\\n\\t\\t}\\n\\t\\t.page {\\n\\t\\t\\t#wizard-values li {\\n\\t\\t\\t\\tmin-width: 100%;\\n\\t\\t\\t\\toverflow: hidden;\\n\\t\\t\\t\\tdisplay: flex;\\n\\t\\t\\t\\tspan {\\n\\t\\t\\t\\t\\twidth: 44px !important;\\n\\t\\t\\t\\t\\tpadding-right: 20px;\\n\\t\\t\\t\\t\\tflex-grow: 0;\\n\\t\\t\\t\\t}\\n\\t\\t\\t\\th3 {\\n\\t\\t\\t\\t\\tfont-size: 12px;\\n\\t\\t\\t\\t\\ttext-align: left;\\n\\t\\t\\t\\t\\tflex-grow: 1;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\n\\t\\t\\t&.content-final {\\n\\t\\t\\t\\tpadding-bottom: 50px;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\t// fix button position on mobile (so that they don't overlap with text)\\n\\t.modal-mask .modal-wrapper .next, .prev {\\n\\t\\ttop: 220px;\\n\\t\\talign-items: start !important;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".modal-mask[data-v-e75b1dfa]{background-color:rgba(0,0,0,.7)}.modal-mask[data-v-e75b1dfa] .modal-wrapper{position:relative}.modal-mask[data-v-e75b1dfa] .modal-container{display:flex;flex-direction:column;position:relative}.modal-mask .modal-body[data-v-e75b1dfa]{flex-grow:1;display:flex;overflow-x:hidden;overflow-y:auto}.modal-mask .modal-body>div[data-v-e75b1dfa]{display:flex;flex-grow:1;align-items:center;justify-content:center}.modal-header[data-v-e75b1dfa]{flex-shrink:0}.modal-header .firstrunwizard-header[data-v-e75b1dfa]{padding:20px 12px;background:var(--color-primary) var(--image-login-background) no-repeat 50% 50%;background-size:cover;color:var(--color-primary-text);text-align:center}.modal-header .firstrunwizard-header .logo[data-v-e75b1dfa]{background:var(--image-logo) no-repeat center;background-size:contain;width:175px;height:100px;max-height:20vh;margin:0 auto}.modal-header .firstrunwizard-header h2[data-v-e75b1dfa]{font-size:20px;margin-top:7px;line-height:150%;color:var(--color-primary-text);font-weight:300;padding:0 0 10px}.modal-default-button[data-v-e75b1dfa]{align-self:flex-end}.modal-footer[data-v-e75b1dfa]{overflow:hidden;position:absolute;display:flex;bottom:0;right:0}.modal-footer button[data-v-e75b1dfa]{margin:10px}.next-enter-active[data-v-e75b1dfa],.next-leave-active[data-v-e75b1dfa],.previous-enter-active[data-v-e75b1dfa],.previous-leave-active[data-v-e75b1dfa]{transition:transform .1s,opacity .25s}.next-enter[data-v-e75b1dfa]{transform:translateX(50%);opacity:0}.next-leave-to[data-v-e75b1dfa]{transform:translateX(-50%);opacity:0}.previous-enter[data-v-e75b1dfa]{transform:translateX(-50%);opacity:0}.previous-leave-to[data-v-e75b1dfa]{transform:translateX(50%);opacity:0}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/App.vue\"],\"names\":[],\"mappings\":\"AAqPA,6BACC,+BAAA,CAEA,4CACC,iBAAA,CAGD,8CACC,YAAA,CACA,qBAAA,CACA,iBAAA,CAGD,yCACC,WAAA,CACA,YAAA,CACA,iBAAA,CACA,eAAA,CAEA,6CACC,YAAA,CACA,WAAA,CACA,kBAAA,CACA,sBAAA,CAKH,+BACC,aAAA,CAEA,sDACC,iBAAA,CACA,+EAAA,CACA,qBAAA,CACA,+BAAA,CACA,iBAAA,CACA,4DACC,6CAAA,CACA,uBAAA,CACA,WAAA,CACA,YAAA,CACA,eAAA,CACA,aAAA,CAED,yDACC,cAAA,CACA,cAAA,CACA,gBAAA,CACA,+BAAA,CACA,eAAA,CACA,gBAAA,CAKH,uCACC,mBAAA,CAGD,+BACC,eAAA,CACA,iBAAA,CACA,YAAA,CACA,QAAA,CACA,OAAA,CAGD,sCACC,WAAA,CAID,wJAEC,qCAAA,CAGD,6BACC,yBAAA,CACA,SAAA,CAGD,gCACC,0BAAA,CACA,SAAA,CAGD,iCACC,0BAAA,CACA,SAAA,CAGD,oCACC,yBAAA,CACA,SAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.modal-mask {\\n\\tbackground-color: rgba(0, 0, 0, 0.7);\\n\\n\\t&::v-deep .modal-wrapper {\\n\\t\\tposition: relative;\\n\\t}\\n\\n\\t&::v-deep .modal-container {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-direction: column;\\n\\t\\tposition: relative;\\n\\t}\\n\\n\\t.modal-body {\\n\\t\\tflex-grow: 1;\\n\\t\\tdisplay: flex;\\n\\t\\toverflow-x: hidden;\\n\\t\\toverflow-y: auto;\\n\\n\\t\\t& > div {\\n\\t\\t\\tdisplay: flex;\\n\\t\\t\\tflex-grow: 1;\\n\\t\\t\\talign-items: center;\\n\\t\\t\\tjustify-content: center;\\n\\t\\t}\\n\\t}\\n}\\n\\n.modal-header {\\n\\tflex-shrink: 0;\\n\\n\\t.firstrunwizard-header {\\n\\t\\tpadding: 20px 12px;\\n\\t\\tbackground: var(--color-primary) var(--image-login-background) no-repeat 50% 50%;\\n\\t\\tbackground-size: cover;\\n\\t\\tcolor: var(--color-primary-text);\\n\\t\\ttext-align: center;\\n\\t\\t.logo {\\n\\t\\t\\tbackground: var(--image-logo) no-repeat center;\\n\\t\\t\\tbackground-size: contain;\\n\\t\\t\\twidth: 175px;\\n\\t\\t\\theight: 100px;\\n\\t\\t\\tmax-height: 20vh;\\n\\t\\t\\tmargin: 0 auto;\\n\\t\\t}\\n\\t\\th2 {\\n\\t\\t\\tfont-size: 20px;\\n\\t\\t\\tmargin-top: 7px;\\n\\t\\t\\tline-height: 150%;\\n\\t\\t\\tcolor: var(--color-primary-text);\\n\\t\\t\\tfont-weight: 300;\\n\\t\\t\\tpadding: 0 0 10px;\\n\\t\\t}\\n\\t}\\n}\\n\\n.modal-default-button {\\n\\talign-self: flex-end;\\n}\\n\\n.modal-footer {\\n\\toverflow: hidden;\\n\\tposition: absolute;\\n\\tdisplay: flex;\\n\\tbottom: 0;\\n\\tright: 0;\\n}\\n\\n.modal-footer button {\\n\\tmargin: 10px;\\n}\\n\\n/* Transitions */\\n.next-enter-active, .next-leave-active,\\n.previous-enter-active, .previous-leave-active {\\n\\ttransition: transform .1s, opacity .25s;\\n}\\n\\n.next-enter {\\n\\ttransform: translateX(50%);\\n\\topacity: 0;\\n}\\n\\n.next-leave-to {\\n\\ttransform: translateX(-50%);\\n\\topacity: 0;\\n}\\n\\n.previous-enter {\\n\\ttransform: translateX(-50%);\\n\\topacity: 0;\\n}\\n\\n.previous-leave-to {\\n\\ttransform: translateX(50%);\\n\\topacity: 0;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"video[data-v-70de3a6e]{width:100%;height:100%;object-fit:cover}.video-wrapper[data-v-70de3a6e]{background-color:var(--color-primary)}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/IntroVideo.vue\"],\"names\":[],\"mappings\":\"AAuDA,uBACC,UAAA,CACA,WAAA,CACA,gBAAA,CAGD,gCACC,qCAAA\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\nvideo {\\n\\twidth: 100%;\\n\\theight: 100%;\\n\\tobject-fit: cover;\\n}\\n\\n.video-wrapper {\\n\\tbackground-color: var(--color-primary);\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\"use strict\";\n\n/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n*/\nmodule.exports = function (cssWithMappingToString) {\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 = \"\";\n var needLayer = typeof item[5] !== \"undefined\";\n\n if (item[4]) {\n content += \"@supports (\".concat(item[4], \") {\");\n }\n\n if (item[2]) {\n content += \"@media \".concat(item[2], \" {\");\n }\n\n if (needLayer) {\n content += \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\");\n }\n\n content += cssWithMappingToString(item);\n\n if (needLayer) {\n content += \"}\";\n }\n\n if (item[2]) {\n content += \"}\";\n }\n\n if (item[4]) {\n content += \"}\";\n }\n\n return content;\n }).join(\"\");\n }; // import a list of modules into the list\n\n\n list.i = function i(modules, media, dedupe, supports, layer) {\n if (typeof modules === \"string\") {\n modules = [[null, modules, undefined]];\n }\n\n var alreadyImportedModules = {};\n\n if (dedupe) {\n for (var k = 0; k < this.length; k++) {\n var id = this[k][0];\n\n if (id != null) {\n alreadyImportedModules[id] = true;\n }\n }\n }\n\n for (var _k = 0; _k < modules.length; _k++) {\n var item = [].concat(modules[_k]);\n\n if (dedupe && alreadyImportedModules[item[0]]) {\n continue;\n }\n\n if (typeof layer !== \"undefined\") {\n if (typeof item[5] === \"undefined\") {\n item[5] = layer;\n } else {\n item[1] = \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\").concat(item[1], \"}\");\n item[5] = layer;\n }\n }\n\n if (media) {\n if (!item[2]) {\n item[2] = media;\n } else {\n item[1] = \"@media \".concat(item[2], \" {\").concat(item[1], \"}\");\n item[2] = media;\n }\n }\n\n if (supports) {\n if (!item[4]) {\n item[4] = \"\".concat(supports);\n } else {\n item[1] = \"@supports (\".concat(item[4], \") {\").concat(item[1], \"}\");\n item[4] = supports;\n }\n }\n\n list.push(item);\n }\n };\n\n return list;\n};","\"use strict\";\n\nmodule.exports = function (item) {\n var content = item[1];\n var cssMapping = item[3];\n\n if (!cssMapping) {\n return content;\n }\n\n if (typeof btoa === \"function\") {\n var base64 = btoa(unescape(encodeURIComponent(JSON.stringify(cssMapping))));\n var data = \"sourceMappingURL=data:application/json;charset=utf-8;base64,\".concat(base64);\n var sourceMapping = \"/*# \".concat(data, \" */\");\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};","'use strict';\n\nvar keys = require('object-keys');\nvar hasSymbols = typeof Symbol === 'function' && typeof Symbol('foo') === 'symbol';\n\nvar toStr = Object.prototype.toString;\nvar concat = Array.prototype.concat;\nvar origDefineProperty = Object.defineProperty;\n\nvar isFunction = function (fn) {\n\treturn typeof fn === 'function' && toStr.call(fn) === '[object Function]';\n};\n\nvar arePropertyDescriptorsSupported = function () {\n\tvar obj = {};\n\ttry {\n\t\torigDefineProperty(obj, 'x', { enumerable: false, value: obj });\n\t\t// eslint-disable-next-line no-unused-vars, no-restricted-syntax\n\t\tfor (var _ in obj) { // jscs:ignore disallowUnusedVariables\n\t\t\treturn false;\n\t\t}\n\t\treturn obj.x === obj;\n\t} catch (e) { /* this is IE 8. */\n\t\treturn false;\n\t}\n};\nvar supportsDescriptors = origDefineProperty && arePropertyDescriptorsSupported();\n\nvar defineProperty = function (object, name, value, predicate) {\n\tif (name in object && (!isFunction(predicate) || !predicate())) {\n\t\treturn;\n\t}\n\tif (supportsDescriptors) {\n\t\torigDefineProperty(object, name, {\n\t\t\tconfigurable: true,\n\t\t\tenumerable: false,\n\t\t\tvalue: value,\n\t\t\twritable: true\n\t\t});\n\t} else {\n\t\tobject[name] = value;\n\t}\n};\n\nvar defineProperties = function (object, map) {\n\tvar predicates = arguments.length > 2 ? arguments[2] : {};\n\tvar props = keys(map);\n\tif (hasSymbols) {\n\t\tprops = concat.call(props, Object.getOwnPropertySymbols(map));\n\t}\n\tfor (var i = 0; i < props.length; i += 1) {\n\t\tdefineProperty(object, props[i], map[props[i]], predicates[props[i]]);\n\t}\n};\n\ndefineProperties.supportsDescriptors = !!supportsDescriptors;\n\nmodule.exports = defineProperties;\n","'use strict';\n\nvar GetIntrinsic = require('get-intrinsic');\n\nvar $gOPD = GetIntrinsic('%Object.getOwnPropertyDescriptor%', true);\nif ($gOPD) {\n\ttry {\n\t\t$gOPD([], 'length');\n\t} catch (e) {\n\t\t// IE 8 has a broken gOPD\n\t\t$gOPD = null;\n\t}\n}\n\nmodule.exports = $gOPD;\n","/**\n * Code refactored from Mozilla Developer Network:\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/assign\n */\n\n'use strict';\n\nfunction assign(target, firstSource) {\n if (target === undefined || target === null) {\n throw new TypeError('Cannot convert first argument to object');\n }\n\n var to = Object(target);\n for (var i = 1; i < arguments.length; i++) {\n var nextSource = arguments[i];\n if (nextSource === undefined || nextSource === null) {\n continue;\n }\n\n var keysArray = Object.keys(Object(nextSource));\n for (var nextIndex = 0, len = keysArray.length; nextIndex < len; nextIndex++) {\n var nextKey = keysArray[nextIndex];\n var desc = Object.getOwnPropertyDescriptor(nextSource, nextKey);\n if (desc !== undefined && desc.enumerable) {\n to[nextKey] = nextSource[nextKey];\n }\n }\n }\n return to;\n}\n\nfunction polyfill() {\n if (!Object.assign) {\n Object.defineProperty(Object, 'assign', {\n enumerable: false,\n configurable: true,\n writable: true,\n value: assign\n });\n }\n}\n\nmodule.exports = {\n assign: assign,\n polyfill: polyfill\n};\n","\nvar hasOwn = Object.prototype.hasOwnProperty;\nvar toString = Object.prototype.toString;\n\nmodule.exports = function forEach (obj, fn, ctx) {\n if (toString.call(fn) !== '[object Function]') {\n throw new TypeError('iterator must be a function');\n }\n var l = obj.length;\n if (l === +l) {\n for (var i = 0; i < l; i++) {\n fn.call(ctx, obj[i], i, obj);\n }\n } else {\n for (var k in obj) {\n if (hasOwn.call(obj, k)) {\n fn.call(ctx, obj[k], k, obj);\n }\n }\n }\n};\n\n","'use strict';\n\n/* eslint no-invalid-this: 1 */\n\nvar ERROR_MESSAGE = 'Function.prototype.bind called on incompatible ';\nvar slice = Array.prototype.slice;\nvar toStr = Object.prototype.toString;\nvar funcType = '[object Function]';\n\nmodule.exports = function bind(that) {\n var target = this;\n if (typeof target !== 'function' || toStr.call(target) !== funcType) {\n throw new TypeError(ERROR_MESSAGE + target);\n }\n var args = slice.call(arguments, 1);\n\n var bound;\n var binder = function () {\n if (this instanceof bound) {\n var result = target.apply(\n this,\n args.concat(slice.call(arguments))\n );\n if (Object(result) === result) {\n return result;\n }\n return this;\n } else {\n return target.apply(\n that,\n args.concat(slice.call(arguments))\n );\n }\n };\n\n var boundLength = Math.max(0, target.length - args.length);\n var boundArgs = [];\n for (var i = 0; i < boundLength; i++) {\n boundArgs.push('$' + i);\n }\n\n bound = Function('binder', 'return function (' + boundArgs.join(',') + '){ return binder.apply(this,arguments); }')(binder);\n\n if (target.prototype) {\n var Empty = function Empty() {};\n Empty.prototype = target.prototype;\n bound.prototype = new Empty();\n Empty.prototype = null;\n }\n\n return bound;\n};\n","'use strict';\n\nvar implementation = require('./implementation');\n\nmodule.exports = Function.prototype.bind || implementation;\n","'use strict';\n\nvar undefined;\n\nvar $SyntaxError = SyntaxError;\nvar $Function = Function;\nvar $TypeError = TypeError;\n\n// eslint-disable-next-line consistent-return\nvar getEvalledConstructor = function (expressionSyntax) {\n\ttry {\n\t\treturn $Function('\"use strict\"; return (' + expressionSyntax + ').constructor;')();\n\t} catch (e) {}\n};\n\nvar $gOPD = Object.getOwnPropertyDescriptor;\nif ($gOPD) {\n\ttry {\n\t\t$gOPD({}, '');\n\t} catch (e) {\n\t\t$gOPD = null; // this is IE 8, which has a broken gOPD\n\t}\n}\n\nvar throwTypeError = function () {\n\tthrow new $TypeError();\n};\nvar ThrowTypeError = $gOPD\n\t? (function () {\n\t\ttry {\n\t\t\t// eslint-disable-next-line no-unused-expressions, no-caller, no-restricted-properties\n\t\t\targuments.callee; // IE 8 does not throw here\n\t\t\treturn throwTypeError;\n\t\t} catch (calleeThrows) {\n\t\t\ttry {\n\t\t\t\t// IE 8 throws on Object.getOwnPropertyDescriptor(arguments, '')\n\t\t\t\treturn $gOPD(arguments, 'callee').get;\n\t\t\t} catch (gOPDthrows) {\n\t\t\t\treturn throwTypeError;\n\t\t\t}\n\t\t}\n\t}())\n\t: throwTypeError;\n\nvar hasSymbols = require('has-symbols')();\n\nvar getProto = Object.getPrototypeOf || function (x) { return x.__proto__; }; // eslint-disable-line no-proto\n\nvar needsEval = {};\n\nvar TypedArray = typeof Uint8Array === 'undefined' ? undefined : getProto(Uint8Array);\n\nvar INTRINSICS = {\n\t'%AggregateError%': typeof AggregateError === 'undefined' ? undefined : AggregateError,\n\t'%Array%': Array,\n\t'%ArrayBuffer%': typeof ArrayBuffer === 'undefined' ? undefined : ArrayBuffer,\n\t'%ArrayIteratorPrototype%': hasSymbols ? getProto([][Symbol.iterator]()) : undefined,\n\t'%AsyncFromSyncIteratorPrototype%': undefined,\n\t'%AsyncFunction%': needsEval,\n\t'%AsyncGenerator%': needsEval,\n\t'%AsyncGeneratorFunction%': needsEval,\n\t'%AsyncIteratorPrototype%': needsEval,\n\t'%Atomics%': typeof Atomics === 'undefined' ? undefined : Atomics,\n\t'%BigInt%': typeof BigInt === 'undefined' ? undefined : BigInt,\n\t'%Boolean%': Boolean,\n\t'%DataView%': typeof DataView === 'undefined' ? undefined : DataView,\n\t'%Date%': Date,\n\t'%decodeURI%': decodeURI,\n\t'%decodeURIComponent%': decodeURIComponent,\n\t'%encodeURI%': encodeURI,\n\t'%encodeURIComponent%': encodeURIComponent,\n\t'%Error%': Error,\n\t'%eval%': eval, // eslint-disable-line no-eval\n\t'%EvalError%': EvalError,\n\t'%Float32Array%': typeof Float32Array === 'undefined' ? undefined : Float32Array,\n\t'%Float64Array%': typeof Float64Array === 'undefined' ? undefined : Float64Array,\n\t'%FinalizationRegistry%': typeof FinalizationRegistry === 'undefined' ? undefined : FinalizationRegistry,\n\t'%Function%': $Function,\n\t'%GeneratorFunction%': needsEval,\n\t'%Int8Array%': typeof Int8Array === 'undefined' ? undefined : Int8Array,\n\t'%Int16Array%': typeof Int16Array === 'undefined' ? undefined : Int16Array,\n\t'%Int32Array%': typeof Int32Array === 'undefined' ? undefined : Int32Array,\n\t'%isFinite%': isFinite,\n\t'%isNaN%': isNaN,\n\t'%IteratorPrototype%': hasSymbols ? getProto(getProto([][Symbol.iterator]())) : undefined,\n\t'%JSON%': typeof JSON === 'object' ? JSON : undefined,\n\t'%Map%': typeof Map === 'undefined' ? undefined : Map,\n\t'%MapIteratorPrototype%': typeof Map === 'undefined' || !hasSymbols ? undefined : getProto(new Map()[Symbol.iterator]()),\n\t'%Math%': Math,\n\t'%Number%': Number,\n\t'%Object%': Object,\n\t'%parseFloat%': parseFloat,\n\t'%parseInt%': parseInt,\n\t'%Promise%': typeof Promise === 'undefined' ? undefined : Promise,\n\t'%Proxy%': typeof Proxy === 'undefined' ? undefined : Proxy,\n\t'%RangeError%': RangeError,\n\t'%ReferenceError%': ReferenceError,\n\t'%Reflect%': typeof Reflect === 'undefined' ? undefined : Reflect,\n\t'%RegExp%': RegExp,\n\t'%Set%': typeof Set === 'undefined' ? undefined : Set,\n\t'%SetIteratorPrototype%': typeof Set === 'undefined' || !hasSymbols ? undefined : getProto(new Set()[Symbol.iterator]()),\n\t'%SharedArrayBuffer%': typeof SharedArrayBuffer === 'undefined' ? undefined : SharedArrayBuffer,\n\t'%String%': String,\n\t'%StringIteratorPrototype%': hasSymbols ? getProto(''[Symbol.iterator]()) : undefined,\n\t'%Symbol%': hasSymbols ? Symbol : undefined,\n\t'%SyntaxError%': $SyntaxError,\n\t'%ThrowTypeError%': ThrowTypeError,\n\t'%TypedArray%': TypedArray,\n\t'%TypeError%': $TypeError,\n\t'%Uint8Array%': typeof Uint8Array === 'undefined' ? undefined : Uint8Array,\n\t'%Uint8ClampedArray%': typeof Uint8ClampedArray === 'undefined' ? undefined : Uint8ClampedArray,\n\t'%Uint16Array%': typeof Uint16Array === 'undefined' ? undefined : Uint16Array,\n\t'%Uint32Array%': typeof Uint32Array === 'undefined' ? undefined : Uint32Array,\n\t'%URIError%': URIError,\n\t'%WeakMap%': typeof WeakMap === 'undefined' ? undefined : WeakMap,\n\t'%WeakRef%': typeof WeakRef === 'undefined' ? undefined : WeakRef,\n\t'%WeakSet%': typeof WeakSet === 'undefined' ? undefined : WeakSet\n};\n\nvar doEval = function doEval(name) {\n\tvar value;\n\tif (name === '%AsyncFunction%') {\n\t\tvalue = getEvalledConstructor('async function () {}');\n\t} else if (name === '%GeneratorFunction%') {\n\t\tvalue = getEvalledConstructor('function* () {}');\n\t} else if (name === '%AsyncGeneratorFunction%') {\n\t\tvalue = getEvalledConstructor('async function* () {}');\n\t} else if (name === '%AsyncGenerator%') {\n\t\tvar fn = doEval('%AsyncGeneratorFunction%');\n\t\tif (fn) {\n\t\t\tvalue = fn.prototype;\n\t\t}\n\t} else if (name === '%AsyncIteratorPrototype%') {\n\t\tvar gen = doEval('%AsyncGenerator%');\n\t\tif (gen) {\n\t\t\tvalue = getProto(gen.prototype);\n\t\t}\n\t}\n\n\tINTRINSICS[name] = value;\n\n\treturn value;\n};\n\nvar LEGACY_ALIASES = {\n\t'%ArrayBufferPrototype%': ['ArrayBuffer', 'prototype'],\n\t'%ArrayPrototype%': ['Array', 'prototype'],\n\t'%ArrayProto_entries%': ['Array', 'prototype', 'entries'],\n\t'%ArrayProto_forEach%': ['Array', 'prototype', 'forEach'],\n\t'%ArrayProto_keys%': ['Array', 'prototype', 'keys'],\n\t'%ArrayProto_values%': ['Array', 'prototype', 'values'],\n\t'%AsyncFunctionPrototype%': ['AsyncFunction', 'prototype'],\n\t'%AsyncGenerator%': ['AsyncGeneratorFunction', 'prototype'],\n\t'%AsyncGeneratorPrototype%': ['AsyncGeneratorFunction', 'prototype', 'prototype'],\n\t'%BooleanPrototype%': ['Boolean', 'prototype'],\n\t'%DataViewPrototype%': ['DataView', 'prototype'],\n\t'%DatePrototype%': ['Date', 'prototype'],\n\t'%ErrorPrototype%': ['Error', 'prototype'],\n\t'%EvalErrorPrototype%': ['EvalError', 'prototype'],\n\t'%Float32ArrayPrototype%': ['Float32Array', 'prototype'],\n\t'%Float64ArrayPrototype%': ['Float64Array', 'prototype'],\n\t'%FunctionPrototype%': ['Function', 'prototype'],\n\t'%Generator%': ['GeneratorFunction', 'prototype'],\n\t'%GeneratorPrototype%': ['GeneratorFunction', 'prototype', 'prototype'],\n\t'%Int8ArrayPrototype%': ['Int8Array', 'prototype'],\n\t'%Int16ArrayPrototype%': ['Int16Array', 'prototype'],\n\t'%Int32ArrayPrototype%': ['Int32Array', 'prototype'],\n\t'%JSONParse%': ['JSON', 'parse'],\n\t'%JSONStringify%': ['JSON', 'stringify'],\n\t'%MapPrototype%': ['Map', 'prototype'],\n\t'%NumberPrototype%': ['Number', 'prototype'],\n\t'%ObjectPrototype%': ['Object', 'prototype'],\n\t'%ObjProto_toString%': ['Object', 'prototype', 'toString'],\n\t'%ObjProto_valueOf%': ['Object', 'prototype', 'valueOf'],\n\t'%PromisePrototype%': ['Promise', 'prototype'],\n\t'%PromiseProto_then%': ['Promise', 'prototype', 'then'],\n\t'%Promise_all%': ['Promise', 'all'],\n\t'%Promise_reject%': ['Promise', 'reject'],\n\t'%Promise_resolve%': ['Promise', 'resolve'],\n\t'%RangeErrorPrototype%': ['RangeError', 'prototype'],\n\t'%ReferenceErrorPrototype%': ['ReferenceError', 'prototype'],\n\t'%RegExpPrototype%': ['RegExp', 'prototype'],\n\t'%SetPrototype%': ['Set', 'prototype'],\n\t'%SharedArrayBufferPrototype%': ['SharedArrayBuffer', 'prototype'],\n\t'%StringPrototype%': ['String', 'prototype'],\n\t'%SymbolPrototype%': ['Symbol', 'prototype'],\n\t'%SyntaxErrorPrototype%': ['SyntaxError', 'prototype'],\n\t'%TypedArrayPrototype%': ['TypedArray', 'prototype'],\n\t'%TypeErrorPrototype%': ['TypeError', 'prototype'],\n\t'%Uint8ArrayPrototype%': ['Uint8Array', 'prototype'],\n\t'%Uint8ClampedArrayPrototype%': ['Uint8ClampedArray', 'prototype'],\n\t'%Uint16ArrayPrototype%': ['Uint16Array', 'prototype'],\n\t'%Uint32ArrayPrototype%': ['Uint32Array', 'prototype'],\n\t'%URIErrorPrototype%': ['URIError', 'prototype'],\n\t'%WeakMapPrototype%': ['WeakMap', 'prototype'],\n\t'%WeakSetPrototype%': ['WeakSet', 'prototype']\n};\n\nvar bind = require('function-bind');\nvar hasOwn = require('has');\nvar $concat = bind.call(Function.call, Array.prototype.concat);\nvar $spliceApply = bind.call(Function.apply, Array.prototype.splice);\nvar $replace = bind.call(Function.call, String.prototype.replace);\nvar $strSlice = bind.call(Function.call, String.prototype.slice);\n\n/* adapted from https://github.com/lodash/lodash/blob/4.17.15/dist/lodash.js#L6735-L6744 */\nvar rePropName = /[^%.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|%$))/g;\nvar reEscapeChar = /\\\\(\\\\)?/g; /** Used to match backslashes in property paths. */\nvar stringToPath = function stringToPath(string) {\n\tvar first = $strSlice(string, 0, 1);\n\tvar last = $strSlice(string, -1);\n\tif (first === '%' && last !== '%') {\n\t\tthrow new $SyntaxError('invalid intrinsic syntax, expected closing `%`');\n\t} else if (last === '%' && first !== '%') {\n\t\tthrow new $SyntaxError('invalid intrinsic syntax, expected opening `%`');\n\t}\n\tvar result = [];\n\t$replace(string, rePropName, function (match, number, quote, subString) {\n\t\tresult[result.length] = quote ? $replace(subString, reEscapeChar, '$1') : number || match;\n\t});\n\treturn result;\n};\n/* end adaptation */\n\nvar getBaseIntrinsic = function getBaseIntrinsic(name, allowMissing) {\n\tvar intrinsicName = name;\n\tvar alias;\n\tif (hasOwn(LEGACY_ALIASES, intrinsicName)) {\n\t\talias = LEGACY_ALIASES[intrinsicName];\n\t\tintrinsicName = '%' + alias[0] + '%';\n\t}\n\n\tif (hasOwn(INTRINSICS, intrinsicName)) {\n\t\tvar value = INTRINSICS[intrinsicName];\n\t\tif (value === needsEval) {\n\t\t\tvalue = doEval(intrinsicName);\n\t\t}\n\t\tif (typeof value === 'undefined' && !allowMissing) {\n\t\t\tthrow new $TypeError('intrinsic ' + name + ' exists, but is not available. Please file an issue!');\n\t\t}\n\n\t\treturn {\n\t\t\talias: alias,\n\t\t\tname: intrinsicName,\n\t\t\tvalue: value\n\t\t};\n\t}\n\n\tthrow new $SyntaxError('intrinsic ' + name + ' does not exist!');\n};\n\nmodule.exports = function GetIntrinsic(name, allowMissing) {\n\tif (typeof name !== 'string' || name.length === 0) {\n\t\tthrow new $TypeError('intrinsic name must be a non-empty string');\n\t}\n\tif (arguments.length > 1 && typeof allowMissing !== 'boolean') {\n\t\tthrow new $TypeError('\"allowMissing\" argument must be a boolean');\n\t}\n\n\tvar parts = stringToPath(name);\n\tvar intrinsicBaseName = parts.length > 0 ? parts[0] : '';\n\n\tvar intrinsic = getBaseIntrinsic('%' + intrinsicBaseName + '%', allowMissing);\n\tvar intrinsicRealName = intrinsic.name;\n\tvar value = intrinsic.value;\n\tvar skipFurtherCaching = false;\n\n\tvar alias = intrinsic.alias;\n\tif (alias) {\n\t\tintrinsicBaseName = alias[0];\n\t\t$spliceApply(parts, $concat([0, 1], alias));\n\t}\n\n\tfor (var i = 1, isOwn = true; i < parts.length; i += 1) {\n\t\tvar part = parts[i];\n\t\tvar first = $strSlice(part, 0, 1);\n\t\tvar last = $strSlice(part, -1);\n\t\tif (\n\t\t\t(\n\t\t\t\t(first === '\"' || first === \"'\" || first === '`')\n\t\t\t\t|| (last === '\"' || last === \"'\" || last === '`')\n\t\t\t)\n\t\t\t&& first !== last\n\t\t) {\n\t\t\tthrow new $SyntaxError('property names with quotes must have matching quotes');\n\t\t}\n\t\tif (part === 'constructor' || !isOwn) {\n\t\t\tskipFurtherCaching = true;\n\t\t}\n\n\t\tintrinsicBaseName += '.' + part;\n\t\tintrinsicRealName = '%' + intrinsicBaseName + '%';\n\n\t\tif (hasOwn(INTRINSICS, intrinsicRealName)) {\n\t\t\tvalue = INTRINSICS[intrinsicRealName];\n\t\t} else if (value != null) {\n\t\t\tif (!(part in value)) {\n\t\t\t\tif (!allowMissing) {\n\t\t\t\t\tthrow new $TypeError('base intrinsic for ' + name + ' exists, but the property is not available.');\n\t\t\t\t}\n\t\t\t\treturn void undefined;\n\t\t\t}\n\t\t\tif ($gOPD && (i + 1) >= parts.length) {\n\t\t\t\tvar desc = $gOPD(value, part);\n\t\t\t\tisOwn = !!desc;\n\n\t\t\t\t// By convention, when a data property is converted to an accessor\n\t\t\t\t// property to emulate a data property that does not suffer from\n\t\t\t\t// the override mistake, that accessor's getter is marked with\n\t\t\t\t// an `originalValue` property. Here, when we detect this, we\n\t\t\t\t// uphold the illusion by pretending to see that original data\n\t\t\t\t// property, i.e., returning the value rather than the getter\n\t\t\t\t// itself.\n\t\t\t\tif (isOwn && 'get' in desc && !('originalValue' in desc.get)) {\n\t\t\t\t\tvalue = desc.get;\n\t\t\t\t} else {\n\t\t\t\t\tvalue = value[part];\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tisOwn = hasOwn(value, part);\n\t\t\t\tvalue = value[part];\n\t\t\t}\n\n\t\t\tif (isOwn && !skipFurtherCaching) {\n\t\t\t\tINTRINSICS[intrinsicRealName] = value;\n\t\t\t}\n\t\t}\n\t}\n\treturn value;\n};\n","/*! Hammer.JS - v2.0.7 - 2016-04-22\n * http://hammerjs.github.io/\n *\n * Copyright (c) 2016 Jorik Tangelder;\n * Licensed under the MIT license */\n(function(window, document, exportName, undefined) {\n 'use strict';\n\nvar VENDOR_PREFIXES = ['', 'webkit', 'Moz', 'MS', 'ms', 'o'];\nvar TEST_ELEMENT = document.createElement('div');\n\nvar TYPE_FUNCTION = 'function';\n\nvar round = Math.round;\nvar abs = Math.abs;\nvar now = Date.now;\n\n/**\n * set a timeout with a given scope\n * @param {Function} fn\n * @param {Number} timeout\n * @param {Object} context\n * @returns {number}\n */\nfunction setTimeoutContext(fn, timeout, context) {\n return setTimeout(bindFn(fn, context), timeout);\n}\n\n/**\n * if the argument is an array, we want to execute the fn on each entry\n * if it aint an array we don't want to do a thing.\n * this is used by all the methods that accept a single and array argument.\n * @param {*|Array} arg\n * @param {String} fn\n * @param {Object} [context]\n * @returns {Boolean}\n */\nfunction invokeArrayArg(arg, fn, context) {\n if (Array.isArray(arg)) {\n each(arg, context[fn], context);\n return true;\n }\n return false;\n}\n\n/**\n * walk objects and arrays\n * @param {Object} obj\n * @param {Function} iterator\n * @param {Object} context\n */\nfunction each(obj, iterator, context) {\n var i;\n\n if (!obj) {\n return;\n }\n\n if (obj.forEach) {\n obj.forEach(iterator, context);\n } else if (obj.length !== undefined) {\n i = 0;\n while (i < obj.length) {\n iterator.call(context, obj[i], i, obj);\n i++;\n }\n } else {\n for (i in obj) {\n obj.hasOwnProperty(i) && iterator.call(context, obj[i], i, obj);\n }\n }\n}\n\n/**\n * wrap a method with a deprecation warning and stack trace\n * @param {Function} method\n * @param {String} name\n * @param {String} message\n * @returns {Function} A new function wrapping the supplied method.\n */\nfunction deprecate(method, name, message) {\n var deprecationMessage = 'DEPRECATED METHOD: ' + name + '\\n' + message + ' AT \\n';\n return function() {\n var e = new Error('get-stack-trace');\n var stack = e && e.stack ? e.stack.replace(/^[^\\(]+?[\\n$]/gm, '')\n .replace(/^\\s+at\\s+/gm, '')\n .replace(/^Object.<anonymous>\\s*\\(/gm, '{anonymous}()@') : 'Unknown Stack Trace';\n\n var log = window.console && (window.console.warn || window.console.log);\n if (log) {\n log.call(window.console, deprecationMessage, stack);\n }\n return method.apply(this, arguments);\n };\n}\n\n/**\n * extend object.\n * means that properties in dest will be overwritten by the ones in src.\n * @param {Object} target\n * @param {...Object} objects_to_assign\n * @returns {Object} target\n */\nvar assign;\nif (typeof Object.assign !== 'function') {\n assign = function assign(target) {\n if (target === undefined || target === null) {\n throw new TypeError('Cannot convert undefined or null to object');\n }\n\n var output = Object(target);\n for (var index = 1; index < arguments.length; index++) {\n var source = arguments[index];\n if (source !== undefined && source !== null) {\n for (var nextKey in source) {\n if (source.hasOwnProperty(nextKey)) {\n output[nextKey] = source[nextKey];\n }\n }\n }\n }\n return output;\n };\n} else {\n assign = Object.assign;\n}\n\n/**\n * extend object.\n * means that properties in dest will be overwritten by the ones in src.\n * @param {Object} dest\n * @param {Object} src\n * @param {Boolean} [merge=false]\n * @returns {Object} dest\n */\nvar extend = deprecate(function extend(dest, src, merge) {\n var keys = Object.keys(src);\n var i = 0;\n while (i < keys.length) {\n if (!merge || (merge && dest[keys[i]] === undefined)) {\n dest[keys[i]] = src[keys[i]];\n }\n i++;\n }\n return dest;\n}, 'extend', 'Use `assign`.');\n\n/**\n * merge the values from src in the dest.\n * means that properties that exist in dest will not be overwritten by src\n * @param {Object} dest\n * @param {Object} src\n * @returns {Object} dest\n */\nvar merge = deprecate(function merge(dest, src) {\n return extend(dest, src, true);\n}, 'merge', 'Use `assign`.');\n\n/**\n * simple class inheritance\n * @param {Function} child\n * @param {Function} base\n * @param {Object} [properties]\n */\nfunction inherit(child, base, properties) {\n var baseP = base.prototype,\n childP;\n\n childP = child.prototype = Object.create(baseP);\n childP.constructor = child;\n childP._super = baseP;\n\n if (properties) {\n assign(childP, properties);\n }\n}\n\n/**\n * simple function bind\n * @param {Function} fn\n * @param {Object} context\n * @returns {Function}\n */\nfunction bindFn(fn, context) {\n return function boundFn() {\n return fn.apply(context, arguments);\n };\n}\n\n/**\n * let a boolean value also be a function that must return a boolean\n * this first item in args will be used as the context\n * @param {Boolean|Function} val\n * @param {Array} [args]\n * @returns {Boolean}\n */\nfunction boolOrFn(val, args) {\n if (typeof val == TYPE_FUNCTION) {\n return val.apply(args ? args[0] || undefined : undefined, args);\n }\n return val;\n}\n\n/**\n * use the val2 when val1 is undefined\n * @param {*} val1\n * @param {*} val2\n * @returns {*}\n */\nfunction ifUndefined(val1, val2) {\n return (val1 === undefined) ? val2 : val1;\n}\n\n/**\n * addEventListener with multiple events at once\n * @param {EventTarget} target\n * @param {String} types\n * @param {Function} handler\n */\nfunction addEventListeners(target, types, handler) {\n each(splitStr(types), function(type) {\n target.addEventListener(type, handler, false);\n });\n}\n\n/**\n * removeEventListener with multiple events at once\n * @param {EventTarget} target\n * @param {String} types\n * @param {Function} handler\n */\nfunction removeEventListeners(target, types, handler) {\n each(splitStr(types), function(type) {\n target.removeEventListener(type, handler, false);\n });\n}\n\n/**\n * find if a node is in the given parent\n * @method hasParent\n * @param {HTMLElement} node\n * @param {HTMLElement} parent\n * @return {Boolean} found\n */\nfunction hasParent(node, parent) {\n while (node) {\n if (node == parent) {\n return true;\n }\n node = node.parentNode;\n }\n return false;\n}\n\n/**\n * small indexOf wrapper\n * @param {String} str\n * @param {String} find\n * @returns {Boolean} found\n */\nfunction inStr(str, find) {\n return str.indexOf(find) > -1;\n}\n\n/**\n * split string on whitespace\n * @param {String} str\n * @returns {Array} words\n */\nfunction splitStr(str) {\n return str.trim().split(/\\s+/g);\n}\n\n/**\n * find if a array contains the object using indexOf or a simple polyFill\n * @param {Array} src\n * @param {String} find\n * @param {String} [findByKey]\n * @return {Boolean|Number} false when not found, or the index\n */\nfunction inArray(src, find, findByKey) {\n if (src.indexOf && !findByKey) {\n return src.indexOf(find);\n } else {\n var i = 0;\n while (i < src.length) {\n if ((findByKey && src[i][findByKey] == find) || (!findByKey && src[i] === find)) {\n return i;\n }\n i++;\n }\n return -1;\n }\n}\n\n/**\n * convert array-like objects to real arrays\n * @param {Object} obj\n * @returns {Array}\n */\nfunction toArray(obj) {\n return Array.prototype.slice.call(obj, 0);\n}\n\n/**\n * unique array with objects based on a key (like 'id') or just by the array's value\n * @param {Array} src [{id:1},{id:2},{id:1}]\n * @param {String} [key]\n * @param {Boolean} [sort=False]\n * @returns {Array} [{id:1},{id:2}]\n */\nfunction uniqueArray(src, key, sort) {\n var results = [];\n var values = [];\n var i = 0;\n\n while (i < src.length) {\n var val = key ? src[i][key] : src[i];\n if (inArray(values, val) < 0) {\n results.push(src[i]);\n }\n values[i] = val;\n i++;\n }\n\n if (sort) {\n if (!key) {\n results = results.sort();\n } else {\n results = results.sort(function sortUniqueArray(a, b) {\n return a[key] > b[key];\n });\n }\n }\n\n return results;\n}\n\n/**\n * get the prefixed property\n * @param {Object} obj\n * @param {String} property\n * @returns {String|Undefined} prefixed\n */\nfunction prefixed(obj, property) {\n var prefix, prop;\n var camelProp = property[0].toUpperCase() + property.slice(1);\n\n var i = 0;\n while (i < VENDOR_PREFIXES.length) {\n prefix = VENDOR_PREFIXES[i];\n prop = (prefix) ? prefix + camelProp : property;\n\n if (prop in obj) {\n return prop;\n }\n i++;\n }\n return undefined;\n}\n\n/**\n * get a unique id\n * @returns {number} uniqueId\n */\nvar _uniqueId = 1;\nfunction uniqueId() {\n return _uniqueId++;\n}\n\n/**\n * get the window object of an element\n * @param {HTMLElement} element\n * @returns {DocumentView|Window}\n */\nfunction getWindowForElement(element) {\n var doc = element.ownerDocument || element;\n return (doc.defaultView || doc.parentWindow || window);\n}\n\nvar MOBILE_REGEX = /mobile|tablet|ip(ad|hone|od)|android/i;\n\nvar SUPPORT_TOUCH = ('ontouchstart' in window);\nvar SUPPORT_POINTER_EVENTS = prefixed(window, 'PointerEvent') !== undefined;\nvar SUPPORT_ONLY_TOUCH = SUPPORT_TOUCH && MOBILE_REGEX.test(navigator.userAgent);\n\nvar INPUT_TYPE_TOUCH = 'touch';\nvar INPUT_TYPE_PEN = 'pen';\nvar INPUT_TYPE_MOUSE = 'mouse';\nvar INPUT_TYPE_KINECT = 'kinect';\n\nvar COMPUTE_INTERVAL = 25;\n\nvar INPUT_START = 1;\nvar INPUT_MOVE = 2;\nvar INPUT_END = 4;\nvar INPUT_CANCEL = 8;\n\nvar DIRECTION_NONE = 1;\nvar DIRECTION_LEFT = 2;\nvar DIRECTION_RIGHT = 4;\nvar DIRECTION_UP = 8;\nvar DIRECTION_DOWN = 16;\n\nvar DIRECTION_HORIZONTAL = DIRECTION_LEFT | DIRECTION_RIGHT;\nvar DIRECTION_VERTICAL = DIRECTION_UP | DIRECTION_DOWN;\nvar DIRECTION_ALL = DIRECTION_HORIZONTAL | DIRECTION_VERTICAL;\n\nvar PROPS_XY = ['x', 'y'];\nvar PROPS_CLIENT_XY = ['clientX', 'clientY'];\n\n/**\n * create new input type manager\n * @param {Manager} manager\n * @param {Function} callback\n * @returns {Input}\n * @constructor\n */\nfunction Input(manager, callback) {\n var self = this;\n this.manager = manager;\n this.callback = callback;\n this.element = manager.element;\n this.target = manager.options.inputTarget;\n\n // smaller wrapper around the handler, for the scope and the enabled state of the manager,\n // so when disabled the input events are completely bypassed.\n this.domHandler = function(ev) {\n if (boolOrFn(manager.options.enable, [manager])) {\n self.handler(ev);\n }\n };\n\n this.init();\n\n}\n\nInput.prototype = {\n /**\n * should handle the inputEvent data and trigger the callback\n * @virtual\n */\n handler: function() { },\n\n /**\n * bind the events\n */\n init: function() {\n this.evEl && addEventListeners(this.element, this.evEl, this.domHandler);\n this.evTarget && addEventListeners(this.target, this.evTarget, this.domHandler);\n this.evWin && addEventListeners(getWindowForElement(this.element), this.evWin, this.domHandler);\n },\n\n /**\n * unbind the events\n */\n destroy: function() {\n this.evEl && removeEventListeners(this.element, this.evEl, this.domHandler);\n this.evTarget && removeEventListeners(this.target, this.evTarget, this.domHandler);\n this.evWin && removeEventListeners(getWindowForElement(this.element), this.evWin, this.domHandler);\n }\n};\n\n/**\n * create new input type manager\n * called by the Manager constructor\n * @param {Hammer} manager\n * @returns {Input}\n */\nfunction createInputInstance(manager) {\n var Type;\n var inputClass = manager.options.inputClass;\n\n if (inputClass) {\n Type = inputClass;\n } else if (SUPPORT_POINTER_EVENTS) {\n Type = PointerEventInput;\n } else if (SUPPORT_ONLY_TOUCH) {\n Type = TouchInput;\n } else if (!SUPPORT_TOUCH) {\n Type = MouseInput;\n } else {\n Type = TouchMouseInput;\n }\n return new (Type)(manager, inputHandler);\n}\n\n/**\n * handle input events\n * @param {Manager} manager\n * @param {String} eventType\n * @param {Object} input\n */\nfunction inputHandler(manager, eventType, input) {\n var pointersLen = input.pointers.length;\n var changedPointersLen = input.changedPointers.length;\n var isFirst = (eventType & INPUT_START && (pointersLen - changedPointersLen === 0));\n var isFinal = (eventType & (INPUT_END | INPUT_CANCEL) && (pointersLen - changedPointersLen === 0));\n\n input.isFirst = !!isFirst;\n input.isFinal = !!isFinal;\n\n if (isFirst) {\n manager.session = {};\n }\n\n // source event is the normalized value of the domEvents\n // like 'touchstart, mouseup, pointerdown'\n input.eventType = eventType;\n\n // compute scale, rotation etc\n computeInputData(manager, input);\n\n // emit secret event\n manager.emit('hammer.input', input);\n\n manager.recognize(input);\n manager.session.prevInput = input;\n}\n\n/**\n * extend the data with some usable properties like scale, rotate, velocity etc\n * @param {Object} manager\n * @param {Object} input\n */\nfunction computeInputData(manager, input) {\n var session = manager.session;\n var pointers = input.pointers;\n var pointersLength = pointers.length;\n\n // store the first input to calculate the distance and direction\n if (!session.firstInput) {\n session.firstInput = simpleCloneInputData(input);\n }\n\n // to compute scale and rotation we need to store the multiple touches\n if (pointersLength > 1 && !session.firstMultiple) {\n session.firstMultiple = simpleCloneInputData(input);\n } else if (pointersLength === 1) {\n session.firstMultiple = false;\n }\n\n var firstInput = session.firstInput;\n var firstMultiple = session.firstMultiple;\n var offsetCenter = firstMultiple ? firstMultiple.center : firstInput.center;\n\n var center = input.center = getCenter(pointers);\n input.timeStamp = now();\n input.deltaTime = input.timeStamp - firstInput.timeStamp;\n\n input.angle = getAngle(offsetCenter, center);\n input.distance = getDistance(offsetCenter, center);\n\n computeDeltaXY(session, input);\n input.offsetDirection = getDirection(input.deltaX, input.deltaY);\n\n var overallVelocity = getVelocity(input.deltaTime, input.deltaX, input.deltaY);\n input.overallVelocityX = overallVelocity.x;\n input.overallVelocityY = overallVelocity.y;\n input.overallVelocity = (abs(overallVelocity.x) > abs(overallVelocity.y)) ? overallVelocity.x : overallVelocity.y;\n\n input.scale = firstMultiple ? getScale(firstMultiple.pointers, pointers) : 1;\n input.rotation = firstMultiple ? getRotation(firstMultiple.pointers, pointers) : 0;\n\n input.maxPointers = !session.prevInput ? input.pointers.length : ((input.pointers.length >\n session.prevInput.maxPointers) ? input.pointers.length : session.prevInput.maxPointers);\n\n computeIntervalInputData(session, input);\n\n // find the correct target\n var target = manager.element;\n if (hasParent(input.srcEvent.target, target)) {\n target = input.srcEvent.target;\n }\n input.target = target;\n}\n\nfunction computeDeltaXY(session, input) {\n var center = input.center;\n var offset = session.offsetDelta || {};\n var prevDelta = session.prevDelta || {};\n var prevInput = session.prevInput || {};\n\n if (input.eventType === INPUT_START || prevInput.eventType === INPUT_END) {\n prevDelta = session.prevDelta = {\n x: prevInput.deltaX || 0,\n y: prevInput.deltaY || 0\n };\n\n offset = session.offsetDelta = {\n x: center.x,\n y: center.y\n };\n }\n\n input.deltaX = prevDelta.x + (center.x - offset.x);\n input.deltaY = prevDelta.y + (center.y - offset.y);\n}\n\n/**\n * velocity is calculated every x ms\n * @param {Object} session\n * @param {Object} input\n */\nfunction computeIntervalInputData(session, input) {\n var last = session.lastInterval || input,\n deltaTime = input.timeStamp - last.timeStamp,\n velocity, velocityX, velocityY, direction;\n\n if (input.eventType != INPUT_CANCEL && (deltaTime > COMPUTE_INTERVAL || last.velocity === undefined)) {\n var deltaX = input.deltaX - last.deltaX;\n var deltaY = input.deltaY - last.deltaY;\n\n var v = getVelocity(deltaTime, deltaX, deltaY);\n velocityX = v.x;\n velocityY = v.y;\n velocity = (abs(v.x) > abs(v.y)) ? v.x : v.y;\n direction = getDirection(deltaX, deltaY);\n\n session.lastInterval = input;\n } else {\n // use latest velocity info if it doesn't overtake a minimum period\n velocity = last.velocity;\n velocityX = last.velocityX;\n velocityY = last.velocityY;\n direction = last.direction;\n }\n\n input.velocity = velocity;\n input.velocityX = velocityX;\n input.velocityY = velocityY;\n input.direction = direction;\n}\n\n/**\n * create a simple clone from the input used for storage of firstInput and firstMultiple\n * @param {Object} input\n * @returns {Object} clonedInputData\n */\nfunction simpleCloneInputData(input) {\n // make a simple copy of the pointers because we will get a reference if we don't\n // we only need clientXY for the calculations\n var pointers = [];\n var i = 0;\n while (i < input.pointers.length) {\n pointers[i] = {\n clientX: round(input.pointers[i].clientX),\n clientY: round(input.pointers[i].clientY)\n };\n i++;\n }\n\n return {\n timeStamp: now(),\n pointers: pointers,\n center: getCenter(pointers),\n deltaX: input.deltaX,\n deltaY: input.deltaY\n };\n}\n\n/**\n * get the center of all the pointers\n * @param {Array} pointers\n * @return {Object} center contains `x` and `y` properties\n */\nfunction getCenter(pointers) {\n var pointersLength = pointers.length;\n\n // no need to loop when only one touch\n if (pointersLength === 1) {\n return {\n x: round(pointers[0].clientX),\n y: round(pointers[0].clientY)\n };\n }\n\n var x = 0, y = 0, i = 0;\n while (i < pointersLength) {\n x += pointers[i].clientX;\n y += pointers[i].clientY;\n i++;\n }\n\n return {\n x: round(x / pointersLength),\n y: round(y / pointersLength)\n };\n}\n\n/**\n * calculate the velocity between two points. unit is in px per ms.\n * @param {Number} deltaTime\n * @param {Number} x\n * @param {Number} y\n * @return {Object} velocity `x` and `y`\n */\nfunction getVelocity(deltaTime, x, y) {\n return {\n x: x / deltaTime || 0,\n y: y / deltaTime || 0\n };\n}\n\n/**\n * get the direction between two points\n * @param {Number} x\n * @param {Number} y\n * @return {Number} direction\n */\nfunction getDirection(x, y) {\n if (x === y) {\n return DIRECTION_NONE;\n }\n\n if (abs(x) >= abs(y)) {\n return x < 0 ? DIRECTION_LEFT : DIRECTION_RIGHT;\n }\n return y < 0 ? DIRECTION_UP : DIRECTION_DOWN;\n}\n\n/**\n * calculate the absolute distance between two points\n * @param {Object} p1 {x, y}\n * @param {Object} p2 {x, y}\n * @param {Array} [props] containing x and y keys\n * @return {Number} distance\n */\nfunction getDistance(p1, p2, props) {\n if (!props) {\n props = PROPS_XY;\n }\n var x = p2[props[0]] - p1[props[0]],\n y = p2[props[1]] - p1[props[1]];\n\n return Math.sqrt((x * x) + (y * y));\n}\n\n/**\n * calculate the angle between two coordinates\n * @param {Object} p1\n * @param {Object} p2\n * @param {Array} [props] containing x and y keys\n * @return {Number} angle\n */\nfunction getAngle(p1, p2, props) {\n if (!props) {\n props = PROPS_XY;\n }\n var x = p2[props[0]] - p1[props[0]],\n y = p2[props[1]] - p1[props[1]];\n return Math.atan2(y, x) * 180 / Math.PI;\n}\n\n/**\n * calculate the rotation degrees between two pointersets\n * @param {Array} start array of pointers\n * @param {Array} end array of pointers\n * @return {Number} rotation\n */\nfunction getRotation(start, end) {\n return getAngle(end[1], end[0], PROPS_CLIENT_XY) + getAngle(start[1], start[0], PROPS_CLIENT_XY);\n}\n\n/**\n * calculate the scale factor between two pointersets\n * no scale is 1, and goes down to 0 when pinched together, and bigger when pinched out\n * @param {Array} start array of pointers\n * @param {Array} end array of pointers\n * @return {Number} scale\n */\nfunction getScale(start, end) {\n return getDistance(end[0], end[1], PROPS_CLIENT_XY) / getDistance(start[0], start[1], PROPS_CLIENT_XY);\n}\n\nvar MOUSE_INPUT_MAP = {\n mousedown: INPUT_START,\n mousemove: INPUT_MOVE,\n mouseup: INPUT_END\n};\n\nvar MOUSE_ELEMENT_EVENTS = 'mousedown';\nvar MOUSE_WINDOW_EVENTS = 'mousemove mouseup';\n\n/**\n * Mouse events input\n * @constructor\n * @extends Input\n */\nfunction MouseInput() {\n this.evEl = MOUSE_ELEMENT_EVENTS;\n this.evWin = MOUSE_WINDOW_EVENTS;\n\n this.pressed = false; // mousedown state\n\n Input.apply(this, arguments);\n}\n\ninherit(MouseInput, Input, {\n /**\n * handle mouse events\n * @param {Object} ev\n */\n handler: function MEhandler(ev) {\n var eventType = MOUSE_INPUT_MAP[ev.type];\n\n // on start we want to have the left mouse button down\n if (eventType & INPUT_START && ev.button === 0) {\n this.pressed = true;\n }\n\n if (eventType & INPUT_MOVE && ev.which !== 1) {\n eventType = INPUT_END;\n }\n\n // mouse must be down\n if (!this.pressed) {\n return;\n }\n\n if (eventType & INPUT_END) {\n this.pressed = false;\n }\n\n this.callback(this.manager, eventType, {\n pointers: [ev],\n changedPointers: [ev],\n pointerType: INPUT_TYPE_MOUSE,\n srcEvent: ev\n });\n }\n});\n\nvar POINTER_INPUT_MAP = {\n pointerdown: INPUT_START,\n pointermove: INPUT_MOVE,\n pointerup: INPUT_END,\n pointercancel: INPUT_CANCEL,\n pointerout: INPUT_CANCEL\n};\n\n// in IE10 the pointer types is defined as an enum\nvar IE10_POINTER_TYPE_ENUM = {\n 2: INPUT_TYPE_TOUCH,\n 3: INPUT_TYPE_PEN,\n 4: INPUT_TYPE_MOUSE,\n 5: INPUT_TYPE_KINECT // see https://twitter.com/jacobrossi/status/480596438489890816\n};\n\nvar POINTER_ELEMENT_EVENTS = 'pointerdown';\nvar POINTER_WINDOW_EVENTS = 'pointermove pointerup pointercancel';\n\n// IE10 has prefixed support, and case-sensitive\nif (window.MSPointerEvent && !window.PointerEvent) {\n POINTER_ELEMENT_EVENTS = 'MSPointerDown';\n POINTER_WINDOW_EVENTS = 'MSPointerMove MSPointerUp MSPointerCancel';\n}\n\n/**\n * Pointer events input\n * @constructor\n * @extends Input\n */\nfunction PointerEventInput() {\n this.evEl = POINTER_ELEMENT_EVENTS;\n this.evWin = POINTER_WINDOW_EVENTS;\n\n Input.apply(this, arguments);\n\n this.store = (this.manager.session.pointerEvents = []);\n}\n\ninherit(PointerEventInput, Input, {\n /**\n * handle mouse events\n * @param {Object} ev\n */\n handler: function PEhandler(ev) {\n var store = this.store;\n var removePointer = false;\n\n var eventTypeNormalized = ev.type.toLowerCase().replace('ms', '');\n var eventType = POINTER_INPUT_MAP[eventTypeNormalized];\n var pointerType = IE10_POINTER_TYPE_ENUM[ev.pointerType] || ev.pointerType;\n\n var isTouch = (pointerType == INPUT_TYPE_TOUCH);\n\n // get index of the event in the store\n var storeIndex = inArray(store, ev.pointerId, 'pointerId');\n\n // start and mouse must be down\n if (eventType & INPUT_START && (ev.button === 0 || isTouch)) {\n if (storeIndex < 0) {\n store.push(ev);\n storeIndex = store.length - 1;\n }\n } else if (eventType & (INPUT_END | INPUT_CANCEL)) {\n removePointer = true;\n }\n\n // it not found, so the pointer hasn't been down (so it's probably a hover)\n if (storeIndex < 0) {\n return;\n }\n\n // update the event in the store\n store[storeIndex] = ev;\n\n this.callback(this.manager, eventType, {\n pointers: store,\n changedPointers: [ev],\n pointerType: pointerType,\n srcEvent: ev\n });\n\n if (removePointer) {\n // remove from the store\n store.splice(storeIndex, 1);\n }\n }\n});\n\nvar SINGLE_TOUCH_INPUT_MAP = {\n touchstart: INPUT_START,\n touchmove: INPUT_MOVE,\n touchend: INPUT_END,\n touchcancel: INPUT_CANCEL\n};\n\nvar SINGLE_TOUCH_TARGET_EVENTS = 'touchstart';\nvar SINGLE_TOUCH_WINDOW_EVENTS = 'touchstart touchmove touchend touchcancel';\n\n/**\n * Touch events input\n * @constructor\n * @extends Input\n */\nfunction SingleTouchInput() {\n this.evTarget = SINGLE_TOUCH_TARGET_EVENTS;\n this.evWin = SINGLE_TOUCH_WINDOW_EVENTS;\n this.started = false;\n\n Input.apply(this, arguments);\n}\n\ninherit(SingleTouchInput, Input, {\n handler: function TEhandler(ev) {\n var type = SINGLE_TOUCH_INPUT_MAP[ev.type];\n\n // should we handle the touch events?\n if (type === INPUT_START) {\n this.started = true;\n }\n\n if (!this.started) {\n return;\n }\n\n var touches = normalizeSingleTouches.call(this, ev, type);\n\n // when done, reset the started state\n if (type & (INPUT_END | INPUT_CANCEL) && touches[0].length - touches[1].length === 0) {\n this.started = false;\n }\n\n this.callback(this.manager, type, {\n pointers: touches[0],\n changedPointers: touches[1],\n pointerType: INPUT_TYPE_TOUCH,\n srcEvent: ev\n });\n }\n});\n\n/**\n * @this {TouchInput}\n * @param {Object} ev\n * @param {Number} type flag\n * @returns {undefined|Array} [all, changed]\n */\nfunction normalizeSingleTouches(ev, type) {\n var all = toArray(ev.touches);\n var changed = toArray(ev.changedTouches);\n\n if (type & (INPUT_END | INPUT_CANCEL)) {\n all = uniqueArray(all.concat(changed), 'identifier', true);\n }\n\n return [all, changed];\n}\n\nvar TOUCH_INPUT_MAP = {\n touchstart: INPUT_START,\n touchmove: INPUT_MOVE,\n touchend: INPUT_END,\n touchcancel: INPUT_CANCEL\n};\n\nvar TOUCH_TARGET_EVENTS = 'touchstart touchmove touchend touchcancel';\n\n/**\n * Multi-user touch events input\n * @constructor\n * @extends Input\n */\nfunction TouchInput() {\n this.evTarget = TOUCH_TARGET_EVENTS;\n this.targetIds = {};\n\n Input.apply(this, arguments);\n}\n\ninherit(TouchInput, Input, {\n handler: function MTEhandler(ev) {\n var type = TOUCH_INPUT_MAP[ev.type];\n var touches = getTouches.call(this, ev, type);\n if (!touches) {\n return;\n }\n\n this.callback(this.manager, type, {\n pointers: touches[0],\n changedPointers: touches[1],\n pointerType: INPUT_TYPE_TOUCH,\n srcEvent: ev\n });\n }\n});\n\n/**\n * @this {TouchInput}\n * @param {Object} ev\n * @param {Number} type flag\n * @returns {undefined|Array} [all, changed]\n */\nfunction getTouches(ev, type) {\n var allTouches = toArray(ev.touches);\n var targetIds = this.targetIds;\n\n // when there is only one touch, the process can be simplified\n if (type & (INPUT_START | INPUT_MOVE) && allTouches.length === 1) {\n targetIds[allTouches[0].identifier] = true;\n return [allTouches, allTouches];\n }\n\n var i,\n targetTouches,\n changedTouches = toArray(ev.changedTouches),\n changedTargetTouches = [],\n target = this.target;\n\n // get target touches from touches\n targetTouches = allTouches.filter(function(touch) {\n return hasParent(touch.target, target);\n });\n\n // collect touches\n if (type === INPUT_START) {\n i = 0;\n while (i < targetTouches.length) {\n targetIds[targetTouches[i].identifier] = true;\n i++;\n }\n }\n\n // filter changed touches to only contain touches that exist in the collected target ids\n i = 0;\n while (i < changedTouches.length) {\n if (targetIds[changedTouches[i].identifier]) {\n changedTargetTouches.push(changedTouches[i]);\n }\n\n // cleanup removed touches\n if (type & (INPUT_END | INPUT_CANCEL)) {\n delete targetIds[changedTouches[i].identifier];\n }\n i++;\n }\n\n if (!changedTargetTouches.length) {\n return;\n }\n\n return [\n // merge targetTouches with changedTargetTouches so it contains ALL touches, including 'end' and 'cancel'\n uniqueArray(targetTouches.concat(changedTargetTouches), 'identifier', true),\n changedTargetTouches\n ];\n}\n\n/**\n * Combined touch and mouse input\n *\n * Touch has a higher priority then mouse, and while touching no mouse events are allowed.\n * This because touch devices also emit mouse events while doing a touch.\n *\n * @constructor\n * @extends Input\n */\n\nvar DEDUP_TIMEOUT = 2500;\nvar DEDUP_DISTANCE = 25;\n\nfunction TouchMouseInput() {\n Input.apply(this, arguments);\n\n var handler = bindFn(this.handler, this);\n this.touch = new TouchInput(this.manager, handler);\n this.mouse = new MouseInput(this.manager, handler);\n\n this.primaryTouch = null;\n this.lastTouches = [];\n}\n\ninherit(TouchMouseInput, Input, {\n /**\n * handle mouse and touch events\n * @param {Hammer} manager\n * @param {String} inputEvent\n * @param {Object} inputData\n */\n handler: function TMEhandler(manager, inputEvent, inputData) {\n var isTouch = (inputData.pointerType == INPUT_TYPE_TOUCH),\n isMouse = (inputData.pointerType == INPUT_TYPE_MOUSE);\n\n if (isMouse && inputData.sourceCapabilities && inputData.sourceCapabilities.firesTouchEvents) {\n return;\n }\n\n // when we're in a touch event, record touches to de-dupe synthetic mouse event\n if (isTouch) {\n recordTouches.call(this, inputEvent, inputData);\n } else if (isMouse && isSyntheticEvent.call(this, inputData)) {\n return;\n }\n\n this.callback(manager, inputEvent, inputData);\n },\n\n /**\n * remove the event listeners\n */\n destroy: function destroy() {\n this.touch.destroy();\n this.mouse.destroy();\n }\n});\n\nfunction recordTouches(eventType, eventData) {\n if (eventType & INPUT_START) {\n this.primaryTouch = eventData.changedPointers[0].identifier;\n setLastTouch.call(this, eventData);\n } else if (eventType & (INPUT_END | INPUT_CANCEL)) {\n setLastTouch.call(this, eventData);\n }\n}\n\nfunction setLastTouch(eventData) {\n var touch = eventData.changedPointers[0];\n\n if (touch.identifier === this.primaryTouch) {\n var lastTouch = {x: touch.clientX, y: touch.clientY};\n this.lastTouches.push(lastTouch);\n var lts = this.lastTouches;\n var removeLastTouch = function() {\n var i = lts.indexOf(lastTouch);\n if (i > -1) {\n lts.splice(i, 1);\n }\n };\n setTimeout(removeLastTouch, DEDUP_TIMEOUT);\n }\n}\n\nfunction isSyntheticEvent(eventData) {\n var x = eventData.srcEvent.clientX, y = eventData.srcEvent.clientY;\n for (var i = 0; i < this.lastTouches.length; i++) {\n var t = this.lastTouches[i];\n var dx = Math.abs(x - t.x), dy = Math.abs(y - t.y);\n if (dx <= DEDUP_DISTANCE && dy <= DEDUP_DISTANCE) {\n return true;\n }\n }\n return false;\n}\n\nvar PREFIXED_TOUCH_ACTION = prefixed(TEST_ELEMENT.style, 'touchAction');\nvar NATIVE_TOUCH_ACTION = PREFIXED_TOUCH_ACTION !== undefined;\n\n// magical touchAction value\nvar TOUCH_ACTION_COMPUTE = 'compute';\nvar TOUCH_ACTION_AUTO = 'auto';\nvar TOUCH_ACTION_MANIPULATION = 'manipulation'; // not implemented\nvar TOUCH_ACTION_NONE = 'none';\nvar TOUCH_ACTION_PAN_X = 'pan-x';\nvar TOUCH_ACTION_PAN_Y = 'pan-y';\nvar TOUCH_ACTION_MAP = getTouchActionProps();\n\n/**\n * Touch Action\n * sets the touchAction property or uses the js alternative\n * @param {Manager} manager\n * @param {String} value\n * @constructor\n */\nfunction TouchAction(manager, value) {\n this.manager = manager;\n this.set(value);\n}\n\nTouchAction.prototype = {\n /**\n * set the touchAction value on the element or enable the polyfill\n * @param {String} value\n */\n set: function(value) {\n // find out the touch-action by the event handlers\n if (value == TOUCH_ACTION_COMPUTE) {\n value = this.compute();\n }\n\n if (NATIVE_TOUCH_ACTION && this.manager.element.style && TOUCH_ACTION_MAP[value]) {\n this.manager.element.style[PREFIXED_TOUCH_ACTION] = value;\n }\n this.actions = value.toLowerCase().trim();\n },\n\n /**\n * just re-set the touchAction value\n */\n update: function() {\n this.set(this.manager.options.touchAction);\n },\n\n /**\n * compute the value for the touchAction property based on the recognizer's settings\n * @returns {String} value\n */\n compute: function() {\n var actions = [];\n each(this.manager.recognizers, function(recognizer) {\n if (boolOrFn(recognizer.options.enable, [recognizer])) {\n actions = actions.concat(recognizer.getTouchAction());\n }\n });\n return cleanTouchActions(actions.join(' '));\n },\n\n /**\n * this method is called on each input cycle and provides the preventing of the browser behavior\n * @param {Object} input\n */\n preventDefaults: function(input) {\n var srcEvent = input.srcEvent;\n var direction = input.offsetDirection;\n\n // if the touch action did prevented once this session\n if (this.manager.session.prevented) {\n srcEvent.preventDefault();\n return;\n }\n\n var actions = this.actions;\n var hasNone = inStr(actions, TOUCH_ACTION_NONE) && !TOUCH_ACTION_MAP[TOUCH_ACTION_NONE];\n var hasPanY = inStr(actions, TOUCH_ACTION_PAN_Y) && !TOUCH_ACTION_MAP[TOUCH_ACTION_PAN_Y];\n var hasPanX = inStr(actions, TOUCH_ACTION_PAN_X) && !TOUCH_ACTION_MAP[TOUCH_ACTION_PAN_X];\n\n if (hasNone) {\n //do not prevent defaults if this is a tap gesture\n\n var isTapPointer = input.pointers.length === 1;\n var isTapMovement = input.distance < 2;\n var isTapTouchTime = input.deltaTime < 250;\n\n if (isTapPointer && isTapMovement && isTapTouchTime) {\n return;\n }\n }\n\n if (hasPanX && hasPanY) {\n // `pan-x pan-y` means browser handles all scrolling/panning, do not prevent\n return;\n }\n\n if (hasNone ||\n (hasPanY && direction & DIRECTION_HORIZONTAL) ||\n (hasPanX && direction & DIRECTION_VERTICAL)) {\n return this.preventSrc(srcEvent);\n }\n },\n\n /**\n * call preventDefault to prevent the browser's default behavior (scrolling in most cases)\n * @param {Object} srcEvent\n */\n preventSrc: function(srcEvent) {\n this.manager.session.prevented = true;\n srcEvent.preventDefault();\n }\n};\n\n/**\n * when the touchActions are collected they are not a valid value, so we need to clean things up. *\n * @param {String} actions\n * @returns {*}\n */\nfunction cleanTouchActions(actions) {\n // none\n if (inStr(actions, TOUCH_ACTION_NONE)) {\n return TOUCH_ACTION_NONE;\n }\n\n var hasPanX = inStr(actions, TOUCH_ACTION_PAN_X);\n var hasPanY = inStr(actions, TOUCH_ACTION_PAN_Y);\n\n // if both pan-x and pan-y are set (different recognizers\n // for different directions, e.g. horizontal pan but vertical swipe?)\n // we need none (as otherwise with pan-x pan-y combined none of these\n // recognizers will work, since the browser would handle all panning\n if (hasPanX && hasPanY) {\n return TOUCH_ACTION_NONE;\n }\n\n // pan-x OR pan-y\n if (hasPanX || hasPanY) {\n return hasPanX ? TOUCH_ACTION_PAN_X : TOUCH_ACTION_PAN_Y;\n }\n\n // manipulation\n if (inStr(actions, TOUCH_ACTION_MANIPULATION)) {\n return TOUCH_ACTION_MANIPULATION;\n }\n\n return TOUCH_ACTION_AUTO;\n}\n\nfunction getTouchActionProps() {\n if (!NATIVE_TOUCH_ACTION) {\n return false;\n }\n var touchMap = {};\n var cssSupports = window.CSS && window.CSS.supports;\n ['auto', 'manipulation', 'pan-y', 'pan-x', 'pan-x pan-y', 'none'].forEach(function(val) {\n\n // If css.supports is not supported but there is native touch-action assume it supports\n // all values. This is the case for IE 10 and 11.\n touchMap[val] = cssSupports ? window.CSS.supports('touch-action', val) : true;\n });\n return touchMap;\n}\n\n/**\n * Recognizer flow explained; *\n * All recognizers have the initial state of POSSIBLE when a input session starts.\n * The definition of a input session is from the first input until the last input, with all it's movement in it. *\n * Example session for mouse-input: mousedown -> mousemove -> mouseup\n *\n * On each recognizing cycle (see Manager.recognize) the .recognize() method is executed\n * which determines with state it should be.\n *\n * If the recognizer has the state FAILED, CANCELLED or RECOGNIZED (equals ENDED), it is reset to\n * POSSIBLE to give it another change on the next cycle.\n *\n * Possible\n * |\n * +-----+---------------+\n * | |\n * +-----+-----+ |\n * | | |\n * Failed Cancelled |\n * +-------+------+\n * | |\n * Recognized Began\n * |\n * Changed\n * |\n * Ended/Recognized\n */\nvar STATE_POSSIBLE = 1;\nvar STATE_BEGAN = 2;\nvar STATE_CHANGED = 4;\nvar STATE_ENDED = 8;\nvar STATE_RECOGNIZED = STATE_ENDED;\nvar STATE_CANCELLED = 16;\nvar STATE_FAILED = 32;\n\n/**\n * Recognizer\n * Every recognizer needs to extend from this class.\n * @constructor\n * @param {Object} options\n */\nfunction Recognizer(options) {\n this.options = assign({}, this.defaults, options || {});\n\n this.id = uniqueId();\n\n this.manager = null;\n\n // default is enable true\n this.options.enable = ifUndefined(this.options.enable, true);\n\n this.state = STATE_POSSIBLE;\n\n this.simultaneous = {};\n this.requireFail = [];\n}\n\nRecognizer.prototype = {\n /**\n * @virtual\n * @type {Object}\n */\n defaults: {},\n\n /**\n * set options\n * @param {Object} options\n * @return {Recognizer}\n */\n set: function(options) {\n assign(this.options, options);\n\n // also update the touchAction, in case something changed about the directions/enabled state\n this.manager && this.manager.touchAction.update();\n return this;\n },\n\n /**\n * recognize simultaneous with an other recognizer.\n * @param {Recognizer} otherRecognizer\n * @returns {Recognizer} this\n */\n recognizeWith: function(otherRecognizer) {\n if (invokeArrayArg(otherRecognizer, 'recognizeWith', this)) {\n return this;\n }\n\n var simultaneous = this.simultaneous;\n otherRecognizer = getRecognizerByNameIfManager(otherRecognizer, this);\n if (!simultaneous[otherRecognizer.id]) {\n simultaneous[otherRecognizer.id] = otherRecognizer;\n otherRecognizer.recognizeWith(this);\n }\n return this;\n },\n\n /**\n * drop the simultaneous link. it doesnt remove the link on the other recognizer.\n * @param {Recognizer} otherRecognizer\n * @returns {Recognizer} this\n */\n dropRecognizeWith: function(otherRecognizer) {\n if (invokeArrayArg(otherRecognizer, 'dropRecognizeWith', this)) {\n return this;\n }\n\n otherRecognizer = getRecognizerByNameIfManager(otherRecognizer, this);\n delete this.simultaneous[otherRecognizer.id];\n return this;\n },\n\n /**\n * recognizer can only run when an other is failing\n * @param {Recognizer} otherRecognizer\n * @returns {Recognizer} this\n */\n requireFailure: function(otherRecognizer) {\n if (invokeArrayArg(otherRecognizer, 'requireFailure', this)) {\n return this;\n }\n\n var requireFail = this.requireFail;\n otherRecognizer = getRecognizerByNameIfManager(otherRecognizer, this);\n if (inArray(requireFail, otherRecognizer) === -1) {\n requireFail.push(otherRecognizer);\n otherRecognizer.requireFailure(this);\n }\n return this;\n },\n\n /**\n * drop the requireFailure link. it does not remove the link on the other recognizer.\n * @param {Recognizer} otherRecognizer\n * @returns {Recognizer} this\n */\n dropRequireFailure: function(otherRecognizer) {\n if (invokeArrayArg(otherRecognizer, 'dropRequireFailure', this)) {\n return this;\n }\n\n otherRecognizer = getRecognizerByNameIfManager(otherRecognizer, this);\n var index = inArray(this.requireFail, otherRecognizer);\n if (index > -1) {\n this.requireFail.splice(index, 1);\n }\n return this;\n },\n\n /**\n * has require failures boolean\n * @returns {boolean}\n */\n hasRequireFailures: function() {\n return this.requireFail.length > 0;\n },\n\n /**\n * if the recognizer can recognize simultaneous with an other recognizer\n * @param {Recognizer} otherRecognizer\n * @returns {Boolean}\n */\n canRecognizeWith: function(otherRecognizer) {\n return !!this.simultaneous[otherRecognizer.id];\n },\n\n /**\n * You should use `tryEmit` instead of `emit` directly to check\n * that all the needed recognizers has failed before emitting.\n * @param {Object} input\n */\n emit: function(input) {\n var self = this;\n var state = this.state;\n\n function emit(event) {\n self.manager.emit(event, input);\n }\n\n // 'panstart' and 'panmove'\n if (state < STATE_ENDED) {\n emit(self.options.event + stateStr(state));\n }\n\n emit(self.options.event); // simple 'eventName' events\n\n if (input.additionalEvent) { // additional event(panleft, panright, pinchin, pinchout...)\n emit(input.additionalEvent);\n }\n\n // panend and pancancel\n if (state >= STATE_ENDED) {\n emit(self.options.event + stateStr(state));\n }\n },\n\n /**\n * Check that all the require failure recognizers has failed,\n * if true, it emits a gesture event,\n * otherwise, setup the state to FAILED.\n * @param {Object} input\n */\n tryEmit: function(input) {\n if (this.canEmit()) {\n return this.emit(input);\n }\n // it's failing anyway\n this.state = STATE_FAILED;\n },\n\n /**\n * can we emit?\n * @returns {boolean}\n */\n canEmit: function() {\n var i = 0;\n while (i < this.requireFail.length) {\n if (!(this.requireFail[i].state & (STATE_FAILED | STATE_POSSIBLE))) {\n return false;\n }\n i++;\n }\n return true;\n },\n\n /**\n * update the recognizer\n * @param {Object} inputData\n */\n recognize: function(inputData) {\n // make a new copy of the inputData\n // so we can change the inputData without messing up the other recognizers\n var inputDataClone = assign({}, inputData);\n\n // is is enabled and allow recognizing?\n if (!boolOrFn(this.options.enable, [this, inputDataClone])) {\n this.reset();\n this.state = STATE_FAILED;\n return;\n }\n\n // reset when we've reached the end\n if (this.state & (STATE_RECOGNIZED | STATE_CANCELLED | STATE_FAILED)) {\n this.state = STATE_POSSIBLE;\n }\n\n this.state = this.process(inputDataClone);\n\n // the recognizer has recognized a gesture\n // so trigger an event\n if (this.state & (STATE_BEGAN | STATE_CHANGED | STATE_ENDED | STATE_CANCELLED)) {\n this.tryEmit(inputDataClone);\n }\n },\n\n /**\n * return the state of the recognizer\n * the actual recognizing happens in this method\n * @virtual\n * @param {Object} inputData\n * @returns {Const} STATE\n */\n process: function(inputData) { }, // jshint ignore:line\n\n /**\n * return the preferred touch-action\n * @virtual\n * @returns {Array}\n */\n getTouchAction: function() { },\n\n /**\n * called when the gesture isn't allowed to recognize\n * like when another is being recognized or it is disabled\n * @virtual\n */\n reset: function() { }\n};\n\n/**\n * get a usable string, used as event postfix\n * @param {Const} state\n * @returns {String} state\n */\nfunction stateStr(state) {\n if (state & STATE_CANCELLED) {\n return 'cancel';\n } else if (state & STATE_ENDED) {\n return 'end';\n } else if (state & STATE_CHANGED) {\n return 'move';\n } else if (state & STATE_BEGAN) {\n return 'start';\n }\n return '';\n}\n\n/**\n * direction cons to string\n * @param {Const} direction\n * @returns {String}\n */\nfunction directionStr(direction) {\n if (direction == DIRECTION_DOWN) {\n return 'down';\n } else if (direction == DIRECTION_UP) {\n return 'up';\n } else if (direction == DIRECTION_LEFT) {\n return 'left';\n } else if (direction == DIRECTION_RIGHT) {\n return 'right';\n }\n return '';\n}\n\n/**\n * get a recognizer by name if it is bound to a manager\n * @param {Recognizer|String} otherRecognizer\n * @param {Recognizer} recognizer\n * @returns {Recognizer}\n */\nfunction getRecognizerByNameIfManager(otherRecognizer, recognizer) {\n var manager = recognizer.manager;\n if (manager) {\n return manager.get(otherRecognizer);\n }\n return otherRecognizer;\n}\n\n/**\n * This recognizer is just used as a base for the simple attribute recognizers.\n * @constructor\n * @extends Recognizer\n */\nfunction AttrRecognizer() {\n Recognizer.apply(this, arguments);\n}\n\ninherit(AttrRecognizer, Recognizer, {\n /**\n * @namespace\n * @memberof AttrRecognizer\n */\n defaults: {\n /**\n * @type {Number}\n * @default 1\n */\n pointers: 1\n },\n\n /**\n * Used to check if it the recognizer receives valid input, like input.distance > 10.\n * @memberof AttrRecognizer\n * @param {Object} input\n * @returns {Boolean} recognized\n */\n attrTest: function(input) {\n var optionPointers = this.options.pointers;\n return optionPointers === 0 || input.pointers.length === optionPointers;\n },\n\n /**\n * Process the input and return the state for the recognizer\n * @memberof AttrRecognizer\n * @param {Object} input\n * @returns {*} State\n */\n process: function(input) {\n var state = this.state;\n var eventType = input.eventType;\n\n var isRecognized = state & (STATE_BEGAN | STATE_CHANGED);\n var isValid = this.attrTest(input);\n\n // on cancel input and we've recognized before, return STATE_CANCELLED\n if (isRecognized && (eventType & INPUT_CANCEL || !isValid)) {\n return state | STATE_CANCELLED;\n } else if (isRecognized || isValid) {\n if (eventType & INPUT_END) {\n return state | STATE_ENDED;\n } else if (!(state & STATE_BEGAN)) {\n return STATE_BEGAN;\n }\n return state | STATE_CHANGED;\n }\n return STATE_FAILED;\n }\n});\n\n/**\n * Pan\n * Recognized when the pointer is down and moved in the allowed direction.\n * @constructor\n * @extends AttrRecognizer\n */\nfunction PanRecognizer() {\n AttrRecognizer.apply(this, arguments);\n\n this.pX = null;\n this.pY = null;\n}\n\ninherit(PanRecognizer, AttrRecognizer, {\n /**\n * @namespace\n * @memberof PanRecognizer\n */\n defaults: {\n event: 'pan',\n threshold: 10,\n pointers: 1,\n direction: DIRECTION_ALL\n },\n\n getTouchAction: function() {\n var direction = this.options.direction;\n var actions = [];\n if (direction & DIRECTION_HORIZONTAL) {\n actions.push(TOUCH_ACTION_PAN_Y);\n }\n if (direction & DIRECTION_VERTICAL) {\n actions.push(TOUCH_ACTION_PAN_X);\n }\n return actions;\n },\n\n directionTest: function(input) {\n var options = this.options;\n var hasMoved = true;\n var distance = input.distance;\n var direction = input.direction;\n var x = input.deltaX;\n var y = input.deltaY;\n\n // lock to axis?\n if (!(direction & options.direction)) {\n if (options.direction & DIRECTION_HORIZONTAL) {\n direction = (x === 0) ? DIRECTION_NONE : (x < 0) ? DIRECTION_LEFT : DIRECTION_RIGHT;\n hasMoved = x != this.pX;\n distance = Math.abs(input.deltaX);\n } else {\n direction = (y === 0) ? DIRECTION_NONE : (y < 0) ? DIRECTION_UP : DIRECTION_DOWN;\n hasMoved = y != this.pY;\n distance = Math.abs(input.deltaY);\n }\n }\n input.direction = direction;\n return hasMoved && distance > options.threshold && direction & options.direction;\n },\n\n attrTest: function(input) {\n return AttrRecognizer.prototype.attrTest.call(this, input) &&\n (this.state & STATE_BEGAN || (!(this.state & STATE_BEGAN) && this.directionTest(input)));\n },\n\n emit: function(input) {\n\n this.pX = input.deltaX;\n this.pY = input.deltaY;\n\n var direction = directionStr(input.direction);\n\n if (direction) {\n input.additionalEvent = this.options.event + direction;\n }\n this._super.emit.call(this, input);\n }\n});\n\n/**\n * Pinch\n * Recognized when two or more pointers are moving toward (zoom-in) or away from each other (zoom-out).\n * @constructor\n * @extends AttrRecognizer\n */\nfunction PinchRecognizer() {\n AttrRecognizer.apply(this, arguments);\n}\n\ninherit(PinchRecognizer, AttrRecognizer, {\n /**\n * @namespace\n * @memberof PinchRecognizer\n */\n defaults: {\n event: 'pinch',\n threshold: 0,\n pointers: 2\n },\n\n getTouchAction: function() {\n return [TOUCH_ACTION_NONE];\n },\n\n attrTest: function(input) {\n return this._super.attrTest.call(this, input) &&\n (Math.abs(input.scale - 1) > this.options.threshold || this.state & STATE_BEGAN);\n },\n\n emit: function(input) {\n if (input.scale !== 1) {\n var inOut = input.scale < 1 ? 'in' : 'out';\n input.additionalEvent = this.options.event + inOut;\n }\n this._super.emit.call(this, input);\n }\n});\n\n/**\n * Press\n * Recognized when the pointer is down for x ms without any movement.\n * @constructor\n * @extends Recognizer\n */\nfunction PressRecognizer() {\n Recognizer.apply(this, arguments);\n\n this._timer = null;\n this._input = null;\n}\n\ninherit(PressRecognizer, Recognizer, {\n /**\n * @namespace\n * @memberof PressRecognizer\n */\n defaults: {\n event: 'press',\n pointers: 1,\n time: 251, // minimal time of the pointer to be pressed\n threshold: 9 // a minimal movement is ok, but keep it low\n },\n\n getTouchAction: function() {\n return [TOUCH_ACTION_AUTO];\n },\n\n process: function(input) {\n var options = this.options;\n var validPointers = input.pointers.length === options.pointers;\n var validMovement = input.distance < options.threshold;\n var validTime = input.deltaTime > options.time;\n\n this._input = input;\n\n // we only allow little movement\n // and we've reached an end event, so a tap is possible\n if (!validMovement || !validPointers || (input.eventType & (INPUT_END | INPUT_CANCEL) && !validTime)) {\n this.reset();\n } else if (input.eventType & INPUT_START) {\n this.reset();\n this._timer = setTimeoutContext(function() {\n this.state = STATE_RECOGNIZED;\n this.tryEmit();\n }, options.time, this);\n } else if (input.eventType & INPUT_END) {\n return STATE_RECOGNIZED;\n }\n return STATE_FAILED;\n },\n\n reset: function() {\n clearTimeout(this._timer);\n },\n\n emit: function(input) {\n if (this.state !== STATE_RECOGNIZED) {\n return;\n }\n\n if (input && (input.eventType & INPUT_END)) {\n this.manager.emit(this.options.event + 'up', input);\n } else {\n this._input.timeStamp = now();\n this.manager.emit(this.options.event, this._input);\n }\n }\n});\n\n/**\n * Rotate\n * Recognized when two or more pointer are moving in a circular motion.\n * @constructor\n * @extends AttrRecognizer\n */\nfunction RotateRecognizer() {\n AttrRecognizer.apply(this, arguments);\n}\n\ninherit(RotateRecognizer, AttrRecognizer, {\n /**\n * @namespace\n * @memberof RotateRecognizer\n */\n defaults: {\n event: 'rotate',\n threshold: 0,\n pointers: 2\n },\n\n getTouchAction: function() {\n return [TOUCH_ACTION_NONE];\n },\n\n attrTest: function(input) {\n return this._super.attrTest.call(this, input) &&\n (Math.abs(input.rotation) > this.options.threshold || this.state & STATE_BEGAN);\n }\n});\n\n/**\n * Swipe\n * Recognized when the pointer is moving fast (velocity), with enough distance in the allowed direction.\n * @constructor\n * @extends AttrRecognizer\n */\nfunction SwipeRecognizer() {\n AttrRecognizer.apply(this, arguments);\n}\n\ninherit(SwipeRecognizer, AttrRecognizer, {\n /**\n * @namespace\n * @memberof SwipeRecognizer\n */\n defaults: {\n event: 'swipe',\n threshold: 10,\n velocity: 0.3,\n direction: DIRECTION_HORIZONTAL | DIRECTION_VERTICAL,\n pointers: 1\n },\n\n getTouchAction: function() {\n return PanRecognizer.prototype.getTouchAction.call(this);\n },\n\n attrTest: function(input) {\n var direction = this.options.direction;\n var velocity;\n\n if (direction & (DIRECTION_HORIZONTAL | DIRECTION_VERTICAL)) {\n velocity = input.overallVelocity;\n } else if (direction & DIRECTION_HORIZONTAL) {\n velocity = input.overallVelocityX;\n } else if (direction & DIRECTION_VERTICAL) {\n velocity = input.overallVelocityY;\n }\n\n return this._super.attrTest.call(this, input) &&\n direction & input.offsetDirection &&\n input.distance > this.options.threshold &&\n input.maxPointers == this.options.pointers &&\n abs(velocity) > this.options.velocity && input.eventType & INPUT_END;\n },\n\n emit: function(input) {\n var direction = directionStr(input.offsetDirection);\n if (direction) {\n this.manager.emit(this.options.event + direction, input);\n }\n\n this.manager.emit(this.options.event, input);\n }\n});\n\n/**\n * A tap is ecognized when the pointer is doing a small tap/click. Multiple taps are recognized if they occur\n * between the given interval and position. The delay option can be used to recognize multi-taps without firing\n * a single tap.\n *\n * The eventData from the emitted event contains the property `tapCount`, which contains the amount of\n * multi-taps being recognized.\n * @constructor\n * @extends Recognizer\n */\nfunction TapRecognizer() {\n Recognizer.apply(this, arguments);\n\n // previous time and center,\n // used for tap counting\n this.pTime = false;\n this.pCenter = false;\n\n this._timer = null;\n this._input = null;\n this.count = 0;\n}\n\ninherit(TapRecognizer, Recognizer, {\n /**\n * @namespace\n * @memberof PinchRecognizer\n */\n defaults: {\n event: 'tap',\n pointers: 1,\n taps: 1,\n interval: 300, // max time between the multi-tap taps\n time: 250, // max time of the pointer to be down (like finger on the screen)\n threshold: 9, // a minimal movement is ok, but keep it low\n posThreshold: 10 // a multi-tap can be a bit off the initial position\n },\n\n getTouchAction: function() {\n return [TOUCH_ACTION_MANIPULATION];\n },\n\n process: function(input) {\n var options = this.options;\n\n var validPointers = input.pointers.length === options.pointers;\n var validMovement = input.distance < options.threshold;\n var validTouchTime = input.deltaTime < options.time;\n\n this.reset();\n\n if ((input.eventType & INPUT_START) && (this.count === 0)) {\n return this.failTimeout();\n }\n\n // we only allow little movement\n // and we've reached an end event, so a tap is possible\n if (validMovement && validTouchTime && validPointers) {\n if (input.eventType != INPUT_END) {\n return this.failTimeout();\n }\n\n var validInterval = this.pTime ? (input.timeStamp - this.pTime < options.interval) : true;\n var validMultiTap = !this.pCenter || getDistance(this.pCenter, input.center) < options.posThreshold;\n\n this.pTime = input.timeStamp;\n this.pCenter = input.center;\n\n if (!validMultiTap || !validInterval) {\n this.count = 1;\n } else {\n this.count += 1;\n }\n\n this._input = input;\n\n // if tap count matches we have recognized it,\n // else it has began recognizing...\n var tapCount = this.count % options.taps;\n if (tapCount === 0) {\n // no failing requirements, immediately trigger the tap event\n // or wait as long as the multitap interval to trigger\n if (!this.hasRequireFailures()) {\n return STATE_RECOGNIZED;\n } else {\n this._timer = setTimeoutContext(function() {\n this.state = STATE_RECOGNIZED;\n this.tryEmit();\n }, options.interval, this);\n return STATE_BEGAN;\n }\n }\n }\n return STATE_FAILED;\n },\n\n failTimeout: function() {\n this._timer = setTimeoutContext(function() {\n this.state = STATE_FAILED;\n }, this.options.interval, this);\n return STATE_FAILED;\n },\n\n reset: function() {\n clearTimeout(this._timer);\n },\n\n emit: function() {\n if (this.state == STATE_RECOGNIZED) {\n this._input.tapCount = this.count;\n this.manager.emit(this.options.event, this._input);\n }\n }\n});\n\n/**\n * Simple way to create a manager with a default set of recognizers.\n * @param {HTMLElement} element\n * @param {Object} [options]\n * @constructor\n */\nfunction Hammer(element, options) {\n options = options || {};\n options.recognizers = ifUndefined(options.recognizers, Hammer.defaults.preset);\n return new Manager(element, options);\n}\n\n/**\n * @const {string}\n */\nHammer.VERSION = '2.0.7';\n\n/**\n * default settings\n * @namespace\n */\nHammer.defaults = {\n /**\n * set if DOM events are being triggered.\n * But this is slower and unused by simple implementations, so disabled by default.\n * @type {Boolean}\n * @default false\n */\n domEvents: false,\n\n /**\n * The value for the touchAction property/fallback.\n * When set to `compute` it will magically set the correct value based on the added recognizers.\n * @type {String}\n * @default compute\n */\n touchAction: TOUCH_ACTION_COMPUTE,\n\n /**\n * @type {Boolean}\n * @default true\n */\n enable: true,\n\n /**\n * EXPERIMENTAL FEATURE -- can be removed/changed\n * Change the parent input target element.\n * If Null, then it is being set the to main element.\n * @type {Null|EventTarget}\n * @default null\n */\n inputTarget: null,\n\n /**\n * force an input class\n * @type {Null|Function}\n * @default null\n */\n inputClass: null,\n\n /**\n * Default recognizer setup when calling `Hammer()`\n * When creating a new Manager these will be skipped.\n * @type {Array}\n */\n preset: [\n // RecognizerClass, options, [recognizeWith, ...], [requireFailure, ...]\n [RotateRecognizer, {enable: false}],\n [PinchRecognizer, {enable: false}, ['rotate']],\n [SwipeRecognizer, {direction: DIRECTION_HORIZONTAL}],\n [PanRecognizer, {direction: DIRECTION_HORIZONTAL}, ['swipe']],\n [TapRecognizer],\n [TapRecognizer, {event: 'doubletap', taps: 2}, ['tap']],\n [PressRecognizer]\n ],\n\n /**\n * Some CSS properties can be used to improve the working of Hammer.\n * Add them to this method and they will be set when creating a new Manager.\n * @namespace\n */\n cssProps: {\n /**\n * Disables text selection to improve the dragging gesture. Mainly for desktop browsers.\n * @type {String}\n * @default 'none'\n */\n userSelect: 'none',\n\n /**\n * Disable the Windows Phone grippers when pressing an element.\n * @type {String}\n * @default 'none'\n */\n touchSelect: 'none',\n\n /**\n * Disables the default callout shown when you touch and hold a touch target.\n * On iOS, when you touch and hold a touch target such as a link, Safari displays\n * a callout containing information about the link. This property allows you to disable that callout.\n * @type {String}\n * @default 'none'\n */\n touchCallout: 'none',\n\n /**\n * Specifies whether zooming is enabled. Used by IE10>\n * @type {String}\n * @default 'none'\n */\n contentZooming: 'none',\n\n /**\n * Specifies that an entire element should be draggable instead of its contents. Mainly for desktop browsers.\n * @type {String}\n * @default 'none'\n */\n userDrag: 'none',\n\n /**\n * Overrides the highlight color shown when the user taps a link or a JavaScript\n * clickable element in iOS. This property obeys the alpha value, if specified.\n * @type {String}\n * @default 'rgba(0,0,0,0)'\n */\n tapHighlightColor: 'rgba(0,0,0,0)'\n }\n};\n\nvar STOP = 1;\nvar FORCED_STOP = 2;\n\n/**\n * Manager\n * @param {HTMLElement} element\n * @param {Object} [options]\n * @constructor\n */\nfunction Manager(element, options) {\n this.options = assign({}, Hammer.defaults, options || {});\n\n this.options.inputTarget = this.options.inputTarget || element;\n\n this.handlers = {};\n this.session = {};\n this.recognizers = [];\n this.oldCssProps = {};\n\n this.element = element;\n this.input = createInputInstance(this);\n this.touchAction = new TouchAction(this, this.options.touchAction);\n\n toggleCssProps(this, true);\n\n each(this.options.recognizers, function(item) {\n var recognizer = this.add(new (item[0])(item[1]));\n item[2] && recognizer.recognizeWith(item[2]);\n item[3] && recognizer.requireFailure(item[3]);\n }, this);\n}\n\nManager.prototype = {\n /**\n * set options\n * @param {Object} options\n * @returns {Manager}\n */\n set: function(options) {\n assign(this.options, options);\n\n // Options that need a little more setup\n if (options.touchAction) {\n this.touchAction.update();\n }\n if (options.inputTarget) {\n // Clean up existing event listeners and reinitialize\n this.input.destroy();\n this.input.target = options.inputTarget;\n this.input.init();\n }\n return this;\n },\n\n /**\n * stop recognizing for this session.\n * This session will be discarded, when a new [input]start event is fired.\n * When forced, the recognizer cycle is stopped immediately.\n * @param {Boolean} [force]\n */\n stop: function(force) {\n this.session.stopped = force ? FORCED_STOP : STOP;\n },\n\n /**\n * run the recognizers!\n * called by the inputHandler function on every movement of the pointers (touches)\n * it walks through all the recognizers and tries to detect the gesture that is being made\n * @param {Object} inputData\n */\n recognize: function(inputData) {\n var session = this.session;\n if (session.stopped) {\n return;\n }\n\n // run the touch-action polyfill\n this.touchAction.preventDefaults(inputData);\n\n var recognizer;\n var recognizers = this.recognizers;\n\n // this holds the recognizer that is being recognized.\n // so the recognizer's state needs to be BEGAN, CHANGED, ENDED or RECOGNIZED\n // if no recognizer is detecting a thing, it is set to `null`\n var curRecognizer = session.curRecognizer;\n\n // reset when the last recognizer is recognized\n // or when we're in a new session\n if (!curRecognizer || (curRecognizer && curRecognizer.state & STATE_RECOGNIZED)) {\n curRecognizer = session.curRecognizer = null;\n }\n\n var i = 0;\n while (i < recognizers.length) {\n recognizer = recognizers[i];\n\n // find out if we are allowed try to recognize the input for this one.\n // 1. allow if the session is NOT forced stopped (see the .stop() method)\n // 2. allow if we still haven't recognized a gesture in this session, or the this recognizer is the one\n // that is being recognized.\n // 3. allow if the recognizer is allowed to run simultaneous with the current recognized recognizer.\n // this can be setup with the `recognizeWith()` method on the recognizer.\n if (session.stopped !== FORCED_STOP && ( // 1\n !curRecognizer || recognizer == curRecognizer || // 2\n recognizer.canRecognizeWith(curRecognizer))) { // 3\n recognizer.recognize(inputData);\n } else {\n recognizer.reset();\n }\n\n // if the recognizer has been recognizing the input as a valid gesture, we want to store this one as the\n // current active recognizer. but only if we don't already have an active recognizer\n if (!curRecognizer && recognizer.state & (STATE_BEGAN | STATE_CHANGED | STATE_ENDED)) {\n curRecognizer = session.curRecognizer = recognizer;\n }\n i++;\n }\n },\n\n /**\n * get a recognizer by its event name.\n * @param {Recognizer|String} recognizer\n * @returns {Recognizer|Null}\n */\n get: function(recognizer) {\n if (recognizer instanceof Recognizer) {\n return recognizer;\n }\n\n var recognizers = this.recognizers;\n for (var i = 0; i < recognizers.length; i++) {\n if (recognizers[i].options.event == recognizer) {\n return recognizers[i];\n }\n }\n return null;\n },\n\n /**\n * add a recognizer to the manager\n * existing recognizers with the same event name will be removed\n * @param {Recognizer} recognizer\n * @returns {Recognizer|Manager}\n */\n add: function(recognizer) {\n if (invokeArrayArg(recognizer, 'add', this)) {\n return this;\n }\n\n // remove existing\n var existing = this.get(recognizer.options.event);\n if (existing) {\n this.remove(existing);\n }\n\n this.recognizers.push(recognizer);\n recognizer.manager = this;\n\n this.touchAction.update();\n return recognizer;\n },\n\n /**\n * remove a recognizer by name or instance\n * @param {Recognizer|String} recognizer\n * @returns {Manager}\n */\n remove: function(recognizer) {\n if (invokeArrayArg(recognizer, 'remove', this)) {\n return this;\n }\n\n recognizer = this.get(recognizer);\n\n // let's make sure this recognizer exists\n if (recognizer) {\n var recognizers = this.recognizers;\n var index = inArray(recognizers, recognizer);\n\n if (index !== -1) {\n recognizers.splice(index, 1);\n this.touchAction.update();\n }\n }\n\n return this;\n },\n\n /**\n * bind event\n * @param {String} events\n * @param {Function} handler\n * @returns {EventEmitter} this\n */\n on: function(events, handler) {\n if (events === undefined) {\n return;\n }\n if (handler === undefined) {\n return;\n }\n\n var handlers = this.handlers;\n each(splitStr(events), function(event) {\n handlers[event] = handlers[event] || [];\n handlers[event].push(handler);\n });\n return this;\n },\n\n /**\n * unbind event, leave emit blank to remove all handlers\n * @param {String} events\n * @param {Function} [handler]\n * @returns {EventEmitter} this\n */\n off: function(events, handler) {\n if (events === undefined) {\n return;\n }\n\n var handlers = this.handlers;\n each(splitStr(events), function(event) {\n if (!handler) {\n delete handlers[event];\n } else {\n handlers[event] && handlers[event].splice(inArray(handlers[event], handler), 1);\n }\n });\n return this;\n },\n\n /**\n * emit event to the listeners\n * @param {String} event\n * @param {Object} data\n */\n emit: function(event, data) {\n // we also want to trigger dom events\n if (this.options.domEvents) {\n triggerDomEvent(event, data);\n }\n\n // no handlers, so skip it all\n var handlers = this.handlers[event] && this.handlers[event].slice();\n if (!handlers || !handlers.length) {\n return;\n }\n\n data.type = event;\n data.preventDefault = function() {\n data.srcEvent.preventDefault();\n };\n\n var i = 0;\n while (i < handlers.length) {\n handlers[i](data);\n i++;\n }\n },\n\n /**\n * destroy the manager and unbinds all events\n * it doesn't unbind dom events, that is the user own responsibility\n */\n destroy: function() {\n this.element && toggleCssProps(this, false);\n\n this.handlers = {};\n this.session = {};\n this.input.destroy();\n this.element = null;\n }\n};\n\n/**\n * add/remove the css properties as defined in manager.options.cssProps\n * @param {Manager} manager\n * @param {Boolean} add\n */\nfunction toggleCssProps(manager, add) {\n var element = manager.element;\n if (!element.style) {\n return;\n }\n var prop;\n each(manager.options.cssProps, function(value, name) {\n prop = prefixed(element.style, name);\n if (add) {\n manager.oldCssProps[prop] = element.style[prop];\n element.style[prop] = value;\n } else {\n element.style[prop] = manager.oldCssProps[prop] || '';\n }\n });\n if (!add) {\n manager.oldCssProps = {};\n }\n}\n\n/**\n * trigger dom event\n * @param {String} event\n * @param {Object} data\n */\nfunction triggerDomEvent(event, data) {\n var gestureEvent = document.createEvent('Event');\n gestureEvent.initEvent(event, true, true);\n gestureEvent.gesture = data;\n data.target.dispatchEvent(gestureEvent);\n}\n\nassign(Hammer, {\n INPUT_START: INPUT_START,\n INPUT_MOVE: INPUT_MOVE,\n INPUT_END: INPUT_END,\n INPUT_CANCEL: INPUT_CANCEL,\n\n STATE_POSSIBLE: STATE_POSSIBLE,\n STATE_BEGAN: STATE_BEGAN,\n STATE_CHANGED: STATE_CHANGED,\n STATE_ENDED: STATE_ENDED,\n STATE_RECOGNIZED: STATE_RECOGNIZED,\n STATE_CANCELLED: STATE_CANCELLED,\n STATE_FAILED: STATE_FAILED,\n\n DIRECTION_NONE: DIRECTION_NONE,\n DIRECTION_LEFT: DIRECTION_LEFT,\n DIRECTION_RIGHT: DIRECTION_RIGHT,\n DIRECTION_UP: DIRECTION_UP,\n DIRECTION_DOWN: DIRECTION_DOWN,\n DIRECTION_HORIZONTAL: DIRECTION_HORIZONTAL,\n DIRECTION_VERTICAL: DIRECTION_VERTICAL,\n DIRECTION_ALL: DIRECTION_ALL,\n\n Manager: Manager,\n Input: Input,\n TouchAction: TouchAction,\n\n TouchInput: TouchInput,\n MouseInput: MouseInput,\n PointerEventInput: PointerEventInput,\n TouchMouseInput: TouchMouseInput,\n SingleTouchInput: SingleTouchInput,\n\n Recognizer: Recognizer,\n AttrRecognizer: AttrRecognizer,\n Tap: TapRecognizer,\n Pan: PanRecognizer,\n Swipe: SwipeRecognizer,\n Pinch: PinchRecognizer,\n Rotate: RotateRecognizer,\n Press: PressRecognizer,\n\n on: addEventListeners,\n off: removeEventListeners,\n each: each,\n merge: merge,\n extend: extend,\n assign: assign,\n inherit: inherit,\n bindFn: bindFn,\n prefixed: prefixed\n});\n\n// this prevents errors when Hammer is loaded in the presence of an AMD\n// style loader but by script tag, not by the loader.\nvar freeGlobal = (typeof window !== 'undefined' ? window : (typeof self !== 'undefined' ? self : {})); // jshint ignore:line\nfreeGlobal.Hammer = Hammer;\n\nif (typeof define === 'function' && define.amd) {\n define(function() {\n return Hammer;\n });\n} else if (typeof module != 'undefined' && module.exports) {\n module.exports = Hammer;\n} else {\n window[exportName] = Hammer;\n}\n\n})(window, document, 'Hammer');\n","'use strict';\n\nvar origSymbol = typeof Symbol !== 'undefined' && Symbol;\nvar hasSymbolSham = require('./shams');\n\nmodule.exports = function hasNativeSymbols() {\n\tif (typeof origSymbol !== 'function') { return false; }\n\tif (typeof Symbol !== 'function') { return false; }\n\tif (typeof origSymbol('foo') !== 'symbol') { return false; }\n\tif (typeof Symbol('bar') !== 'symbol') { return false; }\n\n\treturn hasSymbolSham();\n};\n","'use strict';\n\n/* eslint complexity: [2, 18], max-statements: [2, 33] */\nmodule.exports = function hasSymbols() {\n\tif (typeof Symbol !== 'function' || typeof Object.getOwnPropertySymbols !== 'function') { return false; }\n\tif (typeof Symbol.iterator === 'symbol') { return true; }\n\n\tvar obj = {};\n\tvar sym = Symbol('test');\n\tvar symObj = Object(sym);\n\tif (typeof sym === 'string') { return false; }\n\n\tif (Object.prototype.toString.call(sym) !== '[object Symbol]') { return false; }\n\tif (Object.prototype.toString.call(symObj) !== '[object Symbol]') { return false; }\n\n\t// temp disabled per https://github.com/ljharb/object.assign/issues/17\n\t// if (sym instanceof Symbol) { return false; }\n\t// temp disabled per https://github.com/WebReflection/get-own-property-symbols/issues/4\n\t// if (!(symObj instanceof Symbol)) { return false; }\n\n\t// if (typeof Symbol.prototype.toString !== 'function') { return false; }\n\t// if (String(sym) !== Symbol.prototype.toString.call(sym)) { return false; }\n\n\tvar symVal = 42;\n\tobj[sym] = symVal;\n\tfor (sym in obj) { return false; } // eslint-disable-line no-restricted-syntax, no-unreachable-loop\n\tif (typeof Object.keys === 'function' && Object.keys(obj).length !== 0) { return false; }\n\n\tif (typeof Object.getOwnPropertyNames === 'function' && Object.getOwnPropertyNames(obj).length !== 0) { return false; }\n\n\tvar syms = Object.getOwnPropertySymbols(obj);\n\tif (syms.length !== 1 || syms[0] !== sym) { return false; }\n\n\tif (!Object.prototype.propertyIsEnumerable.call(obj, sym)) { return false; }\n\n\tif (typeof Object.getOwnPropertyDescriptor === 'function') {\n\t\tvar descriptor = Object.getOwnPropertyDescriptor(obj, sym);\n\t\tif (descriptor.value !== symVal || descriptor.enumerable !== true) { return false; }\n\t}\n\n\treturn true;\n};\n","'use strict';\n\nvar hasSymbols = require('has-symbols/shams');\n\nmodule.exports = function hasToStringTagShams() {\n\treturn hasSymbols() && !!Symbol.toStringTag;\n};\n","'use strict';\n\nvar bind = require('function-bind');\n\nmodule.exports = bind.call(Function.call, Object.prototype.hasOwnProperty);\n","'use strict';\n\nvar hasToStringTag = require('has-tostringtag/shams')();\nvar callBound = require('call-bind/callBound');\n\nvar $toString = callBound('Object.prototype.toString');\n\nvar isStandardArguments = function isArguments(value) {\n\tif (hasToStringTag && value && typeof value === 'object' && Symbol.toStringTag in value) {\n\t\treturn false;\n\t}\n\treturn $toString(value) === '[object Arguments]';\n};\n\nvar isLegacyArguments = function isArguments(value) {\n\tif (isStandardArguments(value)) {\n\t\treturn true;\n\t}\n\treturn value !== null &&\n\t\ttypeof value === 'object' &&\n\t\ttypeof value.length === 'number' &&\n\t\tvalue.length >= 0 &&\n\t\t$toString(value) !== '[object Array]' &&\n\t\t$toString(value.callee) === '[object Function]';\n};\n\nvar supportsStandardArguments = (function () {\n\treturn isStandardArguments(arguments);\n}());\n\nisStandardArguments.isLegacyArguments = isLegacyArguments; // for tests\n\nmodule.exports = supportsStandardArguments ? isStandardArguments : isLegacyArguments;\n","'use strict';\n\nvar toStr = Object.prototype.toString;\nvar fnToStr = Function.prototype.toString;\nvar isFnRegex = /^\\s*(?:function)?\\*/;\nvar hasToStringTag = require('has-tostringtag/shams')();\nvar getProto = Object.getPrototypeOf;\nvar getGeneratorFunc = function () { // eslint-disable-line consistent-return\n\tif (!hasToStringTag) {\n\t\treturn false;\n\t}\n\ttry {\n\t\treturn Function('return function*() {}')();\n\t} catch (e) {\n\t}\n};\nvar GeneratorFunction;\n\nmodule.exports = function isGeneratorFunction(fn) {\n\tif (typeof fn !== 'function') {\n\t\treturn false;\n\t}\n\tif (isFnRegex.test(fnToStr.call(fn))) {\n\t\treturn true;\n\t}\n\tif (!hasToStringTag) {\n\t\tvar str = toStr.call(fn);\n\t\treturn str === '[object GeneratorFunction]';\n\t}\n\tif (!getProto) {\n\t\treturn false;\n\t}\n\tif (typeof GeneratorFunction === 'undefined') {\n\t\tvar generatorFunc = getGeneratorFunc();\n\t\tGeneratorFunction = generatorFunc ? getProto(generatorFunc) : false;\n\t}\n\treturn getProto(fn) === GeneratorFunction;\n};\n","'use strict';\n\n/* http://www.ecma-international.org/ecma-262/6.0/#sec-number.isnan */\n\nmodule.exports = function isNaN(value) {\n\treturn value !== value;\n};\n","'use strict';\n\nvar callBind = require('call-bind');\nvar define = require('define-properties');\n\nvar implementation = require('./implementation');\nvar getPolyfill = require('./polyfill');\nvar shim = require('./shim');\n\nvar polyfill = callBind(getPolyfill(), Number);\n\n/* http://www.ecma-international.org/ecma-262/6.0/#sec-number.isnan */\n\ndefine(polyfill, {\n\tgetPolyfill: getPolyfill,\n\timplementation: implementation,\n\tshim: shim\n});\n\nmodule.exports = polyfill;\n","'use strict';\n\nvar implementation = require('./implementation');\n\nmodule.exports = function getPolyfill() {\n\tif (Number.isNaN && Number.isNaN(NaN) && !Number.isNaN('a')) {\n\t\treturn Number.isNaN;\n\t}\n\treturn implementation;\n};\n","'use strict';\n\nvar define = require('define-properties');\nvar getPolyfill = require('./polyfill');\n\n/* http://www.ecma-international.org/ecma-262/6.0/#sec-number.isnan */\n\nmodule.exports = function shimNumberIsNaN() {\n\tvar polyfill = getPolyfill();\n\tdefine(Number, { isNaN: polyfill }, {\n\t\tisNaN: function testIsNaN() {\n\t\t\treturn Number.isNaN !== polyfill;\n\t\t}\n\t});\n\treturn polyfill;\n};\n","'use strict';\n\nvar forEach = require('foreach');\nvar availableTypedArrays = require('available-typed-arrays');\nvar callBound = require('call-bind/callBound');\n\nvar $toString = callBound('Object.prototype.toString');\nvar hasToStringTag = require('has-tostringtag/shams')();\n\nvar g = typeof globalThis === 'undefined' ? global : globalThis;\nvar typedArrays = availableTypedArrays();\n\nvar $indexOf = callBound('Array.prototype.indexOf', true) || function indexOf(array, value) {\n\tfor (var i = 0; i < array.length; i += 1) {\n\t\tif (array[i] === value) {\n\t\t\treturn i;\n\t\t}\n\t}\n\treturn -1;\n};\nvar $slice = callBound('String.prototype.slice');\nvar toStrTags = {};\nvar gOPD = require('es-abstract/helpers/getOwnPropertyDescriptor');\nvar getPrototypeOf = Object.getPrototypeOf; // require('getprototypeof');\nif (hasToStringTag && gOPD && getPrototypeOf) {\n\tforEach(typedArrays, function (typedArray) {\n\t\tvar arr = new g[typedArray]();\n\t\tif (Symbol.toStringTag in arr) {\n\t\t\tvar proto = getPrototypeOf(arr);\n\t\t\tvar descriptor = gOPD(proto, Symbol.toStringTag);\n\t\t\tif (!descriptor) {\n\t\t\t\tvar superProto = getPrototypeOf(proto);\n\t\t\t\tdescriptor = gOPD(superProto, Symbol.toStringTag);\n\t\t\t}\n\t\t\ttoStrTags[typedArray] = descriptor.get;\n\t\t}\n\t});\n}\n\nvar tryTypedArrays = function tryAllTypedArrays(value) {\n\tvar anyTrue = false;\n\tforEach(toStrTags, function (getter, typedArray) {\n\t\tif (!anyTrue) {\n\t\t\ttry {\n\t\t\t\tanyTrue = getter.call(value) === typedArray;\n\t\t\t} catch (e) { /**/ }\n\t\t}\n\t});\n\treturn anyTrue;\n};\n\nmodule.exports = function isTypedArray(value) {\n\tif (!value || typeof value !== 'object') { return false; }\n\tif (!hasToStringTag || !(Symbol.toStringTag in value)) {\n\t\tvar tag = $slice($toString(value), 8, -1);\n\t\treturn $indexOf(typedArrays, tag) > -1;\n\t}\n\tif (!gOPD) { return false; }\n\treturn tryTypedArrays(value);\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","var getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar DataView = getNative(root, 'DataView');\n\nmodule.exports = DataView;\n","var hashClear = require('./_hashClear'),\n hashDelete = require('./_hashDelete'),\n hashGet = require('./_hashGet'),\n hashHas = require('./_hashHas'),\n hashSet = require('./_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\nmodule.exports = Hash;\n","var listCacheClear = require('./_listCacheClear'),\n listCacheDelete = require('./_listCacheDelete'),\n listCacheGet = require('./_listCacheGet'),\n listCacheHas = require('./_listCacheHas'),\n listCacheSet = require('./_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\nmodule.exports = ListCache;\n","var getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar Map = getNative(root, 'Map');\n\nmodule.exports = Map;\n","var mapCacheClear = require('./_mapCacheClear'),\n mapCacheDelete = require('./_mapCacheDelete'),\n mapCacheGet = require('./_mapCacheGet'),\n mapCacheHas = require('./_mapCacheHas'),\n mapCacheSet = require('./_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\nmodule.exports = MapCache;\n","var getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar Promise = getNative(root, 'Promise');\n\nmodule.exports = Promise;\n","var getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar Set = getNative(root, 'Set');\n\nmodule.exports = Set;\n","var MapCache = require('./_MapCache'),\n setCacheAdd = require('./_setCacheAdd'),\n setCacheHas = require('./_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\nmodule.exports = SetCache;\n","var ListCache = require('./_ListCache'),\n stackClear = require('./_stackClear'),\n stackDelete = require('./_stackDelete'),\n stackGet = require('./_stackGet'),\n stackHas = require('./_stackHas'),\n stackSet = require('./_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\nmodule.exports = Stack;\n","var root = require('./_root');\n\n/** Built-in value references. */\nvar Symbol = root.Symbol;\n\nmodule.exports = Symbol;\n","var root = require('./_root');\n\n/** Built-in value references. */\nvar Uint8Array = root.Uint8Array;\n\nmodule.exports = Uint8Array;\n","var getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar WeakMap = getNative(root, 'WeakMap');\n\nmodule.exports = WeakMap;\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\nmodule.exports = apply;\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\nmodule.exports = arrayFilter;\n","var baseTimes = require('./_baseTimes'),\n isArguments = require('./isArguments'),\n isArray = require('./isArray'),\n isBuffer = require('./isBuffer'),\n isIndex = require('./_isIndex'),\n isTypedArray = require('./isTypedArray');\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 * 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(value),\n isArg = !isArr && isArguments(value),\n isBuff = !isArr && !isArg && isBuffer(value),\n isType = !isArr && !isArg && !isBuff && isTypedArray(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.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\nmodule.exports = arrayLikeKeys;\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\nmodule.exports = arrayPush;\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\nmodule.exports = arraySome;\n","var baseAssignValue = require('./_baseAssignValue'),\n eq = require('./eq');\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(object[key], value)) ||\n (value === undefined && !(key in object))) {\n baseAssignValue(object, key, value);\n }\n}\n\nmodule.exports = assignMergeValue;\n","var baseAssignValue = require('./_baseAssignValue'),\n eq = require('./eq');\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 * 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.call(object, key) && eq(objValue, value)) ||\n (value === undefined && !(key in object))) {\n baseAssignValue(object, key, value);\n }\n}\n\nmodule.exports = assignValue;\n","var eq = require('./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(array[length][0], key)) {\n return length;\n }\n }\n return -1;\n}\n\nmodule.exports = assocIndexOf;\n","var defineProperty = require('./_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) {\n defineProperty(object, key, {\n 'configurable': true,\n 'enumerable': true,\n 'value': value,\n 'writable': true\n });\n } else {\n object[key] = value;\n }\n}\n\nmodule.exports = baseAssignValue;\n","var isObject = require('./isObject');\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(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\nmodule.exports = baseCreate;\n","var createBaseFor = require('./_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\nmodule.exports = baseFor;\n","var arrayPush = require('./_arrayPush'),\n isArray = require('./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(object) ? result : arrayPush(result, symbolsFunc(object));\n}\n\nmodule.exports = baseGetAllKeys;\n","var Symbol = require('./_Symbol'),\n getRawTag = require('./_getRawTag'),\n objectToString = require('./_objectToString');\n\n/** `Object#toString` result references. */\nvar nullTag = '[object Null]',\n undefinedTag = '[object Undefined]';\n\n/** Built-in value references. */\nvar symToStringTag = 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 && symToStringTag in Object(value))\n ? getRawTag(value)\n : objectToString(value);\n}\n\nmodule.exports = baseGetTag;\n","var baseGetTag = require('./_baseGetTag'),\n isObjectLike = require('./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(value) && baseGetTag(value) == argsTag;\n}\n\nmodule.exports = baseIsArguments;\n","var baseIsEqualDeep = require('./_baseIsEqualDeep'),\n isObjectLike = require('./isObjectLike');\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(value) && !isObjectLike(other))) {\n return value !== value && other !== other;\n }\n return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack);\n}\n\nmodule.exports = baseIsEqual;\n","var Stack = require('./_Stack'),\n equalArrays = require('./_equalArrays'),\n equalByTag = require('./_equalByTag'),\n equalObjects = require('./_equalObjects'),\n getTag = require('./_getTag'),\n isArray = require('./isArray'),\n isBuffer = require('./isBuffer'),\n isTypedArray = require('./isTypedArray');\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1;\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]',\n arrayTag = '[object Array]',\n objectTag = '[object Object]';\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 * 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(object),\n othIsArr = isArray(other),\n objTag = objIsArr ? arrayTag : getTag(object),\n othTag = othIsArr ? arrayTag : getTag(other);\n\n objTag = objTag == argsTag ? objectTag : objTag;\n othTag = othTag == argsTag ? objectTag : othTag;\n\n var objIsObj = objTag == objectTag,\n othIsObj = othTag == objectTag,\n isSameTag = objTag == othTag;\n\n if (isSameTag && isBuffer(object)) {\n if (!isBuffer(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(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)) {\n var objIsWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'),\n othIsWrapped = othIsObj && hasOwnProperty.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\nmodule.exports = baseIsEqualDeep;\n","var isFunction = require('./isFunction'),\n isMasked = require('./_isMasked'),\n isObject = require('./isObject'),\n toSource = require('./_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 = Function.prototype,\n objectProto = Object.prototype;\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/** 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/**\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) ? reIsNative : reIsHostCtor;\n return pattern.test(toSource(value));\n}\n\nmodule.exports = baseIsNative;\n","var baseGetTag = require('./_baseGetTag'),\n isLength = require('./isLength'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]',\n arrayTag = '[object Array]',\n boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n errorTag = '[object Error]',\n funcTag = '[object Function]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n objectTag = '[object Object]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n weakMapTag = '[object WeakMap]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[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] = typedArrayTags[arrayTag] =\ntypedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] =\ntypedArrayTags[dataViewTag] = typedArrayTags[dateTag] =\ntypedArrayTags[errorTag] = typedArrayTags[funcTag] =\ntypedArrayTags[mapTag] = typedArrayTags[numberTag] =\ntypedArrayTags[objectTag] = typedArrayTags[regexpTag] =\ntypedArrayTags[setTag] = typedArrayTags[stringTag] =\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(value) &&\n isLength(value.length) && !!typedArrayTags[baseGetTag(value)];\n}\n\nmodule.exports = baseIsTypedArray;\n","var isPrototype = require('./_isPrototype'),\n nativeKeys = require('./_nativeKeys');\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 * 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.call(object, key) && key != 'constructor') {\n result.push(key);\n }\n }\n return result;\n}\n\nmodule.exports = baseKeys;\n","var isObject = require('./isObject'),\n isPrototype = require('./_isPrototype'),\n nativeKeysIn = require('./_nativeKeysIn');\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 * 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(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.call(object, key)))) {\n result.push(key);\n }\n }\n return result;\n}\n\nmodule.exports = baseKeysIn;\n","var Stack = require('./_Stack'),\n assignMergeValue = require('./_assignMergeValue'),\n baseFor = require('./_baseFor'),\n baseMergeDeep = require('./_baseMergeDeep'),\n isObject = require('./isObject'),\n keysIn = require('./keysIn'),\n safeGet = require('./_safeGet');\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(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);\n}\n\nmodule.exports = baseMerge;\n","var assignMergeValue = require('./_assignMergeValue'),\n cloneBuffer = require('./_cloneBuffer'),\n cloneTypedArray = require('./_cloneTypedArray'),\n copyArray = require('./_copyArray'),\n initCloneObject = require('./_initCloneObject'),\n isArguments = require('./isArguments'),\n isArray = require('./isArray'),\n isArrayLikeObject = require('./isArrayLikeObject'),\n isBuffer = require('./isBuffer'),\n isFunction = require('./isFunction'),\n isObject = require('./isObject'),\n isPlainObject = require('./isPlainObject'),\n isTypedArray = require('./isTypedArray'),\n safeGet = require('./_safeGet'),\n toPlainObject = require('./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(srcValue),\n isBuff = !isArr && isBuffer(srcValue),\n isTyped = !isArr && !isBuff && isTypedArray(srcValue);\n\n newValue = srcValue;\n if (isArr || isBuff || isTyped) {\n if (isArray(objValue)) {\n newValue = objValue;\n }\n else if (isArrayLikeObject(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(srcValue) || isArguments(srcValue)) {\n newValue = objValue;\n if (isArguments(objValue)) {\n newValue = toPlainObject(objValue);\n }\n else if (!isObject(objValue) || isFunction(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\nmodule.exports = baseMergeDeep;\n","var identity = require('./identity'),\n overRest = require('./_overRest'),\n setToString = require('./_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), func + '');\n}\n\nmodule.exports = baseRest;\n","var constant = require('./constant'),\n defineProperty = require('./_defineProperty'),\n identity = require('./identity');\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 ? identity : function(func, string) {\n return defineProperty(func, 'toString', {\n 'configurable': true,\n 'enumerable': false,\n 'value': constant(string),\n 'writable': true\n });\n};\n\nmodule.exports = baseSetToString;\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\nmodule.exports = baseTimes;\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\nmodule.exports = baseUnary;\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\nmodule.exports = cacheHas;\n","var Uint8Array = require('./_Uint8Array');\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\nmodule.exports = cloneArrayBuffer;\n","var root = require('./_root');\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == '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","var cloneArrayBuffer = require('./_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\nmodule.exports = cloneTypedArray;\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\nmodule.exports = copyArray;\n","var assignValue = require('./_assignValue'),\n baseAssignValue = require('./_baseAssignValue');\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\nmodule.exports = copyObject;\n","var root = require('./_root');\n\n/** Used to detect overreaching core-js shims. */\nvar coreJsData = root['__core-js_shared__'];\n\nmodule.exports = coreJsData;\n","var baseRest = require('./_baseRest'),\n isIterateeCall = require('./_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\nmodule.exports = createAssigner;\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\nmodule.exports = createBaseFor;\n","var getNative = require('./_getNative');\n\nvar defineProperty = (function() {\n try {\n var func = getNative(Object, 'defineProperty');\n func({}, '', {});\n return func;\n } catch (e) {}\n}());\n\nmodule.exports = defineProperty;\n","var SetCache = require('./_SetCache'),\n arraySome = require('./_arraySome'),\n cacheHas = require('./_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 // Check that cyclic values are equal.\n var arrStacked = stack.get(array);\n var othStacked = stack.get(other);\n if (arrStacked && othStacked) {\n return arrStacked == other && othStacked == array;\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\nmodule.exports = equalArrays;\n","var Symbol = require('./_Symbol'),\n Uint8Array = require('./_Uint8Array'),\n eq = require('./eq'),\n equalArrays = require('./_equalArrays'),\n mapToArray = require('./_mapToArray'),\n setToArray = require('./_setToArray');\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1,\n COMPARE_UNORDERED_FLAG = 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(+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;\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;\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\nmodule.exports = equalByTag;\n","var getAllKeys = require('./_getAllKeys');\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 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 * 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,\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.call(other, key))) {\n return false;\n }\n }\n // Check that cyclic values are equal.\n var objStacked = stack.get(object);\n var othStacked = stack.get(other);\n if (objStacked && othStacked) {\n return objStacked == other && othStacked == object;\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\nmodule.exports = equalObjects;\n","/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\nmodule.exports = freeGlobal;\n","var baseGetAllKeys = require('./_baseGetAllKeys'),\n getSymbols = require('./_getSymbols'),\n keys = require('./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, getSymbols);\n}\n\nmodule.exports = getAllKeys;\n","var isKeyable = require('./_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\nmodule.exports = getMapData;\n","var baseIsNative = require('./_baseIsNative'),\n getValue = require('./_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\nmodule.exports = getNative;\n","var overArg = require('./_overArg');\n\n/** Built-in value references. */\nvar getPrototype = overArg(Object.getPrototypeOf, Object);\n\nmodule.exports = getPrototype;\n","var Symbol = require('./_Symbol');\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\nmodule.exports = getRawTag;\n","var arrayFilter = require('./_arrayFilter'),\n stubArray = require('./stubArray');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Built-in value references. */\nvar propertyIsEnumerable = objectProto.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 : 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\nmodule.exports = getSymbols;\n","var DataView = require('./_DataView'),\n Map = require('./_Map'),\n Promise = require('./_Promise'),\n Set = require('./_Set'),\n WeakMap = require('./_WeakMap'),\n baseGetTag = require('./_baseGetTag'),\n toSource = require('./_toSource');\n\n/** `Object#toString` result references. */\nvar mapTag = '[object Map]',\n objectTag = '[object Object]',\n promiseTag = '[object Promise]',\n setTag = '[object Set]',\n weakMapTag = '[object WeakMap]';\n\nvar dataViewTag = '[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) ||\n (Map && getTag(new Map) != mapTag) ||\n (Promise && getTag(Promise.resolve()) != promiseTag) ||\n (Set && getTag(new Set) != setTag) ||\n (WeakMap && getTag(new WeakMap) != weakMapTag)) {\n getTag = function(value) {\n var result = baseGetTag(value),\n Ctor = result == objectTag ? value.constructor : undefined,\n ctorString = Ctor ? toSource(Ctor) : '';\n\n if (ctorString) {\n switch (ctorString) {\n case dataViewCtorString: return dataViewTag;\n case mapCtorString: return mapTag;\n case promiseCtorString: return promiseTag;\n case setCtorString: return setTag;\n case weakMapCtorString: return weakMapTag;\n }\n }\n return result;\n };\n}\n\nmodule.exports = getTag;\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\nmodule.exports = getValue;\n","var nativeCreate = require('./_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\nmodule.exports = hashClear;\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\nmodule.exports = hashDelete;\n","var nativeCreate = require('./_nativeCreate');\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 = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.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.call(data, key) ? data[key] : undefined;\n}\n\nmodule.exports = hashGet;\n","var nativeCreate = require('./_nativeCreate');\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 * 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\nmodule.exports = hashHas;\n","var nativeCreate = require('./_nativeCreate');\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__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 : value;\n return this;\n}\n\nmodule.exports = hashSet;\n","var baseCreate = require('./_baseCreate'),\n getPrototype = require('./_getPrototype'),\n isPrototype = require('./_isPrototype');\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\nmodule.exports = initCloneObject;\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\nmodule.exports = isIndex;\n","var eq = require('./eq'),\n isArrayLike = require('./isArrayLike'),\n isIndex = require('./_isIndex'),\n isObject = require('./isObject');\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(object)) {\n return false;\n }\n var type = typeof index;\n if (type == 'number'\n ? (isArrayLike(object) && isIndex(index, object.length))\n : (type == 'string' && index in object)\n ) {\n return eq(object[index], value);\n }\n return false;\n}\n\nmodule.exports = isIterateeCall;\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\nmodule.exports = isKeyable;\n","var coreJsData = require('./_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\nmodule.exports = isMasked;\n","/** Used for built-in method references. */\nvar objectProto = 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;\n\n return value === proto;\n}\n\nmodule.exports = isPrototype;\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\nmodule.exports = listCacheClear;\n","var assocIndexOf = require('./_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\nmodule.exports = listCacheDelete;\n","var assocIndexOf = require('./_assocIndexOf');\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\nmodule.exports = listCacheGet;\n","var assocIndexOf = require('./_assocIndexOf');\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\nmodule.exports = listCacheHas;\n","var assocIndexOf = require('./_assocIndexOf');\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\nmodule.exports = listCacheSet;\n","var Hash = require('./_Hash'),\n ListCache = require('./_ListCache'),\n Map = require('./_Map');\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\nmodule.exports = mapCacheClear;\n","var getMapData = require('./_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\nmodule.exports = mapCacheDelete;\n","var getMapData = require('./_getMapData');\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\nmodule.exports = mapCacheGet;\n","var getMapData = require('./_getMapData');\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\nmodule.exports = mapCacheHas;\n","var getMapData = require('./_getMapData');\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\nmodule.exports = mapCacheSet;\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\nmodule.exports = mapToArray;\n","var getNative = require('./_getNative');\n\n/* Built-in method references that are verified to be native. */\nvar nativeCreate = getNative(Object, 'create');\n\nmodule.exports = nativeCreate;\n","var overArg = require('./_overArg');\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeKeys = overArg(Object.keys, Object);\n\nmodule.exports = nativeKeys;\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\nmodule.exports = nativeKeysIn;\n","var freeGlobal = require('./_freeGlobal');\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == '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","/** Used for built-in method references. */\nvar objectProto = 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 = objectProto.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.call(value);\n}\n\nmodule.exports = objectToString;\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\nmodule.exports = overArg;\n","var apply = require('./_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\nmodule.exports = overRest;\n","var freeGlobal = require('./_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\nmodule.exports = root;\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\nmodule.exports = safeGet;\n","/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__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);\n return this;\n}\n\nmodule.exports = setCacheAdd;\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\nmodule.exports = setCacheHas;\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\nmodule.exports = setToArray;\n","var baseSetToString = require('./_baseSetToString'),\n shortOut = require('./_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\nmodule.exports = setToString;\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\nmodule.exports = shortOut;\n","var ListCache = require('./_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\nmodule.exports = stackClear;\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\nmodule.exports = stackDelete;\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\nmodule.exports = stackGet;\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\nmodule.exports = stackHas;\n","var ListCache = require('./_ListCache'),\n Map = require('./_Map'),\n MapCache = require('./_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\nmodule.exports = stackSet;\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\nmodule.exports = toSource;\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\nmodule.exports = constant;\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\nmodule.exports = eq;\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\nmodule.exports = identity;\n","var baseIsArguments = require('./_baseIsArguments'),\n isObjectLike = require('./isObjectLike');\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/** Built-in value references. */\nvar propertyIsEnumerable = objectProto.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(value) && hasOwnProperty.call(value, 'callee') &&\n !propertyIsEnumerable.call(value, 'callee');\n};\n\nmodule.exports = isArguments;\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\nmodule.exports = isArray;\n","var isFunction = require('./isFunction'),\n isLength = require('./isLength');\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(value.length) && !isFunction(value);\n}\n\nmodule.exports = isArrayLike;\n","var isArrayLike = require('./isArrayLike'),\n isObjectLike = require('./isObjectLike');\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(value) && isArrayLike(value);\n}\n\nmodule.exports = isArrayLikeObject;\n","var root = require('./_root'),\n stubFalse = require('./stubFalse');\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == '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;\n\nmodule.exports = isBuffer;\n","var baseIsEqual = require('./_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\nmodule.exports = isEqual;\n","var baseGetTag = require('./_baseGetTag'),\n isObject = require('./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(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\nmodule.exports = isFunction;\n","/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER = 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;\n}\n\nmodule.exports = isLength;\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\nmodule.exports = isObject;\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\nmodule.exports = isObjectLike;\n","var baseGetTag = require('./_baseGetTag'),\n getPrototype = require('./_getPrototype'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar objectTag = '[object Object]';\n\n/** Used for built-in method references. */\nvar funcProto = Function.prototype,\n objectProto = Object.prototype;\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/** Used to infer the `Object` constructor. */\nvar objectCtorString = funcToString.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(value) || baseGetTag(value) != objectTag) {\n return false;\n }\n var proto = getPrototype(value);\n if (proto === null) {\n return true;\n }\n var Ctor = hasOwnProperty.call(proto, 'constructor') && proto.constructor;\n return typeof Ctor == 'function' && Ctor instanceof Ctor &&\n funcToString.call(Ctor) == objectCtorString;\n}\n\nmodule.exports = isPlainObject;\n","var baseIsTypedArray = require('./_baseIsTypedArray'),\n baseUnary = require('./_baseUnary'),\n nodeUtil = require('./_nodeUtil');\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\nmodule.exports = isTypedArray;\n","var arrayLikeKeys = require('./_arrayLikeKeys'),\n baseKeys = require('./_baseKeys'),\n isArrayLike = require('./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(object) ? arrayLikeKeys(object) : baseKeys(object);\n}\n\nmodule.exports = keys;\n","var arrayLikeKeys = require('./_arrayLikeKeys'),\n baseKeysIn = require('./_baseKeysIn'),\n isArrayLike = require('./isArrayLike');\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(object) ? arrayLikeKeys(object, true) : baseKeysIn(object);\n}\n\nmodule.exports = keysIn;\n","var baseMerge = require('./_baseMerge'),\n createAssigner = require('./_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\nmodule.exports = merge;\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\nmodule.exports = stubArray;\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\nmodule.exports = stubFalse;\n","var copyObject = require('./_copyObject'),\n keysIn = require('./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(value));\n}\n\nmodule.exports = toPlainObject;\n","'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 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 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","'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: 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","// Currently in sync with Node.js lib/assert.js\n// https://github.com/nodejs/node/commit/2a51ae424a513ec9a6aa3466baa0cc1d55dd4f3b\n// Originally from narwhal.js (http://narwhaljs.org)\n// Copyright (c) 2009 Thomas Robinson <280north.com>\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\n// deal in the Software without restriction, including without limitation the\n// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or\n// sell 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\n// all 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 BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN\n// ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\n// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n'use strict';\n\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar _require = require('./internal/errors'),\n _require$codes = _require.codes,\n ERR_AMBIGUOUS_ARGUMENT = _require$codes.ERR_AMBIGUOUS_ARGUMENT,\n ERR_INVALID_ARG_TYPE = _require$codes.ERR_INVALID_ARG_TYPE,\n ERR_INVALID_ARG_VALUE = _require$codes.ERR_INVALID_ARG_VALUE,\n ERR_INVALID_RETURN_VALUE = _require$codes.ERR_INVALID_RETURN_VALUE,\n ERR_MISSING_ARGS = _require$codes.ERR_MISSING_ARGS;\n\nvar AssertionError = require('./internal/assert/assertion_error');\n\nvar _require2 = require('util/'),\n inspect = _require2.inspect;\n\nvar _require$types = require('util/').types,\n isPromise = _require$types.isPromise,\n isRegExp = _require$types.isRegExp;\n\nvar objectAssign = Object.assign ? Object.assign : require('es6-object-assign').assign;\nvar objectIs = Object.is ? Object.is : require('object-is');\nvar errorCache = new Map();\nvar isDeepEqual;\nvar isDeepStrictEqual;\nvar parseExpressionAt;\nvar findNodeAround;\nvar decoder;\n\nfunction lazyLoadComparison() {\n var comparison = require('./internal/util/comparisons');\n\n isDeepEqual = comparison.isDeepEqual;\n isDeepStrictEqual = comparison.isDeepStrictEqual;\n} // Escape control characters but not \\n and \\t to keep the line breaks and\n// indentation intact.\n// eslint-disable-next-line no-control-regex\n\n\nvar escapeSequencesRegExp = /[\\x00-\\x08\\x0b\\x0c\\x0e-\\x1f]/g;\nvar meta = [\"\\\\u0000\", \"\\\\u0001\", \"\\\\u0002\", \"\\\\u0003\", \"\\\\u0004\", \"\\\\u0005\", \"\\\\u0006\", \"\\\\u0007\", '\\\\b', '', '', \"\\\\u000b\", '\\\\f', '', \"\\\\u000e\", \"\\\\u000f\", \"\\\\u0010\", \"\\\\u0011\", \"\\\\u0012\", \"\\\\u0013\", \"\\\\u0014\", \"\\\\u0015\", \"\\\\u0016\", \"\\\\u0017\", \"\\\\u0018\", \"\\\\u0019\", \"\\\\u001a\", \"\\\\u001b\", \"\\\\u001c\", \"\\\\u001d\", \"\\\\u001e\", \"\\\\u001f\"];\n\nvar escapeFn = function escapeFn(str) {\n return meta[str.charCodeAt(0)];\n};\n\nvar warned = false; // The assert module provides functions that throw\n// AssertionError's when particular conditions are not met. The\n// assert module must conform to the following interface.\n\nvar assert = module.exports = ok;\nvar NO_EXCEPTION_SENTINEL = {}; // All of the following functions must throw an AssertionError\n// when a corresponding condition is not met, with a message that\n// may be undefined if not provided. All assertion methods provide\n// both the actual and expected values to the assertion error for\n// display purposes.\n\nfunction innerFail(obj) {\n if (obj.message instanceof Error) throw obj.message;\n throw new AssertionError(obj);\n}\n\nfunction fail(actual, expected, message, operator, stackStartFn) {\n var argsLen = arguments.length;\n var internalMessage;\n\n if (argsLen === 0) {\n internalMessage = 'Failed';\n } else if (argsLen === 1) {\n message = actual;\n actual = undefined;\n } else {\n if (warned === false) {\n warned = true;\n var warn = process.emitWarning ? process.emitWarning : console.warn.bind(console);\n warn('assert.fail() with more than one argument is deprecated. ' + 'Please use assert.strictEqual() instead or only pass a message.', 'DeprecationWarning', 'DEP0094');\n }\n\n if (argsLen === 2) operator = '!=';\n }\n\n if (message instanceof Error) throw message;\n var errArgs = {\n actual: actual,\n expected: expected,\n operator: operator === undefined ? 'fail' : operator,\n stackStartFn: stackStartFn || fail\n };\n\n if (message !== undefined) {\n errArgs.message = message;\n }\n\n var err = new AssertionError(errArgs);\n\n if (internalMessage) {\n err.message = internalMessage;\n err.generatedMessage = true;\n }\n\n throw err;\n}\n\nassert.fail = fail; // The AssertionError is defined in internal/error.\n\nassert.AssertionError = AssertionError;\n\nfunction innerOk(fn, argLen, value, message) {\n if (!value) {\n var generatedMessage = false;\n\n if (argLen === 0) {\n generatedMessage = true;\n message = 'No value argument passed to `assert.ok()`';\n } else if (message instanceof Error) {\n throw message;\n }\n\n var err = new AssertionError({\n actual: value,\n expected: true,\n message: message,\n operator: '==',\n stackStartFn: fn\n });\n err.generatedMessage = generatedMessage;\n throw err;\n }\n} // Pure assertion tests whether a value is truthy, as determined\n// by !!value.\n\n\nfunction ok() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n innerOk.apply(void 0, [ok, args.length].concat(args));\n}\n\nassert.ok = ok; // The equality assertion tests shallow, coercive equality with ==.\n\n/* eslint-disable no-restricted-properties */\n\nassert.equal = function equal(actual, expected, message) {\n if (arguments.length < 2) {\n throw new ERR_MISSING_ARGS('actual', 'expected');\n } // eslint-disable-next-line eqeqeq\n\n\n if (actual != expected) {\n innerFail({\n actual: actual,\n expected: expected,\n message: message,\n operator: '==',\n stackStartFn: equal\n });\n }\n}; // The non-equality assertion tests for whether two objects are not\n// equal with !=.\n\n\nassert.notEqual = function notEqual(actual, expected, message) {\n if (arguments.length < 2) {\n throw new ERR_MISSING_ARGS('actual', 'expected');\n } // eslint-disable-next-line eqeqeq\n\n\n if (actual == expected) {\n innerFail({\n actual: actual,\n expected: expected,\n message: message,\n operator: '!=',\n stackStartFn: notEqual\n });\n }\n}; // The equivalence assertion tests a deep equality relation.\n\n\nassert.deepEqual = function deepEqual(actual, expected, message) {\n if (arguments.length < 2) {\n throw new ERR_MISSING_ARGS('actual', 'expected');\n }\n\n if (isDeepEqual === undefined) lazyLoadComparison();\n\n if (!isDeepEqual(actual, expected)) {\n innerFail({\n actual: actual,\n expected: expected,\n message: message,\n operator: 'deepEqual',\n stackStartFn: deepEqual\n });\n }\n}; // The non-equivalence assertion tests for any deep inequality.\n\n\nassert.notDeepEqual = function notDeepEqual(actual, expected, message) {\n if (arguments.length < 2) {\n throw new ERR_MISSING_ARGS('actual', 'expected');\n }\n\n if (isDeepEqual === undefined) lazyLoadComparison();\n\n if (isDeepEqual(actual, expected)) {\n innerFail({\n actual: actual,\n expected: expected,\n message: message,\n operator: 'notDeepEqual',\n stackStartFn: notDeepEqual\n });\n }\n};\n/* eslint-enable */\n\n\nassert.deepStrictEqual = function deepStrictEqual(actual, expected, message) {\n if (arguments.length < 2) {\n throw new ERR_MISSING_ARGS('actual', 'expected');\n }\n\n if (isDeepEqual === undefined) lazyLoadComparison();\n\n if (!isDeepStrictEqual(actual, expected)) {\n innerFail({\n actual: actual,\n expected: expected,\n message: message,\n operator: 'deepStrictEqual',\n stackStartFn: deepStrictEqual\n });\n }\n};\n\nassert.notDeepStrictEqual = notDeepStrictEqual;\n\nfunction notDeepStrictEqual(actual, expected, message) {\n if (arguments.length < 2) {\n throw new ERR_MISSING_ARGS('actual', 'expected');\n }\n\n if (isDeepEqual === undefined) lazyLoadComparison();\n\n if (isDeepStrictEqual(actual, expected)) {\n innerFail({\n actual: actual,\n expected: expected,\n message: message,\n operator: 'notDeepStrictEqual',\n stackStartFn: notDeepStrictEqual\n });\n }\n}\n\nassert.strictEqual = function strictEqual(actual, expected, message) {\n if (arguments.length < 2) {\n throw new ERR_MISSING_ARGS('actual', 'expected');\n }\n\n if (!objectIs(actual, expected)) {\n innerFail({\n actual: actual,\n expected: expected,\n message: message,\n operator: 'strictEqual',\n stackStartFn: strictEqual\n });\n }\n};\n\nassert.notStrictEqual = function notStrictEqual(actual, expected, message) {\n if (arguments.length < 2) {\n throw new ERR_MISSING_ARGS('actual', 'expected');\n }\n\n if (objectIs(actual, expected)) {\n innerFail({\n actual: actual,\n expected: expected,\n message: message,\n operator: 'notStrictEqual',\n stackStartFn: notStrictEqual\n });\n }\n};\n\nvar Comparison = function Comparison(obj, keys, actual) {\n var _this = this;\n\n _classCallCheck(this, Comparison);\n\n keys.forEach(function (key) {\n if (key in obj) {\n if (actual !== undefined && typeof actual[key] === 'string' && isRegExp(obj[key]) && obj[key].test(actual[key])) {\n _this[key] = actual[key];\n } else {\n _this[key] = obj[key];\n }\n }\n });\n};\n\nfunction compareExceptionKey(actual, expected, key, message, keys, fn) {\n if (!(key in actual) || !isDeepStrictEqual(actual[key], expected[key])) {\n if (!message) {\n // Create placeholder objects to create a nice output.\n var a = new Comparison(actual, keys);\n var b = new Comparison(expected, keys, actual);\n var err = new AssertionError({\n actual: a,\n expected: b,\n operator: 'deepStrictEqual',\n stackStartFn: fn\n });\n err.actual = actual;\n err.expected = expected;\n err.operator = fn.name;\n throw err;\n }\n\n innerFail({\n actual: actual,\n expected: expected,\n message: message,\n operator: fn.name,\n stackStartFn: fn\n });\n }\n}\n\nfunction expectedException(actual, expected, msg, fn) {\n if (typeof expected !== 'function') {\n if (isRegExp(expected)) return expected.test(actual); // assert.doesNotThrow does not accept objects.\n\n if (arguments.length === 2) {\n throw new ERR_INVALID_ARG_TYPE('expected', ['Function', 'RegExp'], expected);\n } // Handle primitives properly.\n\n\n if (_typeof(actual) !== 'object' || actual === null) {\n var err = new AssertionError({\n actual: actual,\n expected: expected,\n message: msg,\n operator: 'deepStrictEqual',\n stackStartFn: fn\n });\n err.operator = fn.name;\n throw err;\n }\n\n var keys = Object.keys(expected); // Special handle errors to make sure the name and the message are compared\n // as well.\n\n if (expected instanceof Error) {\n keys.push('name', 'message');\n } else if (keys.length === 0) {\n throw new ERR_INVALID_ARG_VALUE('error', expected, 'may not be an empty object');\n }\n\n if (isDeepEqual === undefined) lazyLoadComparison();\n keys.forEach(function (key) {\n if (typeof actual[key] === 'string' && isRegExp(expected[key]) && expected[key].test(actual[key])) {\n return;\n }\n\n compareExceptionKey(actual, expected, key, msg, keys, fn);\n });\n return true;\n } // Guard instanceof against arrow functions as they don't have a prototype.\n\n\n if (expected.prototype !== undefined && actual instanceof expected) {\n return true;\n }\n\n if (Error.isPrototypeOf(expected)) {\n return false;\n }\n\n return expected.call({}, actual) === true;\n}\n\nfunction getActual(fn) {\n if (typeof fn !== 'function') {\n throw new ERR_INVALID_ARG_TYPE('fn', 'Function', fn);\n }\n\n try {\n fn();\n } catch (e) {\n return e;\n }\n\n return NO_EXCEPTION_SENTINEL;\n}\n\nfunction checkIsPromise(obj) {\n // Accept native ES6 promises and promises that are implemented in a similar\n // way. Do not accept thenables that use a function as `obj` and that have no\n // `catch` handler.\n // TODO: thenables are checked up until they have the correct methods,\n // but according to documentation, the `then` method should receive\n // the `fulfill` and `reject` arguments as well or it may be never resolved.\n return isPromise(obj) || obj !== null && _typeof(obj) === 'object' && typeof obj.then === 'function' && typeof obj.catch === 'function';\n}\n\nfunction waitForActual(promiseFn) {\n return Promise.resolve().then(function () {\n var resultPromise;\n\n if (typeof promiseFn === 'function') {\n // Return a rejected promise if `promiseFn` throws synchronously.\n resultPromise = promiseFn(); // Fail in case no promise is returned.\n\n if (!checkIsPromise(resultPromise)) {\n throw new ERR_INVALID_RETURN_VALUE('instance of Promise', 'promiseFn', resultPromise);\n }\n } else if (checkIsPromise(promiseFn)) {\n resultPromise = promiseFn;\n } else {\n throw new ERR_INVALID_ARG_TYPE('promiseFn', ['Function', 'Promise'], promiseFn);\n }\n\n return Promise.resolve().then(function () {\n return resultPromise;\n }).then(function () {\n return NO_EXCEPTION_SENTINEL;\n }).catch(function (e) {\n return e;\n });\n });\n}\n\nfunction expectsError(stackStartFn, actual, error, message) {\n if (typeof error === 'string') {\n if (arguments.length === 4) {\n throw new ERR_INVALID_ARG_TYPE('error', ['Object', 'Error', 'Function', 'RegExp'], error);\n }\n\n if (_typeof(actual) === 'object' && actual !== null) {\n if (actual.message === error) {\n throw new ERR_AMBIGUOUS_ARGUMENT('error/message', \"The error message \\\"\".concat(actual.message, \"\\\" is identical to the message.\"));\n }\n } else if (actual === error) {\n throw new ERR_AMBIGUOUS_ARGUMENT('error/message', \"The error \\\"\".concat(actual, \"\\\" is identical to the message.\"));\n }\n\n message = error;\n error = undefined;\n } else if (error != null && _typeof(error) !== 'object' && typeof error !== 'function') {\n throw new ERR_INVALID_ARG_TYPE('error', ['Object', 'Error', 'Function', 'RegExp'], error);\n }\n\n if (actual === NO_EXCEPTION_SENTINEL) {\n var details = '';\n\n if (error && error.name) {\n details += \" (\".concat(error.name, \")\");\n }\n\n details += message ? \": \".concat(message) : '.';\n var fnType = stackStartFn.name === 'rejects' ? 'rejection' : 'exception';\n innerFail({\n actual: undefined,\n expected: error,\n operator: stackStartFn.name,\n message: \"Missing expected \".concat(fnType).concat(details),\n stackStartFn: stackStartFn\n });\n }\n\n if (error && !expectedException(actual, error, message, stackStartFn)) {\n throw actual;\n }\n}\n\nfunction expectsNoError(stackStartFn, actual, error, message) {\n if (actual === NO_EXCEPTION_SENTINEL) return;\n\n if (typeof error === 'string') {\n message = error;\n error = undefined;\n }\n\n if (!error || expectedException(actual, error)) {\n var details = message ? \": \".concat(message) : '.';\n var fnType = stackStartFn.name === 'doesNotReject' ? 'rejection' : 'exception';\n innerFail({\n actual: actual,\n expected: error,\n operator: stackStartFn.name,\n message: \"Got unwanted \".concat(fnType).concat(details, \"\\n\") + \"Actual message: \\\"\".concat(actual && actual.message, \"\\\"\"),\n stackStartFn: stackStartFn\n });\n }\n\n throw actual;\n}\n\nassert.throws = function throws(promiseFn) {\n for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n args[_key2 - 1] = arguments[_key2];\n }\n\n expectsError.apply(void 0, [throws, getActual(promiseFn)].concat(args));\n};\n\nassert.rejects = function rejects(promiseFn) {\n for (var _len3 = arguments.length, args = new Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) {\n args[_key3 - 1] = arguments[_key3];\n }\n\n return waitForActual(promiseFn).then(function (result) {\n return expectsError.apply(void 0, [rejects, result].concat(args));\n });\n};\n\nassert.doesNotThrow = function doesNotThrow(fn) {\n for (var _len4 = arguments.length, args = new Array(_len4 > 1 ? _len4 - 1 : 0), _key4 = 1; _key4 < _len4; _key4++) {\n args[_key4 - 1] = arguments[_key4];\n }\n\n expectsNoError.apply(void 0, [doesNotThrow, getActual(fn)].concat(args));\n};\n\nassert.doesNotReject = function doesNotReject(fn) {\n for (var _len5 = arguments.length, args = new Array(_len5 > 1 ? _len5 - 1 : 0), _key5 = 1; _key5 < _len5; _key5++) {\n args[_key5 - 1] = arguments[_key5];\n }\n\n return waitForActual(fn).then(function (result) {\n return expectsNoError.apply(void 0, [doesNotReject, result].concat(args));\n });\n};\n\nassert.ifError = function ifError(err) {\n if (err !== null && err !== undefined) {\n var message = 'ifError got unwanted exception: ';\n\n if (_typeof(err) === 'object' && typeof err.message === 'string') {\n if (err.message.length === 0 && err.constructor) {\n message += err.constructor.name;\n } else {\n message += err.message;\n }\n } else {\n message += inspect(err);\n }\n\n var newErr = new AssertionError({\n actual: err,\n expected: null,\n operator: 'ifError',\n message: message,\n stackStartFn: ifError\n }); // Make sure we actually have a stack trace!\n\n var origStack = err.stack;\n\n if (typeof origStack === 'string') {\n // This will remove any duplicated frames from the error frames taken\n // from within `ifError` and add the original error frames to the newly\n // created ones.\n var tmp2 = origStack.split('\\n');\n tmp2.shift(); // Filter all frames existing in err.stack.\n\n var tmp1 = newErr.stack.split('\\n');\n\n for (var i = 0; i < tmp2.length; i++) {\n // Find the first occurrence of the frame.\n var pos = tmp1.indexOf(tmp2[i]);\n\n if (pos !== -1) {\n // Only keep new frames.\n tmp1 = tmp1.slice(0, pos);\n break;\n }\n }\n\n newErr.stack = \"\".concat(tmp1.join('\\n'), \"\\n\").concat(tmp2.join('\\n'));\n }\n\n throw newErr;\n }\n}; // Expose a strict only variant of assert\n\n\nfunction strict() {\n for (var _len6 = arguments.length, args = new Array(_len6), _key6 = 0; _key6 < _len6; _key6++) {\n args[_key6] = arguments[_key6];\n }\n\n innerOk.apply(void 0, [strict, args.length].concat(args));\n}\n\nassert.strict = objectAssign(strict, assert, {\n equal: assert.strictEqual,\n deepEqual: assert.deepStrictEqual,\n notEqual: assert.notStrictEqual,\n notDeepEqual: assert.notDeepStrictEqual\n});\nassert.strict.strict = assert.strict;","// Currently in sync with Node.js lib/internal/assert/assertion_error.js\n// https://github.com/nodejs/node/commit/0817840f775032169ddd70c85ac059f18ffcc81c\n'use strict';\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }\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\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 _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _wrapNativeSuper(Class) { var _cache = typeof Map === \"function\" ? new Map() : undefined; _wrapNativeSuper = function _wrapNativeSuper(Class) { if (Class === null || !_isNativeFunction(Class)) return Class; if (typeof Class !== \"function\") { throw new TypeError(\"Super expression must either be null or a function\"); } if (typeof _cache !== \"undefined\") { if (_cache.has(Class)) return _cache.get(Class); _cache.set(Class, Wrapper); } function Wrapper() { return _construct(Class, arguments, _getPrototypeOf(this).constructor); } Wrapper.prototype = Object.create(Class.prototype, { constructor: { value: Wrapper, enumerable: false, writable: true, configurable: true } }); return _setPrototypeOf(Wrapper, Class); }; return _wrapNativeSuper(Class); }\n\nfunction isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _construct(Parent, args, Class) { if (isNativeReflectConstruct()) { _construct = Reflect.construct; } else { _construct = function _construct(Parent, args, Class) { var a = [null]; a.push.apply(a, args); var Constructor = Function.bind.apply(Parent, a); var instance = new Constructor(); if (Class) _setPrototypeOf(instance, Class.prototype); return instance; }; } return _construct.apply(null, arguments); }\n\nfunction _isNativeFunction(fn) { return Function.toString.call(fn).indexOf(\"[native code]\") !== -1; }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nvar _require = require('util/'),\n inspect = _require.inspect;\n\nvar _require2 = require('../errors'),\n ERR_INVALID_ARG_TYPE = _require2.codes.ERR_INVALID_ARG_TYPE; // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/endsWith\n\n\nfunction endsWith(str, search, this_len) {\n if (this_len === undefined || this_len > str.length) {\n this_len = str.length;\n }\n\n return str.substring(this_len - search.length, this_len) === search;\n} // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/repeat\n\n\nfunction repeat(str, count) {\n count = Math.floor(count);\n if (str.length == 0 || count == 0) return '';\n var maxCount = str.length * count;\n count = Math.floor(Math.log(count) / Math.log(2));\n\n while (count) {\n str += str;\n count--;\n }\n\n str += str.substring(0, maxCount - str.length);\n return str;\n}\n\nvar blue = '';\nvar green = '';\nvar red = '';\nvar white = '';\nvar kReadableOperator = {\n deepStrictEqual: 'Expected values to be strictly deep-equal:',\n strictEqual: 'Expected values to be strictly equal:',\n strictEqualObject: 'Expected \"actual\" to be reference-equal to \"expected\":',\n deepEqual: 'Expected values to be loosely deep-equal:',\n equal: 'Expected values to be loosely equal:',\n notDeepStrictEqual: 'Expected \"actual\" not to be strictly deep-equal to:',\n notStrictEqual: 'Expected \"actual\" to be strictly unequal to:',\n notStrictEqualObject: 'Expected \"actual\" not to be reference-equal to \"expected\":',\n notDeepEqual: 'Expected \"actual\" not to be loosely deep-equal to:',\n notEqual: 'Expected \"actual\" to be loosely unequal to:',\n notIdentical: 'Values identical but not reference-equal:'\n}; // Comparing short primitives should just show === / !== instead of using the\n// diff.\n\nvar kMaxShortLength = 10;\n\nfunction copyError(source) {\n var keys = Object.keys(source);\n var target = Object.create(Object.getPrototypeOf(source));\n keys.forEach(function (key) {\n target[key] = source[key];\n });\n Object.defineProperty(target, 'message', {\n value: source.message\n });\n return target;\n}\n\nfunction inspectValue(val) {\n // The util.inspect default values could be changed. This makes sure the\n // error messages contain the necessary information nevertheless.\n return inspect(val, {\n compact: false,\n customInspect: false,\n depth: 1000,\n maxArrayLength: Infinity,\n // Assert compares only enumerable properties (with a few exceptions).\n showHidden: false,\n // Having a long line as error is better than wrapping the line for\n // comparison for now.\n // TODO(BridgeAR): `breakLength` should be limited as soon as soon as we\n // have meta information about the inspected properties (i.e., know where\n // in what line the property starts and ends).\n breakLength: Infinity,\n // Assert does not detect proxies currently.\n showProxy: false,\n sorted: true,\n // Inspect getters as we also check them when comparing entries.\n getters: true\n });\n}\n\nfunction createErrDiff(actual, expected, operator) {\n var other = '';\n var res = '';\n var lastPos = 0;\n var end = '';\n var skipped = false;\n var actualInspected = inspectValue(actual);\n var actualLines = actualInspected.split('\\n');\n var expectedLines = inspectValue(expected).split('\\n');\n var i = 0;\n var indicator = ''; // In case both values are objects explicitly mark them as not reference equal\n // for the `strictEqual` operator.\n\n if (operator === 'strictEqual' && _typeof(actual) === 'object' && _typeof(expected) === 'object' && actual !== null && expected !== null) {\n operator = 'strictEqualObject';\n } // If \"actual\" and \"expected\" fit on a single line and they are not strictly\n // equal, check further special handling.\n\n\n if (actualLines.length === 1 && expectedLines.length === 1 && actualLines[0] !== expectedLines[0]) {\n var inputLength = actualLines[0].length + expectedLines[0].length; // If the character length of \"actual\" and \"expected\" together is less than\n // kMaxShortLength and if neither is an object and at least one of them is\n // not `zero`, use the strict equal comparison to visualize the output.\n\n if (inputLength <= kMaxShortLength) {\n if ((_typeof(actual) !== 'object' || actual === null) && (_typeof(expected) !== 'object' || expected === null) && (actual !== 0 || expected !== 0)) {\n // -0 === +0\n return \"\".concat(kReadableOperator[operator], \"\\n\\n\") + \"\".concat(actualLines[0], \" !== \").concat(expectedLines[0], \"\\n\");\n }\n } else if (operator !== 'strictEqualObject') {\n // If the stderr is a tty and the input length is lower than the current\n // columns per line, add a mismatch indicator below the output. If it is\n // not a tty, use a default value of 80 characters.\n var maxLength = process.stderr && process.stderr.isTTY ? process.stderr.columns : 80;\n\n if (inputLength < maxLength) {\n while (actualLines[0][i] === expectedLines[0][i]) {\n i++;\n } // Ignore the first characters.\n\n\n if (i > 2) {\n // Add position indicator for the first mismatch in case it is a\n // single line and the input length is less than the column length.\n indicator = \"\\n \".concat(repeat(' ', i), \"^\");\n i = 0;\n }\n }\n }\n } // Remove all ending lines that match (this optimizes the output for\n // readability by reducing the number of total changed lines).\n\n\n var a = actualLines[actualLines.length - 1];\n var b = expectedLines[expectedLines.length - 1];\n\n while (a === b) {\n if (i++ < 2) {\n end = \"\\n \".concat(a).concat(end);\n } else {\n other = a;\n }\n\n actualLines.pop();\n expectedLines.pop();\n if (actualLines.length === 0 || expectedLines.length === 0) break;\n a = actualLines[actualLines.length - 1];\n b = expectedLines[expectedLines.length - 1];\n }\n\n var maxLines = Math.max(actualLines.length, expectedLines.length); // Strict equal with identical objects that are not identical by reference.\n // E.g., assert.deepStrictEqual({ a: Symbol() }, { a: Symbol() })\n\n if (maxLines === 0) {\n // We have to get the result again. The lines were all removed before.\n var _actualLines = actualInspected.split('\\n'); // Only remove lines in case it makes sense to collapse those.\n // TODO: Accept env to always show the full error.\n\n\n if (_actualLines.length > 30) {\n _actualLines[26] = \"\".concat(blue, \"...\").concat(white);\n\n while (_actualLines.length > 27) {\n _actualLines.pop();\n }\n }\n\n return \"\".concat(kReadableOperator.notIdentical, \"\\n\\n\").concat(_actualLines.join('\\n'), \"\\n\");\n }\n\n if (i > 3) {\n end = \"\\n\".concat(blue, \"...\").concat(white).concat(end);\n skipped = true;\n }\n\n if (other !== '') {\n end = \"\\n \".concat(other).concat(end);\n other = '';\n }\n\n var printedLines = 0;\n var msg = kReadableOperator[operator] + \"\\n\".concat(green, \"+ actual\").concat(white, \" \").concat(red, \"- expected\").concat(white);\n var skippedMsg = \" \".concat(blue, \"...\").concat(white, \" Lines skipped\");\n\n for (i = 0; i < maxLines; i++) {\n // Only extra expected lines exist\n var cur = i - lastPos;\n\n if (actualLines.length < i + 1) {\n // If the last diverging line is more than one line above and the\n // current line is at least line three, add some of the former lines and\n // also add dots to indicate skipped entries.\n if (cur > 1 && i > 2) {\n if (cur > 4) {\n res += \"\\n\".concat(blue, \"...\").concat(white);\n skipped = true;\n } else if (cur > 3) {\n res += \"\\n \".concat(expectedLines[i - 2]);\n printedLines++;\n }\n\n res += \"\\n \".concat(expectedLines[i - 1]);\n printedLines++;\n } // Mark the current line as the last diverging one.\n\n\n lastPos = i; // Add the expected line to the cache.\n\n other += \"\\n\".concat(red, \"-\").concat(white, \" \").concat(expectedLines[i]);\n printedLines++; // Only extra actual lines exist\n } else if (expectedLines.length < i + 1) {\n // If the last diverging line is more than one line above and the\n // current line is at least line three, add some of the former lines and\n // also add dots to indicate skipped entries.\n if (cur > 1 && i > 2) {\n if (cur > 4) {\n res += \"\\n\".concat(blue, \"...\").concat(white);\n skipped = true;\n } else if (cur > 3) {\n res += \"\\n \".concat(actualLines[i - 2]);\n printedLines++;\n }\n\n res += \"\\n \".concat(actualLines[i - 1]);\n printedLines++;\n } // Mark the current line as the last diverging one.\n\n\n lastPos = i; // Add the actual line to the result.\n\n res += \"\\n\".concat(green, \"+\").concat(white, \" \").concat(actualLines[i]);\n printedLines++; // Lines diverge\n } else {\n var expectedLine = expectedLines[i];\n var actualLine = actualLines[i]; // If the lines diverge, specifically check for lines that only diverge by\n // a trailing comma. In that case it is actually identical and we should\n // mark it as such.\n\n var divergingLines = actualLine !== expectedLine && (!endsWith(actualLine, ',') || actualLine.slice(0, -1) !== expectedLine); // If the expected line has a trailing comma but is otherwise identical,\n // add a comma at the end of the actual line. Otherwise the output could\n // look weird as in:\n //\n // [\n // 1 // No comma at the end!\n // + 2\n // ]\n //\n\n if (divergingLines && endsWith(expectedLine, ',') && expectedLine.slice(0, -1) === actualLine) {\n divergingLines = false;\n actualLine += ',';\n }\n\n if (divergingLines) {\n // If the last diverging line is more than one line above and the\n // current line is at least line three, add some of the former lines and\n // also add dots to indicate skipped entries.\n if (cur > 1 && i > 2) {\n if (cur > 4) {\n res += \"\\n\".concat(blue, \"...\").concat(white);\n skipped = true;\n } else if (cur > 3) {\n res += \"\\n \".concat(actualLines[i - 2]);\n printedLines++;\n }\n\n res += \"\\n \".concat(actualLines[i - 1]);\n printedLines++;\n } // Mark the current line as the last diverging one.\n\n\n lastPos = i; // Add the actual line to the result and cache the expected diverging\n // line so consecutive diverging lines show up as +++--- and not +-+-+-.\n\n res += \"\\n\".concat(green, \"+\").concat(white, \" \").concat(actualLine);\n other += \"\\n\".concat(red, \"-\").concat(white, \" \").concat(expectedLine);\n printedLines += 2; // Lines are identical\n } else {\n // Add all cached information to the result before adding other things\n // and reset the cache.\n res += other;\n other = ''; // If the last diverging line is exactly one line above or if it is the\n // very first line, add the line to the result.\n\n if (cur === 1 || i === 0) {\n res += \"\\n \".concat(actualLine);\n printedLines++;\n }\n }\n } // Inspected object to big (Show ~20 rows max)\n\n\n if (printedLines > 20 && i < maxLines - 2) {\n return \"\".concat(msg).concat(skippedMsg, \"\\n\").concat(res, \"\\n\").concat(blue, \"...\").concat(white).concat(other, \"\\n\") + \"\".concat(blue, \"...\").concat(white);\n }\n }\n\n return \"\".concat(msg).concat(skipped ? skippedMsg : '', \"\\n\").concat(res).concat(other).concat(end).concat(indicator);\n}\n\nvar AssertionError =\n/*#__PURE__*/\nfunction (_Error) {\n _inherits(AssertionError, _Error);\n\n function AssertionError(options) {\n var _this;\n\n _classCallCheck(this, AssertionError);\n\n if (_typeof(options) !== 'object' || options === null) {\n throw new ERR_INVALID_ARG_TYPE('options', 'Object', options);\n }\n\n var message = options.message,\n operator = options.operator,\n stackStartFn = options.stackStartFn;\n var actual = options.actual,\n expected = options.expected;\n var limit = Error.stackTraceLimit;\n Error.stackTraceLimit = 0;\n\n if (message != null) {\n _this = _possibleConstructorReturn(this, _getPrototypeOf(AssertionError).call(this, String(message)));\n } else {\n if (process.stderr && process.stderr.isTTY) {\n // Reset on each call to make sure we handle dynamically set environment\n // variables correct.\n if (process.stderr && process.stderr.getColorDepth && process.stderr.getColorDepth() !== 1) {\n blue = \"\\x1B[34m\";\n green = \"\\x1B[32m\";\n white = \"\\x1B[39m\";\n red = \"\\x1B[31m\";\n } else {\n blue = '';\n green = '';\n white = '';\n red = '';\n }\n } // Prevent the error stack from being visible by duplicating the error\n // in a very close way to the original in case both sides are actually\n // instances of Error.\n\n\n if (_typeof(actual) === 'object' && actual !== null && _typeof(expected) === 'object' && expected !== null && 'stack' in actual && actual instanceof Error && 'stack' in expected && expected instanceof Error) {\n actual = copyError(actual);\n expected = copyError(expected);\n }\n\n if (operator === 'deepStrictEqual' || operator === 'strictEqual') {\n _this = _possibleConstructorReturn(this, _getPrototypeOf(AssertionError).call(this, createErrDiff(actual, expected, operator)));\n } else if (operator === 'notDeepStrictEqual' || operator === 'notStrictEqual') {\n // In case the objects are equal but the operator requires unequal, show\n // the first object and say A equals B\n var base = kReadableOperator[operator];\n var res = inspectValue(actual).split('\\n'); // In case \"actual\" is an object, it should not be reference equal.\n\n if (operator === 'notStrictEqual' && _typeof(actual) === 'object' && actual !== null) {\n base = kReadableOperator.notStrictEqualObject;\n } // Only remove lines in case it makes sense to collapse those.\n // TODO: Accept env to always show the full error.\n\n\n if (res.length > 30) {\n res[26] = \"\".concat(blue, \"...\").concat(white);\n\n while (res.length > 27) {\n res.pop();\n }\n } // Only print a single input.\n\n\n if (res.length === 1) {\n _this = _possibleConstructorReturn(this, _getPrototypeOf(AssertionError).call(this, \"\".concat(base, \" \").concat(res[0])));\n } else {\n _this = _possibleConstructorReturn(this, _getPrototypeOf(AssertionError).call(this, \"\".concat(base, \"\\n\\n\").concat(res.join('\\n'), \"\\n\")));\n }\n } else {\n var _res = inspectValue(actual);\n\n var other = '';\n var knownOperators = kReadableOperator[operator];\n\n if (operator === 'notDeepEqual' || operator === 'notEqual') {\n _res = \"\".concat(kReadableOperator[operator], \"\\n\\n\").concat(_res);\n\n if (_res.length > 1024) {\n _res = \"\".concat(_res.slice(0, 1021), \"...\");\n }\n } else {\n other = \"\".concat(inspectValue(expected));\n\n if (_res.length > 512) {\n _res = \"\".concat(_res.slice(0, 509), \"...\");\n }\n\n if (other.length > 512) {\n other = \"\".concat(other.slice(0, 509), \"...\");\n }\n\n if (operator === 'deepEqual' || operator === 'equal') {\n _res = \"\".concat(knownOperators, \"\\n\\n\").concat(_res, \"\\n\\nshould equal\\n\\n\");\n } else {\n other = \" \".concat(operator, \" \").concat(other);\n }\n }\n\n _this = _possibleConstructorReturn(this, _getPrototypeOf(AssertionError).call(this, \"\".concat(_res).concat(other)));\n }\n }\n\n Error.stackTraceLimit = limit;\n _this.generatedMessage = !message;\n Object.defineProperty(_assertThisInitialized(_this), 'name', {\n value: 'AssertionError [ERR_ASSERTION]',\n enumerable: false,\n writable: true,\n configurable: true\n });\n _this.code = 'ERR_ASSERTION';\n _this.actual = actual;\n _this.expected = expected;\n _this.operator = operator;\n\n if (Error.captureStackTrace) {\n // eslint-disable-next-line no-restricted-syntax\n Error.captureStackTrace(_assertThisInitialized(_this), stackStartFn);\n } // Create error message including the error code in the name.\n\n\n _this.stack; // Reset the name.\n\n _this.name = 'AssertionError';\n return _possibleConstructorReturn(_this);\n }\n\n _createClass(AssertionError, [{\n key: \"toString\",\n value: function toString() {\n return \"\".concat(this.name, \" [\").concat(this.code, \"]: \").concat(this.message);\n }\n }, {\n key: inspect.custom,\n value: function value(recurseTimes, ctx) {\n // This limits the `actual` and `expected` property default inspection to\n // the minimum depth. Otherwise those values would be too verbose compared\n // to the actual error message which contains a combined view of these two\n // input values.\n return inspect(this, _objectSpread({}, ctx, {\n customInspect: false,\n depth: 0\n }));\n }\n }]);\n\n return AssertionError;\n}(_wrapNativeSuper(Error));\n\nmodule.exports = AssertionError;","// Currently in sync with Node.js lib/internal/errors.js\n// https://github.com/nodejs/node/commit/3b044962c48fe313905877a96b5d0894a5404f6f\n\n/* eslint node-core/documented-errors: \"error\" */\n\n/* eslint node-core/alphabetize-errors: \"error\" */\n\n/* eslint node-core/prefer-util-format-errors: \"error\" */\n'use strict'; // The whole point behind this internal module is to allow Node.js to no\n// longer be forced to treat every error message change as a semver-major\n// change. The NodeError classes here all expose a `code` property whose\n// value statically and permanently identifies the error. While the error\n// message may change, the code should not.\n\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nvar codes = {}; // Lazy loaded\n\nvar assert;\nvar util;\n\nfunction createErrorType(code, message, Base) {\n if (!Base) {\n Base = Error;\n }\n\n function getMessage(arg1, arg2, arg3) {\n if (typeof message === 'string') {\n return message;\n } else {\n return message(arg1, arg2, arg3);\n }\n }\n\n var NodeError =\n /*#__PURE__*/\n function (_Base) {\n _inherits(NodeError, _Base);\n\n function NodeError(arg1, arg2, arg3) {\n var _this;\n\n _classCallCheck(this, NodeError);\n\n _this = _possibleConstructorReturn(this, _getPrototypeOf(NodeError).call(this, getMessage(arg1, arg2, arg3)));\n _this.code = code;\n return _this;\n }\n\n return NodeError;\n }(Base);\n\n codes[code] = NodeError;\n} // https://github.com/nodejs/node/blob/v10.8.0/lib/internal/errors.js\n\n\nfunction oneOf(expected, thing) {\n if (Array.isArray(expected)) {\n var len = expected.length;\n expected = expected.map(function (i) {\n return String(i);\n });\n\n if (len > 2) {\n return \"one of \".concat(thing, \" \").concat(expected.slice(0, len - 1).join(', '), \", or \") + expected[len - 1];\n } else if (len === 2) {\n return \"one of \".concat(thing, \" \").concat(expected[0], \" or \").concat(expected[1]);\n } else {\n return \"of \".concat(thing, \" \").concat(expected[0]);\n }\n } else {\n return \"of \".concat(thing, \" \").concat(String(expected));\n }\n} // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/startsWith\n\n\nfunction startsWith(str, search, pos) {\n return str.substr(!pos || pos < 0 ? 0 : +pos, search.length) === search;\n} // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/endsWith\n\n\nfunction endsWith(str, search, this_len) {\n if (this_len === undefined || this_len > str.length) {\n this_len = str.length;\n }\n\n return str.substring(this_len - search.length, this_len) === search;\n} // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/includes\n\n\nfunction includes(str, search, start) {\n if (typeof start !== 'number') {\n start = 0;\n }\n\n if (start + search.length > str.length) {\n return false;\n } else {\n return str.indexOf(search, start) !== -1;\n }\n}\n\ncreateErrorType('ERR_AMBIGUOUS_ARGUMENT', 'The \"%s\" argument is ambiguous. %s', TypeError);\ncreateErrorType('ERR_INVALID_ARG_TYPE', function (name, expected, actual) {\n if (assert === undefined) assert = require('../assert');\n assert(typeof name === 'string', \"'name' must be a string\"); // determiner: 'must be' or 'must not be'\n\n var determiner;\n\n if (typeof expected === 'string' && startsWith(expected, 'not ')) {\n determiner = 'must not be';\n expected = expected.replace(/^not /, '');\n } else {\n determiner = 'must be';\n }\n\n var msg;\n\n if (endsWith(name, ' argument')) {\n // For cases like 'first argument'\n msg = \"The \".concat(name, \" \").concat(determiner, \" \").concat(oneOf(expected, 'type'));\n } else {\n var type = includes(name, '.') ? 'property' : 'argument';\n msg = \"The \\\"\".concat(name, \"\\\" \").concat(type, \" \").concat(determiner, \" \").concat(oneOf(expected, 'type'));\n } // TODO(BridgeAR): Improve the output by showing `null` and similar.\n\n\n msg += \". Received type \".concat(_typeof(actual));\n return msg;\n}, TypeError);\ncreateErrorType('ERR_INVALID_ARG_VALUE', function (name, value) {\n var reason = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'is invalid';\n if (util === undefined) util = require('util/');\n var inspected = util.inspect(value);\n\n if (inspected.length > 128) {\n inspected = \"\".concat(inspected.slice(0, 128), \"...\");\n }\n\n return \"The argument '\".concat(name, \"' \").concat(reason, \". Received \").concat(inspected);\n}, TypeError, RangeError);\ncreateErrorType('ERR_INVALID_RETURN_VALUE', function (input, name, value) {\n var type;\n\n if (value && value.constructor && value.constructor.name) {\n type = \"instance of \".concat(value.constructor.name);\n } else {\n type = \"type \".concat(_typeof(value));\n }\n\n return \"Expected \".concat(input, \" to be returned from the \\\"\").concat(name, \"\\\"\") + \" function but got \".concat(type, \".\");\n}, TypeError);\ncreateErrorType('ERR_MISSING_ARGS', function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n if (assert === undefined) assert = require('../assert');\n assert(args.length > 0, 'At least one arg needs to be specified');\n var msg = 'The ';\n var len = args.length;\n args = args.map(function (a) {\n return \"\\\"\".concat(a, \"\\\"\");\n });\n\n switch (len) {\n case 1:\n msg += \"\".concat(args[0], \" argument\");\n break;\n\n case 2:\n msg += \"\".concat(args[0], \" and \").concat(args[1], \" arguments\");\n break;\n\n default:\n msg += args.slice(0, len - 1).join(', ');\n msg += \", and \".concat(args[len - 1], \" arguments\");\n break;\n }\n\n return \"\".concat(msg, \" must be specified\");\n}, TypeError);\nmodule.exports.codes = codes;","// Currently in sync with Node.js lib/internal/util/comparisons.js\n// https://github.com/nodejs/node/commit/112cc7c27551254aa2b17098fb774867f05ed0d9\n'use strict';\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance\"); }\n\nfunction _iterableToArrayLimit(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nvar regexFlagsSupported = /a/g.flags !== undefined;\n\nvar arrayFromSet = function arrayFromSet(set) {\n var array = [];\n set.forEach(function (value) {\n return array.push(value);\n });\n return array;\n};\n\nvar arrayFromMap = function arrayFromMap(map) {\n var array = [];\n map.forEach(function (value, key) {\n return array.push([key, value]);\n });\n return array;\n};\n\nvar objectIs = Object.is ? Object.is : require('object-is');\nvar objectGetOwnPropertySymbols = Object.getOwnPropertySymbols ? Object.getOwnPropertySymbols : function () {\n return [];\n};\nvar numberIsNaN = Number.isNaN ? Number.isNaN : require('is-nan');\n\nfunction uncurryThis(f) {\n return f.call.bind(f);\n}\n\nvar hasOwnProperty = uncurryThis(Object.prototype.hasOwnProperty);\nvar propertyIsEnumerable = uncurryThis(Object.prototype.propertyIsEnumerable);\nvar objectToString = uncurryThis(Object.prototype.toString);\n\nvar _require$types = require('util/').types,\n isAnyArrayBuffer = _require$types.isAnyArrayBuffer,\n isArrayBufferView = _require$types.isArrayBufferView,\n isDate = _require$types.isDate,\n isMap = _require$types.isMap,\n isRegExp = _require$types.isRegExp,\n isSet = _require$types.isSet,\n isNativeError = _require$types.isNativeError,\n isBoxedPrimitive = _require$types.isBoxedPrimitive,\n isNumberObject = _require$types.isNumberObject,\n isStringObject = _require$types.isStringObject,\n isBooleanObject = _require$types.isBooleanObject,\n isBigIntObject = _require$types.isBigIntObject,\n isSymbolObject = _require$types.isSymbolObject,\n isFloat32Array = _require$types.isFloat32Array,\n isFloat64Array = _require$types.isFloat64Array;\n\nfunction isNonIndex(key) {\n if (key.length === 0 || key.length > 10) return true;\n\n for (var i = 0; i < key.length; i++) {\n var code = key.charCodeAt(i);\n if (code < 48 || code > 57) return true;\n } // The maximum size for an array is 2 ** 32 -1.\n\n\n return key.length === 10 && key >= Math.pow(2, 32);\n}\n\nfunction getOwnNonIndexProperties(value) {\n return Object.keys(value).filter(isNonIndex).concat(objectGetOwnPropertySymbols(value).filter(Object.prototype.propertyIsEnumerable.bind(value)));\n} // Taken from https://github.com/feross/buffer/blob/680e9e5e488f22aac27599a57dc844a6315928dd/index.js\n// original notice:\n\n/*!\n * The buffer module from node.js, for the browser.\n *\n * @author Feross Aboukhadijeh <feross@feross.org> <http://feross.org>\n * @license MIT\n */\n\n\nfunction compare(a, b) {\n if (a === b) {\n return 0;\n }\n\n var x = a.length;\n var y = b.length;\n\n for (var i = 0, len = Math.min(x, y); i < len; ++i) {\n if (a[i] !== b[i]) {\n x = a[i];\n y = b[i];\n break;\n }\n }\n\n if (x < y) {\n return -1;\n }\n\n if (y < x) {\n return 1;\n }\n\n return 0;\n}\n\nvar ONLY_ENUMERABLE = undefined;\nvar kStrict = true;\nvar kLoose = false;\nvar kNoIterator = 0;\nvar kIsArray = 1;\nvar kIsSet = 2;\nvar kIsMap = 3; // Check if they have the same source and flags\n\nfunction areSimilarRegExps(a, b) {\n return regexFlagsSupported ? a.source === b.source && a.flags === b.flags : RegExp.prototype.toString.call(a) === RegExp.prototype.toString.call(b);\n}\n\nfunction areSimilarFloatArrays(a, b) {\n if (a.byteLength !== b.byteLength) {\n return false;\n }\n\n for (var offset = 0; offset < a.byteLength; offset++) {\n if (a[offset] !== b[offset]) {\n return false;\n }\n }\n\n return true;\n}\n\nfunction areSimilarTypedArrays(a, b) {\n if (a.byteLength !== b.byteLength) {\n return false;\n }\n\n return compare(new Uint8Array(a.buffer, a.byteOffset, a.byteLength), new Uint8Array(b.buffer, b.byteOffset, b.byteLength)) === 0;\n}\n\nfunction areEqualArrayBuffers(buf1, buf2) {\n return buf1.byteLength === buf2.byteLength && compare(new Uint8Array(buf1), new Uint8Array(buf2)) === 0;\n}\n\nfunction isEqualBoxedPrimitive(val1, val2) {\n if (isNumberObject(val1)) {\n return isNumberObject(val2) && objectIs(Number.prototype.valueOf.call(val1), Number.prototype.valueOf.call(val2));\n }\n\n if (isStringObject(val1)) {\n return isStringObject(val2) && String.prototype.valueOf.call(val1) === String.prototype.valueOf.call(val2);\n }\n\n if (isBooleanObject(val1)) {\n return isBooleanObject(val2) && Boolean.prototype.valueOf.call(val1) === Boolean.prototype.valueOf.call(val2);\n }\n\n if (isBigIntObject(val1)) {\n return isBigIntObject(val2) && BigInt.prototype.valueOf.call(val1) === BigInt.prototype.valueOf.call(val2);\n }\n\n return isSymbolObject(val2) && Symbol.prototype.valueOf.call(val1) === Symbol.prototype.valueOf.call(val2);\n} // Notes: Type tags are historical [[Class]] properties that can be set by\n// FunctionTemplate::SetClassName() in C++ or Symbol.toStringTag in JS\n// and retrieved using Object.prototype.toString.call(obj) in JS\n// See https://tc39.github.io/ecma262/#sec-object.prototype.tostring\n// for a list of tags pre-defined in the spec.\n// There are some unspecified tags in the wild too (e.g. typed array tags).\n// Since tags can be altered, they only serve fast failures\n//\n// Typed arrays and buffers are checked by comparing the content in their\n// underlying ArrayBuffer. This optimization requires that it's\n// reasonable to interpret their underlying memory in the same way,\n// which is checked by comparing their type tags.\n// (e.g. a Uint8Array and a Uint16Array with the same memory content\n// could still be different because they will be interpreted differently).\n//\n// For strict comparison, objects should have\n// a) The same built-in type tags\n// b) The same prototypes.\n\n\nfunction innerDeepEqual(val1, val2, strict, memos) {\n // All identical values are equivalent, as determined by ===.\n if (val1 === val2) {\n if (val1 !== 0) return true;\n return strict ? objectIs(val1, val2) : true;\n } // Check more closely if val1 and val2 are equal.\n\n\n if (strict) {\n if (_typeof(val1) !== 'object') {\n return typeof val1 === 'number' && numberIsNaN(val1) && numberIsNaN(val2);\n }\n\n if (_typeof(val2) !== 'object' || val1 === null || val2 === null) {\n return false;\n }\n\n if (Object.getPrototypeOf(val1) !== Object.getPrototypeOf(val2)) {\n return false;\n }\n } else {\n if (val1 === null || _typeof(val1) !== 'object') {\n if (val2 === null || _typeof(val2) !== 'object') {\n // eslint-disable-next-line eqeqeq\n return val1 == val2;\n }\n\n return false;\n }\n\n if (val2 === null || _typeof(val2) !== 'object') {\n return false;\n }\n }\n\n var val1Tag = objectToString(val1);\n var val2Tag = objectToString(val2);\n\n if (val1Tag !== val2Tag) {\n return false;\n }\n\n if (Array.isArray(val1)) {\n // Check for sparse arrays and general fast path\n if (val1.length !== val2.length) {\n return false;\n }\n\n var keys1 = getOwnNonIndexProperties(val1, ONLY_ENUMERABLE);\n var keys2 = getOwnNonIndexProperties(val2, ONLY_ENUMERABLE);\n\n if (keys1.length !== keys2.length) {\n return false;\n }\n\n return keyCheck(val1, val2, strict, memos, kIsArray, keys1);\n } // [browserify] This triggers on certain types in IE (Map/Set) so we don't\n // wan't to early return out of the rest of the checks. However we can check\n // if the second value is one of these values and the first isn't.\n\n\n if (val1Tag === '[object Object]') {\n // return keyCheck(val1, val2, strict, memos, kNoIterator);\n if (!isMap(val1) && isMap(val2) || !isSet(val1) && isSet(val2)) {\n return false;\n }\n }\n\n if (isDate(val1)) {\n if (!isDate(val2) || Date.prototype.getTime.call(val1) !== Date.prototype.getTime.call(val2)) {\n return false;\n }\n } else if (isRegExp(val1)) {\n if (!isRegExp(val2) || !areSimilarRegExps(val1, val2)) {\n return false;\n }\n } else if (isNativeError(val1) || val1 instanceof Error) {\n // Do not compare the stack as it might differ even though the error itself\n // is otherwise identical.\n if (val1.message !== val2.message || val1.name !== val2.name) {\n return false;\n }\n } else if (isArrayBufferView(val1)) {\n if (!strict && (isFloat32Array(val1) || isFloat64Array(val1))) {\n if (!areSimilarFloatArrays(val1, val2)) {\n return false;\n }\n } else if (!areSimilarTypedArrays(val1, val2)) {\n return false;\n } // Buffer.compare returns true, so val1.length === val2.length. If they both\n // only contain numeric keys, we don't need to exam further than checking\n // the symbols.\n\n\n var _keys = getOwnNonIndexProperties(val1, ONLY_ENUMERABLE);\n\n var _keys2 = getOwnNonIndexProperties(val2, ONLY_ENUMERABLE);\n\n if (_keys.length !== _keys2.length) {\n return false;\n }\n\n return keyCheck(val1, val2, strict, memos, kNoIterator, _keys);\n } else if (isSet(val1)) {\n if (!isSet(val2) || val1.size !== val2.size) {\n return false;\n }\n\n return keyCheck(val1, val2, strict, memos, kIsSet);\n } else if (isMap(val1)) {\n if (!isMap(val2) || val1.size !== val2.size) {\n return false;\n }\n\n return keyCheck(val1, val2, strict, memos, kIsMap);\n } else if (isAnyArrayBuffer(val1)) {\n if (!areEqualArrayBuffers(val1, val2)) {\n return false;\n }\n } else if (isBoxedPrimitive(val1) && !isEqualBoxedPrimitive(val1, val2)) {\n return false;\n }\n\n return keyCheck(val1, val2, strict, memos, kNoIterator);\n}\n\nfunction getEnumerables(val, keys) {\n return keys.filter(function (k) {\n return propertyIsEnumerable(val, k);\n });\n}\n\nfunction keyCheck(val1, val2, strict, memos, iterationType, aKeys) {\n // For all remaining Object pairs, including Array, objects and Maps,\n // equivalence is determined by having:\n // a) The same number of owned enumerable properties\n // b) The same set of keys/indexes (although not necessarily the same order)\n // c) Equivalent values for every corresponding key/index\n // d) For Sets and Maps, equal contents\n // Note: this accounts for both named and indexed properties on Arrays.\n if (arguments.length === 5) {\n aKeys = Object.keys(val1);\n var bKeys = Object.keys(val2); // The pair must have the same number of owned properties.\n\n if (aKeys.length !== bKeys.length) {\n return false;\n }\n } // Cheap key test\n\n\n var i = 0;\n\n for (; i < aKeys.length; i++) {\n if (!hasOwnProperty(val2, aKeys[i])) {\n return false;\n }\n }\n\n if (strict && arguments.length === 5) {\n var symbolKeysA = objectGetOwnPropertySymbols(val1);\n\n if (symbolKeysA.length !== 0) {\n var count = 0;\n\n for (i = 0; i < symbolKeysA.length; i++) {\n var key = symbolKeysA[i];\n\n if (propertyIsEnumerable(val1, key)) {\n if (!propertyIsEnumerable(val2, key)) {\n return false;\n }\n\n aKeys.push(key);\n count++;\n } else if (propertyIsEnumerable(val2, key)) {\n return false;\n }\n }\n\n var symbolKeysB = objectGetOwnPropertySymbols(val2);\n\n if (symbolKeysA.length !== symbolKeysB.length && getEnumerables(val2, symbolKeysB).length !== count) {\n return false;\n }\n } else {\n var _symbolKeysB = objectGetOwnPropertySymbols(val2);\n\n if (_symbolKeysB.length !== 0 && getEnumerables(val2, _symbolKeysB).length !== 0) {\n return false;\n }\n }\n }\n\n if (aKeys.length === 0 && (iterationType === kNoIterator || iterationType === kIsArray && val1.length === 0 || val1.size === 0)) {\n return true;\n } // Use memos to handle cycles.\n\n\n if (memos === undefined) {\n memos = {\n val1: new Map(),\n val2: new Map(),\n position: 0\n };\n } else {\n // We prevent up to two map.has(x) calls by directly retrieving the value\n // and checking for undefined. The map can only contain numbers, so it is\n // safe to check for undefined only.\n var val2MemoA = memos.val1.get(val1);\n\n if (val2MemoA !== undefined) {\n var val2MemoB = memos.val2.get(val2);\n\n if (val2MemoB !== undefined) {\n return val2MemoA === val2MemoB;\n }\n }\n\n memos.position++;\n }\n\n memos.val1.set(val1, memos.position);\n memos.val2.set(val2, memos.position);\n var areEq = objEquiv(val1, val2, strict, aKeys, memos, iterationType);\n memos.val1.delete(val1);\n memos.val2.delete(val2);\n return areEq;\n}\n\nfunction setHasEqualElement(set, val1, strict, memo) {\n // Go looking.\n var setValues = arrayFromSet(set);\n\n for (var i = 0; i < setValues.length; i++) {\n var val2 = setValues[i];\n\n if (innerDeepEqual(val1, val2, strict, memo)) {\n // Remove the matching element to make sure we do not check that again.\n set.delete(val2);\n return true;\n }\n }\n\n return false;\n} // See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Equality_comparisons_and_sameness#Loose_equality_using\n// Sadly it is not possible to detect corresponding values properly in case the\n// type is a string, number, bigint or boolean. The reason is that those values\n// can match lots of different string values (e.g., 1n == '+00001').\n\n\nfunction findLooseMatchingPrimitives(prim) {\n switch (_typeof(prim)) {\n case 'undefined':\n return null;\n\n case 'object':\n // Only pass in null as object!\n return undefined;\n\n case 'symbol':\n return false;\n\n case 'string':\n prim = +prim;\n // Loose equal entries exist only if the string is possible to convert to\n // a regular number and not NaN.\n // Fall through\n\n case 'number':\n if (numberIsNaN(prim)) {\n return false;\n }\n\n }\n\n return true;\n}\n\nfunction setMightHaveLoosePrim(a, b, prim) {\n var altValue = findLooseMatchingPrimitives(prim);\n if (altValue != null) return altValue;\n return b.has(altValue) && !a.has(altValue);\n}\n\nfunction mapMightHaveLoosePrim(a, b, prim, item, memo) {\n var altValue = findLooseMatchingPrimitives(prim);\n\n if (altValue != null) {\n return altValue;\n }\n\n var curB = b.get(altValue);\n\n if (curB === undefined && !b.has(altValue) || !innerDeepEqual(item, curB, false, memo)) {\n return false;\n }\n\n return !a.has(altValue) && innerDeepEqual(item, curB, false, memo);\n}\n\nfunction setEquiv(a, b, strict, memo) {\n // This is a lazily initiated Set of entries which have to be compared\n // pairwise.\n var set = null;\n var aValues = arrayFromSet(a);\n\n for (var i = 0; i < aValues.length; i++) {\n var val = aValues[i]; // Note: Checking for the objects first improves the performance for object\n // heavy sets but it is a minor slow down for primitives. As they are fast\n // to check this improves the worst case scenario instead.\n\n if (_typeof(val) === 'object' && val !== null) {\n if (set === null) {\n set = new Set();\n } // If the specified value doesn't exist in the second set its an not null\n // object (or non strict only: a not matching primitive) we'll need to go\n // hunting for something thats deep-(strict-)equal to it. To make this\n // O(n log n) complexity we have to copy these values in a new set first.\n\n\n set.add(val);\n } else if (!b.has(val)) {\n if (strict) return false; // Fast path to detect missing string, symbol, undefined and null values.\n\n if (!setMightHaveLoosePrim(a, b, val)) {\n return false;\n }\n\n if (set === null) {\n set = new Set();\n }\n\n set.add(val);\n }\n }\n\n if (set !== null) {\n var bValues = arrayFromSet(b);\n\n for (var _i = 0; _i < bValues.length; _i++) {\n var _val = bValues[_i]; // We have to check if a primitive value is already\n // matching and only if it's not, go hunting for it.\n\n if (_typeof(_val) === 'object' && _val !== null) {\n if (!setHasEqualElement(set, _val, strict, memo)) return false;\n } else if (!strict && !a.has(_val) && !setHasEqualElement(set, _val, strict, memo)) {\n return false;\n }\n }\n\n return set.size === 0;\n }\n\n return true;\n}\n\nfunction mapHasEqualEntry(set, map, key1, item1, strict, memo) {\n // To be able to handle cases like:\n // Map([[{}, 'a'], [{}, 'b']]) vs Map([[{}, 'b'], [{}, 'a']])\n // ... we need to consider *all* matching keys, not just the first we find.\n var setValues = arrayFromSet(set);\n\n for (var i = 0; i < setValues.length; i++) {\n var key2 = setValues[i];\n\n if (innerDeepEqual(key1, key2, strict, memo) && innerDeepEqual(item1, map.get(key2), strict, memo)) {\n set.delete(key2);\n return true;\n }\n }\n\n return false;\n}\n\nfunction mapEquiv(a, b, strict, memo) {\n var set = null;\n var aEntries = arrayFromMap(a);\n\n for (var i = 0; i < aEntries.length; i++) {\n var _aEntries$i = _slicedToArray(aEntries[i], 2),\n key = _aEntries$i[0],\n item1 = _aEntries$i[1];\n\n if (_typeof(key) === 'object' && key !== null) {\n if (set === null) {\n set = new Set();\n }\n\n set.add(key);\n } else {\n // By directly retrieving the value we prevent another b.has(key) check in\n // almost all possible cases.\n var item2 = b.get(key);\n\n if (item2 === undefined && !b.has(key) || !innerDeepEqual(item1, item2, strict, memo)) {\n if (strict) return false; // Fast path to detect missing string, symbol, undefined and null\n // keys.\n\n if (!mapMightHaveLoosePrim(a, b, key, item1, memo)) return false;\n\n if (set === null) {\n set = new Set();\n }\n\n set.add(key);\n }\n }\n }\n\n if (set !== null) {\n var bEntries = arrayFromMap(b);\n\n for (var _i2 = 0; _i2 < bEntries.length; _i2++) {\n var _bEntries$_i = _slicedToArray(bEntries[_i2], 2),\n key = _bEntries$_i[0],\n item = _bEntries$_i[1];\n\n if (_typeof(key) === 'object' && key !== null) {\n if (!mapHasEqualEntry(set, a, key, item, strict, memo)) return false;\n } else if (!strict && (!a.has(key) || !innerDeepEqual(a.get(key), item, false, memo)) && !mapHasEqualEntry(set, a, key, item, false, memo)) {\n return false;\n }\n }\n\n return set.size === 0;\n }\n\n return true;\n}\n\nfunction objEquiv(a, b, strict, keys, memos, iterationType) {\n // Sets and maps don't have their entries accessible via normal object\n // properties.\n var i = 0;\n\n if (iterationType === kIsSet) {\n if (!setEquiv(a, b, strict, memos)) {\n return false;\n }\n } else if (iterationType === kIsMap) {\n if (!mapEquiv(a, b, strict, memos)) {\n return false;\n }\n } else if (iterationType === kIsArray) {\n for (; i < a.length; i++) {\n if (hasOwnProperty(a, i)) {\n if (!hasOwnProperty(b, i) || !innerDeepEqual(a[i], b[i], strict, memos)) {\n return false;\n }\n } else if (hasOwnProperty(b, i)) {\n return false;\n } else {\n // Array is sparse.\n var keysA = Object.keys(a);\n\n for (; i < keysA.length; i++) {\n var key = keysA[i];\n\n if (!hasOwnProperty(b, key) || !innerDeepEqual(a[key], b[key], strict, memos)) {\n return false;\n }\n }\n\n if (keysA.length !== Object.keys(b).length) {\n return false;\n }\n\n return true;\n }\n }\n } // The pair must have equivalent values for every corresponding key.\n // Possibly expensive deep test:\n\n\n for (i = 0; i < keys.length; i++) {\n var _key = keys[i];\n\n if (!innerDeepEqual(a[_key], b[_key], strict, memos)) {\n return false;\n }\n }\n\n return true;\n}\n\nfunction isDeepEqual(val1, val2) {\n return innerDeepEqual(val1, val2, kLoose);\n}\n\nfunction isDeepStrictEqual(val1, val2) {\n return innerDeepEqual(val1, val2, kStrict);\n}\n\nmodule.exports = {\n isDeepEqual: isDeepEqual,\n isDeepStrictEqual: isDeepStrictEqual\n};","if (typeof Object.create === 'function') {\n // implementation from standard node.js 'util' module\n module.exports = function inherits(ctor, superCtor) {\n if (superCtor) {\n ctor.super_ = superCtor\n ctor.prototype = Object.create(superCtor.prototype, {\n constructor: {\n value: ctor,\n enumerable: false,\n writable: true,\n configurable: true\n }\n })\n }\n };\n} else {\n // old school shim for old browsers\n module.exports = function inherits(ctor, superCtor) {\n if (superCtor) {\n ctor.super_ = superCtor\n var TempCtor = function () {}\n TempCtor.prototype = superCtor.prototype\n ctor.prototype = new TempCtor()\n ctor.prototype.constructor = ctor\n }\n }\n}\n","module.exports = function isBuffer(arg) {\n return arg && typeof arg === 'object'\n && typeof arg.copy === 'function'\n && typeof arg.fill === 'function'\n && typeof arg.readUInt8 === 'function';\n}","// Currently in sync with Node.js lib/internal/util/types.js\n// https://github.com/nodejs/node/commit/112cc7c27551254aa2b17098fb774867f05ed0d9\n\n'use strict';\n\nvar isArgumentsObject = require('is-arguments');\nvar isGeneratorFunction = require('is-generator-function');\nvar whichTypedArray = require('which-typed-array');\nvar isTypedArray = require('is-typed-array');\n\nfunction uncurryThis(f) {\n return f.call.bind(f);\n}\n\nvar BigIntSupported = typeof BigInt !== 'undefined';\nvar SymbolSupported = typeof Symbol !== 'undefined';\n\nvar ObjectToString = uncurryThis(Object.prototype.toString);\n\nvar numberValue = uncurryThis(Number.prototype.valueOf);\nvar stringValue = uncurryThis(String.prototype.valueOf);\nvar booleanValue = uncurryThis(Boolean.prototype.valueOf);\n\nif (BigIntSupported) {\n var bigIntValue = uncurryThis(BigInt.prototype.valueOf);\n}\n\nif (SymbolSupported) {\n var symbolValue = uncurryThis(Symbol.prototype.valueOf);\n}\n\nfunction checkBoxedPrimitive(value, prototypeValueOf) {\n if (typeof value !== 'object') {\n return false;\n }\n try {\n prototypeValueOf(value);\n return true;\n } catch(e) {\n return false;\n }\n}\n\nexports.isArgumentsObject = isArgumentsObject;\nexports.isGeneratorFunction = isGeneratorFunction;\nexports.isTypedArray = isTypedArray;\n\n// Taken from here and modified for better browser support\n// https://github.com/sindresorhus/p-is-promise/blob/cda35a513bda03f977ad5cde3a079d237e82d7ef/index.js\nfunction isPromise(input) {\n\treturn (\n\t\t(\n\t\t\ttypeof Promise !== 'undefined' &&\n\t\t\tinput instanceof Promise\n\t\t) ||\n\t\t(\n\t\t\tinput !== null &&\n\t\t\ttypeof input === 'object' &&\n\t\t\ttypeof input.then === 'function' &&\n\t\t\ttypeof input.catch === 'function'\n\t\t)\n\t);\n}\nexports.isPromise = isPromise;\n\nfunction isArrayBufferView(value) {\n if (typeof ArrayBuffer !== 'undefined' && ArrayBuffer.isView) {\n return ArrayBuffer.isView(value);\n }\n\n return (\n isTypedArray(value) ||\n isDataView(value)\n );\n}\nexports.isArrayBufferView = isArrayBufferView;\n\n\nfunction isUint8Array(value) {\n return whichTypedArray(value) === 'Uint8Array';\n}\nexports.isUint8Array = isUint8Array;\n\nfunction isUint8ClampedArray(value) {\n return whichTypedArray(value) === 'Uint8ClampedArray';\n}\nexports.isUint8ClampedArray = isUint8ClampedArray;\n\nfunction isUint16Array(value) {\n return whichTypedArray(value) === 'Uint16Array';\n}\nexports.isUint16Array = isUint16Array;\n\nfunction isUint32Array(value) {\n return whichTypedArray(value) === 'Uint32Array';\n}\nexports.isUint32Array = isUint32Array;\n\nfunction isInt8Array(value) {\n return whichTypedArray(value) === 'Int8Array';\n}\nexports.isInt8Array = isInt8Array;\n\nfunction isInt16Array(value) {\n return whichTypedArray(value) === 'Int16Array';\n}\nexports.isInt16Array = isInt16Array;\n\nfunction isInt32Array(value) {\n return whichTypedArray(value) === 'Int32Array';\n}\nexports.isInt32Array = isInt32Array;\n\nfunction isFloat32Array(value) {\n return whichTypedArray(value) === 'Float32Array';\n}\nexports.isFloat32Array = isFloat32Array;\n\nfunction isFloat64Array(value) {\n return whichTypedArray(value) === 'Float64Array';\n}\nexports.isFloat64Array = isFloat64Array;\n\nfunction isBigInt64Array(value) {\n return whichTypedArray(value) === 'BigInt64Array';\n}\nexports.isBigInt64Array = isBigInt64Array;\n\nfunction isBigUint64Array(value) {\n return whichTypedArray(value) === 'BigUint64Array';\n}\nexports.isBigUint64Array = isBigUint64Array;\n\nfunction isMapToString(value) {\n return ObjectToString(value) === '[object Map]';\n}\nisMapToString.working = (\n typeof Map !== 'undefined' &&\n isMapToString(new Map())\n);\n\nfunction isMap(value) {\n if (typeof Map === 'undefined') {\n return false;\n }\n\n return isMapToString.working\n ? isMapToString(value)\n : value instanceof Map;\n}\nexports.isMap = isMap;\n\nfunction isSetToString(value) {\n return ObjectToString(value) === '[object Set]';\n}\nisSetToString.working = (\n typeof Set !== 'undefined' &&\n isSetToString(new Set())\n);\nfunction isSet(value) {\n if (typeof Set === 'undefined') {\n return false;\n }\n\n return isSetToString.working\n ? isSetToString(value)\n : value instanceof Set;\n}\nexports.isSet = isSet;\n\nfunction isWeakMapToString(value) {\n return ObjectToString(value) === '[object WeakMap]';\n}\nisWeakMapToString.working = (\n typeof WeakMap !== 'undefined' &&\n isWeakMapToString(new WeakMap())\n);\nfunction isWeakMap(value) {\n if (typeof WeakMap === 'undefined') {\n return false;\n }\n\n return isWeakMapToString.working\n ? isWeakMapToString(value)\n : value instanceof WeakMap;\n}\nexports.isWeakMap = isWeakMap;\n\nfunction isWeakSetToString(value) {\n return ObjectToString(value) === '[object WeakSet]';\n}\nisWeakSetToString.working = (\n typeof WeakSet !== 'undefined' &&\n isWeakSetToString(new WeakSet())\n);\nfunction isWeakSet(value) {\n return isWeakSetToString(value);\n}\nexports.isWeakSet = isWeakSet;\n\nfunction isArrayBufferToString(value) {\n return ObjectToString(value) === '[object ArrayBuffer]';\n}\nisArrayBufferToString.working = (\n typeof ArrayBuffer !== 'undefined' &&\n isArrayBufferToString(new ArrayBuffer())\n);\nfunction isArrayBuffer(value) {\n if (typeof ArrayBuffer === 'undefined') {\n return false;\n }\n\n return isArrayBufferToString.working\n ? isArrayBufferToString(value)\n : value instanceof ArrayBuffer;\n}\nexports.isArrayBuffer = isArrayBuffer;\n\nfunction isDataViewToString(value) {\n return ObjectToString(value) === '[object DataView]';\n}\nisDataViewToString.working = (\n typeof ArrayBuffer !== 'undefined' &&\n typeof DataView !== 'undefined' &&\n isDataViewToString(new DataView(new ArrayBuffer(1), 0, 1))\n);\nfunction isDataView(value) {\n if (typeof DataView === 'undefined') {\n return false;\n }\n\n return isDataViewToString.working\n ? isDataViewToString(value)\n : value instanceof DataView;\n}\nexports.isDataView = isDataView;\n\n// Store a copy of SharedArrayBuffer in case it's deleted elsewhere\nvar SharedArrayBufferCopy = typeof SharedArrayBuffer !== 'undefined' ? SharedArrayBuffer : undefined;\nfunction isSharedArrayBufferToString(value) {\n return ObjectToString(value) === '[object SharedArrayBuffer]';\n}\nfunction isSharedArrayBuffer(value) {\n if (typeof SharedArrayBufferCopy === 'undefined') {\n return false;\n }\n\n if (typeof isSharedArrayBufferToString.working === 'undefined') {\n isSharedArrayBufferToString.working = isSharedArrayBufferToString(new SharedArrayBufferCopy());\n }\n\n return isSharedArrayBufferToString.working\n ? isSharedArrayBufferToString(value)\n : value instanceof SharedArrayBufferCopy;\n}\nexports.isSharedArrayBuffer = isSharedArrayBuffer;\n\nfunction isAsyncFunction(value) {\n return ObjectToString(value) === '[object AsyncFunction]';\n}\nexports.isAsyncFunction = isAsyncFunction;\n\nfunction isMapIterator(value) {\n return ObjectToString(value) === '[object Map Iterator]';\n}\nexports.isMapIterator = isMapIterator;\n\nfunction isSetIterator(value) {\n return ObjectToString(value) === '[object Set Iterator]';\n}\nexports.isSetIterator = isSetIterator;\n\nfunction isGeneratorObject(value) {\n return ObjectToString(value) === '[object Generator]';\n}\nexports.isGeneratorObject = isGeneratorObject;\n\nfunction isWebAssemblyCompiledModule(value) {\n return ObjectToString(value) === '[object WebAssembly.Module]';\n}\nexports.isWebAssemblyCompiledModule = isWebAssemblyCompiledModule;\n\nfunction isNumberObject(value) {\n return checkBoxedPrimitive(value, numberValue);\n}\nexports.isNumberObject = isNumberObject;\n\nfunction isStringObject(value) {\n return checkBoxedPrimitive(value, stringValue);\n}\nexports.isStringObject = isStringObject;\n\nfunction isBooleanObject(value) {\n return checkBoxedPrimitive(value, booleanValue);\n}\nexports.isBooleanObject = isBooleanObject;\n\nfunction isBigIntObject(value) {\n return BigIntSupported && checkBoxedPrimitive(value, bigIntValue);\n}\nexports.isBigIntObject = isBigIntObject;\n\nfunction isSymbolObject(value) {\n return SymbolSupported && checkBoxedPrimitive(value, symbolValue);\n}\nexports.isSymbolObject = isSymbolObject;\n\nfunction isBoxedPrimitive(value) {\n return (\n isNumberObject(value) ||\n isStringObject(value) ||\n isBooleanObject(value) ||\n isBigIntObject(value) ||\n isSymbolObject(value)\n );\n}\nexports.isBoxedPrimitive = isBoxedPrimitive;\n\nfunction isAnyArrayBuffer(value) {\n return typeof Uint8Array !== 'undefined' && (\n isArrayBuffer(value) ||\n isSharedArrayBuffer(value)\n );\n}\nexports.isAnyArrayBuffer = isAnyArrayBuffer;\n\n['isProxy', 'isExternal', 'isModuleNamespaceObject'].forEach(function(method) {\n Object.defineProperty(exports, method, {\n enumerable: false,\n value: function() {\n throw new Error(method + ' is not supported in userland');\n }\n });\n});\n","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\nvar getOwnPropertyDescriptors = Object.getOwnPropertyDescriptors ||\n function getOwnPropertyDescriptors(obj) {\n var keys = Object.keys(obj);\n var descriptors = {};\n for (var i = 0; i < keys.length; i++) {\n descriptors[keys[i]] = Object.getOwnPropertyDescriptor(obj, keys[i]);\n }\n return descriptors;\n };\n\nvar formatRegExp = /%[sdj%]/g;\nexports.format = function(f) {\n if (!isString(f)) {\n var objects = [];\n for (var i = 0; i < arguments.length; i++) {\n objects.push(inspect(arguments[i]));\n }\n return objects.join(' ');\n }\n\n var i = 1;\n var args = arguments;\n var len = args.length;\n var str = String(f).replace(formatRegExp, function(x) {\n if (x === '%%') return '%';\n if (i >= len) return x;\n switch (x) {\n case '%s': return String(args[i++]);\n case '%d': return Number(args[i++]);\n case '%j':\n try {\n return JSON.stringify(args[i++]);\n } catch (_) {\n return '[Circular]';\n }\n default:\n return x;\n }\n });\n for (var x = args[i]; i < len; x = args[++i]) {\n if (isNull(x) || !isObject(x)) {\n str += ' ' + x;\n } else {\n str += ' ' + inspect(x);\n }\n }\n return str;\n};\n\n\n// Mark that a method should not be used.\n// Returns a modified function which warns once by default.\n// If --no-deprecation is set, then it is a no-op.\nexports.deprecate = function(fn, msg) {\n if (typeof process !== 'undefined' && process.noDeprecation === true) {\n return fn;\n }\n\n // Allow for deprecating things in the process of starting up.\n if (typeof process === 'undefined') {\n return function() {\n return exports.deprecate(fn, msg).apply(this, arguments);\n };\n }\n\n var warned = false;\n function deprecated() {\n if (!warned) {\n if (process.throwDeprecation) {\n throw new Error(msg);\n } else if (process.traceDeprecation) {\n console.trace(msg);\n } else {\n console.error(msg);\n }\n warned = true;\n }\n return fn.apply(this, arguments);\n }\n\n return deprecated;\n};\n\n\nvar debugs = {};\nvar debugEnvRegex = /^$/;\n\nif (process.env.NODE_DEBUG) {\n var debugEnv = process.env.NODE_DEBUG;\n debugEnv = debugEnv.replace(/[|\\\\{}()[\\]^$+?.]/g, '\\\\$&')\n .replace(/\\*/g, '.*')\n .replace(/,/g, '$|^')\n .toUpperCase();\n debugEnvRegex = new RegExp('^' + debugEnv + '$', 'i');\n}\nexports.debuglog = function(set) {\n set = set.toUpperCase();\n if (!debugs[set]) {\n if (debugEnvRegex.test(set)) {\n var pid = process.pid;\n debugs[set] = function() {\n var msg = exports.format.apply(exports, arguments);\n console.error('%s %d: %s', set, pid, msg);\n };\n } else {\n debugs[set] = function() {};\n }\n }\n return debugs[set];\n};\n\n\n/**\n * Echos the value of a value. Trys to print the value out\n * in the best way possible given the different types.\n *\n * @param {Object} obj The object to print out.\n * @param {Object} opts Optional options object that alters the output.\n */\n/* legacy: obj, showHidden, depth, colors*/\nfunction inspect(obj, opts) {\n // default options\n var ctx = {\n seen: [],\n stylize: stylizeNoColor\n };\n // legacy...\n if (arguments.length >= 3) ctx.depth = arguments[2];\n if (arguments.length >= 4) ctx.colors = arguments[3];\n if (isBoolean(opts)) {\n // legacy...\n ctx.showHidden = opts;\n } else if (opts) {\n // got an \"options\" object\n exports._extend(ctx, opts);\n }\n // set default options\n if (isUndefined(ctx.showHidden)) ctx.showHidden = false;\n if (isUndefined(ctx.depth)) ctx.depth = 2;\n if (isUndefined(ctx.colors)) ctx.colors = false;\n if (isUndefined(ctx.customInspect)) ctx.customInspect = true;\n if (ctx.colors) ctx.stylize = stylizeWithColor;\n return formatValue(ctx, obj, ctx.depth);\n}\nexports.inspect = inspect;\n\n\n// http://en.wikipedia.org/wiki/ANSI_escape_code#graphics\ninspect.colors = {\n 'bold' : [1, 22],\n 'italic' : [3, 23],\n 'underline' : [4, 24],\n 'inverse' : [7, 27],\n 'white' : [37, 39],\n 'grey' : [90, 39],\n 'black' : [30, 39],\n 'blue' : [34, 39],\n 'cyan' : [36, 39],\n 'green' : [32, 39],\n 'magenta' : [35, 39],\n 'red' : [31, 39],\n 'yellow' : [33, 39]\n};\n\n// Don't use 'blue' not visible on cmd.exe\ninspect.styles = {\n 'special': 'cyan',\n 'number': 'yellow',\n 'boolean': 'yellow',\n 'undefined': 'grey',\n 'null': 'bold',\n 'string': 'green',\n 'date': 'magenta',\n // \"name\": intentionally not styling\n 'regexp': 'red'\n};\n\n\nfunction stylizeWithColor(str, styleType) {\n var style = inspect.styles[styleType];\n\n if (style) {\n return '\\u001b[' + inspect.colors[style][0] + 'm' + str +\n '\\u001b[' + inspect.colors[style][1] + 'm';\n } else {\n return str;\n }\n}\n\n\nfunction stylizeNoColor(str, styleType) {\n return str;\n}\n\n\nfunction arrayToHash(array) {\n var hash = {};\n\n array.forEach(function(val, idx) {\n hash[val] = true;\n });\n\n return hash;\n}\n\n\nfunction formatValue(ctx, value, recurseTimes) {\n // Provide a hook for user-specified inspect functions.\n // Check that value is an object with an inspect function on it\n if (ctx.customInspect &&\n value &&\n isFunction(value.inspect) &&\n // Filter out the util module, it's inspect function is special\n value.inspect !== exports.inspect &&\n // Also filter out any prototype objects using the circular check.\n !(value.constructor && value.constructor.prototype === value)) {\n var ret = value.inspect(recurseTimes, ctx);\n if (!isString(ret)) {\n ret = formatValue(ctx, ret, recurseTimes);\n }\n return ret;\n }\n\n // Primitive types cannot have properties\n var primitive = formatPrimitive(ctx, value);\n if (primitive) {\n return primitive;\n }\n\n // Look up the keys of the object.\n var keys = Object.keys(value);\n var visibleKeys = arrayToHash(keys);\n\n if (ctx.showHidden) {\n keys = Object.getOwnPropertyNames(value);\n }\n\n // IE doesn't make error fields non-enumerable\n // http://msdn.microsoft.com/en-us/library/ie/dww52sbt(v=vs.94).aspx\n if (isError(value)\n && (keys.indexOf('message') >= 0 || keys.indexOf('description') >= 0)) {\n return formatError(value);\n }\n\n // Some type of object without properties can be shortcutted.\n if (keys.length === 0) {\n if (isFunction(value)) {\n var name = value.name ? ': ' + value.name : '';\n return ctx.stylize('[Function' + name + ']', 'special');\n }\n if (isRegExp(value)) {\n return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp');\n }\n if (isDate(value)) {\n return ctx.stylize(Date.prototype.toString.call(value), 'date');\n }\n if (isError(value)) {\n return formatError(value);\n }\n }\n\n var base = '', array = false, braces = ['{', '}'];\n\n // Make Array say that they are Array\n if (isArray(value)) {\n array = true;\n braces = ['[', ']'];\n }\n\n // Make functions say that they are functions\n if (isFunction(value)) {\n var n = value.name ? ': ' + value.name : '';\n base = ' [Function' + n + ']';\n }\n\n // Make RegExps say that they are RegExps\n if (isRegExp(value)) {\n base = ' ' + RegExp.prototype.toString.call(value);\n }\n\n // Make dates with properties first say the date\n if (isDate(value)) {\n base = ' ' + Date.prototype.toUTCString.call(value);\n }\n\n // Make error with message first say the error\n if (isError(value)) {\n base = ' ' + formatError(value);\n }\n\n if (keys.length === 0 && (!array || value.length == 0)) {\n return braces[0] + base + braces[1];\n }\n\n if (recurseTimes < 0) {\n if (isRegExp(value)) {\n return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp');\n } else {\n return ctx.stylize('[Object]', 'special');\n }\n }\n\n ctx.seen.push(value);\n\n var output;\n if (array) {\n output = formatArray(ctx, value, recurseTimes, visibleKeys, keys);\n } else {\n output = keys.map(function(key) {\n return formatProperty(ctx, value, recurseTimes, visibleKeys, key, array);\n });\n }\n\n ctx.seen.pop();\n\n return reduceToSingleString(output, base, braces);\n}\n\n\nfunction formatPrimitive(ctx, value) {\n if (isUndefined(value))\n return ctx.stylize('undefined', 'undefined');\n if (isString(value)) {\n var simple = '\\'' + JSON.stringify(value).replace(/^\"|\"$/g, '')\n .replace(/'/g, \"\\\\'\")\n .replace(/\\\\\"/g, '\"') + '\\'';\n return ctx.stylize(simple, 'string');\n }\n if (isNumber(value))\n return ctx.stylize('' + value, 'number');\n if (isBoolean(value))\n return ctx.stylize('' + value, 'boolean');\n // For some reason typeof null is \"object\", so special case here.\n if (isNull(value))\n return ctx.stylize('null', 'null');\n}\n\n\nfunction formatError(value) {\n return '[' + Error.prototype.toString.call(value) + ']';\n}\n\n\nfunction formatArray(ctx, value, recurseTimes, visibleKeys, keys) {\n var output = [];\n for (var i = 0, l = value.length; i < l; ++i) {\n if (hasOwnProperty(value, String(i))) {\n output.push(formatProperty(ctx, value, recurseTimes, visibleKeys,\n String(i), true));\n } else {\n output.push('');\n }\n }\n keys.forEach(function(key) {\n if (!key.match(/^\\d+$/)) {\n output.push(formatProperty(ctx, value, recurseTimes, visibleKeys,\n key, true));\n }\n });\n return output;\n}\n\n\nfunction formatProperty(ctx, value, recurseTimes, visibleKeys, key, array) {\n var name, str, desc;\n desc = Object.getOwnPropertyDescriptor(value, key) || { value: value[key] };\n if (desc.get) {\n if (desc.set) {\n str = ctx.stylize('[Getter/Setter]', 'special');\n } else {\n str = ctx.stylize('[Getter]', 'special');\n }\n } else {\n if (desc.set) {\n str = ctx.stylize('[Setter]', 'special');\n }\n }\n if (!hasOwnProperty(visibleKeys, key)) {\n name = '[' + key + ']';\n }\n if (!str) {\n if (ctx.seen.indexOf(desc.value) < 0) {\n if (isNull(recurseTimes)) {\n str = formatValue(ctx, desc.value, null);\n } else {\n str = formatValue(ctx, desc.value, recurseTimes - 1);\n }\n if (str.indexOf('\\n') > -1) {\n if (array) {\n str = str.split('\\n').map(function(line) {\n return ' ' + line;\n }).join('\\n').substr(2);\n } else {\n str = '\\n' + str.split('\\n').map(function(line) {\n return ' ' + line;\n }).join('\\n');\n }\n }\n } else {\n str = ctx.stylize('[Circular]', 'special');\n }\n }\n if (isUndefined(name)) {\n if (array && key.match(/^\\d+$/)) {\n return str;\n }\n name = JSON.stringify('' + key);\n if (name.match(/^\"([a-zA-Z_][a-zA-Z_0-9]*)\"$/)) {\n name = name.substr(1, name.length - 2);\n name = ctx.stylize(name, 'name');\n } else {\n name = name.replace(/'/g, \"\\\\'\")\n .replace(/\\\\\"/g, '\"')\n .replace(/(^\"|\"$)/g, \"'\");\n name = ctx.stylize(name, 'string');\n }\n }\n\n return name + ': ' + str;\n}\n\n\nfunction reduceToSingleString(output, base, braces) {\n var numLinesEst = 0;\n var length = output.reduce(function(prev, cur) {\n numLinesEst++;\n if (cur.indexOf('\\n') >= 0) numLinesEst++;\n return prev + cur.replace(/\\u001b\\[\\d\\d?m/g, '').length + 1;\n }, 0);\n\n if (length > 60) {\n return braces[0] +\n (base === '' ? '' : base + '\\n ') +\n ' ' +\n output.join(',\\n ') +\n ' ' +\n braces[1];\n }\n\n return braces[0] + base + ' ' + output.join(', ') + ' ' + braces[1];\n}\n\n\n// NOTE: These type checking functions intentionally don't use `instanceof`\n// because it is fragile and can be easily faked with `Object.create()`.\nexports.types = require('./support/types');\n\nfunction isArray(ar) {\n return Array.isArray(ar);\n}\nexports.isArray = isArray;\n\nfunction isBoolean(arg) {\n return typeof arg === 'boolean';\n}\nexports.isBoolean = isBoolean;\n\nfunction isNull(arg) {\n return arg === null;\n}\nexports.isNull = isNull;\n\nfunction isNullOrUndefined(arg) {\n return arg == null;\n}\nexports.isNullOrUndefined = isNullOrUndefined;\n\nfunction isNumber(arg) {\n return typeof arg === 'number';\n}\nexports.isNumber = isNumber;\n\nfunction isString(arg) {\n return typeof arg === 'string';\n}\nexports.isString = isString;\n\nfunction isSymbol(arg) {\n return typeof arg === 'symbol';\n}\nexports.isSymbol = isSymbol;\n\nfunction isUndefined(arg) {\n return arg === void 0;\n}\nexports.isUndefined = isUndefined;\n\nfunction isRegExp(re) {\n return isObject(re) && objectToString(re) === '[object RegExp]';\n}\nexports.isRegExp = isRegExp;\nexports.types.isRegExp = isRegExp;\n\nfunction isObject(arg) {\n return typeof arg === 'object' && arg !== null;\n}\nexports.isObject = isObject;\n\nfunction isDate(d) {\n return isObject(d) && objectToString(d) === '[object Date]';\n}\nexports.isDate = isDate;\nexports.types.isDate = isDate;\n\nfunction isError(e) {\n return isObject(e) &&\n (objectToString(e) === '[object Error]' || e instanceof Error);\n}\nexports.isError = isError;\nexports.types.isNativeError = isError;\n\nfunction isFunction(arg) {\n return typeof arg === 'function';\n}\nexports.isFunction = isFunction;\n\nfunction isPrimitive(arg) {\n return arg === null ||\n typeof arg === 'boolean' ||\n typeof arg === 'number' ||\n typeof arg === 'string' ||\n typeof arg === 'symbol' || // ES6 symbol\n typeof arg === 'undefined';\n}\nexports.isPrimitive = isPrimitive;\n\nexports.isBuffer = require('./support/isBuffer');\n\nfunction objectToString(o) {\n return Object.prototype.toString.call(o);\n}\n\n\nfunction pad(n) {\n return n < 10 ? '0' + n.toString(10) : n.toString(10);\n}\n\n\nvar months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep',\n 'Oct', 'Nov', 'Dec'];\n\n// 26 Feb 16:19:34\nfunction timestamp() {\n var d = new Date();\n var time = [pad(d.getHours()),\n pad(d.getMinutes()),\n pad(d.getSeconds())].join(':');\n return [d.getDate(), months[d.getMonth()], time].join(' ');\n}\n\n\n// log is just a thin wrapper to console.log that prepends a timestamp\nexports.log = function() {\n console.log('%s - %s', timestamp(), exports.format.apply(exports, arguments));\n};\n\n\n/**\n * Inherit the prototype methods from one constructor into another.\n *\n * The Function.prototype.inherits from lang.js rewritten as a standalone\n * function (not on Function.prototype). NOTE: If this file is to be loaded\n * during bootstrapping this function needs to be rewritten using some native\n * functions as prototype setup using normal JavaScript does not work as\n * expected during bootstrapping (see mirror.js in r114903).\n *\n * @param {function} ctor Constructor function which needs to inherit the\n * prototype.\n * @param {function} superCtor Constructor function to inherit prototype from.\n */\nexports.inherits = require('inherits');\n\nexports._extend = function(origin, add) {\n // Don't do anything if add isn't an object\n if (!add || !isObject(add)) return origin;\n\n var keys = Object.keys(add);\n var i = keys.length;\n while (i--) {\n origin[keys[i]] = add[keys[i]];\n }\n return origin;\n};\n\nfunction hasOwnProperty(obj, prop) {\n return Object.prototype.hasOwnProperty.call(obj, prop);\n}\n\nvar kCustomPromisifiedSymbol = typeof Symbol !== 'undefined' ? Symbol('util.promisify.custom') : undefined;\n\nexports.promisify = function promisify(original) {\n if (typeof original !== 'function')\n throw new TypeError('The \"original\" argument must be of type Function');\n\n if (kCustomPromisifiedSymbol && original[kCustomPromisifiedSymbol]) {\n var fn = original[kCustomPromisifiedSymbol];\n if (typeof fn !== 'function') {\n throw new TypeError('The \"util.promisify.custom\" argument must be of type Function');\n }\n Object.defineProperty(fn, kCustomPromisifiedSymbol, {\n value: fn, enumerable: false, writable: false, configurable: true\n });\n return fn;\n }\n\n function fn() {\n var promiseResolve, promiseReject;\n var promise = new Promise(function (resolve, reject) {\n promiseResolve = resolve;\n promiseReject = reject;\n });\n\n var args = [];\n for (var i = 0; i < arguments.length; i++) {\n args.push(arguments[i]);\n }\n args.push(function (err, value) {\n if (err) {\n promiseReject(err);\n } else {\n promiseResolve(value);\n }\n });\n\n try {\n original.apply(this, args);\n } catch (err) {\n promiseReject(err);\n }\n\n return promise;\n }\n\n Object.setPrototypeOf(fn, Object.getPrototypeOf(original));\n\n if (kCustomPromisifiedSymbol) Object.defineProperty(fn, kCustomPromisifiedSymbol, {\n value: fn, enumerable: false, writable: false, configurable: true\n });\n return Object.defineProperties(\n fn,\n getOwnPropertyDescriptors(original)\n );\n}\n\nexports.promisify.custom = kCustomPromisifiedSymbol\n\nfunction callbackifyOnRejected(reason, cb) {\n // `!reason` guard inspired by bluebird (Ref: https://goo.gl/t5IS6M).\n // Because `null` is a special error value in callbacks which means \"no error\n // occurred\", we error-wrap so the callback consumer can distinguish between\n // \"the promise rejected with null\" or \"the promise fulfilled with undefined\".\n if (!reason) {\n var newReason = new Error('Promise was rejected with a falsy value');\n newReason.reason = reason;\n reason = newReason;\n }\n return cb(reason);\n}\n\nfunction callbackify(original) {\n if (typeof original !== 'function') {\n throw new TypeError('The \"original\" argument must be of type Function');\n }\n\n // We DO NOT return the promise as it gives the user a false sense that\n // the promise is actually somehow related to the callback's execution\n // and that the callback throwing will reject the promise.\n function callbackified() {\n var args = [];\n for (var i = 0; i < arguments.length; i++) {\n args.push(arguments[i]);\n }\n\n var maybeCb = args.pop();\n if (typeof maybeCb !== 'function') {\n throw new TypeError('The last argument must be of type Function');\n }\n var self = this;\n var cb = function() {\n return maybeCb.apply(self, arguments);\n };\n // In true node style we process the callback on `nextTick` with all the\n // implications (stack, `uncaughtException`, `async_hooks`)\n original.apply(this, args)\n .then(function(ret) { process.nextTick(cb.bind(null, null, ret)) },\n function(rej) { process.nextTick(callbackifyOnRejected.bind(null, rej, cb)) });\n }\n\n Object.setPrototypeOf(callbackified, Object.getPrototypeOf(original));\n Object.defineProperties(callbackified,\n getOwnPropertyDescriptors(original));\n return callbackified;\n}\nexports.callbackify = callbackify;\n","'use strict';\n\nvar numberIsNaN = function (value) {\n\treturn value !== value;\n};\n\nmodule.exports = function is(a, b) {\n\tif (a === 0 && b === 0) {\n\t\treturn 1 / a === 1 / b;\n\t}\n\tif (a === b) {\n\t\treturn true;\n\t}\n\tif (numberIsNaN(a) && numberIsNaN(b)) {\n\t\treturn true;\n\t}\n\treturn false;\n};\n\n","'use strict';\n\nvar define = require('define-properties');\nvar callBind = require('call-bind');\n\nvar implementation = require('./implementation');\nvar getPolyfill = require('./polyfill');\nvar shim = require('./shim');\n\nvar polyfill = callBind(getPolyfill(), Object);\n\ndefine(polyfill, {\n\tgetPolyfill: getPolyfill,\n\timplementation: implementation,\n\tshim: shim\n});\n\nmodule.exports = polyfill;\n","'use strict';\n\nvar implementation = require('./implementation');\n\nmodule.exports = function getPolyfill() {\n\treturn typeof Object.is === 'function' ? Object.is : implementation;\n};\n","'use strict';\n\nvar getPolyfill = require('./polyfill');\nvar define = require('define-properties');\n\nmodule.exports = function shimObjectIs() {\n\tvar polyfill = getPolyfill();\n\tdefine(Object, { is: polyfill }, {\n\t\tis: function testObjectIs() {\n\t\t\treturn Object.is !== polyfill;\n\t\t}\n\t});\n\treturn polyfill;\n};\n","'use strict';\n\nvar keysShim;\nif (!Object.keys) {\n\t// modified from https://github.com/es-shims/es5-shim\n\tvar has = Object.prototype.hasOwnProperty;\n\tvar toStr = Object.prototype.toString;\n\tvar isArgs = require('./isArguments'); // eslint-disable-line global-require\n\tvar isEnumerable = Object.prototype.propertyIsEnumerable;\n\tvar hasDontEnumBug = !isEnumerable.call({ toString: null }, 'toString');\n\tvar hasProtoEnumBug = isEnumerable.call(function () {}, 'prototype');\n\tvar dontEnums = [\n\t\t'toString',\n\t\t'toLocaleString',\n\t\t'valueOf',\n\t\t'hasOwnProperty',\n\t\t'isPrototypeOf',\n\t\t'propertyIsEnumerable',\n\t\t'constructor'\n\t];\n\tvar equalsConstructorPrototype = function (o) {\n\t\tvar ctor = o.constructor;\n\t\treturn ctor && ctor.prototype === o;\n\t};\n\tvar excludedKeys = {\n\t\t$applicationCache: true,\n\t\t$console: true,\n\t\t$external: true,\n\t\t$frame: true,\n\t\t$frameElement: true,\n\t\t$frames: true,\n\t\t$innerHeight: true,\n\t\t$innerWidth: true,\n\t\t$onmozfullscreenchange: true,\n\t\t$onmozfullscreenerror: true,\n\t\t$outerHeight: true,\n\t\t$outerWidth: true,\n\t\t$pageXOffset: true,\n\t\t$pageYOffset: true,\n\t\t$parent: true,\n\t\t$scrollLeft: true,\n\t\t$scrollTop: true,\n\t\t$scrollX: true,\n\t\t$scrollY: true,\n\t\t$self: true,\n\t\t$webkitIndexedDB: true,\n\t\t$webkitStorageInfo: true,\n\t\t$window: true\n\t};\n\tvar hasAutomationEqualityBug = (function () {\n\t\t/* global window */\n\t\tif (typeof window === 'undefined') { return false; }\n\t\tfor (var k in window) {\n\t\t\ttry {\n\t\t\t\tif (!excludedKeys['$' + k] && has.call(window, k) && window[k] !== null && typeof window[k] === 'object') {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tequalsConstructorPrototype(window[k]);\n\t\t\t\t\t} catch (e) {\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} catch (e) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}());\n\tvar equalsConstructorPrototypeIfNotBuggy = function (o) {\n\t\t/* global window */\n\t\tif (typeof window === 'undefined' || !hasAutomationEqualityBug) {\n\t\t\treturn equalsConstructorPrototype(o);\n\t\t}\n\t\ttry {\n\t\t\treturn equalsConstructorPrototype(o);\n\t\t} catch (e) {\n\t\t\treturn false;\n\t\t}\n\t};\n\n\tkeysShim = function keys(object) {\n\t\tvar isObject = object !== null && typeof object === 'object';\n\t\tvar isFunction = toStr.call(object) === '[object Function]';\n\t\tvar isArguments = isArgs(object);\n\t\tvar isString = isObject && toStr.call(object) === '[object String]';\n\t\tvar theKeys = [];\n\n\t\tif (!isObject && !isFunction && !isArguments) {\n\t\t\tthrow new TypeError('Object.keys called on a non-object');\n\t\t}\n\n\t\tvar skipProto = hasProtoEnumBug && isFunction;\n\t\tif (isString && object.length > 0 && !has.call(object, 0)) {\n\t\t\tfor (var i = 0; i < object.length; ++i) {\n\t\t\t\ttheKeys.push(String(i));\n\t\t\t}\n\t\t}\n\n\t\tif (isArguments && object.length > 0) {\n\t\t\tfor (var j = 0; j < object.length; ++j) {\n\t\t\t\ttheKeys.push(String(j));\n\t\t\t}\n\t\t} else {\n\t\t\tfor (var name in object) {\n\t\t\t\tif (!(skipProto && name === 'prototype') && has.call(object, name)) {\n\t\t\t\t\ttheKeys.push(String(name));\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (hasDontEnumBug) {\n\t\t\tvar skipConstructor = equalsConstructorPrototypeIfNotBuggy(object);\n\n\t\t\tfor (var k = 0; k < dontEnums.length; ++k) {\n\t\t\t\tif (!(skipConstructor && dontEnums[k] === 'constructor') && has.call(object, dontEnums[k])) {\n\t\t\t\t\ttheKeys.push(dontEnums[k]);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn theKeys;\n\t};\n}\nmodule.exports = keysShim;\n","'use strict';\n\nvar slice = Array.prototype.slice;\nvar isArgs = require('./isArguments');\n\nvar origKeys = Object.keys;\nvar keysShim = origKeys ? function keys(o) { return origKeys(o); } : require('./implementation');\n\nvar originalKeys = Object.keys;\n\nkeysShim.shim = function shimObjectKeys() {\n\tif (Object.keys) {\n\t\tvar keysWorksWithArguments = (function () {\n\t\t\t// Safari 5.0 bug\n\t\t\tvar args = Object.keys(arguments);\n\t\t\treturn args && args.length === arguments.length;\n\t\t}(1, 2));\n\t\tif (!keysWorksWithArguments) {\n\t\t\tObject.keys = function keys(object) { // eslint-disable-line func-name-matching\n\t\t\t\tif (isArgs(object)) {\n\t\t\t\t\treturn originalKeys(slice.call(object));\n\t\t\t\t}\n\t\t\t\treturn originalKeys(object);\n\t\t\t};\n\t\t}\n\t} else {\n\t\tObject.keys = keysShim;\n\t}\n\treturn Object.keys || keysShim;\n};\n\nmodule.exports = keysShim;\n","'use strict';\n\nvar toStr = Object.prototype.toString;\n\nmodule.exports = function isArguments(value) {\n\tvar str = toStr.call(value);\n\tvar isArgs = str === '[object Arguments]';\n\tif (!isArgs) {\n\t\tisArgs = str !== '[object Array]' &&\n\t\t\tvalue !== null &&\n\t\t\ttypeof value === 'object' &&\n\t\t\ttypeof value.length === 'number' &&\n\t\t\tvalue.length >= 0 &&\n\t\t\ttoStr.call(value.callee) === '[object Function]';\n\t}\n\treturn isArgs;\n};\n","// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n","const debug = require('../internal/debug')\nconst { MAX_LENGTH, MAX_SAFE_INTEGER } = require('../internal/constants')\nconst { re, t } = require('../internal/re')\n\nconst parseOptions = require('../internal/parse-options')\nconst { compareIdentifiers } = require('../internal/identifiers')\nclass SemVer {\n constructor (version, options) {\n options = parseOptions(options)\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","const SemVer = require('../classes/semver')\nconst major = (a, loose) => new SemVer(a, loose).major\nmodule.exports = major\n","const {MAX_LENGTH} = require('../internal/constants')\nconst { re, t } = require('../internal/re')\nconst SemVer = require('../classes/semver')\n\nconst parseOptions = require('../internal/parse-options')\nconst parse = (version, options) => {\n options = parseOptions(options)\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 parse = require('./parse')\nconst valid = (version, options) => {\n const v = parse(version, options)\n return v ? v.version : null\n}\nmodule.exports = valid\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","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 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","// parse out just the options we care about so we always get a consistent\n// obj with keys in a consistent order.\nconst opts = ['includePrerelease', 'loose', 'rtl']\nconst parseOptions = options =>\n !options ? {}\n : typeof options !== 'object' ? { loose: true }\n : opts.filter(k => options[k]).reduce((options, k) => {\n options[k] = true\n return options\n }, {})\nmodule.exports = parseOptions\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","\"use strict\";\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 indexByIdentifier = getIndexByIdentifier(identifier);\n var obj = {\n css: item[1],\n media: item[2],\n sourceMap: item[3],\n supports: item[4],\n layer: item[5]\n };\n\n if (indexByIdentifier !== -1) {\n stylesInDOM[indexByIdentifier].references++;\n stylesInDOM[indexByIdentifier].updater(obj);\n } else {\n var updater = addElementStyle(obj, options);\n options.byIndex = i;\n stylesInDOM.splice(i, 0, {\n identifier: identifier,\n updater: updater,\n references: 1\n });\n }\n\n identifiers.push(identifier);\n }\n\n return identifiers;\n}\n\nfunction addElementStyle(obj, options) {\n var api = options.domAPI(options);\n api.update(obj);\n\n var updater = function updater(newObj) {\n if (newObj) {\n if (newObj.css === obj.css && newObj.media === obj.media && newObj.sourceMap === obj.sourceMap && newObj.supports === obj.supports && newObj.layer === obj.layer) {\n return;\n }\n\n api.update(obj = newObj);\n } else {\n api.remove();\n }\n };\n\n return updater;\n}\n\nmodule.exports = function (list, options) {\n options = options || {};\n list = list || [];\n var lastIdentifiers = modulesToDom(list, options);\n return function update(newList) {\n newList = newList || [];\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\nvar memo = {};\n/* istanbul ignore next */\n\nfunction getTarget(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/* istanbul ignore next */\n\n\nfunction insertBySelector(insert, style) {\n var target = getTarget(insert);\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\nmodule.exports = insertBySelector;","\"use strict\";\n\n/* istanbul ignore next */\nfunction insertStyleElement(options) {\n var element = document.createElement(\"style\");\n options.setAttributes(element, options.attributes);\n options.insert(element, options.options);\n return element;\n}\n\nmodule.exports = insertStyleElement;","\"use strict\";\n\n/* istanbul ignore next */\nfunction setAttributesWithoutAttributes(styleElement) {\n var nonce = typeof __webpack_nonce__ !== \"undefined\" ? __webpack_nonce__ : null;\n\n if (nonce) {\n styleElement.setAttribute(\"nonce\", nonce);\n }\n}\n\nmodule.exports = setAttributesWithoutAttributes;","\"use strict\";\n\n/* istanbul ignore next */\nfunction apply(styleElement, options, obj) {\n var css = \"\";\n\n if (obj.supports) {\n css += \"@supports (\".concat(obj.supports, \") {\");\n }\n\n if (obj.media) {\n css += \"@media \".concat(obj.media, \" {\");\n }\n\n var needLayer = typeof obj.layer !== \"undefined\";\n\n if (needLayer) {\n css += \"@layer\".concat(obj.layer.length > 0 ? \" \".concat(obj.layer) : \"\", \" {\");\n }\n\n css += obj.css;\n\n if (needLayer) {\n css += \"}\";\n }\n\n if (obj.media) {\n css += \"}\";\n }\n\n if (obj.supports) {\n css += \"}\";\n }\n\n var sourceMap = obj.sourceMap;\n\n if (sourceMap && typeof btoa !== \"undefined\") {\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 options.styleTagTransform(css, styleElement, options.options);\n}\n\nfunction removeStyleElement(styleElement) {\n // istanbul ignore if\n if (styleElement.parentNode === null) {\n return false;\n }\n\n styleElement.parentNode.removeChild(styleElement);\n}\n/* istanbul ignore next */\n\n\nfunction domAPI(options) {\n var styleElement = options.insertStyleElement(options);\n return {\n update: function update(obj) {\n apply(styleElement, options, obj);\n },\n remove: function remove() {\n removeStyleElement(styleElement);\n }\n };\n}\n\nmodule.exports = domAPI;","\"use strict\";\n\n/* istanbul ignore next */\nfunction styleTagTransform(css, styleElement) {\n if (styleElement.styleSheet) {\n styleElement.styleSheet.cssText = css;\n } else {\n while (styleElement.firstChild) {\n styleElement.removeChild(styleElement.firstChild);\n }\n\n styleElement.appendChild(document.createTextNode(css));\n }\n}\n\nmodule.exports = styleTagTransform;","export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}","export default function _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}","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\nexport default function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\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","function getInternetExplorerVersion() {\n var ua = window.navigator.userAgent;\n var msie = ua.indexOf('MSIE ');\n\n if (msie > 0) {\n // IE 10 or older => return version number\n return parseInt(ua.substring(msie + 5, ua.indexOf('.', msie)), 10);\n }\n\n var trident = ua.indexOf('Trident/');\n\n if (trident > 0) {\n // IE 11 => return version number\n var rv = ua.indexOf('rv:');\n return parseInt(ua.substring(rv + 3, ua.indexOf('.', rv)), 10);\n }\n\n var edge = ua.indexOf('Edge/');\n\n if (edge > 0) {\n // Edge (IE 12+) => return version number\n return parseInt(ua.substring(edge + 5, ua.indexOf('.', edge)), 10);\n } // other browser\n\n\n return -1;\n}\n\n//\nvar isIE;\n\nfunction initCompat() {\n if (!initCompat.init) {\n initCompat.init = true;\n isIE = getInternetExplorerVersion() !== -1;\n }\n}\n\nvar script = {\n name: 'ResizeObserver',\n props: {\n emitOnMount: {\n type: Boolean,\n default: false\n },\n ignoreWidth: {\n type: Boolean,\n default: false\n },\n ignoreHeight: {\n type: Boolean,\n default: false\n }\n },\n mounted: function mounted() {\n var _this = this;\n\n initCompat();\n this.$nextTick(function () {\n _this._w = _this.$el.offsetWidth;\n _this._h = _this.$el.offsetHeight;\n\n if (_this.emitOnMount) {\n _this.emitSize();\n }\n });\n var object = document.createElement('object');\n this._resizeObject = object;\n object.setAttribute('aria-hidden', 'true');\n object.setAttribute('tabindex', -1);\n object.onload = this.addResizeHandlers;\n object.type = 'text/html';\n\n if (isIE) {\n this.$el.appendChild(object);\n }\n\n object.data = 'about:blank';\n\n if (!isIE) {\n this.$el.appendChild(object);\n }\n },\n beforeDestroy: function beforeDestroy() {\n this.removeResizeHandlers();\n },\n methods: {\n compareAndNotify: function compareAndNotify() {\n if (!this.ignoreWidth && this._w !== this.$el.offsetWidth || !this.ignoreHeight && this._h !== this.$el.offsetHeight) {\n this._w = this.$el.offsetWidth;\n this._h = this.$el.offsetHeight;\n this.emitSize();\n }\n },\n emitSize: function emitSize() {\n this.$emit('notify', {\n width: this._w,\n height: this._h\n });\n },\n addResizeHandlers: function addResizeHandlers() {\n this._resizeObject.contentDocument.defaultView.addEventListener('resize', this.compareAndNotify);\n\n this.compareAndNotify();\n },\n removeResizeHandlers: function removeResizeHandlers() {\n if (this._resizeObject && this._resizeObject.onload) {\n if (!isIE && this._resizeObject.contentDocument) {\n this._resizeObject.contentDocument.defaultView.removeEventListener('resize', this.compareAndNotify);\n }\n\n this.$el.removeChild(this._resizeObject);\n this._resizeObject.onload = null;\n this._resizeObject = null;\n }\n }\n }\n};\n\nfunction normalizeComponent(template, style, script, scopeId, isFunctionalTemplate, moduleIdentifier\n/* server only */\n, shadowMode, createInjector, createInjectorSSR, createInjectorShadow) {\n if (typeof shadowMode !== 'boolean') {\n createInjectorSSR = createInjector;\n createInjector = shadowMode;\n shadowMode = false;\n } // Vue.extend constructor export interop.\n\n\n var options = typeof script === 'function' ? script.options : script; // render functions\n\n if (template && template.render) {\n options.render = template.render;\n options.staticRenderFns = template.staticRenderFns;\n options._compiled = true; // functional template\n\n if (isFunctionalTemplate) {\n options.functional = true;\n }\n } // scopedId\n\n\n if (scopeId) {\n options._scopeId = scopeId;\n }\n\n var hook;\n\n if (moduleIdentifier) {\n // server build\n hook = function hook(context) {\n // 2.3 injection\n context = 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\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__;\n } // inject component styles\n\n\n if (style) {\n style.call(this, createInjectorSSR(context));\n } // register component module identifier for async chunk inference\n\n\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier);\n }\n }; // used by ssr in case component is cached and beforeCreate\n // never gets called\n\n\n options._ssrRegister = hook;\n } else if (style) {\n hook = shadowMode ? function (context) {\n style.call(this, createInjectorShadow(context, this.$root.$options.shadowRoot));\n } : function (context) {\n style.call(this, createInjector(context));\n };\n }\n\n if (hook) {\n if (options.functional) {\n // register for functional component in vue file\n var originalRender = options.render;\n\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 ? [].concat(existing, hook) : [hook];\n }\n }\n\n return script;\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: \"resize-observer\",\n attrs: {\n tabindex: \"-1\"\n }\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__ = \"data-v-8859cc6c\";\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__ = /*#__PURE__*/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\nfunction install(Vue) {\n // eslint-disable-next-line vue/component-definition-name-casing\n Vue.component('resize-observer', __vue_component__);\n Vue.component('ResizeObserver', __vue_component__);\n}\n\nvar plugin = {\n // eslint-disable-next-line no-undef\n version: \"1.0.1\",\n install: install\n};\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 { __vue_component__ as ResizeObserver, install };\n//# sourceMappingURL=vue-resize.esm.js.map\n","import _typeof from '@babel/runtime/helpers/typeof';\nimport _defineProperty from '@babel/runtime/helpers/defineProperty';\nimport _classCallCheck from '@babel/runtime/helpers/classCallCheck';\nimport _createClass from '@babel/runtime/helpers/createClass';\nimport Popper from 'popper.js';\nimport isEqual from 'lodash/isEqual';\nimport { ResizeObserver } from 'vue-resize';\nimport merge from 'lodash/merge';\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\nfunction ownKeys$2(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread$2(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$2(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$2(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\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 = /*#__PURE__*/function () {\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 * @param {string} [options.ariaId] Id used for accessibility\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 = _objectSpread$2(_objectSpread$2({}, 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(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 var _this2 = this;\n\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 = this.options.ariaId || \"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', function (evt) {\n return _this2._scheduleHide(reference, _this2.options.delay, _this2.options, evt);\n });\n tooltipNode.addEventListener('click', function (evt) {\n return _this2._scheduleHide(reference, _this2.options.delay, _this2.options, evt);\n });\n } // return the generated tooltip node\n\n\n return tooltipNode;\n }\n }, {\n key: \"_setContent\",\n value: function _setContent(content, options) {\n var _this3 = this;\n\n this.asyncContent = false;\n\n this._applyContent(content, options).then(function () {\n if (!_this3.popperInstance) return;\n\n _this3.popperInstance.update();\n });\n }\n }, {\n key: \"_applyContent\",\n value: function _applyContent(title, options) {\n var _this4 = this;\n\n return new Promise(function (resolve, reject) {\n var allowHtml = options.html;\n var rootNode = _this4._tooltipNode;\n if (!rootNode) return;\n var titleNode = rootNode.querySelector(_this4.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 _this4.asyncContent = true;\n options.loadingClass && addClasses(rootNode, options.loadingClass);\n\n if (options.loadingContent) {\n _this4._applyContent(options.loadingContent, options);\n }\n\n result.then(function (asyncResult) {\n options.loadingClass && removeClasses(rootNode, options.loadingClass);\n return _this4._applyContent(asyncResult, options);\n }).then(resolve).catch(reject);\n } else {\n _this4._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 _this5 = 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 = _objectSpread$2(_objectSpread$2({}, options.popperOptions), {}, {\n placement: options.placement\n });\n\n popperOptions.modifiers = _objectSpread$2(_objectSpread$2({}, 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 (!_this5._isDisposed && _this5.popperInstance) {\n _this5.popperInstance.update(); // Show the tooltip\n\n\n requestAnimationFrame(function () {\n if (!_this5._isDisposed) {\n _this5._isOpen && tooltipNode.setAttribute('aria-hidden', 'false');\n } else {\n _this5.dispose();\n }\n });\n } else {\n _this5.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 _this6 = 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 if (this.popperInstance) {\n this.popperInstance.disableEventListeners();\n }\n\n clearTimeout(this._disposeTimer);\n var disposeTime = directive.options.disposeTimeout;\n\n if (disposeTime !== null) {\n this._disposeTimer = setTimeout(function () {\n if (_this6._tooltipNode) {\n _this6._tooltipNode.removeEventListener('mouseenter', _this6.hide);\n\n _this6._tooltipNode.removeEventListener('click', _this6.hide); // Don't remove popper instance, just the HTML element\n\n\n _this6._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 _this7 = 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 _this7.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 _this8 = 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 (_this8.options.hideOnTargetClick) oppositeEvents.push('click');\n break;\n\n case 'focus':\n directEvents.push('focus');\n oppositeEvents.push('blur');\n if (_this8.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 (_this8._isOpen === true) {\n return;\n }\n\n evt.usedByTooltip = true;\n\n _this8._scheduleShow(reference, options.delay, options, evt);\n };\n\n _this8._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 _this8._scheduleHide(reference, options.delay, options, evt);\n };\n\n _this8._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 _this9 = 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 _this9._show(reference, options);\n }, computedDelay);\n }\n }, {\n key: \"_scheduleHide\",\n value: function _scheduleHide(reference, delay, options, evt) {\n var _this10 = 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 (_this10._isOpen === false) {\n return;\n }\n\n if (!_this10._tooltipNode.ownerDocument.body.contains(_this10._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 = _this10._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 _this10._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\nfunction ownKeys$1(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$1(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\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: _objectSpread$1({}, 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 = _objectSpread$1({\n title: content\n }, getOptions(_objectSpread$1(_objectSpread$1({}, _typeof(value) === 'object' ? 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 _ref.oldValue;\n var 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(_objectSpread$1(_objectSpread$1({}, 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 ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\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 ariaId: {\n default: null\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.ariaId != null ? this.ariaId : 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;\n var _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;\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 this.isOpen = false;\n\n if (this.popperInstance) {\n requestAnimationFrame(function () {\n if (!_this3.hidden) {\n _this3.isOpen = true;\n }\n });\n }\n }\n\n if (!this.popperInstance) {\n var popperOptions = _objectSpread(_objectSpread({}, this.popperOptions), {}, {\n placement: this.placement\n });\n\n popperOptions.modifiers = _objectSpread(_objectSpread({}, popperOptions.modifiers), {}, {\n arrow: _objectSpread(_objectSpread({}, 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 = _objectSpread(_objectSpread({}, popperOptions.modifiers && popperOptions.modifiers.offset), {}, {\n offset: offset\n });\n }\n\n if (this.boundariesElement) {\n popperOptions.modifiers.preventOverflow = _objectSpread(_objectSpread({}, 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.isOpen ? _vm.popoverId : undefined,\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\", null, {\n isOpen: _vm.isOpen\n })], 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__ = /*#__PURE__*/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\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_248z = \".resize-observer[data-v-8859cc6c]{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-8859cc6c] object{display:block;position:absolute;top:0;left:0;height:100%;width:100%;overflow:hidden;pointer-events:none;z-index:-1}\";\nstyleInject(css_248z);\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(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('VPopover', __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","export default function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}","<template>\n <span :aria-hidden=\"!title\"\n :aria-label=\"title\"\n class=\"material-design-icon chevron-left-icon\"\n role=\"img\"\n v-bind=\"$attrs\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M15.41,16.58L10.83,12L15.41,7.41L14,6L8,12L14,18L15.41,16.58Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"ChevronLeftIcon\",\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ChevronLeft.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ChevronLeft.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ChevronLeft.vue?vue&type=template&id=5de37570&\"\nimport script from \"./ChevronLeft.vue?vue&type=script&lang=js&\"\nexport * from \"./ChevronLeft.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('span',_vm._b({staticClass:\"material-design-icon chevron-left-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M15.41,16.58L10.83,12L15.41,7.41L14,6L8,12L14,18L15.41,16.58Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <span :aria-hidden=\"!title\"\n :aria-label=\"title\"\n class=\"material-design-icon chevron-right-icon\"\n role=\"img\"\n v-bind=\"$attrs\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M8.59,16.58L13.17,12L8.59,7.41L10,6L16,12L10,18L8.59,16.58Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"ChevronRightIcon\",\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./ChevronRight.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./ChevronRight.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ChevronRight.vue?vue&type=template&id=fbe63c02&\"\nimport script from \"./ChevronRight.vue?vue&type=script&lang=js&\"\nexport * from \"./ChevronRight.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('span',_vm._b({staticClass:\"material-design-icon chevron-right-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M8.59,16.58L13.17,12L8.59,7.41L10,6L16,12L10,18L8.59,16.58Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <span :aria-hidden=\"!title\"\n :aria-label=\"title\"\n class=\"material-design-icon close-icon\"\n role=\"img\"\n v-bind=\"$attrs\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M19,6.41L17.59,5L12,10.59L6.41,5L5,6.41L10.59,12L5,17.59L6.41,19L12,13.41L17.59,19L19,17.59L13.41,12L19,6.41Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"CloseIcon\",\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Close.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Close.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Close.vue?vue&type=template&id=6c71068e&\"\nimport script from \"./Close.vue?vue&type=script&lang=js&\"\nexport * from \"./Close.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('span',_vm._b({staticClass:\"material-design-icon close-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M19,6.41L17.59,5L12,10.59L6.41,5L5,6.41L10.59,12L5,17.59L6.41,19L12,13.41L17.59,19L19,17.59L13.41,12L19,6.41Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <span :aria-hidden=\"!title\"\n :aria-label=\"title\"\n class=\"material-design-icon dots-horizontal-icon\"\n role=\"img\"\n v-bind=\"$attrs\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M16,12A2,2 0 0,1 18,10A2,2 0 0,1 20,12A2,2 0 0,1 18,14A2,2 0 0,1 16,12M10,12A2,2 0 0,1 12,10A2,2 0 0,1 14,12A2,2 0 0,1 12,14A2,2 0 0,1 10,12M4,12A2,2 0 0,1 6,10A2,2 0 0,1 8,12A2,2 0 0,1 6,14A2,2 0 0,1 4,12Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"DotsHorizontalIcon\",\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./DotsHorizontal.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./DotsHorizontal.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./DotsHorizontal.vue?vue&type=template&id=ea59d84c&\"\nimport script from \"./DotsHorizontal.vue?vue&type=script&lang=js&\"\nexport * from \"./DotsHorizontal.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('span',_vm._b({staticClass:\"material-design-icon dots-horizontal-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M16,12A2,2 0 0,1 18,10A2,2 0 0,1 20,12A2,2 0 0,1 18,14A2,2 0 0,1 16,12M10,12A2,2 0 0,1 12,10A2,2 0 0,1 14,12A2,2 0 0,1 12,14A2,2 0 0,1 10,12M4,12A2,2 0 0,1 6,10A2,2 0 0,1 8,12A2,2 0 0,1 6,14A2,2 0 0,1 4,12Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <span :aria-hidden=\"!title\"\n :aria-label=\"title\"\n class=\"material-design-icon pause-icon\"\n role=\"img\"\n v-bind=\"$attrs\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M14,19H18V5H14M6,19H10V5H6V19Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"PauseIcon\",\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Pause.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Pause.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Pause.vue?vue&type=template&id=3335ab9e&\"\nimport script from \"./Pause.vue?vue&type=script&lang=js&\"\nexport * from \"./Pause.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('span',_vm._b({staticClass:\"material-design-icon pause-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M14,19H18V5H14M6,19H10V5H6V19Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <span :aria-hidden=\"!title\"\n :aria-label=\"title\"\n class=\"material-design-icon play-icon\"\n role=\"img\"\n v-bind=\"$attrs\"\n @click=\"$emit('click', $event)\">\n <svg :fill=\"fillColor\"\n class=\"material-design-icon__svg\"\n :width=\"size\"\n :height=\"size\"\n viewBox=\"0 0 24 24\">\n <path d=\"M8,5.14V19.14L19,12.14L8,5.14Z\">\n <title v-if=\"title\">{{ title }}</title>\n </path>\n </svg>\n </span>\n</template>\n\n<script>\nexport default {\n name: \"PlayIcon\",\n props: {\n title: {\n type: String,\n },\n fillColor: {\n type: String,\n default: \"currentColor\"\n },\n size: {\n type: Number,\n default: 24\n }\n }\n}\n</script>","import mod from \"-!../vue-loader/lib/index.js??vue-loader-options!./Play.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../vue-loader/lib/index.js??vue-loader-options!./Play.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Play.vue?vue&type=template&id=4d9eb9d0&\"\nimport script from \"./Play.vue?vue&type=script&lang=js&\"\nexport * from \"./Play.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../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","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('span',_vm._b({staticClass:\"material-design-icon play-icon\",attrs:{\"aria-hidden\":!_vm.title,\"aria-label\":_vm.title,\"role\":\"img\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'span',_vm.$attrs,false),[_c('svg',{staticClass:\"material-design-icon__svg\",attrs:{\"fill\":_vm.fillColor,\"width\":_vm.size,\"height\":_vm.size,\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"d\":\"M8,5.14V19.14L19,12.14L8,5.14Z\"}},[(_vm.title)?_c('title',[_vm._v(_vm._s(_vm.title))]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/* 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","/*!\n * Vue.js v2.6.14\n * (c) 2014-2021 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], vm);\n expectedTypes.push(assertedType.expectedType || '');\n valid = assertedType.valid;\n }\n }\n\n var haveExpectedTypes = expectedTypes.some(function (t) { return t; });\n if (!valid && haveExpectedTypes) {\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|BigInt)$/;\n\nfunction assertType (value, type, vm) {\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 try {\n valid = value instanceof type;\n } catch (e) {\n warn('Invalid prop type: \"' + String(type) + '\" is not a constructor', vm);\n valid = false;\n }\n }\n return {\n valid: valid,\n expectedType: expectedType\n }\n}\n\nvar functionTypeCheckRE = /^\\s*function (\\w+)/;\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(functionTypeCheckRE);\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 // check if we need to specify expected value\n if (\n expectedTypes.length === 1 &&\n isExplicable(expectedType) &&\n isExplicable(typeof value) &&\n !isBoolean(expectedType, receivedType)\n ) {\n message += \" with value \" + (styleValue(value, expectedType));\n }\n message += \", got \" + receivedType + \" \";\n // check if we need to specify received value\n if (isExplicable(receivedType)) {\n message += \"with value \" + (styleValue(value, receivedType)) + \".\";\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\nvar EXPLICABLE_TYPES = ['string', 'number', 'boolean'];\nfunction isExplicable (value) {\n return EXPLICABLE_TYPES.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,BigInt,' +\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 isAsyncPlaceholder (node) {\n return node.isComment && node.asyncFactory\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 var vnode = res && res[0];\n return res && (\n !vnode ||\n (res.length === 1 && vnode.isComment && !isAsyncPlaceholder(vnode)) // #9658, #10391\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 fallbackRender,\n props,\n bindObject\n) {\n var scopedSlotFn = this.$scopedSlots[name];\n var nodes;\n if (scopedSlotFn) {\n // scoped slot\n props = props || {};\n if (bindObject) {\n if (process.env.NODE_ENV !== 'production' && !isObject(bindObject)) {\n warn('slot v-bind without argument expects an Object', this);\n }\n props = extend(extend({}, bindObject), props);\n }\n nodes =\n scopedSlotFn(props) ||\n (typeof fallbackRender === 'function' ? fallbackRender() : fallbackRender);\n } else {\n nodes =\n this.$slots[name] ||\n (typeof fallbackRender === 'function' ? fallbackRender() : fallbackRender);\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 return eventKeyCode === undefined\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 // we know it's MountedComponentVNode but flow doesn't\n vnode,\n // activeInstance in lifecycle state\n parent\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) && data.tag !== 'component') {\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 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 (!newScopedSlots && vm.$scopedSlots.$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 var info = \"callback for watcher \\\"\" + (this.expression) + \"\\\"\";\n invokeWithErrorHandling(this.cb, this.vm, [value, oldValue], this.vm, info);\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 } else if (vm.$options.methods && key in vm.$options.methods) {\n warn((\"The computed property \\\"\" + key + \"\\\" is already defined as a method.\"), 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 var info = \"callback for immediate watcher \\\"\" + (watcher.expression) + \"\\\"\";\n pushTarget();\n invokeWithErrorHandling(cb, vm, [watcher.value], vm, info);\n popTarget();\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\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 entry = cache[key];\n if (entry) {\n var name = entry.name;\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 entry = cache[key];\n if (entry && (!current || entry.tag !== current.tag)) {\n entry.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 methods: {\n cacheVNode: function cacheVNode() {\n var ref = this;\n var cache = ref.cache;\n var keys = ref.keys;\n var vnodeToCache = ref.vnodeToCache;\n var keyToCache = ref.keyToCache;\n if (vnodeToCache) {\n var tag = vnodeToCache.tag;\n var componentInstance = vnodeToCache.componentInstance;\n var componentOptions = vnodeToCache.componentOptions;\n cache[keyToCache] = {\n name: getComponentName(componentOptions),\n tag: tag,\n componentInstance: componentInstance,\n };\n keys.push(keyToCache);\n // prune oldest entry\n if (this.max && keys.length > parseInt(this.max)) {\n pruneCacheEntry(cache, keys[0], keys, this._vnode);\n }\n this.vnodeToCache = null;\n }\n }\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.cacheVNode();\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 updated: function updated () {\n this.cacheVNode();\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 // delay setting the cache until update\n this.vnodeToCache = vnode;\n this.keyToCache = key;\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.14';\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,' +\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 a.asyncFactory === b.asyncFactory && (\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 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, vnode.data.pre);\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, isInPre) {\n if (isInPre || 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","'use strict';\n\nvar forEach = require('foreach');\nvar availableTypedArrays = require('available-typed-arrays');\nvar callBound = require('call-bind/callBound');\n\nvar $toString = callBound('Object.prototype.toString');\nvar hasToStringTag = require('has-tostringtag/shams')();\n\nvar g = typeof globalThis === 'undefined' ? global : globalThis;\nvar typedArrays = availableTypedArrays();\n\nvar $slice = callBound('String.prototype.slice');\nvar toStrTags = {};\nvar gOPD = require('es-abstract/helpers/getOwnPropertyDescriptor');\nvar getPrototypeOf = Object.getPrototypeOf; // require('getprototypeof');\nif (hasToStringTag && gOPD && getPrototypeOf) {\n\tforEach(typedArrays, function (typedArray) {\n\t\tif (typeof g[typedArray] === 'function') {\n\t\t\tvar arr = new g[typedArray]();\n\t\t\tif (Symbol.toStringTag in arr) {\n\t\t\t\tvar proto = getPrototypeOf(arr);\n\t\t\t\tvar descriptor = gOPD(proto, Symbol.toStringTag);\n\t\t\t\tif (!descriptor) {\n\t\t\t\t\tvar superProto = getPrototypeOf(proto);\n\t\t\t\t\tdescriptor = gOPD(superProto, Symbol.toStringTag);\n\t\t\t\t}\n\t\t\t\ttoStrTags[typedArray] = descriptor.get;\n\t\t\t}\n\t\t}\n\t});\n}\n\nvar tryTypedArrays = function tryAllTypedArrays(value) {\n\tvar foundName = false;\n\tforEach(toStrTags, function (getter, typedArray) {\n\t\tif (!foundName) {\n\t\t\ttry {\n\t\t\t\tvar name = getter.call(value);\n\t\t\t\tif (name === typedArray) {\n\t\t\t\t\tfoundName = name;\n\t\t\t\t}\n\t\t\t} catch (e) {}\n\t\t}\n\t});\n\treturn foundName;\n};\n\nvar isTypedArray = require('is-typed-array');\n\nmodule.exports = function whichTypedArray(value) {\n\tif (!isTypedArray(value)) { return false; }\n\tif (!hasToStringTag || !(Symbol.toStringTag in value)) { return $slice($toString(value), 8, -1); }\n\treturn tryTypedArrays(value);\n};\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.p = \"/apps/firstrunwizard/js/\";","<!--\n - @copyright Copyright (c) 2019 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 -->\n\n<template>\n\t<div class=\"video-wrapper\">\n\t\t<video ref=\"video\"\n\t\t\tplaysinline\n\t\t\tautoplay\n\t\t\tmuted>\n\t\t\t<source :src=\"videoWebm\" type=\"video/webm\">\n\t\t\t<source :src=\"videoMp4\" type=\"video/mp4\">\n\t\t\t{{ videoFallbackText }}\n\t\t</video>\n\t</div>\n</template>\n\n<script>\nimport { generateFilePath } from '@nextcloud/router'\n\nexport default {\n\tname: 'IntroVideo',\n\tdata() {\n\t\treturn {\n\t\t\tvideoMp4: generateFilePath('firstrunwizard', 'img', 'Nextcloud.mp4'),\n\t\t\tvideoWebm: generateFilePath('firstrunwizard', 'img', 'Nextcloud.webm'),\n\t\t}\n\t},\n\tcomputed: {\n\t\tvideoFallbackText() {\n\t\t\treturn t('firstrunwizard', 'Welcome to {cloudName}!', { cloudName: window.OC.theme.name })\n\t\t},\n\t},\n}\n</script>\n\n<style scoped lang=\"scss\">\n\tvideo {\n\t\twidth: 100%;\n\t\theight: 100%;\n\t\tobject-fit: cover;\n\t}\n\n\t.video-wrapper {\n\t\tbackground-color: var(--color-primary);\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!./IntroVideo.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!./IntroVideo.vue?vue&type=script&lang=js&\"","\n import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../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!./IntroVideo.vue?vue&type=style&index=0&id=70de3a6e&scoped=true&lang=scss&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../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!./IntroVideo.vue?vue&type=style&index=0&id=70de3a6e&scoped=true&lang=scss&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./IntroVideo.vue?vue&type=template&id=70de3a6e&scoped=true&\"\nimport script from \"./IntroVideo.vue?vue&type=script&lang=js&\"\nexport * from \"./IntroVideo.vue?vue&type=script&lang=js&\"\nimport style0 from \"./IntroVideo.vue?vue&type=style&index=0&id=70de3a6e&scoped=true&lang=scss&\"\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 \"70de3a6e\",\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:\"video-wrapper\"},[_c('video',{ref:\"video\",attrs:{\"playsinline\":\"\",\"autoplay\":\"\",\"muted\":\"\"},domProps:{\"muted\":true}},[_c('source',{attrs:{\"src\":_vm.videoWebm,\"type\":\"video/webm\"}}),_vm._v(\" \"),_c('source',{attrs:{\"src\":_vm.videoMp4,\"type\":\"video/mp4\"}}),_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.videoFallbackText)+\"\\n\\t\")])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n\t<Modal\n\t\tv-if=\"showModal && slideList.length > 0\"\n\t\tid=\"firstrunwizard\"\n\t\tsize=\"large\"\n\t\t:has-previous=\"hasPrevious\"\n\t\t:has-next=\"hasNext\"\n\t\t:clear-view-delay=\"-1 /* disable fade-out because of accessibility reasons */\"\n\t\tname=\"modal\"\n\t\t@previous=\"previous\"\n\t\t@next=\"next\"\n\t\t@close=\"close\">\n\t\t<div v-if=\"currentSlide !== 0 || !withIntro\" class=\"modal-header\">\n\t\t\t<div class=\"firstrunwizard-header\">\n\t\t\t\t<div class=\"logo\">\n\t\t\t\t\t<p class=\"hidden-visually\">\n\t\t\t\t\t\t{{ oc_defaults.name }}\n\t\t\t\t\t</p>\n\t\t\t\t</div>\n\t\t\t\t<!-- eslint-disable-next-line vue/no-v-html -->\n\t\t\t\t<h2 v-html=\"oc_defaults.slogan\" />\n\t\t\t\t<p />\n\t\t\t</div>\n\t\t</div>\n\t\t<div class=\"modal-body\">\n\t\t\t<slot v-if=\"slideList.length > 0\" name=\"body\">\n\t\t\t\t<transition :name=\"fadeDirection\" mode=\"out-in\">\n\t\t\t\t\t<!-- eslint-disable-next-line vue/no-v-html -->\n\t\t\t\t\t<div v-if=\"slideList[currentSlide].type === 'inline'\" :key=\"currentSlide\" v-html=\"slideList[currentSlide].content\" />\n\t\t\t\t\t<div :is=\"slideList[currentSlide]\" v-else @finished=\"currentSlide++\" />\n\t\t\t\t</transition>\n\t\t\t</slot>\n\t\t</div>\n\t\t<div class=\"modal-footer\">\n\t\t\t<button v-if=\"isLast\" class=\"primary modal-default-button\" @click=\"close\">\n\t\t\t\t{{ startButtonText }}\n\t\t\t</button>\n\t\t</div>\n\t</Modal>\n</template>\n<style lang=\"scss\">\n\t/* Page styling needs to be unscoped, since we load it separately from the server */\n\t#firstrunwizard {\n\n\t\t.page {\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: row;\n\t\t\tflex-wrap: wrap;\n\t\t\tmargin: auto;\n\n\t\t\th3 {\n\t\t\t\tmargin: 10px 0 10px;\n\t\t\t\tline-height: 120%;\n\t\t\t\tpadding: 0;\n\t\t\t}\n\t\t\t.image {\n\t\t\t\tpadding: 20px;\n\t\t\t\tmax-width: calc(50% - 40px);\n\t\t\t\tflex-grow: 1;\n\t\t\t\timg {\n\t\t\t\t\twidth: 100%;\n\t\t\t\t}\n\t\t\t}\n\t\t\t.content {\n\t\t\t\tpadding: 20px;\n\t\t\t\twidth: 100%;\n\t\t\t}\n\t\t\tp {\n\t\t\t\tmargin-bottom: 20px;\n\t\t\t}\n\t\t\t.description-block:first-child {\n\t\t\t\tmargin-bottom: 20px;\n\t\t\t}\n\t\t\t.description {\n\t\t\t\tmargin: 20px;\n\t\t\t\twidth: auto;\n\t\t\t\tflex-grow: 1;\n\t\t\t\tmax-width: calc(50% - 40px);\n\t\t\t}\n\t\t\tul {\n\t\t\t\tmargin: 10px;\n\t\t\t\tli {\n\t\t\t\t\tmargin-left: 20px;\n\t\t\t\t\tmargin-bottom: 10px;\n\t\t\t\t\tlist-style: circle outside;\n\t\t\t\t}\n\t\t\t}\n\t\t\ta:not(.button) {\n\t\t\t\t&:hover,\n\t\t\t\t&:focus {\n\t\t\t\t\ttext-decoration: underline;\n\t\t\t\t}\n\t\t\t}\n\t\t\t.button {\n\t\t\t\tdisplay: inline-block;\n\n\t\t\t\timg {\n\t\t\t\t\twidth: 16px;\n\t\t\t\t\theight: 16px;\n\t\t\t\t\topacity: .5;\n\t\t\t\t\tmargin-top: -3px;\n\t\t\t\t\tvertical-align: middle;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t.content-clients {\n\t\t\twidth: 100%;\n\t\t\ttext-align: center;\n\t\t\ta {\n\t\t\t\ttext-decoration: none;\n\t\t\t\tdisplay: inline-block;\n\t\t\t}\n\t\t\t.clientslinks .appsmall {\n\t\t\t\theight: 32px;\n\t\t\t\twidth: 32px;\n\t\t\t\tposition: relative;\n\t\t\t\topacity: .5;\n\t\t\t\tvertical-align: middle;\n\t\t\t}\n\t\t\t.clientslinks .button {\n\t\t\t\tdisplay: inline-block;\n\t\t\t\tpadding: 8px;\n\t\t\t\tfont-weight: normal;\n\t\t\t\tfont-size: 14px;\n\t\t\t}\n\t\t}\n\t\t.content-final {\n\t\t\th3 {\n\t\t\t\tbackground-position: 0;\n\t\t\t\tbackground-size: 16px 16px;\n\t\t\t\tpadding-left: 26px;\n\t\t\t\topacity: .7;\n\t\t\t}\n\t\t}\n\t\tp a {\n\t\t\tfont-weight: bold;\n\t\t\tcolor: var(--color-primary);\n\t\t\t&:hover,\n\t\t\t&:focus {\n\t\t\t\tcolor: var(color-text-light);\n\t\t\t}\n\t\t}\n\n\t\t.footnote {\n\t\t\tmargin-top: 40px;\n\t\t}\n\n\t\t// primary on next button\n\t\t.modal-wrapper {\n\t\t\t.icon-next {\n\t\t\t\tbackground-color: var(--color-primary);\n\t\t\t\tcolor: var(--color-primary-text);\n\t\t\t\tbox-shadow: 0 2px 8px rgba(0, 0, 0, .33);\n\t\t\t\tleft: 22px;\n\t\t\t}\n\n\t\t\t.icon-previous {\n\t\t\t\tbackground-color: var(--color-primary-light);\n\t\t\t\tcolor: var(--color-primary-light-text);\n\t\t\t\tbox-shadow: 0 2px 8px rgba(0, 0, 0, .33);\n\t\t\t\tleft: 22px;\n\t\t\t}\n\t\t}\n\t}\n\n\t.clientslinks {\n\t\tmargin-top: 20px;\n\t\tmargin-bottom: 20px;\n\t}\n\n\t#wizard-values {\n\t\tlist-style-type: none;\n\t\tdisplay: flex;\n\t\tflex-wrap: wrap;\n\t\tmargin: 0;\n\t\tli {\n\t\t\tdisplay: block;\n\t\t\tmin-width: 250px;\n\t\t\twidth: 33%;\n\t\t\tflex-grow: 1;\n\t\t\tmargin: 20px 0 20px 0;\n\t\t\tspan {\n\t\t\t\topacity: .7;\n\t\t\t\tdisplay: block;\n\t\t\t\theight: 50px;\n\t\t\t\twidth: 50px;\n\t\t\t\tbackground-size: 40px;\n\t\t\t\tmargin: auto;\n\t\t\t}\n\t\t\th3 {\n\t\t\t\tmargin: 10px 0 10px 0;\n\t\t\t\tfont-size: 130%;\n\t\t\t\ttext-align: center;\n\t\t\t}\n\t\t}\n\t}\n\n\t.details-link {\n\t\ttext-align: center;\n\t}\n\n\t@media only screen and (max-width: 680px) {\n\t\t#firstrunwizard {\n\t\t\t.firstrunwizard-header div.logo {\n\t\t\t\tbackground-size: 120px;\n\t\t\t}\n\t\t\th2 {\n\t\t\t\tfont-size: 20px;\n\t\t\t}\n\t\t\t.page > div {\n\t\t\t\tmax-width: 100% !important;\n\t\t\t\twidth: 100%;\n\t\t\t}\n\t\t\t.page {\n\t\t\t\t#wizard-values li {\n\t\t\t\t\tmin-width: 100%;\n\t\t\t\t\toverflow: hidden;\n\t\t\t\t\tdisplay: flex;\n\t\t\t\t\tspan {\n\t\t\t\t\t\twidth: 44px !important;\n\t\t\t\t\t\tpadding-right: 20px;\n\t\t\t\t\t\tflex-grow: 0;\n\t\t\t\t\t}\n\t\t\t\t\th3 {\n\t\t\t\t\t\tfont-size: 12px;\n\t\t\t\t\t\ttext-align: left;\n\t\t\t\t\t\tflex-grow: 1;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t&.content-final {\n\t\t\t\t\tpadding-bottom: 50px;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\t// fix button position on mobile (so that they don't overlap with text)\n\t\t.modal-mask .modal-wrapper .next, .prev {\n\t\t\ttop: 220px;\n\t\t\talign-items: start !important;\n\t\t}\n\t}\n</style>\n\n<style lang=\"scss\" scoped>\n\t.modal-mask {\n\t\tbackground-color: rgba(0, 0, 0, 0.7);\n\n\t\t&::v-deep .modal-wrapper {\n\t\t\tposition: relative;\n\t\t}\n\n\t\t&::v-deep .modal-container {\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\t\t\tposition: relative;\n\t\t}\n\n\t\t.modal-body {\n\t\t\tflex-grow: 1;\n\t\t\tdisplay: flex;\n\t\t\toverflow-x: hidden;\n\t\t\toverflow-y: auto;\n\n\t\t\t& > div {\n\t\t\t\tdisplay: flex;\n\t\t\t\tflex-grow: 1;\n\t\t\t\talign-items: center;\n\t\t\t\tjustify-content: center;\n\t\t\t}\n\t\t}\n\t}\n\n\t.modal-header {\n\t\tflex-shrink: 0;\n\n\t\t.firstrunwizard-header {\n\t\t\tpadding: 20px 12px;\n\t\t\tbackground: var(--color-primary) var(--image-login-background) no-repeat 50% 50%;\n\t\t\tbackground-size: cover;\n\t\t\tcolor: var(--color-primary-text);\n\t\t\ttext-align: center;\n\t\t\t.logo {\n\t\t\t\tbackground: var(--image-logo) no-repeat center;\n\t\t\t\tbackground-size: contain;\n\t\t\t\twidth: 175px;\n\t\t\t\theight: 100px;\n\t\t\t\tmax-height: 20vh;\n\t\t\t\tmargin: 0 auto;\n\t\t\t}\n\t\t\th2 {\n\t\t\t\tfont-size: 20px;\n\t\t\t\tmargin-top: 7px;\n\t\t\t\tline-height: 150%;\n\t\t\t\tcolor: var(--color-primary-text);\n\t\t\t\tfont-weight: 300;\n\t\t\t\tpadding: 0 0 10px;\n\t\t\t}\n\t\t}\n\t}\n\n\t.modal-default-button {\n\t\talign-self: flex-end;\n\t}\n\n\t.modal-footer {\n\t\toverflow: hidden;\n\t\tposition: absolute;\n\t\tdisplay: flex;\n\t\tbottom: 0;\n\t\tright: 0;\n\t}\n\n\t.modal-footer button {\n\t\tmargin: 10px;\n\t}\n\n\t/* Transitions */\n\t.next-enter-active, .next-leave-active,\n\t.previous-enter-active, .previous-leave-active {\n\t\ttransition: transform .1s, opacity .25s;\n\t}\n\n\t.next-enter {\n\t\ttransform: translateX(50%);\n\t\topacity: 0;\n\t}\n\n\t.next-leave-to {\n\t\ttransform: translateX(-50%);\n\t\topacity: 0;\n\t}\n\n\t.previous-enter {\n\t\ttransform: translateX(-50%);\n\t\topacity: 0;\n\t}\n\n\t.previous-leave-to {\n\t\ttransform: translateX(50%);\n\t\topacity: 0;\n\t}\n</style>\n<script>\nimport Modal from '@nextcloud/vue/dist/Components/Modal'\nimport axios from '@nextcloud/axios'\nimport { generateUrl } from '@nextcloud/router'\nimport IntroVideo from './components/IntroVideo'\n\nexport default {\n\tname: 'App',\n\tcomponents: {\n\t\tModal,\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tshowModal: false,\n\t\t\twithIntro: true,\n\t\t\tslides: [],\n\t\t\tcurrentSlide: 0,\n\t\t\tfadeDirection: 'next',\n\t\t\tslidesLoaded: false,\n\t\t}\n\t},\n\tcomputed: {\n\t\tslideList() {\n\t\t\tif (this.withIntro) {\n\t\t\t\treturn this.slides\n\t\t\t}\n\t\t\tconst slides = this.slides\n\t\t\treturn slides.slice(1)\n\t\t},\n\t\thasNext() {\n\t\t\treturn this.currentSlide < this.slideList.length - 1\n\t\t},\n\t\thasPrevious() {\n\t\t\treturn this.currentSlide > 0\n\t\t},\n\t\tisLast() {\n\t\t\treturn this.currentSlide === this.slideList.length - 1\n\t\t},\n\t\tisFirst() {\n\t\t\treturn this.currentSlide === 0\n\t\t},\n\t\tstartButtonText() {\n\t\t\treturn t('firstrunwizard', 'Start using {cloudName}', { cloudName: window.OC.theme.name })\n\t\t},\n\t},\n\tasync created() {\n\t\tthis.slides = [IntroVideo]\n\t\twindow.addEventListener('resize', this.onResize)\n\t},\n\tbeforeDestroy() {\n\t\twindow.removeEventListener('resize', this.onResize)\n\t},\n\tmethods: {\n\t\tasync loadStaticSlides() {\n\t\t\tif (this.slidesLoaded) {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\ttry {\n\t\t\t\tconst response = await axios.get(generateUrl('/apps/firstrunwizard/wizard'))\n\t\t\t\tthis.slides.push(...response.data.slides)\n\t\t\t\tthis.withIntro = response.data.hasVideo\n\t\t\t\tthis.slidesLoaded = true\n\t\t\t} catch (e) {\n\t\t\t\tconsole.error('Failed to load slides')\n\t\t\t}\n\t\t},\n\t\tasync open(withIntro = true) {\n\t\t\tawait this.loadStaticSlides()\n\t\t\tthis.withIntro = this.withIntro & withIntro\n\t\t\tthis.showModal = true\n\t\t\tthis.currentSlide = 0\n\t\t},\n\t\tclose() {\n\t\t\tthis.showModal = false\n\t\t\taxios.delete(generateUrl('/apps/firstrunwizard/wizard'))\n\t\t},\n\t\tnext() {\n\t\t\tthis.fadeDirection = 'next'\n\t\t\tif (this.isLast) {\n\t\t\t\tthis.close()\n\t\t\t\treturn\n\t\t\t}\n\t\t\tthis.currentSlide += 1\n\t\t},\n\t\tprevious() {\n\t\t\tthis.fadeDirection = 'previous'\n\t\t\tif (this.isFirst) {\n\t\t\t\treturn\n\t\t\t}\n\t\t\tthis.currentSlide -= 1\n\t\t},\n\t},\n}\n</script>\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&\"","\n import API from \"!../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../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!./App.vue?vue&type=style&index=0&lang=scss&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../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!./App.vue?vue&type=style&index=0&lang=scss&\";\n export default content && content.locals ? content.locals : undefined;\n","\n import API from \"!../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../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!./App.vue?vue&type=style&index=1&id=e75b1dfa&lang=scss&scoped=true&\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../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!./App.vue?vue&type=style&index=1&id=e75b1dfa&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=e75b1dfa&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&lang=scss&\"\nimport style1 from \"./App.vue?vue&type=style&index=1&id=e75b1dfa&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 \"e75b1dfa\",\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.showModal && _vm.slideList.length > 0)?_c('Modal',{attrs:{\"id\":\"firstrunwizard\",\"size\":\"large\",\"has-previous\":_vm.hasPrevious,\"has-next\":_vm.hasNext,\"clear-view-delay\":-1 /* disable fade-out because of accessibility reasons */,\"name\":\"modal\"},on:{\"previous\":_vm.previous,\"next\":_vm.next,\"close\":_vm.close}},[(_vm.currentSlide !== 0 || !_vm.withIntro)?_c('div',{staticClass:\"modal-header\"},[_c('div',{staticClass:\"firstrunwizard-header\"},[_c('div',{staticClass:\"logo\"},[_c('p',{staticClass:\"hidden-visually\"},[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.oc_defaults.name)+\"\\n\\t\\t\\t\\t\")])]),_vm._v(\" \"),_c('h2',{domProps:{\"innerHTML\":_vm._s(_vm.oc_defaults.slogan)}}),_vm._v(\" \"),_c('p')])]):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"modal-body\"},[(_vm.slideList.length > 0)?_vm._t(\"body\",function(){return [_c('transition',{attrs:{\"name\":_vm.fadeDirection,\"mode\":\"out-in\"}},[(_vm.slideList[_vm.currentSlide].type === 'inline')?_c('div',{key:_vm.currentSlide,domProps:{\"innerHTML\":_vm._s(_vm.slideList[_vm.currentSlide].content)}}):_c(_vm.slideList[_vm.currentSlide],{tag:\"div\",on:{\"finished\":function($event){_vm.currentSlide++}}})],1)]}):_vm._e()],2),_vm._v(\" \"),_c('div',{staticClass:\"modal-footer\"},[(_vm.isLast)?_c('button',{staticClass:\"primary modal-default-button\",on:{\"click\":_vm.close}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.startButtonText)+\"\\n\\t\\t\")]):_vm._e()])]):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import Vue from 'vue'\nimport { generateFilePath } from '@nextcloud/router'\nimport { translate, translatePlural } from '@nextcloud/l10n'\n\nimport App from './App.vue'\n// eslint-disable-next-line\n__webpack_public_path__ = generateFilePath('firstrunwizard', '', 'js/');\n\nVue.prototype.t = translate\nVue.prototype.n = translatePlural\n// eslint-disable-next-line\nVue.prototype.oc_defaults = window.oc_defaults\n\nconst el = document.createElement('div')\nel.id = 'firstrunwizard'\ndocument.querySelector('body').appendChild(el)\n\nconst View = Vue.extend(App)\nconst vm = new View().$mount(el)\n\nwindow.OCA.FirstRunWizard = {\n\topen: vm.open,\n}\n"],"sourceRoot":""} \ No newline at end of file