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
diff options
context:
space:
mode:
authorJulius Härtl <jus@bitgrid.net>2022-07-20 08:57:01 +0300
committerGitHub <noreply@github.com>2022-07-20 08:57:01 +0300
commit904745d13e8b993fd5b52ae696f1e016fc8de659 (patch)
tree9ff9e3a2e588dbf66bfa9c189a47a1d40c156da8
parent7b192780cc08c2d3b8a5592f50bd01dfd4dd55db (diff)
parent49d408b82769ff57f09227ba297f5155fe152d32 (diff)
Merge pull request #712 from nextcloud/dependabot/npm_and_yarn/nextcloud/l10n-1.6.0
Bump @nextcloud/l10n from 1.4.1 to 1.6.0
-rw-r--r--js/firstrunwizard-main.js4
-rw-r--r--js/firstrunwizard-main.js.map2
-rw-r--r--package-lock.json14
-rw-r--r--package.json2
4 files changed, 11 insertions, 11 deletions
diff --git a/js/firstrunwizard-main.js b/js/firstrunwizard-main.js
index 9c74b3f1..889d5352 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";n(9070),e.Z=void 0,n(9601);var r,o,i=(r=n(9669))&&r.__esModule?r:{default:r},a=n(2200);var 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)((function(t){return 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)=>{self,t.exports=function(){var t={5938:function(t,e,n){"use strict";var r=n(9156);e.Z={name:"ActionButton",mixins:[r.Z],props:{disabled:{type:Boolean,default:!1}},computed:{isFocusable:function(){return!this.disabled}}}},858:function(t,e,n){"use strict";var r=n(3251),o=n.n(r),i=n(8104),a=n(9040),s=n(1205),l=n(932),u=n(8099);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=".focusable";e.Z={name:"Actions",directives:{tooltip:a.default},components:{DotsHorizontal:o(),Popover:u.default,VNodes:i.Z},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:(0,l.t)("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-"+(0,s.Z)(),children:this.$children,firstAction:{}}},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]},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)},children:function(){this.firstAction=this.children[0]?this.children[0]:{}}},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(h);if(n){var r=(o=this.$refs.menu.querySelectorAll(h),function(t){if(Array.isArray(t))return c(t)}(o)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(o)||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}}(o)||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.")}()).indexOf(n);r>-1&&(this.focusIndex=r,this.focusAction())}}}var o},removeCurrentActive:function(){var t=this.$refs.menu.querySelector("li.active");t&&t.classList.remove("active")},focusAction:function(){var t=this.$refs.menu.querySelectorAll(h)[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(h).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(h).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)}}}},5041:function(t,e){"use strict";e.Z={name:"VNodes",functional:!0,render:function(t,e){return e.props.vnodes}}},4828:function(t,e,n){"use strict";var r=n(491);e.default=r.Z},5860:function(t,e,n){"use strict";var r=n(3083);e.default=r.Z},8099:function(t,e,n){"use strict";var r=n(7020);e.default=r.Z},9040:function(t,e,n){"use strict";n.d(e,{default:function(){return y}});var r=n(2965),o=n(3379),i=n.n(o),a=n(7795),s=n.n(a),l=n(569),u=n.n(l),c=n(3565),p=n.n(c),f=n(9216),d=n.n(f),h=n(4589),m=n.n(h),v=n(6051),g={};g.styleTagTransform=m(),g.setAttributes=p(),g.insert=u().bind(null,"head"),g.domAPI=s(),g.insertStyleElement=d(),i()(v.Z,g),v.Z&&v.Z.locals&&v.Z.locals,r.VTooltip.options.defaultTemplate='<div class="vue-tooltip" role="tooltip" data-v-'.concat("17fd6e1",'><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>'),r.VTooltip.options.defaultHtml=!1,r.VTooltip.options.defaultDelay={show:500,hide:200};var y=r.VTooltip},932:function(t,e,n){"use strict";n.d(e,{n:function(){return i},t:function(){return a}});var r=(0,n(6036).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","Avatar of {displayName}":"Avatar de {displayName}","Avatar of {displayName}, {status}":"Avatar de {displayName}, {status}","Cancel changes":"Cancel·la els canvis",Choose:"Tria",Close:"Tanca","Close navigation":"Tancar la navegació","Confirm changes":"Confirmeu els canvis",Custom:"Personalitzat","Edit item":"Edita l'element","External documentation for {title}":"Documentació externa per a {title}",Flags:"Marques","Food & Drink":"Menjar i begudes","Frequently used":"Utilitzats recentment",Global:"Global","Go back to the list":"Torna a la llista","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","Open navigation":"Obrir la navegació","Pause slideshow":"Atura la presentació","People & Body":"Persones i cos","Pick an emoji":"Trieu un emoji","Please select a time zone:":"Seleccioneu una zona horària:",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","Type to search time zone":"Escriviu per cercar la zona horària","Unable to search the group":"No es pot cercar el grup","Undo changes":"Desfer canvis","Write message, @ to mention someone, : for emoji autocompletion …":"Escriu un missatge, @ per esmentar algú, : per a la compleció automàtica d'emojis..."}},{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","Avatar of {displayName}, {status}":"{displayName} -(e)n irudia, {status}","Cancel changes":"Ezeztatu aldaketak",Choose:"Aukeratu",Close:"Itxi","Close navigation":"Itxi nabigazioa","Confirm changes":"Baieztatu aldaketak",Custom:"Pertsonalizatua","Edit item":"Editatu elementua","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","Undo changes":"Aldaketak desegin","Write message, @ to mention someone, : for emoji autocompletion …":"Idatzi mezua, @ norbait aipatzeko, : emojia automatikoki idazteko"}},{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, : for emoji autocompletion …":"Ecrire un message, @ pour mentionner quelqu'un, : pour l'auto-complétion des émoticônes"}},{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}","Avatar of {displayName}, {status}":"Avatar di {displayName}, {status}","Cancel changes":"Annulla modifiche",Choose:"Scegli",Close:"Chiudi","Close navigation":"Chiudi la navigazione","Confirm changes":"Conferma modifiche",Custom:"Personalizzato","Edit item":"Modifica l'elemento","External documentation for {title}":"Documentazione esterna per {title}",Flags:"Bandiere","Food & Drink":"Cibo e bevande","Frequently used":"Usati di frequente",Global:"Globale","Go back to the list":"Torna all'elenco","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","Open navigation":"Apri la navigazione","Pause slideshow":"Presentazione in pausa","People & Body":"Persone e corpo","Pick an emoji":"Scegli un emoji","Please select a time zone:":"Si prega di selezionare un fuso orario:",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","Type to search time zone":"Digita per cercare un fuso orario","Unable to search the group":"Impossibile cercare il gruppo","Undo changes":"Cancella i cambiamenti","Write message, @ to mention someone, : for emoji autocompletion …":"Scrivi un messaggio, @ per menzionare qualcuno, : per il completamento automatico delle emoji ..."}},{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}","Avatar of {displayName}, {status}":"Avatar {displayName}, {status}","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, : for emoji autocompletion …":"Napíšte správu, @ ak chcete niekoho spomenúť, : pre automatické dopĺňanie emotikonov…"}},{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]]};r.addTranslation(t.locale,{translations:{"":e}})}));var o=r.build(),i=o.ngettext.bind(o),a=o.gettext.bind(o)},723:function(t,e,n){"use strict";var r=n(2734),o=n.n(r);e.Z={before:function(){this.$slots.default&&""!==this.text.trim()||(o().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():""}}}},9156:function(t,e,n){"use strict";var r=n(723),o=n(6021);e.Z={mixins:[r.Z],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=(0,o.Z)(this,"Actions");e&&e.closeMenu&&e.closeMenu()}}}}},3648:function(t,e,n){"use strict";var r=n(932);e.Z={methods:{n:r.n,t:r.t}}},1205:function(t,e){"use strict";e.Z=function(t){return Math.random().toString(36).replace(/[^a-z]+/g,"").slice(0,t||5)}},6021:function(t,e){"use strict";e.Z=function(t,e){for(var n=t.$parent;n;){if(n.$options.name===e)return n;n=n.$parent}}},7645:function(t,e){"use strict";e.Z=function(t){t.mounted?Array.isArray(t.mounted)||(t.mounted=[t.mounted]):t.mounted=[],t.mounted.push((function(){this.$el.setAttribute("data-v-".concat("17fd6e1"),"")}))}},6051:function(t,e,n){"use strict";var r=n(4015),o=n.n(r),i=n(3645),a=n.n(i)()(o());a.push([t.id,".material-design-icon{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.vue-tooltip[data-v-17fd6e1]{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-17fd6e1][x-placement^='top'] .tooltip-arrow{bottom:0;border-bottom-width:0;border-top-color:var(--color-main-background)}.vue-tooltip[data-v-17fd6e1][x-placement^='bottom'] .tooltip-arrow{top:0;border-top-width:0;border-bottom-color:var(--color-main-background)}.vue-tooltip[data-v-17fd6e1][x-placement^='right'] .tooltip-arrow{right:100%;border-left-width:0;border-right-color:var(--color-main-background)}.vue-tooltip[data-v-17fd6e1][x-placement^='left'] .tooltip-arrow{left:100%;border-right-width:0;border-left-color:var(--color-main-background)}.vue-tooltip[data-v-17fd6e1][aria-hidden='true']{visibility:hidden;transition:opacity .15s, visibility .15s;opacity:0}.vue-tooltip[data-v-17fd6e1][aria-hidden='false']{visibility:visible;transition:opacity .15s;opacity:1}.vue-tooltip[data-v-17fd6e1] .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-17fd6e1] .tooltip-arrow{position:absolute;z-index:1;width:0;height:0;margin:0;border-style:solid;border-color:transparent;border-width:10px}\n","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/directives/Tooltip/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,gEAoBE,QAAS,CACT,qBAAsB,CACtB,6CAA8C,CAtBhD,mEA2BE,KAAM,CACN,kBAAmB,CACnB,gDAAiD,CA7BnD,kEAkCE,UAAW,CACX,mBAAoB,CACpB,+CAAgD,CApClD,iEAyCE,SAAU,CACV,oBAAqB,CACrB,8CAA+C,CA3CjD,iDAgDE,iBAAkB,CAClB,wCAAyC,CACzC,SAAU,CAlDZ,kDAqDE,kBAAmB,CACnB,uBAAwB,CACxB,SAAU,CAvDZ,4CA4DE,eAAgB,CAChB,eAAgB,CAChB,iBAAkB,CAClB,4BAA6B,CAC7B,kCAAmC,CACnC,6CAA8C,CAjEhD,4CAsEE,iBAAkB,CAClB,SAAU,CACV,OAAQ,CACR,QAAS,CACT,QAAS,CACT,kBAAmB,CACnB,wBAAyB,CACzB,iBA/EgB",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:\"17fd6e1\"; @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'] .tooltip-arrow {\n\t\tbottom: 0;\n\t\tborder-bottom-width: 0;\n\t\tborder-top-color: var(--color-main-background);\n\t}\n\n\t// BOTTOM\n\t&[x-placement^='bottom'] .tooltip-arrow {\n\t\ttop: 0;\n\t\tborder-top-width: 0;\n\t\tborder-bottom-color: var(--color-main-background);\n\t}\n\n\t// RIGHT\n\t&[x-placement^='right'] .tooltip-arrow {\n\t\tright: 100%;\n\t\tborder-left-width: 0;\n\t\tborder-right-color: var(--color-main-background);\n\t}\n\n\t// LEFT\n\t&[x-placement^='left'] .tooltip-arrow {\n\t\tleft: 100%;\n\t\tborder-right-width: 0;\n\t\tborder-left-color: var(--color-main-background);\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: transparent;\n\t\tborder-width: $arrow-width;\n\t}\n}\n"],sourceRoot:""}]),e.Z=a},7087:function(t,e,n){"use strict";var r=n(4015),o=n.n(r),i=n(3645),a=n.n(i)()(o());a.push([t.id,".material-design-icon[data-v-ef50c406]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}li.active[data-v-ef50c406]{background-color:var(--color-background-hover)}.action--disabled[data-v-ef50c406]{pointer-events:none;opacity:.5}.action--disabled[data-v-ef50c406]:hover,.action--disabled[data-v-ef50c406]:focus{cursor:default;opacity:.5}.action--disabled *[data-v-ef50c406]{opacity:1 !important}.action-button[data-v-ef50c406]{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-ef50c406]:hover,.action-button[data-v-ef50c406]:focus{opacity:1}.action-button>span[data-v-ef50c406]{cursor:pointer;white-space:nowrap}.action-button__icon[data-v-ef50c406]{width:44px;height:44px;opacity:1;background-position:14px center;background-size:16px;background-repeat:no-repeat}.action-button[data-v-ef50c406] .material-design-icon{width:44px;height:44px;opacity:1}.action-button[data-v-ef50c406] .material-design-icon .material-design-icon__svg{vertical-align:middle}.action-button p[data-v-ef50c406]{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-ef50c406]{cursor:pointer;white-space:pre-wrap}.action-button__title[data-v-ef50c406]{font-weight:bold;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;max-width:100%;display:inline-block}\n","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/assets/action.scss","webpack://./src/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,gBAAgD,CAEhD,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.Z=a},9224:function(t,e,n){"use strict";var r=n(4015),o=n.n(r),i=n(3645),a=n.n(i)()(o());a.push([t.id,".material-design-icon[data-v-2a98ba3b]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.action-item[data-v-2a98ba3b]{position:relative;display:inline-block}.action-item--single[data-v-2a98ba3b]:hover,.action-item--single[data-v-2a98ba3b]:focus,.action-item--single[data-v-2a98ba3b]:active,.action-item__menutoggle[data-v-2a98ba3b]:hover,.action-item__menutoggle[data-v-2a98ba3b]:focus,.action-item__menutoggle[data-v-2a98ba3b]:active{opacity:1;background-color:rgba(127,127,127,0.25) !important}.action-item__menutoggle[data-v-2a98ba3b]:disabled,.action-item--single[data-v-2a98ba3b]:disabled{opacity:.3 !important}.action-item.action-item--open .action-item__menutoggle[data-v-2a98ba3b]{opacity:1;background-color:rgba(127,127,127,0.25)}.action-item--single[data-v-2a98ba3b],.action-item__menutoggle[data-v-2a98ba3b]{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-2a98ba3b],.action-item__menutoggle--with-title[data-v-2a98ba3b]{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-2a98ba3b] span,.action-item__menutoggle--with-title[data-v-2a98ba3b] span{width:24px;height:24px;line-height:16px;position:absolute;top:0;left:0}.action-item[data-v-2a98ba3b] .material-design-icon{width:44px;height:44px;opacity:1}.action-item[data-v-2a98ba3b] .material-design-icon .material-design-icon__svg{vertical-align:middle}.action-item__menutoggle[data-v-2a98ba3b]{display:flex;align-items:center;justify-content:center;opacity:.7;font-weight:bold;line-height:16px}.action-item__menutoggle--primary[data-v-2a98ba3b]{opacity:1;color:var(--color-primary-text);border:none;background-color:var(--color-primary-element)}.action-item--open .action-item__menutoggle--primary[data-v-2a98ba3b],.action-item__menutoggle--primary[data-v-2a98ba3b]:hover,.action-item__menutoggle--primary[data-v-2a98ba3b]:focus,.action-item__menutoggle--primary[data-v-2a98ba3b]:active{color:var(--color-primary-text) !important;background-color:var(--color-primary-element-light) !important}.action-item--single[data-v-2a98ba3b]{opacity:.7}.action-item--single[data-v-2a98ba3b]:hover,.action-item--single[data-v-2a98ba3b]:focus,.action-item--single[data-v-2a98ba3b]:active{opacity:1}.action-item--single>[hidden][data-v-2a98ba3b]{display:none}.ie .action-item__menu[data-v-2a98ba3b],.ie .action-item__menu .action-item__menu_arrow[data-v-2a98ba3b],.edge .action-item__menu[data-v-2a98ba3b],.edge .action-item__menu .action-item__menu_arrow[data-v-2a98ba3b]{border:1px solid var(--color-border)}\n","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/Actions/Actions.vue","webpack://./src/assets/variables.scss"],names:[],mappings:"AAGA,uCACC,YAAa,CACb,iBAAkB,CAClB,mBAAoB,CACpB,kBAAmB,CACnB,sBAAuB,CCopBxB,8BACC,iBAAkB,CAClB,oBAAqB,CAIrB,sRAMC,SC5nBc,CD8nBd,kDAA2C,CAC3C,kGAKA,qBAAsB,CApBxB,yEAwBE,SCxoBc,CDyoBd,uCCroBgD,CDsoBhD,gFAKA,qBAAsB,CACtB,UAAW,CACX,cCpqBmB,CDqqBnB,WCrqBmB,CDsqBnB,QAAS,CACT,SAAU,CACV,cAAe,CACf,WAAY,CACZ,kBAAkC,CAClC,4BAA6B,CAE7B,wGACC,iBAAkB,CAClB,cCvqB6C,CDwqB7C,iBChrBkB,CDirBlB,kBAAmB,CACnB,SC/pBa,CDgqBb,yCAA0C,CAE1C,6CAA8C,CAC9C,+BAAwC,CACxC,iBAAkB,CAVlB,oHAeC,UAAW,CACX,WAAY,CACZ,gBC1rBY,CD2rBZ,iBAAkB,CAClB,KAAM,CACN,MAAO,CA9DX,oDAoEE,UCvsBmB,CDwsBnB,WCxsBmB,CDysBnB,SCtrBc,CDgnBhB,+EAyEG,qBAAsB,CACtB,0CAMD,YAAa,CACb,kBAAmB,CACnB,sBAAuB,CACvB,UCpsBiB,CDqsBjB,gBAAiB,CACjB,gBCptBc,CDstBd,mDACC,SCxsBa,CDysBb,+BAAgC,CAChC,WAAY,CACZ,6CAA8C,CAC9C,kPAIC,0CAA2C,CAC3C,8DAA+D,CAC/D,sCAKF,UCxtBiB,CDutBjB,qIAKC,SC3tBa,CDstBd,+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:\"17fd6e1\"; @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\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::v-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.Z=a},1309:function(t,e,n){"use strict";var r=n(4015),o=n.n(r),i=n(3645),a=n.n(i)()(o());a.push([t.id,".material-design-icon[data-v-2da14a6a]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.modal-mask[data-v-2da14a6a]{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-2da14a6a]{background-color:rgba(0,0,0,0.92)}.modal-header[data-v-2da14a6a]{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-2da14a6a],.modal-header.invisible[style*='display: none'][data-v-2da14a6a]{visibility:hidden}.modal-header .modal-title[data-v-2da14a6a]{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-2da14a6a]{padding-left:132px;text-align:center}}.modal-header .icons-menu[data-v-2da14a6a]{position:absolute;right:0;display:flex;align-items:center;justify-content:flex-end}.modal-header .icons-menu .header-close[data-v-2da14a6a]{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-2da14a6a]{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-2da14a6a],.modal-header .icons-menu .play-pause-icons:hover .play-pause-icons__pause[data-v-2da14a6a],.modal-header .icons-menu .play-pause-icons:focus .play-pause-icons__play[data-v-2da14a6a],.modal-header .icons-menu .play-pause-icons:focus .play-pause-icons__pause[data-v-2da14a6a]{opacity:1;border-radius:22px;background-color:rgba(127,127,127,0.25)}.modal-header .icons-menu .play-pause-icons__play[data-v-2da14a6a],.modal-header .icons-menu .play-pause-icons__pause[data-v-2da14a6a]{box-sizing:border-box;width:44px;height:44px;margin:3px;cursor:pointer;opacity:.7}.modal-header .icons-menu .header-actions[data-v-2da14a6a]{margin:3px;color:white}.modal-header .icons-menu .action-item--single[data-v-2da14a6a]{box-sizing:border-box;width:44px;height:44px;cursor:pointer;background-position:center;background-size:22px}.modal-header .icons-menu[data-v-2da14a6a] button{color:#fff}.modal-header .icons-menu[data-v-2da14a6a] .action-item__menutoggle{padding:0}.modal-header .icons-menu[data-v-2da14a6a] .action-item__menutoggle span,.modal-header .icons-menu[data-v-2da14a6a] .action-item__menutoggle svg{width:var(--icon-size);height:var(--icon-size)}.modal-wrapper[data-v-2da14a6a]{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:100%;height:100%}.modal-wrapper .prev[data-v-2da14a6a],.modal-wrapper .next[data-v-2da14a6a]{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-2da14a6a],.modal-wrapper .prev.invisible[style*='display: none'][data-v-2da14a6a],.modal-wrapper .next.invisible[style*='display:none'][data-v-2da14a6a],.modal-wrapper .next.invisible[style*='display: none'][data-v-2da14a6a]{visibility:hidden}.modal-wrapper .prev[data-v-2da14a6a]{left:0}.modal-wrapper .next[data-v-2da14a6a]{right:0}.modal-wrapper .icon-next[data-v-2da14a6a],.modal-wrapper .icon-previous[data-v-2da14a6a]{box-sizing:border-box;width:44px;height:44px;color:white;background-image:none;display:flex}.modal-wrapper .modal-container[data-v-2da14a6a]{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-2da14a6a]{width:390px;max-width:95%;max-height:90%}.modal-wrapper--normal .modal-container[data-v-2da14a6a]{max-width:90%;width:600px;max-height:90%}.modal-wrapper--large .modal-container[data-v-2da14a6a]{max-width:90%;width:900px;max-height:90%}.modal-wrapper--full .modal-container[data-v-2da14a6a]{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-2da14a6a]{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-2da14a6a],.fade-leave-active[data-v-2da14a6a]{transition:opacity 250ms}.fade-enter[data-v-2da14a6a],.fade-leave-to[data-v-2da14a6a]{opacity:0}.fade-visibility-enter[data-v-2da14a6a],.fade-visibility-leave-to[data-v-2da14a6a]{visibility:hidden;opacity:0}.modal-in-enter-active[data-v-2da14a6a],.modal-in-leave-active[data-v-2da14a6a],.modal-out-enter-active[data-v-2da14a6a],.modal-out-leave-active[data-v-2da14a6a]{transition:opacity 250ms}.modal-in-enter[data-v-2da14a6a],.modal-in-leave-to[data-v-2da14a6a],.modal-out-enter[data-v-2da14a6a],.modal-out-leave-to[data-v-2da14a6a]{opacity:0}.modal-in-enter .modal-container[data-v-2da14a6a],.modal-in-leave-to .modal-container[data-v-2da14a6a]{transform:scale(0.9)}.modal-out-enter .modal-container[data-v-2da14a6a],.modal-out-leave-to .modal-container[data-v-2da14a6a]{transform:scale(1.1)}.modal-mask .play-pause-icons .progress-ring[data-v-2da14a6a]{position:absolute;top:0;left:0;transform:rotate(-90deg)}.modal-mask .play-pause-icons .progress-ring .progress-ring__circle[data-v-2da14a6a]{transition:100ms stroke-dashoffset;transform-origin:50% 50%;animation:progressring-data-v-2da14a6a 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-2da14a6a]{animation:breath-data-v-2da14a6a 2s cubic-bezier(0.4, 0, 0.2, 1) infinite}.modal-mask .play-pause-icons--paused .progress-ring__circle[data-v-2da14a6a]{animation-play-state:paused !important}@keyframes progressring-data-v-2da14a6a{from{stroke-dashoffset:94.24778}to{stroke-dashoffset:0}}@keyframes breath-data-v-2da14a6a{0%{opacity:1}50%{opacity:0}100%{opacity:1}}\n","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/Modal/Modal.vue","webpack://./src/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:\"17fd6e1\"; @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: 390px;\n\t\t\tmax-width: 95%;\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}\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}\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.Z=a},5878:function(t,e,n){"use strict";var r=n(4015),o=n.n(r),i=n(3645),a=n.n(i)()(o());a.push([t.id,".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:transparent;border-width:10px}.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-bottom-width:0;border-top-color:var(--color-main-background)}.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-top-width:0;border-bottom-color:var(--color-main-background)}.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-left-width:0;border-right-color:var(--color-main-background)}.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-right-width:0;border-left-color:var(--color-main-background)}.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://./src/assets/material-icons.css","webpack://./src/components/Popover/Popover.vue"],names:[],mappings:"AAGA,sBACC,YAAa,CACb,iBAAkB,CAClB,mBAAoB,CACpB,kBAAmB,CACnB,sBAAuB,CCyGxB,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,wBAAyB,CACzB,iBAvBgB,CAElB,6BAyBE,kBA3BgB,CAElB,6CA4BG,YA9Be,CA+Bf,6BAA8B,CAC9B,YAAa,CACb,eAAgB,CAChB,qBAAsB,CACtB,6CAA8C,CAjCjD,gCAsCE,eAxCgB,CAElB,gDAyCG,SA3Ce,CA4Cf,6BAA8B,CAC9B,YAAa,CACb,eAAgB,CAChB,kBAAmB,CACnB,gDAAiD,CA9CpD,+BAmDE,gBArDgB,CAElB,+CAsDG,4BAA6B,CAC7B,UAzDe,CA0Df,cAAe,CACf,aAAc,CACd,mBAAoB,CACpB,+CAAgD,CA3DnD,8BAgEE,iBAlEgB,CAElB,8CAmEG,4BAA6B,CAC7B,WAtEe,CAuEf,cAAe,CACf,aAAc,CACd,oBAAqB,CACrB,8CAA+C,CAxElD,6BA6EE,iBAAkB,CAClB,2EAA6E,CAC7E,SAAU,CA/EZ,8BAmFE,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:\"17fd6e1\"; @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$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: transparent;\n\t\tborder-width: $arrow-width;\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-bottom-width: 0;\n\t\t\tborder-top-color: var(--color-main-background);\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-top-width: 0;\n\t\t\tborder-bottom-color: var(--color-main-background);\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-left-width: 0;\n\t\t\tborder-right-color: var(--color-main-background);\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-right-width: 0;\n\t\t\tborder-left-color: var(--color-main-background);\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.Z=a},3645:function(t){"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}},4015:function(t){"use strict";function e(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 n,r,o=(r=4,function(t){if(Array.isArray(t))return t}(n=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}}(n,r)||function(t,n){if(t){if("string"==typeof t)return e(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?e(t,n):void 0}}(n,r)||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.")}()),i=o[1],a=o[3];if(!a)return i;if("function"==typeof btoa){var s=btoa(unescape(encodeURIComponent(JSON.stringify(a)))),l="sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(s),u="/*# ".concat(l," */"),c=a.sources.map((function(t){return"/*# sourceURL=".concat(a.sourceRoot||"").concat(t," */")}));return[i].concat(c).concat([u]).join("\n")}return[i].join("\n")}},1756:function(t,e,n){"use strict";var r=n(3379),o=n.n(r),i=n(7795),a=n.n(i),s=n(569),l=n.n(s),u=n(3565),c=n.n(u),p=n(9216),f=n.n(p),d=n(4589),h=n.n(d),m=n(7087),v={};v.styleTagTransform=h(),v.setAttributes=c(),v.insert=l().bind(null,"head"),v.domAPI=a(),v.insertStyleElement=f(),o()(m.Z,v),m.Z&&m.Z.locals&&m.Z.locals},2694:function(t,e,n){"use strict";var r=n(3379),o=n.n(r),i=n(7795),a=n.n(i),s=n(569),l=n.n(s),u=n(3565),c=n.n(u),p=n(9216),f=n.n(p),d=n(4589),h=n.n(d),m=n(9224),v={};v.styleTagTransform=h(),v.setAttributes=c(),v.insert=l().bind(null,"head"),v.domAPI=a(),v.insertStyleElement=f(),o()(m.Z,v),m.Z&&m.Z.locals&&m.Z.locals},3379:function(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);return n.update(t),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:function(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:function(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:function(t,e,n){"use strict";t.exports=function(t){var e=n.nc;e&&t.setAttribute("nonce",e)}},7795:function(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:function(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))}}},491:function(t,e,n){"use strict";var r=n(8940),o=n(4403),i=(n(7911),n(1900)),a=n(3184),s=n.n(a),l=(0,i.Z)(o.Z,r.s,r.x,!1,null,"ef50c406",null);"function"==typeof s()&&s()(l),e.Z=l.exports},3083:function(t,e,n){"use strict";var r=n(9125),o=n(613),i=(n(3822),n(1900)),a=n(2192),s=n.n(a),l=(0,i.Z)(o.Z,r.s,r.x,!1,null,"2a98ba3b",null);"function"==typeof s()&&s()(l),e.Z=l.exports},7020:function(t,e,n){"use strict";n.d(e,{Z:function(){return w}});var r={name:"Popover",components:{VPopover:n(2965).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(3379),i=n.n(o),a=n(7795),s=n.n(a),l=n(569),u=n.n(l),c=n(3565),p=n.n(c),f=n(9216),d=n.n(f),h=n(4589),m=n.n(h),v=n(5878),g={};g.styleTagTransform=m(),g.setAttributes=p(),g.insert=u().bind(null,"head"),g.domAPI=s(),g.insertStyleElement=d(),i()(v.Z,g),v.Z&&v.Z.locals&&v.Z.locals;var y=n(1900),A=n(8733),b=n.n(A),C=(0,y.Z)(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 b()&&b()(C);var w=C.exports},8104:function(t,e,n){"use strict";var r=n(5494),o=(0,n(1900).Z)(r.Z,void 0,void 0,!1,null,null,null);e.Z=o.exports},4403:function(t,e,n){"use strict";var r=n(5938);e.Z=r.Z},613:function(t,e,n){"use strict";var r=n(858);e.Z=r.Z},5494:function(t,e,n){"use strict";var r=n(5041);e.Z=r.Z},7911:function(t,e,n){"use strict";n(1756)},3822:function(t,e,n){"use strict";n(2694)},3184:function(){},2192:function(){},8575:function(){},8733:function(){},8940:function(t,e,n){"use strict";n.d(e,{s:function(){return r},x:function(){return o}});var 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",(function(){return[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)])},o=[]},9125:function(t,e,n){"use strict";n.d(e,{s:function(){return r},x:function(){return o}});var r=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 vue-button 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.apply(null,arguments)},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.apply(null,arguments)},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.apply(null,arguments)},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.apply(null,arguments):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.apply(null,arguments)},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.apply(null,arguments)},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.apply(null,arguments))}],mousemove:e.onMouseFocusAction}},[r("ul",{attrs:{id:e.randomId,tabindex:"-1"}},[e.opened?[e._t("default")]:e._e()],2)])])],1)},o=[]},1900: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,{Z:function(){return r}})},6036:function(t){"use strict";t.exports=n(3955)},2640:function(t){"use strict";t.exports=n(840)},2965:function(t){"use strict";t.exports=n(6505)},2734:function(t){"use strict";t.exports=n(144)},9605:function(t){"use strict";t.exports=n(1567)},5978:function(t){"use strict";t.exports=n(8039)},3251:function(t){"use strict";t.exports=n(9578)}},e={};function r(n){var o=e[n];if(void 0!==o)return o.exports;var i=e[n]={id:n,exports:{}};return t[n](i,i.exports,r),i.exports}r.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(e,{a:e}),e},r.d=function(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.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},r.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})};var o={};return function(){"use strict";r.r(o),r.d(o,{default:function(){return U}});var t=r(7645),e=r(2640),i=r.n(e),a=n(1889),s=r.n(a),l=r(9605),u=r.n(l),c=r(5978),p=r.n(c),f=n(3817),d=r.n(f),h=n(1170),m=r.n(h),v=r(5860),g=r(4828),y=r(3648),A=r(932),b=r(9040);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(),ChevronRight:u(),Close:p(),Pause:d(),Play:m()},directives:{tooltip:b.default},mixins:[y.Z],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?(0,A.t)("Pause slideshow"):(0,A.t)("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())(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=r(3379),_=r.n(x),E=r(7795),S=r.n(E),k=r(569),O=r.n(k),B=r(3565),T=r.n(B),j=r(9216),N=r.n(j),P=r(4589),I=r.n(P),$=r(1309),z={};z.styleTagTransform=I(),z.setAttributes=T(),z.insert=O().bind(null,"head"),z.domAPI=S(),z.insertStyleElement=N(),_()($.Z,z),$.Z&&$.Z.locals&&$.Z.locals;var D=r(1900),F=r(8575),R=r.n(F),L=(0,D.Z)(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.apply(null,arguments)}}},[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.apply(null,arguments)}}},[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.apply(null,arguments)}}},[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,"2da14a6a",null);"function"==typeof R()&&R()(L);var M=L.exports;(0,t.Z)(M);var U=M}(),o}()},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(7874),p=n(2648),f=n(644),d=n(205);t.exports=function(t){return new Promise((function(e,n){var h,m=t.data,v=t.headers,g=t.responseType;function y(){t.cancelToken&&t.cancelToken.unsubscribe(h),t.signal&&t.signal.removeEventListener("abort",h)}r.isFormData(m)&&r.isStandardBrowserEnv()&&delete v["Content-Type"];var A=new XMLHttpRequest;if(t.auth){var b=t.auth.username||"",C=t.auth.password?unescape(encodeURIComponent(t.auth.password)):"";v.Authorization="Basic "+btoa(b+":"+C)}var w=s(t.baseURL,t.url);function x(){if(A){var r="getAllResponseHeaders"in A?l(A.getAllResponseHeaders()):null,i={data:g&&"text"!==g&&"json"!==g?A.response:A.responseText,status:A.status,statusText:A.statusText,headers:r,config:t,request:A};o((function(t){e(t),y()}),(function(t){n(t),y()}),i),A=null}}if(A.open(t.method.toUpperCase(),a(w,t.params,t.paramsSerializer),!0),A.timeout=t.timeout,"onloadend"in A?A.onloadend=x:A.onreadystatechange=function(){A&&4===A.readyState&&(0!==A.status||A.responseURL&&0===A.responseURL.indexOf("file:"))&&setTimeout(x)},A.onabort=function(){A&&(n(new p("Request aborted",p.ECONNABORTED,t,A)),A=null)},A.onerror=function(){n(new p("Network Error",p.ERR_NETWORK,t,A,A)),A=null},A.ontimeout=function(){var e=t.timeout?"timeout of "+t.timeout+"ms exceeded":"timeout exceeded",r=t.transitional||c;t.timeoutErrorMessage&&(e=t.timeoutErrorMessage),n(new p(e,r.clarifyTimeoutError?p.ETIMEDOUT:p.ECONNABORTED,t,A)),A=null},r.isStandardBrowserEnv()){var _=(t.withCredentials||u(w))&&t.xsrfCookieName?i.read(t.xsrfCookieName):void 0;_&&(v[t.xsrfHeaderName]=_)}"setRequestHeader"in A&&r.forEach(v,(function(t,e){void 0===m&&"content-type"===e.toLowerCase()?delete v[e]:A.setRequestHeader(e,t)})),r.isUndefined(t.withCredentials)||(A.withCredentials=!!t.withCredentials),g&&"json"!==g&&(A.responseType=t.responseType),"function"==typeof t.onDownloadProgress&&A.addEventListener("progress",t.onDownloadProgress),"function"==typeof t.onUploadProgress&&A.upload&&A.upload.addEventListener("progress",t.onUploadProgress),(t.cancelToken||t.signal)&&(h=function(t){A&&(n(!t||t&&t.type?new f:t),A.abort(),A=null)},t.cancelToken&&t.cancelToken.subscribe(h),t.signal&&(t.signal.aborted?h():t.signal.addEventListener("abort",h))),m||(m=null);var E=d(w);E&&-1===["http","https","file"].indexOf(E)?n(new p("Unsupported protocol "+E+":",p.ERR_BAD_REQUEST,t)):A.send(m)}))}},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(5546));s.Axios=i,s.CanceledError=n(644),s.CancelToken=n(4972),s.isCancel=n(6502),s.VERSION=n(7288).version,s.toFormData=n(7675),s.AxiosError=n(2648),s.Cancel=s.CanceledError,s.all=function(t){return Promise.all(t)},s.spread=n(8713),s.isAxiosError=n(6268),t.exports=s,t.exports.default=s},4972:(t,e,n)=>{"use strict";var r=n(644);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},644:(t,e,n)=>{"use strict";var r=n(2648);function o(t){r.call(this,null==t?"canceled":t,r.ERR_CANCELED),this.name="CanceledError"}n(4867).inherits(o,r,{__CANCEL__:!0}),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(4097),u=n(4875),c=u.validators;function p(t){this.defaults=t,this.interceptors={request:new i,response:new i}}p.prototype.request=function(t,e){"string"==typeof t?(e=e||{}).url=t:e=t||{},(e=s(this.defaults,e)).method?e.method=e.method.toLowerCase():this.defaults.method?e.method=this.defaults.method.toLowerCase():e.method="get";var n=e.transitional;void 0!==n&&u.assertOptions(n,{silentJSONParsing:c.transitional(c.boolean),forcedJSONParsing:c.transitional(c.boolean),clarifyTimeoutError:c.transitional(c.boolean)},!1);var r=[],o=!0;this.interceptors.request.forEach((function(t){"function"==typeof t.runWhen&&!1===t.runWhen(e)||(o=o&&t.synchronous,r.unshift(t.fulfilled,t.rejected))}));var i,l=[];if(this.interceptors.response.forEach((function(t){l.push(t.fulfilled,t.rejected)})),!o){var p=[a,void 0];for(Array.prototype.unshift.apply(p,r),p=p.concat(l),i=Promise.resolve(e);p.length;)i=i.then(p.shift(),p.shift());return i}for(var f=e;r.length;){var d=r.shift(),h=r.shift();try{f=d(f)}catch(t){h(t);break}}try{i=a(f)}catch(t){return Promise.reject(t)}for(;l.length;)i=i.then(l.shift(),l.shift());return i},p.prototype.getUri=function(t){t=s(this.defaults,t);var e=l(t.baseURL,t.url);return o(e,t.params,t.paramsSerializer)},r.forEach(["delete","get","head","options"],(function(t){p.prototype[t]=function(e,n){return this.request(s(n||{},{method:t,url:e,data:(n||{}).data}))}})),r.forEach(["post","put","patch"],(function(t){function e(e){return function(n,r,o){return this.request(s(o||{},{method:t,headers:e?{"Content-Type":"multipart/form-data"}:{},url:n,data:r}))}}p.prototype[t]=e(),p.prototype[t+"Form"]=e(!0)})),t.exports=p},2648:(t,e,n)=>{"use strict";var r=n(4867);function o(t,e,n,r,o){Error.call(this),this.message=t,this.name="AxiosError",e&&(this.code=e),n&&(this.config=n),r&&(this.request=r),o&&(this.response=o)}r.inherits(o,Error,{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}}});var i=o.prototype,a={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED"].forEach((function(t){a[t]={value:t}})),Object.defineProperties(o,a),Object.defineProperty(i,"isAxiosError",{value:!0}),o.from=function(t,e,n,a,s,l){var u=Object.create(i);return r.toFlatObject(t,u,(function(t){return t!==Error.prototype})),o.call(u,t.message,e,n,a,s),u.name=t.name,l&&Object.assign(u,l),u},t.exports=o},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}},3572:(t,e,n)=>{"use strict";var r=n(4867),o=n(8527),i=n(6502),a=n(5546),s=n(644);function l(t){if(t.cancelToken&&t.cancelToken.throwIfRequested(),t.signal&&t.signal.aborted)throw new s}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)}))}},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,beforeRedirect: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(2648);t.exports=function(t,e,n){var o=n.config.validateStatus;n.status&&o&&!o(n.status)?e(new r("Request failed with status code "+n.status,[r.ERR_BAD_REQUEST,r.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n)):t(n)}},8527:(t,e,n)=>{"use strict";var r=n(4867),o=n(5546);t.exports=function(t,e,n){var i=this||o;return r.forEach(n,(function(n){t=n.call(i,t,e)})),t}},5546:(t,e,n)=>{"use strict";var r=n(4155),o=n(4867),i=n(6016),a=n(2648),s=n(7874),l=n(7675),u={"Content-Type":"application/x-www-form-urlencoded"};function c(t,e){!o.isUndefined(t)&&o.isUndefined(t["Content-Type"])&&(t["Content-Type"]=e)}var p,f={transitional:s,adapter:(("undefined"!=typeof XMLHttpRequest||void 0!==r&&"[object process]"===Object.prototype.toString.call(r))&&(p=n(5448)),p),transformRequest:[function(t,e){if(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))return t;if(o.isArrayBufferView(t))return t.buffer;if(o.isURLSearchParams(t))return c(e,"application/x-www-form-urlencoded;charset=utf-8"),t.toString();var n,r=o.isObject(t),a=e&&e["Content-Type"];if((n=o.isFileList(t))||r&&"multipart/form-data"===a){var s=this.env&&this.env.FormData;return l(n?{"files[]":t}:t,s&&new s)}return r||"application/json"===a?(c(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||f.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.from(t,a.ERR_BAD_RESPONSE,this,null,this.response);throw t}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:n(1623)},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*"}}};o.forEach(["delete","get","head"],(function(t){f.headers[t]={}})),o.forEach(["post","put","patch"],(function(t){f.headers[t]=o.merge(u)})),t.exports=f},7874:t=>{"use strict";t.exports={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1}},7288:t=>{t.exports={version:"0.27.2"}},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,e,n)=>{"use strict";var r=n(4867);t.exports=function(t){return r.isObject(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])}))}},1623:t=>{t.exports=null},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}},205:t=>{"use strict";t.exports=function(t){var e=/^([-+\w]{1,25})(:?\/\/|:)/.exec(t);return e&&e[1]||""}},8713:t=>{"use strict";t.exports=function(t){return function(e){return t.apply(null,e)}}},7675:(t,e,n)=>{"use strict";var r=n(3085).Buffer,o=n(4867);t.exports=function(t,e){e=e||new FormData;var n=[];function i(t){return null===t?"":o.isDate(t)?t.toISOString():o.isArrayBuffer(t)||o.isTypedArray(t)?"function"==typeof Blob?new Blob([t]):r.from(t):t}return function t(r,a){if(o.isPlainObject(r)||o.isArray(r)){if(-1!==n.indexOf(r))throw Error("Circular reference detected in "+a);n.push(r),o.forEach(r,(function(n,r){if(!o.isUndefined(n)){var s,l=a?a+"."+r:r;if(n&&!a&&"object"==typeof n)if(o.endsWith(r,"{}"))n=JSON.stringify(n);else if(o.endsWith(r,"[]")&&(s=o.toArray(n)))return void s.forEach((function(t){!o.isUndefined(t)&&e.append(l,i(t))}));t(n,l)}})),n.pop()}else e.append(a,i(r))}(t),e}},4875:(t,e,n)=>{"use strict";var r=n(5108),o=n(7288).version,i=n(2648),a={};["object","boolean","number","function","string","symbol"].forEach((function(t,e){a[t]=function(n){return typeof n===t||"a"+(e<1?"n ":" ")+t}}));var s={};a.transitional=function(t,e,n){function a(t,e){return"[Axios v"+o+"] Transitional option '"+t+"'"+e+(n?". "+n:"")}return function(n,o,l){if(!1===t)throw new i(a(o," has been removed"+(e?" in "+e:"")),i.ERR_DEPRECATED);return e&&!s[o]&&(s[o]=!0,r.warn(a(o," has been deprecated since v"+e+" and will be removed in the near future"))),!t||t(n,o,l)}},t.exports={assertOptions:function(t,e,n){if("object"!=typeof t)throw new i("options must be an object",i.ERR_BAD_OPTION_VALUE);for(var r=Object.keys(t),o=r.length;o-- >0;){var a=r[o],s=e[a];if(s){var l=t[a],u=void 0===l||s(l,a,t);if(!0!==u)throw new i("option "+a+" must be "+u,i.ERR_BAD_OPTION_VALUE)}else if(!0!==n)throw new i("Unknown option "+a,i.ERR_BAD_OPTION)}},validators:a}},4867:(t,e,n)=>{"use strict";var r,o=n(1849),i=Object.prototype.toString,a=(r=Object.create(null),function(t){var e=i.call(t);return r[e]||(r[e]=e.slice(8,-1).toLowerCase())});function s(t){return t=t.toLowerCase(),function(e){return a(e)===t}}function l(t){return Array.isArray(t)}function u(t){return void 0===t}var c=s("ArrayBuffer");function p(t){return null!==t&&"object"==typeof t}function f(t){if("object"!==a(t))return!1;var e=Object.getPrototypeOf(t);return null===e||e===Object.prototype}var d=s("Date"),h=s("File"),m=s("Blob"),v=s("FileList");function g(t){return"[object Function]"===i.call(t)}var y=s("URLSearchParams");function A(t,e){if(null!=t)if("object"!=typeof t&&(t=[t]),l(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)}var b,C=(b="undefined"!=typeof Uint8Array&&Object.getPrototypeOf(Uint8Array),function(t){return b&&t instanceof b});t.exports={isArray:l,isArrayBuffer:c,isBuffer:function(t){return null!==t&&!u(t)&&null!==t.constructor&&!u(t.constructor)&&"function"==typeof t.constructor.isBuffer&&t.constructor.isBuffer(t)},isFormData:function(t){var e="[object FormData]";return t&&("function"==typeof FormData&&t instanceof FormData||i.call(t)===e||g(t.toString)&&t.toString()===e)},isArrayBufferView:function(t){return"undefined"!=typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(t):t&&t.buffer&&c(t.buffer)},isString:function(t){return"string"==typeof t},isNumber:function(t){return"number"==typeof t},isObject:p,isPlainObject:f,isUndefined:u,isDate:d,isFile:h,isBlob:m,isFunction:g,isStream:function(t){return p(t)&&g(t.pipe)},isURLSearchParams:y,isStandardBrowserEnv:function(){return("undefined"==typeof navigator||"ReactNative"!==navigator.product&&"NativeScript"!==navigator.product&&"NS"!==navigator.product)&&("undefined"!=typeof window&&"undefined"!=typeof document)},forEach:A,merge:function t(){var e={};function n(n,r){f(e[r])&&f(n)?e[r]=t(e[r],n):f(n)?e[r]=t({},n):l(n)?e[r]=n.slice():e[r]=n}for(var r=0,o=arguments.length;r<o;r++)A(arguments[r],n);return e},extend:function(t,e,n){return A(e,(function(e,r){t[r]=n&&"function"==typeof e?o(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},inherits:function(t,e,n,r){t.prototype=Object.create(e.prototype,r),t.prototype.constructor=t,n&&Object.assign(t.prototype,n)},toFlatObject:function(t,e,n){var r,o,i,a={};e=e||{};do{for(o=(r=Object.getOwnPropertyNames(t)).length;o-- >0;)a[i=r[o]]||(e[i]=t[i],a[i]=!0);t=Object.getPrototypeOf(t)}while(t&&(!n||n(t,e))&&t!==Object.prototype);return e},kindOf:a,kindOfTest:s,endsWith:function(t,e,n){t=String(t),(void 0===n||n>t.length)&&(n=t.length),n-=e.length;var r=t.indexOf(e,n);return-1!==r&&r===n},toArray:function(t){if(!t)return null;var e=t.length;if(u(e))return null;for(var n=new Array(e);e-- >0;)n[e]=t[e];return n},isTypedArray:C,isFileList:v}},9742:(t,e)=>{"use strict";e.byteLength=function(t){var e=l(t),n=e[0],r=e[1];return 3*(n+r)/4-r},e.toByteArray=function(t){var e,n,i=l(t),a=i[0],s=i[1],u=new o(function(t,e,n){return 3*(e+n)/4-n}(0,a,s)),c=0,p=s>0?a-4:a;for(n=0;n<p;n+=4)e=r[t.charCodeAt(n)]<<18|r[t.charCodeAt(n+1)]<<12|r[t.charCodeAt(n+2)]<<6|r[t.charCodeAt(n+3)],u[c++]=e>>16&255,u[c++]=e>>8&255,u[c++]=255&e;2===s&&(e=r[t.charCodeAt(n)]<<2|r[t.charCodeAt(n+1)]>>4,u[c++]=255&e);1===s&&(e=r[t.charCodeAt(n)]<<10|r[t.charCodeAt(n+1)]<<4|r[t.charCodeAt(n+2)]>>2,u[c++]=e>>8&255,u[c++]=255&e);return u},e.fromByteArray=function(t){for(var e,r=t.length,o=r%3,i=[],a=16383,s=0,l=r-o;s<l;s+=a)i.push(u(t,s,s+a>l?l:s+a));1===o?(e=t[r-1],i.push(n[e>>2]+n[e<<4&63]+"==")):2===o&&(e=(t[r-2]<<8)+t[r-1],i.push(n[e>>10]+n[e>>4&63]+n[e<<2&63]+"="));return i.join("")};for(var n=[],r=[],o="undefined"!=typeof Uint8Array?Uint8Array:Array,i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",a=0,s=i.length;a<s;++a)n[a]=i[a],r[i.charCodeAt(a)]=a;function l(t){var e=t.length;if(e%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var n=t.indexOf("=");return-1===n&&(n=e),[n,n===e?0:4-n%4]}function u(t,e,r){for(var o,i,a=[],s=e;s<r;s+=3)o=(t[s]<<16&16711680)+(t[s+1]<<8&65280)+(255&t[s+2]),a.push(n[(i=o)>>18&63]+n[i>>12&63]+n[i>>6&63]+n[63&i]);return a.join("")}r["-".charCodeAt(0)]=62,r["_".charCodeAt(0)]=63},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,E=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)E[x]=y;else if(y)switch(t){case 3:return!0;case 5:return g;case 6:return x;case 2:l.call(E,g)}else if(c)return!1;return p?-1:u||c?c:E}};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,E=p((function(){x.has(1)})),S=f((function(t){new y(t)})),k=!v&&p((function(){for(var t=new y,e=5;e--;)t[g](e,e);return!t.has(-0)}));S||((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),(E||k)&&(w("delete"),w("has"),m&&w("get")),(k||_)&&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,_,E,S=function(t){if(t===d&&j)return j;if(!m&&t in B)return B[t];switch(t){case g:case y:case A:return function(){return new n(this,t)}}return function(){return new n(this)}},k=e+" Iterator",O=!1,B=t.prototype,T=B[v]||B["@@iterator"]||d&&B[d],j=!m&&T||S(d),N="Array"==e&&B.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,k,!0,!0),p&&(f[k]=b))),d==y&&T&&T.name!==y&&(O=!0,j=function(){return T.call(this)}),p&&!w||B[v]===j||l(B,v,j),f[e]=j,d)if(_={values:S(y),keys:C?j:S(g),entries:S(A)},w)for(E in _)(m||O||!(E in B))&&u(B,E,_[E]);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})},9070:(t,e,n)=>{var r=n(2109),o=n(9781);r({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperty:n(3070).f})},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,_="",E=0,S=0;S<C.length;S++){w=C[S];for(var k=String(w[0]),O=p(f(s(w.index),d.length),0),B=[],T=1;T<w.length;T++)B.push(void 0===(x=w[T])?x:String(x));var j=w.groups;if(h){var N=[k].concat(B,O,d);void 0!==j&&N.push(j);var P=String(r.apply(void 0,N))}else P=A(k,d,O,B,j,r);O>=E&&(_+=d.slice(E,O)+P,E=O+k.length)}return _+d.slice(E)}];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;border-radius:40px}#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;border-radius:40px}.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:"AA2IC,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,CACA,kBAAA,CAGD,8CACC,2CAAA,CACA,qCAAA,CACA,oCAAA,CACA,SAAA,CACA,kBAAA,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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\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\tborder-radius: 40px;\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\tborder-radius: 40px;\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},333:(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-10738c5b]{background-color:rgba(0,0,0,.7)}.modal-mask[data-v-10738c5b] .modal-wrapper{position:relative}.modal-mask[data-v-10738c5b] .modal-container{display:flex;flex-direction:column;position:relative}.modal-mask .modal-body[data-v-10738c5b]{flex-grow:1;display:flex;overflow-x:hidden;overflow-y:auto}.modal-mask .modal-body>div[data-v-10738c5b]{display:flex;flex-grow:1;align-items:center;justify-content:center}.modal-header[data-v-10738c5b]{flex-shrink:0}.modal-header .firstrunwizard-header[data-v-10738c5b]{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-10738c5b]{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-10738c5b]{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-10738c5b]{align-self:flex-end}.modal-footer[data-v-10738c5b]{overflow:hidden;position:absolute;display:flex;bottom:0;right:0}.modal-footer button[data-v-10738c5b]{margin:10px}.next-enter-active[data-v-10738c5b],.next-leave-active[data-v-10738c5b],.previous-enter-active[data-v-10738c5b],.previous-leave-active[data-v-10738c5b]{transition:transform .1s,opacity .25s}.next-enter[data-v-10738c5b]{transform:translateX(50%);opacity:0}.next-leave-to[data-v-10738c5b]{transform:translateX(-50%);opacity:0}.previous-enter[data-v-10738c5b]{transform:translateX(-50%);opacity:0}.previous-leave-to[data-v-10738c5b]{transform:translateX(50%);opacity:0}","",{version:3,sources:["webpack://./src/App.vue"],names:[],mappings:"AAqVA,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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\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},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,E=/\\(\\)?/g,S=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,E,"$1"):e||t})),r},k=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=S(t),r=n.length>0?n[0]:"",i=k("%"+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 E(t,e,n){v(O(e),(function(e){t.removeEventListener(e,n,!1)}))}function S(t,e){for(;t;){if(t==e)return!0;t=t.parentNode}return!1}function k(t,e){return t.indexOf(e)>-1}function O(t){return t.trim().split(/\s+/g)}function B(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 j(t,e,n){for(var r=[],o=[],i=0;i<t.length;){var a=e?t[i][e]:t[i];B(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 I(t){var e=t.ownerDocument||t;return e.defaultView||e.parentWindow||o}var $="ontouchstart"in o,z=N(o,"PointerEvent")!==s,D=$&&/mobile|tablet|ip(ad|hone|od)|android/i.test(navigator.userAgent),F="touch",R="mouse",L=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=K(l,u),e.distance=Y(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=Z(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,Y(h[0],h[1],U)/Y(p[0],p[1],U)):1,e.rotation=a?function(t,e){return K(e[1],e[0],U)+K(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=Z(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;S(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 Z(t,e){return t===e?1:f(t)>=f(e)?t<0?2:4:e<0?8:16}function Y(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 K(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&&_(I(this.element),this.evWin,this.domHandler)},destroy:function(){this.evEl&&E(this.element,this.evEl,this.domHandler),this.evTarget&&E(this.target,this.evTarget,this.domHandler),this.evWin&&E(I(this.element),this.evWin,this.domHandler)}};var X={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=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:R,srcEvent:t}))}});var et={pointerdown:1,pointermove:2,pointerup:4,pointercancel:8,pointerout:8},nt={2:F,3:"pen",4:R,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=B(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=j(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:F,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 S(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?[j(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:F,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==F,o=n.pointerType==R;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",Et="pan-x",St="pan-y",kt=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&&kt[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(k(t,_t))return _t;var e=k(t,Et),n=k(t,St);if(e&&n)return _t;if(e||n)return e?Et:St;if(k(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=k(r,_t)&&!kt.none,i=k(r,St)&&!kt["pan-y"],a=k(r,Et)&&!kt["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&L?this.preventSrc(e):void 0}},preventSrc:function(t){this.manager.session.prevented=!0,t.preventDefault()}};var Bt=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 jt(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 It(){Tt.apply(this,arguments)}function $t(){It.apply(this,arguments),this.pX=null,this.pY=null}function zt(){It.apply(this,arguments)}function Dt(){Tt.apply(this,arguments),this._timer=null,this._input=null}function Ft(){It.apply(this,arguments)}function Rt(){It.apply(this,arguments)}function Lt(){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===B(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=B(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+jt(n)),r(e.options.event),t.additionalEvent&&r(t.additionalEvent),n>=8&&r(e.options.event+jt(n))},tryEmit:function(t){if(this.canEmit())return this.emit(t);this.state=Bt},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=Bt);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(It,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:Bt}}),b($t,It,{defaults:{event:"pan",threshold:10,pointers:1,direction:30},getTouchAction:function(){var t=this.options.direction,e=[];return 6&t&&e.push(St),t&L&&e.push(Et),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 It.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,It,{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(Dt,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 Bt},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(Ft,It,{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(Rt,It,{defaults:{event:"swipe",threshold:10,velocity:.3,direction:30,pointers:1},getTouchAction:function(){return $t.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&L&&(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(Lt,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||Y(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 Bt},failTimeout:function(){return this._timer=h((function(){this.state=Bt}),this.options.interval,this),Bt},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:[[Ft,{enable:!1}],[zt,{enable:!1},["rotate"]],[Rt,{direction:6}],[$t,{direction:6},["swipe"]],[Lt],[Lt,{event:"doubletap",taps:2},["tap"]],[Dt]],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:D?dt:$?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=B(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(B(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:Bt,DIRECTION_NONE:1,DIRECTION_LEFT:2,DIRECTION_RIGHT:4,DIRECTION_UP:8,DIRECTION_DOWN:16,DIRECTION_HORIZONTAL:6,DIRECTION_VERTICAL:L,DIRECTION_ALL:30,Manager:Ut,Input:G,TouchAction:Ot,TouchInput:dt,MouseInput:tt,PointerEventInput:it,TouchMouseInput:mt,SingleTouchInput:ut,Recognizer:Tt,AttrRecognizer:It,Tap:Lt,Pan:$t,Swipe:Rt,Pinch:zt,Rotate:Ft,Press:Dt,on:_,off:E,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)},645:(t,e)=>{e.read=function(t,e,n,r,o){var i,a,s=8*o-r-1,l=(1<<s)-1,u=l>>1,c=-7,p=n?o-1:0,f=n?-1:1,d=t[e+p];for(p+=f,i=d&(1<<-c)-1,d>>=-c,c+=s;c>0;i=256*i+t[e+p],p+=f,c-=8);for(a=i&(1<<-c)-1,i>>=-c,c+=r;c>0;a=256*a+t[e+p],p+=f,c-=8);if(0===i)i=1-u;else{if(i===l)return a?NaN:1/0*(d?-1:1);a+=Math.pow(2,r),i-=u}return(d?-1:1)*a*Math.pow(2,i-r)},e.write=function(t,e,n,r,o,i){var a,s,l,u=8*i-o-1,c=(1<<u)-1,p=c>>1,f=23===o?Math.pow(2,-24)-Math.pow(2,-77):0,d=r?0:i-1,h=r?1:-1,m=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(s=isNaN(e)?1:0,a=c):(a=Math.floor(Math.log(e)/Math.LN2),e*(l=Math.pow(2,-a))<1&&(a--,l*=2),(e+=a+p>=1?f/l:f*Math.pow(2,1-p))*l>=2&&(a++,l/=2),a+p>=c?(s=0,a=c):a+p>=1?(s=(e*l-1)*Math.pow(2,o),a+=p):(s=e*Math.pow(2,p-1)*Math.pow(2,o),a=0));o>=8;t[n+d]=255&s,d+=h,s/=256,o-=8);for(a=a<<o|s,u+=o;u>0;t[n+d]=255&a,d+=h,a/=256,u-=8);t[n+d-h]|=128*m}},5717: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}}},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(3083),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(882),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.*?")+"$"),E=h.Symbol,S=v.splice,k=F(h,"Map"),O=F(Object,"create"),B=E?E.prototype:void 0,T=B?B.toString:void 0;function j(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 I(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 $(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:R(n);for(var r=0,o=e.length;null!=t&&r<o;)t=t[L(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 D(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 z(n)?n:void 0}j.prototype.clear=function(){this.__data__=O?O(null):{}},j.prototype.delete=function(t){return this.has(t)&&delete this.__data__[t]},j.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},j.prototype.has=function(t){var e=this.__data__;return O?void 0!==e[t]:w.call(e,t)},j.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=I(e,t);return!(n<0)&&(n==e.length-1?e.pop():S.call(e,n,1),!0)},N.prototype.get=function(t){var e=this.__data__,n=I(e,t);return n<0?void 0:e[n][1]},N.prototype.has=function(t){return I(this.__data__,t)>-1},N.prototype.set=function(t,e){var n=this.__data__,r=I(n,t);return r<0?n.push([t,e]):n[r][1]=e,this},P.prototype.clear=function(){this.__data__={hash:new j,map:new(k||N),string:new j}},P.prototype.delete=function(t){return D(this,t).delete(t)},P.prototype.get=function(t){return D(this,t).get(t)},P.prototype.has=function(t){return D(this,t).has(t)},P.prototype.set=function(t,e){return D(this,t).set(t,e),this};var R=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 L(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:$(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 E=w&&h.call(t,"__wrapped__"),S=x&&h.call(e,"__wrapped__");if(E||S){var k=E?t.value():t,O=S?e.value():e;return g||(g=new r),v(k,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 E=b?b(w,x,n+"",t,e,C):void 0,S=void 0===E;if(S){var k=u(x),O=!k&&p(x),B=!k&&!O&&m(x);E=x,k||O||B?u(w)?E=w:c(w)?E=a(w):O?(S=!1,E=o(x,!0)):B?(S=!1,E=i(x,!0)):E=[]:h(x)||l(x)?(E=w,l(w)?E=g(w):d(w)&&!f(w)||(E=s(x))):S=!1}S&&(C.set(x,E),A(E,x,y,b,C),C.delete(x)),r(t,n,E)}}},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=k,_={};function E(t){if(t.message instanceof Error)throw t.message;throw new h(t)}function S(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 k(){for(var t=arguments.length,e=new Array(t),n=0;n<t;n++)e[n]=arguments[n];S.apply(void 0,[k,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=k,x.equal=function t(e,n,r){if(arguments.length<2)throw new d("actual","expected");e!=n&&E({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&&E({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)||E({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)&&E({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)||E({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)&&E({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)||E({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)&&E({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 B(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}E({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])||B(t,e,o,n,s,r)})),!0}return void 0!==e.prototype&&t instanceof e||!Error.isPrototypeOf(e)&&!0===e.call({},t)}function j(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 I(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";E({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 $(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";E({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];S.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];I.apply(void 0,[t,j(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 I.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];$.apply(void 0,[t,j(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 $.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 E=Math.max(c.length,p.length);if(0===E){var S=u.split("\n");if(S.length>30)for(S[26]="".concat(g,"...").concat(b);S.length>27;)S.pop();return"".concat(C.notIdentical,"\n\n").concat(S.join("\n"),"\n")}f>3&&(s="\n".concat(g,"...").concat(b).concat(s),l=!0),""!==o&&(s="\n ".concat(o).concat(s),o="");var k=0,O=C[n]+"\n".concat(y,"+ actual").concat(b," ").concat(A,"- expected").concat(b),B=" ".concat(g,"...").concat(b," Lines skipped");for(f=0;f<E;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]),k++),i+="\n ".concat(p[f-1]),k++),a=f,o+="\n".concat(A,"-").concat(b," ").concat(p[f]),k++;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]),k++),i+="\n ".concat(c[f-1]),k++),a=f,i+="\n".concat(y,"+").concat(b," ").concat(c[f]),k++;else{var j=p[f],N=c[f],P=N!==j&&(!v(N,",")||N.slice(0,-1)!==j);P&&v(j,",")&&j.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]),k++),i+="\n ".concat(c[f-1]),k++),a=f,i+="\n".concat(y,"+").concat(b," ").concat(N),o+="\n".concat(A,"-").concat(b," ").concat(j),k+=2):(i+=o,o="",1!==T&&0!==f||(i+="\n ".concat(N),k++))}if(k>20&&f<E-2)return"".concat(O).concat(B,"\n").concat(i,"\n").concat(g,"...").concat(b).concat(o,"\n")+"".concat(g,"...").concat(b)}return"".concat(O).concat(l?B:"","\n").concat(i).concat(o).concat(s).concat(h)}var E=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 E=x(u),S="",k=C[i];"notDeepEqual"===i||"notEqual"===i?(E="".concat(C[i],"\n\n").concat(E)).length>1024&&(E="".concat(E.slice(0,1021),"...")):(S="".concat(x(c)),E.length>512&&(E="".concat(E.slice(0,509),"...")),S.length>512&&(S="".concat(S.slice(0,509),"...")),"deepEqual"===i||"equal"===i?E="".concat(k,"\n\n").concat(E,"\n\nshould equal\n\n"):S=" ".concat(i," ").concat(S)),n=a(this,f(e).call(this,"".concat(E).concat(S)))}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=E},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,E=m.isStringObject,S=m.isBooleanObject,k=m.isBigIntObject,O=m.isSymbolObject,B=m.isFloat32Array,T=m.isFloat64Array;function j(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(j).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 I(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||!B(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 j=N(t),I=N(e);return j.length===I.length&&z(t,e,n,r,0,j)}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)):E(t)?E(e)&&String.prototype.valueOf.call(t)===String.prototype.valueOf.call(e):S(t)?S(e)&&Boolean.prototype.valueOf.call(t)===Boolean.prototype.valueOf.call(e):k(t)?k(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 $(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&&$(e,h).length!==c)return!1}else{var m=u(e);if(0!==m.length&&0!==$(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 D(t,e,n,r){for(var o=a(t),i=0;i<o.length;i++){var s=o[i];if(I(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(c(t))return!1}return!0}function R(t,e,n){var r=F(n);return null!=r?r:e.has(r)&&!t.has(r)}function L(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)||!I(r,a,!1,o))&&(!t.has(i)&&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(I(n,u,o,i)&&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(!R(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(!D(i,f,n,r))return!1}else if(!n&&!t.has(f)&&!D(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)||!I(f,d,n,i)){if(n)return!1;if(!L(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)&&I(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)||!I(t[d],e[d],n,l))return!1}return p.length===Object.keys(e).length}if(!f(e,c)||!I(t[c],e[c],n,l))return!1}for(c=0;c<i.length;c++){var h=i[c];if(!I(t[h],e[h],n,l))return!1}return!0}t.exports={isDeepEqual:function(t,e){return I(t,e,false)},isDeepStrictEqual:function(t,e){return I(t,e,true)}}},3085:(t,e,n)=>{"use strict";var r=n(5108);const o=n(9742),i=n(645),a="function"==typeof Symbol&&"function"==typeof Symbol.for?Symbol.for("nodejs.util.inspect.custom"):null;e.Buffer=u,e.SlowBuffer=function(t){+t!=t&&(t=0);return u.alloc(+t)},e.INSPECT_MAX_BYTES=50;const s=2147483647;function l(t){if(t>s)throw new RangeError('The value "'+t+'" is invalid for option "size"');const e=new Uint8Array(t);return Object.setPrototypeOf(e,u.prototype),e}function u(t,e,n){if("number"==typeof t){if("string"==typeof e)throw new TypeError('The "string" argument must be of type string. Received type number');return f(t)}return c(t,e,n)}function c(t,e,n){if("string"==typeof t)return function(t,e){"string"==typeof e&&""!==e||(e="utf8");if(!u.isEncoding(e))throw new TypeError("Unknown encoding: "+e);const n=0|v(t,e);let r=l(n);const o=r.write(t,e);o!==n&&(r=r.slice(0,o));return r}(t,e);if(ArrayBuffer.isView(t))return function(t){if(K(t,Uint8Array)){const e=new Uint8Array(t);return h(e.buffer,e.byteOffset,e.byteLength)}return d(t)}(t);if(null==t)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof t);if(K(t,ArrayBuffer)||t&&K(t.buffer,ArrayBuffer))return h(t,e,n);if("undefined"!=typeof SharedArrayBuffer&&(K(t,SharedArrayBuffer)||t&&K(t.buffer,SharedArrayBuffer)))return h(t,e,n);if("number"==typeof t)throw new TypeError('The "value" argument must not be of type number. Received type number');const r=t.valueOf&&t.valueOf();if(null!=r&&r!==t)return u.from(r,e,n);const o=function(t){if(u.isBuffer(t)){const e=0|m(t.length),n=l(e);return 0===n.length||t.copy(n,0,0,e),n}if(void 0!==t.length)return"number"!=typeof t.length||X(t.length)?l(0):d(t);if("Buffer"===t.type&&Array.isArray(t.data))return d(t.data)}(t);if(o)return o;if("undefined"!=typeof Symbol&&null!=Symbol.toPrimitive&&"function"==typeof t[Symbol.toPrimitive])return u.from(t[Symbol.toPrimitive]("string"),e,n);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof t)}function p(t){if("number"!=typeof t)throw new TypeError('"size" argument must be of type number');if(t<0)throw new RangeError('The value "'+t+'" is invalid for option "size"')}function f(t){return p(t),l(t<0?0:0|m(t))}function d(t){const e=t.length<0?0:0|m(t.length),n=l(e);for(let r=0;r<e;r+=1)n[r]=255&t[r];return n}function h(t,e,n){if(e<0||t.byteLength<e)throw new RangeError('"offset" is outside of buffer bounds');if(t.byteLength<e+(n||0))throw new RangeError('"length" is outside of buffer bounds');let r;return r=void 0===e&&void 0===n?new Uint8Array(t):void 0===n?new Uint8Array(t,e):new Uint8Array(t,e,n),Object.setPrototypeOf(r,u.prototype),r}function m(t){if(t>=s)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+s.toString(16)+" bytes");return 0|t}function v(t,e){if(u.isBuffer(t))return t.length;if(ArrayBuffer.isView(t)||K(t,ArrayBuffer))return t.byteLength;if("string"!=typeof t)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof t);const n=t.length,r=arguments.length>2&&!0===arguments[2];if(!r&&0===n)return 0;let o=!1;for(;;)switch(e){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":return H(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return Z(t).length;default:if(o)return r?-1:H(t).length;e=(""+e).toLowerCase(),o=!0}}function g(t,e,n){let r=!1;if((void 0===e||e<0)&&(e=0),e>this.length)return"";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return"";if((n>>>=0)<=(e>>>=0))return"";for(t||(t="utf8");;)switch(t){case"hex":return j(this,e,n);case"utf8":case"utf-8":return k(this,e,n);case"ascii":return B(this,e,n);case"latin1":case"binary":return T(this,e,n);case"base64":return S(this,e,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return N(this,e,n);default:if(r)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),r=!0}}function y(t,e,n){const r=t[e];t[e]=t[n],t[n]=r}function A(t,e,n,r,o){if(0===t.length)return-1;if("string"==typeof n?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),X(n=+n)&&(n=o?0:t.length-1),n<0&&(n=t.length+n),n>=t.length){if(o)return-1;n=t.length-1}else if(n<0){if(!o)return-1;n=0}if("string"==typeof e&&(e=u.from(e,r)),u.isBuffer(e))return 0===e.length?-1:b(t,e,n,r,o);if("number"==typeof e)return e&=255,"function"==typeof Uint8Array.prototype.indexOf?o?Uint8Array.prototype.indexOf.call(t,e,n):Uint8Array.prototype.lastIndexOf.call(t,e,n):b(t,[e],n,r,o);throw new TypeError("val must be string, number or Buffer")}function b(t,e,n,r,o){let i,a=1,s=t.length,l=e.length;if(void 0!==r&&("ucs2"===(r=String(r).toLowerCase())||"ucs-2"===r||"utf16le"===r||"utf-16le"===r)){if(t.length<2||e.length<2)return-1;a=2,s/=2,l/=2,n/=2}function u(t,e){return 1===a?t[e]:t.readUInt16BE(e*a)}if(o){let r=-1;for(i=n;i<s;i++)if(u(t,i)===u(e,-1===r?0:i-r)){if(-1===r&&(r=i),i-r+1===l)return r*a}else-1!==r&&(i-=i-r),r=-1}else for(n+l>s&&(n=s-l),i=n;i>=0;i--){let n=!0;for(let r=0;r<l;r++)if(u(t,i+r)!==u(e,r)){n=!1;break}if(n)return i}return-1}function C(t,e,n,r){n=Number(n)||0;const o=t.length-n;r?(r=Number(r))>o&&(r=o):r=o;const i=e.length;let a;for(r>i/2&&(r=i/2),a=0;a<r;++a){const r=parseInt(e.substr(2*a,2),16);if(X(r))return a;t[n+a]=r}return a}function w(t,e,n,r){return Y(H(e,t.length-n),t,n,r)}function x(t,e,n,r){return Y(function(t){const e=[];for(let n=0;n<t.length;++n)e.push(255&t.charCodeAt(n));return e}(e),t,n,r)}function _(t,e,n,r){return Y(Z(e),t,n,r)}function E(t,e,n,r){return Y(function(t,e){let n,r,o;const i=[];for(let a=0;a<t.length&&!((e-=2)<0);++a)n=t.charCodeAt(a),r=n>>8,o=n%256,i.push(o),i.push(r);return i}(e,t.length-n),t,n,r)}function S(t,e,n){return 0===e&&n===t.length?o.fromByteArray(t):o.fromByteArray(t.slice(e,n))}function k(t,e,n){n=Math.min(t.length,n);const r=[];let o=e;for(;o<n;){const e=t[o];let i=null,a=e>239?4:e>223?3:e>191?2:1;if(o+a<=n){let n,r,s,l;switch(a){case 1:e<128&&(i=e);break;case 2:n=t[o+1],128==(192&n)&&(l=(31&e)<<6|63&n,l>127&&(i=l));break;case 3:n=t[o+1],r=t[o+2],128==(192&n)&&128==(192&r)&&(l=(15&e)<<12|(63&n)<<6|63&r,l>2047&&(l<55296||l>57343)&&(i=l));break;case 4:n=t[o+1],r=t[o+2],s=t[o+3],128==(192&n)&&128==(192&r)&&128==(192&s)&&(l=(15&e)<<18|(63&n)<<12|(63&r)<<6|63&s,l>65535&&l<1114112&&(i=l))}}null===i?(i=65533,a=1):i>65535&&(i-=65536,r.push(i>>>10&1023|55296),i=56320|1023&i),r.push(i),o+=a}return function(t){const e=t.length;if(e<=O)return String.fromCharCode.apply(String,t);let n="",r=0;for(;r<e;)n+=String.fromCharCode.apply(String,t.slice(r,r+=O));return n}(r)}e.kMaxLength=s,u.TYPED_ARRAY_SUPPORT=function(){try{const t=new Uint8Array(1),e={foo:function(){return 42}};return Object.setPrototypeOf(e,Uint8Array.prototype),Object.setPrototypeOf(t,e),42===t.foo()}catch(t){return!1}}(),u.TYPED_ARRAY_SUPPORT||void 0===r||"function"!=typeof r.error||r.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support."),Object.defineProperty(u.prototype,"parent",{enumerable:!0,get:function(){if(u.isBuffer(this))return this.buffer}}),Object.defineProperty(u.prototype,"offset",{enumerable:!0,get:function(){if(u.isBuffer(this))return this.byteOffset}}),u.poolSize=8192,u.from=function(t,e,n){return c(t,e,n)},Object.setPrototypeOf(u.prototype,Uint8Array.prototype),Object.setPrototypeOf(u,Uint8Array),u.alloc=function(t,e,n){return function(t,e,n){return p(t),t<=0?l(t):void 0!==e?"string"==typeof n?l(t).fill(e,n):l(t).fill(e):l(t)}(t,e,n)},u.allocUnsafe=function(t){return f(t)},u.allocUnsafeSlow=function(t){return f(t)},u.isBuffer=function(t){return null!=t&&!0===t._isBuffer&&t!==u.prototype},u.compare=function(t,e){if(K(t,Uint8Array)&&(t=u.from(t,t.offset,t.byteLength)),K(e,Uint8Array)&&(e=u.from(e,e.offset,e.byteLength)),!u.isBuffer(t)||!u.isBuffer(e))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(t===e)return 0;let n=t.length,r=e.length;for(let 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},u.isEncoding=function(t){switch(String(t).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},u.concat=function(t,e){if(!Array.isArray(t))throw new TypeError('"list" argument must be an Array of Buffers');if(0===t.length)return u.alloc(0);let n;if(void 0===e)for(e=0,n=0;n<t.length;++n)e+=t[n].length;const r=u.allocUnsafe(e);let o=0;for(n=0;n<t.length;++n){let e=t[n];if(K(e,Uint8Array))o+e.length>r.length?(u.isBuffer(e)||(e=u.from(e)),e.copy(r,o)):Uint8Array.prototype.set.call(r,e,o);else{if(!u.isBuffer(e))throw new TypeError('"list" argument must be an Array of Buffers');e.copy(r,o)}o+=e.length}return r},u.byteLength=v,u.prototype._isBuffer=!0,u.prototype.swap16=function(){const t=this.length;if(t%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let e=0;e<t;e+=2)y(this,e,e+1);return this},u.prototype.swap32=function(){const t=this.length;if(t%4!=0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(let e=0;e<t;e+=4)y(this,e,e+3),y(this,e+1,e+2);return this},u.prototype.swap64=function(){const t=this.length;if(t%8!=0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(let e=0;e<t;e+=8)y(this,e,e+7),y(this,e+1,e+6),y(this,e+2,e+5),y(this,e+3,e+4);return this},u.prototype.toString=function(){const t=this.length;return 0===t?"":0===arguments.length?k(this,0,t):g.apply(this,arguments)},u.prototype.toLocaleString=u.prototype.toString,u.prototype.equals=function(t){if(!u.isBuffer(t))throw new TypeError("Argument must be a Buffer");return this===t||0===u.compare(this,t)},u.prototype.inspect=function(){let t="";const n=e.INSPECT_MAX_BYTES;return t=this.toString("hex",0,n).replace(/(.{2})/g,"$1 ").trim(),this.length>n&&(t+=" ... "),"<Buffer "+t+">"},a&&(u.prototype[a]=u.prototype.inspect),u.prototype.compare=function(t,e,n,r,o){if(K(t,Uint8Array)&&(t=u.from(t,t.offset,t.byteLength)),!u.isBuffer(t))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof t);if(void 0===e&&(e=0),void 0===n&&(n=t?t.length:0),void 0===r&&(r=0),void 0===o&&(o=this.length),e<0||n>t.length||r<0||o>this.length)throw new RangeError("out of range index");if(r>=o&&e>=n)return 0;if(r>=o)return-1;if(e>=n)return 1;if(this===t)return 0;let i=(o>>>=0)-(r>>>=0),a=(n>>>=0)-(e>>>=0);const s=Math.min(i,a),l=this.slice(r,o),c=t.slice(e,n);for(let t=0;t<s;++t)if(l[t]!==c[t]){i=l[t],a=c[t];break}return i<a?-1:a<i?1:0},u.prototype.includes=function(t,e,n){return-1!==this.indexOf(t,e,n)},u.prototype.indexOf=function(t,e,n){return A(this,t,e,n,!0)},u.prototype.lastIndexOf=function(t,e,n){return A(this,t,e,n,!1)},u.prototype.write=function(t,e,n,r){if(void 0===e)r="utf8",n=this.length,e=0;else if(void 0===n&&"string"==typeof e)r=e,n=this.length,e=0;else{if(!isFinite(e))throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");e>>>=0,isFinite(n)?(n>>>=0,void 0===r&&(r="utf8")):(r=n,n=void 0)}const o=this.length-e;if((void 0===n||n>o)&&(n=o),t.length>0&&(n<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");r||(r="utf8");let i=!1;for(;;)switch(r){case"hex":return C(this,t,e,n);case"utf8":case"utf-8":return w(this,t,e,n);case"ascii":case"latin1":case"binary":return x(this,t,e,n);case"base64":return _(this,t,e,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return E(this,t,e,n);default:if(i)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),i=!0}},u.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};const O=4096;function B(t,e,n){let r="";n=Math.min(t.length,n);for(let o=e;o<n;++o)r+=String.fromCharCode(127&t[o]);return r}function T(t,e,n){let r="";n=Math.min(t.length,n);for(let o=e;o<n;++o)r+=String.fromCharCode(t[o]);return r}function j(t,e,n){const r=t.length;(!e||e<0)&&(e=0),(!n||n<0||n>r)&&(n=r);let o="";for(let r=e;r<n;++r)o+=J[t[r]];return o}function N(t,e,n){const r=t.slice(e,n);let o="";for(let t=0;t<r.length-1;t+=2)o+=String.fromCharCode(r[t]+256*r[t+1]);return o}function P(t,e,n){if(t%1!=0||t<0)throw new RangeError("offset is not uint");if(t+e>n)throw new RangeError("Trying to access beyond buffer length")}function I(t,e,n,r,o,i){if(!u.isBuffer(t))throw new TypeError('"buffer" argument must be a Buffer instance');if(e>o||e<i)throw new RangeError('"value" argument is out of bounds');if(n+r>t.length)throw new RangeError("Index out of range")}function $(t,e,n,r,o){G(e,r,o,t,n,7);let i=Number(e&BigInt(4294967295));t[n++]=i,i>>=8,t[n++]=i,i>>=8,t[n++]=i,i>>=8,t[n++]=i;let a=Number(e>>BigInt(32)&BigInt(4294967295));return t[n++]=a,a>>=8,t[n++]=a,a>>=8,t[n++]=a,a>>=8,t[n++]=a,n}function z(t,e,n,r,o){G(e,r,o,t,n,7);let i=Number(e&BigInt(4294967295));t[n+7]=i,i>>=8,t[n+6]=i,i>>=8,t[n+5]=i,i>>=8,t[n+4]=i;let a=Number(e>>BigInt(32)&BigInt(4294967295));return t[n+3]=a,a>>=8,t[n+2]=a,a>>=8,t[n+1]=a,a>>=8,t[n]=a,n+8}function D(t,e,n,r,o,i){if(n+r>t.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function F(t,e,n,r,o){return e=+e,n>>>=0,o||D(t,0,n,4),i.write(t,e,n,r,23,4),n+4}function R(t,e,n,r,o){return e=+e,n>>>=0,o||D(t,0,n,8),i.write(t,e,n,r,52,8),n+8}u.prototype.slice=function(t,e){const n=this.length;(t=~~t)<0?(t+=n)<0&&(t=0):t>n&&(t=n),(e=void 0===e?n:~~e)<0?(e+=n)<0&&(e=0):e>n&&(e=n),e<t&&(e=t);const r=this.subarray(t,e);return Object.setPrototypeOf(r,u.prototype),r},u.prototype.readUintLE=u.prototype.readUIntLE=function(t,e,n){t>>>=0,e>>>=0,n||P(t,e,this.length);let r=this[t],o=1,i=0;for(;++i<e&&(o*=256);)r+=this[t+i]*o;return r},u.prototype.readUintBE=u.prototype.readUIntBE=function(t,e,n){t>>>=0,e>>>=0,n||P(t,e,this.length);let r=this[t+--e],o=1;for(;e>0&&(o*=256);)r+=this[t+--e]*o;return r},u.prototype.readUint8=u.prototype.readUInt8=function(t,e){return t>>>=0,e||P(t,1,this.length),this[t]},u.prototype.readUint16LE=u.prototype.readUInt16LE=function(t,e){return t>>>=0,e||P(t,2,this.length),this[t]|this[t+1]<<8},u.prototype.readUint16BE=u.prototype.readUInt16BE=function(t,e){return t>>>=0,e||P(t,2,this.length),this[t]<<8|this[t+1]},u.prototype.readUint32LE=u.prototype.readUInt32LE=function(t,e){return t>>>=0,e||P(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},u.prototype.readUint32BE=u.prototype.readUInt32BE=function(t,e){return t>>>=0,e||P(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},u.prototype.readBigUInt64LE=Q((function(t){q(t>>>=0,"offset");const e=this[t],n=this[t+7];void 0!==e&&void 0!==n||V(t,this.length-8);const r=e+256*this[++t]+65536*this[++t]+this[++t]*2**24,o=this[++t]+256*this[++t]+65536*this[++t]+n*2**24;return BigInt(r)+(BigInt(o)<<BigInt(32))})),u.prototype.readBigUInt64BE=Q((function(t){q(t>>>=0,"offset");const e=this[t],n=this[t+7];void 0!==e&&void 0!==n||V(t,this.length-8);const r=e*2**24+65536*this[++t]+256*this[++t]+this[++t],o=this[++t]*2**24+65536*this[++t]+256*this[++t]+n;return(BigInt(r)<<BigInt(32))+BigInt(o)})),u.prototype.readIntLE=function(t,e,n){t>>>=0,e>>>=0,n||P(t,e,this.length);let r=this[t],o=1,i=0;for(;++i<e&&(o*=256);)r+=this[t+i]*o;return o*=128,r>=o&&(r-=Math.pow(2,8*e)),r},u.prototype.readIntBE=function(t,e,n){t>>>=0,e>>>=0,n||P(t,e,this.length);let r=e,o=1,i=this[t+--r];for(;r>0&&(o*=256);)i+=this[t+--r]*o;return o*=128,i>=o&&(i-=Math.pow(2,8*e)),i},u.prototype.readInt8=function(t,e){return t>>>=0,e||P(t,1,this.length),128&this[t]?-1*(255-this[t]+1):this[t]},u.prototype.readInt16LE=function(t,e){t>>>=0,e||P(t,2,this.length);const n=this[t]|this[t+1]<<8;return 32768&n?4294901760|n:n},u.prototype.readInt16BE=function(t,e){t>>>=0,e||P(t,2,this.length);const n=this[t+1]|this[t]<<8;return 32768&n?4294901760|n:n},u.prototype.readInt32LE=function(t,e){return t>>>=0,e||P(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},u.prototype.readInt32BE=function(t,e){return t>>>=0,e||P(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},u.prototype.readBigInt64LE=Q((function(t){q(t>>>=0,"offset");const e=this[t],n=this[t+7];void 0!==e&&void 0!==n||V(t,this.length-8);const r=this[t+4]+256*this[t+5]+65536*this[t+6]+(n<<24);return(BigInt(r)<<BigInt(32))+BigInt(e+256*this[++t]+65536*this[++t]+this[++t]*2**24)})),u.prototype.readBigInt64BE=Q((function(t){q(t>>>=0,"offset");const e=this[t],n=this[t+7];void 0!==e&&void 0!==n||V(t,this.length-8);const r=(e<<24)+65536*this[++t]+256*this[++t]+this[++t];return(BigInt(r)<<BigInt(32))+BigInt(this[++t]*2**24+65536*this[++t]+256*this[++t]+n)})),u.prototype.readFloatLE=function(t,e){return t>>>=0,e||P(t,4,this.length),i.read(this,t,!0,23,4)},u.prototype.readFloatBE=function(t,e){return t>>>=0,e||P(t,4,this.length),i.read(this,t,!1,23,4)},u.prototype.readDoubleLE=function(t,e){return t>>>=0,e||P(t,8,this.length),i.read(this,t,!0,52,8)},u.prototype.readDoubleBE=function(t,e){return t>>>=0,e||P(t,8,this.length),i.read(this,t,!1,52,8)},u.prototype.writeUintLE=u.prototype.writeUIntLE=function(t,e,n,r){if(t=+t,e>>>=0,n>>>=0,!r){I(this,t,e,n,Math.pow(2,8*n)-1,0)}let o=1,i=0;for(this[e]=255&t;++i<n&&(o*=256);)this[e+i]=t/o&255;return e+n},u.prototype.writeUintBE=u.prototype.writeUIntBE=function(t,e,n,r){if(t=+t,e>>>=0,n>>>=0,!r){I(this,t,e,n,Math.pow(2,8*n)-1,0)}let o=n-1,i=1;for(this[e+o]=255&t;--o>=0&&(i*=256);)this[e+o]=t/i&255;return e+n},u.prototype.writeUint8=u.prototype.writeUInt8=function(t,e,n){return t=+t,e>>>=0,n||I(this,t,e,1,255,0),this[e]=255&t,e+1},u.prototype.writeUint16LE=u.prototype.writeUInt16LE=function(t,e,n){return t=+t,e>>>=0,n||I(this,t,e,2,65535,0),this[e]=255&t,this[e+1]=t>>>8,e+2},u.prototype.writeUint16BE=u.prototype.writeUInt16BE=function(t,e,n){return t=+t,e>>>=0,n||I(this,t,e,2,65535,0),this[e]=t>>>8,this[e+1]=255&t,e+2},u.prototype.writeUint32LE=u.prototype.writeUInt32LE=function(t,e,n){return t=+t,e>>>=0,n||I(this,t,e,4,4294967295,0),this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=255&t,e+4},u.prototype.writeUint32BE=u.prototype.writeUInt32BE=function(t,e,n){return t=+t,e>>>=0,n||I(this,t,e,4,4294967295,0),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},u.prototype.writeBigUInt64LE=Q((function(t,e=0){return $(this,t,e,BigInt(0),BigInt("0xffffffffffffffff"))})),u.prototype.writeBigUInt64BE=Q((function(t,e=0){return z(this,t,e,BigInt(0),BigInt("0xffffffffffffffff"))})),u.prototype.writeIntLE=function(t,e,n,r){if(t=+t,e>>>=0,!r){const r=Math.pow(2,8*n-1);I(this,t,e,n,r-1,-r)}let o=0,i=1,a=0;for(this[e]=255&t;++o<n&&(i*=256);)t<0&&0===a&&0!==this[e+o-1]&&(a=1),this[e+o]=(t/i>>0)-a&255;return e+n},u.prototype.writeIntBE=function(t,e,n,r){if(t=+t,e>>>=0,!r){const r=Math.pow(2,8*n-1);I(this,t,e,n,r-1,-r)}let o=n-1,i=1,a=0;for(this[e+o]=255&t;--o>=0&&(i*=256);)t<0&&0===a&&0!==this[e+o+1]&&(a=1),this[e+o]=(t/i>>0)-a&255;return e+n},u.prototype.writeInt8=function(t,e,n){return t=+t,e>>>=0,n||I(this,t,e,1,127,-128),t<0&&(t=255+t+1),this[e]=255&t,e+1},u.prototype.writeInt16LE=function(t,e,n){return t=+t,e>>>=0,n||I(this,t,e,2,32767,-32768),this[e]=255&t,this[e+1]=t>>>8,e+2},u.prototype.writeInt16BE=function(t,e,n){return t=+t,e>>>=0,n||I(this,t,e,2,32767,-32768),this[e]=t>>>8,this[e+1]=255&t,e+2},u.prototype.writeInt32LE=function(t,e,n){return t=+t,e>>>=0,n||I(this,t,e,4,2147483647,-2147483648),this[e]=255&t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24,e+4},u.prototype.writeInt32BE=function(t,e,n){return t=+t,e>>>=0,n||I(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},u.prototype.writeBigInt64LE=Q((function(t,e=0){return $(this,t,e,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),u.prototype.writeBigInt64BE=Q((function(t,e=0){return z(this,t,e,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),u.prototype.writeFloatLE=function(t,e,n){return F(this,t,e,!0,n)},u.prototype.writeFloatBE=function(t,e,n){return F(this,t,e,!1,n)},u.prototype.writeDoubleLE=function(t,e,n){return R(this,t,e,!0,n)},u.prototype.writeDoubleBE=function(t,e,n){return R(this,t,e,!1,n)},u.prototype.copy=function(t,e,n,r){if(!u.isBuffer(t))throw new TypeError("argument should be a Buffer");if(n||(n=0),r||0===r||(r=this.length),e>=t.length&&(e=t.length),e||(e=0),r>0&&r<n&&(r=n),r===n)return 0;if(0===t.length||0===this.length)return 0;if(e<0)throw new RangeError("targetStart out of bounds");if(n<0||n>=this.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),t.length-e<r-n&&(r=t.length-e+n);const o=r-n;return this===t&&"function"==typeof Uint8Array.prototype.copyWithin?this.copyWithin(e,n,r):Uint8Array.prototype.set.call(t,this.subarray(n,r),e),o},u.prototype.fill=function(t,e,n,r){if("string"==typeof t){if("string"==typeof e?(r=e,e=0,n=this.length):"string"==typeof n&&(r=n,n=this.length),void 0!==r&&"string"!=typeof r)throw new TypeError("encoding must be a string");if("string"==typeof r&&!u.isEncoding(r))throw new TypeError("Unknown encoding: "+r);if(1===t.length){const e=t.charCodeAt(0);("utf8"===r&&e<128||"latin1"===r)&&(t=e)}}else"number"==typeof t?t&=255:"boolean"==typeof t&&(t=Number(t));if(e<0||this.length<e||this.length<n)throw new RangeError("Out of range index");if(n<=e)return this;let o;if(e>>>=0,n=void 0===n?this.length:n>>>0,t||(t=0),"number"==typeof t)for(o=e;o<n;++o)this[o]=t;else{const i=u.isBuffer(t)?t:u.from(t,r),a=i.length;if(0===a)throw new TypeError('The value "'+t+'" is invalid for argument "value"');for(o=0;o<n-e;++o)this[o+e]=i[o%a]}return this};const L={};function M(t,e,n){L[t]=class extends n{constructor(){super(),Object.defineProperty(this,"message",{value:e.apply(this,arguments),writable:!0,configurable:!0}),this.name=`${this.name} [${t}]`,this.stack,delete this.name}get code(){return t}set code(t){Object.defineProperty(this,"code",{configurable:!0,enumerable:!0,value:t,writable:!0})}toString(){return`${this.name} [${t}]: ${this.message}`}}}function U(t){let e="",n=t.length;const r="-"===t[0]?1:0;for(;n>=r+4;n-=3)e=`_${t.slice(n-3,n)}${e}`;return`${t.slice(0,n)}${e}`}function G(t,e,n,r,o,i){if(t>n||t<e){const r="bigint"==typeof e?"n":"";let o;throw o=i>3?0===e||e===BigInt(0)?`>= 0${r} and < 2${r} ** ${8*(i+1)}${r}`:`>= -(2${r} ** ${8*(i+1)-1}${r}) and < 2 ** ${8*(i+1)-1}${r}`:`>= ${e}${r} and <= ${n}${r}`,new L.ERR_OUT_OF_RANGE("value",o,t)}!function(t,e,n){q(e,"offset"),void 0!==t[e]&&void 0!==t[e+n]||V(e,t.length-(n+1))}(r,o,i)}function q(t,e){if("number"!=typeof t)throw new L.ERR_INVALID_ARG_TYPE(e,"number",t)}function V(t,e,n){if(Math.floor(t)!==t)throw q(t,n),new L.ERR_OUT_OF_RANGE(n||"offset","an integer",t);if(e<0)throw new L.ERR_BUFFER_OUT_OF_BOUNDS;throw new L.ERR_OUT_OF_RANGE(n||"offset",`>= ${n?1:0} and <= ${e}`,t)}M("ERR_BUFFER_OUT_OF_BOUNDS",(function(t){return t?`${t} is outside of buffer bounds`:"Attempt to access memory outside buffer bounds"}),RangeError),M("ERR_INVALID_ARG_TYPE",(function(t,e){return`The "${t}" argument must be of type number. Received type ${typeof e}`}),TypeError),M("ERR_OUT_OF_RANGE",(function(t,e,n){let r=`The value of "${t}" is out of range.`,o=n;return Number.isInteger(n)&&Math.abs(n)>2**32?o=U(String(n)):"bigint"==typeof n&&(o=String(n),(n>BigInt(2)**BigInt(32)||n<-(BigInt(2)**BigInt(32)))&&(o=U(o)),o+="n"),r+=` It must be ${e}. Received ${o}`,r}),RangeError);const W=/[^+/0-9A-Za-z-_]/g;function H(t,e){let n;e=e||1/0;const r=t.length;let o=null;const i=[];for(let a=0;a<r;++a){if(n=t.charCodeAt(a),n>55295&&n<57344){if(!o){if(n>56319){(e-=3)>-1&&i.push(239,191,189);continue}if(a+1===r){(e-=3)>-1&&i.push(239,191,189);continue}o=n;continue}if(n<56320){(e-=3)>-1&&i.push(239,191,189),o=n;continue}n=65536+(o-55296<<10|n-56320)}else o&&(e-=3)>-1&&i.push(239,191,189);if(o=null,n<128){if((e-=1)<0)break;i.push(n)}else if(n<2048){if((e-=2)<0)break;i.push(n>>6|192,63&n|128)}else if(n<65536){if((e-=3)<0)break;i.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;i.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return i}function Z(t){return o.toByteArray(function(t){if((t=(t=t.split("=")[0]).trim().replace(W,"")).length<2)return"";for(;t.length%4!=0;)t+="=";return t}(t))}function Y(t,e,n,r){let o;for(o=0;o<r&&!(o+n>=e.length||o>=t.length);++o)e[o+n]=t[o];return o}function K(t,e){return t instanceof e||null!=t&&null!=t.constructor&&null!=t.constructor.name&&t.constructor.name===e.name}function X(t){return t!=t}const J=function(){const t="0123456789abcdef",e=new Array(256);for(let n=0;n<16;++n){const r=16*n;for(let o=0;o<16;++o)e[r+o]=t[n]+t[o]}return e}();function Q(t){return"undefined"==typeof BigInt?tt:t}function tt(){throw new Error("BigInt not supported")}},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 E="undefined"!=typeof SharedArrayBuffer?SharedArrayBuffer:void 0;function S(t){return"[object SharedArrayBuffer]"===c(t)}function k(t){return void 0!==E&&(void 0===S.working&&(S.working=S(new E)),S.working?S(t):t instanceof E)}function O(t){return v(t,p)}function B(t){return v(t,f)}function T(t){return v(t,d)}function j(t){return l&&v(t,h)}function N(t){return u&&v(t,m)}e.isSharedArrayBuffer=k,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=B,e.isBooleanObject=T,e.isBigIntObject=j,e.isSymbolObject=N,e.isBoxedPrimitive=function(t){return O(t)||B(t)||T(t)||j(t)||N(t)},e.isAnyArrayBuffer=function(t){return"undefined"!=typeof Uint8Array&&(w(t)||k(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&&S(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)),E(n)&&(a.indexOf("message")>=0||a.indexOf("description")>=0))return h(n);if(0===a.length){if(S(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(E(n))return h(n)}var u,c="",p=!1,f=["{","}"];(v(n)&&(p=!0,f=["[","]"]),S(n))&&(c=" [Function"+(n.name?": "+n.name:"")+"]");return w(n)&&(c=" "+RegExp.prototype.toString.call(n)),_(n)&&(c=" "+Date.prototype.toUTCString.call(n)),E(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)j(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")),j(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]"===k(t)}function x(t){return"object"==typeof t&&null!==t}function _(t){return x(t)&&"[object Date]"===k(t)}function E(t){return x(t)&&("[object Error]"===k(t)||t instanceof Error)}function S(t){return"function"==typeof t}function k(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=E,e.types.isNativeError=E,e.isFunction=S,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 B=["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(),B[t.getMonth()],e].join(" ")}function j(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(5717),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))}}},6505:(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:()=>Zt,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 E(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 S=function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")},k=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},B=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 B({},t,{right:t.left+t.width,bottom:t.top+t.height})}function j(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?E(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=j(t),a=j(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 I(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&&I(n)}function $(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?$(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||I(a))i=l;else{var u=E(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 D(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=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 B({key:t},s[t],{area:D(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 R(t,e,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,o=r?$(e):b(e,h(n));return N(n,o,r)}function L(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=L(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=R(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 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 Z(){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 Y(t){var e=t.ownerDocument;return e?e.defaultView:window}function K(t,e,n,r){var o="BODY"===t.nodeName,i=o?t.ownerDocument.defaultView:t;i.addEventListener(e,n,{passive:!0}),o||K(d(i.parentNode),e,n,r),r.push(i)}function X(t,e,n,r){n.updateBound=r,Y(t).addEventListener("resize",n.updateBound,{passive:!0});var o=d(t);return K(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 Q(){this.state.eventsEnabled&&(cancelAnimationFrame(this.scheduleUpdate),this.state=function(t,e){return Y(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=B({},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=B({},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=L(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=B({},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=j(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=B({},b,t.attributes),t.styles=B({},c,t.styles),t.arrowStyles=B({},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=R(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}},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]:{};S(this,t),this.scheduleUpdate=function(){return requestAnimationFrame(r.update)},this.update=u(this.update.bind(this)),this.options=B({},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(B({},t.Defaults.modifiers,o.modifiers)).forEach((function(e){r.options.modifiers[e]=B({},t.Defaults.modifiers[e]||{},o.modifiers?o.modifiers[e]:{})})),this.modifiers=Object.keys(this.options.modifiers).map((function(t){return B({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 k(t,[{key:"update",value:function(){return V.call(this)}},{key:"destroy",value:function(){return Z.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 Et=n(3857),St=n.n(Et),kt=n(5108),Ot=function(){};function Bt(t){return"string"==typeof t&&(t=t.split(" ")),t}function Tt(t,e){var n,r=Bt(e);n=t.className instanceof Ot?Bt(t.className.baseVal):Bt(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 jt(t,e){var n,r=Bt(e);n=t.className instanceof Ot?Bt(t.className.baseVal):Bt(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 It(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?It(Object(n),!0).forEach((function(e){o(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):It(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},Dt=[],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=$t($t({},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||Kt.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&&jt(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,Dt.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=$t($t({},e.popperOptions),{},{placement:e.placement});return a.modifiers=$t($t({},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=Dt.indexOf(this);-1!==t&&Dt.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=Kt.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)),jt(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),Object.defineProperty(e,"prototype",{writable:!1}),t}();function Rt(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 Lt(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?Rt(Object(n),!0).forEach((function(e){o(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):Rt(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<Dt.length;e++)Dt[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:Kt.options.defaultPlacement,delay:void 0!==t.delay?t.delay:Kt.options.defaultDelay,html:void 0!==t.html?t.html:Kt.options.defaultHtml,template:void 0!==t.template?t.template:Kt.options.defaultTemplate,arrowSelector:void 0!==t.arrowSelector?t.arrowSelector:Kt.options.defaultArrowSelector,innerSelector:void 0!==t.innerSelector?t.innerSelector:Kt.options.defaultInnerSelector,trigger:void 0!==t.trigger?t.trigger:Kt.options.defaultTrigger,offset:void 0!==t.offset?t.offset:Kt.options.defaultOffset,container:void 0!==t.container?t.container:Kt.options.defaultContainer,boundariesElement:void 0!==t.boundariesElement?t.boundariesElement:Kt.options.defaultBoundariesElement,autoHide:void 0!==t.autoHide?t.autoHide:Kt.options.autoHide,hideOnTargetClick:void 0!==t.hideOnTargetClick?t.hideOnTargetClick:Kt.options.defaultHideOnTargetClick,loadingClass:void 0!==t.loadingClass?t.loadingClass:Kt.options.defaultLoadingClass,loadingContent:void 0!==t.loadingContent?t.loadingContent:Kt.options.defaultLoadingContent,popperOptions:Lt({},void 0!==t.popperOptions?t.popperOptions:Kt.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:Kt.options.defaultClass,a=Lt({title:o},qt(Lt(Lt({},"object"===r(e)?e:{}),{},{placement:Vt(e,n)}))),s=t._tooltip=new Ft(t,a);s.setClasses(i),s._vueEl=t;var l=void 0!==e.targetClasses?e.targetClasses:Kt.options.defaultTargetClass;return t._tooltipTargetClasses=l,Tt(t,l),s}function Zt(t){t._tooltip&&(t._tooltip.dispose(),delete t._tooltip,delete t._tooltipOldShow),t._tooltipTargetClasses&&(jt(t,t._tooltipTargetClasses),delete t._tooltipTargetClasses)}function Yt(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(Lt(Lt({},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())):Zt(t)}var Kt={options:Gt,bind:Yt,update:Yt,unbind:function(t){Zt(t)}};function Xt(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)&&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=Kt.options.popover[t];return void 0===e?Kt.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 Kt.options.popover.defaultBaseClass}},popoverInnerClass:{type:[String,Array],default:function(){return Kt.options.popover.defaultInnerClass}},popoverWrapperClass:{type:[String,Array],default:function(){return Kt.options.popover.defaultWrapperClass}},popoverArrowClass:{type:[String,Array],default:function(){return Kt.options.popover.defaultArrowClass}},autoHide:{type:Boolean,default:function(){return Kt.options.popover.defaultAutoHide}},handleResize:{type:Boolean,default:function(){return Kt.options.popover.defaultHandleResize}},openGroup:{type:String,default:null},openClass:{type:[String,Array],default:function(){return Kt.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 kt.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 kt.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=Kt.options.popover.disposeTimeout||Kt.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={};St()(n,Gt,e),be.options=n,Kt.options=n,t.directive("tooltip",Kt),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=Kt,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():""}))})),E=w((function(t){return t.charAt(0).toUpperCase()+t.slice(1)})),S=/\B([A-Z])/g,k=w((function(t){return t.replace(S,"-$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 B(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 j(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},I=function(t){return t};function $(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 $(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 $(t[n],e[n])}))}catch(t){return!1}}function z(t,e){for(var n=0;n<t.length;n++)if($(t[n],e))return n;return-1}function D(t){var e=!1;return function(){e||(e=!0,t.apply(this,arguments))}}var F="data-server-rendered",R=["component","directive","filter"],L=["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:I,mustUseProp:P,async:!0,_lifecycleHooks:L},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{},Z="undefined"!=typeof window,Y="undefined"!=typeof WXEnvironment&&!!WXEnvironment.platform,K=Y&&WXEnvironment.platform.toLowerCase(),X=Z&&window.navigator.userAgent.toLowerCase(),J=X&&/msie|trident/.test(X),Q=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"===K),nt=(X&&/chrome\/\d+/.test(X),X&&/phantomjs/.test(X),X&&X.match(/firefox\/(\d+)/)),rt={}.watch,ot=!1;if(Z)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=!Z&&!Y&&void 0!==n.g&&(n.g.process&&"server"===n.g.process.env.VUE_ENV)),W},st=Z&&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),Et=!0;function St(t){Et=t}var kt=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 kt?n=t.__ob__:Et&&!at()&&(Array.isArray(t)||p(t))&&Object.isExtensible(t)&&!t._isVue&&(n=new kt(t)),e&&n&&n.vmCount++,n}function Bt(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?(Bt(r.value,e,n),r.dep.notify(),n):(t[e]=n,n)}function jt(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)}kt.prototype.walk=function(t){for(var e=Object.keys(t),n=0;n<e.length;n++)Bt(t,e[n])},kt.prototype.observeArray=function(t){for(var e=0,n=t.length;e<n;e++)Ot(t[e])};var Pt=M.optionMergeStrategies;function It(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)&&It(r,o):Tt(t,n,o));return t}function $t(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?It(r,o):o}:e?t?function(){return It("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 Dt(t,e,n,r){var o=Object.create(t||null);return e?T(o,e):o}Pt.data=function(t,e,n){return n?$t(t,e,n):e&&"function"!=typeof e?t:$t(t,e)},L.forEach((function(t){Pt[t]=zt})),R.forEach((function(t){Pt[t+"s"]=Dt})),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=$t;var Ft=function(t,e){return void 0===e?t:e};function Rt(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=Rt(t,e.extends,n)),e.mixins))for(var r=0,o=e.mixins.length;r<o;r++)t=Rt(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]||Ft;a[r]=o(t[r],e[r],n,r)}return a}function Lt(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=E(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===k(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=Et;St(!0),Ot(a),St(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){Zt(t,r,"errorCaptured hook")}}Zt(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 Zt(t,e,n){if(M.errorHandler)try{return M.errorHandler.call(null,t,e,n)}catch(e){e!==t&&Yt(e,null,"config.errorHandler")}Yt(t,e,n)}function Yt(t,e,n){if(!Z&&!Y||void 0===r)throw t;r.error(t)}var Kt,Xt=!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();Kt=function(){ee.then(te),et&&setTimeout(N)},Xt=!0}else if(J||"undefined"==typeof MutationObserver||!lt(MutationObserver)&&"[object MutationObserverConstructor]"!==MutationObserver.toString())Kt="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}),Kt=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){Wt(t,e,"nextTick")}else n&&n(e)})),Qt||(Qt=!0,Kt()),!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 Ee(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 Se(t){return Lt(this.$options,"filters",t)||I}function ke(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]?ke(o,r):i?ke(i,t):r?k(r)!==e:void 0===t}function Be(t,e,n,r,o){if(n)if(u(n)){var i;Array.isArray(n)&&(n=j(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=k(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 je(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 Ie(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 $e(t,e,n,r){e=e||{$stable:!n};for(var o=0;o<t.length;o++){var i=t[o];Array.isArray(i)?$e(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 De(t,e){return"string"==typeof t?e+t:t}function Fe(t){t._o=je,t._n=v,t._s=m,t._l=_e,t._t=Ee,t._q=$,t._i=z,t._m=Te,t._f=Se,t._k=Oe,t._b=Be,t._v=bt,t._e=At,t._u=$e,t._g=Ie,t._d=ze,t._p=De}function Re(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 Le(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]}Fe(Re.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){St(!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)}St(!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=Ye;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=D((function(n){t.resolved=Ke(n,e),o?r.length=0:p(!0)})),d=D((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=Ke(m.error,e)),a(m.loading)&&(t.loadingComp=Ke(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=k(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 Re(n,l,i,r,t),f=s.render.call(null,p._c,p);if(f instanceof gt)return Le(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]=Le(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=Lt(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 Ze,Ye=null;function Ke(t,e){return(t.__esModule||ct&&"Module"===t[Symbol.toStringTag])&&(t=t.default),u(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){Ze.$on(t,e)}function Qe(t,e){Ze.$off(t,e)}function tn(t,e){var n=Ze;return function r(){var o=e.apply(null,arguments);null!==o&&n.$off(t,r)}}function en(t,e,n){Ze=t,pe(e,n||{},Je,Qe,tn,t),Ze=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(Z&&!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&&St(!1);var i=function(i){o.push(i);var a=Mt(i,e,n,t);Bt(r,i,a),i in t||wn(t,"_props",i)};for(var a in e)i(a);St(!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||En(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 En(t,e,n){var r=!at();"function"==typeof n?(Cn.get=r?Sn(e):kn(n),Cn.set=N):(Cn.get=n.get?r&&!1!==n.cache?Sn(e):kn(n.get):N,Cn.set=n.set||N),Object.defineProperty(t,e,Cn)}function Sn(t){return function(){var e=this._computedWatchers&&this._computedWatchers[t];if(e)return e.dirty&&e.evaluate(),dt.target&&e.depend(),e.value}}function kn(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 Bn=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=Rt(n,t.extendOptions)).name&&(e.components[e.name]=t)}}return e}function jn(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=Rt(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)En(t.prototype,n,e[n])}(a),a.extend=n.extend,a.mixin=n.mixin,a.use=n.use,R.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 In(t,e){return Array.isArray(t)?t.indexOf(e)>-1:"string"==typeof t?t.split(",").indexOf(e)>-1:!!f(t)&&t.test(e)}function $n(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=Bn++,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=Rt(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;Bt(t,"$attrs",i&&i.attrs||o,null,!0),Bt(t,"$listeners",e._parentListeners||o,null,!0)}(e),ln(e,"beforeCreate"),function(t){var e=ge(t.$options.inject,t);e&&(St(!1),Object.keys(e).forEach((function(n){Bt(t,n,e[n])})),St(!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)}}(jn),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=jt,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()}}}(jn),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?B(n):n;for(var r=B(arguments,1),o='event handler for "'+t+'"',i=0,a=n.length;i<a;i++)Ht(n[i],e,r,e,o)}return e}}(jn),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)}}}(jn),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{Ye=e,t=r.call(e._renderProxy,e.$createElement)}catch(n){Wt(n,e,"render"),t=e._vnode}finally{Ye=null}return Array.isArray(t)&&1===t.length&&(t=t[0]),t instanceof gt||(t=At()),t.parent=o,t}}(jn);var Dn=[String,RegExp,Array],Fn={name:"keep-alive",abstract:!0,props:{include:Dn,exclude:Dn,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){$n(t,(function(t){return In(e,t)}))})),this.$watch("exclude",(function(e){$n(t,(function(t){return!In(e,t)}))}))},updated:function(){this.cacheVNode()},render:function(){var t=this.$slots.default,e=Xe(t),n=e&&e.componentOptions;if(n){var r=Pn(n),o=this.include,i=this.exclude;if(o&&(!r||!In(o,r))||i&&r&&In(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]}},Rn={KeepAlive:Fn};!function(t){var e={get:function(){return M}};Object.defineProperty(t,"config",e),t.util={warn:pt,extend:T,mergeOptions:Rt,defineReactive:Bt},t.set=Tt,t.delete=jt,t.nextTick=ie,t.observable=function(t){return Ot(t),t},t.options=Object.create(null),R.forEach((function(e){t.options[e+"s"]=Object.create(null)})),t.options._base=t,T(t.options.components,Rn),function(t){t.use=function(t){var e=this._installedPlugins||(this._installedPlugins=[]);if(e.indexOf(t)>-1)return this;var n=B(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=Rt(this.options,t),this}}(t),Nn(t),function(t){R.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)}(jn),Object.defineProperty(jn.prototype,"$isServer",{get:at}),Object.defineProperty(jn.prototype,"$ssrContext",{get:function(){return this.$vnode&&this.$vnode.ssrContext}}),Object.defineProperty(jn,"FunctionalRenderContext",{value:Re}),jn.version="2.6.14";var Ln=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):""},Zn=function(t){return null==t||!1===t};function Yn(t){for(var e=t.data,n=t,r=t;a(r.componentInstance);)(r=r.componentInstance._vnode)&&r.data&&(e=Kn(r.data,e));for(;a(n=n.parent);)n&&n.data&&(e=Kn(e,n.data));return function(t,e){if(a(t)||a(e))return Xn(t,Jn(e));return""}(e.staticClass,e.class)}function Kn(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):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=Lt(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)?Zn(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 Zn(e)||"false"===e?"false":"contenteditable"===t&&Gn(e)?e:"true"}(e,n)):Wn(e)?Zn(n)?t.removeAttributeNS(Vn,Hn(e)):t.setAttributeNS(Vn,e,n):Cr(t,e,n)}function Cr(t,e,n){if(Zn(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=Yn(e),l=n._transitionClasses;a(l)&&(s=Xn(s,Jn(l))),s!==n._prevClass&&(n.setAttribute("class",s),n._prevClass=s)}}var _r,Er={create:xr,update:xr};function Sr(t,e,n){var r=_r;return function o(){var i=e.apply(null,arguments);null!==i&&Br(t,o,n,r)}}var kr=Xt&&!(nt&&Number(nt[1])<=53);function Or(t,e,n,r){if(kr){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 Br(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,Br,Sr,e.context),_r=void 0}}var jr,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);Ir(o,u)&&(o.value=u)}else if("innerHTML"===n&&er(o.tagName)&&i(o.innerHTML)){(jr=jr||document.createElement("div")).innerHTML="<svg>"+r+"</svg>";for(var c=jr.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 Ir(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 $r={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 Dr(t){var e=Fr(t.style);return t.staticStyle?T(t.staticStyle,e):e}function Fr(t){return Array.isArray(t)?j(t):"string"==typeof t?zr(t):t}var Rr,Lr=/^--/,Mr=/\s*!important$/,Ur=function(t,e,n){if(Lr.test(e))t.style.setProperty(e,n);else if(Mr.test(n))t.style.setProperty(k(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(Rr=Rr||document.createElement("div").style,"filter"!==(t=_(t))&&t in Rr)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 Rr)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=Fr(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=Dr(o.data))&&T(r,n);(n=Dr(t.data))&&T(r,n);for(var i=t;i=i.parent;)i.data&&(n=Dr(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 Zr(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 Yr(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 Kr(t){if(t){if("object"==typeof t){var e={};return!1!==t.css&&T(e,Xr(t.name||"v")),T(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=Z&&!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=Z?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),Zr(t,e))}function lo(t,e){t._transitionClasses&&A(t._transitionClasses,e),Yr(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=Kr(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,E=nn,S=nn.$vnode;S&&S.parent;)E=S.context,S=S.parent;var k=!E._isMounted||!t.isRootInsert;if(!k||C||""===C){var O=k&&f?f:l,B=k&&h?h:p,T=k&&d?d:c,j=k&&b||m,N=k&&"function"==typeof C?C:g,P=k&&w||y,I=k&&x||A,$=v(u(_)?_.enter:_);0;var z=!1!==o&&!Q,F=yo(N),R=n._enterCb=D((function(){z&&(lo(n,T),lo(n,B)),R.cancelled?(z&&lo(n,O),I&&I(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,R)})),j&&j(n),z&&(so(n,O),so(n,B),ao((function(){lo(n,O),R.cancelled||(so(n,T),F||(go($)?setTimeout(R,$):uo(n,s,R)))}))),t.data.show&&(e&&e(),N&&N(n,R)),z||F||R()}}}function vo(t,e){var n=t.elm;a(n._enterCb)&&(n._enterCb.cancelled=!0,n._enterCb());var r=Kr(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=D((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)?k(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 E(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 S=g("attrs,class,staticClass,staticStyle,key");function k(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||!k(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(!S(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(F)&&(t.removeAttribute(F),n=!0),s(n)&&k(t,e,f))return E(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 S=1;S<x.fns.length;S++)x.fns[S]()}else sr(g);g=g.parent}a(v)?C([t],0,0):a(t.tag)&&b(t)}}return E(e,f,c),e.elm}a(t)&&b(t)}}({nodeOps:ir,modules:[wr,Er,Nr,$r,Wr,Z?{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,Eo)):("textarea"===n.tag||or(t.type))&&(t._vModifiers=e.modifiers,e.modifiers.lazy||(t.addEventListener("compositionstart",So),t.addEventListener("compositionend",ko),t.addEventListener("change",ko),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,Eo);if(o.some((function(t,e){return!$(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,Eo(a))>-1,a.selected!==i&&(a.selected=i);else if($(Eo(a),r))return void(t.selectedIndex!==s&&(t.selectedIndex=s));o||(t.selectedIndex=-1)}}function _o(t,e){return e.every((function(e){return!$(e,t)}))}function Eo(t){return"_value"in t?t._value:t.value}function So(t){t.target.composing=!0}function ko(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 Bo(t){return!t.componentInstance||t.data&&t.data.transition?t:Bo(t.componentInstance._vnode)}var To={bind:function(t,e,n){var r=e.value,o=(n=Bo(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=Bo(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)}},jo={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(Xe(e.children)):t}function Io(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 $o(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)},Do=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(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 $o(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=Io(this),u=this._vnode,c=Po(u);if(i.data.directives&&i.data.directives.some(Do)&&(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()})),$o(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}}},Ro=T({tag:String,moveClass:String},No);function Lo(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 Ro.mode;var Go={Transition:Fo,TransitionGroup:{props:Ro,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=Io(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(Lo),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){Yr(n,t)})),Zr(n,e),n.style.display="none",this.$el.appendChild(n);var r=po(n);return this.$el.removeChild(n),this._hasMove=r.hasTransform}}}};jn.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},jn.config.isReservedTag=nr,jn.config.isReservedAttr=Ln,jn.config.getTagNamespace=function(t){return er(t)?"svg":"math"===t?"math":void 0},jn.config.isUnknownElement=function(t){if(!Z)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(jn.options.directives,jo),T(jn.options.components,Go),jn.prototype.__patch__=Z?bo:N,jn.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&&Z?function(t){if("string"==typeof t){return document.querySelector(t)||document.createElement("div")}return t}(t):void 0,e)},Z&&setTimeout((function(){M.devtools&&st&&st.emit("init",jn)}),0);const qo=jn},6430:(t,e,n)=>{"use strict";var r=n(9804),o=n(3083),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(882),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))}},3083:(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}},882:(t,e,n)=>{"use strict";var r=n(210)("%Object.getOwnPropertyDescriptor%",!0);if(r)try{r([],"length")}catch(t){r=null}t.exports=r}},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:function(){return{videoMp4:(0,n.FW)("firstrunwizard","img","Nextcloud.mp4"),videoWebm:(0,n.FW)("firstrunwizard","img","Nextcloud.webm")}},computed:{videoFallbackText:function(){return 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 E=r(5108);function S(t){return function(t){if(Array.isArray(t))return k(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 k(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 k(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 k(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 O(t,e,n,r,o,i,a){try{var s=t[i](a),l=s.value}catch(t){return void n(t)}s.done?e(l):Promise.resolve(l).then(r,o)}function B(t){return function(){var e=this,n=arguments;return new Promise((function(r,o){var i=t.apply(e,n);function a(t){O(i,r,o,a,s,"next",t)}function s(t){O(i,r,o,a,s,"throw",t)}a(void 0)}))}}const T={name:"App",components:{Modal:a()},data:function(){return{showModal:!1,withIntro:!0,slides:[],currentSlide:0,fadeDirection:"next",slidesLoaded:!1}},computed:{slideList:function(){return this.withIntro?this.slides:this.slides.slice(1)},hasNext:function(){return this.currentSlide<this.slideList.length-1},hasPrevious:function(){return this.currentSlide>0},isLast:function(){return this.currentSlide===this.slideList.length-1},isFirst:function(){return 0===this.currentSlide},startButtonText:function(){return t("firstrunwizard","Start using {cloudName}",{cloudName:window.OC.theme.name})}},created:function(){var t=this;return B(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t.slides=[_],window.addEventListener("resize",t.onResize);case 2:case"end":return e.stop()}}),e)})))()},beforeDestroy:function(){window.removeEventListener("resize",this.onResize)},methods:{loadStaticSlides:function(){var t=this;return B(regeneratorRuntime.mark((function e(){var r,o;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t.slidesLoaded){e.next=2;break}return e.abrupt("return");case 2:return e.prev=2,e.next=5,s.Z.get((0,n.nu)("/apps/firstrunwizard/wizard"));case 5:o=e.sent,(r=t.slides).push.apply(r,S(o.data.slides)),t.withIntro=o.data.hasVideo,t.slidesLoaded=!0,e.next=14;break;case 11:e.prev=11,e.t0=e.catch(2),E.error("Failed to load slides");case 14:case"end":return e.stop()}}),e,null,[[2,11]])})))()},open:function(){var t=arguments,e=this;return B(regeneratorRuntime.mark((function n(){var r;return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return r=!(t.length>0&&void 0!==t[0])||t[0],n.next=3,e.loadStaticSlides();case 3:e.withIntro=e.withIntro&r,e.showModal=!0,e.currentSlide=0;case 6:case"end":return n.stop()}}),n)})))()},close:function(){this.showModal=!1,s.Z.delete((0,n.nu)("/apps/firstrunwizard/wizard"))},next:function(){this.fadeDirection="next",this.isLast?this.close():this.currentSlide+=1},previous:function(){this.fadeDirection="previous",this.isFirst||(this.currentSlide-=1)}}};var j=r(6060),N={};N.styleTagTransform=b(),N.setAttributes=v(),N.insert=h().bind(null,"head"),N.domAPI=f(),N.insertStyleElement=y();c()(j.Z,N);j.Z&&j.Z.locals&&j.Z.locals;var P=r(333),I={};I.styleTagTransform=b(),I.setAttributes=v(),I.insert=h().bind(null,"head"),I.domAPI=f(),I.insertStyleElement=y();c()(P.Z,I);P.Z&&P.Z.locals&&P.Z.locals;const $=(0,x.Z)(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",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,"10738c5b",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;var z=document.createElement("div");z.id="firstrunwizard",document.querySelector("body").appendChild(z);var D=(new(e.default.extend($))).$mount(z);window.OCA.FirstRunWizard={open:D.open}})()})();
-//# sourceMappingURL=firstrunwizard-main.js.map?v=6b776e6c4b93d29f28b3 \ 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";n(9070),e.Z=void 0,n(9601);var r,o,i=(r=n(9669))&&r.__esModule?r:{default:r},a=n(2200);var 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)((function(t){return 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";Object.defineProperty(e,"__esModule",{value:!0}),e.getGettextBuilder=function(){return new u},n(4916),n(5306),n(9070),n(1539),n(9714);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),Object.defineProperty(t,"prototype",{writable:!1}),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 document.documentElement.dataset.locale||"en"}n(9070),Object.defineProperty(e,"__esModule",{value:!0}),e.getCanonicalLocale=function(){return o().replace(/_/g,"-")},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.getDayNamesMin=function(){if(void 0===window.dayNamesMin)return r.warn("No dayNamesMin found"),["Su","Mo","Tu","We","Th","Fr","Sa"];return window.dayNamesMin},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.getFirstDay=function(){if(void 0===window.firstDay)return r.warn("No firstDay found"),1;return window.firstDay},e.getLanguage=function(){return document.documentElement.lang||"en"},e.getLocale=o,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},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)},n(4916),n(5306)},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)=>{self,t.exports=function(){var t={5938:function(t,e,n){"use strict";var r=n(9156);e.Z={name:"ActionButton",mixins:[r.Z],props:{disabled:{type:Boolean,default:!1}},computed:{isFocusable:function(){return!this.disabled}}}},858:function(t,e,n){"use strict";var r=n(3251),o=n.n(r),i=n(8104),a=n(9040),s=n(1205),l=n(932),u=n(8099);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=".focusable";e.Z={name:"Actions",directives:{tooltip:a.default},components:{DotsHorizontal:o(),Popover:u.default,VNodes:i.Z},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:(0,l.t)("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-"+(0,s.Z)(),children:this.$children,firstAction:{}}},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]},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)},children:function(){this.firstAction=this.children[0]?this.children[0]:{}}},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(h);if(n){var r=(o=this.$refs.menu.querySelectorAll(h),function(t){if(Array.isArray(t))return c(t)}(o)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(o)||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}}(o)||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.")}()).indexOf(n);r>-1&&(this.focusIndex=r,this.focusAction())}}}var o},removeCurrentActive:function(){var t=this.$refs.menu.querySelector("li.active");t&&t.classList.remove("active")},focusAction:function(){var t=this.$refs.menu.querySelectorAll(h)[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(h).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(h).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)}}}},5041:function(t,e){"use strict";e.Z={name:"VNodes",functional:!0,render:function(t,e){return e.props.vnodes}}},4828:function(t,e,n){"use strict";var r=n(491);e.default=r.Z},5860:function(t,e,n){"use strict";var r=n(3083);e.default=r.Z},8099:function(t,e,n){"use strict";var r=n(7020);e.default=r.Z},9040:function(t,e,n){"use strict";n.d(e,{default:function(){return y}});var r=n(2965),o=n(3379),i=n.n(o),a=n(7795),s=n.n(a),l=n(569),u=n.n(l),c=n(3565),p=n.n(c),f=n(9216),d=n.n(f),h=n(4589),m=n.n(h),v=n(6051),g={};g.styleTagTransform=m(),g.setAttributes=p(),g.insert=u().bind(null,"head"),g.domAPI=s(),g.insertStyleElement=d(),i()(v.Z,g),v.Z&&v.Z.locals&&v.Z.locals,r.VTooltip.options.defaultTemplate='<div class="vue-tooltip" role="tooltip" data-v-'.concat("17fd6e1",'><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>'),r.VTooltip.options.defaultHtml=!1,r.VTooltip.options.defaultDelay={show:500,hide:200};var y=r.VTooltip},932:function(t,e,n){"use strict";n.d(e,{n:function(){return i},t:function(){return a}});var r=(0,n(6036).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","Avatar of {displayName}":"Avatar de {displayName}","Avatar of {displayName}, {status}":"Avatar de {displayName}, {status}","Cancel changes":"Cancel·la els canvis",Choose:"Tria",Close:"Tanca","Close navigation":"Tancar la navegació","Confirm changes":"Confirmeu els canvis",Custom:"Personalitzat","Edit item":"Edita l'element","External documentation for {title}":"Documentació externa per a {title}",Flags:"Marques","Food & Drink":"Menjar i begudes","Frequently used":"Utilitzats recentment",Global:"Global","Go back to the list":"Torna a la llista","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","Open navigation":"Obrir la navegació","Pause slideshow":"Atura la presentació","People & Body":"Persones i cos","Pick an emoji":"Trieu un emoji","Please select a time zone:":"Seleccioneu una zona horària:",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","Type to search time zone":"Escriviu per cercar la zona horària","Unable to search the group":"No es pot cercar el grup","Undo changes":"Desfer canvis","Write message, @ to mention someone, : for emoji autocompletion …":"Escriu un missatge, @ per esmentar algú, : per a la compleció automàtica d'emojis..."}},{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","Avatar of {displayName}, {status}":"{displayName} -(e)n irudia, {status}","Cancel changes":"Ezeztatu aldaketak",Choose:"Aukeratu",Close:"Itxi","Close navigation":"Itxi nabigazioa","Confirm changes":"Baieztatu aldaketak",Custom:"Pertsonalizatua","Edit item":"Editatu elementua","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","Undo changes":"Aldaketak desegin","Write message, @ to mention someone, : for emoji autocompletion …":"Idatzi mezua, @ norbait aipatzeko, : emojia automatikoki idazteko"}},{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, : for emoji autocompletion …":"Ecrire un message, @ pour mentionner quelqu'un, : pour l'auto-complétion des émoticônes"}},{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}","Avatar of {displayName}, {status}":"Avatar di {displayName}, {status}","Cancel changes":"Annulla modifiche",Choose:"Scegli",Close:"Chiudi","Close navigation":"Chiudi la navigazione","Confirm changes":"Conferma modifiche",Custom:"Personalizzato","Edit item":"Modifica l'elemento","External documentation for {title}":"Documentazione esterna per {title}",Flags:"Bandiere","Food & Drink":"Cibo e bevande","Frequently used":"Usati di frequente",Global:"Globale","Go back to the list":"Torna all'elenco","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","Open navigation":"Apri la navigazione","Pause slideshow":"Presentazione in pausa","People & Body":"Persone e corpo","Pick an emoji":"Scegli un emoji","Please select a time zone:":"Si prega di selezionare un fuso orario:",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","Type to search time zone":"Digita per cercare un fuso orario","Unable to search the group":"Impossibile cercare il gruppo","Undo changes":"Cancella i cambiamenti","Write message, @ to mention someone, : for emoji autocompletion …":"Scrivi un messaggio, @ per menzionare qualcuno, : per il completamento automatico delle emoji ..."}},{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}","Avatar of {displayName}, {status}":"Avatar {displayName}, {status}","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, : for emoji autocompletion …":"Napíšte správu, @ ak chcete niekoho spomenúť, : pre automatické dopĺňanie emotikonov…"}},{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]]};r.addTranslation(t.locale,{translations:{"":e}})}));var o=r.build(),i=o.ngettext.bind(o),a=o.gettext.bind(o)},723:function(t,e,n){"use strict";var r=n(2734),o=n.n(r);e.Z={before:function(){this.$slots.default&&""!==this.text.trim()||(o().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():""}}}},9156:function(t,e,n){"use strict";var r=n(723),o=n(6021);e.Z={mixins:[r.Z],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=(0,o.Z)(this,"Actions");e&&e.closeMenu&&e.closeMenu()}}}}},3648:function(t,e,n){"use strict";var r=n(932);e.Z={methods:{n:r.n,t:r.t}}},1205:function(t,e){"use strict";e.Z=function(t){return Math.random().toString(36).replace(/[^a-z]+/g,"").slice(0,t||5)}},6021:function(t,e){"use strict";e.Z=function(t,e){for(var n=t.$parent;n;){if(n.$options.name===e)return n;n=n.$parent}}},7645:function(t,e){"use strict";e.Z=function(t){t.mounted?Array.isArray(t.mounted)||(t.mounted=[t.mounted]):t.mounted=[],t.mounted.push((function(){this.$el.setAttribute("data-v-".concat("17fd6e1"),"")}))}},6051:function(t,e,n){"use strict";var r=n(4015),o=n.n(r),i=n(3645),a=n.n(i)()(o());a.push([t.id,".material-design-icon{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.vue-tooltip[data-v-17fd6e1]{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-17fd6e1][x-placement^='top'] .tooltip-arrow{bottom:0;border-bottom-width:0;border-top-color:var(--color-main-background)}.vue-tooltip[data-v-17fd6e1][x-placement^='bottom'] .tooltip-arrow{top:0;border-top-width:0;border-bottom-color:var(--color-main-background)}.vue-tooltip[data-v-17fd6e1][x-placement^='right'] .tooltip-arrow{right:100%;border-left-width:0;border-right-color:var(--color-main-background)}.vue-tooltip[data-v-17fd6e1][x-placement^='left'] .tooltip-arrow{left:100%;border-right-width:0;border-left-color:var(--color-main-background)}.vue-tooltip[data-v-17fd6e1][aria-hidden='true']{visibility:hidden;transition:opacity .15s, visibility .15s;opacity:0}.vue-tooltip[data-v-17fd6e1][aria-hidden='false']{visibility:visible;transition:opacity .15s;opacity:1}.vue-tooltip[data-v-17fd6e1] .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-17fd6e1] .tooltip-arrow{position:absolute;z-index:1;width:0;height:0;margin:0;border-style:solid;border-color:transparent;border-width:10px}\n","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/directives/Tooltip/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,gEAoBE,QAAS,CACT,qBAAsB,CACtB,6CAA8C,CAtBhD,mEA2BE,KAAM,CACN,kBAAmB,CACnB,gDAAiD,CA7BnD,kEAkCE,UAAW,CACX,mBAAoB,CACpB,+CAAgD,CApClD,iEAyCE,SAAU,CACV,oBAAqB,CACrB,8CAA+C,CA3CjD,iDAgDE,iBAAkB,CAClB,wCAAyC,CACzC,SAAU,CAlDZ,kDAqDE,kBAAmB,CACnB,uBAAwB,CACxB,SAAU,CAvDZ,4CA4DE,eAAgB,CAChB,eAAgB,CAChB,iBAAkB,CAClB,4BAA6B,CAC7B,kCAAmC,CACnC,6CAA8C,CAjEhD,4CAsEE,iBAAkB,CAClB,SAAU,CACV,OAAQ,CACR,QAAS,CACT,QAAS,CACT,kBAAmB,CACnB,wBAAyB,CACzB,iBA/EgB",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:\"17fd6e1\"; @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'] .tooltip-arrow {\n\t\tbottom: 0;\n\t\tborder-bottom-width: 0;\n\t\tborder-top-color: var(--color-main-background);\n\t}\n\n\t// BOTTOM\n\t&[x-placement^='bottom'] .tooltip-arrow {\n\t\ttop: 0;\n\t\tborder-top-width: 0;\n\t\tborder-bottom-color: var(--color-main-background);\n\t}\n\n\t// RIGHT\n\t&[x-placement^='right'] .tooltip-arrow {\n\t\tright: 100%;\n\t\tborder-left-width: 0;\n\t\tborder-right-color: var(--color-main-background);\n\t}\n\n\t// LEFT\n\t&[x-placement^='left'] .tooltip-arrow {\n\t\tleft: 100%;\n\t\tborder-right-width: 0;\n\t\tborder-left-color: var(--color-main-background);\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: transparent;\n\t\tborder-width: $arrow-width;\n\t}\n}\n"],sourceRoot:""}]),e.Z=a},7087:function(t,e,n){"use strict";var r=n(4015),o=n.n(r),i=n(3645),a=n.n(i)()(o());a.push([t.id,".material-design-icon[data-v-ef50c406]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}li.active[data-v-ef50c406]{background-color:var(--color-background-hover)}.action--disabled[data-v-ef50c406]{pointer-events:none;opacity:.5}.action--disabled[data-v-ef50c406]:hover,.action--disabled[data-v-ef50c406]:focus{cursor:default;opacity:.5}.action--disabled *[data-v-ef50c406]{opacity:1 !important}.action-button[data-v-ef50c406]{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-ef50c406]:hover,.action-button[data-v-ef50c406]:focus{opacity:1}.action-button>span[data-v-ef50c406]{cursor:pointer;white-space:nowrap}.action-button__icon[data-v-ef50c406]{width:44px;height:44px;opacity:1;background-position:14px center;background-size:16px;background-repeat:no-repeat}.action-button[data-v-ef50c406] .material-design-icon{width:44px;height:44px;opacity:1}.action-button[data-v-ef50c406] .material-design-icon .material-design-icon__svg{vertical-align:middle}.action-button p[data-v-ef50c406]{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-ef50c406]{cursor:pointer;white-space:pre-wrap}.action-button__title[data-v-ef50c406]{font-weight:bold;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;max-width:100%;display:inline-block}\n","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/assets/action.scss","webpack://./src/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,gBAAgD,CAEhD,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.Z=a},9224:function(t,e,n){"use strict";var r=n(4015),o=n.n(r),i=n(3645),a=n.n(i)()(o());a.push([t.id,".material-design-icon[data-v-2a98ba3b]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.action-item[data-v-2a98ba3b]{position:relative;display:inline-block}.action-item--single[data-v-2a98ba3b]:hover,.action-item--single[data-v-2a98ba3b]:focus,.action-item--single[data-v-2a98ba3b]:active,.action-item__menutoggle[data-v-2a98ba3b]:hover,.action-item__menutoggle[data-v-2a98ba3b]:focus,.action-item__menutoggle[data-v-2a98ba3b]:active{opacity:1;background-color:rgba(127,127,127,0.25) !important}.action-item__menutoggle[data-v-2a98ba3b]:disabled,.action-item--single[data-v-2a98ba3b]:disabled{opacity:.3 !important}.action-item.action-item--open .action-item__menutoggle[data-v-2a98ba3b]{opacity:1;background-color:rgba(127,127,127,0.25)}.action-item--single[data-v-2a98ba3b],.action-item__menutoggle[data-v-2a98ba3b]{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-2a98ba3b],.action-item__menutoggle--with-title[data-v-2a98ba3b]{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-2a98ba3b] span,.action-item__menutoggle--with-title[data-v-2a98ba3b] span{width:24px;height:24px;line-height:16px;position:absolute;top:0;left:0}.action-item[data-v-2a98ba3b] .material-design-icon{width:44px;height:44px;opacity:1}.action-item[data-v-2a98ba3b] .material-design-icon .material-design-icon__svg{vertical-align:middle}.action-item__menutoggle[data-v-2a98ba3b]{display:flex;align-items:center;justify-content:center;opacity:.7;font-weight:bold;line-height:16px}.action-item__menutoggle--primary[data-v-2a98ba3b]{opacity:1;color:var(--color-primary-text);border:none;background-color:var(--color-primary-element)}.action-item--open .action-item__menutoggle--primary[data-v-2a98ba3b],.action-item__menutoggle--primary[data-v-2a98ba3b]:hover,.action-item__menutoggle--primary[data-v-2a98ba3b]:focus,.action-item__menutoggle--primary[data-v-2a98ba3b]:active{color:var(--color-primary-text) !important;background-color:var(--color-primary-element-light) !important}.action-item--single[data-v-2a98ba3b]{opacity:.7}.action-item--single[data-v-2a98ba3b]:hover,.action-item--single[data-v-2a98ba3b]:focus,.action-item--single[data-v-2a98ba3b]:active{opacity:1}.action-item--single>[hidden][data-v-2a98ba3b]{display:none}.ie .action-item__menu[data-v-2a98ba3b],.ie .action-item__menu .action-item__menu_arrow[data-v-2a98ba3b],.edge .action-item__menu[data-v-2a98ba3b],.edge .action-item__menu .action-item__menu_arrow[data-v-2a98ba3b]{border:1px solid var(--color-border)}\n","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/Actions/Actions.vue","webpack://./src/assets/variables.scss"],names:[],mappings:"AAGA,uCACC,YAAa,CACb,iBAAkB,CAClB,mBAAoB,CACpB,kBAAmB,CACnB,sBAAuB,CCopBxB,8BACC,iBAAkB,CAClB,oBAAqB,CAIrB,sRAMC,SC5nBc,CD8nBd,kDAA2C,CAC3C,kGAKA,qBAAsB,CApBxB,yEAwBE,SCxoBc,CDyoBd,uCCroBgD,CDsoBhD,gFAKA,qBAAsB,CACtB,UAAW,CACX,cCpqBmB,CDqqBnB,WCrqBmB,CDsqBnB,QAAS,CACT,SAAU,CACV,cAAe,CACf,WAAY,CACZ,kBAAkC,CAClC,4BAA6B,CAE7B,wGACC,iBAAkB,CAClB,cCvqB6C,CDwqB7C,iBChrBkB,CDirBlB,kBAAmB,CACnB,SC/pBa,CDgqBb,yCAA0C,CAE1C,6CAA8C,CAC9C,+BAAwC,CACxC,iBAAkB,CAVlB,oHAeC,UAAW,CACX,WAAY,CACZ,gBC1rBY,CD2rBZ,iBAAkB,CAClB,KAAM,CACN,MAAO,CA9DX,oDAoEE,UCvsBmB,CDwsBnB,WCxsBmB,CDysBnB,SCtrBc,CDgnBhB,+EAyEG,qBAAsB,CACtB,0CAMD,YAAa,CACb,kBAAmB,CACnB,sBAAuB,CACvB,UCpsBiB,CDqsBjB,gBAAiB,CACjB,gBCptBc,CDstBd,mDACC,SCxsBa,CDysBb,+BAAgC,CAChC,WAAY,CACZ,6CAA8C,CAC9C,kPAIC,0CAA2C,CAC3C,8DAA+D,CAC/D,sCAKF,UCxtBiB,CDutBjB,qIAKC,SC3tBa,CDstBd,+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:\"17fd6e1\"; @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\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::v-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.Z=a},1309:function(t,e,n){"use strict";var r=n(4015),o=n.n(r),i=n(3645),a=n.n(i)()(o());a.push([t.id,".material-design-icon[data-v-2da14a6a]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.modal-mask[data-v-2da14a6a]{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-2da14a6a]{background-color:rgba(0,0,0,0.92)}.modal-header[data-v-2da14a6a]{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-2da14a6a],.modal-header.invisible[style*='display: none'][data-v-2da14a6a]{visibility:hidden}.modal-header .modal-title[data-v-2da14a6a]{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-2da14a6a]{padding-left:132px;text-align:center}}.modal-header .icons-menu[data-v-2da14a6a]{position:absolute;right:0;display:flex;align-items:center;justify-content:flex-end}.modal-header .icons-menu .header-close[data-v-2da14a6a]{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-2da14a6a]{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-2da14a6a],.modal-header .icons-menu .play-pause-icons:hover .play-pause-icons__pause[data-v-2da14a6a],.modal-header .icons-menu .play-pause-icons:focus .play-pause-icons__play[data-v-2da14a6a],.modal-header .icons-menu .play-pause-icons:focus .play-pause-icons__pause[data-v-2da14a6a]{opacity:1;border-radius:22px;background-color:rgba(127,127,127,0.25)}.modal-header .icons-menu .play-pause-icons__play[data-v-2da14a6a],.modal-header .icons-menu .play-pause-icons__pause[data-v-2da14a6a]{box-sizing:border-box;width:44px;height:44px;margin:3px;cursor:pointer;opacity:.7}.modal-header .icons-menu .header-actions[data-v-2da14a6a]{margin:3px;color:white}.modal-header .icons-menu .action-item--single[data-v-2da14a6a]{box-sizing:border-box;width:44px;height:44px;cursor:pointer;background-position:center;background-size:22px}.modal-header .icons-menu[data-v-2da14a6a] button{color:#fff}.modal-header .icons-menu[data-v-2da14a6a] .action-item__menutoggle{padding:0}.modal-header .icons-menu[data-v-2da14a6a] .action-item__menutoggle span,.modal-header .icons-menu[data-v-2da14a6a] .action-item__menutoggle svg{width:var(--icon-size);height:var(--icon-size)}.modal-wrapper[data-v-2da14a6a]{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:100%;height:100%}.modal-wrapper .prev[data-v-2da14a6a],.modal-wrapper .next[data-v-2da14a6a]{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-2da14a6a],.modal-wrapper .prev.invisible[style*='display: none'][data-v-2da14a6a],.modal-wrapper .next.invisible[style*='display:none'][data-v-2da14a6a],.modal-wrapper .next.invisible[style*='display: none'][data-v-2da14a6a]{visibility:hidden}.modal-wrapper .prev[data-v-2da14a6a]{left:0}.modal-wrapper .next[data-v-2da14a6a]{right:0}.modal-wrapper .icon-next[data-v-2da14a6a],.modal-wrapper .icon-previous[data-v-2da14a6a]{box-sizing:border-box;width:44px;height:44px;color:white;background-image:none;display:flex}.modal-wrapper .modal-container[data-v-2da14a6a]{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-2da14a6a]{width:390px;max-width:95%;max-height:90%}.modal-wrapper--normal .modal-container[data-v-2da14a6a]{max-width:90%;width:600px;max-height:90%}.modal-wrapper--large .modal-container[data-v-2da14a6a]{max-width:90%;width:900px;max-height:90%}.modal-wrapper--full .modal-container[data-v-2da14a6a]{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-2da14a6a]{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-2da14a6a],.fade-leave-active[data-v-2da14a6a]{transition:opacity 250ms}.fade-enter[data-v-2da14a6a],.fade-leave-to[data-v-2da14a6a]{opacity:0}.fade-visibility-enter[data-v-2da14a6a],.fade-visibility-leave-to[data-v-2da14a6a]{visibility:hidden;opacity:0}.modal-in-enter-active[data-v-2da14a6a],.modal-in-leave-active[data-v-2da14a6a],.modal-out-enter-active[data-v-2da14a6a],.modal-out-leave-active[data-v-2da14a6a]{transition:opacity 250ms}.modal-in-enter[data-v-2da14a6a],.modal-in-leave-to[data-v-2da14a6a],.modal-out-enter[data-v-2da14a6a],.modal-out-leave-to[data-v-2da14a6a]{opacity:0}.modal-in-enter .modal-container[data-v-2da14a6a],.modal-in-leave-to .modal-container[data-v-2da14a6a]{transform:scale(0.9)}.modal-out-enter .modal-container[data-v-2da14a6a],.modal-out-leave-to .modal-container[data-v-2da14a6a]{transform:scale(1.1)}.modal-mask .play-pause-icons .progress-ring[data-v-2da14a6a]{position:absolute;top:0;left:0;transform:rotate(-90deg)}.modal-mask .play-pause-icons .progress-ring .progress-ring__circle[data-v-2da14a6a]{transition:100ms stroke-dashoffset;transform-origin:50% 50%;animation:progressring-data-v-2da14a6a 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-2da14a6a]{animation:breath-data-v-2da14a6a 2s cubic-bezier(0.4, 0, 0.2, 1) infinite}.modal-mask .play-pause-icons--paused .progress-ring__circle[data-v-2da14a6a]{animation-play-state:paused !important}@keyframes progressring-data-v-2da14a6a{from{stroke-dashoffset:94.24778}to{stroke-dashoffset:0}}@keyframes breath-data-v-2da14a6a{0%{opacity:1}50%{opacity:0}100%{opacity:1}}\n","",{version:3,sources:["webpack://./src/assets/material-icons.css","webpack://./src/components/Modal/Modal.vue","webpack://./src/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:\"17fd6e1\"; @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: 390px;\n\t\t\tmax-width: 95%;\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}\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}\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.Z=a},5878:function(t,e,n){"use strict";var r=n(4015),o=n.n(r),i=n(3645),a=n.n(i)()(o());a.push([t.id,".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:transparent;border-width:10px}.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-bottom-width:0;border-top-color:var(--color-main-background)}.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-top-width:0;border-bottom-color:var(--color-main-background)}.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-left-width:0;border-right-color:var(--color-main-background)}.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-right-width:0;border-left-color:var(--color-main-background)}.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://./src/assets/material-icons.css","webpack://./src/components/Popover/Popover.vue"],names:[],mappings:"AAGA,sBACC,YAAa,CACb,iBAAkB,CAClB,mBAAoB,CACpB,kBAAmB,CACnB,sBAAuB,CCyGxB,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,wBAAyB,CACzB,iBAvBgB,CAElB,6BAyBE,kBA3BgB,CAElB,6CA4BG,YA9Be,CA+Bf,6BAA8B,CAC9B,YAAa,CACb,eAAgB,CAChB,qBAAsB,CACtB,6CAA8C,CAjCjD,gCAsCE,eAxCgB,CAElB,gDAyCG,SA3Ce,CA4Cf,6BAA8B,CAC9B,YAAa,CACb,eAAgB,CAChB,kBAAmB,CACnB,gDAAiD,CA9CpD,+BAmDE,gBArDgB,CAElB,+CAsDG,4BAA6B,CAC7B,UAzDe,CA0Df,cAAe,CACf,aAAc,CACd,mBAAoB,CACpB,+CAAgD,CA3DnD,8BAgEE,iBAlEgB,CAElB,8CAmEG,4BAA6B,CAC7B,WAtEe,CAuEf,cAAe,CACf,aAAc,CACd,oBAAqB,CACrB,8CAA+C,CAxElD,6BA6EE,iBAAkB,CAClB,2EAA6E,CAC7E,SAAU,CA/EZ,8BAmFE,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:\"17fd6e1\"; @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$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: transparent;\n\t\tborder-width: $arrow-width;\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-bottom-width: 0;\n\t\t\tborder-top-color: var(--color-main-background);\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-top-width: 0;\n\t\t\tborder-bottom-color: var(--color-main-background);\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-left-width: 0;\n\t\t\tborder-right-color: var(--color-main-background);\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-right-width: 0;\n\t\t\tborder-left-color: var(--color-main-background);\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.Z=a},3645:function(t){"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}},4015:function(t){"use strict";function e(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 n,r,o=(r=4,function(t){if(Array.isArray(t))return t}(n=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}}(n,r)||function(t,n){if(t){if("string"==typeof t)return e(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?e(t,n):void 0}}(n,r)||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.")}()),i=o[1],a=o[3];if(!a)return i;if("function"==typeof btoa){var s=btoa(unescape(encodeURIComponent(JSON.stringify(a)))),l="sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(s),u="/*# ".concat(l," */"),c=a.sources.map((function(t){return"/*# sourceURL=".concat(a.sourceRoot||"").concat(t," */")}));return[i].concat(c).concat([u]).join("\n")}return[i].join("\n")}},1756:function(t,e,n){"use strict";var r=n(3379),o=n.n(r),i=n(7795),a=n.n(i),s=n(569),l=n.n(s),u=n(3565),c=n.n(u),p=n(9216),f=n.n(p),d=n(4589),h=n.n(d),m=n(7087),v={};v.styleTagTransform=h(),v.setAttributes=c(),v.insert=l().bind(null,"head"),v.domAPI=a(),v.insertStyleElement=f(),o()(m.Z,v),m.Z&&m.Z.locals&&m.Z.locals},2694:function(t,e,n){"use strict";var r=n(3379),o=n.n(r),i=n(7795),a=n.n(i),s=n(569),l=n.n(s),u=n(3565),c=n.n(u),p=n(9216),f=n.n(p),d=n(4589),h=n.n(d),m=n(9224),v={};v.styleTagTransform=h(),v.setAttributes=c(),v.insert=l().bind(null,"head"),v.domAPI=a(),v.insertStyleElement=f(),o()(m.Z,v),m.Z&&m.Z.locals&&m.Z.locals},3379:function(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);return n.update(t),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:function(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:function(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:function(t,e,n){"use strict";t.exports=function(t){var e=n.nc;e&&t.setAttribute("nonce",e)}},7795:function(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:function(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))}}},491:function(t,e,n){"use strict";var r=n(8940),o=n(4403),i=(n(7911),n(1900)),a=n(3184),s=n.n(a),l=(0,i.Z)(o.Z,r.s,r.x,!1,null,"ef50c406",null);"function"==typeof s()&&s()(l),e.Z=l.exports},3083:function(t,e,n){"use strict";var r=n(9125),o=n(613),i=(n(3822),n(1900)),a=n(2192),s=n.n(a),l=(0,i.Z)(o.Z,r.s,r.x,!1,null,"2a98ba3b",null);"function"==typeof s()&&s()(l),e.Z=l.exports},7020:function(t,e,n){"use strict";n.d(e,{Z:function(){return w}});var r={name:"Popover",components:{VPopover:n(2965).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(3379),i=n.n(o),a=n(7795),s=n.n(a),l=n(569),u=n.n(l),c=n(3565),p=n.n(c),f=n(9216),d=n.n(f),h=n(4589),m=n.n(h),v=n(5878),g={};g.styleTagTransform=m(),g.setAttributes=p(),g.insert=u().bind(null,"head"),g.domAPI=s(),g.insertStyleElement=d(),i()(v.Z,g),v.Z&&v.Z.locals&&v.Z.locals;var y=n(1900),A=n(8733),b=n.n(A),C=(0,y.Z)(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 b()&&b()(C);var w=C.exports},8104:function(t,e,n){"use strict";var r=n(5494),o=(0,n(1900).Z)(r.Z,void 0,void 0,!1,null,null,null);e.Z=o.exports},4403:function(t,e,n){"use strict";var r=n(5938);e.Z=r.Z},613:function(t,e,n){"use strict";var r=n(858);e.Z=r.Z},5494:function(t,e,n){"use strict";var r=n(5041);e.Z=r.Z},7911:function(t,e,n){"use strict";n(1756)},3822:function(t,e,n){"use strict";n(2694)},3184:function(){},2192:function(){},8575:function(){},8733:function(){},8940:function(t,e,n){"use strict";n.d(e,{s:function(){return r},x:function(){return o}});var 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",(function(){return[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)])},o=[]},9125:function(t,e,n){"use strict";n.d(e,{s:function(){return r},x:function(){return o}});var r=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 vue-button 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.apply(null,arguments)},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.apply(null,arguments)},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.apply(null,arguments)},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.apply(null,arguments):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.apply(null,arguments)},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.apply(null,arguments)},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.apply(null,arguments))}],mousemove:e.onMouseFocusAction}},[r("ul",{attrs:{id:e.randomId,tabindex:"-1"}},[e.opened?[e._t("default")]:e._e()],2)])])],1)},o=[]},1900: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,{Z:function(){return r}})},6036:function(t){"use strict";t.exports=n(3955)},2640:function(t){"use strict";t.exports=n(840)},2965:function(t){"use strict";t.exports=n(6505)},2734:function(t){"use strict";t.exports=n(144)},9605:function(t){"use strict";t.exports=n(1567)},5978:function(t){"use strict";t.exports=n(8039)},3251:function(t){"use strict";t.exports=n(9578)}},e={};function r(n){var o=e[n];if(void 0!==o)return o.exports;var i=e[n]={id:n,exports:{}};return t[n](i,i.exports,r),i.exports}r.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(e,{a:e}),e},r.d=function(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.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},r.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})};var o={};return function(){"use strict";r.r(o),r.d(o,{default:function(){return U}});var t=r(7645),e=r(2640),i=r.n(e),a=n(1889),s=r.n(a),l=r(9605),u=r.n(l),c=r(5978),p=r.n(c),f=n(3817),d=r.n(f),h=n(1170),m=r.n(h),v=r(5860),g=r(4828),y=r(3648),A=r(932),b=r(9040);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(),ChevronRight:u(),Close:p(),Pause:d(),Play:m()},directives:{tooltip:b.default},mixins:[y.Z],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?(0,A.t)("Pause slideshow"):(0,A.t)("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())(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=r(3379),_=r.n(x),E=r(7795),S=r.n(E),k=r(569),O=r.n(k),B=r(3565),T=r.n(B),j=r(9216),N=r.n(j),P=r(4589),I=r.n(P),$=r(1309),z={};z.styleTagTransform=I(),z.setAttributes=T(),z.insert=O().bind(null,"head"),z.domAPI=S(),z.insertStyleElement=N(),_()($.Z,z),$.Z&&$.Z.locals&&$.Z.locals;var D=r(1900),F=r(8575),R=r.n(F),L=(0,D.Z)(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.apply(null,arguments)}}},[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.apply(null,arguments)}}},[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.apply(null,arguments)}}},[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,"2da14a6a",null);"function"==typeof R()&&R()(L);var M=L.exports;(0,t.Z)(M);var U=M}(),o}()},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(7874),p=n(2648),f=n(644),d=n(205);t.exports=function(t){return new Promise((function(e,n){var h,m=t.data,v=t.headers,g=t.responseType;function y(){t.cancelToken&&t.cancelToken.unsubscribe(h),t.signal&&t.signal.removeEventListener("abort",h)}r.isFormData(m)&&r.isStandardBrowserEnv()&&delete v["Content-Type"];var A=new XMLHttpRequest;if(t.auth){var b=t.auth.username||"",C=t.auth.password?unescape(encodeURIComponent(t.auth.password)):"";v.Authorization="Basic "+btoa(b+":"+C)}var w=s(t.baseURL,t.url);function x(){if(A){var r="getAllResponseHeaders"in A?l(A.getAllResponseHeaders()):null,i={data:g&&"text"!==g&&"json"!==g?A.response:A.responseText,status:A.status,statusText:A.statusText,headers:r,config:t,request:A};o((function(t){e(t),y()}),(function(t){n(t),y()}),i),A=null}}if(A.open(t.method.toUpperCase(),a(w,t.params,t.paramsSerializer),!0),A.timeout=t.timeout,"onloadend"in A?A.onloadend=x:A.onreadystatechange=function(){A&&4===A.readyState&&(0!==A.status||A.responseURL&&0===A.responseURL.indexOf("file:"))&&setTimeout(x)},A.onabort=function(){A&&(n(new p("Request aborted",p.ECONNABORTED,t,A)),A=null)},A.onerror=function(){n(new p("Network Error",p.ERR_NETWORK,t,A,A)),A=null},A.ontimeout=function(){var e=t.timeout?"timeout of "+t.timeout+"ms exceeded":"timeout exceeded",r=t.transitional||c;t.timeoutErrorMessage&&(e=t.timeoutErrorMessage),n(new p(e,r.clarifyTimeoutError?p.ETIMEDOUT:p.ECONNABORTED,t,A)),A=null},r.isStandardBrowserEnv()){var _=(t.withCredentials||u(w))&&t.xsrfCookieName?i.read(t.xsrfCookieName):void 0;_&&(v[t.xsrfHeaderName]=_)}"setRequestHeader"in A&&r.forEach(v,(function(t,e){void 0===m&&"content-type"===e.toLowerCase()?delete v[e]:A.setRequestHeader(e,t)})),r.isUndefined(t.withCredentials)||(A.withCredentials=!!t.withCredentials),g&&"json"!==g&&(A.responseType=t.responseType),"function"==typeof t.onDownloadProgress&&A.addEventListener("progress",t.onDownloadProgress),"function"==typeof t.onUploadProgress&&A.upload&&A.upload.addEventListener("progress",t.onUploadProgress),(t.cancelToken||t.signal)&&(h=function(t){A&&(n(!t||t&&t.type?new f:t),A.abort(),A=null)},t.cancelToken&&t.cancelToken.subscribe(h),t.signal&&(t.signal.aborted?h():t.signal.addEventListener("abort",h))),m||(m=null);var E=d(w);E&&-1===["http","https","file"].indexOf(E)?n(new p("Unsupported protocol "+E+":",p.ERR_BAD_REQUEST,t)):A.send(m)}))}},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(5546));s.Axios=i,s.CanceledError=n(644),s.CancelToken=n(4972),s.isCancel=n(6502),s.VERSION=n(7288).version,s.toFormData=n(7675),s.AxiosError=n(2648),s.Cancel=s.CanceledError,s.all=function(t){return Promise.all(t)},s.spread=n(8713),s.isAxiosError=n(6268),t.exports=s,t.exports.default=s},4972:(t,e,n)=>{"use strict";var r=n(644);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},644:(t,e,n)=>{"use strict";var r=n(2648);function o(t){r.call(this,null==t?"canceled":t,r.ERR_CANCELED),this.name="CanceledError"}n(4867).inherits(o,r,{__CANCEL__:!0}),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(4097),u=n(4875),c=u.validators;function p(t){this.defaults=t,this.interceptors={request:new i,response:new i}}p.prototype.request=function(t,e){"string"==typeof t?(e=e||{}).url=t:e=t||{},(e=s(this.defaults,e)).method?e.method=e.method.toLowerCase():this.defaults.method?e.method=this.defaults.method.toLowerCase():e.method="get";var n=e.transitional;void 0!==n&&u.assertOptions(n,{silentJSONParsing:c.transitional(c.boolean),forcedJSONParsing:c.transitional(c.boolean),clarifyTimeoutError:c.transitional(c.boolean)},!1);var r=[],o=!0;this.interceptors.request.forEach((function(t){"function"==typeof t.runWhen&&!1===t.runWhen(e)||(o=o&&t.synchronous,r.unshift(t.fulfilled,t.rejected))}));var i,l=[];if(this.interceptors.response.forEach((function(t){l.push(t.fulfilled,t.rejected)})),!o){var p=[a,void 0];for(Array.prototype.unshift.apply(p,r),p=p.concat(l),i=Promise.resolve(e);p.length;)i=i.then(p.shift(),p.shift());return i}for(var f=e;r.length;){var d=r.shift(),h=r.shift();try{f=d(f)}catch(t){h(t);break}}try{i=a(f)}catch(t){return Promise.reject(t)}for(;l.length;)i=i.then(l.shift(),l.shift());return i},p.prototype.getUri=function(t){t=s(this.defaults,t);var e=l(t.baseURL,t.url);return o(e,t.params,t.paramsSerializer)},r.forEach(["delete","get","head","options"],(function(t){p.prototype[t]=function(e,n){return this.request(s(n||{},{method:t,url:e,data:(n||{}).data}))}})),r.forEach(["post","put","patch"],(function(t){function e(e){return function(n,r,o){return this.request(s(o||{},{method:t,headers:e?{"Content-Type":"multipart/form-data"}:{},url:n,data:r}))}}p.prototype[t]=e(),p.prototype[t+"Form"]=e(!0)})),t.exports=p},2648:(t,e,n)=>{"use strict";var r=n(4867);function o(t,e,n,r,o){Error.call(this),this.message=t,this.name="AxiosError",e&&(this.code=e),n&&(this.config=n),r&&(this.request=r),o&&(this.response=o)}r.inherits(o,Error,{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}}});var i=o.prototype,a={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED"].forEach((function(t){a[t]={value:t}})),Object.defineProperties(o,a),Object.defineProperty(i,"isAxiosError",{value:!0}),o.from=function(t,e,n,a,s,l){var u=Object.create(i);return r.toFlatObject(t,u,(function(t){return t!==Error.prototype})),o.call(u,t.message,e,n,a,s),u.name=t.name,l&&Object.assign(u,l),u},t.exports=o},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}},3572:(t,e,n)=>{"use strict";var r=n(4867),o=n(8527),i=n(6502),a=n(5546),s=n(644);function l(t){if(t.cancelToken&&t.cancelToken.throwIfRequested(),t.signal&&t.signal.aborted)throw new s}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)}))}},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,beforeRedirect: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(2648);t.exports=function(t,e,n){var o=n.config.validateStatus;n.status&&o&&!o(n.status)?e(new r("Request failed with status code "+n.status,[r.ERR_BAD_REQUEST,r.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n)):t(n)}},8527:(t,e,n)=>{"use strict";var r=n(4867),o=n(5546);t.exports=function(t,e,n){var i=this||o;return r.forEach(n,(function(n){t=n.call(i,t,e)})),t}},5546:(t,e,n)=>{"use strict";var r=n(4155),o=n(4867),i=n(6016),a=n(2648),s=n(7874),l=n(7675),u={"Content-Type":"application/x-www-form-urlencoded"};function c(t,e){!o.isUndefined(t)&&o.isUndefined(t["Content-Type"])&&(t["Content-Type"]=e)}var p,f={transitional:s,adapter:(("undefined"!=typeof XMLHttpRequest||void 0!==r&&"[object process]"===Object.prototype.toString.call(r))&&(p=n(5448)),p),transformRequest:[function(t,e){if(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))return t;if(o.isArrayBufferView(t))return t.buffer;if(o.isURLSearchParams(t))return c(e,"application/x-www-form-urlencoded;charset=utf-8"),t.toString();var n,r=o.isObject(t),a=e&&e["Content-Type"];if((n=o.isFileList(t))||r&&"multipart/form-data"===a){var s=this.env&&this.env.FormData;return l(n?{"files[]":t}:t,s&&new s)}return r||"application/json"===a?(c(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||f.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.from(t,a.ERR_BAD_RESPONSE,this,null,this.response);throw t}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:n(1623)},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*"}}};o.forEach(["delete","get","head"],(function(t){f.headers[t]={}})),o.forEach(["post","put","patch"],(function(t){f.headers[t]=o.merge(u)})),t.exports=f},7874:t=>{"use strict";t.exports={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1}},7288:t=>{t.exports={version:"0.27.2"}},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,e,n)=>{"use strict";var r=n(4867);t.exports=function(t){return r.isObject(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])}))}},1623:t=>{t.exports=null},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}},205:t=>{"use strict";t.exports=function(t){var e=/^([-+\w]{1,25})(:?\/\/|:)/.exec(t);return e&&e[1]||""}},8713:t=>{"use strict";t.exports=function(t){return function(e){return t.apply(null,e)}}},7675:(t,e,n)=>{"use strict";var r=n(3085).Buffer,o=n(4867);t.exports=function(t,e){e=e||new FormData;var n=[];function i(t){return null===t?"":o.isDate(t)?t.toISOString():o.isArrayBuffer(t)||o.isTypedArray(t)?"function"==typeof Blob?new Blob([t]):r.from(t):t}return function t(r,a){if(o.isPlainObject(r)||o.isArray(r)){if(-1!==n.indexOf(r))throw Error("Circular reference detected in "+a);n.push(r),o.forEach(r,(function(n,r){if(!o.isUndefined(n)){var s,l=a?a+"."+r:r;if(n&&!a&&"object"==typeof n)if(o.endsWith(r,"{}"))n=JSON.stringify(n);else if(o.endsWith(r,"[]")&&(s=o.toArray(n)))return void s.forEach((function(t){!o.isUndefined(t)&&e.append(l,i(t))}));t(n,l)}})),n.pop()}else e.append(a,i(r))}(t),e}},4875:(t,e,n)=>{"use strict";var r=n(5108),o=n(7288).version,i=n(2648),a={};["object","boolean","number","function","string","symbol"].forEach((function(t,e){a[t]=function(n){return typeof n===t||"a"+(e<1?"n ":" ")+t}}));var s={};a.transitional=function(t,e,n){function a(t,e){return"[Axios v"+o+"] Transitional option '"+t+"'"+e+(n?". "+n:"")}return function(n,o,l){if(!1===t)throw new i(a(o," has been removed"+(e?" in "+e:"")),i.ERR_DEPRECATED);return e&&!s[o]&&(s[o]=!0,r.warn(a(o," has been deprecated since v"+e+" and will be removed in the near future"))),!t||t(n,o,l)}},t.exports={assertOptions:function(t,e,n){if("object"!=typeof t)throw new i("options must be an object",i.ERR_BAD_OPTION_VALUE);for(var r=Object.keys(t),o=r.length;o-- >0;){var a=r[o],s=e[a];if(s){var l=t[a],u=void 0===l||s(l,a,t);if(!0!==u)throw new i("option "+a+" must be "+u,i.ERR_BAD_OPTION_VALUE)}else if(!0!==n)throw new i("Unknown option "+a,i.ERR_BAD_OPTION)}},validators:a}},4867:(t,e,n)=>{"use strict";var r,o=n(1849),i=Object.prototype.toString,a=(r=Object.create(null),function(t){var e=i.call(t);return r[e]||(r[e]=e.slice(8,-1).toLowerCase())});function s(t){return t=t.toLowerCase(),function(e){return a(e)===t}}function l(t){return Array.isArray(t)}function u(t){return void 0===t}var c=s("ArrayBuffer");function p(t){return null!==t&&"object"==typeof t}function f(t){if("object"!==a(t))return!1;var e=Object.getPrototypeOf(t);return null===e||e===Object.prototype}var d=s("Date"),h=s("File"),m=s("Blob"),v=s("FileList");function g(t){return"[object Function]"===i.call(t)}var y=s("URLSearchParams");function A(t,e){if(null!=t)if("object"!=typeof t&&(t=[t]),l(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)}var b,C=(b="undefined"!=typeof Uint8Array&&Object.getPrototypeOf(Uint8Array),function(t){return b&&t instanceof b});t.exports={isArray:l,isArrayBuffer:c,isBuffer:function(t){return null!==t&&!u(t)&&null!==t.constructor&&!u(t.constructor)&&"function"==typeof t.constructor.isBuffer&&t.constructor.isBuffer(t)},isFormData:function(t){var e="[object FormData]";return t&&("function"==typeof FormData&&t instanceof FormData||i.call(t)===e||g(t.toString)&&t.toString()===e)},isArrayBufferView:function(t){return"undefined"!=typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(t):t&&t.buffer&&c(t.buffer)},isString:function(t){return"string"==typeof t},isNumber:function(t){return"number"==typeof t},isObject:p,isPlainObject:f,isUndefined:u,isDate:d,isFile:h,isBlob:m,isFunction:g,isStream:function(t){return p(t)&&g(t.pipe)},isURLSearchParams:y,isStandardBrowserEnv:function(){return("undefined"==typeof navigator||"ReactNative"!==navigator.product&&"NativeScript"!==navigator.product&&"NS"!==navigator.product)&&("undefined"!=typeof window&&"undefined"!=typeof document)},forEach:A,merge:function t(){var e={};function n(n,r){f(e[r])&&f(n)?e[r]=t(e[r],n):f(n)?e[r]=t({},n):l(n)?e[r]=n.slice():e[r]=n}for(var r=0,o=arguments.length;r<o;r++)A(arguments[r],n);return e},extend:function(t,e,n){return A(e,(function(e,r){t[r]=n&&"function"==typeof e?o(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},inherits:function(t,e,n,r){t.prototype=Object.create(e.prototype,r),t.prototype.constructor=t,n&&Object.assign(t.prototype,n)},toFlatObject:function(t,e,n){var r,o,i,a={};e=e||{};do{for(o=(r=Object.getOwnPropertyNames(t)).length;o-- >0;)a[i=r[o]]||(e[i]=t[i],a[i]=!0);t=Object.getPrototypeOf(t)}while(t&&(!n||n(t,e))&&t!==Object.prototype);return e},kindOf:a,kindOfTest:s,endsWith:function(t,e,n){t=String(t),(void 0===n||n>t.length)&&(n=t.length),n-=e.length;var r=t.indexOf(e,n);return-1!==r&&r===n},toArray:function(t){if(!t)return null;var e=t.length;if(u(e))return null;for(var n=new Array(e);e-- >0;)n[e]=t[e];return n},isTypedArray:C,isFileList:v}},9742:(t,e)=>{"use strict";e.byteLength=function(t){var e=l(t),n=e[0],r=e[1];return 3*(n+r)/4-r},e.toByteArray=function(t){var e,n,i=l(t),a=i[0],s=i[1],u=new o(function(t,e,n){return 3*(e+n)/4-n}(0,a,s)),c=0,p=s>0?a-4:a;for(n=0;n<p;n+=4)e=r[t.charCodeAt(n)]<<18|r[t.charCodeAt(n+1)]<<12|r[t.charCodeAt(n+2)]<<6|r[t.charCodeAt(n+3)],u[c++]=e>>16&255,u[c++]=e>>8&255,u[c++]=255&e;2===s&&(e=r[t.charCodeAt(n)]<<2|r[t.charCodeAt(n+1)]>>4,u[c++]=255&e);1===s&&(e=r[t.charCodeAt(n)]<<10|r[t.charCodeAt(n+1)]<<4|r[t.charCodeAt(n+2)]>>2,u[c++]=e>>8&255,u[c++]=255&e);return u},e.fromByteArray=function(t){for(var e,r=t.length,o=r%3,i=[],a=16383,s=0,l=r-o;s<l;s+=a)i.push(u(t,s,s+a>l?l:s+a));1===o?(e=t[r-1],i.push(n[e>>2]+n[e<<4&63]+"==")):2===o&&(e=(t[r-2]<<8)+t[r-1],i.push(n[e>>10]+n[e>>4&63]+n[e<<2&63]+"="));return i.join("")};for(var n=[],r=[],o="undefined"!=typeof Uint8Array?Uint8Array:Array,i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",a=0,s=i.length;a<s;++a)n[a]=i[a],r[i.charCodeAt(a)]=a;function l(t){var e=t.length;if(e%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var n=t.indexOf("=");return-1===n&&(n=e),[n,n===e?0:4-n%4]}function u(t,e,r){for(var o,i,a=[],s=e;s<r;s+=3)o=(t[s]<<16&16711680)+(t[s+1]<<8&65280)+(255&t[s+2]),a.push(n[(i=o)>>18&63]+n[i>>12&63]+n[i>>6&63]+n[63&i]);return a.join("")}r["-".charCodeAt(0)]=62,r["_".charCodeAt(0)]=63},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,E=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)E[x]=y;else if(y)switch(t){case 3:return!0;case 5:return g;case 6:return x;case 2:l.call(E,g)}else if(c)return!1;return p?-1:u||c?c:E}};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,E=p((function(){x.has(1)})),S=f((function(t){new y(t)})),k=!v&&p((function(){for(var t=new y,e=5;e--;)t[g](e,e);return!t.has(-0)}));S||((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),(E||k)&&(w("delete"),w("has"),m&&w("get")),(k||_)&&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,_,E,S=function(t){if(t===d&&j)return j;if(!m&&t in B)return B[t];switch(t){case g:case y:case A:return function(){return new n(this,t)}}return function(){return new n(this)}},k=e+" Iterator",O=!1,B=t.prototype,T=B[v]||B["@@iterator"]||d&&B[d],j=!m&&T||S(d),N="Array"==e&&B.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,k,!0,!0),p&&(f[k]=b))),d==y&&T&&T.name!==y&&(O=!0,j=function(){return T.call(this)}),p&&!w||B[v]===j||l(B,v,j),f[e]=j,d)if(_={values:S(y),keys:C?j:S(g),entries:S(A)},w)for(E in _)(m||O||!(E in B))&&u(B,E,_[E]);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})},9070:(t,e,n)=>{var r=n(2109),o=n(9781);r({target:"Object",stat:!0,forced:!o,sham:!o},{defineProperty:n(3070).f})},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,_="",E=0,S=0;S<C.length;S++){w=C[S];for(var k=String(w[0]),O=p(f(s(w.index),d.length),0),B=[],T=1;T<w.length;T++)B.push(void 0===(x=w[T])?x:String(x));var j=w.groups;if(h){var N=[k].concat(B,O,d);void 0!==j&&N.push(j);var P=String(r.apply(void 0,N))}else P=A(k,d,O,B,j,r);O>=E&&(_+=d.slice(E,O)+P,E=O+k.length)}return _+d.slice(E)}];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;border-radius:40px}#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;border-radius:40px}.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:"AA2IC,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,CACA,kBAAA,CAGD,8CACC,2CAAA,CACA,qCAAA,CACA,oCAAA,CACA,SAAA,CACA,kBAAA,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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\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\tborder-radius: 40px;\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\tborder-radius: 40px;\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},333:(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-10738c5b]{background-color:rgba(0,0,0,.7)}.modal-mask[data-v-10738c5b] .modal-wrapper{position:relative}.modal-mask[data-v-10738c5b] .modal-container{display:flex;flex-direction:column;position:relative}.modal-mask .modal-body[data-v-10738c5b]{flex-grow:1;display:flex;overflow-x:hidden;overflow-y:auto}.modal-mask .modal-body>div[data-v-10738c5b]{display:flex;flex-grow:1;align-items:center;justify-content:center}.modal-header[data-v-10738c5b]{flex-shrink:0}.modal-header .firstrunwizard-header[data-v-10738c5b]{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-10738c5b]{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-10738c5b]{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-10738c5b]{align-self:flex-end}.modal-footer[data-v-10738c5b]{overflow:hidden;position:absolute;display:flex;bottom:0;right:0}.modal-footer button[data-v-10738c5b]{margin:10px}.next-enter-active[data-v-10738c5b],.next-leave-active[data-v-10738c5b],.previous-enter-active[data-v-10738c5b],.previous-leave-active[data-v-10738c5b]{transition:transform .1s,opacity .25s}.next-enter[data-v-10738c5b]{transform:translateX(50%);opacity:0}.next-leave-to[data-v-10738c5b]{transform:translateX(-50%);opacity:0}.previous-enter[data-v-10738c5b]{transform:translateX(-50%);opacity:0}.previous-leave-to[data-v-10738c5b]{transform:translateX(50%);opacity:0}","",{version:3,sources:["webpack://./src/App.vue"],names:[],mappings:"AAqVA,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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\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},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,E=/\\(\\)?/g,S=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,E,"$1"):e||t})),r},k=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=S(t),r=n.length>0?n[0]:"",i=k("%"+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 E(t,e,n){v(O(e),(function(e){t.removeEventListener(e,n,!1)}))}function S(t,e){for(;t;){if(t==e)return!0;t=t.parentNode}return!1}function k(t,e){return t.indexOf(e)>-1}function O(t){return t.trim().split(/\s+/g)}function B(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 j(t,e,n){for(var r=[],o=[],i=0;i<t.length;){var a=e?t[i][e]:t[i];B(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 I(t){var e=t.ownerDocument||t;return e.defaultView||e.parentWindow||o}var $="ontouchstart"in o,z=N(o,"PointerEvent")!==s,D=$&&/mobile|tablet|ip(ad|hone|od)|android/i.test(navigator.userAgent),F="touch",R="mouse",L=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=K(l,u),e.distance=Y(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=Z(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,Y(h[0],h[1],U)/Y(p[0],p[1],U)):1,e.rotation=a?function(t,e){return K(e[1],e[0],U)+K(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=Z(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;S(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 Z(t,e){return t===e?1:f(t)>=f(e)?t<0?2:4:e<0?8:16}function Y(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 K(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&&_(I(this.element),this.evWin,this.domHandler)},destroy:function(){this.evEl&&E(this.element,this.evEl,this.domHandler),this.evTarget&&E(this.target,this.evTarget,this.domHandler),this.evWin&&E(I(this.element),this.evWin,this.domHandler)}};var X={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=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:R,srcEvent:t}))}});var et={pointerdown:1,pointermove:2,pointerup:4,pointercancel:8,pointerout:8},nt={2:F,3:"pen",4:R,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=B(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=j(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:F,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 S(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?[j(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:F,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==F,o=n.pointerType==R;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",Et="pan-x",St="pan-y",kt=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&&kt[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(k(t,_t))return _t;var e=k(t,Et),n=k(t,St);if(e&&n)return _t;if(e||n)return e?Et:St;if(k(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=k(r,_t)&&!kt.none,i=k(r,St)&&!kt["pan-y"],a=k(r,Et)&&!kt["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&L?this.preventSrc(e):void 0}},preventSrc:function(t){this.manager.session.prevented=!0,t.preventDefault()}};var Bt=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 jt(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 It(){Tt.apply(this,arguments)}function $t(){It.apply(this,arguments),this.pX=null,this.pY=null}function zt(){It.apply(this,arguments)}function Dt(){Tt.apply(this,arguments),this._timer=null,this._input=null}function Ft(){It.apply(this,arguments)}function Rt(){It.apply(this,arguments)}function Lt(){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===B(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=B(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+jt(n)),r(e.options.event),t.additionalEvent&&r(t.additionalEvent),n>=8&&r(e.options.event+jt(n))},tryEmit:function(t){if(this.canEmit())return this.emit(t);this.state=Bt},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=Bt);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(It,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:Bt}}),b($t,It,{defaults:{event:"pan",threshold:10,pointers:1,direction:30},getTouchAction:function(){var t=this.options.direction,e=[];return 6&t&&e.push(St),t&L&&e.push(Et),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 It.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,It,{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(Dt,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 Bt},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(Ft,It,{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(Rt,It,{defaults:{event:"swipe",threshold:10,velocity:.3,direction:30,pointers:1},getTouchAction:function(){return $t.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&L&&(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(Lt,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||Y(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 Bt},failTimeout:function(){return this._timer=h((function(){this.state=Bt}),this.options.interval,this),Bt},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:[[Ft,{enable:!1}],[zt,{enable:!1},["rotate"]],[Rt,{direction:6}],[$t,{direction:6},["swipe"]],[Lt],[Lt,{event:"doubletap",taps:2},["tap"]],[Dt]],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:D?dt:$?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=B(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(B(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:Bt,DIRECTION_NONE:1,DIRECTION_LEFT:2,DIRECTION_RIGHT:4,DIRECTION_UP:8,DIRECTION_DOWN:16,DIRECTION_HORIZONTAL:6,DIRECTION_VERTICAL:L,DIRECTION_ALL:30,Manager:Ut,Input:G,TouchAction:Ot,TouchInput:dt,MouseInput:tt,PointerEventInput:it,TouchMouseInput:mt,SingleTouchInput:ut,Recognizer:Tt,AttrRecognizer:It,Tap:Lt,Pan:$t,Swipe:Rt,Pinch:zt,Rotate:Ft,Press:Dt,on:_,off:E,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)},645:(t,e)=>{e.read=function(t,e,n,r,o){var i,a,s=8*o-r-1,l=(1<<s)-1,u=l>>1,c=-7,p=n?o-1:0,f=n?-1:1,d=t[e+p];for(p+=f,i=d&(1<<-c)-1,d>>=-c,c+=s;c>0;i=256*i+t[e+p],p+=f,c-=8);for(a=i&(1<<-c)-1,i>>=-c,c+=r;c>0;a=256*a+t[e+p],p+=f,c-=8);if(0===i)i=1-u;else{if(i===l)return a?NaN:1/0*(d?-1:1);a+=Math.pow(2,r),i-=u}return(d?-1:1)*a*Math.pow(2,i-r)},e.write=function(t,e,n,r,o,i){var a,s,l,u=8*i-o-1,c=(1<<u)-1,p=c>>1,f=23===o?Math.pow(2,-24)-Math.pow(2,-77):0,d=r?0:i-1,h=r?1:-1,m=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(s=isNaN(e)?1:0,a=c):(a=Math.floor(Math.log(e)/Math.LN2),e*(l=Math.pow(2,-a))<1&&(a--,l*=2),(e+=a+p>=1?f/l:f*Math.pow(2,1-p))*l>=2&&(a++,l/=2),a+p>=c?(s=0,a=c):a+p>=1?(s=(e*l-1)*Math.pow(2,o),a+=p):(s=e*Math.pow(2,p-1)*Math.pow(2,o),a=0));o>=8;t[n+d]=255&s,d+=h,s/=256,o-=8);for(a=a<<o|s,u+=o;u>0;t[n+d]=255&a,d+=h,a/=256,u-=8);t[n+d-h]|=128*m}},5717: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}}},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(3083),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(882),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.*?")+"$"),E=h.Symbol,S=v.splice,k=F(h,"Map"),O=F(Object,"create"),B=E?E.prototype:void 0,T=B?B.toString:void 0;function j(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 I(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 $(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:R(n);for(var r=0,o=e.length;null!=t&&r<o;)t=t[L(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 D(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 z(n)?n:void 0}j.prototype.clear=function(){this.__data__=O?O(null):{}},j.prototype.delete=function(t){return this.has(t)&&delete this.__data__[t]},j.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},j.prototype.has=function(t){var e=this.__data__;return O?void 0!==e[t]:w.call(e,t)},j.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=I(e,t);return!(n<0)&&(n==e.length-1?e.pop():S.call(e,n,1),!0)},N.prototype.get=function(t){var e=this.__data__,n=I(e,t);return n<0?void 0:e[n][1]},N.prototype.has=function(t){return I(this.__data__,t)>-1},N.prototype.set=function(t,e){var n=this.__data__,r=I(n,t);return r<0?n.push([t,e]):n[r][1]=e,this},P.prototype.clear=function(){this.__data__={hash:new j,map:new(k||N),string:new j}},P.prototype.delete=function(t){return D(this,t).delete(t)},P.prototype.get=function(t){return D(this,t).get(t)},P.prototype.has=function(t){return D(this,t).has(t)},P.prototype.set=function(t,e){return D(this,t).set(t,e),this};var R=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 L(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:$(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 E=w&&h.call(t,"__wrapped__"),S=x&&h.call(e,"__wrapped__");if(E||S){var k=E?t.value():t,O=S?e.value():e;return g||(g=new r),v(k,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 E=b?b(w,x,n+"",t,e,C):void 0,S=void 0===E;if(S){var k=u(x),O=!k&&p(x),B=!k&&!O&&m(x);E=x,k||O||B?u(w)?E=w:c(w)?E=a(w):O?(S=!1,E=o(x,!0)):B?(S=!1,E=i(x,!0)):E=[]:h(x)||l(x)?(E=w,l(w)?E=g(w):d(w)&&!f(w)||(E=s(x))):S=!1}S&&(C.set(x,E),A(E,x,y,b,C),C.delete(x)),r(t,n,E)}}},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=k,_={};function E(t){if(t.message instanceof Error)throw t.message;throw new h(t)}function S(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 k(){for(var t=arguments.length,e=new Array(t),n=0;n<t;n++)e[n]=arguments[n];S.apply(void 0,[k,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=k,x.equal=function t(e,n,r){if(arguments.length<2)throw new d("actual","expected");e!=n&&E({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&&E({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)||E({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)&&E({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)||E({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)&&E({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)||E({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)&&E({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 B(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}E({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])||B(t,e,o,n,s,r)})),!0}return void 0!==e.prototype&&t instanceof e||!Error.isPrototypeOf(e)&&!0===e.call({},t)}function j(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 I(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";E({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 $(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";E({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];S.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];I.apply(void 0,[t,j(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 I.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];$.apply(void 0,[t,j(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 $.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 E=Math.max(c.length,p.length);if(0===E){var S=u.split("\n");if(S.length>30)for(S[26]="".concat(g,"...").concat(b);S.length>27;)S.pop();return"".concat(C.notIdentical,"\n\n").concat(S.join("\n"),"\n")}f>3&&(s="\n".concat(g,"...").concat(b).concat(s),l=!0),""!==o&&(s="\n ".concat(o).concat(s),o="");var k=0,O=C[n]+"\n".concat(y,"+ actual").concat(b," ").concat(A,"- expected").concat(b),B=" ".concat(g,"...").concat(b," Lines skipped");for(f=0;f<E;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]),k++),i+="\n ".concat(p[f-1]),k++),a=f,o+="\n".concat(A,"-").concat(b," ").concat(p[f]),k++;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]),k++),i+="\n ".concat(c[f-1]),k++),a=f,i+="\n".concat(y,"+").concat(b," ").concat(c[f]),k++;else{var j=p[f],N=c[f],P=N!==j&&(!v(N,",")||N.slice(0,-1)!==j);P&&v(j,",")&&j.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]),k++),i+="\n ".concat(c[f-1]),k++),a=f,i+="\n".concat(y,"+").concat(b," ").concat(N),o+="\n".concat(A,"-").concat(b," ").concat(j),k+=2):(i+=o,o="",1!==T&&0!==f||(i+="\n ".concat(N),k++))}if(k>20&&f<E-2)return"".concat(O).concat(B,"\n").concat(i,"\n").concat(g,"...").concat(b).concat(o,"\n")+"".concat(g,"...").concat(b)}return"".concat(O).concat(l?B:"","\n").concat(i).concat(o).concat(s).concat(h)}var E=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 E=x(u),S="",k=C[i];"notDeepEqual"===i||"notEqual"===i?(E="".concat(C[i],"\n\n").concat(E)).length>1024&&(E="".concat(E.slice(0,1021),"...")):(S="".concat(x(c)),E.length>512&&(E="".concat(E.slice(0,509),"...")),S.length>512&&(S="".concat(S.slice(0,509),"...")),"deepEqual"===i||"equal"===i?E="".concat(k,"\n\n").concat(E,"\n\nshould equal\n\n"):S=" ".concat(i," ").concat(S)),n=a(this,f(e).call(this,"".concat(E).concat(S)))}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=E},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,E=m.isStringObject,S=m.isBooleanObject,k=m.isBigIntObject,O=m.isSymbolObject,B=m.isFloat32Array,T=m.isFloat64Array;function j(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(j).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 I(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||!B(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 j=N(t),I=N(e);return j.length===I.length&&z(t,e,n,r,0,j)}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)):E(t)?E(e)&&String.prototype.valueOf.call(t)===String.prototype.valueOf.call(e):S(t)?S(e)&&Boolean.prototype.valueOf.call(t)===Boolean.prototype.valueOf.call(e):k(t)?k(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 $(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&&$(e,h).length!==c)return!1}else{var m=u(e);if(0!==m.length&&0!==$(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 D(t,e,n,r){for(var o=a(t),i=0;i<o.length;i++){var s=o[i];if(I(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(c(t))return!1}return!0}function R(t,e,n){var r=F(n);return null!=r?r:e.has(r)&&!t.has(r)}function L(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)||!I(r,a,!1,o))&&(!t.has(i)&&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(I(n,u,o,i)&&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(!R(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(!D(i,f,n,r))return!1}else if(!n&&!t.has(f)&&!D(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)||!I(f,d,n,i)){if(n)return!1;if(!L(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)&&I(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)||!I(t[d],e[d],n,l))return!1}return p.length===Object.keys(e).length}if(!f(e,c)||!I(t[c],e[c],n,l))return!1}for(c=0;c<i.length;c++){var h=i[c];if(!I(t[h],e[h],n,l))return!1}return!0}t.exports={isDeepEqual:function(t,e){return I(t,e,false)},isDeepStrictEqual:function(t,e){return I(t,e,true)}}},3085:(t,e,n)=>{"use strict";var r=n(5108);const o=n(9742),i=n(645),a="function"==typeof Symbol&&"function"==typeof Symbol.for?Symbol.for("nodejs.util.inspect.custom"):null;e.Buffer=u,e.SlowBuffer=function(t){+t!=t&&(t=0);return u.alloc(+t)},e.INSPECT_MAX_BYTES=50;const s=2147483647;function l(t){if(t>s)throw new RangeError('The value "'+t+'" is invalid for option "size"');const e=new Uint8Array(t);return Object.setPrototypeOf(e,u.prototype),e}function u(t,e,n){if("number"==typeof t){if("string"==typeof e)throw new TypeError('The "string" argument must be of type string. Received type number');return f(t)}return c(t,e,n)}function c(t,e,n){if("string"==typeof t)return function(t,e){"string"==typeof e&&""!==e||(e="utf8");if(!u.isEncoding(e))throw new TypeError("Unknown encoding: "+e);const n=0|v(t,e);let r=l(n);const o=r.write(t,e);o!==n&&(r=r.slice(0,o));return r}(t,e);if(ArrayBuffer.isView(t))return function(t){if(K(t,Uint8Array)){const e=new Uint8Array(t);return h(e.buffer,e.byteOffset,e.byteLength)}return d(t)}(t);if(null==t)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof t);if(K(t,ArrayBuffer)||t&&K(t.buffer,ArrayBuffer))return h(t,e,n);if("undefined"!=typeof SharedArrayBuffer&&(K(t,SharedArrayBuffer)||t&&K(t.buffer,SharedArrayBuffer)))return h(t,e,n);if("number"==typeof t)throw new TypeError('The "value" argument must not be of type number. Received type number');const r=t.valueOf&&t.valueOf();if(null!=r&&r!==t)return u.from(r,e,n);const o=function(t){if(u.isBuffer(t)){const e=0|m(t.length),n=l(e);return 0===n.length||t.copy(n,0,0,e),n}if(void 0!==t.length)return"number"!=typeof t.length||X(t.length)?l(0):d(t);if("Buffer"===t.type&&Array.isArray(t.data))return d(t.data)}(t);if(o)return o;if("undefined"!=typeof Symbol&&null!=Symbol.toPrimitive&&"function"==typeof t[Symbol.toPrimitive])return u.from(t[Symbol.toPrimitive]("string"),e,n);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof t)}function p(t){if("number"!=typeof t)throw new TypeError('"size" argument must be of type number');if(t<0)throw new RangeError('The value "'+t+'" is invalid for option "size"')}function f(t){return p(t),l(t<0?0:0|m(t))}function d(t){const e=t.length<0?0:0|m(t.length),n=l(e);for(let r=0;r<e;r+=1)n[r]=255&t[r];return n}function h(t,e,n){if(e<0||t.byteLength<e)throw new RangeError('"offset" is outside of buffer bounds');if(t.byteLength<e+(n||0))throw new RangeError('"length" is outside of buffer bounds');let r;return r=void 0===e&&void 0===n?new Uint8Array(t):void 0===n?new Uint8Array(t,e):new Uint8Array(t,e,n),Object.setPrototypeOf(r,u.prototype),r}function m(t){if(t>=s)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+s.toString(16)+" bytes");return 0|t}function v(t,e){if(u.isBuffer(t))return t.length;if(ArrayBuffer.isView(t)||K(t,ArrayBuffer))return t.byteLength;if("string"!=typeof t)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof t);const n=t.length,r=arguments.length>2&&!0===arguments[2];if(!r&&0===n)return 0;let o=!1;for(;;)switch(e){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":return H(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return Z(t).length;default:if(o)return r?-1:H(t).length;e=(""+e).toLowerCase(),o=!0}}function g(t,e,n){let r=!1;if((void 0===e||e<0)&&(e=0),e>this.length)return"";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return"";if((n>>>=0)<=(e>>>=0))return"";for(t||(t="utf8");;)switch(t){case"hex":return j(this,e,n);case"utf8":case"utf-8":return k(this,e,n);case"ascii":return B(this,e,n);case"latin1":case"binary":return T(this,e,n);case"base64":return S(this,e,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return N(this,e,n);default:if(r)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),r=!0}}function y(t,e,n){const r=t[e];t[e]=t[n],t[n]=r}function A(t,e,n,r,o){if(0===t.length)return-1;if("string"==typeof n?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),X(n=+n)&&(n=o?0:t.length-1),n<0&&(n=t.length+n),n>=t.length){if(o)return-1;n=t.length-1}else if(n<0){if(!o)return-1;n=0}if("string"==typeof e&&(e=u.from(e,r)),u.isBuffer(e))return 0===e.length?-1:b(t,e,n,r,o);if("number"==typeof e)return e&=255,"function"==typeof Uint8Array.prototype.indexOf?o?Uint8Array.prototype.indexOf.call(t,e,n):Uint8Array.prototype.lastIndexOf.call(t,e,n):b(t,[e],n,r,o);throw new TypeError("val must be string, number or Buffer")}function b(t,e,n,r,o){let i,a=1,s=t.length,l=e.length;if(void 0!==r&&("ucs2"===(r=String(r).toLowerCase())||"ucs-2"===r||"utf16le"===r||"utf-16le"===r)){if(t.length<2||e.length<2)return-1;a=2,s/=2,l/=2,n/=2}function u(t,e){return 1===a?t[e]:t.readUInt16BE(e*a)}if(o){let r=-1;for(i=n;i<s;i++)if(u(t,i)===u(e,-1===r?0:i-r)){if(-1===r&&(r=i),i-r+1===l)return r*a}else-1!==r&&(i-=i-r),r=-1}else for(n+l>s&&(n=s-l),i=n;i>=0;i--){let n=!0;for(let r=0;r<l;r++)if(u(t,i+r)!==u(e,r)){n=!1;break}if(n)return i}return-1}function C(t,e,n,r){n=Number(n)||0;const o=t.length-n;r?(r=Number(r))>o&&(r=o):r=o;const i=e.length;let a;for(r>i/2&&(r=i/2),a=0;a<r;++a){const r=parseInt(e.substr(2*a,2),16);if(X(r))return a;t[n+a]=r}return a}function w(t,e,n,r){return Y(H(e,t.length-n),t,n,r)}function x(t,e,n,r){return Y(function(t){const e=[];for(let n=0;n<t.length;++n)e.push(255&t.charCodeAt(n));return e}(e),t,n,r)}function _(t,e,n,r){return Y(Z(e),t,n,r)}function E(t,e,n,r){return Y(function(t,e){let n,r,o;const i=[];for(let a=0;a<t.length&&!((e-=2)<0);++a)n=t.charCodeAt(a),r=n>>8,o=n%256,i.push(o),i.push(r);return i}(e,t.length-n),t,n,r)}function S(t,e,n){return 0===e&&n===t.length?o.fromByteArray(t):o.fromByteArray(t.slice(e,n))}function k(t,e,n){n=Math.min(t.length,n);const r=[];let o=e;for(;o<n;){const e=t[o];let i=null,a=e>239?4:e>223?3:e>191?2:1;if(o+a<=n){let n,r,s,l;switch(a){case 1:e<128&&(i=e);break;case 2:n=t[o+1],128==(192&n)&&(l=(31&e)<<6|63&n,l>127&&(i=l));break;case 3:n=t[o+1],r=t[o+2],128==(192&n)&&128==(192&r)&&(l=(15&e)<<12|(63&n)<<6|63&r,l>2047&&(l<55296||l>57343)&&(i=l));break;case 4:n=t[o+1],r=t[o+2],s=t[o+3],128==(192&n)&&128==(192&r)&&128==(192&s)&&(l=(15&e)<<18|(63&n)<<12|(63&r)<<6|63&s,l>65535&&l<1114112&&(i=l))}}null===i?(i=65533,a=1):i>65535&&(i-=65536,r.push(i>>>10&1023|55296),i=56320|1023&i),r.push(i),o+=a}return function(t){const e=t.length;if(e<=O)return String.fromCharCode.apply(String,t);let n="",r=0;for(;r<e;)n+=String.fromCharCode.apply(String,t.slice(r,r+=O));return n}(r)}e.kMaxLength=s,u.TYPED_ARRAY_SUPPORT=function(){try{const t=new Uint8Array(1),e={foo:function(){return 42}};return Object.setPrototypeOf(e,Uint8Array.prototype),Object.setPrototypeOf(t,e),42===t.foo()}catch(t){return!1}}(),u.TYPED_ARRAY_SUPPORT||void 0===r||"function"!=typeof r.error||r.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support."),Object.defineProperty(u.prototype,"parent",{enumerable:!0,get:function(){if(u.isBuffer(this))return this.buffer}}),Object.defineProperty(u.prototype,"offset",{enumerable:!0,get:function(){if(u.isBuffer(this))return this.byteOffset}}),u.poolSize=8192,u.from=function(t,e,n){return c(t,e,n)},Object.setPrototypeOf(u.prototype,Uint8Array.prototype),Object.setPrototypeOf(u,Uint8Array),u.alloc=function(t,e,n){return function(t,e,n){return p(t),t<=0?l(t):void 0!==e?"string"==typeof n?l(t).fill(e,n):l(t).fill(e):l(t)}(t,e,n)},u.allocUnsafe=function(t){return f(t)},u.allocUnsafeSlow=function(t){return f(t)},u.isBuffer=function(t){return null!=t&&!0===t._isBuffer&&t!==u.prototype},u.compare=function(t,e){if(K(t,Uint8Array)&&(t=u.from(t,t.offset,t.byteLength)),K(e,Uint8Array)&&(e=u.from(e,e.offset,e.byteLength)),!u.isBuffer(t)||!u.isBuffer(e))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(t===e)return 0;let n=t.length,r=e.length;for(let 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},u.isEncoding=function(t){switch(String(t).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},u.concat=function(t,e){if(!Array.isArray(t))throw new TypeError('"list" argument must be an Array of Buffers');if(0===t.length)return u.alloc(0);let n;if(void 0===e)for(e=0,n=0;n<t.length;++n)e+=t[n].length;const r=u.allocUnsafe(e);let o=0;for(n=0;n<t.length;++n){let e=t[n];if(K(e,Uint8Array))o+e.length>r.length?(u.isBuffer(e)||(e=u.from(e)),e.copy(r,o)):Uint8Array.prototype.set.call(r,e,o);else{if(!u.isBuffer(e))throw new TypeError('"list" argument must be an Array of Buffers');e.copy(r,o)}o+=e.length}return r},u.byteLength=v,u.prototype._isBuffer=!0,u.prototype.swap16=function(){const t=this.length;if(t%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let e=0;e<t;e+=2)y(this,e,e+1);return this},u.prototype.swap32=function(){const t=this.length;if(t%4!=0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(let e=0;e<t;e+=4)y(this,e,e+3),y(this,e+1,e+2);return this},u.prototype.swap64=function(){const t=this.length;if(t%8!=0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(let e=0;e<t;e+=8)y(this,e,e+7),y(this,e+1,e+6),y(this,e+2,e+5),y(this,e+3,e+4);return this},u.prototype.toString=function(){const t=this.length;return 0===t?"":0===arguments.length?k(this,0,t):g.apply(this,arguments)},u.prototype.toLocaleString=u.prototype.toString,u.prototype.equals=function(t){if(!u.isBuffer(t))throw new TypeError("Argument must be a Buffer");return this===t||0===u.compare(this,t)},u.prototype.inspect=function(){let t="";const n=e.INSPECT_MAX_BYTES;return t=this.toString("hex",0,n).replace(/(.{2})/g,"$1 ").trim(),this.length>n&&(t+=" ... "),"<Buffer "+t+">"},a&&(u.prototype[a]=u.prototype.inspect),u.prototype.compare=function(t,e,n,r,o){if(K(t,Uint8Array)&&(t=u.from(t,t.offset,t.byteLength)),!u.isBuffer(t))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof t);if(void 0===e&&(e=0),void 0===n&&(n=t?t.length:0),void 0===r&&(r=0),void 0===o&&(o=this.length),e<0||n>t.length||r<0||o>this.length)throw new RangeError("out of range index");if(r>=o&&e>=n)return 0;if(r>=o)return-1;if(e>=n)return 1;if(this===t)return 0;let i=(o>>>=0)-(r>>>=0),a=(n>>>=0)-(e>>>=0);const s=Math.min(i,a),l=this.slice(r,o),c=t.slice(e,n);for(let t=0;t<s;++t)if(l[t]!==c[t]){i=l[t],a=c[t];break}return i<a?-1:a<i?1:0},u.prototype.includes=function(t,e,n){return-1!==this.indexOf(t,e,n)},u.prototype.indexOf=function(t,e,n){return A(this,t,e,n,!0)},u.prototype.lastIndexOf=function(t,e,n){return A(this,t,e,n,!1)},u.prototype.write=function(t,e,n,r){if(void 0===e)r="utf8",n=this.length,e=0;else if(void 0===n&&"string"==typeof e)r=e,n=this.length,e=0;else{if(!isFinite(e))throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");e>>>=0,isFinite(n)?(n>>>=0,void 0===r&&(r="utf8")):(r=n,n=void 0)}const o=this.length-e;if((void 0===n||n>o)&&(n=o),t.length>0&&(n<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");r||(r="utf8");let i=!1;for(;;)switch(r){case"hex":return C(this,t,e,n);case"utf8":case"utf-8":return w(this,t,e,n);case"ascii":case"latin1":case"binary":return x(this,t,e,n);case"base64":return _(this,t,e,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return E(this,t,e,n);default:if(i)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),i=!0}},u.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};const O=4096;function B(t,e,n){let r="";n=Math.min(t.length,n);for(let o=e;o<n;++o)r+=String.fromCharCode(127&t[o]);return r}function T(t,e,n){let r="";n=Math.min(t.length,n);for(let o=e;o<n;++o)r+=String.fromCharCode(t[o]);return r}function j(t,e,n){const r=t.length;(!e||e<0)&&(e=0),(!n||n<0||n>r)&&(n=r);let o="";for(let r=e;r<n;++r)o+=J[t[r]];return o}function N(t,e,n){const r=t.slice(e,n);let o="";for(let t=0;t<r.length-1;t+=2)o+=String.fromCharCode(r[t]+256*r[t+1]);return o}function P(t,e,n){if(t%1!=0||t<0)throw new RangeError("offset is not uint");if(t+e>n)throw new RangeError("Trying to access beyond buffer length")}function I(t,e,n,r,o,i){if(!u.isBuffer(t))throw new TypeError('"buffer" argument must be a Buffer instance');if(e>o||e<i)throw new RangeError('"value" argument is out of bounds');if(n+r>t.length)throw new RangeError("Index out of range")}function $(t,e,n,r,o){G(e,r,o,t,n,7);let i=Number(e&BigInt(4294967295));t[n++]=i,i>>=8,t[n++]=i,i>>=8,t[n++]=i,i>>=8,t[n++]=i;let a=Number(e>>BigInt(32)&BigInt(4294967295));return t[n++]=a,a>>=8,t[n++]=a,a>>=8,t[n++]=a,a>>=8,t[n++]=a,n}function z(t,e,n,r,o){G(e,r,o,t,n,7);let i=Number(e&BigInt(4294967295));t[n+7]=i,i>>=8,t[n+6]=i,i>>=8,t[n+5]=i,i>>=8,t[n+4]=i;let a=Number(e>>BigInt(32)&BigInt(4294967295));return t[n+3]=a,a>>=8,t[n+2]=a,a>>=8,t[n+1]=a,a>>=8,t[n]=a,n+8}function D(t,e,n,r,o,i){if(n+r>t.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function F(t,e,n,r,o){return e=+e,n>>>=0,o||D(t,0,n,4),i.write(t,e,n,r,23,4),n+4}function R(t,e,n,r,o){return e=+e,n>>>=0,o||D(t,0,n,8),i.write(t,e,n,r,52,8),n+8}u.prototype.slice=function(t,e){const n=this.length;(t=~~t)<0?(t+=n)<0&&(t=0):t>n&&(t=n),(e=void 0===e?n:~~e)<0?(e+=n)<0&&(e=0):e>n&&(e=n),e<t&&(e=t);const r=this.subarray(t,e);return Object.setPrototypeOf(r,u.prototype),r},u.prototype.readUintLE=u.prototype.readUIntLE=function(t,e,n){t>>>=0,e>>>=0,n||P(t,e,this.length);let r=this[t],o=1,i=0;for(;++i<e&&(o*=256);)r+=this[t+i]*o;return r},u.prototype.readUintBE=u.prototype.readUIntBE=function(t,e,n){t>>>=0,e>>>=0,n||P(t,e,this.length);let r=this[t+--e],o=1;for(;e>0&&(o*=256);)r+=this[t+--e]*o;return r},u.prototype.readUint8=u.prototype.readUInt8=function(t,e){return t>>>=0,e||P(t,1,this.length),this[t]},u.prototype.readUint16LE=u.prototype.readUInt16LE=function(t,e){return t>>>=0,e||P(t,2,this.length),this[t]|this[t+1]<<8},u.prototype.readUint16BE=u.prototype.readUInt16BE=function(t,e){return t>>>=0,e||P(t,2,this.length),this[t]<<8|this[t+1]},u.prototype.readUint32LE=u.prototype.readUInt32LE=function(t,e){return t>>>=0,e||P(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},u.prototype.readUint32BE=u.prototype.readUInt32BE=function(t,e){return t>>>=0,e||P(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},u.prototype.readBigUInt64LE=Q((function(t){q(t>>>=0,"offset");const e=this[t],n=this[t+7];void 0!==e&&void 0!==n||V(t,this.length-8);const r=e+256*this[++t]+65536*this[++t]+this[++t]*2**24,o=this[++t]+256*this[++t]+65536*this[++t]+n*2**24;return BigInt(r)+(BigInt(o)<<BigInt(32))})),u.prototype.readBigUInt64BE=Q((function(t){q(t>>>=0,"offset");const e=this[t],n=this[t+7];void 0!==e&&void 0!==n||V(t,this.length-8);const r=e*2**24+65536*this[++t]+256*this[++t]+this[++t],o=this[++t]*2**24+65536*this[++t]+256*this[++t]+n;return(BigInt(r)<<BigInt(32))+BigInt(o)})),u.prototype.readIntLE=function(t,e,n){t>>>=0,e>>>=0,n||P(t,e,this.length);let r=this[t],o=1,i=0;for(;++i<e&&(o*=256);)r+=this[t+i]*o;return o*=128,r>=o&&(r-=Math.pow(2,8*e)),r},u.prototype.readIntBE=function(t,e,n){t>>>=0,e>>>=0,n||P(t,e,this.length);let r=e,o=1,i=this[t+--r];for(;r>0&&(o*=256);)i+=this[t+--r]*o;return o*=128,i>=o&&(i-=Math.pow(2,8*e)),i},u.prototype.readInt8=function(t,e){return t>>>=0,e||P(t,1,this.length),128&this[t]?-1*(255-this[t]+1):this[t]},u.prototype.readInt16LE=function(t,e){t>>>=0,e||P(t,2,this.length);const n=this[t]|this[t+1]<<8;return 32768&n?4294901760|n:n},u.prototype.readInt16BE=function(t,e){t>>>=0,e||P(t,2,this.length);const n=this[t+1]|this[t]<<8;return 32768&n?4294901760|n:n},u.prototype.readInt32LE=function(t,e){return t>>>=0,e||P(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},u.prototype.readInt32BE=function(t,e){return t>>>=0,e||P(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},u.prototype.readBigInt64LE=Q((function(t){q(t>>>=0,"offset");const e=this[t],n=this[t+7];void 0!==e&&void 0!==n||V(t,this.length-8);const r=this[t+4]+256*this[t+5]+65536*this[t+6]+(n<<24);return(BigInt(r)<<BigInt(32))+BigInt(e+256*this[++t]+65536*this[++t]+this[++t]*2**24)})),u.prototype.readBigInt64BE=Q((function(t){q(t>>>=0,"offset");const e=this[t],n=this[t+7];void 0!==e&&void 0!==n||V(t,this.length-8);const r=(e<<24)+65536*this[++t]+256*this[++t]+this[++t];return(BigInt(r)<<BigInt(32))+BigInt(this[++t]*2**24+65536*this[++t]+256*this[++t]+n)})),u.prototype.readFloatLE=function(t,e){return t>>>=0,e||P(t,4,this.length),i.read(this,t,!0,23,4)},u.prototype.readFloatBE=function(t,e){return t>>>=0,e||P(t,4,this.length),i.read(this,t,!1,23,4)},u.prototype.readDoubleLE=function(t,e){return t>>>=0,e||P(t,8,this.length),i.read(this,t,!0,52,8)},u.prototype.readDoubleBE=function(t,e){return t>>>=0,e||P(t,8,this.length),i.read(this,t,!1,52,8)},u.prototype.writeUintLE=u.prototype.writeUIntLE=function(t,e,n,r){if(t=+t,e>>>=0,n>>>=0,!r){I(this,t,e,n,Math.pow(2,8*n)-1,0)}let o=1,i=0;for(this[e]=255&t;++i<n&&(o*=256);)this[e+i]=t/o&255;return e+n},u.prototype.writeUintBE=u.prototype.writeUIntBE=function(t,e,n,r){if(t=+t,e>>>=0,n>>>=0,!r){I(this,t,e,n,Math.pow(2,8*n)-1,0)}let o=n-1,i=1;for(this[e+o]=255&t;--o>=0&&(i*=256);)this[e+o]=t/i&255;return e+n},u.prototype.writeUint8=u.prototype.writeUInt8=function(t,e,n){return t=+t,e>>>=0,n||I(this,t,e,1,255,0),this[e]=255&t,e+1},u.prototype.writeUint16LE=u.prototype.writeUInt16LE=function(t,e,n){return t=+t,e>>>=0,n||I(this,t,e,2,65535,0),this[e]=255&t,this[e+1]=t>>>8,e+2},u.prototype.writeUint16BE=u.prototype.writeUInt16BE=function(t,e,n){return t=+t,e>>>=0,n||I(this,t,e,2,65535,0),this[e]=t>>>8,this[e+1]=255&t,e+2},u.prototype.writeUint32LE=u.prototype.writeUInt32LE=function(t,e,n){return t=+t,e>>>=0,n||I(this,t,e,4,4294967295,0),this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=255&t,e+4},u.prototype.writeUint32BE=u.prototype.writeUInt32BE=function(t,e,n){return t=+t,e>>>=0,n||I(this,t,e,4,4294967295,0),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},u.prototype.writeBigUInt64LE=Q((function(t,e=0){return $(this,t,e,BigInt(0),BigInt("0xffffffffffffffff"))})),u.prototype.writeBigUInt64BE=Q((function(t,e=0){return z(this,t,e,BigInt(0),BigInt("0xffffffffffffffff"))})),u.prototype.writeIntLE=function(t,e,n,r){if(t=+t,e>>>=0,!r){const r=Math.pow(2,8*n-1);I(this,t,e,n,r-1,-r)}let o=0,i=1,a=0;for(this[e]=255&t;++o<n&&(i*=256);)t<0&&0===a&&0!==this[e+o-1]&&(a=1),this[e+o]=(t/i>>0)-a&255;return e+n},u.prototype.writeIntBE=function(t,e,n,r){if(t=+t,e>>>=0,!r){const r=Math.pow(2,8*n-1);I(this,t,e,n,r-1,-r)}let o=n-1,i=1,a=0;for(this[e+o]=255&t;--o>=0&&(i*=256);)t<0&&0===a&&0!==this[e+o+1]&&(a=1),this[e+o]=(t/i>>0)-a&255;return e+n},u.prototype.writeInt8=function(t,e,n){return t=+t,e>>>=0,n||I(this,t,e,1,127,-128),t<0&&(t=255+t+1),this[e]=255&t,e+1},u.prototype.writeInt16LE=function(t,e,n){return t=+t,e>>>=0,n||I(this,t,e,2,32767,-32768),this[e]=255&t,this[e+1]=t>>>8,e+2},u.prototype.writeInt16BE=function(t,e,n){return t=+t,e>>>=0,n||I(this,t,e,2,32767,-32768),this[e]=t>>>8,this[e+1]=255&t,e+2},u.prototype.writeInt32LE=function(t,e,n){return t=+t,e>>>=0,n||I(this,t,e,4,2147483647,-2147483648),this[e]=255&t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24,e+4},u.prototype.writeInt32BE=function(t,e,n){return t=+t,e>>>=0,n||I(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},u.prototype.writeBigInt64LE=Q((function(t,e=0){return $(this,t,e,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),u.prototype.writeBigInt64BE=Q((function(t,e=0){return z(this,t,e,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),u.prototype.writeFloatLE=function(t,e,n){return F(this,t,e,!0,n)},u.prototype.writeFloatBE=function(t,e,n){return F(this,t,e,!1,n)},u.prototype.writeDoubleLE=function(t,e,n){return R(this,t,e,!0,n)},u.prototype.writeDoubleBE=function(t,e,n){return R(this,t,e,!1,n)},u.prototype.copy=function(t,e,n,r){if(!u.isBuffer(t))throw new TypeError("argument should be a Buffer");if(n||(n=0),r||0===r||(r=this.length),e>=t.length&&(e=t.length),e||(e=0),r>0&&r<n&&(r=n),r===n)return 0;if(0===t.length||0===this.length)return 0;if(e<0)throw new RangeError("targetStart out of bounds");if(n<0||n>=this.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),t.length-e<r-n&&(r=t.length-e+n);const o=r-n;return this===t&&"function"==typeof Uint8Array.prototype.copyWithin?this.copyWithin(e,n,r):Uint8Array.prototype.set.call(t,this.subarray(n,r),e),o},u.prototype.fill=function(t,e,n,r){if("string"==typeof t){if("string"==typeof e?(r=e,e=0,n=this.length):"string"==typeof n&&(r=n,n=this.length),void 0!==r&&"string"!=typeof r)throw new TypeError("encoding must be a string");if("string"==typeof r&&!u.isEncoding(r))throw new TypeError("Unknown encoding: "+r);if(1===t.length){const e=t.charCodeAt(0);("utf8"===r&&e<128||"latin1"===r)&&(t=e)}}else"number"==typeof t?t&=255:"boolean"==typeof t&&(t=Number(t));if(e<0||this.length<e||this.length<n)throw new RangeError("Out of range index");if(n<=e)return this;let o;if(e>>>=0,n=void 0===n?this.length:n>>>0,t||(t=0),"number"==typeof t)for(o=e;o<n;++o)this[o]=t;else{const i=u.isBuffer(t)?t:u.from(t,r),a=i.length;if(0===a)throw new TypeError('The value "'+t+'" is invalid for argument "value"');for(o=0;o<n-e;++o)this[o+e]=i[o%a]}return this};const L={};function M(t,e,n){L[t]=class extends n{constructor(){super(),Object.defineProperty(this,"message",{value:e.apply(this,arguments),writable:!0,configurable:!0}),this.name=`${this.name} [${t}]`,this.stack,delete this.name}get code(){return t}set code(t){Object.defineProperty(this,"code",{configurable:!0,enumerable:!0,value:t,writable:!0})}toString(){return`${this.name} [${t}]: ${this.message}`}}}function U(t){let e="",n=t.length;const r="-"===t[0]?1:0;for(;n>=r+4;n-=3)e=`_${t.slice(n-3,n)}${e}`;return`${t.slice(0,n)}${e}`}function G(t,e,n,r,o,i){if(t>n||t<e){const r="bigint"==typeof e?"n":"";let o;throw o=i>3?0===e||e===BigInt(0)?`>= 0${r} and < 2${r} ** ${8*(i+1)}${r}`:`>= -(2${r} ** ${8*(i+1)-1}${r}) and < 2 ** ${8*(i+1)-1}${r}`:`>= ${e}${r} and <= ${n}${r}`,new L.ERR_OUT_OF_RANGE("value",o,t)}!function(t,e,n){q(e,"offset"),void 0!==t[e]&&void 0!==t[e+n]||V(e,t.length-(n+1))}(r,o,i)}function q(t,e){if("number"!=typeof t)throw new L.ERR_INVALID_ARG_TYPE(e,"number",t)}function V(t,e,n){if(Math.floor(t)!==t)throw q(t,n),new L.ERR_OUT_OF_RANGE(n||"offset","an integer",t);if(e<0)throw new L.ERR_BUFFER_OUT_OF_BOUNDS;throw new L.ERR_OUT_OF_RANGE(n||"offset",`>= ${n?1:0} and <= ${e}`,t)}M("ERR_BUFFER_OUT_OF_BOUNDS",(function(t){return t?`${t} is outside of buffer bounds`:"Attempt to access memory outside buffer bounds"}),RangeError),M("ERR_INVALID_ARG_TYPE",(function(t,e){return`The "${t}" argument must be of type number. Received type ${typeof e}`}),TypeError),M("ERR_OUT_OF_RANGE",(function(t,e,n){let r=`The value of "${t}" is out of range.`,o=n;return Number.isInteger(n)&&Math.abs(n)>2**32?o=U(String(n)):"bigint"==typeof n&&(o=String(n),(n>BigInt(2)**BigInt(32)||n<-(BigInt(2)**BigInt(32)))&&(o=U(o)),o+="n"),r+=` It must be ${e}. Received ${o}`,r}),RangeError);const W=/[^+/0-9A-Za-z-_]/g;function H(t,e){let n;e=e||1/0;const r=t.length;let o=null;const i=[];for(let a=0;a<r;++a){if(n=t.charCodeAt(a),n>55295&&n<57344){if(!o){if(n>56319){(e-=3)>-1&&i.push(239,191,189);continue}if(a+1===r){(e-=3)>-1&&i.push(239,191,189);continue}o=n;continue}if(n<56320){(e-=3)>-1&&i.push(239,191,189),o=n;continue}n=65536+(o-55296<<10|n-56320)}else o&&(e-=3)>-1&&i.push(239,191,189);if(o=null,n<128){if((e-=1)<0)break;i.push(n)}else if(n<2048){if((e-=2)<0)break;i.push(n>>6|192,63&n|128)}else if(n<65536){if((e-=3)<0)break;i.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;i.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return i}function Z(t){return o.toByteArray(function(t){if((t=(t=t.split("=")[0]).trim().replace(W,"")).length<2)return"";for(;t.length%4!=0;)t+="=";return t}(t))}function Y(t,e,n,r){let o;for(o=0;o<r&&!(o+n>=e.length||o>=t.length);++o)e[o+n]=t[o];return o}function K(t,e){return t instanceof e||null!=t&&null!=t.constructor&&null!=t.constructor.name&&t.constructor.name===e.name}function X(t){return t!=t}const J=function(){const t="0123456789abcdef",e=new Array(256);for(let n=0;n<16;++n){const r=16*n;for(let o=0;o<16;++o)e[r+o]=t[n]+t[o]}return e}();function Q(t){return"undefined"==typeof BigInt?tt:t}function tt(){throw new Error("BigInt not supported")}},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 E="undefined"!=typeof SharedArrayBuffer?SharedArrayBuffer:void 0;function S(t){return"[object SharedArrayBuffer]"===c(t)}function k(t){return void 0!==E&&(void 0===S.working&&(S.working=S(new E)),S.working?S(t):t instanceof E)}function O(t){return v(t,p)}function B(t){return v(t,f)}function T(t){return v(t,d)}function j(t){return l&&v(t,h)}function N(t){return u&&v(t,m)}e.isSharedArrayBuffer=k,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=B,e.isBooleanObject=T,e.isBigIntObject=j,e.isSymbolObject=N,e.isBoxedPrimitive=function(t){return O(t)||B(t)||T(t)||j(t)||N(t)},e.isAnyArrayBuffer=function(t){return"undefined"!=typeof Uint8Array&&(w(t)||k(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&&S(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)),E(n)&&(a.indexOf("message")>=0||a.indexOf("description")>=0))return h(n);if(0===a.length){if(S(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(E(n))return h(n)}var u,c="",p=!1,f=["{","}"];(v(n)&&(p=!0,f=["[","]"]),S(n))&&(c=" [Function"+(n.name?": "+n.name:"")+"]");return w(n)&&(c=" "+RegExp.prototype.toString.call(n)),_(n)&&(c=" "+Date.prototype.toUTCString.call(n)),E(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)j(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")),j(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]"===k(t)}function x(t){return"object"==typeof t&&null!==t}function _(t){return x(t)&&"[object Date]"===k(t)}function E(t){return x(t)&&("[object Error]"===k(t)||t instanceof Error)}function S(t){return"function"==typeof t}function k(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=E,e.types.isNativeError=E,e.isFunction=S,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 B=["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(),B[t.getMonth()],e].join(" ")}function j(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(5717),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))}}},6505:(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:()=>Zt,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 E(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 S=function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")},k=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},B=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 B({},t,{right:t.left+t.width,bottom:t.top+t.height})}function j(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?E(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=j(t),a=j(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 I(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&&I(n)}function $(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?$(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||I(a))i=l;else{var u=E(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 D(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=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 B({key:t},s[t],{area:D(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 R(t,e,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,o=r?$(e):b(e,h(n));return N(n,o,r)}function L(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=L(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=R(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 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 Z(){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 Y(t){var e=t.ownerDocument;return e?e.defaultView:window}function K(t,e,n,r){var o="BODY"===t.nodeName,i=o?t.ownerDocument.defaultView:t;i.addEventListener(e,n,{passive:!0}),o||K(d(i.parentNode),e,n,r),r.push(i)}function X(t,e,n,r){n.updateBound=r,Y(t).addEventListener("resize",n.updateBound,{passive:!0});var o=d(t);return K(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 Q(){this.state.eventsEnabled&&(cancelAnimationFrame(this.scheduleUpdate),this.state=function(t,e){return Y(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=B({},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=B({},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=L(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=B({},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=j(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=B({},b,t.attributes),t.styles=B({},c,t.styles),t.arrowStyles=B({},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=R(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}},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]:{};S(this,t),this.scheduleUpdate=function(){return requestAnimationFrame(r.update)},this.update=u(this.update.bind(this)),this.options=B({},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(B({},t.Defaults.modifiers,o.modifiers)).forEach((function(e){r.options.modifiers[e]=B({},t.Defaults.modifiers[e]||{},o.modifiers?o.modifiers[e]:{})})),this.modifiers=Object.keys(this.options.modifiers).map((function(t){return B({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 k(t,[{key:"update",value:function(){return V.call(this)}},{key:"destroy",value:function(){return Z.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 Et=n(3857),St=n.n(Et),kt=n(5108),Ot=function(){};function Bt(t){return"string"==typeof t&&(t=t.split(" ")),t}function Tt(t,e){var n,r=Bt(e);n=t.className instanceof Ot?Bt(t.className.baseVal):Bt(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 jt(t,e){var n,r=Bt(e);n=t.className instanceof Ot?Bt(t.className.baseVal):Bt(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 It(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?It(Object(n),!0).forEach((function(e){o(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):It(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},Dt=[],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=$t($t({},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||Kt.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&&jt(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,Dt.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=$t($t({},e.popperOptions),{},{placement:e.placement});return a.modifiers=$t($t({},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=Dt.indexOf(this);-1!==t&&Dt.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=Kt.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)),jt(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),Object.defineProperty(e,"prototype",{writable:!1}),t}();function Rt(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 Lt(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?Rt(Object(n),!0).forEach((function(e){o(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):Rt(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<Dt.length;e++)Dt[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:Kt.options.defaultPlacement,delay:void 0!==t.delay?t.delay:Kt.options.defaultDelay,html:void 0!==t.html?t.html:Kt.options.defaultHtml,template:void 0!==t.template?t.template:Kt.options.defaultTemplate,arrowSelector:void 0!==t.arrowSelector?t.arrowSelector:Kt.options.defaultArrowSelector,innerSelector:void 0!==t.innerSelector?t.innerSelector:Kt.options.defaultInnerSelector,trigger:void 0!==t.trigger?t.trigger:Kt.options.defaultTrigger,offset:void 0!==t.offset?t.offset:Kt.options.defaultOffset,container:void 0!==t.container?t.container:Kt.options.defaultContainer,boundariesElement:void 0!==t.boundariesElement?t.boundariesElement:Kt.options.defaultBoundariesElement,autoHide:void 0!==t.autoHide?t.autoHide:Kt.options.autoHide,hideOnTargetClick:void 0!==t.hideOnTargetClick?t.hideOnTargetClick:Kt.options.defaultHideOnTargetClick,loadingClass:void 0!==t.loadingClass?t.loadingClass:Kt.options.defaultLoadingClass,loadingContent:void 0!==t.loadingContent?t.loadingContent:Kt.options.defaultLoadingContent,popperOptions:Lt({},void 0!==t.popperOptions?t.popperOptions:Kt.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:Kt.options.defaultClass,a=Lt({title:o},qt(Lt(Lt({},"object"===r(e)?e:{}),{},{placement:Vt(e,n)}))),s=t._tooltip=new Ft(t,a);s.setClasses(i),s._vueEl=t;var l=void 0!==e.targetClasses?e.targetClasses:Kt.options.defaultTargetClass;return t._tooltipTargetClasses=l,Tt(t,l),s}function Zt(t){t._tooltip&&(t._tooltip.dispose(),delete t._tooltip,delete t._tooltipOldShow),t._tooltipTargetClasses&&(jt(t,t._tooltipTargetClasses),delete t._tooltipTargetClasses)}function Yt(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(Lt(Lt({},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())):Zt(t)}var Kt={options:Gt,bind:Yt,update:Yt,unbind:function(t){Zt(t)}};function Xt(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)&&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=Kt.options.popover[t];return void 0===e?Kt.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 Kt.options.popover.defaultBaseClass}},popoverInnerClass:{type:[String,Array],default:function(){return Kt.options.popover.defaultInnerClass}},popoverWrapperClass:{type:[String,Array],default:function(){return Kt.options.popover.defaultWrapperClass}},popoverArrowClass:{type:[String,Array],default:function(){return Kt.options.popover.defaultArrowClass}},autoHide:{type:Boolean,default:function(){return Kt.options.popover.defaultAutoHide}},handleResize:{type:Boolean,default:function(){return Kt.options.popover.defaultHandleResize}},openGroup:{type:String,default:null},openClass:{type:[String,Array],default:function(){return Kt.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 kt.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 kt.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=Kt.options.popover.disposeTimeout||Kt.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={};St()(n,Gt,e),be.options=n,Kt.options=n,t.directive("tooltip",Kt),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=Kt,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():""}))})),E=w((function(t){return t.charAt(0).toUpperCase()+t.slice(1)})),S=/\B([A-Z])/g,k=w((function(t){return t.replace(S,"-$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 B(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 j(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},I=function(t){return t};function $(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 $(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 $(t[n],e[n])}))}catch(t){return!1}}function z(t,e){for(var n=0;n<t.length;n++)if($(t[n],e))return n;return-1}function D(t){var e=!1;return function(){e||(e=!0,t.apply(this,arguments))}}var F="data-server-rendered",R=["component","directive","filter"],L=["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:I,mustUseProp:P,async:!0,_lifecycleHooks:L},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{},Z="undefined"!=typeof window,Y="undefined"!=typeof WXEnvironment&&!!WXEnvironment.platform,K=Y&&WXEnvironment.platform.toLowerCase(),X=Z&&window.navigator.userAgent.toLowerCase(),J=X&&/msie|trident/.test(X),Q=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"===K),nt=(X&&/chrome\/\d+/.test(X),X&&/phantomjs/.test(X),X&&X.match(/firefox\/(\d+)/)),rt={}.watch,ot=!1;if(Z)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=!Z&&!Y&&void 0!==n.g&&(n.g.process&&"server"===n.g.process.env.VUE_ENV)),W},st=Z&&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),Et=!0;function St(t){Et=t}var kt=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 kt?n=t.__ob__:Et&&!at()&&(Array.isArray(t)||p(t))&&Object.isExtensible(t)&&!t._isVue&&(n=new kt(t)),e&&n&&n.vmCount++,n}function Bt(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?(Bt(r.value,e,n),r.dep.notify(),n):(t[e]=n,n)}function jt(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)}kt.prototype.walk=function(t){for(var e=Object.keys(t),n=0;n<e.length;n++)Bt(t,e[n])},kt.prototype.observeArray=function(t){for(var e=0,n=t.length;e<n;e++)Ot(t[e])};var Pt=M.optionMergeStrategies;function It(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)&&It(r,o):Tt(t,n,o));return t}function $t(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?It(r,o):o}:e?t?function(){return It("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 Dt(t,e,n,r){var o=Object.create(t||null);return e?T(o,e):o}Pt.data=function(t,e,n){return n?$t(t,e,n):e&&"function"!=typeof e?t:$t(t,e)},L.forEach((function(t){Pt[t]=zt})),R.forEach((function(t){Pt[t+"s"]=Dt})),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=$t;var Ft=function(t,e){return void 0===e?t:e};function Rt(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=Rt(t,e.extends,n)),e.mixins))for(var r=0,o=e.mixins.length;r<o;r++)t=Rt(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]||Ft;a[r]=o(t[r],e[r],n,r)}return a}function Lt(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=E(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===k(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=Et;St(!0),Ot(a),St(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){Zt(t,r,"errorCaptured hook")}}Zt(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 Zt(t,e,n){if(M.errorHandler)try{return M.errorHandler.call(null,t,e,n)}catch(e){e!==t&&Yt(e,null,"config.errorHandler")}Yt(t,e,n)}function Yt(t,e,n){if(!Z&&!Y||void 0===r)throw t;r.error(t)}var Kt,Xt=!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();Kt=function(){ee.then(te),et&&setTimeout(N)},Xt=!0}else if(J||"undefined"==typeof MutationObserver||!lt(MutationObserver)&&"[object MutationObserverConstructor]"!==MutationObserver.toString())Kt="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}),Kt=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){Wt(t,e,"nextTick")}else n&&n(e)})),Qt||(Qt=!0,Kt()),!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 Ee(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 Se(t){return Lt(this.$options,"filters",t)||I}function ke(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]?ke(o,r):i?ke(i,t):r?k(r)!==e:void 0===t}function Be(t,e,n,r,o){if(n)if(u(n)){var i;Array.isArray(n)&&(n=j(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=k(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 je(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 Ie(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 $e(t,e,n,r){e=e||{$stable:!n};for(var o=0;o<t.length;o++){var i=t[o];Array.isArray(i)?$e(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 De(t,e){return"string"==typeof t?e+t:t}function Fe(t){t._o=je,t._n=v,t._s=m,t._l=_e,t._t=Ee,t._q=$,t._i=z,t._m=Te,t._f=Se,t._k=Oe,t._b=Be,t._v=bt,t._e=At,t._u=$e,t._g=Ie,t._d=ze,t._p=De}function Re(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 Le(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]}Fe(Re.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){St(!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)}St(!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=Ye;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=D((function(n){t.resolved=Ke(n,e),o?r.length=0:p(!0)})),d=D((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=Ke(m.error,e)),a(m.loading)&&(t.loadingComp=Ke(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=k(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 Re(n,l,i,r,t),f=s.render.call(null,p._c,p);if(f instanceof gt)return Le(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]=Le(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=Lt(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 Ze,Ye=null;function Ke(t,e){return(t.__esModule||ct&&"Module"===t[Symbol.toStringTag])&&(t=t.default),u(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){Ze.$on(t,e)}function Qe(t,e){Ze.$off(t,e)}function tn(t,e){var n=Ze;return function r(){var o=e.apply(null,arguments);null!==o&&n.$off(t,r)}}function en(t,e,n){Ze=t,pe(e,n||{},Je,Qe,tn,t),Ze=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(Z&&!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&&St(!1);var i=function(i){o.push(i);var a=Mt(i,e,n,t);Bt(r,i,a),i in t||wn(t,"_props",i)};for(var a in e)i(a);St(!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||En(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 En(t,e,n){var r=!at();"function"==typeof n?(Cn.get=r?Sn(e):kn(n),Cn.set=N):(Cn.get=n.get?r&&!1!==n.cache?Sn(e):kn(n.get):N,Cn.set=n.set||N),Object.defineProperty(t,e,Cn)}function Sn(t){return function(){var e=this._computedWatchers&&this._computedWatchers[t];if(e)return e.dirty&&e.evaluate(),dt.target&&e.depend(),e.value}}function kn(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 Bn=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=Rt(n,t.extendOptions)).name&&(e.components[e.name]=t)}}return e}function jn(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=Rt(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)En(t.prototype,n,e[n])}(a),a.extend=n.extend,a.mixin=n.mixin,a.use=n.use,R.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 In(t,e){return Array.isArray(t)?t.indexOf(e)>-1:"string"==typeof t?t.split(",").indexOf(e)>-1:!!f(t)&&t.test(e)}function $n(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=Bn++,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=Rt(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;Bt(t,"$attrs",i&&i.attrs||o,null,!0),Bt(t,"$listeners",e._parentListeners||o,null,!0)}(e),ln(e,"beforeCreate"),function(t){var e=ge(t.$options.inject,t);e&&(St(!1),Object.keys(e).forEach((function(n){Bt(t,n,e[n])})),St(!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)}}(jn),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=jt,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()}}}(jn),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?B(n):n;for(var r=B(arguments,1),o='event handler for "'+t+'"',i=0,a=n.length;i<a;i++)Ht(n[i],e,r,e,o)}return e}}(jn),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)}}}(jn),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{Ye=e,t=r.call(e._renderProxy,e.$createElement)}catch(n){Wt(n,e,"render"),t=e._vnode}finally{Ye=null}return Array.isArray(t)&&1===t.length&&(t=t[0]),t instanceof gt||(t=At()),t.parent=o,t}}(jn);var Dn=[String,RegExp,Array],Fn={name:"keep-alive",abstract:!0,props:{include:Dn,exclude:Dn,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){$n(t,(function(t){return In(e,t)}))})),this.$watch("exclude",(function(e){$n(t,(function(t){return!In(e,t)}))}))},updated:function(){this.cacheVNode()},render:function(){var t=this.$slots.default,e=Xe(t),n=e&&e.componentOptions;if(n){var r=Pn(n),o=this.include,i=this.exclude;if(o&&(!r||!In(o,r))||i&&r&&In(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]}},Rn={KeepAlive:Fn};!function(t){var e={get:function(){return M}};Object.defineProperty(t,"config",e),t.util={warn:pt,extend:T,mergeOptions:Rt,defineReactive:Bt},t.set=Tt,t.delete=jt,t.nextTick=ie,t.observable=function(t){return Ot(t),t},t.options=Object.create(null),R.forEach((function(e){t.options[e+"s"]=Object.create(null)})),t.options._base=t,T(t.options.components,Rn),function(t){t.use=function(t){var e=this._installedPlugins||(this._installedPlugins=[]);if(e.indexOf(t)>-1)return this;var n=B(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=Rt(this.options,t),this}}(t),Nn(t),function(t){R.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)}(jn),Object.defineProperty(jn.prototype,"$isServer",{get:at}),Object.defineProperty(jn.prototype,"$ssrContext",{get:function(){return this.$vnode&&this.$vnode.ssrContext}}),Object.defineProperty(jn,"FunctionalRenderContext",{value:Re}),jn.version="2.6.14";var Ln=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):""},Zn=function(t){return null==t||!1===t};function Yn(t){for(var e=t.data,n=t,r=t;a(r.componentInstance);)(r=r.componentInstance._vnode)&&r.data&&(e=Kn(r.data,e));for(;a(n=n.parent);)n&&n.data&&(e=Kn(e,n.data));return function(t,e){if(a(t)||a(e))return Xn(t,Jn(e));return""}(e.staticClass,e.class)}function Kn(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):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=Lt(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)?Zn(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 Zn(e)||"false"===e?"false":"contenteditable"===t&&Gn(e)?e:"true"}(e,n)):Wn(e)?Zn(n)?t.removeAttributeNS(Vn,Hn(e)):t.setAttributeNS(Vn,e,n):Cr(t,e,n)}function Cr(t,e,n){if(Zn(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=Yn(e),l=n._transitionClasses;a(l)&&(s=Xn(s,Jn(l))),s!==n._prevClass&&(n.setAttribute("class",s),n._prevClass=s)}}var _r,Er={create:xr,update:xr};function Sr(t,e,n){var r=_r;return function o(){var i=e.apply(null,arguments);null!==i&&Br(t,o,n,r)}}var kr=Xt&&!(nt&&Number(nt[1])<=53);function Or(t,e,n,r){if(kr){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 Br(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,Br,Sr,e.context),_r=void 0}}var jr,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);Ir(o,u)&&(o.value=u)}else if("innerHTML"===n&&er(o.tagName)&&i(o.innerHTML)){(jr=jr||document.createElement("div")).innerHTML="<svg>"+r+"</svg>";for(var c=jr.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 Ir(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 $r={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 Dr(t){var e=Fr(t.style);return t.staticStyle?T(t.staticStyle,e):e}function Fr(t){return Array.isArray(t)?j(t):"string"==typeof t?zr(t):t}var Rr,Lr=/^--/,Mr=/\s*!important$/,Ur=function(t,e,n){if(Lr.test(e))t.style.setProperty(e,n);else if(Mr.test(n))t.style.setProperty(k(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(Rr=Rr||document.createElement("div").style,"filter"!==(t=_(t))&&t in Rr)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 Rr)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=Fr(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=Dr(o.data))&&T(r,n);(n=Dr(t.data))&&T(r,n);for(var i=t;i=i.parent;)i.data&&(n=Dr(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 Zr(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 Yr(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 Kr(t){if(t){if("object"==typeof t){var e={};return!1!==t.css&&T(e,Xr(t.name||"v")),T(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=Z&&!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=Z?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),Zr(t,e))}function lo(t,e){t._transitionClasses&&A(t._transitionClasses,e),Yr(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=Kr(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,E=nn,S=nn.$vnode;S&&S.parent;)E=S.context,S=S.parent;var k=!E._isMounted||!t.isRootInsert;if(!k||C||""===C){var O=k&&f?f:l,B=k&&h?h:p,T=k&&d?d:c,j=k&&b||m,N=k&&"function"==typeof C?C:g,P=k&&w||y,I=k&&x||A,$=v(u(_)?_.enter:_);0;var z=!1!==o&&!Q,F=yo(N),R=n._enterCb=D((function(){z&&(lo(n,T),lo(n,B)),R.cancelled?(z&&lo(n,O),I&&I(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,R)})),j&&j(n),z&&(so(n,O),so(n,B),ao((function(){lo(n,O),R.cancelled||(so(n,T),F||(go($)?setTimeout(R,$):uo(n,s,R)))}))),t.data.show&&(e&&e(),N&&N(n,R)),z||F||R()}}}function vo(t,e){var n=t.elm;a(n._enterCb)&&(n._enterCb.cancelled=!0,n._enterCb());var r=Kr(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=D((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)?k(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 E(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 S=g("attrs,class,staticClass,staticStyle,key");function k(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||!k(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(!S(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(F)&&(t.removeAttribute(F),n=!0),s(n)&&k(t,e,f))return E(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 S=1;S<x.fns.length;S++)x.fns[S]()}else sr(g);g=g.parent}a(v)?C([t],0,0):a(t.tag)&&b(t)}}return E(e,f,c),e.elm}a(t)&&b(t)}}({nodeOps:ir,modules:[wr,Er,Nr,$r,Wr,Z?{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,Eo)):("textarea"===n.tag||or(t.type))&&(t._vModifiers=e.modifiers,e.modifiers.lazy||(t.addEventListener("compositionstart",So),t.addEventListener("compositionend",ko),t.addEventListener("change",ko),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,Eo);if(o.some((function(t,e){return!$(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,Eo(a))>-1,a.selected!==i&&(a.selected=i);else if($(Eo(a),r))return void(t.selectedIndex!==s&&(t.selectedIndex=s));o||(t.selectedIndex=-1)}}function _o(t,e){return e.every((function(e){return!$(e,t)}))}function Eo(t){return"_value"in t?t._value:t.value}function So(t){t.target.composing=!0}function ko(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 Bo(t){return!t.componentInstance||t.data&&t.data.transition?t:Bo(t.componentInstance._vnode)}var To={bind:function(t,e,n){var r=e.value,o=(n=Bo(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=Bo(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)}},jo={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(Xe(e.children)):t}function Io(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 $o(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)},Do=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(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 $o(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=Io(this),u=this._vnode,c=Po(u);if(i.data.directives&&i.data.directives.some(Do)&&(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()})),$o(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}}},Ro=T({tag:String,moveClass:String},No);function Lo(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 Ro.mode;var Go={Transition:Fo,TransitionGroup:{props:Ro,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=Io(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(Lo),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){Yr(n,t)})),Zr(n,e),n.style.display="none",this.$el.appendChild(n);var r=po(n);return this.$el.removeChild(n),this._hasMove=r.hasTransform}}}};jn.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},jn.config.isReservedTag=nr,jn.config.isReservedAttr=Ln,jn.config.getTagNamespace=function(t){return er(t)?"svg":"math"===t?"math":void 0},jn.config.isUnknownElement=function(t){if(!Z)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(jn.options.directives,jo),T(jn.options.components,Go),jn.prototype.__patch__=Z?bo:N,jn.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&&Z?function(t){if("string"==typeof t){return document.querySelector(t)||document.createElement("div")}return t}(t):void 0,e)},Z&&setTimeout((function(){M.devtools&&st&&st.emit("init",jn)}),0);const qo=jn},6430:(t,e,n)=>{"use strict";var r=n(9804),o=n(3083),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(882),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))}},3083:(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}},882:(t,e,n)=>{"use strict";var r=n(210)("%Object.getOwnPropertyDescriptor%",!0);if(r)try{r([],"length")}catch(t){r=null}t.exports=r}},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:function(){return{videoMp4:(0,n.FW)("firstrunwizard","img","Nextcloud.mp4"),videoWebm:(0,n.FW)("firstrunwizard","img","Nextcloud.webm")}},computed:{videoFallbackText:function(){return 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 E=r(5108);function S(t){return function(t){if(Array.isArray(t))return k(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 k(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 k(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 k(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 O(t,e,n,r,o,i,a){try{var s=t[i](a),l=s.value}catch(t){return void n(t)}s.done?e(l):Promise.resolve(l).then(r,o)}function B(t){return function(){var e=this,n=arguments;return new Promise((function(r,o){var i=t.apply(e,n);function a(t){O(i,r,o,a,s,"next",t)}function s(t){O(i,r,o,a,s,"throw",t)}a(void 0)}))}}const T={name:"App",components:{Modal:a()},data:function(){return{showModal:!1,withIntro:!0,slides:[],currentSlide:0,fadeDirection:"next",slidesLoaded:!1}},computed:{slideList:function(){return this.withIntro?this.slides:this.slides.slice(1)},hasNext:function(){return this.currentSlide<this.slideList.length-1},hasPrevious:function(){return this.currentSlide>0},isLast:function(){return this.currentSlide===this.slideList.length-1},isFirst:function(){return 0===this.currentSlide},startButtonText:function(){return t("firstrunwizard","Start using {cloudName}",{cloudName:window.OC.theme.name})}},created:function(){var t=this;return B(regeneratorRuntime.mark((function e(){return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t.slides=[_],window.addEventListener("resize",t.onResize);case 2:case"end":return e.stop()}}),e)})))()},beforeDestroy:function(){window.removeEventListener("resize",this.onResize)},methods:{loadStaticSlides:function(){var t=this;return B(regeneratorRuntime.mark((function e(){var r,o;return regeneratorRuntime.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t.slidesLoaded){e.next=2;break}return e.abrupt("return");case 2:return e.prev=2,e.next=5,s.Z.get((0,n.nu)("/apps/firstrunwizard/wizard"));case 5:o=e.sent,(r=t.slides).push.apply(r,S(o.data.slides)),t.withIntro=o.data.hasVideo,t.slidesLoaded=!0,e.next=14;break;case 11:e.prev=11,e.t0=e.catch(2),E.error("Failed to load slides");case 14:case"end":return e.stop()}}),e,null,[[2,11]])})))()},open:function(){var t=arguments,e=this;return B(regeneratorRuntime.mark((function n(){var r;return regeneratorRuntime.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return r=!(t.length>0&&void 0!==t[0])||t[0],n.next=3,e.loadStaticSlides();case 3:e.withIntro=e.withIntro&r,e.showModal=!0,e.currentSlide=0;case 6:case"end":return n.stop()}}),n)})))()},close:function(){this.showModal=!1,s.Z.delete((0,n.nu)("/apps/firstrunwizard/wizard"))},next:function(){this.fadeDirection="next",this.isLast?this.close():this.currentSlide+=1},previous:function(){this.fadeDirection="previous",this.isFirst||(this.currentSlide-=1)}}};var j=r(6060),N={};N.styleTagTransform=b(),N.setAttributes=v(),N.insert=h().bind(null,"head"),N.domAPI=f(),N.insertStyleElement=y();c()(j.Z,N);j.Z&&j.Z.locals&&j.Z.locals;var P=r(333),I={};I.styleTagTransform=b(),I.setAttributes=v(),I.insert=h().bind(null,"head"),I.domAPI=f(),I.insertStyleElement=y();c()(P.Z,I);P.Z&&P.Z.locals&&P.Z.locals;const $=(0,x.Z)(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",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,"10738c5b",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;var z=document.createElement("div");z.id="firstrunwizard",document.querySelector("body").appendChild(z);var D=(new(e.default.extend($))).$mount(z);window.OCA.FirstRunWizard={open:D.open}})()})();
+//# sourceMappingURL=firstrunwizard-main.js.map?v=163c652edace575767ce \ No newline at end of file
diff --git a/js/firstrunwizard-main.js.map b/js/firstrunwizard-main.js.map
index 718a4a18..b3c9cd0b 100644
--- a/js/firstrunwizard-main.js.map
+++ b/js/firstrunwizard-main.js.map
@@ -1 +1 @@
-{"version":3,"file":"firstrunwizard-main.js?v=6b776e6c4b93d29f28b3","mappings":";yCAEAA,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAETH,OAAOC,eAAeC,EAAS,kBAAmB,CAChDE,YAAY,EACZC,IAAK,WACH,OAAOC,EAAcC,eACvB,IAEFP,OAAOC,eAAeC,EAAS,uBAAwB,CACrDE,YAAY,EACZC,IAAK,WACH,OAAOC,EAAcE,oBACvB,IAEFR,OAAOC,eAAeC,EAAS,iBAAkB,CAC/CE,YAAY,EACZC,IAAK,WACH,OAAOI,EAAMC,cACf,IAGF,IAAIJ,EAAgB,EAAQ,MAExBG,EAAQ,EAAQ,iDCxBpB,EAAQ,MAERT,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAETD,EAAQK,gBASR,WACE,OAAOI,CACT,EAVAT,EAAQM,qBAYR,SAA8BI,GAC5BC,EAAUC,KAAKF,EACjB,EAZA,IAAIG,EAAY,EAAQ,MAEpBC,EAAeC,SAASC,qBAAqB,QAAQ,GACrDP,EAAQK,EAAeA,EAAaG,aAAa,qBAAuB,KACxEN,EAAY,IAWhB,EAAIE,EAAUK,WAAW,qBAAqB,SAAUC,GACtDV,EAAQU,EAAEV,MACVE,EAAUS,SAAQ,SAAUV,GAC1B,IACEA,EAASS,EAAEV,MAGb,CAFE,MAAOU,GACPE,EAAQC,MAAM,qCAAsCH,EACtD,CACF,GACF,+BChCArB,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAETD,EAAQQ,eAQR,WACE,GAAY,OAARe,EACF,OAAO,KAGT,MAAO,CACLA,IAAKA,EACLC,YAAaA,EACbC,QAASA,EAEb,EAhBA,IAAIC,EAAaX,SAASC,qBAAqB,QAAQ,GACnDO,EAAMG,EAAaA,EAAWT,aAAa,aAAe,KAC1DU,EAAqBZ,SAASC,qBAAqB,QAAQ,GAC3DQ,EAAcG,EAAqBA,EAAmBV,aAAa,yBAA2B,KAC9FQ,EAAwB,oBAAPG,IAA6BA,GAAGC,2CCTrD,EAAQ,MAKR7B,EAAQ,OAAU,EAElB,EAAQ,MAER,IAMgC8B,EAF5BC,EAJAC,GAM4BF,EANI,EAAQ,QAMSA,EAAIG,WAAaH,EAAM,CAAEI,QAASJ,GAJnFK,EAAQ,EAAQ,MAMpB,IAAIC,EAASJ,EAAOE,QAAQG,OAAO,CACjCC,QAAS,CACPC,aAAoE,QAArDR,GAAmB,EAAII,EAAM9B,0BAAqD,IAArB0B,EAA8BA,EAAmB,MAI7HS,EAAmB1C,OAAO2C,OAAOL,EAAQ,CAC3CM,YAAaV,EAAOE,QAAQQ,YAC5BC,SAAUX,EAAOE,QAAQS,YAE3B,EAAIR,EAAM7B,uBAAsB,SAAUG,GACxC,OAAO2B,EAAOQ,SAASN,QAAQC,aAAe9B,CAChD,IACA,IAAIoC,EAAWL,EACfxC,EAAQ,EAAU6C,6CC/BlB/C,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAETD,EAAQ8C,cAAW,EAEnB,IAAIC,EAASC,EAAuB,EAAQ,OAExCC,EAASD,EAAuB,EAAQ,OAE5C,SAASA,EAAuBlB,GAAO,OAAOA,GAAOA,EAAIG,WAAaH,EAAM,CAAEI,QAASJ,EAAO,CAI9F,SAASoB,EAAkBC,EAAQC,GAAS,IAAK,IAAIC,EAAI,EAAGA,EAAID,EAAME,OAAQD,IAAK,CAAE,IAAIE,EAAaH,EAAMC,GAAIE,EAAWrD,WAAaqD,EAAWrD,aAAc,EAAOqD,EAAWC,cAAe,EAAU,UAAWD,IAAYA,EAAWE,UAAW,GAAM3D,OAAOC,eAAeoD,EAAQI,EAAWG,IAAKH,EAAa,CAAE,CAM5T,IAAII,EAEO,QAyCPb,EAAwB,WAC1B,SAASA,EAASc,GA9CpB,IAAyB9B,EAAK4B,EAAKzD,GANnC,SAAyB4D,EAAUC,GAAe,KAAMD,aAAoBC,GAAgB,MAAM,IAAIC,UAAU,oCAAwC,CAqDpJC,CAAgBC,KAAMnB,GA/CS7C,OAiDF,GAjDHyD,EAiDJ,SAjDD5B,EAiDLmC,MAjD0CnE,OAAOC,eAAe+B,EAAK4B,EAAK,CAAEzD,MAAOA,EAAOC,YAAY,EAAMsD,cAAc,EAAMC,UAAU,IAAkB3B,EAAI4B,GAAOzD,EAmDzJ,mBAAnB2D,EAAIM,aAA8B,EAAInB,EAAOb,SAAS0B,EAAIM,eAE1D,EAAIjB,EAAOf,SAAS0B,EAAIM,iBAAkB,EAAIjB,EAAOf,SAAS+B,KAAKC,eAC5E7C,EAAQ8C,KAAK,oCAAsCP,EAAIM,aAAe,SAAWD,KAAKC,cAFtF7C,EAAQ8C,KAAK,4DAKfF,KAAKL,IAAMA,CACb,CA5DF,IAAsBE,EAAaM,EAAYC,EAoF7C,OApFoBP,EA8DPhB,GA9DoBsB,EA8DV,CAAC,CACtBV,IAAK,aACLzD,MAAO,WACL,OAAO0D,CACT,GACC,CACDD,IAAK,YACLzD,MAAO,SAAmBqE,EAAMC,GAC9BN,KAAKL,IAAI1C,UAAUoD,EAAMC,EAC3B,GACC,CACDb,IAAK,cACLzD,MAAO,SAAqBqE,EAAMC,GAChCN,KAAKL,IAAIY,YAAYF,EAAMC,EAC7B,GACC,CACDb,IAAK,OACLzD,MAAO,SAAcqE,EAAMG,GACzBR,KAAKL,IAAIc,KAAKJ,EAAMG,EACtB,MAjF0EvB,EAAkBY,EAAYa,UAAWP,GAAiBC,GAAanB,EAAkBY,EAAaO,GAoF3KvB,CACT,CAtC4B,GAwC5B9C,EAAQ8C,SAAWA,6CC7EnB,SAASI,EAAkBC,EAAQC,GAAS,IAAK,IAAIC,EAAI,EAAGA,EAAID,EAAME,OAAQD,IAAK,CAAE,IAAIE,EAAaH,EAAMC,GAAIE,EAAWrD,WAAaqD,EAAWrD,aAAc,EAAOqD,EAAWC,cAAe,EAAU,UAAWD,IAAYA,EAAWE,UAAW,GAAM3D,OAAOC,eAAeoD,EAAQI,EAAWG,IAAKH,EAAa,CAAE,CAzB5T,EAAQ,MAER,EAAQ,MAER,EAAQ,MAER,EAAQ,MAER,EAAQ,MAER,EAAQ,MAER,EAAQ,MAER,EAAQ,MAER,EAAQ,MAERzD,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAETD,EAAQ4E,eAAY,EAUpB,IAAIjB,EAEO,QAyCPiB,EAAyB,WAC3B,SAASA,IA9CX,IAAyB9C,EAAK4B,EAAKzD,GANnC,SAAyB4D,EAAUC,GAAe,KAAMD,aAAoBC,GAAgB,MAAM,IAAIC,UAAU,oCAAwC,CAqDpJC,CAAgBC,KAAMW,GA/CD9C,EAiDLmC,KAjDUP,EAiDJ,WAjDSzD,EAiDG,IAAI4E,IAjDMnB,KAAO5B,EAAOhC,OAAOC,eAAe+B,EAAK4B,EAAK,CAAEzD,MAAOA,EAAOC,YAAY,EAAMsD,cAAc,EAAMC,UAAU,IAAkB3B,EAAI4B,GAAOzD,CAkDzL,CApDF,IAAsB6D,EAAaM,EAAYC,EAoF7C,OApFoBP,EAsDPc,GAtDoBR,EAsDT,CAAC,CACvBV,IAAK,aACLzD,MAAO,WACL,OAAO0D,CACT,GACC,CACDD,IAAK,YACLzD,MAAO,SAAmBqE,EAAMC,GAC9BN,KAAKa,SAASC,IAAIT,GAAOL,KAAKa,SAAS3E,IAAImE,IAAS,IAAIU,OAAOT,GACjE,GACC,CACDb,IAAK,cACLzD,MAAO,SAAqBqE,EAAMC,GAChCN,KAAKa,SAASC,IAAIT,GAAOL,KAAKa,SAAS3E,IAAImE,IAAS,IAAIW,QAAO,SAAUC,GACvE,OAAOA,GAAKX,CACd,IACF,GACC,CACDb,IAAK,OACLzD,MAAO,SAAcqE,EAAMG,IACxBR,KAAKa,SAAS3E,IAAImE,IAAS,IAAIlD,SAAQ,SAAU8D,GAChD,IACEA,EAAET,EAGJ,CAFE,MAAOtD,GACPE,EAAQC,MAAM,kCAAmCH,EACnD,CACF,GACF,MAjF0E+B,EAAkBY,EAAYa,UAAWP,GAAiBC,GAAanB,EAAkBY,EAAaO,GAoF3KO,CACT,CAtC6B,GAwC7B5E,EAAQ4E,UAAYA,6CClHpB9E,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAETD,EAAQkB,UA8BR,SAAmBoD,EAAMC,GACvBX,EAAI1C,UAAUoD,EAAMC,EACtB,EA/BAvE,EAAQwE,YA0CR,SAAqBF,EAAMC,GACzBX,EAAIY,YAAYF,EAAMC,EACxB,EA3CAvE,EAAQ0E,KAoDR,SAAcJ,EAAMG,GAClBb,EAAIc,KAAKJ,EAAMG,EACjB,EApDA,IAAIU,EAAY,EAAQ,MAEpBC,EAAa,EAAQ,MAgBzB,IAAIxB,QAbuB,IAAdyB,OAAOzD,IAAsByD,OAAOzD,GAAGf,gBAA6C,IAAzBwE,OAAOC,gBAC3EjE,EAAQ8C,KAAK,sEACbkB,OAAOC,cAAgBD,OAAOzD,GAAGf,gBAIC,IAAzBwE,OAAOC,cACT,IAAIH,EAAUrC,SAASuC,OAAOC,eAE9BD,OAAOC,cAAgB,IAAIF,EAAWR,wCCrBjD,EAAQ,MAER,EAAQ,MAER,EAAQ,MAER,EAAQ,MAER9E,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAETD,EAAQuF,kBAqGR,WACE,OAAO,IAAIC,CACb,EArGA,IAIgC1D,EAJ5B2D,GAI4B3D,EAJU,EAAQ,QAIGA,EAAIG,WAAaH,EAAM,CAAEI,QAASJ,GAFnF4D,EAAI,EAAQ,MAIhB,SAAS1B,EAAgBH,EAAUC,GAAe,KAAMD,aAAoBC,GAAgB,MAAM,IAAIC,UAAU,oCAAwC,CAExJ,SAASb,EAAkBC,EAAQC,GAAS,IAAK,IAAIC,EAAI,EAAGA,EAAID,EAAME,OAAQD,IAAK,CAAE,IAAIE,EAAaH,EAAMC,GAAIE,EAAWrD,WAAaqD,EAAWrD,aAAc,EAAOqD,EAAWC,cAAe,EAAU,UAAWD,IAAYA,EAAWE,UAAW,GAAM3D,OAAOC,eAAeoD,EAAQI,EAAWG,IAAKH,EAAa,CAAE,CAE5T,SAASoC,EAAa7B,EAAaM,EAAYC,GAAmJ,OAAhID,GAAYlB,EAAkBY,EAAYa,UAAWP,GAAiBC,GAAanB,EAAkBY,EAAaO,GAAqBP,CAAa,CAEtN,IAAI0B,EAA8B,WAChC,SAASA,IACPxB,EAAgBC,KAAMuB,GAEtBvB,KAAK2B,aAAe,CAAC,EACrB3B,KAAK4B,OAAQ,CACf,CAgCA,OA9BAF,EAAaH,EAAgB,CAAC,CAC5B9B,IAAK,cACLzD,MAAO,SAAqB6F,GAE1B,OADA7B,KAAK8B,OAASD,EACP7B,IACT,GACC,CACDP,IAAK,eACLzD,MAAO,WACL,OAAOgE,KAAK+B,aAAY,EAAIN,EAAEO,eAAeC,QAAQ,IAAK,KAC5D,GACC,CACDxC,IAAK,iBACLzD,MAAO,SAAwB6F,EAAUK,GAEvC,OADAlC,KAAK2B,aAAaE,GAAYK,EACvBlC,IACT,GACC,CACDP,IAAK,kBACLzD,MAAO,WAEL,OADAgE,KAAK4B,OAAQ,EACN5B,IACT,GACC,CACDP,IAAK,QACLzD,MAAO,WACL,OAAO,IAAImG,EAAenC,KAAK8B,QAAU,KAAM9B,KAAK2B,aAAc3B,KAAK4B,MACzE,KAGKL,CACT,CAvCkC,GAyC9BY,EAA8B,WAChC,SAASA,EAAeL,EAAQI,EAAMN,GAQpC,IAAK,IAAInC,KAPTM,EAAgBC,KAAMmC,GAEtBnC,KAAKoC,GAAK,IAAIZ,EAAavD,QAAQ,CACjC2D,MAAOA,EACPS,aAAc,OAGAH,EACdlC,KAAKoC,GAAGE,gBAAgB7C,EAAK,WAAYyC,EAAKzC,IAGhDO,KAAKoC,GAAGG,UAAUT,EACpB,CA6BA,OA3BAJ,EAAaS,EAAgB,CAAC,CAC5B1C,IAAK,wBACLzD,MAAO,SAA+BwG,EAAYC,GAChD,OAAOD,EAAWP,QAAQ,eAAe,SAAUS,EAAGC,GACpD,IAAIC,EAAIH,EAAKE,GAEb,MAAiB,iBAANC,GAA+B,iBAANA,EAC3BA,EAAEC,WAEFH,CAEX,GACF,GACC,CACDjD,IAAK,UACLzD,MAAO,SAAiB8G,GACtB,IAAIC,EAAeC,UAAU3D,OAAS,QAAsB4D,IAAjBD,UAAU,GAAmBA,UAAU,GAAK,CAAC,EACxF,OAAOhD,KAAKkD,sBAAsBlD,KAAKoC,GAAGe,QAAQL,GAAWC,EAC/D,GACC,CACDtD,IAAK,WACLzD,MAAO,SAAkBoH,EAAUC,EAAQC,GACzC,IAAIP,EAAeC,UAAU3D,OAAS,QAAsB4D,IAAjBD,UAAU,GAAmBA,UAAU,GAAK,CAAC,EACxF,OAAOhD,KAAKkD,sBAAsBlD,KAAKoC,GAAGmB,SAASH,EAAUC,EAAQC,GAAOrB,QAAQ,MAAOqB,EAAMT,YAAaE,EAChH,KAGKZ,CACT,CA5CkC,8CC1ClC,SAASqB,IACP,MAAkB,oBAAP7F,IACTP,EAAQ8C,KAAK,eACN,MAGFvC,GAAG6F,WACZ,CA/BA,EAAQ,MAER,EAAQ,MAER3H,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAETD,EAAQyH,UAAYA,EACpBzH,EAAQ0H,mBAyBR,WACE,OAAOD,IAAYvB,QAAQ,KAAM,IACnC,EA1BAlG,EAAQiG,YAgCR,WACE,GAAkB,oBAAPrE,GAET,OADAP,EAAQ8C,KAAK,eACN,KAGT,OAAOvC,GAAGqE,aACZ,EAtCAjG,EAAQ2H,UAkDR,SAAmBC,EAAKC,EAAMnB,EAAMa,EAAOO,GACzC,GAAkB,oBAAPlG,GAET,OADAP,EAAQ8C,KAAK,eACN0D,EAGT,OAAOjG,GAAGmG,KAAKJ,UAAUC,EAAKC,EAAMnB,EAAMa,EAAOO,EACnD,EAxDA9H,EAAQgI,gBAsER,SAAyBJ,EAAKK,EAAcC,EAAYX,EAAOb,EAAMoB,GACnE,GAAkB,oBAAPlG,GAET,OADAP,EAAQ8C,KAAK,eACN8D,EAGT,OAAOrG,GAAGmG,KAAKC,gBAAgBJ,EAAKK,EAAcC,EAAYX,EAAOb,EAAMoB,EAC7E,EA5EA9H,EAAQmI,YAoFR,WACE,QAA+B,IAApB9C,OAAO+C,SAEhB,OADA/G,EAAQ8C,KAAK,qBACN,EAGT,OAAOkB,OAAO+C,QAChB,EA1FApI,EAAQqI,YAkGR,WACE,QAA+B,IAApBhD,OAAOiD,SAEhB,OADAjH,EAAQ8C,KAAK,qBACN,CAAC,SAAU,SAAU,UAAW,YAAa,WAAY,SAAU,YAG5E,OAAOkB,OAAOiD,QAChB,EAxGAtI,EAAQuI,iBAgHR,WACE,QAAoC,IAAzBlD,OAAOmD,cAEhB,OADAnH,EAAQ8C,KAAK,0BACN,CAAC,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,QAG1D,OAAOkB,OAAOmD,aAChB,EAtHAxI,EAAQyI,eA8HR,WACE,QAAkC,IAAvBpD,OAAOqD,YAEhB,OADArH,EAAQ8C,KAAK,wBACN,CAAC,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,MAG9C,OAAOkB,OAAOqD,WAChB,EApIA1I,EAAQ2I,cA4IR,WACE,QAAiC,IAAtBtD,OAAOuD,WAEhB,OADAvH,EAAQ8C,KAAK,uBACN,CAAC,UAAW,WAAY,QAAS,QAAS,MAAO,OAAQ,OAAQ,SAAU,YAAa,UAAW,WAAY,YAGxH,OAAOkB,OAAOuD,UAChB,EAlJA5I,EAAQ6I,mBA0JR,WACE,QAAsC,IAA3BxD,OAAOyD,gBAEhB,OADAzH,EAAQ8C,KAAK,4BACN,CAAC,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,QAGlG,OAAOkB,OAAOyD,eAChB,+BClLA,EAAQ,MAER,EAAQ,MAER,EAAQ,MAER,EAAQ,MAER,EAAQ,MAER,EAAQ,MAKa9I,EAAQ,GAAuCA,EAAQ,QAAoF,EAsGhKA,EAAQ,GAxCU,SAAqB+I,EAAKC,EAAQlB,GAClD,IAAImB,EAAanJ,OAAO2C,OAAO,CAC7ByG,QAAQ,EACRC,WAAW,GACVrB,GAAW,CAAC,GAEXsB,EAAS,SAAgBvB,EAAMnB,GAEjC,OADAA,EAAOA,GAAQ,CAAC,EACTmB,EAAK3B,QAAQ,eAAe,SAAUS,EAAGC,GAC9C,IAAIC,EAAIH,EAAKE,GAEb,OAAIqC,EAAWC,OACO,iBAANrC,GAA+B,iBAANA,EAAiBwC,mBAAmBxC,EAAEC,YAAcuC,mBAAmB1C,GAE1F,iBAANE,GAA+B,iBAANA,EAAiBA,EAAEC,WAAaH,CAE3E,GACF,EAMA,MAJsB,MAAlBoC,EAAIO,OAAO,KACbP,EAAM,IAAMA,IAGsB,IAAhCnH,GAAG2H,OAAOC,mBAA+BP,EAAWE,UAIjDM,IAAe,aAAeL,EAAOL,EAAKC,GAAU,CAAC,GAHnDS,IAAeL,EAAOL,EAAKC,GAAU,CAAC,EAIjD,EAkCA,IAAIU,EAAmB,SAA0B9B,EAAK+B,EAAMC,GAC1D,IAAIC,GAAuC,IAA9BjI,GAAGkI,SAASC,QAAQnC,GAC7BoC,EAAOP,IAiDX,MA/CwC,QAApCG,EAAKK,UAAUL,EAAKtG,OAAS,IAAiBuG,EAYH,QAApCD,EAAKK,UAAUL,EAAKtG,OAAS,IAAiBuG,GAgBrDG,GAHW,aAARpC,GAA8B,SAARA,GAA0B,WAARA,GAA8B,SAAT+B,EAGxD,IAFA,cAKLE,IACHG,GAAQ,SAGE,KAARpC,IAEFoC,GADApC,GAAO,KAIL+B,IACFK,GAAQL,EAAO,KAGjBK,GAAQJ,IA/BRI,EAAOpI,GAAGsI,aAAatC,GAEnB+B,IACFK,GAAQ,IAAML,EAAO,KAGiB,MAApCK,EAAKC,UAAUD,EAAK1G,OAAS,KAC/B0G,GAAQ,KAGVA,GAAQJ,IAtBRI,GAAQ,mBAAqBpC,EAEhB,cAATgC,IACFI,GAAQ,IAEJL,IACFK,GAAQG,UAAUR,EAAO,MAG3BK,GAAQJ,IAqCLI,CACT,EAUAhK,EAAQ,GAAmB0J,EAE3B,IAAID,EAAa,WACf,OAAO7H,GAAGwI,OACZ,kBC9MoRC,KAAnNC,EAAOtK,QAAoO,WAAW,IAAIuK,EAAE,CAAC,KAAK,SAASA,EAAEpJ,EAAEqJ,GAAG,aAAa,IAAI7D,EAAE6D,EAAE,MAAMrJ,EAAEsJ,EAAE,CAACnG,KAAK,eAAeoG,OAAO,CAAC/D,EAAE8D,GAAGrH,MAAM,CAACuH,SAAS,CAAChB,KAAKiB,QAAQ1I,SAAQ,IAAK2I,SAAS,CAACC,YAAY,WAAW,OAAO7G,KAAK0G,QAAQ,GAAG,EAAE,IAAI,SAASJ,EAAEpJ,EAAEqJ,GAAG,aAAa,IAAI7D,EAAE6D,EAAE,MAAMnH,EAAEmH,EAAEA,EAAE7D,GAAGoE,EAAEP,EAAE,MAAMQ,EAAER,EAAE,MAAM3D,EAAE2D,EAAE,MAAMS,EAAET,EAAE,KAAKU,EAAEV,EAAE,MAAM,SAASW,EAAEZ,EAAEpJ,IAAI,MAAMA,GAAGA,EAAEoJ,EAAEjH,UAAUnC,EAAEoJ,EAAEjH,QAAQ,IAAI,IAAIkH,EAAE,EAAE7D,EAAE,IAAIyE,MAAMjK,GAAGqJ,EAAErJ,EAAEqJ,IAAI7D,EAAE6D,GAAGD,EAAEC,GAAG,OAAO7D,CAAC,CAAC,SAAS0E,EAAEd,EAAEpJ,GAAG,IAAIqJ,EAAE1K,OAAOwL,KAAKf,GAAG,GAAGzK,OAAOyL,sBAAsB,CAAC,IAAI5E,EAAE7G,OAAOyL,sBAAsBhB,GAAGpJ,IAAIwF,EAAEA,EAAE1B,QAAO,SAAU9D,GAAG,OAAOrB,OAAO0L,yBAAyBjB,EAAEpJ,GAAGjB,UAAW,KAAIsK,EAAE5J,KAAK6K,MAAMjB,EAAE7D,EAAE,CAAC,OAAO6D,CAAC,CAAC,SAASkB,EAAEnB,GAAG,IAAI,IAAIpJ,EAAE,EAAEA,EAAE8F,UAAU3D,OAAOnC,IAAI,CAAC,IAAIqJ,EAAE,MAAMvD,UAAU9F,GAAG8F,UAAU9F,GAAG,CAAC,EAAEA,EAAE,EAAEkK,EAAEvL,OAAO0K,IAAG,GAAIpJ,SAAQ,SAAUD,GAAGwK,EAAEpB,EAAEpJ,EAAEqJ,EAAErJ,GAAI,IAAGrB,OAAO8L,0BAA0B9L,OAAO+L,iBAAiBtB,EAAEzK,OAAO8L,0BAA0BpB,IAAIa,EAAEvL,OAAO0K,IAAIpJ,SAAQ,SAAUD,GAAGrB,OAAOC,eAAewK,EAAEpJ,EAAErB,OAAO0L,yBAAyBhB,EAAErJ,GAAI,GAAE,CAAC,OAAOoJ,CAAC,CAAC,SAASoB,EAAEpB,EAAEpJ,EAAEqJ,GAAG,OAAOrJ,KAAKoJ,EAAEzK,OAAOC,eAAewK,EAAEpJ,EAAE,CAAClB,MAAMuK,EAAEtK,YAAW,EAAGsD,cAAa,EAAGC,UAAS,IAAK8G,EAAEpJ,GAAGqJ,EAAED,CAAC,CAAC,IAAIuB,EAAE,aAAa3K,EAAEsJ,EAAE,CAACnG,KAAK,UAAUyH,WAAW,CAACC,QAAQhB,EAAE9I,SAAS+J,WAAW,CAACC,eAAe7I,IAAI8I,QAAQjB,EAAEhJ,QAAQkK,OAAOrB,EAAEN,GAAGrH,MAAM,CAACiJ,KAAK,CAAC1C,KAAKiB,QAAQ1I,SAAQ,GAAIoK,UAAU,CAAC3C,KAAKiB,QAAQ1I,SAAQ,GAAIqK,WAAW,CAAC5C,KAAKiB,QAAQ1I,SAAQ,GAAIsK,UAAU,CAAC7C,KAAK8C,OAAOvK,QAAQ,MAAMwK,QAAQ,CAAC/C,KAAKiB,QAAQ1I,SAAQ,GAAIyK,YAAY,CAAChD,KAAK8C,OAAOvK,QAAQ,IAAI0K,UAAU,CAACjD,KAAK8C,OAAOvK,SAAQ,EAAG+I,EAAEV,GAAG,YAAYsC,UAAU,CAAClD,KAAK8C,OAAOvK,QAAQ,UAAU4K,kBAAkB,CAACnD,KAAKoD,QAAQ7K,QAAQ,WAAW,OAAOnB,SAASiM,cAAc,OAAO,GAAGC,UAAU,CAACtD,KAAK8C,OAAOvK,QAAQ,QAAQyI,SAAS,CAAChB,KAAKiB,QAAQ1I,SAAQ,IAAKiE,KAAK,WAAW,MAAM,CAAC+G,QAAQ,GAAGC,OAAOlJ,KAAKoI,KAAKe,WAAW,EAAEC,SAAS,SAAQ,EAAGxG,EAAE4D,KAAK6C,SAASrJ,KAAKsJ,UAAUC,YAAY,CAAC,EAAE,EAAE3C,SAAS,CAAC4C,mBAAmB,WAAW,OAAOxJ,KAAKiJ,QAAQ5J,OAAO,CAAC,EAAEoK,oBAAoB,WAAW,OAAO,IAAIzJ,KAAKiJ,QAAQ5J,QAAQ,OAAOW,KAAK0J,kBAAkB,EAAEC,kBAAkB,WAAW,OAAO3J,KAAKsI,WAAWtI,KAAKuI,UAAU,EAAE,EAAEqB,WAAW,WAAW,IAAItD,EAAEpJ,EAAE,OAAO8C,KAAK0G,UAAU,IAAI1G,KAAKiJ,QAAQ5J,SAAS,QAAQiH,EAAEtG,KAAKuJ,mBAAc,IAASjD,GAAG,QAAQpJ,EAAEoJ,EAAEuD,cAAS,IAAS3M,OAAE,EAAOA,EAAEwJ,SAAS,EAAEoD,iBAAiB,WAAW,OAAO9J,KAAKiJ,QAAQ,EAAE,EAAEc,mBAAmB,WAAW,GAAG/J,KAAK8J,kBAAkB9J,KAAK8J,iBAAiBE,iBAAiB,CAAC,IAAI1D,EAAEtG,KAAK8J,iBAAiBE,iBAAiBC,IAAI,GAAG,eAAe3D,EAAE,OAAOmB,EAAEA,EAAE,CAACyC,GAAG,IAAIC,KAAKnK,KAAKuJ,YAAYY,KAAKjL,OAAOc,KAAKuJ,YAAYrK,OAAO,aAAac,KAAKuJ,YAAYZ,WAAW3I,KAAKuJ,YAAYa,QAAQpK,KAAKuJ,YAAYM,QAAQ,GAAG,iBAAiBvD,EAAE,OAAOmB,EAAEA,EAAE,CAACyC,GAAG,cAAcG,GAAGrK,KAAKuJ,YAAYc,GAAGC,MAAMtK,KAAKuJ,YAAYe,MAAM,aAAatK,KAAKuJ,YAAYZ,WAAW3I,KAAKuJ,YAAYa,QAAQpK,KAAKuJ,YAAYM,QAAQ,GAAG,iBAAiBvD,EAAE,OAAOmB,EAAEA,EAAE,CAACyC,GAAG,SAAS,aAAalK,KAAKuJ,YAAYZ,WAAW3I,KAAKuJ,YAAYa,QAAQpK,KAAKuJ,YAAYM,OAAO,CAAC,OAAO,IAAI,EAAEU,iBAAiB,WAAW,IAAIjE,EAAEpJ,EAAEqJ,EAAE,OAAO,QAAQD,EAAEtG,KAAK8J,wBAAmB,IAASxD,GAAG,QAAQpJ,EAAEoJ,EAAE0D,wBAAmB,IAAS9M,GAAG,QAAQqJ,EAAErJ,EAAEsN,iBAAY,IAASjE,OAAE,EAAOA,EAAEkE,KAAK,EAAEC,wBAAwB,WAAW,OAAO1K,KAAKuK,iBAAiB,QAAQ,IAAI,EAAEI,oBAAoB,WAAW,IAAIrE,EAAEpJ,EAAE,OAAO,QAAQoJ,EAAEtG,KAAKuJ,mBAAc,IAASjD,GAAG,QAAQpJ,EAAEoJ,EAAEsE,cAAS,IAAS1N,OAAE,EAAOA,EAAE2N,IAAI,EAAEC,iBAAiB,WAAW,QAAQ9K,KAAK8J,kBAAkB9J,KAAK8J,iBAAiB5H,KAAK6I,aAAa,KAAK/K,KAAK8J,kBAAkB9J,KAAK8J,iBAAiB5H,KAAK8I,QAAQC,MAAM,EAAEC,oBAAoB,WAAW,QAAQlL,KAAK4K,OAAOC,IAAI,GAAGM,MAAM,CAAC/C,KAAK,SAAS9B,GAAGA,IAAItG,KAAKkJ,SAASlJ,KAAKkJ,OAAO5C,EAAE,EAAE+C,SAAS,WAAWrJ,KAAKuJ,YAAYvJ,KAAKqJ,SAAS,GAAGrJ,KAAKqJ,SAAS,GAAG,CAAC,CAAC,GAAG+B,YAAY,WAAWpL,KAAKqL,aAAa,EAAEC,aAAa,WAAWtL,KAAKqL,aAAa,EAAEE,QAAQ,CAACC,SAAS,SAASlF,GAAGtG,KAAKkJ,SAASlJ,KAAKkJ,QAAO,EAAGlJ,KAAKyL,MAAM,eAAc,GAAIzL,KAAKyL,MAAM,QAAQ,EAAEC,UAAU,SAASpF,GAAGtG,KAAKkJ,SAASlJ,KAAKkJ,QAAO,EAAGlJ,KAAKyL,MAAM,eAAc,GAAIzL,KAAKyL,MAAM,SAASzL,KAAKkJ,QAAO,EAAGlJ,KAAKmJ,WAAW,EAAEnJ,KAAK2L,MAAMC,WAAWC,QAAQ,EAAEC,OAAO,SAASxF,GAAG,IAAIpJ,EAAE8C,KAAKA,KAAK+L,WAAU,WAAY7O,EAAE8O,iBAAiB1F,EAAG,GAAE,EAAE2F,mBAAmB,SAAS3F,GAAG,GAAGxJ,SAASoP,gBAAgB5F,EAAEpH,OAAO,CAAC,IAAIhC,EAAEoJ,EAAEpH,OAAOiN,QAAQ,MAAM,GAAGjP,EAAE,CAAC,IAAIqJ,EAAErJ,EAAE6L,cAAclB,GAAG,GAAGtB,EAAE,CAAC,IAAI7D,GAAGtD,EAAEY,KAAK2L,MAAMS,KAAKC,iBAAiBxE,GAAG,SAASvB,GAAG,GAAGa,MAAMmF,QAAQhG,GAAG,OAAOY,EAAEZ,EAAE,CAA3C,CAA6ClH,IAAI,SAASkH,GAAG,GAAG,oBAAoBiG,QAAQ,MAAMjG,EAAEiG,OAAOC,WAAW,MAAMlG,EAAE,cAAc,OAAOa,MAAMsF,KAAKnG,EAAE,CAA/G,CAAiHlH,IAAI,SAASkH,EAAEpJ,GAAG,GAAGoJ,EAAE,CAAC,GAAG,iBAAiBA,EAAE,OAAOY,EAAEZ,EAAEpJ,GAAG,IAAIqJ,EAAE1K,OAAO6E,UAAUmC,SAAS6J,KAAKpG,GAAGqG,MAAM,GAAG,GAAG,MAAM,WAAWpG,GAAGD,EAAEsG,cAAcrG,EAAED,EAAEsG,YAAYvM,MAAM,QAAQkG,GAAG,QAAQA,EAAEY,MAAMsF,KAAKnG,GAAG,cAAcC,GAAG,2CAA2CsG,KAAKtG,GAAGW,EAAEZ,EAAEpJ,QAAG,CAAM,CAAC,CAA3R,CAA6RkC,IAAI,WAAW,MAAM,IAAIU,UAAU,uIAAuI,CAAtK,IAA2KgG,QAAQS,GAAG7D,GAAG,IAAI1C,KAAKmJ,WAAWzG,EAAE1C,KAAK8M,cAAc,CAAC,CAAC,CAAC,IAAI1N,CAAC,EAAE2N,oBAAoB,WAAW,IAAIzG,EAAEtG,KAAK2L,MAAMS,KAAKrD,cAAc,aAAazC,GAAGA,EAAE0G,UAAUC,OAAO,SAAS,EAAEH,YAAY,WAAW,IAAIxG,EAAEtG,KAAK2L,MAAMS,KAAKC,iBAAiBxE,GAAG7H,KAAKmJ,YAAY,GAAG7C,EAAE,CAACtG,KAAK+M,sBAAsB,IAAI7P,EAAEoJ,EAAE6F,QAAQ,aAAa7F,EAAEuF,QAAQ3O,GAAGA,EAAE8P,UAAUE,IAAI,SAAS,CAAC,EAAEC,oBAAoB,SAAS7G,GAAGtG,KAAKkJ,SAAS,IAAIlJ,KAAKmJ,WAAWnJ,KAAK0L,aAAa1L,KAAKoN,eAAe9G,GAAGtG,KAAKmJ,WAAWnJ,KAAKmJ,WAAW,GAAGnJ,KAAK8M,cAAc,EAAEO,gBAAgB,SAAS/G,GAAG,GAAGtG,KAAKkJ,OAAO,CAAC,IAAIhM,EAAE8C,KAAK2L,MAAMS,KAAKC,iBAAiBxE,GAAGxI,OAAO,EAAEW,KAAKmJ,aAAajM,EAAE8C,KAAK0L,aAAa1L,KAAKoN,eAAe9G,GAAGtG,KAAKmJ,WAAWnJ,KAAKmJ,WAAW,GAAGnJ,KAAK8M,aAAa,CAAC,EAAEd,iBAAiB,SAAS1F,GAAGtG,KAAKkJ,SAASlJ,KAAKoN,eAAe9G,GAAGtG,KAAKmJ,WAAW,EAAEnJ,KAAK8M,cAAc,EAAEQ,gBAAgB,SAAShH,GAAGtG,KAAKkJ,SAASlJ,KAAKoN,eAAe9G,GAAGtG,KAAKmJ,WAAWnJ,KAAKuN,IAAIlB,iBAAiBxE,GAAGxI,OAAO,EAAEW,KAAK8M,cAAc,EAAEM,eAAe,SAAS9G,GAAGA,IAAIA,EAAEkH,iBAAiBlH,EAAEmH,kBAAkB,EAAEC,gBAAgB,SAASpH,GAAGtG,KAAKuK,kBAAkBvK,KAAKuK,iBAAiBjE,EAAE,EAAE+E,YAAY,WAAWrL,KAAKiJ,SAASjJ,KAAK4K,OAAO3M,SAAS,IAAI+C,QAAO,SAAUsF,GAAG,QAAQA,KAAKA,EAAE0D,gBAAiB,GAAE,EAAE2D,QAAQ,SAASrH,GAAGtG,KAAKyL,MAAM,QAAQnF,EAAE,EAAEsH,OAAO,SAAStH,GAAGtG,KAAKyL,MAAM,OAAOnF,EAAE,GAAG,EAAE,KAAK,SAASA,EAAEpJ,GAAG,aAAaA,EAAEsJ,EAAE,CAACnG,KAAK,SAASwN,YAAW,EAAGC,OAAO,SAASxH,EAAEpJ,GAAG,OAAOA,EAAEiC,MAAM4O,MAAM,EAAE,EAAE,KAAK,SAASzH,EAAEpJ,EAAEqJ,GAAG,aAAa,IAAI7D,EAAE6D,EAAE,KAAKrJ,EAAEe,QAAQyE,EAAE8D,CAAC,EAAE,KAAK,SAASF,EAAEpJ,EAAEqJ,GAAG,aAAa,IAAI7D,EAAE6D,EAAE,MAAMrJ,EAAEe,QAAQyE,EAAE8D,CAAC,EAAE,KAAK,SAASF,EAAEpJ,EAAEqJ,GAAG,aAAa,IAAI7D,EAAE6D,EAAE,MAAMrJ,EAAEe,QAAQyE,EAAE8D,CAAC,EAAE,KAAK,SAASF,EAAEpJ,EAAEqJ,GAAG,aAAaA,EAAEW,EAAEhK,EAAE,CAACe,QAAQ,WAAW,OAAO+P,CAAC,IAAI,IAAItL,EAAE6D,EAAE,MAAMnH,EAAEmH,EAAE,MAAMO,EAAEP,EAAEA,EAAEnH,GAAG2H,EAAER,EAAE,MAAM3D,EAAE2D,EAAEA,EAAEQ,GAAGC,EAAET,EAAE,KAAKU,EAAEV,EAAEA,EAAES,GAAGE,EAAEX,EAAE,MAAMa,EAAEb,EAAEA,EAAEW,GAAGO,EAAElB,EAAE,MAAMmB,EAAEnB,EAAEA,EAAEkB,GAAGI,EAAEtB,EAAE,MAAMtF,EAAEsF,EAAEA,EAAEsB,GAAGoG,EAAE1H,EAAE,MAAM2H,EAAE,CAAC,EAAEA,EAAEC,kBAAkBlN,IAAIiN,EAAEE,cAAchH,IAAI8G,EAAEG,OAAOpH,IAAIqH,KAAK,KAAK,QAAQJ,EAAEK,OAAO3L,IAAIsL,EAAEM,mBAAmB9G,IAAIZ,IAAImH,EAAEzH,EAAE0H,GAAGD,EAAEzH,GAAGyH,EAAEzH,EAAEiI,QAAQR,EAAEzH,EAAEiI,OAAO/L,EAAEgM,SAAS7K,QAAQ8K,gBAAgB,kDAAkD5N,OAAO,UAAU,6EAA6E2B,EAAEgM,SAAS7K,QAAQ+K,aAAY,EAAGlM,EAAEgM,SAAS7K,QAAQgL,aAAa,CAACC,KAAK,IAAIC,KAAK,KAAK,IAAIf,EAAEtL,EAAEgM,QAAQ,EAAE,IAAI,SAASpI,EAAEpJ,EAAEqJ,GAAG,aAAaA,EAAEW,EAAEhK,EAAE,CAACqJ,EAAE,WAAW,OAAOO,CAAC,EAAER,EAAE,WAAW,OAAOS,CAAC,IAAI,IAAIrE,GAAE,EAAG6D,EAAE,MAAMjF,qBAAqB0N,eAAe,CAAC,CAAClN,OAAO,KAAKH,aAAa,CAAC,oBAAoB,mBAAmB,qBAAqB,eAAesN,QAAQ,YAAYC,WAAW,WAAW,mBAAmB,qBAAqB,0BAA0B,6BAA6B,oCAAoC,uCAAuC,iBAAiB,kBAAkBC,OAAO,SAASC,MAAM,OAAO,mBAAmB,gBAAgB,kBAAkB,kBAAkBC,OAAO,OAAO,YAAY,aAAa,qCAAqC,6BAA6BC,MAAM,UAAU,eAAe,iBAAiB,kBAAkB,kBAAkBC,OAAO,QAAQ,sBAAsB,qBAAqB,8CAA8C,gEAAgEC,KAAK,SAAS,iBAAiB,kCAAkC,aAAa,qBAAqBC,QAAQ,UAAU,kBAAkB,cAAc,kBAAkB,qBAAqB,gBAAgB,eAAe,gBAAgB,sBAAsB,6BAA6B,gCAAgCC,SAAS,SAASC,OAAO,MAAM,iBAAiB,cAAc,eAAe,aAAaC,SAAS,YAAY,sBAAsB,kBAAkB,oBAAoB,4BAA4B,kBAAkB,YAAYC,OAAO,QAAQC,QAAQ,SAAS,kBAAkB,iBAAiB,2BAA2B,4BAA4B,6BAA6B,yBAAyB,eAAe,uBAAuB,oEAAoE,8EAA8E,CAAChO,OAAO,KAAKH,aAAa,CAAC,oBAAoB,kBAAkB,qBAAqB,mBAAmBsN,QAAQ,UAAUC,WAAW,eAAe,mBAAmB,iBAAiBC,OAAO,QAAQC,MAAM,SAASC,OAAO,aAAaC,MAAM,YAAY,eAAe,iBAAiB,kBAAkB,iBAAiBE,KAAK,UAAU,iBAAiB,mBAAmB,aAAa,eAAeC,QAAQ,QAAQ,kBAAkB,qBAAqB,gBAAgB,aAAa,gBAAgB,iBAAiBC,SAAS,SAASC,OAAO,QAAQ,iBAAiB,uBAAuB,eAAe,kBAAkBC,SAAS,cAAc,oBAAoB,qBAAqB,kBAAkB,sBAAsBE,QAAQ,YAAY,kBAAkB,kBAAkB,6BAA6B,kCAAkC,CAAChO,OAAO,KAAKH,aAAa,CAAC,oBAAoB,oBAAoB,qBAAqB,qBAAqBsN,QAAQ,UAAUC,WAAW,aAAa,mBAAmB,mBAAmB,0BAA0B,0BAA0B,oCAAoC,oCAAoC,iBAAiB,uBAAuBC,OAAO,OAAOC,MAAM,QAAQ,mBAAmB,sBAAsB,kBAAkB,uBAAuBC,OAAO,gBAAgB,YAAY,kBAAkB,qCAAqC,qCAAqCC,MAAM,UAAU,eAAe,mBAAmB,kBAAkB,wBAAwBC,OAAO,SAAS,sBAAsB,oBAAoB,8CAA8C,0DAA0DC,KAAK,UAAU,iBAAiB,2BAA2B,aAAa,kBAAkBC,QAAQ,WAAW,kBAAkB,qBAAqB,kBAAkB,uBAAuB,gBAAgB,iBAAiB,gBAAgB,iBAAiB,6BAA6B,gCAAgCC,SAAS,WAAWC,OAAO,QAAQ,iBAAiB,qBAAqB,eAAe,0BAA0BC,SAAS,aAAa,sBAAsB,sBAAsB,oBAAoB,mBAAmB,kBAAkB,wBAAwBC,OAAO,QAAQC,QAAQ,UAAU,kBAAkB,kBAAkB,2BAA2B,sCAAsC,6BAA6B,2BAA2B,eAAe,gBAAgB,oEAAoE,yFAAyF,CAAChO,OAAO,QAAQH,aAAa,CAAC,oBAAoB,sBAAsB,qBAAqB,kBAAkBsN,QAAQ,OAAOC,WAAW,WAAW,mBAAmB,oBAAoB,0BAA0B,2CAA2C,oCAAoC,qDAAqD,iBAAiB,eAAeC,OAAO,SAASC,MAAM,SAAS,mBAAmB,kBAAkB,kBAAkB,iBAAiBC,OAAO,qBAAqB,YAAY,kBAAkB,qCAAqC,gCAAgCC,MAAM,WAAW,eAAe,eAAe,kBAAkB,kBAAkBC,OAAO,WAAW,sBAAsB,qBAAqB,8CAA8C,+CAA+CC,KAAK,cAAc,iBAAiB,yBAAyB,aAAa,iBAAiBC,QAAQ,UAAU,kBAAkB,mBAAmB,kBAAkB,wBAAwB,gBAAgB,cAAc,gBAAgB,eAAe,6BAA6B,wBAAwBC,SAAS,YAAYC,OAAO,SAAS,iBAAiB,mBAAmB,eAAe,gBAAgBC,SAAS,YAAY,sBAAsB,qBAAqB,oBAAoB,iBAAiB,kBAAkB,qBAAqBC,OAAO,UAAUC,QAAQ,UAAU,kBAAkB,oBAAoB,2BAA2B,iCAAiC,6BAA6B,2BAA2B,eAAe,kBAAkB,oEAAoE,sKAAsK,CAAChO,OAAO,KAAKH,aAAa,CAAC,oBAAoB,kBAAkB,qBAAqB,oBAAoBsN,QAAQ,aAAaC,WAAW,cAAc,mBAAmB,cAAcC,OAAO,OAAOC,MAAM,MAAMC,OAAO,kBAAkBC,MAAM,OAAO,eAAe,eAAe,kBAAkB,aAAa,8CAA8C,sCAAsCE,KAAK,SAAS,iBAAiB,qBAAqB,aAAa,mBAAmBC,QAAQ,WAAW,kBAAkB,wBAAwB,gBAAgB,8BAA8B,gBAAgB,gBAAgBC,SAAS,UAAUC,OAAO,MAAM,iBAAiB,iBAAiB,eAAe,gBAAgBC,SAAS,gBAAgB,sBAAsB,0BAA0B,oBAAoB,oBAAoB,kBAAkB,oBAAoBE,QAAQ,WAAW,kBAAkB,oBAAoB,6BAA6B,gCAAgC,wCAAwC,gDAAgD,CAAChO,OAAO,KAAKH,aAAa,CAAC,oBAAoB,qBAAqB,qBAAqB,wBAAwBsN,QAAQ,WAAWC,WAAW,cAAc,mBAAmB,gBAAgB,0BAA0B,2BAA2B,oCAAoC,qCAAqC,iBAAiB,uBAAuBC,OAAO,YAAYC,MAAM,YAAY,mBAAmB,uBAAuB,kBAAkB,wBAAwBC,OAAO,oBAAoB,YAAY,oBAAoB,qCAAqC,oCAAoCC,MAAM,UAAU,eAAe,kBAAkB,kBAAkB,mBAAmBC,OAAO,SAAS,sBAAsB,mBAAmB,8CAA8C,gDAAgDC,KAAK,SAAS,iBAAiB,sBAAsB,aAAa,mBAAmBC,QAAQ,cAAc,kBAAkB,oBAAoB,kBAAkB,oBAAoB,gBAAgB,oBAAoB,gBAAgB,sBAAsB,6BAA6B,kCAAkCC,SAAS,YAAYC,OAAO,QAAQ,iBAAiB,iBAAiB,eAAe,uBAAuBC,SAAS,gBAAgB,sBAAsB,mCAAmC,oBAAoB,sBAAsB,kBAAkB,kBAAkBC,OAAO,aAAaC,QAAQ,UAAU,kBAAkB,gBAAgB,2BAA2B,gCAAgC,6BAA6B,4CAA4C,eAAe,+BAA+B,oEAAoE,4GAA4G,CAAChO,OAAO,QAAQH,aAAa,CAAC,oBAAoB,qBAAqB,qBAAqB,wBAAwBsN,QAAQ,WAAWC,WAAW,cAAc,mBAAmB,gBAAgB,0BAA0B,2BAA2B,oCAAoC,qCAAqC,iBAAiB,uBAAuBC,OAAO,YAAYC,MAAM,YAAY,mBAAmB,uBAAuB,kBAAkB,wBAAwBC,OAAO,oBAAoB,YAAY,oBAAoB,qCAAqC,oCAAoCC,MAAM,UAAU,eAAe,kBAAkB,kBAAkB,mBAAmBC,OAAO,SAAS,sBAAsB,mBAAmB,8CAA8C,gDAAgDC,KAAK,SAAS,iBAAiB,sBAAsB,aAAa,mBAAmBC,QAAQ,UAAU,kBAAkB,oBAAoB,kBAAkB,oBAAoB,gBAAgB,oBAAoB,gBAAgB,sBAAsB,6BAA6B,iCAAiCC,SAAS,YAAYC,OAAO,QAAQ,iBAAiB,iBAAiB,eAAe,uBAAuBC,SAAS,gBAAgB,sBAAsB,mCAAmC,oBAAoB,sBAAsB,kBAAkB,kBAAkBC,OAAO,aAAaC,QAAQ,UAAU,kBAAkB,gBAAgB,2BAA2B,qCAAqC,6BAA6B,0CAA0C,eAAe,+BAA+B,oEAAoE,2GAA2G,CAAChO,OAAO,KAAKH,aAAa,CAAC,oBAAoB,iBAAiB,qBAAqB,uBAAuBsN,QAAQ,YAAYC,WAAW,iBAAiB,mBAAmB,aAAa,0BAA0B,2BAA2B,iBAAiB,kBAAkBC,OAAO,UAAUC,MAAM,WAAW,mBAAmB,qBAAqB,kBAAkB,sBAAsBC,OAAO,aAAa,YAAY,cAAc,qCAAqC,mCAAmCC,MAAM,UAAU,eAAe,gBAAgB,kBAAkB,yBAAyBC,OAAO,WAAW,sBAAsB,+BAA+B,8CAA8C,4DAA4DC,KAAK,UAAU,iBAAiB,oBAAoB,aAAa,oBAAoBC,QAAQ,cAAc,kBAAkB,oBAAoB,kBAAkB,4BAA4B,gBAAgB,kBAAkB,gBAAgB,qBAAqB,6BAA6B,sCAAsCC,SAAS,cAAcC,OAAO,YAAY,iBAAiB,0BAA0B,eAAe,mBAAmBC,SAAS,YAAY,sBAAsB,qBAAqB,oBAAoB,yBAAyB,kBAAkB,6BAA6BC,OAAO,UAAUC,QAAQ,UAAU,kBAAkB,uBAAuB,2BAA2B,0CAA0C,6BAA6B,0CAA0C,eAAe,mBAAmB,wCAAwC,kEAAkE,CAAChO,OAAO,KAAKH,aAAa,CAAC,oBAAoB,iBAAiB,qBAAqB,mBAAmBsN,QAAQ,OAAOC,WAAW,WAAW,mBAAmB,kBAAkBC,OAAO,SAASC,MAAM,QAAQC,OAAO,SAASC,MAAM,SAAS,eAAe,qBAAqB,kBAAkB,cAAc,8CAA8C,yCAAyCE,KAAK,QAAQ,iBAAiB,qBAAqB,aAAa,sBAAsBC,QAAQ,WAAW,kBAAkB,sBAAsB,gBAAgB,gBAAgB,gBAAgB,kBAAkBC,SAAS,SAASC,OAAO,QAAQ,iBAAiB,eAAe,eAAe,kBAAkBC,SAAS,SAAS,sBAAsB,kBAAkB,oBAAoB,oBAAoB,kBAAkB,wBAAwBE,QAAQ,SAAS,kBAAkB,kBAAkB,6BAA6B,6BAA6B,wCAAwC,qCAAqC,CAAChO,OAAO,KAAKH,aAAa,CAAC,oBAAoB,oBAAoB,qBAAqB,sBAAsBsN,QAAQ,WAAWC,WAAW,cAAc,mBAAmB,wBAAwB,0BAA0B,0BAA0B,oCAAoC,oCAAoC,iBAAiB,mBAAmBC,OAAO,SAASC,MAAM,SAAS,mBAAmB,oBAAoB,kBAAkB,oBAAoBC,OAAO,gBAAgB,YAAY,kBAAkB,qCAAqC,mCAAmCC,MAAM,WAAW,eAAe,kBAAkB,kBAAkB,sBAAsBC,OAAO,SAAS,sBAAsB,oBAAoB,8CAA8C,0DAA0DC,KAAK,YAAY,iBAAiB,sBAAsB,aAAa,oBAAoBC,QAAQ,UAAU,kBAAkB,mBAAmB,kBAAkB,0BAA0B,gBAAgB,qBAAqB,gBAAgB,kBAAkB,6BAA6B,sCAAsCC,SAAS,WAAWC,OAAO,SAAS,iBAAiB,4BAA4B,eAAe,0BAA0BC,SAAS,UAAU,sBAAsB,yBAAyB,oBAAoB,uBAAuB,kBAAkB,0BAA0BC,OAAO,SAASC,QAAQ,WAAW,kBAAkB,mBAAmB,2BAA2B,yCAAyC,6BAA6B,mCAAmC,eAAe,mBAAmB,wCAAwC,sDAAsD,CAAChO,OAAO,KAAKH,aAAa,CAAC,oBAAoB,oBAAoB,qBAAqB,kBAAkBsN,QAAQ,WAAWC,WAAW,YAAY,mBAAmB,uBAAuB,0BAA0B,4BAA4B,oCAAoC,uCAAuC,iBAAiB,qBAAqBC,OAAO,WAAWC,MAAM,OAAO,mBAAmB,kBAAkB,kBAAkB,sBAAsBC,OAAO,kBAAkB,YAAY,oBAAoB,qCAAqC,yCAAyCC,MAAM,WAAW,eAAe,sBAAsB,kBAAkB,mBAAmBC,OAAO,UAAU,sBAAsB,sBAAsB,8CAA8C,kDAAkDC,KAAK,YAAY,iBAAiB,yBAAyB,aAAa,gBAAgBC,QAAQ,YAAY,kBAAkB,mBAAmB,kBAAkB,oBAAoB,gBAAgB,sBAAsB,gBAAgB,qBAAqB,6BAA6B,iCAAiCC,SAAS,WAAWC,OAAO,SAAS,iBAAiB,oBAAoB,eAAe,sBAAsBC,SAAS,YAAY,sBAAsB,sBAAsB,oBAAoB,uBAAuB,kBAAkB,iBAAiBC,OAAO,SAASC,QAAQ,YAAY,kBAAkB,qBAAqB,2BAA2B,iCAAiC,6BAA6B,6BAA6B,eAAe,oBAAoB,oEAAoE,sEAAsE,CAAChO,OAAO,QAAQH,aAAa,CAAC,oBAAoB,oBAAoB,qBAAqB,qBAAqBsN,QAAQ,YAAYC,WAAW,eAAe,mBAAmB,mBAAmB,0BAA0B,iCAAiC,oCAAoC,2CAA2C,iBAAiB,oBAAoBC,OAAO,UAAUC,MAAM,QAAQ,mBAAmB,mBAAmB,kBAAkB,qBAAqBC,OAAO,aAAa,YAAY,mBAAmB,qCAAqC,2CAA2CC,MAAM,QAAQ,eAAe,gBAAgB,kBAAkB,iBAAiBC,OAAO,UAAU,sBAAsB,0BAA0B,8CAA8C,iDAAiDC,KAAK,WAAW,iBAAiB,qBAAqB,aAAa,cAAcC,QAAQ,kBAAkB,kBAAkB,kBAAkB,kBAAkB,qBAAqB,gBAAgB,iBAAiB,gBAAgB,gBAAgB,6BAA6B,uBAAuBC,SAAS,YAAYC,OAAO,OAAO,iBAAiB,eAAe,eAAe,eAAeC,SAAS,YAAY,sBAAsB,mBAAmB,oBAAoB,mBAAmB,kBAAkB,mBAAmBC,OAAO,SAASC,QAAQ,WAAW,kBAAkB,sBAAsB,2BAA2B,kCAAkC,6BAA6B,sBAAsB,eAAe,kBAAkB,wCAAwC,8CAA8C,CAAChO,OAAO,KAAKH,aAAa,CAAC,oBAAoB,oBAAoB,qBAAqB,oBAAoBsN,QAAQ,UAAUC,WAAW,YAAY,mBAAmB,mBAAmB,0BAA0B,0BAA0B,oCAAoC,oCAAoC,iBAAiB,4BAA4BC,OAAO,UAAUC,MAAM,SAAS,mBAAmB,uBAAuB,kBAAkB,8BAA8BC,OAAO,eAAe,YAAY,mBAAmB,qCAAqC,qCAAqCC,MAAM,WAAW,eAAe,wBAAwB,kBAAkB,uBAAuBC,OAAO,SAAS,sBAAsB,uBAAuB,8CAA8C,oDAAoDC,KAAK,UAAU,iBAAiB,qBAAqB,aAAa,iBAAiBC,QAAQ,SAAS,kBAAkB,uBAAuB,kBAAkB,+BAA+B,gBAAgB,oBAAoB,gBAAgB,sBAAsB,6BAA6B,oCAAoCC,SAAS,YAAYC,OAAO,WAAW,iBAAiB,yBAAyB,eAAe,0BAA0BC,SAAS,aAAa,sBAAsB,iCAAiC,oBAAoB,qBAAqB,kBAAkB,wBAAwBC,OAAO,UAAUC,QAAQ,WAAW,kBAAkB,iBAAiB,2BAA2B,mEAAmE,6BAA6B,mCAAmC,eAAe,0BAA0B,oEAAoE,4FAA4F,CAAChO,OAAO,KAAKH,aAAa,CAAC,oBAAoB,oBAAoB,qBAAqB,sBAAsBsN,QAAQ,UAAUC,WAAW,cAAc,mBAAmB,qBAAqB,iBAAiB,sBAAsBC,OAAO,WAAWC,MAAM,SAAS,kBAAkB,sBAAsBC,OAAO,gBAAgB,qCAAqC,qCAAqCC,MAAM,YAAY,eAAe,kBAAkB,kBAAkB,uBAAuB,8CAA8C,sDAAsDE,KAAK,WAAW,iBAAiB,+BAA+B,aAAa,iBAAiBC,QAAQ,WAAW,kBAAkB,qBAAqB,gBAAgB,kBAAkB,gBAAgB,qBAAqBC,SAAS,UAAUC,OAAO,SAAS,iBAAiB,sBAAsB,eAAe,2BAA2BC,SAAS,UAAU,sBAAsB,2BAA2B,oBAAoB,sBAAsB,kBAAkB,sBAAsBC,OAAO,SAASC,QAAQ,WAAW,kBAAkB,mBAAmB,6BAA6B,iCAAiC,wCAAwC,kDAAkD,CAAChO,OAAO,KAAKH,aAAa,CAAC,oBAAoB,eAAe,qBAAqB,gBAAgBsN,QAAQ,SAASC,WAAW,WAAW,mBAAmB,YAAYC,OAAO,QAAQC,MAAM,QAAQC,OAAO,eAAeC,MAAM,QAAQ,eAAe,eAAe,kBAAkB,cAAcE,KAAK,MAAM,iBAAiB,iBAAiB,aAAa,aAAaC,QAAQ,QAAQ,kBAAkB,cAAc,gBAAgB,aAAa,gBAAgB,kBAAkBC,SAAS,QAAQC,OAAO,QAAQ,iBAAiB,eAAe,eAAe,aAAaC,SAAS,SAAS,oBAAoB,mBAAmB,kBAAkB,cAAcE,QAAQ,QAAQ,kBAAkB,iBAAiB,6BAA6B,wBAAwB,CAAChO,OAAO,QAAQH,aAAa,CAAC,oBAAoB,sBAAsB,qBAAqB,sBAAsBsN,QAAQ,YAAYC,WAAW,gBAAgB,mBAAmB,uBAAuB,0BAA0B,2BAA2B,iBAAiB,yBAAyBC,OAAO,aAAaC,MAAM,UAAU,kBAAkB,6BAA6BC,OAAO,SAAS,qCAAqC,oCAAoCC,MAAM,SAAS,eAAe,eAAe,kBAAkB,mBAAmBC,OAAO,WAAW,8CAA8C,yCAAyCC,KAAK,YAAY,iBAAiB,wBAAwB,aAAa,gBAAgBC,QAAQ,UAAU,kBAAkB,4BAA4B,gBAAgB,kBAAkB,gBAAgB,yBAAyB,6BAA6B,sBAAsBC,SAAS,QAAQC,OAAO,UAAU,iBAAiB,YAAY,eAAe,mBAAmBC,SAAS,cAAc,sBAAsB,6BAA6B,oBAAoB,uBAAuB,kBAAkB,sBAAsBC,OAAO,WAAWC,QAAQ,cAAc,kBAAkB,mBAAmB,2BAA2B,kCAAkC,6BAA6B,0BAA0B,wCAAwC,6CAA6C,CAAChO,OAAO,KAAKH,aAAa,CAAC,oBAAoB,oBAAoB,qBAAqB,oBAAoBsN,QAAQ,WAAWC,WAAW,WAAW,mBAAmB,iBAAiBC,OAAO,QAAQC,MAAM,OAAOC,OAAO,YAAYC,MAAM,QAAQ,eAAe,mBAAmB,kBAAkB,eAAeE,KAAK,QAAQ,iBAAiB,8BAA8B,aAAa,oBAAoBC,QAAQ,SAAS,kBAAkB,4BAA4B,gBAAgB,iBAAiB,gBAAgB,sBAAsBC,SAAS,QAAQC,OAAO,QAAQ,iBAAiB,oBAAoB,eAAe,cAAcC,SAAS,aAAa,oBAAoB,6BAA6B,kBAAkB,uBAAuBE,QAAQ,OAAO,kBAAkB,qBAAqB,6BAA6B,6BAA6B,CAAChO,OAAO,KAAKH,aAAa,CAAC,oBAAoB,qBAAqB,qBAAqB,mBAAmBsN,QAAQ,SAASC,WAAW,WAAW,mBAAmB,mBAAmB,0BAA0B,0BAA0B,oCAAoC,oCAAoC,iBAAiB,oBAAoBC,OAAO,SAASC,MAAM,SAAS,mBAAmB,wBAAwB,kBAAkB,qBAAqBC,OAAO,iBAAiB,YAAY,sBAAsB,qCAAqC,qCAAqCC,MAAM,WAAW,eAAe,iBAAiB,kBAAkB,qBAAqBC,OAAO,UAAU,sBAAsB,mBAAmB,8CAA8C,qDAAqDC,KAAK,aAAa,iBAAiB,uBAAuB,aAAa,mBAAmBC,QAAQ,UAAU,kBAAkB,sBAAsB,kBAAkB,yBAAyB,gBAAgB,kBAAkB,gBAAgB,kBAAkB,6BAA6B,0CAA0CC,SAAS,aAAaC,OAAO,QAAQ,iBAAiB,uBAAuB,eAAe,yBAAyBC,SAAS,eAAe,sBAAsB,iCAAiC,oBAAoB,sBAAsB,kBAAkB,sBAAsBC,OAAO,QAAQC,QAAQ,UAAU,kBAAkB,kBAAkB,2BAA2B,oCAAoC,6BAA6B,gCAAgC,eAAe,yBAAyB,oEAAoE,sGAAsG,CAAChO,OAAO,QAAQH,aAAa,CAAC,oBAAoB,aAAa,qBAAqB,aAAasN,QAAQ,KAAKC,WAAW,UAAU,mBAAmB,QAAQ,0BAA0B,sBAAsB,iBAAiB,WAAWC,OAAO,KAAKC,MAAM,MAAM,kBAAkB,QAAQC,OAAO,OAAO,qCAAqC,mBAAmBC,MAAM,KAAK,eAAe,UAAU,kBAAkB,SAASC,OAAO,KAAK,8CAA8C,4BAA4BC,KAAK,IAAI,iBAAiB,cAAc,aAAa,KAAKC,QAAQ,IAAI,kBAAkB,eAAe,gBAAgB,YAAY,gBAAgB,SAAS,6BAA6B,iBAAiBC,SAAS,IAAIC,OAAO,KAAK,iBAAiB,OAAO,eAAe,QAAQC,SAAS,KAAK,sBAAsB,YAAY,oBAAoB,OAAO,kBAAkB,aAAaC,OAAO,KAAKC,QAAQ,KAAK,kBAAkB,QAAQ,2BAA2B,sBAAsB,6BAA6B,eAAe,wCAAwC,+BAA+B,CAAChO,OAAO,QAAQH,aAAa,CAAC,oBAAoB,mBAAmB,qBAAqB,mBAAmBsN,QAAQ,WAAWC,WAAW,UAAU,mBAAmB,mBAAmBC,OAAO,aAAaC,MAAM,UAAUC,OAAO,WAAW,qCAAqC,gCAAgCC,MAAM,WAAW,eAAe,qBAAqB,kBAAkB,sBAAsB,8CAA8C,yCAAyCE,KAAK,QAAQ,iBAAiB,mBAAmB,aAAa,iBAAiBC,QAAQ,WAAW,kBAAkB,8BAA8B,gBAAgB,kBAAkB,gBAAgB,sBAAsBC,SAAS,aAAaC,OAAO,UAAU,iBAAiB,sBAAsB,eAAe,kBAAkBC,SAAS,aAAa,sBAAsB,wBAAwB,oBAAoB,uBAAuB,kBAAkB,0BAA0BC,OAAO,WAAWC,QAAQ,YAAY,kBAAkB,qBAAqB,6BAA6B,mCAAmC,wCAAwC,0DAA0D,CAAChO,OAAO,KAAKH,aAAa,CAAC,oBAAoB,oBAAoB,qBAAqB,qBAAqBwN,OAAO,aAAaC,MAAM,UAAUI,KAAK,WAAW,aAAa,gBAAgB,kBAAkB,mBAAmBE,SAAS,gBAAgB,eAAe,mBAAmBE,SAAS,cAAc,kBAAkB,mBAAmB,CAAC9N,OAAO,KAAKH,aAAa,CAAC,oBAAoB,oBAAoB,qBAAqB,qBAAqBsN,QAAQ,QAAQC,WAAW,aAAa,mBAAmB,oBAAoBC,OAAO,SAASC,MAAM,UAAUC,OAAO,cAAcC,MAAM,UAAU,eAAe,mBAAmB,kBAAkB,qBAAqB,8CAA8C,2EAA2EE,KAAK,SAAS,iBAAiB,6BAA6B,aAAa,iBAAiBC,QAAQ,UAAU,kBAAkB,mBAAmB,gBAAgB,cAAc,gBAAgB,kBAAkBC,SAAS,YAAYC,OAAO,QAAQ,iBAAiB,0BAA0B,eAAe,gBAAgBC,SAAS,YAAY,sBAAsB,0BAA0B,oBAAoB,wBAAwB,kBAAkB,qBAAqBE,QAAQ,UAAU,kBAAkB,mBAAmB,6BAA6B,gCAAgC,wCAAwC,2CAA2C,CAAChO,OAAO,KAAKH,aAAa,CAAC,oBAAoB,sBAAsB,qBAAqB,kBAAkBsN,QAAQ,oBAAoBC,WAAW,qBAAqB,mBAAmB,0BAA0B,0BAA0B,4BAA4B,iBAAiB,8BAA8BC,OAAO,cAAcC,MAAM,UAAU,kBAAkB,8BAA8BC,OAAO,oBAAoB,qCAAqC,mCAAmCC,MAAM,UAAU,eAAe,aAAa,kBAAkB,oBAAoBC,OAAO,mBAAmB,8CAA8C,2CAA2CC,KAAK,kBAAkB,iBAAiB,8BAA8B,aAAa,aAAaC,QAAQ,eAAe,kBAAkB,0BAA0B,gBAAgB,kCAAkC,gBAAgB,kBAAkB,6BAA6B,+BAA+BC,SAAS,OAAOC,OAAO,YAAY,iBAAiB,qBAAqB,eAAe,kBAAkBC,SAAS,mBAAmB,sBAAsB,sBAAsB,oBAAoB,+BAA+B,kBAAkB,yBAAyBC,OAAO,cAAcC,QAAQ,cAAc,kBAAkB,gCAAgC,2BAA2B,yCAAyC,6BAA6B,6BAA6B,wCAAwC,4DAA4D,CAAChO,OAAO,QAAQH,aAAa,CAAC,oBAAoB,kBAAkB,qBAAqB,oBAAoBsN,QAAQ,aAAaC,WAAW,cAAc,mBAAmB,eAAe,0BAA0B,6BAA6B,oCAAoC,mCAAmC,iBAAiB,mBAAmBC,OAAO,OAAOC,MAAM,OAAO,mBAAmB,kBAAkB,kBAAkB,oBAAoBC,OAAO,YAAY,YAAY,UAAU,qCAAqC,oCAAoCC,MAAM,QAAQ,eAAe,gBAAgB,kBAAkB,aAAaC,OAAO,SAAS,sBAAsB,wBAAwB,8CAA8C,6CAA6CC,KAAK,QAAQ,iBAAiB,mBAAmB,aAAa,mBAAmBC,QAAQ,WAAW,kBAAkB,kBAAkB,kBAAkB,4BAA4B,gBAAgB,qBAAqB,gBAAgB,gBAAgB,6BAA6B,0BAA0BC,SAAS,UAAUC,OAAO,MAAM,iBAAiB,iBAAiB,eAAe,oBAAoBC,SAAS,gBAAgB,sBAAsB,2BAA2B,oBAAoB,wBAAwB,kBAAkB,4BAA4BC,OAAO,OAAOC,QAAQ,WAAW,kBAAkB,kBAAkB,2BAA2B,kCAAkC,6BAA6B,4BAA4B,eAAe,yBAAyB,wCAAwC,yCAAyC,CAAChO,OAAO,KAAKH,aAAa,CAAC,oBAAoB,sBAAsB,qBAAqB,kBAAkBsN,QAAQ,SAASC,WAAW,eAAe,mBAAmB,kBAAkB,0BAA0B,2BAA2B,oCAAoC,qCAAqC,iBAAiB,wBAAwBC,OAAO,OAAOC,MAAM,UAAU,mBAAmB,oBAAoB,kBAAkB,yBAAyBC,OAAO,YAAY,YAAY,gBAAgB,qCAAqC,oCAAoCC,MAAM,UAAU,eAAe,iBAAiB,kBAAkB,gBAAgBC,OAAO,UAAU,sBAAsB,yBAAyB,8CAA8C,8CAA8CC,KAAK,WAAW,iBAAiB,sBAAsB,aAAa,kBAAkBC,QAAQ,WAAW,kBAAkB,mBAAmB,kBAAkB,0BAA0B,gBAAgB,mBAAmB,gBAAgB,iBAAiB,6BAA6B,0BAA0BC,SAAS,SAASC,OAAO,SAAS,iBAAiB,iBAAiB,eAAe,sBAAsBC,SAAS,eAAe,sBAAsB,yBAAyB,oBAAoB,mBAAmB,kBAAkB,wBAAwBC,OAAO,YAAYC,QAAQ,WAAW,kBAAkB,oBAAoB,2BAA2B,gCAAgC,6BAA6B,8BAA8B,eAAe,6BAA6B,oEAAoE,4EAA4E,CAAChO,OAAO,KAAKH,aAAa,CAAC,oBAAoB,oBAAoB,qBAAqB,gBAAgBsN,QAAQ,UAAUE,OAAO,SAASC,MAAM,SAASI,KAAK,UAAU,aAAa,kBAAkB,kBAAkB,8BAA8BE,SAAS,YAAY,eAAe,2BAA2BE,SAAS,aAAa,kBAAkB,wBAAwB,CAAC9N,OAAO,KAAKH,aAAa,CAAC,oBAAoB,sBAAsB,qBAAqB,sBAAsBsN,QAAQ,YAAYC,WAAW,YAAY,mBAAmB,qBAAqB,0BAA0B,uBAAuB,oCAAoC,iCAAiC,iBAAiB,gBAAgBC,OAAO,UAAUC,MAAM,UAAU,mBAAmB,oBAAoB,kBAAkB,mBAAmBC,OAAO,YAAY,YAAY,iBAAiB,qCAAqC,sCAAsCC,MAAM,QAAQ,eAAe,mBAAmB,kBAAkB,iBAAiBC,OAAO,YAAY,sBAAsB,kBAAkB,8CAA8C,yDAAyDC,KAAK,WAAW,iBAAiB,4BAA4B,aAAa,eAAeC,QAAQ,UAAU,kBAAkB,mBAAmB,kBAAkB,0BAA0B,gBAAgB,iBAAiB,gBAAgB,gBAAgB,6BAA6B,0BAA0BC,SAAS,YAAYC,OAAO,SAAS,iBAAiB,sBAAsB,eAAe,mBAAmBC,SAAS,aAAa,sBAAsB,uBAAuB,oBAAoB,oBAAoB,kBAAkB,2BAA2BC,OAAO,SAASC,QAAQ,UAAU,kBAAkB,oBAAoB,2BAA2B,qCAAqC,6BAA6B,6BAA6B,eAAe,gBAAgB,oEAAoE,iFAAiF,CAAChO,OAAO,QAAQH,aAAa,CAAC,oBAAoB,oBAAoB,qBAAqB,oBAAoBsN,QAAQ,QAAQC,WAAW,aAAa,mBAAmB,qBAAqB,0BAA0B,0BAA0B,oCAAoC,oCAAoC,iBAAiB,sBAAsBC,OAAO,WAAWC,MAAM,SAAS,mBAAmB,mBAAmB,kBAAkB,uBAAuBC,OAAO,gBAAgB,YAAY,cAAc,qCAAqC,oCAAoCC,MAAM,YAAY,eAAe,kBAAkB,kBAAkB,cAAcC,OAAO,SAAS,sBAAsB,qBAAqB,8CAA8C,oDAAoDC,KAAK,UAAU,iBAAiB,0BAA0B,aAAa,iBAAiBC,QAAQ,UAAU,kBAAkB,kBAAkB,kBAAkB,gCAAgC,gBAAgB,kBAAkB,gBAAgB,mBAAmB,6BAA6B,8BAA8BC,SAAS,WAAWC,OAAO,YAAY,iBAAiB,yBAAyB,eAAe,qBAAqBC,SAAS,gBAAgB,sBAAsB,6BAA6B,oBAAoB,mBAAmB,kBAAkB,iCAAiCC,OAAO,SAASC,QAAQ,UAAU,kBAAkB,mBAAmB,2BAA2B,wCAAwC,6BAA6B,qCAAqC,eAAe,wBAAwB,oEAAoE,6EAA6E,CAAChO,OAAO,QAAQH,aAAa,CAAC,oBAAoB,oBAAoB,qBAAqB,mBAAmBsN,QAAQ,QAAQE,OAAO,WAAWC,MAAM,SAASI,KAAK,WAAW,aAAa,iBAAiB,kBAAkB,mBAAmBE,SAAS,WAAW,eAAe,0BAA0BE,SAAS,aAAa,kBAAkB,oBAAoB,6BAA6B,qCAAqC,CAAC9N,OAAO,KAAKH,aAAa,CAAC,oBAAoB,oBAAoB,qBAAqB,uBAAuBsN,QAAQ,YAAYC,WAAW,UAAU,mBAAmB,sBAAsB,0BAA0B,uBAAuB,iBAAiB,qBAAqBC,OAAO,WAAWC,MAAM,UAAU,kBAAkB,wBAAwBC,OAAO,mBAAmB,qCAAqC,mCAAmCC,MAAM,QAAQ,eAAe,eAAe,kBAAkB,qBAAqBC,OAAO,aAAa,8CAA8C,0DAA0DC,KAAK,YAAY,iBAAiB,oBAAoB,aAAa,wBAAwBC,QAAQ,UAAU,kBAAkB,6BAA6B,gBAAgB,cAAc,gBAAgB,kBAAkB,6BAA6B,qCAAqCC,SAAS,aAAaC,OAAO,QAAQ,iBAAiB,oBAAoB,eAAe,iBAAiBC,SAAS,YAAY,sBAAsB,0BAA0B,oBAAoB,oBAAoB,kBAAkB,uBAAuBC,OAAO,YAAYC,QAAQ,UAAU,kBAAkB,sBAAsB,2BAA2B,oCAAoC,6BAA6B,0BAA0B,wCAAwC,+DAA+D,CAAChO,OAAO,QAAQH,aAAa,CAAC,oBAAoB,sBAAsB,qBAAqB,oBAAoBsN,QAAQ,QAAQC,WAAW,WAAW,mBAAmB,qBAAqB,0BAA0B,uBAAuB,oCAAoC,iCAAiC,iBAAiB,eAAeC,OAAO,SAASC,MAAM,WAAW,mBAAmB,oBAAoB,kBAAkB,iBAAiBC,OAAO,OAAO,YAAY,kBAAkB,qCAAqC,mCAAmCC,MAAM,SAAS,eAAe,iBAAiB,kBAAkB,kBAAkBC,OAAO,WAAW,sBAAsB,mBAAmB,8CAA8C,4CAA4CC,KAAK,QAAQ,iBAAiB,2BAA2B,aAAa,kBAAkBC,QAAQ,UAAU,kBAAkB,oBAAoB,kBAAkB,yBAAyB,gBAAgB,eAAe,gBAAgB,oBAAoB,6BAA6B,8BAA8BC,SAAS,iBAAiBC,OAAO,SAAS,iBAAiB,wBAAwB,eAAe,gBAAgBC,SAAS,aAAa,sBAAsB,2BAA2B,oBAAoB,oBAAoB,kBAAkB,oBAAoBC,OAAO,UAAUC,QAAQ,UAAU,kBAAkB,sBAAsB,2BAA2B,8CAA8C,6BAA6B,8BAA8B,eAAe,eAAe,oEAAoE,0FAA0F,CAAChO,OAAO,KAAKH,aAAa,CAAC,oBAAoB,kBAAkB,qBAAqB,kBAAkBsN,QAAQ,UAAUC,WAAW,aAAa,mBAAmB,mBAAmB,0BAA0B,uBAAuB,iBAAiB,qBAAqBC,OAAO,QAAQC,MAAM,QAAQ,kBAAkB,mBAAmBC,OAAO,UAAU,qCAAqC,mCAAmCC,MAAM,YAAY,eAAe,kBAAkB,kBAAkB,oBAAoBC,OAAO,UAAU,8CAA8C,iDAAiDC,KAAK,YAAY,iBAAiB,4BAA4B,aAAa,cAAcC,QAAQ,WAAW,kBAAkB,sBAAsB,gBAAgB,iBAAiB,gBAAgB,sBAAsB,6BAA6B,wBAAwBC,SAAS,YAAYC,OAAO,UAAU,iBAAiB,kBAAkB,eAAe,eAAeC,SAAS,aAAa,sBAAsB,wBAAwB,oBAAoB,gBAAgB,kBAAkB,qBAAqBC,OAAO,SAASC,QAAQ,UAAU,kBAAkB,qBAAqB,2BAA2B,wCAAwC,6BAA6B,8BAA8B,wCAAwC,8CAA8C,CAAChO,OAAO,KAAKH,aAAa,CAAC,oBAAoB,kBAAkB,qBAAqB,oBAAoBsN,QAAQ,WAAWC,WAAW,cAAc,mBAAmB,eAAe,0BAA0B,wBAAwB,oCAAoC,kCAAkC,iBAAiB,mBAAmBC,OAAO,OAAOC,MAAM,QAAQ,mBAAmB,mBAAmB,kBAAkB,qBAAqBC,OAAO,WAAW,YAAY,QAAQ,qCAAqC,mCAAmCC,MAAM,UAAU,eAAe,cAAc,kBAAkB,eAAeC,OAAO,SAAS,sBAAsB,0BAA0B,8CAA8C,yCAAyCC,KAAK,QAAQ,iBAAiB,sBAAsB,aAAa,gBAAgBC,QAAQ,SAAS,kBAAkB,mBAAmB,kBAAkB,mBAAmB,gBAAgB,eAAe,gBAAgB,gBAAgB,6BAA6B,gBAAgBC,SAAS,aAAaC,OAAO,MAAM,iBAAiB,cAAc,eAAe,cAAcC,SAAS,gBAAgB,sBAAsB,mBAAmB,oBAAoB,oBAAoB,kBAAkB,oBAAoBC,OAAO,SAASC,QAAQ,WAAW,kBAAkB,wBAAwB,2BAA2B,8BAA8B,6BAA6B,4BAA4B,eAAe,kBAAkB,oEAAoE,gFAAgF,CAAChO,OAAO,KAAKH,aAAa,CAAC,oBAAoB,mBAAmB,qBAAqB,kBAAkBsN,QAAQ,WAAWC,WAAW,cAAc,mBAAmB,oBAAoB,0BAA0B,wBAAwB,oCAAoC,kCAAkC,iBAAiB,0BAA0BC,OAAO,QAAQC,MAAM,QAAQ,mBAAmB,kBAAkB,kBAAkB,wBAAwBC,OAAO,OAAO,YAAY,gBAAgB,qCAAqC,4BAA4BC,MAAM,YAAY,eAAe,eAAe,kBAAkB,oBAAoBC,OAAO,WAAW,sBAAsB,cAAc,8CAA8C,2CAA2CC,KAAK,UAAU,iBAAiB,gCAAgC,aAAa,gCAAgCC,QAAQ,WAAW,kBAAkB,eAAe,kBAAkB,0BAA0B,gBAAgB,oBAAoB,gBAAgB,kBAAkB,6BAA6B,gCAAgCC,SAAS,SAASC,OAAO,QAAQ,iBAAiB,kBAAkB,eAAe,mBAAmBC,SAAS,UAAU,sBAAsB,mBAAmB,oBAAoB,uBAAuB,kBAAkB,wBAAwBC,OAAO,SAASC,QAAQ,WAAW,kBAAkB,iBAAiB,2BAA2B,2CAA2C,6BAA6B,0BAA0B,eAAe,yBAAyB,oEAAoE,iFAAiF,CAAChO,OAAO,KAAKH,aAAa,CAAC,oBAAoB,oBAAoB,qBAAqB,qBAAqBsN,QAAQ,MAAMC,WAAW,aAAa,mBAAmB,qBAAqBC,OAAO,WAAWC,MAAM,UAAUC,OAAO,SAASC,MAAM,UAAU,eAAe,iBAAiB,kBAAkB,aAAaE,KAAK,SAAS,iBAAiB,oBAAoB,aAAa,sBAAsBC,QAAQ,UAAU,kBAAkB,yBAAyB,gBAAgB,gBAAgB,gBAAgB,oBAAoBC,SAAS,QAAQC,OAAO,QAAQ,iBAAiB,oBAAoB,eAAe,oBAAoBC,SAAS,eAAe,oBAAoB,0BAA0B,kBAAkB,uBAAuBE,QAAQ,UAAU,kBAAkB,mBAAmB,6BAA6B,6BAA6B,CAAChO,OAAO,QAAQH,aAAa,CAAC,oBAAoB,cAAc,qBAAqB,aAAasN,QAAQ,KAAKC,WAAW,KAAK,mBAAmB,UAAU,0BAA0B,mBAAmB,oCAAoC,4BAA4B,iBAAiB,OAAOC,OAAO,KAAKC,MAAM,KAAK,mBAAmB,OAAO,kBAAkB,OAAOC,OAAO,MAAM,YAAY,OAAO,qCAAqC,eAAeC,MAAM,KAAK,eAAe,UAAU,kBAAkB,OAAOC,OAAO,KAAK,sBAAsB,QAAQ,8CAA8C,uBAAuBC,KAAK,MAAM,iBAAiB,QAAQ,aAAa,MAAMC,QAAQ,KAAK,kBAAkB,OAAO,kBAAkB,QAAQ,gBAAgB,SAAS,gBAAgB,SAAS,6BAA6B,WAAWC,SAAS,MAAMC,OAAO,KAAK,iBAAiB,OAAO,eAAe,SAASC,SAAS,KAAK,sBAAsB,OAAO,oBAAoB,UAAU,kBAAkB,QAAQC,OAAO,KAAKC,QAAQ,KAAK,kBAAkB,UAAU,2BAA2B,UAAU,6BAA6B,SAAS,eAAe,OAAO,oEAAoE,gCAAgC,CAAChO,OAAO,QAAQH,aAAa,CAAC,oBAAoB,aAAa,qBAAqB,aAAasN,QAAQ,KAAKC,WAAW,KAAK,mBAAmB,QAAQ,0BAA0B,oBAAoB,oCAAoC,4BAA4B,iBAAiB,OAAOC,OAAO,KAAKC,MAAM,KAAK,mBAAmB,OAAO,kBAAkB,OAAOC,OAAO,MAAM,YAAY,OAAO,qCAAqC,gBAAgBC,MAAM,KAAK,eAAe,QAAQ,kBAAkB,OAAOC,OAAO,MAAM,sBAAsB,OAAO,8CAA8C,uBAAuBC,KAAK,MAAM,iBAAiB,UAAU,aAAa,MAAMC,QAAQ,KAAK,kBAAkB,OAAO,kBAAkB,QAAQ,gBAAgB,KAAK,gBAAgB,SAAS,6BAA6B,SAASC,SAAS,MAAMC,OAAO,KAAK,iBAAiB,OAAO,eAAe,OAAOC,SAAS,KAAK,sBAAsB,QAAQ,oBAAoB,KAAK,kBAAkB,QAAQC,OAAO,KAAKC,QAAQ,KAAK,kBAAkB,QAAQ,2BAA2B,UAAU,6BAA6B,SAAS,eAAe,OAAO,wCAAwC,wBAAwB,CAAChO,OAAO,QAAQH,aAAa,CAAC,oBAAoB,aAAa,qBAAqB,aAAasN,QAAQ,KAAKC,WAAW,KAAK,mBAAmB,QAAQC,OAAO,KAAKC,MAAM,KAAKC,OAAO,MAAMC,MAAM,KAAK,eAAe,QAAQ,kBAAkB,OAAO,8CAA8C,uBAAuBE,KAAK,MAAM,iBAAiB,UAAU,aAAa,MAAMC,QAAQ,KAAK,kBAAkB,QAAQ,gBAAgB,KAAK,gBAAgB,SAASC,SAAS,MAAMC,OAAO,KAAK,iBAAiB,OAAO,eAAe,OAAOC,SAAS,KAAK,sBAAsB,QAAQ,oBAAoB,KAAK,kBAAkB,QAAQE,QAAQ,KAAK,kBAAkB,QAAQ,6BAA6B,SAAS,wCAAwC,yBAAyB3S,SAAQ,SAAUmJ,GAAG,IAAIpJ,EAAE,CAAC,EAAE,IAAI,IAAIqJ,KAAKD,EAAE3E,aAAa2E,EAAE3E,aAAa4E,GAAGwJ,SAAS7S,EAAEqJ,GAAG,CAACyJ,MAAMzJ,EAAE0J,aAAa3J,EAAE3E,aAAa4E,GAAGwJ,SAASG,OAAO5J,EAAE3E,aAAa4E,GAAG2J,QAAQhT,EAAEqJ,GAAG,CAACyJ,MAAMzJ,EAAE2J,OAAO,CAAC5J,EAAE3E,aAAa4E,KAAK7D,EAAEyN,eAAe7J,EAAExE,OAAO,CAACH,aAAa,CAAC,GAAGzE,IAAK,IAAG,IAAIkC,EAAEsD,EAAE0N,QAAQtJ,EAAE1H,EAAEmE,SAAS+K,KAAKlP,GAAG2H,EAAE3H,EAAE+D,QAAQmL,KAAKlP,EAAE,EAAE,IAAI,SAASkH,EAAEpJ,EAAEqJ,GAAG,aAAa,IAAI7D,EAAE6D,EAAE,MAAMnH,EAAEmH,EAAEA,EAAE7D,GAAGxF,EAAEsJ,EAAE,CAAC6J,OAAO,WAAWrQ,KAAK4K,OAAO3M,SAAS,KAAK+B,KAAK4D,KAAKqH,SAAS7L,IAAIkR,KAAKpQ,KAAK,GAAGa,OAAOf,KAAKuQ,SAASlQ,KAAK,2DAA2DL,MAAMA,KAAKwQ,WAAWxQ,KAAKuN,IAAIN,SAAS,EAAE3B,aAAa,WAAWtL,KAAK4D,KAAK5D,KAAKyQ,SAAS,EAAEvO,KAAK,WAAW,MAAM,CAAC0B,KAAK5D,KAAKyQ,UAAU,EAAE7J,SAAS,CAAC8J,WAAW,WAAW,OAAO1Q,KAAK4D,MAAM5D,KAAK4D,KAAKqH,OAAO5L,OAAO,EAAE,GAAGkM,QAAQ,CAACkF,QAAQ,WAAW,OAAOzQ,KAAK4K,OAAO3M,QAAQ+B,KAAK4K,OAAO3M,QAAQ,GAAG2F,KAAKqH,OAAO,EAAE,GAAG,EAAE,KAAK,SAAS3E,EAAEpJ,EAAEqJ,GAAG,aAAa,IAAI7D,EAAE6D,EAAE,KAAKnH,EAAEmH,EAAE,MAAMrJ,EAAEsJ,EAAE,CAACC,OAAO,CAAC/D,EAAE8D,GAAGrH,MAAM,CAAC0L,KAAK,CAACnF,KAAK8C,OAAOvK,QAAQ,IAAI0S,MAAM,CAACjL,KAAK8C,OAAOvK,QAAQ,IAAI2S,gBAAgB,CAAClL,KAAKiB,QAAQ1I,SAAQ,GAAI0K,UAAU,CAACjD,KAAK8C,OAAOvK,QAAQ,KAAK2I,SAAS,CAACiK,UAAU,WAAW,IAAI,OAAO,IAAIC,IAAI9Q,KAAK6K,KAAuB,CAAjB,MAAMvE,GAAG,OAAM,CAAE,CAAC,GAAGiF,QAAQ,CAACwF,QAAQ,SAASzK,GAAG,GAAGtG,KAAKyL,MAAM,QAAQnF,GAAGtG,KAAK4Q,gBAAgB,CAAC,IAAI1T,GAAE,EAAGkC,EAAEoH,GAAGxG,KAAK,WAAW9C,GAAGA,EAAEwO,WAAWxO,EAAEwO,WAAW,CAAC,GAAG,EAAE,KAAK,SAASpF,EAAEpJ,EAAEqJ,GAAG,aAAa,IAAI7D,EAAE6D,EAAE,KAAKrJ,EAAEsJ,EAAE,CAAC+E,QAAQ,CAAChF,EAAE7D,EAAE6D,EAAED,EAAE5D,EAAE4D,GAAG,EAAE,KAAK,SAASA,EAAEpJ,GAAG,aAAaA,EAAEsJ,EAAE,SAASF,GAAG,OAAO0K,KAAKC,SAASpO,SAAS,IAAIZ,QAAQ,WAAW,IAAI0K,MAAM,EAAErG,GAAG,EAAE,CAAC,EAAE,KAAK,SAASA,EAAEpJ,GAAG,aAAaA,EAAEsJ,EAAE,SAASF,EAAEpJ,GAAG,IAAI,IAAIqJ,EAAED,EAAE4K,QAAQ3K,GAAG,CAAC,GAAGA,EAAEgK,SAASlQ,OAAOnD,EAAE,OAAOqJ,EAAEA,EAAEA,EAAE2K,OAAO,CAAC,CAAC,EAAE,KAAK,SAAS5K,EAAEpJ,GAAG,aAAaA,EAAEsJ,EAAE,SAASF,GAAGA,EAAE6K,QAAQhK,MAAMmF,QAAQhG,EAAE6K,WAAW7K,EAAE6K,QAAQ,CAAC7K,EAAE6K,UAAU7K,EAAE6K,QAAQ,GAAG7K,EAAE6K,QAAQxU,MAAK,WAAYqD,KAAKuN,IAAI6D,aAAa,UAAUrQ,OAAO,WAAW,GAAI,GAAE,CAAC,EAAE,KAAK,SAASuF,EAAEpJ,EAAEqJ,GAAG,aAAa,IAAI7D,EAAE6D,EAAE,MAAMnH,EAAEmH,EAAEA,EAAE7D,GAAGoE,EAAEP,EAAE,MAAMQ,EAAER,EAAEA,EAAEO,EAAJP,GAASnH,KAAK2H,EAAEpK,KAAK,CAAC2J,EAAE+K,GAAG,sgDAAsgD,GAAG,CAACC,QAAQ,EAAEC,QAAQ,CAAC,4CAA4C,iDAAiDC,MAAM,GAAGC,SAAS,yqBAAyqBC,eAAe,CAAC,kNAAkN,u0EAAu0EC,WAAW,MAAMzU,EAAEsJ,EAAEO,CAAC,EAAE,KAAK,SAAST,EAAEpJ,EAAEqJ,GAAG,aAAa,IAAI7D,EAAE6D,EAAE,MAAMnH,EAAEmH,EAAEA,EAAE7D,GAAGoE,EAAEP,EAAE,MAAMQ,EAAER,EAAEA,EAAEO,EAAJP,GAASnH,KAAK2H,EAAEpK,KAAK,CAAC2J,EAAE+K,GAAG,2pDAA2pD,GAAG,CAACC,QAAQ,EAAEC,QAAQ,CAAC,4CAA4C,qCAAqC,yCAAyCC,MAAM,GAAGC,SAAS,oyBAAoyBC,eAAe,CAAC,kNAAkN,mvGAAmvG,k0DAAk0DC,WAAW,MAAMzU,EAAEsJ,EAAEO,CAAC,EAAE,KAAK,SAAST,EAAEpJ,EAAEqJ,GAAG,aAAa,IAAI7D,EAAE6D,EAAE,MAAMnH,EAAEmH,EAAEA,EAAE7D,GAAGoE,EAAEP,EAAE,MAAMQ,EAAER,EAAEA,EAAEO,EAAJP,GAASnH,KAAK2H,EAAEpK,KAAK,CAAC2J,EAAE+K,GAAG,6yFAA6yF,GAAG,CAACC,QAAQ,EAAEC,QAAQ,CAAC,4CAA4C,iDAAiD,yCAAyCC,MAAM,GAAGC,SAAS,o1BAAo1BC,eAAe,CAAC,kNAAkN,qtIAAqtI,k0DAAk0DC,WAAW,MAAMzU,EAAEsJ,EAAEO,CAAC,EAAE,KAAK,SAAST,EAAEpJ,EAAEqJ,GAAG,aAAa,IAAI7D,EAAE6D,EAAE,MAAMnH,EAAEmH,EAAEA,EAAE7D,GAAGoE,EAAEP,EAAE,MAAMQ,EAAER,EAAEA,EAAEO,EAAJP,GAASnH,KAAK2H,EAAEpK,KAAK,CAAC2J,EAAE+K,GAAG,qtMAAqtM,GAAG,CAACC,QAAQ,EAAEC,QAAQ,CAAC,4CAA4C,6CAA6C,yCAAyCC,MAAM,GAAGC,SAAS,8pEAA8pEC,eAAe,CAAC,kNAAkN,usQAAusQ,k0DAAk0DC,WAAW,MAAMzU,EAAEsJ,EAAEO,CAAC,EAAE,KAAK,SAAST,EAAEpJ,EAAEqJ,GAAG,aAAa,IAAI7D,EAAE6D,EAAE,MAAMnH,EAAEmH,EAAEA,EAAE7D,GAAGoE,EAAEP,EAAE,MAAMQ,EAAER,EAAEA,EAAEO,EAAJP,GAASnH,KAAK2H,EAAEpK,KAAK,CAAC2J,EAAE+K,GAAG,qnDAAqnD,GAAG,CAACC,QAAQ,EAAEC,QAAQ,CAAC,4CAA4C,kDAAkDC,MAAM,GAAGC,SAAS,wvBAAwvBC,eAAe,CAAC,kNAAkN,0wEAA0wEC,WAAW,MAAMzU,EAAEsJ,EAAEO,CAAC,EAAE,KAAK,SAAST,GAAG,aAAaA,EAAEvK,QAAQ,SAASuK,GAAG,IAAIpJ,EAAE,GAAG,OAAOA,EAAE2F,SAAS,WAAW,OAAO7C,KAAK4R,KAAI,SAAU1U,GAAG,IAAIqJ,EAAED,EAAEpJ,GAAG,OAAOA,EAAE,GAAG,UAAU6D,OAAO7D,EAAE,GAAG,MAAM6D,OAAOwF,EAAE,KAAKA,CAAE,IAAGsL,KAAK,GAAG,EAAE3U,EAAEkC,EAAE,SAASkH,EAAEC,EAAE7D,GAAG,iBAAiB4D,IAAIA,EAAE,CAAC,CAAC,KAAKA,EAAE,MAAM,IAAIlH,EAAE,CAAC,EAAE,GAAGsD,EAAE,IAAI,IAAIoE,EAAE,EAAEA,EAAE9G,KAAKX,OAAOyH,IAAI,CAAC,IAAIC,EAAE/G,KAAK8G,GAAG,GAAG,MAAMC,IAAI3H,EAAE2H,IAAG,EAAG,CAAC,IAAI,IAAInE,EAAE,EAAEA,EAAE0D,EAAEjH,OAAOuD,IAAI,CAAC,IAAIoE,EAAE,GAAGjG,OAAOuF,EAAE1D,IAAIF,GAAGtD,EAAE4H,EAAE,MAAMT,IAAIS,EAAE,GAAGA,EAAE,GAAG,GAAGjG,OAAOwF,EAAE,SAASxF,OAAOiG,EAAE,IAAIA,EAAE,GAAGT,GAAGrJ,EAAEP,KAAKqK,GAAG,CAAC,EAAE9J,CAAC,CAAC,EAAE,KAAK,SAASoJ,GAAG,aAAa,SAASpJ,EAAEoJ,EAAEpJ,IAAI,MAAMA,GAAGA,EAAEoJ,EAAEjH,UAAUnC,EAAEoJ,EAAEjH,QAAQ,IAAI,IAAIkH,EAAE,EAAE7D,EAAE,IAAIyE,MAAMjK,GAAGqJ,EAAErJ,EAAEqJ,IAAI7D,EAAE6D,GAAGD,EAAEC,GAAG,OAAO7D,CAAC,CAAC4D,EAAEvK,QAAQ,SAASuK,GAAG,IAAIC,EAAE7D,EAAEtD,GAAGsD,EAAE,EAAE,SAAS4D,GAAG,GAAGa,MAAMmF,QAAQhG,GAAG,OAAOA,CAAC,CAAxC,CAA0CC,EAAED,IAAI,SAASA,EAAEpJ,GAAG,IAAIqJ,EAAED,IAAI,oBAAoBiG,QAAQjG,EAAEiG,OAAOC,WAAWlG,EAAE,eAAe,GAAG,MAAMC,EAAE,CAAC,IAAI7D,EAAEtD,EAAE0H,EAAE,GAAGC,GAAE,EAAGnE,GAAE,EAAG,IAAI,IAAI2D,EAAEA,EAAEmG,KAAKpG,KAAKS,GAAGrE,EAAE6D,EAAEuL,QAAQC,QAAQjL,EAAEnK,KAAK+F,EAAE1G,QAAQkB,GAAG4J,EAAEzH,SAASnC,GAAG6J,GAAE,GAAsF,CAAjF,MAAMT,GAAG1D,GAAE,EAAGxD,EAAEkH,CAAC,CAAC,QAAQ,IAAIS,GAAG,MAAMR,EAAEyL,QAAQzL,EAAEyL,QAA6B,CAApB,QAAQ,GAAGpP,EAAE,MAAMxD,CAAC,CAAC,CAAC,OAAO0H,CAAC,CAAC,CAA7S,CAA+SP,EAAE7D,IAAI,SAAS4D,EAAEC,GAAG,GAAGD,EAAE,CAAC,GAAG,iBAAiBA,EAAE,OAAOpJ,EAAEoJ,EAAEC,GAAG,IAAI7D,EAAE7G,OAAO6E,UAAUmC,SAAS6J,KAAKpG,GAAGqG,MAAM,GAAG,GAAG,MAAM,WAAWjK,GAAG4D,EAAEsG,cAAclK,EAAE4D,EAAEsG,YAAYvM,MAAM,QAAQqC,GAAG,QAAQA,EAAEyE,MAAMsF,KAAKnG,GAAG,cAAc5D,GAAG,2CAA2CmK,KAAKnK,GAAGxF,EAAEoJ,EAAEC,QAAG,CAAM,CAAC,CAA3R,CAA6RA,EAAE7D,IAAI,WAAW,MAAM,IAAI5C,UAAU,4IAA4I,CAA3K,IAAgLgH,EAAE1H,EAAE,GAAG2H,EAAE3H,EAAE,GAAG,IAAI2H,EAAE,OAAOD,EAAE,GAAG,mBAAmBmL,KAAK,CAAC,IAAIrP,EAAEqP,KAAKC,SAAS9M,mBAAmB+M,KAAKC,UAAUrL,MAAMC,EAAE,+DAA+DjG,OAAO6B,GAAGqE,EAAE,OAAOlG,OAAOiG,EAAE,OAAOE,EAAEH,EAAEwK,QAAQK,KAAI,SAAUtL,GAAG,MAAM,iBAAiBvF,OAAOgG,EAAE4K,YAAY,IAAI5Q,OAAOuF,EAAE,MAAO,IAAG,MAAM,CAACQ,GAAG/F,OAAOmG,GAAGnG,OAAO,CAACkG,IAAI4K,KAAK,KAAK,CAAC,MAAM,CAAC/K,GAAG+K,KAAK,KAAK,CAAC,EAAE,KAAK,SAASvL,EAAEpJ,EAAEqJ,GAAG,aAAa,IAAI7D,EAAE6D,EAAE,MAAMnH,EAAEmH,EAAEA,EAAE7D,GAAGoE,EAAEP,EAAE,MAAMQ,EAAER,EAAEA,EAAEO,GAAGlE,EAAE2D,EAAE,KAAKS,EAAET,EAAEA,EAAE3D,GAAGqE,EAAEV,EAAE,MAAMW,EAAEX,EAAEA,EAAEU,GAAGG,EAAEb,EAAE,MAAMkB,EAAElB,EAAEA,EAAEa,GAAGM,EAAEnB,EAAE,MAAMsB,EAAEtB,EAAEA,EAAEmB,GAAGzG,EAAEsF,EAAE,MAAM0H,EAAE,CAAC,EAAEA,EAAEE,kBAAkBtG,IAAIoG,EAAEG,cAAclH,IAAI+G,EAAEI,OAAOrH,IAAIsH,KAAK,KAAK,QAAQL,EAAEM,OAAOxH,IAAIkH,EAAEO,mBAAmB/G,IAAIrI,IAAI6B,EAAEuF,EAAEyH,GAAGhN,EAAEuF,GAAGvF,EAAEuF,EAAEiI,QAAQxN,EAAEuF,EAAEiI,MAAM,EAAE,KAAK,SAASnI,EAAEpJ,EAAEqJ,GAAG,aAAa,IAAI7D,EAAE6D,EAAE,MAAMnH,EAAEmH,EAAEA,EAAE7D,GAAGoE,EAAEP,EAAE,MAAMQ,EAAER,EAAEA,EAAEO,GAAGlE,EAAE2D,EAAE,KAAKS,EAAET,EAAEA,EAAE3D,GAAGqE,EAAEV,EAAE,MAAMW,EAAEX,EAAEA,EAAEU,GAAGG,EAAEb,EAAE,MAAMkB,EAAElB,EAAEA,EAAEa,GAAGM,EAAEnB,EAAE,MAAMsB,EAAEtB,EAAEA,EAAEmB,GAAGzG,EAAEsF,EAAE,MAAM0H,EAAE,CAAC,EAAEA,EAAEE,kBAAkBtG,IAAIoG,EAAEG,cAAclH,IAAI+G,EAAEI,OAAOrH,IAAIsH,KAAK,KAAK,QAAQL,EAAEM,OAAOxH,IAAIkH,EAAEO,mBAAmB/G,IAAIrI,IAAI6B,EAAEuF,EAAEyH,GAAGhN,EAAEuF,GAAGvF,EAAEuF,EAAEiI,QAAQxN,EAAEuF,EAAEiI,MAAM,EAAE,KAAK,SAASnI,GAAG,aAAa,IAAIpJ,EAAE,GAAG,SAASqJ,EAAED,GAAG,IAAI,IAAIC,GAAG,EAAE7D,EAAE,EAAEA,EAAExF,EAAEmC,OAAOqD,IAAI,GAAGxF,EAAEwF,GAAG2P,aAAa/L,EAAE,CAACC,EAAE7D,EAAE,KAAK,CAAC,OAAO6D,CAAC,CAAC,SAAS7D,EAAE4D,EAAE5D,GAAG,IAAI,IAAIoE,EAAE,CAAC,EAAEC,EAAE,GAAGnE,EAAE,EAAEA,EAAE0D,EAAEjH,OAAOuD,IAAI,CAAC,IAAIoE,EAAEV,EAAE1D,GAAGqE,EAAEvE,EAAE4P,KAAKtL,EAAE,GAAGtE,EAAE4P,KAAKtL,EAAE,GAAGE,EAAEJ,EAAEG,IAAI,EAAEG,EAAE,GAAGrG,OAAOkG,EAAE,KAAKlG,OAAOmG,GAAGJ,EAAEG,GAAGC,EAAE,EAAE,IAAIO,EAAElB,EAAEa,GAAGM,EAAE,CAAC6K,IAAIvL,EAAE,GAAGwL,MAAMxL,EAAE,GAAGyL,UAAUzL,EAAE,GAAG0L,SAAS1L,EAAE,GAAG2L,MAAM3L,EAAE,IAAI,IAAI,IAAIS,EAAEvK,EAAEuK,GAAGmL,aAAa1V,EAAEuK,GAAGoL,QAAQnL,OAAO,CAAC,IAAIG,EAAEzI,EAAEsI,EAAEhF,GAAGA,EAAEoQ,QAAQlQ,EAAE1F,EAAE6V,OAAOnQ,EAAE,EAAE,CAACyP,WAAWjL,EAAEyL,QAAQhL,EAAE+K,WAAW,GAAG,CAAC7L,EAAEpK,KAAKyK,EAAE,CAAC,OAAOL,CAAC,CAAC,SAAS3H,EAAEkH,EAAEpJ,GAAG,IAAIqJ,EAAErJ,EAAEqR,OAAOrR,GAAG,OAAOqJ,EAAEyM,OAAO1M,GAAG,SAASpJ,GAAG,GAAGA,EAAE,CAAC,GAAGA,EAAEqV,MAAMjM,EAAEiM,KAAKrV,EAAEsV,QAAQlM,EAAEkM,OAAOtV,EAAEuV,YAAYnM,EAAEmM,WAAWvV,EAAEwV,WAAWpM,EAAEoM,UAAUxV,EAAEyV,QAAQrM,EAAEqM,MAAM,OAAOpM,EAAEyM,OAAO1M,EAAEpJ,EAAE,MAAMqJ,EAAE0G,QAAQ,CAAC,CAAC3G,EAAEvK,QAAQ,SAASuK,EAAElH,GAAG,IAAI0H,EAAEpE,EAAE4D,EAAEA,GAAG,GAAGlH,EAAEA,GAAG,CAAC,GAAG,OAAO,SAASkH,GAAGA,EAAEA,GAAG,GAAG,IAAI,IAAIS,EAAE,EAAEA,EAAED,EAAEzH,OAAO0H,IAAI,CAAC,IAAInE,EAAE2D,EAAEO,EAAEC,IAAI7J,EAAE0F,GAAGgQ,YAAY,CAAC,IAAI,IAAI5L,EAAEtE,EAAE4D,EAAElH,GAAG6H,EAAE,EAAEA,EAAEH,EAAEzH,OAAO4H,IAAI,CAAC,IAAIC,EAAEX,EAAEO,EAAEG,IAAI,IAAI/J,EAAEgK,GAAG0L,aAAa1V,EAAEgK,GAAG2L,UAAU3V,EAAE6V,OAAO7L,EAAE,GAAG,CAACJ,EAAEE,CAAC,CAAC,CAAC,EAAE,IAAI,SAASV,GAAG,aAAa,IAAIpJ,EAAE,CAAC,EAAEoJ,EAAEvK,QAAQ,SAASuK,EAAEC,GAAG,IAAI7D,EAAE,SAAS4D,GAAG,QAAG,IAASpJ,EAAEoJ,GAAG,CAAC,IAAIC,EAAEzJ,SAASiM,cAAczC,GAAG,GAAGlF,OAAO6R,mBAAmB1M,aAAanF,OAAO6R,kBAAkB,IAAI1M,EAAEA,EAAE2M,gBAAgBC,IAAoB,CAAf,MAAM7M,GAAGC,EAAE,IAAI,CAACrJ,EAAEoJ,GAAGC,CAAC,CAAC,OAAOrJ,EAAEoJ,EAAE,CAAhM,CAAkMA,GAAG,IAAI5D,EAAE,MAAM,IAAI0Q,MAAM,2GAA2G1Q,EAAE2Q,YAAY9M,EAAE,CAAC,EAAE,KAAK,SAASD,GAAG,aAAaA,EAAEvK,QAAQ,SAASuK,GAAG,IAAIpJ,EAAEJ,SAASwW,cAAc,SAAS,OAAOhN,EAAE8H,cAAclR,EAAEoJ,EAAEiN,YAAYjN,EAAE+H,OAAOnR,EAAEoJ,EAAEzC,SAAS3G,CAAC,CAAC,EAAE,KAAK,SAASoJ,EAAEpJ,EAAEqJ,GAAG,aAAaD,EAAEvK,QAAQ,SAASuK,GAAG,IAAIpJ,EAAEqJ,EAAEiN,GAAGtW,GAAGoJ,EAAE8K,aAAa,QAAQlU,EAAE,CAAC,EAAE,KAAK,SAASoJ,GAAG,aAAaA,EAAEvK,QAAQ,SAASuK,GAAG,IAAIpJ,EAAEoJ,EAAEkI,mBAAmBlI,GAAG,MAAM,CAAC0M,OAAO,SAASzM,IAAI,SAASD,EAAEpJ,EAAEqJ,GAAG,IAAI7D,EAAE,GAAG6D,EAAEmM,WAAWhQ,GAAG,cAAc3B,OAAOwF,EAAEmM,SAAS,QAAQnM,EAAEiM,QAAQ9P,GAAG,UAAU3B,OAAOwF,EAAEiM,MAAM,OAAO,IAAIpT,OAAE,IAASmH,EAAEoM,MAAMvT,IAAIsD,GAAG,SAAS3B,OAAOwF,EAAEoM,MAAMtT,OAAO,EAAE,IAAI0B,OAAOwF,EAAEoM,OAAO,GAAG,OAAOjQ,GAAG6D,EAAEgM,IAAInT,IAAIsD,GAAG,KAAK6D,EAAEiM,QAAQ9P,GAAG,KAAK6D,EAAEmM,WAAWhQ,GAAG,KAAK,IAAIoE,EAAEP,EAAEkM,UAAU3L,GAAG,oBAAoBmL,OAAOvP,GAAG,uDAAuD3B,OAAOkR,KAAKC,SAAS9M,mBAAmB+M,KAAKC,UAAUtL,MAAM,QAAQ5J,EAAEiR,kBAAkBzL,EAAE4D,EAAEpJ,EAAE2G,QAAQ,CAAxe,CAA0e3G,EAAEoJ,EAAEC,EAAE,EAAE0G,OAAO,YAAY,SAAS3G,GAAG,GAAG,OAAOA,EAAEmN,WAAW,OAAM,EAAGnN,EAAEmN,WAAWC,YAAYpN,EAAE,CAAvE,CAAyEpJ,EAAE,EAAE,CAAC,EAAE,KAAK,SAASoJ,GAAG,aAAaA,EAAEvK,QAAQ,SAASuK,EAAEpJ,GAAG,GAAGA,EAAEyW,WAAWzW,EAAEyW,WAAWC,QAAQtN,MAAM,CAAC,KAAKpJ,EAAE2W,YAAY3W,EAAEwW,YAAYxW,EAAE2W,YAAY3W,EAAEmW,YAAYvW,SAASgX,eAAexN,GAAG,CAAC,CAAC,EAAE,IAAI,SAASA,EAAEpJ,EAAEqJ,GAAG,aAAa,IAAI7D,EAAE6D,EAAE,MAAMnH,EAAEmH,EAAE,MAAMO,GAAGP,EAAE,MAAMA,EAAE,OAAOQ,EAAER,EAAE,MAAM3D,EAAE2D,EAAEA,EAAEQ,GAAGC,GAAE,EAAGF,EAAEN,GAAGpH,EAAEoH,EAAE9D,EAAEqE,EAAErE,EAAEqR,GAAE,EAAG,KAAK,WAAW,MAAM,mBAAmBnR,KAAKA,IAAIoE,GAAG9J,EAAEsJ,EAAEQ,EAAEjL,OAAO,EAAE,KAAK,SAASuK,EAAEpJ,EAAEqJ,GAAG,aAAa,IAAI7D,EAAE6D,EAAE,MAAMnH,EAAEmH,EAAE,KAAKO,GAAGP,EAAE,MAAMA,EAAE,OAAOQ,EAAER,EAAE,MAAM3D,EAAE2D,EAAEA,EAAEQ,GAAGC,GAAE,EAAGF,EAAEN,GAAGpH,EAAEoH,EAAE9D,EAAEqE,EAAErE,EAAEqR,GAAE,EAAG,KAAK,WAAW,MAAM,mBAAmBnR,KAAKA,IAAIoE,GAAG9J,EAAEsJ,EAAEQ,EAAEjL,OAAO,EAAE,KAAK,SAASuK,EAAEpJ,EAAEqJ,GAAG,aAAaA,EAAEW,EAAEhK,EAAE,CAACsJ,EAAE,WAAW,OAAOwN,CAAC,IAAI,IAAItR,EAAE,CAACrC,KAAK,UAAU2H,WAAW,CAACiM,SAAS1N,EAAE,MAAM0N,UAAU9C,QAAQ,WAAW,IAAI7K,EAAEtG,KAAKA,KAAKkU,QAAO,WAAY,OAAO5N,EAAEqF,MAAMwI,QAAQC,MAAO,IAAE,SAAUlX,GAAGA,EAAEoJ,EAAEmF,MAAM,cAAcnF,EAAEmF,MAAM,aAAc,GAAE,GAAGrM,EAAEmH,EAAE,MAAMO,EAAEP,EAAEA,EAAEnH,GAAG2H,EAAER,EAAE,MAAM3D,EAAE2D,EAAEA,EAAEQ,GAAGC,EAAET,EAAE,KAAKU,EAAEV,EAAEA,EAAES,GAAGE,EAAEX,EAAE,MAAMa,EAAEb,EAAEA,EAAEW,GAAGO,EAAElB,EAAE,MAAMmB,EAAEnB,EAAEA,EAAEkB,GAAGI,EAAEtB,EAAE,MAAMtF,EAAEsF,EAAEA,EAAEsB,GAAGoG,EAAE1H,EAAE,MAAM2H,EAAE,CAAC,EAAEA,EAAEC,kBAAkBlN,IAAIiN,EAAEE,cAAchH,IAAI8G,EAAEG,OAAOpH,IAAIqH,KAAK,KAAK,QAAQJ,EAAEK,OAAO3L,IAAIsL,EAAEM,mBAAmB9G,IAAIZ,IAAImH,EAAEzH,EAAE0H,GAAGD,EAAEzH,GAAGyH,EAAEzH,EAAEiI,QAAQR,EAAEzH,EAAEiI,OAAO,IAAIT,EAAEzH,EAAE,MAAM8N,EAAE9N,EAAE,MAAM5D,EAAE4D,EAAEA,EAAE8N,GAAGC,GAAE,EAAGtG,EAAExH,GAAG9D,GAAE,WAAY,IAAI4D,EAAEtG,KAAK9C,EAAEoJ,EAAEiO,eAAe,OAAOjO,EAAEkO,MAAMC,IAAIvX,GAAG,WAAWoJ,EAAEoO,GAAGpO,EAAEqO,GAAG,CAACC,IAAI,UAAUC,MAAM,CAAC,qBAAqB,UAAU,wBAAwB,mBAAmB,sBAAsB,iBAAiB,sBAAsB,kBAAkBC,YAAYxO,EAAEyO,GAAG,CAAC,CAACtV,IAAI,UAAUuV,GAAG,WAAW,MAAM,CAAC1O,EAAE2O,GAAG,WAAW,EAAEC,OAAM,IAAK,MAAK,IAAK,WAAW5O,EAAE8D,QAAO,GAAI9D,EAAE6O,YAAY,CAAC7O,EAAE2O,GAAG,YAAY,EAAG,GAAE,IAAG,EAAG,KAAK,KAAK,MAAM,mBAAmBtS,KAAKA,IAAI2R,GAAG,IAAIN,EAAEM,EAAEvY,OAAO,EAAE,KAAK,SAASuK,EAAEpJ,EAAEqJ,GAAG,aAAa,IAAI7D,EAAE6D,EAAE,MAAMnH,GAAE,EAAGmH,EAAE,MAAMC,GAAG9D,EAAE8D,OAAE,OAAO,GAAO,EAAG,KAAK,KAAK,MAAMtJ,EAAEsJ,EAAEpH,EAAErD,OAAO,EAAE,KAAK,SAASuK,EAAEpJ,EAAEqJ,GAAG,aAAa,IAAI7D,EAAE6D,EAAE,MAAMrJ,EAAEsJ,EAAE9D,EAAE8D,CAAC,EAAE,IAAI,SAASF,EAAEpJ,EAAEqJ,GAAG,aAAa,IAAI7D,EAAE6D,EAAE,KAAKrJ,EAAEsJ,EAAE9D,EAAE8D,CAAC,EAAE,KAAK,SAASF,EAAEpJ,EAAEqJ,GAAG,aAAa,IAAI7D,EAAE6D,EAAE,MAAMrJ,EAAEsJ,EAAE9D,EAAE8D,CAAC,EAAE,KAAK,SAASF,EAAEpJ,EAAEqJ,GAAG,aAAaA,EAAE,KAAK,EAAE,KAAK,SAASD,EAAEpJ,EAAEqJ,GAAG,aAAaA,EAAE,KAAK,EAAE,KAAK,WAAW,EAAE,KAAK,WAAW,EAAE,KAAK,WAAW,EAAE,KAAK,WAAW,EAAE,KAAK,SAASD,EAAEpJ,EAAEqJ,GAAG,aAAaA,EAAEW,EAAEhK,EAAE,CAAC6J,EAAE,WAAW,OAAOrE,CAAC,EAAEqR,EAAE,WAAW,OAAO3U,CAAC,IAAI,IAAIsD,EAAE,WAAW,IAAI4D,EAAEtG,KAAK9C,EAAEoJ,EAAEiO,eAAehO,EAAED,EAAEkO,MAAMC,IAAIvX,EAAE,OAAOqJ,EAAE,KAAK,CAACwE,YAAY,SAASC,MAAM,CAAC,mBAAmB1E,EAAEI,WAAW,CAACH,EAAE,SAAS,CAACwE,YAAY,gBAAgBC,MAAM,CAACoK,UAAU9O,EAAEO,aAAagO,MAAM,CAAC,aAAavO,EAAEqC,UAAUjD,KAAK,UAAU2P,GAAG,CAAC5K,MAAMnE,EAAEyK,UAAU,CAACzK,EAAE2O,GAAG,QAAO,WAAY,MAAM,CAAC1O,EAAE,OAAO,CAACwE,YAAY,sBAAsBC,MAAM,CAAC1E,EAAEuK,UAAU,2BAA2BvK,EAAEuE,MAAMyK,MAAM,CAACC,gBAAgBjP,EAAEuK,UAAU,OAAOvK,EAAEuE,KAAK,IAAI,QAAS,IAAGvE,EAAEkP,GAAG,KAAKlP,EAAEqK,MAAMpK,EAAE,IAAI,CAACA,EAAE,SAAS,CAACwE,YAAY,wBAAwB,CAACzE,EAAEkP,GAAG,aAAalP,EAAEmP,GAAGnP,EAAEqK,OAAO,cAAcrK,EAAEkP,GAAG,KAAKjP,EAAE,MAAMD,EAAEkP,GAAG,KAAKjP,EAAE,OAAO,CAACwE,YAAY,0BAA0B2K,SAAS,CAACC,YAAYrP,EAAEmP,GAAGnP,EAAE1C,WAAW0C,EAAEoK,WAAWnK,EAAE,IAAI,CAACwE,YAAY,0BAA0B2K,SAAS,CAACC,YAAYrP,EAAEmP,GAAGnP,EAAE1C,SAAS2C,EAAE,OAAO,CAACwE,YAAY,uBAAuB,CAACzE,EAAEkP,GAAGlP,EAAEmP,GAAGnP,EAAE1C,SAAS0C,EAAEkP,GAAG,KAAKlP,EAAEsP,MAAM,IAAI,EAAExW,EAAE,EAAE,EAAE,KAAK,SAASkH,EAAEpJ,EAAEqJ,GAAG,aAAaA,EAAEW,EAAEhK,EAAE,CAAC6J,EAAE,WAAW,OAAOrE,CAAC,EAAEqR,EAAE,WAAW,OAAO3U,CAAC,IAAI,IAAIsD,EAAE,WAAW,IAAI4D,EAAEpJ,EAAE8C,KAAKuG,EAAErJ,EAAEqX,eAAe7R,EAAExF,EAAEsX,MAAMC,IAAIlO,EAAE,OAAOrJ,EAAEuM,sBAAsBvM,EAAEmL,UAAU3F,EAAE,UAAUxF,EAAEyX,GAAG,CAAC7M,WAAW,CAAC,CAACzH,KAAK,UAAUwV,QAAQ,iBAAiB7Z,MAAMkB,EAAEqM,YAAY3F,KAAKkS,WAAW,mBAAmBC,UAAU,CAACC,MAAK,KAAMjL,YAAY,kCAAkCC,OAAO1E,EAAE,CAAC,EAAEA,EAAEpJ,EAAEqM,YAAYsB,MAAM3N,EAAEqM,YAAYsB,KAAKvE,EAAEpJ,EAAE4N,kBAAkB5N,EAAE4N,iBAAiBxE,EAAE,mCAAmCpJ,EAAEyM,kBAAkBrD,GAAGuO,MAAM,CAACoB,IAAI,+BAA+BvP,SAASxJ,EAAE0M,YAAYyL,GAAGnY,EAAEgZ,GAAG,CAACrK,MAAM3O,EAAEyQ,QAAQwI,KAAKjZ,EAAE0Q,QAAQ,CAAC1Q,EAAEwN,wBAAwBxN,EAAEwQ,mBAAmB,UAAUxQ,EAAE6M,oBAAmB,GAAI,CAACrH,EAAE,SAAS,CAACmS,MAAM,CAAC9G,OAAO7Q,EAAEyN,uBAAuBzN,EAAEsY,GAAG,SAAStY,EAAEuY,GAAGvY,EAAEyM,mBAAmB,UAAUzM,EAAEsY,GAAG,KAAK9S,EAAE,OAAO,CAACmS,MAAM,CAAC,eAAc,EAAGuB,OAAO,KAAK,CAAClZ,EAAE+X,GAAG,YAAY,IAAI,GAAGvS,EAAE,MAAM,CAACoF,WAAW,CAAC,CAACzH,KAAK,OAAOwV,QAAQ,SAAS7Z,MAAMkB,EAAEsM,oBAAoBtM,EAAEmL,UAAUyN,WAAW,oCAAoC/K,YAAY,cAAcC,MAAM,CAAC,oBAAoB9N,EAAEgM,SAAS,CAACxG,EAAE,UAAU,CAACmS,MAAM,CAACwB,MAAM,EAAE,iBAAgB,EAAGjO,KAAKlL,EAAEgM,OAAON,UAAU1L,EAAE0L,UAAU,qBAAqB1L,EAAE2L,kBAAkBG,UAAU9L,EAAE8L,WAAWqM,GAAG,CAAC,cAAc,SAAS/O,GAAGpJ,EAAEgM,OAAO5C,CAAC,EAAEwI,KAAK5R,EAAEsO,SAAS,aAAatO,EAAE4O,OAAOiD,KAAK7R,EAAEwO,WAAWoJ,YAAY5X,EAAE6X,GAAG,CAAC,CAACtV,IAAI,UAAUuV,GAAG,WAAW,IAAI1O,EAAE,MAAM,CAAC5D,EAAE,SAAS,CAACkS,IAAI,aAAa7J,YAAY,0CAA0CC,OAAO1E,EAAE,CAAC,EAAEA,EAAEpJ,EAAEwL,cAAcxL,EAAEgO,oBAAoB5E,EAAE,uCAAuCpJ,EAAEqL,UAAUjC,EAAE,2CAA2CpJ,EAAEgO,oBAAoB5E,EAAE,0CAA0CpJ,EAAEgO,qBAAqB,KAAKhO,EAAEwL,YAAYpC,EAAE,oCAAoCpJ,EAAEuL,QAAQnC,GAAGuO,MAAM,CAACnO,SAASxJ,EAAEwJ,SAAS,gBAAgB,OAAO,aAAaxJ,EAAEyL,UAAU,gBAAgBzL,EAAEkM,SAAS,gBAAgBlM,EAAEgM,OAAO,OAAO,QAAQ,YAAY,IAAIxD,KAAK,UAAU2P,GAAG,CAACxJ,MAAM3O,EAAEyQ,QAAQwI,KAAKjZ,EAAE0Q,SAAS,CAAC1Q,EAAEgO,oBAAoBhO,EAAE+X,GAAG,QAAQ,KAAK/X,EAAEwL,YAAYhG,EAAE,iBAAiB,CAACmS,MAAM,CAACyB,KAAK,GAAGC,WAAW,MAAMrZ,EAAE0Y,KAAK1Y,EAAEsY,GAAG,aAAatY,EAAEuY,GAAGvY,EAAEqL,WAAW,aAAa,GAAG,EAAE2M,OAAM,IAAK,MAAK,IAAK,CAAChY,EAAEsY,GAAG,KAAK9S,EAAE,MAAM,CAACoF,WAAW,CAAC,CAACzH,KAAK,OAAOwV,QAAQ,SAAS7Z,MAAMkB,EAAEgM,OAAO4M,WAAW,WAAWlB,IAAI,OAAO5J,MAAM,CAAC5C,KAAKlL,EAAEgM,QAAQ2L,MAAM,CAAC2B,SAAS,MAAMnB,GAAG,CAACoB,QAAQ,CAAC,SAASnQ,GAAG,OAAOA,EAAEZ,KAAKI,QAAQ,QAAQ5I,EAAEwZ,GAAGpQ,EAAEqQ,QAAQ,KAAK,GAAGrQ,EAAE7G,IAAI,CAAC,KAAK,aAAa6G,EAAEsQ,SAAStQ,EAAEuQ,UAAUvQ,EAAEwQ,QAAQxQ,EAAEyQ,QAAQ,KAAK7Z,EAAEiQ,oBAAoB3F,MAAM,KAAKxE,UAAU,EAAE,SAASsD,GAAG,OAAOA,EAAEZ,KAAKI,QAAQ,QAAQ5I,EAAEwZ,GAAGpQ,EAAEqQ,QAAQ,OAAO,GAAGrQ,EAAE7G,IAAI,CAAC,OAAO,eAAe6G,EAAEsQ,SAAStQ,EAAEuQ,UAAUvQ,EAAEwQ,QAAQxQ,EAAEyQ,QAAQ,KAAK7Z,EAAEmQ,gBAAgB7F,MAAM,KAAKxE,UAAU,EAAE,SAASsD,GAAG,OAAOA,EAAEZ,KAAKI,QAAQ,QAAQ5I,EAAEwZ,GAAGpQ,EAAEqQ,QAAQ,MAAM,EAAErQ,EAAE7G,IAAI,QAAQ6G,EAAEsQ,SAAStQ,EAAEuQ,UAAUvQ,EAAEwQ,QAAQxQ,EAAEyQ,QAAQ,KAAK7Z,EAAEmQ,gBAAgB7F,MAAM,KAAKxE,UAAU,EAAE,SAASsD,GAAG,OAAOA,EAAEZ,KAAKI,QAAQ,QAAQ5I,EAAEwZ,GAAGpQ,EAAEqQ,QAAQ,MAAM,EAAErQ,EAAE7G,IAAI,OAAO,KAAK6G,EAAEuQ,SAASvQ,EAAEsQ,SAAStQ,EAAEwQ,QAAQxQ,EAAEyQ,QAAQ,KAAK7Z,EAAEiQ,oBAAoB3F,MAAM,KAAKxE,WAAW,IAAI,EAAE,SAASsD,GAAG,OAAOA,EAAEZ,KAAKI,QAAQ,QAAQ5I,EAAEwZ,GAAGpQ,EAAEqQ,QAAQ,eAAU,EAAOrQ,EAAE7G,SAAI,IAAS6G,EAAEsQ,SAAStQ,EAAEuQ,UAAUvQ,EAAEwQ,QAAQxQ,EAAEyQ,QAAQ,KAAK7Z,EAAE8O,iBAAiBxE,MAAM,KAAKxE,UAAU,EAAE,SAASsD,GAAG,OAAOA,EAAEZ,KAAKI,QAAQ,QAAQ5I,EAAEwZ,GAAGpQ,EAAEqQ,QAAQ,iBAAY,EAAOrQ,EAAE7G,SAAI,IAAS6G,EAAEsQ,SAAStQ,EAAEuQ,UAAUvQ,EAAEwQ,QAAQxQ,EAAEyQ,QAAQ,KAAK7Z,EAAEoQ,gBAAgB9F,MAAM,KAAKxE,UAAU,EAAE,SAASsD,GAAG,OAAOA,EAAEZ,KAAKI,QAAQ,QAAQ5I,EAAEwZ,GAAGpQ,EAAEqQ,QAAQ,MAAM,GAAGrQ,EAAE7G,IAAI,CAAC,MAAM,YAAY6G,EAAEsQ,SAAStQ,EAAEuQ,UAAUvQ,EAAEwQ,QAAQxQ,EAAEyQ,QAAQ,MAAMzQ,EAAEkH,iBAAiBtQ,EAAEwO,UAAUlE,MAAM,KAAKxE,WAAW,GAAGgU,UAAU9Z,EAAE+O,qBAAqB,CAACvJ,EAAE,KAAK,CAACmS,MAAM,CAACxD,GAAGnU,EAAEkM,SAASoN,SAAS,OAAO,CAACtZ,EAAEgM,OAAO,CAAChM,EAAE+X,GAAG,YAAY/X,EAAE0Y,MAAM,QAAQ,EAAE,EAAExW,EAAE,EAAE,EAAE,KAAK,SAASkH,EAAEpJ,EAAEqJ,GAAG,aAAa,SAAS7D,EAAE4D,EAAEpJ,EAAEqJ,EAAE7D,EAAEtD,EAAE0H,EAAEC,EAAEnE,GAAG,IAAIoE,EAAEC,EAAE,mBAAmBX,EAAEA,EAAEzC,QAAQyC,EAAE,GAAGpJ,IAAI+J,EAAE6G,OAAO5Q,EAAE+J,EAAEgQ,gBAAgB1Q,EAAEU,EAAEiQ,WAAU,GAAIxU,IAAIuE,EAAE4G,YAAW,GAAI/G,IAAIG,EAAEkQ,SAAS,UAAUrQ,GAAGC,GAAGC,EAAE,SAASV,IAAIA,EAAEA,GAAGtG,KAAKoX,QAAQpX,KAAKoX,OAAOC,YAAYrX,KAAKsX,QAAQtX,KAAKsX,OAAOF,QAAQpX,KAAKsX,OAAOF,OAAOC,aAAa,oBAAoBE,sBAAsBjR,EAAEiR,qBAAqBnY,GAAGA,EAAEsN,KAAK1M,KAAKsG,GAAGA,GAAGA,EAAEkR,uBAAuBlR,EAAEkR,sBAAsBtK,IAAInG,EAAE,EAAEE,EAAEwQ,aAAazQ,GAAG5H,IAAI4H,EAAEpE,EAAE,WAAWxD,EAAEsN,KAAK1M,MAAMiH,EAAE4G,WAAW7N,KAAKsX,OAAOtX,MAAM0X,MAAMnH,SAASoH,WAAW,EAAEvY,GAAG4H,EAAE,GAAGC,EAAE4G,WAAW,CAAC5G,EAAE2Q,cAAc5Q,EAAE,IAAIE,EAAED,EAAE6G,OAAO7G,EAAE6G,OAAO,SAASxH,EAAEpJ,GAAG,OAAO8J,EAAE0F,KAAKxP,GAAGgK,EAAEZ,EAAEpJ,EAAE,CAAC,KAAK,CAAC,IAAIkK,EAAEH,EAAE4Q,aAAa5Q,EAAE4Q,aAAazQ,EAAE,GAAGrG,OAAOqG,EAAEJ,GAAG,CAACA,EAAE,CAAC,MAAM,CAACjL,QAAQuK,EAAEzC,QAAQoD,EAAE,CAACV,EAAEW,EAAEhK,EAAE,CAACsJ,EAAE,WAAW,OAAO9D,CAAC,GAAG,EAAE,KAAK,SAAS4D,GAAG,aAAaA,EAAEvK,QAAQ,EAAQ,KAA+B,EAAE,KAAK,SAASuK,GAAG,aAAaA,EAAEvK,QAAQ,EAAQ,IAAW,EAAE,KAAK,SAASuK,GAAG,aAAaA,EAAEvK,QAAQ,EAAQ,KAAY,EAAE,KAAK,SAASuK,GAAG,aAAaA,EAAEvK,QAAQ,EAAQ,IAAM,EAAE,KAAK,SAASuK,GAAG,aAAaA,EAAEvK,QAAQ,EAAQ,KAAyC,EAAE,KAAK,SAASuK,GAAG,aAAaA,EAAEvK,QAAQ,EAAQ,KAAkC,EAAE,KAAK,SAASuK,GAAG,aAAaA,EAAEvK,QAAQ,EAAQ,KAA2C,GAAGmB,EAAE,CAAC,EAAE,SAASqJ,EAAE7D,GAAG,IAAItD,EAAElC,EAAEwF,GAAG,QAAG,IAAStD,EAAE,OAAOA,EAAErD,QAAQ,IAAI+K,EAAE5J,EAAEwF,GAAG,CAAC2O,GAAG3O,EAAE3G,QAAQ,CAAC,GAAG,OAAOuK,EAAE5D,GAAGoE,EAAEA,EAAE/K,QAAQwK,GAAGO,EAAE/K,OAAO,CAACwK,EAAEA,EAAE,SAASD,GAAG,IAAIpJ,EAAEoJ,GAAGA,EAAEtI,WAAW,WAAW,OAAOsI,EAAErI,OAAO,EAAE,WAAW,OAAOqI,CAAC,EAAE,OAAOC,EAAEW,EAAEhK,EAAE,CAACwF,EAAExF,IAAIA,CAAC,EAAEqJ,EAAEW,EAAE,SAASZ,EAAEpJ,GAAG,IAAI,IAAIwF,KAAKxF,EAAEqJ,EAAEO,EAAE5J,EAAEwF,KAAK6D,EAAEO,EAAER,EAAE5D,IAAI7G,OAAOC,eAAewK,EAAE5D,EAAE,CAACzG,YAAW,EAAGC,IAAIgB,EAAEwF,IAAI,EAAE6D,EAAEO,EAAE,SAASR,EAAEpJ,GAAG,OAAOrB,OAAO6E,UAAUoX,eAAepL,KAAKpG,EAAEpJ,EAAE,EAAEqJ,EAAE3D,EAAE,SAAS0D,GAAG,oBAAoBiG,QAAQA,OAAOwL,aAAalc,OAAOC,eAAewK,EAAEiG,OAAOwL,YAAY,CAAC/b,MAAM,WAAWH,OAAOC,eAAewK,EAAE,aAAa,CAACtK,OAAM,GAAI,EAAE,IAAI0G,EAAE,CAAC,EAAE,OAAO,WAAW,aAAa6D,EAAE3D,EAAEF,GAAG6D,EAAEW,EAAExE,EAAE,CAACzE,QAAQ,WAAW,OAAO+Z,CAAC,IAAI,IAAI1R,EAAEC,EAAE,MAAMrJ,EAAEqJ,EAAE,MAAMnH,EAAEmH,EAAEA,EAAErJ,GAAG4J,EAAE,EAAQ,MAAyCC,EAAER,EAAEA,EAAEO,GAAGlE,EAAE2D,EAAE,MAAMS,EAAET,EAAEA,EAAE3D,GAAGqE,EAAEV,EAAE,MAAMW,EAAEX,EAAEA,EAAEU,GAAGG,EAAE,EAAQ,MAAmCK,EAAElB,EAAEA,EAAEa,GAAGM,EAAE,EAAQ,MAAkCG,EAAEtB,EAAEA,EAAEmB,GAAGzG,EAAEsF,EAAE,MAAM0H,EAAE1H,EAAE,MAAM2H,EAAE3H,EAAE,MAAMyH,EAAEzH,EAAE,KAAK8N,EAAE9N,EAAE,MAAM,SAAS5D,EAAE2D,EAAEpJ,GAAG,IAAIqJ,EAAE7D,EAAEtD,EAAE0H,EAAE5J,EAAE8C,KAAKiY,MAAM,WAAW7Y,GAAE,EAAGsD,EAAE,IAAIwV,KAAK3R,EAAE4R,WAAW7R,EAAEQ,EAAE,EAAE9G,KAAKoY,MAAM,WAAWhZ,GAAE,EAAGiZ,aAAa9R,GAAGO,GAAG,IAAIoR,KAAKxV,CAAC,EAAE1C,KAAKsY,MAAM,WAAWlZ,GAAE,EAAGiZ,aAAa9R,GAAGO,EAAE,CAAC,EAAE9G,KAAKuY,YAAY,WAAW,OAAOnZ,IAAIY,KAAKoY,QAAQpY,KAAKiY,SAASnR,CAAC,EAAE9G,KAAKwY,gBAAgB,WAAW,OAAOpZ,CAAC,EAAEY,KAAKiY,OAAO,CAAC,IAAI3D,EAAE,CAACjU,KAAK,QAAQ2H,WAAW,CAACyQ,aAAaxK,EAAEhQ,QAAQgR,QAAQhO,EAAEhD,QAAQya,YAAY3R,IAAI4R,aAAa3R,IAAIoI,MAAMlI,IAAI0R,MAAMnR,IAAIoR,KAAKhR,KAAKC,WAAW,CAACC,QAAQsM,EAAEpW,SAASwI,OAAO,CAACyH,EAAE1H,GAAGrH,MAAM,CAACwR,MAAM,CAACjL,KAAK8C,OAAOvK,QAAQ,IAAI6a,YAAY,CAACpT,KAAKiB,QAAQ1I,SAAQ,GAAI8a,QAAQ,CAACrT,KAAKiB,QAAQ1I,SAAQ,GAAI+a,cAAc,CAACtT,KAAKiB,QAAQ1I,SAAQ,GAAIgb,gBAAgB,CAACvT,KAAKiB,QAAQ1I,SAAQ,GAAIib,eAAe,CAACxT,KAAKyT,OAAOlb,QAAQ,KAAKmb,eAAe,CAAC1T,KAAKyT,OAAOlb,QAAQ,KAAKob,gBAAgB,CAAC3T,KAAKiB,QAAQ1I,SAAQ,GAAIqb,YAAY,CAAC5T,KAAKiB,QAAQ1I,SAAQ,GAAIsb,iBAAiB,CAAC7T,KAAKiB,QAAQ1I,SAAQ,GAAIqY,KAAK,CAAC5Q,KAAK8C,OAAOvK,QAAQ,SAASub,UAAU,SAASlT,GAAG,MAAM,CAAC,QAAQ,SAAS,QAAQ,QAAQmT,SAASnT,EAAE,GAAGoT,SAAS,CAAChU,KAAKiB,QAAQ1I,SAAQ,GAAI0b,KAAK,CAACjU,KAAKiB,QAAQ1I,SAAQ,GAAI+K,UAAU,CAACtD,KAAK8C,OAAOvK,QAAQ,SAASiE,KAAK,WAAW,MAAM,CAAC0X,GAAG,KAAKC,WAAU,EAAGC,WAAU,EAAGC,iBAAiB,KAAKC,SAAQ,EAAGC,iBAAiB,KAAKC,SAAS,GAAG,EAAEtT,SAAS,CAACuT,oBAAoB,WAAW,MAAM,SAASpZ,OAAOf,KAAKgZ,cAAc,MAAM,KAAK,EAAEoB,eAAe,WAAW,OAAOpa,KAAKga,SAAQ,EAAGhM,EAAE1H,GAAG,oBAAmB,EAAG0H,EAAE1H,GAAG,kBAAkB,EAAE+T,aAAa,WAAW,MAAM,CAAC,uBAAuBra,KAAKoZ,eAAe,KAAK,cAAcpZ,KAAKka,SAAS,KAAK,GAAG/O,MAAM,CAACkO,gBAAgB,SAAS/S,GAAGtG,KAAKia,mBAAmB3T,EAAEtG,KAAKia,iBAAiB7B,QAAQpY,KAAKia,iBAAiBhC,QAAQ,GAAG7M,YAAY,WAAWhK,OAAOkZ,iBAAiB,UAAUta,KAAKua,cAAc,EAAEC,cAAc,WAAWpZ,OAAOqZ,oBAAoB,UAAUza,KAAKua,eAAeva,KAAK4Z,GAAGc,IAAI,wBAAwB1a,KAAK4Z,GAAGe,SAAS,EAAExJ,QAAQ,WAAW,IAAI7K,EAAEtG,KAAKA,KAAK6Z,WAAU,EAAG7Z,KAAK4a,kBAAkB5a,KAAK4Z,GAAG,IAAIxa,IAAJ,CAASY,KAAK2L,MAAMkP,MAAM7a,KAAK4Z,GAAGvE,GAAG,wBAAuB,SAAUnY,GAAGoJ,EAAEwU,YAAY5d,EAAG,IAAG,SAAS8C,KAAKgJ,UAAUlM,SAASie,KAAKC,aAAahb,KAAKuN,IAAIzQ,SAASie,KAAKE,WAAWne,SAASiM,cAAc/I,KAAKgJ,WAAWqK,YAAYrT,KAAKuN,IAAI,EAAE2N,UAAU,WAAWlb,KAAKuN,IAAIN,QAAQ,EAAE1B,QAAQ,CAAC4P,SAAS,SAAS7U,GAAGtG,KAAK8Y,cAAcxS,GAAGtG,KAAKob,iBAAiBpb,KAAKyL,MAAM,WAAWnF,GAAG,EAAEwL,KAAK,SAASxL,GAAGtG,KAAK+Y,UAAUzS,GAAGtG,KAAKob,iBAAiBpb,KAAKyL,MAAM,OAAOnF,GAAG,EAAE+U,MAAM,SAAS/U,GAAG,IAAIpJ,EAAE8C,KAAKA,KAAK0Z,WAAW1Z,KAAK6Z,WAAU,EAAG1B,YAAW,WAAYjb,EAAEuO,MAAM,QAAQnF,EAAG,GAAE,KAAK,EAAEiU,cAAc,SAASjU,GAAG,OAAOA,EAAEqQ,SAAS,KAAK,GAAG3W,KAAKmb,SAAS7U,GAAG,MAAM,KAAK,GAAG,KAAK,GAAGtG,KAAK8R,KAAKxL,GAAG,MAAM,KAAK,GAAGtG,KAAKqb,MAAM/U,GAAG,EAAEwU,YAAY,SAASxU,GAAGtG,KAAKsZ,cAAc,cAAchT,EAAEZ,KAAK1F,KAAK8R,KAAKxL,GAAG,eAAeA,EAAEZ,MAAM1F,KAAKmb,SAAS7U,GAAG,EAAEsU,gBAAgB,WAAW,IAAItU,EAAEtG,KAAKA,KAAKkZ,eAAe,IAAIlZ,KAAK8Z,WAAU,EAAGzB,aAAarY,KAAK+Z,kBAAkB/Z,KAAK+Z,iBAAiB5B,YAAW,WAAY7R,EAAEwT,WAAU,CAAG,GAAE9Z,KAAKkZ,gBAAgB,EAAEoC,gBAAgB,WAAWtb,KAAKga,SAASha,KAAKga,QAAQha,KAAKga,QAAQha,KAAKub,kBAAkBvb,KAAKwb,uBAAuB,EAAEJ,eAAe,WAAWpb,KAAKga,SAASha,KAAKga,QAAQha,KAAKwb,wBAAwBxb,KAAK+L,WAAU,WAAY/L,KAAKsb,iBAAkB,GAAE,EAAEC,gBAAgB,WAAW,IAAIjV,EAAEtG,KAAKA,KAAKga,SAAQ,EAAGha,KAAK+Y,QAAQ/Y,KAAKia,iBAAiB,IAAItX,GAAE,WAAY2D,EAAEwL,OAAOxL,EAAEiV,iBAAkB,GAAEvb,KAAKoZ,iBAAiBpZ,KAAKga,SAAQ,EAAGha,KAAKwb,wBAAwB,EAAEA,sBAAsB,WAAWxb,KAAKia,kBAAkBja,KAAKia,iBAAiB3B,OAAO,IAAItE,EAAEzN,EAAE,MAAMkV,EAAElV,EAAEA,EAAEyN,GAAG0H,EAAEnV,EAAE,MAAMoV,EAAEpV,EAAEA,EAAEmV,GAAG3H,EAAExN,EAAE,KAAKqV,EAAErV,EAAEA,EAAEwN,GAAG8H,EAAEtV,EAAE,MAAMuV,EAAEvV,EAAEA,EAAEsV,GAAGE,EAAExV,EAAE,MAAMyV,EAAEzV,EAAEA,EAAEwV,GAAGta,EAAE8E,EAAE,MAAM0V,EAAE1V,EAAEA,EAAE9E,GAAGya,EAAE3V,EAAE,MAAM4V,EAAE,CAAC,EAAEA,EAAEhO,kBAAkB8N,IAAIE,EAAE/N,cAAc0N,IAAIK,EAAE9N,OAAOuN,IAAItN,KAAK,KAAK,QAAQ6N,EAAE5N,OAAOoN,IAAIQ,EAAE3N,mBAAmBwN,IAAIP,IAAIS,EAAE1V,EAAE2V,GAAGD,EAAE1V,GAAG0V,EAAE1V,EAAEiI,QAAQyN,EAAE1V,EAAEiI,OAAO,IAAI2N,EAAE7V,EAAE,MAAM8V,EAAE9V,EAAE,MAAM+V,EAAE/V,EAAEA,EAAE8V,GAAGE,GAAE,EAAGH,EAAE5V,GAAG8N,GAAE,WAAY,IAAIhO,EAAEtG,KAAK9C,EAAEoJ,EAAEiO,eAAehO,EAAED,EAAEkO,MAAMC,IAAIvX,EAAE,OAAOqJ,EAAE,aAAa,CAACsO,MAAM,CAACxU,KAAK,SAAS,CAACkG,EAAE,MAAM,CAACqO,IAAI,OAAO7J,YAAY,aAAaC,MAAM,CAAC,mBAAmB1E,EAAEqT,MAAMrE,MAAMhP,EAAE+T,aAAahF,GAAG,CAAC5K,MAAMnE,EAAEsU,gBAAgB5D,UAAU1Q,EAAEsU,gBAAgB4B,UAAUlW,EAAEsU,kBAAkB,CAACrU,EAAE,aAAa,CAACsO,MAAM,CAACxU,KAAK,oBAAoB,CAACkG,EAAE,MAAM,CAACuB,WAAW,CAAC,CAACzH,KAAK,OAAOwV,QAAQ,SAAS7Z,OAAOsK,EAAEwT,UAAUhE,WAAW,eAAe/K,YAAY,eAAeC,MAAM,CAACyR,UAAUnW,EAAEwT,YAAY,CAAC,KAAKxT,EAAEqK,MAAM1F,OAAO1E,EAAE,MAAM,CAACwE,YAAY,eAAe,CAACzE,EAAEkP,GAAG,eAAelP,EAAEmP,GAAGnP,EAAEqK,OAAO,gBAAgBrK,EAAEsP,KAAKtP,EAAEkP,GAAG,KAAKjP,EAAE,MAAM,CAACwE,YAAY,cAAc,CAACzE,EAAEyS,SAASzS,EAAE2S,gBAAgB1S,EAAE,SAAS,CAACuB,WAAW,CAAC,CAACzH,KAAK,UAAUwV,QAAQ,iBAAiB7Z,MAAMsK,EAAE8T,eAAetE,WAAW,iBAAiBC,UAAU,CAACC,MAAK,KAAMjL,YAAY,mBAAmBC,MAAM,CAAC,2BAA2B1E,EAAE+S,iBAAiBxE,MAAM,CAACnP,KAAK,UAAU2P,GAAG,CAAC5K,MAAMnE,EAAEgV,kBAAkB,CAAChV,EAAE0T,QAAQzT,EAAE,QAAQ,CAACwE,YAAY,0BAA0B8J,MAAM,CAACyB,KAAKhQ,EAAE4T,SAASvJ,MAAM,GAAG4F,WAAW,MAAMhQ,EAAE,OAAO,CAACwE,YAAY,yBAAyB8J,MAAM,CAACyB,KAAKhQ,EAAE4T,SAASvJ,MAAM,GAAG4F,WAAW,MAAMjQ,EAAEkP,GAAG,KAAKjP,EAAE,OAAO,CAACwE,YAAY,mBAAmB,CAACzE,EAAEkP,GAAG,mBAAmBlP,EAAEmP,GAAGnP,EAAE8T,gBAAgB,oBAAoB9T,EAAEkP,GAAG,KAAKlP,EAAE0T,QAAQzT,EAAE,MAAM,CAACwE,YAAY,gBAAgB8J,MAAM,CAAC6H,OAAO,KAAKC,MAAM,OAAO,CAACpW,EAAE,SAAS,CAACwE,YAAY,wBAAwB8J,MAAM,CAAC+H,OAAO,QAAQ,eAAe,IAAIC,KAAK,cAAcja,EAAE,KAAKka,GAAG,KAAKC,GAAG,UAAUzW,EAAEsP,MAAM,GAAGtP,EAAEsP,KAAKtP,EAAEkP,GAAG,KAAKjP,EAAE,UAAU,CAACwE,YAAY,kBAAkB,CAACzE,EAAE2O,GAAG,YAAY,GAAG3O,EAAEkP,GAAG,KAAKlP,EAAEoT,SAASnT,EAAE,UAAU,CAACwE,YAAY,gBAAgB,CAACxE,EAAE,eAAe,CAAC8O,GAAG,CAAC5K,MAAMnE,EAAE+U,OAAOvG,YAAYxO,EAAEyO,GAAG,CAAC,CAACtV,IAAI,OAAOuV,GAAG,WAAW,MAAM,CAACzO,EAAE,QAAQ,CAACsO,MAAM,CAACyB,KAAKhQ,EAAE4T,SAASvJ,MAAM,GAAG4F,WAAW,MAAM,EAAErB,OAAM,IAAK,MAAK,EAAG,aAAa,CAAC5O,EAAEkP,GAAG,mBAAmBlP,EAAEmP,GAAGnP,EAAEA,EAAE,UAAU,qBAAqB,GAAGA,EAAEsP,MAAM,OAAOtP,EAAEkP,GAAG,KAAKjP,EAAE,aAAa,CAACsO,MAAM,CAACxU,KAAKiG,EAAE6T,sBAAsB,CAAC5T,EAAE,MAAM,CAACuB,WAAW,CAAC,CAACzH,KAAK,OAAOwV,QAAQ,SAAS7Z,MAAMsK,EAAEuT,UAAU/D,WAAW,cAAc/K,YAAY,gBAAgBC,MAAM,CAAC,kBAAkB1E,EAAEgQ,KAAKhQ,EAAEiT,iBAAiB,mCAAmC,IAAIlE,GAAG,CAAC2H,UAAU,SAAS9f,GAAG,OAAOA,EAAEgC,SAAShC,EAAE+f,cAAc,KAAK3W,EAAE+U,MAAM7T,MAAM,KAAKxE,UAAU,IAAI,CAACuD,EAAE,aAAa,CAACsO,MAAM,CAACxU,KAAK,oBAAoB,CAACkG,EAAE,IAAI,CAACuB,WAAW,CAAC,CAACzH,KAAK,OAAOwV,QAAQ,SAAS7Z,MAAMsK,EAAEwS,cAAcxS,EAAEwT,UAAUhE,WAAW,8BAA8B/K,YAAY,OAAOC,MAAM,CAACyR,UAAUnW,EAAEwT,YAAYxT,EAAEwS,aAAajE,MAAM,CAAC1K,KAAK,KAAKkL,GAAG,CAAC5K,MAAM,SAASvN,GAAG,OAAOA,EAAEsQ,iBAAiBtQ,EAAEuQ,kBAAkBnH,EAAE6U,SAAS3T,MAAM,KAAKxE,UAAU,IAAI,CAACuD,EAAE,OAAO,CAACwE,YAAY,iBAAiB,CAACxE,EAAE,cAAc,CAACsO,MAAM,CAACyB,KAAK,GAAG3F,MAAM,GAAG4F,WAAW,MAAMjQ,EAAEkP,GAAG,KAAKjP,EAAE,OAAO,CAACwE,YAAY,mBAAmB,CAACzE,EAAEkP,GAAG,qBAAqBlP,EAAEmP,GAAGnP,EAAEA,EAAE,aAAa,uBAAuB,OAAOA,EAAEkP,GAAG,KAAKjP,EAAE,MAAM,CAACwE,YAAY,mBAAmB,CAACzE,EAAE2O,GAAG,YAAY,GAAG3O,EAAEkP,GAAG,KAAKjP,EAAE,aAAa,CAACsO,MAAM,CAACxU,KAAK,oBAAoB,CAACkG,EAAE,IAAI,CAACuB,WAAW,CAAC,CAACzH,KAAK,OAAOwV,QAAQ,SAAS7Z,MAAMsK,EAAEyS,UAAUzS,EAAEwT,UAAUhE,WAAW,0BAA0B/K,YAAY,OAAOC,MAAM,CAACyR,UAAUnW,EAAEwT,YAAYxT,EAAEyS,SAASlE,MAAM,CAAC1K,KAAK,KAAKkL,GAAG,CAAC5K,MAAM,SAASvN,GAAG,OAAOA,EAAEsQ,iBAAiBtQ,EAAEuQ,kBAAkBnH,EAAEwL,KAAKtK,MAAM,KAAKxE,UAAU,IAAI,CAACuD,EAAE,OAAO,CAACwE,YAAY,aAAa,CAACxE,EAAE,eAAe,CAACsO,MAAM,CAACyB,KAAK,GAAG3F,MAAM,GAAG4F,WAAW,MAAMjQ,EAAEkP,GAAG,KAAKjP,EAAE,OAAO,CAACwE,YAAY,mBAAmB,CAACzE,EAAEkP,GAAG,qBAAqBlP,EAAEmP,GAAGnP,EAAEA,EAAE,SAAS,uBAAuB,QAAQ,MAAM,IAAK,GAAE,IAAG,EAAG,KAAK,WAAW,MAAM,mBAAmBgW,KAAKA,IAAIC,GAAG,IAAIW,EAAEX,EAAExgB,SAAQ,EAAGuK,EAAEE,GAAG0W,GAAG,IAAIlF,EAAEkF,CAAC,CAA9rP,GAAksPxa,CAAC,CAAj9gI,mBCD5S2D,EAAOtK,QAAU,EAAjB,mCCEA,IAAIohB,EAAQ,EAAQ,MAChBC,EAAS,EAAQ,MACjBC,EAAU,EAAQ,MAClBC,EAAW,EAAQ,MACnBC,EAAgB,EAAQ,MACxBC,EAAe,EAAQ,MACvBC,EAAkB,EAAQ,MAC1BC,EAAuB,EAAQ,MAC/BC,EAAa,EAAQ,MACrBC,EAAgB,EAAQ,KACxBC,EAAgB,EAAQ,KAE5BxX,EAAOtK,QAAU,SAAoBuJ,GACnC,OAAO,IAAIwY,SAAQ,SAA4BC,EAASC,GACtD,IAGIC,EAHAC,EAAc5Y,EAAOpD,KACrBic,EAAiB7Y,EAAOjH,QACxB+f,EAAe9Y,EAAO8Y,aAE1B,SAASrM,IACHzM,EAAO+Y,aACT/Y,EAAO+Y,YAAY9d,YAAY0d,GAG7B3Y,EAAOgZ,QACThZ,EAAOgZ,OAAO7D,oBAAoB,QAASwD,EAE/C,CAEId,EAAMoB,WAAWL,IAAgBf,EAAMqB,+BAClCL,EAAe,gBAGxB,IAAIM,EAAU,IAAIC,eAGlB,GAAIpZ,EAAOqZ,KAAM,CACf,IAAIC,EAAWtZ,EAAOqZ,KAAKC,UAAY,GACnCC,EAAWvZ,EAAOqZ,KAAKE,SAAW3M,SAAS9M,mBAAmBE,EAAOqZ,KAAKE,WAAa,GAC3FV,EAAeW,cAAgB,SAAW7M,KAAK2M,EAAW,IAAMC,EAClE,CAEA,IAAIE,EAAWxB,EAAcjY,EAAO0Z,QAAS1Z,EAAOR,KAOpD,SAASma,IACP,GAAKR,EAAL,CAIA,IAAIS,EAAkB,0BAA2BT,EAAUjB,EAAaiB,EAAQU,yBAA2B,KAGvGC,EAAW,CACbld,KAHkBkc,GAAiC,SAAjBA,GAA6C,SAAjBA,EACvCK,EAAQW,SAA/BX,EAAQY,aAGRC,OAAQb,EAAQa,OAChBC,WAAYd,EAAQc,WACpBlhB,QAAS6gB,EACT5Z,OAAQA,EACRmZ,QAASA,GAGXrB,GAAO,SAAkBphB,GACvB+hB,EAAQ/hB,GACR+V,GACF,IAAG,SAAiByN,GAClBxB,EAAOwB,GACPzN,GACF,GAAGqN,GAGHX,EAAU,IAvBV,CAwBF,CAmEA,GAnGAA,EAAQrW,KAAK9C,EAAOma,OAAOC,cAAepC,EAASyB,EAAUzZ,EAAOP,OAAQO,EAAOqa,mBAAmB,GAGtGlB,EAAQmB,QAAUta,EAAOsa,QA+BrB,cAAenB,EAEjBA,EAAQQ,UAAYA,EAGpBR,EAAQoB,mBAAqB,WACtBpB,GAAkC,IAAvBA,EAAQqB,aAQD,IAAnBrB,EAAQa,QAAkBb,EAAQsB,aAAwD,IAAzCtB,EAAQsB,YAAYja,QAAQ,WAKjFqS,WAAW8G,EACb,EAIFR,EAAQuB,QAAU,WACXvB,IAILT,EAAO,IAAIL,EAAW,kBAAmBA,EAAWsC,aAAc3a,EAAQmZ,IAG1EA,EAAU,KACZ,EAGAA,EAAQyB,QAAU,WAGhBlC,EAAO,IAAIL,EAAW,gBAAiBA,EAAWwC,YAAa7a,EAAQmZ,EAASA,IAGhFA,EAAU,IACZ,EAGAA,EAAQ2B,UAAY,WAClB,IAAIC,EAAsB/a,EAAOsa,QAAU,cAAgBta,EAAOsa,QAAU,cAAgB,mBACxFU,EAAehb,EAAOgb,cAAgB5C,EACtCpY,EAAO+a,sBACTA,EAAsB/a,EAAO+a,qBAE/BrC,EAAO,IAAIL,EACT0C,EACAC,EAAaC,oBAAsB5C,EAAW6C,UAAY7C,EAAWsC,aACrE3a,EACAmZ,IAGFA,EAAU,IACZ,EAKItB,EAAMqB,uBAAwB,CAEhC,IAAIiC,GAAanb,EAAOob,iBAAmBjD,EAAgBsB,KAAczZ,EAAOqb,eAC9EtD,EAAQuD,KAAKtb,EAAOqb,qBACpB1d,EAEEwd,IACFtC,EAAe7Y,EAAOub,gBAAkBJ,EAE5C,CAGI,qBAAsBhC,GACxBtB,EAAMhgB,QAAQghB,GAAgB,SAA0B2C,EAAKrhB,QAChC,IAAhBye,GAAqD,iBAAtBze,EAAIshB,qBAErC5C,EAAe1e,GAGtBgf,EAAQuC,iBAAiBvhB,EAAKqhB,EAElC,IAIG3D,EAAM8D,YAAY3b,EAAOob,mBAC5BjC,EAAQiC,kBAAoBpb,EAAOob,iBAIjCtC,GAAiC,SAAjBA,IAClBK,EAAQL,aAAe9Y,EAAO8Y,cAIS,mBAA9B9Y,EAAO4b,oBAChBzC,EAAQnE,iBAAiB,WAAYhV,EAAO4b,oBAIP,mBAA5B5b,EAAO6b,kBAAmC1C,EAAQ2C,QAC3D3C,EAAQ2C,OAAO9G,iBAAiB,WAAYhV,EAAO6b,mBAGjD7b,EAAO+Y,aAAe/Y,EAAOgZ,UAG/BL,EAAa,SAASoD,GACf5C,IAGLT,GAAQqD,GAAWA,GAAUA,EAAO3b,KAAQ,IAAIkY,EAAkByD,GAClE5C,EAAQ6C,QACR7C,EAAU,KACZ,EAEAnZ,EAAO+Y,aAAe/Y,EAAO+Y,YAAYphB,UAAUghB,GAC/C3Y,EAAOgZ,SACThZ,EAAOgZ,OAAOiD,QAAUtD,IAAe3Y,EAAOgZ,OAAOhE,iBAAiB,QAAS2D,KAI9EC,IACHA,EAAc,MAGhB,IAAIsD,EAAW3D,EAAckB,GAEzByC,IAA+D,IAAnD,CAAE,OAAQ,QAAS,QAAS1b,QAAQ0b,GAClDxD,EAAO,IAAIL,EAAW,wBAA0B6D,EAAW,IAAK7D,EAAW8D,gBAAiBnc,IAM9FmZ,EAAQiD,KAAKxD,EACf,GACF,+BC3NA,IAAIf,EAAQ,EAAQ,MAChB7O,EAAO,EAAQ,MACfqT,EAAQ,EAAQ,KAChBC,EAAc,EAAQ,MA4B1B,IAAIC,EAnBJ,SAASC,EAAeC,GACtB,IAAIC,EAAU,IAAIL,EAAMI,GACpBniB,EAAW0O,EAAKqT,EAAMjhB,UAAU+d,QAASuD,GAa7C,OAVA7E,EAAM8E,OAAOriB,EAAU+hB,EAAMjhB,UAAWshB,GAGxC7E,EAAM8E,OAAOriB,EAAUoiB,GAGvBpiB,EAASxB,OAAS,SAAgB8jB,GAChC,OAAOJ,EAAeF,EAAYG,EAAeG,GACnD,EAEOtiB,CACT,CAGYkiB,CA3BG,EAAQ,OA8BvBD,EAAMF,MAAQA,EAGdE,EAAMjE,cAAgB,EAAQ,KAC9BiE,EAAMpjB,YAAc,EAAQ,MAC5BojB,EAAMnjB,SAAW,EAAQ,MACzBmjB,EAAMM,QAAU,gBAChBN,EAAMO,WAAa,EAAQ,MAG3BP,EAAMlE,WAAa,EAAQ,MAG3BkE,EAAMQ,OAASR,EAAMjE,cAGrBiE,EAAMS,IAAM,SAAaC,GACvB,OAAOzE,QAAQwE,IAAIC,EACrB,EACAV,EAAMW,OAAS,EAAQ,MAGvBX,EAAMY,aAAe,EAAQ,MAE7Bpc,EAAOtK,QAAU8lB,EAGjBxb,EAAOtK,QAAP,QAAyB8lB,+BC7DzB,IAAIjE,EAAgB,EAAQ,KAQ5B,SAASnf,EAAYikB,GACnB,GAAwB,mBAAbA,EACT,MAAM,IAAI5iB,UAAU,gCAGtB,IAAI6iB,EAEJ3iB,KAAK4iB,QAAU,IAAI9E,SAAQ,SAAyBC,GAClD4E,EAAiB5E,CACnB,IAEA,IAAIvhB,EAAQwD,KAGZA,KAAK4iB,QAAQC,MAAK,SAASxB,GACzB,GAAK7kB,EAAMsmB,WAAX,CAEA,IAAI1jB,EACA4H,EAAIxK,EAAMsmB,WAAWzjB,OAEzB,IAAKD,EAAI,EAAGA,EAAI4H,EAAG5H,IACjB5C,EAAMsmB,WAAW1jB,GAAGiiB,GAEtB7kB,EAAMsmB,WAAa,IARU,CAS/B,IAGA9iB,KAAK4iB,QAAQC,KAAO,SAASE,GAC3B,IAAIC,EAEAJ,EAAU,IAAI9E,SAAQ,SAASC,GACjCvhB,EAAMS,UAAU8gB,GAChBiF,EAAWjF,CACb,IAAG8E,KAAKE,GAMR,OAJAH,EAAQvB,OAAS,WACf7kB,EAAM+D,YAAYyiB,EACpB,EAEOJ,CACT,EAEAF,GAAS,SAAgBO,GACnBzmB,EAAM0mB,SAKV1mB,EAAM0mB,OAAS,IAAItF,EAAcqF,GACjCN,EAAenmB,EAAM0mB,QACvB,GACF,CAKAzkB,EAAYiC,UAAUyiB,iBAAmB,WACvC,GAAInjB,KAAKkjB,OACP,MAAMljB,KAAKkjB,MAEf,EAMAzkB,EAAYiC,UAAUzD,UAAY,SAAmBmmB,GAC/CpjB,KAAKkjB,OACPE,EAASpjB,KAAKkjB,QAIZljB,KAAK8iB,WACP9iB,KAAK8iB,WAAWnmB,KAAKymB,GAErBpjB,KAAK8iB,WAAa,CAACM,EAEvB,EAMA3kB,EAAYiC,UAAUH,YAAc,SAAqB6iB,GACvD,GAAKpjB,KAAK8iB,WAAV,CAGA,IAAIO,EAAQrjB,KAAK8iB,WAAWhd,QAAQsd,IACrB,IAAXC,GACFrjB,KAAK8iB,WAAW/P,OAAOsQ,EAAO,EAHhC,CAKF,EAMA5kB,EAAY6kB,OAAS,WACnB,IAAIjC,EAIJ,MAAO,CACL7kB,MAJU,IAAIiC,GAAY,SAAkBwI,GAC5Coa,EAASpa,CACX,IAGEoa,OAAQA,EAEZ,EAEAhb,EAAOtK,QAAU0C,8BCpHjB,IAAIkf,EAAa,EAAQ,MASzB,SAASC,EAAcqF,GAErBtF,EAAWjR,KAAK1M,KAAiB,MAAXijB,EAAkB,WAAaA,EAAStF,EAAW4F,cACzEvjB,KAAKK,KAAO,eACd,CAZY,EAAQ,MAcdmjB,SAAS5F,EAAeD,EAAY,CACxC8F,YAAY,IAGdpd,EAAOtK,QAAU6hB,yBCnBjBvX,EAAOtK,QAAU,SAAkBC,GACjC,SAAUA,IAASA,EAAMynB,WAC3B,8BCFA,IAAItG,EAAQ,EAAQ,MAChBG,EAAW,EAAQ,MACnBoG,EAAqB,EAAQ,KAC7BC,EAAkB,EAAQ,MAC1B/B,EAAc,EAAQ,MACtBrE,EAAgB,EAAQ,MACxB/D,EAAY,EAAQ,MAEpBoK,EAAapK,EAAUoK,WAM3B,SAASjC,EAAMO,GACbliB,KAAKrB,SAAWujB,EAChBliB,KAAK6jB,aAAe,CAClBpF,QAAS,IAAIiF,EACbtE,SAAU,IAAIsE,EAElB,CAOA/B,EAAMjhB,UAAU+d,QAAU,SAAiBqF,EAAaxe,GAG3B,iBAAhBwe,GACTxe,EAASA,GAAU,CAAC,GACbR,IAAMgf,EAEbxe,EAASwe,GAAe,CAAC,GAG3Bxe,EAASsc,EAAY5hB,KAAKrB,SAAU2G,IAGzBma,OACTna,EAAOma,OAASna,EAAOma,OAAOsB,cACrB/gB,KAAKrB,SAAS8gB,OACvBna,EAAOma,OAASzf,KAAKrB,SAAS8gB,OAAOsB,cAErCzb,EAAOma,OAAS,MAGlB,IAAIa,EAAehb,EAAOgb,kBAELrd,IAAjBqd,GACF9G,EAAUuK,cAAczD,EAAc,CACpC0D,kBAAmBJ,EAAWtD,aAAasD,EAAWK,SACtDC,kBAAmBN,EAAWtD,aAAasD,EAAWK,SACtD1D,oBAAqBqD,EAAWtD,aAAasD,EAAWK,WACvD,GAIL,IAAIE,EAA0B,GAC1BC,GAAiC,EACrCpkB,KAAK6jB,aAAapF,QAAQthB,SAAQ,SAAoCknB,GACjC,mBAAxBA,EAAYC,UAA0D,IAAhCD,EAAYC,QAAQhf,KAIrE8e,EAAiCA,GAAkCC,EAAYE,YAE/EJ,EAAwBK,QAAQH,EAAYI,UAAWJ,EAAYK,UACrE,IAEA,IAKI9B,EALA+B,EAA2B,GAO/B,GANA3kB,KAAK6jB,aAAazE,SAASjiB,SAAQ,SAAkCknB,GACnEM,EAAyBhoB,KAAK0nB,EAAYI,UAAWJ,EAAYK,SACnE,KAIKN,EAAgC,CACnC,IAAIQ,EAAQ,CAACjB,OAAiB1gB,GAM9B,IAJAkE,MAAMzG,UAAU8jB,QAAQhd,MAAMod,EAAOT,GACrCS,EAAQA,EAAM7jB,OAAO4jB,GAErB/B,EAAU9E,QAAQC,QAAQzY,GACnBsf,EAAMvlB,QACXujB,EAAUA,EAAQC,KAAK+B,EAAMC,QAASD,EAAMC,SAG9C,OAAOjC,CACT,CAIA,IADA,IAAIkC,EAAYxf,EACT6e,EAAwB9kB,QAAQ,CACrC,IAAI0lB,EAAcZ,EAAwBU,QACtCG,EAAab,EAAwBU,QACzC,IACEC,EAAYC,EAAYD,EAI1B,CAHE,MAAOznB,GACP2nB,EAAW3nB,GACX,KACF,CACF,CAEA,IACEulB,EAAUe,EAAgBmB,EAG5B,CAFE,MAAOznB,GACP,OAAOygB,QAAQE,OAAO3gB,EACxB,CAEA,KAAOsnB,EAAyBtlB,QAC9BujB,EAAUA,EAAQC,KAAK8B,EAAyBE,QAASF,EAAyBE,SAGpF,OAAOjC,CACT,EAEAjB,EAAMjhB,UAAUukB,OAAS,SAAgB3f,GACvCA,EAASsc,EAAY5hB,KAAKrB,SAAU2G,GACpC,IAAIyZ,EAAWxB,EAAcjY,EAAO0Z,QAAS1Z,EAAOR,KACpD,OAAOwY,EAASyB,EAAUzZ,EAAOP,OAAQO,EAAOqa,iBAClD,EAGAxC,EAAMhgB,QAAQ,CAAC,SAAU,MAAO,OAAQ,YAAY,SAA6BsiB,GAE/EkC,EAAMjhB,UAAU+e,GAAU,SAAS3a,EAAKQ,GACtC,OAAOtF,KAAKye,QAAQmD,EAAYtc,GAAU,CAAC,EAAG,CAC5Cma,OAAQA,EACR3a,IAAKA,EACL5C,MAAOoD,GAAU,CAAC,GAAGpD,OAEzB,CACF,IAEAib,EAAMhgB,QAAQ,CAAC,OAAQ,MAAO,UAAU,SAA+BsiB,GAGrE,SAASyF,EAAmBC,GAC1B,OAAO,SAAoBrgB,EAAK5C,EAAMoD,GACpC,OAAOtF,KAAKye,QAAQmD,EAAYtc,GAAU,CAAC,EAAG,CAC5Cma,OAAQA,EACRphB,QAAS8mB,EAAS,CAChB,eAAgB,uBACd,CAAC,EACLrgB,IAAKA,EACL5C,KAAMA,IAEV,CACF,CAEAyf,EAAMjhB,UAAU+e,GAAUyF,IAE1BvD,EAAMjhB,UAAU+e,EAAS,QAAUyF,GAAmB,EACxD,IAEA7e,EAAOtK,QAAU4lB,+BC7JjB,IAAIxE,EAAQ,EAAQ,MAYpB,SAASQ,EAAWsF,EAASmC,EAAM9f,EAAQmZ,EAASW,GAClDhM,MAAM1G,KAAK1M,MACXA,KAAKijB,QAAUA,EACfjjB,KAAKK,KAAO,aACZ+kB,IAASplB,KAAKolB,KAAOA,GACrB9f,IAAWtF,KAAKsF,OAASA,GACzBmZ,IAAYze,KAAKye,QAAUA,GAC3BW,IAAapf,KAAKof,SAAWA,EAC/B,CAEAjC,EAAMqG,SAAS7F,EAAYvK,MAAO,CAChCiS,OAAQ,WACN,MAAO,CAELpC,QAASjjB,KAAKijB,QACd5iB,KAAML,KAAKK,KAEXilB,YAAatlB,KAAKslB,YAClBC,OAAQvlB,KAAKulB,OAEbC,SAAUxlB,KAAKwlB,SACfC,WAAYzlB,KAAKylB,WACjBC,aAAc1lB,KAAK0lB,aACnBC,MAAO3lB,KAAK2lB,MAEZrgB,OAAQtF,KAAKsF,OACb8f,KAAMplB,KAAKolB,KACX9F,OAAQtf,KAAKof,UAAYpf,KAAKof,SAASE,OAAStf,KAAKof,SAASE,OAAS,KAE3E,IAGF,IAAI5e,EAAYid,EAAWjd,UACvBklB,EAAc,CAAC,EAEnB,CACE,uBACA,iBACA,eACA,YACA,cACA,4BACA,iBACA,mBACA,kBACA,gBAEAzoB,SAAQ,SAASioB,GACjBQ,EAAYR,GAAQ,CAACppB,MAAOopB,EAC9B,IAEAvpB,OAAO+L,iBAAiB+V,EAAYiI,GACpC/pB,OAAOC,eAAe4E,EAAW,eAAgB,CAAC1E,OAAO,IAGzD2hB,EAAWlR,KAAO,SAASpP,EAAO+nB,EAAM9f,EAAQmZ,EAASW,EAAUyG,GACjE,IAAIC,EAAajqB,OAAOuC,OAAOsC,GAY/B,OAVAyc,EAAM4I,aAAa1oB,EAAOyoB,GAAY,SAAgBjoB,GACpD,OAAOA,IAAQuV,MAAM1S,SACvB,IAEAid,EAAWjR,KAAKoZ,EAAYzoB,EAAM4lB,QAASmC,EAAM9f,EAAQmZ,EAASW,GAElE0G,EAAWzlB,KAAOhD,EAAMgD,KAExBwlB,GAAehqB,OAAO2C,OAAOsnB,EAAYD,GAElCC,CACT,EAEAzf,EAAOtK,QAAU4hB,8BCnFjB,IAAIR,EAAQ,EAAQ,MAEpB,SAASuG,IACP1jB,KAAKa,SAAW,EAClB,CAUA6iB,EAAmBhjB,UAAUslB,IAAM,SAAavB,EAAWC,EAAU7gB,GAOnE,OANA7D,KAAKa,SAASlE,KAAK,CACjB8nB,UAAWA,EACXC,SAAUA,EACVH,cAAa1gB,GAAUA,EAAQ0gB,YAC/BD,QAASzgB,EAAUA,EAAQygB,QAAU,OAEhCtkB,KAAKa,SAASxB,OAAS,CAChC,EAOAqkB,EAAmBhjB,UAAUulB,MAAQ,SAAe5U,GAC9CrR,KAAKa,SAASwQ,KAChBrR,KAAKa,SAASwQ,GAAM,KAExB,EAUAqS,EAAmBhjB,UAAUvD,QAAU,SAAiB6X,GACtDmI,EAAMhgB,QAAQ6C,KAAKa,UAAU,SAAwBI,GACzC,OAANA,GACF+T,EAAG/T,EAEP,GACF,EAEAoF,EAAOtK,QAAU2nB,+BCnDjB,IAAIwC,EAAgB,EAAQ,MACxBC,EAAc,EAAQ,MAW1B9f,EAAOtK,QAAU,SAAuBijB,EAASoH,GAC/C,OAAIpH,IAAYkH,EAAcE,GACrBD,EAAYnH,EAASoH,GAEvBA,CACT,+BCjBA,IAAIjJ,EAAQ,EAAQ,MAChBkJ,EAAgB,EAAQ,MACxB3nB,EAAW,EAAQ,MACnBC,EAAW,EAAQ,MACnBif,EAAgB,EAAQ,KAK5B,SAAS0I,EAA6BhhB,GAKpC,GAJIA,EAAO+Y,aACT/Y,EAAO+Y,YAAY8E,mBAGjB7d,EAAOgZ,QAAUhZ,EAAOgZ,OAAOiD,QACjC,MAAM,IAAI3D,CAEd,CAQAvX,EAAOtK,QAAU,SAAyBuJ,GA8BxC,OA7BAghB,EAA6BhhB,GAG7BA,EAAOjH,QAAUiH,EAAOjH,SAAW,CAAC,EAGpCiH,EAAOpD,KAAOmkB,EAAc3Z,KAC1BpH,EACAA,EAAOpD,KACPoD,EAAOjH,QACPiH,EAAOihB,kBAITjhB,EAAOjH,QAAU8e,EAAMqJ,MACrBlhB,EAAOjH,QAAQooB,QAAU,CAAC,EAC1BnhB,EAAOjH,QAAQiH,EAAOma,SAAW,CAAC,EAClCna,EAAOjH,SAGT8e,EAAMhgB,QACJ,CAAC,SAAU,MAAO,OAAQ,OAAQ,MAAO,QAAS,WAClD,SAA2BsiB,UAClBna,EAAOjH,QAAQohB,EACxB,KAGYna,EAAOohB,SAAW/nB,EAAS+nB,SAE1BphB,GAAQud,MAAK,SAA6BzD,GAWvD,OAVAkH,EAA6BhhB,GAG7B8Z,EAASld,KAAOmkB,EAAc3Z,KAC5BpH,EACA8Z,EAASld,KACTkd,EAAS/gB,QACTiH,EAAOqhB,mBAGFvH,CACT,IAAG,SAA4B8D,GAe7B,OAdKxkB,EAASwkB,KACZoD,EAA6BhhB,GAGzB4d,GAAUA,EAAO9D,WACnB8D,EAAO9D,SAASld,KAAOmkB,EAAc3Z,KACnCpH,EACA4d,EAAO9D,SAASld,KAChBghB,EAAO9D,SAAS/gB,QAChBiH,EAAOqhB,qBAKN7I,QAAQE,OAAOkF,EACxB,GACF,+BCpFA,IAAI/F,EAAQ,EAAQ,MAUpB9W,EAAOtK,QAAU,SAAqB6qB,EAASC,GAE7CA,EAAUA,GAAW,CAAC,EACtB,IAAIvhB,EAAS,CAAC,EAEd,SAASwhB,EAAe5nB,EAAQokB,GAC9B,OAAInG,EAAM4J,cAAc7nB,IAAWie,EAAM4J,cAAczD,GAC9CnG,EAAMqJ,MAAMtnB,EAAQokB,GAClBnG,EAAM4J,cAAczD,GACtBnG,EAAMqJ,MAAM,CAAC,EAAGlD,GACdnG,EAAM7Q,QAAQgX,GAChBA,EAAO3W,QAET2W,CACT,CAGA,SAAS0D,EAAoBC,GAC3B,OAAK9J,EAAM8D,YAAY4F,EAAQI,IAEnB9J,EAAM8D,YAAY2F,EAAQK,SAA/B,EACEH,OAAe7jB,EAAW2jB,EAAQK,IAFlCH,EAAeF,EAAQK,GAAOJ,EAAQI,GAIjD,CAGA,SAASC,EAAiBD,GACxB,IAAK9J,EAAM8D,YAAY4F,EAAQI,IAC7B,OAAOH,OAAe7jB,EAAW4jB,EAAQI,GAE7C,CAGA,SAASE,EAAiBF,GACxB,OAAK9J,EAAM8D,YAAY4F,EAAQI,IAEnB9J,EAAM8D,YAAY2F,EAAQK,SAA/B,EACEH,OAAe7jB,EAAW2jB,EAAQK,IAFlCH,OAAe7jB,EAAW4jB,EAAQI,GAI7C,CAGA,SAASG,EAAgBH,GACvB,OAAIA,KAAQJ,EACHC,EAAeF,EAAQK,GAAOJ,EAAQI,IACpCA,KAAQL,EACVE,OAAe7jB,EAAW2jB,EAAQK,SADpC,CAGT,CAEA,IAAII,EAAW,CACb,IAAOH,EACP,OAAUA,EACV,KAAQA,EACR,QAAWC,EACX,iBAAoBA,EACpB,kBAAqBA,EACrB,iBAAoBA,EACpB,QAAWA,EACX,eAAkBA,EAClB,gBAAmBA,EACnB,QAAWA,EACX,aAAgBA,EAChB,eAAkBA,EAClB,eAAkBA,EAClB,iBAAoBA,EACpB,mBAAsBA,EACtB,WAAcA,EACd,iBAAoBA,EACpB,cAAiBA,EACjB,eAAkBA,EAClB,UAAaA,EACb,UAAaA,EACb,WAAcA,EACd,YAAeA,EACf,WAAcA,EACd,iBAAoBA,EACpB,eAAkBC,GASpB,OANAjK,EAAMhgB,QAAQtB,OAAOwL,KAAKuf,GAAS7lB,OAAOlF,OAAOwL,KAAKwf,KAAW,SAA4BI,GAC3F,IAAIT,EAAQa,EAASJ,IAASD,EAC1BM,EAAcd,EAAMS,GACvB9J,EAAM8D,YAAYqG,IAAgBd,IAAUY,IAAqB9hB,EAAO2hB,GAAQK,EACnF,IAEOhiB,CACT,+BCjGA,IAAIqY,EAAa,EAAQ,MASzBtX,EAAOtK,QAAU,SAAgBgiB,EAASC,EAAQoB,GAChD,IAAImI,EAAiBnI,EAAS9Z,OAAOiiB,eAChCnI,EAASE,QAAWiI,IAAkBA,EAAenI,EAASE,QAGjEtB,EAAO,IAAIL,EACT,mCAAqCyB,EAASE,OAC9C,CAAC3B,EAAW8D,gBAAiB9D,EAAW6J,kBAAkBxW,KAAKyW,MAAMrI,EAASE,OAAS,KAAO,GAC9FF,EAAS9Z,OACT8Z,EAASX,QACTW,IAPFrB,EAAQqB,EAUZ,+BCtBA,IAAIjC,EAAQ,EAAQ,MAChBxe,EAAW,EAAQ,MAUvB0H,EAAOtK,QAAU,SAAuBmG,EAAM7D,EAASqpB,GACrD,IAAI1F,EAAUhiB,MAAQrB,EAMtB,OAJAwe,EAAMhgB,QAAQuqB,GAAK,SAAmB1S,GACpC9S,EAAO8S,EAAGtI,KAAKsV,EAAS9f,EAAM7D,EAChC,IAEO6D,CACT,6CCnBIib,EAAQ,EAAQ,MAChBwK,EAAsB,EAAQ,MAC9BhK,EAAa,EAAQ,MACrBD,EAAuB,EAAQ,MAC/B0E,EAAa,EAAQ,MAErBwF,EAAuB,CACzB,eAAgB,qCAGlB,SAASC,EAAsBxpB,EAASrC,IACjCmhB,EAAM8D,YAAY5iB,IAAY8e,EAAM8D,YAAY5iB,EAAQ,mBAC3DA,EAAQ,gBAAkBrC,EAE9B,CA6BA,IA1BM0qB,EA0BF/nB,EAAW,CAEb2hB,aAAc5C,EAEdgJ,UA7B8B,oBAAnBhI,qBAGmB,IAAZoJ,GAAuE,qBAA5CjsB,OAAO6E,UAAUmC,SAAS6J,KAAKob,MAD1EpB,EAAU,EAAQ,OAKbA,GAwBPH,iBAAkB,CAAC,SAA0BrkB,EAAM7D,GAIjD,GAHAspB,EAAoBtpB,EAAS,UAC7BspB,EAAoBtpB,EAAS,gBAEzB8e,EAAMoB,WAAWrc,IACnBib,EAAM4K,cAAc7lB,IACpBib,EAAM6K,SAAS9lB,IACfib,EAAM8K,SAAS/lB,IACfib,EAAM+K,OAAOhmB,IACbib,EAAMgL,OAAOjmB,GAEb,OAAOA,EAET,GAAIib,EAAMiL,kBAAkBlmB,GAC1B,OAAOA,EAAKmmB,OAEd,GAAIlL,EAAMmL,kBAAkBpmB,GAE1B,OADA2lB,EAAsBxpB,EAAS,mDACxB6D,EAAKW,WAGd,IAGI0lB,EAHAC,EAAkBrL,EAAMsL,SAASvmB,GACjCwmB,EAAcrqB,GAAWA,EAAQ,gBAIrC,IAAKkqB,EAAapL,EAAMoL,WAAWrmB,KAAWsmB,GAAmC,wBAAhBE,EAAwC,CACvG,IAAIC,EAAY3oB,KAAK4oB,KAAO5oB,KAAK4oB,IAAIC,SACrC,OAAOzG,EAAWmG,EAAa,CAAC,UAAWrmB,GAAQA,EAAMymB,GAAa,IAAIA,EAC5E,CAAO,OAAIH,GAAmC,qBAAhBE,GAC5Bb,EAAsBxpB,EAAS,oBAnDrC,SAAyByqB,EAAUC,EAAQC,GACzC,GAAI7L,EAAM8L,SAASH,GACjB,IAEE,OADCC,GAAU5W,KAAK+W,OAAOJ,GAChB3L,EAAMlS,KAAK6d,EAKpB,CAJE,MAAO5rB,GACP,GAAe,gBAAXA,EAAEmD,KACJ,MAAMnD,CAEV,CAGF,OAAQ8rB,GAAW7W,KAAKC,WAAW0W,EACrC,CAuCaK,CAAgBjnB,IAGlBA,CACT,GAEAykB,kBAAmB,CAAC,SAA2BzkB,GAC7C,IAAIoe,EAAetgB,KAAKsgB,cAAgB3hB,EAAS2hB,aAC7C0D,EAAoB1D,GAAgBA,EAAa0D,kBACjDE,EAAoB5D,GAAgBA,EAAa4D,kBACjDkF,GAAqBpF,GAA2C,SAAtBhkB,KAAKoe,aAEnD,GAAIgL,GAAsBlF,GAAqB/G,EAAM8L,SAAS/mB,IAASA,EAAK7C,OAC1E,IACE,OAAO8S,KAAK+W,MAAMhnB,EAQpB,CAPE,MAAOhF,GACP,GAAIksB,EAAmB,CACrB,GAAe,gBAAXlsB,EAAEmD,KACJ,MAAMsd,EAAWlR,KAAKvP,EAAGygB,EAAW6J,iBAAkBxnB,KAAM,KAAMA,KAAKof,UAEzE,MAAMliB,CACR,CACF,CAGF,OAAOgF,CACT,GAMA0d,QAAS,EAETe,eAAgB,aAChBE,eAAgB,eAEhBwI,kBAAmB,EACnBC,eAAgB,EAEhBV,IAAK,CACHC,SAAU,EAAQ,OAGpBtB,eAAgB,SAAwBjI,GACtC,OAAOA,GAAU,KAAOA,EAAS,GACnC,EAEAjhB,QAAS,CACPooB,OAAQ,CACN,OAAU,uCAKhBtJ,EAAMhgB,QAAQ,CAAC,SAAU,MAAO,SAAS,SAA6BsiB,GACpE9gB,EAASN,QAAQohB,GAAU,CAAC,CAC9B,IAEAtC,EAAMhgB,QAAQ,CAAC,OAAQ,MAAO,UAAU,SAA+BsiB,GACrE9gB,EAASN,QAAQohB,GAAUtC,EAAMqJ,MAAMoB,EACzC,IAEAvhB,EAAOtK,QAAU4C,yBC/IjB0H,EAAOtK,QAAU,CACfioB,mBAAmB,EACnBE,mBAAmB,EACnB3D,qBAAqB,aCLvBla,EAAOtK,QAAU,CACf,QAAW,iCCCbsK,EAAOtK,QAAU,SAAciZ,EAAIuU,GACjC,OAAO,WAEL,IADA,IAAIC,EAAO,IAAIriB,MAAMnE,UAAU3D,QACtBD,EAAI,EAAGA,EAAIoqB,EAAKnqB,OAAQD,IAC/BoqB,EAAKpqB,GAAK4D,UAAU5D,GAEtB,OAAO4V,EAAGxN,MAAM+hB,EAASC,EAC3B,CACF,+BCRA,IAAIrM,EAAQ,EAAQ,MAEpB,SAASsM,EAAO3I,GACd,OAAO1b,mBAAmB0b,GACxB7e,QAAQ,QAAS,KACjBA,QAAQ,OAAQ,KAChBA,QAAQ,QAAS,KACjBA,QAAQ,OAAQ,KAChBA,QAAQ,QAAS,KACjBA,QAAQ,QAAS,IACrB,CASAoE,EAAOtK,QAAU,SAAkB+I,EAAKC,EAAQ4a,GAE9C,IAAK5a,EACH,OAAOD,EAGT,IAAI4kB,EACJ,GAAI/J,EACF+J,EAAmB/J,EAAiB5a,QAC/B,GAAIoY,EAAMmL,kBAAkBvjB,GACjC2kB,EAAmB3kB,EAAOlC,eACrB,CACL,IAAI8mB,EAAQ,GAEZxM,EAAMhgB,QAAQ4H,GAAQ,SAAmB+b,EAAKrhB,GACxCqhB,UAIA3D,EAAM7Q,QAAQwU,GAChBrhB,GAAY,KAEZqhB,EAAM,CAACA,GAGT3D,EAAMhgB,QAAQ2jB,GAAK,SAAoB5S,GACjCiP,EAAMyM,OAAO1b,GACfA,EAAIA,EAAE2b,cACG1M,EAAMsL,SAASva,KACxBA,EAAIiE,KAAKC,UAAUlE,IAErByb,EAAMhtB,KAAK8sB,EAAOhqB,GAAO,IAAMgqB,EAAOvb,GACxC,IACF,IAEAwb,EAAmBC,EAAM9X,KAAK,IAChC,CAEA,GAAI6X,EAAkB,CACpB,IAAII,EAAgBhlB,EAAIgB,QAAQ,MACT,IAAnBgkB,IACFhlB,EAAMA,EAAI6H,MAAM,EAAGmd,IAGrBhlB,KAA8B,IAAtBA,EAAIgB,QAAQ,KAAc,IAAM,KAAO4jB,CACjD,CAEA,OAAO5kB,CACT,yBC5DAuB,EAAOtK,QAAU,SAAqBijB,EAAS+K,GAC7C,OAAOA,EACH/K,EAAQ/c,QAAQ,OAAQ,IAAM,IAAM8nB,EAAY9nB,QAAQ,OAAQ,IAChE+c,CACN,+BCXA,IAAI7B,EAAQ,EAAQ,MAEpB9W,EAAOtK,QACLohB,EAAMqB,uBAIK,CACLwL,MAAO,SAAe3pB,EAAMrE,EAAOiuB,EAASC,EAAMC,EAAQC,GACxD,IAAIC,EAAS,GACbA,EAAO1tB,KAAK0D,EAAO,IAAM+E,mBAAmBpJ,IAExCmhB,EAAMmN,SAASL,IACjBI,EAAO1tB,KAAK,WAAa,IAAIub,KAAK+R,GAASM,eAGzCpN,EAAM8L,SAASiB,IACjBG,EAAO1tB,KAAK,QAAUutB,GAGpB/M,EAAM8L,SAASkB,IACjBE,EAAO1tB,KAAK,UAAYwtB,IAGX,IAAXC,GACFC,EAAO1tB,KAAK,UAGdG,SAASutB,OAASA,EAAOxY,KAAK,KAChC,EAEA+O,KAAM,SAAcvgB,GAClB,IAAImqB,EAAQ1tB,SAASutB,OAAOG,MAAM,IAAIC,OAAO,aAAepqB,EAAO,cACnE,OAAQmqB,EAAQE,mBAAmBF,EAAM,IAAM,IACjD,EAEAvd,OAAQ,SAAgB5M,GACtBL,KAAKgqB,MAAM3pB,EAAM,GAAI6X,KAAKyS,MAAQ,MACpC,GAMK,CACLX,MAAO,WAAkB,EACzBpJ,KAAM,WAAkB,OAAO,IAAM,EACrC3T,OAAQ,WAAmB,0BCzCnC5G,EAAOtK,QAAU,SAAuB+I,GAItC,MAAO,8BAA8B+H,KAAK/H,EAC5C,+BCXA,IAAIqY,EAAQ,EAAQ,MAQpB9W,EAAOtK,QAAU,SAAsB6uB,GACrC,OAAOzN,EAAMsL,SAASmC,KAAsC,IAAzBA,EAAQnI,YAC7C,+BCVA,IAAItF,EAAQ,EAAQ,MAEpB9W,EAAOtK,QACLohB,EAAMqB,uBAIJ,WACE,IAEIqM,EAFAC,EAAO,kBAAkBje,KAAKke,UAAUC,WACxCC,EAAiBnuB,SAASwW,cAAc,KAS5C,SAAS4X,EAAWpmB,GAClB,IAAIqF,EAAOrF,EAWX,OATIgmB,IAEFG,EAAe7Z,aAAa,OAAQjH,GACpCA,EAAO8gB,EAAe9gB,MAGxB8gB,EAAe7Z,aAAa,OAAQjH,GAG7B,CACLA,KAAM8gB,EAAe9gB,KACrBqX,SAAUyJ,EAAezJ,SAAWyJ,EAAezJ,SAASvf,QAAQ,KAAM,IAAM,GAChFkpB,KAAMF,EAAeE,KACrBC,OAAQH,EAAeG,OAASH,EAAeG,OAAOnpB,QAAQ,MAAO,IAAM,GAC3EopB,KAAMJ,EAAeI,KAAOJ,EAAeI,KAAKppB,QAAQ,KAAM,IAAM,GACpEqpB,SAAUL,EAAeK,SACzBC,KAAMN,EAAeM,KACrBC,SAAiD,MAAtCP,EAAeO,SAASnmB,OAAO,GACxC4lB,EAAeO,SACf,IAAMP,EAAeO,SAE3B,CAUA,OARAX,EAAYK,EAAW9pB,OAAOqqB,SAASthB,MAQhC,SAAyBuhB,GAC9B,IAAIC,EAAUxO,EAAM8L,SAASyC,GAAeR,EAAWQ,GAAcA,EACrE,OAAQC,EAAOnK,WAAaqJ,EAAUrJ,UAClCmK,EAAOR,OAASN,EAAUM,IAChC,CACD,CAlDD,GAsDS,WACL,OAAO,CACT,+BC/DN,IAAIhO,EAAQ,EAAQ,MAEpB9W,EAAOtK,QAAU,SAA6BsC,EAASutB,GACrDzO,EAAMhgB,QAAQkB,GAAS,SAAuBrC,EAAOqE,GAC/CA,IAASurB,GAAkBvrB,EAAKqf,gBAAkBkM,EAAelM,gBACnErhB,EAAQutB,GAAkB5vB,SACnBqC,EAAQgC,GAEnB,GACF,YCVAgG,EAAOtK,QAAU,kCCCjB,IAAIohB,EAAQ,EAAQ,MAIhB0O,EAAoB,CACtB,MAAO,gBAAiB,iBAAkB,eAAgB,OAC1D,UAAW,OAAQ,OAAQ,oBAAqB,sBAChD,gBAAiB,WAAY,eAAgB,sBAC7C,UAAW,cAAe,cAgB5BxlB,EAAOtK,QAAU,SAAsBsC,GACrC,IACIoB,EACAqhB,EACA1hB,EAHAusB,EAAS,CAAC,EAKd,OAAKttB,GAEL8e,EAAMhgB,QAAQkB,EAAQytB,MAAM,OAAO,SAAgBC,GAKjD,GAJA3sB,EAAI2sB,EAAKjmB,QAAQ,KACjBrG,EAAM0d,EAAMlS,KAAK8gB,EAAKC,OAAO,EAAG5sB,IAAI2hB,cACpCD,EAAM3D,EAAMlS,KAAK8gB,EAAKC,OAAO5sB,EAAI,IAE7BK,EAAK,CACP,GAAIksB,EAAOlsB,IAAQosB,EAAkB/lB,QAAQrG,IAAQ,EACnD,OAGAksB,EAAOlsB,GADG,eAARA,GACaksB,EAAOlsB,GAAOksB,EAAOlsB,GAAO,IAAIsB,OAAO,CAAC+f,IAEzC6K,EAAOlsB,GAAOksB,EAAOlsB,GAAO,KAAOqhB,EAAMA,CAE3D,CACF,IAEO6K,GAnBgBA,CAoBzB,wBClDAtlB,EAAOtK,QAAU,SAAuB+I,GACtC,IAAI0lB,EAAQ,4BAA4ByB,KAAKnnB,GAC7C,OAAO0lB,GAASA,EAAM,IAAM,EAC9B,yBCiBAnkB,EAAOtK,QAAU,SAAgBmwB,GAC/B,OAAO,SAAcC,GACnB,OAAOD,EAAS1kB,MAAM,KAAM2kB,EAC9B,CACF,oDCxBIhP,EAAQ,EAAQ,MAqEpB9W,EAAOtK,QA5DP,SAAoB8B,EAAKuuB,GAEvBA,EAAWA,GAAY,IAAIvD,SAE3B,IAAIlD,EAAQ,GAEZ,SAAS0G,EAAarwB,GACpB,OAAc,OAAVA,EAAuB,GAEvBmhB,EAAMyM,OAAO5tB,GACRA,EAAM6tB,cAGX1M,EAAM4K,cAAc/rB,IAAUmhB,EAAMmP,aAAatwB,GAC5B,mBAATuwB,KAAsB,IAAIA,KAAK,CAACvwB,IAAUwwB,EAAO/f,KAAKzQ,GAG/DA,CACT,CAuCA,OArCA,SAASoU,EAAMlO,EAAMuqB,GACnB,GAAItP,EAAM4J,cAAc7kB,IAASib,EAAM7Q,QAAQpK,GAAO,CACpD,IAA6B,IAAzByjB,EAAM7f,QAAQ5D,GAChB,MAAMkR,MAAM,kCAAoCqZ,GAGlD9G,EAAMhpB,KAAKuF,GAEXib,EAAMhgB,QAAQ+E,GAAM,SAAclG,EAAOyD,GACvC,IAAI0d,EAAM8D,YAAYjlB,GAAtB,CACA,IACImwB,EADAO,EAAUD,EAAYA,EAAY,IAAMhtB,EAAMA,EAGlD,GAAIzD,IAAUywB,GAA8B,iBAAVzwB,EAChC,GAAImhB,EAAMwP,SAASltB,EAAK,MAEtBzD,EAAQmW,KAAKC,UAAUpW,QAClB,GAAImhB,EAAMwP,SAASltB,EAAK,QAAU0sB,EAAMhP,EAAMyP,QAAQ5wB,IAK3D,YAHAmwB,EAAIhvB,SAAQ,SAAS0vB,IAClB1P,EAAM8D,YAAY4L,IAAOT,EAASU,OAAOJ,EAASL,EAAaQ,GAClE,IAKJzc,EAAMpU,EAAO0wB,EAjBuB,CAkBtC,IAEA/G,EAAMoH,KACR,MACEX,EAASU,OAAOL,EAAWJ,EAAanqB,GAE5C,CAEAkO,CAAMvS,GAECuuB,CACT,6CCnEIjK,EAAU,gBACVxE,EAAa,EAAQ,MAErBiG,EAAa,CAAC,EAGlB,CAAC,SAAU,UAAW,SAAU,WAAY,SAAU,UAAUzmB,SAAQ,SAASuI,EAAMtG,GACrFwkB,EAAWle,GAAQ,SAAmBsnB,GACpC,cAAcA,IAAUtnB,GAAQ,KAAOtG,EAAI,EAAI,KAAO,KAAOsG,CAC/D,CACF,IAEA,IAAIunB,EAAqB,CAAC,EAS1BrJ,EAAWtD,aAAe,SAAsB9G,EAAWlI,EAAS2R,GAClE,SAASiK,EAAcC,EAAKC,GAC1B,MAAO,WAAajL,EAAU,0BAA6BgL,EAAM,IAAOC,GAAQnK,EAAU,KAAOA,EAAU,GAC7G,CAGA,OAAO,SAASjnB,EAAOmxB,EAAKE,GAC1B,IAAkB,IAAd7T,EACF,MAAM,IAAImE,EACRuP,EAAcC,EAAK,qBAAuB7b,EAAU,OAASA,EAAU,KACvEqM,EAAW2P,gBAef,OAXIhc,IAAY2b,EAAmBE,KACjCF,EAAmBE,IAAO,EAE1B/vB,EAAQ8C,KACNgtB,EACEC,EACA,+BAAiC7b,EAAU,8CAK1CkI,GAAYA,EAAUxd,EAAOmxB,EAAKE,EAC3C,CACF,EAgCAhnB,EAAOtK,QAAU,CACfgoB,cAxBF,SAAuBlgB,EAAS0pB,EAAQC,GACtC,GAAuB,iBAAZ3pB,EACT,MAAM,IAAI8Z,EAAW,4BAA6BA,EAAW8P,sBAI/D,IAFA,IAAIpmB,EAAOxL,OAAOwL,KAAKxD,GACnBzE,EAAIiI,EAAKhI,OACND,KAAM,GAAG,CACd,IAAI+tB,EAAM9lB,EAAKjI,GACXoa,EAAY+T,EAAOJ,GACvB,GAAI3T,EAAJ,CACE,IAAIxd,EAAQ6H,EAAQspB,GAChBO,OAAmBzqB,IAAVjH,GAAuBwd,EAAUxd,EAAOmxB,EAAKtpB,GAC1D,IAAe,IAAX6pB,EACF,MAAM,IAAI/P,EAAW,UAAYwP,EAAM,YAAcO,EAAQ/P,EAAW8P,qBAG5E,MACA,IAAqB,IAAjBD,EACF,MAAM,IAAI7P,EAAW,kBAAoBwP,EAAKxP,EAAWgQ,eAE7D,CACF,EAIE/J,WAAYA,gCClFd,IAOuBgK,EAPnBtf,EAAO,EAAQ,MAIfzL,EAAWhH,OAAO6E,UAAUmC,SAG5BgrB,GAAmBD,EAMpB/xB,OAAOuC,OAAO,MAJR,SAAS4uB,GACd,IAAIc,EAAMjrB,EAAS6J,KAAKsgB,GACxB,OAAOY,EAAME,KAASF,EAAME,GAAOA,EAAInhB,MAAM,GAAI,GAAGoU,cACtD,GAGF,SAASgN,EAAWroB,GAElB,OADAA,EAAOA,EAAKqb,cACL,SAAkBiM,GACvB,OAAOa,EAAOb,KAAWtnB,CAC3B,CACF,CAQA,SAAS4G,EAAQwU,GACf,OAAO3Z,MAAMmF,QAAQwU,EACvB,CAQA,SAASG,EAAYH,GACnB,YAAsB,IAARA,CAChB,CAoBA,IAAIiH,EAAgBgG,EAAW,eA6C/B,SAAStF,EAAS3H,GAChB,OAAe,OAARA,GAA+B,iBAARA,CAChC,CAQA,SAASiG,EAAcjG,GACrB,GAAoB,WAAhB+M,EAAO/M,GACT,OAAO,EAGT,IAAIpgB,EAAY7E,OAAOmyB,eAAelN,GACtC,OAAqB,OAAdpgB,GAAsBA,IAAc7E,OAAO6E,SACpD,CASA,IAAIkpB,EAASmE,EAAW,QASpB7F,EAAS6F,EAAW,QASpB5F,EAAS4F,EAAW,QASpBxF,EAAawF,EAAW,YAQ5B,SAASE,EAAWnN,GAClB,MAA8B,sBAAvBje,EAAS6J,KAAKoU,EACvB,CAiCA,IAAIwH,EAAoByF,EAAW,mBAmDnC,SAAS5wB,EAAQU,EAAKmX,GAEpB,GAAInX,QAUJ,GALmB,iBAARA,IAETA,EAAM,CAACA,IAGLyO,EAAQzO,GAEV,IAAK,IAAIuB,EAAI,EAAG4H,EAAInJ,EAAIwB,OAAQD,EAAI4H,EAAG5H,IACrC4V,EAAGtI,KAAK,KAAM7O,EAAIuB,GAAIA,EAAGvB,QAI3B,IAAK,IAAI4B,KAAO5B,EACVhC,OAAO6E,UAAUoX,eAAepL,KAAK7O,EAAK4B,IAC5CuV,EAAGtI,KAAK,KAAM7O,EAAI4B,GAAMA,EAAK5B,EAIrC,CAwJA,IAA6BqwB,EAAzB5B,GAAyB4B,EAKJ,oBAAfC,YAA8BtyB,OAAOmyB,eAAeG,YAHrD,SAASnB,GACd,OAAOkB,GAAclB,aAAiBkB,CACxC,GAGF7nB,EAAOtK,QAAU,CACfuQ,QAASA,EACTyb,cAAeA,EACfC,SAvYF,SAAkBlH,GAChB,OAAe,OAARA,IAAiBG,EAAYH,IAA4B,OAApBA,EAAIlU,cAAyBqU,EAAYH,EAAIlU,cAChD,mBAA7BkU,EAAIlU,YAAYob,UAA2BlH,EAAIlU,YAAYob,SAASlH,EAClF,EAqYEvC,WA9PF,SAAoByO,GAClB,IAAIoB,EAAU,oBACd,OAAOpB,IACgB,mBAAbnE,UAA2BmE,aAAiBnE,UACpDhmB,EAAS6J,KAAKsgB,KAAWoB,GACxBH,EAAWjB,EAAMnqB,WAAamqB,EAAMnqB,aAAeurB,EAExD,EAwPEhG,kBApXF,SAA2BtH,GAOzB,MAL4B,oBAAhBuN,aAAiCA,YAAkB,OACpDA,YAAYC,OAAOxN,GAEnB,GAAUA,EAAU,QAAMiH,EAAcjH,EAAIuH,OAGzD,EA6WEY,SArWF,SAAkBnI,GAChB,MAAsB,iBAARA,CAChB,EAoWEwJ,SA5VF,SAAkBxJ,GAChB,MAAsB,iBAARA,CAChB,EA2VE2H,SAAUA,EACV1B,cAAeA,EACf9F,YAAaA,EACb2I,OAAQA,EACR1B,OAAQA,EACRC,OAAQA,EACR8F,WAAYA,EACZhG,SAnRF,SAAkBnH,GAChB,OAAO2H,EAAS3H,IAAQmN,EAAWnN,EAAIyN,KACzC,EAkREjG,kBAAmBA,EACnB9J,qBAjOF,WACE,OAAyB,oBAAduM,WAAoD,gBAAtBA,UAAUyD,SACY,iBAAtBzD,UAAUyD,SACY,OAAtBzD,UAAUyD,WAI/B,oBAAXptB,QACa,oBAAbtE,SAEX,EAwNEK,QAASA,EACTqpB,MA/JF,SAASA,IACP,IAAIkH,EAAS,CAAC,EACd,SAASe,EAAY3N,EAAKrhB,GACpBsnB,EAAc2G,EAAOjuB,KAASsnB,EAAcjG,GAC9C4M,EAAOjuB,GAAO+mB,EAAMkH,EAAOjuB,GAAMqhB,GACxBiG,EAAcjG,GACvB4M,EAAOjuB,GAAO+mB,EAAM,CAAC,EAAG1F,GACfxU,EAAQwU,GACjB4M,EAAOjuB,GAAOqhB,EAAInU,QAElB+gB,EAAOjuB,GAAOqhB,CAElB,CAEA,IAAK,IAAI1hB,EAAI,EAAG4H,EAAIhE,UAAU3D,OAAQD,EAAI4H,EAAG5H,IAC3CjC,EAAQ6F,UAAU5D,GAAIqvB,GAExB,OAAOf,CACT,EA8IEzL,OApIF,SAAgBvf,EAAGC,EAAG4mB,GAQpB,OAPApsB,EAAQwF,GAAG,SAAqBme,EAAKrhB,GAEjCiD,EAAEjD,GADA8pB,GAA0B,mBAARzI,EACXxS,EAAKwS,EAAKyI,GAEVzI,CAEb,IACOpe,CACT,EA4HEuI,KAxPF,SAAc6iB,GACZ,OAAOA,EAAI7iB,KAAO6iB,EAAI7iB,OAAS6iB,EAAI7rB,QAAQ,aAAc,GAC3D,EAuPEysB,SArHF,SAAkBC,GAIhB,OAH8B,QAA1BA,EAAQC,WAAW,KACrBD,EAAUA,EAAQhiB,MAAM,IAEnBgiB,CACT,EAiHEnL,SAvGF,SAAkB5W,EAAaiiB,EAAkB1vB,EAAOymB,GACtDhZ,EAAYlM,UAAY7E,OAAOuC,OAAOywB,EAAiBnuB,UAAWklB,GAClEhZ,EAAYlM,UAAUkM,YAAcA,EACpCzN,GAAStD,OAAO2C,OAAOoO,EAAYlM,UAAWvB,EAChD,EAoGE4mB,aA1FF,SAAsB+I,EAAWC,EAAS/tB,GACxC,IAAI7B,EACAC,EACA6nB,EACA+H,EAAS,CAAC,EAEdD,EAAUA,GAAW,CAAC,EAEtB,EAAG,CAGD,IADA3vB,GADAD,EAAQtD,OAAOozB,oBAAoBH,IACzBzvB,OACHD,KAAM,GAEN4vB,EADL/H,EAAO9nB,EAAMC,MAEX2vB,EAAQ9H,GAAQ6H,EAAU7H,GAC1B+H,EAAO/H,IAAQ,GAGnB6H,EAAYjzB,OAAOmyB,eAAec,EACpC,OAASA,KAAe9tB,GAAUA,EAAO8tB,EAAWC,KAAaD,IAAcjzB,OAAO6E,WAEtF,OAAOquB,CACT,EAqEElB,OAAQA,EACRE,WAAYA,EACZpB,SA9DF,SAAkBmB,EAAKoB,EAAcC,GACnCrB,EAAMtlB,OAAOslB,SACI7qB,IAAbksB,GAA0BA,EAAWrB,EAAIzuB,UAC3C8vB,EAAWrB,EAAIzuB,QAEjB8vB,GAAYD,EAAa7vB,OACzB,IAAI+vB,EAAYtB,EAAIhoB,QAAQopB,EAAcC,GAC1C,OAAsB,IAAfC,GAAoBA,IAAcD,CAC3C,EAuDEvC,QA/CF,SAAiBI,GACf,IAAKA,EAAO,OAAO,KACnB,IAAI5tB,EAAI4tB,EAAM3tB,OACd,GAAI4hB,EAAY7hB,GAAI,OAAO,KAE3B,IADA,IAAI+sB,EAAM,IAAIhlB,MAAM/H,GACbA,KAAM,GACX+sB,EAAI/sB,GAAK4tB,EAAM5tB,GAEjB,OAAO+sB,CACT,EAuCEG,aAAcA,EACd/D,WAAYA,8BClddxsB,EAAQszB,WAuCR,SAAqBC,GACnB,IAAIC,EAAOC,EAAQF,GACfG,EAAWF,EAAK,GAChBG,EAAkBH,EAAK,GAC3B,OAAuC,GAA9BE,EAAWC,GAAuB,EAAKA,CAClD,EA3CA3zB,EAAQ4zB,YAiDR,SAAsBL,GACpB,IAAIM,EAcAxwB,EAbAmwB,EAAOC,EAAQF,GACfG,EAAWF,EAAK,GAChBG,EAAkBH,EAAK,GAEvBpD,EAAM,IAAI0D,EAVhB,SAAsBP,EAAKG,EAAUC,GACnC,OAAuC,GAA9BD,EAAWC,GAAuB,EAAKA,CAClD,CAQoBI,CAAYR,EAAKG,EAAUC,IAEzCK,EAAU,EAGVC,EAAMN,EAAkB,EACxBD,EAAW,EACXA,EAGJ,IAAKrwB,EAAI,EAAGA,EAAI4wB,EAAK5wB,GAAK,EACxBwwB,EACGK,EAAUX,EAAIV,WAAWxvB,KAAO,GAChC6wB,EAAUX,EAAIV,WAAWxvB,EAAI,KAAO,GACpC6wB,EAAUX,EAAIV,WAAWxvB,EAAI,KAAO,EACrC6wB,EAAUX,EAAIV,WAAWxvB,EAAI,IAC/B+sB,EAAI4D,KAAcH,GAAO,GAAM,IAC/BzD,EAAI4D,KAAcH,GAAO,EAAK,IAC9BzD,EAAI4D,KAAmB,IAANH,EAGK,IAApBF,IACFE,EACGK,EAAUX,EAAIV,WAAWxvB,KAAO,EAChC6wB,EAAUX,EAAIV,WAAWxvB,EAAI,KAAO,EACvC+sB,EAAI4D,KAAmB,IAANH,GAGK,IAApBF,IACFE,EACGK,EAAUX,EAAIV,WAAWxvB,KAAO,GAChC6wB,EAAUX,EAAIV,WAAWxvB,EAAI,KAAO,EACpC6wB,EAAUX,EAAIV,WAAWxvB,EAAI,KAAO,EACvC+sB,EAAI4D,KAAcH,GAAO,EAAK,IAC9BzD,EAAI4D,KAAmB,IAANH,GAGnB,OAAOzD,CACT,EA5FApwB,EAAQm0B,cAkHR,SAAwBC,GAQtB,IAPA,IAAIP,EACAI,EAAMG,EAAM9wB,OACZ+wB,EAAaJ,EAAM,EACnBrG,EAAQ,GACR0G,EAAiB,MAGZjxB,EAAI,EAAGkxB,EAAON,EAAMI,EAAYhxB,EAAIkxB,EAAMlxB,GAAKixB,EACtD1G,EAAMhtB,KAAK4zB,EAAYJ,EAAO/wB,EAAIA,EAAIixB,EAAkBC,EAAOA,EAAQlxB,EAAIixB,IAI1D,IAAfD,GACFR,EAAMO,EAAMH,EAAM,GAClBrG,EAAMhtB,KACJ6zB,EAAOZ,GAAO,GACdY,EAAQZ,GAAO,EAAK,IACpB,OAEsB,IAAfQ,IACTR,GAAOO,EAAMH,EAAM,IAAM,GAAKG,EAAMH,EAAM,GAC1CrG,EAAMhtB,KACJ6zB,EAAOZ,GAAO,IACdY,EAAQZ,GAAO,EAAK,IACpBY,EAAQZ,GAAO,EAAK,IACpB,MAIJ,OAAOjG,EAAM9X,KAAK,GACpB,EA1IA,IALA,IAAI2e,EAAS,GACTP,EAAY,GACZJ,EAA4B,oBAAf1B,WAA6BA,WAAahnB,MAEvDie,EAAO,mEACFhmB,EAAI,EAAG4wB,EAAM5K,EAAK/lB,OAAQD,EAAI4wB,IAAO5wB,EAC5CoxB,EAAOpxB,GAAKgmB,EAAKhmB,GACjB6wB,EAAU7K,EAAKwJ,WAAWxvB,IAAMA,EAQlC,SAASowB,EAASF,GAChB,IAAIU,EAAMV,EAAIjwB,OAEd,GAAI2wB,EAAM,EAAI,EACZ,MAAM,IAAI5c,MAAM,kDAKlB,IAAIqc,EAAWH,EAAIxpB,QAAQ,KAO3B,OANkB,IAAd2pB,IAAiBA,EAAWO,GAMzB,CAACP,EAJcA,IAAaO,EAC/B,EACA,EAAKP,EAAW,EAGtB,CAmEA,SAASc,EAAaJ,EAAOlY,EAAOwY,GAGlC,IAFA,IAAIb,EARoBc,EASpBC,EAAS,GACJvxB,EAAI6Y,EAAO7Y,EAAIqxB,EAAKrxB,GAAK,EAChCwwB,GACIO,EAAM/wB,IAAM,GAAM,WAClB+wB,EAAM/wB,EAAI,IAAM,EAAK,QACP,IAAf+wB,EAAM/wB,EAAI,IACbuxB,EAAOh0B,KAdF6zB,GADiBE,EAeMd,IAdT,GAAK,IACxBY,EAAOE,GAAO,GAAK,IACnBF,EAAOE,GAAO,EAAI,IAClBF,EAAa,GAANE,IAaT,OAAOC,EAAO9e,KAAK,GACrB,CAlGAoe,EAAU,IAAIrB,WAAW,IAAM,GAC/BqB,EAAU,IAAIrB,WAAW,IAAM,gCCjB/B,IAAIgC,EAAe,EAAQ,KAEvBC,EAAW,EAAQ,MAEnBC,EAAWD,EAASD,EAAa,6BAErCvqB,EAAOtK,QAAU,SAA4BsE,EAAM0wB,GAClD,IAAIC,EAAYJ,EAAavwB,IAAQ0wB,GACrC,MAAyB,mBAAdC,GAA4BF,EAASzwB,EAAM,gBAAkB,EAChEwwB,EAASG,GAEVA,CACR,+BCZA,IAAI1iB,EAAO,EAAQ,MACfsiB,EAAe,EAAQ,KAEvBK,EAASL,EAAa,8BACtBM,EAAQN,EAAa,6BACrBO,EAAgBP,EAAa,mBAAmB,IAAStiB,EAAK5B,KAAKwkB,EAAOD,GAE1EG,EAAQR,EAAa,qCAAqC,GAC1DS,EAAkBT,EAAa,2BAA2B,GAC1DU,EAAOV,EAAa,cAExB,GAAIS,EACH,IACCA,EAAgB,CAAC,EAAG,IAAK,CAAEr1B,MAAO,GAInC,CAHE,MAAOkB,GAERm0B,EAAkB,IACnB,CAGDhrB,EAAOtK,QAAU,SAAkBw1B,GAClC,IAAIC,EAAOL,EAAc7iB,EAAM4iB,EAAOluB,WACtC,GAAIouB,GAASC,EAAiB,CAC7B,IAAIjE,EAAOgE,EAAMI,EAAM,UACnBpE,EAAK7tB,cAER8xB,EACCG,EACA,SACA,CAAEx1B,MAAO,EAAIs1B,EAAK,EAAGC,EAAiBlyB,QAAU2D,UAAU3D,OAAS,KAGtE,CACA,OAAOmyB,CACR,EAEA,IAAIC,EAAY,WACf,OAAON,EAAc7iB,EAAM2iB,EAAQjuB,UACpC,EAEIquB,EACHA,EAAgBhrB,EAAOtK,QAAS,QAAS,CAAEC,MAAOy1B,IAElDprB,EAAOtK,QAAQyL,MAAQiqB,kBC5CxB,IAAInhB,EAAO,EAAQ,KACfohB,EAAS,EAAQ,KACrB,SAAS/G,IAAQ,OAAO,IAAIzS,MAAOyZ,SAAU,CAE7C,IACIv0B,EADAuP,EAAQxF,MAAMzG,UAAUiM,MAExBilB,EAAQ,CAAC,EAGTx0B,OADkB,IAAX,EAAAyK,GAA0B,EAAAA,EAAOzK,QAC9B,EAAAyK,EAAOzK,QACQ,oBAAXgE,QAA0BA,OAAOhE,QACrCgE,OAAOhE,QAEP,CAAC,EAef,IAZA,IAAIy0B,EAAY,CACZ,CAuBJ,WAAgB,EAvBN,OACN,CAwBJ,WACIz0B,EAAQ00B,IAAItqB,MAAMpK,EAAS4F,UAC/B,EA1BW,QACP,CA2BJ,WACI5F,EAAQ00B,IAAItqB,MAAMpK,EAAS4F,UAC/B,EA7BW,QACP,CA8BJ,WACI5F,EAAQ8C,KAAKsH,MAAMpK,EAAS4F,UAChC,EAhCY,SACR,CAiCJ,SAAc+uB,GACVH,EAAMG,GAASpH,GACnB,EAnCW,QACP,CAoCJ,SAAiBoH,GACb,IAAIC,EAAOJ,EAAMG,GACjB,IAAKC,EACD,MAAM,IAAI5e,MAAM,kBAAoB2e,UAGjCH,EAAMG,GACb,IAAIE,EAAWtH,IAAQqH,EACvB50B,EAAQ00B,IAAIC,EAAQ,KAAOE,EAAW,KAC1C,EA7Cc,WACV,CA8CJ,WACI,IAAIzS,EAAM,IAAIpM,MACdoM,EAAInf,KAAO,QACXmf,EAAIyD,QAAU3S,EAAK4hB,OAAO1qB,MAAM,KAAMxE,WACtC5F,EAAQC,MAAMmiB,EAAImG,MACtB,EAnDY,SACR,CAoDJ,SAAawM,GACT/0B,EAAQ00B,IAAIxhB,EAAK8hB,QAAQD,GAAU,KACvC,EAtDU,OACN,CAuDJ,SAAuBrc,GACnB,IAAKA,EAAY,CACb,IAAIqW,EAAMxf,EAAMD,KAAK1J,UAAW,GAChC0uB,EAAOW,IAAG,EAAO/hB,EAAK4hB,OAAO1qB,MAAM,KAAM2kB,GAC7C,CACJ,EA5DoB,WAGX/sB,EAAI,EAAGA,EAAIyyB,EAAUxyB,OAAQD,IAAK,CACvC,IAAIkzB,EAAQT,EAAUzyB,GAClB4O,EAAIskB,EAAM,GACVjyB,EAAOiyB,EAAM,GAEZl1B,EAAQiD,KACTjD,EAAQiD,GAAQ2N,EAExB,CAEA3H,EAAOtK,QAAUqB,YCvCjBiJ,EAAOtK,QAAU,SAAUw2B,GACzB,GAAiB,mBAANA,EACT,MAAMzyB,UAAU0I,OAAO+pB,GAAM,sBAC7B,OAAOA,CACX,kBCJA,IAAI9J,EAAW,EAAQ,KAEvBpiB,EAAOtK,QAAU,SAAUw2B,GACzB,IAAK9J,EAAS8J,IAAc,OAAPA,EACnB,MAAMzyB,UAAU,aAAe0I,OAAO+pB,GAAM,mBAC5C,OAAOA,CACX,kBCNA,IAAIC,EAAkB,EAAQ,MAC1Bp0B,EAAS,EAAQ,IACjBq0B,EAAuB,EAAQ,MAE/BC,EAAcF,EAAgB,eAC9BG,EAAiBxrB,MAAMzG,UAIQuC,MAA/B0vB,EAAeD,IACjBD,EAAqBzkB,EAAE2kB,EAAgBD,EAAa,CAClDnzB,cAAc,EACdvD,MAAOoC,EAAO,QAKlBiI,EAAOtK,QAAU,SAAU0D,GACzBkzB,EAAeD,GAAajzB,IAAO,CACrC,+BClBA,IAAI4F,EAAS,eAIbgB,EAAOtK,QAAU,SAAU4f,EAAG0H,EAAOuP,GACnC,OAAOvP,GAASuP,EAAUvtB,EAAOsW,EAAG0H,GAAOhkB,OAAS,EACtD,YCPAgH,EAAOtK,QAAU,SAAUw2B,EAAI1yB,EAAaQ,GAC1C,KAAMkyB,aAAc1yB,GAClB,MAAMC,UAAU,cAAgBO,EAAOA,EAAO,IAAM,IAAM,cAC1D,OAAOkyB,CACX,kBCJA,IAAI9J,EAAW,EAAQ,KAEvBpiB,EAAOtK,QAAU,SAAUw2B,GACzB,IAAK9J,EAAS8J,GACZ,MAAMzyB,UAAU0I,OAAO+pB,GAAM,qBAC7B,OAAOA,CACX,+BCLA,IAAIM,EAAW,gBACXC,EAAsB,EAAQ,MAC9BC,EAA0B,EAAQ,MAElCC,EAAgBF,EAAoB,WACpCG,EAAiBF,EAAwB,WAI7C1sB,EAAOtK,QAAYi3B,GAAkBC,EAEjC,GAAG91B,QAFgD,SAAiB+1B,GACtE,OAAOL,EAAS7yB,KAAMkzB,EAAYlwB,UAAU3D,OAAS,EAAI2D,UAAU,QAAKC,EAC1E,kBCZA,IAAIkwB,EAAkB,EAAQ,MAC1BC,EAAW,EAAQ,MACnBC,EAAkB,EAAQ,MAG1BC,EAAe,SAAUC,GAC3B,OAAO,SAAUC,EAAO3G,EAAI4G,GAC1B,IAGIz3B,EAHAqgB,EAAI8W,EAAgBK,GACpBn0B,EAAS+zB,EAAS/W,EAAEhd,QACpBgkB,EAAQgQ,EAAgBI,EAAWp0B,GAIvC,GAAIk0B,GAAe1G,GAAMA,GAAI,KAAOxtB,EAASgkB,GAG3C,IAFArnB,EAAQqgB,EAAEgH,OAEGrnB,EAAO,OAAO,OAEtB,KAAMqD,EAASgkB,EAAOA,IAC3B,IAAKkQ,GAAelQ,KAAShH,IAAMA,EAAEgH,KAAWwJ,EAAI,OAAO0G,GAAelQ,GAAS,EACnF,OAAQkQ,IAAgB,CAC5B,CACF,EAEAltB,EAAOtK,QAAU,CAGf0d,SAAU6Z,GAAa,GAGvBxtB,QAASwtB,GAAa,oBC9BxB,IAAIhlB,EAAO,EAAQ,MACfolB,EAAgB,EAAQ,MACxBC,EAAW,EAAQ,MACnBP,EAAW,EAAQ,MACnBQ,EAAqB,EAAQ,MAE7Bj3B,EAAO,GAAGA,KAGV22B,EAAe,SAAUO,GAC3B,IAAIC,EAAiB,GAARD,EACTE,EAAoB,GAARF,EACZG,EAAkB,GAARH,EACVI,EAAmB,GAARJ,EACXK,EAAwB,GAARL,EAChBM,EAAmB,GAARN,GAAaK,EAC5B,OAAO,SAAUV,EAAON,EAAYkB,EAAMC,GASxC,IARA,IAOIr4B,EAAO0xB,EAPPrR,EAAIsX,EAASH,GACbptB,EAAOstB,EAAcrX,GACrBiY,EAAgBhmB,EAAK4kB,EAAYkB,EAAM,GACvC/0B,EAAS+zB,EAAShtB,EAAK/G,QACvBgkB,EAAQ,EACRjlB,EAASi2B,GAAkBT,EAC3B10B,EAAS40B,EAAS11B,EAAOo1B,EAAOn0B,GAAU00B,EAAY31B,EAAOo1B,EAAO,QAAKvwB,EAEvE5D,EAASgkB,EAAOA,IAAS,IAAI8Q,GAAY9Q,KAASjd,KAEtDsnB,EAAS4G,EADTt4B,EAAQoK,EAAKid,GACiBA,EAAOhH,GACjCwX,GACF,GAAIC,EAAQ50B,EAAOmkB,GAASqK,OACvB,GAAIA,EAAQ,OAAQmG,GACvB,KAAK,EAAG,OAAO,EACf,KAAK,EAAG,OAAO73B,EACf,KAAK,EAAG,OAAOqnB,EACf,KAAK,EAAG1mB,EAAK+P,KAAKxN,EAAQlD,QACrB,GAAIi4B,EAAU,OAAO,EAGhC,OAAOC,GAAiB,EAAIF,GAAWC,EAAWA,EAAW/0B,CAC/D,CACF,EAEAmH,EAAOtK,QAAU,CAGfoB,QAASm2B,EAAa,GAGtB1hB,IAAK0hB,EAAa,GAGlBtyB,OAAQsyB,EAAa,GAGrBiB,KAAMjB,EAAa,GAGnBkB,MAAOlB,EAAa,GAGpBmB,KAAMnB,EAAa,GAGnBoB,UAAWpB,EAAa,oBC/D1B,IAAIqB,EAAQ,EAAQ,MAChBnC,EAAkB,EAAQ,MAC1BoC,EAAa,EAAQ,MAErBC,EAAUrC,EAAgB,WAE9BnsB,EAAOtK,QAAU,SAAU+4B,GAIzB,OAAOF,GAAc,KAAOD,GAAM,WAChC,IAAII,EAAQ,GAKZ,OAJkBA,EAAMnoB,YAAc,CAAC,GAC3BioB,GAAW,WACrB,MAAO,CAAEG,IAAK,EAChB,EAC2C,IAApCD,EAAMD,GAAanuB,SAASquB,GACrC,GACF,+BCjBA,IAAIL,EAAQ,EAAQ,MAEpBtuB,EAAOtK,QAAU,SAAU+4B,EAAaG,GACtC,IAAIxV,EAAS,GAAGqV,GAChB,QAASrV,GAAUkV,GAAM,WAEvBlV,EAAO/S,KAAK,KAAMuoB,GAAY,WAAc,MAAM,CAAG,EAAG,EAC1D,GACF,kBCTA,IAAIC,EAAc,EAAQ,MACtBP,EAAQ,EAAQ,MAChBQ,EAAM,EAAQ,MAEdr5B,EAAiBD,OAAOC,eACxB8xB,EAAQ,CAAC,EAETwH,EAAU,SAAU7C,GAAM,MAAMA,CAAI,EAExClsB,EAAOtK,QAAU,SAAU+4B,EAAajxB,GACtC,GAAIsxB,EAAIvH,EAAOkH,GAAc,OAAOlH,EAAMkH,GACrCjxB,IAASA,EAAU,CAAC,GACzB,IAAI4b,EAAS,GAAGqV,GACZO,IAAYF,EAAItxB,EAAS,cAAeA,EAAQwxB,UAChDC,EAAYH,EAAItxB,EAAS,GAAKA,EAAQ,GAAKuxB,EAC3CG,EAAYJ,EAAItxB,EAAS,GAAKA,EAAQ,QAAKZ,EAE/C,OAAO2qB,EAAMkH,KAAiBrV,IAAWkV,GAAM,WAC7C,GAAIU,IAAcH,EAAa,OAAO,EACtC,IAAI7Y,EAAI,CAAEhd,QAAS,GAEfg2B,EAAWv5B,EAAeugB,EAAG,EAAG,CAAEpgB,YAAY,EAAMC,IAAKk5B,IACxD/Y,EAAE,GAAK,EAEZoD,EAAO/S,KAAK2P,EAAGiZ,EAAWC,EAC5B,GACF,kBC1BA,IAAI9M,EAAW,EAAQ,KACnBnc,EAAU,EAAQ,MAGlBuoB,EAFkB,EAAQ,KAEhBrC,CAAgB,WAI9BnsB,EAAOtK,QAAU,SAAUy5B,EAAen2B,GACxC,IAAIgV,EASF,OARE/H,EAAQkpB,KAGM,mBAFhBnhB,EAAImhB,EAAc5oB,cAEayH,IAAMlN,QAASmF,EAAQ+H,EAAE3T,WAC/C+nB,EAASpU,IAEN,QADVA,EAAIA,EAAEwgB,MACUxgB,OAAIpR,GAH+CoR,OAAIpR,GAKlE,SAAWA,IAANoR,EAAkBlN,MAAQkN,GAAc,IAAXhV,EAAe,EAAIA,EAChE,kBCnBA,IAAIo2B,EAAW,EAAQ,MAGvBpvB,EAAOtK,QAAU,SAAUyQ,EAAUwI,EAAIhZ,EAAO05B,GAC9C,IACE,OAAOA,EAAU1gB,EAAGygB,EAASz5B,GAAO,GAAIA,EAAM,IAAMgZ,EAAGhZ,EAMzD,CAJE,MAAOqB,GACP,IAAIs4B,EAAenpB,EAAiB,OAEpC,WADqBvJ,IAAjB0yB,GAA4BF,EAASE,EAAajpB,KAAKF,IACrDnP,CACR,CACF,kBCZA,IAEIu4B,EAFkB,EAAQ,KAEfpD,CAAgB,YAC3BqD,GAAe,EAEnB,IACE,IAAIC,EAAS,EACTC,EAAqB,CACvBjkB,KAAM,WACJ,MAAO,CAAEC,OAAQ+jB,IACnB,EACA,OAAU,WACRD,GAAe,CACjB,GAEFE,EAAmBH,GAAY,WAC7B,OAAO51B,IACT,EAEAmH,MAAMsF,KAAKspB,GAAoB,WAAc,MAAM,CAAG,GAC1B,CAA5B,MAAO14B,GAAqB,CAE9BgJ,EAAOtK,QAAU,SAAUkwB,EAAM+J,GAC/B,IAAKA,IAAiBH,EAAc,OAAO,EAC3C,IAAII,GAAoB,EACxB,IACE,IAAI9D,EAAS,CAAC,EACdA,EAAOyD,GAAY,WACjB,MAAO,CACL9jB,KAAM,WACJ,MAAO,CAAEC,KAAMkkB,GAAoB,EACrC,EAEJ,EACAhK,EAAKkG,EACuB,CAA5B,MAAO90B,GAAqB,CAC9B,OAAO44B,CACT,YCrCA,IAAIpzB,EAAW,CAAC,EAAEA,SAElBwD,EAAOtK,QAAU,SAAUw2B,GACzB,OAAO1vB,EAAS6J,KAAK6lB,GAAI5lB,MAAM,GAAI,EACrC,iBCJA,IAAIupB,EAAwB,EAAQ,MAChCC,EAAa,EAAQ,MAGrBC,EAFkB,EAAQ,KAEV5D,CAAgB,eAEhC6D,EAAuE,aAAnDF,EAAW,WAAc,OAAOnzB,SAAW,CAAhC,IAUnCqD,EAAOtK,QAAUm6B,EAAwBC,EAAa,SAAU5D,GAC9D,IAAIlW,EAAGpS,EAAKyjB,EACZ,YAAczqB,IAAPsvB,EAAmB,YAAqB,OAAPA,EAAc,OAEM,iBAAhDtoB,EAXD,SAAUsoB,EAAI9yB,GACzB,IACE,OAAO8yB,EAAG9yB,EACkB,CAA5B,MAAOpC,GAAqB,CAChC,CAOoBi5B,CAAOja,EAAIxgB,OAAO02B,GAAK6D,IAA8BnsB,EAEnEosB,EAAoBF,EAAW9Z,GAEH,WAA3BqR,EAASyI,EAAW9Z,KAAsC,mBAAZA,EAAEka,OAAuB,YAAc7I,CAC5F,+BCxBA,IAAI5xB,EAAiB,UACjBsC,EAAS,EAAQ,IACjBo4B,EAAc,EAAQ,MACtBloB,EAAO,EAAQ,MACfmoB,EAAa,EAAQ,MACrBC,EAAU,EAAQ,KAClBC,EAAiB,EAAQ,KACzBC,EAAa,EAAQ,MACrB1B,EAAc,EAAQ,MACtB2B,EAAU,gBACVC,EAAsB,EAAQ,MAE9BC,EAAmBD,EAAoBh2B,IACvCk2B,EAAyBF,EAAoBG,UAEjD5wB,EAAOtK,QAAU,CACfm7B,eAAgB,SAAUC,EAASC,EAAkBtD,EAAQuD,GAC3D,IAAIhjB,EAAI8iB,GAAQ,SAAU/C,EAAMkD,GAC9Bb,EAAWrC,EAAM/f,EAAG+iB,GACpBL,EAAiB3C,EAAM,CACrB1uB,KAAM0xB,EACN/T,MAAOjlB,EAAO,MACdm5B,WAAOt0B,EACPu0B,UAAMv0B,EACNqT,KAAM,IAEH4e,IAAad,EAAK9d,KAAO,GACdrT,MAAZq0B,GAAuBZ,EAAQY,EAAUlD,EAAKiD,GAAQjD,EAAMN,EAClE,IAEI2D,EAAmBT,EAAuBI,GAE1CM,EAAS,SAAUtD,EAAM30B,EAAKzD,GAChC,IAEImf,EAAUkI,EAFVsU,EAAQF,EAAiBrD,GACzBwD,EAAQC,EAASzD,EAAM30B,GAqBzB,OAlBEm4B,EACFA,EAAM57B,MAAQA,GAGd27B,EAAMH,KAAOI,EAAQ,CACnBvU,MAAOA,EAAQwT,EAAQp3B,GAAK,GAC5BA,IAAKA,EACLzD,MAAOA,EACPmf,SAAUA,EAAWwc,EAAMH,KAC3B1lB,UAAM7O,EACN60B,SAAS,GAENH,EAAMJ,QAAOI,EAAMJ,MAAQK,GAC5Bzc,IAAUA,EAASrJ,KAAO8lB,GAC1B1C,EAAayC,EAAMrhB,OAClB8d,EAAK9d,OAEI,MAAV+M,IAAesU,EAAMtU,MAAMA,GAASuU,IACjCxD,CACX,EAEIyD,EAAW,SAAUzD,EAAM30B,GAC7B,IAGIm4B,EAHAD,EAAQF,EAAiBrD,GAEzB/Q,EAAQwT,EAAQp3B,GAEpB,GAAc,MAAV4jB,EAAe,OAAOsU,EAAMtU,MAAMA,GAEtC,IAAKuU,EAAQD,EAAMJ,MAAOK,EAAOA,EAAQA,EAAM9lB,KAC7C,GAAI8lB,EAAMn4B,KAAOA,EAAK,OAAOm4B,CAEjC,EA+EA,OA7EApB,EAAYniB,EAAE3T,UAAW,CAGvB4X,MAAO,WAKL,IAJA,IACIqf,EAAQF,EADDz3B,MAEPkC,EAAOy1B,EAAMtU,MACbuU,EAAQD,EAAMJ,MACXK,GACLA,EAAME,SAAU,EACZF,EAAMzc,WAAUyc,EAAMzc,SAAWyc,EAAMzc,SAASrJ,UAAO7O,UACpDf,EAAK01B,EAAMvU,OAClBuU,EAAQA,EAAM9lB,KAEhB6lB,EAAMJ,MAAQI,EAAMH,UAAOv0B,EACvBiyB,EAAayC,EAAMrhB,KAAO,EAXnBtW,KAYDsW,KAAO,CACnB,EAGA,OAAU,SAAU7W,GAClB,IAAI20B,EAAOp0B,KACP23B,EAAQF,EAAiBrD,GACzBwD,EAAQC,EAASzD,EAAM30B,GAC3B,GAAIm4B,EAAO,CACT,IAAI9lB,EAAO8lB,EAAM9lB,KACbimB,EAAOH,EAAMzc,gBACVwc,EAAMtU,MAAMuU,EAAMvU,OACzBuU,EAAME,SAAU,EACZC,IAAMA,EAAKjmB,KAAOA,GAClBA,IAAMA,EAAKqJ,SAAW4c,GACtBJ,EAAMJ,OAASK,IAAOD,EAAMJ,MAAQzlB,GACpC6lB,EAAMH,MAAQI,IAAOD,EAAMH,KAAOO,GAClC7C,EAAayC,EAAMrhB,OAClB8d,EAAK9d,MACZ,CAAE,QAASshB,CACb,EAGAz6B,QAAS,SAAiB+1B,GAIxB,IAHA,IAEI0E,EAFAD,EAAQF,EAAiBz3B,MACzBs0B,EAAgBhmB,EAAK4kB,EAAYlwB,UAAU3D,OAAS,EAAI2D,UAAU,QAAKC,EAAW,GAE/E20B,EAAQA,EAAQA,EAAM9lB,KAAO6lB,EAAMJ,OAGxC,IAFAjD,EAAcsD,EAAM57B,MAAO47B,EAAMn4B,IAAKO,MAE/B43B,GAASA,EAAME,SAASF,EAAQA,EAAMzc,QAEjD,EAGAga,IAAK,SAAa11B,GAChB,QAASo4B,EAAS73B,KAAMP,EAC1B,IAGF+2B,EAAYniB,EAAE3T,UAAWozB,EAAS,CAEhC53B,IAAK,SAAauD,GAChB,IAAIm4B,EAAQC,EAAS73B,KAAMP,GAC3B,OAAOm4B,GAASA,EAAM57B,KACxB,EAEA8E,IAAK,SAAarB,EAAKzD,GACrB,OAAO07B,EAAO13B,KAAc,IAARP,EAAY,EAAIA,EAAKzD,EAC3C,GACE,CAEFkR,IAAK,SAAalR,GAChB,OAAO07B,EAAO13B,KAAMhE,EAAkB,IAAVA,EAAc,EAAIA,EAAOA,EACvD,IAEEk5B,GAAap5B,EAAeuY,EAAE3T,UAAW,OAAQ,CACnDxE,IAAK,WACH,OAAOu7B,EAAiBz3B,MAAMsW,IAChC,IAEKjC,CACT,EACA2jB,UAAW,SAAU3jB,EAAG+iB,EAAkBtD,GACxC,IAAImE,EAAgBb,EAAmB,YACnCc,EAA6BlB,EAAuBI,GACpDe,EAA2BnB,EAAuBiB,GAGtDtB,EAAetiB,EAAG+iB,GAAkB,SAAUgB,EAAUC,GACtDtB,EAAiB/2B,KAAM,CACrB0F,KAAMuyB,EACN/4B,OAAQk5B,EACRT,MAAOO,EAA2BE,GAClCC,KAAMA,EACNb,UAAMv0B,GAEV,IAAG,WAKD,IAJA,IAAI00B,EAAQQ,EAAyBn4B,MACjCq4B,EAAOV,EAAMU,KACbT,EAAQD,EAAMH,KAEXI,GAASA,EAAME,SAASF,EAAQA,EAAMzc,SAE7C,OAAKwc,EAAMz4B,SAAYy4B,EAAMH,KAAOI,EAAQA,EAAQA,EAAM9lB,KAAO6lB,EAAMA,MAAMJ,OAMjE,QAARc,EAAuB,CAAEr8B,MAAO47B,EAAMn4B,IAAKsS,MAAM,GACzC,UAARsmB,EAAyB,CAAEr8B,MAAO47B,EAAM57B,MAAO+V,MAAM,GAClD,CAAE/V,MAAO,CAAC47B,EAAMn4B,IAAKm4B,EAAM57B,OAAQ+V,MAAM,IAN9C4lB,EAAMz4B,YAAS+D,EACR,CAAEjH,WAAOiH,EAAW8O,MAAM,GAMrC,GAAG+hB,EAAS,UAAY,UAAWA,GAAQ,GAG3C8C,EAAWQ,EACb,gCCvLF,IAAIjb,EAAI,EAAQ,MACZmc,EAAS,EAAQ,MACjBC,EAAW,EAAQ,MACnBC,EAAW,EAAQ,MACnBC,EAAyB,EAAQ,MACjC/B,EAAU,EAAQ,KAClBD,EAAa,EAAQ,MACrBhO,EAAW,EAAQ,KACnBkM,EAAQ,EAAQ,MAChB+D,EAA8B,EAAQ,MACtCC,EAAiB,EAAQ,MACzBC,EAAoB,EAAQ,MAEhCvyB,EAAOtK,QAAU,SAAUq7B,EAAkBD,EAAS1Q,GACpD,IAAIqN,GAA8C,IAArCsD,EAAiBtxB,QAAQ,OAClC+yB,GAAgD,IAAtCzB,EAAiBtxB,QAAQ,QACnCuxB,EAAQvD,EAAS,MAAQ,MACzBgF,EAAoBR,EAAOlB,GAC3B2B,EAAkBD,GAAqBA,EAAkBp4B,UACzDb,EAAci5B,EACdE,EAAW,CAAC,EAEZC,EAAY,SAAUC,GACxB,IAAIC,EAAeJ,EAAgBG,GACnCV,EAASO,EAAiBG,EACjB,OAAPA,EAAe,SAAal9B,GAE1B,OADAm9B,EAAazsB,KAAK1M,KAAgB,IAAVhE,EAAc,EAAIA,GACnCgE,IACT,EAAW,UAAPk5B,EAAkB,SAAUz5B,GAC9B,QAAOo5B,IAAYpQ,EAAShpB,KAAe05B,EAAazsB,KAAK1M,KAAc,IAARP,EAAY,EAAIA,EACrF,EAAW,OAAPy5B,EAAe,SAAaz5B,GAC9B,OAAOo5B,IAAYpQ,EAAShpB,QAAOwD,EAAYk2B,EAAazsB,KAAK1M,KAAc,IAARP,EAAY,EAAIA,EACzF,EAAW,OAAPy5B,EAAe,SAAaz5B,GAC9B,QAAOo5B,IAAYpQ,EAAShpB,KAAe05B,EAAazsB,KAAK1M,KAAc,IAARP,EAAY,EAAIA,EACrF,EAAI,SAAaA,EAAKzD,GAEpB,OADAm9B,EAAazsB,KAAK1M,KAAc,IAARP,EAAY,EAAIA,EAAKzD,GACtCgE,IACT,EAEJ,EAGA,GAAIu4B,EAASnB,EAA8C,mBAArB0B,KAAqCD,GAAWE,EAAgB57B,UAAYw3B,GAAM,YACtH,IAAImE,GAAoBM,UAAUtnB,MACpC,MAEEjS,EAAc4mB,EAAOyQ,eAAeC,EAASC,EAAkBtD,EAAQuD,GACvEoB,EAAuBY,UAAW,OAC7B,GAAId,EAASnB,GAAkB,GAAO,CAC3C,IAAIx3B,EAAW,IAAIC,EAEfy5B,EAAiB15B,EAASy3B,GAAOwB,EAAU,CAAC,GAAK,EAAG,IAAMj5B,EAE1D25B,EAAuB5E,GAAM,WAAc/0B,EAASu1B,IAAI,EAAI,IAG5DqE,EAAmBd,GAA4B,SAAUpB,GAAY,IAAIwB,EAAkBxB,EAAW,IAEtGmC,GAAcZ,GAAWlE,GAAM,WAIjC,IAFA,IAAI+E,EAAY,IAAIZ,EAChBzV,EAAQ,EACLA,KAASqW,EAAUrC,GAAOhU,EAAOA,GACxC,OAAQqW,EAAUvE,KAAK,EACzB,IAEKqE,KACH35B,EAAcs3B,GAAQ,SAAUwC,EAAOrC,GACrCb,EAAWkD,EAAO95B,EAAau3B,GAC/B,IAAIhD,EAAOwE,EAAkB,IAAIE,EAAqBa,EAAO95B,GAE7D,OADgBoD,MAAZq0B,GAAuBZ,EAAQY,EAAUlD,EAAKiD,GAAQjD,EAAMN,GACzDM,CACT,KACY1zB,UAAYq4B,EACxBA,EAAgBnsB,YAAc/M,IAG5B05B,GAAwBE,KAC1BR,EAAU,UACVA,EAAU,OACVnF,GAAUmF,EAAU,SAGlBQ,GAAcH,IAAgBL,EAAU5B,GAGxCwB,GAAWE,EAAgBzgB,cAAcygB,EAAgBzgB,KAC/D,CASA,OAPA0gB,EAAS5B,GAAoBv3B,EAC7Bsc,EAAE,CAAEmc,QAAQ,EAAMsB,OAAQ/5B,GAAei5B,GAAqBE,GAE9DL,EAAe94B,EAAau3B,GAEvByB,GAASpS,EAAOuR,UAAUn4B,EAAau3B,EAAkBtD,GAEvDj0B,CACT,kBClGA,IAAIs1B,EAAM,EAAQ,MACd0E,EAAU,EAAQ,MAClBC,EAAiC,EAAQ,MACzCrH,EAAuB,EAAQ,MAEnCpsB,EAAOtK,QAAU,SAAUmD,EAAQokB,GAIjC,IAHA,IAAIjc,EAAOwyB,EAAQvW,GACfxnB,EAAiB22B,EAAqBzkB,EACtCzG,EAA2BuyB,EAA+B9rB,EACrD5O,EAAI,EAAGA,EAAIiI,EAAKhI,OAAQD,IAAK,CACpC,IAAIK,EAAM4H,EAAKjI,GACV+1B,EAAIj2B,EAAQO,IAAM3D,EAAeoD,EAAQO,EAAK8H,EAAyB+b,EAAQ7jB,GACtF,CACF,kBCbA,IAAIk1B,EAAQ,EAAQ,MAEpBtuB,EAAOtK,SAAW44B,GAAM,WACtB,SAASvY,IAAkB,CAE3B,OADAA,EAAE1b,UAAUkM,YAAc,KACnB/Q,OAAOmyB,eAAe,IAAI5R,KAASA,EAAE1b,SAC9C,iCCLA,IAAIq5B,EAAoB,0BACpB37B,EAAS,EAAQ,IACjB47B,EAA2B,EAAQ,MACnCrB,EAAiB,EAAQ,MACzBsB,EAAY,EAAQ,MAEpBC,EAAa,WAAc,OAAOl6B,IAAM,EAE5CqG,EAAOtK,QAAU,SAAUo+B,EAAqBC,EAAMtoB,GACpD,IAAIskB,EAAgBgE,EAAO,YAI3B,OAHAD,EAAoBz5B,UAAYtC,EAAO27B,EAAmB,CAAEjoB,KAAMkoB,EAAyB,EAAGloB,KAC9F6mB,EAAewB,EAAqB/D,GAAe,GAAO,GAC1D6D,EAAU7D,GAAiB8D,EACpBC,CACT,kBCfA,IAAIjF,EAAc,EAAQ,MACtBzC,EAAuB,EAAQ,MAC/BuH,EAA2B,EAAQ,MAEvC3zB,EAAOtK,QAAUm5B,EAAc,SAAU/C,EAAQ1yB,EAAKzD,GACpD,OAAOy2B,EAAqBzkB,EAAEmkB,EAAQ1yB,EAAKu6B,EAAyB,EAAGh+B,GACzE,EAAI,SAAUm2B,EAAQ1yB,EAAKzD,GAEzB,OADAm2B,EAAO1yB,GAAOzD,EACPm2B,CACT,YCTA9rB,EAAOtK,QAAU,SAAUs+B,EAAQr+B,GACjC,MAAO,CACLC,aAAuB,EAATo+B,GACd96B,eAAyB,EAAT86B,GAChB76B,WAAqB,EAAT66B,GACZr+B,MAAOA,EAEX,+BCNA,IAAIs+B,EAAc,EAAQ,MACtB7H,EAAuB,EAAQ,MAC/BuH,EAA2B,EAAQ,MAEvC3zB,EAAOtK,QAAU,SAAUo2B,EAAQ1yB,EAAKzD,GACtC,IAAIu+B,EAAcD,EAAY76B,GAC1B86B,KAAepI,EAAQM,EAAqBzkB,EAAEmkB,EAAQoI,EAAaP,EAAyB,EAAGh+B,IAC9Fm2B,EAAOoI,GAAev+B,CAC7B,8BCRA,IAAImgB,EAAI,EAAQ,MACZqe,EAA4B,EAAQ,MACpCxM,EAAiB,EAAQ,MACzByM,EAAiB,EAAQ,MACzB9B,EAAiB,EAAQ,MACzB+B,EAA8B,EAAQ,MACtClC,EAAW,EAAQ,MACnBhG,EAAkB,EAAQ,MAC1BmI,EAAU,EAAQ,MAClBV,EAAY,EAAQ,MACpBW,EAAgB,EAAQ,MAExBb,EAAoBa,EAAcb,kBAClCc,EAAyBD,EAAcC,uBACvCjF,EAAWpD,EAAgB,YAC3BsI,EAAO,OACPC,EAAS,SACTrF,EAAU,UAEVwE,EAAa,WAAc,OAAOl6B,IAAM,EAE5CqG,EAAOtK,QAAU,SAAUi/B,EAAUZ,EAAMD,EAAqBroB,EAAMmpB,EAASC,EAAQC,GACrFX,EAA0BL,EAAqBC,EAAMtoB,GAErD,IAkBIspB,EAA0B7vB,EAAS2tB,EAlBnCmC,EAAqB,SAAUC,GACjC,GAAIA,IAASL,GAAWM,EAAiB,OAAOA,EAChD,IAAKV,GAA0BS,KAAQE,EAAmB,OAAOA,EAAkBF,GACnF,OAAQA,GACN,KAAKR,EACL,KAAKC,EACL,KAAKrF,EAAS,OAAO,WAAqB,OAAO,IAAIyE,EAAoBn6B,KAAMs7B,EAAO,EACtF,OAAO,WAAc,OAAO,IAAInB,EAAoBn6B,KAAO,CAC/D,EAEIo2B,EAAgBgE,EAAO,YACvBqB,GAAwB,EACxBD,EAAoBR,EAASt6B,UAC7Bg7B,EAAiBF,EAAkB5F,IAClC4F,EAAkB,eAClBP,GAAWO,EAAkBP,GAC9BM,GAAmBV,GAA0Ba,GAAkBL,EAAmBJ,GAClFU,EAA4B,SAARvB,GAAkBoB,EAAkBpC,SAA4BsC,EAiCxF,GA7BIC,IACFP,EAA2BpN,EAAe2N,EAAkBjvB,KAAK,IAAIsuB,IACjEjB,IAAsBl+B,OAAO6E,WAAa06B,EAAyBtpB,OAChE6oB,GAAW3M,EAAeoN,KAA8BrB,IACvDU,EACFA,EAAeW,EAA0BrB,GACa,mBAAtCqB,EAAyBxF,IACzC8E,EAA4BU,EAA0BxF,EAAUsE,IAIpEvB,EAAeyC,EAA0BhF,GAAe,GAAM,GAC1DuE,IAASV,EAAU7D,GAAiB8D,KAKxCe,GAAWF,GAAUW,GAAkBA,EAAer7B,OAAS06B,IACjEU,GAAwB,EACxBF,EAAkB,WAAoB,OAAOG,EAAehvB,KAAK1M,KAAO,GAIpE26B,IAAWQ,GAAWK,EAAkB5F,KAAc2F,GAC1Db,EAA4Bc,EAAmB5F,EAAU2F,GAE3DtB,EAAUG,GAAQmB,EAGdN,EAMF,GALA1vB,EAAU,CACRqwB,OAAQP,EAAmBN,GAC3B1zB,KAAM6zB,EAASK,EAAkBF,EAAmBP,GACpD1B,QAASiC,EAAmB3F,IAE1ByF,EAAQ,IAAKjC,KAAO3tB,GAClBsvB,GAA0BY,KAA2BvC,KAAOsC,KAC9DhD,EAASgD,EAAmBtC,EAAK3tB,EAAQ2tB,SAEtC/c,EAAE,CAAEjd,OAAQk7B,EAAMyB,OAAO,EAAMjC,OAAQiB,GAA0BY,GAAyBlwB,GAGnG,OAAOA,CACT,kBCzFA,IAAIopB,EAAQ,EAAQ,MAGpBtuB,EAAOtK,SAAW44B,GAAM,WACtB,OAA8E,GAAvE94B,OAAOC,eAAe,CAAC,EAAG,EAAG,CAAEI,IAAK,WAAc,OAAO,CAAG,IAAK,EAC1E,mBCLA,IAAIo8B,EAAS,EAAQ,MACjB7P,EAAW,EAAQ,KAEnB3rB,EAAWw7B,EAAOx7B,SAElBg/B,EAASrT,EAAS3rB,IAAa2rB,EAAS3rB,EAASwW,eAErDjN,EAAOtK,QAAU,SAAUw2B,GACzB,OAAOuJ,EAASh/B,EAASwW,cAAcif,GAAM,CAAC,CAChD,YCPAlsB,EAAOtK,QAAU,CACfggC,YAAa,EACbC,oBAAqB,EACrBC,aAAc,EACdC,eAAgB,EAChBC,YAAa,EACbC,cAAe,EACfC,aAAc,EACdC,qBAAsB,EACtBC,SAAU,EACVC,kBAAmB,EACnBC,eAAgB,EAChBC,gBAAiB,EACjBC,kBAAmB,EACnBC,UAAW,EACXC,cAAe,EACfC,aAAc,EACdC,SAAU,EACVC,iBAAkB,EAClBC,OAAQ,EACRC,YAAa,EACbC,cAAe,EACfC,cAAe,EACfC,eAAgB,EAChBC,aAAc,EACdC,cAAe,EACfC,iBAAkB,EAClBC,iBAAkB,EAClBC,eAAgB,EAChBC,iBAAkB,EAClBC,cAAe,EACfC,UAAW,mBCjCb,IAAIC,EAAa,EAAQ,MAEzBz3B,EAAOtK,QAAU+hC,EAAW,YAAa,cAAgB,mBCFzD,IAMItT,EAAOlZ,EANPgnB,EAAS,EAAQ,MACjBtN,EAAY,EAAQ,MAEpBlD,EAAUwQ,EAAOxQ,QACjBiW,EAAWjW,GAAWA,EAAQiW,SAC9BC,EAAKD,GAAYA,EAASC,GAG1BA,EAEF1sB,GADAkZ,EAAQwT,EAAGlS,MAAM,MACD,GAAKtB,EAAM,GAClBQ,MACTR,EAAQQ,EAAUR,MAAM,iBACVA,EAAM,IAAM,MACxBA,EAAQQ,EAAUR,MAAM,oBACblZ,EAAUkZ,EAAM,IAI/BnkB,EAAOtK,QAAUuV,IAAYA,WClB7BjL,EAAOtK,QAAU,CACf,cACA,iBACA,gBACA,uBACA,iBACA,WACA,2BCRF,IAAIu8B,EAAS,EAAQ,MACjB/wB,EAA2B,UAC3BmzB,EAA8B,EAAQ,MACtClC,EAAW,EAAQ,MACnByF,EAAY,EAAQ,MACpBC,EAA4B,EAAQ,MACpC3F,EAAW,EAAQ,MAgBvBlyB,EAAOtK,QAAU,SAAU8H,EAASyf,GAClC,IAGYpkB,EAAQO,EAAK0+B,EAAgBC,EAAgB9+B,EAHrD++B,EAASx6B,EAAQ3E,OACjBo/B,EAASz6B,EAAQy0B,OACjBiG,EAAS16B,EAAQ26B,KASrB,GANEt/B,EADEo/B,EACOhG,EACAiG,EACAjG,EAAO+F,IAAWJ,EAAUI,EAAQ,CAAC,IAEpC/F,EAAO+F,IAAW,CAAC,GAAG39B,UAEtB,IAAKjB,KAAO6jB,EAAQ,CAQ9B,GAPA8a,EAAiB9a,EAAO7jB,GAGtB0+B,EAFEt6B,EAAQ46B,aACVn/B,EAAaiI,EAAyBrI,EAAQO,KACfH,EAAWtD,MACpBkD,EAAOO,IACtB84B,EAAS+F,EAAS7+B,EAAM4+B,GAAUE,EAAS,IAAM,KAAO9+B,EAAKoE,EAAQ+1B,cAE5C32B,IAAnBk7B,EAA8B,CAC3C,UAAWC,UAA0BD,EAAgB,SACrDD,EAA0BE,EAAgBD,EAC5C,EAEIt6B,EAAQ66B,MAASP,GAAkBA,EAAeO,OACpDhE,EAA4B0D,EAAgB,QAAQ,GAGtD5F,EAASt5B,EAAQO,EAAK2+B,EAAgBv6B,EACxC,CACF,YCrDAwC,EAAOtK,QAAU,SAAUkwB,GACzB,IACE,QAASA,GAGX,CAFE,MAAO5uB,GACP,OAAO,CACT,CACF,+BCJA,EAAQ,MACR,IAAIm7B,EAAW,EAAQ,MACnB7D,EAAQ,EAAQ,MAChBnC,EAAkB,EAAQ,MAC1BmM,EAAa,EAAQ,MACrBjE,EAA8B,EAAQ,MAEtC7F,EAAUrC,EAAgB,WAE1BoM,GAAiCjK,GAAM,WAIzC,IAAIkK,EAAK,IAMT,OALAA,EAAG5S,KAAO,WACR,IAAIyB,EAAS,GAEb,OADAA,EAAOoR,OAAS,CAAEp8B,EAAG,KACdgrB,CACT,EACkC,MAA3B,GAAGzrB,QAAQ48B,EAAI,OACxB,IAIIE,EACgC,OAA3B,IAAI98B,QAAQ,IAAK,MAGtB+8B,EAAUxM,EAAgB,WAE1ByM,IACE,IAAID,IAC6B,KAA5B,IAAIA,GAAS,IAAK,MAOzBE,GAAqCvK,GAAM,WAC7C,IAAIkK,EAAK,OACLM,EAAeN,EAAG5S,KACtB4S,EAAG5S,KAAO,WAAc,OAAOkT,EAAa33B,MAAMxH,KAAMgD,UAAY,EACpE,IAAI0qB,EAAS,KAAK5B,MAAM+S,GACxB,OAAyB,IAAlBnR,EAAOruB,QAA8B,MAAdquB,EAAO,IAA4B,MAAdA,EAAO,EAC5D,IAEArnB,EAAOtK,QAAU,SAAUm9B,EAAK75B,EAAQ4sB,EAAMyS,GAC5C,IAAIU,EAAS5M,EAAgB0G,GAEzBmG,GAAuB1K,GAAM,WAE/B,IAAItY,EAAI,CAAC,EAET,OADAA,EAAE+iB,GAAU,WAAc,OAAO,CAAG,EACf,GAAd,GAAGlG,GAAK7c,EACjB,IAEIijB,EAAoBD,IAAwB1K,GAAM,WAEpD,IAAI4K,GAAa,EACbV,EAAK,IAkBT,MAhBY,UAAR3F,KAIF2F,EAAK,CAAC,GAGHjyB,YAAc,CAAC,EAClBiyB,EAAGjyB,YAAYioB,GAAW,WAAc,OAAOgK,CAAI,EACnDA,EAAGW,MAAQ,GACXX,EAAGO,GAAU,IAAIA,IAGnBP,EAAG5S,KAAO,WAAiC,OAAnBsT,GAAa,EAAa,IAAM,EAExDV,EAAGO,GAAQ,KACHG,CACV,IAEA,IACGF,IACAC,GACQ,YAARpG,KACC0F,IACAG,GACCE,IAEM,UAAR/F,IAAoBgG,EACrB,CACA,IAAIO,EAAqB,IAAIL,GACzB7zB,EAAU0gB,EAAKmT,EAAQ,GAAGlG,IAAM,SAAUC,EAAcuG,EAAQ5R,EAAK6R,EAAMC,GAC7E,OAAIF,EAAOzT,OAAS0S,EACdU,IAAwBO,EAInB,CAAE7tB,MAAM,EAAM/V,MAAOyjC,EAAmB/yB,KAAKgzB,EAAQ5R,EAAK6R,IAE5D,CAAE5tB,MAAM,EAAM/V,MAAOm9B,EAAazsB,KAAKohB,EAAK4R,EAAQC,IAEtD,CAAE5tB,MAAM,EACjB,GAAG,CACDgtB,iBAAkBA,EAClBE,6CAA8CA,IAE5CY,EAAet0B,EAAQ,GACvBu0B,EAAcv0B,EAAQ,GAE1BitB,EAAShwB,OAAO9H,UAAWw4B,EAAK2G,GAChCrH,EAAS/N,OAAO/pB,UAAW0+B,EAAkB,GAAV//B,EAG/B,SAAU0gC,EAAQC,GAAO,OAAOF,EAAYpzB,KAAKqzB,EAAQ//B,KAAMggC,EAAM,EAGrE,SAAUD,GAAU,OAAOD,EAAYpzB,KAAKqzB,EAAQ//B,KAAO,EAEjE,CAEI0+B,GAAMhE,EAA4BjQ,OAAO/pB,UAAU0+B,GAAS,QAAQ,EAC1E,kBC5HA,IAAIzK,EAAQ,EAAQ,MAEpBtuB,EAAOtK,SAAW44B,GAAM,WACtB,OAAO94B,OAAOokC,aAAapkC,OAAOqkC,kBAAkB,CAAC,GACvD,oBCJA,IAAIC,EAAY,EAAQ,MAGxB95B,EAAOtK,QAAU,SAAUiZ,EAAIof,EAAM/0B,GAEnC,GADA8gC,EAAUnrB,QACG/R,IAATmxB,EAAoB,OAAOpf,EAC/B,OAAQ3V,GACN,KAAK,EAAG,OAAO,WACb,OAAO2V,EAAGtI,KAAK0nB,EACjB,EACA,KAAK,EAAG,OAAO,SAAU1xB,GACvB,OAAOsS,EAAGtI,KAAK0nB,EAAM1xB,EACvB,EACA,KAAK,EAAG,OAAO,SAAUA,EAAGC,GAC1B,OAAOqS,EAAGtI,KAAK0nB,EAAM1xB,EAAGC,EAC1B,EACA,KAAK,EAAG,OAAO,SAAUD,EAAGC,EAAGsE,GAC7B,OAAO+N,EAAGtI,KAAK0nB,EAAM1xB,EAAGC,EAAGsE,EAC7B,EAEF,OAAO,WACL,OAAO+N,EAAGxN,MAAM4sB,EAAMpxB,UACxB,CACF,kBCvBA,IAAIknB,EAAO,EAAQ,KACfoO,EAAS,EAAQ,MAEjB6H,EAAY,SAAUC,GACxB,MAA0B,mBAAZA,EAAyBA,OAAWn9B,CACpD,EAEAoD,EAAOtK,QAAU,SAAUskC,EAAW5gB,GACpC,OAAOzc,UAAU3D,OAAS,EAAI8gC,EAAUjW,EAAKmW,KAAeF,EAAU7H,EAAO+H,IACzEnW,EAAKmW,IAAcnW,EAAKmW,GAAW5gB,IAAW6Y,EAAO+H,IAAc/H,EAAO+H,GAAW5gB,EAC3F,kBCVA,IAAI6gB,EAAU,EAAQ,KAClBrG,EAAY,EAAQ,MAGpBrE,EAFkB,EAAQ,KAEfpD,CAAgB,YAE/BnsB,EAAOtK,QAAU,SAAUw2B,GACzB,GAAUtvB,MAANsvB,EAAiB,OAAOA,EAAGqD,IAC1BrD,EAAG,eACH0H,EAAUqG,EAAQ/N,GACzB,kBCVA,IAAIgO,EAAQ,SAAUhO,GACpB,OAAOA,GAAMA,EAAGvhB,MAAQA,MAAQuhB,CAClC,EAGAlsB,EAAOtK,QAELwkC,EAA2B,iBAAdC,YAA0BA,aACvCD,EAAuB,iBAAVn/B,QAAsBA,SACnCm/B,EAAqB,iBAARn6B,MAAoBA,OACjCm6B,EAAuB,iBAAV,EAAA14B,GAAsB,EAAAA,IAEnC44B,SAAS,cAATA,aCZF,IAAI3oB,EAAiB,CAAC,EAAEA,eAExBzR,EAAOtK,QAAU,SAAUw2B,EAAI9yB,GAC7B,OAAOqY,EAAepL,KAAK6lB,EAAI9yB,EACjC,YCJA4G,EAAOtK,QAAU,CAAC,iBCAlB,IAAI+hC,EAAa,EAAQ,MAEzBz3B,EAAOtK,QAAU+hC,EAAW,WAAY,mCCFxC,IAAI5I,EAAc,EAAQ,MACtBP,EAAQ,EAAQ,MAChBrhB,EAAgB,EAAQ,KAG5BjN,EAAOtK,SAAWm5B,IAAgBP,GAAM,WACtC,OAEQ,GAFD94B,OAAOC,eAAewX,EAAc,OAAQ,IAAK,CACtDpX,IAAK,WAAc,OAAO,CAAG,IAC5BwG,CACL,oBCTA,IAAIiyB,EAAQ,EAAQ,MAChB2L,EAAU,EAAQ,MAElBxU,EAAQ,GAAGA,MAGfzlB,EAAOtK,QAAU44B,GAAM,WAGrB,OAAQ94B,OAAO,KAAK6kC,qBAAqB,EAC3C,IAAK,SAAUnO,GACb,MAAsB,UAAf+N,EAAQ/N,GAAkBzG,EAAMpf,KAAK6lB,EAAI,IAAM12B,OAAO02B,EAC/D,EAAI12B,uBCZJ,IAAI4sB,EAAW,EAAQ,KACnBgS,EAAiB,EAAQ,MAG7Bp0B,EAAOtK,QAAU,SAAUy3B,EAAOmG,EAAOgH,GACvC,IAAIC,EAAWC,EAUf,OAPEpG,GAE0C,mBAAlCmG,EAAYjH,EAAM/sB,cAC1Bg0B,IAAcD,GACdlY,EAASoY,EAAqBD,EAAUlgC,YACxCmgC,IAAuBF,EAAQjgC,WAC/B+5B,EAAejH,EAAOqN,GACjBrN,CACT,kBChBA,IAAIsN,EAAQ,EAAQ,MAEhBC,EAAmBN,SAAS59B,SAGE,mBAAvBi+B,EAAME,gBACfF,EAAME,cAAgB,SAAUzO,GAC9B,OAAOwO,EAAiBr0B,KAAK6lB,EAC/B,GAGFlsB,EAAOtK,QAAU+kC,EAAME,8BCXvB,IAAIC,EAAa,EAAQ,MACrBxY,EAAW,EAAQ,KACnB0M,EAAM,EAAQ,MACdr5B,EAAiB,UACjBwB,EAAM,EAAQ,MACd4jC,EAAW,EAAQ,MAEnBC,EAAW7jC,EAAI,QACf+T,EAAK,EAEL4uB,EAAepkC,OAAOokC,cAAgB,WACxC,OAAO,CACT,EAEImB,EAAc,SAAU7O,GAC1Bz2B,EAAey2B,EAAI4O,EAAU,CAAEnlC,MAAO,CACpCqlC,SAAU,OAAQhwB,EAClBiwB,SAAU,CAAC,IAEf,EAkCIC,EAAOl7B,EAAOtK,QAAU,CAC1Bs9B,UAAU,EACVxC,QAlCY,SAAUtE,EAAIn0B,GAE1B,IAAKqqB,EAAS8J,GAAK,MAAoB,iBAANA,EAAiBA,GAAmB,iBAANA,EAAiB,IAAM,KAAOA,EAC7F,IAAK4C,EAAI5C,EAAI4O,GAAW,CAEtB,IAAKlB,EAAa1N,GAAK,MAAO,IAE9B,IAAKn0B,EAAQ,MAAO,IAEpBgjC,EAAY7O,EAEd,CAAE,OAAOA,EAAG4O,GAAUE,QACxB,EAuBEG,YArBgB,SAAUjP,EAAIn0B,GAC9B,IAAK+2B,EAAI5C,EAAI4O,GAAW,CAEtB,IAAKlB,EAAa1N,GAAK,OAAO,EAE9B,IAAKn0B,EAAQ,OAAO,EAEpBgjC,EAAY7O,EAEd,CAAE,OAAOA,EAAG4O,GAAUG,QACxB,EAYEG,SATa,SAAUlP,GAEvB,OADI2O,GAAYK,EAAKlI,UAAY4G,EAAa1N,KAAQ4C,EAAI5C,EAAI4O,IAAWC,EAAY7O,GAC9EA,CACT,GASA0O,EAAWE,IAAY,kBC5DvB,IASIrgC,EAAK5E,EAAKi5B,EATVuM,EAAkB,EAAQ,MAC1BpJ,EAAS,EAAQ,MACjB7P,EAAW,EAAQ,KACnBiS,EAA8B,EAAQ,MACtCiH,EAAY,EAAQ,MACpBC,EAAY,EAAQ,MACpBX,EAAa,EAAQ,MAErBY,EAAUvJ,EAAOuJ,QAgBrB,GAAIH,EAAiB,CACnB,IAAIZ,EAAQ,IAAIe,EACZC,EAAQhB,EAAM5kC,IACd6lC,EAAQjB,EAAM3L,IACd6M,EAAQlB,EAAMhgC,IAClBA,EAAM,SAAUyxB,EAAI0P,GAElB,OADAD,EAAMt1B,KAAKo0B,EAAOvO,EAAI0P,GACfA,CACT,EACA/lC,EAAM,SAAUq2B,GACd,OAAOuP,EAAMp1B,KAAKo0B,EAAOvO,IAAO,CAAC,CACnC,EACA4C,EAAM,SAAU5C,GACd,OAAOwP,EAAMr1B,KAAKo0B,EAAOvO,EAC3B,CACF,KAAO,CACL,IAAI2P,EAAQN,EAAU,SACtBX,EAAWiB,IAAS,EACpBphC,EAAM,SAAUyxB,EAAI0P,GAElB,OADAvH,EAA4BnI,EAAI2P,EAAOD,GAChCA,CACT,EACA/lC,EAAM,SAAUq2B,GACd,OAAOoP,EAAUpP,EAAI2P,GAAS3P,EAAG2P,GAAS,CAAC,CAC7C,EACA/M,EAAM,SAAU5C,GACd,OAAOoP,EAAUpP,EAAI2P,EACvB,CACF,CAEA77B,EAAOtK,QAAU,CACf+E,IAAKA,EACL5E,IAAKA,EACLi5B,IAAKA,EACLgN,QA/CY,SAAU5P,GACtB,OAAO4C,EAAI5C,GAAMr2B,EAAIq2B,GAAMzxB,EAAIyxB,EAAI,CAAC,EACtC,EA8CE0E,UA5Cc,SAAUpD,GACxB,OAAO,SAAUtB,GACf,IAAIoF,EACJ,IAAKlP,EAAS8J,KAAQoF,EAAQz7B,EAAIq2B,IAAK7sB,OAASmuB,EAC9C,MAAM/zB,UAAU,0BAA4B+zB,EAAO,aACnD,OAAO8D,CACX,CACF,mBCtBA,IAAInF,EAAkB,EAAQ,MAC1ByH,EAAY,EAAQ,MAEpBrE,EAAWpD,EAAgB,YAC3BG,EAAiBxrB,MAAMzG,UAG3B2F,EAAOtK,QAAU,SAAUw2B,GACzB,YAActvB,IAAPsvB,IAAqB0H,EAAU9yB,QAAUorB,GAAMI,EAAeiD,KAAcrD,EACrF,kBCTA,IAAI+N,EAAU,EAAQ,MAItBj6B,EAAOtK,QAAUoL,MAAMmF,SAAW,SAAiB0zB,GACjD,MAAuB,SAAhBM,EAAQN,EACjB,kBCNA,IAAIrL,EAAQ,EAAQ,MAEhByN,EAAc,kBAEd7J,EAAW,SAAU8J,EAASC,GAChC,IAAItmC,EAAQkG,EAAKqgC,EAAUF,IAC3B,OAAOrmC,GAASwmC,GACZxmC,GAASymC,IACW,mBAAbH,EAA0B3N,EAAM2N,KACrCA,EACR,EAEIC,EAAYhK,EAASgK,UAAY,SAAUxC,GAC7C,OAAOv3B,OAAOu3B,GAAQ99B,QAAQmgC,EAAa,KAAKrhB,aAClD,EAEI7e,EAAOq2B,EAASr2B,KAAO,CAAC,EACxBugC,EAASlK,EAASkK,OAAS,IAC3BD,EAAWjK,EAASiK,SAAW,IAEnCn8B,EAAOtK,QAAUw8B,WCpBjBlyB,EAAOtK,QAAU,SAAUw2B,GACzB,MAAqB,iBAAPA,EAAyB,OAAPA,EAA4B,mBAAPA,CACvD,YCFAlsB,EAAOtK,SAAU,iBCAjB,IAAI05B,EAAW,EAAQ,MACnBiN,EAAwB,EAAQ,MAChCtP,EAAW,EAAQ,MACnB9kB,EAAO,EAAQ,MACfq0B,EAAoB,EAAQ,MAC5BC,EAA+B,EAAQ,MAEvCC,EAAS,SAAUC,EAASpV,GAC9B1tB,KAAK8iC,QAAUA,EACf9iC,KAAK0tB,OAASA,CAChB,GAEcrnB,EAAOtK,QAAU,SAAUu7B,EAAUtiB,EAAIof,EAAM2O,EAAYC,GACvE,IACIx2B,EAAUy2B,EAAQ5f,EAAOhkB,EAAQquB,EAAQ5b,EAAMoxB,EAD/C5O,EAAgBhmB,EAAK0G,EAAIof,EAAM2O,EAAa,EAAI,GAGpD,GAAIC,EACFx2B,EAAW8qB,MACN,CAEL,GAAqB,mBADrB2L,EAASN,EAAkBrL,IACM,MAAMx3B,UAAU,0BAEjD,GAAI4iC,EAAsBO,GAAS,CACjC,IAAK5f,EAAQ,EAAGhkB,EAAS+zB,EAASkE,EAASj4B,QAASA,EAASgkB,EAAOA,IAIlE,IAHAqK,EAASqV,EACLzO,EAAcmB,EAASyN,EAAO5L,EAASjU,IAAQ,GAAI6f,EAAK,IACxD5O,EAAcgD,EAASjU,MACbqK,aAAkBmV,EAAQ,OAAOnV,EAC/C,OAAO,IAAImV,GAAO,EACtB,CACAr2B,EAAWy2B,EAAOv2B,KAAK4qB,EACzB,CAGA,IADAxlB,EAAOtF,EAASsF,OACPoxB,EAAOpxB,EAAKpF,KAAKF,IAAWuF,MAEnC,GAAqB,iBADrB2b,EAASkV,EAA6Bp2B,EAAU8nB,EAAe4O,EAAKlnC,MAAO+mC,KAC1CrV,GAAUA,aAAkBmV,EAAQ,OAAOnV,EAC5E,OAAO,IAAImV,GAAO,EACtB,GAEQM,KAAO,SAAUzV,GACvB,OAAO,IAAImV,GAAO,EAAMnV,EAC1B,+BCzCA,IAaIqM,EAAmBqJ,EAAmCC,EAbtDrV,EAAiB,EAAQ,MACzB0M,EAA8B,EAAQ,MACtCvF,EAAM,EAAQ,MACd3C,EAAkB,EAAQ,MAC1BmI,EAAU,EAAQ,MAElB/E,EAAWpD,EAAgB,YAC3BqI,GAAyB,EAQzB,GAAGxzB,OAGC,SAFNg8B,EAAgB,GAAGh8B,SAIjB+7B,EAAoCpV,EAAeA,EAAeqV,OACxBxnC,OAAO6E,YAAWq5B,EAAoBqJ,GAHlDvI,GAAyB,GAOlC53B,MAArB82B,IAAgCA,EAAoB,CAAC,GAGpDY,GAAYxF,EAAI4E,EAAmBnE,IACtC8E,EAA4BX,EAAmBnE,GApBhC,WAAc,OAAO51B,IAAM,IAuB5CqG,EAAOtK,QAAU,CACfg+B,kBAAmBA,EACnBc,uBAAwBA,aCnC1Bx0B,EAAOtK,QAAU,CAAC,iBCAlB,IAAI44B,EAAQ,EAAQ,MAEpBtuB,EAAOtK,UAAYF,OAAOyL,wBAA0BqtB,GAAM,WAGxD,OAAQnsB,OAAO+D,SACjB,oBCNA,IAAI+rB,EAAS,EAAQ,MACjB0I,EAAgB,EAAQ,MAExBa,EAAUvJ,EAAOuJ,QAErBx7B,EAAOtK,QAA6B,mBAAZ8lC,GAA0B,cAAch1B,KAAKm0B,EAAca,iCCJnF,IAAI3M,EAAc,EAAQ,MACtBP,EAAQ,EAAQ,MAChB2O,EAAa,EAAQ,MACrBC,EAA8B,EAAQ,MACtCC,EAA6B,EAAQ,MACrC7P,EAAW,EAAQ,MACnBD,EAAgB,EAAQ,MAExB+P,EAAe5nC,OAAO2C,OACtB1C,EAAiBD,OAAOC,eAI5BuK,EAAOtK,SAAW0nC,GAAgB9O,GAAM,WAEtC,GAAIO,GAQiB,IARFuO,EAAa,CAAE9gC,EAAG,GAAK8gC,EAAa3nC,EAAe,CAAC,EAAG,IAAK,CAC7EG,YAAY,EACZC,IAAK,WACHJ,EAAekE,KAAM,IAAK,CACxBhE,MAAO,EACPC,YAAY,GAEhB,IACE,CAAE0G,EAAG,KAAMA,EAAS,OAAO,EAE/B,IAAIsL,EAAI,CAAC,EACLwN,EAAI,CAAC,EAELioB,EAASn3B,SACTo3B,EAAW,uBAGf,OAFA11B,EAAEy1B,GAAU,EACZC,EAAS7X,MAAM,IAAI3uB,SAAQ,SAAUymC,GAAOnoB,EAAEmoB,GAAOA,CAAK,IACpB,GAA/BH,EAAa,CAAC,EAAGx1B,GAAGy1B,IAAgBJ,EAAWG,EAAa,CAAC,EAAGhoB,IAAI5J,KAAK,KAAO8xB,CACzF,IAAK,SAAgBzkC,EAAQokB,GAM3B,IALA,IAAIpH,EAAIyX,EAASz0B,GACb2kC,EAAkB7gC,UAAU3D,OAC5BgkB,EAAQ,EACR/b,EAAwBi8B,EAA4Bv1B,EACpD0yB,EAAuB8C,EAA2Bx1B,EAC/C61B,EAAkBxgB,GAMvB,IALA,IAII5jB,EAJAkc,EAAI+X,EAAc1wB,UAAUqgB,MAC5Bhc,EAAOC,EAAwBg8B,EAAW3nB,GAAG5a,OAAOuG,EAAsBqU,IAAM2nB,EAAW3nB,GAC3Ftc,EAASgI,EAAKhI,OACdwc,EAAI,EAEDxc,EAASwc,GACdpc,EAAM4H,EAAKwU,KACNqZ,IAAewL,EAAqBh0B,KAAKiP,EAAGlc,KAAMyc,EAAEzc,GAAOkc,EAAElc,IAEpE,OAAOyc,CACX,EAAIunB,gBCnDJ,IAmDIK,EAnDArO,EAAW,EAAQ,MACnB7tB,EAAmB,EAAQ,MAC3Bm8B,EAAc,EAAQ,KACtB9C,EAAa,EAAQ,MACrB+C,EAAO,EAAQ,KACfC,EAAwB,EAAQ,KAChCrC,EAAY,EAAQ,MAMpBsC,EAAWtC,EAAU,YAErBuC,EAAmB,WAA0B,EAE7CC,EAAY,SAAUzV,GACxB,MAAO0V,WAAmB1V,EAAnB0V,cACT,EAkCIC,EAAkB,WACpB,IAEER,EAAkBhnC,SAASqtB,QAAU,IAAIoa,cAAc,WAC1B,CAA7B,MAAOlnC,GAAsB,CA1BF,IAIzBmnC,EAFAC,EAyBJH,EAAkBR,EApCY,SAAUA,GACxCA,EAAgB9Z,MAAMoa,EAAU,KAChCN,EAAgBzoB,QAChB,IAAIqpB,EAAOZ,EAAgBa,aAAa9oC,OAExC,OADAioC,EAAkB,KACXY,CACT,CA8BsCE,CAA0Bd,KAzB1DW,EAASR,EAAsB,WAG5B3uB,MAAMuvB,QAAU,OACvBb,EAAK3wB,YAAYoxB,GAEjBA,EAAOK,IAAMt8B,OALJ,gBAMTg8B,EAAiBC,EAAOM,cAAcjoC,UACvBsL,OACfo8B,EAAexa,MAAMoa,EAAU,sBAC/BI,EAAenpB,QACRmpB,EAAepoB,GAgBtB,IADA,IAAI/c,EAAS0kC,EAAY1kC,OAClBA,YAAiBilC,EAAyB,UAAEP,EAAY1kC,IAC/D,OAAOilC,GACT,EAEArD,EAAWiD,IAAY,EAIvB79B,EAAOtK,QAAUF,OAAOuC,QAAU,SAAgBie,EAAG2oB,GACnD,IAAItX,EAQJ,OAPU,OAANrR,GACF8nB,EAA0B,UAAI1O,EAASpZ,GACvCqR,EAAS,IAAIyW,EACbA,EAA0B,UAAI,KAE9BzW,EAAOwW,GAAY7nB,GACdqR,EAAS4W,SACMrhC,IAAf+hC,EAA2BtX,EAAS9lB,EAAiB8lB,EAAQsX,EACtE,kBC7EA,IAAI9P,EAAc,EAAQ,MACtBzC,EAAuB,EAAQ,MAC/BgD,EAAW,EAAQ,MACnB6N,EAAa,EAAQ,MAIzBj9B,EAAOtK,QAAUm5B,EAAcr5B,OAAO+L,iBAAmB,SAA0ByU,EAAG2oB,GACpFvP,EAASpZ,GAKT,IAJA,IAGI5c,EAHA4H,EAAOi8B,EAAW0B,GAClB3lC,EAASgI,EAAKhI,OACdgkB,EAAQ,EAELhkB,EAASgkB,GAAOoP,EAAqBzkB,EAAEqO,EAAG5c,EAAM4H,EAAKgc,KAAU2hB,EAAWvlC,IACjF,OAAO4c,CACT,kBCfA,IAAI6Y,EAAc,EAAQ,MACtB+P,EAAiB,EAAQ,MACzBxP,EAAW,EAAQ,MACnB6E,EAAc,EAAQ,MAEtB4K,EAAuBrpC,OAAOC,eAIlCC,EAAQiS,EAAIknB,EAAcgQ,EAAuB,SAAwB7oB,EAAGN,EAAGopB,GAI7E,GAHA1P,EAASpZ,GACTN,EAAIue,EAAYve,GAAG,GACnB0Z,EAAS0P,GACLF,EAAgB,IAClB,OAAOC,EAAqB7oB,EAAGN,EAAGopB,EACN,CAA5B,MAAO9nC,GAAqB,CAC9B,GAAI,QAAS8nC,GAAc,QAASA,EAAY,MAAMrlC,UAAU,2BAEhE,MADI,UAAWqlC,IAAY9oB,EAAEN,GAAKopB,EAAWnpC,OACtCqgB,CACT,kBCnBA,IAAI6Y,EAAc,EAAQ,MACtBsO,EAA6B,EAAQ,MACrCxJ,EAA2B,EAAQ,MACnC7G,EAAkB,EAAQ,MAC1BmH,EAAc,EAAQ,MACtBnF,EAAM,EAAQ,MACd8P,EAAiB,EAAQ,MAEzBG,EAAiCvpC,OAAO0L,yBAI5CxL,EAAQiS,EAAIknB,EAAckQ,EAAiC,SAAkC/oB,EAAGN,GAG9F,GAFAM,EAAI8W,EAAgB9W,GACpBN,EAAIue,EAAYve,GAAG,GACfkpB,EAAgB,IAClB,OAAOG,EAA+B/oB,EAAGN,EACb,CAA5B,MAAO1e,GAAqB,CAC9B,GAAI83B,EAAI9Y,EAAGN,GAAI,OAAOie,GAA0BwJ,EAA2Bx1B,EAAEtB,KAAK2P,EAAGN,GAAIM,EAAEN,GAC7F,kBCnBA,IAAIspB,EAAqB,EAAQ,MAG7BpE,EAFc,EAAQ,KAEGlgC,OAAO,SAAU,aAI9ChF,EAAQiS,EAAInS,OAAOozB,qBAAuB,SAA6B5S,GACrE,OAAOgpB,EAAmBhpB,EAAG4kB,EAC/B,gBCTAllC,EAAQiS,EAAInS,OAAOyL,sCCAnB,IAAI6tB,EAAM,EAAQ,MACdxB,EAAW,EAAQ,MACnBiO,EAAY,EAAQ,MACpB0D,EAA2B,EAAQ,MAEnCpB,EAAWtC,EAAU,YACrB2D,EAAkB1pC,OAAO6E,UAI7B2F,EAAOtK,QAAUupC,EAA2BzpC,OAAOmyB,eAAiB,SAAU3R,GAE5E,OADAA,EAAIsX,EAAStX,GACT8Y,EAAI9Y,EAAG6nB,GAAkB7nB,EAAE6nB,GACH,mBAAjB7nB,EAAEzP,aAA6ByP,aAAaA,EAAEzP,YAChDyP,EAAEzP,YAAYlM,UACd2b,aAAaxgB,OAAS0pC,EAAkB,IACnD,kBChBA,IAAIpQ,EAAM,EAAQ,MACdhC,EAAkB,EAAQ,MAC1BrtB,EAAU,gBACVm7B,EAAa,EAAQ,MAEzB56B,EAAOtK,QAAU,SAAUo2B,EAAQ3gB,GACjC,IAGI/R,EAHA4c,EAAI8W,EAAgBhB,GACpB/yB,EAAI,EACJsuB,EAAS,GAEb,IAAKjuB,KAAO4c,GAAI8Y,EAAI8L,EAAYxhC,IAAQ01B,EAAI9Y,EAAG5c,IAAQiuB,EAAO/wB,KAAK8C,GAEnE,KAAO+R,EAAMnS,OAASD,GAAO+1B,EAAI9Y,EAAG5c,EAAM+R,EAAMpS,SAC7C0G,EAAQ4nB,EAAQjuB,IAAQiuB,EAAO/wB,KAAK8C,IAEvC,OAAOiuB,CACT,kBChBA,IAAI2X,EAAqB,EAAQ,MAC7BtB,EAAc,EAAQ,KAI1B19B,EAAOtK,QAAUF,OAAOwL,MAAQ,SAAcgV,GAC5C,OAAOgpB,EAAmBhpB,EAAG0nB,EAC/B,6BCNA,IAAIyB,EAA6B,CAAC,EAAE9E,qBAChCn5B,EAA2B1L,OAAO0L,yBAGlCk+B,EAAcl+B,IAA6Bi+B,EAA2B94B,KAAK,CAAE,EAAG,GAAK,GAIzF3Q,EAAQiS,EAAIy3B,EAAc,SAA8BC,GACtD,IAAIpmC,EAAaiI,EAAyBvH,KAAM0lC,GAChD,QAASpmC,GAAcA,EAAWrD,UACpC,EAAIupC,kBCZJ,IAAI/P,EAAW,EAAQ,MACnBkQ,EAAqB,EAAQ,MAMjCt/B,EAAOtK,QAAUF,OAAO4+B,iBAAmB,aAAe,CAAC,EAAI,WAC7D,IAEImL,EAFAC,GAAiB,EACjBh5B,EAAO,CAAC,EAEZ,KACE+4B,EAAS/pC,OAAO0L,yBAAyB1L,OAAO6E,UAAW,aAAaI,KACjE4L,KAAKG,EAAM,IAClBg5B,EAAiBh5B,aAAgB1F,KACL,CAA5B,MAAO9J,GAAqB,CAC9B,OAAO,SAAwBgf,EAAGwf,GAKhC,OAJApG,EAASpZ,GACTspB,EAAmB9J,GACfgK,EAAgBD,EAAOl5B,KAAK2P,EAAGwf,GAC9Bxf,EAAEypB,UAAYjK,EACZxf,CACT,CACF,CAhB+D,QAgBzDpZ,+BCtBN,IAAIizB,EAAwB,EAAQ,MAChCoK,EAAU,EAAQ,KAItBj6B,EAAOtK,QAAUm6B,EAAwB,CAAC,EAAErzB,SAAW,WACrD,MAAO,WAAay9B,EAAQtgC,MAAQ,GACtC,kBCRA,IAAI89B,EAAa,EAAQ,MACrBiI,EAA4B,EAAQ,MACpCxC,EAA8B,EAAQ,MACtC9N,EAAW,EAAQ,MAGvBpvB,EAAOtK,QAAU+hC,EAAW,UAAW,YAAc,SAAiBvL,GACpE,IAAIlrB,EAAO0+B,EAA0B/3B,EAAEynB,EAASlD,IAC5CjrB,EAAwBi8B,EAA4Bv1B,EACxD,OAAO1G,EAAwBD,EAAKtG,OAAOuG,EAAsBirB,IAAOlrB,CAC1E,iBCVA,IAAIixB,EAAS,EAAQ,MAErBjyB,EAAOtK,QAAUu8B,kBCFjB,IAAIE,EAAW,EAAQ,MAEvBnyB,EAAOtK,QAAU,SAAUmD,EAAQ4lC,EAAKjhC,GACtC,IAAK,IAAIpE,KAAOqlC,EAAKtM,EAASt5B,EAAQO,EAAKqlC,EAAIrlC,GAAMoE,GACrD,OAAO3E,CACT,kBCLA,IAAIo5B,EAAS,EAAQ,MACjBoC,EAA8B,EAAQ,MACtCvF,EAAM,EAAQ,MACd8I,EAAY,EAAQ,MACpB+C,EAAgB,EAAQ,MACxBlK,EAAsB,EAAQ,MAE9BW,EAAmBX,EAAoB56B,IACvC8pC,EAAuBlP,EAAoBqL,QAC3C8D,EAAWz9B,OAAOA,QAAQsjB,MAAM,WAEnCzlB,EAAOtK,QAAU,SAAUsgB,EAAG5c,EAAKzD,EAAO6H,GACzC,IAAIqiC,IAASriC,KAAYA,EAAQqiC,OAC7BC,IAAStiC,KAAYA,EAAQ5H,WAC7BwiC,IAAc56B,KAAYA,EAAQ46B,YAClB,mBAATziC,IACS,iBAAPyD,GAAoB01B,EAAIn5B,EAAO,SAAS0+B,EAA4B1+B,EAAO,OAAQyD,GAC9FumC,EAAqBhqC,GAAOsnB,OAAS2iB,EAASp0B,KAAmB,iBAAPpS,EAAkBA,EAAM,KAEhF4c,IAAMic,GAIE4N,GAEAzH,GAAepiB,EAAE5c,KAC3B0mC,GAAS,UAFF9pB,EAAE5c,GAIP0mC,EAAQ9pB,EAAE5c,GAAOzD,EAChB0+B,EAA4Bre,EAAG5c,EAAKzD,IATnCmqC,EAAQ9pB,EAAE5c,GAAOzD,EAChBiiC,EAAUx+B,EAAKzD,EAUxB,GAAGykC,SAAS//B,UAAW,YAAY,WACjC,MAAsB,mBAARV,MAAsBy3B,EAAiBz3B,MAAMsjB,QAAU0d,EAAchhC,KACrF,oBCjCA,IAAIsgC,EAAU,EAAQ,MAClB3B,EAAa,EAAQ,MAIzBt4B,EAAOtK,QAAU,SAAUqqC,EAAGzqB,GAC5B,IAAIsQ,EAAOma,EAAEna,KACb,GAAoB,mBAATA,EAAqB,CAC9B,IAAIyB,EAASzB,EAAKvf,KAAK05B,EAAGzqB,GAC1B,GAAsB,iBAAX+R,EACT,MAAM5tB,UAAU,sEAElB,OAAO4tB,CACT,CAEA,GAAmB,WAAf4S,EAAQ8F,GACV,MAAMtmC,UAAU,+CAGlB,OAAO6+B,EAAWjyB,KAAK05B,EAAGzqB,EAC5B,+BCnBA,IAYM0qB,EACAC,EAbFC,EAAc,EAAQ,MACtBC,EAAgB,EAAQ,MAExBC,EAAahc,OAAO/pB,UAAUurB,KAI9Bya,EAAgBl+B,OAAO9H,UAAUuB,QAEjC0kC,EAAcF,EAEdG,GACEP,EAAM,IACNC,EAAM,MACVG,EAAW/5B,KAAK25B,EAAK,KACrBI,EAAW/5B,KAAK45B,EAAK,KACI,IAAlBD,EAAIjX,WAAqC,IAAlBkX,EAAIlX,WAGhCyX,EAAgBL,EAAcK,eAAiBL,EAAcM,aAG7DC,OAAuC9jC,IAAvB,OAAOgpB,KAAK,IAAI,IAExB2a,GAA4BG,GAAiBF,KAGvDF,EAAc,SAAc7Y,GAC1B,IACIsB,EAAW4X,EAAQxc,EAAOprB,EAD1By/B,EAAK7+B,KAELinC,EAASJ,GAAiBhI,EAAGoI,OAC7BzH,EAAQ+G,EAAY75B,KAAKmyB,GACzBvb,EAASub,EAAGvb,OACZ4jB,EAAa,EACbC,EAAUrZ,EA+Cd,OA7CImZ,KAE0B,KAD5BzH,EAAQA,EAAMv9B,QAAQ,IAAK,KACjB6D,QAAQ,OAChB05B,GAAS,KAGX2H,EAAU3+B,OAAOslB,GAAKnhB,MAAMkyB,EAAGzP,WAE3ByP,EAAGzP,UAAY,KAAOyP,EAAGuI,WAAavI,EAAGuI,WAAuC,OAA1BtZ,EAAI+Q,EAAGzP,UAAY,MAC3E9L,EAAS,OAASA,EAAS,IAC3B6jB,EAAU,IAAMA,EAChBD,KAIFF,EAAS,IAAIvc,OAAO,OAASnH,EAAS,IAAKkc,IAGzCuH,IACFC,EAAS,IAAIvc,OAAO,IAAMnH,EAAS,WAAYkc,IAE7CoH,IAA0BxX,EAAYyP,EAAGzP,WAE7C5E,EAAQic,EAAW/5B,KAAKu6B,EAASD,EAASnI,EAAIsI,GAE1CF,EACEzc,GACFA,EAAM6c,MAAQ7c,EAAM6c,MAAM16B,MAAMu6B,GAChC1c,EAAM,GAAKA,EAAM,GAAG7d,MAAMu6B,GAC1B1c,EAAMnH,MAAQwb,EAAGzP,UACjByP,EAAGzP,WAAa5E,EAAM,GAAGnrB,QACpBw/B,EAAGzP,UAAY,EACbwX,GAA4Bpc,IACrCqU,EAAGzP,UAAYyP,EAAGvG,OAAS9N,EAAMnH,MAAQmH,EAAM,GAAGnrB,OAAS+vB,GAEzD2X,GAAiBvc,GAASA,EAAMnrB,OAAS,GAG3CqnC,EAAch6B,KAAK8d,EAAM,GAAIwc,GAAQ,WACnC,IAAK5nC,EAAI,EAAGA,EAAI4D,UAAU3D,OAAS,EAAGD,SACf6D,IAAjBD,UAAU5D,KAAkBorB,EAAMprB,QAAK6D,EAE/C,IAGKunB,CACT,GAGFnkB,EAAOtK,QAAU4qC,+BCrFjB,IAAIlR,EAAW,EAAQ,MAIvBpvB,EAAOtK,QAAU,WACf,IAAIq4B,EAAOqB,EAASz1B,MAChB0tB,EAAS,GAOb,OANI0G,EAAKkE,SAAQ5K,GAAU,KACvB0G,EAAKkT,aAAY5Z,GAAU,KAC3B0G,EAAKgT,YAAW1Z,GAAU,KAC1B0G,EAAKmT,SAAQ7Z,GAAU,KACvB0G,EAAKxB,UAASlF,GAAU,KACxB0G,EAAK6S,SAAQvZ,GAAU,KACpBA,CACT,+BCbA,IAAIiH,EAAQ,EAAQ,MAIpB,SAAS6S,EAAGzgC,EAAGiH,GACb,OAAOyc,OAAO1jB,EAAGiH,EACnB,CAEAjS,EAAQ8qC,cAAgBlS,GAAM,WAE5B,IAAIkK,EAAK2I,EAAG,IAAK,KAEjB,OADA3I,EAAGzP,UAAY,EACW,MAAnByP,EAAG5S,KAAK,OACjB,IAEAlwB,EAAQ+qC,aAAenS,GAAM,WAE3B,IAAIkK,EAAK2I,EAAG,KAAM,MAElB,OADA3I,EAAGzP,UAAY,EACU,MAAlByP,EAAG5S,KAAK,MACjB,cCpBA5lB,EAAOtK,QAAU,SAAUw2B,GACzB,GAAUtvB,MAANsvB,EAAiB,MAAMzyB,UAAU,wBAA0ByyB,GAC/D,OAAOA,CACT,kBCLA,IAAI+F,EAAS,EAAQ,MACjBoC,EAA8B,EAAQ,MAE1Cr0B,EAAOtK,QAAU,SAAU0D,EAAKzD,GAC9B,IACE0+B,EAA4BpC,EAAQ74B,EAAKzD,EAG3C,CAFE,MAAOqB,GACPi7B,EAAO74B,GAAOzD,CAChB,CAAE,OAAOA,CACX,+BCRA,IAAI8hC,EAAa,EAAQ,MACrBrL,EAAuB,EAAQ,MAC/BD,EAAkB,EAAQ,MAC1B0C,EAAc,EAAQ,MAEtBL,EAAUrC,EAAgB,WAE9BnsB,EAAOtK,QAAU,SAAUq7B,GACzB,IAAIv3B,EAAci+B,EAAW1G,GACzBt7B,EAAiB22B,EAAqBzkB,EAEtCknB,GAAer1B,IAAgBA,EAAYg1B,IAC7C/4B,EAAe+D,EAAag1B,EAAS,CACnCt1B,cAAc,EACdrD,IAAK,WAAc,OAAO8D,IAAM,GAGtC,kBClBA,IAAIlE,EAAiB,UACjBq5B,EAAM,EAAQ,MAGdiB,EAFkB,EAAQ,KAEV5D,CAAgB,eAEpCnsB,EAAOtK,QAAU,SAAUw2B,EAAIkV,EAAKlJ,GAC9BhM,IAAO4C,EAAI5C,EAAKgM,EAAShM,EAAKA,EAAG7xB,UAAW01B,IAC9Ct6B,EAAey2B,EAAI6D,EAAe,CAAE72B,cAAc,EAAMvD,MAAOyrC,GAEnE,kBCVA,IAAIC,EAAS,EAAQ,MACjBpqC,EAAM,EAAQ,MAEd+J,EAAOqgC,EAAO,QAElBrhC,EAAOtK,QAAU,SAAU0D,GACzB,OAAO4H,EAAK5H,KAAS4H,EAAK5H,GAAOnC,EAAImC,GACvC,kBCPA,IAAI64B,EAAS,EAAQ,MACjB2F,EAAY,EAAQ,MAEpB0J,EAAS,qBACT7G,EAAQxI,EAAOqP,IAAW1J,EAAU0J,EAAQ,CAAC,GAEjDthC,EAAOtK,QAAU+kC,kBCNjB,IAAInG,EAAU,EAAQ,MAClBmG,EAAQ,EAAQ,OAEnBz6B,EAAOtK,QAAU,SAAU0D,EAAKzD,GAC/B,OAAO8kC,EAAMrhC,KAASqhC,EAAMrhC,QAAiBwD,IAAVjH,EAAsBA,EAAQ,CAAC,EACpE,GAAG,WAAY,IAAIW,KAAK,CACtB2U,QAAS,QACTs2B,KAAMjN,EAAU,OAAS,SACzBkN,UAAW,yDCRb,IAAIC,EAAY,EAAQ,MACpBC,EAAyB,EAAQ,MAGjCzU,EAAe,SAAU0U,GAC3B,OAAO,SAAUxU,EAAOyU,GACtB,IAGI1Q,EAAO2Q,EAHPvsB,EAAInT,OAAOu/B,EAAuBvU,IAClCrE,EAAW2Y,EAAUG,GACrB3xB,EAAOqF,EAAEtc,OAEb,OAAI8vB,EAAW,GAAKA,GAAY7Y,EAAa0xB,EAAoB,QAAK/kC,GACtEs0B,EAAQ5b,EAAEiT,WAAWO,IACN,OAAUoI,EAAQ,OAAUpI,EAAW,IAAM7Y,IACtD4xB,EAASvsB,EAAEiT,WAAWO,EAAW,IAAM,OAAU+Y,EAAS,MAC1DF,EAAoBrsB,EAAEtW,OAAO8pB,GAAYoI,EACzCyQ,EAAoBrsB,EAAEhP,MAAMwiB,EAAUA,EAAW,GAA+B+Y,EAAS,OAAlC3Q,EAAQ,OAAU,IAA0B,KAC3G,CACF,EAEAlxB,EAAOtK,QAAU,CAGfosC,OAAQ7U,GAAa,GAGrBjuB,OAAQiuB,GAAa,oBCzBvB,IAAIwU,EAAY,EAAQ,MAEpBM,EAAMp3B,KAAKo3B,IACXC,EAAMr3B,KAAKq3B,IAKfhiC,EAAOtK,QAAU,SAAUsnB,EAAOhkB,GAChC,IAAIipC,EAAUR,EAAUzkB,GACxB,OAAOilB,EAAU,EAAIF,EAAIE,EAAUjpC,EAAQ,GAAKgpC,EAAIC,EAASjpC,EAC/D,kBCVA,IAAIq0B,EAAgB,EAAQ,MACxBqU,EAAyB,EAAQ,MAErC1hC,EAAOtK,QAAU,SAAUw2B,GACzB,OAAOmB,EAAcqU,EAAuBxV,GAC9C,YCNA,IAAIgW,EAAOv3B,KAAKu3B,KACZ9gB,EAAQzW,KAAKyW,MAIjBphB,EAAOtK,QAAU,SAAUk5B,GACzB,OAAOuT,MAAMvT,GAAYA,GAAY,GAAKA,EAAW,EAAIxN,EAAQ8gB,GAAMtT,EACzE,kBCPA,IAAI6S,EAAY,EAAQ,MAEpBO,EAAMr3B,KAAKq3B,IAIfhiC,EAAOtK,QAAU,SAAUk5B,GACzB,OAAOA,EAAW,EAAIoT,EAAIP,EAAU7S,GAAW,kBAAoB,CACrE,kBCRA,IAAI8S,EAAyB,EAAQ,MAIrC1hC,EAAOtK,QAAU,SAAUk5B,GACzB,OAAOp5B,OAAOksC,EAAuB9S,GACvC,kBCNA,IAAIxM,EAAW,EAAQ,KAMvBpiB,EAAOtK,QAAU,SAAUsrC,EAAOoB,GAChC,IAAKhgB,EAAS4e,GAAQ,OAAOA,EAC7B,IAAIryB,EAAI8L,EACR,GAAI2nB,GAAoD,mBAAxBzzB,EAAKqyB,EAAMxkC,YAA4B4lB,EAAS3H,EAAM9L,EAAGtI,KAAK26B,IAAS,OAAOvmB,EAC9G,GAAmC,mBAAvB9L,EAAKqyB,EAAMqB,WAA2BjgB,EAAS3H,EAAM9L,EAAGtI,KAAK26B,IAAS,OAAOvmB,EACzF,IAAK2nB,GAAoD,mBAAxBzzB,EAAKqyB,EAAMxkC,YAA4B4lB,EAAS3H,EAAM9L,EAAGtI,KAAK26B,IAAS,OAAOvmB,EAC/G,MAAMhhB,UAAU,0CAClB,kBCbA,IAGI+M,EAAO,CAAC,EAEZA,EALsB,EAAQ,KAEV2lB,CAAgB,gBAGd,IAEtBnsB,EAAOtK,QAA2B,eAAjByM,OAAOqE,aCPxB,IAAIwE,EAAK,EACLs3B,EAAU33B,KAAKC,SAEnB5K,EAAOtK,QAAU,SAAU0D,GACzB,MAAO,UAAY+I,YAAevF,IAARxD,EAAoB,GAAKA,GAAO,QAAU4R,EAAKs3B,GAAS9lC,SAAS,GAC7F,kBCLA,IAAI+lC,EAAgB,EAAQ,KAE5BviC,EAAOtK,QAAU6sC,IAEXr8B,OAAOmyB,MAEkB,iBAAnBnyB,OAAOC,yBCNnB,IAAI8rB,EAAS,EAAQ,MACjBoP,EAAS,EAAQ,MACjBvS,EAAM,EAAQ,MACd73B,EAAM,EAAQ,MACdsrC,EAAgB,EAAQ,KACxBC,EAAoB,EAAQ,MAE5BC,EAAwBpB,EAAO,OAC/Bn7B,EAAS+rB,EAAO/rB,OAChBw8B,EAAwBF,EAAoBt8B,EAASA,GAAUA,EAAOy8B,eAAiB1rC,EAE3F+I,EAAOtK,QAAU,SAAUsE,GAIvB,OAHG80B,EAAI2T,EAAuBzoC,KAC1BuoC,GAAiBzT,EAAI5oB,EAAQlM,GAAOyoC,EAAsBzoC,GAAQkM,EAAOlM,GACxEyoC,EAAsBzoC,GAAQ0oC,EAAsB,UAAY1oC,IAC9DyoC,EAAsBzoC,EACjC,+BCfA,IAAI8b,EAAI,EAAQ,MACZwY,EAAQ,EAAQ,MAChBroB,EAAU,EAAQ,MAClBmc,EAAW,EAAQ,KACnBkL,EAAW,EAAQ,MACnBP,EAAW,EAAQ,MACnB6V,EAAiB,EAAQ,MACzBrV,EAAqB,EAAQ,MAC7BsV,EAA+B,EAAQ,MACvC1W,EAAkB,EAAQ,MAC1BoC,EAAa,EAAQ,MAErBuU,EAAuB3W,EAAgB,sBACvC4W,EAAmB,iBACnBC,EAAiC,iCAKjCC,EAA+B1U,GAAc,KAAOD,GAAM,WAC5D,IAAII,EAAQ,GAEZ,OADAA,EAAMoU,IAAwB,EACvBpU,EAAMh0B,SAAS,KAAOg0B,CAC/B,IAEIwU,EAAkBL,EAA6B,UAE/CM,EAAqB,SAAUntB,GACjC,IAAKoM,EAASpM,GAAI,OAAO,EACzB,IAAIotB,EAAaptB,EAAE8sB,GACnB,YAAsBlmC,IAAfwmC,IAA6BA,EAAan9B,EAAQ+P,EAC3D,EAOAF,EAAE,CAAEjd,OAAQ,QAAS28B,OAAO,EAAMjC,QALpB0P,IAAiCC,GAKK,CAClDxoC,OAAQ,SAAgBi/B,GACtB,IAGI5gC,EAAG4U,EAAG3U,EAAQ2wB,EAAKhU,EAHnBK,EAAIsX,EAAS3zB,MACbiO,EAAI2lB,EAAmBvX,EAAG,GAC1B9V,EAAI,EAER,IAAKnH,GAAK,EAAGC,EAAS2D,UAAU3D,OAAQD,EAAIC,EAAQD,IAElD,GAAIoqC,EADJxtB,GAAW,IAAP5c,EAAWid,EAAIrZ,UAAU5D,IACF,CAEzB,GAAImH,GADJypB,EAAMoD,EAASpX,EAAE3c,SACH+pC,EAAkB,MAAMtpC,UAAUupC,GAChD,IAAKr1B,EAAI,EAAGA,EAAIgc,EAAKhc,IAAKzN,IAASyN,KAAKgI,GAAGitB,EAAeh7B,EAAG1H,EAAGyV,EAAEhI,GACpE,KAAO,CACL,GAAIzN,GAAK6iC,EAAkB,MAAMtpC,UAAUupC,GAC3CJ,EAAeh7B,EAAG1H,IAAKyV,EACzB,CAGF,OADA/N,EAAE5O,OAASkH,EACJ0H,CACT,iCCzDF,IAAIkO,EAAI,EAAQ,MACZutB,EAAU,eACVR,EAA+B,EAAQ,MACvCnW,EAA0B,EAAQ,MAElC4W,EAAsBT,EAA6B,UAEnDjW,EAAiBF,EAAwB,UAK7C5W,EAAE,CAAEjd,OAAQ,QAAS28B,OAAO,EAAMjC,QAAS+P,IAAwB1W,GAAkB,CACnFjyB,OAAQ,SAAgBkyB,GACtB,OAAOwW,EAAQ1pC,KAAMkzB,EAAYlwB,UAAU3D,OAAS,EAAI2D,UAAU,QAAKC,EACzE,iCCfF,IAAIkZ,EAAI,EAAQ,MACZhf,EAAU,EAAQ,MAItBgf,EAAE,CAAEjd,OAAQ,QAAS28B,OAAO,EAAMjC,OAAQ,GAAGz8B,SAAWA,GAAW,CACjEA,QAASA,iCCNX,IAAIgf,EAAI,EAAQ,MACZ2U,EAAW,gBACXgC,EAAsB,EAAQ,MAC9BC,EAA0B,EAAQ,MAElC6W,EAAgB,GAAG9jC,QAEnB+jC,IAAkBD,GAAiB,EAAI,CAAC,GAAG9jC,QAAQ,GAAI,GAAK,EAC5DktB,EAAgBF,EAAoB,WACpCG,EAAiBF,EAAwB,UAAW,CAAEsC,WAAW,EAAM,EAAG,IAI9ElZ,EAAE,CAAEjd,OAAQ,QAAS28B,OAAO,EAAMjC,OAAQiQ,IAAkB7W,IAAkBC,GAAkB,CAC9FntB,QAAS,SAAiBgkC,GACxB,OAAOD,EAEHD,EAAcpiC,MAAMxH,KAAMgD,YAAc,EACxC8tB,EAAS9wB,KAAM8pC,EAAe9mC,UAAU3D,OAAS,EAAI2D,UAAU,QAAKC,EAC1E,iCCnBF,IAAIkwB,EAAkB,EAAQ,MAC1B4W,EAAmB,EAAQ,MAC3B9P,EAAY,EAAQ,MACpBnD,EAAsB,EAAQ,MAC9BH,EAAiB,EAAQ,KAEzBqT,EAAiB,iBACjBjT,EAAmBD,EAAoBh2B,IACvC22B,EAAmBX,EAAoBG,UAAU+S,GAYrD3jC,EAAOtK,QAAU46B,EAAexvB,MAAO,SAAS,SAAUixB,EAAUC,GAClEtB,EAAiB/2B,KAAM,CACrB0F,KAAMskC,EACN9qC,OAAQi0B,EAAgBiF,GACxB/U,MAAO,EACPgV,KAAMA,GAIV,IAAG,WACD,IAAIV,EAAQF,EAAiBz3B,MACzBd,EAASy4B,EAAMz4B,OACfm5B,EAAOV,EAAMU,KACbhV,EAAQsU,EAAMtU,QAClB,OAAKnkB,GAAUmkB,GAASnkB,EAAOG,QAC7Bs4B,EAAMz4B,YAAS+D,EACR,CAAEjH,WAAOiH,EAAW8O,MAAM,IAEvB,QAARsmB,EAAuB,CAAEr8B,MAAOqnB,EAAOtR,MAAM,GACrC,UAARsmB,EAAyB,CAAEr8B,MAAOkD,EAAOmkB,GAAQtR,MAAM,GACpD,CAAE/V,MAAO,CAACqnB,EAAOnkB,EAAOmkB,IAAStR,MAAM,EAChD,GAAG,UAKHkoB,EAAUgQ,UAAYhQ,EAAU9yB,MAGhC4iC,EAAiB,QACjBA,EAAiB,UACjBA,EAAiB,wCCnDjB,IAAIG,EAAa,EAAQ,MACrBC,EAAmB,EAAQ,MAI/B9jC,EAAOtK,QAAUmuC,EAAW,OAAO,SAAUE,GAC3C,OAAO,WAAiB,OAAOA,EAAKpqC,KAAMgD,UAAU3D,OAAS2D,UAAU,QAAKC,EAAY,CAC1F,GAAGknC,mBCRH,IAAIhuB,EAAI,EAAQ,MACZ3d,EAAS,EAAQ,MAIrB2d,EAAE,CAAEjd,OAAQ,SAAUs/B,MAAM,EAAM5E,OAAQ/9B,OAAO2C,SAAWA,GAAU,CACpEA,OAAQA,oBCNV,IAAI2d,EAAI,EAAQ,MACZ+Y,EAAc,EAAQ,MAK1B/Y,EAAE,CAAEjd,OAAQ,SAAUs/B,MAAM,EAAM5E,QAAS1E,EAAawJ,MAAOxJ,GAAe,CAC5Ep5B,eAL+B,EAAQ,MAKIkS,oBCP7C,IAAIkoB,EAAwB,EAAQ,MAChCsC,EAAW,EAAQ,MACnB31B,EAAW,EAAQ,KAIlBqzB,GACHsC,EAAS38B,OAAO6E,UAAW,WAAYmC,EAAU,CAAEqjC,QAAQ,iCCN7D,IAAI/pB,EAAI,EAAQ,MACZ8P,EAAO,EAAQ,MAEnB9P,EAAE,CAAEjd,OAAQ,SAAU28B,OAAO,EAAMjC,OAAQ,IAAI3N,OAASA,GAAQ,CAC9DA,KAAMA,iCCJR,IAAIuM,EAAW,EAAQ,MACnB/C,EAAW,EAAQ,MACnBd,EAAQ,EAAQ,MAChB6K,EAAQ,EAAQ,MAEhB6K,EAAY,WACZC,EAAkB7f,OAAO/pB,UACzB6pC,EAAiBD,EAAyB,SAE1CE,EAAc7V,GAAM,WAAc,MAA2D,QAApD4V,EAAe79B,KAAK,CAAE4W,OAAQ,IAAKkc,MAAO,KAAkB,IAErGiL,EAAiBF,EAAelqC,MAAQgqC,GAIxCG,GAAeC,IACjBjS,EAAS/N,OAAO/pB,UAAW2pC,GAAW,WACpC,IAAIjE,EAAI3Q,EAASz1B,MACb0H,EAAIc,OAAO49B,EAAE9iB,QACbonB,EAAKtE,EAAE5G,MAEX,MAAO,IAAM93B,EAAI,IADTc,YAAcvF,IAAPynC,GAAoBtE,aAAa3b,UAAY,UAAW6f,GAAmB9K,EAAM9yB,KAAK05B,GAAKsE,EAE5G,GAAG,CAAExE,QAAQ,iCCtBf,IAAI7gC,EAAS,eACTyxB,EAAsB,EAAQ,MAC9BH,EAAiB,EAAQ,KAEzBgU,EAAkB,kBAClB5T,EAAmBD,EAAoBh2B,IACvC22B,EAAmBX,EAAoBG,UAAU0T,GAIrDhU,EAAenuB,OAAQ,UAAU,SAAU4vB,GACzCrB,EAAiB/2B,KAAM,CACrB0F,KAAMilC,EACN5K,OAAQv3B,OAAO4vB,GACf/U,MAAO,GAIX,IAAG,WACD,IAGIunB,EAHAjT,EAAQF,EAAiBz3B,MACzB+/B,EAASpI,EAAMoI,OACf1c,EAAQsU,EAAMtU,MAElB,OAAIA,GAAS0c,EAAO1gC,OAAe,CAAErD,WAAOiH,EAAW8O,MAAM,IAC7D64B,EAAQvlC,EAAO06B,EAAQ1c,GACvBsU,EAAMtU,OAASunB,EAAMvrC,OACd,CAAErD,MAAO4uC,EAAO74B,MAAM,GAC/B,iCC3BA,IAAI84B,EAAgC,EAAQ,MACxCpV,EAAW,EAAQ,MACnB9B,EAAW,EAAQ,MACnBP,EAAW,EAAQ,MACnB0U,EAAY,EAAQ,MACpBC,EAAyB,EAAQ,MACjC+C,EAAqB,EAAQ,MAC7BC,EAAa,EAAQ,MAErB3C,EAAMp3B,KAAKo3B,IACXC,EAAMr3B,KAAKq3B,IACX5gB,EAAQzW,KAAKyW,MACbujB,EAAuB,4BACvBC,EAAgC,oBAOpCJ,EAA8B,UAAW,GAAG,SAAU7L,EAAS0H,EAAewE,EAAiBhoB,GAC7F,IAAI+b,EAA+C/b,EAAO+b,6CACtDF,EAAmB7b,EAAO6b,iBAC1BoM,EAAoBlM,EAA+C,IAAM,KAE7E,MAAO,CAGL,SAAiBmM,EAAaC,GAC5B,IAAIhvB,EAAI0rB,EAAuB/nC,MAC3BsrC,EAA0BroC,MAAfmoC,OAA2BnoC,EAAYmoC,EAAYpM,GAClE,YAAoB/7B,IAAbqoC,EACHA,EAAS5+B,KAAK0+B,EAAa/uB,EAAGgvB,GAC9B3E,EAAch6B,KAAKlE,OAAO6T,GAAI+uB,EAAaC,EACjD,EAGA,SAAU3L,EAAQ2L,GAChB,IACIpM,GAAgDF,GACzB,iBAAjBsM,IAA0E,IAA7CA,EAAavlC,QAAQqlC,GAC1D,CACA,IAAII,EAAML,EAAgBxE,EAAehH,EAAQ1/B,KAAMqrC,GACvD,GAAIE,EAAIx5B,KAAM,OAAOw5B,EAAIvvC,KAC3B,CAEA,IAAIwvC,EAAK/V,EAASiK,GACd/jB,EAAInT,OAAOxI,MAEXyrC,EAA4C,mBAAjBJ,EAC1BI,IAAmBJ,EAAe7iC,OAAO6iC,IAE9C,IAAI/S,EAASkT,EAAGlT,OAChB,GAAIA,EAAQ,CACV,IAAIoT,EAAcF,EAAG5Y,QACrB4Y,EAAGpc,UAAY,CACjB,CAEA,IADA,IAAIuc,EAAU,KACD,CACX,IAAIje,EAASqd,EAAWS,EAAI7vB,GAC5B,GAAe,OAAX+R,EAAiB,MAGrB,GADAie,EAAQhvC,KAAK+wB,IACR4K,EAAQ,MAGI,KADF9vB,OAAOklB,EAAO,MACR8d,EAAGpc,UAAY0b,EAAmBnvB,EAAGyX,EAASoY,EAAGpc,WAAYsc,GACpF,CAIA,IAFA,IAtDwBnZ,EAsDpBqZ,EAAoB,GACpBC,EAAqB,EAChBzsC,EAAI,EAAGA,EAAIusC,EAAQtsC,OAAQD,IAAK,CACvCsuB,EAASie,EAAQvsC,GAUjB,IARA,IAAI0sC,EAAUtjC,OAAOklB,EAAO,IACxByB,EAAWiZ,EAAIC,EAAIP,EAAUpa,EAAOrK,OAAQ1H,EAAEtc,QAAS,GACvD0sC,EAAW,GAMNlwB,EAAI,EAAGA,EAAI6R,EAAOruB,OAAQwc,IAAKkwB,EAASpvC,UAlEzCsG,KADcsvB,EAmE8C7E,EAAO7R,IAlEvD0W,EAAK/pB,OAAO+pB,IAmEhC,IAAIyZ,EAAgBte,EAAOoR,OAC3B,GAAI2M,EAAmB,CACrB,IAAIQ,EAAe,CAACH,GAAS/qC,OAAOgrC,EAAU5c,EAAUxT,QAClC1Y,IAAlB+oC,GAA6BC,EAAatvC,KAAKqvC,GACnD,IAAI5J,EAAc55B,OAAO6iC,EAAa7jC,WAAMvE,EAAWgpC,GACzD,MACE7J,EAAc8J,EAAgBJ,EAASnwB,EAAGwT,EAAU4c,EAAUC,EAAeX,GAE3Elc,GAAY0c,IACdD,GAAqBjwB,EAAEhP,MAAMk/B,EAAoB1c,GAAYiT,EAC7DyJ,EAAqB1c,EAAW2c,EAAQzsC,OAE5C,CACA,OAAOusC,EAAoBjwB,EAAEhP,MAAMk/B,EACrC,GAIF,SAASK,EAAgBJ,EAAShe,EAAKqB,EAAU4c,EAAUC,EAAe5J,GACxE,IAAI+J,EAAUhd,EAAW2c,EAAQzsC,OAC7BoI,EAAIskC,EAAS1sC,OACb+sC,EAAUnB,EAKd,YAJsBhoC,IAAlB+oC,IACFA,EAAgBrY,EAASqY,GACzBI,EAAUpB,GAELtE,EAAch6B,KAAK01B,EAAagK,GAAS,SAAU5hB,EAAO6hB,GAC/D,IAAIC,EACJ,OAAQD,EAAGhnC,OAAO,IAChB,IAAK,IAAK,MAAO,IACjB,IAAK,IAAK,OAAOymC,EACjB,IAAK,IAAK,OAAOhe,EAAInhB,MAAM,EAAGwiB,GAC9B,IAAK,IAAK,OAAOrB,EAAInhB,MAAMw/B,GAC3B,IAAK,IACHG,EAAUN,EAAcK,EAAG1/B,MAAM,GAAI,IACrC,MACF,QACE,IAAIpG,GAAK8lC,EACT,GAAU,IAAN9lC,EAAS,OAAOikB,EACpB,GAAIjkB,EAAIkB,EAAG,CACT,IAAIuG,EAAIyZ,EAAMlhB,EAAI,IAClB,OAAU,IAANyH,EAAgBwc,EAChBxc,GAAKvG,OAA8BxE,IAApB8oC,EAAS/9B,EAAI,GAAmBq+B,EAAGhnC,OAAO,GAAK0mC,EAAS/9B,EAAI,GAAKq+B,EAAGhnC,OAAO,GACvFmlB,CACT,CACA8hB,EAAUP,EAASxlC,EAAI,GAE3B,YAAmBtD,IAAZqpC,EAAwB,GAAKA,CACtC,GACF,CACF,oBCtIA,IAAIhU,EAAS,EAAQ,MACjBiU,EAAe,EAAQ,MACvBpvC,EAAU,EAAQ,MAClBu9B,EAA8B,EAAQ,MAE1C,IAAK,IAAI8R,KAAmBD,EAAc,CACxC,IAAIE,EAAanU,EAAOkU,GACpBE,EAAsBD,GAAcA,EAAW/rC,UAEnD,GAAIgsC,GAAuBA,EAAoBvvC,UAAYA,EAAS,IAClEu9B,EAA4BgS,EAAqB,UAAWvvC,EAG9D,CAFE,MAAOE,GACPqvC,EAAoBvvC,QAAUA,CAChC,CACF,kBCdA,IAAIm7B,EAAS,EAAQ,MACjBiU,EAAe,EAAQ,MACvBI,EAAuB,EAAQ,MAC/BjS,EAA8B,EAAQ,MACtClI,EAAkB,EAAQ,MAE1BoD,EAAWpD,EAAgB,YAC3B4D,EAAgB5D,EAAgB,eAChCoa,EAAcD,EAAqB/Q,OAEvC,IAAK,IAAI4Q,KAAmBD,EAAc,CACxC,IAAIE,EAAanU,EAAOkU,GACpBE,EAAsBD,GAAcA,EAAW/rC,UACnD,GAAIgsC,EAAqB,CAEvB,GAAIA,EAAoB9W,KAAcgX,EAAa,IACjDlS,EAA4BgS,EAAqB9W,EAAUgX,EAG7D,CAFE,MAAOvvC,GACPqvC,EAAoB9W,GAAYgX,CAClC,CAIA,GAHKF,EAAoBtW,IACvBsE,EAA4BgS,EAAqBtW,EAAeoW,GAE9DD,EAAaC,GAAkB,IAAK,IAAI1X,KAAe6X,EAEzD,GAAID,EAAoB5X,KAAiB6X,EAAqB7X,GAAc,IAC1E4F,EAA4BgS,EAAqB5X,EAAa6X,EAAqB7X,GAGrF,CAFE,MAAOz3B,GACPqvC,EAAoB5X,GAAe6X,EAAqB7X,EAC1D,CAEJ,CACF,iFC7BI+X,QAA0B,GAA4B,KAE1DA,EAAwBlwC,KAAK,CAAC0J,EAAOgL,GAAI,g+FAAi+F,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,2BAA2B,MAAQ,GAAG,SAAW,4uCAA4uC,eAAiB,CAAC,mpIAAmpI,WAAa,MAEp/Q,wFCJIw7B,QAA0B,GAA4B,KAE1DA,EAAwBlwC,KAAK,CAAC0J,EAAOgL,GAAI,ksDAAmsD,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,2BAA2B,MAAQ,GAAG,SAAW,ulBAAulB,eAAiB,CAAC,w6EAAw6E,WAAa,MAEt1J,yFCJIw7B,QAA0B,GAA4B,KAE1DA,EAAwBlwC,KAAK,CAAC0J,EAAOgL,GAAI,wIAAyI,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,6CAA6C,MAAQ,GAAG,SAAW,yDAAyD,eAAiB,CAAC,uPAAuP,WAAa,MAE/lB,iCCDAhL,EAAOtK,QAAU,SAAU+wC,GACzB,IAAIC,EAAO,GA6FX,OA3FAA,EAAKlqC,SAAW,WACd,OAAO7C,KAAK4R,KAAI,SAAUo7B,GACxB,IAAIre,EAAU,GACVse,OAA+B,IAAZD,EAAK,GA4B5B,OA1BIA,EAAK,KACPre,GAAW,cAAc5tB,OAAOisC,EAAK,GAAI,QAGvCA,EAAK,KACPre,GAAW,UAAU5tB,OAAOisC,EAAK,GAAI,OAGnCC,IACFte,GAAW,SAAS5tB,OAAOisC,EAAK,GAAG3tC,OAAS,EAAI,IAAI0B,OAAOisC,EAAK,IAAM,GAAI,OAG5Ere,GAAWme,EAAuBE,GAE9BC,IACFte,GAAW,KAGTqe,EAAK,KACPre,GAAW,KAGTqe,EAAK,KACPre,GAAW,KAGNA,CACT,IAAG9c,KAAK,GACV,EAGAk7B,EAAK3tC,EAAI,SAAW8tC,EAAS16B,EAAO26B,EAAQz6B,EAAUC,GAC7B,iBAAZu6B,IACTA,EAAU,CAAC,CAAC,KAAMA,OAASjqC,KAG7B,IAAImqC,EAAyB,CAAC,EAE9B,GAAID,EACF,IAAK,IAAIn5B,EAAI,EAAGA,EAAIhU,KAAKX,OAAQ2U,IAAK,CACpC,IAAI3C,EAAKrR,KAAKgU,GAAG,GAEP,MAAN3C,IACF+7B,EAAuB/7B,IAAM,EAEjC,CAGF,IAAK,IAAIqF,EAAK,EAAGA,EAAKw2B,EAAQ7tC,OAAQqX,IAAM,CAC1C,IAAIs2B,EAAO,GAAGjsC,OAAOmsC,EAAQx2B,IAEzBy2B,GAAUC,EAAuBJ,EAAK,WAIrB,IAAVr6B,SACc,IAAZq6B,EAAK,KAGdA,EAAK,GAAK,SAASjsC,OAAOisC,EAAK,GAAG3tC,OAAS,EAAI,IAAI0B,OAAOisC,EAAK,IAAM,GAAI,MAAMjsC,OAAOisC,EAAK,GAAI,MAF/FA,EAAK,GAAKr6B,GAOVH,IACGw6B,EAAK,IAGRA,EAAK,GAAK,UAAUjsC,OAAOisC,EAAK,GAAI,MAAMjsC,OAAOisC,EAAK,GAAI,KAC1DA,EAAK,GAAKx6B,GAHVw6B,EAAK,GAAKx6B,GAOVE,IACGs6B,EAAK,IAGRA,EAAK,GAAK,cAAcjsC,OAAOisC,EAAK,GAAI,OAAOjsC,OAAOisC,EAAK,GAAI,KAC/DA,EAAK,GAAKt6B,GAHVs6B,EAAK,GAAK,GAAGjsC,OAAO2R,IAOxBq6B,EAAKpwC,KAAKqwC,GACZ,CACF,EAEOD,CACT,yBCnGA1mC,EAAOtK,QAAU,SAAUixC,GACzB,IAAIre,EAAUqe,EAAK,GACfK,EAAaL,EAAK,GAEtB,IAAKK,EACH,OAAO1e,EAGT,GAAoB,mBAAT1c,KAAqB,CAC9B,IAAIq7B,EAASr7B,KAAKC,SAAS9M,mBAAmB+M,KAAKC,UAAUi7B,MACzDnrC,EAAO,+DAA+DnB,OAAOusC,GAC7EC,EAAgB,OAAOxsC,OAAOmB,EAAM,OACpCsrC,EAAaH,EAAW97B,QAAQK,KAAI,SAAU0R,GAChD,MAAO,iBAAiBviB,OAAOssC,EAAW17B,YAAc,IAAI5Q,OAAOuiB,EAAQ,MAC7E,IACA,MAAO,CAACqL,GAAS5tB,OAAOysC,GAAYzsC,OAAO,CAACwsC,IAAgB17B,KAAK,KACnE,CAEA,MAAO,CAAC8c,GAAS9c,KAAK,KACxB,+BCnBA,IAAIxK,EAAO,EAAQ,MACfomC,EAA+B,mBAAXlhC,QAAkD,iBAAlBA,OAAO,OAE3DmhC,EAAQ7xC,OAAO6E,UAAUmC,SACzB9B,EAASoG,MAAMzG,UAAUK,OACzB4sC,EAAqB9xC,OAAOC,eAmB5B8xC,EAAsBD,GAbY,WACrC,IAAI9vC,EAAM,CAAC,EACX,IAGC,IAAK,IAAI4D,KAFTksC,EAAmB9vC,EAAK,IAAK,CAAE5B,YAAY,EAAOD,MAAO6B,IAE3CA,EACb,OAAO,EAER,OAAOA,EAAIkW,IAAMlW,CAGlB,CAFE,MAAOX,GACR,OAAO,CACR,CACD,CACgD2wC,GAE5C/xC,EAAiB,SAAUq2B,EAAQ9xB,EAAMrE,EAAO8xC,GAnBnC,IAAU94B,KAoBtB3U,KAAQ8xB,IAnBS,mBADKnd,EAoBS84B,IAnBmB,sBAAnBJ,EAAMhhC,KAAKsI,IAmBI84B,OAG9CF,EACHD,EAAmBxb,EAAQ9xB,EAAM,CAChCd,cAAc,EACdtD,YAAY,EACZD,MAAOA,EACPwD,UAAU,IAGX2yB,EAAO9xB,GAAQrE,EAEjB,EAEI4L,EAAmB,SAAUuqB,EAAQvgB,GACxC,IAAIm8B,EAAa/qC,UAAU3D,OAAS,EAAI2D,UAAU,GAAK,CAAC,EACpD7D,EAAQkI,EAAKuK,GACb67B,IACHtuC,EAAQ4B,EAAO2L,KAAKvN,EAAOtD,OAAOyL,sBAAsBsK,KAEzD,IAAK,IAAIxS,EAAI,EAAGA,EAAID,EAAME,OAAQD,GAAK,EACtCtD,EAAeq2B,EAAQhzB,EAAMC,GAAIwS,EAAIzS,EAAMC,IAAK2uC,EAAW5uC,EAAMC,IAEnE,EAEAwI,EAAiBgmC,sBAAwBA,EAEzCvnC,EAAOtK,QAAU6L,yBClDjB,SAASpJ,EAAOU,EAAQ8uC,GACtB,GAAI9uC,QACF,MAAM,IAAIY,UAAU,2CAItB,IADA,IAAIuK,EAAKxO,OAAOqD,GACPE,EAAI,EAAGA,EAAI4D,UAAU3D,OAAQD,IAAK,CACzC,IAAI6uC,EAAajrC,UAAU5D,GAC3B,GAAI6uC,QAKJ,IADA,IAAIC,EAAYryC,OAAOwL,KAAKxL,OAAOoyC,IAC1BE,EAAY,EAAGne,EAAMke,EAAU7uC,OAAQ8uC,EAAYne,EAAKme,IAAa,CAC5E,IAAIC,EAAUF,EAAUC,GACpB/gB,EAAOvxB,OAAO0L,yBAAyB0mC,EAAYG,QAC1CnrC,IAATmqB,GAAsBA,EAAKnxB,aAC7BoO,EAAG+jC,GAAWH,EAAWG,GAE7B,CACF,CACA,OAAO/jC,CACT,CAaAhE,EAAOtK,QAAU,CACfyC,OAAQA,EACR6vC,SAbF,WACOxyC,OAAO2C,QACV3C,OAAOC,eAAeD,OAAQ,SAAU,CACtCI,YAAY,EACZsD,cAAc,EACdC,UAAU,EACVxD,MAAOwC,GAGb,aCvCA,IAAI8vC,EAASzyC,OAAO6E,UAAUoX,eAC1BjV,EAAWhH,OAAO6E,UAAUmC,SAEhCwD,EAAOtK,QAAU,SAAkB8B,EAAKmX,EAAIu5B,GACxC,GAA0B,sBAAtB1rC,EAAS6J,KAAKsI,GACd,MAAM,IAAIlV,UAAU,+BAExB,IAAIkH,EAAInJ,EAAIwB,OACZ,GAAI2H,KAAOA,EACP,IAAK,IAAI5H,EAAI,EAAGA,EAAI4H,EAAG5H,IACnB4V,EAAGtI,KAAK6hC,EAAK1wC,EAAIuB,GAAIA,EAAGvB,QAG5B,IAAK,IAAImW,KAAKnW,EACNywC,EAAO5hC,KAAK7O,EAAKmW,IACjBgB,EAAGtI,KAAK6hC,EAAK1wC,EAAImW,GAAIA,EAAGnW,EAIxC,yBChBA,IAAI2wC,EAAgB,kDAChB7hC,EAAQxF,MAAMzG,UAAUiM,MACxB+gC,EAAQ7xC,OAAO6E,UAAUmC,SACzB4rC,EAAW,oBAEfpoC,EAAOtK,QAAU,SAAcq4B,GAC3B,IAAIl1B,EAASc,KACb,GAAsB,mBAAXd,GAAyBwuC,EAAMhhC,KAAKxN,KAAYuvC,EACvD,MAAM,IAAI3uC,UAAU0uC,EAAgBtvC,GAyBxC,IAvBA,IAEIwvC,EAFAllB,EAAO7c,EAAMD,KAAK1J,UAAW,GAG7B2rC,EAAS,WACT,GAAI3uC,gBAAgB0uC,EAAO,CACvB,IAAIhhB,EAASxuB,EAAOsI,MAChBxH,KACAwpB,EAAKzoB,OAAO4L,EAAMD,KAAK1J,aAE3B,OAAInH,OAAO6xB,KAAYA,EACZA,EAEJ1tB,IACX,CACI,OAAOd,EAAOsI,MACV4sB,EACA5K,EAAKzoB,OAAO4L,EAAMD,KAAK1J,YAGnC,EAEI4rC,EAAc59B,KAAKo3B,IAAI,EAAGlpC,EAAOG,OAASmqB,EAAKnqB,QAC/CwvC,EAAY,GACPzvC,EAAI,EAAGA,EAAIwvC,EAAaxvC,IAC7ByvC,EAAUlyC,KAAK,IAAMyC,GAKzB,GAFAsvC,EAAQjO,SAAS,SAAU,oBAAsBoO,EAAUh9B,KAAK,KAAO,4CAA/D4uB,CAA4GkO,GAEhHzvC,EAAOwB,UAAW,CAClB,IAAIouC,EAAQ,WAAkB,EAC9BA,EAAMpuC,UAAYxB,EAAOwB,UACzBguC,EAAMhuC,UAAY,IAAIouC,EACtBA,EAAMpuC,UAAY,IACtB,CAEA,OAAOguC,CACX,+BCjDA,IAAIK,EAAiB,EAAQ,MAE7B1oC,EAAOtK,QAAU0kC,SAAS//B,UAAU4N,MAAQygC,8BCF5C,IAAI9rC,EAEA+rC,EAAeC,YACfC,EAAYzO,SACZ0O,EAAarvC,UAGbsvC,EAAwB,SAAUC,GACrC,IACC,OAAOH,EAAU,yBAA2BG,EAAmB,iBAAxDH,EACK,CAAX,MAAOhyC,GAAI,CACd,EAEIk0B,EAAQv1B,OAAO0L,yBACnB,GAAI6pB,EACH,IACCA,EAAM,CAAC,EAAG,GAGX,CAFE,MAAOl0B,GACRk0B,EAAQ,IACT,CAGD,IAAIke,EAAiB,WACpB,MAAM,IAAIH,CACX,EACII,EAAiBne,EACjB,WACF,IAGC,OAAOke,CAQR,CAPE,MAAOE,GACR,IAEC,OAAOpe,EAAMpuB,UAAW,UAAU9G,GAGnC,CAFE,MAAOuzC,GACR,OAAOH,CACR,CACD,CACD,CAbE,GAcAA,EAEC7B,EAAa,EAAQ,KAAR,GAEbiC,EAAW7zC,OAAOmyB,gBAAkB,SAAUja,GAAK,OAAOA,EAAE+xB,SAAW,EAEvE6J,EAAY,CAAC,EAEbzhB,EAAmC,oBAAfC,WAA6BlrB,EAAYysC,EAASvhB,YAEtEyhB,EAAa,CAChB,mBAA8C,oBAAnBC,eAAiC5sC,EAAY4sC,eACxE,UAAW1oC,MACX,gBAAwC,oBAAhBknB,YAA8BprB,EAAYorB,YAClE,2BAA4Bof,EAAaiC,EAAS,GAAGnjC,OAAOC,aAAevJ,EAC3E,mCAAoCA,EACpC,kBAAmB0sC,EACnB,mBAAoBA,EACpB,2BAA4BA,EAC5B,2BAA4BA,EAC5B,YAAgC,oBAAZG,QAA0B7sC,EAAY6sC,QAC1D,WAA8B,oBAAXC,OAAyB9sC,EAAY8sC,OACxD,YAAappC,QACb,aAAkC,oBAAbqpC,SAA2B/sC,EAAY+sC,SAC5D,SAAU93B,KACV,cAAe+3B,UACf,uBAAwBvlB,mBACxB,cAAexkB,UACf,uBAAwBd,mBACxB,UAAWgO,MACX,SAAU88B,KACV,cAAeC,UACf,iBAA0C,oBAAjBC,aAA+BntC,EAAYmtC,aACpE,iBAA0C,oBAAjBC,aAA+BptC,EAAYotC,aACpE,yBAA0D,oBAAzBC,qBAAuCrtC,EAAYqtC,qBACpF,aAAcpB,EACd,sBAAuBS,EACvB,cAAoC,oBAAdY,UAA4BttC,EAAYstC,UAC9D,eAAsC,oBAAfC,WAA6BvtC,EAAYutC,WAChE,eAAsC,oBAAfC,WAA6BxtC,EAAYwtC,WAChE,aAAcC,SACd,UAAWlI,MACX,sBAAuBiF,EAAaiC,EAASA,EAAS,GAAGnjC,OAAOC,cAAgBvJ,EAChF,SAA0B,iBAATkP,KAAoBA,KAAOlP,EAC5C,QAAwB,oBAARrC,IAAsBqC,EAAYrC,IAClD,yBAAyC,oBAARA,KAAwB6sC,EAAyBiC,GAAS,IAAI9uC,KAAM2L,OAAOC,aAAtCvJ,EACtE,SAAU+N,KACV,WAAYmI,OACZ,WAAYtd,OACZ,eAAgB80C,WAChB,aAAcC,SACd,YAAgC,oBAAZ9yB,QAA0B7a,EAAY6a,QAC1D,UAA4B,oBAAV+yB,MAAwB5tC,EAAY4tC,MACtD,eAAgBC,WAChB,mBAAoBC,eACpB,YAAgC,oBAAZC,QAA0B/tC,EAAY+tC,QAC1D,WAAYvmB,OACZ,QAAwB,oBAARwmB,IAAsBhuC,EAAYguC,IAClD,yBAAyC,oBAARA,KAAwBxD,EAAyBiC,GAAS,IAAIuB,KAAM1kC,OAAOC,aAAtCvJ,EACtE,sBAAoD,oBAAtBiuC,kBAAoCjuC,EAAYiuC,kBAC9E,WAAY1oC,OACZ,4BAA6BilC,EAAaiC,EAAS,GAAGnjC,OAAOC,aAAevJ,EAC5E,WAAYwqC,EAAalhC,OAAStJ,EAClC,gBAAiB+rC,EACjB,mBAAoBO,EACpB,eAAgBrhB,EAChB,cAAeihB,EACf,eAAsC,oBAAfhhB,WAA6BlrB,EAAYkrB,WAChE,sBAAoD,oBAAtBgjB,kBAAoCluC,EAAYkuC,kBAC9E,gBAAwC,oBAAhBC,YAA8BnuC,EAAYmuC,YAClE,gBAAwC,oBAAhBC,YAA8BpuC,EAAYouC,YAClE,aAAcC,SACd,YAAgC,oBAAZzP,QAA0B5+B,EAAY4+B,QAC1D,YAAgC,oBAAZ0P,QAA0BtuC,EAAYsuC,QAC1D,YAAgC,oBAAZC,QAA0BvuC,EAAYuuC,SAGvDC,EAAS,SAASA,EAAOpxC,GAC5B,IAAIrE,EACJ,GAAa,oBAATqE,EACHrE,EAAQozC,EAAsB,6BACxB,GAAa,wBAAT/uC,EACVrE,EAAQozC,EAAsB,wBACxB,GAAa,6BAAT/uC,EACVrE,EAAQozC,EAAsB,8BACxB,GAAa,qBAAT/uC,EAA6B,CACvC,IAAI2U,EAAKy8B,EAAO,4BACZz8B,IACHhZ,EAAQgZ,EAAGtU,UAEb,MAAO,GAAa,6BAATL,EAAqC,CAC/C,IAAIqxC,EAAMD,EAAO,oBACbC,IACH11C,EAAQ0zC,EAASgC,EAAIhxC,WAEvB,CAIA,OAFAkvC,EAAWvvC,GAAQrE,EAEZA,CACR,EAEI21C,EAAiB,CACpB,yBAA0B,CAAC,cAAe,aAC1C,mBAAoB,CAAC,QAAS,aAC9B,uBAAwB,CAAC,QAAS,YAAa,WAC/C,uBAAwB,CAAC,QAAS,YAAa,WAC/C,oBAAqB,CAAC,QAAS,YAAa,QAC5C,sBAAuB,CAAC,QAAS,YAAa,UAC9C,2BAA4B,CAAC,gBAAiB,aAC9C,mBAAoB,CAAC,yBAA0B,aAC/C,4BAA6B,CAAC,yBAA0B,YAAa,aACrE,qBAAsB,CAAC,UAAW,aAClC,sBAAuB,CAAC,WAAY,aACpC,kBAAmB,CAAC,OAAQ,aAC5B,mBAAoB,CAAC,QAAS,aAC9B,uBAAwB,CAAC,YAAa,aACtC,0BAA2B,CAAC,eAAgB,aAC5C,0BAA2B,CAAC,eAAgB,aAC5C,sBAAuB,CAAC,WAAY,aACpC,cAAe,CAAC,oBAAqB,aACrC,uBAAwB,CAAC,oBAAqB,YAAa,aAC3D,uBAAwB,CAAC,YAAa,aACtC,wBAAyB,CAAC,aAAc,aACxC,wBAAyB,CAAC,aAAc,aACxC,cAAe,CAAC,OAAQ,SACxB,kBAAmB,CAAC,OAAQ,aAC5B,iBAAkB,CAAC,MAAO,aAC1B,oBAAqB,CAAC,SAAU,aAChC,oBAAqB,CAAC,SAAU,aAChC,sBAAuB,CAAC,SAAU,YAAa,YAC/C,qBAAsB,CAAC,SAAU,YAAa,WAC9C,qBAAsB,CAAC,UAAW,aAClC,sBAAuB,CAAC,UAAW,YAAa,QAChD,gBAAiB,CAAC,UAAW,OAC7B,mBAAoB,CAAC,UAAW,UAChC,oBAAqB,CAAC,UAAW,WACjC,wBAAyB,CAAC,aAAc,aACxC,4BAA6B,CAAC,iBAAkB,aAChD,oBAAqB,CAAC,SAAU,aAChC,iBAAkB,CAAC,MAAO,aAC1B,+BAAgC,CAAC,oBAAqB,aACtD,oBAAqB,CAAC,SAAU,aAChC,oBAAqB,CAAC,SAAU,aAChC,yBAA0B,CAAC,cAAe,aAC1C,wBAAyB,CAAC,aAAc,aACxC,uBAAwB,CAAC,YAAa,aACtC,wBAAyB,CAAC,aAAc,aACxC,+BAAgC,CAAC,oBAAqB,aACtD,yBAA0B,CAAC,cAAe,aAC1C,yBAA0B,CAAC,cAAe,aAC1C,sBAAuB,CAAC,WAAY,aACpC,qBAAsB,CAAC,UAAW,aAClC,qBAAsB,CAAC,UAAW,cAG/BrjC,EAAO,EAAQ,MACfggC,EAAS,EAAQ,MACjBsD,EAAUtjC,EAAK5B,KAAK+zB,SAAS/zB,KAAMvF,MAAMzG,UAAUK,QACnD8wC,EAAevjC,EAAK5B,KAAK+zB,SAASj5B,MAAOL,MAAMzG,UAAUqS,QACzD++B,EAAWxjC,EAAK5B,KAAK+zB,SAAS/zB,KAAMlE,OAAO9H,UAAUuB,SACrD8vC,EAAYzjC,EAAK5B,KAAK+zB,SAAS/zB,KAAMlE,OAAO9H,UAAUiM,OAGtDqlC,EAAa,qGACbC,EAAe,WACfC,EAAe,SAAsBnS,GACxC,IAAIxI,EAAQwa,EAAUhS,EAAQ,EAAG,GAC7BvI,EAAOua,EAAUhS,GAAS,GAC9B,GAAc,MAAVxI,GAA0B,MAATC,EACpB,MAAM,IAAIwX,EAAa,kDACjB,GAAa,MAATxX,GAA0B,MAAVD,EAC1B,MAAM,IAAIyX,EAAa,kDAExB,IAAIthB,EAAS,GAIb,OAHAokB,EAAS/R,EAAQiS,GAAY,SAAUxnB,EAAOjF,EAAQ4sB,EAAOC,GAC5D1kB,EAAOA,EAAOruB,QAAU8yC,EAAQL,EAASM,EAAWH,EAAc,MAAQ1sB,GAAUiF,CACrF,IACOkD,CACR,EAGI2kB,EAAmB,SAA0BhyC,EAAM0wB,GACtD,IACIuhB,EADAC,EAAgBlyC,EAOpB,GALIiuC,EAAOqD,EAAgBY,KAE1BA,EAAgB,KADhBD,EAAQX,EAAeY,IACK,GAAK,KAG9BjE,EAAOsB,EAAY2C,GAAgB,CACtC,IAAIv2C,EAAQ4zC,EAAW2C,GAIvB,GAHIv2C,IAAU2zC,IACb3zC,EAAQy1C,EAAOc,SAEK,IAAVv2C,IAA0B+0B,EACpC,MAAM,IAAIoe,EAAW,aAAe9uC,EAAO,wDAG5C,MAAO,CACNiyC,MAAOA,EACPjyC,KAAMkyC,EACNv2C,MAAOA,EAET,CAEA,MAAM,IAAIgzC,EAAa,aAAe3uC,EAAO,mBAC9C,EAEAgG,EAAOtK,QAAU,SAAsBsE,EAAM0wB,GAC5C,GAAoB,iBAAT1wB,GAAqC,IAAhBA,EAAKhB,OACpC,MAAM,IAAI8vC,EAAW,6CAEtB,GAAInsC,UAAU3D,OAAS,GAA6B,kBAAjB0xB,EAClC,MAAM,IAAIoe,EAAW,6CAGtB,IAAIxlB,EAAQuoB,EAAa7xC,GACrBmyC,EAAoB7oB,EAAMtqB,OAAS,EAAIsqB,EAAM,GAAK,GAElDqH,EAAYqhB,EAAiB,IAAMG,EAAoB,IAAKzhB,GAC5D0hB,EAAoBzhB,EAAU3wB,KAC9BrE,EAAQg1B,EAAUh1B,MAClB02C,GAAqB,EAErBJ,EAAQthB,EAAUshB,MAClBA,IACHE,EAAoBF,EAAM,GAC1BT,EAAaloB,EAAOioB,EAAQ,CAAC,EAAG,GAAIU,KAGrC,IAAK,IAAIlzC,EAAI,EAAGuzC,GAAQ,EAAMvzC,EAAIuqB,EAAMtqB,OAAQD,GAAK,EAAG,CACvD,IAAIwzC,EAAOjpB,EAAMvqB,GACbm4B,EAAQwa,EAAUa,EAAM,EAAG,GAC3Bpb,EAAOua,EAAUa,GAAO,GAC5B,IAEa,MAAVrb,GAA2B,MAAVA,GAA2B,MAAVA,GACtB,MAATC,GAAyB,MAATA,GAAyB,MAATA,IAElCD,IAAUC,EAEb,MAAM,IAAIwX,EAAa,wDASxB,GAPa,gBAAT4D,GAA2BD,IAC9BD,GAAqB,GAMlBpE,EAAOsB,EAFX6C,EAAoB,KADpBD,GAAqB,IAAMI,GACmB,KAG7C52C,EAAQ4zC,EAAW6C,QACb,GAAa,MAATz2C,EAAe,CACzB,KAAM42C,KAAQ52C,GAAQ,CACrB,IAAK+0B,EACJ,MAAM,IAAIoe,EAAW,sBAAwB9uC,EAAO,+CAErD,MACD,CACA,GAAI+wB,GAAUhyB,EAAI,GAAMuqB,EAAMtqB,OAAQ,CACrC,IAAI+tB,EAAOgE,EAAMp1B,EAAO42C,GAWvB52C,GAVD22C,IAAUvlB,IASG,QAASA,KAAU,kBAAmBA,EAAKlxB,KAC/CkxB,EAAKlxB,IAELF,EAAM42C,EAEhB,MACCD,EAAQrE,EAAOtyC,EAAO42C,GACtB52C,EAAQA,EAAM42C,GAGXD,IAAUD,IACb9C,EAAW6C,GAAqBz2C,EAElC,CACD,CACA,OAAOA,CACR,iBCzUA,OAKA,SAAUoF,EAAQtE,EAAU+1C,EAAY5vC,GACtC,aAEF,IA+FIzE,EA/FAs0C,EAAkB,CAAC,GAAI,SAAU,MAAO,KAAM,KAAM,KACpDC,EAAej2C,EAASwW,cAAc,OAItC0/B,EAAQhiC,KAAKgiC,MACbC,EAAMjiC,KAAKiiC,IACXtoB,EAAMzS,KAAKyS,IASf,SAASuoB,EAAkBl+B,EAAI4K,EAASoC,GACpC,OAAO7J,WAAWg7B,EAAOn+B,EAAIgN,GAAUpC,EAC3C,CAWA,SAASwzB,EAAepT,EAAKhrB,EAAIgN,GAC7B,QAAI7a,MAAMmF,QAAQ0zB,KACdqT,EAAKrT,EAAKhe,EAAQhN,GAAKgN,IAChB,EAGf,CAQA,SAASqxB,EAAKx1C,EAAK2O,EAAUwV,GACzB,IAAI5iB,EAEJ,GAAKvB,EAIL,GAAIA,EAAIV,QACJU,EAAIV,QAAQqP,EAAUwV,QACnB,GAAInkB,EAAIwB,SAAW4D,EAEtB,IADA7D,EAAI,EACGA,EAAIvB,EAAIwB,QACXmN,EAASE,KAAKsV,EAASnkB,EAAIuB,GAAIA,EAAGvB,GAClCuB,SAGJ,IAAKA,KAAKvB,EACNA,EAAIia,eAAe1Y,IAAMoN,EAASE,KAAKsV,EAASnkB,EAAIuB,GAAIA,EAAGvB,EAGvE,CASA,SAASy1C,EAAU7zB,EAAQpf,EAAM4iB,GAC7B,IAAIswB,EAAqB,sBAAwBlzC,EAAO,KAAO4iB,EAAU,SACzE,OAAO,WACH,IAAI/lB,EAAI,IAAIkW,MAAM,mBACduS,EAAQzoB,GAAKA,EAAEyoB,MAAQzoB,EAAEyoB,MAAM1jB,QAAQ,kBAAmB,IACzDA,QAAQ,cAAe,IACvBA,QAAQ,6BAA8B,kBAAoB,sBAE3D6vB,EAAM1wB,EAAOhE,UAAYgE,EAAOhE,QAAQ8C,MAAQkB,EAAOhE,QAAQ00B,KAInE,OAHIA,GACAA,EAAIplB,KAAKtL,EAAOhE,QAASm2C,EAAoB5tB,GAE1ClG,EAAOjY,MAAMxH,KAAMgD,UAC9B,CACJ,CAWIxE,EADyB,mBAAlB3C,OAAO2C,OACL,SAAgBU,GACrB,GAAIA,IAAW+D,GAAwB,OAAX/D,EACxB,MAAM,IAAIY,UAAU,8CAIxB,IADA,IAAI6wB,EAAS90B,OAAOqD,GACXmkB,EAAQ,EAAGA,EAAQrgB,UAAU3D,OAAQgkB,IAAS,CACnD,IAAIC,EAAStgB,UAAUqgB,GACvB,GAAIC,IAAWrgB,GAAwB,OAAXqgB,EACxB,IAAK,IAAI8qB,KAAW9qB,EACZA,EAAOxL,eAAes2B,KACtBzd,EAAOyd,GAAW9qB,EAAO8qB,GAIzC,CACA,OAAOzd,CACX,EAES90B,OAAO2C,OAWpB,IAAIyjB,EAASqxB,GAAU,SAAgBE,EAAM1O,EAAKte,GAG9C,IAFA,IAAInf,EAAOxL,OAAOwL,KAAKy9B,GACnB1lC,EAAI,EACDA,EAAIiI,EAAKhI,UACPmnB,GAAUA,GAASgtB,EAAKnsC,EAAKjI,MAAQ6D,KACtCuwC,EAAKnsC,EAAKjI,IAAM0lC,EAAIz9B,EAAKjI,KAE7BA,IAEJ,OAAOo0C,CACX,GAAG,SAAU,iBASThtB,EAAQ8sB,GAAU,SAAeE,EAAM1O,GACvC,OAAO7iB,EAAOuxB,EAAM1O,GAAK,EAC7B,GAAG,QAAS,iBAQZ,SAAS2O,EAAQC,EAAOphC,EAAMqhC,GAC1B,IACIC,EADAC,EAAQvhC,EAAK5R,WAGjBkzC,EAASF,EAAMhzC,UAAY7E,OAAOuC,OAAOy1C,IAClCjnC,YAAc8mC,EACrBE,EAAOE,OAASD,EAEZF,GACAn1C,EAAOo1C,EAAQD,EAEvB,CAQA,SAASR,EAAOn+B,EAAIgN,GAChB,OAAO,WACH,OAAOhN,EAAGxN,MAAMwa,EAAShf,UAC7B,CACJ,CASA,SAAS+wC,EAASjzB,EAAK0I,GACnB,MA1LgB,mBA0LL1I,EACAA,EAAItZ,MAAMgiB,GAAOA,EAAK,IAAkBvmB,EAAWumB,GAEvD1I,CACX,CAQA,SAASkzB,EAAYC,EAAMC,GACvB,OAAQD,IAAShxC,EAAaixC,EAAOD,CACzC,CAQA,SAASE,EAAkBj1C,EAAQk1C,EAAO9zC,GACtC+yC,EAAKgB,EAASD,IAAQ,SAAS1uC,GAC3BxG,EAAOob,iBAAiB5U,EAAMpF,GAAS,EAC3C,GACJ,CAQA,SAASg0C,EAAqBp1C,EAAQk1C,EAAO9zC,GACzC+yC,EAAKgB,EAASD,IAAQ,SAAS1uC,GAC3BxG,EAAOub,oBAAoB/U,EAAMpF,GAAS,EAC9C,GACJ,CASA,SAASi0C,EAAUC,EAAMl9B,GACrB,KAAOk9B,GAAM,CACT,GAAIA,GAAQl9B,EACR,OAAO,EAEXk9B,EAAOA,EAAK/gC,UAChB,CACA,OAAO,CACX,CAQA,SAASghC,EAAM3mB,EAAK2G,GAChB,OAAO3G,EAAIhoB,QAAQ2uB,IAAS,CAChC,CAOA,SAAS4f,EAASvmB,GACd,OAAOA,EAAI7iB,OAAO6gB,MAAM,OAC5B,CASA,SAAS4oB,EAAQ5P,EAAKrQ,EAAMkgB,GACxB,GAAI7P,EAAIh/B,UAAY6uC,EAChB,OAAO7P,EAAIh/B,QAAQ2uB,GAGnB,IADA,IAAIr1B,EAAI,EACDA,EAAI0lC,EAAIzlC,QAAQ,CACnB,GAAKs1C,GAAa7P,EAAI1lC,GAAGu1C,IAAclgB,IAAWkgB,GAAa7P,EAAI1lC,KAAOq1B,EACtE,OAAOr1B,EAEXA,GACJ,CACA,OAAQ,CAEhB,CAOA,SAASwtB,EAAQ/uB,GACb,OAAOsJ,MAAMzG,UAAUiM,MAAMD,KAAK7O,EAAK,EAC3C,CASA,SAAS+2C,EAAY9P,EAAKrlC,EAAKo1C,GAK3B,IAJA,IAAIlJ,EAAU,GACV/P,EAAS,GACTx8B,EAAI,EAEDA,EAAI0lC,EAAIzlC,QAAQ,CACnB,IAAIyhB,EAAMrhB,EAAMqlC,EAAI1lC,GAAGK,GAAOqlC,EAAI1lC,GAC9Bs1C,EAAQ9Y,EAAQ9a,GAAO,GACvB6qB,EAAQhvC,KAAKmoC,EAAI1lC,IAErBw8B,EAAOx8B,GAAK0hB,EACZ1hB,GACJ,CAYA,OAVIy1C,IAIIlJ,EAHClsC,EAGSksC,EAAQkJ,MAAK,SAAyBnyC,EAAGC,GAC/C,OAAOD,EAAEjD,GAAOkD,EAAElD,EACtB,IAJUksC,EAAQkJ,QAQnBlJ,CACX,CAQA,SAASmJ,EAASj3C,EAAKk3C,GAKnB,IAJA,IAAIC,EAAQ/tB,EACRguB,EAAYF,EAAS,GAAGr1B,cAAgBq1B,EAASpoC,MAAM,GAEvDvN,EAAI,EACDA,EAAI0zC,EAAgBzzC,QAAQ,CAI/B,IAFA4nB,GADA+tB,EAASlC,EAAgB1zC,IACP41C,EAASC,EAAYF,KAE3Bl3C,EACR,OAAOopB,EAEX7nB,GACJ,CACA,OAAO6D,CACX,CAMA,IAAIiyC,EAAY,EAUhB,SAASC,EAAoBC,GACzB,IAAIC,EAAMD,EAAQE,eAAiBF,EACnC,OAAQC,EAAIE,aAAeF,EAAI1Q,cAAgBvjC,CACnD,CAEA,IAEIo0C,EAAiB,iBAAkBp0C,EACnCq0C,EAAyBX,EAAS1zC,EAAQ,kBAAoB6B,EAC9DyyC,EAAqBF,GAJN,wCAIoC3oC,KAAKke,UAAUC,WAElE2qB,EAAmB,QAEnBC,EAAmB,QAiBnBC,EAAqBC,GAGrBC,EAAW,CAAC,IAAK,KACjBC,EAAkB,CAAC,UAAW,WASlC,SAASC,EAAMC,EAAShqB,GACpB,IAAI9lB,EAAOpG,KACXA,KAAKk2C,QAAUA,EACfl2C,KAAKksB,SAAWA,EAChBlsB,KAAKo1C,QAAUc,EAAQd,QACvBp1C,KAAKd,OAASg3C,EAAQryC,QAAQsyC,YAI9Bn2C,KAAKo2C,WAAa,SAASC,GACnBtC,EAASmC,EAAQryC,QAAQyyC,OAAQ,CAACJ,KAClC9vC,EAAK9F,QAAQ+1C,EAErB,EAEAr2C,KAAKoqC,MAET,CA0DA,SAASmM,EAAaL,EAASM,EAAWnP,GACtC,IAAIoP,EAAcpP,EAAMqP,SAASr3C,OAC7Bs3C,EAAqBtP,EAAMuP,gBAAgBv3C,OAC3Cw3C,EAvGU,EAuGCL,GAA4BC,EAAcE,GAAuB,EAC5EG,EAAuB,GAAZN,GAA2CC,EAAcE,GAAuB,EAE/FtP,EAAMwP,UAAYA,EAClBxP,EAAMyP,UAAYA,EAEdD,IACAX,EAAQa,QAAU,CAAC,GAKvB1P,EAAMmP,UAAYA,EAiBtB,SAA0BN,EAAS7O,GAC/B,IAAI0P,EAAUb,EAAQa,QAClBL,EAAWrP,EAAMqP,SACjBM,EAAiBN,EAASr3C,OAGzB03C,EAAQE,aACTF,EAAQE,WAAaC,EAAqB7P,IAI1C2P,EAAiB,IAAMD,EAAQI,cAC/BJ,EAAQI,cAAgBD,EAAqB7P,GACnB,IAAnB2P,IACPD,EAAQI,eAAgB,GAG5B,IAAIF,EAAaF,EAAQE,WACrBE,EAAgBJ,EAAQI,cACxBC,EAAeD,EAAgBA,EAAcE,OAASJ,EAAWI,OAEjEA,EAAShQ,EAAMgQ,OAASC,EAAUZ,GACtCrP,EAAMkQ,UAAY5sB,IAClB0c,EAAMmQ,UAAYnQ,EAAMkQ,UAAYN,EAAWM,UAE/ClQ,EAAMoQ,MAAQC,EAASN,EAAcC,GACrChQ,EAAMsQ,SAAWC,EAAYR,EAAcC,GA0B/C,SAAwBN,EAAS1P,GAC7B,IAAIgQ,EAAShQ,EAAMgQ,OACfQ,EAASd,EAAQe,aAAe,CAAC,EACjCC,EAAYhB,EAAQgB,WAAa,CAAC,EAClCC,EAAYjB,EAAQiB,WAAa,CAAC,EA5LxB,IA8LV3Q,EAAMmP,WA5LE,IA4L2BwB,EAAUxB,YAC7CuB,EAAYhB,EAAQgB,UAAY,CAC5BhkC,EAAGikC,EAAUC,QAAU,EACvB3jC,EAAG0jC,EAAUE,QAAU,GAG3BL,EAASd,EAAQe,YAAc,CAC3B/jC,EAAGsjC,EAAOtjC,EACVO,EAAG+iC,EAAO/iC,IAIlB+yB,EAAM4Q,OAASF,EAAUhkC,GAAKsjC,EAAOtjC,EAAI8jC,EAAO9jC,GAChDszB,EAAM6Q,OAASH,EAAUzjC,GAAK+iC,EAAO/iC,EAAIujC,EAAOvjC,EACpD,CA5CI6jC,CAAepB,EAAS1P,GACxBA,EAAM+Q,gBAAkBC,EAAahR,EAAM4Q,OAAQ5Q,EAAM6Q,QAEzD,IAAII,EAAkBC,EAAYlR,EAAMmQ,UAAWnQ,EAAM4Q,OAAQ5Q,EAAM6Q,QACvE7Q,EAAMmR,iBAAmBF,EAAgBvkC,EACzCszB,EAAMoR,iBAAmBH,EAAgBhkC,EACzC+yB,EAAMiR,gBAAmBrF,EAAIqF,EAAgBvkC,GAAKk/B,EAAIqF,EAAgBhkC,GAAMgkC,EAAgBvkC,EAAIukC,EAAgBhkC,EAEhH+yB,EAAMqR,MAAQvB,GAkNAl/B,EAlNyBk/B,EAAcT,SAkNhCjmB,EAlN0CimB,EAmNxDkB,EAAYnnB,EAAI,GAAIA,EAAI,GAAIulB,GAAmB4B,EAAY3/B,EAAM,GAAIA,EAAM,GAAI+9B,IAnNX,EAC3E3O,EAAMsR,SAAWxB,EAsMrB,SAAqBl/B,EAAOwY,GACxB,OAAOinB,EAASjnB,EAAI,GAAIA,EAAI,GAAIulB,GAAmB0B,EAASz/B,EAAM,GAAIA,EAAM,GAAI+9B,EACpF,CAxMqC4C,CAAYzB,EAAcT,SAAUA,GAAY,EAEjFrP,EAAMwR,YAAe9B,EAAQiB,UAAsC3Q,EAAMqP,SAASr3C,OAC9E03C,EAAQiB,UAAUa,YAAexR,EAAMqP,SAASr3C,OAAS03C,EAAQiB,UAAUa,YADtCxR,EAAMqP,SAASr3C,OAwC5D,SAAkC03C,EAAS1P,GACvC,IAEIyR,EAAUC,EAAWC,EAAWC,EAFhCzhB,EAAOuf,EAAQmC,cAAgB7R,EAC/BmQ,EAAYnQ,EAAMkQ,UAAY/f,EAAK+f,UAGvC,GArNe,GAqNXlQ,EAAMmP,YAA8BgB,EA1NrB,IA0NqDhgB,EAAKshB,WAAa71C,GAAY,CAClG,IAAIg1C,EAAS5Q,EAAM4Q,OAASzgB,EAAKygB,OAC7BC,EAAS7Q,EAAM6Q,OAAS1gB,EAAK0gB,OAE7BhqC,EAAIqqC,EAAYf,EAAWS,EAAQC,GACvCa,EAAY7qC,EAAE6F,EACdilC,EAAY9qC,EAAEoG,EACdwkC,EAAY7F,EAAI/kC,EAAE6F,GAAKk/B,EAAI/kC,EAAEoG,GAAMpG,EAAE6F,EAAI7F,EAAEoG,EAC3C2kC,EAAYZ,EAAaJ,EAAQC,GAEjCnB,EAAQmC,aAAe7R,CAC3B,MAEIyR,EAAWthB,EAAKshB,SAChBC,EAAYvhB,EAAKuhB,UACjBC,EAAYxhB,EAAKwhB,UACjBC,EAAYzhB,EAAKyhB,UAGrB5R,EAAMyR,SAAWA,EACjBzR,EAAM0R,UAAYA,EAClB1R,EAAM2R,UAAYA,EAClB3R,EAAM4R,UAAYA,CACtB,CAjEIE,CAAyBpC,EAAS1P,GA4MtC,IAAkBpvB,EAAOwY,EAzMrB,IAAIvxB,EAASg3C,EAAQd,QACjBb,EAAUlN,EAAM+R,SAASl6C,OAAQA,KACjCA,EAASmoC,EAAM+R,SAASl6C,QAE5BmoC,EAAMnoC,OAASA,CACnB,CAhEIm6C,CAAiBnD,EAAS7O,GAG1B6O,EAAQz1C,KAAK,eAAgB4mC,GAE7B6O,EAAQoD,UAAUjS,GAClB6O,EAAQa,QAAQiB,UAAY3Q,CAChC,CAyHA,SAAS6P,EAAqB7P,GAK1B,IAFA,IAAIqP,EAAW,GACXt3C,EAAI,EACDA,EAAIioC,EAAMqP,SAASr3C,QACtBq3C,EAASt3C,GAAK,CACVm6C,QAASvG,EAAM3L,EAAMqP,SAASt3C,GAAGm6C,SACjCC,QAASxG,EAAM3L,EAAMqP,SAASt3C,GAAGo6C,UAErCp6C,IAGJ,MAAO,CACHm4C,UAAW5sB,IACX+rB,SAAUA,EACVW,OAAQC,EAAUZ,GAClBuB,OAAQ5Q,EAAM4Q,OACdC,OAAQ7Q,EAAM6Q,OAEtB,CAOA,SAASZ,EAAUZ,GACf,IAAIM,EAAiBN,EAASr3C,OAG9B,GAAuB,IAAnB23C,EACA,MAAO,CACHjjC,EAAGi/B,EAAM0D,EAAS,GAAG6C,SACrBjlC,EAAG0+B,EAAM0D,EAAS,GAAG8C,UAK7B,IADA,IAAIzlC,EAAI,EAAGO,EAAI,EAAGlV,EAAI,EACfA,EAAI43C,GACPjjC,GAAK2iC,EAASt3C,GAAGm6C,QACjBjlC,GAAKoiC,EAASt3C,GAAGo6C,QACjBp6C,IAGJ,MAAO,CACH2U,EAAGi/B,EAAMj/B,EAAIijC,GACb1iC,EAAG0+B,EAAM1+B,EAAI0iC,GAErB,CASA,SAASuB,EAAYf,EAAWzjC,EAAGO,GAC/B,MAAO,CACHP,EAAGA,EAAIyjC,GAAa,EACpBljC,EAAGA,EAAIkjC,GAAa,EAE5B,CAQA,SAASa,EAAatkC,EAAGO,GACrB,OAAIP,IAAMO,EAzTO,EA6Tb2+B,EAAIl/B,IAAMk/B,EAAI3+B,GACPP,EAAI,EA7TE,EACC,EA8TXO,EAAI,EA7TI,EACE,EA6TrB,CASA,SAASsjC,EAAY6B,EAAIC,EAAIv6C,GACpBA,IACDA,EAAQ42C,GAEZ,IAAIhiC,EAAI2lC,EAAGv6C,EAAM,IAAMs6C,EAAGt6C,EAAM,IAC5BmV,EAAIolC,EAAGv6C,EAAM,IAAMs6C,EAAGt6C,EAAM,IAEhC,OAAO6R,KAAK2oC,KAAM5lC,EAAIA,EAAMO,EAAIA,EACpC,CASA,SAASojC,EAAS+B,EAAIC,EAAIv6C,GACjBA,IACDA,EAAQ42C,GAEZ,IAAIhiC,EAAI2lC,EAAGv6C,EAAM,IAAMs6C,EAAGt6C,EAAM,IAC5BmV,EAAIolC,EAAGv6C,EAAM,IAAMs6C,EAAGt6C,EAAM,IAChC,OAA0B,IAAnB6R,KAAK4oC,MAAMtlC,EAAGP,GAAW/C,KAAK6oC,EACzC,CA3TA5D,EAAMv1C,UAAY,CAKdJ,QAAS,WAAa,EAKtB8pC,KAAM,WACFpqC,KAAK85C,MAAQ3F,EAAkBn0C,KAAKo1C,QAASp1C,KAAK85C,KAAM95C,KAAKo2C,YAC7Dp2C,KAAK+5C,UAAY5F,EAAkBn0C,KAAKd,OAAQc,KAAK+5C,SAAU/5C,KAAKo2C,YACpEp2C,KAAKg6C,OAAS7F,EAAkBgB,EAAoBn1C,KAAKo1C,SAAUp1C,KAAKg6C,MAAOh6C,KAAKo2C,WACxF,EAKAz7B,QAAS,WACL3a,KAAK85C,MAAQxF,EAAqBt0C,KAAKo1C,QAASp1C,KAAK85C,KAAM95C,KAAKo2C,YAChEp2C,KAAK+5C,UAAYzF,EAAqBt0C,KAAKd,OAAQc,KAAK+5C,SAAU/5C,KAAKo2C,YACvEp2C,KAAKg6C,OAAS1F,EAAqBa,EAAoBn1C,KAAKo1C,SAAUp1C,KAAKg6C,MAAOh6C,KAAKo2C,WAC3F,GA2TJ,IAAI6D,EAAkB,CAClBj9B,UA/Xc,EAgYdhG,UA/Xa,EAgYbkjC,QA/XY,GAkYZC,EAAuB,YACvBC,EAAsB,oBAO1B,SAASC,KACLr6C,KAAK85C,KAAOK,EACZn6C,KAAKg6C,MAAQI,EAEbp6C,KAAKs6C,SAAU,EAEfrE,EAAMzuC,MAAMxH,KAAMgD,UACtB,CAEAywC,EAAQ4G,GAAYpE,EAAO,CAKvB31C,QAAS,SAAmB+1C,GACxB,IAAIG,EAAYyD,EAAgB5D,EAAG3wC,MA3ZzB,EA8ZN8wC,GAAyC,IAAdH,EAAGkE,SAC9Bv6C,KAAKs6C,SAAU,GA9ZV,EAiaL9D,GAAuC,IAAbH,EAAGmE,QAC7BhE,EAjaI,GAqaHx2C,KAAKs6C,UAraF,EAyaJ9D,IACAx2C,KAAKs6C,SAAU,GAGnBt6C,KAAKksB,SAASlsB,KAAKk2C,QAASM,EAAW,CACnCE,SAAU,CAACL,GACXO,gBAAiB,CAACP,GAClBoE,YAAa7E,EACbwD,SAAU/C,IAElB,IAGJ,IAAIqE,GAAoB,CACpBC,YAzbc,EA0bdC,YAzba,EA0bbC,UAzbY,EA0bZC,cAzbe,EA0bfC,WA1be,GA8bfC,GAAyB,CACzB,EAAGrF,EACH,EAzciB,MA0cjB,EAAGC,EACH,EAzcoB,UA4cpBqF,GAAyB,cACzBC,GAAwB,sCAa5B,SAASC,KACLn7C,KAAK85C,KAAOmB,GACZj7C,KAAKg6C,MAAQkB,GAEbjF,EAAMzuC,MAAMxH,KAAMgD,WAElBhD,KAAK8gC,MAAS9gC,KAAKk2C,QAAQa,QAAQqE,cAAgB,EACvD,CAjBIh6C,EAAOi6C,iBAAmBj6C,EAAOk6C,eACjCL,GAAyB,gBACzBC,GAAwB,6CAiB5BzH,EAAQ0H,GAAmBlF,EAAO,CAK9B31C,QAAS,SAAmB+1C,GACxB,IAAIvV,EAAQ9gC,KAAK8gC,MACbya,GAAgB,EAEhBC,EAAsBnF,EAAG3wC,KAAKqb,cAAc9e,QAAQ,KAAM,IAC1Du0C,EAAYkE,GAAkBc,GAC9Bf,EAAcO,GAAuB3E,EAAGoE,cAAgBpE,EAAGoE,YAE3DgB,EAAWhB,GAAe9E,EAG1B+F,EAAahH,EAAQ5T,EAAOuV,EAAGsF,UAAW,aA/epC,EAkfNnF,IAA0C,IAAdH,EAAGkE,QAAgBkB,GAC3CC,EAAa,IACb5a,EAAMnkC,KAAK05C,GACXqF,EAAa5a,EAAMzhC,OAAS,GAEb,GAAZm3C,IACP+E,GAAgB,GAIhBG,EAAa,IAKjB5a,EAAM4a,GAAcrF,EAEpBr2C,KAAKksB,SAASlsB,KAAKk2C,QAASM,EAAW,CACnCE,SAAU5V,EACV8V,gBAAiB,CAACP,GAClBoE,YAAaA,EACbrB,SAAU/C,IAGVkF,GAEAza,EAAM/tB,OAAO2oC,EAAY,GAEjC,IAGJ,IAAIE,GAAyB,CACzBC,WAlhBc,EAmhBdr/B,UAlhBa,EAmhBbs/B,SAlhBY,EAmhBZC,YAlhBe,GAqhBfC,GAA6B,aAC7BC,GAA6B,4CAOjC,SAASC,KACLl8C,KAAK+5C,SAAWiC,GAChBh8C,KAAKg6C,MAAQiC,GACbj8C,KAAKm8C,SAAU,EAEflG,EAAMzuC,MAAMxH,KAAMgD,UACtB,CAqCA,SAASo5C,GAAuB/F,EAAI3wC,GAChC,IAAI4c,EAAMsK,EAAQypB,EAAGgG,SACjBC,EAAU1vB,EAAQypB,EAAGkG,gBAMzB,OAJW,GAAP72C,IACA4c,EAAMsyB,EAAYtyB,EAAIvhB,OAAOu7C,GAAU,cAAc,IAGlD,CAACh6B,EAAKg6B,EACjB,CA5CA7I,EAAQyI,GAAkBjG,EAAO,CAC7B31C,QAAS,SAAmB+1C,GACxB,IAAI3wC,EAAOk2C,GAAuBvF,EAAG3wC,MAOrC,GAjjBU,IA6iBNA,IACA1F,KAAKm8C,SAAU,GAGdn8C,KAAKm8C,QAAV,CAIA,IAAIE,EAAUD,GAAuB1vC,KAAK1M,KAAMq2C,EAAI3wC,GAGzC,GAAPA,GAAqC22C,EAAQ,GAAGh9C,OAASg9C,EAAQ,GAAGh9C,QAAW,IAC/EW,KAAKm8C,SAAU,GAGnBn8C,KAAKksB,SAASlsB,KAAKk2C,QAASxwC,EAAM,CAC9BgxC,SAAU2F,EAAQ,GAClBzF,gBAAiByF,EAAQ,GACzB5B,YAAa9E,EACbyD,SAAU/C,GAbd,CAeJ,IAoBJ,IAAImG,GAAkB,CAClBX,WAvlBc,EAwlBdr/B,UAvlBa,EAwlBbs/B,SAvlBY,EAwlBZC,YAvlBe,GA0lBfU,GAAsB,4CAO1B,SAASC,KACL18C,KAAK+5C,SAAW0C,GAChBz8C,KAAK28C,UAAY,CAAC,EAElB1G,EAAMzuC,MAAMxH,KAAMgD,UACtB,CAyBA,SAAS45C,GAAWvG,EAAI3wC,GACpB,IAAIm3C,EAAajwB,EAAQypB,EAAGgG,SACxBM,EAAY38C,KAAK28C,UAGrB,GAAW,EAAPj3C,GAA2D,IAAtBm3C,EAAWx9C,OAEhD,OADAs9C,EAAUE,EAAW,GAAGxqC,aAAc,EAC/B,CAACwqC,EAAYA,GAGxB,IAAIz9C,EACA09C,EACAP,EAAiB3vB,EAAQypB,EAAGkG,gBAC5BQ,EAAuB,GACvB79C,EAASc,KAAKd,OAQlB,GALA49C,EAAgBD,EAAW77C,QAAO,SAASg8C,GACvC,OAAOzI,EAAUyI,EAAM99C,OAAQA,EACnC,IArpBc,IAwpBVwG,EAEA,IADAtG,EAAI,EACGA,EAAI09C,EAAcz9C,QACrBs9C,EAAUG,EAAc19C,GAAGiT,aAAc,EACzCjT,IAMR,IADAA,EAAI,EACGA,EAAIm9C,EAAel9C,QAClBs9C,EAAUJ,EAAen9C,GAAGiT,aAC5B0qC,EAAqBpgD,KAAK4/C,EAAen9C,IAIlC,GAAPsG,UACOi3C,EAAUJ,EAAen9C,GAAGiT,YAEvCjT,IAGJ,OAAK29C,EAAqB19C,OAInB,CAEHu1C,EAAYkI,EAAc/7C,OAAOg8C,GAAuB,cAAc,GACtEA,QAPJ,CASJ,CA5EAtJ,EAAQiJ,GAAYzG,EAAO,CACvB31C,QAAS,SAAoB+1C,GACzB,IAAI3wC,EAAO82C,GAAgBnG,EAAG3wC,MAC1B22C,EAAUO,GAAWlwC,KAAK1M,KAAMq2C,EAAI3wC,GACnC22C,GAILr8C,KAAKksB,SAASlsB,KAAKk2C,QAASxwC,EAAM,CAC9BgxC,SAAU2F,EAAQ,GAClBzF,gBAAiByF,EAAQ,GACzB5B,YAAa9E,EACbyD,SAAU/C,GAElB,IA6EJ,SAAS4G,KACLhH,EAAMzuC,MAAMxH,KAAMgD,WAElB,IAAI1C,EAAU6yC,EAAOnzC,KAAKM,QAASN,MACnCA,KAAKg9C,MAAQ,IAAIN,GAAW18C,KAAKk2C,QAAS51C,GAC1CN,KAAKk9C,MAAQ,IAAI7C,GAAWr6C,KAAKk2C,QAAS51C,GAE1CN,KAAKm9C,aAAe,KACpBn9C,KAAKo9C,YAAc,EACvB,CAoCA,SAASC,GAAc7G,EAAW8G,GAnvBhB,EAovBV9G,GACAx2C,KAAKm9C,aAAeG,EAAU1G,gBAAgB,GAAGvkC,WACjDkrC,GAAa7wC,KAAK1M,KAAMs9C,IACL,GAAZ9G,GACP+G,GAAa7wC,KAAK1M,KAAMs9C,EAEhC,CAEA,SAASC,GAAaD,GAClB,IAAIN,EAAQM,EAAU1G,gBAAgB,GAEtC,GAAIoG,EAAM3qC,aAAerS,KAAKm9C,aAAc,CACxC,IAAIK,EAAY,CAACzpC,EAAGipC,EAAMzD,QAASjlC,EAAG0oC,EAAMxD,SAC5Cx5C,KAAKo9C,YAAYzgD,KAAK6gD,GACtB,IAAIC,EAAMz9C,KAAKo9C,YAOfjlC,YANsB,WAClB,IAAI/Y,EAAIq+C,EAAI33C,QAAQ03C,GAChBp+C,GAAK,GACLq+C,EAAI1qC,OAAO3T,EAAG,EAEtB,GArEY,KAuEhB,CACJ,CAEA,SAASs+C,GAAiBJ,GAEtB,IADA,IAAIvpC,EAAIupC,EAAUlE,SAASG,QAASjlC,EAAIgpC,EAAUlE,SAASI,QAClDp6C,EAAI,EAAGA,EAAIY,KAAKo9C,YAAY/9C,OAAQD,IAAK,CAC9C,IAAIkH,EAAItG,KAAKo9C,YAAYh+C,GACrBu+C,EAAK3sC,KAAKiiC,IAAIl/B,EAAIzN,EAAEyN,GAAI6pC,EAAK5sC,KAAKiiC,IAAI3+B,EAAIhO,EAAEgO,GAChD,GAAIqpC,GA9ES,IA8EeC,GA9Ef,GA+ET,OAAO,CAEf,CACA,OAAO,CACX,CAtEAnK,EAAQwJ,GAAiBhH,EAAO,CAO5B31C,QAAS,SAAoB41C,EAAS2H,EAAYC,GAC9C,IAAIrC,EAAWqC,EAAUrD,aAAe9E,EACpCoI,EAAWD,EAAUrD,aAAe7E,EAExC,KAAImI,GAAWD,EAAUE,oBAAsBF,EAAUE,mBAAmBC,kBAA5E,CAKA,GAAIxC,EACA4B,GAAc3wC,KAAK1M,KAAM69C,EAAYC,QAClC,GAAIC,GAAWL,GAAiBhxC,KAAK1M,KAAM89C,GAC9C,OAGJ99C,KAAKksB,SAASgqB,EAAS2H,EAAYC,EATnC,CAUJ,EAKAnjC,QAAS,WACL3a,KAAKg9C,MAAMriC,UACX3a,KAAKk9C,MAAMviC,SACf,IAyCJ,IAAIujC,GAAwBpJ,EAAS/B,EAAaz9B,MAAO,eACrD6oC,GAAsBD,KAA0Bj7C,EAGhDm7C,GAAuB,UACvBC,GAAoB,OACpBC,GAA4B,eAC5BC,GAAoB,OACpBC,GAAqB,QACrBC,GAAqB,QACrBC,GA4IJ,WACI,IAAKP,GACD,OAAO,EAEX,IAAIQ,EAAW,CAAC,EACZC,EAAcx9C,EAAOy9C,KAAOz9C,EAAOy9C,IAAInsC,SAO3C,MANA,CAAC,OAAQ,eAAgB,QAAS,QAAS,cAAe,QAAQvV,SAAQ,SAAS2jB,GAI/E69B,EAAS79B,IAAO89B,GAAcx9C,EAAOy9C,IAAInsC,SAAS,eAAgBoO,EACtE,IACO69B,CACX,CAzJuBG,GASvB,SAASC,GAAY7I,EAASl6C,GAC1BgE,KAAKk2C,QAAUA,EACfl2C,KAAKc,IAAI9E,EACb,CAEA+iD,GAAYr+C,UAAY,CAKpBI,IAAK,SAAS9E,GAENA,GAASoiD,KACTpiD,EAAQgE,KAAKg/C,WAGbb,IAAuBn+C,KAAKk2C,QAAQd,QAAQ9/B,OAASopC,GAAiB1iD,KACtEgE,KAAKk2C,QAAQd,QAAQ9/B,MAAM4oC,IAAyBliD,GAExDgE,KAAKiJ,QAAUjN,EAAM+kB,cAAc9V,MACvC,EAKA+H,OAAQ,WACJhT,KAAKc,IAAId,KAAKk2C,QAAQryC,QAAQo7C,YAClC,EAMAD,QAAS,WACL,IAAI/1C,EAAU,GAMd,OALAoqC,EAAKrzC,KAAKk2C,QAAQgJ,aAAa,SAASC,GAChCpL,EAASoL,EAAWt7C,QAAQyyC,OAAQ,CAAC6I,MACrCl2C,EAAUA,EAAQlI,OAAOo+C,EAAWC,kBAE5C,IA8DR,SAA2Bn2C,GAEvB,GAAIwrC,EAAMxrC,EAASs1C,IACf,OAAOA,GAGX,IAAIc,EAAU5K,EAAMxrC,EAASu1C,IACzBc,EAAU7K,EAAMxrC,EAASw1C,IAM7B,GAAIY,GAAWC,EACX,OAAOf,GAIX,GAAIc,GAAWC,EACX,OAAOD,EAAUb,GAAqBC,GAI1C,GAAIhK,EAAMxrC,EAASq1C,IACf,OAAOA,GAGX,OAAOD,EACX,CAzFekB,CAAkBt2C,EAAQ4I,KAAK,KAC1C,EAMA2tC,gBAAiB,SAASnY,GACtB,IAAI+R,EAAW/R,EAAM+R,SACjBH,EAAY5R,EAAM+Q,gBAGtB,GAAIp4C,KAAKk2C,QAAQa,QAAQ0I,UACrBrG,EAAS5rC,qBADb,CAKA,IAAIvE,EAAUjJ,KAAKiJ,QACfy2C,EAAUjL,EAAMxrC,EAASs1C,MAAuBG,GAAkC,KAClFY,EAAU7K,EAAMxrC,EAASw1C,MAAwBC,GAAiBD,SAClEY,EAAU5K,EAAMxrC,EAASu1C,MAAwBE,GAAiBF,SAEtE,GAAIkB,EAAS,CAGT,IAAIC,EAAyC,IAA1BtY,EAAMqP,SAASr3C,OAC9BugD,EAAgBvY,EAAMsQ,SAAW,EACjCkI,EAAiBxY,EAAMmQ,UAAY,IAEvC,GAAImI,GAAgBC,GAAiBC,EACjC,MAER,CAEA,IAAIR,IAAWC,EAKf,OAAII,GACCJ,GAj3BcQ,EAi3BH7G,GACXoG,GAAWpG,EAAYpD,EACjB71C,KAAK+/C,WAAW3G,QAH3B,CAxBA,CA6BJ,EAMA2G,WAAY,SAAS3G,GACjBp5C,KAAKk2C,QAAQa,QAAQ0I,WAAY,EACjCrG,EAAS5rC,gBACb,GAgFJ,IAMIwyC,GAAe,GAQnB,SAASC,GAAWp8C,GAChB7D,KAAK6D,QAAUrF,EAAO,CAAC,EAAGwB,KAAKrB,SAAUkF,GAAW,CAAC,GAErD7D,KAAKqR,GApgCE6jC,IAsgCPl1C,KAAKk2C,QAAU,KAGfl2C,KAAK6D,QAAQyyC,OAAStC,EAAYh0C,KAAK6D,QAAQyyC,QAAQ,GAEvDt2C,KAAK23B,MAxBY,EA0BjB33B,KAAKkgD,aAAe,CAAC,EACrBlgD,KAAKmgD,YAAc,EACvB,CAoOA,SAASC,GAASzoB,GACd,OA5PkB,GA4PdA,EACO,SA/PG,EAgQHA,EACA,MAlQK,EAmQLA,EACA,OArQG,EAsQHA,EACA,QAEJ,EACX,CAOA,SAAS0oB,GAAapH,GAClB,OAnuCiB,IAmuCbA,EACO,OAruCI,GAsuCJA,EACA,KAzuCM,GA0uCNA,EACA,OA1uCO,GA2uCPA,EACA,QAEJ,EACX,CAQA,SAASqH,GAA6BC,EAAiBpB,GACnD,IAAIjJ,EAAUiJ,EAAWjJ,QACzB,OAAIA,EACOA,EAAQh6C,IAAIqkD,GAEhBA,CACX,CAOA,SAASC,KACLP,GAAWz4C,MAAMxH,KAAMgD,UAC3B,CA4DA,SAASy9C,KACLD,GAAeh5C,MAAMxH,KAAMgD,WAE3BhD,KAAK0gD,GAAK,KACV1gD,KAAK2gD,GAAK,IACd,CA2EA,SAASC,KACLJ,GAAeh5C,MAAMxH,KAAMgD,UAC/B,CAqCA,SAAS69C,KACLZ,GAAWz4C,MAAMxH,KAAMgD,WAEvBhD,KAAK8gD,OAAS,KACd9gD,KAAK+gD,OAAS,IAClB,CAkEA,SAASC,KACLR,GAAeh5C,MAAMxH,KAAMgD,UAC/B,CA6BA,SAASi+C,KACLT,GAAeh5C,MAAMxH,KAAMgD,UAC/B,CA0DA,SAASk+C,KACLjB,GAAWz4C,MAAMxH,KAAMgD,WAIvBhD,KAAKmhD,OAAQ,EACbnhD,KAAKohD,SAAU,EAEfphD,KAAK8gD,OAAS,KACd9gD,KAAK+gD,OAAS,KACd/gD,KAAKsD,MAAQ,CACjB,CAoGA,SAAS+9C,GAAOjM,EAASvxC,GAGrB,OAFAA,EAAUA,GAAW,CAAC,GACdq7C,YAAclL,EAAYnwC,EAAQq7C,YAAamC,GAAO1iD,SAAS2iD,QAChE,IAAIC,GAAQnM,EAASvxC,EAChC,CA9tBAo8C,GAAWv/C,UAAY,CAKnB/B,SAAU,CAAC,EAOXmC,IAAK,SAAS+C,GAKV,OAJArF,EAAOwB,KAAK6D,QAASA,GAGrB7D,KAAKk2C,SAAWl2C,KAAKk2C,QAAQ+I,YAAYjsC,SAClChT,IACX,EAOAwhD,cAAe,SAASjB,GACpB,GAAInN,EAAemN,EAAiB,gBAAiBvgD,MACjD,OAAOA,KAGX,IAAIkgD,EAAelgD,KAAKkgD,aAMxB,OAJKA,GADLK,EAAkBD,GAA6BC,EAAiBvgD,OAC9BqR,MAC9B6uC,EAAaK,EAAgBlvC,IAAMkvC,EACnCA,EAAgBiB,cAAcxhD,OAE3BA,IACX,EAOAyhD,kBAAmB,SAASlB,GACxB,OAAInN,EAAemN,EAAiB,oBAAqBvgD,QAIzDugD,EAAkBD,GAA6BC,EAAiBvgD,aACzDA,KAAKkgD,aAAaK,EAAgBlvC,KAJ9BrR,IAMf,EAOA0hD,eAAgB,SAASnB,GACrB,GAAInN,EAAemN,EAAiB,iBAAkBvgD,MAClD,OAAOA,KAGX,IAAImgD,EAAcngD,KAAKmgD,YAMvB,OAJ+C,IAA3CzL,EAAQyL,EADZI,EAAkBD,GAA6BC,EAAiBvgD,SAE5DmgD,EAAYxjD,KAAK4jD,GACjBA,EAAgBmB,eAAe1hD,OAE5BA,IACX,EAOA2hD,mBAAoB,SAASpB,GACzB,GAAInN,EAAemN,EAAiB,qBAAsBvgD,MACtD,OAAOA,KAGXugD,EAAkBD,GAA6BC,EAAiBvgD,MAChE,IAAIqjB,EAAQqxB,EAAQ10C,KAAKmgD,YAAaI,GAItC,OAHIl9B,GAAS,GACTrjB,KAAKmgD,YAAYptC,OAAOsQ,EAAO,GAE5BrjB,IACX,EAMA4hD,mBAAoB,WAChB,OAAO5hD,KAAKmgD,YAAY9gD,OAAS,CACrC,EAOAwiD,iBAAkB,SAAStB,GACvB,QAASvgD,KAAKkgD,aAAaK,EAAgBlvC,GAC/C,EAOA5Q,KAAM,SAAS4mC,GACX,IAAIjhC,EAAOpG,KACP23B,EAAQ33B,KAAK23B,MAEjB,SAASl3B,EAAKD,GACV4F,EAAK8vC,QAAQz1C,KAAKD,EAAO6mC,EAC7B,CAGI1P,EArJM,GAsJNl3B,EAAK2F,EAAKvC,QAAQrD,MAAQ4/C,GAASzoB,IAGvCl3B,EAAK2F,EAAKvC,QAAQrD,OAEd6mC,EAAMya,iBACNrhD,EAAK4mC,EAAMya,iBAIXnqB,GAhKM,GAiKNl3B,EAAK2F,EAAKvC,QAAQrD,MAAQ4/C,GAASzoB,GAE3C,EAQAoqB,QAAS,SAAS1a,GACd,GAAIrnC,KAAKgiD,UACL,OAAOhiD,KAAKS,KAAK4mC,GAGrBrnC,KAAK23B,MAAQqoB,EACjB,EAMAgC,QAAS,WAEL,IADA,IAAI5iD,EAAI,EACDA,EAAIY,KAAKmgD,YAAY9gD,QAAQ,CAChC,KAAkC,GAA5BW,KAAKmgD,YAAY/gD,GAAGu4B,OACtB,OAAO,EAEXv4B,GACJ,CACA,OAAO,CACX,EAMAk6C,UAAW,SAASwE,GAGhB,IAAImE,EAAiBzjD,EAAO,CAAC,EAAGs/C,GAGhC,IAAK/J,EAAS/zC,KAAK6D,QAAQyyC,OAAQ,CAACt2C,KAAMiiD,IAGtC,OAFAjiD,KAAKkiD,aACLliD,KAAK23B,MAAQqoB,IAKA,GAAbhgD,KAAK23B,QACL33B,KAAK23B,MAvNI,GA0Nb33B,KAAK23B,MAAQ33B,KAAK8nB,QAAQm6B,GAIT,GAAbjiD,KAAK23B,OACL33B,KAAK+hD,QAAQE,EAErB,EASAn6B,QAAS,SAASg2B,GAAa,EAO/BsB,eAAgB,WAAa,EAO7B8C,MAAO,WAAa,GA8DxBzO,EAAQ+M,GAAgBP,GAAY,CAKhCthD,SAAU,CAKN+3C,SAAU,GASdyL,SAAU,SAAS9a,GACf,IAAI+a,EAAiBpiD,KAAK6D,QAAQ6yC,SAClC,OAA0B,IAAnB0L,GAAwB/a,EAAMqP,SAASr3C,SAAW+iD,CAC7D,EAQAt6B,QAAS,SAASuf,GACd,IAAI1P,EAAQ33B,KAAK23B,MACb6e,EAAYnP,EAAMmP,UAElB6L,EAAuB,EAAR1qB,EACf2qB,EAAUtiD,KAAKmiD,SAAS9a,GAG5B,OAAIgb,IAlzCO,EAkzCU7L,IAA6B8L,GAvVpC,GAwVH3qB,EACA0qB,GAAgBC,EArzCnB,EAszCA9L,EA5VE,EA6VK7e,EA/VL,EAgWOA,EA/VL,EAkWDA,EAnWD,EAqWHqoB,EACX,IAgBJvM,EAAQgN,GAAeD,GAAgB,CAKnC7hD,SAAU,CACN6B,MAAO,MACP+hD,UAAW,GACX7L,SAAU,EACVuC,UA50CYuJ,IA+0ChBpD,eAAgB,WACZ,IAAInG,EAAYj5C,KAAK6D,QAAQo1C,UACzBhwC,EAAU,GAOd,OA11CmB62C,EAo1Cf7G,GACAhwC,EAAQtM,KAAK8hD,IAEbxF,EAAYpD,GACZ5sC,EAAQtM,KAAK6hD,IAEVv1C,CACX,EAEAw5C,cAAe,SAASpb,GACpB,IAAIxjC,EAAU7D,KAAK6D,QACf6+C,GAAW,EACX/K,EAAWtQ,EAAMsQ,SACjBsB,EAAY5R,EAAM4R,UAClBllC,EAAIszB,EAAM4Q,OACV3jC,EAAI+yB,EAAM6Q,OAed,OAZMe,EAAYp1C,EAAQo1C,YAt2CP6G,EAu2CXj8C,EAAQo1C,WACRA,EAAmB,IAANllC,EA92CR,EA82CqCA,EAAI,EA72CzC,EACC,EA62CN2uC,EAAW3uC,GAAK/T,KAAK0gD,GACrB/I,EAAW3mC,KAAKiiC,IAAI5L,EAAM4Q,UAE1BgB,EAAmB,IAAN3kC,EAl3CR,EAk3CqCA,EAAI,EA/2C3C,EACE,GA+2CLouC,EAAWpuC,GAAKtU,KAAK2gD,GACrBhJ,EAAW3mC,KAAKiiC,IAAI5L,EAAM6Q,UAGlC7Q,EAAM4R,UAAYA,EACXyJ,GAAY/K,EAAW9zC,EAAQ0+C,WAAatJ,EAAYp1C,EAAQo1C,SAC3E,EAEAkJ,SAAU,SAAS9a,GACf,OAAOmZ,GAAe9/C,UAAUyhD,SAASz1C,KAAK1M,KAAMqnC,KAva1C,EAwaLrnC,KAAK23B,SAxaA,EAwa0B33B,KAAK23B,QAAwB33B,KAAKyiD,cAAcpb,GACxF,EAEA5mC,KAAM,SAAS4mC,GAEXrnC,KAAK0gD,GAAKrZ,EAAM4Q,OAChBj4C,KAAK2gD,GAAKtZ,EAAM6Q,OAEhB,IAAIe,EAAYoH,GAAahZ,EAAM4R,WAE/BA,IACA5R,EAAMya,gBAAkB9hD,KAAK6D,QAAQrD,MAAQy4C,GAEjDj5C,KAAK8zC,OAAOrzC,KAAKiM,KAAK1M,KAAMqnC,EAChC,IAaJoM,EAAQmN,GAAiBJ,GAAgB,CAKrC7hD,SAAU,CACN6B,MAAO,QACP+hD,UAAW,EACX7L,SAAU,GAGd0I,eAAgB,WACZ,MAAO,CAACb,GACZ,EAEA4D,SAAU,SAAS9a,GACf,OAAOrnC,KAAK8zC,OAAOqO,SAASz1C,KAAK1M,KAAMqnC,KAClCr2B,KAAKiiC,IAAI5L,EAAMqR,MAAQ,GAAK14C,KAAK6D,QAAQ0+C,WApdpC,EAodiDviD,KAAK23B,MACpE,EAEAl3B,KAAM,SAAS4mC,GACX,GAAoB,IAAhBA,EAAMqR,MAAa,CACnB,IAAIiK,EAAQtb,EAAMqR,MAAQ,EAAI,KAAO,MACrCrR,EAAMya,gBAAkB9hD,KAAK6D,QAAQrD,MAAQmiD,CACjD,CACA3iD,KAAK8zC,OAAOrzC,KAAKiM,KAAK1M,KAAMqnC,EAChC,IAgBJoM,EAAQoN,GAAiBZ,GAAY,CAKjCthD,SAAU,CACN6B,MAAO,QACPk2C,SAAU,EACV1kB,KAAM,IACNuwB,UAAW,GAGfnD,eAAgB,WACZ,MAAO,CAACf,GACZ,EAEAv2B,QAAS,SAASuf,GACd,IAAIxjC,EAAU7D,KAAK6D,QACf++C,EAAgBvb,EAAMqP,SAASr3C,SAAWwE,EAAQ6yC,SAClDmM,EAAgBxb,EAAMsQ,SAAW9zC,EAAQ0+C,UACzCO,EAAYzb,EAAMmQ,UAAY3zC,EAAQmuB,KAM1C,GAJAhyB,KAAK+gD,OAAS1Z,GAITwb,IAAkBD,GAAoC,GAAlBvb,EAAMmP,YAA2CsM,EACtF9iD,KAAKkiD,aACF,GAn+CG,EAm+CC7a,EAAMmP,UACbx2C,KAAKkiD,QACLliD,KAAK8gD,OAAS5N,GAAkB,WAC5BlzC,KAAK23B,MA1gBH,EA2gBF33B,KAAK+hD,SACT,GAAGl+C,EAAQmuB,KAAMhyB,WACd,GAv+CC,EAu+CGqnC,EAAMmP,UACb,OA9gBM,EAghBV,OAAOwJ,EACX,EAEAkC,MAAO,WACH7pC,aAAarY,KAAK8gD,OACtB,EAEArgD,KAAM,SAAS4mC,GAvhBD,IAwhBNrnC,KAAK23B,QAIL0P,GAt/CI,EAs/CMA,EAAMmP,UAChBx2C,KAAKk2C,QAAQz1C,KAAKT,KAAK6D,QAAQrD,MAAQ,KAAM6mC,IAE7CrnC,KAAK+gD,OAAOxJ,UAAY5sB,IACxB3qB,KAAKk2C,QAAQz1C,KAAKT,KAAK6D,QAAQrD,MAAOR,KAAK+gD,SAEnD,IAaJtN,EAAQuN,GAAkBR,GAAgB,CAKtC7hD,SAAU,CACN6B,MAAO,SACP+hD,UAAW,EACX7L,SAAU,GAGd0I,eAAgB,WACZ,MAAO,CAACb,GACZ,EAEA4D,SAAU,SAAS9a,GACf,OAAOrnC,KAAK8zC,OAAOqO,SAASz1C,KAAK1M,KAAMqnC,KAClCr2B,KAAKiiC,IAAI5L,EAAMsR,UAAY34C,KAAK6D,QAAQ0+C,WAlkBnC,EAkkBgDviD,KAAK23B,MACnE,IAaJ8b,EAAQwN,GAAiBT,GAAgB,CAKrC7hD,SAAU,CACN6B,MAAO,QACP+hD,UAAW,GACXzJ,SAAU,GACVG,UAAWuJ,GACX9L,SAAU,GAGd0I,eAAgB,WACZ,OAAOqB,GAAc//C,UAAU0+C,eAAe1yC,KAAK1M,KACvD,EAEAmiD,SAAU,SAAS9a,GACf,IACIyR,EADAG,EAAYj5C,KAAK6D,QAAQo1C,UAW7B,OARgB,GAAZA,EACAH,EAAWzR,EAAMiR,gBArjDFwH,EAsjDR7G,EACPH,EAAWzR,EAAMmR,iBACVS,EAAYpD,IACnBiD,EAAWzR,EAAMoR,kBAGdz4C,KAAK8zC,OAAOqO,SAASz1C,KAAK1M,KAAMqnC,IACnC4R,EAAY5R,EAAM+Q,iBAClB/Q,EAAMsQ,SAAW33C,KAAK6D,QAAQ0+C,WAC9Blb,EAAMwR,aAAe74C,KAAK6D,QAAQ6yC,UAClCzD,EAAI6F,GAAY94C,KAAK6D,QAAQi1C,UAzkDzB,EAykDqCzR,EAAMmP,SACvD,EAEA/1C,KAAM,SAAS4mC,GACX,IAAI4R,EAAYoH,GAAahZ,EAAM+Q,iBAC/Ba,GACAj5C,KAAKk2C,QAAQz1C,KAAKT,KAAK6D,QAAQrD,MAAQy4C,EAAW5R,GAGtDrnC,KAAKk2C,QAAQz1C,KAAKT,KAAK6D,QAAQrD,MAAO6mC,EAC1C,IA0BJoM,EAAQyN,GAAejB,GAAY,CAK/BthD,SAAU,CACN6B,MAAO,MACPk2C,SAAU,EACVqM,KAAM,EACNC,SAAU,IACVhxB,KAAM,IACNuwB,UAAW,EACXU,aAAc,IAGlB7D,eAAgB,WACZ,MAAO,CAACd,GACZ,EAEAx2B,QAAS,SAASuf,GACd,IAAIxjC,EAAU7D,KAAK6D,QAEf++C,EAAgBvb,EAAMqP,SAASr3C,SAAWwE,EAAQ6yC,SAClDmM,EAAgBxb,EAAMsQ,SAAW9zC,EAAQ0+C,UACzCW,EAAiB7b,EAAMmQ,UAAY3zC,EAAQmuB,KAI/C,GAFAhyB,KAAKkiD,QAzoDK,EA2oDL7a,EAAMmP,WAA4C,IAAfx2C,KAAKsD,MACzC,OAAOtD,KAAKmjD,cAKhB,GAAIN,GAAiBK,GAAkBN,EAAe,CAClD,GAhpDI,GAgpDAvb,EAAMmP,UACN,OAAOx2C,KAAKmjD,cAGhB,IAAIC,GAAgBpjD,KAAKmhD,OAAS9Z,EAAMkQ,UAAYv3C,KAAKmhD,MAAQt9C,EAAQm/C,SACrEK,GAAiBrjD,KAAKohD,SAAWxJ,EAAY53C,KAAKohD,QAAS/Z,EAAMgQ,QAAUxzC,EAAQo/C,aAgBvF,GAdAjjD,KAAKmhD,MAAQ9Z,EAAMkQ,UACnBv3C,KAAKohD,QAAU/Z,EAAMgQ,OAEhBgM,GAAkBD,EAGnBpjD,KAAKsD,OAAS,EAFdtD,KAAKsD,MAAQ,EAKjBtD,KAAK+gD,OAAS1Z,EAKG,IADFrnC,KAAKsD,MAAQO,EAAQk/C,KAIhC,OAAK/iD,KAAK4hD,sBAGN5hD,KAAK8gD,OAAS5N,GAAkB,WAC5BlzC,KAAK23B,MAltBX,EAmtBM33B,KAAK+hD,SACT,GAAGl+C,EAAQm/C,SAAUhjD,MAttBvB,GAEA,CAwtBV,CACA,OAAOggD,EACX,EAEAmD,YAAa,WAIT,OAHAnjD,KAAK8gD,OAAS5N,GAAkB,WAC5BlzC,KAAK23B,MAAQqoB,EACjB,GAAGhgD,KAAK6D,QAAQm/C,SAAUhjD,MACnBggD,EACX,EAEAkC,MAAO,WACH7pC,aAAarY,KAAK8gD,OACtB,EAEArgD,KAAM,WAvuBQ,GAwuBNT,KAAK23B,QACL33B,KAAK+gD,OAAOuC,SAAWtjD,KAAKsD,MAC5BtD,KAAKk2C,QAAQz1C,KAAKT,KAAK6D,QAAQrD,MAAOR,KAAK+gD,QAEnD,IAkBJM,GAAOl/B,QAAU,QAMjBk/B,GAAO1iD,SAAW,CAOd4kD,WAAW,EAQXtE,YAAab,GAMb9H,QAAQ,EASRH,YAAa,KAObqN,WAAY,KAOZlC,OAAQ,CAEJ,CAACN,GAAkB,CAAC1K,QAAQ,IAC5B,CAACsK,GAAiB,CAACtK,QAAQ,GAAQ,CAAC,WACpC,CAAC2K,GAAiB,CAAChI,UArwDA6G,IAswDnB,CAACW,GAAe,CAACxH,UAtwDE6G,GAswDgC,CAAC,UACpD,CAACoB,IACD,CAACA,GAAe,CAAC1gD,MAAO,YAAauiD,KAAM,GAAI,CAAC,QAChD,CAAClC,KAQL4C,SAAU,CAMNC,WAAY,OAOZC,YAAa,OASbC,aAAc,OAOdC,eAAgB,OAOhBC,SAAU,OAQVC,kBAAmB,kBAa3B,SAASxC,GAAQnM,EAASvxC,GAzwD1B,IAA6BqyC,EA0wDzBl2C,KAAK6D,QAAUrF,EAAO,CAAC,EAAG6iD,GAAO1iD,SAAUkF,GAAW,CAAC,GAEvD7D,KAAK6D,QAAQsyC,YAAcn2C,KAAK6D,QAAQsyC,aAAef,EAEvDp1C,KAAKa,SAAW,CAAC,EACjBb,KAAK+2C,QAAU,CAAC,EAChB/2C,KAAKk/C,YAAc,GACnBl/C,KAAKgkD,YAAc,CAAC,EAEpBhkD,KAAKo1C,QAAUA,EACfp1C,KAAKqnC,MArwDE,KAfkB6O,EAoxDQl2C,MAlxDR6D,QAAQ2/C,aAItB/N,EACA0F,GACAzF,EACAgH,GACClH,EAGDyH,GAFA5C,KAIOnE,EAASK,GAswD3Bv2C,KAAKi/C,YAAc,IAAIF,GAAY/+C,KAAMA,KAAK6D,QAAQo7C,aAEtDgF,GAAejkD,MAAM,GAErBqzC,EAAKrzC,KAAK6D,QAAQq7C,aAAa,SAASlS,GACpC,IAAImS,EAAan/C,KAAKkN,IAAI,IAAK8/B,EAAK,GAAIA,EAAK,KAC7CA,EAAK,IAAMmS,EAAWqC,cAAcxU,EAAK,IACzCA,EAAK,IAAMmS,EAAWuC,eAAe1U,EAAK,GAC9C,GAAGhtC,KACP,CA2PA,SAASikD,GAAe/N,EAAShpC,GAC7B,IAII+Z,EAJAmuB,EAAUc,EAAQd,QACjBA,EAAQ9/B,QAIb+9B,EAAK6C,EAAQryC,QAAQ4/C,UAAU,SAASznD,EAAOqE,GAC3C4mB,EAAO6tB,EAASM,EAAQ9/B,MAAOjV,GAC3B6M,GACAgpC,EAAQ8N,YAAY/8B,GAAQmuB,EAAQ9/B,MAAM2R,GAC1CmuB,EAAQ9/B,MAAM2R,GAAQjrB,GAEtBo5C,EAAQ9/B,MAAM2R,GAAQivB,EAAQ8N,YAAY/8B,IAAS,EAE3D,IACK/Z,IACDgpC,EAAQ8N,YAAc,CAAC,GAE/B,CA3QAzC,GAAQ7gD,UAAY,CAMhBI,IAAK,SAAS+C,GAaV,OAZArF,EAAOwB,KAAK6D,QAASA,GAGjBA,EAAQo7C,aACRj/C,KAAKi/C,YAAYjsC,SAEjBnP,EAAQsyC,cAERn2C,KAAKqnC,MAAM1sB,UACX3a,KAAKqnC,MAAMnoC,OAAS2E,EAAQsyC,YAC5Bn2C,KAAKqnC,MAAM+C,QAERpqC,IACX,EAQAmjC,KAAM,SAAS+gB,GACXlkD,KAAK+2C,QAAQjU,QAAUohB,EA5Db,EADP,CA8DP,EAQA5K,UAAW,SAASwE,GAChB,IAAI/G,EAAU/2C,KAAK+2C,QACnB,IAAIA,EAAQjU,QAAZ,CAOA,IAAIqc,EAFJn/C,KAAKi/C,YAAYO,gBAAgB1B,GAGjC,IAAIoB,EAAcl/C,KAAKk/C,YAKnBiF,EAAgBpN,EAAQoN,gBAIvBA,GAAkBA,GAz8Bb,EAy8B8BA,EAAcxsB,SAClDwsB,EAAgBpN,EAAQoN,cAAgB,MAI5C,IADA,IAAI/kD,EAAI,EACDA,EAAI8/C,EAAY7/C,QACnB8/C,EAAaD,EAAY9/C,GA9FnB,IAsGF23C,EAAQjU,SACHqhB,GAAiBhF,GAAcgF,IAChChF,EAAW0C,iBAAiBsC,GAGhChF,EAAW+C,QAFX/C,EAAW7F,UAAUwE,IAOpBqG,GAAoC,GAAnBhF,EAAWxnB,QAC7BwsB,EAAgBpN,EAAQoN,cAAgBhF,GAE5C//C,GA1CJ,CA4CJ,EAOAlD,IAAK,SAASijD,GACV,GAAIA,aAAsBc,GACtB,OAAOd,EAIX,IADA,IAAID,EAAcl/C,KAAKk/C,YACd9/C,EAAI,EAAGA,EAAI8/C,EAAY7/C,OAAQD,IACpC,GAAI8/C,EAAY9/C,GAAGyE,QAAQrD,OAAS2+C,EAChC,OAAOD,EAAY9/C,GAG3B,OAAO,IACX,EAQA8N,IAAK,SAASiyC,GACV,GAAI/L,EAAe+L,EAAY,MAAOn/C,MAClC,OAAOA,KAIX,IAAIokD,EAAWpkD,KAAK9D,IAAIijD,EAAWt7C,QAAQrD,OAS3C,OARI4jD,GACApkD,KAAKiN,OAAOm3C,GAGhBpkD,KAAKk/C,YAAYviD,KAAKwiD,GACtBA,EAAWjJ,QAAUl2C,KAErBA,KAAKi/C,YAAYjsC,SACVmsC,CACX,EAOAlyC,OAAQ,SAASkyC,GACb,GAAI/L,EAAe+L,EAAY,SAAUn/C,MACrC,OAAOA,KAMX,GAHAm/C,EAAan/C,KAAK9D,IAAIijD,GAGN,CACZ,IAAID,EAAcl/C,KAAKk/C,YACnB77B,EAAQqxB,EAAQwK,EAAaC,IAElB,IAAX97B,IACA67B,EAAYnsC,OAAOsQ,EAAO,GAC1BrjB,KAAKi/C,YAAYjsC,SAEzB,CAEA,OAAOhT,IACX,EAQAqV,GAAI,SAASgvC,EAAQ/jD,GACjB,GAAI+jD,IAAWphD,GAGX3C,IAAY2C,EAAhB,CAIA,IAAIpC,EAAWb,KAAKa,SAKpB,OAJAwyC,EAAKgB,EAASgQ,IAAS,SAAS7jD,GAC5BK,EAASL,GAASK,EAASL,IAAU,GACrCK,EAASL,GAAO7D,KAAK2D,EACzB,IACON,IAPP,CAQJ,EAQA0a,IAAK,SAAS2pC,EAAQ/jD,GAClB,GAAI+jD,IAAWphD,EAAf,CAIA,IAAIpC,EAAWb,KAAKa,SAQpB,OAPAwyC,EAAKgB,EAASgQ,IAAS,SAAS7jD,GACvBF,EAGDO,EAASL,IAAUK,EAASL,GAAOuS,OAAO2hC,EAAQ7zC,EAASL,GAAQF,GAAU,UAFtEO,EAASL,EAIxB,IACOR,IAVP,CAWJ,EAOAS,KAAM,SAASD,EAAO0B,GAEdlC,KAAK6D,QAAQ0/C,WAkEzB,SAAyB/iD,EAAO0B,GAC5B,IAAIoiD,EAAexnD,EAASynD,YAAY,SACxCD,EAAaE,UAAUhkD,GAAO,GAAM,GACpC8jD,EAAaG,QAAUviD,EACvBA,EAAKhD,OAAOwlD,cAAcJ,EAC9B,CAtEYK,CAAgBnkD,EAAO0B,GAI3B,IAAIrB,EAAWb,KAAKa,SAASL,IAAUR,KAAKa,SAASL,GAAOmM,QAC5D,GAAK9L,GAAaA,EAASxB,OAA3B,CAIA6C,EAAKwD,KAAOlF,EACZ0B,EAAKsL,eAAiB,WAClBtL,EAAKk3C,SAAS5rC,gBAClB,EAGA,IADA,IAAIpO,EAAI,EACDA,EAAIyB,EAASxB,QAChBwB,EAASzB,GAAG8C,GACZ9C,GAVJ,CAYJ,EAMAub,QAAS,WACL3a,KAAKo1C,SAAW6O,GAAejkD,MAAM,GAErCA,KAAKa,SAAW,CAAC,EACjBb,KAAK+2C,QAAU,CAAC,EAChB/2C,KAAKqnC,MAAM1sB,UACX3a,KAAKo1C,QAAU,IACnB,GAwCJ52C,EAAO6iD,GAAQ,CACXuD,YAtoEc,EAuoEdC,WAtoEa,EAuoEbC,UAtoEY,EAuoEZC,aAtoEe,EAwoEfC,eAlrCiB,EAmrCjBC,YAlrCc,EAmrCdC,cAlrCgB,EAmrChBC,YAlrCc,EAmrCdC,iBAnrCc,EAorCdC,gBAlrCkB,GAmrClBrF,aAAcA,GAEdsF,eA9oEiB,EA+oEjBxF,eA9oEiB,EA+oEjByF,gBA9oEkB,EA+oElBzP,aA9oEe,EA+oEf0P,eA9oEiB,GA+oEjBhD,qBA7oEuB1C,EA8oEvBjK,mBAAoBA,EACpB4P,cA7oEgBjD,GA+oEhBjB,QAASA,GACTtL,MAAOA,EACP8I,YAAaA,GAEbrC,WAAYA,GACZrC,WAAYA,GACZc,kBAAmBA,GACnB8B,gBAAiBA,GACjBf,iBAAkBA,GAElB+D,WAAYA,GACZO,eAAgBA,GAChBkF,IAAKxE,GACLyE,IAAKlF,GACLmF,MAAO3E,GACP4E,MAAOjF,GACPkF,OAAQ9E,GACR+E,MAAOlF,GAEPxrC,GAAI8+B,EACJz5B,IAAK45B,EACLjB,KAAMA,EACN7sB,MAAOA,EACPvE,OAAQA,EACRzjB,OAAQA,EACRi1C,QAASA,EACTN,OAAQA,EACR2B,SAAUA,UAKsB,IAAX1zC,EAAyBA,EAA0B,oBAATgF,KAAuBA,KAAO,CAAC,GACvFi7C,OAASA,IAGhB,aACI,OAAOA,EACV,mCAOJ,CA7kFD,CA6kFGjgD,OAAQtE,uCChlFX,IAAIkpD,EAA+B,oBAAXz5C,QAA0BA,OAC9C05C,EAAgB,EAAQ,MAE5B5/C,EAAOtK,QAAU,WAChB,MAA0B,mBAAfiqD,IACW,mBAAXz5C,SACsB,iBAAtBy5C,EAAW,SACO,iBAAlBz5C,OAAO,QAEX05C,MACR,yBCTA5/C,EAAOtK,QAAU,WAChB,GAAsB,mBAAXwQ,QAAiE,mBAAjC1Q,OAAOyL,sBAAwC,OAAO,EACjG,GAA+B,iBAApBiF,OAAOC,SAAyB,OAAO,EAElD,IAAI3O,EAAM,CAAC,EACPqoD,EAAM35C,OAAO,QACb45C,EAAStqD,OAAOqqD,GACpB,GAAmB,iBAARA,EAAoB,OAAO,EAEtC,GAA4C,oBAAxCrqD,OAAO6E,UAAUmC,SAAS6J,KAAKw5C,GAA8B,OAAO,EACxE,GAA+C,oBAA3CrqD,OAAO6E,UAAUmC,SAAS6J,KAAKy5C,GAAiC,OAAO,EAY3E,IAAKD,KADLroD,EAAIqoD,GADS,GAEDroD,EAAO,OAAO,EAC1B,GAA2B,mBAAhBhC,OAAOwL,MAAmD,IAA5BxL,OAAOwL,KAAKxJ,GAAKwB,OAAgB,OAAO,EAEjF,GAA0C,mBAA/BxD,OAAOozB,qBAAiF,IAA3CpzB,OAAOozB,oBAAoBpxB,GAAKwB,OAAgB,OAAO,EAE/G,IAAI+mD,EAAOvqD,OAAOyL,sBAAsBzJ,GACxC,GAAoB,IAAhBuoD,EAAK/mD,QAAgB+mD,EAAK,KAAOF,EAAO,OAAO,EAEnD,IAAKrqD,OAAO6E,UAAUggC,qBAAqBh0B,KAAK7O,EAAKqoD,GAAQ,OAAO,EAEpE,GAA+C,mBAApCrqD,OAAO0L,yBAAyC,CAC1D,IAAIjI,EAAazD,OAAO0L,yBAAyB1J,EAAKqoD,GACtD,GAdY,KAcR5mD,EAAWtD,QAA8C,IAA1BsD,EAAWrD,WAAuB,OAAO,CAC7E,CAEA,OAAO,CACR,+BCvCA,IAAIwxC,EAAa,EAAQ,MAEzBpnC,EAAOtK,QAAU,WAChB,OAAO0xC,OAAkBlhC,OAAOwL,WACjC,+BCJA,IAAIzJ,EAAO,EAAQ,MAEnBjI,EAAOtK,QAAUuS,EAAK5B,KAAK+zB,SAAS/zB,KAAM7Q,OAAO6E,UAAUoX,6BCH3D/b,EAAQ6kB,KAAO,SAAUyH,EAAQwvB,EAAQwO,EAAMC,EAAMC,GACnD,IAAIrpD,EAAGuK,EACH++C,EAAiB,EAATD,EAAcD,EAAO,EAC7BG,GAAQ,GAAKD,GAAQ,EACrBE,EAAQD,GAAQ,EAChBE,GAAS,EACTvnD,EAAIinD,EAAQE,EAAS,EAAK,EAC1Br/C,EAAIm/C,GAAQ,EAAI,EAChBt/C,EAAIshB,EAAOwvB,EAASz4C,GAOxB,IALAA,GAAK8H,EAELhK,EAAI6J,GAAM,IAAO4/C,GAAU,EAC3B5/C,KAAQ4/C,EACRA,GAASH,EACFG,EAAQ,EAAGzpD,EAAS,IAAJA,EAAWmrB,EAAOwvB,EAASz4C,GAAIA,GAAK8H,EAAGy/C,GAAS,GAKvE,IAHAl/C,EAAIvK,GAAM,IAAOypD,GAAU,EAC3BzpD,KAAQypD,EACRA,GAASL,EACFK,EAAQ,EAAGl/C,EAAS,IAAJA,EAAW4gB,EAAOwvB,EAASz4C,GAAIA,GAAK8H,EAAGy/C,GAAS,GAEvE,GAAU,IAANzpD,EACFA,EAAI,EAAIwpD,MACH,IAAIxpD,IAAMupD,EACf,OAAOh/C,EAAIm/C,IAAsBC,KAAd9/C,GAAK,EAAI,GAE5BU,GAAQuJ,KAAK81C,IAAI,EAAGR,GACpBppD,GAAQwpD,CACV,CACA,OAAQ3/C,GAAK,EAAI,GAAKU,EAAIuJ,KAAK81C,IAAI,EAAG5pD,EAAIopD,EAC5C,EAEAvqD,EAAQiuB,MAAQ,SAAU3B,EAAQrsB,EAAO67C,EAAQwO,EAAMC,EAAMC,GAC3D,IAAIrpD,EAAGuK,EAAGR,EACNu/C,EAAiB,EAATD,EAAcD,EAAO,EAC7BG,GAAQ,GAAKD,GAAQ,EACrBE,EAAQD,GAAQ,EAChBM,EAAe,KAATT,EAAct1C,KAAK81C,IAAI,GAAI,IAAM91C,KAAK81C,IAAI,GAAI,IAAM,EAC1D1nD,EAAIinD,EAAO,EAAKE,EAAS,EACzBr/C,EAAIm/C,EAAO,GAAK,EAChBt/C,EAAI/K,EAAQ,GAAgB,IAAVA,GAAe,EAAIA,EAAQ,EAAK,EAAI,EAmC1D,IAjCAA,EAAQgV,KAAKiiC,IAAIj3C,GAEbwsC,MAAMxsC,IAAUA,IAAU6qD,KAC5Bp/C,EAAI+gC,MAAMxsC,GAAS,EAAI,EACvBkB,EAAIupD,IAEJvpD,EAAI8T,KAAKyW,MAAMzW,KAAK8gB,IAAI91B,GAASgV,KAAKg2C,KAClChrD,GAASiL,EAAI+J,KAAK81C,IAAI,GAAI5pD,IAAM,IAClCA,IACA+J,GAAK,IAGLjL,GADEkB,EAAIwpD,GAAS,EACNK,EAAK9/C,EAEL8/C,EAAK/1C,KAAK81C,IAAI,EAAG,EAAIJ,IAEpBz/C,GAAK,IACf/J,IACA+J,GAAK,GAGH/J,EAAIwpD,GAASD,GACfh/C,EAAI,EACJvK,EAAIupD,GACKvpD,EAAIwpD,GAAS,GACtBj/C,GAAMzL,EAAQiL,EAAK,GAAK+J,KAAK81C,IAAI,EAAGR,GACpCppD,GAAQwpD,IAERj/C,EAAIzL,EAAQgV,KAAK81C,IAAI,EAAGJ,EAAQ,GAAK11C,KAAK81C,IAAI,EAAGR,GACjDppD,EAAI,IAIDopD,GAAQ,EAAGj+B,EAAOwvB,EAASz4C,GAAS,IAAJqI,EAAUrI,GAAK8H,EAAGO,GAAK,IAAK6+C,GAAQ,GAI3E,IAFAppD,EAAKA,GAAKopD,EAAQ7+C,EAClB++C,GAAQF,EACDE,EAAO,EAAGn+B,EAAOwvB,EAASz4C,GAAS,IAAJlC,EAAUkC,GAAK8H,EAAGhK,GAAK,IAAKspD,GAAQ,GAE1En+B,EAAOwvB,EAASz4C,EAAI8H,IAAU,IAAJH,CAC5B,YCpF6B,mBAAlBlL,OAAOuC,OAEhBiI,EAAOtK,QAAU,SAAkBkrD,EAAMC,GACnCA,IACFD,EAAKE,OAASD,EACdD,EAAKvmD,UAAY7E,OAAOuC,OAAO8oD,EAAUxmD,UAAW,CAClDkM,YAAa,CACX5Q,MAAOirD,EACPhrD,YAAY,EACZuD,UAAU,EACVD,cAAc,KAItB,EAGA8G,EAAOtK,QAAU,SAAkBkrD,EAAMC,GACvC,GAAIA,EAAW,CACbD,EAAKE,OAASD,EACd,IAAIE,EAAW,WAAa,EAC5BA,EAAS1mD,UAAYwmD,EAAUxmD,UAC/BumD,EAAKvmD,UAAY,IAAI0mD,EACrBH,EAAKvmD,UAAUkM,YAAcq6C,CAC/B,CACF,+BCvBF,IAAII,EAAiB,EAAQ,KAAR,GAGjBC,EAFY,EAAQ,KAERC,CAAU,6BAEtBC,EAAsB,SAAqBxrD,GAC9C,QAAIqrD,GAAkBrrD,GAA0B,iBAAVA,GAAsBuQ,OAAOwL,eAAe/b,IAGtD,uBAArBsrD,EAAUtrD,EAClB,EAEIyrD,EAAoB,SAAqBzrD,GAC5C,QAAIwrD,EAAoBxrD,IAGP,OAAVA,GACW,iBAAVA,GACiB,iBAAjBA,EAAMqD,QACbrD,EAAMqD,QAAU,GACK,mBAArBioD,EAAUtrD,IACkB,sBAA5BsrD,EAAUtrD,EAAMu6B,OAClB,EAEImxB,EAA6B,WAChC,OAAOF,EAAoBxkD,UAC5B,CAFgC,GAIhCwkD,EAAoBC,kBAAoBA,EAExCphD,EAAOtK,QAAU2rD,EAA4BF,EAAsBC,+BC9BnE,IAcIE,EAdAja,EAAQ7xC,OAAO6E,UAAUmC,SACzB+kD,EAAUnnB,SAAS//B,UAAUmC,SAC7BglD,EAAY,sBACZR,EAAiB,EAAQ,KAAR,GACjB3X,EAAW7zC,OAAOmyB,eAYtB3nB,EAAOtK,QAAU,SAA6BiZ,GAC7C,GAAkB,mBAAPA,EACV,OAAO,EAER,GAAI6yC,EAAUh7C,KAAK+6C,EAAQl7C,KAAKsI,IAC/B,OAAO,EAER,IAAKqyC,EAEJ,MAAe,+BADL3Z,EAAMhhC,KAAKsI,GAGtB,IAAK06B,EACJ,OAAO,EAER,QAAiC,IAAtBiY,EAAmC,CAC7C,IAAIG,EA1BiB,WACtB,IAAKT,EACJ,OAAO,EAER,IACC,OAAO5mB,SAAS,wBAATA,EAER,CADE,MAAOvjC,GACT,CACD,CAkBsB6qD,GACpBJ,IAAoBG,GAAgBpY,EAASoY,EAC9C,CACA,OAAOpY,EAAS16B,KAAQ2yC,CACzB,yBCjCAthD,EAAOtK,QAAU,SAAeC,GAC/B,OAAOA,GAAUA,CAClB,8BCJA,IAAI60B,EAAW,EAAQ,MACnB6G,EAAS,EAAQ,MAEjBqX,EAAiB,EAAQ,MACzBiZ,EAAc,EAAQ,MACtBC,EAAO,EAAQ,MAEf5Z,EAAWxd,EAASm3B,IAAe7uC,QAIvCue,EAAO2W,EAAU,CAChB2Z,YAAaA,EACbjZ,eAAgBA,EAChBkZ,KAAMA,IAGP5hD,EAAOtK,QAAUsyC,+BCjBjB,IAAIU,EAAiB,EAAQ,MAE7B1oC,EAAOtK,QAAU,WAChB,OAAIod,OAAOqvB,OAASrvB,OAAOqvB,MAAMoe,OAASztC,OAAOqvB,MAAM,KAC/CrvB,OAAOqvB,MAERuG,CACR,+BCPA,IAAIrX,EAAS,EAAQ,MACjBswB,EAAc,EAAQ,MAI1B3hD,EAAOtK,QAAU,WAChB,IAAIsyC,EAAW2Z,IAMf,OALAtwB,EAAOve,OAAQ,CAAEqvB,MAAO6F,GAAY,CACnC7F,MAAO,WACN,OAAOrvB,OAAOqvB,QAAU6F,CACzB,IAEMA,CACR,+BCbA,IAAIlxC,EAAU,EAAQ,MAClB+qD,EAAuB,EAAQ,MAC/BX,EAAY,EAAQ,MAEpBD,EAAYC,EAAU,6BACtBF,EAAiB,EAAQ,KAAR,GAEjBx/C,EAA0B,oBAAf24B,WAA6B,EAAA34B,EAAS24B,WACjD2nB,EAAcD,IAEdp3B,EAAWy2B,EAAU,2BAA2B,IAAS,SAAiBxyB,EAAO/4B,GACpF,IAAK,IAAIoD,EAAI,EAAGA,EAAI21B,EAAM11B,OAAQD,GAAK,EACtC,GAAI21B,EAAM31B,KAAOpD,EAChB,OAAOoD,EAGT,OAAQ,CACT,EACIgpD,EAASb,EAAU,0BACnBc,EAAY,CAAC,EACbC,EAAO,EAAQ,KACft6B,EAAiBnyB,OAAOmyB,eACxBq5B,GAAkBiB,GAAQt6B,GAC7B7wB,EAAQgrD,GAAa,SAAUI,GAC9B,IAAIp8B,EAAM,IAAItkB,EAAE0gD,GAChB,GAAIh8C,OAAOwL,eAAeoU,EAAK,CAC9B,IAAI0P,EAAQ7N,EAAe7B,GACvB7sB,EAAagpD,EAAKzsB,EAAOtvB,OAAOwL,aACpC,IAAKzY,EAAY,CAChB,IAAIkpD,EAAax6B,EAAe6N,GAChCv8B,EAAagpD,EAAKE,EAAYj8C,OAAOwL,YACtC,CACAswC,EAAUE,GAAcjpD,EAAWpD,GACpC,CACD,IAeDmK,EAAOtK,QAAU,SAAsBC,GACtC,IAAKA,GAA0B,iBAAVA,EAAsB,OAAO,EAClD,IAAKqrD,KAAoB96C,OAAOwL,eAAe/b,GAAQ,CACtD,IAAIiO,EAAMm+C,EAAOd,EAAUtrD,GAAQ,GAAI,GACvC,OAAO80B,EAASq3B,EAAal+C,IAAQ,CACtC,CACA,QAAKq+C,GAlBe,SAA2BtsD,GAC/C,IAAIysD,GAAU,EAQd,OAPAtrD,EAAQkrD,GAAW,SAAUK,EAAQH,GACpC,IAAKE,EACJ,IACCA,EAAUC,EAAOh8C,KAAK1Q,KAAWusD,CACf,CAAjB,MAAOrrD,GAAU,CAErB,IACOurD,CACR,CASQE,CAAe3sD,EACvB,kBCjDA,IAGI4sD,EAAiB,4BAMjBC,EAAU,oBACVC,EAAS,6BAITC,EAAe,mDACfC,EAAgB,QAChBC,EAAe,MACfjX,EAAa,mGASbC,EAAe,WAGfiX,EAAe,8BAGfC,EAA8B,iBAAV,EAAAthD,GAAsB,EAAAA,GAAU,EAAAA,EAAOhM,SAAWA,QAAU,EAAAgM,EAGhFuhD,EAA0B,iBAARhjD,MAAoBA,MAAQA,KAAKvK,SAAWA,QAAUuK,KAGxEijD,EAAOF,GAAcC,GAAY3oB,SAAS,cAATA,GAkCrC,IASMnjC,EATFgsD,EAAaniD,MAAMzG,UACnB6oD,EAAY9oB,SAAS//B,UACrB8oD,EAAc3tD,OAAO6E,UAGrB+oD,EAAaJ,EAAK,sBAGlBK,GACEpsD,EAAM,SAAS2uB,KAAKw9B,GAAcA,EAAWpiD,MAAQoiD,EAAWpiD,KAAK68B,UAAY,KACvE,iBAAmB5mC,EAAO,GAItCqsD,EAAeJ,EAAU1mD,SAGzBiV,EAAiB0xC,EAAY1xC,eAO7B8xC,EAAiBJ,EAAY3mD,SAG7BgnD,EAAap/B,OAAO,IACtBk/B,EAAaj9C,KAAKoL,GAAgB7V,QA7EjB,sBA6EuC,QACvDA,QAAQ,yDAA0D,SAAW,KAI5EsK,EAAS88C,EAAK98C,OACdwG,EAASu2C,EAAWv2C,OAGpBnS,EAAMkpD,EAAUT,EAAM,OACtBU,EAAeD,EAAUjuD,OAAQ,UAGjCmuD,EAAcz9C,EAASA,EAAO7L,eAAYuC,EAC1CgnD,EAAiBD,EAAcA,EAAYnnD,cAAWI,EAS1D,SAASinD,EAAK9wB,GACZ,IAAI/V,GAAS,EACThkB,EAAS+5B,EAAUA,EAAQ/5B,OAAS,EAGxC,IADAW,KAAKsY,UACI+K,EAAQhkB,GAAQ,CACvB,IAAIu4B,EAAQwB,EAAQ/V,GACpBrjB,KAAKc,IAAI82B,EAAM,GAAIA,EAAM,GAC3B,CACF,CAyFA,SAASuyB,EAAU/wB,GACjB,IAAI/V,GAAS,EACThkB,EAAS+5B,EAAUA,EAAQ/5B,OAAS,EAGxC,IADAW,KAAKsY,UACI+K,EAAQhkB,GAAQ,CACvB,IAAIu4B,EAAQwB,EAAQ/V,GACpBrjB,KAAKc,IAAI82B,EAAM,GAAIA,EAAM,GAC3B,CACF,CAuGA,SAASwyB,EAAShxB,GAChB,IAAI/V,GAAS,EACThkB,EAAS+5B,EAAUA,EAAQ/5B,OAAS,EAGxC,IADAW,KAAKsY,UACI+K,EAAQhkB,GAAQ,CACvB,IAAIu4B,EAAQwB,EAAQ/V,GACpBrjB,KAAKc,IAAI82B,EAAM,GAAIA,EAAM,GAC3B,CACF,CAsFA,SAASyyB,EAAat1B,EAAOt1B,GAE3B,IADA,IA+SUzD,EAAOsuD,EA/SbjrD,EAAS01B,EAAM11B,OACZA,KACL,IA6SQrD,EA7SD+4B,EAAM11B,GAAQ,OA6SNirD,EA7SU7qD,IA8SAzD,GAAUA,GAASsuD,GAAUA,EA7SpD,OAAOjrD,EAGX,OAAQ,CACV,CAUA,SAASkrD,EAAQp4B,EAAQjI,GAuDzB,IAAkBluB,EAtDhBkuB,EA8FF,SAAeluB,EAAOm2B,GACpB,GAAI7lB,EAAQtQ,GACV,OAAO,EAET,IAAI0J,SAAc1J,EAClB,GAAY,UAAR0J,GAA4B,UAARA,GAA4B,WAARA,GAC/B,MAAT1J,GAAiBwuD,EAASxuD,GAC5B,OAAO,EAET,OAAOgtD,EAAcn8C,KAAK7Q,KAAW+sD,EAAal8C,KAAK7Q,IAC1C,MAAVm2B,GAAkBn2B,KAASH,OAAOs2B,EACvC,CAzGSs4B,CAAMvgC,EAAMiI,GAAU,CAACjI,GAuDvB5d,EADStQ,EAtD+BkuB,GAuDvBluB,EAAQk2C,EAAal2C,GAlD7C,IAHA,IAAIqnB,EAAQ,EACRhkB,EAAS6qB,EAAK7qB,OAED,MAAV8yB,GAAkB9O,EAAQhkB,GAC/B8yB,EAASA,EAAOu4B,EAAMxgC,EAAK7G,OAE7B,OAAQA,GAASA,GAAShkB,EAAU8yB,OAASlvB,CAC/C,CAUA,SAAS0nD,EAAa3uD,GACpB,IAAKysB,EAASzsB,KA4GEw1B,EA5GiBx1B,EA6GxB0tD,GAAeA,KAAcl4B,GA5GpC,OAAO,EA2GX,IAAkBA,EAzGZpD,EAoTN,SAAoBpyB,GAGlB,IAAIiO,EAAMwe,EAASzsB,GAAS4tD,EAAel9C,KAAK1Q,GAAS,GACzD,OAAOiO,GAAO4+C,GAAW5+C,GAAO6+C,CAClC,CAzTiB76B,CAAWjyB,IA3Z5B,SAAsBA,GAGpB,IAAI0xB,GAAS,EACb,GAAa,MAAT1xB,GAA0C,mBAAlBA,EAAM6G,SAChC,IACE6qB,KAAY1xB,EAAQ,GACT,CAAX,MAAOkB,GAAI,CAEf,OAAOwwB,CACT,CAiZsCk9B,CAAa5uD,GAAU6tD,EAAaX,EACxE,OAAO96B,EAAQvhB,KAsJjB,SAAkB2kB,GAChB,GAAY,MAARA,EAAc,CAChB,IACE,OAAOm4B,EAAaj9C,KAAK8kB,EACd,CAAX,MAAOt0B,GAAI,CACb,IACE,OAAQs0B,EAAO,EACJ,CAAX,MAAOt0B,GAAI,CACf,CACA,MAAO,EACT,CAhKsB2tD,CAAS7uD,GAC/B,CAyCA,SAAS8uD,EAAWl5C,EAAKnS,GACvB,IA+CiBzD,EACb0J,EAhDAxD,EAAO0P,EAAIm5C,SACf,OAgDgB,WADZrlD,SADa1J,EA9CAyD,KAgDmB,UAARiG,GAA4B,UAARA,GAA4B,WAARA,EACrD,cAAV1J,EACU,OAAVA,GAjDDkG,EAAmB,iBAAPzC,EAAkB,SAAW,QACzCyC,EAAK0P,GACX,CAUA,SAASk4C,EAAU33B,EAAQ1yB,GACzB,IAAIzD,EAjeN,SAAkBm2B,EAAQ1yB,GACxB,OAAiB,MAAV0yB,OAAiBlvB,EAAYkvB,EAAO1yB,EAC7C,CA+dcurD,CAAS74B,EAAQ1yB,GAC7B,OAAOkrD,EAAa3uD,GAASA,OAAQiH,CACvC,CAnUAinD,EAAKxpD,UAAU4X,MAnEf,WACEtY,KAAK+qD,SAAWhB,EAAeA,EAAa,MAAQ,CAAC,CACvD,EAkEAG,EAAKxpD,UAAkB,OAtDvB,SAAoBjB,GAClB,OAAOO,KAAKm1B,IAAI11B,WAAeO,KAAK+qD,SAAStrD,EAC/C,EAqDAyqD,EAAKxpD,UAAUxE,IA1Cf,SAAiBuD,GACf,IAAIyC,EAAOlC,KAAK+qD,SAChB,GAAIhB,EAAc,CAChB,IAAIr8B,EAASxrB,EAAKzC,GAClB,OAAOiuB,IAAWk7B,OAAiB3lD,EAAYyqB,CACjD,CACA,OAAO5V,EAAepL,KAAKxK,EAAMzC,GAAOyC,EAAKzC,QAAOwD,CACtD,EAoCAinD,EAAKxpD,UAAUy0B,IAzBf,SAAiB11B,GACf,IAAIyC,EAAOlC,KAAK+qD,SAChB,OAAOhB,OAA6B9mD,IAAdf,EAAKzC,GAAqBqY,EAAepL,KAAKxK,EAAMzC,EAC5E,EAuBAyqD,EAAKxpD,UAAUI,IAXf,SAAiBrB,EAAKzD,GAGpB,OAFWgE,KAAK+qD,SACXtrD,GAAQsqD,QAA0B9mD,IAAVjH,EAAuB4sD,EAAiB5sD,EAC9DgE,IACT,EAmHAmqD,EAAUzpD,UAAU4X,MAjFpB,WACEtY,KAAK+qD,SAAW,EAClB,EAgFAZ,EAAUzpD,UAAkB,OArE5B,SAAyBjB,GACvB,IAAIyC,EAAOlC,KAAK+qD,SACZ1nC,EAAQgnC,EAAanoD,EAAMzC,GAE/B,QAAI4jB,EAAQ,KAIRA,GADYnhB,EAAK7C,OAAS,EAE5B6C,EAAK6qB,MAELha,EAAOrG,KAAKxK,EAAMmhB,EAAO,IAEpB,EACT,EAwDA8mC,EAAUzpD,UAAUxE,IA7CpB,SAAsBuD,GACpB,IAAIyC,EAAOlC,KAAK+qD,SACZ1nC,EAAQgnC,EAAanoD,EAAMzC,GAE/B,OAAO4jB,EAAQ,OAAIpgB,EAAYf,EAAKmhB,GAAO,EAC7C,EAyCA8mC,EAAUzpD,UAAUy0B,IA9BpB,SAAsB11B,GACpB,OAAO4qD,EAAarqD,KAAK+qD,SAAUtrD,IAAQ,CAC7C,EA6BA0qD,EAAUzpD,UAAUI,IAjBpB,SAAsBrB,EAAKzD,GACzB,IAAIkG,EAAOlC,KAAK+qD,SACZ1nC,EAAQgnC,EAAanoD,EAAMzC,GAO/B,OALI4jB,EAAQ,EACVnhB,EAAKvF,KAAK,CAAC8C,EAAKzD,IAEhBkG,EAAKmhB,GAAO,GAAKrnB,EAEZgE,IACT,EAiGAoqD,EAAS1pD,UAAU4X,MA/DnB,WACEtY,KAAK+qD,SAAW,CACd,KAAQ,IAAIb,EACZ,IAAO,IAAKtpD,GAAOupD,GACnB,OAAU,IAAID,EAElB,EA0DAE,EAAS1pD,UAAkB,OA/C3B,SAAwBjB,GACtB,OAAOqrD,EAAW9qD,KAAMP,GAAa,OAAEA,EACzC,EA8CA2qD,EAAS1pD,UAAUxE,IAnCnB,SAAqBuD,GACnB,OAAOqrD,EAAW9qD,KAAMP,GAAKvD,IAAIuD,EACnC,EAkCA2qD,EAAS1pD,UAAUy0B,IAvBnB,SAAqB11B,GACnB,OAAOqrD,EAAW9qD,KAAMP,GAAK01B,IAAI11B,EACnC,EAsBA2qD,EAAS1pD,UAAUI,IAVnB,SAAqBrB,EAAKzD,GAExB,OADA8uD,EAAW9qD,KAAMP,GAAKqB,IAAIrB,EAAKzD,GACxBgE,IACT,EA+KA,IAAIkyC,EAAe+Y,GAAQ,SAASlrB,GA4SpC,IAAkB/jC,EA3ShB+jC,EA4SgB,OADA/jC,EA3SE+jC,GA4SK,GArZzB,SAAsB/jC,GAEpB,GAAoB,iBAATA,EACT,OAAOA,EAET,GAAIwuD,EAASxuD,GACX,OAAOiuD,EAAiBA,EAAev9C,KAAK1Q,GAAS,GAEvD,IAAI0xB,EAAU1xB,EAAQ,GACtB,MAAkB,KAAV0xB,GAAkB,EAAI1xB,IAAU,IAAa,KAAO0xB,CAC9D,CA2Y8Bw9B,CAAalvD,GA1SzC,IAAI0xB,EAAS,GAOb,OANIu7B,EAAap8C,KAAKkzB,IACpBrS,EAAO/wB,KAAK,IAEdojC,EAAO99B,QAAQ+vC,GAAY,SAASxnB,EAAOjF,EAAQ4sB,EAAOpS,GACxDrS,EAAO/wB,KAAKw1C,EAAQpS,EAAO99B,QAAQgwC,EAAc,MAAS1sB,GAAUiF,EACtE,IACOkD,CACT,IASA,SAASg9B,EAAM1uD,GACb,GAAoB,iBAATA,GAAqBwuD,EAASxuD,GACvC,OAAOA,EAET,IAAI0xB,EAAU1xB,EAAQ,GACtB,MAAkB,KAAV0xB,GAAkB,EAAI1xB,IAAU,IAAa,KAAO0xB,CAC9D,CAiEA,SAASu9B,EAAQz5B,EAAM25B,GACrB,GAAmB,mBAAR35B,GAAuB25B,GAA+B,mBAAZA,EACnD,MAAM,IAAIrrD,UAvqBQ,uBAyqBpB,IAAIsrD,EAAW,WACb,IAAI5hC,EAAOxmB,UACPvD,EAAM0rD,EAAWA,EAAS3jD,MAAMxH,KAAMwpB,GAAQA,EAAK,GACnDoE,EAAQw9B,EAASx9B,MAErB,GAAIA,EAAMuH,IAAI11B,GACZ,OAAOmuB,EAAM1xB,IAAIuD,GAEnB,IAAIiuB,EAAS8D,EAAKhqB,MAAMxH,KAAMwpB,GAE9B,OADA4hC,EAASx9B,MAAQA,EAAM9sB,IAAIrB,EAAKiuB,GACzBA,CACT,EAEA,OADA09B,EAASx9B,MAAQ,IAAKq9B,EAAQI,OAASjB,GAChCgB,CACT,CAGAH,EAAQI,MAAQjB,EA6DhB,IAAI99C,EAAUnF,MAAMmF,QAmDpB,SAASmc,EAASzsB,GAChB,IAAI0J,SAAc1J,EAClB,QAASA,IAAkB,UAAR0J,GAA4B,YAARA,EACzC,CA+CA,SAAS8kD,EAASxuD,GAChB,MAAuB,iBAATA,GAtBhB,SAAsBA,GACpB,QAASA,GAAyB,iBAATA,CAC3B,CAqBKsvD,CAAatvD,IAn1BF,mBAm1BY4tD,EAAel9C,KAAK1Q,EAChD,CAyDAqK,EAAOtK,QALP,SAAao2B,EAAQjI,EAAMqhC,GACzB,IAAI79B,EAAmB,MAAVyE,OAAiBlvB,EAAYsnD,EAAQp4B,EAAQjI,GAC1D,YAAkBjnB,IAAXyqB,EAAuB69B,EAAe79B,CAC/C,kBCh6BA,IAIIsiB,EAJY,EAAQ,IAIT8Z,CAHJ,EAAQ,MAGY,YAE/BzjD,EAAOtK,QAAUi0C,kBCNjB,IAAIwb,EAAY,EAAQ,MACpBC,EAAa,EAAQ,KACrBC,EAAU,EAAQ,MAClBC,EAAU,EAAQ,MAClBC,EAAU,EAAQ,MAStB,SAAS1B,EAAK9wB,GACZ,IAAI/V,GAAS,EACThkB,EAAoB,MAAX+5B,EAAkB,EAAIA,EAAQ/5B,OAG3C,IADAW,KAAKsY,UACI+K,EAAQhkB,GAAQ,CACvB,IAAIu4B,EAAQwB,EAAQ/V,GACpBrjB,KAAKc,IAAI82B,EAAM,GAAIA,EAAM,GAC3B,CACF,CAGAsyB,EAAKxpD,UAAU4X,MAAQkzC,EACvBtB,EAAKxpD,UAAkB,OAAI+qD,EAC3BvB,EAAKxpD,UAAUxE,IAAMwvD,EACrBxB,EAAKxpD,UAAUy0B,IAAMw2B,EACrBzB,EAAKxpD,UAAUI,IAAM8qD,EAErBvlD,EAAOtK,QAAUmuD,kBC/BjB,IAAI2B,EAAiB,EAAQ,MACzBC,EAAkB,EAAQ,MAC1BC,EAAe,EAAQ,MACvBC,EAAe,EAAQ,MACvBC,EAAe,EAAQ,MAS3B,SAAS9B,EAAU/wB,GACjB,IAAI/V,GAAS,EACThkB,EAAoB,MAAX+5B,EAAkB,EAAIA,EAAQ/5B,OAG3C,IADAW,KAAKsY,UACI+K,EAAQhkB,GAAQ,CACvB,IAAIu4B,EAAQwB,EAAQ/V,GACpBrjB,KAAKc,IAAI82B,EAAM,GAAIA,EAAM,GAC3B,CACF,CAGAuyB,EAAUzpD,UAAU4X,MAAQuzC,EAC5B1B,EAAUzpD,UAAkB,OAAIorD,EAChC3B,EAAUzpD,UAAUxE,IAAM6vD,EAC1B5B,EAAUzpD,UAAUy0B,IAAM62B,EAC1B7B,EAAUzpD,UAAUI,IAAMmrD,EAE1B5lD,EAAOtK,QAAUouD,kBC/BjB,IAIIvpD,EAJY,EAAQ,IAIdkpD,CAHC,EAAQ,MAGO,OAE1BzjD,EAAOtK,QAAU6E,kBCNjB,IAAIsrD,EAAgB,EAAQ,MACxBC,EAAiB,EAAQ,MACzBC,EAAc,EAAQ,KACtBC,EAAc,EAAQ,MACtBC,EAAc,EAAQ,MAS1B,SAASlC,EAAShxB,GAChB,IAAI/V,GAAS,EACThkB,EAAoB,MAAX+5B,EAAkB,EAAIA,EAAQ/5B,OAG3C,IADAW,KAAKsY,UACI+K,EAAQhkB,GAAQ,CACvB,IAAIu4B,EAAQwB,EAAQ/V,GACpBrjB,KAAKc,IAAI82B,EAAM,GAAIA,EAAM,GAC3B,CACF,CAGAwyB,EAAS1pD,UAAU4X,MAAQ4zC,EAC3B9B,EAAS1pD,UAAkB,OAAIyrD,EAC/B/B,EAAS1pD,UAAUxE,IAAMkwD,EACzBhC,EAAS1pD,UAAUy0B,IAAMk3B,EACzBjC,EAAS1pD,UAAUI,IAAMwrD,EAEzBjmD,EAAOtK,QAAUquD,kBC/BjB,IAIItsC,EAJY,EAAQ,IAIVgsC,CAHH,EAAQ,MAGW,WAE9BzjD,EAAOtK,QAAU+hB,kBCNjB,IAIImzB,EAJY,EAAQ,IAId6Y,CAHC,EAAQ,MAGO,OAE1BzjD,EAAOtK,QAAUk1C,kBCNjB,IAAImZ,EAAW,EAAQ,MACnBmC,EAAc,EAAQ,KACtBC,EAAc,EAAQ,MAU1B,SAASC,EAAS7wB,GAChB,IAAIvY,GAAS,EACThkB,EAAmB,MAAVu8B,EAAiB,EAAIA,EAAOv8B,OAGzC,IADAW,KAAK+qD,SAAW,IAAIX,IACX/mC,EAAQhkB,GACfW,KAAKkN,IAAI0uB,EAAOvY,GAEpB,CAGAopC,EAAS/rD,UAAUwM,IAAMu/C,EAAS/rD,UAAU/D,KAAO4vD,EACnDE,EAAS/rD,UAAUy0B,IAAMq3B,EAEzBnmD,EAAOtK,QAAU0wD,kBC1BjB,IAAItC,EAAY,EAAQ,MACpBuC,EAAa,EAAQ,MACrBC,EAAc,EAAQ,MACtBC,EAAW,EAAQ,MACnBC,EAAW,EAAQ,MACnBC,EAAW,EAAQ,MASvB,SAASC,EAAM3zB,GACb,IAAIl3B,EAAOlC,KAAK+qD,SAAW,IAAIZ,EAAU/wB,GACzCp5B,KAAKsW,KAAOpU,EAAKoU,IACnB,CAGAy2C,EAAMrsD,UAAU4X,MAAQo0C,EACxBK,EAAMrsD,UAAkB,OAAIisD,EAC5BI,EAAMrsD,UAAUxE,IAAM0wD,EACtBG,EAAMrsD,UAAUy0B,IAAM03B,EACtBE,EAAMrsD,UAAUI,IAAMgsD,EAEtBzmD,EAAOtK,QAAUgxD,kBC1BjB,IAGIxgD,EAHO,EAAQ,MAGDA,OAElBlG,EAAOtK,QAAUwQ,kBCLjB,IAGI4hB,EAHO,EAAQ,MAGGA,WAEtB9nB,EAAOtK,QAAUoyB,iBCLjB,IAII0T,EAJY,EAAQ,IAIVioB,CAHH,EAAQ,MAGW,WAE9BzjD,EAAOtK,QAAU8lC,YCcjBx7B,EAAOtK,QAVP,SAAey1B,EAAMjI,EAASC,GAC5B,OAAQA,EAAKnqB,QACX,KAAK,EAAG,OAAOmyB,EAAK9kB,KAAK6c,GACzB,KAAK,EAAG,OAAOiI,EAAK9kB,KAAK6c,EAASC,EAAK,IACvC,KAAK,EAAG,OAAOgI,EAAK9kB,KAAK6c,EAASC,EAAK,GAAIA,EAAK,IAChD,KAAK,EAAG,OAAOgI,EAAK9kB,KAAK6c,EAASC,EAAK,GAAIA,EAAK,GAAIA,EAAK,IAE3D,OAAOgI,EAAKhqB,MAAM+hB,EAASC,EAC7B,YCMAnjB,EAAOtK,QAfP,SAAqBg5B,EAAO+Y,GAM1B,IALA,IAAIzqB,GAAS,EACThkB,EAAkB,MAAT01B,EAAgB,EAAIA,EAAM11B,OACnC2tD,EAAW,EACXt/B,EAAS,KAEJrK,EAAQhkB,GAAQ,CACvB,IAAIrD,EAAQ+4B,EAAM1R,GACdyqB,EAAU9xC,EAAOqnB,EAAO0R,KAC1BrH,EAAOs/B,KAAchxD,EAEzB,CACA,OAAO0xB,CACT,kBCtBA,IAAIu/B,EAAY,EAAQ,MACpBC,EAAc,EAAQ,MACtB5gD,EAAU,EAAQ,MAClB0b,EAAW,EAAQ,MACnBmlC,EAAU,EAAQ,MAClB7gC,EAAe,EAAQ,MAMvBxU,EAHcjc,OAAO6E,UAGQoX,eAqCjCzR,EAAOtK,QA3BP,SAAuBC,EAAOoxD,GAC5B,IAAIC,EAAQ/gD,EAAQtQ,GAChBsxD,GAASD,GAASH,EAAYlxD,GAC9BuxD,GAAUF,IAAUC,GAAStlC,EAAShsB,GACtCwxD,GAAUH,IAAUC,IAAUC,GAAUjhC,EAAatwB,GACrDyxD,EAAcJ,GAASC,GAASC,GAAUC,EAC1C9/B,EAAS+/B,EAAcR,EAAUjxD,EAAMqD,OAAQmJ,QAAU,GACzDnJ,EAASquB,EAAOruB,OAEpB,IAAK,IAAII,KAAOzD,GACToxD,IAAat1C,EAAepL,KAAK1Q,EAAOyD,IACvCguD,IAEQ,UAAPhuD,GAEC8tD,IAAkB,UAAP9tD,GAA0B,UAAPA,IAE9B+tD,IAAkB,UAAP/tD,GAA0B,cAAPA,GAA8B,cAAPA,IAEtD0tD,EAAQ1tD,EAAKJ,KAElBquB,EAAO/wB,KAAK8C,GAGhB,OAAOiuB,CACT,YC3BArnB,EAAOtK,QAXP,SAAmBg5B,EAAO6G,GAKxB,IAJA,IAAIvY,GAAS,EACThkB,EAASu8B,EAAOv8B,OAChBw4C,EAAS9iB,EAAM11B,SAEVgkB,EAAQhkB,GACf01B,EAAM8iB,EAASx0B,GAASuY,EAAOvY,GAEjC,OAAO0R,CACT,YCKA1uB,EAAOtK,QAZP,SAAmBg5B,EAAO+Y,GAIxB,IAHA,IAAIzqB,GAAS,EACThkB,EAAkB,MAAT01B,EAAgB,EAAIA,EAAM11B,SAE9BgkB,EAAQhkB,GACf,GAAIyuC,EAAU/Y,EAAM1R,GAAQA,EAAO0R,GACjC,OAAO,EAGX,OAAO,CACT,kBCpBA,IAAI24B,EAAkB,EAAQ,MAC1BC,EAAK,EAAQ,MAkBjBtnD,EAAOtK,QAPP,SAA0Bo2B,EAAQ1yB,EAAKzD,SACtBiH,IAAVjH,IAAwB2xD,EAAGx7B,EAAO1yB,GAAMzD,SAC9BiH,IAAVjH,KAAyByD,KAAO0yB,KACnCu7B,EAAgBv7B,EAAQ1yB,EAAKzD,EAEjC,kBCjBA,IAAI0xD,EAAkB,EAAQ,MAC1BC,EAAK,EAAQ,MAMb71C,EAHcjc,OAAO6E,UAGQoX,eAoBjCzR,EAAOtK,QARP,SAAqBo2B,EAAQ1yB,EAAKzD,GAChC,IAAI4xD,EAAWz7B,EAAO1yB,GAChBqY,EAAepL,KAAKylB,EAAQ1yB,IAAQkuD,EAAGC,EAAU5xD,UACxCiH,IAAVjH,GAAyByD,KAAO0yB,IACnCu7B,EAAgBv7B,EAAQ1yB,EAAKzD,EAEjC,kBCzBA,IAAI2xD,EAAK,EAAQ,MAoBjBtnD,EAAOtK,QAVP,SAAsBg5B,EAAOt1B,GAE3B,IADA,IAAIJ,EAAS01B,EAAM11B,OACZA,KACL,GAAIsuD,EAAG54B,EAAM11B,GAAQ,GAAII,GACvB,OAAOJ,EAGX,OAAQ,CACV,kBClBA,IAAIvD,EAAiB,EAAQ,MAwB7BuK,EAAOtK,QAbP,SAAyBo2B,EAAQ1yB,EAAKzD,GACzB,aAAPyD,GAAsB3D,EACxBA,EAAeq2B,EAAQ1yB,EAAK,CAC1B,cAAgB,EAChB,YAAc,EACd,MAASzD,EACT,UAAY,IAGdm2B,EAAO1yB,GAAOzD,CAElB,kBCtBA,IAAIysB,EAAW,EAAQ,MAGnBolC,EAAehyD,OAAOuC,OAUtB0vD,EAAc,WAChB,SAAS37B,IAAU,CACnB,OAAO,SAAS0J,GACd,IAAKpT,EAASoT,GACZ,MAAO,CAAC,EAEV,GAAIgyB,EACF,OAAOA,EAAahyB,GAEtB1J,EAAOzxB,UAAYm7B,EACnB,IAAInO,EAAS,IAAIyE,EAEjB,OADAA,EAAOzxB,eAAYuC,EACZyqB,CACT,CACF,CAdiB,GAgBjBrnB,EAAOtK,QAAU+xD,kBC7BjB,IAaIC,EAbgB,EAAQ,KAadC,GAEd3nD,EAAOtK,QAAUgyD,kBCfjB,IAAIE,EAAY,EAAQ,MACpB3hD,EAAU,EAAQ,MAkBtBjG,EAAOtK,QALP,SAAwBo2B,EAAQ+7B,EAAUC,GACxC,IAAIzgC,EAASwgC,EAAS/7B,GACtB,OAAO7lB,EAAQ6lB,GAAUzE,EAASugC,EAAUvgC,EAAQygC,EAAYh8B,GAClE,kBCjBA,IAAI5lB,EAAS,EAAQ,MACjB6hD,EAAY,EAAQ,MACpBxE,EAAiB,EAAQ,MAOzByE,EAAiB9hD,EAASA,EAAOwL,iBAAc9U,EAkBnDoD,EAAOtK,QATP,SAAoBC,GAClB,OAAa,MAATA,OACeiH,IAAVjH,EAdQ,qBADL,gBAiBJqyD,GAAkBA,KAAkBxyD,OAAOG,GAC/CoyD,EAAUpyD,GACV4tD,EAAe5tD,EACrB,kBCzBA,IAAIsyD,EAAa,EAAQ,MACrBhD,EAAe,EAAQ,MAgB3BjlD,EAAOtK,QAJP,SAAyBC,GACvB,OAAOsvD,EAAatvD,IAVR,sBAUkBsyD,EAAWtyD,EAC3C,iBCfA,IAAIuyD,EAAkB,EAAQ,MAC1BjD,EAAe,EAAQ,MA0B3BjlD,EAAOtK,QAVP,SAASyyD,EAAYxyD,EAAOsuD,EAAOmE,EAASC,EAAY/oC,GACtD,OAAI3pB,IAAUsuD,IAGD,MAATtuD,GAA0B,MAATsuD,IAAmBgB,EAAatvD,KAAWsvD,EAAahB,GACpEtuD,GAAUA,GAASsuD,GAAUA,EAE/BiE,EAAgBvyD,EAAOsuD,EAAOmE,EAASC,EAAYF,EAAa7oC,GACzE,kBCzBA,IAAIonC,EAAQ,EAAQ,MAChB4B,EAAc,EAAQ,MACtBC,EAAa,EAAQ,MACrBC,EAAe,EAAQ,MACvBC,EAAS,EAAQ,MACjBxiD,EAAU,EAAQ,MAClB0b,EAAW,EAAQ,MACnBsE,EAAe,EAAQ,MAMvByiC,EAAU,qBACVC,EAAW,iBACXC,EAAY,kBAMZn3C,EAHcjc,OAAO6E,UAGQoX,eA6DjCzR,EAAOtK,QA7CP,SAAyBo2B,EAAQm4B,EAAOmE,EAASC,EAAYQ,EAAWvpC,GACtE,IAAIwpC,EAAW7iD,EAAQ6lB,GACnBi9B,EAAW9iD,EAAQg+C,GACnB+E,EAASF,EAAWH,EAAWF,EAAO38B,GACtCm9B,EAASF,EAAWJ,EAAWF,EAAOxE,GAKtCiF,GAHJF,EAASA,GAAUN,EAAUE,EAAYI,IAGhBJ,EACrBO,GAHJF,EAASA,GAAUP,EAAUE,EAAYK,IAGhBL,EACrBQ,EAAYJ,GAAUC,EAE1B,GAAIG,GAAaznC,EAASmK,GAAS,CACjC,IAAKnK,EAASsiC,GACZ,OAAO,EAET6E,GAAW,EACXI,GAAW,CACb,CACA,GAAIE,IAAcF,EAEhB,OADA5pC,IAAUA,EAAQ,IAAIonC,GACdoC,GAAY7iC,EAAa6F,GAC7Bw8B,EAAYx8B,EAAQm4B,EAAOmE,EAASC,EAAYQ,EAAWvpC,GAC3DipC,EAAWz8B,EAAQm4B,EAAO+E,EAAQZ,EAASC,EAAYQ,EAAWvpC,GAExE,KArDyB,EAqDnB8oC,GAAiC,CACrC,IAAIiB,EAAeH,GAAYz3C,EAAepL,KAAKylB,EAAQ,eACvDw9B,EAAeH,GAAY13C,EAAepL,KAAK49C,EAAO,eAE1D,GAAIoF,GAAgBC,EAAc,CAChC,IAAIC,EAAeF,EAAev9B,EAAOn2B,QAAUm2B,EAC/C09B,EAAeF,EAAerF,EAAMtuD,QAAUsuD,EAGlD,OADA3kC,IAAUA,EAAQ,IAAIonC,GACfmC,EAAUU,EAAcC,EAAcpB,EAASC,EAAY/oC,EACpE,CACF,CACA,QAAK8pC,IAGL9pC,IAAUA,EAAQ,IAAIonC,GACf8B,EAAa18B,EAAQm4B,EAAOmE,EAASC,EAAYQ,EAAWvpC,GACrE,kBChFA,IAAIsI,EAAa,EAAQ,MACrB6hC,EAAW,EAAQ,MACnBrnC,EAAW,EAAQ,MACnBoiC,EAAW,EAAQ,KASnB3B,EAAe,8BAGfK,EAAY9oB,SAAS//B,UACrB8oD,EAAc3tD,OAAO6E,UAGrBipD,EAAeJ,EAAU1mD,SAGzBiV,EAAiB0xC,EAAY1xC,eAG7B+xC,EAAap/B,OAAO,IACtBk/B,EAAaj9C,KAAKoL,GAAgB7V,QAjBjB,sBAiBuC,QACvDA,QAAQ,yDAA0D,SAAW,KAmBhFoE,EAAOtK,QARP,SAAsBC,GACpB,SAAKysB,EAASzsB,IAAU8zD,EAAS9zD,MAGnBiyB,EAAWjyB,GAAS6tD,EAAaX,GAChCr8C,KAAKg+C,EAAS7uD,GAC/B,kBC5CA,IAAIsyD,EAAa,EAAQ,MACrByB,EAAW,EAAQ,MACnBzE,EAAe,EAAQ,MA8BvB0E,EAAiB,CAAC,EACtBA,EAZiB,yBAYYA,EAXZ,yBAYjBA,EAXc,sBAWYA,EAVX,uBAWfA,EAVe,uBAUYA,EATZ,uBAUfA,EATsB,8BASYA,EARlB,wBAShBA,EARgB,yBAQY,EAC5BA,EAjCc,sBAiCYA,EAhCX,kBAiCfA,EApBqB,wBAoBYA,EAhCnB,oBAiCdA,EApBkB,qBAoBYA,EAhChB,iBAiCdA,EAhCe,kBAgCYA,EA/Bb,qBAgCdA,EA/Ba,gBA+BYA,EA9BT,mBA+BhBA,EA9BgB,mBA8BYA,EA7BZ,mBA8BhBA,EA7Ba,gBA6BYA,EA5BT,mBA6BhBA,EA5BiB,qBA4BY,EAc7B3pD,EAAOtK,QALP,SAA0BC,GACxB,OAAOsvD,EAAatvD,IAClB+zD,EAAS/zD,EAAMqD,WAAa2wD,EAAe1B,EAAWtyD,GAC1D,iBCzDA,IAAIi0D,EAAc,EAAQ,MACtBC,EAAa,EAAQ,MAMrBp4C,EAHcjc,OAAO6E,UAGQoX,eAsBjCzR,EAAOtK,QAbP,SAAkBo2B,GAChB,IAAK89B,EAAY99B,GACf,OAAO+9B,EAAW/9B,GAEpB,IAAIzE,EAAS,GACb,IAAK,IAAIjuB,KAAO5D,OAAOs2B,GACjBra,EAAepL,KAAKylB,EAAQ1yB,IAAe,eAAPA,GACtCiuB,EAAO/wB,KAAK8C,GAGhB,OAAOiuB,CACT,iBC3BA,IAAIjF,EAAW,EAAQ,MACnBwnC,EAAc,EAAQ,MACtBE,EAAe,EAAQ,MAMvBr4C,EAHcjc,OAAO6E,UAGQoX,eAwBjCzR,EAAOtK,QAfP,SAAoBo2B,GAClB,IAAK1J,EAAS0J,GACZ,OAAOg+B,EAAah+B,GAEtB,IAAIi+B,EAAUH,EAAY99B,GACtBzE,EAAS,GAEb,IAAK,IAAIjuB,KAAO0yB,GACD,eAAP1yB,IAAyB2wD,GAAYt4C,EAAepL,KAAKylB,EAAQ1yB,KACrEiuB,EAAO/wB,KAAK8C,GAGhB,OAAOiuB,CACT,kBC9BA,IAAIq/B,EAAQ,EAAQ,MAChBsD,EAAmB,EAAQ,MAC3BtC,EAAU,EAAQ,MAClBuC,EAAgB,EAAQ,MACxB7nC,EAAW,EAAQ,MACnB8nC,EAAS,EAAQ,MACjBC,EAAU,EAAQ,MAmCtBnqD,EAAOtK,QAtBP,SAAS00D,EAAUt+B,EAAQ7O,EAAQotC,EAAUhC,EAAY/oC,GACnDwM,IAAW7O,GAGfyqC,EAAQzqC,GAAQ,SAASqtC,EAAUlxD,GAEjC,GADAkmB,IAAUA,EAAQ,IAAIonC,GAClBtkC,EAASkoC,GACXL,EAAcn+B,EAAQ7O,EAAQ7jB,EAAKixD,EAAUD,EAAW/B,EAAY/oC,OAEjE,CACH,IAAIirC,EAAWlC,EACXA,EAAW8B,EAAQr+B,EAAQ1yB,GAAMkxD,EAAWlxD,EAAM,GAAK0yB,EAAQ7O,EAAQqC,QACvE1iB,OAEaA,IAAb2tD,IACFA,EAAWD,GAEbN,EAAiBl+B,EAAQ1yB,EAAKmxD,EAChC,CACF,GAAGL,EACL,kBCvCA,IAAIF,EAAmB,EAAQ,MAC3BQ,EAAc,EAAQ,MACtBC,EAAkB,EAAQ,MAC1BC,EAAY,EAAQ,KACpBC,EAAkB,EAAQ,MAC1B9D,EAAc,EAAQ,MACtB5gD,EAAU,EAAQ,MAClB2kD,EAAoB,EAAQ,MAC5BjpC,EAAW,EAAQ,MACnBiG,EAAa,EAAQ,MACrBxF,EAAW,EAAQ,MACnB1B,EAAgB,EAAQ,MACxBuF,EAAe,EAAQ,MACvBkkC,EAAU,EAAQ,MAClBU,EAAgB,EAAQ,MA+E5B7qD,EAAOtK,QA9DP,SAAuBo2B,EAAQ7O,EAAQ7jB,EAAKixD,EAAUS,EAAWzC,EAAY/oC,GAC3E,IAAIioC,EAAW4C,EAAQr+B,EAAQ1yB,GAC3BkxD,EAAWH,EAAQltC,EAAQ7jB,GAC3B2xD,EAAUzrC,EAAMzpB,IAAIy0D,GAExB,GAAIS,EACFf,EAAiBl+B,EAAQ1yB,EAAK2xD,OADhC,CAIA,IAAIR,EAAWlC,EACXA,EAAWd,EAAU+C,EAAWlxD,EAAM,GAAK0yB,EAAQ7O,EAAQqC,QAC3D1iB,EAEAouD,OAAwBpuD,IAAb2tD,EAEf,GAAIS,EAAU,CACZ,IAAIhE,EAAQ/gD,EAAQqkD,GAChBpD,GAAUF,GAASrlC,EAAS2oC,GAC5BW,GAAWjE,IAAUE,GAAUjhC,EAAaqkC,GAEhDC,EAAWD,EACPtD,GAASE,GAAU+D,EACjBhlD,EAAQshD,GACVgD,EAAWhD,EAEJqD,EAAkBrD,GACzBgD,EAAWG,EAAUnD,GAEdL,GACP8D,GAAW,EACXT,EAAWC,EAAYF,GAAU,IAE1BW,GACPD,GAAW,EACXT,EAAWE,EAAgBH,GAAU,IAGrCC,EAAW,GAGN7pC,EAAc4pC,IAAazD,EAAYyD,IAC9CC,EAAWhD,EACPV,EAAYU,GACdgD,EAAWM,EAActD,GAEjBnlC,EAASmlC,KAAa3/B,EAAW2/B,KACzCgD,EAAWI,EAAgBL,KAI7BU,GAAW,CAEf,CACIA,IAEF1rC,EAAM7kB,IAAI6vD,EAAUC,GACpBO,EAAUP,EAAUD,EAAUD,EAAUhC,EAAY/oC,GACpDA,EAAc,OAAEgrC,IAElBN,EAAiBl+B,EAAQ1yB,EAAKmxD,EAnD9B,CAoDF,kBC3FA,IAAIW,EAAW,EAAQ,MACnBC,EAAW,EAAQ,MACnBC,EAAc,EAAQ,IAc1BprD,EAAOtK,QAJP,SAAkBy1B,EAAMvZ,GACtB,OAAOw5C,EAAYD,EAAShgC,EAAMvZ,EAAOs5C,GAAW//B,EAAO,GAC7D,kBCdA,IAAIkgC,EAAW,EAAQ,MACnB51D,EAAiB,EAAQ,MACzBy1D,EAAW,EAAQ,MAUnBI,EAAmB71D,EAA4B,SAAS01B,EAAMuO,GAChE,OAAOjkC,EAAe01B,EAAM,WAAY,CACtC,cAAgB,EAChB,YAAc,EACd,MAASkgC,EAAS3xB,GAClB,UAAY,GAEhB,EAPwCwxB,EASxClrD,EAAOtK,QAAU41D,YCFjBtrD,EAAOtK,QAVP,SAAmBwK,EAAGqrD,GAIpB,IAHA,IAAIvuC,GAAS,EACTqK,EAASvmB,MAAMZ,KAEV8c,EAAQ9c,GACfmnB,EAAOrK,GAASuuC,EAASvuC,GAE3B,OAAOqK,CACT,YCJArnB,EAAOtK,QANP,SAAmBy1B,GACjB,OAAO,SAASx1B,GACd,OAAOw1B,EAAKx1B,EACd,CACF,YCCAqK,EAAOtK,QAJP,SAAkB6xB,EAAOnuB,GACvB,OAAOmuB,EAAMuH,IAAI11B,EACnB,kBCVA,IAAI0uB,EAAa,EAAQ,MAezB9nB,EAAOtK,QANP,SAA0B81D,GACxB,IAAInkC,EAAS,IAAImkC,EAAYjlD,YAAYilD,EAAYxiC,YAErD,OADA,IAAIlB,EAAWT,GAAQ5sB,IAAI,IAAIqtB,EAAW0jC,IACnCnkC,CACT,6BCbA,IAAI27B,EAAO,EAAQ,MAGfyI,EAA4C/1D,IAAYA,EAAQg2D,UAAYh2D,EAG5Ei2D,EAAaF,GAA4CzrD,IAAWA,EAAO0rD,UAAY1rD,EAMvFmmB,EAHgBwlC,GAAcA,EAAWj2D,UAAY+1D,EAG5BzI,EAAK78B,YAASvpB,EACvCgvD,EAAczlC,EAASA,EAAOylC,iBAAchvD,EAqBhDoD,EAAOtK,QAXP,SAAqBssB,EAAQ6pC,GAC3B,GAAIA,EACF,OAAO7pC,EAAO1b,QAEhB,IAAItN,EAASgpB,EAAOhpB,OAChBquB,EAASukC,EAAcA,EAAY5yD,GAAU,IAAIgpB,EAAOzb,YAAYvN,GAGxE,OADAgpB,EAAO8pC,KAAKzkC,GACLA,CACT,kBChCA,IAAI0kC,EAAmB,EAAQ,MAe/B/rD,EAAOtK,QALP,SAAyBwsD,EAAY2J,GACnC,IAAI7pC,EAAS6pC,EAASE,EAAiB7J,EAAWlgC,QAAUkgC,EAAWlgC,OACvE,OAAO,IAAIkgC,EAAW37C,YAAYyb,EAAQkgC,EAAW8J,WAAY9J,EAAWlpD,OAC9E,WCMAgH,EAAOtK,QAXP,SAAmBunB,EAAQyR,GACzB,IAAI1R,GAAS,EACThkB,EAASikB,EAAOjkB,OAGpB,IADA01B,IAAUA,EAAQ5tB,MAAM9H,MACfgkB,EAAQhkB,GACf01B,EAAM1R,GAASC,EAAOD,GAExB,OAAO0R,CACT,kBCjBA,IAAItG,EAAc,EAAQ,MACtBi/B,EAAkB,EAAQ,MAsC9BrnD,EAAOtK,QA1BP,SAAoBunB,EAAQnkB,EAAOgzB,EAAQu8B,GACzC,IAAI4D,GAASngC,EACbA,IAAWA,EAAS,CAAC,GAKrB,IAHA,IAAI9O,GAAS,EACThkB,EAASF,EAAME,SAEVgkB,EAAQhkB,GAAQ,CACvB,IAAII,EAAMN,EAAMkkB,GAEZutC,EAAWlC,EACXA,EAAWv8B,EAAO1yB,GAAM6jB,EAAO7jB,GAAMA,EAAK0yB,EAAQ7O,QAClDrgB,OAEaA,IAAb2tD,IACFA,EAAWttC,EAAO7jB,IAEhB6yD,EACF5E,EAAgBv7B,EAAQ1yB,EAAKmxD,GAE7BniC,EAAY0D,EAAQ1yB,EAAKmxD,EAE7B,CACA,OAAOz+B,CACT,kBCrCA,IAGIs3B,EAHO,EAAQ,MAGG,sBAEtBpjD,EAAOtK,QAAU0tD,kBCLjB,IAAI8I,EAAW,EAAQ,MACnBC,EAAiB,EAAQ,MAmC7BnsD,EAAOtK,QA1BP,SAAwB02D,GACtB,OAAOF,GAAS,SAASpgC,EAAQ5gB,GAC/B,IAAI8R,GAAS,EACThkB,EAASkS,EAAQlS,OACjBqvD,EAAarvD,EAAS,EAAIkS,EAAQlS,EAAS,QAAK4D,EAChDyvD,EAAQrzD,EAAS,EAAIkS,EAAQ,QAAKtO,EAWtC,IATAyrD,EAAc+D,EAASpzD,OAAS,GAA0B,mBAAdqvD,GACvCrvD,IAAUqvD,QACXzrD,EAEAyvD,GAASF,EAAejhD,EAAQ,GAAIA,EAAQ,GAAImhD,KAClDhE,EAAarvD,EAAS,OAAI4D,EAAYyrD,EACtCrvD,EAAS,GAEX8yB,EAASt2B,OAAOs2B,KACP9O,EAAQhkB,GAAQ,CACvB,IAAIikB,EAAS/R,EAAQ8R,GACjBC,GACFmvC,EAAStgC,EAAQ7O,EAAQD,EAAOqrC,EAEpC,CACA,OAAOv8B,CACT,GACF,YCVA9rB,EAAOtK,QAjBP,SAAuB42D,GACrB,OAAO,SAASxgC,EAAQy/B,EAAU1D,GAMhC,IALA,IAAI7qC,GAAS,EACTiU,EAAWz7B,OAAOs2B,GAClBhzB,EAAQ+uD,EAAS/7B,GACjB9yB,EAASF,EAAME,OAEZA,KAAU,CACf,IAAII,EAAMN,EAAMwzD,EAAYtzD,IAAWgkB,GACvC,IAA+C,IAA3CuuC,EAASt6B,EAAS73B,GAAMA,EAAK63B,GAC/B,KAEJ,CACA,OAAOnF,CACT,CACF,kBCtBA,IAAI23B,EAAY,EAAQ,KAEpBhuD,EAAkB,WACpB,IACE,IAAI01B,EAAOs4B,EAAUjuD,OAAQ,kBAE7B,OADA21B,EAAK,CAAC,EAAG,GAAI,CAAC,GACPA,CACI,CAAX,MAAOt0B,GAAI,CACf,CANqB,GAQrBmJ,EAAOtK,QAAUD,kBCVjB,IAAI2wD,EAAW,EAAQ,MACnBmG,EAAY,EAAQ,MACpBC,EAAW,EAAQ,MAiFvBxsD,EAAOtK,QA9DP,SAAqBg5B,EAAOu1B,EAAOmE,EAASC,EAAYQ,EAAWvpC,GACjE,IAAImtC,EAjBqB,EAiBTrE,EACZsE,EAAYh+B,EAAM11B,OAClB2zD,EAAY1I,EAAMjrD,OAEtB,GAAI0zD,GAAaC,KAAeF,GAAaE,EAAYD,GACvD,OAAO,EAGT,IAAIE,EAAattC,EAAMzpB,IAAI64B,GACvBm+B,EAAavtC,EAAMzpB,IAAIouD,GAC3B,GAAI2I,GAAcC,EAChB,OAAOD,GAAc3I,GAAS4I,GAAcn+B,EAE9C,IAAI1R,GAAS,EACTqK,GAAS,EACTylC,EA/BuB,EA+Bf1E,EAAoC,IAAIhC,OAAWxpD,EAM/D,IAJA0iB,EAAM7kB,IAAIi0B,EAAOu1B,GACjB3kC,EAAM7kB,IAAIwpD,EAAOv1B,KAGR1R,EAAQ0vC,GAAW,CAC1B,IAAIK,EAAWr+B,EAAM1R,GACjBgwC,EAAW/I,EAAMjnC,GAErB,GAAIqrC,EACF,IAAI4E,EAAWR,EACXpE,EAAW2E,EAAUD,EAAU/vC,EAAOinC,EAAOv1B,EAAOpP,GACpD+oC,EAAW0E,EAAUC,EAAUhwC,EAAO0R,EAAOu1B,EAAO3kC,GAE1D,QAAiB1iB,IAAbqwD,EAAwB,CAC1B,GAAIA,EACF,SAEF5lC,GAAS,EACT,KACF,CAEA,GAAIylC,GACF,IAAKP,EAAUtI,GAAO,SAAS+I,EAAUE,GACnC,IAAKV,EAASM,EAAMI,KACfH,IAAaC,GAAYnE,EAAUkE,EAAUC,EAAU5E,EAASC,EAAY/oC,IAC/E,OAAOwtC,EAAKx2D,KAAK42D,EAErB,IAAI,CACN7lC,GAAS,EACT,KACF,OACK,GACD0lC,IAAaC,IACXnE,EAAUkE,EAAUC,EAAU5E,EAASC,EAAY/oC,GACpD,CACL+H,GAAS,EACT,KACF,CACF,CAGA,OAFA/H,EAAc,OAAEoP,GAChBpP,EAAc,OAAE2kC,GACT58B,CACT,kBCjFA,IAAInhB,EAAS,EAAQ,MACjB4hB,EAAa,EAAQ,MACrBw/B,EAAK,EAAQ,MACbgB,EAAc,EAAQ,MACtB6E,EAAa,EAAQ,MACrBC,EAAa,EAAQ,MAqBrBzJ,EAAcz9C,EAASA,EAAO7L,eAAYuC,EAC1CywD,EAAgB1J,EAAcA,EAAYthB,aAAUzlC,EAoFxDoD,EAAOtK,QAjEP,SAAoBo2B,EAAQm4B,EAAOrgD,EAAKwkD,EAASC,EAAYQ,EAAWvpC,GACtE,OAAQ1b,GACN,IAzBc,oBA0BZ,GAAKkoB,EAAO9C,YAAci7B,EAAMj7B,YAC3B8C,EAAOkgC,YAAc/H,EAAM+H,WAC9B,OAAO,EAETlgC,EAASA,EAAO9J,OAChBiiC,EAAQA,EAAMjiC,OAEhB,IAlCiB,uBAmCf,QAAK8J,EAAO9C,YAAci7B,EAAMj7B,aAC3B6/B,EAAU,IAAI/gC,EAAWgE,GAAS,IAAIhE,EAAWm8B,KAKxD,IAnDU,mBAoDV,IAnDU,gBAoDV,IAjDY,kBAoDV,OAAOqD,GAAIx7B,GAASm4B,GAEtB,IAxDW,iBAyDT,OAAOn4B,EAAO9xB,MAAQiqD,EAAMjqD,MAAQ8xB,EAAOlP,SAAWqnC,EAAMrnC,QAE9D,IAxDY,kBAyDZ,IAvDY,kBA2DV,OAAOkP,GAAWm4B,EAAQ,GAE5B,IAjES,eAkEP,IAAIqJ,EAAUH,EAEhB,IAjES,eAkEP,IAAIV,EA5EiB,EA4ELrE,EAGhB,GAFAkF,IAAYA,EAAUF,GAElBthC,EAAO7b,MAAQg0C,EAAMh0C,OAASw8C,EAChC,OAAO,EAGT,IAAI1B,EAAUzrC,EAAMzpB,IAAIi2B,GACxB,GAAIi/B,EACF,OAAOA,GAAW9G,EAEpBmE,GAtFuB,EAyFvB9oC,EAAM7kB,IAAIqxB,EAAQm4B,GAClB,IAAI58B,EAASihC,EAAYgF,EAAQxhC,GAASwhC,EAAQrJ,GAAQmE,EAASC,EAAYQ,EAAWvpC,GAE1F,OADAA,EAAc,OAAEwM,GACTzE,EAET,IAnFY,kBAoFV,GAAIgmC,EACF,OAAOA,EAAchnD,KAAKylB,IAAWuhC,EAAchnD,KAAK49C,GAG9D,OAAO,CACT,kBC7GA,IAAIsJ,EAAa,EAAQ,MASrB97C,EAHcjc,OAAO6E,UAGQoX,eAgFjCzR,EAAOtK,QAjEP,SAAsBo2B,EAAQm4B,EAAOmE,EAASC,EAAYQ,EAAWvpC,GACnE,IAAImtC,EAtBqB,EAsBTrE,EACZoF,EAAWD,EAAWzhC,GACtB2hC,EAAYD,EAASx0D,OAIzB,GAAIy0D,GAHWF,EAAWtJ,GACDjrD,SAEMyzD,EAC7B,OAAO,EAGT,IADA,IAAIzvC,EAAQywC,EACLzwC,KAAS,CACd,IAAI5jB,EAAMo0D,EAASxwC,GACnB,KAAMyvC,EAAYrzD,KAAO6qD,EAAQxyC,EAAepL,KAAK49C,EAAO7qD,IAC1D,OAAO,CAEX,CAEA,IAAIs0D,EAAapuC,EAAMzpB,IAAIi2B,GACvB+gC,EAAavtC,EAAMzpB,IAAIouD,GAC3B,GAAIyJ,GAAcb,EAChB,OAAOa,GAAczJ,GAAS4I,GAAc/gC,EAE9C,IAAIzE,GAAS,EACb/H,EAAM7kB,IAAIqxB,EAAQm4B,GAClB3kC,EAAM7kB,IAAIwpD,EAAOn4B,GAGjB,IADA,IAAI6hC,EAAWlB,IACNzvC,EAAQywC,GAAW,CAE1B,IAAIlG,EAAWz7B,EADf1yB,EAAMo0D,EAASxwC,IAEXgwC,EAAW/I,EAAM7qD,GAErB,GAAIivD,EACF,IAAI4E,EAAWR,EACXpE,EAAW2E,EAAUzF,EAAUnuD,EAAK6qD,EAAOn4B,EAAQxM,GACnD+oC,EAAWd,EAAUyF,EAAU5zD,EAAK0yB,EAAQm4B,EAAO3kC,GAGzD,UAAmB1iB,IAAbqwD,EACG1F,IAAayF,GAAYnE,EAAUtB,EAAUyF,EAAU5E,EAASC,EAAY/oC,GAC7E2tC,GACD,CACL5lC,GAAS,EACT,KACF,CACAsmC,IAAaA,EAAkB,eAAPv0D,EAC1B,CACA,GAAIiuB,IAAWsmC,EAAU,CACvB,IAAIC,EAAU9hC,EAAOvlB,YACjBsnD,EAAU5J,EAAM19C,YAGhBqnD,GAAWC,KACV,gBAAiB/hC,MAAU,gBAAiBm4B,IACzB,mBAAX2J,GAAyBA,aAAmBA,GACjC,mBAAXC,GAAyBA,aAAmBA,IACvDxmC,GAAS,EAEb,CAGA,OAFA/H,EAAc,OAAEwM,GAChBxM,EAAc,OAAE2kC,GACT58B,CACT,kBCtFA,IAAIy7B,EAA8B,iBAAV,EAAAthD,GAAsB,EAAAA,GAAU,EAAAA,EAAOhM,SAAWA,QAAU,EAAAgM,EAEpFxB,EAAOtK,QAAUotD,kBCHjB,IAAIgL,EAAiB,EAAQ,MACzBC,EAAa,EAAQ,MACrB/sD,EAAO,EAAQ,MAanBhB,EAAOtK,QAJP,SAAoBo2B,GAClB,OAAOgiC,EAAehiC,EAAQ9qB,EAAM+sD,EACtC,kBCbA,IAAIC,EAAY,EAAQ,MAiBxBhuD,EAAOtK,QAPP,SAAoB6V,EAAKnS,GACvB,IAAIyC,EAAO0P,EAAIm5C,SACf,OAAOsJ,EAAU50D,GACbyC,EAAmB,iBAAPzC,EAAkB,SAAW,QACzCyC,EAAK0P,GACX,iBCfA,IAAI+4C,EAAe,EAAQ,MACvBK,EAAW,EAAQ,MAevB3kD,EAAOtK,QALP,SAAmBo2B,EAAQ1yB,GACzB,IAAIzD,EAAQgvD,EAAS74B,EAAQ1yB,GAC7B,OAAOkrD,EAAa3uD,GAASA,OAAQiH,CACvC,kBCdA,IAGIqxD,EAHU,EAAQ,KAGHC,CAAQ14D,OAAOmyB,eAAgBnyB,QAElDwK,EAAOtK,QAAUu4D,kBCLjB,IAAI/nD,EAAS,EAAQ,MAGjBi9C,EAAc3tD,OAAO6E,UAGrBoX,EAAiB0xC,EAAY1xC,eAO7B08C,EAAuBhL,EAAY3mD,SAGnCwrD,EAAiB9hD,EAASA,EAAOwL,iBAAc9U,EA6BnDoD,EAAOtK,QApBP,SAAmBC,GACjB,IAAI22C,EAAQ76B,EAAepL,KAAK1Q,EAAOqyD,GACnCpkD,EAAMjO,EAAMqyD,GAEhB,IACEryD,EAAMqyD,QAAkBprD,EACxB,IAAIwxD,GAAW,CACJ,CAAX,MAAOv3D,GAAI,CAEb,IAAIwwB,EAAS8mC,EAAqB9nD,KAAK1Q,GAQvC,OAPIy4D,IACE9hB,EACF32C,EAAMqyD,GAAkBpkD,SAEjBjO,EAAMqyD,IAGV3gC,CACT,kBC3CA,IAAIgnC,EAAc,EAAQ,MACtBC,EAAY,EAAQ,KAMpBj0B,EAHc7kC,OAAO6E,UAGcggC,qBAGnCk0B,EAAmB/4D,OAAOyL,sBAS1B8sD,EAAcQ,EAA+B,SAASziC,GACxD,OAAc,MAAVA,EACK,IAETA,EAASt2B,OAAOs2B,GACTuiC,EAAYE,EAAiBziC,IAAS,SAASuR,GACpD,OAAOhD,EAAqBh0B,KAAKylB,EAAQuR,EAC3C,IACF,EARqCixB,EAUrCtuD,EAAOtK,QAAUq4D,kBC7BjB,IAAIpkB,EAAW,EAAQ,MACnBpvC,EAAM,EAAQ,MACdkd,EAAU,EAAQ,MAClBmzB,EAAM,EAAQ,MACdpP,EAAU,EAAQ,KAClBysB,EAAa,EAAQ,MACrBzD,EAAW,EAAQ,KAGnBgK,EAAS,eAETC,EAAa,mBACbC,EAAS,eACTC,EAAa,mBAEbC,EAAc,oBAGdC,EAAqBrK,EAAS7a,GAC9BmlB,EAAgBtK,EAASjqD,GACzBw0D,EAAoBvK,EAAS/sC,GAC7Bu3C,EAAgBxK,EAAS5Z,GACzBqkB,EAAoBzK,EAAShpB,GAS7BitB,EAASR,GAGRte,GAAY8e,EAAO,IAAI9e,EAAS,IAAI3hB,YAAY,MAAQ4mC,GACxDr0D,GAAOkuD,EAAO,IAAIluD,IAAQi0D,GAC1B/2C,GAAWgxC,EAAOhxC,EAAQC,YAAc+2C,GACxC7jB,GAAO6d,EAAO,IAAI7d,IAAQ8jB,GAC1BlzB,GAAWitB,EAAO,IAAIjtB,IAAYmzB,KACrClG,EAAS,SAAS9yD,GAChB,IAAI0xB,EAAS4gC,EAAWtyD,GACpBu5D,EA/BQ,mBA+BD7nC,EAAsB1xB,EAAM4Q,iBAAc3J,EACjDuyD,EAAaD,EAAO1K,EAAS0K,GAAQ,GAEzC,GAAIC,EACF,OAAQA,GACN,KAAKN,EAAoB,OAAOD,EAChC,KAAKE,EAAe,OAAON,EAC3B,KAAKO,EAAmB,OAAON,EAC/B,KAAKO,EAAe,OAAON,EAC3B,KAAKO,EAAmB,OAAON,EAGnC,OAAOtnC,CACT,GAGFrnB,EAAOtK,QAAU+yD,YC7CjBzoD,EAAOtK,QAJP,SAAkBo2B,EAAQ1yB,GACxB,OAAiB,MAAV0yB,OAAiBlvB,EAAYkvB,EAAO1yB,EAC7C,kBCVA,IAAIsqD,EAAe,EAAQ,MAc3B1jD,EAAOtK,QALP,WACEiE,KAAK+qD,SAAWhB,EAAeA,EAAa,MAAQ,CAAC,EACrD/pD,KAAKsW,KAAO,CACd,WCIAjQ,EAAOtK,QANP,SAAoB0D,GAClB,IAAIiuB,EAAS1tB,KAAKm1B,IAAI11B,WAAeO,KAAK+qD,SAAStrD,GAEnD,OADAO,KAAKsW,MAAQoX,EAAS,EAAI,EACnBA,CACT,kBCdA,IAAIq8B,EAAe,EAAQ,MASvBjyC,EAHcjc,OAAO6E,UAGQoX,eAoBjCzR,EAAOtK,QATP,SAAiB0D,GACf,IAAIyC,EAAOlC,KAAK+qD,SAChB,GAAIhB,EAAc,CAChB,IAAIr8B,EAASxrB,EAAKzC,GAClB,MArBiB,8BAqBViuB,OAA4BzqB,EAAYyqB,CACjD,CACA,OAAO5V,EAAepL,KAAKxK,EAAMzC,GAAOyC,EAAKzC,QAAOwD,CACtD,kBC3BA,IAAI8mD,EAAe,EAAQ,MAMvBjyC,EAHcjc,OAAO6E,UAGQoX,eAgBjCzR,EAAOtK,QALP,SAAiB0D,GACf,IAAIyC,EAAOlC,KAAK+qD,SAChB,OAAOhB,OAA8B9mD,IAAdf,EAAKzC,GAAsBqY,EAAepL,KAAKxK,EAAMzC,EAC9E,kBCpBA,IAAIsqD,EAAe,EAAQ,MAsB3B1jD,EAAOtK,QAPP,SAAiB0D,EAAKzD,GACpB,IAAIkG,EAAOlC,KAAK+qD,SAGhB,OAFA/qD,KAAKsW,MAAQtW,KAAKm1B,IAAI11B,GAAO,EAAI,EACjCyC,EAAKzC,GAAQsqD,QAA0B9mD,IAAVjH,EAfV,4BAekDA,EAC9DgE,IACT,kBCpBA,IAAI8tD,EAAa,EAAQ,MACrBwG,EAAe,EAAQ,MACvBrE,EAAc,EAAQ,MAe1B5pD,EAAOtK,QANP,SAAyBo2B,GACvB,MAAqC,mBAAtBA,EAAOvlB,aAA8BqjD,EAAY99B,GAE5D,CAAC,EADD27B,EAAWwG,EAAaniC,GAE9B,YCdA,IAGIsjC,EAAW,mBAoBfpvD,EAAOtK,QAVP,SAAiBC,EAAOqD,GACtB,IAAIqG,SAAc1J,EAGlB,SAFAqD,EAAmB,MAAVA,EAfY,iBAewBA,KAGlC,UAARqG,GACU,UAARA,GAAoB+vD,EAAS5oD,KAAK7Q,KAChCA,GAAS,GAAKA,EAAQ,GAAK,GAAKA,EAAQqD,CACjD,kBCtBA,IAAIsuD,EAAK,EAAQ,MACb+H,EAAc,EAAQ,MACtBvI,EAAU,EAAQ,MAClB1kC,EAAW,EAAQ,MA0BvBpiB,EAAOtK,QAdP,SAAwBC,EAAOqnB,EAAO8O,GACpC,IAAK1J,EAAS0J,GACZ,OAAO,EAET,IAAIzsB,SAAc2d,EAClB,SAAY,UAAR3d,EACKgwD,EAAYvjC,IAAWg7B,EAAQ9pC,EAAO8O,EAAO9yB,QACrC,UAARqG,GAAoB2d,KAAS8O,IAE7Bw7B,EAAGx7B,EAAO9O,GAAQrnB,EAG7B,YCbAqK,EAAOtK,QAPP,SAAmBC,GACjB,IAAI0J,SAAc1J,EAClB,MAAgB,UAAR0J,GAA4B,UAARA,GAA4B,UAARA,GAA4B,WAARA,EACrD,cAAV1J,EACU,OAAVA,CACP,kBCZA,IAIMsB,EAJFmsD,EAAa,EAAQ,MAGrBC,GACEpsD,EAAM,SAAS2uB,KAAKw9B,GAAcA,EAAWpiD,MAAQoiD,EAAWpiD,KAAK68B,UAAY,KACvE,iBAAmB5mC,EAAO,GAc1C+I,EAAOtK,QAJP,SAAkBy1B,GAChB,QAASk4B,GAAeA,KAAcl4B,CACxC,YChBA,IAAIg4B,EAAc3tD,OAAO6E,UAgBzB2F,EAAOtK,QAPP,SAAqBC,GACnB,IAAIu5D,EAAOv5D,GAASA,EAAM4Q,YAG1B,OAAO5Q,KAFqB,mBAARu5D,GAAsBA,EAAK70D,WAAc8oD,EAG/D,YCHAnjD,EAAOtK,QALP,WACEiE,KAAK+qD,SAAW,GAChB/qD,KAAKsW,KAAO,CACd,kBCVA,IAAI+zC,EAAe,EAAQ,MAMvBt3C,EAHa5L,MAAMzG,UAGCqS,OA4BxB1M,EAAOtK,QAjBP,SAAyB0D,GACvB,IAAIyC,EAAOlC,KAAK+qD,SACZ1nC,EAAQgnC,EAAanoD,EAAMzC,GAE/B,QAAI4jB,EAAQ,KAIRA,GADYnhB,EAAK7C,OAAS,EAE5B6C,EAAK6qB,MAELha,EAAOrG,KAAKxK,EAAMmhB,EAAO,KAEzBrjB,KAAKsW,MACA,EACT,kBChCA,IAAI+zC,EAAe,EAAQ,MAkB3BhkD,EAAOtK,QAPP,SAAsB0D,GACpB,IAAIyC,EAAOlC,KAAK+qD,SACZ1nC,EAAQgnC,EAAanoD,EAAMzC,GAE/B,OAAO4jB,EAAQ,OAAIpgB,EAAYf,EAAKmhB,GAAO,EAC7C,kBChBA,IAAIgnC,EAAe,EAAQ,MAe3BhkD,EAAOtK,QAJP,SAAsB0D,GACpB,OAAO4qD,EAAarqD,KAAK+qD,SAAUtrD,IAAQ,CAC7C,kBCbA,IAAI4qD,EAAe,EAAQ,MAyB3BhkD,EAAOtK,QAbP,SAAsB0D,EAAKzD,GACzB,IAAIkG,EAAOlC,KAAK+qD,SACZ1nC,EAAQgnC,EAAanoD,EAAMzC,GAQ/B,OANI4jB,EAAQ,KACRrjB,KAAKsW,KACPpU,EAAKvF,KAAK,CAAC8C,EAAKzD,KAEhBkG,EAAKmhB,GAAO,GAAKrnB,EAEZgE,IACT,kBCvBA,IAAIkqD,EAAO,EAAQ,MACfC,EAAY,EAAQ,MACpBvpD,EAAM,EAAQ,MAkBlByF,EAAOtK,QATP,WACEiE,KAAKsW,KAAO,EACZtW,KAAK+qD,SAAW,CACd,KAAQ,IAAIb,EACZ,IAAO,IAAKtpD,GAAOupD,GACnB,OAAU,IAAID,EAElB,kBClBA,IAAIY,EAAa,EAAQ,MAiBzBzkD,EAAOtK,QANP,SAAwB0D,GACtB,IAAIiuB,EAASo9B,EAAW9qD,KAAMP,GAAa,OAAEA,GAE7C,OADAO,KAAKsW,MAAQoX,EAAS,EAAI,EACnBA,CACT,iBCfA,IAAIo9B,EAAa,EAAQ,MAezBzkD,EAAOtK,QAJP,SAAqB0D,GACnB,OAAOqrD,EAAW9qD,KAAMP,GAAKvD,IAAIuD,EACnC,kBCbA,IAAIqrD,EAAa,EAAQ,MAezBzkD,EAAOtK,QAJP,SAAqB0D,GACnB,OAAOqrD,EAAW9qD,KAAMP,GAAK01B,IAAI11B,EACnC,kBCbA,IAAIqrD,EAAa,EAAQ,MAqBzBzkD,EAAOtK,QATP,SAAqB0D,EAAKzD,GACxB,IAAIkG,EAAO4oD,EAAW9qD,KAAMP,GACxB6W,EAAOpU,EAAKoU,KAIhB,OAFApU,EAAKpB,IAAIrB,EAAKzD,GACdgE,KAAKsW,MAAQpU,EAAKoU,MAAQA,EAAO,EAAI,EAC9BtW,IACT,YCFAqG,EAAOtK,QAVP,SAAoB6V,GAClB,IAAIyR,GAAS,EACTqK,EAASvmB,MAAMyK,EAAI0E,MAKvB,OAHA1E,EAAIzU,SAAQ,SAASnB,EAAOyD,GAC1BiuB,IAASrK,GAAS,CAAC5jB,EAAKzD,EAC1B,IACO0xB,CACT,kBCfA,IAGIq8B,EAHY,EAAQ,IAGLD,CAAUjuD,OAAQ,UAErCwK,EAAOtK,QAAUguD,kBCLjB,IAGImG,EAHU,EAAQ,KAGLqE,CAAQ14D,OAAOwL,KAAMxL,QAEtCwK,EAAOtK,QAAUm0D,YCcjB7pD,EAAOtK,QAVP,SAAsBo2B,GACpB,IAAIzE,EAAS,GACb,GAAc,MAAVyE,EACF,IAAK,IAAI1yB,KAAO5D,OAAOs2B,GACrBzE,EAAO/wB,KAAK8C,GAGhB,OAAOiuB,CACT,6BCjBA,IAAIy7B,EAAa,EAAQ,MAGrB2I,EAA4C/1D,IAAYA,EAAQg2D,UAAYh2D,EAG5Ei2D,EAAaF,GAA4CzrD,IAAWA,EAAO0rD,UAAY1rD,EAMvFsvD,EAHgB3D,GAAcA,EAAWj2D,UAAY+1D,GAGtB3I,EAAWrhC,QAG1C8tC,EAAY,WACd,IAEE,IAAIxhB,EAAQ4d,GAAcA,EAAW6D,SAAW7D,EAAW6D,QAAQ,QAAQzhB,MAE3E,OAAIA,GAKGuhB,GAAeA,EAAYG,SAAWH,EAAYG,QAAQ,OACtD,CAAX,MAAO54D,GAAI,CACf,CAZe,GAcfmJ,EAAOtK,QAAU65D,YC5BjB,IAOIpB,EAPc34D,OAAO6E,UAOcmC,SAavCwD,EAAOtK,QAJP,SAAwBC,GACtB,OAAOw4D,EAAqB9nD,KAAK1Q,EACnC,YCLAqK,EAAOtK,QANP,SAAiBy1B,EAAMukC,GACrB,OAAO,SAAS/1B,GACd,OAAOxO,EAAKukC,EAAU/1B,GACxB,CACF,kBCZA,IAAIx4B,EAAQ,EAAQ,MAGhBwuD,EAAYhlD,KAAKo3B,IAgCrB/hC,EAAOtK,QArBP,SAAkBy1B,EAAMvZ,EAAO89C,GAE7B,OADA99C,EAAQ+9C,OAAoB/yD,IAAVgV,EAAuBuZ,EAAKnyB,OAAS,EAAK4Y,EAAO,GAC5D,WAML,IALA,IAAIuR,EAAOxmB,UACPqgB,GAAS,EACThkB,EAAS22D,EAAUxsC,EAAKnqB,OAAS4Y,EAAO,GACxC8c,EAAQ5tB,MAAM9H,KAETgkB,EAAQhkB,GACf01B,EAAM1R,GAASmG,EAAKvR,EAAQoL,GAE9BA,GAAS,EAET,IADA,IAAI4yC,EAAY9uD,MAAM8Q,EAAQ,KACrBoL,EAAQpL,GACfg+C,EAAU5yC,GAASmG,EAAKnG,GAG1B,OADA4yC,EAAUh+C,GAAS89C,EAAUhhC,GACtBvtB,EAAMgqB,EAAMxxB,KAAMi2D,EAC3B,CACF,kBCjCA,IAAI9M,EAAa,EAAQ,MAGrBC,EAA0B,iBAARhjD,MAAoBA,MAAQA,KAAKvK,SAAWA,QAAUuK,KAGxEijD,EAAOF,GAAcC,GAAY3oB,SAAS,cAATA,GAErCp6B,EAAOtK,QAAUstD,YCYjBhjD,EAAOtK,QAZP,SAAiBo2B,EAAQ1yB,GACvB,IAAY,gBAARA,GAAgD,mBAAhB0yB,EAAO1yB,KAIhC,aAAPA,EAIJ,OAAO0yB,EAAO1yB,EAChB,WCAA4G,EAAOtK,QALP,SAAqBC,GAEnB,OADAgE,KAAK+qD,SAASjqD,IAAI9E,EAbC,6BAcZgE,IACT,YCHAqG,EAAOtK,QAJP,SAAqBC,GACnB,OAAOgE,KAAK+qD,SAAS51B,IAAIn5B,EAC3B,YCMAqK,EAAOtK,QAVP,SAAoB+E,GAClB,IAAIuiB,GAAS,EACTqK,EAASvmB,MAAMrG,EAAIwV,MAKvB,OAHAxV,EAAI3D,SAAQ,SAASnB,GACnB0xB,IAASrK,GAASrnB,CACpB,IACO0xB,CACT,gBCfA,IAAIikC,EAAkB,EAAQ,MAW1BF,EAVW,EAAQ,KAULyE,CAASvE,GAE3BtrD,EAAOtK,QAAU01D,YCZjB,IAII0E,EAAYj+C,KAAKyS,IA+BrBtkB,EAAOtK,QApBP,SAAkBy1B,GAChB,IAAIluB,EAAQ,EACR8yD,EAAa,EAEjB,OAAO,WACL,IAAIC,EAAQF,IACRG,EApBO,IAoBiBD,EAAQD,GAGpC,GADAA,EAAaC,EACTC,EAAY,GACd,KAAMhzD,GAzBI,IA0BR,OAAON,UAAU,QAGnBM,EAAQ,EAEV,OAAOkuB,EAAKhqB,WAAMvE,EAAWD,UAC/B,CACF,kBClCA,IAAImnD,EAAY,EAAQ,MAcxB9jD,EAAOtK,QALP,WACEiE,KAAK+qD,SAAW,IAAIZ,EACpBnqD,KAAKsW,KAAO,CACd,YCKAjQ,EAAOtK,QARP,SAAqB0D,GACnB,IAAIyC,EAAOlC,KAAK+qD,SACZr9B,EAASxrB,EAAa,OAAEzC,GAG5B,OADAO,KAAKsW,KAAOpU,EAAKoU,KACVoX,CACT,YCFArnB,EAAOtK,QAJP,SAAkB0D,GAChB,OAAOO,KAAK+qD,SAAS7uD,IAAIuD,EAC3B,YCEA4G,EAAOtK,QAJP,SAAkB0D,GAChB,OAAOO,KAAK+qD,SAAS51B,IAAI11B,EAC3B,kBCXA,IAAI0qD,EAAY,EAAQ,MACpBvpD,EAAM,EAAQ,MACdwpD,EAAW,EAAQ,MA+BvB/jD,EAAOtK,QAhBP,SAAkB0D,EAAKzD,GACrB,IAAIkG,EAAOlC,KAAK+qD,SAChB,GAAI7oD,aAAgBioD,EAAW,CAC7B,IAAIoM,EAAQr0D,EAAK6oD,SACjB,IAAKnqD,GAAQ21D,EAAMl3D,OAASm3D,IAG1B,OAFAD,EAAM55D,KAAK,CAAC8C,EAAKzD,IACjBgE,KAAKsW,OAASpU,EAAKoU,KACZtW,KAETkC,EAAOlC,KAAK+qD,SAAW,IAAIX,EAASmM,EACtC,CAGA,OAFAr0D,EAAKpB,IAAIrB,EAAKzD,GACdgE,KAAKsW,KAAOpU,EAAKoU,KACVtW,IACT,WC9BA,IAGI2pD,EAHYlpB,SAAS//B,UAGImC,SAqB7BwD,EAAOtK,QAZP,SAAkBy1B,GAChB,GAAY,MAARA,EAAc,CAChB,IACE,OAAOm4B,EAAaj9C,KAAK8kB,EACd,CAAX,MAAOt0B,GAAI,CACb,IACE,OAAQs0B,EAAO,EACJ,CAAX,MAAOt0B,GAAI,CACf,CACA,MAAO,EACT,YCEAmJ,EAAOtK,QANP,SAAkBC,GAChB,OAAO,WACL,OAAOA,CACT,CACF,YCaAqK,EAAOtK,QAJP,SAAYC,EAAOsuD,GACjB,OAAOtuD,IAAUsuD,GAAUtuD,GAAUA,GAASsuD,GAAUA,CAC1D,YCdAjkD,EAAOtK,QAJP,SAAkBC,GAChB,OAAOA,CACT,kBClBA,IAAIy6D,EAAkB,EAAQ,MAC1BnL,EAAe,EAAQ,MAGvB9B,EAAc3tD,OAAO6E,UAGrBoX,EAAiB0xC,EAAY1xC,eAG7B4oB,EAAuB8oB,EAAY9oB,qBAoBnCwsB,EAAcuJ,EAAgB,WAAa,OAAOzzD,SAAW,CAA/B,IAAsCyzD,EAAkB,SAASz6D,GACjG,OAAOsvD,EAAatvD,IAAU8b,EAAepL,KAAK1Q,EAAO,YACtD0kC,EAAqBh0B,KAAK1Q,EAAO,SACtC,EAEAqK,EAAOtK,QAAUmxD,YCZjB,IAAI5gD,EAAUnF,MAAMmF,QAEpBjG,EAAOtK,QAAUuQ,kBCzBjB,IAAI2hB,EAAa,EAAQ,MACrB8hC,EAAW,EAAQ,MA+BvB1pD,EAAOtK,QAJP,SAAqBC,GACnB,OAAgB,MAATA,GAAiB+zD,EAAS/zD,EAAMqD,UAAY4uB,EAAWjyB,EAChE,kBC9BA,IAAI05D,EAAc,EAAQ,MACtBpK,EAAe,EAAQ,MA+B3BjlD,EAAOtK,QAJP,SAA2BC,GACzB,OAAOsvD,EAAatvD,IAAU05D,EAAY15D,EAC5C,6BC9BA,IAAIqtD,EAAO,EAAQ,MACfqN,EAAY,EAAQ,MAGpB5E,EAA4C/1D,IAAYA,EAAQg2D,UAAYh2D,EAG5Ei2D,EAAaF,GAA4CzrD,IAAWA,EAAO0rD,UAAY1rD,EAMvFmmB,EAHgBwlC,GAAcA,EAAWj2D,UAAY+1D,EAG5BzI,EAAK78B,YAASvpB,EAsBvC+kB,GAnBiBwE,EAASA,EAAOxE,cAAW/kB,IAmBfyzD,EAEjCrwD,EAAOtK,QAAUisB,kBCrCjB,IAAIwmC,EAAc,EAAQ,KAkC1BnoD,EAAOtK,QAJP,SAAiBC,EAAOsuD,GACtB,OAAOkE,EAAYxyD,EAAOsuD,EAC5B,kBChCA,IAAIgE,EAAa,EAAQ,MACrB7lC,EAAW,EAAQ,MAmCvBpiB,EAAOtK,QAVP,SAAoBC,GAClB,IAAKysB,EAASzsB,GACZ,OAAO,EAIT,IAAIiO,EAAMqkD,EAAWtyD,GACrB,MA5BY,qBA4BLiO,GA3BI,8BA2BcA,GA7BZ,0BA6B6BA,GA1B7B,kBA0BgDA,CAC/D,YCAA5D,EAAOtK,QALP,SAAkBC,GAChB,MAAuB,iBAATA,GACZA,GAAS,GAAKA,EAAQ,GAAK,GAAKA,GA9Bb,gBA+BvB,YCFAqK,EAAOtK,QALP,SAAkBC,GAChB,IAAI0J,SAAc1J,EAClB,OAAgB,MAATA,IAA0B,UAAR0J,GAA4B,YAARA,EAC/C,YCAAW,EAAOtK,QAJP,SAAsBC,GACpB,OAAgB,MAATA,GAAiC,iBAATA,CACjC,kBC1BA,IAAIsyD,EAAa,EAAQ,MACrBgG,EAAe,EAAQ,MACvBhJ,EAAe,EAAQ,MAMvB/B,EAAY9oB,SAAS//B,UACrB8oD,EAAc3tD,OAAO6E,UAGrBipD,EAAeJ,EAAU1mD,SAGzBiV,EAAiB0xC,EAAY1xC,eAG7B6+C,EAAmBhN,EAAaj9C,KAAK7Q,QA2CzCwK,EAAOtK,QAbP,SAAuBC,GACrB,IAAKsvD,EAAatvD,IA5CJ,mBA4CcsyD,EAAWtyD,GACrC,OAAO,EAET,IAAI6/B,EAAQy4B,EAAat4D,GACzB,GAAc,OAAV6/B,EACF,OAAO,EAET,IAAI05B,EAAOz9C,EAAepL,KAAKmvB,EAAO,gBAAkBA,EAAMjvB,YAC9D,MAAsB,mBAAR2oD,GAAsBA,aAAgBA,GAClD5L,EAAaj9C,KAAK6oD,IAASoB,CAC/B,kBC3DA,IAAIC,EAAmB,EAAQ,MAC3BC,EAAY,EAAQ,MACpBjB,EAAW,EAAQ,MAGnBkB,EAAmBlB,GAAYA,EAAStpC,aAmBxCA,EAAewqC,EAAmBD,EAAUC,GAAoBF,EAEpEvwD,EAAOtK,QAAUuwB,kBC1BjB,IAAIyqC,EAAgB,EAAQ,MACxBC,EAAW,EAAQ,KACnBtB,EAAc,EAAQ,MAkC1BrvD,EAAOtK,QAJP,SAAco2B,GACZ,OAAOujC,EAAYvjC,GAAU4kC,EAAc5kC,GAAU6kC,EAAS7kC,EAChE,kBClCA,IAAI4kC,EAAgB,EAAQ,MACxBE,EAAa,EAAQ,KACrBvB,EAAc,EAAQ,MA6B1BrvD,EAAOtK,QAJP,SAAgBo2B,GACd,OAAOujC,EAAYvjC,GAAU4kC,EAAc5kC,GAAQ,GAAQ8kC,EAAW9kC,EACxE,kBC7BA,IAAIs+B,EAAY,EAAQ,MAkCpBjqC,EAjCiB,EAAQ,KAiCjB0wC,EAAe,SAAS/kC,EAAQ7O,EAAQotC,GAClDD,EAAUt+B,EAAQ7O,EAAQotC,EAC5B,IAEArqD,EAAOtK,QAAUyqB,WChBjBngB,EAAOtK,QAJP,WACE,MAAO,EACT,YCHAsK,EAAOtK,QAJP,WACE,OAAO,CACT,kBCfA,IAAIo7D,EAAa,EAAQ,MACrB5G,EAAS,EAAQ,MA8BrBlqD,EAAOtK,QAJP,SAAuBC,GACrB,OAAOm7D,EAAWn7D,EAAOu0D,EAAOv0D,GAClC,6CC3BIE,EAAM,EAAQ,MACdk7D,EAAU,EAAQ,MAgBtB,SAASC,EAAQxzD,GACbA,EAAUA,GAAW,CAAC,EAEtB7D,KAAKs3D,SAAW,CAAC,EACjBt3D,KAAK8B,OAAS,GACd9B,KAAKmqB,OAAS,WAEdnqB,KAAKwK,UAAY,GAGjBxK,KAAKqC,aAAe,GAChBwB,EAAQxB,eAC4B,iBAAzBwB,EAAQxB,aACfrC,KAAKqC,aAAewB,EAAQxB,aAG5BrC,KAAKE,KAAK,iDAKlBF,KAAK4B,MAAQ,UAAWiC,IAA6B,IAAlBA,EAAQjC,KAC/C,CApCAyE,EAAOtK,QAAUs7D,EA4CjBA,EAAQ32D,UAAU2U,GAAK,SAASkiD,EAAWrrC,GACvClsB,KAAKwK,UAAU7N,KAAK,CAChB46D,UAAWA,EACXrrC,SAAUA,GAElB,EAQAmrC,EAAQ32D,UAAUga,IAAM,SAAS68C,EAAWrrC,GACxClsB,KAAKwK,UAAYxK,KAAKwK,UAAUxJ,QAAO,SAASoiB,GAC5C,OAGM,IAFFA,EAASm0C,YAAcA,GACvBn0C,EAAS8I,WAAaA,EAE9B,GACJ,EASAmrC,EAAQ32D,UAAUD,KAAO,SAAS82D,EAAWja,GACzC,IAAK,IAAIl+C,EAAI,EAAGA,EAAIY,KAAKwK,UAAUnL,OAAQD,IAAK,CAC5C,IAAIgkB,EAAWpjB,KAAKwK,UAAUpL,GAC1BgkB,EAASm0C,YAAcA,GACvBn0C,EAAS8I,SAASoxB,EAE1B,CACJ,EAQA+Z,EAAQ32D,UAAUR,KAAO,SAAS+iB,GAC1BjjB,KAAK4B,OACLxE,EAAQ8C,KAAK+iB,GAGjBjjB,KAAKS,KAAK,QAAS,IAAI2S,MAAM6P,GACjC,EAaAo0C,EAAQ32D,UAAU4B,gBAAkB,SAASR,EAAQqoB,EAAQxoB,GACpD3B,KAAKs3D,SAASx1D,KACf9B,KAAKs3D,SAASx1D,GAAU,CAAC,GAG7B9B,KAAKs3D,SAASx1D,GAAQqoB,GAAUxoB,CACpC,EAUA01D,EAAQ32D,UAAU6B,UAAY,SAAST,GACb,iBAAXA,GAQW,KAAlBA,EAAOmJ,QACPjL,KAAKE,KAAK,yEAGV4B,IAAW9B,KAAKqC,cAAiBrC,KAAKs3D,SAASx1D,IAC/C9B,KAAKE,KAAK,gCAAkC4B,EAAS,0DAGzD9B,KAAK8B,OAASA,GAfV9B,KAAKE,KACD,0DAA6D4B,EAA7D,iCAeZ,EAUAu1D,EAAQ32D,UAAU82D,cAAgB,SAASrtC,GACjB,iBAAXA,GAQW,KAAlBA,EAAOlf,QACPjL,KAAKE,KAAK,4DAGdF,KAAKmqB,OAASA,GAXVnqB,KAAKE,KACD,8DAAiEiqB,EAAjE,iCAWZ,EAWAktC,EAAQ32D,UAAUyC,QAAU,SAAS6M,GACjC,OAAOhQ,KAAKy3D,WAAWz3D,KAAKmqB,OAAQ,GAAIna,EAC5C,EAYAqnD,EAAQ32D,UAAUg3D,SAAW,SAASvtC,EAAQna,GAC1C,OAAOhQ,KAAKy3D,WAAWttC,EAAQ,GAAIna,EACvC,EAaAqnD,EAAQ32D,UAAU6C,SAAW,SAASyM,EAAO2nD,EAAar0D,GACtD,OAAOtD,KAAKy3D,WAAWz3D,KAAKmqB,OAAQ,GAAIna,EAAO2nD,EAAar0D,EAChE,EAcA+zD,EAAQ32D,UAAUk3D,UAAY,SAASztC,EAAQna,EAAO2nD,EAAar0D,GAC/D,OAAOtD,KAAKy3D,WAAWttC,EAAQ,GAAIna,EAAO2nD,EAAar0D,EAC3D,EAYA+zD,EAAQ32D,UAAUm3D,SAAW,SAASC,EAAS9nD,GAC3C,OAAOhQ,KAAKy3D,WAAWz3D,KAAKmqB,OAAQ2tC,EAAS9nD,EACjD,EAaAqnD,EAAQ32D,UAAUq3D,UAAY,SAAS5tC,EAAQ2tC,EAAS9nD,GACpD,OAAOhQ,KAAKy3D,WAAWttC,EAAQ2tC,EAAS9nD,EAC5C,EAcAqnD,EAAQ32D,UAAUs3D,UAAY,SAASF,EAAS9nD,EAAO2nD,EAAar0D,GAChE,OAAOtD,KAAKy3D,WAAWz3D,KAAKmqB,OAAQ2tC,EAAS9nD,EAAO2nD,EAAar0D,EACrE,EAeA+zD,EAAQ32D,UAAU+2D,WAAa,SAASttC,EAAQ2tC,EAAS9nD,EAAO2nD,EAAar0D,GACzE,IACI20D,EACA50C,EAFA60C,EAAqBloD,EAYzB,GARA8nD,EAAUA,GAAW,GAEhBtvB,MAAMllC,IAAoB,IAAVA,IACjB40D,EAAqBP,GAAe3nD,GAGxCioD,EAAcj4D,KAAKm4D,gBAAgBhuC,EAAQ2tC,EAAS9nD,GAEnC,CACb,GAAqB,iBAAV1M,EAGc,kBADrB+f,GAAQ+0C,EADUhB,EAAQC,EAAQgB,gBAAgBr4D,KAAK8B,SAASs2D,aAC5C90D,MAEhB+f,EAAQA,EAAQ,EAAI,QAGxBA,EAAQ,EAGZ,OAAO40C,EAAY/nD,OAAOmT,IAAU60C,CACxC,CAKA,OAJUl4D,KAAKqC,cAAgBrC,KAAK8B,SAAW9B,KAAKqC,cAChDrC,KAAKE,KAAK,uCAAyC8P,EAAQ,iBAAmB8nD,EAAU,iBAAmB3tC,EAAS,KAGjH+tC,CACX,EAeAb,EAAQ32D,UAAU43D,WAAa,SAASnuC,EAAQ2tC,EAAS9nD,GACrD,IAAIioD,EAGJ,OADAA,EAAcj4D,KAAKm4D,gBAAgBhuC,EAAQ2tC,EAAS9nD,KAEzCioD,EAAYM,UAGhB,CAAC,CACZ,EAWAlB,EAAQ32D,UAAUy3D,gBAAkB,SAAShuC,EAAQ2tC,EAAS9nD,GAG1D,OAFA8nD,EAAUA,GAAW,GAEd57D,EAAI8D,KAAKs3D,SAAU,CAACt3D,KAAK8B,OAAQqoB,EAAQ,eAAgB2tC,EAAS9nD,GAC7E,EAaAqnD,EAAQgB,gBAAkB,SAASv2D,GAC/B,OAAOA,EAAOgqB,MAAM,SAAS,GAAG/K,aACpC,EASAs2C,EAAQ32D,UAAU83D,WAAa,SAASruC,GAChCnqB,KAAK4B,OACLxE,EAAQ8C,KAAK,2VAOjBF,KAAKw3D,cAAcrtC,EACvB,EAOAktC,EAAQ32D,UAAU+3D,UAAY,SAAS32D,GACnC9B,KAAKuC,UAAUT,EACnB,EASAu1D,EAAQ32D,UAAUg4D,cAAgB,WAC9Bt7D,EAAQC,MAAM,4SAMlB,yBC/ZAgJ,EAAOtK,QAAU,CACb48D,IAAK,CACDt4D,KAAM,SACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,iCACbX,YAAa,SAAS7xD,GAClB,OAAQA,EAAI,CAChB,GAEJyyD,GAAI,CACA34D,KAAM,YACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJ0yD,GAAI,CACA54D,KAAM,OACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,iCACbX,YAAa,SAAS7xD,GAClB,OAAQA,EAAI,CAChB,GAEJ2yD,GAAI,CACA74D,KAAM,UACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,iCACbX,YAAa,SAAS7xD,GAClB,OAAQA,EAAI,CAChB,GAEJ4yD,GAAI,CACA94D,KAAM,YACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJ6yD,GAAI,CACA/4D,KAAM,SACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IACT,CACCx1D,OAAQ,EACRw1D,OAAQ,MAEZC,SAAU,EACVC,YAAa,+HACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,EAAU,EAAU,IAANA,EAAU,EAAU,IAANA,EAAU,EAAIA,EAAI,KAAO,GAAKA,EAAI,KAAO,GAAK,EAAIA,EAAI,KAAO,GAAK,EAAI,CAC9G,GAEJ8yD,IAAK,CACDh5D,KAAM,aACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,iCACbX,YAAa,SAAS7xD,GAClB,OAAQA,EAAI,CAChB,GAEJ+yD,IAAK,CACDj5D,KAAM,WACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJgzD,GAAI,CACAl5D,KAAM,SACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,2BACbX,YAAa,WACT,OAAO,CACX,GAEJoB,GAAI,CACAn5D,KAAM,cACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJkzD,GAAI,CACAp5D,KAAM,aACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,sIACbX,YAAa,SAAS7xD,GAClB,OAAQA,EAAI,IAAO,GAAKA,EAAI,KAAQ,GAAK,EAAIA,EAAI,IAAM,GAAKA,EAAI,IAAM,IAAMA,EAAI,IAAM,IAAMA,EAAI,KAAO,IAAM,EAAI,CACrH,GAEJmzD,GAAI,CACAr5D,KAAM,YACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJozD,GAAI,CACAt5D,KAAM,UACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJqzD,GAAI,CACAv5D,KAAM,UACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,2BACbX,YAAa,WACT,OAAO,CACX,GAEJyB,GAAI,CACAx5D,KAAM,SACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,iCACbX,YAAa,SAAS7xD,GAClB,OAAQA,EAAI,CAChB,GAEJuzD,IAAK,CACDz5D,KAAM,OACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJwzD,GAAI,CACA15D,KAAM,UACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,sIACbX,YAAa,SAAS7xD,GAClB,OAAQA,EAAI,IAAO,GAAKA,EAAI,KAAQ,GAAK,EAAIA,EAAI,IAAM,GAAKA,EAAI,IAAM,IAAMA,EAAI,IAAM,IAAMA,EAAI,KAAO,IAAM,EAAI,CACrH,GAEJyzD,GAAI,CACA35D,KAAM,UACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJ0zD,IAAK,CACD55D,KAAM,QACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,2BACbX,YAAa,WACT,OAAO,CACX,GAEJ8B,GAAI,CACA75D,KAAM,QACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,oEACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,EAAU,EAAKA,GAAK,GAAKA,GAAK,EAAK,EAAI,CACnD,GAEJ4zD,IAAK,CACD95D,KAAM,YACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,+GACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,EAAU,EAAIA,EAAI,IAAM,GAAKA,EAAI,IAAM,IAAMA,EAAI,IAAM,IAAMA,EAAI,KAAO,IAAM,EAAI,CAC9F,GAEJwW,GAAI,CACA1c,KAAM,QACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,qFACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,EAAU,EAAU,IAANA,EAAU,EAAW,IAANA,GAAiB,KAANA,EAAY,EAAI,CACpE,GAEJ6zD,GAAI,CACA/5D,KAAM,SACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJ8zD,GAAI,CACAh6D,KAAM,SACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJ+zD,IAAK,CACDj6D,KAAM,QACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJg0D,GAAI,CACAl6D,KAAM,WACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,2BACbX,YAAa,WACT,OAAO,CACX,GAEJvrC,GAAI,CACAxsB,KAAM,QACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJi0D,GAAI,CACAn6D,KAAM,UACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJk0D,GAAI,CACAp6D,KAAM,YACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJm0D,GAAI,CACAr6D,KAAM,UACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJo0D,GAAI,CACAt6D,KAAM,WACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJq0D,GAAI,CACAv6D,KAAM,SACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJs0D,GAAI,CACAx6D,KAAM,UACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,2BACbX,YAAa,WACT,OAAO,CACX,GAEJ0C,GAAI,CACAz6D,KAAM,QACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJw0D,GAAI,CACA16D,KAAM,UACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJy0D,IAAK,CACD36D,KAAM,WACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,iCACbX,YAAa,SAAS7xD,GAClB,OAAQA,EAAI,CAChB,GAEJ00D,GAAI,CACA56D,KAAM,UACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJ20D,GAAI,CACA76D,KAAM,SACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,iCACbX,YAAa,SAAS7xD,GAClB,OAAQA,EAAI,CAChB,GAEJ40D,IAAK,CACD96D,KAAM,WACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJ60D,GAAI,CACA/6D,KAAM,UACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJ80D,GAAI,CACAh7D,KAAM,QACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,KAEZC,SAAU,EACVC,YAAa,kFACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,EAAU,EAAU,IAANA,EAAU,EAAIA,EAAI,EAAI,EAAIA,EAAI,GAAK,EAAI,CACjE,GAEJ+0D,GAAI,CACAj7D,KAAM,kBACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,KAEZC,SAAU,EACVC,YAAa,6GACbX,YAAa,SAAS7xD,GAClB,OAAe,IAANA,GAAiB,KAANA,EAAY,EAAW,IAANA,GAAiB,KAANA,EAAY,EAAKA,EAAI,GAAKA,EAAI,GAAM,EAAI,CAC5F,GAEJg1D,GAAI,CACAl7D,KAAM,WACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJi1D,GAAI,CACAn7D,KAAM,WACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJk1D,IAAK,CACDp7D,KAAM,MACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,iCACbX,YAAa,SAAS7xD,GAClB,OAAQA,EAAI,CAChB,GAEJm1D,GAAI,CACAr7D,KAAM,QACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJo1D,GAAI,CACAt7D,KAAM,SACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJq1D,GAAI,CACAv7D,KAAM,QACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJs1D,IAAK,CACDx7D,KAAM,gBACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJu1D,GAAI,CACAz7D,KAAM,WACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,sIACbX,YAAa,SAAS7xD,GAClB,OAAQA,EAAI,IAAO,GAAKA,EAAI,KAAQ,GAAK,EAAIA,EAAI,IAAM,GAAKA,EAAI,IAAM,IAAMA,EAAI,IAAM,IAAMA,EAAI,KAAO,IAAM,EAAI,CACrH,GAEJw1D,GAAI,CACA17D,KAAM,YACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJy1D,GAAI,CACA37D,KAAM,WACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJ8K,GAAI,CACAhR,KAAM,aACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,2BACbX,YAAa,WACT,OAAO,CACX,GAEJluD,GAAI,CACA7J,KAAM,YACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,0DACbX,YAAa,SAAS7xD,GAClB,OAAQA,EAAI,IAAO,GAAKA,EAAI,KAAQ,EACxC,GAEJgsB,GAAI,CACAlyB,KAAM,UACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJ01D,GAAI,CACA57D,KAAM,WACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,2BACbX,YAAa,WACT,OAAO,CACX,GAEJ8D,IAAK,CACD77D,KAAM,SACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,2BACbX,YAAa,WACT,OAAO,CACX,GAEJ+D,GAAI,CACA97D,KAAM,WACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJ61D,GAAI,CACA/7D,KAAM,WACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,2BACbX,YAAa,WACT,OAAO,CACX,GAEJiE,GAAI,CACAh8D,KAAM,SACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,2BACbX,YAAa,WACT,OAAO,CACX,GAEJkE,GAAI,CACAj8D,KAAM,QACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,2BACbX,YAAa,WACT,OAAO,CACX,GAEJmE,GAAI,CACAl8D,KAAM,UACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJi2D,GAAI,CACAn8D,KAAM,SACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,2BACbX,YAAa,WACT,OAAO,CACX,GAEJqE,GAAI,CACAp8D,KAAM,UACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJm2D,GAAI,CACAr8D,KAAM,UACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,uEACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,EAAU,EAAU,IAANA,EAAU,EAAU,IAANA,EAAU,EAAI,CACtD,GAEJo2D,GAAI,CACAt8D,KAAM,SACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,2BACbX,YAAa,WACT,OAAO,CACX,GAEJwE,GAAI,CACAv8D,KAAM,gBACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJs2D,GAAI,CACAx8D,KAAM,UACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,iCACbX,YAAa,SAAS7xD,GAClB,OAAQA,EAAI,CAChB,GAEJu2D,GAAI,CACAz8D,KAAM,MACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,2BACbX,YAAa,WACT,OAAO,CACX,GAEJ2E,GAAI,CACA18D,KAAM,aACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,KAEZC,SAAU,EACVC,YAAa,uHACbX,YAAa,SAAS7xD,GAClB,OAAQA,EAAI,IAAO,GAAKA,EAAI,KAAQ,GAAK,EAAIA,EAAI,IAAM,IAAMA,EAAI,IAAM,IAAMA,EAAI,KAAO,IAAM,EAAI,CACtG,GAEJy2D,GAAI,CACA38D,KAAM,UACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,gFACbX,YAAa,SAAS7xD,GAClB,OAAQA,EAAI,IAAO,GAAKA,EAAI,KAAQ,GAAK,EAAU,IAANA,EAAU,EAAI,CAC/D,GAEJ02D,IAAK,CACD58D,KAAM,WACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJ22D,IAAK,CACD78D,KAAM,mBACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,iCACbX,YAAa,SAAS7xD,GAClB,OAAQA,EAAI,CAChB,GAEJ42D,GAAI,CACA98D,KAAM,WACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,iCACbX,YAAa,SAAS7xD,GAClB,OAAQA,EAAI,CAChB,GAEJ62D,GAAI,CACA/8D,KAAM,QACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,iCACbX,YAAa,SAAS7xD,GAClB,OAAQA,EAAI,CAChB,GAEJ82D,GAAI,CACAh9D,KAAM,aACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,2DACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,GAAWA,EAAI,IAAO,EAAI,EAAI,CAC1C,GAEJ+2D,GAAI,CACAj9D,KAAM,YACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJg3D,GAAI,CACAl9D,KAAM,YACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJi3D,IAAK,CACDn9D,KAAM,WACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJk3D,IAAK,CACDp9D,KAAM,WACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,yDACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,EAAU,EAAU,IAANA,EAAU,EAAI,CACxC,GAEJm3D,GAAI,CACAr9D,KAAM,UACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJo3D,GAAI,CACAt9D,KAAM,QACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,2BACbX,YAAa,WACT,OAAO,CACX,GAEJwF,GAAI,CACAv9D,KAAM,UACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IACT,CACCx1D,OAAQ,EACRw1D,OAAQ,KAEZC,SAAU,EACVC,YAAa,iIACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,EAAU,EAAU,IAANA,GAAYA,EAAI,IAAM,GAAKA,EAAI,IAAM,GAAM,EAAKA,EAAI,IAAM,IAAMA,EAAI,IAAM,GAAM,EAAI,CAC9G,GAEJs3D,GAAI,CACAx9D,KAAM,UACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,2BACbX,YAAa,WACT,OAAO,CACX,GAEJ0F,IAAK,CACDz9D,KAAM,UACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJw3D,IAAK,CACD19D,KAAM,aACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJy3D,GAAI,CACA39D,KAAM,mBACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJ03D,GAAI,CACA59D,KAAM,SACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJ23D,GAAI,CACA79D,KAAM,QACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJ43D,GAAI,CACA99D,KAAM,oBACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJ63D,GAAI,CACA/9D,KAAM,YACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJ83D,IAAK,CACDh+D,KAAM,iBACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJ+3D,GAAI,CACAj+D,KAAM,UACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,iCACbX,YAAa,SAAS7xD,GAClB,OAAQA,EAAI,CAChB,GAEJg4D,GAAI,CACAl+D,KAAM,QACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJi4D,GAAI,CACAn+D,KAAM,UACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJk4D,IAAK,CACDp+D,KAAM,aACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJm4D,GAAI,CACAr+D,KAAM,SACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,+GACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,EAAU,EAAIA,EAAI,IAAM,GAAKA,EAAI,IAAM,IAAMA,EAAI,IAAM,IAAMA,EAAI,KAAO,IAAM,EAAI,CAC9F,GAEJo4D,IAAK,CACDt+D,KAAM,aACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJq4D,GAAI,CACAv+D,KAAM,SACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJs4D,GAAI,CACAx+D,KAAM,aACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJu4D,GAAI,CACAz+D,KAAM,UACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJw4D,GAAI,CACA1+D,KAAM,WACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,KAEZC,SAAU,EACVC,YAAa,4FACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,EAAU,EAAW,IAANA,GAAYA,EAAI,IAAM,GAAKA,EAAI,IAAM,GAAO,EAAI,CAC3E,GAEJy4D,GAAI,CACA3+D,KAAM,UACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,sIACbX,YAAa,SAAS7xD,GAClB,OAAQA,EAAI,IAAO,GAAKA,EAAI,KAAQ,GAAK,EAAIA,EAAI,IAAM,GAAKA,EAAI,IAAM,IAAMA,EAAI,IAAM,IAAMA,EAAI,KAAO,IAAM,EAAI,CACrH,GAEJ04D,GAAI,CACA5+D,KAAM,cACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJ24D,IAAK,CACD7+D,KAAM,QACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,2BACbX,YAAa,WACT,OAAO,CACX,GAEJ+G,IAAK,CACD9+D,KAAM,UACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJ64D,IAAK,CACD/+D,KAAM,QACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJ84D,GAAI,CACAh/D,KAAM,SACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJ+4D,GAAI,CACAj/D,KAAM,gBACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJg5D,GAAI,CACAl/D,KAAM,UACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJi5D,GAAI,CACAn/D,KAAM,SACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,oEACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,EAAU,EAAKA,GAAK,GAAKA,GAAK,EAAK,EAAI,CACnD,GAEJk5D,GAAI,CACAp/D,KAAM,YACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,0GACbX,YAAa,SAAS7xD,GAClB,OAAQA,EAAI,KAAQ,EAAI,EAAIA,EAAI,KAAQ,EAAI,EAAIA,EAAI,KAAQ,GAAKA,EAAI,KAAQ,EAAI,EAAI,CACzF,GAEJm5D,GAAI,CACAr/D,KAAM,SACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJo5D,IAAK,CACDt/D,KAAM,UACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJq5D,GAAI,CACAv/D,KAAM,WACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJs5D,GAAI,CACAx/D,KAAM,UACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,sIACbX,YAAa,SAAS7xD,GAClB,OAAQA,EAAI,IAAO,GAAKA,EAAI,KAAQ,GAAK,EAAIA,EAAI,IAAM,GAAKA,EAAI,IAAM,IAAMA,EAAI,IAAM,IAAMA,EAAI,KAAO,IAAM,EAAI,CACrH,GAEJu5D,GAAI,CACAz/D,KAAM,YACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,2BACbX,YAAa,WACT,OAAO,CACX,GAEJ2H,GAAI,CACA1/D,KAAM,UACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJy5D,GAAI,CACA3/D,KAAM,UACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJ05D,GAAI,CACA5/D,KAAM,QACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJ25D,GAAI,CACA7/D,KAAM,SACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJ45D,GAAI,CACA9/D,KAAM,QACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,iCACbX,YAAa,SAAS7xD,GAClB,OAAQA,EAAI,CAChB,GAEJ65D,GAAI,CACA//D,KAAM,OACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,2BACbX,YAAa,WACT,OAAO,CACX,GAEJiI,GAAI,CACAhgE,KAAM,WACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,iCACbX,YAAa,SAAS7xD,GAClB,OAAQA,EAAI,CAChB,GAEJ+5D,GAAI,CACAjgE,KAAM,UACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJg6D,GAAI,CACAlgE,KAAM,UACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,iCACbX,YAAa,SAAS7xD,GAClB,OAAQA,EAAI,CAChB,GAEJi6D,GAAI,CACAngE,KAAM,QACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,2BACbX,YAAa,WACT,OAAO,CACX,GAEJqI,GAAI,CACApgE,KAAM,SACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,2BACbX,YAAa,WACT,OAAO,CACX,GAEJsI,GAAI,CACArgE,KAAM,YACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,sIACbX,YAAa,SAAS7xD,GAClB,OAAQA,EAAI,IAAO,GAAKA,EAAI,KAAQ,GAAK,EAAIA,EAAI,IAAM,GAAKA,EAAI,IAAM,IAAMA,EAAI,IAAM,IAAMA,EAAI,KAAO,IAAM,EAAI,CACrH,GAEJo6D,GAAI,CACAtgE,KAAM,OACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJq6D,GAAI,CACAvgE,KAAM,QACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,iCACbX,YAAa,SAAS7xD,GAClB,OAAQA,EAAI,CAChB,GAEJs6D,GAAI,CACAxgE,KAAM,aACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,2BACbX,YAAa,WACT,OAAO,CACX,GAEJ0I,GAAI,CACAzgE,KAAM,UACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,iCACbX,YAAa,SAAS7xD,GAClB,OAAQA,EAAI,CAChB,GAEJw6D,GAAI,CACA1gE,KAAM,QACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,2BACbX,YAAa,WACT,OAAO,CACX,GAEJ4I,GAAI,CACA3gE,KAAM,SACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,GACT,CACCx1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,mCACbX,YAAa,SAAS7xD,GAClB,OAAc,IAANA,CACZ,GAEJ06D,GAAI,CACA5gE,KAAM,UACNu4D,SAAU,CAAC,CACPv1D,OAAQ,EACRw1D,OAAQ,IAEZC,SAAU,EACVC,YAAa,2BACbX,YAAa,WACT,OAAO,CACX,wDCv/DR,SAAS8I,EAAQrjE,GAAwT,OAAtOqjE,EAArD,mBAAX30D,QAAoD,iBAApBA,OAAOC,SAAmC,SAAiB3O,GAAO,cAAcA,CAAK,EAAsB,SAAiBA,GAAO,OAAOA,GAAyB,mBAAX0O,QAAyB1O,EAAI+O,cAAgBL,QAAU1O,IAAQ0O,OAAO7L,UAAY,gBAAkB7C,CAAK,EAAYqjE,EAAQrjE,EAAM,CAI9V,IAoBIsjE,EACAC,EApBAC,EADW,EAAQ,KACOC,MAC1BC,EAAyBF,EAAeE,uBACxCC,EAAuBH,EAAeG,qBACtCC,EAAwBJ,EAAeI,sBACvCC,EAA2BL,EAAeK,yBAC1CC,EAAmBN,EAAeM,iBAElCC,EAAiB,EAAQ,MAGzBxvC,EADY,EAAQ,KACAA,QAEpByvC,EAAiB,aACjBC,EAAYD,EAAeC,UAC3BC,EAAWF,EAAeE,SAE1BC,EAAenmE,OAAO2C,OAAS3C,OAAO2C,OAAS,eAC/CyjE,EAAWpmE,OAAOqO,GAAKrO,OAAOqO,GAAK,EAAQ,KAC9B,IAAItJ,IAOrB,SAASshE,IACP,IAAIC,EAAa,EAAQ,MAEzBhB,EAAcgB,EAAWhB,YACzBC,EAAoBe,EAAWf,iBACjC,CAKA,IAOIgB,GAAS,EAIT1wC,EAASrrB,EAAOtK,QAAUs2B,EAC1BgwC,EAAwB,CAAC,EAM7B,SAASC,EAAUzkE,GACjB,GAAIA,EAAIolB,mBAAmB7P,MAAO,MAAMvV,EAAIolB,QAC5C,MAAM,IAAI2+C,EAAe/jE,EAC3B,CA+CA,SAAS0kE,EAAQvtD,EAAIwtD,EAAQxmE,EAAOinB,GAClC,IAAKjnB,EAAO,CACV,IAAIymE,GAAmB,EAEvB,GAAe,IAAXD,EACFC,GAAmB,EACnBx/C,EAAU,iDACL,GAAIA,aAAmB7P,MAC5B,MAAM6P,EAGR,IAAIzD,EAAM,IAAIoiD,EAAe,CAC3Bc,OAAQ1mE,EACR2mE,UAAU,EACV1/C,QAASA,EACT2/C,SAAU,KACVC,aAAc7tD,IAGhB,MADAwK,EAAIijD,iBAAmBA,EACjBjjD,CACR,CACF,CAIA,SAAS6S,IACP,IAAK,IAAIywC,EAAO9/D,UAAU3D,OAAQmqB,EAAO,IAAIriB,MAAM27D,GAAOC,EAAO,EAAGA,EAAOD,EAAMC,IAC/Ev5C,EAAKu5C,GAAQ//D,UAAU+/D,GAGzBR,EAAQ/6D,WAAM,EAAQ,CAAC6qB,EAAI7I,EAAKnqB,QAAQ0B,OAAOyoB,GACjD,CAnCAkI,EAAOsxC,KAzCP,SAASA,EAAKN,EAAQC,EAAU1/C,EAAS2/C,EAAUC,GACjD,IACII,EADAC,EAAUlgE,UAAU3D,OAGxB,GAAgB,IAAZ6jE,EACFD,EAAkB,cACb,GAAgB,IAAZC,EACTjgD,EAAUy/C,EACVA,OAASz/D,MACJ,CACL,IAAe,IAAXm/D,EAAkB,CACpBA,GAAS,EACT,IAAIliE,EAAO4nB,EAAQq7C,YAAcr7C,EAAQq7C,YAAc/lE,EAAQ8C,KAAKoO,KAAKlR,GACzE8C,EAAK,2HAAiI,qBAAsB,UAC9J,CAEgB,IAAZgjE,IAAeN,EAAW,KAChC,CAEA,GAAI3/C,aAAmB7P,MAAO,MAAM6P,EACpC,IAAImgD,EAAU,CACZV,OAAQA,EACRC,SAAUA,EACVC,cAAuB3/D,IAAb2/D,EAAyB,OAASA,EAC5CC,aAAcA,GAAgBG,QAGhB//D,IAAZggB,IACFmgD,EAAQngD,QAAUA,GAGpB,IAAIzD,EAAM,IAAIoiD,EAAewB,GAO7B,MALIH,IACFzjD,EAAIyD,QAAUggD,EACdzjD,EAAIijD,kBAAmB,GAGnBjjD,CACR,EAIAkS,EAAOkwC,eAAiBA,EAmCxBlwC,EAAOW,GAAKA,EAIZX,EAAO2xC,MAAQ,SAASA,EAAMX,EAAQC,EAAU1/C,GAC9C,GAAIjgB,UAAU3D,OAAS,EACrB,MAAM,IAAIsiE,EAAiB,SAAU,YAInCe,GAAUC,GACZL,EAAU,CACRI,OAAQA,EACRC,SAAUA,EACV1/C,QAASA,EACT2/C,SAAU,KACVC,aAAcQ,GAGpB,EAIA3xC,EAAO4xC,SAAW,SAASA,EAASZ,EAAQC,EAAU1/C,GACpD,GAAIjgB,UAAU3D,OAAS,EACrB,MAAM,IAAIsiE,EAAiB,SAAU,YAInCe,GAAUC,GACZL,EAAU,CACRI,OAAQA,EACRC,SAAUA,EACV1/C,QAASA,EACT2/C,SAAU,KACVC,aAAcS,GAGpB,EAGA5xC,EAAO6xC,UAAY,SAASA,EAAUb,EAAQC,EAAU1/C,GACtD,GAAIjgB,UAAU3D,OAAS,EACrB,MAAM,IAAIsiE,EAAiB,SAAU,iBAGnB1+D,IAAhBk+D,GAA2Be,IAE1Bf,EAAYuB,EAAQC,IACvBL,EAAU,CACRI,OAAQA,EACRC,SAAUA,EACV1/C,QAASA,EACT2/C,SAAU,YACVC,aAAcU,GAGpB,EAGA7xC,EAAO8xC,aAAe,SAASA,EAAad,EAAQC,EAAU1/C,GAC5D,GAAIjgB,UAAU3D,OAAS,EACrB,MAAM,IAAIsiE,EAAiB,SAAU,iBAGnB1+D,IAAhBk+D,GAA2Be,IAE3Bf,EAAYuB,EAAQC,IACtBL,EAAU,CACRI,OAAQA,EACRC,SAAUA,EACV1/C,QAASA,EACT2/C,SAAU,eACVC,aAAcW,GAGpB,EAIA9xC,EAAO+xC,gBAAkB,SAASA,EAAgBf,EAAQC,EAAU1/C,GAClE,GAAIjgB,UAAU3D,OAAS,EACrB,MAAM,IAAIsiE,EAAiB,SAAU,iBAGnB1+D,IAAhBk+D,GAA2Be,IAE1Bd,EAAkBsB,EAAQC,IAC7BL,EAAU,CACRI,OAAQA,EACRC,SAAUA,EACV1/C,QAASA,EACT2/C,SAAU,kBACVC,aAAcY,GAGpB,EAEA/xC,EAAOgyC,mBAEP,SAASA,EAAmBhB,EAAQC,EAAU1/C,GAC5C,GAAIjgB,UAAU3D,OAAS,EACrB,MAAM,IAAIsiE,EAAiB,SAAU,iBAGnB1+D,IAAhBk+D,GAA2Be,IAE3Bd,EAAkBsB,EAAQC,IAC5BL,EAAU,CACRI,OAAQA,EACRC,SAAUA,EACV1/C,QAASA,EACT2/C,SAAU,qBACVC,aAAca,GAGpB,EAEAhyC,EAAOiyC,YAAc,SAASA,EAAYjB,EAAQC,EAAU1/C,GAC1D,GAAIjgB,UAAU3D,OAAS,EACrB,MAAM,IAAIsiE,EAAiB,SAAU,YAGlCM,EAASS,EAAQC,IACpBL,EAAU,CACRI,OAAQA,EACRC,SAAUA,EACV1/C,QAASA,EACT2/C,SAAU,cACVC,aAAcc,GAGpB,EAEAjyC,EAAOkyC,eAAiB,SAASA,EAAelB,EAAQC,EAAU1/C,GAChE,GAAIjgB,UAAU3D,OAAS,EACrB,MAAM,IAAIsiE,EAAiB,SAAU,YAGnCM,EAASS,EAAQC,IACnBL,EAAU,CACRI,OAAQA,EACRC,SAAUA,EACV1/C,QAASA,EACT2/C,SAAU,iBACVC,aAAce,GAGpB,EAEA,IAAIC,EAAa,SAASA,EAAWhmE,EAAKwJ,EAAMq7D,GAC9C,IAAIoB,EAAQ9jE,MAlSd,SAAyBJ,EAAUC,GAAe,KAAMD,aAAoBC,GAAgB,MAAM,IAAIC,UAAU,oCAAwC,CAoStJC,CAAgBC,KAAM6jE,GAEtBx8D,EAAKlK,SAAQ,SAAUsC,GACjBA,KAAO5B,SACMoF,IAAXy/D,GAA+C,iBAAhBA,EAAOjjE,IAAqBsiE,EAASlkE,EAAI4B,KAAS5B,EAAI4B,GAAKoN,KAAK61D,EAAOjjE,IACxGqkE,EAAMrkE,GAAOijE,EAAOjjE,GAEpBqkE,EAAMrkE,GAAO5B,EAAI4B,GAGvB,GACF,EAEA,SAASskE,EAAoBrB,EAAQC,EAAUljE,EAAKwjB,EAAS5b,EAAM2N,GACjE,KAAMvV,KAAOijE,KAAYtB,EAAkBsB,EAAOjjE,GAAMkjE,EAASljE,IAAO,CACtE,IAAKwjB,EAAS,CAEZ,IAAIvgB,EAAI,IAAImhE,EAAWnB,EAAQr7D,GAC3B1E,EAAI,IAAIkhE,EAAWlB,EAAUt7D,EAAMq7D,GACnCljD,EAAM,IAAIoiD,EAAe,CAC3Bc,OAAQhgE,EACRigE,SAAUhgE,EACVigE,SAAU,kBACVC,aAAc7tD,IAKhB,MAHAwK,EAAIkjD,OAASA,EACbljD,EAAImjD,SAAWA,EACfnjD,EAAIojD,SAAW5tD,EAAG3U,KACZmf,CACR,CAEA8iD,EAAU,CACRI,OAAQA,EACRC,SAAUA,EACV1/C,QAASA,EACT2/C,SAAU5tD,EAAG3U,KACbwiE,aAAc7tD,GAElB,CACF,CAEA,SAASgvD,EAAkBtB,EAAQC,EAAUsB,EAAKjvD,GAChD,GAAwB,mBAAb2tD,EAAyB,CAClC,GAAIZ,EAASY,GAAW,OAAOA,EAAS91D,KAAK61D,GAE7C,GAAyB,IAArB1/D,UAAU3D,OACZ,MAAM,IAAImiE,EAAqB,WAAY,CAAC,WAAY,UAAWmB,GAIrE,GAAwB,WAApBzB,EAAQwB,IAAmC,OAAXA,EAAiB,CACnD,IAAIljD,EAAM,IAAIoiD,EAAe,CAC3Bc,OAAQA,EACRC,SAAUA,EACV1/C,QAASghD,EACTrB,SAAU,kBACVC,aAAc7tD,IAGhB,MADAwK,EAAIojD,SAAW5tD,EAAG3U,KACZmf,CACR,CAEA,IAAInY,EAAOxL,OAAOwL,KAAKs7D,GAGvB,GAAIA,aAAoBvvD,MACtB/L,EAAK1K,KAAK,OAAQ,gBACb,GAAoB,IAAhB0K,EAAKhI,OACd,MAAM,IAAIoiE,EAAsB,QAASkB,EAAU,8BAWrD,YARoB1/D,IAAhBk+D,GAA2Be,IAC/B76D,EAAKlK,SAAQ,SAAUsC,GACM,iBAAhBijE,EAAOjjE,IAAqBsiE,EAASY,EAASljE,KAASkjE,EAASljE,GAAKoN,KAAK61D,EAAOjjE,KAI5FskE,EAAoBrB,EAAQC,EAAUljE,EAAKwkE,EAAK58D,EAAM2N,EACxD,KACO,CACT,CAGA,YAA2B/R,IAAvB0/D,EAASjiE,WAA2BgiE,aAAkBC,IAItDvvD,MAAM8wD,cAAcvB,KAIa,IAA9BA,EAASj2D,KAAK,CAAC,EAAGg2D,EAC3B,CAEA,SAASyB,EAAUnvD,GACjB,GAAkB,mBAAPA,EACT,MAAM,IAAIwsD,EAAqB,KAAM,WAAYxsD,GAGnD,IACEA,GAGF,CAFE,MAAO9X,GACP,OAAOA,CACT,CAEA,OAAOmlE,CACT,CAEA,SAAS+B,EAAevmE,GAOtB,OAAOikE,EAAUjkE,IAAgB,OAARA,GAAiC,WAAjBqjE,EAAQrjE,IAAyC,mBAAbA,EAAIglB,MAA4C,mBAAdhlB,EAAIwmE,KACrH,CAEA,SAASC,EAAcC,GACrB,OAAOzmD,QAAQC,UAAU8E,MAAK,WAC5B,IAAI2hD,EAEJ,GAAyB,mBAAdD,GAIT,IAAKH,EAFLI,EAAgBD,KAGd,MAAM,IAAI7C,EAAyB,sBAAuB,YAAa8C,OAEpE,KAAIJ,EAAeG,GAGxB,MAAM,IAAI/C,EAAqB,YAAa,CAAC,WAAY,WAAY+C,GAFrEC,EAAgBD,CAGlB,CAEA,OAAOzmD,QAAQC,UAAU8E,MAAK,WAC5B,OAAO2hD,CACT,IAAG3hD,MAAK,WACN,OAAOw/C,CACT,IAAGgC,OAAM,SAAUnnE,GACjB,OAAOA,CACT,GACF,GACF,CAEA,SAASunE,EAAa5B,EAAcH,EAAQrlE,EAAO4lB,GACjD,GAAqB,iBAAV5lB,EAAoB,CAC7B,GAAyB,IAArB2F,UAAU3D,OACZ,MAAM,IAAImiE,EAAqB,QAAS,CAAC,SAAU,QAAS,WAAY,UAAWnkE,GAGrF,GAAwB,WAApB6jE,EAAQwB,IAAmC,OAAXA,GAClC,GAAIA,EAAOz/C,UAAY5lB,EACrB,MAAM,IAAIkkE,EAAuB,gBAAiB,sBAAuBxgE,OAAO2hE,EAAOz/C,QAAS,wCAE7F,GAAIy/C,IAAWrlE,EACpB,MAAM,IAAIkkE,EAAuB,gBAAiB,cAAexgE,OAAO2hE,EAAQ,mCAGlFz/C,EAAU5lB,EACVA,OAAQ4F,CACV,MAAO,GAAa,MAAT5F,GAAoC,WAAnB6jE,EAAQ7jE,IAAwC,mBAAVA,EAChE,MAAM,IAAImkE,EAAqB,QAAS,CAAC,SAAU,QAAS,WAAY,UAAWnkE,GAGrF,GAAIqlE,IAAWL,EAAuB,CACpC,IAAIqC,EAAU,GAEVrnE,GAASA,EAAMgD,OACjBqkE,GAAW,KAAK3jE,OAAO1D,EAAMgD,KAAM,MAGrCqkE,GAAWzhD,EAAU,KAAKliB,OAAOkiB,GAAW,IAC5C,IAAI0hD,EAA+B,YAAtB9B,EAAaxiE,KAAqB,YAAc,YAC7DiiE,EAAU,CACRI,YAAQz/D,EACR0/D,SAAUtlE,EACVulE,SAAUC,EAAaxiE,KACvB4iB,QAAS,oBAAoBliB,OAAO4jE,GAAQ5jE,OAAO2jE,GACnD7B,aAAcA,GAElB,CAEA,GAAIxlE,IAAU2mE,EAAkBtB,EAAQrlE,EAAO4lB,EAAS4/C,GACtD,MAAMH,CAEV,CAEA,SAASkC,EAAe/B,EAAcH,EAAQrlE,EAAO4lB,GACnD,GAAIy/C,IAAWL,EAAf,CAOA,GALqB,iBAAVhlE,IACT4lB,EAAU5lB,EACVA,OAAQ4F,IAGL5F,GAAS2mE,EAAkBtB,EAAQrlE,GAAQ,CAC9C,IAAIqnE,EAAUzhD,EAAU,KAAKliB,OAAOkiB,GAAW,IAC3C0hD,EAA+B,kBAAtB9B,EAAaxiE,KAA2B,YAAc,YACnEiiE,EAAU,CACRI,OAAQA,EACRC,SAAUtlE,EACVulE,SAAUC,EAAaxiE,KACvB4iB,QAAS,gBAAgBliB,OAAO4jE,GAAQ5jE,OAAO2jE,EAAS,MAAQ,oBAAqB3jE,OAAO2hE,GAAUA,EAAOz/C,QAAS,KACtH4/C,aAAcA,GAElB,CAEA,MAAMH,CAnBsC,CAoB9C,CA0FA,SAASmC,IACP,IAAK,IAAIC,EAAQ9hE,UAAU3D,OAAQmqB,EAAO,IAAIriB,MAAM29D,GAAQC,EAAQ,EAAGA,EAAQD,EAAOC,IACpFv7C,EAAKu7C,GAAS/hE,UAAU+hE,GAG1BxC,EAAQ/6D,WAAM,EAAQ,CAACq9D,EAAQr7C,EAAKnqB,QAAQ0B,OAAOyoB,GACrD,CA9FAkI,EAAOszC,OAAS,SAASA,EAAOT,GAC9B,IAAK,IAAIU,EAAQjiE,UAAU3D,OAAQmqB,EAAO,IAAIriB,MAAM89D,EAAQ,EAAIA,EAAQ,EAAI,GAAIC,EAAQ,EAAGA,EAAQD,EAAOC,IACxG17C,EAAK07C,EAAQ,GAAKliE,UAAUkiE,GAG9BT,EAAaj9D,WAAM,EAAQ,CAACw9D,EAAQb,EAAUI,IAAYxjE,OAAOyoB,GACnE,EAEAkI,EAAOyzC,QAAU,SAASA,EAAQZ,GAChC,IAAK,IAAIa,EAAQpiE,UAAU3D,OAAQmqB,EAAO,IAAIriB,MAAMi+D,EAAQ,EAAIA,EAAQ,EAAI,GAAIC,EAAQ,EAAGA,EAAQD,EAAOC,IACxG77C,EAAK67C,EAAQ,GAAKriE,UAAUqiE,GAG9B,OAAOf,EAAcC,GAAW1hD,MAAK,SAAU6K,GAC7C,OAAO+2C,EAAaj9D,WAAM,EAAQ,CAAC29D,EAASz3C,GAAQ3sB,OAAOyoB,GAC7D,GACF,EAEAkI,EAAO4zC,aAAe,SAASA,EAAatwD,GAC1C,IAAK,IAAIuwD,EAAQviE,UAAU3D,OAAQmqB,EAAO,IAAIriB,MAAMo+D,EAAQ,EAAIA,EAAQ,EAAI,GAAIC,EAAQ,EAAGA,EAAQD,EAAOC,IACxGh8C,EAAKg8C,EAAQ,GAAKxiE,UAAUwiE,GAG9BZ,EAAep9D,WAAM,EAAQ,CAAC89D,EAAcnB,EAAUnvD,IAAKjU,OAAOyoB,GACpE,EAEAkI,EAAO+zC,cAAgB,SAASA,EAAczwD,GAC5C,IAAK,IAAI0wD,EAAQ1iE,UAAU3D,OAAQmqB,EAAO,IAAIriB,MAAMu+D,EAAQ,EAAIA,EAAQ,EAAI,GAAIC,EAAQ,EAAGA,EAAQD,EAAOC,IACxGn8C,EAAKm8C,EAAQ,GAAK3iE,UAAU2iE,GAG9B,OAAOrB,EAActvD,GAAI6N,MAAK,SAAU6K,GACtC,OAAOk3C,EAAep9D,WAAM,EAAQ,CAACi+D,EAAe/3C,GAAQ3sB,OAAOyoB,GACrE,GACF,EAEAkI,EAAOk0C,QAAU,SAASA,EAAQpmD,GAChC,GAAIA,QAAmC,CACrC,IAAIyD,EAAU,mCAEO,WAAjBi+C,EAAQ1hD,IAA4C,iBAAhBA,EAAIyD,QACf,IAAvBzD,EAAIyD,QAAQ5jB,QAAgBmgB,EAAI5S,YAClCqW,GAAWzD,EAAI5S,YAAYvM,KAE3B4iB,GAAWzD,EAAIyD,QAGjBA,GAAWmP,EAAQ5S,GAGrB,IAAIqmD,EAAS,IAAIjE,EAAe,CAC9Bc,OAAQljD,EACRmjD,SAAU,KACVC,SAAU,UACV3/C,QAASA,EACT4/C,aAAc+C,IAGZE,EAAYtmD,EAAImG,MAEpB,GAAyB,iBAAdmgD,EAAwB,CAIjC,IAAIC,EAAOD,EAAUh6C,MAAM,MAC3Bi6C,EAAKlhD,QAIL,IAFA,IAAImhD,EAAOH,EAAOlgD,MAAMmG,MAAM,MAErB1sB,EAAI,EAAGA,EAAI2mE,EAAK1mE,OAAQD,IAAK,CAEpC,IAAI6oC,EAAM+9B,EAAKlgE,QAAQigE,EAAK3mE,IAE5B,IAAa,IAAT6oC,EAAY,CAEd+9B,EAAOA,EAAKr5D,MAAM,EAAGs7B,GACrB,KACF,CACF,CAEA49B,EAAOlgD,MAAQ,GAAG5kB,OAAOilE,EAAKn0D,KAAK,MAAO,MAAM9Q,OAAOglE,EAAKl0D,KAAK,MACnE,CAEA,MAAMg0D,CACR,CACF,EAWAn0C,EAAOmzC,OAAS7C,EAAa6C,EAAQnzC,EAAQ,CAC3C2xC,MAAO3xC,EAAOiyC,YACdJ,UAAW7xC,EAAO+xC,gBAClBH,SAAU5xC,EAAOkyC,eACjBJ,aAAc9xC,EAAOgyC,qBAEvBhyC,EAAOmzC,OAAOA,OAASnzC,EAAOmzC,kDChnB9B,SAASoB,EAAgBpoE,EAAK4B,EAAKzD,GAAiK,OAApJyD,KAAO5B,EAAOhC,OAAOC,eAAe+B,EAAK4B,EAAK,CAAEzD,MAAOA,EAAOC,YAAY,EAAMsD,cAAc,EAAMC,UAAU,IAAkB3B,EAAI4B,GAAOzD,EAAgB6B,CAAK,CAIhN,SAASoB,EAAkBC,EAAQC,GAAS,IAAK,IAAIC,EAAI,EAAGA,EAAID,EAAME,OAAQD,IAAK,CAAE,IAAIE,EAAaH,EAAMC,GAAIE,EAAWrD,WAAaqD,EAAWrD,aAAc,EAAOqD,EAAWC,cAAe,EAAU,UAAWD,IAAYA,EAAWE,UAAW,GAAM3D,OAAOC,eAAeoD,EAAQI,EAAWG,IAAKH,EAAa,CAAE,CAI5T,SAAS4mE,EAA2B9/D,EAAMsG,GAAQ,OAAIA,GAA2B,WAAlBw0D,EAAQx0D,IAAsC,mBAATA,EAA8Cy5D,EAAuB//D,GAAtCsG,CAA6C,CAEhL,SAASy5D,EAAuB//D,GAAQ,QAAa,IAATA,EAAmB,MAAM,IAAI2qC,eAAe,6DAAgE,OAAO3qC,CAAM,CAIrK,SAASggE,EAAiBC,GAAS,IAAIC,EAAwB,mBAAR1lE,IAAqB,IAAIA,SAAQqC,EAA8nB,OAAnnBmjE,EAAmB,SAA0BC,GAAS,GAAc,OAAVA,IAMlIrxD,EANuKqxD,GAMjG,IAAzD5lC,SAAS59B,SAAS6J,KAAKsI,GAAIlP,QAAQ,kBAN+H,OAAOugE,EAMjN,IAA2BrxD,EAN6L,GAAqB,mBAAVqxD,EAAwB,MAAM,IAAIvmE,UAAU,sDAAyD,QAAsB,IAAXwmE,EAAwB,CAAE,GAAIA,EAAOnxC,IAAIkxC,GAAQ,OAAOC,EAAOpqE,IAAImqE,GAAQC,EAAOxlE,IAAIulE,EAAO1lC,EAAU,CAAE,SAASA,IAAY,OAAO4lC,EAAWF,EAAOrjE,UAAWwjE,EAAgBxmE,MAAM4M,YAAc,CAAkJ,OAAhJ+zB,EAAQjgC,UAAY7E,OAAOuC,OAAOioE,EAAM3lE,UAAW,CAAEkM,YAAa,CAAE5Q,MAAO2kC,EAAS1kC,YAAY,EAAOuD,UAAU,EAAMD,cAAc,KAAkBknE,EAAgB9lC,EAAS0lC,EAAQ,EAAUD,EAAiBC,EAAQ,CAEtvB,SAASK,IAA6B,GAAuB,oBAAZ11B,UAA4BA,QAAQ21B,UAAW,OAAO,EAAO,GAAI31B,QAAQ21B,UAAUjoC,KAAM,OAAO,EAAO,GAAqB,mBAAVmS,MAAsB,OAAO,EAAM,IAAiF,OAA3E34B,KAAKxX,UAAUmC,SAAS6J,KAAKskC,QAAQ21B,UAAUzuD,KAAM,IAAI,WAAa,MAAY,CAAkC,CAA1B,MAAOhb,GAAK,OAAO,CAAO,CAAE,CAElU,SAASqpE,EAAWK,EAAQp9C,EAAM68C,GAAoV,OAAzSE,EAA9BG,IAA2C11B,QAAQ21B,UAAiC,SAAoBC,EAAQp9C,EAAM68C,GAAS,IAAI3jE,EAAI,CAAC,MAAOA,EAAE/F,KAAK6K,MAAM9E,EAAG8mB,GAAO,IAAsD5pB,EAAW,IAA/C6gC,SAASnyB,KAAK9G,MAAMo/D,EAAQlkE,IAA6F,OAAnD2jE,GAAOI,EAAgB7mE,EAAUymE,EAAM3lE,WAAmBd,CAAU,EAAY2mE,EAAW/+D,MAAM,KAAMxE,UAAY,CAIha,SAASyjE,EAAgB3/D,EAAGY,GAA+G,OAA1G++D,EAAkB5qE,OAAO4+B,gBAAkB,SAAyB3zB,EAAGY,GAAsB,OAAjBZ,EAAEg/B,UAAYp+B,EAAUZ,CAAG,EAAU2/D,EAAgB3/D,EAAGY,EAAI,CAEzK,SAAS8+D,EAAgB1/D,GAAwJ,OAAnJ0/D,EAAkB3qE,OAAO4+B,eAAiB5+B,OAAOmyB,eAAiB,SAAyBlnB,GAAK,OAAOA,EAAEg/B,WAAajqC,OAAOmyB,eAAelnB,EAAI,EAAU0/D,EAAgB1/D,EAAI,CAE5M,SAASo6D,EAAQrjE,GAAwT,OAAtOqjE,EAArD,mBAAX30D,QAAoD,iBAApBA,OAAOC,SAAmC,SAAiB3O,GAAO,cAAcA,CAAK,EAAsB,SAAiBA,GAAO,OAAOA,GAAyB,mBAAX0O,QAAyB1O,EAAI+O,cAAgBL,QAAU1O,IAAQ0O,OAAO7L,UAAY,gBAAkB7C,CAAK,EAAYqjE,EAAQrjE,EAAM,CAE9V,IACIu0B,EADW,EAAQ,KACAA,QAGnBovC,EADY,EAAQ,KACaF,MAAME,qBAG3C,SAAS70C,EAASmB,EAAK1C,EAAQy7C,GAK7B,YAJiB5jE,IAAb4jE,GAA0BA,EAAW/4C,EAAIzuB,UAC3CwnE,EAAW/4C,EAAIzuB,QAGVyuB,EAAI9nB,UAAU6gE,EAAWz7C,EAAO/rB,OAAQwnE,KAAcz7C,CAC/D,CAkBA,IAAI07C,EAAO,GACPC,EAAQ,GACRC,EAAM,GACNC,EAAQ,GACRC,EAAoB,CACtBzD,gBAAiB,6CACjBE,YAAa,wCACbwD,kBAAmB,yDACnB5D,UAAW,4CACXF,MAAO,uCACPK,mBAAoB,sDACpBE,eAAgB,+CAChBwD,qBAAsB,6DACtB5D,aAAc,qDACdF,SAAU,8CACV+D,aAAc,6CAMhB,SAASC,EAAUhkD,GACjB,IAAIjc,EAAOxL,OAAOwL,KAAKic,GACnBpkB,EAASrD,OAAOuC,OAAOvC,OAAOmyB,eAAe1K,IAOjD,OANAjc,EAAKlK,SAAQ,SAAUsC,GACrBP,EAAOO,GAAO6jB,EAAO7jB,EACvB,IACA5D,OAAOC,eAAeoD,EAAQ,UAAW,CACvClD,MAAOsnB,EAAOL,UAET/jB,CACT,CAEA,SAASqoE,EAAazmD,GAGpB,OAAOsR,EAAQtR,EAAK,CAClB0mD,SAAS,EACTC,eAAe,EACfC,MAAO,IACPC,eAAgB9gB,IAEhB+gB,YAAY,EAMZC,YAAahhB,IAEbihB,WAAW,EACXC,QAAQ,EAERC,SAAS,GAEb,CAEA,SAASC,EAAcvF,EAAQC,EAAUC,GACvC,IAAItY,EAAQ,GACR/e,EAAM,GACN28B,EAAU,EACVz3C,EAAM,GACN03C,GAAU,EACVC,EAAkBb,EAAa7E,GAC/B2F,EAAcD,EAAgBt8C,MAAM,MACpCw8C,EAAgBf,EAAa5E,GAAU72C,MAAM,MAC7C1sB,EAAI,EACJmpE,EAAY,GAShB,GANiB,gBAAb3F,GAAkD,WAApB1B,EAAQwB,IAA8C,WAAtBxB,EAAQyB,IAAqC,OAAXD,GAAgC,OAAbC,IACrHC,EAAW,qBAKc,IAAvByF,EAAYhpE,QAAyC,IAAzBipE,EAAcjpE,QAAgBgpE,EAAY,KAAOC,EAAc,GAAI,CACjG,IAAIE,EAAcH,EAAY,GAAGhpE,OAASipE,EAAc,GAAGjpE,OAI3D,GAAImpE,GA9Dc,IA+DhB,KAAyB,WAApBtH,EAAQwB,IAAmC,OAAXA,GAA2C,WAAtBxB,EAAQyB,IAAuC,OAAbA,GAAkC,IAAXD,GAA6B,IAAbC,GAEjI,MAAO,GAAG5hE,OAAOmmE,EAAkBtE,GAAW,QAAU,GAAG7hE,OAAOsnE,EAAY,GAAI,SAAStnE,OAAOunE,EAAc,GAAI,WAEjH,GAAiB,sBAAb1F,EAAkC,CAM3C,GAAI4F,GAFY1gD,EAAQ2gD,QAAU3gD,EAAQ2gD,OAAOC,MAAQ5gD,EAAQ2gD,OAAOE,QAAU,IAErD,CAC3B,KAAON,EAAY,GAAGjpE,KAAOkpE,EAAc,GAAGlpE,IAC5CA,IAIEA,EAAI,IAGNmpE,EAAY,OAAOxnE,OApH7B,SAAgB+sB,EAAKxqB,GAEnB,GADAA,EAAQ0N,KAAKyW,MAAMnkB,GACD,GAAdwqB,EAAIzuB,QAAwB,GAATiE,EAAY,MAAO,GAC1C,IAAIslE,EAAW96C,EAAIzuB,OAASiE,EAG5B,IAFAA,EAAQ0N,KAAKyW,MAAMzW,KAAK8gB,IAAIxuB,GAAS0N,KAAK8gB,IAAI,IAEvCxuB,GACLwqB,GAAOA,EACPxqB,IAIF,OADAwqB,EAAOA,EAAI9nB,UAAU,EAAG4iE,EAAW96C,EAAIzuB,OAEzC,CAuGoCwpE,CAAO,IAAKzpE,GAAI,KAC1CA,EAAI,EAER,CACF,CACF,CAOA,IAHA,IAAIsD,EAAI2lE,EAAYA,EAAYhpE,OAAS,GACrCsD,EAAI2lE,EAAcA,EAAcjpE,OAAS,GAEtCqD,IAAMC,IACPvD,IAAM,EACRqxB,EAAM,OAAO1vB,OAAO2B,GAAG3B,OAAO0vB,GAE9B65B,EAAQ5nD,EAGV2lE,EAAYt7C,MACZu7C,EAAcv7C,MACa,IAAvBs7C,EAAYhpE,QAAyC,IAAzBipE,EAAcjpE,SAC9CqD,EAAI2lE,EAAYA,EAAYhpE,OAAS,GACrCsD,EAAI2lE,EAAcA,EAAcjpE,OAAS,GAG3C,IAAIypE,EAAW93D,KAAKo3B,IAAIigC,EAAYhpE,OAAQipE,EAAcjpE,QAG1D,GAAiB,IAAbypE,EAAgB,CAElB,IAAIC,EAAeX,EAAgBt8C,MAAM,MAIzC,GAAIi9C,EAAa1pE,OAAS,GAGxB,IAFA0pE,EAAa,IAAM,GAAGhoE,OAAO+lE,EAAM,OAAO/lE,OAAOkmE,GAE1C8B,EAAa1pE,OAAS,IAC3B0pE,EAAah8C,MAIjB,MAAO,GAAGhsB,OAAOmmE,EAAkBG,aAAc,QAAQtmE,OAAOgoE,EAAal3D,KAAK,MAAO,KAC3F,CAEIzS,EAAI,IACNqxB,EAAM,KAAK1vB,OAAO+lE,EAAM,OAAO/lE,OAAOkmE,GAAOlmE,OAAO0vB,GACpD03C,GAAU,GAGE,KAAV7d,IACF75B,EAAM,OAAO1vB,OAAOupD,GAAOvpD,OAAO0vB,GAClC65B,EAAQ,IAGV,IAAI0e,EAAe,EACf/E,EAAMiD,EAAkBtE,GAAY,KAAK7hE,OAAOgmE,EAAO,YAAYhmE,OAAOkmE,EAAO,KAAKlmE,OAAOimE,EAAK,cAAcjmE,OAAOkmE,GACvHgC,EAAa,IAAIloE,OAAO+lE,EAAM,OAAO/lE,OAAOkmE,EAAO,kBAEvD,IAAK7nE,EAAI,EAAGA,EAAI0pE,EAAU1pE,IAAK,CAE7B,IAAI8pE,EAAM9pE,EAAI8oE,EAEd,GAAIG,EAAYhpE,OAASD,EAAI,EAIvB8pE,EAAM,GAAK9pE,EAAI,IACb8pE,EAAM,GACR39B,GAAO,KAAKxqC,OAAO+lE,EAAM,OAAO/lE,OAAOkmE,GACvCkB,GAAU,GACDe,EAAM,IACf39B,GAAO,OAAOxqC,OAAOunE,EAAclpE,EAAI,IACvC4pE,KAGFz9B,GAAO,OAAOxqC,OAAOunE,EAAclpE,EAAI,IACvC4pE,KAIFd,EAAU9oE,EAEVkrD,GAAS,KAAKvpD,OAAOimE,EAAK,KAAKjmE,OAAOkmE,EAAO,KAAKlmE,OAAOunE,EAAclpE,IACvE4pE,SACK,GAAIV,EAAcjpE,OAASD,EAAI,EAIhC8pE,EAAM,GAAK9pE,EAAI,IACb8pE,EAAM,GACR39B,GAAO,KAAKxqC,OAAO+lE,EAAM,OAAO/lE,OAAOkmE,GACvCkB,GAAU,GACDe,EAAM,IACf39B,GAAO,OAAOxqC,OAAOsnE,EAAYjpE,EAAI,IACrC4pE,KAGFz9B,GAAO,OAAOxqC,OAAOsnE,EAAYjpE,EAAI,IACrC4pE,KAIFd,EAAU9oE,EAEVmsC,GAAO,KAAKxqC,OAAOgmE,EAAO,KAAKhmE,OAAOkmE,EAAO,KAAKlmE,OAAOsnE,EAAYjpE,IACrE4pE,QACK,CACL,IAAIG,EAAeb,EAAclpE,GAC7BgqE,EAAaf,EAAYjpE,GAIzBiqE,EAAiBD,IAAeD,KAAkBx8C,EAASy8C,EAAY,MAAQA,EAAWz8D,MAAM,GAAI,KAAOw8D,GAU3GE,GAAkB18C,EAASw8C,EAAc,MAAQA,EAAax8D,MAAM,GAAI,KAAOy8D,IACjFC,GAAiB,EACjBD,GAAc,KAGZC,GAIEH,EAAM,GAAK9pE,EAAI,IACb8pE,EAAM,GACR39B,GAAO,KAAKxqC,OAAO+lE,EAAM,OAAO/lE,OAAOkmE,GACvCkB,GAAU,GACDe,EAAM,IACf39B,GAAO,OAAOxqC,OAAOsnE,EAAYjpE,EAAI,IACrC4pE,KAGFz9B,GAAO,OAAOxqC,OAAOsnE,EAAYjpE,EAAI,IACrC4pE,KAIFd,EAAU9oE,EAGVmsC,GAAO,KAAKxqC,OAAOgmE,EAAO,KAAKhmE,OAAOkmE,EAAO,KAAKlmE,OAAOqoE,GACzD9e,GAAS,KAAKvpD,OAAOimE,EAAK,KAAKjmE,OAAOkmE,EAAO,KAAKlmE,OAAOooE,GACzDH,GAAgB,IAIhBz9B,GAAO+e,EACPA,EAAQ,GAGI,IAAR4e,GAAmB,IAAN9pE,IACfmsC,GAAO,OAAOxqC,OAAOqoE,GACrBJ,KAGN,CAGA,GAAIA,EAAe,IAAM5pE,EAAI0pE,EAAW,EACtC,MAAO,GAAG/nE,OAAOkjE,GAAKljE,OAAOkoE,EAAY,MAAMloE,OAAOwqC,EAAK,MAAMxqC,OAAO+lE,EAAM,OAAO/lE,OAAOkmE,GAAOlmE,OAAOupD,EAAO,MAAQ,GAAGvpD,OAAO+lE,EAAM,OAAO/lE,OAAOkmE,EAE3J,CAEA,MAAO,GAAGlmE,OAAOkjE,GAAKljE,OAAOonE,EAAUc,EAAa,GAAI,MAAMloE,OAAOwqC,GAAKxqC,OAAOupD,GAAOvpD,OAAO0vB,GAAK1vB,OAAOwnE,EAC7G,CAEA,IAAI3G,EAEJ,SAAU0H,GAGR,SAAS1H,EAAe/9D,GACtB,IAAIigE,EAIJ,GAxVJ,SAAyBlkE,EAAUC,GAAe,KAAMD,aAAoBC,GAAgB,MAAM,IAAIC,UAAU,oCAAwC,CAsVpJC,CAAgBC,KAAM4hE,GAEG,WAArBV,EAAQr9D,IAAqC,OAAZA,EACnC,MAAM,IAAI29D,EAAqB,UAAW,SAAU39D,GAGtD,IAAIof,EAAUpf,EAAQof,QAClB2/C,EAAW/+D,EAAQ++D,SACnBC,EAAeh/D,EAAQg/D,aACvBH,EAAS7+D,EAAQ6+D,OACjBC,EAAW9+D,EAAQ8+D,SACnB4G,EAAQn2D,MAAMo2D,gBAGlB,GAFAp2D,MAAMo2D,gBAAkB,EAET,MAAXvmD,EACF6gD,EAAQoC,EAA2BlmE,KAAMwmE,EAAgB5E,GAAgBl1D,KAAK1M,KAAMwI,OAAOya,UA0B3F,GAxBI6E,EAAQ2gD,QAAU3gD,EAAQ2gD,OAAOC,QAG/B5gD,EAAQ2gD,QAAU3gD,EAAQ2gD,OAAOgB,eAAoD,IAAnC3hD,EAAQ2gD,OAAOgB,iBACnE3C,EAAO,QACPC,EAAQ,QACRE,EAAQ,QACRD,EAAM,UAENF,EAAO,GACPC,EAAQ,GACRE,EAAQ,GACRD,EAAM,KAOc,WAApB9F,EAAQwB,IAAmC,OAAXA,GAAyC,WAAtBxB,EAAQyB,IAAuC,OAAbA,GAAqB,UAAWD,GAAUA,aAAkBtvD,OAAS,UAAWuvD,GAAYA,aAAoBvvD,QACvMsvD,EAAS4E,EAAU5E,GACnBC,EAAW2E,EAAU3E,IAGN,oBAAbC,GAA+C,gBAAbA,EACpCkB,EAAQoC,EAA2BlmE,KAAMwmE,EAAgB5E,GAAgBl1D,KAAK1M,KAAMioE,EAAcvF,EAAQC,EAAUC,UAC/G,GAAiB,uBAAbA,GAAkD,mBAAbA,EAA+B,CAG7E,IAAItwD,EAAO40D,EAAkBtE,GACzBr3B,EAAMg8B,EAAa7E,GAAQ52C,MAAM,MAQrC,GANiB,mBAAb82C,GAAqD,WAApB1B,EAAQwB,IAAmC,OAAXA,IACnEpwD,EAAO40D,EAAkBE,sBAKvB77B,EAAIlsC,OAAS,GAGf,IAFAksC,EAAI,IAAM,GAAGxqC,OAAO+lE,EAAM,OAAO/lE,OAAOkmE,GAEjC17B,EAAIlsC,OAAS,IAClBksC,EAAIxe,MAMN+2C,EADiB,IAAfv4B,EAAIlsC,OACE6mE,EAA2BlmE,KAAMwmE,EAAgB5E,GAAgBl1D,KAAK1M,KAAM,GAAGe,OAAOuR,EAAM,KAAKvR,OAAOwqC,EAAI,MAE5G26B,EAA2BlmE,KAAMwmE,EAAgB5E,GAAgBl1D,KAAK1M,KAAM,GAAGe,OAAOuR,EAAM,QAAQvR,OAAOwqC,EAAI15B,KAAK,MAAO,OAEvI,KAAO,CACL,IAAI63D,EAAOnC,EAAa7E,GAEpBpY,EAAQ,GACRqf,EAAiBzC,EAAkBtE,GAEtB,iBAAbA,GAA4C,aAAbA,GACjC8G,EAAO,GAAG3oE,OAAOmmE,EAAkBtE,GAAW,QAAQ7hE,OAAO2oE,IAEpDrqE,OAAS,OAChBqqE,EAAO,GAAG3oE,OAAO2oE,EAAK/8D,MAAM,EAAG,MAAO,SAGxC29C,EAAQ,GAAGvpD,OAAOwmE,EAAa5E,IAE3B+G,EAAKrqE,OAAS,MAChBqqE,EAAO,GAAG3oE,OAAO2oE,EAAK/8D,MAAM,EAAG,KAAM,QAGnC29C,EAAMjrD,OAAS,MACjBirD,EAAQ,GAAGvpD,OAAOupD,EAAM39C,MAAM,EAAG,KAAM,QAGxB,cAAbi2D,GAAyC,UAAbA,EAC9B8G,EAAO,GAAG3oE,OAAO4oE,EAAgB,QAAQ5oE,OAAO2oE,EAAM,wBAEtDpf,EAAQ,IAAIvpD,OAAO6hE,EAAU,KAAK7hE,OAAOupD,IAI7CwZ,EAAQoC,EAA2BlmE,KAAMwmE,EAAgB5E,GAAgBl1D,KAAK1M,KAAM,GAAGe,OAAO2oE,GAAM3oE,OAAOupD,IAC7G,CAyBF,OAtBAl3C,MAAMo2D,gBAAkBD,EACxBzF,EAAMrB,kBAAoBx/C,EAC1BpnB,OAAOC,eAAeqqE,EAAuBrC,GAAQ,OAAQ,CAC3D9nE,MAAO,iCACPC,YAAY,EACZuD,UAAU,EACVD,cAAc,IAEhBukE,EAAM1+C,KAAO,gBACb0+C,EAAMpB,OAASA,EACfoB,EAAMnB,SAAWA,EACjBmB,EAAMlB,SAAWA,EAEbxvD,MAAMw2D,mBAERx2D,MAAMw2D,kBAAkBzD,EAAuBrC,GAAQjB,GAIzDiB,EAAMn+C,MAENm+C,EAAMzjE,KAAO,iBACN6lE,EAA2BpC,EACpC,CAhdF,IAAsBjkE,EAAaM,EAAYC,EAqe7C,OA/dF,SAAmBypE,EAAUC,GAAc,GAA0B,mBAAfA,GAA4C,OAAfA,EAAuB,MAAM,IAAIhqE,UAAU,sDAAyD+pE,EAASnpE,UAAY7E,OAAOuC,OAAO0rE,GAAcA,EAAWppE,UAAW,CAAEkM,YAAa,CAAE5Q,MAAO6tE,EAAUrqE,UAAU,EAAMD,cAAc,KAAeuqE,GAAYrD,EAAgBoD,EAAUC,EAAa,CAuU9XC,CAAUnI,EAAgB0H,GA7UNzpE,EAkdP+hE,EAldoBzhE,EAkdJ,CAAC,CAC5BV,IAAK,WACLzD,MAAO,WACL,MAAO,GAAG+E,OAAOf,KAAKK,KAAM,MAAMU,OAAOf,KAAKolB,KAAM,OAAOrkB,OAAOf,KAAKijB,QACzE,GACC,CACDxjB,IAAK2yB,EAAQ43C,OACbhuE,MAAO,SAAeiuE,EAAc17B,GAKlC,OAAOnc,EAAQpyB,KAterB,SAAuBd,GAAU,IAAK,IAAIE,EAAI,EAAGA,EAAI4D,UAAU3D,OAAQD,IAAK,CAAE,IAAIkkB,EAAyB,MAAhBtgB,UAAU5D,GAAa4D,UAAU5D,GAAK,CAAC,EAAOy6B,EAAUh+B,OAAOwL,KAAKic,GAAqD,mBAAjCznB,OAAOyL,wBAAwCuyB,EAAUA,EAAQ94B,OAAOlF,OAAOyL,sBAAsBgc,GAAQtiB,QAAO,SAAUklD,GAAO,OAAOrqD,OAAO0L,yBAAyB+b,EAAQ4iC,GAAKjqD,UAAY,MAAO49B,EAAQ18B,SAAQ,SAAUsC,GAAOwmE,EAAgB/mE,EAAQO,EAAK6jB,EAAO7jB,GAAO,GAAI,CAAE,OAAOP,CAAQ,CAsercgrE,CAAc,CAAC,EAAG37B,EAAK,CAC1Ck5B,eAAe,EACfC,MAAO,IAEX,IAle8DvnE,GAAYlB,EAAkBY,EAAYa,UAAWP,GAAiBC,GAAanB,EAAkBY,EAAaO,GAqe3KwhE,CACT,CA1JA,CA0JEwE,EAAiBhzD,QAEnB/M,EAAOtK,QAAU6lE,8BCtejB,SAASV,EAAQrjE,GAAwT,OAAtOqjE,EAArD,mBAAX30D,QAAoD,iBAApBA,OAAOC,SAAmC,SAAiB3O,GAAO,cAAcA,CAAK,EAAsB,SAAiBA,GAAO,OAAOA,GAAyB,mBAAX0O,QAAyB1O,EAAI+O,cAAgBL,QAAU1O,IAAQ0O,OAAO7L,UAAY,gBAAkB7C,CAAK,EAAYqjE,EAAQrjE,EAAM,CAI9V,SAASqoE,EAA2B9/D,EAAMsG,GAAQ,OAAIA,GAA2B,WAAlBw0D,EAAQx0D,IAAsC,mBAATA,EAEpG,SAAgCtG,GAAQ,QAAa,IAATA,EAAmB,MAAM,IAAI2qC,eAAe,6DAAgE,OAAO3qC,CAAM,CAFnB+/D,CAAuB//D,GAAtCsG,CAA6C,CAIhL,SAAS85D,EAAgB1/D,GAAwJ,OAAnJ0/D,EAAkB3qE,OAAO4+B,eAAiB5+B,OAAOmyB,eAAiB,SAAyBlnB,GAAK,OAAOA,EAAEg/B,WAAajqC,OAAOmyB,eAAelnB,EAAI,EAAU0/D,EAAgB1/D,EAAI,CAI5M,SAAS2/D,EAAgB3/D,EAAGY,GAA+G,OAA1G++D,EAAkB5qE,OAAO4+B,gBAAkB,SAAyB3zB,EAAGY,GAAsB,OAAjBZ,EAAEg/B,UAAYp+B,EAAUZ,CAAG,EAAU2/D,EAAgB3/D,EAAGY,EAAI,CAEzK,IAEIgqB,EACAphB,EAHAgxD,EAAQ,CAAC,EAKb,SAAS6I,EAAgB/kD,EAAMnC,EAASmnD,GACjCA,IACHA,EAAOh3D,OAWT,IAAIi3D,EAEJ,SAAUC,GAGR,SAASD,EAAUE,EAAM5qC,EAAM6qC,GAC7B,IAAI1G,EAMJ,OA1CN,SAAyBlkE,EAAUC,GAAe,KAAMD,aAAoBC,GAAgB,MAAM,IAAIC,UAAU,oCAAwC,CAsClJC,CAAgBC,KAAMqqE,GAEtBvG,EAAQoC,EAA2BlmE,KAAMwmE,EAAgB6D,GAAW39D,KAAK1M,KAlB7E,SAAoBuqE,EAAM5qC,EAAM6qC,GAC9B,MAAuB,iBAAZvnD,EACFA,EAEAA,EAAQsnD,EAAM5qC,EAAM6qC,EAE/B,CAYmFC,CAAWF,EAAM5qC,EAAM6qC,KACtG1G,EAAM1+C,KAAOA,EACN0+C,CACT,CAEA,OArCJ,SAAmB+F,EAAUC,GAAc,GAA0B,mBAAfA,GAA4C,OAAfA,EAAuB,MAAM,IAAIhqE,UAAU,sDAAyD+pE,EAASnpE,UAAY7E,OAAOuC,OAAO0rE,GAAcA,EAAWppE,UAAW,CAAEkM,YAAa,CAAE5Q,MAAO6tE,EAAUrqE,UAAU,EAAMD,cAAc,KAAeuqE,GAAYrD,EAAgBoD,EAAUC,EAAa,CAyB5XC,CAAUM,EAAWC,GAYdD,CACT,CAdA,CAcED,GAEF9I,EAAMl8C,GAAQilD,CAChB,CAGA,SAASK,EAAM/H,EAAU31C,GACvB,GAAI7lB,MAAMmF,QAAQq2D,GAAW,CAC3B,IAAI3yC,EAAM2yC,EAAStjE,OAKnB,OAJAsjE,EAAWA,EAAS/wD,KAAI,SAAUxS,GAChC,OAAOoJ,OAAOpJ,EAChB,IAEI4wB,EAAM,EACD,UAAUjvB,OAAOisB,EAAO,KAAKjsB,OAAO4hE,EAASh2D,MAAM,EAAGqjB,EAAM,GAAGne,KAAK,MAAO,SAAW8wD,EAAS3yC,EAAM,GAC3F,IAARA,EACF,UAAUjvB,OAAOisB,EAAO,KAAKjsB,OAAO4hE,EAAS,GAAI,QAAQ5hE,OAAO4hE,EAAS,IAEzE,MAAM5hE,OAAOisB,EAAO,KAAKjsB,OAAO4hE,EAAS,GAEpD,CACE,MAAO,MAAM5hE,OAAOisB,EAAO,KAAKjsB,OAAOyH,OAAOm6D,GAElD,CA6BAwH,EAAgB,yBAA0B,qCAAsCrqE,WAChFqqE,EAAgB,wBAAwB,SAAU9pE,EAAMsiE,EAAUD,GAIhE,IAAIiI,EA/BmBv/C,EAAQ6c,EAwC3Bg8B,EAEJ,QAdehhE,IAAXyuB,IAAsBA,EAAS,EAAQ,MAC3CA,EAAuB,iBAATrxB,EAAmB,2BAIT,iBAAbsiE,IAjCYv3C,EAiCkC,OAAVu3C,EAhCpC32C,QAAQic,GAAOA,EAAM,EAAI,GAAKA,EAAK7c,EAAO/rB,UAAY+rB,IAiC/Du/C,EAAa,cACbhI,EAAWA,EAAS1gE,QAAQ,QAAS,KAErC0oE,EAAa,UAhCjB,SAAkB78C,EAAK1C,EAAQy7C,GAK7B,YAJiB5jE,IAAb4jE,GAA0BA,EAAW/4C,EAAIzuB,UAC3CwnE,EAAW/4C,EAAIzuB,QAGVyuB,EAAI9nB,UAAU6gE,EAAWz7C,EAAO/rB,OAAQwnE,KAAcz7C,CAC/D,CA+BMuB,CAAStsB,EAAM,aAEjB4jE,EAAM,OAAOljE,OAAOV,EAAM,KAAKU,OAAO4pE,EAAY,KAAK5pE,OAAO2pE,EAAM/H,EAAU,aACzE,CACL,IAAIj9D,EAhCR,SAAkBooB,EAAK1C,EAAQnT,GAK7B,MAJqB,iBAAVA,IACTA,EAAQ,KAGNA,EAAQmT,EAAO/rB,OAASyuB,EAAIzuB,UAGS,IAAhCyuB,EAAIhoB,QAAQslB,EAAQnT,EAE/B,CAsBewB,CAASpZ,EAAM,KAAO,WAAa,WAC9C4jE,EAAM,QAASljE,OAAOV,EAAM,MAAOU,OAAO2E,EAAM,KAAK3E,OAAO4pE,EAAY,KAAK5pE,OAAO2pE,EAAM/H,EAAU,QACtG,CAIA,OADAsB,GAAO,mBAAmBljE,OAAOmgE,EAAQwB,GAE3C,GAAG5iE,WACHqqE,EAAgB,yBAAyB,SAAU9pE,EAAMrE,GACvD,IAAIknB,EAASlgB,UAAU3D,OAAS,QAAsB4D,IAAjBD,UAAU,GAAmBA,UAAU,GAAK,kBACpEC,IAATqN,IAAoBA,EAAO,EAAQ,MACvC,IAAIs6D,EAAYt6D,EAAK8hB,QAAQp2B,GAM7B,OAJI4uE,EAAUvrE,OAAS,MACrBurE,EAAY,GAAG7pE,OAAO6pE,EAAUj+D,MAAM,EAAG,KAAM,QAG1C,iBAAiB5L,OAAOV,EAAM,MAAMU,OAAOmiB,EAAQ,eAAeniB,OAAO6pE,EAClF,GAAG9qE,UAAWgxC,YACdq5B,EAAgB,4BAA4B,SAAU9iC,EAAOhnC,EAAMrE,GACjE,IAAI0J,EAQJ,OALEA,EADE1J,GAASA,EAAM4Q,aAAe5Q,EAAM4Q,YAAYvM,KAC3C,eAAeU,OAAO/E,EAAM4Q,YAAYvM,MAExC,QAAQU,OAAOmgE,EAAQllE,IAGzB,YAAY+E,OAAOsmC,EAAO,8BAA+BtmC,OAAOV,EAAM,KAAQ,qBAAqBU,OAAO2E,EAAM,IACzH,GAAG5F,WACHqqE,EAAgB,oBAAoB,WAClC,IAAK,IAAIrH,EAAO9/D,UAAU3D,OAAQmqB,EAAO,IAAIriB,MAAM27D,GAAOC,EAAO,EAAGA,EAAOD,EAAMC,IAC/Ev5C,EAAKu5C,GAAQ//D,UAAU+/D,QAGV9/D,IAAXyuB,IAAsBA,EAAS,EAAQ,MAC3CA,EAAOlI,EAAKnqB,OAAS,EAAG,0CACxB,IAAI4kE,EAAM,OACNj0C,EAAMxG,EAAKnqB,OAKf,OAJAmqB,EAAOA,EAAK5X,KAAI,SAAUlP,GACxB,MAAO,IAAK3B,OAAO2B,EAAG,IACxB,IAEQstB,GACN,KAAK,EACHi0C,GAAO,GAAGljE,OAAOyoB,EAAK,GAAI,aAC1B,MAEF,KAAK,EACHy6C,GAAO,GAAGljE,OAAOyoB,EAAK,GAAI,SAASzoB,OAAOyoB,EAAK,GAAI,cACnD,MAEF,QACEy6C,GAAOz6C,EAAK7c,MAAM,EAAGqjB,EAAM,GAAGne,KAAK,MACnCoyD,GAAO,SAASljE,OAAOyoB,EAAKwG,EAAM,GAAI,cAI1C,MAAO,GAAGjvB,OAAOkjE,EAAK,qBACxB,GAAGnkE,WACHuG,EAAOtK,QAAQulE,MAAQA,+BC9LvB,SAASuJ,EAAe1+C,EAAK/sB,GAAK,OAMlC,SAAyB+sB,GAAO,GAAIhlB,MAAMmF,QAAQ6f,GAAM,OAAOA,CAAK,CAN3B2+C,CAAgB3+C,IAIzD,SAA+BA,EAAK/sB,GAAK,IAAI2rE,EAAO,GAAQC,GAAK,EAAU90D,GAAK,EAAWN,OAAK3S,EAAW,IAAM,IAAK,IAAiCwS,EAA7Bw1D,EAAK9+C,EAAI5f,OAAOC,cAAmBw+D,GAAMv1D,EAAKw1D,EAAGn5D,QAAQC,QAAoBg5D,EAAKpuE,KAAK8Y,EAAGzZ,QAAYoD,GAAK2rE,EAAK1rE,SAAWD,GAA3D4rE,GAAK,GAA0M,CAAtI,MAAOxrD,GAAOtJ,GAAK,EAAMN,EAAK4J,CAAK,CAAE,QAAU,IAAWwrD,GAAsB,MAAhBC,EAAW,QAAWA,EAAW,QAAmC,CAA5B,QAAU,GAAI/0D,EAAI,MAAMN,CAAI,CAAE,CAAE,OAAOm1D,CAAM,CAJvVG,CAAsB/+C,EAAK/sB,IAE5F,WAA8B,MAAM,IAAIU,UAAU,uDAAyD,CAFTqrE,EAAoB,CAQtH,SAASjK,EAAQrjE,GAAwT,OAAtOqjE,EAArD,mBAAX30D,QAAoD,iBAApBA,OAAOC,SAAmC,SAAiB3O,GAAO,cAAcA,CAAK,EAAsB,SAAiBA,GAAO,OAAOA,GAAyB,mBAAX0O,QAAyB1O,EAAI+O,cAAgBL,QAAU1O,IAAQ0O,OAAO7L,UAAY,gBAAkB7C,CAAK,EAAYqjE,EAAQrjE,EAAM,CAE9V,IAAIutE,OAAqCnoE,IAAf,KAAKu8B,MAE3B6rC,EAAe,SAAsBvqE,GACvC,IAAIi0B,EAAQ,GAIZ,OAHAj0B,EAAI3D,SAAQ,SAAUnB,GACpB,OAAO+4B,EAAMp4B,KAAKX,EACpB,IACO+4B,CACT,EAEIu2C,EAAe,SAAsB15D,GACvC,IAAImjB,EAAQ,GAIZ,OAHAnjB,EAAIzU,SAAQ,SAAUnB,EAAOyD,GAC3B,OAAOs1B,EAAMp4B,KAAK,CAAC8C,EAAKzD,GAC1B,IACO+4B,CACT,EAEIktC,EAAWpmE,OAAOqO,GAAKrO,OAAOqO,GAAK,EAAQ,KAC3CqhE,EAA8B1vE,OAAOyL,sBAAwBzL,OAAOyL,sBAAwB,WAC9F,MAAO,EACT,EACIkkE,EAAcryD,OAAOqvB,MAAQrvB,OAAOqvB,MAAQ,EAAQ,KAExD,SAASijC,EAAYz9D,GACnB,OAAOA,EAAEtB,KAAK4B,KAAKN,EACrB,CAEA,IAAI8J,EAAiB2zD,EAAY5vE,OAAO6E,UAAUoX,gBAC9C4oB,EAAuB+qC,EAAY5vE,OAAO6E,UAAUggC,sBACpDkpB,EAAiB6hB,EAAY5vE,OAAO6E,UAAUmC,UAE9Cg/D,EAAiB,aACjB6J,EAAmB7J,EAAe6J,iBAClCtjD,EAAoBy5C,EAAez5C,kBACnCwB,EAASi4C,EAAej4C,OACxB+hD,EAAQ9J,EAAe8J,MACvB5J,EAAWF,EAAeE,SAC1B6J,EAAQ/J,EAAe+J,MACvBC,EAAgBhK,EAAegK,cAC/BC,EAAmBjK,EAAeiK,iBAClCC,EAAiBlK,EAAekK,eAChCC,EAAiBnK,EAAemK,eAChCC,EAAkBpK,EAAeoK,gBACjCC,EAAiBrK,EAAeqK,eAChCC,EAAiBtK,EAAesK,eAChCC,EAAiBvK,EAAeuK,eAChCC,EAAiBxK,EAAewK,eAEpC,SAASC,EAAW7sE,GAClB,GAAmB,IAAfA,EAAIJ,QAAgBI,EAAIJ,OAAS,GAAI,OAAO,EAEhD,IAAK,IAAID,EAAI,EAAGA,EAAIK,EAAIJ,OAAQD,IAAK,CACnC,IAAIgmB,EAAO3lB,EAAImvB,WAAWxvB,GAC1B,GAAIgmB,EAAO,IAAMA,EAAO,GAAI,OAAO,CACrC,CAGA,OAAsB,KAAf3lB,EAAIJ,QAAiBI,GAAOuR,KAAK81C,IAAI,EAAG,GACjD,CAEA,SAASylB,EAAyBvwE,GAChC,OAAOH,OAAOwL,KAAKrL,GAAOgF,OAAOsrE,GAAYvrE,OAAOwqE,EAA4BvvE,GAAOgF,OAAOnF,OAAO6E,UAAUggC,qBAAqBpyB,KAAKtS,IAC3I,CAWA,SAASwwE,EAAQ9pE,EAAGC,GAClB,GAAID,IAAMC,EACR,OAAO,EAMT,IAHA,IAAIoR,EAAIrR,EAAErD,OACNiV,EAAI3R,EAAEtD,OAEDD,EAAI,EAAG4wB,EAAMhf,KAAKq3B,IAAIt0B,EAAGO,GAAIlV,EAAI4wB,IAAO5wB,EAC/C,GAAIsD,EAAEtD,KAAOuD,EAAEvD,GAAI,CACjB2U,EAAIrR,EAAEtD,GACNkV,EAAI3R,EAAEvD,GACN,KACF,CAGF,OAAI2U,EAAIO,GACE,EAGNA,EAAIP,EACC,EAGF,CACT,CA8EA,SAAS04D,EAAex4B,EAAMC,EAAM2wB,EAAQ6H,GAE1C,GAAIz4B,IAASC,EACX,OAAa,IAATD,KACG4wB,GAAS5C,EAAShuB,EAAMC,IAIjC,GAAI2wB,EAAQ,CACV,GAAsB,WAAlB3D,EAAQjtB,GACV,MAAuB,iBAATA,GAAqBu3B,EAAYv3B,IAASu3B,EAAYt3B,GAGtE,GAAsB,WAAlBgtB,EAAQhtB,IAA+B,OAATD,GAA0B,OAATC,EACjD,OAAO,EAGT,GAAIr4C,OAAOmyB,eAAeimB,KAAUp4C,OAAOmyB,eAAekmB,GACxD,OAAO,CAEX,KAAO,CACL,GAAa,OAATD,GAAmC,WAAlBitB,EAAQjtB,GAC3B,OAAa,OAATC,GAAmC,WAAlBgtB,EAAQhtB,KAEpBD,GAAQC,EAMnB,GAAa,OAATA,GAAmC,WAAlBgtB,EAAQhtB,GAC3B,OAAO,CAEX,CAEA,IA7E4By4B,EAAMC,EA1BTlqE,EAAGC,EAuGxBkqE,EAAUjjB,EAAe3V,GAG7B,GAAI44B,IAFUjjB,EAAe1V,GAG3B,OAAO,EAGT,GAAI/sC,MAAMmF,QAAQ2nC,GAAO,CAEvB,GAAIA,EAAK50C,SAAW60C,EAAK70C,OACvB,OAAO,EAGT,IAAIytE,EAAQP,EAAyBt4B,GACjC84B,EAAQR,EAAyBr4B,GAErC,OAAI44B,EAAMztE,SAAW0tE,EAAM1tE,QAIpB2tE,EAAS/4B,EAAMC,EAAM2wB,EAAQ6H,EA/HzB,EA+H0CI,EACvD,CAKA,GAAgB,oBAAZD,KAEGlB,EAAM13B,IAAS03B,EAAMz3B,KAAU03B,EAAM33B,IAAS23B,EAAM13B,IACvD,OAAO,EAIX,GAAItqB,EAAOqqB,IACT,IAAKrqB,EAAOsqB,IAASh8B,KAAKxX,UAAUixB,QAAQjlB,KAAKunC,KAAU/7B,KAAKxX,UAAUixB,QAAQjlB,KAAKwnC,GACrF,OAAO,OAEJ,GAAI6tB,EAAS9tB,IAClB,IAAK8tB,EAAS7tB,KA7ISxxC,EA6ImBuxC,EA7IhBtxC,EA6IsBuxC,IA5I3Ck3B,EAAsB1oE,EAAE4gB,SAAW3gB,EAAE2gB,QAAU5gB,EAAE88B,QAAU78B,EAAE68B,MAAQ/U,OAAO/pB,UAAUmC,SAAS6J,KAAKhK,KAAO+nB,OAAO/pB,UAAUmC,SAAS6J,KAAK/J,KA6I7I,OAAO,OAEJ,GAAIkpE,EAAc53B,IAASA,aAAgB7gC,OAGhD,GAAI6gC,EAAKhxB,UAAYixB,EAAKjxB,SAAWgxB,EAAK5zC,OAAS6zC,EAAK7zC,KACtD,OAAO,MAEJ,IAAI+nB,EAAkB6rB,GAAO,CAClC,GAAK4wB,IAAWuH,EAAen4B,KAASo4B,EAAep4B,IAIhD,IAzIX,SAA+BvxC,EAAGC,GAChC,OAAID,EAAE2sB,aAAe1sB,EAAE0sB,YAIwG,IAAxHm9C,EAAQ,IAAIr+C,WAAWzrB,EAAE2lB,OAAQ3lB,EAAE2vD,WAAY3vD,EAAE2sB,YAAa,IAAIlB,WAAWxrB,EAAE0lB,OAAQ1lB,EAAE0vD,WAAY1vD,EAAE0sB,YAChH,CAmIgB49C,CAAsBh5B,EAAMC,GACtC,OAAO,OAJP,IApJN,SAA+BxxC,EAAGC,GAChC,GAAID,EAAE2sB,aAAe1sB,EAAE0sB,WACrB,OAAO,EAGT,IAAK,IAAIwoB,EAAS,EAAGA,EAASn1C,EAAE2sB,WAAYwoB,IAC1C,GAAIn1C,EAAEm1C,KAAYl1C,EAAEk1C,GAClB,OAAO,EAIX,OAAO,CACT,CAwIWq1B,CAAsBj5B,EAAMC,GAC/B,OAAO,EASX,IAAIi5B,EAAQZ,EAAyBt4B,GAEjCm5B,EAASb,EAAyBr4B,GAEtC,OAAIi5B,EAAM9tE,SAAW+tE,EAAO/tE,QAIrB2tE,EAAS/4B,EAAMC,EAAM2wB,EAAQ6H,EA/KtB,EA+K0CS,EAC1D,CAAO,GAAIvB,EAAM33B,GACf,SAAK23B,EAAM13B,IAASD,EAAK39B,OAAS49B,EAAK59B,OAIhC02D,EAAS/4B,EAAMC,EAAM2wB,EAAQ6H,EAnL3B,GAoLJ,GAAIf,EAAM13B,GACf,SAAK03B,EAAMz3B,IAASD,EAAK39B,OAAS49B,EAAK59B,OAIhC02D,EAAS/4B,EAAMC,EAAM2wB,EAAQ6H,EAxL3B,GAyLJ,GAAIhB,EAAiBz3B,IAC1B,GA9JgC24B,EA8JA14B,GA9JNy4B,EA8JA14B,GA7JhB5kB,aAAeu9C,EAAKv9C,YAAsE,IAAxDm9C,EAAQ,IAAIr+C,WAAWw+C,GAAO,IAAIx+C,WAAWy+C,IA8JvF,OAAO,OAEJ,GAAId,EAAiB73B,KA7J9B,SAA+BA,EAAMC,GACnC,OAAI63B,EAAe93B,GACV83B,EAAe73B,IAAS+tB,EAAS9oD,OAAOzY,UAAUgoC,QAAQh8B,KAAKunC,GAAO96B,OAAOzY,UAAUgoC,QAAQh8B,KAAKwnC,IAGzG83B,EAAe/3B,GACV+3B,EAAe93B,IAAS1rC,OAAO9H,UAAUgoC,QAAQh8B,KAAKunC,KAAUzrC,OAAO9H,UAAUgoC,QAAQh8B,KAAKwnC,GAGnG+3B,EAAgBh4B,GACXg4B,EAAgB/3B,IAASvtC,QAAQjG,UAAUgoC,QAAQh8B,KAAKunC,KAAUttC,QAAQjG,UAAUgoC,QAAQh8B,KAAKwnC,GAGtGg4B,EAAej4B,GACVi4B,EAAeh4B,IAASnE,OAAOrvC,UAAUgoC,QAAQh8B,KAAKunC,KAAUlE,OAAOrvC,UAAUgoC,QAAQh8B,KAAKwnC,GAGhGi4B,EAAej4B,IAAS3nC,OAAO7L,UAAUgoC,QAAQh8B,KAAKunC,KAAU1nC,OAAO7L,UAAUgoC,QAAQh8B,KAAKwnC,EACvG,CA2IwCm5B,CAAsBp5B,EAAMC,GAChE,OAAO,CACT,CAEA,OAAO84B,EAAS/4B,EAAMC,EAAM2wB,EAAQ6H,EApMpB,EAqMlB,CAEA,SAASY,EAAexsD,EAAKzZ,GAC3B,OAAOA,EAAKrG,QAAO,SAAUgT,GAC3B,OAAO0sB,EAAqB5f,EAAK9M,EACnC,GACF,CAEA,SAASg5D,EAAS/4B,EAAMC,EAAM2wB,EAAQ6H,EAAOa,EAAeC,GAQ1D,GAAyB,IAArBxqE,UAAU3D,OAAc,CAC1BmuE,EAAQ3xE,OAAOwL,KAAK4sC,GACpB,IAAIw5B,EAAQ5xE,OAAOwL,KAAK6sC,GAExB,GAAIs5B,EAAMnuE,SAAWouE,EAAMpuE,OACzB,OAAO,CAEX,CAKA,IAFA,IAAID,EAAI,EAEDA,EAAIouE,EAAMnuE,OAAQD,IACvB,IAAK0Y,EAAeo8B,EAAMs5B,EAAMpuE,IAC9B,OAAO,EAIX,GAAIylE,GAA+B,IAArB7hE,UAAU3D,OAAc,CACpC,IAAIquE,EAAcnC,EAA4Bt3B,GAE9C,GAA2B,IAAvBy5B,EAAYruE,OAAc,CAC5B,IAAIiE,EAAQ,EAEZ,IAAKlE,EAAI,EAAGA,EAAIsuE,EAAYruE,OAAQD,IAAK,CACvC,IAAIK,EAAMiuE,EAAYtuE,GAEtB,GAAIshC,EAAqBuT,EAAMx0C,GAAM,CACnC,IAAKihC,EAAqBwT,EAAMz0C,GAC9B,OAAO,EAGT+tE,EAAM7wE,KAAK8C,GACX6D,GACF,MAAO,GAAIo9B,EAAqBwT,EAAMz0C,GACpC,OAAO,CAEX,CAEA,IAAIkuE,EAAcpC,EAA4Br3B,GAE9C,GAAIw5B,EAAYruE,SAAWsuE,EAAYtuE,QAAUiuE,EAAep5B,EAAMy5B,GAAatuE,SAAWiE,EAC5F,OAAO,CAEX,KAAO,CACL,IAAIsqE,EAAerC,EAA4Br3B,GAE/C,GAA4B,IAAxB05B,EAAavuE,QAA8D,IAA9CiuE,EAAep5B,EAAM05B,GAAcvuE,OAClE,OAAO,CAEX,CACF,CAEA,GAAqB,IAAjBmuE,EAAMnuE,SA1QM,IA0QWkuE,GAzQd,IAyQ+CA,GAA8C,IAAhBt5B,EAAK50C,QAA8B,IAAd40C,EAAK39B,MAClH,OAAO,EAIT,QAAcrT,IAAVypE,EACFA,EAAQ,CACNz4B,KAAM,IAAIrzC,IACVszC,KAAM,IAAItzC,IACVuuB,SAAU,OAEP,CAIL,IAAI0+C,EAAYnB,EAAMz4B,KAAK/3C,IAAI+3C,GAE/B,QAAkBhxC,IAAd4qE,EAAyB,CAC3B,IAAIC,EAAYpB,EAAMx4B,KAAKh4C,IAAIg4C,GAE/B,QAAkBjxC,IAAd6qE,EACF,OAAOD,IAAcC,CAEzB,CAEApB,EAAMv9C,UACR,CAEAu9C,EAAMz4B,KAAKnzC,IAAImzC,EAAMy4B,EAAMv9C,UAC3Bu9C,EAAMx4B,KAAKpzC,IAAIozC,EAAMw4B,EAAMv9C,UAC3B,IAAI4+C,EAAQC,EAAS/5B,EAAMC,EAAM2wB,EAAQ2I,EAAOd,EAAOa,GAGvD,OAFAb,EAAMz4B,KAAKg6B,OAAOh6B,GAClBy4B,EAAMx4B,KAAK+5B,OAAO/5B,GACX65B,CACT,CAEA,SAASG,EAAmBptE,EAAKmzC,EAAM4wB,EAAQsJ,GAI7C,IAFA,IAAIC,EAAY/C,EAAavqE,GAEpB1B,EAAI,EAAGA,EAAIgvE,EAAU/uE,OAAQD,IAAK,CACzC,IAAI80C,EAAOk6B,EAAUhvE,GAErB,GAAIqtE,EAAex4B,EAAMC,EAAM2wB,EAAQsJ,GAGrC,OADArtE,EAAImtE,OAAO/5B,IACJ,CAEX,CAEA,OAAO,CACT,CAMA,SAASm6B,EAA4BC,GACnC,OAAQpN,EAAQoN,IACd,IAAK,YACH,OAAO,KAET,IAAK,SAEH,OAEF,IAAK,SACH,OAAO,EAET,IAAK,SACHA,GAAQA,EAKV,IAAK,SACH,GAAI9C,EAAY8C,GACd,OAAO,EAKb,OAAO,CACT,CAEA,SAASC,EAAsB7rE,EAAGC,EAAG2rE,GACnC,IAAIE,EAAWH,EAA4BC,GAC3C,OAAgB,MAAZE,EAAyBA,EACtB7rE,EAAEwyB,IAAIq5C,KAAc9rE,EAAEyyB,IAAIq5C,EACnC,CAEA,SAASC,EAAsB/rE,EAAGC,EAAG2rE,EAAMthC,EAAMmhC,GAC/C,IAAIK,EAAWH,EAA4BC,GAE3C,GAAgB,MAAZE,EACF,OAAOA,EAGT,IAAIE,EAAO/rE,EAAEzG,IAAIsyE,GAEjB,aAAavrE,IAATyrE,IAAuB/rE,EAAEwyB,IAAIq5C,KAAc/B,EAAez/B,EAAM0hC,GAAM,EAAOP,OAIzEzrE,EAAEyyB,IAAIq5C,IAAa/B,EAAez/B,EAAM0hC,GAAM,EAAOP,GAC/D,CA0DA,SAASQ,EAAiB7tE,EAAK8Q,EAAKg9D,EAAMC,EAAOhK,EAAQsJ,GAMvD,IAFA,IAAIC,EAAY/C,EAAavqE,GAEpB1B,EAAI,EAAGA,EAAIgvE,EAAU/uE,OAAQD,IAAK,CACzC,IAAI0vE,EAAOV,EAAUhvE,GAErB,GAAIqtE,EAAemC,EAAME,EAAMjK,EAAQsJ,IAAS1B,EAAeoC,EAAOj9D,EAAI1V,IAAI4yE,GAAOjK,EAAQsJ,GAE3F,OADArtE,EAAImtE,OAAOa,IACJ,CAEX,CAEA,OAAO,CACT,CA0DA,SAASd,EAAStrE,EAAGC,EAAGkiE,EAAQx9D,EAAMqlE,EAAOa,GAG3C,IAAInuE,EAAI,EAER,GA1fW,IA0fPmuE,GACF,IAxIJ,SAAkB7qE,EAAGC,EAAGkiE,EAAQsJ,GAM9B,IAHA,IAAIrtE,EAAM,KACNiuE,EAAU1D,EAAa3oE,GAElBtD,EAAI,EAAGA,EAAI2vE,EAAQ1vE,OAAQD,IAAK,CACvC,IAAI0hB,EAAMiuD,EAAQ3vE,GAIlB,GAAqB,WAAjB8hE,EAAQpgD,IAA6B,OAARA,EACnB,OAARhgB,IACFA,EAAM,IAAImwC,KAOZnwC,EAAIoM,IAAI4T,QACH,IAAKne,EAAEwyB,IAAIrU,GAAM,CACtB,GAAI+jD,EAAQ,OAAO,EAEnB,IAAK0J,EAAsB7rE,EAAGC,EAAGme,GAC/B,OAAO,EAGG,OAARhgB,IACFA,EAAM,IAAImwC,KAGZnwC,EAAIoM,IAAI4T,EACV,CACF,CAEA,GAAY,OAARhgB,EAAc,CAGhB,IAFA,IAAIkuE,EAAU3D,EAAa1oE,GAElBsoE,EAAK,EAAGA,EAAK+D,EAAQ3vE,OAAQ4rE,IAAM,CAC1C,IAAIgE,EAAOD,EAAQ/D,GAGnB,GAAsB,WAAlB/J,EAAQ+N,IAA+B,OAATA,GAChC,IAAKf,EAAmBptE,EAAKmuE,EAAMpK,EAAQsJ,GAAO,OAAO,OACpD,IAAKtJ,IAAWniE,EAAEyyB,IAAI85C,KAAUf,EAAmBptE,EAAKmuE,EAAMpK,EAAQsJ,GAC3E,OAAO,CAEX,CAEA,OAAoB,IAAbrtE,EAAIwV,IACb,CAEA,OAAO,CACT,CAkFS44D,CAASxsE,EAAGC,EAAGkiE,EAAQ6H,GAC1B,OAAO,OAEJ,GA7fI,IA6fAa,GACT,IAlEJ,SAAkB7qE,EAAGC,EAAGkiE,EAAQsJ,GAI9B,IAHA,IAAIrtE,EAAM,KACNquE,EAAW7D,EAAa5oE,GAEnBtD,EAAI,EAAGA,EAAI+vE,EAAS9vE,OAAQD,IAAK,CACxC,IAAIgwE,EAAcvE,EAAesE,EAAS/vE,GAAI,GAC1CK,EAAM2vE,EAAY,GAClBP,EAAQO,EAAY,GAExB,GAAqB,WAAjBlO,EAAQzhE,IAA6B,OAARA,EACnB,OAARqB,IACFA,EAAM,IAAImwC,KAGZnwC,EAAIoM,IAAIzN,OACH,CAGL,IAAI4vE,EAAQ1sE,EAAEzG,IAAIuD,GAElB,QAAcwD,IAAVosE,IAAwB1sE,EAAEwyB,IAAI11B,KAASgtE,EAAeoC,EAAOQ,EAAOxK,EAAQsJ,GAAO,CACrF,GAAItJ,EAAQ,OAAO,EAGnB,IAAK4J,EAAsB/rE,EAAGC,EAAGlD,EAAKovE,EAAOV,GAAO,OAAO,EAE/C,OAARrtE,IACFA,EAAM,IAAImwC,KAGZnwC,EAAIoM,IAAIzN,EACV,CACF,CACF,CAEA,GAAY,OAARqB,EAAc,CAGhB,IAFA,IAAIwuE,EAAWhE,EAAa3oE,GAEnB4sE,EAAM,EAAGA,EAAMD,EAASjwE,OAAQkwE,IAAO,CAC9C,IAAIC,EAAe3E,EAAeyE,EAASC,GAAM,GAE7CviC,GADAvtC,EAAM+vE,EAAa,GACZA,EAAa,IAExB,GAAqB,WAAjBtO,EAAQzhE,IAA6B,OAARA,GAC/B,IAAKkvE,EAAiB7tE,EAAK4B,EAAGjD,EAAKutC,EAAM63B,EAAQsJ,GAAO,OAAO,OAC1D,KAAKtJ,GAAYniE,EAAEyyB,IAAI11B,IAASgtE,EAAe/pE,EAAExG,IAAIuD,GAAMutC,GAAM,EAAOmhC,IAAWQ,EAAiB7tE,EAAK4B,EAAGjD,EAAKutC,GAAM,EAAOmhC,IACnI,OAAO,CAEX,CAEA,OAAoB,IAAbrtE,EAAIwV,IACb,CAEA,OAAO,CACT,CAYSm5D,CAAS/sE,EAAGC,EAAGkiE,EAAQ6H,GAC1B,OAAO,OAEJ,GAngBM,IAmgBFa,EACT,KAAOnuE,EAAIsD,EAAErD,OAAQD,IAAK,CACxB,IAAI0Y,EAAepV,EAAGtD,GAIf,IAAI0Y,EAAenV,EAAGvD,GAC3B,OAAO,EAKP,IAFA,IAAIswE,EAAQ7zE,OAAOwL,KAAK3E,GAEjBtD,EAAIswE,EAAMrwE,OAAQD,IAAK,CAC5B,IAAIK,EAAMiwE,EAAMtwE,GAEhB,IAAK0Y,EAAenV,EAAGlD,KAASgtE,EAAe/pE,EAAEjD,GAAMkD,EAAElD,GAAMolE,EAAQ6H,GACrE,OAAO,CAEX,CAEA,OAAIgD,EAAMrwE,SAAWxD,OAAOwL,KAAK1E,GAAGtD,MAKtC,CAtBE,IAAKyY,EAAenV,EAAGvD,KAAOqtE,EAAe/pE,EAAEtD,GAAIuD,EAAEvD,GAAIylE,EAAQ6H,GAC/D,OAAO,CAsBb,CAKF,IAAKttE,EAAI,EAAGA,EAAIiI,EAAKhI,OAAQD,IAAK,CAChC,IAAI2jE,EAAO17D,EAAKjI,GAEhB,IAAKqtE,EAAe/pE,EAAEqgE,GAAOpgE,EAAEogE,GAAO8B,EAAQ6H,GAC5C,OAAO,CAEX,CAEA,OAAO,CACT,CAUArmE,EAAOtK,QAAU,CACfolE,YATF,SAAqBltB,EAAMC,GACzB,OAAOu4B,EAAex4B,EAAMC,EAhjBjB,MAijBb,EAQEktB,kBANF,SAA2BntB,EAAMC,GAC/B,OAAOu4B,EAAex4B,EAAMC,EArjBhB,KAsjBd,8CChqBA,MAAM5G,EAAS,EAAQ,MACjBqiC,EAAU,EAAQ,KAClBC,EACe,mBAAXrjE,QAAkD,mBAAlBA,OAAY,IAChDA,OAAY,IAAE,8BACd,KAENxQ,EAAQywB,OAASA,EACjBzwB,EAAQ8zE,WAyTR,SAAqBxwE,IACdA,GAAUA,IACbA,EAAS,GAEX,OAAOmtB,EAAOsjD,OAAOzwE,EACvB,EA7TAtD,EAAQg0E,kBAAoB,GAE5B,MAAMC,EAAe,WAwDrB,SAASC,EAAc5wE,GACrB,GAAIA,EAAS2wE,EACX,MAAM,IAAIl/B,WAAW,cAAgBzxC,EAAS,kCAGhD,MAAM6wE,EAAM,IAAI/hD,WAAW9uB,GAE3B,OADAxD,OAAO4+B,eAAey1C,EAAK1jD,EAAO9rB,WAC3BwvE,CACT,CAYA,SAAS1jD,EAAQwT,EAAKmwC,EAAkB9wE,GAEtC,GAAmB,iBAAR2gC,EAAkB,CAC3B,GAAgC,iBAArBmwC,EACT,MAAM,IAAIrwE,UACR,sEAGJ,OAAOmyD,EAAYjyB,EACrB,CACA,OAAOvzB,EAAKuzB,EAAKmwC,EAAkB9wE,EACrC,CAIA,SAASoN,EAAMzQ,EAAOm0E,EAAkB9wE,GACtC,GAAqB,iBAAVrD,EACT,OAqHJ,SAAqB+jC,EAAQqwC,GACH,iBAAbA,GAAsC,KAAbA,IAClCA,EAAW,QAGb,IAAK5jD,EAAO6jD,WAAWD,GACrB,MAAM,IAAItwE,UAAU,qBAAuBswE,GAG7C,MAAM/wE,EAAwC,EAA/BgwB,EAAW0Q,EAAQqwC,GAClC,IAAIF,EAAMD,EAAa5wE,GAEvB,MAAMqjE,EAASwN,EAAIlmD,MAAM+V,EAAQqwC,GAE7B1N,IAAWrjE,IAIb6wE,EAAMA,EAAIvjE,MAAM,EAAG+1D,IAGrB,OAAOwN,CACT,CA3IWI,CAAWt0E,EAAOm0E,GAG3B,GAAI9hD,YAAYC,OAAOtyB,GACrB,OAkJJ,SAAwBu0E,GACtB,GAAIC,EAAWD,EAAWpiD,YAAa,CACrC,MAAMgkC,EAAO,IAAIhkC,WAAWoiD,GAC5B,OAAOE,EAAgBte,EAAK9pC,OAAQ8pC,EAAKE,WAAYF,EAAK9iC,WAC5D,CACA,OAAOqhD,EAAcH,EACvB,CAxJWI,CAAc30E,GAGvB,GAAa,MAATA,EACF,MAAM,IAAI8D,UACR,yHACiD9D,GAIrD,GAAIw0E,EAAWx0E,EAAOqyB,cACjBryB,GAASw0E,EAAWx0E,EAAMqsB,OAAQgG,aACrC,OAAOoiD,EAAgBz0E,EAAOm0E,EAAkB9wE,GAGlD,GAAiC,oBAAtB6xC,oBACNs/B,EAAWx0E,EAAOk1C,oBAClBl1C,GAASw0E,EAAWx0E,EAAMqsB,OAAQ6oB,oBACrC,OAAOu/B,EAAgBz0E,EAAOm0E,EAAkB9wE,GAGlD,GAAqB,iBAAVrD,EACT,MAAM,IAAI8D,UACR,yEAIJ,MAAM4oC,EAAU1sC,EAAM0sC,SAAW1sC,EAAM0sC,UACvC,GAAe,MAAXA,GAAmBA,IAAY1sC,EACjC,OAAOwwB,EAAO/f,KAAKi8B,EAASynC,EAAkB9wE,GAGhD,MAAMsD,EAkJR,SAAqB9E,GACnB,GAAI2uB,EAAOxE,SAASnqB,GAAM,CACxB,MAAMmyB,EAA4B,EAAtB4gD,EAAQ/yE,EAAIwB,QAClB6wE,EAAMD,EAAajgD,GAEzB,OAAmB,IAAfkgD,EAAI7wE,QAIRxB,EAAIs0D,KAAK+d,EAAK,EAAG,EAAGlgD,GAHXkgD,CAKX,CAEA,QAAmBjtE,IAAfpF,EAAIwB,OACN,MAA0B,iBAAfxB,EAAIwB,QAAuBmsE,EAAY3tE,EAAIwB,QAC7C4wE,EAAa,GAEfS,EAAc7yE,GAGvB,GAAiB,WAAbA,EAAI6H,MAAqByB,MAAMmF,QAAQzO,EAAIqE,MAC7C,OAAOwuE,EAAc7yE,EAAIqE,KAE7B,CAzKY2uE,CAAW70E,GACrB,GAAI2G,EAAG,OAAOA,EAEd,GAAsB,oBAAX4J,QAAgD,MAAtBA,OAAO+tB,aACH,mBAA9Bt+B,EAAMuQ,OAAO+tB,aACtB,OAAO9N,EAAO/f,KAAKzQ,EAAMuQ,OAAO+tB,aAAa,UAAW61C,EAAkB9wE,GAG5E,MAAM,IAAIS,UACR,yHACiD9D,EAErD,CAmBA,SAAS80E,EAAYx6D,GACnB,GAAoB,iBAATA,EACT,MAAM,IAAIxW,UAAU,0CACf,GAAIwW,EAAO,EAChB,MAAM,IAAIw6B,WAAW,cAAgBx6B,EAAO,iCAEhD,CA0BA,SAAS27C,EAAa37C,GAEpB,OADAw6D,EAAWx6D,GACJ25D,EAAa35D,EAAO,EAAI,EAAoB,EAAhBs6D,EAAQt6D,GAC7C,CAuCA,SAASo6D,EAAe37C,GACtB,MAAM11B,EAAS01B,EAAM11B,OAAS,EAAI,EAA4B,EAAxBuxE,EAAQ77C,EAAM11B,QAC9C6wE,EAAMD,EAAa5wE,GACzB,IAAK,IAAID,EAAI,EAAGA,EAAIC,EAAQD,GAAK,EAC/B8wE,EAAI9wE,GAAgB,IAAX21B,EAAM31B,GAEjB,OAAO8wE,CACT,CAUA,SAASO,EAAiB17C,EAAOs9B,EAAYhzD,GAC3C,GAAIgzD,EAAa,GAAKt9B,EAAM1F,WAAagjC,EACvC,MAAM,IAAIvhB,WAAW,wCAGvB,GAAI/b,EAAM1F,WAAagjC,GAAchzD,GAAU,GAC7C,MAAM,IAAIyxC,WAAW,wCAGvB,IAAIo/B,EAYJ,OAVEA,OADiBjtE,IAAfovD,QAAuCpvD,IAAX5D,EACxB,IAAI8uB,WAAW4G,QACD9xB,IAAX5D,EACH,IAAI8uB,WAAW4G,EAAOs9B,GAEtB,IAAIlkC,WAAW4G,EAAOs9B,EAAYhzD,GAI1CxD,OAAO4+B,eAAey1C,EAAK1jD,EAAO9rB,WAE3BwvE,CACT,CA2BA,SAASU,EAASvxE,GAGhB,GAAIA,GAAU2wE,EACZ,MAAM,IAAIl/B,WAAW,0DACak/B,EAAantE,SAAS,IAAM,UAEhE,OAAgB,EAATxD,CACT,CAsGA,SAASgwB,EAAY0Q,EAAQqwC,GAC3B,GAAI5jD,EAAOxE,SAAS+X,GAClB,OAAOA,EAAO1gC,OAEhB,GAAIgvB,YAAYC,OAAOyR,IAAWywC,EAAWzwC,EAAQ1R,aACnD,OAAO0R,EAAO1Q,WAEhB,GAAsB,iBAAX0Q,EACT,MAAM,IAAIjgC,UACR,kGAC0BigC,GAI9B,MAAM/P,EAAM+P,EAAO1gC,OACb0xE,EAAa/tE,UAAU3D,OAAS,IAAsB,IAAjB2D,UAAU,GACrD,IAAK+tE,GAAqB,IAAR/gD,EAAW,OAAO,EAGpC,IAAIghD,GAAc,EAClB,OACE,OAAQZ,GACN,IAAK,QACL,IAAK,SACL,IAAK,SACH,OAAOpgD,EACT,IAAK,OACL,IAAK,QACH,OAAOihD,EAAYlxC,GAAQ1gC,OAC7B,IAAK,OACL,IAAK,QACL,IAAK,UACL,IAAK,WACH,OAAa,EAAN2wB,EACT,IAAK,MACH,OAAOA,IAAQ,EACjB,IAAK,SACH,OAAOkhD,EAAcnxC,GAAQ1gC,OAC/B,QACE,GAAI2xE,EACF,OAAOD,GAAa,EAAIE,EAAYlxC,GAAQ1gC,OAE9C+wE,GAAY,GAAKA,GAAUrvD,cAC3BiwD,GAAc,EAGtB,CAGA,SAASG,EAAcf,EAAUn4D,EAAOwY,GACtC,IAAIugD,GAAc,EAclB,SALc/tE,IAAVgV,GAAuBA,EAAQ,KACjCA,EAAQ,GAINA,EAAQjY,KAAKX,OACf,MAAO,GAOT,SAJY4D,IAARwtB,GAAqBA,EAAMzwB,KAAKX,UAClCoxB,EAAMzwB,KAAKX,QAGToxB,GAAO,EACT,MAAO,GAOT,IAHAA,KAAS,KACTxY,KAAW,GAGT,MAAO,GAKT,IAFKm4D,IAAUA,EAAW,UAGxB,OAAQA,GACN,IAAK,MACH,OAAOgB,EAASpxE,KAAMiY,EAAOwY,GAE/B,IAAK,OACL,IAAK,QACH,OAAO4gD,EAAUrxE,KAAMiY,EAAOwY,GAEhC,IAAK,QACH,OAAO6gD,EAAWtxE,KAAMiY,EAAOwY,GAEjC,IAAK,SACL,IAAK,SACH,OAAO8gD,EAAYvxE,KAAMiY,EAAOwY,GAElC,IAAK,SACH,OAAO+gD,EAAYxxE,KAAMiY,EAAOwY,GAElC,IAAK,OACL,IAAK,QACL,IAAK,UACL,IAAK,WACH,OAAOghD,EAAazxE,KAAMiY,EAAOwY,GAEnC,QACE,GAAIugD,EAAa,MAAM,IAAIlxE,UAAU,qBAAuBswE,GAC5DA,GAAYA,EAAW,IAAIrvD,cAC3BiwD,GAAc,EAGtB,CAUA,SAASU,EAAM/uE,EAAG4D,EAAGkB,GACnB,MAAMrI,EAAIuD,EAAE4D,GACZ5D,EAAE4D,GAAK5D,EAAE8E,GACT9E,EAAE8E,GAAKrI,CACT,CA2IA,SAASuyE,EAAsBtpD,EAAQvH,EAAKuxC,EAAY+d,EAAUwB,GAEhE,GAAsB,IAAlBvpD,EAAOhpB,OAAc,OAAQ,EAmBjC,GAhB0B,iBAAfgzD,GACT+d,EAAW/d,EACXA,EAAa,GACJA,EAAa,WACtBA,EAAa,WACJA,GAAc,aACvBA,GAAc,YAGZmZ,EADJnZ,GAAcA,KAGZA,EAAauf,EAAM,EAAKvpD,EAAOhpB,OAAS,GAItCgzD,EAAa,IAAGA,EAAahqC,EAAOhpB,OAASgzD,GAC7CA,GAAchqC,EAAOhpB,OAAQ,CAC/B,GAAIuyE,EAAK,OAAQ,EACZvf,EAAahqC,EAAOhpB,OAAS,CACpC,MAAO,GAAIgzD,EAAa,EAAG,CACzB,IAAIuf,EACC,OAAQ,EADJvf,EAAa,CAExB,CAQA,GALmB,iBAARvxC,IACTA,EAAM0L,EAAO/f,KAAKqU,EAAKsvD,IAIrB5jD,EAAOxE,SAASlH,GAElB,OAAmB,IAAfA,EAAIzhB,QACE,EAEHwyE,EAAaxpD,EAAQvH,EAAKuxC,EAAY+d,EAAUwB,GAClD,GAAmB,iBAAR9wD,EAEhB,OADAA,GAAY,IACgC,mBAAjCqN,WAAWztB,UAAUoF,QAC1B8rE,EACKzjD,WAAWztB,UAAUoF,QAAQ4G,KAAK2b,EAAQvH,EAAKuxC,GAE/ClkC,WAAWztB,UAAUoxE,YAAYplE,KAAK2b,EAAQvH,EAAKuxC,GAGvDwf,EAAaxpD,EAAQ,CAACvH,GAAMuxC,EAAY+d,EAAUwB,GAG3D,MAAM,IAAI9xE,UAAU,uCACtB,CAEA,SAAS+xE,EAAc1lD,EAAKrL,EAAKuxC,EAAY+d,EAAUwB,GACrD,IA0BIxyE,EA1BA2yE,EAAY,EACZhf,EAAY5mC,EAAI9sB,OAChB2yE,EAAYlxD,EAAIzhB,OAEpB,QAAiB4D,IAAbmtE,IAEe,UADjBA,EAAW5nE,OAAO4nE,GAAUrvD,gBACY,UAAbqvD,GACV,YAAbA,GAAuC,aAAbA,GAAyB,CACrD,GAAIjkD,EAAI9sB,OAAS,GAAKyhB,EAAIzhB,OAAS,EACjC,OAAQ,EAEV0yE,EAAY,EACZhf,GAAa,EACbif,GAAa,EACb3f,GAAc,CAChB,CAGF,SAASzxC,EAAMsvD,EAAK9wE,GAClB,OAAkB,IAAd2yE,EACK7B,EAAI9wE,GAEJ8wE,EAAI+B,aAAa7yE,EAAI2yE,EAEhC,CAGA,GAAIH,EAAK,CACP,IAAIM,GAAc,EAClB,IAAK9yE,EAAIizD,EAAYjzD,EAAI2zD,EAAW3zD,IAClC,GAAIwhB,EAAKuL,EAAK/sB,KAAOwhB,EAAKE,GAAqB,IAAhBoxD,EAAoB,EAAI9yE,EAAI8yE,IAEzD,IADoB,IAAhBA,IAAmBA,EAAa9yE,GAChCA,EAAI8yE,EAAa,IAAMF,EAAW,OAAOE,EAAaH,OAEtC,IAAhBG,IAAmB9yE,GAAKA,EAAI8yE,GAChCA,GAAc,CAGpB,MAEE,IADI7f,EAAa2f,EAAYjf,IAAWV,EAAaU,EAAYif,GAC5D5yE,EAAIizD,EAAYjzD,GAAK,EAAGA,IAAK,CAChC,IAAI+yE,GAAQ,EACZ,IAAK,IAAIt2D,EAAI,EAAGA,EAAIm2D,EAAWn2D,IAC7B,GAAI+E,EAAKuL,EAAK/sB,EAAIyc,KAAO+E,EAAKE,EAAKjF,GAAI,CACrCs2D,GAAQ,EACR,KACF,CAEF,GAAIA,EAAO,OAAO/yE,CACpB,CAGF,OAAQ,CACV,CAcA,SAASgzE,EAAUlC,EAAKnwC,EAAQ8X,EAAQx4C,GACtCw4C,EAAS1+B,OAAO0+B,IAAW,EAC3B,MAAMye,EAAY4Z,EAAI7wE,OAASw4C,EAC1Bx4C,GAGHA,EAAS8Z,OAAO9Z,IACHi3D,IACXj3D,EAASi3D,GAJXj3D,EAASi3D,EAQX,MAAM+b,EAAStyC,EAAO1gC,OAKtB,IAAID,EACJ,IAJIC,EAASgzE,EAAS,IACpBhzE,EAASgzE,EAAS,GAGfjzE,EAAI,EAAGA,EAAIC,IAAUD,EAAG,CAC3B,MAAMusB,EAASilB,SAAS7Q,EAAO/T,OAAW,EAAJ5sB,EAAO,GAAI,IACjD,GAAIosE,EAAY7/C,GAAS,OAAOvsB,EAChC8wE,EAAIr4B,EAASz4C,GAAKusB,CACpB,CACA,OAAOvsB,CACT,CAEA,SAASkzE,EAAWpC,EAAKnwC,EAAQ8X,EAAQx4C,GACvC,OAAOkzE,EAAWtB,EAAYlxC,EAAQmwC,EAAI7wE,OAASw4C,GAASq4B,EAAKr4B,EAAQx4C,EAC3E,CAEA,SAASmzE,EAAYtC,EAAKnwC,EAAQ8X,EAAQx4C,GACxC,OAAOkzE,EAypCT,SAAuBzkD,GACrB,MAAM2kD,EAAY,GAClB,IAAK,IAAIrzE,EAAI,EAAGA,EAAI0uB,EAAIzuB,SAAUD,EAEhCqzE,EAAU91E,KAAyB,IAApBmxB,EAAIc,WAAWxvB,IAEhC,OAAOqzE,CACT,CAhqCoBC,CAAa3yC,GAASmwC,EAAKr4B,EAAQx4C,EACvD,CAEA,SAASszE,EAAazC,EAAKnwC,EAAQ8X,EAAQx4C,GACzC,OAAOkzE,EAAWrB,EAAcnxC,GAASmwC,EAAKr4B,EAAQx4C,EACxD,CAEA,SAASuzE,EAAW1C,EAAKnwC,EAAQ8X,EAAQx4C,GACvC,OAAOkzE,EA0pCT,SAAyBzkD,EAAK+kD,GAC5B,IAAI5rE,EAAG20D,EAAIkB,EACX,MAAM2V,EAAY,GAClB,IAAK,IAAIrzE,EAAI,EAAGA,EAAI0uB,EAAIzuB,WACjBwzE,GAAS,GAAK,KADazzE,EAGhC6H,EAAI6mB,EAAIc,WAAWxvB,GACnBw8D,EAAK30D,GAAK,EACV61D,EAAK71D,EAAI,IACTwrE,EAAU91E,KAAKmgE,GACf2V,EAAU91E,KAAKi/D,GAGjB,OAAO6W,CACT,CAxqCoBK,CAAe/yC,EAAQmwC,EAAI7wE,OAASw4C,GAASq4B,EAAKr4B,EAAQx4C,EAC9E,CA8EA,SAASmyE,EAAatB,EAAKj4D,EAAOwY,GAChC,OAAc,IAAVxY,GAAewY,IAAQy/C,EAAI7wE,OACtBiuC,EAAOpd,cAAcggD,GAErB5iC,EAAOpd,cAAcggD,EAAIvjE,MAAMsL,EAAOwY,GAEjD,CAEA,SAAS4gD,EAAWnB,EAAKj4D,EAAOwY,GAC9BA,EAAMzf,KAAKq3B,IAAI6nC,EAAI7wE,OAAQoxB,GAC3B,MAAM8a,EAAM,GAEZ,IAAInsC,EAAI6Y,EACR,KAAO7Y,EAAIqxB,GAAK,CACd,MAAMsiD,EAAY7C,EAAI9wE,GACtB,IAAI4zE,EAAY,KACZC,EAAoBF,EAAY,IAChC,EACCA,EAAY,IACT,EACCA,EAAY,IACT,EACA,EAEZ,GAAI3zE,EAAI6zE,GAAoBxiD,EAAK,CAC/B,IAAIyiD,EAAYC,EAAWC,EAAYC,EAEvC,OAAQJ,GACN,KAAK,EACCF,EAAY,MACdC,EAAYD,GAEd,MACF,KAAK,EACHG,EAAahD,EAAI9wE,EAAI,GACO,MAAV,IAAb8zE,KACHG,GAA6B,GAAZN,IAAqB,EAAoB,GAAbG,EACzCG,EAAgB,MAClBL,EAAYK,IAGhB,MACF,KAAK,EACHH,EAAahD,EAAI9wE,EAAI,GACrB+zE,EAAYjD,EAAI9wE,EAAI,GACQ,MAAV,IAAb8zE,IAAsD,MAAV,IAAZC,KACnCE,GAA6B,GAAZN,IAAoB,IAAoB,GAAbG,IAAsB,EAAmB,GAAZC,EACrEE,EAAgB,OAAUA,EAAgB,OAAUA,EAAgB,SACtEL,EAAYK,IAGhB,MACF,KAAK,EACHH,EAAahD,EAAI9wE,EAAI,GACrB+zE,EAAYjD,EAAI9wE,EAAI,GACpBg0E,EAAalD,EAAI9wE,EAAI,GACO,MAAV,IAAb8zE,IAAsD,MAAV,IAAZC,IAAsD,MAAV,IAAbC,KAClEC,GAA6B,GAAZN,IAAoB,IAAqB,GAAbG,IAAsB,IAAmB,GAAZC,IAAqB,EAAoB,GAAbC,EAClGC,EAAgB,OAAUA,EAAgB,UAC5CL,EAAYK,IAItB,CAEkB,OAAdL,GAGFA,EAAY,MACZC,EAAmB,GACVD,EAAY,QAErBA,GAAa,MACbznC,EAAI5uC,KAAKq2E,IAAc,GAAK,KAAQ,OACpCA,EAAY,MAAqB,KAAZA,GAGvBznC,EAAI5uC,KAAKq2E,GACT5zE,GAAK6zE,CACP,CAEA,OAQF,SAAgCK,GAC9B,MAAMtjD,EAAMsjD,EAAWj0E,OACvB,GAAI2wB,GAAOujD,EACT,OAAO/qE,OAAOgrE,aAAahsE,MAAMgB,OAAQ8qE,GAI3C,IAAI/nC,EAAM,GACNnsC,EAAI,EACR,KAAOA,EAAI4wB,GACTub,GAAO/iC,OAAOgrE,aAAahsE,MACzBgB,OACA8qE,EAAW3mE,MAAMvN,EAAGA,GAAKm0E,IAG7B,OAAOhoC,CACT,CAxBSkoC,CAAsBloC,EAC/B,CA3+BAxvC,EAAQ23E,WAAa1D,EAgBrBxjD,EAAOmnD,oBAUP,WAEE,IACE,MAAMxnD,EAAM,IAAIgC,WAAW,GACrB0N,EAAQ,CAAE7G,IAAK,WAAc,OAAO,EAAG,GAG7C,OAFAn5B,OAAO4+B,eAAeoB,EAAO1N,WAAWztB,WACxC7E,OAAO4+B,eAAetO,EAAK0P,GACN,KAAd1P,EAAI6I,KAGb,CAFE,MAAO93B,GACP,OAAO,CACT,CACF,CArB6B02E,GAExBpnD,EAAOmnD,0BAA0C,IAAZv2E,GACb,mBAAlBA,EAAQC,OACjBD,EAAQC,MACN,iJAkBJxB,OAAOC,eAAe0wB,EAAO9rB,UAAW,SAAU,CAChDzE,YAAY,EACZC,IAAK,WACH,GAAKswB,EAAOxE,SAAShoB,MACrB,OAAOA,KAAKqoB,MACd,IAGFxsB,OAAOC,eAAe0wB,EAAO9rB,UAAW,SAAU,CAChDzE,YAAY,EACZC,IAAK,WACH,GAAKswB,EAAOxE,SAAShoB,MACrB,OAAOA,KAAKqyD,UACd,IAoCF7lC,EAAOqnD,SAAW,KA8DlBrnD,EAAO/f,KAAO,SAAUzQ,EAAOm0E,EAAkB9wE,GAC/C,OAAOoN,EAAKzQ,EAAOm0E,EAAkB9wE,EACvC,EAIAxD,OAAO4+B,eAAejO,EAAO9rB,UAAWytB,WAAWztB,WACnD7E,OAAO4+B,eAAejO,EAAQ2B,YA8B9B3B,EAAOsjD,MAAQ,SAAUx5D,EAAMuG,EAAMuzD,GACnC,OArBF,SAAgB95D,EAAMuG,EAAMuzD,GAE1B,OADAU,EAAWx6D,GACPA,GAAQ,EACH25D,EAAa35D,QAETrT,IAAT4Z,EAIyB,iBAAbuzD,EACVH,EAAa35D,GAAMuG,KAAKA,EAAMuzD,GAC9BH,EAAa35D,GAAMuG,KAAKA,GAEvBozD,EAAa35D,EACtB,CAOSw5D,CAAMx5D,EAAMuG,EAAMuzD,EAC3B,EAUA5jD,EAAOylC,YAAc,SAAU37C,GAC7B,OAAO27C,EAAY37C,EACrB,EAIAkW,EAAOsnD,gBAAkB,SAAUx9D,GACjC,OAAO27C,EAAY37C,EACrB,EA6GAkW,EAAOxE,SAAW,SAAmBrlB,GACnC,OAAY,MAALA,IAA6B,IAAhBA,EAAEoxE,WACpBpxE,IAAM6pB,EAAO9rB,SACjB,EAEA8rB,EAAOggD,QAAU,SAAkB9pE,EAAGC,GAGpC,GAFI6tE,EAAW9tE,EAAGyrB,cAAazrB,EAAI8pB,EAAO/f,KAAK/J,EAAGA,EAAEm1C,OAAQn1C,EAAE2sB,aAC1DmhD,EAAW7tE,EAAGwrB,cAAaxrB,EAAI6pB,EAAO/f,KAAK9J,EAAGA,EAAEk1C,OAAQl1C,EAAE0sB,cACzD7C,EAAOxE,SAAStlB,KAAO8pB,EAAOxE,SAASrlB,GAC1C,MAAM,IAAI7C,UACR,yEAIJ,GAAI4C,IAAMC,EAAG,OAAO,EAEpB,IAAIoR,EAAIrR,EAAErD,OACNiV,EAAI3R,EAAEtD,OAEV,IAAK,IAAID,EAAI,EAAG4wB,EAAMhf,KAAKq3B,IAAIt0B,EAAGO,GAAIlV,EAAI4wB,IAAO5wB,EAC/C,GAAIsD,EAAEtD,KAAOuD,EAAEvD,GAAI,CACjB2U,EAAIrR,EAAEtD,GACNkV,EAAI3R,EAAEvD,GACN,KACF,CAGF,OAAI2U,EAAIO,GAAW,EACfA,EAAIP,EAAU,EACX,CACT,EAEAyY,EAAO6jD,WAAa,SAAqBD,GACvC,OAAQ5nE,OAAO4nE,GAAUrvD,eACvB,IAAK,MACL,IAAK,OACL,IAAK,QACL,IAAK,QACL,IAAK,SACL,IAAK,SACL,IAAK,SACL,IAAK,OACL,IAAK,QACL,IAAK,UACL,IAAK,WACH,OAAO,EACT,QACE,OAAO,EAEb,EAEAyL,EAAOzrB,OAAS,SAAiBgsC,EAAM1tC,GACrC,IAAK8H,MAAMmF,QAAQygC,GACjB,MAAM,IAAIjtC,UAAU,+CAGtB,GAAoB,IAAhBitC,EAAK1tC,OACP,OAAOmtB,EAAOsjD,MAAM,GAGtB,IAAI1wE,EACJ,QAAe6D,IAAX5D,EAEF,IADAA,EAAS,EACJD,EAAI,EAAGA,EAAI2tC,EAAK1tC,SAAUD,EAC7BC,GAAU0tC,EAAK3tC,GAAGC,OAItB,MAAMgpB,EAASmE,EAAOylC,YAAY5yD,GAClC,IAAI4oC,EAAM,EACV,IAAK7oC,EAAI,EAAGA,EAAI2tC,EAAK1tC,SAAUD,EAAG,CAChC,IAAI8wE,EAAMnjC,EAAK3tC,GACf,GAAIoxE,EAAWN,EAAK/hD,YACd8Z,EAAMioC,EAAI7wE,OAASgpB,EAAOhpB,QACvBmtB,EAAOxE,SAASkoD,KAAMA,EAAM1jD,EAAO/f,KAAKyjE,IAC7CA,EAAI/d,KAAK9pC,EAAQ4f,IAEjB9Z,WAAWztB,UAAUI,IAAI4L,KACvB2b,EACA6nD,EACAjoC,OAGC,KAAKzb,EAAOxE,SAASkoD,GAC1B,MAAM,IAAIpwE,UAAU,+CAEpBowE,EAAI/d,KAAK9pC,EAAQ4f,EACnB,CACAA,GAAOioC,EAAI7wE,MACb,CACA,OAAOgpB,CACT,EAiDAmE,EAAO6C,WAAaA,EA8EpB7C,EAAO9rB,UAAUqzE,WAAY,EAQ7BvnD,EAAO9rB,UAAUszE,OAAS,WACxB,MAAMhkD,EAAMhwB,KAAKX,OACjB,GAAI2wB,EAAM,GAAM,EACd,MAAM,IAAI8gB,WAAW,6CAEvB,IAAK,IAAI1xC,EAAI,EAAGA,EAAI4wB,EAAK5wB,GAAK,EAC5BsyE,EAAK1xE,KAAMZ,EAAGA,EAAI,GAEpB,OAAOY,IACT,EAEAwsB,EAAO9rB,UAAUuzE,OAAS,WACxB,MAAMjkD,EAAMhwB,KAAKX,OACjB,GAAI2wB,EAAM,GAAM,EACd,MAAM,IAAI8gB,WAAW,6CAEvB,IAAK,IAAI1xC,EAAI,EAAGA,EAAI4wB,EAAK5wB,GAAK,EAC5BsyE,EAAK1xE,KAAMZ,EAAGA,EAAI,GAClBsyE,EAAK1xE,KAAMZ,EAAI,EAAGA,EAAI,GAExB,OAAOY,IACT,EAEAwsB,EAAO9rB,UAAUwzE,OAAS,WACxB,MAAMlkD,EAAMhwB,KAAKX,OACjB,GAAI2wB,EAAM,GAAM,EACd,MAAM,IAAI8gB,WAAW,6CAEvB,IAAK,IAAI1xC,EAAI,EAAGA,EAAI4wB,EAAK5wB,GAAK,EAC5BsyE,EAAK1xE,KAAMZ,EAAGA,EAAI,GAClBsyE,EAAK1xE,KAAMZ,EAAI,EAAGA,EAAI,GACtBsyE,EAAK1xE,KAAMZ,EAAI,EAAGA,EAAI,GACtBsyE,EAAK1xE,KAAMZ,EAAI,EAAGA,EAAI,GAExB,OAAOY,IACT,EAEAwsB,EAAO9rB,UAAUmC,SAAW,WAC1B,MAAMxD,EAASW,KAAKX,OACpB,OAAe,IAAXA,EAAqB,GACA,IAArB2D,UAAU3D,OAAqBgyE,EAAUrxE,KAAM,EAAGX,GAC/C8xE,EAAa3pE,MAAMxH,KAAMgD,UAClC,EAEAwpB,EAAO9rB,UAAUyzE,eAAiB3nD,EAAO9rB,UAAUmC,SAEnD2pB,EAAO9rB,UAAU0zE,OAAS,SAAiBzxE,GACzC,IAAK6pB,EAAOxE,SAASrlB,GAAI,MAAM,IAAI7C,UAAU,6BAC7C,OAAIE,OAAS2C,GACsB,IAA5B6pB,EAAOggD,QAAQxsE,KAAM2C,EAC9B,EAEA6pB,EAAO9rB,UAAU0xB,QAAU,WACzB,IAAItE,EAAM,GACV,MAAMsa,EAAMrsC,EAAQg0E,kBAGpB,OAFAjiD,EAAM9tB,KAAK6C,SAAS,MAAO,EAAGulC,GAAKnmC,QAAQ,UAAW,OAAOgJ,OACzDjL,KAAKX,OAAS+oC,IAAKta,GAAO,SACvB,WAAaA,EAAM,GAC5B,EACI8hD,IACFpjD,EAAO9rB,UAAUkvE,GAAuBpjD,EAAO9rB,UAAU0xB,SAG3D5F,EAAO9rB,UAAU8rE,QAAU,SAAkBttE,EAAQ+Y,EAAOwY,EAAK4jD,EAAWC,GAI1E,GAHI9D,EAAWtxE,EAAQivB,cACrBjvB,EAASstB,EAAO/f,KAAKvN,EAAQA,EAAO24C,OAAQ34C,EAAOmwB,cAEhD7C,EAAOxE,SAAS9oB,GACnB,MAAM,IAAIY,UACR,wFAC2BZ,GAiB/B,QAbc+D,IAAVgV,IACFA,EAAQ,QAEEhV,IAARwtB,IACFA,EAAMvxB,EAASA,EAAOG,OAAS,QAEf4D,IAAdoxE,IACFA,EAAY,QAEEpxE,IAAZqxE,IACFA,EAAUt0E,KAAKX,QAGb4Y,EAAQ,GAAKwY,EAAMvxB,EAAOG,QAAUg1E,EAAY,GAAKC,EAAUt0E,KAAKX,OACtE,MAAM,IAAIyxC,WAAW,sBAGvB,GAAIujC,GAAaC,GAAWr8D,GAASwY,EACnC,OAAO,EAET,GAAI4jD,GAAaC,EACf,OAAQ,EAEV,GAAIr8D,GAASwY,EACX,OAAO,EAQT,GAAIzwB,OAASd,EAAQ,OAAO,EAE5B,IAAI6U,GAJJugE,KAAa,IADbD,KAAe,GAMX//D,GAPJmc,KAAS,IADTxY,KAAW,GASX,MAAM+X,EAAMhf,KAAKq3B,IAAIt0B,EAAGO,GAElBigE,EAAWv0E,KAAK2M,MAAM0nE,EAAWC,GACjCE,EAAat1E,EAAOyN,MAAMsL,EAAOwY,GAEvC,IAAK,IAAIrxB,EAAI,EAAGA,EAAI4wB,IAAO5wB,EACzB,GAAIm1E,EAASn1E,KAAOo1E,EAAWp1E,GAAI,CACjC2U,EAAIwgE,EAASn1E,GACbkV,EAAIkgE,EAAWp1E,GACf,KACF,CAGF,OAAI2U,EAAIO,GAAW,EACfA,EAAIP,EAAU,EACX,CACT,EA2HAyY,EAAO9rB,UAAU+Y,SAAW,SAAmBqH,EAAKuxC,EAAY+d,GAC9D,OAAoD,IAA7CpwE,KAAK8F,QAAQgb,EAAKuxC,EAAY+d,EACvC,EAEA5jD,EAAO9rB,UAAUoF,QAAU,SAAkBgb,EAAKuxC,EAAY+d,GAC5D,OAAOuB,EAAqB3xE,KAAM8gB,EAAKuxC,EAAY+d,GAAU,EAC/D,EAEA5jD,EAAO9rB,UAAUoxE,YAAc,SAAsBhxD,EAAKuxC,EAAY+d,GACpE,OAAOuB,EAAqB3xE,KAAM8gB,EAAKuxC,EAAY+d,GAAU,EAC/D,EA4CA5jD,EAAO9rB,UAAUspB,MAAQ,SAAgB+V,EAAQ8X,EAAQx4C,EAAQ+wE,GAE/D,QAAentE,IAAX40C,EACFu4B,EAAW,OACX/wE,EAASW,KAAKX,OACdw4C,EAAS,OAEJ,QAAe50C,IAAX5D,GAA0C,iBAAXw4C,EACxCu4B,EAAWv4B,EACXx4C,EAASW,KAAKX,OACdw4C,EAAS,MAEJ,KAAInH,SAASmH,GAUlB,MAAM,IAAIzkC,MACR,2EAVFykC,KAAoB,EAChBnH,SAASrxC,IACXA,KAAoB,OACH4D,IAAbmtE,IAAwBA,EAAW,UAEvCA,EAAW/wE,EACXA,OAAS4D,EAMb,CAEA,MAAMqzD,EAAYt2D,KAAKX,OAASw4C,EAGhC,SAFe50C,IAAX5D,GAAwBA,EAASi3D,KAAWj3D,EAASi3D,GAEpDv2B,EAAO1gC,OAAS,IAAMA,EAAS,GAAKw4C,EAAS,IAAOA,EAAS73C,KAAKX,OACrE,MAAM,IAAIyxC,WAAW,0CAGlBs/B,IAAUA,EAAW,QAE1B,IAAIY,GAAc,EAClB,OACE,OAAQZ,GACN,IAAK,MACH,OAAOgC,EAASpyE,KAAM+/B,EAAQ8X,EAAQx4C,GAExC,IAAK,OACL,IAAK,QACH,OAAOizE,EAAUtyE,KAAM+/B,EAAQ8X,EAAQx4C,GAEzC,IAAK,QACL,IAAK,SACL,IAAK,SACH,OAAOmzE,EAAWxyE,KAAM+/B,EAAQ8X,EAAQx4C,GAE1C,IAAK,SAEH,OAAOszE,EAAY3yE,KAAM+/B,EAAQ8X,EAAQx4C,GAE3C,IAAK,OACL,IAAK,QACL,IAAK,UACL,IAAK,WACH,OAAOuzE,EAAU5yE,KAAM+/B,EAAQ8X,EAAQx4C,GAEzC,QACE,GAAI2xE,EAAa,MAAM,IAAIlxE,UAAU,qBAAuBswE,GAC5DA,GAAY,GAAKA,GAAUrvD,cAC3BiwD,GAAc,EAGtB,EAEAxkD,EAAO9rB,UAAU2kB,OAAS,WACxB,MAAO,CACL3f,KAAM,SACNxD,KAAMiF,MAAMzG,UAAUiM,MAAMD,KAAK1M,KAAK+qE,MAAQ/qE,KAAM,GAExD,EAyFA,MAAMuzE,EAAuB,KAoB7B,SAASjC,EAAYpB,EAAKj4D,EAAOwY,GAC/B,IAAIgkD,EAAM,GACVhkD,EAAMzf,KAAKq3B,IAAI6nC,EAAI7wE,OAAQoxB,GAE3B,IAAK,IAAIrxB,EAAI6Y,EAAO7Y,EAAIqxB,IAAOrxB,EAC7Bq1E,GAAOjsE,OAAOgrE,aAAsB,IAATtD,EAAI9wE,IAEjC,OAAOq1E,CACT,CAEA,SAASlD,EAAarB,EAAKj4D,EAAOwY,GAChC,IAAIgkD,EAAM,GACVhkD,EAAMzf,KAAKq3B,IAAI6nC,EAAI7wE,OAAQoxB,GAE3B,IAAK,IAAIrxB,EAAI6Y,EAAO7Y,EAAIqxB,IAAOrxB,EAC7Bq1E,GAAOjsE,OAAOgrE,aAAatD,EAAI9wE,IAEjC,OAAOq1E,CACT,CAEA,SAASrD,EAAUlB,EAAKj4D,EAAOwY,GAC7B,MAAMT,EAAMkgD,EAAI7wE,SAEX4Y,GAASA,EAAQ,KAAGA,EAAQ,KAC5BwY,GAAOA,EAAM,GAAKA,EAAMT,KAAKS,EAAMT,GAExC,IAAI0kD,EAAM,GACV,IAAK,IAAIt1E,EAAI6Y,EAAO7Y,EAAIqxB,IAAOrxB,EAC7Bs1E,GAAOC,EAAoBzE,EAAI9wE,IAEjC,OAAOs1E,CACT,CAEA,SAASjD,EAAcvB,EAAKj4D,EAAOwY,GACjC,MAAMmkD,EAAQ1E,EAAIvjE,MAAMsL,EAAOwY,GAC/B,IAAI8a,EAAM,GAEV,IAAK,IAAInsC,EAAI,EAAGA,EAAIw1E,EAAMv1E,OAAS,EAAGD,GAAK,EACzCmsC,GAAO/iC,OAAOgrE,aAAaoB,EAAMx1E,GAAqB,IAAfw1E,EAAMx1E,EAAI,IAEnD,OAAOmsC,CACT,CAiCA,SAASspC,EAAah9B,EAAQi9B,EAAKz1E,GACjC,GAAKw4C,EAAS,GAAO,GAAKA,EAAS,EAAG,MAAM,IAAI/G,WAAW,sBAC3D,GAAI+G,EAASi9B,EAAMz1E,EAAQ,MAAM,IAAIyxC,WAAW,wCAClD,CAyQA,SAASikC,EAAU7E,EAAKl0E,EAAO67C,EAAQi9B,EAAK1sC,EAAKC,GAC/C,IAAK7b,EAAOxE,SAASkoD,GAAM,MAAM,IAAIpwE,UAAU,+CAC/C,GAAI9D,EAAQosC,GAAOpsC,EAAQqsC,EAAK,MAAM,IAAIyI,WAAW,qCACrD,GAAI+G,EAASi9B,EAAM5E,EAAI7wE,OAAQ,MAAM,IAAIyxC,WAAW,qBACtD,CA+FA,SAASkkC,EAAgB9E,EAAKl0E,EAAO67C,EAAQxP,EAAKD,GAChD6sC,EAAWj5E,EAAOqsC,EAAKD,EAAK8nC,EAAKr4B,EAAQ,GAEzC,IAAIilB,EAAK3jD,OAAOnd,EAAQ+zC,OAAO,aAC/BmgC,EAAIr4B,KAAYilB,EAChBA,IAAW,EACXoT,EAAIr4B,KAAYilB,EAChBA,IAAW,EACXoT,EAAIr4B,KAAYilB,EAChBA,IAAW,EACXoT,EAAIr4B,KAAYilB,EAChB,IAAIlB,EAAKziD,OAAOnd,GAAS+zC,OAAO,IAAMA,OAAO,aAQ7C,OAPAmgC,EAAIr4B,KAAY+jB,EAChBA,IAAW,EACXsU,EAAIr4B,KAAY+jB,EAChBA,IAAW,EACXsU,EAAIr4B,KAAY+jB,EAChBA,IAAW,EACXsU,EAAIr4B,KAAY+jB,EACT/jB,CACT,CAEA,SAASq9B,EAAgBhF,EAAKl0E,EAAO67C,EAAQxP,EAAKD,GAChD6sC,EAAWj5E,EAAOqsC,EAAKD,EAAK8nC,EAAKr4B,EAAQ,GAEzC,IAAIilB,EAAK3jD,OAAOnd,EAAQ+zC,OAAO,aAC/BmgC,EAAIr4B,EAAS,GAAKilB,EAClBA,IAAW,EACXoT,EAAIr4B,EAAS,GAAKilB,EAClBA,IAAW,EACXoT,EAAIr4B,EAAS,GAAKilB,EAClBA,IAAW,EACXoT,EAAIr4B,EAAS,GAAKilB,EAClB,IAAIlB,EAAKziD,OAAOnd,GAAS+zC,OAAO,IAAMA,OAAO,aAQ7C,OAPAmgC,EAAIr4B,EAAS,GAAK+jB,EAClBA,IAAW,EACXsU,EAAIr4B,EAAS,GAAK+jB,EAClBA,IAAW,EACXsU,EAAIr4B,EAAS,GAAK+jB,EAClBA,IAAW,EACXsU,EAAIr4B,GAAU+jB,EACP/jB,EAAS,CAClB,CAkHA,SAASs9B,EAAcjF,EAAKl0E,EAAO67C,EAAQi9B,EAAK1sC,EAAKC,GACnD,GAAIwP,EAASi9B,EAAM5E,EAAI7wE,OAAQ,MAAM,IAAIyxC,WAAW,sBACpD,GAAI+G,EAAS,EAAG,MAAM,IAAI/G,WAAW,qBACvC,CAEA,SAASskC,EAAYlF,EAAKl0E,EAAO67C,EAAQw9B,EAAcC,GAOrD,OANAt5E,GAASA,EACT67C,KAAoB,EACfy9B,GACHH,EAAajF,EAAKl0E,EAAO67C,EAAQ,GAEnC83B,EAAQ3lD,MAAMkmD,EAAKl0E,EAAO67C,EAAQw9B,EAAc,GAAI,GAC7Cx9B,EAAS,CAClB,CAUA,SAAS09B,EAAarF,EAAKl0E,EAAO67C,EAAQw9B,EAAcC,GAOtD,OANAt5E,GAASA,EACT67C,KAAoB,EACfy9B,GACHH,EAAajF,EAAKl0E,EAAO67C,EAAQ,GAEnC83B,EAAQ3lD,MAAMkmD,EAAKl0E,EAAO67C,EAAQw9B,EAAc,GAAI,GAC7Cx9B,EAAS,CAClB,CAzkBArrB,EAAO9rB,UAAUiM,MAAQ,SAAgBsL,EAAOwY,GAC9C,MAAMT,EAAMhwB,KAAKX,QACjB4Y,IAAUA,GAGE,GACVA,GAAS+X,GACG,IAAG/X,EAAQ,GACdA,EAAQ+X,IACjB/X,EAAQ+X,IANVS,OAAcxtB,IAARwtB,EAAoBT,IAAQS,GASxB,GACRA,GAAOT,GACG,IAAGS,EAAM,GACVA,EAAMT,IACfS,EAAMT,GAGJS,EAAMxY,IAAOwY,EAAMxY,GAEvB,MAAMu9D,EAASx1E,KAAKy1E,SAASx9D,EAAOwY,GAIpC,OAFA50B,OAAO4+B,eAAe+6C,EAAQhpD,EAAO9rB,WAE9B80E,CACT,EAUAhpD,EAAO9rB,UAAUg1E,WACjBlpD,EAAO9rB,UAAUi1E,WAAa,SAAqB99B,EAAQxoB,EAAYimD,GACrEz9B,KAAoB,EACpBxoB,KAA4B,EACvBimD,GAAUT,EAAYh9B,EAAQxoB,EAAYrvB,KAAKX,QAEpD,IAAIyhB,EAAM9gB,KAAK63C,GACX+9B,EAAM,EACNx2E,EAAI,EACR,OAASA,EAAIiwB,IAAeumD,GAAO,MACjC90D,GAAO9gB,KAAK63C,EAASz4C,GAAKw2E,EAG5B,OAAO90D,CACT,EAEA0L,EAAO9rB,UAAUm1E,WACjBrpD,EAAO9rB,UAAUo1E,WAAa,SAAqBj+B,EAAQxoB,EAAYimD,GACrEz9B,KAAoB,EACpBxoB,KAA4B,EACvBimD,GACHT,EAAYh9B,EAAQxoB,EAAYrvB,KAAKX,QAGvC,IAAIyhB,EAAM9gB,KAAK63C,IAAWxoB,GACtBumD,EAAM,EACV,KAAOvmD,EAAa,IAAMumD,GAAO,MAC/B90D,GAAO9gB,KAAK63C,IAAWxoB,GAAcumD,EAGvC,OAAO90D,CACT,EAEA0L,EAAO9rB,UAAUq1E,UACjBvpD,EAAO9rB,UAAUs1E,UAAY,SAAoBn+B,EAAQy9B,GAGvD,OAFAz9B,KAAoB,EACfy9B,GAAUT,EAAYh9B,EAAQ,EAAG73C,KAAKX,QACpCW,KAAK63C,EACd,EAEArrB,EAAO9rB,UAAUu1E,aACjBzpD,EAAO9rB,UAAUw1E,aAAe,SAAuBr+B,EAAQy9B,GAG7D,OAFAz9B,KAAoB,EACfy9B,GAAUT,EAAYh9B,EAAQ,EAAG73C,KAAKX,QACpCW,KAAK63C,GAAW73C,KAAK63C,EAAS,IAAM,CAC7C,EAEArrB,EAAO9rB,UAAUy1E,aACjB3pD,EAAO9rB,UAAUuxE,aAAe,SAAuBp6B,EAAQy9B,GAG7D,OAFAz9B,KAAoB,EACfy9B,GAAUT,EAAYh9B,EAAQ,EAAG73C,KAAKX,QACnCW,KAAK63C,IAAW,EAAK73C,KAAK63C,EAAS,EAC7C,EAEArrB,EAAO9rB,UAAU01E,aACjB5pD,EAAO9rB,UAAU21E,aAAe,SAAuBx+B,EAAQy9B,GAI7D,OAHAz9B,KAAoB,EACfy9B,GAAUT,EAAYh9B,EAAQ,EAAG73C,KAAKX,SAElCW,KAAK63C,GACT73C,KAAK63C,EAAS,IAAM,EACpB73C,KAAK63C,EAAS,IAAM,IACD,SAAnB73C,KAAK63C,EAAS,EACrB,EAEArrB,EAAO9rB,UAAU41E,aACjB9pD,EAAO9rB,UAAU61E,aAAe,SAAuB1+B,EAAQy9B,GAI7D,OAHAz9B,KAAoB,EACfy9B,GAAUT,EAAYh9B,EAAQ,EAAG73C,KAAKX,QAEpB,SAAfW,KAAK63C,IACT73C,KAAK63C,EAAS,IAAM,GACrB73C,KAAK63C,EAAS,IAAM,EACrB73C,KAAK63C,EAAS,GAClB,EAEArrB,EAAO9rB,UAAU81E,gBAAkBC,GAAmB,SAA0B5+B,GAE9E6+B,EADA7+B,KAAoB,EACG,UACvB,MAAMtgB,EAAQv3B,KAAK63C,GACbrgB,EAAOx3B,KAAK63C,EAAS,QACb50C,IAAVs0B,QAAgCt0B,IAATu0B,GACzBm/C,EAAY9+B,EAAQ73C,KAAKX,OAAS,GAGpC,MAAMy9D,EAAKvlC,EACQ,IAAjBv3B,OAAO63C,GACU,MAAjB73C,OAAO63C,GACP73C,OAAO63C,GAAU,GAAK,GAElB+jB,EAAK57D,OAAO63C,GACC,IAAjB73C,OAAO63C,GACU,MAAjB73C,OAAO63C,GACPrgB,EAAO,GAAK,GAEd,OAAOuY,OAAO+sB,IAAO/sB,OAAO6rB,IAAO7rB,OAAO,IAC5C,IAEAvjB,EAAO9rB,UAAUk2E,gBAAkBH,GAAmB,SAA0B5+B,GAE9E6+B,EADA7+B,KAAoB,EACG,UACvB,MAAMtgB,EAAQv3B,KAAK63C,GACbrgB,EAAOx3B,KAAK63C,EAAS,QACb50C,IAAVs0B,QAAgCt0B,IAATu0B,GACzBm/C,EAAY9+B,EAAQ73C,KAAKX,OAAS,GAGpC,MAAMu8D,EAAKrkC,EAAQ,GAAK,GACL,MAAjBv3B,OAAO63C,GACU,IAAjB73C,OAAO63C,GACP73C,OAAO63C,GAEHilB,EAAK98D,OAAO63C,GAAU,GAAK,GACd,MAAjB73C,OAAO63C,GACU,IAAjB73C,OAAO63C,GACPrgB,EAEF,OAAQuY,OAAO6rB,IAAO7rB,OAAO,KAAOA,OAAO+sB,EAC7C,IAEAtwC,EAAO9rB,UAAUm2E,UAAY,SAAoBh/B,EAAQxoB,EAAYimD,GACnEz9B,KAAoB,EACpBxoB,KAA4B,EACvBimD,GAAUT,EAAYh9B,EAAQxoB,EAAYrvB,KAAKX,QAEpD,IAAIyhB,EAAM9gB,KAAK63C,GACX+9B,EAAM,EACNx2E,EAAI,EACR,OAASA,EAAIiwB,IAAeumD,GAAO,MACjC90D,GAAO9gB,KAAK63C,EAASz4C,GAAKw2E,EAM5B,OAJAA,GAAO,IAEH90D,GAAO80D,IAAK90D,GAAO9P,KAAK81C,IAAI,EAAG,EAAIz3B,IAEhCvO,CACT,EAEA0L,EAAO9rB,UAAUo2E,UAAY,SAAoBj/B,EAAQxoB,EAAYimD,GACnEz9B,KAAoB,EACpBxoB,KAA4B,EACvBimD,GAAUT,EAAYh9B,EAAQxoB,EAAYrvB,KAAKX,QAEpD,IAAID,EAAIiwB,EACJumD,EAAM,EACN90D,EAAM9gB,KAAK63C,IAAWz4C,GAC1B,KAAOA,EAAI,IAAMw2E,GAAO,MACtB90D,GAAO9gB,KAAK63C,IAAWz4C,GAAKw2E,EAM9B,OAJAA,GAAO,IAEH90D,GAAO80D,IAAK90D,GAAO9P,KAAK81C,IAAI,EAAG,EAAIz3B,IAEhCvO,CACT,EAEA0L,EAAO9rB,UAAUq2E,SAAW,SAAmBl/B,EAAQy9B,GAGrD,OAFAz9B,KAAoB,EACfy9B,GAAUT,EAAYh9B,EAAQ,EAAG73C,KAAKX,QACtB,IAAfW,KAAK63C,IAC0B,GAA5B,IAAO73C,KAAK63C,GAAU,GADK73C,KAAK63C,EAE3C,EAEArrB,EAAO9rB,UAAUs2E,YAAc,SAAsBn/B,EAAQy9B,GAC3Dz9B,KAAoB,EACfy9B,GAAUT,EAAYh9B,EAAQ,EAAG73C,KAAKX,QAC3C,MAAMyhB,EAAM9gB,KAAK63C,GAAW73C,KAAK63C,EAAS,IAAM,EAChD,OAAc,MAAN/2B,EAAsB,WAANA,EAAmBA,CAC7C,EAEA0L,EAAO9rB,UAAUu2E,YAAc,SAAsBp/B,EAAQy9B,GAC3Dz9B,KAAoB,EACfy9B,GAAUT,EAAYh9B,EAAQ,EAAG73C,KAAKX,QAC3C,MAAMyhB,EAAM9gB,KAAK63C,EAAS,GAAM73C,KAAK63C,IAAW,EAChD,OAAc,MAAN/2B,EAAsB,WAANA,EAAmBA,CAC7C,EAEA0L,EAAO9rB,UAAUw2E,YAAc,SAAsBr/B,EAAQy9B,GAI3D,OAHAz9B,KAAoB,EACfy9B,GAAUT,EAAYh9B,EAAQ,EAAG73C,KAAKX,QAEnCW,KAAK63C,GACV73C,KAAK63C,EAAS,IAAM,EACpB73C,KAAK63C,EAAS,IAAM,GACpB73C,KAAK63C,EAAS,IAAM,EACzB,EAEArrB,EAAO9rB,UAAUy2E,YAAc,SAAsBt/B,EAAQy9B,GAI3D,OAHAz9B,KAAoB,EACfy9B,GAAUT,EAAYh9B,EAAQ,EAAG73C,KAAKX,QAEnCW,KAAK63C,IAAW,GACrB73C,KAAK63C,EAAS,IAAM,GACpB73C,KAAK63C,EAAS,IAAM,EACpB73C,KAAK63C,EAAS,EACnB,EAEArrB,EAAO9rB,UAAU02E,eAAiBX,GAAmB,SAAyB5+B,GAE5E6+B,EADA7+B,KAAoB,EACG,UACvB,MAAMtgB,EAAQv3B,KAAK63C,GACbrgB,EAAOx3B,KAAK63C,EAAS,QACb50C,IAAVs0B,QAAgCt0B,IAATu0B,GACzBm/C,EAAY9+B,EAAQ73C,KAAKX,OAAS,GAGpC,MAAMyhB,EAAM9gB,KAAK63C,EAAS,GACL,IAAnB73C,KAAK63C,EAAS,GACK,MAAnB73C,KAAK63C,EAAS,IACbrgB,GAAQ,IAEX,OAAQuY,OAAOjvB,IAAQivB,OAAO,KAC5BA,OAAOxY,EACU,IAAjBv3B,OAAO63C,GACU,MAAjB73C,OAAO63C,GACP73C,OAAO63C,GAAU,GAAK,GAC1B,IAEArrB,EAAO9rB,UAAU22E,eAAiBZ,GAAmB,SAAyB5+B,GAE5E6+B,EADA7+B,KAAoB,EACG,UACvB,MAAMtgB,EAAQv3B,KAAK63C,GACbrgB,EAAOx3B,KAAK63C,EAAS,QACb50C,IAAVs0B,QAAgCt0B,IAATu0B,GACzBm/C,EAAY9+B,EAAQ73C,KAAKX,OAAS,GAGpC,MAAMyhB,GAAOyW,GAAS,IACH,MAAjBv3B,OAAO63C,GACU,IAAjB73C,OAAO63C,GACP73C,OAAO63C,GAET,OAAQ9H,OAAOjvB,IAAQivB,OAAO,KAC5BA,OAAO/vC,OAAO63C,GAAU,GAAK,GACZ,MAAjB73C,OAAO63C,GACU,IAAjB73C,OAAO63C,GACPrgB,EACJ,IAEAhL,EAAO9rB,UAAU42E,YAAc,SAAsBz/B,EAAQy9B,GAG3D,OAFAz9B,KAAoB,EACfy9B,GAAUT,EAAYh9B,EAAQ,EAAG73C,KAAKX,QACpCswE,EAAQ/uD,KAAK5gB,KAAM63C,GAAQ,EAAM,GAAI,EAC9C,EAEArrB,EAAO9rB,UAAU62E,YAAc,SAAsB1/B,EAAQy9B,GAG3D,OAFAz9B,KAAoB,EACfy9B,GAAUT,EAAYh9B,EAAQ,EAAG73C,KAAKX,QACpCswE,EAAQ/uD,KAAK5gB,KAAM63C,GAAQ,EAAO,GAAI,EAC/C,EAEArrB,EAAO9rB,UAAU82E,aAAe,SAAuB3/B,EAAQy9B,GAG7D,OAFAz9B,KAAoB,EACfy9B,GAAUT,EAAYh9B,EAAQ,EAAG73C,KAAKX,QACpCswE,EAAQ/uD,KAAK5gB,KAAM63C,GAAQ,EAAM,GAAI,EAC9C,EAEArrB,EAAO9rB,UAAU+2E,aAAe,SAAuB5/B,EAAQy9B,GAG7D,OAFAz9B,KAAoB,EACfy9B,GAAUT,EAAYh9B,EAAQ,EAAG73C,KAAKX,QACpCswE,EAAQ/uD,KAAK5gB,KAAM63C,GAAQ,EAAO,GAAI,EAC/C,EAQArrB,EAAO9rB,UAAUg3E,YACjBlrD,EAAO9rB,UAAUi3E,YAAc,SAAsB37E,EAAO67C,EAAQxoB,EAAYimD,GAI9E,GAHAt5E,GAASA,EACT67C,KAAoB,EACpBxoB,KAA4B,GACvBimD,EAAU,CAEbP,EAAS/0E,KAAMhE,EAAO67C,EAAQxoB,EADbre,KAAK81C,IAAI,EAAG,EAAIz3B,GAAc,EACK,EACtD,CAEA,IAAIumD,EAAM,EACNx2E,EAAI,EAER,IADAY,KAAK63C,GAAkB,IAAR77C,IACNoD,EAAIiwB,IAAeumD,GAAO,MACjC51E,KAAK63C,EAASz4C,GAAMpD,EAAQ45E,EAAO,IAGrC,OAAO/9B,EAASxoB,CAClB,EAEA7C,EAAO9rB,UAAUk3E,YACjBprD,EAAO9rB,UAAUm3E,YAAc,SAAsB77E,EAAO67C,EAAQxoB,EAAYimD,GAI9E,GAHAt5E,GAASA,EACT67C,KAAoB,EACpBxoB,KAA4B,GACvBimD,EAAU,CAEbP,EAAS/0E,KAAMhE,EAAO67C,EAAQxoB,EADbre,KAAK81C,IAAI,EAAG,EAAIz3B,GAAc,EACK,EACtD,CAEA,IAAIjwB,EAAIiwB,EAAa,EACjBumD,EAAM,EAEV,IADA51E,KAAK63C,EAASz4C,GAAa,IAARpD,IACVoD,GAAK,IAAMw2E,GAAO,MACzB51E,KAAK63C,EAASz4C,GAAMpD,EAAQ45E,EAAO,IAGrC,OAAO/9B,EAASxoB,CAClB,EAEA7C,EAAO9rB,UAAUo3E,WACjBtrD,EAAO9rB,UAAUq3E,WAAa,SAAqB/7E,EAAO67C,EAAQy9B,GAKhE,OAJAt5E,GAASA,EACT67C,KAAoB,EACfy9B,GAAUP,EAAS/0E,KAAMhE,EAAO67C,EAAQ,EAAG,IAAM,GACtD73C,KAAK63C,GAAmB,IAAR77C,EACT67C,EAAS,CAClB,EAEArrB,EAAO9rB,UAAUs3E,cACjBxrD,EAAO9rB,UAAUu3E,cAAgB,SAAwBj8E,EAAO67C,EAAQy9B,GAMtE,OALAt5E,GAASA,EACT67C,KAAoB,EACfy9B,GAAUP,EAAS/0E,KAAMhE,EAAO67C,EAAQ,EAAG,MAAQ,GACxD73C,KAAK63C,GAAmB,IAAR77C,EAChBgE,KAAK63C,EAAS,GAAM77C,IAAU,EACvB67C,EAAS,CAClB,EAEArrB,EAAO9rB,UAAUw3E,cACjB1rD,EAAO9rB,UAAUy3E,cAAgB,SAAwBn8E,EAAO67C,EAAQy9B,GAMtE,OALAt5E,GAASA,EACT67C,KAAoB,EACfy9B,GAAUP,EAAS/0E,KAAMhE,EAAO67C,EAAQ,EAAG,MAAQ,GACxD73C,KAAK63C,GAAW77C,IAAU,EAC1BgE,KAAK63C,EAAS,GAAc,IAAR77C,EACb67C,EAAS,CAClB,EAEArrB,EAAO9rB,UAAU03E,cACjB5rD,EAAO9rB,UAAU23E,cAAgB,SAAwBr8E,EAAO67C,EAAQy9B,GAQtE,OAPAt5E,GAASA,EACT67C,KAAoB,EACfy9B,GAAUP,EAAS/0E,KAAMhE,EAAO67C,EAAQ,EAAG,WAAY,GAC5D73C,KAAK63C,EAAS,GAAM77C,IAAU,GAC9BgE,KAAK63C,EAAS,GAAM77C,IAAU,GAC9BgE,KAAK63C,EAAS,GAAM77C,IAAU,EAC9BgE,KAAK63C,GAAmB,IAAR77C,EACT67C,EAAS,CAClB,EAEArrB,EAAO9rB,UAAU43E,cACjB9rD,EAAO9rB,UAAU63E,cAAgB,SAAwBv8E,EAAO67C,EAAQy9B,GAQtE,OAPAt5E,GAASA,EACT67C,KAAoB,EACfy9B,GAAUP,EAAS/0E,KAAMhE,EAAO67C,EAAQ,EAAG,WAAY,GAC5D73C,KAAK63C,GAAW77C,IAAU,GAC1BgE,KAAK63C,EAAS,GAAM77C,IAAU,GAC9BgE,KAAK63C,EAAS,GAAM77C,IAAU,EAC9BgE,KAAK63C,EAAS,GAAc,IAAR77C,EACb67C,EAAS,CAClB,EA8CArrB,EAAO9rB,UAAU83E,iBAAmB/B,GAAmB,SAA2Bz6E,EAAO67C,EAAS,GAChG,OAAOm9B,EAAeh1E,KAAMhE,EAAO67C,EAAQ9H,OAAO,GAAIA,OAAO,sBAC/D,IAEAvjB,EAAO9rB,UAAU+3E,iBAAmBhC,GAAmB,SAA2Bz6E,EAAO67C,EAAS,GAChG,OAAOq9B,EAAel1E,KAAMhE,EAAO67C,EAAQ9H,OAAO,GAAIA,OAAO,sBAC/D,IAEAvjB,EAAO9rB,UAAUg4E,WAAa,SAAqB18E,EAAO67C,EAAQxoB,EAAYimD,GAG5E,GAFAt5E,GAASA,EACT67C,KAAoB,GACfy9B,EAAU,CACb,MAAM/L,EAAQv4D,KAAK81C,IAAI,EAAI,EAAIz3B,EAAc,GAE7C0lD,EAAS/0E,KAAMhE,EAAO67C,EAAQxoB,EAAYk6C,EAAQ,GAAIA,EACxD,CAEA,IAAInqE,EAAI,EACJw2E,EAAM,EACN+C,EAAM,EAEV,IADA34E,KAAK63C,GAAkB,IAAR77C,IACNoD,EAAIiwB,IAAeumD,GAAO,MAC7B55E,EAAQ,GAAa,IAAR28E,GAAsC,IAAzB34E,KAAK63C,EAASz4C,EAAI,KAC9Cu5E,EAAM,GAER34E,KAAK63C,EAASz4C,IAAOpD,EAAQ45E,GAAQ,GAAK+C,EAAM,IAGlD,OAAO9gC,EAASxoB,CAClB,EAEA7C,EAAO9rB,UAAUk4E,WAAa,SAAqB58E,EAAO67C,EAAQxoB,EAAYimD,GAG5E,GAFAt5E,GAASA,EACT67C,KAAoB,GACfy9B,EAAU,CACb,MAAM/L,EAAQv4D,KAAK81C,IAAI,EAAI,EAAIz3B,EAAc,GAE7C0lD,EAAS/0E,KAAMhE,EAAO67C,EAAQxoB,EAAYk6C,EAAQ,GAAIA,EACxD,CAEA,IAAInqE,EAAIiwB,EAAa,EACjBumD,EAAM,EACN+C,EAAM,EAEV,IADA34E,KAAK63C,EAASz4C,GAAa,IAARpD,IACVoD,GAAK,IAAMw2E,GAAO,MACrB55E,EAAQ,GAAa,IAAR28E,GAAsC,IAAzB34E,KAAK63C,EAASz4C,EAAI,KAC9Cu5E,EAAM,GAER34E,KAAK63C,EAASz4C,IAAOpD,EAAQ45E,GAAQ,GAAK+C,EAAM,IAGlD,OAAO9gC,EAASxoB,CAClB,EAEA7C,EAAO9rB,UAAUm4E,UAAY,SAAoB78E,EAAO67C,EAAQy9B,GAM9D,OALAt5E,GAASA,EACT67C,KAAoB,EACfy9B,GAAUP,EAAS/0E,KAAMhE,EAAO67C,EAAQ,EAAG,KAAO,KACnD77C,EAAQ,IAAGA,EAAQ,IAAOA,EAAQ,GACtCgE,KAAK63C,GAAmB,IAAR77C,EACT67C,EAAS,CAClB,EAEArrB,EAAO9rB,UAAUo4E,aAAe,SAAuB98E,EAAO67C,EAAQy9B,GAMpE,OALAt5E,GAASA,EACT67C,KAAoB,EACfy9B,GAAUP,EAAS/0E,KAAMhE,EAAO67C,EAAQ,EAAG,OAAS,OACzD73C,KAAK63C,GAAmB,IAAR77C,EAChBgE,KAAK63C,EAAS,GAAM77C,IAAU,EACvB67C,EAAS,CAClB,EAEArrB,EAAO9rB,UAAUq4E,aAAe,SAAuB/8E,EAAO67C,EAAQy9B,GAMpE,OALAt5E,GAASA,EACT67C,KAAoB,EACfy9B,GAAUP,EAAS/0E,KAAMhE,EAAO67C,EAAQ,EAAG,OAAS,OACzD73C,KAAK63C,GAAW77C,IAAU,EAC1BgE,KAAK63C,EAAS,GAAc,IAAR77C,EACb67C,EAAS,CAClB,EAEArrB,EAAO9rB,UAAUs4E,aAAe,SAAuBh9E,EAAO67C,EAAQy9B,GAQpE,OAPAt5E,GAASA,EACT67C,KAAoB,EACfy9B,GAAUP,EAAS/0E,KAAMhE,EAAO67C,EAAQ,EAAG,YAAa,YAC7D73C,KAAK63C,GAAmB,IAAR77C,EAChBgE,KAAK63C,EAAS,GAAM77C,IAAU,EAC9BgE,KAAK63C,EAAS,GAAM77C,IAAU,GAC9BgE,KAAK63C,EAAS,GAAM77C,IAAU,GACvB67C,EAAS,CAClB,EAEArrB,EAAO9rB,UAAUu4E,aAAe,SAAuBj9E,EAAO67C,EAAQy9B,GASpE,OARAt5E,GAASA,EACT67C,KAAoB,EACfy9B,GAAUP,EAAS/0E,KAAMhE,EAAO67C,EAAQ,EAAG,YAAa,YACzD77C,EAAQ,IAAGA,EAAQ,WAAaA,EAAQ,GAC5CgE,KAAK63C,GAAW77C,IAAU,GAC1BgE,KAAK63C,EAAS,GAAM77C,IAAU,GAC9BgE,KAAK63C,EAAS,GAAM77C,IAAU,EAC9BgE,KAAK63C,EAAS,GAAc,IAAR77C,EACb67C,EAAS,CAClB,EAEArrB,EAAO9rB,UAAUw4E,gBAAkBzC,GAAmB,SAA0Bz6E,EAAO67C,EAAS,GAC9F,OAAOm9B,EAAeh1E,KAAMhE,EAAO67C,GAAS9H,OAAO,sBAAuBA,OAAO,sBACnF,IAEAvjB,EAAO9rB,UAAUy4E,gBAAkB1C,GAAmB,SAA0Bz6E,EAAO67C,EAAS,GAC9F,OAAOq9B,EAAel1E,KAAMhE,EAAO67C,GAAS9H,OAAO,sBAAuBA,OAAO,sBACnF,IAiBAvjB,EAAO9rB,UAAU04E,aAAe,SAAuBp9E,EAAO67C,EAAQy9B,GACpE,OAAOF,EAAWp1E,KAAMhE,EAAO67C,GAAQ,EAAMy9B,EAC/C,EAEA9oD,EAAO9rB,UAAU24E,aAAe,SAAuBr9E,EAAO67C,EAAQy9B,GACpE,OAAOF,EAAWp1E,KAAMhE,EAAO67C,GAAQ,EAAOy9B,EAChD,EAYA9oD,EAAO9rB,UAAU44E,cAAgB,SAAwBt9E,EAAO67C,EAAQy9B,GACtE,OAAOC,EAAYv1E,KAAMhE,EAAO67C,GAAQ,EAAMy9B,EAChD,EAEA9oD,EAAO9rB,UAAU64E,cAAgB,SAAwBv9E,EAAO67C,EAAQy9B,GACtE,OAAOC,EAAYv1E,KAAMhE,EAAO67C,GAAQ,EAAOy9B,EACjD,EAGA9oD,EAAO9rB,UAAUyxD,KAAO,SAAejzD,EAAQs6E,EAAavhE,EAAOwY,GACjE,IAAKjE,EAAOxE,SAAS9oB,GAAS,MAAM,IAAIY,UAAU,+BAQlD,GAPKmY,IAAOA,EAAQ,GACfwY,GAAe,IAARA,IAAWA,EAAMzwB,KAAKX,QAC9Bm6E,GAAet6E,EAAOG,SAAQm6E,EAAct6E,EAAOG,QAClDm6E,IAAaA,EAAc,GAC5B/oD,EAAM,GAAKA,EAAMxY,IAAOwY,EAAMxY,GAG9BwY,IAAQxY,EAAO,OAAO,EAC1B,GAAsB,IAAlB/Y,EAAOG,QAAgC,IAAhBW,KAAKX,OAAc,OAAO,EAGrD,GAAIm6E,EAAc,EAChB,MAAM,IAAI1oC,WAAW,6BAEvB,GAAI74B,EAAQ,GAAKA,GAASjY,KAAKX,OAAQ,MAAM,IAAIyxC,WAAW,sBAC5D,GAAIrgB,EAAM,EAAG,MAAM,IAAIqgB,WAAW,2BAG9BrgB,EAAMzwB,KAAKX,SAAQoxB,EAAMzwB,KAAKX,QAC9BH,EAAOG,OAASm6E,EAAc/oD,EAAMxY,IACtCwY,EAAMvxB,EAAOG,OAASm6E,EAAcvhE,GAGtC,MAAM+X,EAAMS,EAAMxY,EAalB,OAXIjY,OAASd,GAAqD,mBAApCivB,WAAWztB,UAAU+4E,WAEjDz5E,KAAKy5E,WAAWD,EAAavhE,EAAOwY,GAEpCtC,WAAWztB,UAAUI,IAAI4L,KACvBxN,EACAc,KAAKy1E,SAASx9D,EAAOwY,GACrB+oD,GAIGxpD,CACT,EAMAxD,EAAO9rB,UAAUmc,KAAO,SAAeiE,EAAK7I,EAAOwY,EAAK2/C,GAEtD,GAAmB,iBAARtvD,EAAkB,CAS3B,GARqB,iBAAV7I,GACTm4D,EAAWn4D,EACXA,EAAQ,EACRwY,EAAMzwB,KAAKX,QACa,iBAARoxB,IAChB2/C,EAAW3/C,EACXA,EAAMzwB,KAAKX,aAEI4D,IAAbmtE,GAA8C,iBAAbA,EACnC,MAAM,IAAItwE,UAAU,6BAEtB,GAAwB,iBAAbswE,IAA0B5jD,EAAO6jD,WAAWD,GACrD,MAAM,IAAItwE,UAAU,qBAAuBswE,GAE7C,GAAmB,IAAftvD,EAAIzhB,OAAc,CACpB,MAAM+lB,EAAOtE,EAAI8N,WAAW,IACV,SAAbwhD,GAAuBhrD,EAAO,KAClB,WAAbgrD,KAEFtvD,EAAMsE,EAEV,CACF,KAA0B,iBAARtE,EAChBA,GAAY,IACY,kBAARA,IAChBA,EAAM3H,OAAO2H,IAIf,GAAI7I,EAAQ,GAAKjY,KAAKX,OAAS4Y,GAASjY,KAAKX,OAASoxB,EACpD,MAAM,IAAIqgB,WAAW,sBAGvB,GAAIrgB,GAAOxY,EACT,OAAOjY,KAQT,IAAIZ,EACJ,GANA6Y,KAAkB,EAClBwY,OAAcxtB,IAARwtB,EAAoBzwB,KAAKX,OAASoxB,IAAQ,EAE3C3P,IAAKA,EAAM,GAGG,iBAARA,EACT,IAAK1hB,EAAI6Y,EAAO7Y,EAAIqxB,IAAOrxB,EACzBY,KAAKZ,GAAK0hB,MAEP,CACL,MAAM8zD,EAAQpoD,EAAOxE,SAASlH,GAC1BA,EACA0L,EAAO/f,KAAKqU,EAAKsvD,GACfpgD,EAAM4kD,EAAMv1E,OAClB,GAAY,IAAR2wB,EACF,MAAM,IAAIlwB,UAAU,cAAgBghB,EAClC,qCAEJ,IAAK1hB,EAAI,EAAGA,EAAIqxB,EAAMxY,IAAS7Y,EAC7BY,KAAKZ,EAAI6Y,GAAS28D,EAAMx1E,EAAI4wB,EAEhC,CAEA,OAAOhwB,IACT,EAMA,MAAM05E,EAAS,CAAC,EAChB,SAAS19D,EAAGkqC,EAAKukB,EAAYL,GAC3BsP,EAAOxzB,GAAO,cAAwBkkB,EACpCx9D,cACE+sE,QAEA99E,OAAOC,eAAekE,KAAM,UAAW,CACrChE,MAAOyuE,EAAWjjE,MAAMxH,KAAMgD,WAC9BxD,UAAU,EACVD,cAAc,IAIhBS,KAAKK,KAAO,GAAGL,KAAKK,SAAS6lD,KAG7BlmD,KAAK2lB,aAEE3lB,KAAKK,IACd,CAEI+kB,WACF,OAAO8gC,CACT,CAEI9gC,SAAMppB,GACRH,OAAOC,eAAekE,KAAM,OAAQ,CAClCT,cAAc,EACdtD,YAAY,EACZD,QACAwD,UAAU,GAEd,CAEAqD,WACE,MAAO,GAAG7C,KAAKK,SAAS6lD,OAASlmD,KAAKijB,SACxC,EAEJ,CA+BA,SAAS22D,EAAuB94D,GAC9B,IAAIyqB,EAAM,GACNnsC,EAAI0hB,EAAIzhB,OACZ,MAAM4Y,EAAmB,MAAX6I,EAAI,GAAa,EAAI,EACnC,KAAO1hB,GAAK6Y,EAAQ,EAAG7Y,GAAK,EAC1BmsC,EAAM,IAAIzqB,EAAInU,MAAMvN,EAAI,EAAGA,KAAKmsC,IAElC,MAAO,GAAGzqB,EAAInU,MAAM,EAAGvN,KAAKmsC,GAC9B,CAYA,SAAS0pC,EAAYj5E,EAAOqsC,EAAKD,EAAK8nC,EAAKr4B,EAAQxoB,GACjD,GAAIrzB,EAAQosC,GAAOpsC,EAAQqsC,EAAK,CAC9B,MAAM9hC,EAAmB,iBAAR8hC,EAAmB,IAAM,GAC1C,IAAIwxC,EAWJ,MARIA,EAFAxqD,EAAa,EACH,IAARgZ,GAAaA,IAAQ0H,OAAO,GACtB,OAAOxpC,YAAYA,QAA2B,GAAlB8oB,EAAa,KAAS9oB,IAElD,SAASA,QAA2B,GAAlB8oB,EAAa,GAAS,IAAI9oB,iBACtB,GAAlB8oB,EAAa,GAAS,IAAI9oB,IAGhC,MAAM8hC,IAAM9hC,YAAY6hC,IAAM7hC,IAElC,IAAImzE,EAAOI,iBAAiB,QAASD,EAAO79E,EACpD,EAtBF,SAAsBk0E,EAAKr4B,EAAQxoB,GACjCqnD,EAAe7+B,EAAQ,eACH50C,IAAhBitE,EAAIr4B,SAAsD50C,IAA7BitE,EAAIr4B,EAASxoB,IAC5CsnD,EAAY9+B,EAAQq4B,EAAI7wE,QAAUgwB,EAAa,GAEnD,CAkBE0qD,CAAY7J,EAAKr4B,EAAQxoB,EAC3B,CAEA,SAASqnD,EAAgB16E,EAAOqE,GAC9B,GAAqB,iBAAVrE,EACT,MAAM,IAAI09E,EAAOlY,qBAAqBnhE,EAAM,SAAUrE,EAE1D,CAEA,SAAS26E,EAAa36E,EAAOqD,EAAQqG,GACnC,GAAIsL,KAAKyW,MAAMzrB,KAAWA,EAExB,MADA06E,EAAe16E,EAAO0J,GAChB,IAAIg0E,EAAOI,iBAAiBp0E,GAAQ,SAAU,aAAc1J,GAGpE,GAAIqD,EAAS,EACX,MAAM,IAAIq6E,EAAOM,yBAGnB,MAAM,IAAIN,EAAOI,iBAAiBp0E,GAAQ,SACR,MAAMA,EAAO,EAAI,YAAYrG,IAC7BrD,EACpC,CAvFAggB,EAAE,4BACA,SAAU3b,GACR,OAAIA,EACK,GAAGA,gCAGL,gDACT,GAAGywC,YACL90B,EAAE,wBACA,SAAU3b,EAAMqiE,GACd,MAAO,QAAQriE,4DAA+DqiE,GAChF,GAAG5iE,WACLkc,EAAE,oBACA,SAAU8R,EAAK+rD,EAAOxyC,GACpB,IAAI48B,EAAM,iBAAiBn2C,sBACvBmsD,EAAW5yC,EAWf,OAVIluB,OAAO+gE,UAAU7yC,IAAUr2B,KAAKiiC,IAAI5L,GAAS,GAAK,GACpD4yC,EAAWL,EAAsBpxE,OAAO6+B,IACd,iBAAVA,IAChB4yC,EAAWzxE,OAAO6+B,IACdA,EAAQ0I,OAAO,IAAMA,OAAO,KAAO1I,IAAU0I,OAAO,IAAMA,OAAO,QACnEkqC,EAAWL,EAAsBK,IAEnCA,GAAY,KAEdhW,GAAO,eAAe4V,eAAmBI,IAClChW,CACT,GAAGnzB,YAiEL,MAAMqpC,EAAoB,oBAgB1B,SAASlJ,EAAalxC,EAAQ8yC,GAE5B,IAAIG,EADJH,EAAQA,GAAShsB,IAEjB,MAAMxnD,EAAS0gC,EAAO1gC,OACtB,IAAI+6E,EAAgB,KACpB,MAAMxF,EAAQ,GAEd,IAAK,IAAIx1E,EAAI,EAAGA,EAAIC,IAAUD,EAAG,CAI/B,GAHA4zE,EAAYjzC,EAAOnR,WAAWxvB,GAG1B4zE,EAAY,OAAUA,EAAY,MAAQ,CAE5C,IAAKoH,EAAe,CAElB,GAAIpH,EAAY,MAAQ,EAEjBH,GAAS,IAAM,GAAG+B,EAAMj4E,KAAK,IAAM,IAAM,KAC9C,QACF,CAAO,GAAIyC,EAAI,IAAMC,EAAQ,EAEtBwzE,GAAS,IAAM,GAAG+B,EAAMj4E,KAAK,IAAM,IAAM,KAC9C,QACF,CAGAy9E,EAAgBpH,EAEhB,QACF,CAGA,GAAIA,EAAY,MAAQ,EACjBH,GAAS,IAAM,GAAG+B,EAAMj4E,KAAK,IAAM,IAAM,KAC9Cy9E,EAAgBpH,EAChB,QACF,CAGAA,EAAkE,OAArDoH,EAAgB,OAAU,GAAKpH,EAAY,MAC1D,MAAWoH,IAEJvH,GAAS,IAAM,GAAG+B,EAAMj4E,KAAK,IAAM,IAAM,KAMhD,GAHAy9E,EAAgB,KAGZpH,EAAY,IAAM,CACpB,IAAKH,GAAS,GAAK,EAAG,MACtB+B,EAAMj4E,KAAKq2E,EACb,MAAO,GAAIA,EAAY,KAAO,CAC5B,IAAKH,GAAS,GAAK,EAAG,MACtB+B,EAAMj4E,KACJq2E,GAAa,EAAM,IACP,GAAZA,EAAmB,IAEvB,MAAO,GAAIA,EAAY,MAAS,CAC9B,IAAKH,GAAS,GAAK,EAAG,MACtB+B,EAAMj4E,KACJq2E,GAAa,GAAM,IACnBA,GAAa,EAAM,GAAO,IACd,GAAZA,EAAmB,IAEvB,KAAO,MAAIA,EAAY,SASrB,MAAM,IAAI5/D,MAAM,sBARhB,IAAKy/D,GAAS,GAAK,EAAG,MACtB+B,EAAMj4E,KACJq2E,GAAa,GAAO,IACpBA,GAAa,GAAM,GAAO,IAC1BA,GAAa,EAAM,GAAO,IACd,GAAZA,EAAmB,IAIvB,CACF,CAEA,OAAO4B,CACT,CA2BA,SAAS1D,EAAepjD,GACtB,OAAOwf,EAAO3d,YAxHhB,SAAsB7B,GAMpB,IAFAA,GAFAA,EAAMA,EAAIhC,MAAM,KAAK,IAEX7gB,OAAOhJ,QAAQk4E,EAAmB,KAEpC96E,OAAS,EAAG,MAAO,GAE3B,KAAOyuB,EAAIzuB,OAAS,GAAM,GACxByuB,GAAY,IAEd,OAAOA,CACT,CA4G4BusD,CAAYvsD,GACxC,CAEA,SAASykD,EAAYztC,EAAKw1C,EAAKziC,EAAQx4C,GACrC,IAAID,EACJ,IAAKA,EAAI,EAAGA,EAAIC,KACTD,EAAIy4C,GAAUyiC,EAAIj7E,QAAYD,GAAK0lC,EAAIzlC,UADpBD,EAExBk7E,EAAIl7E,EAAIy4C,GAAU/S,EAAI1lC,GAExB,OAAOA,CACT,CAKA,SAASoxE,EAAY3yE,EAAK6H,GACxB,OAAO7H,aAAe6H,GACZ,MAAP7H,GAAkC,MAAnBA,EAAI+O,aAA+C,MAAxB/O,EAAI+O,YAAYvM,MACzDxC,EAAI+O,YAAYvM,OAASqF,EAAKrF,IACpC,CACA,SAASmrE,EAAa3tE,GAEpB,OAAOA,GAAQA,CACjB,CAIA,MAAM82E,EAAsB,WAC1B,MAAMhxC,EAAW,mBACX42C,EAAQ,IAAIpzE,MAAM,KACxB,IAAK,IAAI/H,EAAI,EAAGA,EAAI,KAAMA,EAAG,CAC3B,MAAMo7E,EAAU,GAAJp7E,EACZ,IAAK,IAAIyc,EAAI,EAAGA,EAAI,KAAMA,EACxB0+D,EAAMC,EAAM3+D,GAAK8nB,EAASvkC,GAAKukC,EAAS9nB,EAE5C,CACA,OAAO0+D,CACR,CAV2B,GAa5B,SAAS9D,EAAoBzhE,GAC3B,MAAyB,oBAAX+6B,OAAyB0qC,GAAyBzlE,CAClE,CAEA,SAASylE,KACP,MAAM,IAAIrnE,MAAM,uBAClB,YCzjEA/M,EAAOtK,QAAU,SAAkBikC,GACjC,OAAOA,GAAsB,iBAARA,GACI,mBAAbA,EAAImyB,MACS,mBAAbnyB,EAAInjB,MACc,mBAAlBmjB,EAAIg2C,SAClB,+BCAA,IAAI0E,EAAoB,EAAQ,MAC5BC,EAAsB,EAAQ,MAC9BC,EAAkB,EAAQ,MAC1BtuD,EAAe,EAAQ,MAE3B,SAASm/C,EAAYz9D,GACnB,OAAOA,EAAEtB,KAAK4B,KAAKN,EACrB,CAEA,IAAI6sE,EAAoC,oBAAX9qC,OACzB+qC,EAAoC,oBAAXvuE,OAEzBwuE,EAAiBtP,EAAY5vE,OAAO6E,UAAUmC,UAE9Cm4E,EAAcvP,EAAYtyD,OAAOzY,UAAUgoC,SAC3CuyC,EAAcxP,EAAYjjE,OAAO9H,UAAUgoC,SAC3CwyC,EAAezP,EAAY9kE,QAAQjG,UAAUgoC,SAEjD,GAAImyC,EACF,IAAIM,EAAc1P,EAAY17B,OAAOrvC,UAAUgoC,SAGjD,GAAIoyC,EACF,IAAIM,EAAc3P,EAAYl/D,OAAO7L,UAAUgoC,SAGjD,SAAS2yC,EAAoBr/E,EAAOs/E,GAClC,GAAqB,iBAAVt/E,EACT,OAAO,EAET,IAEE,OADAs/E,EAAiBt/E,IACV,CAGT,CAFE,MAAMkB,GACN,OAAO,CACT,CACF,CA4FA,SAASq+E,EAAcv/E,GACrB,MAAiC,iBAA1B++E,EAAe/+E,EACxB,CAiBA,SAASw/E,EAAcx/E,GACrB,MAAiC,iBAA1B++E,EAAe/+E,EACxB,CAgBA,SAASy/E,EAAkBz/E,GACzB,MAAiC,qBAA1B++E,EAAe/+E,EACxB,CAgBA,SAAS0/E,EAAkB1/E,GACzB,MAAiC,qBAA1B++E,EAAe/+E,EACxB,CAUA,SAAS2/E,EAAsB3/E,GAC7B,MAAiC,yBAA1B++E,EAAe/+E,EACxB,CAKA,SAAS+rB,EAAc/rB,GACrB,MAA2B,oBAAhBqyB,cAIJstD,EAAsBC,QACzBD,EAAsB3/E,GACtBA,aAAiBqyB,YACvB,CAGA,SAASwtD,EAAmB7/E,GAC1B,MAAiC,sBAA1B++E,EAAe/+E,EACxB,CAMA,SAAS8/E,EAAW9/E,GAClB,MAAwB,oBAAbg0C,WAIJ6rC,EAAmBD,QACtBC,EAAmB7/E,GACnBA,aAAiBg0C,SACvB,CA/LAj0C,EAAQ2+E,kBAAoBA,EAC5B3+E,EAAQ4+E,oBAAsBA,EAC9B5+E,EAAQuwB,aAAeA,EAkBvBvwB,EAAQ+lE,UAdR,SAAmBz6B,GAClB,MAEqB,oBAAZvpB,SACPupB,aAAiBvpB,SAGP,OAAVupB,GACiB,iBAAVA,GACe,mBAAfA,EAAMxkB,MACU,mBAAhBwkB,EAAMg9B,KAGhB,EAaAtoE,EAAQqsB,kBAVR,SAA2BpsB,GACzB,MAA2B,oBAAhBqyB,aAA+BA,YAAYC,OAC7CD,YAAYC,OAAOtyB,GAI1BswB,EAAatwB,IACb8/E,EAAW9/E,EAEf,EAOAD,EAAQggF,aAHR,SAAsB//E,GACpB,MAAkC,eAA3B4+E,EAAgB5+E,EACzB,EAMAD,EAAQigF,oBAHR,SAA6BhgF,GAC3B,MAAkC,sBAA3B4+E,EAAgB5+E,EACzB,EAMAD,EAAQkgF,cAHR,SAAuBjgF,GACrB,MAAkC,gBAA3B4+E,EAAgB5+E,EACzB,EAMAD,EAAQmgF,cAHR,SAAuBlgF,GACrB,MAAkC,gBAA3B4+E,EAAgB5+E,EACzB,EAMAD,EAAQogF,YAHR,SAAqBngF,GACnB,MAAkC,cAA3B4+E,EAAgB5+E,EACzB,EAMAD,EAAQqgF,aAHR,SAAsBpgF,GACpB,MAAkC,eAA3B4+E,EAAgB5+E,EACzB,EAMAD,EAAQsgF,aAHR,SAAsBrgF,GACpB,MAAkC,eAA3B4+E,EAAgB5+E,EACzB,EAMAD,EAAQqwE,eAHR,SAAwBpwE,GACtB,MAAkC,iBAA3B4+E,EAAgB5+E,EACzB,EAMAD,EAAQswE,eAHR,SAAwBrwE,GACtB,MAAkC,iBAA3B4+E,EAAgB5+E,EACzB,EAMAD,EAAQugF,gBAHR,SAAyBtgF,GACvB,MAAkC,kBAA3B4+E,EAAgB5+E,EACzB,EAMAD,EAAQwgF,iBAHR,SAA0BvgF,GACxB,MAAkC,mBAA3B4+E,EAAgB5+E,EACzB,EAMAu/E,EAAcK,QACG,oBAARh7E,KACP26E,EAAc,IAAI36E,KAYpB7E,EAAQ4vE,MATR,SAAe3vE,GACb,MAAmB,oBAAR4E,MAIJ26E,EAAcK,QACjBL,EAAcv/E,GACdA,aAAiB4E,IACvB,EAMA46E,EAAcI,QACG,oBAAR3qC,KACPuqC,EAAc,IAAIvqC,KAWpBl1C,EAAQ6vE,MATR,SAAe5vE,GACb,MAAmB,oBAARi1C,MAIJuqC,EAAcI,QACjBJ,EAAcx/E,GACdA,aAAiBi1C,IACvB,EAMAwqC,EAAkBG,QACG,oBAAZ/5C,SACP45C,EAAkB,IAAI55C,SAWxB9lC,EAAQygF,UATR,SAAmBxgF,GACjB,MAAuB,oBAAZ6lC,UAIJ45C,EAAkBG,QACrBH,EAAkBz/E,GAClBA,aAAiB6lC,QACvB,EAMA65C,EAAkBE,QACG,oBAAZpqC,SACPkqC,EAAkB,IAAIlqC,SAKxBz1C,EAAQ0gF,UAHR,SAAmBzgF,GACjB,OAAO0/E,EAAkB1/E,EAC3B,EAMA2/E,EAAsBC,QACG,oBAAhBvtD,aACPstD,EAAsB,IAAIttD,aAW5BtyB,EAAQgsB,cAAgBA,EAKxB8zD,EAAmBD,QACM,oBAAhBvtD,aACa,oBAAb2hB,UACP6rC,EAAmB,IAAI7rC,SAAS,IAAI3hB,YAAY,GAAI,EAAG,IAWzDtyB,EAAQ+/E,WAAaA,EAGrB,IAAIY,EAAqD,oBAAtBxrC,kBAAoCA,uBAAoBjuC,EAC3F,SAAS05E,EAA4B3gF,GACnC,MAAiC,+BAA1B++E,EAAe/+E,EACxB,CACA,SAAS4gF,EAAoB5gF,GAC3B,YAAqC,IAA1B0gF,SAIwC,IAAxCC,EAA4Bf,UACrCe,EAA4Bf,QAAUe,EAA4B,IAAID,IAGjEC,EAA4Bf,QAC/Be,EAA4B3gF,GAC5BA,aAAiB0gF,EACvB,CA4BA,SAAS3Q,EAAe/vE,GACtB,OAAOq/E,EAAoBr/E,EAAOg/E,EACpC,CAGA,SAAShP,EAAehwE,GACtB,OAAOq/E,EAAoBr/E,EAAOi/E,EACpC,CAGA,SAAShP,EAAgBjwE,GACvB,OAAOq/E,EAAoBr/E,EAAOk/E,EACpC,CAGA,SAAShP,EAAelwE,GACtB,OAAO6+E,GAAmBQ,EAAoBr/E,EAAOm/E,EACvD,CAGA,SAAShP,EAAenwE,GACtB,OAAO8+E,GAAmBO,EAAoBr/E,EAAOo/E,EACvD,CAjDAr/E,EAAQ6gF,oBAAsBA,EAK9B7gF,EAAQ8gF,gBAHR,SAAyB7gF,GACvB,MAAiC,2BAA1B++E,EAAe/+E,EACxB,EAMAD,EAAQ+gF,cAHR,SAAuB9gF,GACrB,MAAiC,0BAA1B++E,EAAe/+E,EACxB,EAMAD,EAAQghF,cAHR,SAAuB/gF,GACrB,MAAiC,0BAA1B++E,EAAe/+E,EACxB,EAMAD,EAAQihF,kBAHR,SAA2BhhF,GACzB,MAAiC,uBAA1B++E,EAAe/+E,EACxB,EAMAD,EAAQkhF,4BAHR,SAAqCjhF,GACnC,MAAiC,gCAA1B++E,EAAe/+E,EACxB,EAMAD,EAAQgwE,eAAiBA,EAKzBhwE,EAAQiwE,eAAiBA,EAKzBjwE,EAAQkwE,gBAAkBA,EAK1BlwE,EAAQmwE,eAAiBA,EAKzBnwE,EAAQowE,eAAiBA,EAWzBpwE,EAAQ+vE,iBATR,SAA0B9vE,GACxB,OACE+vE,EAAe/vE,IACfgwE,EAAehwE,IACfiwE,EAAgBjwE,IAChBkwE,EAAelwE,IACfmwE,EAAenwE,EAEnB,EASAD,EAAQ2vE,iBANR,SAA0B1vE,GACxB,MAA6B,oBAAfmyB,aACZpG,EAAc/rB,IACd4gF,EAAoB5gF,GAExB,EAGA,CAAC,UAAW,aAAc,2BAA2BmB,SAAQ,SAASsiB,GACpE5jB,OAAOC,eAAeC,EAAS0jB,EAAQ,CACrCxjB,YAAY,EACZD,MAAO,WACL,MAAM,IAAIoX,MAAMqM,EAAS,gCAC3B,GAEJ,2CCxTI9X,EAA4B9L,OAAO8L,2BACrC,SAAmC9J,GAGjC,IAFA,IAAIwJ,EAAOxL,OAAOwL,KAAKxJ,GACnB+nB,EAAc,CAAC,EACVxmB,EAAI,EAAGA,EAAIiI,EAAKhI,OAAQD,IAC/BwmB,EAAYve,EAAKjI,IAAMvD,OAAO0L,yBAAyB1J,EAAKwJ,EAAKjI,IAEnE,OAAOwmB,CACT,EAEEs3D,EAAe,WACnBnhF,EAAQm2B,OAAS,SAASlkB,GACxB,IAAKib,EAASjb,GAAI,CAEhB,IADA,IAAImvE,EAAU,GACL/9E,EAAI,EAAGA,EAAI4D,UAAU3D,OAAQD,IACpC+9E,EAAQxgF,KAAKy1B,EAAQpvB,UAAU5D,KAEjC,OAAO+9E,EAAQtrE,KAAK,IACtB,CAEIzS,EAAI,EAmBR,IAnBA,IACIoqB,EAAOxmB,UACPgtB,EAAMxG,EAAKnqB,OACXyuB,EAAMtlB,OAAOwF,GAAG/L,QAAQi7E,GAAc,SAASnpE,GACjD,GAAU,OAANA,EAAY,MAAO,IACvB,GAAI3U,GAAK4wB,EAAK,OAAOjc,EACrB,OAAQA,GACN,IAAK,KAAM,OAAOvL,OAAOghB,EAAKpqB,MAC9B,IAAK,KAAM,OAAO+Z,OAAOqQ,EAAKpqB,MAC9B,IAAK,KACH,IACE,OAAO+S,KAAKC,UAAUoX,EAAKpqB,KAG7B,CAFE,MAAOqC,GACP,MAAO,YACT,CACF,QACE,OAAOsS,EAEb,IACSA,EAAIyV,EAAKpqB,GAAIA,EAAI4wB,EAAKjc,EAAIyV,IAAOpqB,GACpCg+E,EAAOrpE,KAAO0U,EAAS1U,GACzB+Z,GAAO,IAAM/Z,EAEb+Z,GAAO,IAAMsE,EAAQre,GAGzB,OAAO+Z,CACT,EAMA/xB,EAAQu3C,UAAY,SAASt+B,EAAIivD,GAC/B,QAAuB,IAAZn8C,IAAqD,IAA1BA,EAAQu1D,cAC5C,OAAOroE,EAIT,QAAuB,IAAZ8S,EACT,OAAO,WACL,OAAO/rB,EAAQu3C,UAAUt+B,EAAIivD,GAAKz8D,MAAMxH,KAAMgD,UAChD,EAGF,IAAIo/D,GAAS,EAeb,OAdA,WACE,IAAKA,EAAQ,CACX,GAAIt6C,EAAQw1D,iBACV,MAAM,IAAIlqE,MAAM6wD,GACPn8C,EAAQy1D,iBACjBngF,EAAQogF,MAAMvZ,GAEd7mE,EAAQC,MAAM4mE,GAEhB7B,GAAS,CACX,CACA,OAAOptD,EAAGxN,MAAMxH,KAAMgD,UACxB,CAGF,EAGA,IAAIy6E,EAAS,CAAC,EACVC,EAAgB,KAEpB,GAAI51D,EAAQc,IAAI+0D,WAAY,CAC1B,IAAIC,EAAW91D,EAAQc,IAAI+0D,WAC3BC,EAAWA,EAAS37E,QAAQ,qBAAsB,QAC/CA,QAAQ,MAAO,MACfA,QAAQ,KAAM,OACdyd,cACHg+D,EAAgB,IAAIjzD,OAAO,IAAMmzD,EAAW,IAAK,IACnD,CA0BA,SAASxrD,EAAQv0B,EAAKwvB,GAEpB,IAAIkhB,EAAM,CACR4kB,KAAM,GACN0qB,QAASC,GAkBX,OAfI96E,UAAU3D,QAAU,IAAGkvC,EAAIm5B,MAAQ1kE,UAAU,IAC7CA,UAAU3D,QAAU,IAAGkvC,EAAIwvC,OAAS/6E,UAAU,IAC9Cg7E,EAAU3wD,GAEZkhB,EAAIq5B,WAAav6C,EACRA,GAETtxB,EAAQkiF,QAAQ1vC,EAAKlhB,GAGnBpM,EAAYstB,EAAIq5B,cAAar5B,EAAIq5B,YAAa,GAC9C3mD,EAAYstB,EAAIm5B,SAAQn5B,EAAIm5B,MAAQ,GACpCzmD,EAAYstB,EAAIwvC,UAASxvC,EAAIwvC,QAAS,GACtC98D,EAAYstB,EAAIk5B,iBAAgBl5B,EAAIk5B,eAAgB,GACpDl5B,EAAIwvC,SAAQxvC,EAAIsvC,QAAUK,GACvBC,EAAY5vC,EAAK1wC,EAAK0wC,EAAIm5B,MACnC,CAmCA,SAASwW,EAAiBpwD,EAAKswD,GAC7B,IAAI9oE,EAAQ8c,EAAQisD,OAAOD,GAE3B,OAAI9oE,EACK,KAAY8c,EAAQ2rD,OAAOzoE,GAAO,GAAK,IAAMwY,EAC7C,KAAYsE,EAAQ2rD,OAAOzoE,GAAO,GAAK,IAEvCwY,CAEX,CAGA,SAASgwD,EAAehwD,EAAKswD,GAC3B,OAAOtwD,CACT,CAcA,SAASqwD,EAAY5vC,EAAKvyC,EAAOiuE,GAG/B,GAAI17B,EAAIk5B,eACJzrE,GACAiyB,EAAWjyB,EAAMo2B,UAEjBp2B,EAAMo2B,UAAYr2B,EAAQq2B,WAExBp2B,EAAM4Q,aAAe5Q,EAAM4Q,YAAYlM,YAAc1E,GAAQ,CACjE,IAAIy4E,EAAMz4E,EAAMo2B,QAAQ63C,EAAc17B,GAItC,OAHKtlB,EAASwrD,KACZA,EAAM0J,EAAY5vC,EAAKkmC,EAAKxK,IAEvBwK,CACT,CAGA,IAAI6J,EA+FN,SAAyB/vC,EAAKvyC,GAC5B,GAAIilB,EAAYjlB,GACd,OAAOuyC,EAAIsvC,QAAQ,YAAa,aAClC,GAAI50D,EAASjtB,GAAQ,CACnB,IAAImqC,EAAS,IAAOh0B,KAAKC,UAAUpW,GAAOiG,QAAQ,SAAU,IAClBA,QAAQ,KAAM,OACdA,QAAQ,OAAQ,KAAO,IACjE,OAAOssC,EAAIsvC,QAAQ13C,EAAQ,SAC7B,CACA,GAAI7b,EAAStuB,GACX,OAAOuyC,EAAIsvC,QAAQ,GAAK7hF,EAAO,UACjC,GAAIgiF,EAAUhiF,GACZ,OAAOuyC,EAAIsvC,QAAQ,GAAK7hF,EAAO,WAEjC,GAAIohF,EAAOphF,GACT,OAAOuyC,EAAIsvC,QAAQ,OAAQ,OAC/B,CA/GkBU,CAAgBhwC,EAAKvyC,GACrC,GAAIsiF,EACF,OAAOA,EAIT,IAAIj3E,EAAOxL,OAAOwL,KAAKrL,GACnBwiF,EApCN,SAAqBzpD,GACnB,IAAI1J,EAAO,CAAC,EAMZ,OAJA0J,EAAM53B,SAAQ,SAAS2jB,EAAK29D,GAC1BpzD,EAAKvK,IAAO,CACd,IAEOuK,CACT,CA4BoBqzD,CAAYr3E,GAQ9B,GANIknC,EAAIq5B,aACNvgE,EAAOxL,OAAOozB,oBAAoBjzB,IAKhC2iF,EAAQ3iF,KACJqL,EAAKvB,QAAQ,YAAc,GAAKuB,EAAKvB,QAAQ,gBAAkB,GACrE,OAAO84E,EAAY5iF,GAIrB,GAAoB,IAAhBqL,EAAKhI,OAAc,CACrB,GAAI4uB,EAAWjyB,GAAQ,CACrB,IAAIqE,EAAOrE,EAAMqE,KAAO,KAAOrE,EAAMqE,KAAO,GAC5C,OAAOkuC,EAAIsvC,QAAQ,YAAcx9E,EAAO,IAAK,UAC/C,CACA,GAAI0hE,EAAS/lE,GACX,OAAOuyC,EAAIsvC,QAAQpzD,OAAO/pB,UAAUmC,SAAS6J,KAAK1Q,GAAQ,UAE5D,GAAI4tB,EAAO5tB,GACT,OAAOuyC,EAAIsvC,QAAQ3lE,KAAKxX,UAAUmC,SAAS6J,KAAK1Q,GAAQ,QAE1D,GAAI2iF,EAAQ3iF,GACV,OAAO4iF,EAAY5iF,EAEvB,CAEA,IA2CI20B,EA3CAre,EAAO,GAAIyiB,GAAQ,EAAO8pD,EAAS,CAAC,IAAK,MAGzCvyE,EAAQtQ,KACV+4B,GAAQ,EACR8pD,EAAS,CAAC,IAAK,MAIb5wD,EAAWjyB,MAEbsW,EAAO,cADCtW,EAAMqE,KAAO,KAAOrE,EAAMqE,KAAO,IACf,KAkB5B,OAdI0hE,EAAS/lE,KACXsW,EAAO,IAAMmY,OAAO/pB,UAAUmC,SAAS6J,KAAK1Q,IAI1C4tB,EAAO5tB,KACTsW,EAAO,IAAM4F,KAAKxX,UAAUo+E,YAAYpyE,KAAK1Q,IAI3C2iF,EAAQ3iF,KACVsW,EAAO,IAAMssE,EAAY5iF,IAGP,IAAhBqL,EAAKhI,QAAkB01B,GAAyB,GAAhB/4B,EAAMqD,OAItC4qE,EAAe,EACblI,EAAS/lE,GACJuyC,EAAIsvC,QAAQpzD,OAAO/pB,UAAUmC,SAAS6J,KAAK1Q,GAAQ,UAEnDuyC,EAAIsvC,QAAQ,WAAY,YAInCtvC,EAAI4kB,KAAKx2D,KAAKX,GAIZ20B,EADEoE,EAsCN,SAAqBwZ,EAAKvyC,EAAOiuE,EAAcuU,EAAan3E,GAE1D,IADA,IAAIspB,EAAS,GACJvxB,EAAI,EAAG4H,EAAIhL,EAAMqD,OAAQD,EAAI4H,IAAK5H,EACrC0Y,EAAe9b,EAAOwM,OAAOpJ,IAC/BuxB,EAAOh0B,KAAKoiF,EAAexwC,EAAKvyC,EAAOiuE,EAAcuU,EACjDh2E,OAAOpJ,IAAI,IAEfuxB,EAAOh0B,KAAK,IAShB,OANA0K,EAAKlK,SAAQ,SAASsC,GACfA,EAAI+qB,MAAM,UACbmG,EAAOh0B,KAAKoiF,EAAexwC,EAAKvyC,EAAOiuE,EAAcuU,EACjD/+E,GAAK,GAEb,IACOkxB,CACT,CAtDaquD,CAAYzwC,EAAKvyC,EAAOiuE,EAAcuU,EAAan3E,GAEnDA,EAAKuK,KAAI,SAASnS,GACzB,OAAOs/E,EAAexwC,EAAKvyC,EAAOiuE,EAAcuU,EAAa/+E,EAAKs1B,EACpE,IAGFwZ,EAAI4kB,KAAKpmC,MA6GX,SAA8B4D,EAAQre,EAAMusE,GAQ1C,GANaluD,EAAOsuD,QAAO,SAASlnD,EAAMmxC,GAGxC,OADIA,EAAIpjE,QAAQ,OAAS,GAAGo5E,EACrBnnD,EAAOmxC,EAAIjnE,QAAQ,kBAAmB,IAAI5C,OAAS,CAC5D,GAAG,GAEU,GACX,OAAOw/E,EAAO,IACG,KAATvsE,EAAc,GAAKA,EAAO,OAC3B,IACAqe,EAAO9e,KAAK,SACZ,IACAgtE,EAAO,GAGhB,OAAOA,EAAO,GAAKvsE,EAAO,IAAMqe,EAAO9e,KAAK,MAAQ,IAAMgtE,EAAO,EACnE,CA7HSM,CAAqBxuD,EAAQre,EAAMusE,IAxBjCA,EAAO,GAAKvsE,EAAOusE,EAAO,EAyBrC,CAsBA,SAASD,EAAY5iF,GACnB,MAAO,IAAMoX,MAAM1S,UAAUmC,SAAS6J,KAAK1Q,GAAS,GACtD,CAuBA,SAAS+iF,EAAexwC,EAAKvyC,EAAOiuE,EAAcuU,EAAa/+E,EAAKs1B,GAClE,IAAI10B,EAAMytB,EAAKV,EAsCf,IArCAA,EAAOvxB,OAAO0L,yBAAyBvL,EAAOyD,IAAQ,CAAEzD,MAAOA,EAAMyD,KAC5DvD,IAEL4xB,EADEV,EAAKtsB,IACDytC,EAAIsvC,QAAQ,kBAAmB,WAE/BtvC,EAAIsvC,QAAQ,WAAY,WAG5BzwD,EAAKtsB,MACPgtB,EAAMygB,EAAIsvC,QAAQ,WAAY,YAG7B/lE,EAAe0mE,EAAa/+E,KAC/BY,EAAO,IAAMZ,EAAM,KAEhBquB,IACCygB,EAAI4kB,KAAKrtD,QAAQsnB,EAAKpxB,OAAS,GAE/B8xB,EADEsvD,EAAOnT,GACHkU,EAAY5vC,EAAKnhB,EAAKpxB,MAAO,MAE7BmiF,EAAY5vC,EAAKnhB,EAAKpxB,MAAOiuE,EAAe,IAE5CnkE,QAAQ,OAAS,IAErBgoB,EADEiH,EACIjH,EAAIhC,MAAM,MAAMla,KAAI,SAASma,GACjC,MAAO,KAAOA,CAChB,IAAGla,KAAK,MAAMma,OAAO,GAEf,KAAO8B,EAAIhC,MAAM,MAAMla,KAAI,SAASma,GACxC,MAAO,MAAQA,CACjB,IAAGla,KAAK,OAIZic,EAAMygB,EAAIsvC,QAAQ,aAAc,YAGhC58D,EAAY5gB,GAAO,CACrB,GAAI00B,GAASt1B,EAAI+qB,MAAM,SACrB,OAAOsD,GAETztB,EAAO8R,KAAKC,UAAU,GAAK3S,IAClB+qB,MAAM,iCACbnqB,EAAOA,EAAK2rB,OAAO,EAAG3rB,EAAKhB,OAAS,GACpCgB,EAAOkuC,EAAIsvC,QAAQx9E,EAAM,UAEzBA,EAAOA,EAAK4B,QAAQ,KAAM,OACdA,QAAQ,OAAQ,KAChBA,QAAQ,WAAY,KAChC5B,EAAOkuC,EAAIsvC,QAAQx9E,EAAM,UAE7B,CAEA,OAAOA,EAAO,KAAOytB,CACvB,CA4BA,SAASxhB,EAAQ8sD,GACf,OAAOjyD,MAAMmF,QAAQ8sD,EACvB,CAGA,SAAS4kB,EAAUh+C,GACjB,MAAsB,kBAARA,CAChB,CAGA,SAASo9C,EAAOp9C,GACd,OAAe,OAARA,CACT,CAQA,SAAS1V,EAAS0V,GAChB,MAAsB,iBAARA,CAChB,CAGA,SAAS/W,EAAS+W,GAChB,MAAsB,iBAARA,CAChB,CAQA,SAAS/e,EAAY+e,GACnB,YAAe,IAARA,CACT,CAGA,SAAS+hC,EAASljC,GAChB,OAAOpW,EAASoW,IAA8B,oBAAvB+qB,EAAe/qB,EACxC,CAIA,SAASpW,EAASuX,GAChB,MAAsB,iBAARA,GAA4B,OAARA,CACpC,CAGA,SAASpW,EAAO1iB,GACd,OAAOuhB,EAASvhB,IAA4B,kBAAtB0iD,EAAe1iD,EACvC,CAIA,SAASy3E,EAAQzhF,GACf,OAAOurB,EAASvrB,KACW,mBAAtB0sD,EAAe1sD,IAA2BA,aAAakW,MAC9D,CAIA,SAAS6a,EAAW+R,GAClB,MAAsB,mBAARA,CAChB,CAeA,SAAS4pB,EAAe9iD,GACtB,OAAOjL,OAAO6E,UAAUmC,SAAS6J,KAAK5F,EACxC,CAGA,SAASs4E,EAAI74E,GACX,OAAOA,EAAI,GAAK,IAAMA,EAAE1D,SAAS,IAAM0D,EAAE1D,SAAS,GACpD,CAxbA9G,EAAQsjF,SAAW,SAASv+E,GAE1B,GADAA,EAAMA,EAAI4e,eACL+9D,EAAO38E,GACV,GAAI48E,EAAc7wE,KAAK/L,GAAM,CAC3B,IAAIw+E,EAAMx3D,EAAQw3D,IAClB7B,EAAO38E,GAAO,WACZ,IAAImjE,EAAMloE,EAAQm2B,OAAO1qB,MAAMzL,EAASiH,WACxC5F,EAAQC,MAAM,YAAayD,EAAKw+E,EAAKrb,EACvC,CACF,MACEwZ,EAAO38E,GAAO,WAAY,EAG9B,OAAO28E,EAAO38E,EAChB,EAmCA/E,EAAQq2B,QAAUA,EAIlBA,EAAQ2rD,OAAS,CACf,KAAS,CAAC,EAAG,IACb,OAAW,CAAC,EAAG,IACf,UAAc,CAAC,EAAG,IAClB,QAAY,CAAC,EAAG,IAChB,MAAU,CAAC,GAAI,IACf,KAAS,CAAC,GAAI,IACd,MAAU,CAAC,GAAI,IACf,KAAS,CAAC,GAAI,IACd,KAAS,CAAC,GAAI,IACd,MAAU,CAAC,GAAI,IACf,QAAY,CAAC,GAAI,IACjB,IAAQ,CAAC,GAAI,IACb,OAAW,CAAC,GAAI,KAIlB3rD,EAAQisD,OAAS,CACf,QAAW,OACX,OAAU,SACV,QAAW,SACX,UAAa,OACb,KAAQ,OACR,OAAU,QACV,KAAQ,UAER,OAAU,OA+QZtiF,EAAQq4C,MAAQ,EAAhB,MAKAr4C,EAAQuQ,QAAUA,EAKlBvQ,EAAQiiF,UAAYA,EAKpBjiF,EAAQqhF,OAASA,EAKjBrhF,EAAQwjF,kBAHR,SAA2Bv/C,GACzB,OAAc,MAAPA,CACT,EAMAjkC,EAAQuuB,SAAWA,EAKnBvuB,EAAQktB,SAAWA,EAKnBltB,EAAQyuD,SAHR,SAAkBxqB,GAChB,MAAsB,iBAARA,CAChB,EAMAjkC,EAAQklB,YAAcA,EAKtBllB,EAAQgmE,SAAWA,EACnBhmE,EAAQq4C,MAAM2tB,SAAWA,EAKzBhmE,EAAQ0sB,SAAWA,EAKnB1sB,EAAQ6tB,OAASA,EACjB7tB,EAAQq4C,MAAMxqB,OAASA,EAMvB7tB,EAAQ4iF,QAAUA,EAClB5iF,EAAQq4C,MAAMy3B,cAAgB8S,EAK9B5iF,EAAQkyB,WAAaA,EAUrBlyB,EAAQyjF,YARR,SAAqBx/C,GACnB,OAAe,OAARA,GACe,kBAARA,GACQ,iBAARA,GACQ,iBAARA,GACQ,iBAARA,QACQ,IAARA,CAChB,EAGAjkC,EAAQisB,SAAW,EAAnB,MAYA,IAAIy3D,EAAS,CAAC,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MACxD,MAAO,MAAO,OAG5B,SAASC,IACP,IAAIx4E,EAAI,IAAIgR,KACR8Z,EAAO,CAACotD,EAAIl4E,EAAEy4E,YACNP,EAAIl4E,EAAE04E,cACNR,EAAIl4E,EAAE24E,eAAehuE,KAAK,KACtC,MAAO,CAAC3K,EAAE44E,UAAWL,EAAOv4E,EAAE64E,YAAa/tD,GAAMngB,KAAK,IACxD,CAoCA,SAASiG,EAAeja,EAAKopB,GAC3B,OAAOprB,OAAO6E,UAAUoX,eAAepL,KAAK7O,EAAKopB,EACnD,CAlCAlrB,EAAQ+1B,IAAM,WACZ10B,EAAQ00B,IAAI,UAAW4tD,IAAa3jF,EAAQm2B,OAAO1qB,MAAMzL,EAASiH,WACpE,EAgBAjH,EAAQynB,SAAW,EAAnB,MAEAznB,EAAQkiF,QAAU,SAAS+B,EAAQ9yE,GAEjC,IAAKA,IAAQub,EAASvb,GAAM,OAAO8yE,EAInC,IAFA,IAAI34E,EAAOxL,OAAOwL,KAAK6F,GACnB9N,EAAIiI,EAAKhI,OACND,KACL4gF,EAAO34E,EAAKjI,IAAM8N,EAAI7F,EAAKjI,IAE7B,OAAO4gF,CACT,EAMA,IAAIC,EAA6C,oBAAX1zE,OAAyBA,OAAO,8BAA2BtJ,EA0DjG,SAASi9E,EAAsBh9D,EAAQi9D,GAKrC,IAAKj9D,EAAQ,CACX,IAAIk9D,EAAY,IAAIhtE,MAAM,2CAC1BgtE,EAAUl9D,OAASA,EACnBA,EAASk9D,CACX,CACA,OAAOD,EAAGj9D,EACZ,CAnEAnnB,EAAQskF,UAAY,SAAmBv9E,GACrC,GAAwB,mBAAbA,EACT,MAAM,IAAIhD,UAAU,oDAEtB,GAAImgF,GAA4Bn9E,EAASm9E,GAA2B,CAClE,IAAIjrE,EACJ,GAAkB,mBADdA,EAAKlS,EAASm9E,IAEhB,MAAM,IAAIngF,UAAU,iEAKtB,OAHAjE,OAAOC,eAAekZ,EAAIirE,EAA0B,CAClDjkF,MAAOgZ,EAAI/Y,YAAY,EAAOuD,UAAU,EAAOD,cAAc,IAExDyV,CACT,CAEA,SAASA,IAQP,IAPA,IAAIsrE,EAAgBC,EAChB39D,EAAU,IAAI9E,SAAQ,SAAUC,EAASC,GAC3CsiE,EAAiBviE,EACjBwiE,EAAgBviE,CAClB,IAEIwL,EAAO,GACFpqB,EAAI,EAAGA,EAAI4D,UAAU3D,OAAQD,IACpCoqB,EAAK7sB,KAAKqG,UAAU5D,IAEtBoqB,EAAK7sB,MAAK,SAAU6iB,EAAKxjB,GACnBwjB,EACF+gE,EAAc/gE,GAEd8gE,EAAetkF,EAEnB,IAEA,IACE8G,EAAS0E,MAAMxH,KAAMwpB,EAGvB,CAFE,MAAOhK,GACP+gE,EAAc/gE,EAChB,CAEA,OAAOoD,CACT,CAOA,OALA/mB,OAAO4+B,eAAezlB,EAAInZ,OAAOmyB,eAAelrB,IAE5Cm9E,GAA0BpkF,OAAOC,eAAekZ,EAAIirE,EAA0B,CAChFjkF,MAAOgZ,EAAI/Y,YAAY,EAAOuD,UAAU,EAAOD,cAAc,IAExD1D,OAAO+L,iBACZoN,EACArN,EAA0B7E,GAE9B,EAEA/G,EAAQskF,UAAUrW,OAASiW,EAiD3BlkF,EAAQykF,YAlCR,SAAqB19E,GACnB,GAAwB,mBAAbA,EACT,MAAM,IAAIhD,UAAU,oDAMtB,SAAS2gF,IAEP,IADA,IAAIj3D,EAAO,GACFpqB,EAAI,EAAGA,EAAI4D,UAAU3D,OAAQD,IACpCoqB,EAAK7sB,KAAKqG,UAAU5D,IAGtB,IAAIshF,EAAUl3D,EAAKuD,MACnB,GAAuB,mBAAZ2zD,EACT,MAAM,IAAI5gF,UAAU,8CAEtB,IAAIsG,EAAOpG,KACPmgF,EAAK,WACP,OAAOO,EAAQl5E,MAAMpB,EAAMpD,UAC7B,EAGAF,EAAS0E,MAAMxH,KAAMwpB,GAClB3G,MAAK,SAAS4xD,GAAO3sD,EAAQ64D,SAASR,EAAG7xE,KAAK,KAAM,KAAMmmE,GAAM,IAC3D,SAASmM,GAAO94D,EAAQ64D,SAAST,EAAsB5xE,KAAK,KAAMsyE,EAAKT,GAAK,GACtF,CAKA,OAHAtkF,OAAO4+B,eAAegmD,EAAe5kF,OAAOmyB,eAAelrB,IAC3DjH,OAAO+L,iBAAiB64E,EACA94E,EAA0B7E,IAC3C29E,CACT,yBCvsBA,IAAIjV,EAAc,SAAUxvE,GAC3B,OAAOA,GAAUA,CAClB,EAEAqK,EAAOtK,QAAU,SAAY2G,EAAGC,GAC/B,OAAU,IAAND,GAAiB,IAANC,EACP,EAAID,GAAM,EAAIC,EAElBD,IAAMC,MAGN6oE,EAAY9oE,KAAM8oE,EAAY7oE,GAInC,8BCfA,IAAI+0B,EAAS,EAAQ,MACjB7G,EAAW,EAAQ,MAEnBke,EAAiB,EAAQ,MACzBiZ,EAAc,EAAQ,MACtBC,EAAO,EAAQ,MAEf5Z,EAAWxd,EAASm3B,IAAensD,QAEvC67B,EAAO2W,EAAU,CAChB2Z,YAAaA,EACbjZ,eAAgBA,EAChBkZ,KAAMA,IAGP5hD,EAAOtK,QAAUsyC,+BCfjB,IAAIU,EAAiB,EAAQ,MAE7B1oC,EAAOtK,QAAU,WAChB,MAA4B,mBAAdF,OAAOqO,GAAoBrO,OAAOqO,GAAK6kC,CACtD,+BCJA,IAAIiZ,EAAc,EAAQ,MACtBtwB,EAAS,EAAQ,MAErBrxB,EAAOtK,QAAU,WAChB,IAAIsyC,EAAW2Z,IAMf,OALAtwB,EAAO77B,OAAQ,CAAEqO,GAAImkC,GAAY,CAChCnkC,GAAI,WACH,OAAOrO,OAAOqO,KAAOmkC,CACtB,IAEMA,CACR,+BCXA,IAAIwyC,EACJ,IAAKhlF,OAAOwL,KAAM,CAEjB,IAAI8tB,EAAMt5B,OAAO6E,UAAUoX,eACvB41B,EAAQ7xC,OAAO6E,UAAUmC,SACzBi+E,EAAS,EAAQ,MACjBC,EAAellF,OAAO6E,UAAUggC,qBAChCsgD,GAAkBD,EAAar0E,KAAK,CAAE7J,SAAU,MAAQ,YACxDo+E,EAAkBF,EAAar0E,MAAK,WAAa,GAAG,aACpDw0E,EAAY,CACf,WACA,iBACA,UACA,iBACA,gBACA,uBACA,eAEGC,EAA6B,SAAUr6E,GAC1C,IAAImgD,EAAOngD,EAAE8F,YACb,OAAOq6C,GAAQA,EAAKvmD,YAAcoG,CACnC,EACIs6E,EAAe,CAClBC,mBAAmB,EACnBC,UAAU,EACVC,WAAW,EACXC,QAAQ,EACRC,eAAe,EACfC,SAAS,EACTC,cAAc,EACdC,aAAa,EACbC,wBAAwB,EACxBC,uBAAuB,EACvBC,cAAc,EACdC,aAAa,EACbC,cAAc,EACdC,cAAc,EACdhxE,SAAS,EACTixE,aAAa,EACbC,YAAY,EACZC,UAAU,EACVC,UAAU,EACVC,OAAO,EACPC,kBAAkB,EAClBC,oBAAoB,EACpBC,SAAS,GAENC,EAA4B,WAE/B,GAAsB,oBAAXvhF,OAA0B,OAAO,EAC5C,IAAK,IAAI4S,KAAK5S,OACb,IACC,IAAKggF,EAAa,IAAMptE,IAAMmhB,EAAIzoB,KAAKtL,OAAQ4S,IAAoB,OAAd5S,OAAO4S,IAAoC,iBAAd5S,OAAO4S,GACxF,IACCmtE,EAA2B//E,OAAO4S,GAGnC,CAFE,MAAO9W,GACR,OAAO,CACR,CAIF,CAFE,MAAOA,GACR,OAAO,CACR,CAED,OAAO,CACR,CAjB+B,GA8B/B2jF,EAAW,SAAc1uD,GACxB,IAAI1J,EAAsB,OAAX0J,GAAqC,iBAAXA,EACrClE,EAAoC,sBAAvByf,EAAMhhC,KAAKylB,GACxB+6B,EAAc4zB,EAAO3uD,GACrBlJ,EAAWR,GAAmC,oBAAvBilB,EAAMhhC,KAAKylB,GAClCywD,EAAU,GAEd,IAAKn6D,IAAawF,IAAei/B,EAChC,MAAM,IAAIptD,UAAU,sCAGrB,IAAI+iF,EAAY5B,GAAmBhzD,EACnC,GAAIhF,GAAYkJ,EAAO9yB,OAAS,IAAM81B,EAAIzoB,KAAKylB,EAAQ,GACtD,IAAK,IAAI/yB,EAAI,EAAGA,EAAI+yB,EAAO9yB,SAAUD,EACpCwjF,EAAQjmF,KAAK6L,OAAOpJ,IAItB,GAAI8tD,GAAe/6B,EAAO9yB,OAAS,EAClC,IAAK,IAAIwc,EAAI,EAAGA,EAAIsW,EAAO9yB,SAAUwc,EACpC+mE,EAAQjmF,KAAK6L,OAAOqT,SAGrB,IAAK,IAAIxb,KAAQ8xB,EACV0wD,GAAsB,cAATxiF,IAAyB80B,EAAIzoB,KAAKylB,EAAQ9xB,IAC5DuiF,EAAQjmF,KAAK6L,OAAOnI,IAKvB,GAAI2gF,EAGH,IAFA,IAAI8B,EA3CqC,SAAUh8E,GAEpD,GAAsB,oBAAX1F,SAA2BuhF,EACrC,OAAOxB,EAA2Br6E,GAEnC,IACC,OAAOq6E,EAA2Br6E,EAGnC,CAFE,MAAO5J,GACR,OAAO,CACR,CACD,CAiCwB6lF,CAAqC5wD,GAElDne,EAAI,EAAGA,EAAIktE,EAAU7hF,SAAU2U,EACjC8uE,GAAoC,gBAAjB5B,EAAUltE,KAAyBmhB,EAAIzoB,KAAKylB,EAAQ+uD,EAAUltE,KACtF4uE,EAAQjmF,KAAKukF,EAAUltE,IAI1B,OAAO4uE,CACR,CACD,CACAv8E,EAAOtK,QAAU8kF,+BCvHjB,IAAIl0E,EAAQxF,MAAMzG,UAAUiM,MACxBm0E,EAAS,EAAQ,MAEjBkC,EAAWnnF,OAAOwL,KAClBw5E,EAAWmC,EAAW,SAAcl8E,GAAK,OAAOk8E,EAASl8E,EAAI,EAAI,EAAQ,MAEzEm8E,EAAepnF,OAAOwL,KAE1Bw5E,EAAS54B,KAAO,WACf,GAAIpsD,OAAOwL,KAAM,CAChB,IAAI67E,EAA0B,WAE7B,IAAI15D,EAAO3tB,OAAOwL,KAAKrE,WACvB,OAAOwmB,GAAQA,EAAKnqB,SAAW2D,UAAU3D,MAC1C,CAJ6B,CAI3B,EAAG,GACA6jF,IACJrnF,OAAOwL,KAAO,SAAc8qB,GAC3B,OAAI2uD,EAAO3uD,GACH8wD,EAAat2E,EAAMD,KAAKylB,IAEzB8wD,EAAa9wD,EACrB,EAEF,MACCt2B,OAAOwL,KAAOw5E,EAEf,OAAOhlF,OAAOwL,MAAQw5E,CACvB,EAEAx6E,EAAOtK,QAAU8kF,yBC7BjB,IAAInzC,EAAQ7xC,OAAO6E,UAAUmC,SAE7BwD,EAAOtK,QAAU,SAAqBC,GACrC,IAAI8xB,EAAM4f,EAAMhhC,KAAK1Q,GACjB8kF,EAAiB,uBAARhzD,EASb,OARKgzD,IACJA,EAAiB,mBAARhzD,GACE,OAAV9xB,GACiB,iBAAVA,GACiB,iBAAjBA,EAAMqD,QACbrD,EAAMqD,QAAU,GACa,sBAA7BquC,EAAMhhC,KAAK1Q,EAAMu6B,SAEZuqD,CACR,YCfA,IAOIqC,EACAC,EARAt7D,EAAUzhB,EAAOtK,QAAU,CAAC,EAUhC,SAASsnF,IACL,MAAM,IAAIjwE,MAAM,kCACpB,CACA,SAASkwE,IACL,MAAM,IAAIlwE,MAAM,oCACpB,CAqBA,SAASmwE,EAAWC,GAChB,GAAIL,IAAqBhrE,WAErB,OAAOA,WAAWqrE,EAAK,GAG3B,IAAKL,IAAqBE,IAAqBF,IAAqBhrE,WAEhE,OADAgrE,EAAmBhrE,WACZA,WAAWqrE,EAAK,GAE3B,IAEI,OAAOL,EAAiBK,EAAK,EASjC,CARE,MAAMtmF,GACJ,IAEI,OAAOimF,EAAiBz2E,KAAK,KAAM82E,EAAK,EAI5C,CAHE,MAAMtmF,GAEJ,OAAOimF,EAAiBz2E,KAAK1M,KAAMwjF,EAAK,EAC5C,CACJ,CAGJ,EA5CC,WACG,IAEQL,EADsB,mBAAfhrE,WACYA,WAEAkrE,CAI3B,CAFE,MAAOnmF,GACLimF,EAAmBE,CACvB,CACA,IAEQD,EADwB,mBAAjB/qE,aACcA,aAEAirE,CAI7B,CAFE,MAAOpmF,GACLkmF,EAAqBE,CACzB,CACJ,CAnBA,GAwEA,IAEIG,EAFAC,EAAQ,GACRC,GAAW,EAEXC,GAAc,EAElB,SAASC,IACAF,GAAaF,IAGlBE,GAAW,EACPF,EAAapkF,OACbqkF,EAAQD,EAAa1iF,OAAO2iF,GAE5BE,GAAc,EAEdF,EAAMrkF,QACNykF,IAER,CAEA,SAASA,IACL,IAAIH,EAAJ,CAGA,IAAI/jE,EAAU2jE,EAAWM,GACzBF,GAAW,EAGX,IADA,IAAI3zD,EAAM0zD,EAAMrkF,OACV2wB,GAAK,CAGP,IAFAyzD,EAAeC,EACfA,EAAQ,KACCE,EAAa5zD,GACdyzD,GACAA,EAAaG,GAAYG,MAGjCH,GAAc,EACd5zD,EAAM0zD,EAAMrkF,MAChB,CACAokF,EAAe,KACfE,GAAW,EAnEf,SAAyBK,GACrB,GAAIZ,IAAuB/qE,aAEvB,OAAOA,aAAa2rE,GAGxB,IAAKZ,IAAuBE,IAAwBF,IAAuB/qE,aAEvE,OADA+qE,EAAqB/qE,aACdA,aAAa2rE,GAExB,IAEWZ,EAAmBY,EAU9B,CATE,MAAO9mF,GACL,IAEI,OAAOkmF,EAAmB12E,KAAK,KAAMs3E,EAKzC,CAJE,MAAO9mF,GAGL,OAAOkmF,EAAmB12E,KAAK1M,KAAMgkF,EACzC,CACJ,CAIJ,CA0CIC,CAAgBrkE,EAlBhB,CAmBJ,CAgBA,SAASskE,EAAKV,EAAKzuD,GACf/0B,KAAKwjF,IAAMA,EACXxjF,KAAK+0B,MAAQA,CACjB,CAWA,SAASovD,IAAQ,CA5BjBr8D,EAAQ64D,SAAW,SAAU6C,GACzB,IAAIh6D,EAAO,IAAIriB,MAAMnE,UAAU3D,OAAS,GACxC,GAAI2D,UAAU3D,OAAS,EACnB,IAAK,IAAID,EAAI,EAAGA,EAAI4D,UAAU3D,OAAQD,IAClCoqB,EAAKpqB,EAAI,GAAK4D,UAAU5D,GAGhCskF,EAAM/mF,KAAK,IAAIunF,EAAKV,EAAKh6D,IACJ,IAAjBk6D,EAAMrkF,QAAiBskF,GACvBJ,EAAWO,EAEnB,EAOAI,EAAKxjF,UAAUqjF,IAAM,WACjB/jF,KAAKwjF,IAAIh8E,MAAM,KAAMxH,KAAK+0B,MAC9B,EACAjN,EAAQnX,MAAQ,UAChBmX,EAAQs8D,SAAU,EAClBt8D,EAAQc,IAAM,CAAC,EACfd,EAAQu8D,KAAO,GACfv8D,EAAQxW,QAAU,GAClBwW,EAAQiW,SAAW,CAAC,EAIpBjW,EAAQzS,GAAK8uE,EACbr8D,EAAQw8D,YAAcH,EACtBr8D,EAAQy8D,KAAOJ,EACfr8D,EAAQpN,IAAMypE,EACdr8D,EAAQ08D,eAAiBL,EACzBr8D,EAAQ28D,mBAAqBN,EAC7Br8D,EAAQrnB,KAAO0jF,EACfr8D,EAAQ48D,gBAAkBP,EAC1Br8D,EAAQ68D,oBAAsBR,EAE9Br8D,EAAQtd,UAAY,SAAUnK,GAAQ,MAAO,EAAG,EAEhDynB,EAAQguC,QAAU,SAAUz1D,GACxB,MAAM,IAAI+S,MAAM,mCACpB,EAEA0U,EAAQ88D,IAAM,WAAc,MAAO,GAAI,EACvC98D,EAAQ+8D,MAAQ,SAAUjT,GACtB,MAAM,IAAIx+D,MAAM,iCACpB,EACA0U,EAAQg9D,MAAQ,WAAa,OAAO,CAAG,kBCvLvC,MAAMljF,EAAQ,EAAQ,OAChB,WAAEmjF,EAAU,iBAAE37C,GAAqB,EAAQ,OAC3C,GAAEvK,EAAE,EAAEv4B,GAAM,EAAQ,MAEpB0+E,EAAe,EAAQ,OACvB,mBAAEC,GAAuB,EAAQ,MACvC,MAAMC,EACJt4E,YAAa0E,EAASzN,GAGpB,GAFAA,EAAUmhF,EAAanhF,GAEnByN,aAAmB4zE,EAAQ,CAC7B,GAAI5zE,EAAQ6zE,UAAYthF,EAAQshF,OAC5B7zE,EAAQ8zE,sBAAwBvhF,EAAQuhF,kBAC1C,OAAO9zE,EAEPA,EAAUA,EAAQA,OAEtB,MAAO,GAAuB,iBAAZA,EAChB,MAAM,IAAIxR,UAAU,oBAAoBwR,KAG1C,GAAIA,EAAQjS,OAAS0lF,EACnB,MAAM,IAAIjlF,UACR,0BAA0BilF,gBAI9BnjF,EAAM,SAAU0P,EAASzN,GACzB7D,KAAK6D,QAAUA,EACf7D,KAAKmlF,QAAUthF,EAAQshF,MAGvBnlF,KAAKolF,oBAAsBvhF,EAAQuhF,kBAEnC,MAAM39E,EAAI6J,EAAQrG,OAAOuf,MAAM3mB,EAAQshF,MAAQtmD,EAAGv4B,EAAE++E,OAASxmD,EAAGv4B,EAAEg/E,OAElE,IAAK79E,EACH,MAAM,IAAI3H,UAAU,oBAAoBwR,KAU1C,GAPAtR,KAAKulF,IAAMj0E,EAGXtR,KAAKwlF,OAAS/9E,EAAE,GAChBzH,KAAKylF,OAASh+E,EAAE,GAChBzH,KAAK0lF,OAASj+E,EAAE,GAEZzH,KAAKwlF,MAAQp8C,GAAoBppC,KAAKwlF,MAAQ,EAChD,MAAM,IAAI1lF,UAAU,yBAGtB,GAAIE,KAAKylF,MAAQr8C,GAAoBppC,KAAKylF,MAAQ,EAChD,MAAM,IAAI3lF,UAAU,yBAGtB,GAAIE,KAAK0lF,MAAQt8C,GAAoBppC,KAAK0lF,MAAQ,EAChD,MAAM,IAAI5lF,UAAU,yBAIjB2H,EAAE,GAGLzH,KAAK2lF,WAAal+E,EAAE,GAAGqkB,MAAM,KAAKla,KAAKP,IACrC,GAAI,WAAWxE,KAAKwE,GAAK,CACvB,MAAMqf,GAAOrf,EACb,GAAIqf,GAAO,GAAKA,EAAM0Y,EACpB,OAAO1Y,CAEX,CACA,OAAOrf,KATTrR,KAAK2lF,WAAa,GAapB3lF,KAAKoQ,MAAQ3I,EAAE,GAAKA,EAAE,GAAGqkB,MAAM,KAAO,GACtC9rB,KAAKkyB,QACP,CAEAA,SAKE,OAJAlyB,KAAKsR,QAAU,GAAGtR,KAAKwlF,SAASxlF,KAAKylF,SAASzlF,KAAK0lF,QAC/C1lF,KAAK2lF,WAAWtmF,SAClBW,KAAKsR,SAAW,IAAItR,KAAK2lF,WAAW9zE,KAAK,QAEpC7R,KAAKsR,OACd,CAEAzO,WACE,OAAO7C,KAAKsR,OACd,CAEAk7D,QAASliB,GAEP,GADA1oD,EAAM,iBAAkB5B,KAAKsR,QAAStR,KAAK6D,QAASymD,KAC9CA,aAAiB46B,GAAS,CAC9B,GAAqB,iBAAV56B,GAAsBA,IAAUtqD,KAAKsR,QAC9C,OAAO,EAETg5C,EAAQ,IAAI46B,EAAO56B,EAAOtqD,KAAK6D,QACjC,CAEA,OAAIymD,EAAMh5C,UAAYtR,KAAKsR,QAClB,EAGFtR,KAAK4lF,YAAYt7B,IAAUtqD,KAAK6lF,WAAWv7B,EACpD,CAEAs7B,YAAat7B,GAKX,OAJMA,aAAiB46B,IACrB56B,EAAQ,IAAI46B,EAAO56B,EAAOtqD,KAAK6D,UAI/BohF,EAAmBjlF,KAAKwlF,MAAOl7B,EAAMk7B,QACrCP,EAAmBjlF,KAAKylF,MAAOn7B,EAAMm7B,QACrCR,EAAmBjlF,KAAK0lF,MAAOp7B,EAAMo7B,MAEzC,CAEAG,WAAYv7B,GAMV,GALMA,aAAiB46B,IACrB56B,EAAQ,IAAI46B,EAAO56B,EAAOtqD,KAAK6D,UAI7B7D,KAAK2lF,WAAWtmF,SAAWirD,EAAMq7B,WAAWtmF,OAC9C,OAAQ,EACH,IAAKW,KAAK2lF,WAAWtmF,QAAUirD,EAAMq7B,WAAWtmF,OACrD,OAAO,EACF,IAAKW,KAAK2lF,WAAWtmF,SAAWirD,EAAMq7B,WAAWtmF,OACtD,OAAO,EAGT,IAAID,EAAI,EACR,EAAG,CACD,MAAMsD,EAAI1C,KAAK2lF,WAAWvmF,GACpBuD,EAAI2nD,EAAMq7B,WAAWvmF,GAE3B,GADAwC,EAAM,qBAAsBxC,EAAGsD,EAAGC,QACxBM,IAANP,QAAyBO,IAANN,EACrB,OAAO,EACF,QAAUM,IAANN,EACT,OAAO,EACF,QAAUM,IAANP,EACT,OAAQ,EACH,GAAIA,IAAMC,EAGf,OAAOsiF,EAAmBviF,EAAGC,EAEjC,SAAWvD,EACb,CAEA0mF,aAAcx7B,GACNA,aAAiB46B,IACrB56B,EAAQ,IAAI46B,EAAO56B,EAAOtqD,KAAK6D,UAGjC,IAAIzE,EAAI,EACR,EAAG,CACD,MAAMsD,EAAI1C,KAAKoQ,MAAMhR,GACfuD,EAAI2nD,EAAMl6C,MAAMhR,GAEtB,GADAwC,EAAM,qBAAsBxC,EAAGsD,EAAGC,QACxBM,IAANP,QAAyBO,IAANN,EACrB,OAAO,EACF,QAAUM,IAANN,EACT,OAAO,EACF,QAAUM,IAANP,EACT,OAAQ,EACH,GAAIA,IAAMC,EAGf,OAAOsiF,EAAmBviF,EAAGC,EAEjC,SAAWvD,EACb,CAIA2mF,IAAKC,EAAS3zE,GACZ,OAAQ2zE,GACN,IAAK,WACHhmF,KAAK2lF,WAAWtmF,OAAS,EACzBW,KAAK0lF,MAAQ,EACb1lF,KAAKylF,MAAQ,EACbzlF,KAAKwlF,QACLxlF,KAAK+lF,IAAI,MAAO1zE,GAChB,MACF,IAAK,WACHrS,KAAK2lF,WAAWtmF,OAAS,EACzBW,KAAK0lF,MAAQ,EACb1lF,KAAKylF,QACLzlF,KAAK+lF,IAAI,MAAO1zE,GAChB,MACF,IAAK,WAIHrS,KAAK2lF,WAAWtmF,OAAS,EACzBW,KAAK+lF,IAAI,QAAS1zE,GAClBrS,KAAK+lF,IAAI,MAAO1zE,GAChB,MAGF,IAAK,aAC4B,IAA3BrS,KAAK2lF,WAAWtmF,QAClBW,KAAK+lF,IAAI,QAAS1zE,GAEpBrS,KAAK+lF,IAAI,MAAO1zE,GAChB,MAEF,IAAK,QAMc,IAAfrS,KAAKylF,OACU,IAAfzlF,KAAK0lF,OACsB,IAA3B1lF,KAAK2lF,WAAWtmF,QAEhBW,KAAKwlF,QAEPxlF,KAAKylF,MAAQ,EACbzlF,KAAK0lF,MAAQ,EACb1lF,KAAK2lF,WAAa,GAClB,MACF,IAAK,QAKgB,IAAf3lF,KAAK0lF,OAA0C,IAA3B1lF,KAAK2lF,WAAWtmF,QACtCW,KAAKylF,QAEPzlF,KAAK0lF,MAAQ,EACb1lF,KAAK2lF,WAAa,GAClB,MACF,IAAK,QAK4B,IAA3B3lF,KAAK2lF,WAAWtmF,QAClBW,KAAK0lF,QAEP1lF,KAAK2lF,WAAa,GAClB,MAGF,IAAK,MACH,GAA+B,IAA3B3lF,KAAK2lF,WAAWtmF,OAClBW,KAAK2lF,WAAa,CAAC,OACd,CACL,IAAIvmF,EAAIY,KAAK2lF,WAAWtmF,OACxB,OAASD,GAAK,GACsB,iBAAvBY,KAAK2lF,WAAWvmF,KACzBY,KAAK2lF,WAAWvmF,KAChBA,GAAK,IAGE,IAAPA,GAEFY,KAAK2lF,WAAWhpF,KAAK,EAEzB,CACI0V,IAGErS,KAAK2lF,WAAW,KAAOtzE,EACrBm2B,MAAMxoC,KAAK2lF,WAAW,MACxB3lF,KAAK2lF,WAAa,CAACtzE,EAAY,IAGjCrS,KAAK2lF,WAAa,CAACtzE,EAAY,IAGnC,MAEF,QACE,MAAM,IAAIe,MAAM,+BAA+B4yE,KAInD,OAFAhmF,KAAKkyB,SACLlyB,KAAKulF,IAAMvlF,KAAKsR,QACTtR,IACT,EAGFqG,EAAOtK,QAAUmpF,kBC9RjB,MAAMA,EAAS,EAAQ,MAEvB7+E,EAAOtK,QADO,CAAC2G,EAAGyiF,IAAU,IAAID,EAAOxiF,EAAGyiF,GAAOK,sBCDjD,MAAM,WAACT,GAAc,EAAQ,OACvB,GAAElmD,EAAE,EAAEv4B,GAAM,EAAQ,MACpB4+E,EAAS,EAAQ,MAEjBF,EAAe,EAAQ,MA4B7B3+E,EAAOtK,QA3BO,CAACuV,EAASzN,KAGtB,GAFAA,EAAUmhF,EAAanhF,GAEnByN,aAAmB4zE,EACrB,OAAO5zE,EAGT,GAAuB,iBAAZA,EACT,OAAO,KAGT,GAAIA,EAAQjS,OAAS0lF,EACnB,OAAO,KAIT,KADUlhF,EAAQshF,MAAQtmD,EAAGv4B,EAAE++E,OAASxmD,EAAGv4B,EAAEg/E,OACtCz4E,KAAKyE,GACV,OAAO,KAGT,IACE,OAAO,IAAI4zE,EAAO5zE,EAASzN,EAG7B,CAFE,MAAOoiF,GACP,OAAO,IACT,mBC7BF,MAAM/8D,EAAQ,EAAQ,MAKtB7iB,EAAOtK,QAJO,CAACuV,EAASzN,KACtB,MAAMqK,EAAIgb,EAAM5X,EAASzN,GACzB,OAAOqK,EAAIA,EAAEoD,QAAU,gBCDzB,MAGM83B,EAAmBjwB,OAAOiwB,kBACH,iBAK7B/iC,EAAOtK,QAAU,CACfmqF,oBAV0B,QAW1BnB,WATiB,IAUjB37C,mBACA+8C,0BANgC,4CCTlC,MAAMvkF,EACe,iBAAZkmB,GACPA,EAAQc,KACRd,EAAQc,IAAI+0D,YACZ,cAAc9wE,KAAKib,EAAQc,IAAI+0D,YAC7B,IAAIn0D,IAASpsB,EAAQC,MAAM,YAAamsB,GACxC,OAEJnjB,EAAOtK,QAAU6F,YCRjB,MAAMwkF,EAAU,WACVnB,EAAqB,CAACviF,EAAGC,KAC7B,MAAM0jF,EAAOD,EAAQv5E,KAAKnK,GACpB4jF,EAAOF,EAAQv5E,KAAKlK,GAO1B,OALI0jF,GAAQC,IACV5jF,GAAKA,EACLC,GAAKA,GAGAD,IAAMC,EAAI,EACZ0jF,IAASC,GAAS,EAClBA,IAASD,EAAQ,EAClB3jF,EAAIC,GAAK,EACT,GAKN0D,EAAOtK,QAAU,CACfkpF,qBACAsB,oBAJ0B,CAAC7jF,EAAGC,IAAMsiF,EAAmBtiF,EAAGD,cCf5D,MAAM2qB,EAAO,CAAC,oBAAqB,QAAS,OAQ5ChnB,EAAOtK,QAPc8H,GAClBA,EACoB,iBAAZA,EAAuB,CAAEshF,OAAO,GACvC93D,EAAKrsB,QAAOgT,GAAKnQ,EAAQmQ,KAAIirE,QAAO,CAACp7E,EAASmQ,KAC9CnQ,EAAQmQ,IAAK,EACNnQ,IACN,CAAC,GALO,CAAC,kBCJd,MAAM,0BAAEsiF,GAA8B,EAAQ,MACxCvkF,EAAQ,EAAQ,MAIhBi9B,GAHN9iC,EAAUsK,EAAOtK,QAAU,CAAC,GAGT8iC,GAAK,GAClBiG,EAAM/oC,EAAQ+oC,IAAM,GACpBx+B,EAAIvK,EAAQuK,EAAI,CAAC,EACvB,IAAI8/B,EAAI,EAER,MAAMogD,EAAc,CAACnmF,EAAMrE,EAAOyqF,KAChC,MAAMpjE,EAAQ+iB,IACdxkC,EAAMyhB,EAAOrnB,GACbsK,EAAEjG,GAAQgjB,EACVyhB,EAAIzhB,GAASrnB,EACb6iC,EAAGxb,GAAS,IAAIoH,OAAOzuB,EAAOyqF,EAAW,SAAMxjF,EAAS,EAS1DujF,EAAY,oBAAqB,eACjCA,EAAY,yBAA0B,UAMtCA,EAAY,uBAAwB,8BAKpCA,EAAY,cAAe,IAAI1hD,EAAIx+B,EAAEogF,0BACd5hD,EAAIx+B,EAAEogF,0BACN5hD,EAAIx+B,EAAEogF,uBAE7BF,EAAY,mBAAoB,IAAI1hD,EAAIx+B,EAAEqgF,+BACd7hD,EAAIx+B,EAAEqgF,+BACN7hD,EAAIx+B,EAAEqgF,4BAKlCH,EAAY,uBAAwB,MAAM1hD,EAAIx+B,EAAEogF,sBAC5C5hD,EAAIx+B,EAAEsgF,0BAEVJ,EAAY,4BAA6B,MAAM1hD,EAAIx+B,EAAEqgF,2BACjD7hD,EAAIx+B,EAAEsgF,0BAMVJ,EAAY,aAAc,QAAQ1hD,EAAIx+B,EAAEugF,8BAC/B/hD,EAAIx+B,EAAEugF,6BAEfL,EAAY,kBAAmB,SAAS1hD,EAAIx+B,EAAEwgF,mCACrChiD,EAAIx+B,EAAEwgF,kCAKfN,EAAY,kBAAmB,iBAM/BA,EAAY,QAAS,UAAU1hD,EAAIx+B,EAAEygF,yBAC5BjiD,EAAIx+B,EAAEygF,wBAWfP,EAAY,YAAa,KAAK1hD,EAAIx+B,EAAE0gF,eACjCliD,EAAIx+B,EAAE2gF,eACPniD,EAAIx+B,EAAE4gF,WAERV,EAAY,OAAQ,IAAI1hD,EAAIx+B,EAAE6gF,eAK9BX,EAAY,aAAc,WAAW1hD,EAAIx+B,EAAE8gF,oBACxCtiD,EAAIx+B,EAAE+gF,oBACPviD,EAAIx+B,EAAE4gF,WAERV,EAAY,QAAS,IAAI1hD,EAAIx+B,EAAEghF,gBAE/Bd,EAAY,OAAQ,gBAKpBA,EAAY,wBAAyB,GAAG1hD,EAAIx+B,EAAEqgF,mCAC9CH,EAAY,mBAAoB,GAAG1hD,EAAIx+B,EAAEogF,8BAEzCF,EAAY,cAAe,YAAY1hD,EAAIx+B,EAAEihF,4BAChBziD,EAAIx+B,EAAEihF,4BACNziD,EAAIx+B,EAAEihF,wBACVziD,EAAIx+B,EAAE2gF,gBACVniD,EAAIx+B,EAAE4gF,eAG3BV,EAAY,mBAAoB,YAAY1hD,EAAIx+B,EAAEkhF,iCAChB1iD,EAAIx+B,EAAEkhF,iCACN1iD,EAAIx+B,EAAEkhF,6BACV1iD,EAAIx+B,EAAE+gF,qBACVviD,EAAIx+B,EAAE4gF,eAGhCV,EAAY,SAAU,IAAI1hD,EAAIx+B,EAAEmhF,YAAY3iD,EAAIx+B,EAAEohF,iBAClDlB,EAAY,cAAe,IAAI1hD,EAAIx+B,EAAEmhF,YAAY3iD,EAAIx+B,EAAEqhF,sBAIvDnB,EAAY,SAAU,oBACIL,mBACIA,qBACAA,qBAE9BK,EAAY,YAAa1hD,EAAIx+B,EAAEshF,SAAS,GAIxCpB,EAAY,YAAa,WAEzBA,EAAY,YAAa,SAAS1hD,EAAIx+B,EAAEuhF,kBAAkB,GAC1D9rF,EAAQ+rF,iBAAmB,MAE3BtB,EAAY,QAAS,IAAI1hD,EAAIx+B,EAAEuhF,aAAa/iD,EAAIx+B,EAAEohF,iBAClDlB,EAAY,aAAc,IAAI1hD,EAAIx+B,EAAEuhF,aAAa/iD,EAAIx+B,EAAEqhF,sBAIvDnB,EAAY,YAAa,WAEzBA,EAAY,YAAa,SAAS1hD,EAAIx+B,EAAEyhF,kBAAkB,GAC1DhsF,EAAQisF,iBAAmB,MAE3BxB,EAAY,QAAS,IAAI1hD,EAAIx+B,EAAEyhF,aAAajjD,EAAIx+B,EAAEohF,iBAClDlB,EAAY,aAAc,IAAI1hD,EAAIx+B,EAAEyhF,aAAajjD,EAAIx+B,EAAEqhF,sBAGvDnB,EAAY,kBAAmB,IAAI1hD,EAAIx+B,EAAEmhF,aAAa3iD,EAAIx+B,EAAEghF,oBAC5Dd,EAAY,aAAc,IAAI1hD,EAAIx+B,EAAEmhF,aAAa3iD,EAAIx+B,EAAE6gF,mBAIvDX,EAAY,iBAAkB,SAAS1hD,EAAIx+B,EAAEmhF,aACrC3iD,EAAIx+B,EAAEghF,eAAexiD,EAAIx+B,EAAEohF,iBAAiB,GACpD3rF,EAAQksF,sBAAwB,SAMhCzB,EAAY,cAAe,SAAS1hD,EAAIx+B,EAAEohF,0BAEnB5iD,EAAIx+B,EAAEohF,sBAG7BlB,EAAY,mBAAoB,SAAS1hD,EAAIx+B,EAAEqhF,+BAEnB7iD,EAAIx+B,EAAEqhF,2BAIlCnB,EAAY,OAAQ,mBAEpBA,EAAY,OAAQ,yBACpBA,EAAY,UAAW,kDCnLvB,IAAI0B,EAAc,GAElB,SAASC,EAAqB91E,GAG5B,IAFA,IAAIqb,GAAU,EAELtuB,EAAI,EAAGA,EAAI8oF,EAAY7oF,OAAQD,IACtC,GAAI8oF,EAAY9oF,GAAGiT,aAAeA,EAAY,CAC5Cqb,EAAStuB,EACT,KACF,CAGF,OAAOsuB,CACT,CAEA,SAAS06D,EAAar7C,EAAMlpC,GAI1B,IAHA,IAAIwkF,EAAa,CAAC,EACdC,EAAc,GAETlpF,EAAI,EAAGA,EAAI2tC,EAAK1tC,OAAQD,IAAK,CACpC,IAAI4tC,EAAOD,EAAK3tC,GACZiS,EAAKxN,EAAQyO,KAAO06B,EAAK,GAAKnpC,EAAQyO,KAAO06B,EAAK,GAClD1pC,EAAQ+kF,EAAWh3E,IAAO,EAC1BgB,EAAa,GAAGtR,OAAOsQ,EAAI,KAAKtQ,OAAOuC,GAC3C+kF,EAAWh3E,GAAM/N,EAAQ,EACzB,IAAIilF,EAAoBJ,EAAqB91E,GACzCxU,EAAM,CACR0U,IAAKy6B,EAAK,GACVx6B,MAAOw6B,EAAK,GACZv6B,UAAWu6B,EAAK,GAChBt6B,SAAUs6B,EAAK,GACfr6B,MAAOq6B,EAAK,IAGd,IAA2B,IAAvBu7C,EACFL,EAAYK,GAAmB31E,aAC/Bs1E,EAAYK,GAAmB11E,QAAQhV,OAClC,CACL,IAAIgV,EAAU21E,EAAgB3qF,EAAKgG,GACnCA,EAAQiP,QAAU1T,EAClB8oF,EAAYn1E,OAAO3T,EAAG,EAAG,CACvBiT,WAAYA,EACZQ,QAASA,EACTD,WAAY,GAEhB,CAEA01E,EAAY3rF,KAAK0V,EACnB,CAEA,OAAOi2E,CACT,CAEA,SAASE,EAAgB3qF,EAAKgG,GAC5B,IAAI4kF,EAAM5kF,EAAQ0K,OAAO1K,GACzB4kF,EAAIz1E,OAAOnV,GAcX,OAZc,SAAiB6qF,GAC7B,GAAIA,EAAQ,CACV,GAAIA,EAAOn2E,MAAQ1U,EAAI0U,KAAOm2E,EAAOl2E,QAAU3U,EAAI2U,OAASk2E,EAAOj2E,YAAc5U,EAAI4U,WAAai2E,EAAOh2E,WAAa7U,EAAI6U,UAAYg2E,EAAO/1E,QAAU9U,EAAI8U,MACzJ,OAGF81E,EAAIz1E,OAAOnV,EAAM6qF,EACnB,MACED,EAAIx7E,QAER,CAGF,CAEA5G,EAAOtK,QAAU,SAAUgxC,EAAMlpC,GAG/B,IAAI8kF,EAAkBP,EADtBr7C,EAAOA,GAAQ,GADflpC,EAAUA,GAAW,CAAC,GAGtB,OAAO,SAAgB+kF,GACrBA,EAAUA,GAAW,GAErB,IAAK,IAAIxpF,EAAI,EAAGA,EAAIupF,EAAgBtpF,OAAQD,IAAK,CAC/C,IACIikB,EAAQ8kE,EADKQ,EAAgBvpF,IAEjC8oF,EAAY7kE,GAAOzQ,YACrB,CAIA,IAFA,IAAIi2E,EAAqBT,EAAaQ,EAAS/kF,GAEtConE,EAAK,EAAGA,EAAK0d,EAAgBtpF,OAAQ4rE,IAAM,CAClD,IAEI6d,EAASX,EAFKQ,EAAgB1d,IAIK,IAAnCid,EAAYY,GAAQl2E,aACtBs1E,EAAYY,GAAQj2E,UAEpBq1E,EAAYn1E,OAAO+1E,EAAQ,GAE/B,CAEAH,EAAkBE,CACpB,CACF,wBCrGA,IAAI1a,EAAO,CAAC,EAoCZ9nE,EAAOtK,QAVP,SAA0BsS,EAAQiH,GAChC,IAAIpW,EAxBN,SAAmBA,GACjB,QAA4B,IAAjBivE,EAAKjvE,GAAyB,CACvC,IAAI6pF,EAAcjsF,SAASiM,cAAc7J,GAEzC,GAAIkC,OAAO6R,mBAAqB81E,aAAuB3nF,OAAO6R,kBAC5D,IAGE81E,EAAcA,EAAY71E,gBAAgBC,IAI5C,CAHE,MAAOjW,GAEP6rF,EAAc,IAChB,CAGF5a,EAAKjvE,GAAU6pF,CACjB,CAEA,OAAO5a,EAAKjvE,EACd,CAKe8pF,CAAU36E,GAEvB,IAAKnP,EACH,MAAM,IAAIkU,MAAM,2GAGlBlU,EAAOmU,YAAYiC,EACrB,yBC1BAjP,EAAOtK,QAPP,SAA4B8H,GAC1B,IAAIuxC,EAAUt4C,SAASwW,cAAc,SAGrC,OAFAzP,EAAQuK,cAAcgnC,EAASvxC,EAAQ0P,YACvC1P,EAAQwK,OAAO+mC,EAASvxC,EAAQA,SACzBuxC,CACT,+BCGA/uC,EAAOtK,QARP,SAAwCktF,GACtC,IAAIC,EAAmD,KAEnDA,GACFD,EAAa73E,aAAa,QAAS83E,EAEvC,yBC4DA7iF,EAAOtK,QAZP,SAAgB8H,GACd,IAAIolF,EAAeplF,EAAQ2K,mBAAmB3K,GAC9C,MAAO,CACLmP,OAAQ,SAAgBnV,IAzD5B,SAAeorF,EAAcplF,EAAShG,GACpC,IAAI0U,EAAM,GAEN1U,EAAI6U,WACNH,GAAO,cAAcxR,OAAOlD,EAAI6U,SAAU,QAGxC7U,EAAI2U,QACND,GAAO,UAAUxR,OAAOlD,EAAI2U,MAAO,OAGrC,IAAIy6B,OAAiC,IAAdpvC,EAAI8U,MAEvBs6B,IACF16B,GAAO,SAASxR,OAAOlD,EAAI8U,MAAMtT,OAAS,EAAI,IAAI0B,OAAOlD,EAAI8U,OAAS,GAAI,OAG5EJ,GAAO1U,EAAI0U,IAEP06B,IACF16B,GAAO,KAGL1U,EAAI2U,QACND,GAAO,KAGL1U,EAAI6U,WACNH,GAAO,KAGT,IAAIE,EAAY5U,EAAI4U,UAEhBA,GAA6B,oBAATR,OACtBM,GAAO,uDAAuDxR,OAAOkR,KAAKC,SAAS9M,mBAAmB+M,KAAKC,UAAUK,MAAe,QAMtI5O,EAAQsK,kBAAkBoE,EAAK02E,EAAcplF,EAAQA,QACvD,CAiBM2D,CAAMyhF,EAAcplF,EAAShG,EAC/B,EACAoP,OAAQ,YAjBZ,SAA4Bg8E,GAE1B,GAAgC,OAA5BA,EAAax1E,WACf,OAAO,EAGTw1E,EAAax1E,WAAWC,YAAYu1E,EACtC,CAWME,CAAmBF,EACrB,EAEJ,yBCpDA5iF,EAAOtK,QAZP,SAA2BwW,EAAK02E,GAC9B,GAAIA,EAAat1E,WACfs1E,EAAat1E,WAAWC,QAAUrB,MAC7B,CACL,KAAO02E,EAAap1E,YAClBo1E,EAAav1E,YAAYu1E,EAAap1E,YAGxCo1E,EAAa51E,YAAYvW,SAASgX,eAAevB,GACnD,CACF,+BCbe,SAAS2uD,EAAQrjE,GAG9B,OAAOqjE,EAAU,mBAAqB30D,QAAU,iBAAmBA,OAAOC,SAAW,SAAU3O,GAC7F,cAAcA,CAChB,EAAI,SAAUA,GACZ,OAAOA,GAAO,mBAAqB0O,QAAU1O,EAAI+O,cAAgBL,QAAU1O,IAAQ0O,OAAO7L,UAAY,gBAAkB7C,CAC1H,EAAGqjE,EAAQrjE,EACb,CCRe,SAASooE,EAAgBpoE,EAAK4B,EAAKzD,GAYhD,OAXIyD,KAAO5B,EACThC,OAAOC,eAAe+B,EAAK4B,EAAK,CAC9BzD,MAAOA,EACPC,YAAY,EACZsD,cAAc,EACdC,UAAU,IAGZ3B,EAAI4B,GAAOzD,EAGN6B,CACT,CCbA,SAASoB,EAAkBC,EAAQC,GACjC,IAAK,IAAIC,EAAI,EAAGA,EAAID,EAAME,OAAQD,IAAK,CACrC,IAAIE,EAAaH,EAAMC,GACvBE,EAAWrD,WAAaqD,EAAWrD,aAAc,EACjDqD,EAAWC,cAAe,EACtB,UAAWD,IAAYA,EAAWE,UAAW,GACjD3D,OAAOC,eAAeoD,EAAQI,EAAWG,IAAKH,EAChD,CACF,6JCgBI8pF,EAA8B,oBAAXhoF,QAA8C,oBAAbtE,UAAiD,oBAAdiuB,UAEvFs+D,EAAkB,WAEpB,IADA,IAAIC,EAAwB,CAAC,OAAQ,UAAW,WACvClqF,EAAI,EAAGA,EAAIkqF,EAAsBjqF,OAAQD,GAAK,EACrD,GAAIgqF,GAAar+D,UAAUC,UAAUllB,QAAQwjF,EAAsBlqF,KAAO,EACxE,OAAO,EAGX,OAAO,CACT,CARsB,GAqCtB,IAWImqF,EAXqBH,GAAahoF,OAAO0c,QA3B7C,SAA2B9I,GACzB,IAAI8gB,GAAS,EACb,OAAO,WACDA,IAGJA,GAAS,EACT10B,OAAO0c,QAAQC,UAAU8E,MAAK,WAC5BiT,GAAS,EACT9gB,GACF,IACF,CACF,EAEA,SAAsBA,GACpB,IAAIw0E,GAAY,EAChB,OAAO,WACAA,IACHA,GAAY,EACZrxE,YAAW,WACTqxE,GAAY,EACZx0E,GACF,GAAGq0E,GAEP,CACF,EAsBA,SAASp7D,EAAWw7D,GAElB,OAAOA,GAA8D,sBADvD,CAAC,EACmB5mF,SAAS6J,KAAK+8E,EAClD,CASA,SAASC,EAAyBt0C,EAASL,GACzC,GAAyB,IAArBK,EAAQ2c,SACV,MAAO,GAGT,IACIx/C,EADS6iC,EAAQE,cAAcC,YAClBo0C,iBAAiBv0C,EAAS,MAC3C,OAAOL,EAAWxiC,EAAIwiC,GAAYxiC,CACpC,CASA,SAASq3E,EAAcx0C,GACrB,MAAyB,SAArBA,EAAQy0C,SACHz0C,EAEFA,EAAQ3hC,YAAc2hC,EAAQjqB,IACvC,CASA,SAAS2+D,EAAgB10C,GAEvB,IAAKA,EACH,OAAOt4C,SAASie,KAGlB,OAAQq6B,EAAQy0C,UACd,IAAK,OACL,IAAK,OACH,OAAOz0C,EAAQE,cAAcv6B,KAC/B,IAAK,YACH,OAAOq6B,EAAQr6B,KAKnB,IAAIgvE,EAAwBL,EAAyBt0C,GACjD40C,EAAWD,EAAsBC,SACjCC,EAAYF,EAAsBE,UAClCC,EAAYH,EAAsBG,UAEtC,MAAI,wBAAwBr9E,KAAKm9E,EAAWE,EAAYD,GAC/C70C,EAGF00C,EAAgBF,EAAcx0C,GACvC,CASA,SAAS+0C,EAAiBC,GACxB,OAAOA,GAAaA,EAAUC,cAAgBD,EAAUC,cAAgBD,CAC1E,CAEA,IAAIE,EAASlB,MAAgBhoF,OAAOmpF,uBAAwBztF,SAAS0tF,cACjEC,EAASrB,GAAa,UAAUv8E,KAAKke,UAAUC,WASnD,SAAS0/D,EAAKp5E,GACZ,OAAgB,KAAZA,EACKg5E,EAEO,KAAZh5E,EACKm5E,EAEFH,GAAUG,CACnB,CASA,SAASE,EAAgBv1C,GACvB,IAAKA,EACH,OAAOt4C,SAAS8tF,gBAQlB,IALA,IAAIC,EAAiBH,EAAK,IAAM5tF,SAASie,KAAO,KAG5C+vE,EAAe11C,EAAQ01C,cAAgB,KAEpCA,IAAiBD,GAAkBz1C,EAAQ21C,oBAChDD,GAAgB11C,EAAUA,EAAQ21C,oBAAoBD,aAGxD,IAAIjB,EAAWiB,GAAgBA,EAAajB,SAE5C,OAAKA,GAAyB,SAAbA,GAAoC,SAAbA,GAMsB,IAA1D,CAAC,KAAM,KAAM,SAAS/jF,QAAQglF,EAAajB,WAA2E,WAAvDH,EAAyBoB,EAAc,YACjGH,EAAgBG,GAGlBA,EATE11C,EAAUA,EAAQE,cAAcs1C,gBAAkB9tF,SAAS8tF,eAUtE,CAkBA,SAASI,EAAQx2C,GACf,OAAwB,OAApBA,EAAK/gC,WACAu3E,EAAQx2C,EAAK/gC,YAGf+gC,CACT,CAUA,SAASy2C,EAAuBC,EAAUC,GAExC,KAAKD,GAAaA,EAASn5B,UAAao5B,GAAaA,EAASp5B,UAC5D,OAAOj1D,SAAS8tF,gBAIlB,IAAIQ,EAAQF,EAASG,wBAAwBF,GAAYG,KAAKC,4BAC1DtzE,EAAQmzE,EAAQF,EAAWC,EAC3B16D,EAAM26D,EAAQD,EAAWD,EAGzBrR,EAAQ/8E,SAAS0uF,cACrB3R,EAAM4R,SAASxzE,EAAO,GACtB4hE,EAAM6R,OAAOj7D,EAAK,GAClB,IA/CyB2kB,EACrBy0C,EA8CA8B,EAA0B9R,EAAM8R,wBAIpC,GAAIT,IAAaS,GAA2BR,IAAaQ,GAA2B1zE,EAAM2zE,SAASn7D,GACjG,MAjDe,UAFbo5D,GADqBz0C,EAoDDu2C,GAnDD9B,WAKH,SAAbA,GAAuBc,EAAgBv1C,EAAQy2C,qBAAuBz2C,EAkDpEu1C,EAAgBgB,GAHdA,EAOX,IAAIG,EAAed,EAAQE,GAC3B,OAAIY,EAAa3gE,KACR8/D,EAAuBa,EAAa3gE,KAAMggE,GAE1CF,EAAuBC,EAAUF,EAAQG,GAAUhgE,KAE9D,CAUA,SAAS4gE,EAAU32C,GACjB,IAAI42C,EAAOhpF,UAAU3D,OAAS,QAAsB4D,IAAjBD,UAAU,GAAmBA,UAAU,GAAK,MAE3EipF,EAAqB,QAATD,EAAiB,YAAc,aAC3CnC,EAAWz0C,EAAQy0C,SAEvB,GAAiB,SAAbA,GAAoC,SAAbA,EAAqB,CAC9C,IAAI7lD,EAAOoR,EAAQE,cAAcs1C,gBAC7BsB,EAAmB92C,EAAQE,cAAc42C,kBAAoBloD,EACjE,OAAOkoD,EAAiBD,EAC1B,CAEA,OAAO72C,EAAQ62C,EACjB,CAWA,SAASE,EAAcC,EAAMh3C,GAC3B,IAAIi3C,EAAWrpF,UAAU3D,OAAS,QAAsB4D,IAAjBD,UAAU,IAAmBA,UAAU,GAE1EspF,EAAYP,EAAU32C,EAAS,OAC/Bm3C,EAAaR,EAAU32C,EAAS,QAChCo3C,EAAWH,GAAY,EAAI,EAK/B,OAJAD,EAAKK,KAAOH,EAAYE,EACxBJ,EAAKM,QAAUJ,EAAYE,EAC3BJ,EAAKO,MAAQJ,EAAaC,EAC1BJ,EAAKQ,OAASL,EAAaC,EACpBJ,CACT,CAYA,SAASS,EAAexO,EAAQyO,GAC9B,IAAIC,EAAiB,MAATD,EAAe,OAAS,MAChCE,EAAkB,SAAVD,EAAmB,QAAU,SAEzC,OAAOp8C,WAAW0tC,EAAO,SAAW0O,EAAQ,UAAYp8C,WAAW0tC,EAAO,SAAW2O,EAAQ,SAC/F,CAEA,SAASC,EAAQH,EAAM/xE,EAAMipB,EAAMkpD,GACjC,OAAOl8E,KAAKo3B,IAAIrtB,EAAK,SAAW+xE,GAAO/xE,EAAK,SAAW+xE,GAAO9oD,EAAK,SAAW8oD,GAAO9oD,EAAK,SAAW8oD,GAAO9oD,EAAK,SAAW8oD,GAAOpC,EAAK,IAAM95C,SAAS5M,EAAK,SAAW8oD,IAASl8C,SAASs8C,EAAc,UAAqB,WAATJ,EAAoB,MAAQ,UAAYl8C,SAASs8C,EAAc,UAAqB,WAATJ,EAAoB,SAAW,WAAa,EAC5U,CAEA,SAASK,EAAerwF,GACtB,IAAIie,EAAOje,EAASie,KAChBipB,EAAOlnC,EAAS8tF,gBAChBsC,EAAgBxC,EAAK,KAAOf,iBAAiB3lD,GAEjD,MAAO,CACLtnB,OAAQuwE,EAAQ,SAAUlyE,EAAMipB,EAAMkpD,GACtCvwE,MAAOswE,EAAQ,QAASlyE,EAAMipB,EAAMkpD,GAExC,CAEA,IAAIE,EAAiB,SAAUxtF,EAAUC,GACvC,KAAMD,aAAoBC,GACxB,MAAM,IAAIC,UAAU,oCAExB,EAEIutF,EAAc,WAChB,SAASzlF,EAAiB1I,EAAQC,GAChC,IAAK,IAAIC,EAAI,EAAGA,EAAID,EAAME,OAAQD,IAAK,CACrC,IAAIE,EAAaH,EAAMC,GACvBE,EAAWrD,WAAaqD,EAAWrD,aAAc,EACjDqD,EAAWC,cAAe,EACtB,UAAWD,IAAYA,EAAWE,UAAW,GACjD3D,OAAOC,eAAeoD,EAAQI,EAAWG,IAAKH,EAChD,CACF,CAEA,OAAO,SAAUO,EAAaM,EAAYC,GAGxC,OAFID,GAAYyH,EAAiB/H,EAAYa,UAAWP,GACpDC,GAAawH,EAAiB/H,EAAaO,GACxCP,CACT,CACF,CAhBkB,GAsBd/D,EAAiB,SAAU+B,EAAK4B,EAAKzD,GAYvC,OAXIyD,KAAO5B,EACThC,OAAOC,eAAe+B,EAAK4B,EAAK,CAC9BzD,MAAOA,EACPC,YAAY,EACZsD,cAAc,EACdC,UAAU,IAGZ3B,EAAI4B,GAAOzD,EAGN6B,CACT,EAEIyvF,EAAWzxF,OAAO2C,QAAU,SAAUU,GACxC,IAAK,IAAIE,EAAI,EAAGA,EAAI4D,UAAU3D,OAAQD,IAAK,CACzC,IAAIkkB,EAAStgB,UAAU5D,GAEvB,IAAK,IAAIK,KAAO6jB,EACVznB,OAAO6E,UAAUoX,eAAepL,KAAK4W,EAAQ7jB,KAC/CP,EAAOO,GAAO6jB,EAAO7jB,GAG3B,CAEA,OAAOP,CACT,EASA,SAASquF,EAAcC,GACrB,OAAOF,EAAS,CAAC,EAAGE,EAAS,CAC3BZ,MAAOY,EAAQb,KAAOa,EAAQ7wE,MAC9B+vE,OAAQc,EAAQf,IAAMe,EAAQ9wE,QAElC,CASA,SAAS+wE,EAAsBr4C,GAC7B,IAAIg3C,EAAO,CAAC,EAKZ,IACE,GAAI1B,EAAK,IAAK,CACZ0B,EAAOh3C,EAAQq4C,wBACf,IAAInB,EAAYP,EAAU32C,EAAS,OAC/Bm3C,EAAaR,EAAU32C,EAAS,QACpCg3C,EAAKK,KAAOH,EACZF,EAAKO,MAAQJ,EACbH,EAAKM,QAAUJ,EACfF,EAAKQ,OAASL,CAChB,MACEH,EAAOh3C,EAAQq4C,uBAEN,CAAX,MAAOvwF,GAAI,CAEb,IAAIwwB,EAAS,CACXi/D,KAAMP,EAAKO,KACXF,IAAKL,EAAKK,IACV9vE,MAAOyvE,EAAKQ,MAAQR,EAAKO,KACzBjwE,OAAQ0vE,EAAKM,OAASN,EAAKK,KAIzBiB,EAA6B,SAArBt4C,EAAQy0C,SAAsBsD,EAAe/3C,EAAQE,eAAiB,CAAC,EAC/E34B,EAAQ+wE,EAAM/wE,OAASy4B,EAAQu4C,aAAejgE,EAAO/Q,MACrDD,EAASgxE,EAAMhxE,QAAU04B,EAAQw4C,cAAgBlgE,EAAOhR,OAExDmxE,EAAiBz4C,EAAQ04C,YAAcnxE,EACvCoxE,EAAgB34C,EAAQ44C,aAAetxE,EAI3C,GAAImxE,GAAkBE,EAAe,CACnC,IAAI1P,EAASqL,EAAyBt0C,GACtCy4C,GAAkBhB,EAAexO,EAAQ,KACzC0P,GAAiBlB,EAAexO,EAAQ,KAExC3wD,EAAO/Q,OAASkxE,EAChBngE,EAAOhR,QAAUqxE,CACnB,CAEA,OAAOR,EAAc7/D,EACvB,CAEA,SAASugE,EAAqC5kF,EAAUiO,GACtD,IAAI42E,EAAgBlrF,UAAU3D,OAAS,QAAsB4D,IAAjBD,UAAU,IAAmBA,UAAU,GAE/EynF,EAASC,EAAK,IACdyD,EAA6B,SAApB72E,EAAOuyE,SAChBuE,EAAeX,EAAsBpkF,GACrCglF,EAAaZ,EAAsBn2E,GACnCg3E,EAAexE,EAAgBzgF,GAE/Bg1E,EAASqL,EAAyBpyE,GAClCi3E,EAAiB59C,WAAW0tC,EAAOkQ,gBACnCC,EAAkB79C,WAAW0tC,EAAOmQ,iBAGpCN,GAAiBC,IACnBE,EAAW5B,IAAMz7E,KAAKo3B,IAAIimD,EAAW5B,IAAK,GAC1C4B,EAAW1B,KAAO37E,KAAKo3B,IAAIimD,EAAW1B,KAAM,IAE9C,IAAIa,EAAUD,EAAc,CAC1Bd,IAAK2B,EAAa3B,IAAM4B,EAAW5B,IAAM8B,EACzC5B,KAAMyB,EAAazB,KAAO0B,EAAW1B,KAAO6B,EAC5C7xE,MAAOyxE,EAAazxE,MACpBD,OAAQ0xE,EAAa1xE,SASvB,GAPA8wE,EAAQiB,UAAY,EACpBjB,EAAQkB,WAAa,GAMhBjE,GAAU0D,EAAQ,CACrB,IAAIM,EAAY99C,WAAW0tC,EAAOoQ,WAC9BC,EAAa/9C,WAAW0tC,EAAOqQ,YAEnClB,EAAQf,KAAO8B,EAAiBE,EAChCjB,EAAQd,QAAU6B,EAAiBE,EACnCjB,EAAQb,MAAQ6B,EAAkBE,EAClClB,EAAQZ,OAAS4B,EAAkBE,EAGnClB,EAAQiB,UAAYA,EACpBjB,EAAQkB,WAAaA,CACvB,CAMA,OAJIjE,IAAWyD,EAAgB52E,EAAOs0E,SAAS0C,GAAgBh3E,IAAWg3E,GAA0C,SAA1BA,EAAazE,YACrG2D,EAAUrB,EAAcqB,EAASl2E,IAG5Bk2E,CACT,CAEA,SAASmB,EAA8Cv5C,GACrD,IAAIw5C,EAAgB5rF,UAAU3D,OAAS,QAAsB4D,IAAjBD,UAAU,IAAmBA,UAAU,GAE/EghC,EAAOoR,EAAQE,cAAcs1C,gBAC7BiE,EAAiBZ,EAAqC74C,EAASpR,GAC/DrnB,EAAQ3L,KAAKo3B,IAAIpE,EAAK2pD,YAAavsF,OAAO0tF,YAAc,GACxDpyE,EAAS1L,KAAKo3B,IAAIpE,EAAK4pD,aAAcxsF,OAAO2tF,aAAe,GAE3DzC,EAAasC,EAAkC,EAAlB7C,EAAU/nD,GACvCuoD,EAAcqC,EAA0C,EAA1B7C,EAAU/nD,EAAM,QAE9C6T,EAAS,CACX40C,IAAKH,EAAYuC,EAAepC,IAAMoC,EAAeJ,UACrD9B,KAAMJ,EAAasC,EAAelC,KAAOkC,EAAeH,WACxD/xE,MAAOA,EACPD,OAAQA,GAGV,OAAO6wE,EAAc11C,EACvB,CAUA,SAASm3C,EAAQ55C,GACf,IAAIy0C,EAAWz0C,EAAQy0C,SACvB,GAAiB,SAAbA,GAAoC,SAAbA,EACzB,OAAO,EAET,GAAsD,UAAlDH,EAAyBt0C,EAAS,YACpC,OAAO,EAET,IAAI3hC,EAAam2E,EAAcx0C,GAC/B,QAAK3hC,GAGEu7E,EAAQv7E,EACjB,CAUA,SAASw7E,EAA6B75C,GAEpC,IAAKA,IAAYA,EAAQ85C,eAAiBxE,IACxC,OAAO5tF,SAAS8tF,gBAGlB,IADA,IAAI/9D,EAAKuoB,EAAQ85C,cACVriE,GAAoD,SAA9C68D,EAAyB78D,EAAI,cACxCA,EAAKA,EAAGqiE,cAEV,OAAOriE,GAAM/vB,SAAS8tF,eACxB,CAaA,SAASuE,EAAcC,EAAQhF,EAAWiF,EAASxmF,GACjD,IAAIqlF,EAAgBlrF,UAAU3D,OAAS,QAAsB4D,IAAjBD,UAAU,IAAmBA,UAAU,GAI/EssF,EAAa,CAAE7C,IAAK,EAAGE,KAAM,GAC7B7B,EAAeoD,EAAgBe,EAA6BG,GAAUnE,EAAuBmE,EAAQjF,EAAiBC,IAG1H,GAA0B,aAAtBvhF,EACFymF,EAAaX,EAA8C7D,EAAcoD,OACpE,CAEL,IAAIqB,OAAiB,EACK,iBAAtB1mF,EAE8B,UADhC0mF,EAAiBzF,EAAgBF,EAAcQ,KAC5BP,WACjB0F,EAAiBH,EAAO95C,cAAcs1C,iBAGxC2E,EAD+B,WAAtB1mF,EACQumF,EAAO95C,cAAcs1C,gBAErB/hF,EAGnB,IAAI2kF,EAAUS,EAAqCsB,EAAgBzE,EAAcoD,GAGjF,GAAgC,SAA5BqB,EAAe1F,UAAwBmF,EAAQlE,GAWjDwE,EAAa9B,MAXmD,CAChE,IAAIgC,EAAkBrC,EAAeiC,EAAO95C,eACxC54B,EAAS8yE,EAAgB9yE,OACzBC,EAAQ6yE,EAAgB7yE,MAE5B2yE,EAAW7C,KAAOe,EAAQf,IAAMe,EAAQiB,UACxCa,EAAW5C,OAAShwE,EAAS8wE,EAAQf,IACrC6C,EAAW3C,MAAQa,EAAQb,KAAOa,EAAQkB,WAC1CY,EAAW1C,MAAQjwE,EAAQ6wE,EAAQb,IACrC,CAIF,CAIA,IAAI8C,EAAqC,iBADzCJ,EAAUA,GAAW,GAOrB,OALAC,EAAW3C,MAAQ8C,EAAkBJ,EAAUA,EAAQ1C,MAAQ,EAC/D2C,EAAW7C,KAAOgD,EAAkBJ,EAAUA,EAAQ5C,KAAO,EAC7D6C,EAAW1C,OAAS6C,EAAkBJ,EAAUA,EAAQzC,OAAS,EACjE0C,EAAW5C,QAAU+C,EAAkBJ,EAAUA,EAAQ3C,QAAU,EAE5D4C,CACT,CAEA,SAASI,EAAQC,GAIf,OAHYA,EAAKhzE,MACJgzE,EAAKjzE,MAGpB,CAWA,SAASkzE,EAAqBhnF,EAAWinF,EAAST,EAAQhF,EAAWvhF,GACnE,IAAIwmF,EAAUrsF,UAAU3D,OAAS,QAAsB4D,IAAjBD,UAAU,GAAmBA,UAAU,GAAK,EAElF,IAAmC,IAA/B4F,EAAU9C,QAAQ,QACpB,OAAO8C,EAGT,IAAI0mF,EAAaH,EAAcC,EAAQhF,EAAWiF,EAASxmF,GAEvDinF,EAAQ,CACVrD,IAAK,CACH9vE,MAAO2yE,EAAW3yE,MAClBD,OAAQmzE,EAAQpD,IAAM6C,EAAW7C,KAEnCG,MAAO,CACLjwE,MAAO2yE,EAAW1C,MAAQiD,EAAQjD,MAClClwE,OAAQ4yE,EAAW5yE,QAErBgwE,OAAQ,CACN/vE,MAAO2yE,EAAW3yE,MAClBD,OAAQ4yE,EAAW5C,OAASmD,EAAQnD,QAEtCC,KAAM,CACJhwE,MAAOkzE,EAAQlD,KAAO2C,EAAW3C,KACjCjwE,OAAQ4yE,EAAW5yE,SAInBqzE,EAAcl0F,OAAOwL,KAAKyoF,GAAOl+E,KAAI,SAAUnS,GACjD,OAAO6tF,EAAS,CACd7tF,IAAKA,GACJqwF,EAAMrwF,GAAM,CACbuwF,KAAMN,EAAQI,EAAMrwF,KAExB,IAAGo1C,MAAK,SAAUnyC,EAAGC,GACnB,OAAOA,EAAEqtF,KAAOttF,EAAEstF,IACpB,IAEIC,EAAgBF,EAAY/uF,QAAO,SAAUkvF,GAC/C,IAAIvzE,EAAQuzE,EAAMvzE,MACdD,EAASwzE,EAAMxzE,OACnB,OAAOC,GAASyyE,EAAOzB,aAAejxE,GAAU0yE,EAAOxB,YACzD,IAEIuC,EAAoBF,EAAc5wF,OAAS,EAAI4wF,EAAc,GAAGxwF,IAAMswF,EAAY,GAAGtwF,IAErF2wF,EAAYxnF,EAAUkjB,MAAM,KAAK,GAErC,OAAOqkE,GAAqBC,EAAY,IAAMA,EAAY,GAC5D,CAYA,SAASC,EAAoB14D,EAAOy3D,EAAQhF,GAC1C,IAAI8D,EAAgBlrF,UAAU3D,OAAS,QAAsB4D,IAAjBD,UAAU,GAAmBA,UAAU,GAAK,KAEpFstF,EAAqBpC,EAAgBe,EAA6BG,GAAUnE,EAAuBmE,EAAQjF,EAAiBC,IAChI,OAAO6D,EAAqC7D,EAAWkG,EAAoBpC,EAC7E,CASA,SAASqC,EAAcn7C,GACrB,IACIipC,EADSjpC,EAAQE,cAAcC,YACfo0C,iBAAiBv0C,GACjCrhC,EAAI48B,WAAW0tC,EAAOoQ,WAAa,GAAK99C,WAAW0tC,EAAOmS,cAAgB,GAC1El8E,EAAIq8B,WAAW0tC,EAAOqQ,YAAc,GAAK/9C,WAAW0tC,EAAOoS,aAAe,GAK9E,MAJa,CACX9zE,MAAOy4B,EAAQ04C,YAAcx5E,EAC7BoI,OAAQ04B,EAAQ44C,aAAej6E,EAGnC,CASA,SAAS28E,EAAqB9nF,GAC5B,IAAIyiB,EAAO,CAAEshE,KAAM,QAASC,MAAO,OAAQF,OAAQ,MAAOD,IAAK,UAC/D,OAAO7jF,EAAU3G,QAAQ,0BAA0B,SAAU6pC,GAC3D,OAAOzgB,EAAKygB,EACd,GACF,CAYA,SAAS6kD,EAAiBvB,EAAQwB,EAAkBhoF,GAClDA,EAAYA,EAAUkjB,MAAM,KAAK,GAGjC,IAAI+kE,EAAaN,EAAcnB,GAG3B0B,EAAgB,CAClBn0E,MAAOk0E,EAAWl0E,MAClBD,OAAQm0E,EAAWn0E,QAIjBq0E,GAAoD,IAA1C,CAAC,QAAS,QAAQjrF,QAAQ8C,GACpCooF,EAAWD,EAAU,MAAQ,OAC7BE,EAAgBF,EAAU,OAAS,MACnCG,EAAcH,EAAU,SAAW,QACnCI,EAAwBJ,EAAqB,QAAX,SAStC,OAPAD,EAAcE,GAAYJ,EAAiBI,GAAYJ,EAAiBM,GAAe,EAAIL,EAAWK,GAAe,EAEnHJ,EAAcG,GADZroF,IAAcqoF,EACeL,EAAiBK,GAAiBJ,EAAWM,GAE7CP,EAAiBF,EAAqBO,IAGhEH,CACT,CAWA,SAASr8D,EAAKtI,EAAKoU,GAEjB,OAAIp5B,MAAMzG,UAAU+zB,KACXtI,EAAIsI,KAAK8L,GAIXpU,EAAInrB,OAAOu/B,GAAO,EAC3B,CAoCA,SAAS6wD,EAAar7E,EAAW7T,EAAMmvF,GAoBrC,YAnB8BpuF,IAATouF,EAAqBt7E,EAAYA,EAAUpJ,MAAM,EA1BxE,SAAmBwf,EAAKlF,EAAMjrB,GAE5B,GAAImL,MAAMzG,UAAUg0B,UAClB,OAAOvI,EAAIuI,WAAU,SAAUw0C,GAC7B,OAAOA,EAAIjiD,KAAUjrB,CACvB,IAIF,IAAIwuB,EAAQiK,EAAKtI,GAAK,SAAUtuB,GAC9B,OAAOA,EAAIopB,KAAUjrB,CACvB,IACA,OAAOmwB,EAAIrmB,QAAQ0kB,EACrB,CAa2EkK,CAAU3e,EAAW,OAAQs7E,KAEvFl0F,SAAQ,SAAUqvF,GAC3BA,EAAmB,UAErBpvF,EAAQ8C,KAAK,yDAEf,IAAI8U,EAAKw3E,EAAmB,UAAKA,EAASx3E,GACtCw3E,EAAS8E,SAAWrjE,EAAWjZ,KAIjC9S,EAAKsrF,QAAQ4B,OAAS7B,EAAcrrF,EAAKsrF,QAAQ4B,QACjDltF,EAAKsrF,QAAQpD,UAAYmD,EAAcrrF,EAAKsrF,QAAQpD,WAEpDloF,EAAO8S,EAAG9S,EAAMsqF,GAEpB,IAEOtqF,CACT,CASA,SAAS8Q,IAEP,IAAIhT,KAAK23B,MAAM45D,YAAf,CAIA,IAAIrvF,EAAO,CACTtC,SAAUI,KACVq+E,OAAQ,CAAC,EACTmT,YAAa,CAAC,EACdj+E,WAAY,CAAC,EACbk+E,SAAS,EACTjE,QAAS,CAAC,GAIZtrF,EAAKsrF,QAAQpD,UAAYiG,EAAoBrwF,KAAK23B,MAAO33B,KAAKovF,OAAQpvF,KAAKoqF,UAAWpqF,KAAK6D,QAAQ6tF,eAKnGxvF,EAAK0G,UAAYgnF,EAAqB5vF,KAAK6D,QAAQ+E,UAAW1G,EAAKsrF,QAAQpD,UAAWpqF,KAAKovF,OAAQpvF,KAAKoqF,UAAWpqF,KAAK6D,QAAQkS,UAAU47E,KAAK9oF,kBAAmB7I,KAAK6D,QAAQkS,UAAU47E,KAAKtC,SAG9LntF,EAAK0vF,kBAAoB1vF,EAAK0G,UAE9B1G,EAAKwvF,cAAgB1xF,KAAK6D,QAAQ6tF,cAGlCxvF,EAAKsrF,QAAQ4B,OAASuB,EAAiB3wF,KAAKovF,OAAQltF,EAAKsrF,QAAQpD,UAAWloF,EAAK0G,WAEjF1G,EAAKsrF,QAAQ4B,OAAOjgE,SAAWnvB,KAAK6D,QAAQ6tF,cAAgB,QAAU,WAGtExvF,EAAOkvF,EAAapxF,KAAK+V,UAAW7T,GAI/BlC,KAAK23B,MAAMk6D,UAId7xF,KAAK6D,QAAQiuF,SAAS5vF,IAHtBlC,KAAK23B,MAAMk6D,WAAY,EACvB7xF,KAAK6D,QAAQkuF,SAAS7vF,GApCxB,CAwCF,CAQA,SAAS8vF,EAAkBj8E,EAAWk8E,GACpC,OAAOl8E,EAAUwe,MAAK,SAAUo7D,GAC9B,IAAItvF,EAAOsvF,EAAKtvF,KAEhB,OADcsvF,EAAK2B,SACDjxF,IAAS4xF,CAC7B,GACF,CASA,SAASC,EAAyBn9C,GAIhC,IAHA,IAAIo9C,EAAW,EAAC,EAAO,KAAM,SAAU,MAAO,KAC1CC,EAAYr9C,EAAS1vC,OAAO,GAAGqa,cAAgBq1B,EAASpoC,MAAM,GAEzDvN,EAAI,EAAGA,EAAI+yF,EAAS9yF,OAAQD,IAAK,CACxC,IAAI41C,EAASm9C,EAAS/yF,GAClBizF,EAAUr9C,EAAS,GAAKA,EAASo9C,EAAYr9C,EACjD,QAA4C,IAAjCj4C,SAASie,KAAKzF,MAAM+8E,GAC7B,OAAOA,CAEX,CACA,OAAO,IACT,CAOA,SAAS13E,IAsBP,OArBA3a,KAAK23B,MAAM45D,aAAc,EAGrBS,EAAkBhyF,KAAK+V,UAAW,gBACpC/V,KAAKovF,OAAOkD,gBAAgB,eAC5BtyF,KAAKovF,OAAO95E,MAAM6Z,SAAW,GAC7BnvB,KAAKovF,OAAO95E,MAAMm3E,IAAM,GACxBzsF,KAAKovF,OAAO95E,MAAMq3E,KAAO,GACzB3sF,KAAKovF,OAAO95E,MAAMs3E,MAAQ,GAC1B5sF,KAAKovF,OAAO95E,MAAMo3E,OAAS,GAC3B1sF,KAAKovF,OAAO95E,MAAMi9E,WAAa,GAC/BvyF,KAAKovF,OAAO95E,MAAM48E,EAAyB,cAAgB,IAG7DlyF,KAAKwyF,wBAIDxyF,KAAK6D,QAAQ4uF,iBACfzyF,KAAKovF,OAAO37E,WAAWC,YAAY1T,KAAKovF,QAEnCpvF,IACT,CAOA,SAAS0yF,EAAUt9C,GACjB,IAAIE,EAAgBF,EAAQE,cAC5B,OAAOA,EAAgBA,EAAcC,YAAcn0C,MACrD,CAEA,SAASuxF,EAAsBrE,EAAc9tF,EAAO0rB,EAAU0mE,GAC5D,IAAIC,EAAmC,SAA1BvE,EAAazE,SACtB3qF,EAAS2zF,EAASvE,EAAah5C,cAAcC,YAAc+4C,EAC/DpvF,EAAOob,iBAAiB9Z,EAAO0rB,EAAU,CAAE4mE,SAAS,IAE/CD,GACHF,EAAsB7I,EAAgB5qF,EAAOuU,YAAajT,EAAO0rB,EAAU0mE,GAE7EA,EAAcj2F,KAAKuC,EACrB,CAQA,SAAS6zF,EAAoB3I,EAAWvmF,EAAS8zB,EAAOq7D,GAEtDr7D,EAAMq7D,YAAcA,EACpBN,EAAUtI,GAAW9vE,iBAAiB,SAAUqd,EAAMq7D,YAAa,CAAEF,SAAS,IAG9E,IAAIG,EAAgBnJ,EAAgBM,GAKpC,OAJAuI,EAAsBM,EAAe,SAAUt7D,EAAMq7D,YAAar7D,EAAMi7D,eACxEj7D,EAAMs7D,cAAgBA,EACtBt7D,EAAMu7D,eAAgB,EAEfv7D,CACT,CAQA,SAASw7D,IACFnzF,KAAK23B,MAAMu7D,gBACdlzF,KAAK23B,MAAQo7D,EAAoB/yF,KAAKoqF,UAAWpqF,KAAK6D,QAAS7D,KAAK23B,MAAO33B,KAAKozF,gBAEpF,CAgCA,SAASZ,IACHxyF,KAAK23B,MAAMu7D,gBACbG,qBAAqBrzF,KAAKozF,gBAC1BpzF,KAAK23B,MA3BT,SAA8ByyD,EAAWzyD,GAcvC,OAZA+6D,EAAUtI,GAAW3vE,oBAAoB,SAAUkd,EAAMq7D,aAGzDr7D,EAAMi7D,cAAcz1F,SAAQ,SAAU+B,GACpCA,EAAOub,oBAAoB,SAAUkd,EAAMq7D,YAC7C,IAGAr7D,EAAMq7D,YAAc,KACpBr7D,EAAMi7D,cAAgB,GACtBj7D,EAAMs7D,cAAgB,KACtBt7D,EAAMu7D,eAAgB,EACfv7D,CACT,CAYiB2c,CAAqBt0C,KAAKoqF,UAAWpqF,KAAK23B,OAE3D,CASA,SAAS27D,GAAU/sF,GACjB,MAAa,KAANA,IAAaiiC,MAAMmI,WAAWpqC,KAAOmqC,SAASnqC,EACvD,CAUA,SAASgtF,GAAUn+C,EAASipC,GAC1BxiF,OAAOwL,KAAKg3E,GAAQlhF,SAAQ,SAAU8pB,GACpC,IAAIusE,EAAO,IAEkE,IAAzE,CAAC,QAAS,SAAU,MAAO,QAAS,SAAU,QAAQ1tF,QAAQmhB,IAAgBqsE,GAAUjV,EAAOp3D,MACjGusE,EAAO,MAETp+C,EAAQ9/B,MAAM2R,GAAQo3D,EAAOp3D,GAAQusE,CACvC,GACF,CA8HA,IAAIC,GAAYrK,GAAa,WAAWv8E,KAAKke,UAAUC,WA8GvD,SAAS0oE,GAAmB39E,EAAW49E,EAAgBC,GACrD,IAAIC,EAAap/D,EAAK1e,GAAW,SAAU45E,GAEzC,OADWA,EAAKtvF,OACAszF,CAClB,IAEIG,IAAeD,GAAc99E,EAAUwe,MAAK,SAAUi4D,GACxD,OAAOA,EAASnsF,OAASuzF,GAAiBpH,EAAS8E,SAAW9E,EAASpB,MAAQyI,EAAWzI,KAC5F,IAEA,IAAK0I,EAAY,CACf,IAAIC,EAAc,IAAMJ,EAAiB,IACrCK,EAAY,IAAMJ,EAAgB,IACtCx2F,EAAQ8C,KAAK8zF,EAAY,4BAA8BD,EAAc,4DAA8DA,EAAc,IACnJ,CACA,OAAOD,CACT,CAmIA,IAAIG,GAAa,CAAC,aAAc,OAAQ,WAAY,YAAa,MAAO,UAAW,cAAe,QAAS,YAAa,aAAc,SAAU,eAAgB,WAAY,OAAQ,cAGhLC,GAAkBD,GAAWtnF,MAAM,GAYvC,SAASwnF,GAAUvrF,GACjB,IAAIwrF,EAAUpxF,UAAU3D,OAAS,QAAsB4D,IAAjBD,UAAU,IAAmBA,UAAU,GAEzEqgB,EAAQ6wE,GAAgBpuF,QAAQ8C,GAChCujB,EAAM+nE,GAAgBvnF,MAAM0W,EAAQ,GAAGtiB,OAAOmzF,GAAgBvnF,MAAM,EAAG0W,IAC3E,OAAO+wE,EAAUjoE,EAAIkoE,UAAYloE,CACnC,CAEA,IAAImoE,GACI,OADJA,GAES,YAFTA,GAGgB,mBAiMpB,SAASC,GAAY18C,EAAQi5C,EAAeF,EAAkB4D,GAC5D,IAAIhH,EAAU,CAAC,EAAG,GAKdiH,GAA0D,IAA9C,CAAC,QAAS,QAAQ3uF,QAAQ0uF,GAItCE,EAAY78C,EAAO/rB,MAAM,WAAWla,KAAI,SAAU+iF,GACpD,OAAOA,EAAK1pF,MACd,IAII2pF,EAAUF,EAAU5uF,QAAQ2uB,EAAKigE,GAAW,SAAUC,GACxD,OAAgC,IAAzBA,EAAKvpE,OAAO,OACrB,KAEIspE,EAAUE,KAAiD,IAArCF,EAAUE,GAAS9uF,QAAQ,MACnD1I,EAAQ8C,KAAK,gFAKf,IAAI20F,EAAa,cACbC,GAAmB,IAAbF,EAAiB,CAACF,EAAU/nF,MAAM,EAAGioF,GAAS7zF,OAAO,CAAC2zF,EAAUE,GAAS9oE,MAAM+oE,GAAY,KAAM,CAACH,EAAUE,GAAS9oE,MAAM+oE,GAAY,IAAI9zF,OAAO2zF,EAAU/nF,MAAMioF,EAAU,KAAO,CAACF,GAqC9L,OAlCAI,EAAMA,EAAIljF,KAAI,SAAUmjF,EAAI1xE,GAE1B,IAAI6tE,GAAyB,IAAV7tE,GAAeoxE,EAAYA,GAAa,SAAW,QAClEO,GAAoB,EACxB,OAAOD,EAGN9V,QAAO,SAAUv8E,EAAGC,GACnB,MAAwB,KAApBD,EAAEA,EAAErD,OAAS,KAAwC,IAA3B,CAAC,IAAK,KAAKyG,QAAQnD,IAC/CD,EAAEA,EAAErD,OAAS,GAAKsD,EAClBqyF,GAAoB,EACbtyF,GACEsyF,GACTtyF,EAAEA,EAAErD,OAAS,IAAMsD,EACnBqyF,GAAoB,EACbtyF,GAEAA,EAAE3B,OAAO4B,EAEpB,GAAG,IAEFiP,KAAI,SAAUkc,GACb,OAxGN,SAAiBA,EAAKojE,EAAaJ,EAAeF,GAEhD,IAAI9kE,EAAQgC,EAAItD,MAAM,6BAClBxuB,GAAS8vB,EAAM,GACf0nE,EAAO1nE,EAAM,GAGjB,IAAK9vB,EACH,OAAO8xB,EAGT,GAA0B,IAAtB0lE,EAAK1tF,QAAQ,KAAY,CAa3B,OADWynF,EATJ,OADCiG,EAEM1C,EAKAF,GAIFM,GAAe,IAAMl1F,CACnC,CAAO,GAAa,OAATw3F,GAA0B,OAATA,EAQ1B,OALa,OAATA,EACKxiF,KAAKo3B,IAAItrC,SAAS8tF,gBAAgBgD,aAAcxsF,OAAO2tF,aAAe,GAEtE/9E,KAAKo3B,IAAItrC,SAAS8tF,gBAAgB+C,YAAavsF,OAAO0tF,YAAc,IAE/D,IAAM9yF,EAIpB,OAAOA,CAEX,CAiEai5F,CAAQnnE,EAAKojE,EAAaJ,EAAeF,EAClD,GACF,IAGAkE,EAAI33F,SAAQ,SAAU43F,EAAI1xE,GACxB0xE,EAAG53F,SAAQ,SAAUw3F,EAAMO,GACrB5B,GAAUqB,KACZnH,EAAQnqE,IAAUsxE,GAA2B,MAAnBI,EAAGG,EAAS,IAAc,EAAI,GAE5D,GACF,IACO1H,CACT,CA0OA,IAAIz3E,GAAY,CASd8O,MAAO,CAELumE,MAAO,IAEPkG,SAAS,EAETt8E,GA9HJ,SAAe9S,GACb,IAAI0G,EAAY1G,EAAK0G,UACjB4rF,EAAgB5rF,EAAUkjB,MAAM,KAAK,GACrCqpE,EAAiBvsF,EAAUkjB,MAAM,KAAK,GAG1C,GAAIqpE,EAAgB,CAClB,IAAIC,EAAgBlzF,EAAKsrF,QACrBpD,EAAYgL,EAAchL,UAC1BgF,EAASgG,EAAchG,OAEvBiG,GAA2D,IAA9C,CAAC,SAAU,OAAOvvF,QAAQ0uF,GACvCxI,EAAOqJ,EAAa,OAAS,MAC7BnE,EAAcmE,EAAa,QAAU,SAErCC,EAAe,CACjBr9E,MAAOnc,EAAe,CAAC,EAAGkwF,EAAM5B,EAAU4B,IAC1Cv7D,IAAK30B,EAAe,CAAC,EAAGkwF,EAAM5B,EAAU4B,GAAQ5B,EAAU8G,GAAe9B,EAAO8B,KAGlFhvF,EAAKsrF,QAAQ4B,OAAS9B,EAAS,CAAC,EAAG8B,EAAQkG,EAAaH,GAC1D,CAEA,OAAOjzF,CACT,GA+IE21C,OAAQ,CAENuzC,MAAO,IAEPkG,SAAS,EAETt8E,GA7RJ,SAAgB9S,EAAMytF,GACpB,IAAI93C,EAAS83C,EAAK93C,OACdjvC,EAAY1G,EAAK0G,UACjBwsF,EAAgBlzF,EAAKsrF,QACrB4B,EAASgG,EAAchG,OACvBhF,EAAYgL,EAAchL,UAE1BoK,EAAgB5rF,EAAUkjB,MAAM,KAAK,GAErC0hE,OAAU,EAsBd,OApBEA,EADE8F,IAAWz7C,GACH,EAAEA,EAAQ,GAEV08C,GAAY18C,EAAQu3C,EAAQhF,EAAWoK,GAG7B,SAAlBA,GACFpF,EAAO3C,KAAOe,EAAQ,GACtB4B,EAAOzC,MAAQa,EAAQ,IACI,UAAlBgH,GACTpF,EAAO3C,KAAOe,EAAQ,GACtB4B,EAAOzC,MAAQa,EAAQ,IACI,QAAlBgH,GACTpF,EAAOzC,MAAQa,EAAQ,GACvB4B,EAAO3C,KAAOe,EAAQ,IACK,WAAlBgH,IACTpF,EAAOzC,MAAQa,EAAQ,GACvB4B,EAAO3C,KAAOe,EAAQ,IAGxBtrF,EAAKktF,OAASA,EACPltF,CACT,EAiQI21C,OAAQ,GAoBV09C,gBAAiB,CAEfnK,MAAO,IAEPkG,SAAS,EAETt8E,GAlRJ,SAAyB9S,EAAM2B,GAC7B,IAAIgF,EAAoBhF,EAAQgF,mBAAqB8hF,EAAgBzoF,EAAKtC,SAASwvF,QAK/EltF,EAAKtC,SAASwqF,YAAcvhF,IAC9BA,EAAoB8hF,EAAgB9hF,IAMtC,IAAI2sF,EAAgBtD,EAAyB,aACzCuD,EAAevzF,EAAKtC,SAASwvF,OAAO95E,MACpCm3E,EAAMgJ,EAAahJ,IACnBE,EAAO8I,EAAa9I,KACpB52B,EAAY0/B,EAAaD,GAE7BC,EAAahJ,IAAM,GACnBgJ,EAAa9I,KAAO,GACpB8I,EAAaD,GAAiB,GAE9B,IAAIlG,EAAaH,EAAcjtF,EAAKtC,SAASwvF,OAAQltF,EAAKtC,SAASwqF,UAAWvmF,EAAQwrF,QAASxmF,EAAmB3G,EAAKwvF,eAIvH+D,EAAahJ,IAAMA,EACnBgJ,EAAa9I,KAAOA,EACpB8I,EAAaD,GAAiBz/B,EAE9BlyD,EAAQyrF,WAAaA,EAErB,IAAIlE,EAAQvnF,EAAQ6xF,SAChBtG,EAASltF,EAAKsrF,QAAQ4B,OAEtB7uD,EAAQ,CACV93B,QAAS,SAAiBG,GACxB,IAAI5M,EAAQozF,EAAOxmF,GAInB,OAHIwmF,EAAOxmF,GAAa0mF,EAAW1mF,KAAe/E,EAAQ8xF,sBACxD35F,EAAQgV,KAAKo3B,IAAIgnD,EAAOxmF,GAAY0mF,EAAW1mF,KAE1C9M,EAAe,CAAC,EAAG8M,EAAW5M,EACvC,EACA45F,UAAW,SAAmBhtF,GAC5B,IAAIooF,EAAyB,UAAdpoF,EAAwB,OAAS,MAC5C5M,EAAQozF,EAAO4B,GAInB,OAHI5B,EAAOxmF,GAAa0mF,EAAW1mF,KAAe/E,EAAQ8xF,sBACxD35F,EAAQgV,KAAKq3B,IAAI+mD,EAAO4B,GAAW1B,EAAW1mF,IAA4B,UAAdA,EAAwBwmF,EAAOzyE,MAAQyyE,EAAO1yE,UAErG5gB,EAAe,CAAC,EAAGk1F,EAAUh1F,EACtC,GAUF,OAPAovF,EAAMjuF,SAAQ,SAAUyL,GACtB,IAAIojF,GAA+C,IAAxC,CAAC,OAAQ,OAAOlmF,QAAQ8C,GAAoB,UAAY,YACnEwmF,EAAS9B,EAAS,CAAC,EAAG8B,EAAQ7uD,EAAMyrD,GAAMpjF,GAC5C,IAEA1G,EAAKsrF,QAAQ4B,OAASA,EAEfltF,CACT,EA0NIwzF,SAAU,CAAC,OAAQ,QAAS,MAAO,UAOnCrG,QAAS,EAMTxmF,kBAAmB,gBAYrBgtF,aAAc,CAEZzK,MAAO,IAEPkG,SAAS,EAETt8E,GAlgBJ,SAAsB9S,GACpB,IAAIkzF,EAAgBlzF,EAAKsrF,QACrB4B,EAASgG,EAAchG,OACvBhF,EAAYgL,EAAchL,UAE1BxhF,EAAY1G,EAAK0G,UAAUkjB,MAAM,KAAK,GACtCrE,EAAQzW,KAAKyW,MACb4tE,GAAuD,IAA1C,CAAC,MAAO,UAAUvvF,QAAQ8C,GACvCojF,EAAOqJ,EAAa,QAAU,SAC9BS,EAAST,EAAa,OAAS,MAC/BnE,EAAcmE,EAAa,QAAU,SASzC,OAPIjG,EAAOpD,GAAQvkE,EAAM2iE,EAAU0L,MACjC5zF,EAAKsrF,QAAQ4B,OAAO0G,GAAUruE,EAAM2iE,EAAU0L,IAAW1G,EAAO8B,IAE9D9B,EAAO0G,GAAUruE,EAAM2iE,EAAU4B,MACnC9pF,EAAKsrF,QAAQ4B,OAAO0G,GAAUruE,EAAM2iE,EAAU4B,KAGzC9pF,CACT,GA2fE6zF,MAAO,CAEL3K,MAAO,IAEPkG,SAAS,EAETt8E,GApxBJ,SAAe9S,EAAM2B,GACnB,IAAImyF,EAGJ,IAAKtC,GAAmBxxF,EAAKtC,SAASmW,UAAW,QAAS,gBACxD,OAAO7T,EAGT,IAAI+zF,EAAepyF,EAAQuxC,QAG3B,GAA4B,iBAAjB6gD,GAIT,KAHAA,EAAe/zF,EAAKtC,SAASwvF,OAAOrmF,cAAcktF,IAIhD,OAAO/zF,OAKT,IAAKA,EAAKtC,SAASwvF,OAAOxD,SAASqK,GAEjC,OADA74F,EAAQ8C,KAAK,iEACNgC,EAIX,IAAI0G,EAAY1G,EAAK0G,UAAUkjB,MAAM,KAAK,GACtCspE,EAAgBlzF,EAAKsrF,QACrB4B,EAASgG,EAAchG,OACvBhF,EAAYgL,EAAchL,UAE1BiL,GAAuD,IAA1C,CAAC,OAAQ,SAASvvF,QAAQ8C,GAEvConB,EAAMqlE,EAAa,SAAW,QAC9Ba,EAAkBb,EAAa,MAAQ,OACvCrJ,EAAOkK,EAAgBn1E,cACvBo1E,EAAUd,EAAa,OAAS,MAChCS,EAAST,EAAa,SAAW,QACjCe,EAAmB7F,EAAc0F,GAAcjmE,GAQ/Co6D,EAAU0L,GAAUM,EAAmBhH,EAAOpD,KAChD9pF,EAAKsrF,QAAQ4B,OAAOpD,IAASoD,EAAOpD,IAAS5B,EAAU0L,GAAUM,IAG/DhM,EAAU4B,GAAQoK,EAAmBhH,EAAO0G,KAC9C5zF,EAAKsrF,QAAQ4B,OAAOpD,IAAS5B,EAAU4B,GAAQoK,EAAmBhH,EAAO0G,IAE3E5zF,EAAKsrF,QAAQ4B,OAAS7B,EAAcrrF,EAAKsrF,QAAQ4B,QAGjD,IAAI/3C,EAAS+yC,EAAU4B,GAAQ5B,EAAUp6D,GAAO,EAAIomE,EAAmB,EAInE7jF,EAAMm3E,EAAyBxnF,EAAKtC,SAASwvF,QAC7CiH,EAAmB1lD,WAAWp+B,EAAI,SAAW2jF,IAC7CI,EAAmB3lD,WAAWp+B,EAAI,SAAW2jF,EAAkB,UAC/DK,EAAYl/C,EAASn1C,EAAKsrF,QAAQ4B,OAAOpD,GAAQqK,EAAmBC,EAQxE,OALAC,EAAYvlF,KAAKo3B,IAAIp3B,KAAKq3B,IAAI+mD,EAAOp/D,GAAOomE,EAAkBG,GAAY,GAE1Er0F,EAAK+zF,aAAeA,EACpB/zF,EAAKsrF,QAAQuI,OAAmCj6F,EAA1Bk6F,EAAsB,CAAC,EAAuChK,EAAMh7E,KAAKgiC,MAAMujD,IAAaz6F,EAAek6F,EAAqBG,EAAS,IAAKH,GAE7J9zF,CACT,EA6sBIkzC,QAAS,aAcXu8C,KAAM,CAEJvG,MAAO,IAEPkG,SAAS,EAETt8E,GA5oBJ,SAAc9S,EAAM2B,GAElB,GAAImuF,EAAkB9vF,EAAKtC,SAASmW,UAAW,SAC7C,OAAO7T,EAGT,GAAIA,EAAKuvF,SAAWvvF,EAAK0G,YAAc1G,EAAK0vF,kBAE1C,OAAO1vF,EAGT,IAAIotF,EAAaH,EAAcjtF,EAAKtC,SAASwvF,OAAQltF,EAAKtC,SAASwqF,UAAWvmF,EAAQwrF,QAASxrF,EAAQgF,kBAAmB3G,EAAKwvF,eAE3H9oF,EAAY1G,EAAK0G,UAAUkjB,MAAM,KAAK,GACtC0qE,EAAoB9F,EAAqB9nF,GACzCwnF,EAAYluF,EAAK0G,UAAUkjB,MAAM,KAAK,IAAM,GAE5C2qE,EAAY,GAEhB,OAAQ5yF,EAAQ6yF,UACd,KAAKpC,GACHmC,EAAY,CAAC7tF,EAAW4tF,GACxB,MACF,KAAKlC,GACHmC,EAAYtC,GAAUvrF,GACtB,MACF,KAAK0rF,GACHmC,EAAYtC,GAAUvrF,GAAW,GACjC,MACF,QACE6tF,EAAY5yF,EAAQ6yF,SAyDxB,OAtDAD,EAAUt5F,SAAQ,SAAU+lC,EAAM7f,GAChC,GAAIza,IAAcs6B,GAAQuzD,EAAUp3F,SAAWgkB,EAAQ,EACrD,OAAOnhB,EAGT0G,EAAY1G,EAAK0G,UAAUkjB,MAAM,KAAK,GACtC0qE,EAAoB9F,EAAqB9nF,GAEzC,IAAIkoF,EAAgB5uF,EAAKsrF,QAAQ4B,OAC7BuH,EAAaz0F,EAAKsrF,QAAQpD,UAG1B3iE,EAAQzW,KAAKyW,MACbmvE,EAA4B,SAAdhuF,GAAwB6e,EAAMqpE,EAAclE,OAASnlE,EAAMkvE,EAAWhK,OAAuB,UAAd/jF,GAAyB6e,EAAMqpE,EAAcnE,MAAQllE,EAAMkvE,EAAW/J,QAAwB,QAAdhkF,GAAuB6e,EAAMqpE,EAAcpE,QAAUjlE,EAAMkvE,EAAWlK,MAAsB,WAAd7jF,GAA0B6e,EAAMqpE,EAAcrE,KAAOhlE,EAAMkvE,EAAWjK,QAEjUmK,EAAgBpvE,EAAMqpE,EAAcnE,MAAQllE,EAAM6nE,EAAW3C,MAC7DmK,EAAiBrvE,EAAMqpE,EAAclE,OAASnlE,EAAM6nE,EAAW1C,OAC/DmK,EAAetvE,EAAMqpE,EAAcrE,KAAOhlE,EAAM6nE,EAAW7C,KAC3DuK,EAAkBvvE,EAAMqpE,EAAcpE,QAAUjlE,EAAM6nE,EAAW5C,QAEjEuK,EAAoC,SAAdruF,GAAwBiuF,GAA+B,UAAdjuF,GAAyBkuF,GAAgC,QAAdluF,GAAuBmuF,GAA8B,WAAdnuF,GAA0BouF,EAG3K3B,GAAuD,IAA1C,CAAC,MAAO,UAAUvvF,QAAQ8C,GAGvCsuF,IAA0BrzF,EAAQszF,iBAAmB9B,GAA4B,UAAdjF,GAAyByG,GAAiBxB,GAA4B,QAAdjF,GAAuB0G,IAAmBzB,GAA4B,UAAdjF,GAAyB2G,IAAiB1B,GAA4B,QAAdjF,GAAuB4G,GAGlQI,IAA8BvzF,EAAQwzF,0BAA4BhC,GAA4B,UAAdjF,GAAyB0G,GAAkBzB,GAA4B,QAAdjF,GAAuByG,IAAkBxB,GAA4B,UAAdjF,GAAyB4G,IAAoB3B,GAA4B,QAAdjF,GAAuB2G,GAElRO,EAAmBJ,GAAyBE,GAE5CR,GAAeK,GAAuBK,KAExCp1F,EAAKuvF,SAAU,GAEXmF,GAAeK,KACjBruF,EAAY6tF,EAAUpzE,EAAQ,IAG5Bi0E,IACFlH,EAvJR,SAA8BA,GAC5B,MAAkB,QAAdA,EACK,QACgB,UAAdA,EACF,MAEFA,CACT,CAgJoBmH,CAAqBnH,IAGnCluF,EAAK0G,UAAYA,GAAawnF,EAAY,IAAMA,EAAY,IAI5DluF,EAAKsrF,QAAQ4B,OAAS9B,EAAS,CAAC,EAAGprF,EAAKsrF,QAAQ4B,OAAQuB,EAAiBzuF,EAAKtC,SAASwvF,OAAQltF,EAAKsrF,QAAQpD,UAAWloF,EAAK0G,YAE5H1G,EAAOkvF,EAAalvF,EAAKtC,SAASmW,UAAW7T,EAAM,QAEvD,IACOA,CACT,EA2jBIw0F,SAAU,OAKVrH,QAAS,EAOTxmF,kBAAmB,WAQnBsuF,gBAAgB,EAQhBE,yBAAyB,GAU3BG,MAAO,CAELpM,MAAO,IAEPkG,SAAS,EAETt8E,GArQJ,SAAe9S,GACb,IAAI0G,EAAY1G,EAAK0G,UACjB4rF,EAAgB5rF,EAAUkjB,MAAM,KAAK,GACrCspE,EAAgBlzF,EAAKsrF,QACrB4B,EAASgG,EAAchG,OACvBhF,EAAYgL,EAAchL,UAE1B2G,GAAwD,IAA9C,CAAC,OAAQ,SAASjrF,QAAQ0uF,GAEpCiD,GAA6D,IAA5C,CAAC,MAAO,QAAQ3xF,QAAQ0uF,GAO7C,OALApF,EAAO2B,EAAU,OAAS,OAAS3G,EAAUoK,IAAkBiD,EAAiBrI,EAAO2B,EAAU,QAAU,UAAY,GAEvH7uF,EAAK0G,UAAY8nF,EAAqB9nF,GACtC1G,EAAKsrF,QAAQ4B,OAAS7B,EAAc6B,GAE7BltF,CACT,GAiQE6M,KAAM,CAEJq8E,MAAO,IAEPkG,SAAS,EAETt8E,GA9TJ,SAAc9S,GACZ,IAAKwxF,GAAmBxxF,EAAKtC,SAASmW,UAAW,OAAQ,mBACvD,OAAO7T,EAGT,IAAI2tF,EAAU3tF,EAAKsrF,QAAQpD,UACvB17C,EAAQja,EAAKvyB,EAAKtC,SAASmW,WAAW,SAAUy2E,GAClD,MAAyB,oBAAlBA,EAASnsF,IAClB,IAAGivF,WAEH,GAAIO,EAAQnD,OAASh+C,EAAM+9C,KAAOoD,EAAQlD,KAAOj+C,EAAMk+C,OAASiD,EAAQpD,IAAM/9C,EAAMg+C,QAAUmD,EAAQjD,MAAQl+C,EAAMi+C,KAAM,CAExH,IAAkB,IAAdzqF,EAAK6M,KACP,OAAO7M,EAGTA,EAAK6M,MAAO,EACZ7M,EAAKqR,WAAW,uBAAyB,EAC3C,KAAO,CAEL,IAAkB,IAAdrR,EAAK6M,KACP,OAAO7M,EAGTA,EAAK6M,MAAO,EACZ7M,EAAKqR,WAAW,wBAAyB,CAC3C,CAEA,OAAOrR,CACT,GAmTEw1F,aAAc,CAEZtM,MAAO,IAEPkG,SAAS,EAETt8E,GAtgCJ,SAAsB9S,EAAM2B,GAC1B,IAAIkQ,EAAIlQ,EAAQkQ,EACZO,EAAIzQ,EAAQyQ,EACZ86E,EAASltF,EAAKsrF,QAAQ4B,OAItBuI,EAA8BljE,EAAKvyB,EAAKtC,SAASmW,WAAW,SAAUy2E,GACxE,MAAyB,eAAlBA,EAASnsF,IAClB,IAAGu3F,qBACiC30F,IAAhC00F,GACFv6F,EAAQ8C,KAAK,iIAEf,IAAI03F,OAAkD30F,IAAhC00F,EAA4CA,EAA8B9zF,EAAQ+zF,gBAEpG9M,EAAeH,EAAgBzoF,EAAKtC,SAASwvF,QAC7CyI,EAAmBpK,EAAsB3C,GAGzCzM,EAAS,CACXlvD,SAAUigE,EAAOjgE,UAGfq+D,EA9DN,SAA2BtrF,EAAM41F,GAC/B,IAAI1C,EAAgBlzF,EAAKsrF,QACrB4B,EAASgG,EAAchG,OACvBhF,EAAYgL,EAAchL,UAC1Bp3C,EAAQhiC,KAAKgiC,MACbvrB,EAAQzW,KAAKyW,MAEbswE,EAAU,SAAiB7pF,GAC7B,OAAOA,CACT,EAEI8pF,EAAiBhlD,EAAMo3C,EAAUztE,OACjCs7E,EAAcjlD,EAAMo8C,EAAOzyE,OAE3B04E,GAA4D,IAA/C,CAAC,OAAQ,SAASvvF,QAAQ5D,EAAK0G,WAC5CsvF,GAA+C,IAAjCh2F,EAAK0G,UAAU9C,QAAQ,KAIrCqyF,EAAuBL,EAAwBzC,GAAc6C,GAH3CF,EAAiB,GAAMC,EAAc,EAGuCjlD,EAAQvrB,EAAjEswE,EACrCK,EAAqBN,EAAwB9kD,EAAV+kD,EAEvC,MAAO,CACLpL,KAAMwL,EANWH,EAAiB,GAAM,GAAKC,EAAc,GAAM,IAMtBC,GAAeJ,EAAc1I,EAAOzC,KAAO,EAAIyC,EAAOzC,MACjGF,IAAK2L,EAAkBhJ,EAAO3C,KAC9BC,OAAQ0L,EAAkBhJ,EAAO1C,QACjCE,MAAOuL,EAAoB/I,EAAOxC,OAEtC,CAkCgByL,CAAkBn2F,EAAMd,OAAOk3F,iBAAmB,IAAM7E,IAElE1G,EAAc,WAANh5E,EAAiB,MAAQ,SACjCi5E,EAAc,UAAN14E,EAAgB,OAAS,QAKjCikF,EAAmBrG,EAAyB,aAW5CvF,OAAO,EACPF,OAAM,EAqBV,GAhBIA,EAJU,WAAVM,EAG4B,SAA1BjC,EAAajB,UACRiB,EAAa8C,aAAeJ,EAAQd,QAEpCmL,EAAiBn7E,OAAS8wE,EAAQd,OAGrCc,EAAQf,IAIZE,EAFU,UAAVK,EAC4B,SAA1BlC,EAAajB,UACPiB,EAAa6C,YAAcH,EAAQZ,OAEnCiL,EAAiBl7E,MAAQ6wE,EAAQZ,MAGpCY,EAAQb,KAEbiL,GAAmBW,EACrBla,EAAOka,GAAoB,eAAiB5L,EAAO,OAASF,EAAM,SAClEpO,EAAO0O,GAAS,EAChB1O,EAAO2O,GAAS,EAChB3O,EAAOkU,WAAa,gBACf,CAEL,IAAIiG,EAAsB,WAAVzL,GAAsB,EAAI,EACtC0L,EAAuB,UAAVzL,GAAqB,EAAI,EAC1C3O,EAAO0O,GAASN,EAAM+L,EACtBna,EAAO2O,GAASL,EAAO8L,EACvBpa,EAAOkU,WAAaxF,EAAQ,KAAOC,CACrC,CAGA,IAAIz5E,EAAa,CACf,cAAerR,EAAK0G,WAQtB,OAJA1G,EAAKqR,WAAa+5E,EAAS,CAAC,EAAG/5E,EAAYrR,EAAKqR,YAChDrR,EAAKm8E,OAASiP,EAAS,CAAC,EAAGjP,EAAQn8E,EAAKm8E,QACxCn8E,EAAKsvF,YAAclE,EAAS,CAAC,EAAGprF,EAAKsrF,QAAQuI,MAAO7zF,EAAKsvF,aAElDtvF,CACT,EAm7BI01F,iBAAiB,EAMjB7jF,EAAG,SAMHO,EAAG,SAkBLokF,WAAY,CAEVtN,MAAO,IAEPkG,SAAS,EAETt8E,GAzpCJ,SAAoB9S,GApBpB,IAAuBkzC,EAAS7hC,EAoC9B,OAXAggF,GAAUrxF,EAAKtC,SAASwvF,OAAQltF,EAAKm8E,QAzBhBjpC,EA6BPlzC,EAAKtC,SAASwvF,OA7BE77E,EA6BMrR,EAAKqR,WA5BzC1X,OAAOwL,KAAKkM,GAAYpW,SAAQ,SAAU8pB,IAE1B,IADF1T,EAAW0T,GAErBmuB,EAAQhkC,aAAa6V,EAAM1T,EAAW0T,IAEtCmuB,EAAQk9C,gBAAgBrrE,EAE5B,IAwBI/kB,EAAK+zF,cAAgBp6F,OAAOwL,KAAKnF,EAAKsvF,aAAanyF,QACrDk0F,GAAUrxF,EAAK+zF,aAAc/zF,EAAKsvF,aAG7BtvF,CACT,EA0oCIy2F,OA9nCJ,SAA0BvO,EAAWgF,EAAQvrF,EAAS+0F,EAAiBjhE,GAErE,IAAIi5D,EAAmBP,EAAoB14D,EAAOy3D,EAAQhF,EAAWvmF,EAAQ6tF,eAKzE9oF,EAAYgnF,EAAqB/rF,EAAQ+E,UAAWgoF,EAAkBxB,EAAQhF,EAAWvmF,EAAQkS,UAAU47E,KAAK9oF,kBAAmBhF,EAAQkS,UAAU47E,KAAKtC,SAQ9J,OANAD,EAAOh+E,aAAa,cAAexI,GAInC2qF,GAAUnE,EAAQ,CAAEjgE,SAAUtrB,EAAQ6tF,cAAgB,QAAU,aAEzD7tF,CACT,EAqnCI+zF,qBAAiB30F,IAuCjB41F,GAAW,CAKbjwF,UAAW,SAMX8oF,eAAe,EAMfwB,eAAe,EAOfT,iBAAiB,EAQjBV,SAAU,WAAqB,EAU/BD,SAAU,WAAqB,EAO/B/7E,UAAWA,IAeT+iF,GAAS,WASX,SAASA,EAAO1O,EAAWgF,GACzB,IAAItrB,EAAQ9jE,KAER6D,EAAUb,UAAU3D,OAAS,QAAsB4D,IAAjBD,UAAU,GAAmBA,UAAU,GAAK,CAAC,EACnFoqF,EAAeptF,KAAM84F,GAErB94F,KAAKozF,eAAiB,WACpB,OAAO2F,sBAAsBj1B,EAAM9wD,OACrC,EAGAhT,KAAKgT,OAASu2E,EAASvpF,KAAKgT,OAAO1E,KAAKtO,OAGxCA,KAAK6D,QAAUypF,EAAS,CAAC,EAAGwL,EAAOD,SAAUh1F,GAG7C7D,KAAK23B,MAAQ,CACX45D,aAAa,EACbM,WAAW,EACXe,cAAe,IAIjB5yF,KAAKoqF,UAAYA,GAAaA,EAAU4O,OAAS5O,EAAU,GAAKA,EAChEpqF,KAAKovF,OAASA,GAAUA,EAAO4J,OAAS5J,EAAO,GAAKA,EAGpDpvF,KAAK6D,QAAQkS,UAAY,CAAC,EAC1Bla,OAAOwL,KAAKimF,EAAS,CAAC,EAAGwL,EAAOD,SAAS9iF,UAAWlS,EAAQkS,YAAY5Y,SAAQ,SAAUkD,GACxFyjE,EAAMjgE,QAAQkS,UAAU1V,GAAQitF,EAAS,CAAC,EAAGwL,EAAOD,SAAS9iF,UAAU1V,IAAS,CAAC,EAAGwD,EAAQkS,UAAYlS,EAAQkS,UAAU1V,GAAQ,CAAC,EACrI,IAGAL,KAAK+V,UAAYla,OAAOwL,KAAKrH,KAAK6D,QAAQkS,WAAWnE,KAAI,SAAUvR,GACjE,OAAOitF,EAAS,CACdjtF,KAAMA,GACLyjE,EAAMjgE,QAAQkS,UAAU1V,GAC7B,IAECw0C,MAAK,SAAUnyC,EAAGC,GACjB,OAAOD,EAAE0oF,MAAQzoF,EAAEyoF,KACrB,IAMAprF,KAAK+V,UAAU5Y,SAAQ,SAAUy7F,GAC3BA,EAAgBtH,SAAWrjE,EAAW2qE,EAAgBD,SACxDC,EAAgBD,OAAO70B,EAAMsmB,UAAWtmB,EAAMsrB,OAAQtrB,EAAMjgE,QAAS+0F,EAAiB90B,EAAMnsC,MAEhG,IAGA33B,KAAKgT,SAEL,IAAIkgF,EAAgBlzF,KAAK6D,QAAQqvF,cAC7BA,GAEFlzF,KAAKmzF,uBAGPnzF,KAAK23B,MAAMu7D,cAAgBA,CAC7B,CAoDA,OA9CA7F,EAAYyL,EAAQ,CAAC,CACnBr5F,IAAK,SACLzD,MAAO,WACL,OAAOgX,EAAOtG,KAAK1M,KACrB,GACC,CACDP,IAAK,UACLzD,MAAO,WACL,OAAO2e,EAAQjO,KAAK1M,KACtB,GACC,CACDP,IAAK,uBACLzD,MAAO,WACL,OAAOm3F,EAAqBzmF,KAAK1M,KACnC,GACC,CACDP,IAAK,wBACLzD,MAAO,WACL,OAAOw2F,EAAsB9lF,KAAK1M,KACpC,KA2BK84F,CACT,CA9Ha,GAqJbA,GAAOG,OAA2B,oBAAX73F,OAAyBA,OAAS,EAAAyG,GAAQqxF,YACjEJ,GAAO7E,WAAaA,GACpB6E,GAAOD,SAAWA,GAElB,gBCzhFI,yBAEJ,SAASM,KACFA,GAAW/uD,OACd+uD,GAAW/uD,MAAO,EAClB,IAAyC,IAlC7C,WACE,IAAIgvD,EAAKh4F,OAAO2pB,UAAUC,UACtBF,EAAOsuE,EAAGtzF,QAAQ,SAEtB,GAAIglB,EAAO,EAET,OAAO8lB,SAASwoD,EAAGpzF,UAAU8kB,EAAO,EAAGsuE,EAAGtzF,QAAQ,IAAKglB,IAAQ,IAKjE,GAFcsuE,EAAGtzF,QAAQ,YAEX,EAAG,CAEf,IAAIuzF,EAAKD,EAAGtzF,QAAQ,OACpB,OAAO8qC,SAASwoD,EAAGpzF,UAAUqzF,EAAK,EAAGD,EAAGtzF,QAAQ,IAAKuzF,IAAM,GAC7D,CAEA,IAAIC,EAAOF,EAAGtzF,QAAQ,SAEtB,OAAIwzF,EAAO,EAEF1oD,SAASwoD,EAAGpzF,UAAUszF,EAAO,EAAGF,EAAGtzF,QAAQ,IAAKwzF,IAAQ,KAIzD,CACV,CAQWC,GAEX,CAmFA,SAASC,GAAmBC,EAAUnkF,EAAOokF,EAAQC,EAASC,EAAsBC,EAElFC,EAAYC,EAAgBC,EAAmBC,GACrB,kBAAfH,IACTE,EAAoBD,EACpBA,EAAiBD,EACjBA,GAAa,GAIf,IAiBII,EAjBAr2F,EAA4B,mBAAX61F,EAAwBA,EAAO71F,QAAU61F,EAsD9D,GApDID,GAAYA,EAAS3rF,SACvBjK,EAAQiK,OAAS2rF,EAAS3rF,OAC1BjK,EAAQoT,gBAAkBwiF,EAASxiF,gBACnCpT,EAAQqT,WAAY,EAEhB0iF,IACF/1F,EAAQgK,YAAa,IAKrB8rF,IACF91F,EAAQsT,SAAWwiF,GAKjBE,GAEFK,EAAO,SAAcl4E,IAEnBA,EAAUA,GACVhiB,KAAKoX,QAAUpX,KAAKoX,OAAOC,YAC3BrX,KAAKsX,QAAUtX,KAAKsX,OAAOF,QAAUpX,KAAKsX,OAAOF,OAAOC,aAGT,oBAAxBE,sBACrByK,EAAUzK,qBAIRjC,GACFA,EAAM5I,KAAK1M,KAAMg6F,EAAkBh4E,IAIjCA,GAAWA,EAAQxK,uBACrBwK,EAAQxK,sBAAsBtK,IAAI2sF,EAEtC,EAIAh2F,EAAQ4T,aAAeyiF,GACd5kF,IACT4kF,EAAOJ,EAAa,SAAU93E,GAC5B1M,EAAM5I,KAAK1M,KAAMi6F,EAAqBj4E,EAAShiB,KAAK0X,MAAMnH,SAASoH,YACrE,EAAI,SAAUqK,GACZ1M,EAAM5I,KAAK1M,KAAM+5F,EAAe/3E,GAClC,GAGEk4E,EACF,GAAIr2F,EAAQgK,WAAY,CAEtB,IAAIssF,EAAiBt2F,EAAQiK,OAE7BjK,EAAQiK,OAAS,SAAkC7M,EAAG+gB,GAEpD,OADAk4E,EAAKxtF,KAAKsV,GACHm4E,EAAel5F,EAAG+gB,EAC3B,CACF,KAAO,CAEL,IAAIoiC,EAAWvgD,EAAQgU,aACvBhU,EAAQgU,aAAeusC,EAAW,GAAGrjD,OAAOqjD,EAAU81C,GAAQ,CAACA,EACjE,CAGF,OAAOR,CACT,CAGA,IAAIU,GArKS,CACX/5F,KAAM,iBACNlB,MAAO,CACLk7F,YAAa,CACX30F,KAAMiB,QACN1I,SAAS,GAEXq8F,YAAa,CACX50F,KAAMiB,QACN1I,SAAS,GAEXs8F,aAAc,CACZ70F,KAAMiB,QACN1I,SAAS,IAGbkT,QAAS,WACP,IAAI2yD,EAAQ9jE,KAEZm5F,KACAn5F,KAAK+L,WAAU,WACb+3D,EAAM02B,GAAK12B,EAAMv2D,IAAIugF,YACrBhqB,EAAM22B,GAAK32B,EAAMv2D,IAAIygF,aAEjBlqB,EAAMu2B,aACRv2B,EAAM42B,UAEV,IACA,IAAIvoE,EAASr1B,SAASwW,cAAc,UACpCtT,KAAK26F,cAAgBxoE,EACrBA,EAAO/gB,aAAa,cAAe,QACnC+gB,EAAO/gB,aAAa,YAAa,GACjC+gB,EAAOyoE,OAAS56F,KAAK66F,kBACrB1oE,EAAOzsB,KAAO,YAEV,IACF1F,KAAKuN,IAAI8F,YAAY8e,GAGvBA,EAAOjwB,KAAO,cAET,IACHlC,KAAKuN,IAAI8F,YAAY8e,EAEzB,EACA3X,cAAe,WACbxa,KAAK86F,sBACP,EACAvvF,QAAS,CACPwvF,iBAAkB,aACX/6F,KAAKs6F,aAAet6F,KAAKw6F,KAAOx6F,KAAKuN,IAAIugF,cAAgB9tF,KAAKu6F,cAAgBv6F,KAAKy6F,KAAOz6F,KAAKuN,IAAIygF,gBACtGhuF,KAAKw6F,GAAKx6F,KAAKuN,IAAIugF,YACnB9tF,KAAKy6F,GAAKz6F,KAAKuN,IAAIygF,aACnBhuF,KAAK06F,WAET,EACAA,SAAU,WACR16F,KAAKyL,MAAM,SAAU,CACnBkR,MAAO3c,KAAKw6F,GACZ99E,OAAQ1c,KAAKy6F,IAEjB,EACAI,kBAAmB,WACjB76F,KAAK26F,cAAcznF,gBAAgBqiC,YAAYj7B,iBAAiB,SAAUta,KAAK+6F,kBAE/E/6F,KAAK+6F,kBACP,EACAD,qBAAsB,WAChB96F,KAAK26F,eAAiB36F,KAAK26F,cAAcC,UACtC,IAAQ56F,KAAK26F,cAAcznF,iBAC9BlT,KAAK26F,cAAcznF,gBAAgBqiC,YAAY96B,oBAAoB,SAAUza,KAAK+6F,kBAGpF/6F,KAAKuN,IAAImG,YAAY1T,KAAK26F,eAC1B36F,KAAK26F,cAAcC,OAAS,KAC5B56F,KAAK26F,cAAgB,KAEzB,IA2FAK,GAAiB,WACnB,IAEIP,EAFMz6F,KAEGuU,eAIb,OANUvU,KAIGwU,MAAMC,IAAMgmF,GAEf,MAAO,CACf1vF,YAAa,kBACb8J,MAAO,CACL2B,SAAU,OAGhB,EAGAwkF,GAAeC,eAAgB,EAG/B,IAgBIC,GAAiC1B,GAAmB,CACtD1rF,OAAQktF,GACR/jF,gBAtB4B,IAIFhU,UAmBFm3F,GAhBH,kBAMc,MAHLn3F,WAauF,OAAOA,OAAWA,OAAWA,GAQpJ,IAAI,GAAS,CAEXqO,QAAS,QACT6pF,QATF,SAAiBC,GAEfA,EAAIC,UAAU,kBAAmBH,IACjCE,EAAIC,UAAU,iBAAkBH,GAClC,GAQII,GAAY,KAEM,oBAAXl6F,OACTk6F,GAAYl6F,OAAOg6F,SACQ,IAAX,EAAAvzF,IAChByzF,GAAY,EAAAzzF,EAAOuzF,KAGjBE,IACFA,GAAUt1E,IAAI,yCClQZu1E,GAAoB,WAA8B,EAMtD,SAASC,GAAex/F,GAKtB,MAJqB,iBAAVA,IACTA,EAAQA,EAAM8vB,MAAM,MAGf9vB,CACT,CASA,SAASy/F,GAAW5uE,EAAI6uE,GACtB,IACI1uF,EADA2uF,EAAaH,GAAeE,GAI9B1uF,EADE6f,EAAG+uE,qBAAqBL,GACdC,GAAe3uE,EAAG+uE,UAAUC,SAE5BL,GAAe3uE,EAAG+uE,WAGhCD,EAAWx+F,SAAQ,SAAU2+F,IACU,IAAjC9uF,EAAUlH,QAAQg2F,IACpB9uF,EAAUrQ,KAAKm/F,EAEnB,IAEIjvE,aAAckvE,WAChBlvE,EAAGzb,aAAa,QAASpE,EAAU6E,KAAK,MAExCgb,EAAG+uE,UAAY5uF,EAAU6E,KAAK,IAElC,CASA,SAASmqF,GAAcnvE,EAAI6uE,GACzB,IACI1uF,EADA2uF,EAAaH,GAAeE,GAI9B1uF,EADE6f,EAAG+uE,qBAAqBL,GACdC,GAAe3uE,EAAG+uE,UAAUC,SAE5BL,GAAe3uE,EAAG+uE,WAGhCD,EAAWx+F,SAAQ,SAAU2+F,GAC3B,IAAIz4E,EAAQrW,EAAUlH,QAAQg2F,IAEf,IAAXz4E,GACFrW,EAAU+F,OAAOsQ,EAAO,EAE5B,IAEIwJ,aAAckvE,WAChBlvE,EAAGzb,aAAa,QAASpE,EAAU6E,KAAK,MAExCgb,EAAG+uE,UAAY5uF,EAAU6E,KAAK,IAElC,CAxEsB,oBAAXzQ,SACTm6F,GAAoBn6F,OAAOm6F,mBAwE7B,IAAIU,IAAkB,EAEtB,GAAsB,oBAAX76F,OAAwB,CACjC66F,IAAkB,EAElB,IACE,IAAI5uE,GAAOxxB,OAAOC,eAAe,CAAC,EAAG,UAAW,CAC9CI,IAAK,WACH+/F,IAAkB,CACpB,IAEF76F,OAAOkZ,iBAAiB,OAAQ,KAAM+S,GAC3B,CAAX,MAAOnwB,GAAI,CACf,CAEA,SAASg/F,GAAU/pE,EAAQgqE,GAAkB,IAAI90F,EAAOxL,OAAOwL,KAAK8qB,GAAS,GAAIt2B,OAAOyL,sBAAuB,CAAE,IAAI8kC,EAAUvwC,OAAOyL,sBAAsB6qB,GAAagqE,IAAgB/vD,EAAUA,EAAQprC,QAAO,SAAUklD,GAAO,OAAOrqD,OAAO0L,yBAAyB4qB,EAAQ+zB,GAAKjqD,UAAY,KAAIoL,EAAK1K,KAAK6K,MAAMH,EAAM+kC,EAAU,CAAE,OAAO/kC,CAAM,CAEtV,SAAS+0F,GAAgBl9F,GAAU,IAAK,IAAIE,EAAI,EAAGA,EAAI4D,UAAU3D,OAAQD,IAAK,CAAE,IAAIkkB,EAAyB,MAAhBtgB,UAAU5D,GAAa4D,UAAU5D,GAAK,CAAC,EAAOA,EAAI,EAAK88F,GAAUrgG,OAAOynB,IAAS,GAAMnmB,SAAQ,SAAUsC,GAAOwmE,EAAgB/mE,EAAQO,EAAK6jB,EAAO7jB,GAAO,IAAe5D,OAAO8L,0BAA6B9L,OAAO+L,iBAAiB1I,EAAQrD,OAAO8L,0BAA0B2b,IAAmB44E,GAAUrgG,OAAOynB,IAASnmB,SAAQ,SAAUsC,GAAO5D,OAAOC,eAAeoD,EAAQO,EAAK5D,OAAO0L,yBAAyB+b,EAAQ7jB,GAAO,GAAM,CAAE,OAAOP,CAAQ,CAC3hB,IAAIm9F,GAAkB,CACpBrzF,WAAW,EACXqN,MAAO,EACP2tB,MAAM,EACNp7B,UAAW,MACX+H,MAAO,GACP8oF,SAAU,+GACV6C,QAAS,cACTzkD,OAAQ,GAEN0kD,GAAe,GAEfC,GAAuB,WAmCzB,SAASA,EAAQC,EAAYC,GAC3B,IAAI54B,EAAQ9jE,MCtJD,SAAyBJ,EAAUC,GAChD,KAAMD,aAAoBC,GACxB,MAAM,IAAIC,UAAU,oCAExB,CDoJIC,CAAgBC,KAAMw8F,GAEtBv2B,EAAgBjmE,KAAM,UAAW,IAEjCimE,EAAgBjmE,KAAM,wBAAwB,SAAU28F,EAAKvS,EAAW/zE,EAAOxS,GAC7E,IAAI+4F,EAAmBD,EAAIC,kBAAoBD,EAAIE,WAAaF,EAAIG,cAcpE,QAAIh5B,EAAMi5B,aAAanR,SAASgR,KAE9B94B,EAAMi5B,aAAaziF,iBAAiBqiF,EAAIj3F,MAd3B,SAASwmB,EAAS8wE,GAC/B,IAAIC,EAAoBD,EAAKJ,kBAAoBI,EAAKH,WAAaG,EAAKF,cAExEh5B,EAAMi5B,aAAatiF,oBAAoBkiF,EAAIj3F,KAAMwmB,GAG5Ck+D,EAAUwB,SAASqR,IAEtBn5B,EAAMo5B,cAAc9S,EAAWvmF,EAAQwS,MAAOxS,EAASm5F,EAE3D,KAMS,EAIX,IAGAN,EAAWN,GAAgBA,GAAgB,CAAC,EAAGC,IAAkBK,GACjED,EAAWzD,SAAWyD,EAAaA,EAAW,IAC9Cz8F,KAAK8O,KAAO9O,KAAK8O,KAAKR,KAAKtO,MAC3BA,KAAK+O,KAAO/O,KAAK+O,KAAKT,KAAKtO,MAE3BA,KAAKoqF,UAAYqS,EACjBz8F,KAAK6D,QAAU64F,EAEf18F,KAAKm9F,SAAU,EAEfn9F,KAAKo9F,OACP,CHvLa,IAAsBv9F,EAAaM,EAAYC,EG2wB5D,OH3wBmCP,EGmMtB28F,GHnMmCr8F,EGmM1B,CAAC,CACrBV,IAAK,OACLzD,MAAO,WACLgE,KAAKq9F,MAAMr9F,KAAKoqF,UAAWpqF,KAAK6D,QAClC,GAOC,CACDpE,IAAK,OACLzD,MAAO,WACLgE,KAAKs9F,OACP,GAOC,CACD79F,IAAK,UACLzD,MAAO,WACLgE,KAAKu9F,UACP,GAOC,CACD99F,IAAK,SACLzD,MAAO,WACL,OAAIgE,KAAKm9F,QACAn9F,KAAK+O,OAEL/O,KAAK8O,MAEhB,GACC,CACDrP,IAAK,aACLzD,MAAO,SAAoB0/F,GACzB17F,KAAKw9F,SAAW9B,CAClB,GACC,CACDj8F,IAAK,aACLzD,MAAO,SAAoB2yB,GACzB3uB,KAAK6D,QAAQ8M,MAAQge,EAEjB3uB,KAAK+8F,cACP/8F,KAAKy9F,YAAY9uE,EAAS3uB,KAAK6D,QAEnC,GACC,CACDpE,IAAK,aACLzD,MAAO,SAAoB6H,GACzB,IAAI65F,GAAiB,EACjBhC,EAAU73F,GAAWA,EAAQ63F,SAAWiC,GAAU95F,QAAQ+5F,aAEzD,KAAQ59F,KAAKw9F,SAAU9B,KAC1B17F,KAAK69F,WAAWnC,GAChBgC,GAAiB,GAGnB75F,EAAUi6F,GAAWj6F,GACrB,IAAIk6F,GAAmB,EACnBC,GAAc,EAUlB,IAAK,IAAIv+F,KARLO,KAAK6D,QAAQg0C,SAAWh0C,EAAQg0C,QAAU73C,KAAK6D,QAAQ+E,YAAc/E,EAAQ+E,YAC/Em1F,GAAmB,IAGjB/9F,KAAK6D,QAAQ41F,WAAa51F,EAAQ41F,UAAYz5F,KAAK6D,QAAQy4F,UAAYz4F,EAAQy4F,SAAWt8F,KAAK6D,QAAQmF,YAAcnF,EAAQmF,WAAa00F,KAC5IM,GAAc,GAGAn6F,EACd7D,KAAK6D,QAAQpE,GAAOoE,EAAQpE,GAG9B,GAAIO,KAAK+8F,aACP,GAAIiB,EAAa,CACf,IAAI5pF,EAASpU,KAAKm9F,QAClBn9F,KAAKi+F,UAELj+F,KAAKo9F,QAEDhpF,GACFpU,KAAK8O,MAET,MAAWivF,GACT/9F,KAAKk+F,eAAelrF,QAG1B,GAIC,CACDvT,IAAK,QACLzD,MAAO,WAEL,IAAIqoD,EAAyC,iBAAzBrkD,KAAK6D,QAAQy4F,QAAuBt8F,KAAK6D,QAAQy4F,QAAQxwE,MAAM,KAAO,GAC1F9rB,KAAKm+F,aAAc,EACnBn+F,KAAKo+F,sBAAqD,IAA9B/5C,EAAOv+C,QAAQ,UAC3Cu+C,EAASA,EAAOrjD,QAAO,SAAUs7F,GAC/B,OAAyD,IAAlD,CAAC,QAAS,QAAS,SAASx2F,QAAQw2F,EAC7C,IAEAt8F,KAAKq+F,mBAAmBr+F,KAAKoqF,UAAW/lC,EAAQrkD,KAAK6D,SAGrD7D,KAAKs+F,gBAAkBt+F,KAAKoqF,UAAUptF,aAAa,SACnDgD,KAAKoqF,UAAUkI,gBAAgB,SAC/BtyF,KAAKoqF,UAAUh5E,aAAa,sBAAuBpR,KAAKs+F,gBAC1D,GAYC,CACD7+F,IAAK,UACLzD,MAAO,SAAiBouF,EAAWqP,GACjC,IAAI8E,EAASv+F,KAGTw+F,EAAmBp9F,OAAOtE,SAASwW,cAAc,OACrDkrF,EAAiBC,UAAYhF,EAASxuF,OACtC,IAAIyzF,EAAcF,EAAiBG,WAAW,GAkB9C,OAhBAD,EAAYrtF,GAAKrR,KAAK6D,QAAQ+6F,QAAU,WAAW79F,OAAOiQ,KAAKC,SAASpO,SAAS,IAAImpB,OAAO,EAAG,KAI/F0yE,EAAYttF,aAAa,cAAe,QAEpCpR,KAAK6D,QAAQg7F,WAAuD,IAA3C7+F,KAAK6D,QAAQy4F,QAAQx2F,QAAQ,WACxD44F,EAAYpkF,iBAAiB,cAAc,SAAUqiF,GACnD,OAAO4B,EAAOrB,cAAc9S,EAAWmU,EAAO16F,QAAQwS,MAAOkoF,EAAO16F,QAAS84F,EAC/E,IACA+B,EAAYpkF,iBAAiB,SAAS,SAAUqiF,GAC9C,OAAO4B,EAAOrB,cAAc9S,EAAWmU,EAAO16F,QAAQwS,MAAOkoF,EAAO16F,QAAS84F,EAC/E,KAIK+B,CACT,GACC,CACDj/F,IAAK,cACLzD,MAAO,SAAqB2yB,EAAS9qB,GACnC,IAAIi7F,EAAS9+F,KAEbA,KAAK++F,cAAe,EAEpB/+F,KAAKg/F,cAAcrwE,EAAS9qB,GAASgf,MAAK,WACnCi8E,EAAOZ,gBAEZY,EAAOZ,eAAelrF,QACxB,GACF,GACC,CACDvT,IAAK,gBACLzD,MAAO,SAAuB2U,EAAO9M,GACnC,IAAIo7F,EAASj/F,KAEb,OAAO,IAAI8d,SAAQ,SAAUC,EAASC,GACpC,IAAIkhF,EAAYr7F,EAAQmgC,KACpBm7D,EAAWF,EAAOlC,aACtB,GAAKoC,EAAL,CACA,IAAIC,EAAYD,EAASp2F,cAAck2F,EAAOp7F,QAAQw7F,eAEtD,GAAuB,IAAnB1uF,EAAMohD,UAER,GAAImtC,EAAW,CACb,KAAOE,EAAUvrF,YACfurF,EAAU1rF,YAAY0rF,EAAUvrF,YAGlCurF,EAAU/rF,YAAY1C,EACxB,MACK,IAAqB,mBAAVA,EAAsB,CAEtC,IAAI+c,EAAS/c,IAkBb,YAhBI+c,GAAiC,mBAAhBA,EAAO7K,MAC1Bo8E,EAAOF,cAAe,EACtBl7F,EAAQy7F,cAAgB7D,GAAW0D,EAAUt7F,EAAQy7F,cAEjDz7F,EAAQ07F,gBACVN,EAAOD,cAAcn7F,EAAQ07F,eAAgB17F,GAG/C6pB,EAAO7K,MAAK,SAAU28E,GAEpB,OADA37F,EAAQy7F,cAAgBtD,GAAcmD,EAAUt7F,EAAQy7F,cACjDL,EAAOD,cAAcQ,EAAa37F,EAC3C,IAAGgf,KAAK9E,GAASsmD,MAAMrmD,IAEvBihF,EAAOD,cAActxE,EAAQ7pB,GAASgf,KAAK9E,GAASsmD,MAAMrmD,GAI9D,CAEEkhF,EAAYE,EAAUX,UAAY9tF,EAAQyuF,EAAUK,UAAY9uF,CAClE,CAEAoN,GAtCqB,CAuCvB,GACF,GACC,CACDte,IAAK,QACLzD,MAAO,SAAeouF,EAAWvmF,GAC/B,IAAIA,GAAwC,iBAAtBA,EAAQmF,WACZlM,SAASiM,cAAclF,EAAQmF,WADjD,CAKAqP,aAAarY,KAAK0/F,sBAClB77F,EAAUhI,OAAO2C,OAAO,CAAC,EAAGqF,IACbg0C,OACf,IAAI8nD,GAAgB,EAEhB3/F,KAAK+8F,eACPtB,GAAWz7F,KAAK+8F,aAAc/8F,KAAKw9F,UACnCmC,GAAgB,GAGlB,IAAIjyE,EAAS1tB,KAAK4/F,aAAaxV,EAAWvmF,GAO1C,OALI87F,GAAiB3/F,KAAK+8F,cACxBtB,GAAWz7F,KAAK+8F,aAAc/8F,KAAKw9F,UAGrC/B,GAAWrR,EAAW,CAAC,mBAChB18D,CAnBP,CAoBF,GACC,CACDjuB,IAAK,eACLzD,MAAO,SAAsBouF,EAAWvmF,GACtC,IAAIg8F,EAAS7/F,KAGb,GAAIA,KAAKm9F,QACP,OAAOn9F,KAMT,GAHAA,KAAKm9F,SAAU,EACfZ,GAAa5/F,KAAKqD,MAEdA,KAAK+8F,aAYP,OAXA/8F,KAAK+8F,aAAaznF,MAAMuvB,QAAU,GAElC7kC,KAAK+8F,aAAa3rF,aAAa,cAAe,SAE9CpR,KAAKk+F,eAAe/K,uBACpBnzF,KAAKk+F,eAAelrF,SAEhBhT,KAAK++F,cACP/+F,KAAKy9F,YAAY55F,EAAQ8M,MAAO9M,GAG3B7D,KAIT,IAAI2Q,EAAQy5E,EAAUptF,aAAa,UAAY6G,EAAQ8M,MAEvD,IAAKA,EACH,OAAO3Q,KAIT,IAAI0+F,EAAc1+F,KAAK8/F,QAAQ1V,EAAWvmF,EAAQ41F,UAElDz5F,KAAK+8F,aAAe2B,EAEpBtU,EAAUh5E,aAAa,mBAAoBstF,EAAYrtF,IAEvD,IAAIrI,EAAYhJ,KAAK+/F,eAAel8F,EAAQmF,UAAWohF,GAEvDpqF,KAAKggG,QAAQtB,EAAa11F,GAE1B,IAAIi3F,EAAgB7D,GAAgBA,GAAgB,CAAC,EAAGv4F,EAAQo8F,eAAgB,CAAC,EAAG,CAClFr3F,UAAW/E,EAAQ+E,YAoCrB,OAjCAq3F,EAAclqF,UAAYqmF,GAAgBA,GAAgB,CAAC,EAAG6D,EAAclqF,WAAY,CAAC,EAAG,CAC1FggF,MAAO,CACL3gD,QAASp1C,KAAK6D,QAAQq8F,iBAItBr8F,EAAQgF,oBACVo3F,EAAclqF,UAAUw/E,gBAAkB,CACxC1sF,kBAAmBhF,EAAQgF,oBAI/B7I,KAAKk+F,eAAiB,IAAI,GAAO9T,EAAWsU,EAAauB,GAEzDjgG,KAAKy9F,YAAY9sF,EAAO9M,GAGxBk1F,uBAAsB,YACf8G,EAAO1B,aAAe0B,EAAO3B,gBAChC2B,EAAO3B,eAAelrF,SAGtB+lF,uBAAsB,WACf8G,EAAO1B,YAGV0B,EAAO5B,UAFP4B,EAAO1C,SAAWuB,EAAYttF,aAAa,cAAe,QAI9D,KAEAyuF,EAAO5B,SAEX,IACOj+F,IACT,GACC,CACDP,IAAK,gBACLzD,MAAO,WACL,IAAIqnB,EAAQk5E,GAAaz2F,QAAQ9F,OAElB,IAAXqjB,GACFk5E,GAAaxpF,OAAOsQ,EAAO,EAE/B,GACC,CACD5jB,IAAK,QACLzD,MAAO,WAGL,IAAImkG,EAASngG,KAGb,IAAKA,KAAKm9F,QACR,OAAOn9F,KAGTA,KAAKm9F,SAAU,EAEfn9F,KAAKogG,gBAGLpgG,KAAK+8F,aAAaznF,MAAMuvB,QAAU,OAElC7kC,KAAK+8F,aAAa3rF,aAAa,cAAe,QAE1CpR,KAAKk+F,gBACPl+F,KAAKk+F,eAAe1L,wBAGtBn6E,aAAarY,KAAK0/F,eAClB,IAAIW,EAAc1C,GAAU95F,QAAQy8F,eAgBpC,OAdoB,OAAhBD,IACFrgG,KAAK0/F,cAAgBvnF,YAAW,WAC1BgoF,EAAOpD,eACToD,EAAOpD,aAAatiF,oBAAoB,aAAc0lF,EAAOpxF,MAE7DoxF,EAAOpD,aAAatiF,oBAAoB,QAAS0lF,EAAOpxF,MAGxDoxF,EAAOI,qBAEX,GAAGF,IAGLrE,GAAch8F,KAAKoqF,UAAW,CAAC,mBACxBpqF,IACT,GACC,CACDP,IAAK,qBACLzD,MAAO,WACL,GAAKgE,KAAK+8F,aAAV,CACA,IAAItpF,EAAazT,KAAK+8F,aAAatpF,WAE/BA,IACFA,EAAWC,YAAY1T,KAAK+8F,cAC5B/8F,KAAKoqF,UAAUkI,gBAAgB,qBAGjCtyF,KAAK+8F,aAAe,IARU,CAShC,GACC,CACDt9F,IAAK,WACLzD,MAAO,WACL,IAAIwkG,EAASxgG,KAoCb,OAlCAA,KAAKm+F,aAAc,EACnBn+F,KAAKoqF,UAAUkI,gBAAgB,uBAE3BtyF,KAAKs+F,iBACPt+F,KAAKoqF,UAAUh5E,aAAa,QAASpR,KAAKs+F,iBAI5Ct+F,KAAKygG,QAAQtjG,SAAQ,SAAUwyF,GAC7B,IAAIn+D,EAAOm+D,EAAKn+D,KACZhxB,EAAQmvF,EAAKnvF,MAEjBggG,EAAOpW,UAAU3vE,oBAAoBja,EAAOgxB,EAC9C,IAEAxxB,KAAKygG,QAAU,GAEXzgG,KAAK+8F,cACP/8F,KAAKs9F,QAELt9F,KAAK+8F,aAAatiF,oBAAoB,aAAcza,KAAK+O,MAEzD/O,KAAK+8F,aAAatiF,oBAAoB,QAASza,KAAK+O,MAGpD/O,KAAKk+F,eAAevjF,UAEf3a,KAAKk+F,eAAer6F,QAAQ4uF,iBAC/BzyF,KAAKugG,sBAGPvgG,KAAKogG,gBAGApgG,IACT,GACC,CACDP,IAAK,iBACLzD,MAAO,SAAwBgN,EAAWohF,GASxC,MAPyB,iBAAdphF,EACTA,EAAY5H,OAAOtE,SAASiM,cAAcC,IACnB,IAAdA,IAETA,EAAYohF,EAAU32E,YAGjBzK,CACT,GASC,CACDvJ,IAAK,UACLzD,MAAO,SAAiB0iG,EAAa11F,GACnCA,EAAUqK,YAAYqrF,EACxB,GACC,CACDj/F,IAAK,qBACLzD,MAAO,SAA4BouF,EAAW/lC,EAAQxgD,GACpD,IAAI68F,EAAS1gG,KAET2gG,EAAe,GACfC,EAAiB,GACrBv8C,EAAOlnD,SAAQ,SAAUqD,GACvB,OAAQA,GACN,IAAK,QACHmgG,EAAahkG,KAAK,cAClBikG,EAAejkG,KAAK,cAChB+jG,EAAO78F,QAAQg9F,mBAAmBD,EAAejkG,KAAK,SAC1D,MAEF,IAAK,QACHgkG,EAAahkG,KAAK,SAClBikG,EAAejkG,KAAK,QAChB+jG,EAAO78F,QAAQg9F,mBAAmBD,EAAejkG,KAAK,SAC1D,MAEF,IAAK,QACHgkG,EAAahkG,KAAK,SAClBikG,EAAejkG,KAAK,SAG1B,IAEAgkG,EAAaxjG,SAAQ,SAAUqD,GAC7B,IAAIgxB,EAAO,SAAcmrE,IACA,IAAnB+D,EAAOvD,UAIXR,EAAImE,eAAgB,EAEpBJ,EAAOK,cAAc3W,EAAWvmF,EAAQwS,MAAOxS,EAAS84F,GAC1D,EAEA+D,EAAOD,QAAQ9jG,KAAK,CAClB6D,MAAOA,EACPgxB,KAAMA,IAGR44D,EAAU9vE,iBAAiB9Z,EAAOgxB,EACpC,IAEAovE,EAAezjG,SAAQ,SAAUqD,GAC/B,IAAIgxB,EAAO,SAAcmrE,IACG,IAAtBA,EAAImE,eAIRJ,EAAOxD,cAAc9S,EAAWvmF,EAAQwS,MAAOxS,EAAS84F,EAC1D,EAEA+D,EAAOD,QAAQ9jG,KAAK,CAClB6D,MAAOA,EACPgxB,KAAMA,IAGR44D,EAAU9vE,iBAAiB9Z,EAAOgxB,EACpC,GACF,GACC,CACD/xB,IAAK,mBACLzD,MAAO,SAA0BwE,GAC3BR,KAAKo+F,sBACPp+F,KAAKk9F,cAAcl9F,KAAKoqF,UAAWpqF,KAAK6D,QAAQwS,MAAOrW,KAAK6D,QAASrD,EAEzE,GACC,CACDf,IAAK,gBACLzD,MAAO,SAAuBouF,EAAW/zE,EAAOxS,GAG9C,IAAIm9F,EAAShhG,KAGTihG,EAAgB5qF,GAASA,EAAMvH,MAAQuH,GAAS,EACpDgC,aAAarY,KAAKkhG,gBAClBlhG,KAAKkhG,eAAiB9/F,OAAO+W,YAAW,WACtC,OAAO6oF,EAAO3D,MAAMjT,EAAWvmF,EACjC,GAAGo9F,EACL,GACC,CACDxhG,IAAK,gBACLzD,MAAO,SAAuBouF,EAAW/zE,EAAOxS,EAAS84F,GACvD,IAAIwE,EAAUnhG,KAGVihG,EAAgB5qF,GAASA,EAAMtH,MAAQsH,GAAS,EACpDgC,aAAarY,KAAKkhG,gBAClBlhG,KAAKkhG,eAAiB9/F,OAAO+W,YAAW,WACtC,IAAwB,IAApBgpF,EAAQhE,SAIPgE,EAAQpE,aAAaznD,cAAcv6B,KAAK6wE,SAASuV,EAAQpE,cAA9D,CAMA,GAAiB,eAAbJ,EAAIj3F,MACMy7F,EAAQC,qBAAqBzE,EAAKvS,EAAW/zE,EAAOxS,GAK9D,OAIJs9F,EAAQ7D,MAAMlT,EAAWvmF,EAdzB,CAeF,GAAGo9F,EACL,MHvwBchiG,EAAkBY,EAAYa,UAAWP,GACrDC,GAAanB,EAAkBY,EAAaO,GAChDvE,OAAOC,eAAe+D,EAAa,YAAa,CAC9CL,UAAU,IGuwBLg9F,CACT,CApqB2B,GAgsB3B,SAAS6E,GAAUlvE,EAAQgqE,GAAkB,IAAI90F,EAAOxL,OAAOwL,KAAK8qB,GAAS,GAAIt2B,OAAOyL,sBAAuB,CAAE,IAAI8kC,EAAUvwC,OAAOyL,sBAAsB6qB,GAAagqE,IAAgB/vD,EAAUA,EAAQprC,QAAO,SAAUklD,GAAO,OAAOrqD,OAAO0L,yBAAyB4qB,EAAQ+zB,GAAKjqD,UAAY,KAAIoL,EAAK1K,KAAK6K,MAAMH,EAAM+kC,EAAU,CAAE,OAAO/kC,CAAM,CAEtV,SAASi6F,GAAgBpiG,GAAU,IAAK,IAAIE,EAAI,EAAGA,EAAI4D,UAAU3D,OAAQD,IAAK,CAAE,IAAIkkB,EAAyB,MAAhBtgB,UAAU5D,GAAa4D,UAAU5D,GAAK,CAAC,EAAOA,EAAI,EAAKiiG,GAAUxlG,OAAOynB,IAAS,GAAMnmB,SAAQ,SAAUsC,GAAOwmE,EAAgB/mE,EAAQO,EAAK6jB,EAAO7jB,GAAO,IAAe5D,OAAO8L,0BAA6B9L,OAAO+L,iBAAiB1I,EAAQrD,OAAO8L,0BAA0B2b,IAAmB+9E,GAAUxlG,OAAOynB,IAASnmB,SAAQ,SAAUsC,GAAO5D,OAAOC,eAAeoD,EAAQO,EAAK5D,OAAO0L,yBAAyB+b,EAAQ7jB,GAAO,GAAM,CAAE,OAAOP,CAAQ,CA5BngB,oBAAbpC,UACTA,SAASwd,iBAAiB,cAAc,SAAU9Z,GAChD,IAAK,IAAIpB,EAAI,EAAGA,EAAIm9F,GAAal9F,OAAQD,IACvCm9F,GAAan9F,GAAGmiG,iBAAiB/gG,EAErC,IAAGy7F,IAAkB,CACnBnJ,SAAS,EACTxmD,SAAS,IAsBb,IAAI3U,GAAQ,CACV25D,SAAS,GAEPkQ,GAAY,CAAC,MAAO,YAAa,UAAW,QAAS,cAAe,YAAa,SAAU,eAAgB,aAAc,OAAQ,aAAc,YAC/IC,GAAiB,CAEnBC,iBAAkB,MAElB9D,aAAc,oBAEd+D,mBAAoB,cAEpB/yF,aAAa,EAIbD,gBAAiB,+GAEjBizF,qBAAsB,kCAEtBC,qBAAsB,kCAEtBhzF,aAAc,EAEdizF,eAAgB,cAEhBC,cAAe,EAEfC,iBAAkB,OAClBC,8BAA0Bh/F,EAC1Bi/F,qBAAsB,CAAC,EAEvBC,oBAAqB,kBAErBC,sBAAuB,MAEvBvD,UAAU,EAEVwD,0BAA0B,EAE1B/B,eAAgB,IAEhBnsF,QAAS,CACPutF,iBAAkB,SAElB9D,aAAc,oBAEd0E,iBAAkB,kBAElBC,oBAAqB,UAErBC,kBAAmB,8BAEnBC,kBAAmB,8BAEnBC,iBAAkB,OAClB7zF,aAAc,EACdizF,eAAgB,QAChBC,cAAe,EACfC,iBAAkB,OAClBC,8BAA0Bh/F,EAC1Bi/F,qBAAsB,CAAC,EAEvBS,iBAAiB,EAEjBC,qBAAqB,IAGzB,SAAS9E,GAAWj6F,GAClB,IAAI6pB,EAAS,CACX9kB,eAAwC,IAAtB/E,EAAQ+E,UAA4B/E,EAAQ+E,UAAY+0F,GAAU95F,QAAQ69F,iBAC5FrrF,WAAgC,IAAlBxS,EAAQwS,MAAwBxS,EAAQwS,MAAQsnF,GAAU95F,QAAQgL,aAChFm1B,UAA8B,IAAjBngC,EAAQmgC,KAAuBngC,EAAQmgC,KAAO25D,GAAU95F,QAAQ+K,YAC7E6qF,cAAsC,IAArB51F,EAAQ41F,SAA2B51F,EAAQ41F,SAAWkE,GAAU95F,QAAQ8K,gBACzFuxF,mBAAgD,IAA1Br8F,EAAQq8F,cAAgCr8F,EAAQq8F,cAAgBvC,GAAU95F,QAAQ+9F,qBACxGvC,mBAAgD,IAA1Bx7F,EAAQw7F,cAAgCx7F,EAAQw7F,cAAgB1B,GAAU95F,QAAQg+F,qBACxGvF,aAAoC,IAApBz4F,EAAQy4F,QAA0Bz4F,EAAQy4F,QAAUqB,GAAU95F,QAAQi+F,eACtFjqD,YAAkC,IAAnBh0C,EAAQg0C,OAAyBh0C,EAAQg0C,OAAS8lD,GAAU95F,QAAQk+F,cACnF/4F,eAAwC,IAAtBnF,EAAQmF,UAA4BnF,EAAQmF,UAAY20F,GAAU95F,QAAQm+F,iBAC5Fn5F,uBAAwD,IAA9BhF,EAAQgF,kBAAoChF,EAAQgF,kBAAoB80F,GAAU95F,QAAQo+F,yBACpHpD,cAAsC,IAArBh7F,EAAQg7F,SAA2Bh7F,EAAQg7F,SAAWlB,GAAU95F,QAAQg7F,SACzFgC,uBAAwD,IAA9Bh9F,EAAQg9F,kBAAoCh9F,EAAQg9F,kBAAoBlD,GAAU95F,QAAQw+F,yBACpH/C,kBAA8C,IAAzBz7F,EAAQy7F,aAA+Bz7F,EAAQy7F,aAAe3B,GAAU95F,QAAQs+F,oBACrG5C,oBAAkD,IAA3B17F,EAAQ07F,eAAiC17F,EAAQ07F,eAAiB5B,GAAU95F,QAAQu+F,sBAC3GnC,cAAeqB,GAAgB,CAAC,OAAoC,IAA1Bz9F,EAAQo8F,cAAgCp8F,EAAQo8F,cAAgBtC,GAAU95F,QAAQq+F,uBAG9H,GAAIx0E,EAAOmqB,OAAQ,CACjB,IAAIgrD,EAAe3hC,EAAQxzC,EAAOmqB,QAE9BA,EAASnqB,EAAOmqB,QAEC,WAAjBgrD,GAA8C,WAAjBA,IAAsD,IAAzBhrD,EAAO/xC,QAAQ,QAC3E+xC,EAAS,MAAM92C,OAAO82C,IAGnBnqB,EAAOuyE,cAAclqF,YACxB2X,EAAOuyE,cAAclqF,UAAY,CAAC,GAGpC2X,EAAOuyE,cAAclqF,UAAU8hC,OAAS,CACtCA,OAAQA,EAEZ,CAMA,OAJInqB,EAAO4uE,UAAgD,IAArC5uE,EAAO4uE,QAAQx2F,QAAQ,WAC3C4nB,EAAOmzE,mBAAoB,GAGtBnzE,CACT,CACA,SAASo1E,GAAa9mG,EAAO+Z,GAG3B,IAFA,IAAInN,EAAY5M,EAAM4M,UAEbxJ,EAAI,EAAGA,EAAIoiG,GAAUniG,OAAQD,IAAK,CACzC,IAAI6oC,EAAMu5D,GAAUpiG,GAEhB2W,EAAUkyB,KACZr/B,EAAYq/B,EAEhB,CAEA,OAAOr/B,CACT,CACA,SAASm6F,GAAW/mG,GAClB,IAAI0J,EAAOw7D,EAAQllE,GAEnB,MAAa,WAAT0J,EACK1J,KACEA,GAAkB,WAAT0J,IACX1J,EAAM2yB,OAIjB,CACA,SAASq0E,GAAcn2E,EAAI7wB,GACzB,IAAI+Z,EAAY/S,UAAU3D,OAAS,QAAsB4D,IAAjBD,UAAU,GAAmBA,UAAU,GAAK,CAAC,EACjF2rB,EAAUo0E,GAAW/mG,GACrB0/F,OAAmC,IAAlB1/F,EAAM0/F,QAA0B1/F,EAAM0/F,QAAUiC,GAAU95F,QAAQ+5F,aAEnFvwE,EAAOi0E,GAAgB,CACzB3wF,MAAOge,GACNmvE,GAAWwD,GAAgBA,GAAgB,CAAC,EAAsB,WAAnBpgC,EAAQllE,GAAsBA,EAAQ,CAAC,GAAI,CAAC,EAAG,CAC/F4M,UAAWk6F,GAAa9mG,EAAO+Z,OAG7BhO,EAAU8kB,EAAGo2E,SAAW,IAAIzG,GAAQ3vE,EAAIQ,GAC5CtlB,EAAQ81F,WAAWnC,GACnB3zF,EAAQm7F,OAASr2E,EAEjB,IAAIs2E,OAA+C,IAAxBnnG,EAAMmnG,cAAgCnnG,EAAMmnG,cAAgBxF,GAAU95F,QAAQ89F,mBAGzG,OAFA90E,EAAGu2E,sBAAwBD,EAC3B1H,GAAW5uE,EAAIs2E,GACRp7F,CACT,CACA,SAASs7F,GAAex2E,GAClBA,EAAGo2E,WACLp2E,EAAGo2E,SAAShF,iBAELpxE,EAAGo2E,gBACHp2E,EAAGy2E,iBAGRz2E,EAAGu2E,wBACLpH,GAAcnvE,EAAIA,EAAGu2E,8BACdv2E,EAAGu2E,sBAEd,CACA,SAAS90F,GAAKue,EAAI8iE,GAChB,IAAI3zF,EAAQ2zF,EAAK3zF,MACb2zF,EAAK4T,SACL,IAMEx7F,EANEgO,EAAY45E,EAAK55E,UACrB4Y,EAAUo0E,GAAW/mG,GAEpB2yB,GAAYgJ,GAAM25D,SAKjBzkE,EAAGo2E,WACLl7F,EAAU8kB,EAAGo2E,UAELO,WAAW70E,GAEnB5mB,EAAQ07F,WAAWnC,GAAgBA,GAAgB,CAAC,EAAGtlG,GAAQ,CAAC,EAAG,CACjE4M,UAAWk6F,GAAa9mG,EAAO+Z,OAGjChO,EAAUi7F,GAAcn2E,EAAI7wB,EAAO+Z,QAIX,IAAf/Z,EAAM8S,MAAwB9S,EAAM8S,OAAS+d,EAAGy2E,kBACzDz2E,EAAGy2E,gBAAkBtnG,EAAM8S,KAC3B9S,EAAM8S,KAAO/G,EAAQ+G,OAAS/G,EAAQgH,SAnBxCs0F,GAAex2E,EAsBnB,CACA,IAAI8wE,GAAY,CACd95F,QAAS49F,GACTnzF,KAAMA,GACN0E,OAAQ1E,GACRo1F,OAAQ,SAAgB72E,GACtBw2E,GAAex2E,EACjB,GAGF,SAAS82E,GAAa92E,GACpBA,EAAGvS,iBAAiB,QAASvJ,IAC7B8b,EAAGvS,iBAAiB,aAAcspF,KAAc3H,IAAkB,CAChEnJ,SAAS,GAEb,CAEA,SAAS+Q,GAAgBh3E,GACvBA,EAAGpS,oBAAoB,QAAS1J,IAChC8b,EAAGpS,oBAAoB,aAAcmpF,IACrC/2E,EAAGpS,oBAAoB,WAAYqpF,IACnCj3E,EAAGpS,oBAAoB,cAAespF,GACxC,CAEA,SAAShzF,GAAQvQ,GACf,IAAIqsB,EAAKrsB,EAAMyc,cACfzc,EAAMwjG,cAAgBn3E,EAAGo3E,sBACzBzjG,EAAM0jG,gBAAkBr3E,EAAGs3E,2BAA6Bt3E,EAAGs3E,wBAAwB7hF,GACrF,CAEA,SAASshF,GAAapjG,GACpB,GAAoC,IAAhCA,EAAM+7C,eAAel9C,OAAc,CACrC,IAAIwtB,EAAKrsB,EAAMyc,cACf4P,EAAGo3E,uBAAwB,EAC3B,IAAIjnD,EAAQx8C,EAAM+7C,eAAe,GACjC1vB,EAAGu3E,2BAA6BpnD,EAChCnwB,EAAGvS,iBAAiB,WAAYwpF,IAChCj3E,EAAGvS,iBAAiB,cAAeypF,GACrC,CACF,CAEA,SAASD,GAAWtjG,GAClB,IAAIqsB,EAAKrsB,EAAMyc,cAGf,GAFA4P,EAAGo3E,uBAAwB,EAES,IAAhCzjG,EAAM+7C,eAAel9C,OAAc,CACrC,IAAI29C,EAAQx8C,EAAM+7C,eAAe,GAC7B8nD,EAAax3E,EAAGu3E,2BACpB5jG,EAAMwjG,aAAehzF,KAAKiiC,IAAI+J,EAAMsnD,QAAUD,EAAWC,SAAW,IAAMtzF,KAAKiiC,IAAI+J,EAAMunD,QAAUF,EAAWE,SAAW,GACzH/jG,EAAM0jG,gBAAkBr3E,EAAGs3E,2BAA6Bt3E,EAAGs3E,wBAAwB7hF,GACrF,CACF,CAEA,SAASyhF,GAAcvjG,GACZA,EAAMyc,cACZgnF,uBAAwB,CAC7B,CAEA,IAAIO,GAAgB,CAClBl2F,KAAM,SAAcue,EAAI8iE,GACtB,IAAI3zF,EAAQ2zF,EAAK3zF,MACb+Z,EAAY45E,EAAK55E,UACrB8W,EAAGs3E,wBAA0BpuF,QAER,IAAV/Z,GAAyBA,IAClC2nG,GAAa92E,EAEjB,EACA7Z,OAAQ,SAAgB6Z,EAAIqjE,GAC1B,IAAIl0F,EAAQk0F,EAAMl0F,MACdunG,EAAWrT,EAAMqT,SACjBxtF,EAAYm6E,EAAMn6E,UACtB8W,EAAGs3E,wBAA0BpuF,EAEzB/Z,IAAUunG,SACS,IAAVvnG,GAAyBA,EAClC2nG,GAAa92E,GAEbg3E,GAAgBh3E,GAGtB,EACA62E,OAAQ,SAAgB72E,GACtBg3E,GAAgBh3E,EAClB,GAGF,SAASgN,GAAQ1H,EAAQgqE,GAAkB,IAAI90F,EAAOxL,OAAOwL,KAAK8qB,GAAS,GAAIt2B,OAAOyL,sBAAuB,CAAE,IAAI8kC,EAAUvwC,OAAOyL,sBAAsB6qB,GAAagqE,IAAgB/vD,EAAUA,EAAQprC,QAAO,SAAUklD,GAAO,OAAOrqD,OAAO0L,yBAAyB4qB,EAAQ+zB,GAAKjqD,UAAY,KAAIoL,EAAK1K,KAAK6K,MAAMH,EAAM+kC,EAAU,CAAE,OAAO/kC,CAAM,CAEpV,SAAS6iE,GAAchrE,GAAU,IAAK,IAAIE,EAAI,EAAGA,EAAI4D,UAAU3D,OAAQD,IAAK,CAAE,IAAIkkB,EAAyB,MAAhBtgB,UAAU5D,GAAa4D,UAAU5D,GAAK,CAAC,EAAOA,EAAI,EAAKy6B,GAAQh+B,OAAOynB,IAAS,GAAMnmB,SAAQ,SAAUsC,GAAOwmE,EAAgB/mE,EAAQO,EAAK6jB,EAAO7jB,GAAO,IAAe5D,OAAO8L,0BAA6B9L,OAAO+L,iBAAiB1I,EAAQrD,OAAO8L,0BAA0B2b,IAAmBuW,GAAQh+B,OAAOynB,IAASnmB,SAAQ,SAAUsC,GAAO5D,OAAOC,eAAeoD,EAAQO,EAAK5D,OAAO0L,yBAAyB+b,EAAQ7jB,GAAO,GAAM,CAAE,OAAOP,CAAQ,CAErhB,SAASulG,GAAWhlG,GAClB,IAAIzD,EAAQ2hG,GAAU95F,QAAQsQ,QAAQ1U,GAEtC,YAAqB,IAAVzD,EACF2hG,GAAU95F,QAAQpE,GAGpBzD,CACT,CAEA,IAAI0oG,IAAQ,EAEU,oBAAXtjG,QAA+C,oBAAd2pB,YAC1C25E,GAAQ,mBAAmB73F,KAAKke,UAAUC,aAAe5pB,OAAOujG,UAGlE,IAAIC,GAAe,GAEf97F,GAAU,WAAoB,EAEZ,oBAAX1H,SACT0H,GAAU1H,OAAO0H,SAGnB,IAAI,GAAS,CACXzI,KAAM,WACN2H,WAAY,CACV68F,eAAgB,IAElB1lG,MAAO,CACLiJ,KAAM,CACJ1C,KAAMiB,QACN1I,SAAS,GAEXyI,SAAU,CACRhB,KAAMiB,QACN1I,SAAS,GAEX2K,UAAW,CACTlD,KAAM8C,OACNvK,QAAS,WACP,OAAOwmG,GAAW,mBACpB,GAEFpuF,MAAO,CACL3Q,KAAM,CAAC8C,OAAQ2Q,OAAQtd,QACvBoC,QAAS,WACP,OAAOwmG,GAAW,eACpB,GAEF5sD,OAAQ,CACNnyC,KAAM,CAAC8C,OAAQ2Q,QACflb,QAAS,WACP,OAAOwmG,GAAW,gBACpB,GAEFnI,QAAS,CACP52F,KAAM8C,OACNvK,QAAS,WACP,OAAOwmG,GAAW,iBACpB,GAEFz7F,UAAW,CACTtD,KAAM,CAAC8C,OAAQ3M,OAAQiN,GAASnC,SAChC1I,QAAS,WACP,OAAOwmG,GAAW,mBACpB,GAEF57F,kBAAmB,CACjBnD,KAAM,CAAC8C,OAAQM,IACf7K,QAAS,WACP,OAAOwmG,GAAW,2BACpB,GAEFxE,cAAe,CACbv6F,KAAM7J,OACNoC,QAAS,WACP,OAAOwmG,GAAW,uBACpB,GAEFK,aAAc,CACZp/F,KAAM,CAAC8C,OAAQrB,OACflJ,QAAS,WACP,OAAOwmG,GAAW,eACpB,GAEFM,iBAAkB,CAChBr/F,KAAM,CAAC8C,OAAQrB,OACflJ,QAAS,WACP,OAAO0/F,GAAU95F,QAAQsQ,QAAQmuF,gBACnC,GAEF0C,kBAAmB,CACjBt/F,KAAM,CAAC8C,OAAQrB,OACflJ,QAAS,WACP,OAAO0/F,GAAU95F,QAAQsQ,QAAQquF,iBACnC,GAEFyC,oBAAqB,CACnBv/F,KAAM,CAAC8C,OAAQrB,OACflJ,QAAS,WACP,OAAO0/F,GAAU95F,QAAQsQ,QAAQouF,mBACnC,GAEF2C,kBAAmB,CACjBx/F,KAAM,CAAC8C,OAAQrB,OACflJ,QAAS,WACP,OAAO0/F,GAAU95F,QAAQsQ,QAAQsuF,iBACnC,GAEF5D,SAAU,CACRn5F,KAAMiB,QACN1I,QAAS,WACP,OAAO0/F,GAAU95F,QAAQsQ,QAAQwuF,eACnC,GAEFwC,aAAc,CACZz/F,KAAMiB,QACN1I,QAAS,WACP,OAAO0/F,GAAU95F,QAAQsQ,QAAQyuF,mBACnC,GAEFwC,UAAW,CACT1/F,KAAM8C,OACNvK,QAAS,MAEXonG,UAAW,CACT3/F,KAAM,CAAC8C,OAAQrB,OACflJ,QAAS,WACP,OAAO0/F,GAAU95F,QAAQsQ,QAAQuuF,gBACnC,GAEF9D,OAAQ,CACN3gG,QAAS,OAGbiE,KAAM,WACJ,MAAO,CACLkS,QAAQ,EACR/C,GAAIL,KAAKC,SAASpO,SAAS,IAAImpB,OAAO,EAAG,IAE7C,EACAplB,SAAU,CACR0+F,SAAU,WACR,OAAOr/B,EAAgB,CAAC,EAAGjmE,KAAKqlG,UAAWrlG,KAAKoU,OAClD,EACAmxF,UAAW,WACT,MAAO,WAAWxkG,OAAsB,MAAff,KAAK4+F,OAAiB5+F,KAAK4+F,OAAS5+F,KAAKqR,GACpE,GAEFlG,MAAO,CACL/C,KAAM,SAAc0Y,GACdA,EACF9gB,KAAK8O,OAEL9O,KAAK+O,MAET,EACArI,SAAU,SAAkBoa,EAAK0kF,GAC3B1kF,IAAQ0kF,IACN1kF,EACF9gB,KAAK+O,OACI/O,KAAKoI,MACdpI,KAAK8O,OAGX,EACA9F,UAAW,SAAmB8X,GAC5B,GAAI9gB,KAAKoU,QAAUpU,KAAKk+F,eAAgB,CACtC,IAAIuH,EAAczlG,KAAK2L,MAAMwI,QACzBi2E,EAAYpqF,KAAK2L,MAAM2wF,QACvBtzF,EAAYhJ,KAAK0lG,gBAAgB1lG,KAAKgJ,UAAWohF,GAErD,IAAKphF,EAEH,YADA,GAAQ9I,KAAK,2BAA4BF,MAI3CgJ,EAAUqK,YAAYoyF,GACtBzlG,KAAKk+F,eAAe9K,gBACtB,CACF,EACAkJ,QAAS,SAAiBx7E,GACxB9gB,KAAK2lG,yBACL3lG,KAAK4lG,qBACP,EACAh9F,UAAW,SAAmBkY,GAC5B,IAAIgjD,EAAQ9jE,KAEZA,KAAK6lG,gBAAe,WAClB/hC,EAAMo6B,eAAer6F,QAAQ+E,UAAYkY,CAC3C,GACF,EACA+2B,OAAQ,kBACRhvC,kBAAmB,kBACnBo3F,cAAe,CACb3/F,QAAS,kBACTwlG,MAAM,IAGVC,QAAS,WACP/lG,KAAKgmG,cAAe,EACpBhmG,KAAKimG,WAAY,EACjBjmG,KAAKkmG,SAAW,GAChBlmG,KAAKmmG,eAAgB,CACvB,EACAh1F,QAAS,WACP,IAAIs0F,EAAczlG,KAAK2L,MAAMwI,QAC7BsxF,EAAYhyF,YAAcgyF,EAAYhyF,WAAWC,YAAY+xF,GAC7DzlG,KAAKomG,SAEDpmG,KAAKoI,MACPpI,KAAK8O,MAET,EACAu3F,YAAa,WACXrmG,KAAK+O,MACP,EACAyL,cAAe,WACbxa,KAAKi+F,SACP,EACA1yF,QAAS,CACPuD,KAAM,WACJ,IAAIyvF,EAASv+F,KAETkwF,EAAQltF,UAAU3D,OAAS,QAAsB4D,IAAjBD,UAAU,GAAmBA,UAAU,GAAK,CAAC,EAC7ExC,EAAQ0vF,EAAM1vF,MACd0vF,EAAMoW,UACN,IAAIC,EAAcrW,EAAMhsC,MACxBA,OAAwB,IAAhBqiD,GAAiCA,GAEzCriD,GAAUlkD,KAAK0G,WACjB1G,KAAKwmG,eAAehmG,GACpBR,KAAKyL,MAAM,SAGbzL,KAAKyL,MAAM,eAAe,GAC1BzL,KAAKymG,eAAgB,EACrB1N,uBAAsB,WACpBwF,EAAOkI,eAAgB,CACzB,GACF,EACA13F,KAAM,WACJ,IAAI23F,EAAQ1jG,UAAU3D,OAAS,QAAsB4D,IAAjBD,UAAU,GAAmBA,UAAU,GAAK,CAAC,EAC7ExC,EAAQkmG,EAAMlmG,MACdkmG,EAAMJ,UAEVtmG,KAAK2mG,eAAenmG,GACpBR,KAAKyL,MAAM,QACXzL,KAAKyL,MAAM,eAAe,EAC5B,EACAwyF,QAAS,WAOP,GANAj+F,KAAKgmG,cAAe,EACpBhmG,KAAK2lG,yBACL3lG,KAAK+O,KAAK,CACRu3F,WAAW,IAGTtmG,KAAKk+F,iBACPl+F,KAAKk+F,eAAevjF,WAEf3a,KAAKk+F,eAAer6F,QAAQ4uF,iBAAiB,CAChD,IAAIgT,EAAczlG,KAAK2L,MAAMwI,QAC7BsxF,EAAYhyF,YAAcgyF,EAAYhyF,WAAWC,YAAY+xF,EAC/D,CAGFzlG,KAAKimG,WAAY,EACjBjmG,KAAKk+F,eAAiB,KACtBl+F,KAAKoU,QAAS,EACdpU,KAAKyL,MAAM,UACb,EACA26F,OAAQ,YACkC,IAApCpmG,KAAKs8F,QAAQx2F,QAAQ,WACvB9F,KAAK4lG,qBAET,EACAgB,OAAQ,WACN,IAAI9H,EAAS9+F,KAEToqF,EAAYpqF,KAAK2L,MAAM2wF,QACvBmJ,EAAczlG,KAAK2L,MAAMwI,QAG7B,GAFAkE,aAAarY,KAAK6mG,iBAEd7mG,KAAKoU,OAAT,CAWA,GANIpU,KAAKk+F,iBACPl+F,KAAKoU,QAAS,EACdpU,KAAKk+F,eAAe/K,uBACpBnzF,KAAKk+F,eAAe9K,mBAGjBpzF,KAAKimG,UAAW,CACnB,IAAIj9F,EAAYhJ,KAAK0lG,gBAAgB1lG,KAAKgJ,UAAWohF,GAErD,IAAKphF,EAEH,YADA,GAAQ9I,KAAK,2BAA4BF,MAI3CgJ,EAAUqK,YAAYoyF,GACtBzlG,KAAKimG,WAAY,EACjBjmG,KAAKoU,QAAS,EAEVpU,KAAKk+F,gBACPnF,uBAAsB,WACf+F,EAAO1oF,SACV0oF,EAAO1qF,QAAS,EAEpB,GAEJ,CAEA,IAAKpU,KAAKk+F,eAAgB,CACxB,IAAI+B,EAAgB/1B,GAAcA,GAAc,CAAC,EAAGlqE,KAAKigG,eAAgB,CAAC,EAAG,CAC3Er3F,UAAW5I,KAAK4I,YASlB,GANAq3F,EAAclqF,UAAYm0D,GAAcA,GAAc,CAAC,EAAG+1B,EAAclqF,WAAY,CAAC,EAAG,CACtFggF,MAAO7rB,GAAcA,GAAc,CAAC,EAAG+1B,EAAclqF,WAAakqF,EAAclqF,UAAUggF,OAAQ,CAAC,EAAG,CACpG3gD,QAASp1C,KAAK2L,MAAMoqF,UAIpB/1F,KAAK63C,OAAQ,CACf,IAAIA,EAAS73C,KAAK8mG,cAClB7G,EAAclqF,UAAU8hC,OAASqyB,GAAcA,GAAc,CAAC,EAAG+1B,EAAclqF,WAAakqF,EAAclqF,UAAU8hC,QAAS,CAAC,EAAG,CAC/HA,OAAQA,GAEZ,CAEI73C,KAAK6I,oBACPo3F,EAAclqF,UAAUw/E,gBAAkBrrB,GAAcA,GAAc,CAAC,EAAG+1B,EAAclqF,WAAakqF,EAAclqF,UAAUw/E,iBAAkB,CAAC,EAAG,CACjJ1sF,kBAAmB7I,KAAK6I,qBAI5B7I,KAAKk+F,eAAiB,IAAI,GAAO9T,EAAWqb,EAAaxF,GAEzDlH,uBAAsB,WACpB,GAAI+F,EAAO1oF,OAKT,OAJA0oF,EAAO1oF,QAAS,OAEhB0oF,EAAOiI,UAKJjI,EAAOkH,cAAgBlH,EAAOZ,gBACjCY,EAAOZ,eAAe9K,iBAGtB2F,uBAAsB,WACpB,GAAI+F,EAAO1oF,OAKT,OAJA0oF,EAAO1oF,QAAS,OAEhB0oF,EAAOiI,SAKJjI,EAAOkH,aAGVlH,EAAOb,UAFPa,EAAO1qF,QAAS,CAIpB,KAEA0qF,EAAOb,SAEX,GACF,CAEA,IAAImH,EAAYplG,KAAKolG,UAErB,GAAIA,EAGF,IAFA,IAAIjxF,EAEK/U,EAAI,EAAGA,EAAIwlG,GAAavlG,OAAQD,KACvC+U,EAAUywF,GAAaxlG,IAEXgmG,YAAcA,IACxBjxF,EAAQpF,OACRoF,EAAQ1I,MAAM,gBAKpBm5F,GAAajoG,KAAKqD,MAClBA,KAAKyL,MAAM,aA1GX,CA2GF,EACAs7F,OAAQ,WACN,IAAI9H,EAASj/F,KAGb,GAAKA,KAAKoU,OAAV,CAIA,IAAIiP,EAAQuhF,GAAa9+F,QAAQ9F,OAElB,IAAXqjB,GACFuhF,GAAa7xF,OAAOsQ,EAAO,GAG7BrjB,KAAKoU,QAAS,EAEVpU,KAAKk+F,gBACPl+F,KAAKk+F,eAAe1L,wBAGtBn6E,aAAarY,KAAK6mG,gBAClB,IAAIxG,EAAc1C,GAAU95F,QAAQsQ,QAAQmsF,gBAAkB3C,GAAU95F,QAAQy8F,eAE5D,OAAhBD,IACFrgG,KAAK6mG,eAAiB1uF,YAAW,WAC/B,IAAIstF,EAAcxG,EAAOtzF,MAAMwI,QAE3BsxF,IAEFA,EAAYhyF,YAAcgyF,EAAYhyF,WAAWC,YAAY+xF,GAC7DxG,EAAOgH,WAAY,EAEvB,GAAG5F,IAGLrgG,KAAKyL,MAAM,aA7BX,CA8BF,EACAi6F,gBAAiB,SAAyB18F,EAAWohF,GASnD,MAPyB,iBAAdphF,EACTA,EAAY5H,OAAOtE,SAASiM,cAAcC,IACnB,IAAdA,IAETA,EAAYohF,EAAU32E,YAGjBzK,CACT,EACA89F,YAAa,WACX,IAAIjE,EAAe3hC,EAAQlhE,KAAK63C,QAE5BA,EAAS73C,KAAK63C,OAMlB,OAJqB,WAAjBgrD,GAA8C,WAAjBA,IAAsD,IAAzBhrD,EAAO/xC,QAAQ,QAC3E+xC,EAAS,MAAM92C,OAAO82C,IAGjBA,CACT,EACA+tD,oBAAqB,WACnB,IAAI/F,EAAS7/F,KAEToqF,EAAYpqF,KAAK2L,MAAM2wF,QACvBqE,EAAe,GACfC,EAAiB,IACgB,iBAAjB5gG,KAAKs8F,QAAuBt8F,KAAKs8F,QAAQxwE,MAAM,KAAK9qB,QAAO,SAAUs7F,GACvF,OAAyD,IAAlD,CAAC,QAAS,QAAS,SAASx2F,QAAQw2F,EAC7C,IAAK,IACEn/F,SAAQ,SAAUqD,GACvB,OAAQA,GACN,IAAK,QACHmgG,EAAahkG,KAAK,cAClBikG,EAAejkG,KAAK,cACpB,MAEF,IAAK,QACHgkG,EAAahkG,KAAK,SAClBikG,EAAejkG,KAAK,QACpB,MAEF,IAAK,QACHgkG,EAAahkG,KAAK,SAClBikG,EAAejkG,KAAK,SAG1B,IAEAgkG,EAAaxjG,SAAQ,SAAUqD,GAC7B,IAAIgxB,EAAO,SAAchxB,GACnBq/F,EAAOzrF,SAIX5T,EAAMsgG,eAAgB,GACrBjB,EAAOsG,eAAiBtG,EAAO/wF,KAAK,CACnCtO,MAAOA,IAETq/F,EAAOzpF,QAAS,EAClB,EAEAypF,EAAOqG,SAASvpG,KAAK,CACnB6D,MAAOA,EACPgxB,KAAMA,IAGR44D,EAAU9vE,iBAAiB9Z,EAAOgxB,EACpC,IAEAovE,EAAezjG,SAAQ,SAAUqD,GAC/B,IAAIgxB,EAAO,SAAchxB,GACnBA,EAAMsgG,gBAIVjB,EAAO9wF,KAAK,CACVvO,MAAOA,IAGTq/F,EAAOzpF,QAAS,EAClB,EAEAypF,EAAOqG,SAASvpG,KAAK,CACnB6D,MAAOA,EACPgxB,KAAMA,IAGR44D,EAAU9vE,iBAAiB9Z,EAAOgxB,EACpC,GACF,EACAg1E,eAAgB,WACd,IAAIF,EAAYtjG,UAAU3D,OAAS,QAAsB4D,IAAjBD,UAAU,IAAmBA,UAAU,GAG/E,GAFAqV,aAAarY,KAAKgnG,iBAEdV,EACFtmG,KAAK4mG,aACA,CAEL,IAAI3F,EAAgBrwD,SAAS5wC,KAAKqW,OAASrW,KAAKqW,MAAMvH,MAAQ9O,KAAKqW,OAAS,GAC5ErW,KAAKgnG,gBAAkB7uF,WAAWnY,KAAK4mG,OAAOt4F,KAAKtO,MAAOihG,EAC5D,CACF,EACA0F,eAAgB,WACd,IAAIxG,EAASngG,KAETQ,EAAQwC,UAAU3D,OAAS,QAAsB4D,IAAjBD,UAAU,GAAmBA,UAAU,GAAK,KAC5EsjG,EAAYtjG,UAAU3D,OAAS,QAAsB4D,IAAjBD,UAAU,IAAmBA,UAAU,GAG/E,GAFAqV,aAAarY,KAAKgnG,iBAEdV,EACFtmG,KAAK+mG,aACA,CAEL,IAAI9F,EAAgBrwD,SAAS5wC,KAAKqW,OAASrW,KAAKqW,MAAMtH,MAAQ/O,KAAKqW,OAAS,GAC5ErW,KAAKgnG,gBAAkB7uF,YAAW,WAChC,GAAKgoF,EAAO/rF,OAAZ,CAMA,GAAI5T,GAAwB,eAAfA,EAAMkF,KAKjB,GAJYy6F,EAAO8G,sBAAsBzmG,GAKvC,OAIJ2/F,EAAO4G,QAdP,CAeF,GAAG9F,EACL,CACF,EACAgG,sBAAuB,SAA+BzmG,GACpD,IAAIggG,EAASxgG,KAEToqF,EAAYpqF,KAAK2L,MAAM2wF,QACvBmJ,EAAczlG,KAAK2L,MAAMwI,QACzByoF,EAAmBp8F,EAAMo8F,kBAAoBp8F,EAAMq8F,WAAar8F,EAAMs8F,cAe1E,QAAI2I,EAAY7Z,SAASgR,KAEvB6I,EAAYnrF,iBAAiB9Z,EAAMkF,MAftB,SAASwmB,EAASg7E,GAC/B,IAAIjK,EAAoBiK,EAAOtK,kBAAoBsK,EAAOrK,WAAaqK,EAAOpK,cAE9E2I,EAAYhrF,oBAAoBja,EAAMkF,KAAMwmB,GAEvCk+D,EAAUwB,SAASqR,IAEtBuD,EAAOzxF,KAAK,CACVvO,MAAO0mG,GAGb,KAKS,EAIX,EACAvB,uBAAwB,WACtB,IAAIvb,EAAYpqF,KAAK2L,MAAM2wF,QAC3Bt8F,KAAKkmG,SAAS/oG,SAAQ,SAAUgqG,GAC9B,IAAI31E,EAAO21E,EAAM31E,KACbhxB,EAAQ2mG,EAAM3mG,MAClB4pF,EAAU3vE,oBAAoBja,EAAOgxB,EACvC,IACAxxB,KAAKkmG,SAAW,EAClB,EACAL,eAAgB,SAAwB1lB,GAClCngF,KAAKk+F,iBACP/d,IACIngF,KAAKoU,QAAQpU,KAAKk+F,eAAe9K,iBAEzC,EACAgU,gBAAiB,WACf,GAAIpnG,KAAKk+F,eAAgB,CACvB,IAAI9pF,EAASpU,KAAKoU,OAClBpU,KAAKi+F,UACLj+F,KAAKgmG,cAAe,EACpBhmG,KAAKomG,SAEDhyF,GACFpU,KAAK8O,KAAK,CACRw3F,WAAW,EACXpiD,OAAO,GAGb,CACF,EACAmjD,oBAAqB,SAA6B7mG,GAChD,IAAIkgG,EAAS1gG,KAETg9C,EAAQh6C,UAAU3D,OAAS,QAAsB4D,IAAjBD,UAAU,IAAmBA,UAAU,GACvEhD,KAAKymG,gBACTzmG,KAAK+O,KAAK,CACRvO,MAAOA,IAGLA,EAAMwjG,aACRhkG,KAAKyL,MAAM,mBAEXzL,KAAKyL,MAAM,aAGTuxC,IACFh9C,KAAKmmG,eAAgB,EACrBhuF,YAAW,WACTuoF,EAAOyF,eAAgB,CACzB,GAAG,MAEP,EACAmB,eAAgB,WACVtnG,KAAKoU,QAAUpU,KAAKk+F,iBACtBl+F,KAAKk+F,eAAe9K,iBACpBpzF,KAAKyL,MAAM,UAEf,IAuBJ,SAAS87F,GAAkB/mG,GAiBzB,IAhBA,IAAIw8C,EAAQh6C,UAAU3D,OAAS,QAAsB4D,IAAjBD,UAAU,IAAmBA,UAAU,GAEvEwkG,EAAQ,SAAepoG,GACzB,IAAI+U,EAAUywF,GAAaxlG,GAE3B,GAAI+U,EAAQxI,MAAMwI,QAAS,CACzB,IAAIy3E,EAAWz3E,EAAQxI,MAAMwI,QAAQy3E,SAASprF,EAAMtB,QACpD65F,uBAAsB,YAChBv4F,EAAM0jG,iBAAmB1jG,EAAMwjG,cAAgBpY,GAAYz3E,EAAQ0qF,WAAajT,IAClFz3E,EAAQkzF,oBAAoB7mG,EAAOw8C,EAEvC,GACF,CACF,EAGS59C,EAAI,EAAGA,EAAIwlG,GAAavlG,OAAQD,IACvCooG,EAAMpoG,EAEV,CAEA,SAAS,GAAmBq6F,EAAUnkF,EAAOokF,EAAQC,EAASC,EAAsBC,EAAoCC,EAAYC,EAAgBC,EAAmBC,GACzI,kBAAfH,IACPE,EAAoBD,EACpBA,EAAiBD,EACjBA,GAAa,GAGjB,MAAMj2F,EAA4B,mBAAX61F,EAAwBA,EAAO71F,QAAU61F,EAehE,IAAIQ,EAmCJ,GAhDIT,GAAYA,EAAS3rF,SACrBjK,EAAQiK,OAAS2rF,EAAS3rF,OAC1BjK,EAAQoT,gBAAkBwiF,EAASxiF,gBACnCpT,EAAQqT,WAAY,EAEhB0iF,IACA/1F,EAAQgK,YAAa,IAIzB8rF,IACA91F,EAAQsT,SAAWwiF,GAGnBE,GAEAK,EAAO,SAAUl4E,IAEbA,EACIA,GACKhiB,KAAKoX,QAAUpX,KAAKoX,OAAOC,YAC3BrX,KAAKsX,QAAUtX,KAAKsX,OAAOF,QAAUpX,KAAKsX,OAAOF,OAAOC,aAElB,oBAAxBE,sBACnByK,EAAUzK,qBAGVjC,GACAA,EAAM5I,KAAK1M,KAAMg6F,EAAkBh4E,IAGnCA,GAAWA,EAAQxK,uBACnBwK,EAAQxK,sBAAsBtK,IAAI2sF,EAE1C,EAGAh2F,EAAQ4T,aAAeyiF,GAElB5kF,IACL4kF,EAAOJ,EACD,SAAU93E,GACR1M,EAAM5I,KAAK1M,KAAMi6F,EAAqBj4E,EAAShiB,KAAK0X,MAAMnH,SAASoH,YACvE,EACE,SAAUqK,GACR1M,EAAM5I,KAAK1M,KAAM+5F,EAAe/3E,GACpC,GAEJk4E,EACA,GAAIr2F,EAAQgK,WAAY,CAEpB,MAAMssF,EAAiBt2F,EAAQiK,OAC/BjK,EAAQiK,OAAS,SAAkC7M,EAAG+gB,GAElD,OADAk4E,EAAKxtF,KAAKsV,GACHm4E,EAAel5F,EAAG+gB,EAC7B,CACJ,KACK,CAED,MAAMoiC,EAAWvgD,EAAQgU,aACzBhU,EAAQgU,aAAeusC,EAAW,GAAGrjD,OAAOqjD,EAAU81C,GAAQ,CAACA,EACnE,CAEJ,OAAOR,CACX,CAlHwB,oBAAb58F,UAA8C,oBAAXsE,SACxCsjG,GACF5nG,SAASwd,iBAAiB,YAa9B,SAA8B9Z,GAC5B+mG,GAAkB/mG,GAAO,EAC3B,IAfgEy7F,IAAkB,CAC5EnJ,SAAS,EACTxmD,SAAS,IAGXlrC,OAAOkZ,iBAAiB,SAI5B,SAA2B9Z,GACzB+mG,GAAkB/mG,EACpB,IANwD,IA8GxD,IAAI,GAAiB,GAGjB,GAAiB,WACnB,IAAIinG,EAAMznG,KAENy6F,EAAKgN,EAAIlzF,eAETE,EAAKgzF,EAAIjzF,MAAMC,IAAMgmF,EAEzB,OAAOhmF,EAAG,MAAO,CACf1J,YAAa,YACbC,MAAOy8F,EAAInC,UACV,CAAC7wF,EAAG,MAAO,CACZG,IAAK,UACL7J,YAAa,UACb28F,YAAa,CACX7iE,QAAS,gBAEXhwB,MAAO,CACL,mBAAoB4yF,EAAIrzF,OAASqzF,EAAIlC,eAAYtiG,EACjDuT,UAA4C,IAAlCixF,EAAInL,QAAQx2F,QAAQ,SAAkB,OAAI7C,IAErD,CAACwkG,EAAIxyF,GAAG,YAAa,GAAIwyF,EAAIjyF,GAAG,KAAMf,EAAG,MAAO,CACjDG,IAAK,UACL5J,MAAO,CAACy8F,EAAI1C,iBAAkB0C,EAAI3C,aAAc2C,EAAInC,UACpDhwF,MAAO,CACLqyF,WAAYF,EAAIrzF,OAAS,UAAY,UAEvCS,MAAO,CACLxD,GAAIo2F,EAAIlC,UACR,cAAekC,EAAIrzF,OAAS,QAAU,OACtCoC,SAAUixF,EAAI5I,SAAW,OAAI57F,GAE/BoS,GAAI,CACFuyF,MAAO,SAAeC,GACpB,IAAKA,EAAOniG,KAAKI,QAAQ,QAAU2hG,EAAI/wF,GAAGmxF,EAAOlxF,QAAS,MAAO,GAAIkxF,EAAOpoG,IAAK,CAAC,MAAO,WACvF,OAAO,KAGTgoG,EAAI5I,UAAY4I,EAAI14F,MACtB,IAED,CAAC0F,EAAG,MAAO,CACZzJ,MAAOy8F,EAAIxC,qBACV,CAACxwF,EAAG,MAAO,CACZG,IAAK,QACL5J,MAAOy8F,EAAIzC,kBACX0C,YAAa,CACXv4E,SAAU,aAEX,CAAC1a,EAAG,MAAO,CAACgzF,EAAIxyF,GAAG,UAAW,KAAM,CACrCb,OAAQqzF,EAAIrzF,UACT,GAAIqzF,EAAIjyF,GAAG,KAAMiyF,EAAItC,aAAe1wF,EAAG,iBAAkB,CAC5DY,GAAI,CACFyyF,OAAQL,EAAIH,kBAEXG,EAAI7xF,MAAO,GAAI6xF,EAAIjyF,GAAG,KAAMf,EAAG,MAAO,CACzCG,IAAK,QACL5J,MAAOy8F,EAAIvC,yBAEf,EAGA,GAAejK,eAAgB,EAG/B,IAgBI,GAAiC,GAAmB,CACtDntF,OAAQ,GACRmJ,gBAtB4B,IAIFhU,UAmBF,GAhBHA,UAMc,MAHLA,WAauF,OAAOA,OAAWA,OAAWA,GAgCpJ,SAAS,GAAQm4F,GACf,IAAIv3F,EAAUb,UAAU3D,OAAS,QAAsB4D,IAAjBD,UAAU,GAAmBA,UAAU,GAAK,CAAC,EACnF,IAAI,GAAQ+kG,UAAZ,CACA,GAAQA,WAAY,EACpB,IAAIC,EAAe,CAAC,EACpB,KAAMA,EAAcvG,GAAgB59F,GACpC,GAAOA,QAAUmkG,EACjBrK,GAAU95F,QAAUmkG,EACpB5M,EAAIuC,UAAU,UAAWA,IACzBvC,EAAIuC,UAAU,gBAAiB6G,IAC/BpJ,EAAIC,UAAU,WAAY,GARG,CAS/B,EAzCA,SAAqB9oF,EAAKqC,QACX,IAARA,IAAiBA,EAAM,CAAC,GAC7B,IAAIqzF,EAAWrzF,EAAIqzF,SAEnB,GAAK11F,GAA2B,oBAAbzV,SAAnB,CAEA,IAAIqW,EAAOrW,SAASqW,MAAQrW,SAASC,qBAAqB,QAAQ,GAC9DuY,EAAQxY,SAASwW,cAAc,SACnCgC,EAAM5P,KAAO,WAEI,QAAbuiG,GACE90F,EAAKU,WACPV,EAAK6H,aAAa1F,EAAOnC,EAAKU,YAKhCV,EAAKE,YAAYiC,GAGfA,EAAM3B,WACR2B,EAAM3B,WAAWC,QAAUrB,EAE3B+C,EAAMjC,YAAYvW,SAASgX,eAAevB,GAnBW,CAqBzD,CAGA21F,CADe,wWAef,IAAIx5F,GAAWivF,GACXwK,GAAgB3D,GAChBvwF,GAAW,GACX,GAAS,CACXknF,QAAS,GAEL7J,cACF,OAAO35D,GAAM25D,OACf,EAEIA,YAAQt1F,GACV27B,GAAM25D,QAAUt1F,CAClB,GAIE,GAAY,KAEM,oBAAXoF,OACT,GAAYA,OAAOg6F,SACQ,IAAX,EAAAvzF,IAChB,GAAY,EAAAA,EAAOuzF,KAGjB,IACF,GAAUp1E,IAAI,IAGhB,uEEr+DA,MCpB+G,EDoB/G,CACE3lB,KAAM,kBACNlB,MAAO,CACLwR,MAAO,CACLjL,KAAM8C,QAER4/F,UAAW,CACT1iG,KAAM8C,OACNvK,QAAS,gBAEXqY,KAAM,CACJ5Q,KAAMyT,OACNlb,QAAS,MEdf,SAXgB,aACd,GCRW,WAAa,IAAIwpG,EAAIznG,KAASy6F,EAAGgN,EAAIlzF,eAAmBE,EAAGgzF,EAAIjzF,MAAMC,IAAIgmF,EAAG,OAAOhmF,EAAG,OAAOgzF,EAAI9yF,GAAG,CAAC5J,YAAY,yCAAyC8J,MAAM,CAAC,eAAe4yF,EAAI92F,MAAM,aAAa82F,EAAI92F,MAAM,KAAO,OAAO0E,GAAG,CAAC,MAAQ,SAASwyF,GAAQ,OAAOJ,EAAIh8F,MAAM,QAASo8F,EAAO,IAAI,OAAOJ,EAAIr9F,QAAO,GAAO,CAACqK,EAAG,MAAM,CAAC1J,YAAY,4BAA4B8J,MAAM,CAAC,KAAO4yF,EAAIW,UAAU,MAAQX,EAAInxF,KAAK,OAASmxF,EAAInxF,KAAK,QAAU,cAAc,CAAC7B,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,kEAAkE,CAAE4yF,EAAS,MAAEhzF,EAAG,QAAQ,CAACgzF,EAAIjyF,GAAGiyF,EAAIhyF,GAAGgyF,EAAI92F,UAAU82F,EAAI7xF,UAAU,GACvlB,IDUpB,EACA,KACA,KACA,MAI8B,mEEEhC,MCpBgH,EDoBhH,CACEvV,KAAM,mBACNlB,MAAO,CACLwR,MAAO,CACLjL,KAAM8C,QAER4/F,UAAW,CACT1iG,KAAM8C,OACNvK,QAAS,gBAEXqY,KAAM,CACJ5Q,KAAMyT,OACNlb,QAAS,MEdf,SAXgB,aACd,GCRW,WAAa,IAAIwpG,EAAIznG,KAASy6F,EAAGgN,EAAIlzF,eAAmBE,EAAGgzF,EAAIjzF,MAAMC,IAAIgmF,EAAG,OAAOhmF,EAAG,OAAOgzF,EAAI9yF,GAAG,CAAC5J,YAAY,0CAA0C8J,MAAM,CAAC,eAAe4yF,EAAI92F,MAAM,aAAa82F,EAAI92F,MAAM,KAAO,OAAO0E,GAAG,CAAC,MAAQ,SAASwyF,GAAQ,OAAOJ,EAAIh8F,MAAM,QAASo8F,EAAO,IAAI,OAAOJ,EAAIr9F,QAAO,GAAO,CAACqK,EAAG,MAAM,CAAC1J,YAAY,4BAA4B8J,MAAM,CAAC,KAAO4yF,EAAIW,UAAU,MAAQX,EAAInxF,KAAK,OAASmxF,EAAInxF,KAAK,QAAU,cAAc,CAAC7B,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,gEAAgE,CAAE4yF,EAAS,MAAEhzF,EAAG,QAAQ,CAACgzF,EAAIjyF,GAAGiyF,EAAIhyF,GAAGgyF,EAAI92F,UAAU82F,EAAI7xF,UAAU,GACtlB,IDUpB,EACA,KACA,KACA,MAI8B,mEEEhC,MCpByG,EDoBzG,CACEvV,KAAM,YACNlB,MAAO,CACLwR,MAAO,CACLjL,KAAM8C,QAER4/F,UAAW,CACT1iG,KAAM8C,OACNvK,QAAS,gBAEXqY,KAAM,CACJ5Q,KAAMyT,OACNlb,QAAS,MEdf,SAXgB,aACd,GCRW,WAAa,IAAIwpG,EAAIznG,KAASy6F,EAAGgN,EAAIlzF,eAAmBE,EAAGgzF,EAAIjzF,MAAMC,IAAIgmF,EAAG,OAAOhmF,EAAG,OAAOgzF,EAAI9yF,GAAG,CAAC5J,YAAY,kCAAkC8J,MAAM,CAAC,eAAe4yF,EAAI92F,MAAM,aAAa82F,EAAI92F,MAAM,KAAO,OAAO0E,GAAG,CAAC,MAAQ,SAASwyF,GAAQ,OAAOJ,EAAIh8F,MAAM,QAASo8F,EAAO,IAAI,OAAOJ,EAAIr9F,QAAO,GAAO,CAACqK,EAAG,MAAM,CAAC1J,YAAY,4BAA4B8J,MAAM,CAAC,KAAO4yF,EAAIW,UAAU,MAAQX,EAAInxF,KAAK,OAASmxF,EAAInxF,KAAK,QAAU,cAAc,CAAC7B,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,kHAAkH,CAAE4yF,EAAS,MAAEhzF,EAAG,QAAQ,CAACgzF,EAAIjyF,GAAGiyF,EAAIhyF,GAAGgyF,EAAI92F,UAAU82F,EAAI7xF,UAAU,GAChoB,IDUpB,EACA,KACA,KACA,MAI8B,mEEEhC,MCpBkH,EDoBlH,CACEvV,KAAM,qBACNlB,MAAO,CACLwR,MAAO,CACLjL,KAAM8C,QAER4/F,UAAW,CACT1iG,KAAM8C,OACNvK,QAAS,gBAEXqY,KAAM,CACJ5Q,KAAMyT,OACNlb,QAAS,MEdf,SAXgB,aACd,GCRW,WAAa,IAAIwpG,EAAIznG,KAASy6F,EAAGgN,EAAIlzF,eAAmBE,EAAGgzF,EAAIjzF,MAAMC,IAAIgmF,EAAG,OAAOhmF,EAAG,OAAOgzF,EAAI9yF,GAAG,CAAC5J,YAAY,4CAA4C8J,MAAM,CAAC,eAAe4yF,EAAI92F,MAAM,aAAa82F,EAAI92F,MAAM,KAAO,OAAO0E,GAAG,CAAC,MAAQ,SAASwyF,GAAQ,OAAOJ,EAAIh8F,MAAM,QAASo8F,EAAO,IAAI,OAAOJ,EAAIr9F,QAAO,GAAO,CAACqK,EAAG,MAAM,CAAC1J,YAAY,4BAA4B8J,MAAM,CAAC,KAAO4yF,EAAIW,UAAU,MAAQX,EAAInxF,KAAK,OAASmxF,EAAInxF,KAAK,QAAU,cAAc,CAAC7B,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,mNAAmN,CAAE4yF,EAAS,MAAEhzF,EAAG,QAAQ,CAACgzF,EAAIjyF,GAAGiyF,EAAIhyF,GAAGgyF,EAAI92F,UAAU82F,EAAI7xF,UAAU,GAC3uB,IDUpB,EACA,KACA,KACA,MAI8B,mEEEhC,MCpByG,EDoBzG,CACEvV,KAAM,YACNlB,MAAO,CACLwR,MAAO,CACLjL,KAAM8C,QAER4/F,UAAW,CACT1iG,KAAM8C,OACNvK,QAAS,gBAEXqY,KAAM,CACJ5Q,KAAMyT,OACNlb,QAAS,MEdf,SAXgB,aACd,GCRW,WAAa,IAAIwpG,EAAIznG,KAASy6F,EAAGgN,EAAIlzF,eAAmBE,EAAGgzF,EAAIjzF,MAAMC,IAAIgmF,EAAG,OAAOhmF,EAAG,OAAOgzF,EAAI9yF,GAAG,CAAC5J,YAAY,kCAAkC8J,MAAM,CAAC,eAAe4yF,EAAI92F,MAAM,aAAa82F,EAAI92F,MAAM,KAAO,OAAO0E,GAAG,CAAC,MAAQ,SAASwyF,GAAQ,OAAOJ,EAAIh8F,MAAM,QAASo8F,EAAO,IAAI,OAAOJ,EAAIr9F,QAAO,GAAO,CAACqK,EAAG,MAAM,CAAC1J,YAAY,4BAA4B8J,MAAM,CAAC,KAAO4yF,EAAIW,UAAU,MAAQX,EAAInxF,KAAK,OAASmxF,EAAInxF,KAAK,QAAU,cAAc,CAAC7B,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,mCAAmC,CAAE4yF,EAAS,MAAEhzF,EAAG,QAAQ,CAACgzF,EAAIjyF,GAAGiyF,EAAIhyF,GAAGgyF,EAAI92F,UAAU82F,EAAI7xF,UAAU,GACjjB,IDUpB,EACA,KACA,KACA,MAI8B,mEEEhC,MCpBwG,EDoBxG,CACEvV,KAAM,WACNlB,MAAO,CACLwR,MAAO,CACLjL,KAAM8C,QAER4/F,UAAW,CACT1iG,KAAM8C,OACNvK,QAAS,gBAEXqY,KAAM,CACJ5Q,KAAMyT,OACNlb,QAAS,MEdf,SAXgB,aACd,GCRW,WAAa,IAAIwpG,EAAIznG,KAASy6F,EAAGgN,EAAIlzF,eAAmBE,EAAGgzF,EAAIjzF,MAAMC,IAAIgmF,EAAG,OAAOhmF,EAAG,OAAOgzF,EAAI9yF,GAAG,CAAC5J,YAAY,iCAAiC8J,MAAM,CAAC,eAAe4yF,EAAI92F,MAAM,aAAa82F,EAAI92F,MAAM,KAAO,OAAO0E,GAAG,CAAC,MAAQ,SAASwyF,GAAQ,OAAOJ,EAAIh8F,MAAM,QAASo8F,EAAO,IAAI,OAAOJ,EAAIr9F,QAAO,GAAO,CAACqK,EAAG,MAAM,CAAC1J,YAAY,4BAA4B8J,MAAM,CAAC,KAAO4yF,EAAIW,UAAU,MAAQX,EAAInxF,KAAK,OAASmxF,EAAInxF,KAAK,QAAU,cAAc,CAAC7B,EAAG,OAAO,CAACI,MAAM,CAAC,EAAI,mCAAmC,CAAE4yF,EAAS,MAAEhzF,EAAG,QAAQ,CAACgzF,EAAIjyF,GAAGiyF,EAAIhyF,GAAGgyF,EAAI92F,UAAU82F,EAAI7xF,UAAU,GAChjB,IDUpB,EACA,KACA,KACA,MAI8B,qCEZjB,SAAS4jF,EACtB6O,EACAv6F,EACAmJ,EACAqxF,EACAC,EACA5O,EACAE,EACAC,GAGA,IAqBII,EArBAr2F,EAAmC,mBAAlBwkG,EACjBA,EAAcxkG,QACdwkG,EAsDJ,GAnDIv6F,IACFjK,EAAQiK,OAASA,EACjBjK,EAAQoT,gBAAkBA,EAC1BpT,EAAQqT,WAAY,GAIlBoxF,IACFzkG,EAAQgK,YAAa,GAInB8rF,IACF91F,EAAQsT,SAAW,UAAYwiF,GAI7BE,GACFK,EAAO,SAAUl4E,IAEfA,EACEA,GACChiB,KAAKoX,QAAUpX,KAAKoX,OAAOC,YAC3BrX,KAAKsX,QAAUtX,KAAKsX,OAAOF,QAAUpX,KAAKsX,OAAOF,OAAOC,aAEZ,oBAAxBE,sBACrByK,EAAUzK,qBAGRgxF,GACFA,EAAa77F,KAAK1M,KAAMgiB,GAGtBA,GAAWA,EAAQxK,uBACrBwK,EAAQxK,sBAAsBtK,IAAI2sF,EAEtC,EAGAh2F,EAAQ4T,aAAeyiF,GACdqO,IACTrO,EAAOJ,EACH,WACAyO,EAAa77F,KACX1M,MACC6D,EAAQgK,WAAa7N,KAAKsX,OAAStX,MAAM0X,MAAMnH,SAASoH,WAE7D,EACE4wF,GAGFrO,EACF,GAAIr2F,EAAQgK,WAAY,CAGtBhK,EAAQ+T,cAAgBsiF,EAExB,IAAIC,EAAiBt2F,EAAQiK,OAC7BjK,EAAQiK,OAAS,SAAmC7M,EAAG+gB,GAErD,OADAk4E,EAAKxtF,KAAKsV,GACHm4E,EAAel5F,EAAG+gB,EAC3B,CACF,KAAO,CAEL,IAAIoiC,EAAWvgD,EAAQgU,aACvBhU,EAAQgU,aAAeusC,EACnB,GAAGrjD,OAAOqjD,EAAU81C,GACpB,CAACA,EACP,CAGF,MAAO,CACLn+F,QAASssG,EACTxkG,QAASA,EAEb,2FC1FI2kG,EAAc3sG,OAAO4sG,OAAO,CAAC,GAIjC,SAASC,EAASx6F,GAChB,OAAOA,OACT,CAEA,SAASy6F,EAAOz6F,GACd,OAAOA,OACT,CAEA,SAAS06F,EAAQ16F,GACf,OAAa,IAANA,CACT,CASA,SAASsxE,EAAaxjF,GACpB,MACmB,iBAAVA,GACU,iBAAVA,GAEU,iBAAVA,GACU,kBAAVA,CAEX,CAOA,SAASysB,EAAU5qB,GACjB,OAAe,OAARA,GAA+B,iBAARA,CAChC,CAKA,IAAIgrG,EAAYhtG,OAAO6E,UAAUmC,SAUjC,SAASkkB,EAAelpB,GACtB,MAA+B,oBAAxBgrG,EAAUn8F,KAAK7O,EACxB,CAEA,SAASkkE,EAAU7zD,GACjB,MAA6B,oBAAtB26F,EAAUn8F,KAAKwB,EACxB,CAKA,SAAS46F,EAAmBhoF,GAC1B,IAAIva,EAAIoqC,WAAWnoC,OAAOsY,IAC1B,OAAOva,GAAK,GAAKyK,KAAKyW,MAAMlhB,KAAOA,GAAKmqC,SAAS5vB,EACnD,CAEA,SAASghD,EAAWhhD,GAClB,OACE6nF,EAAM7nF,IACc,mBAAbA,EAAI+B,MACU,mBAAd/B,EAAIujD,KAEf,CAKA,SAASxhE,EAAUie,GACjB,OAAc,MAAPA,EACH,GACA3Z,MAAMmF,QAAQwU,IAASiG,EAAcjG,IAAQA,EAAIje,WAAagmG,EAC5D12F,KAAKC,UAAU0O,EAAK,KAAM,GAC1BtY,OAAOsY,EACf,CAMA,SAASioF,EAAUjoF,GACjB,IAAIva,EAAIoqC,WAAW7vB,GACnB,OAAO0nB,MAAMjiC,GAAKua,EAAMva,CAC1B,CAMA,SAASyiG,EACPl7E,EACAm7E,GAIA,IAFA,IAAIr3F,EAAM/V,OAAOuC,OAAO,MACpB2uC,EAAOjf,EAAIhC,MAAM,KACZ1sB,EAAI,EAAGA,EAAI2tC,EAAK1tC,OAAQD,IAC/BwS,EAAIm7B,EAAK3tC,KAAM,EAEjB,OAAO6pG,EACH,SAAUnoF,GAAO,OAAOlP,EAAIkP,EAAIC,cAAgB,EAChD,SAAUD,GAAO,OAAOlP,EAAIkP,EAAM,CACxC,CAKmBkoF,EAAQ,kBAAkB,GAA7C,IAKIE,EAAsBF,EAAQ,8BAKlC,SAAS/7F,EAAQkf,EAAK6gB,GACpB,GAAI7gB,EAAI9sB,OAAQ,CACd,IAAIgkB,EAAQ8I,EAAIrmB,QAAQknC,GACxB,GAAI3pB,GAAS,EACX,OAAO8I,EAAIpZ,OAAOsQ,EAAO,EAE7B,CACF,CAKA,IAAIvL,EAAiBjc,OAAO6E,UAAUoX,eACtC,SAASw2B,EAAQzwC,EAAK4B,GACpB,OAAOqY,EAAepL,KAAK7O,EAAK4B,EAClC,CAKA,SAAS0pG,EAAQn0F,GACf,IAAI4Y,EAAQ/xB,OAAOuC,OAAO,MAC1B,OAAO,SAAoB0vB,GAEzB,OADUF,EAAME,KACDF,EAAME,GAAO9Y,EAAG8Y,GAChC,CACH,CAKA,IAAIs7E,EAAa,SACbC,EAAWF,GAAO,SAAUr7E,GAC9B,OAAOA,EAAI7rB,QAAQmnG,GAAY,SAAU3nG,EAAGwF,GAAK,OAAOA,EAAIA,EAAEyY,cAAgB,EAAI,GACpF,IAKI4pF,EAAaH,GAAO,SAAUr7E,GAChC,OAAOA,EAAIzoB,OAAO,GAAGqa,cAAgBoO,EAAInhB,MAAM,EACjD,IAKI48F,EAAc,aACdC,EAAYL,GAAO,SAAUr7E,GAC/B,OAAOA,EAAI7rB,QAAQsnG,EAAa,OAAOxoF,aACzC,IA6BA,IAAIzS,EAAOmyB,SAAS//B,UAAU4N,KAJ9B,SAAqB0G,EAAIu5B,GACvB,OAAOv5B,EAAG1G,KAAKigC,EACjB,EAhBA,SAAuBv5B,EAAIu5B,GACzB,SAASk7D,EAAS/mG,GAChB,IAAIsE,EAAIhE,UAAU3D,OAClB,OAAO2H,EACHA,EAAI,EACFgO,EAAGxN,MAAM+mC,EAAKvrC,WACdgS,EAAGtI,KAAK6hC,EAAK7rC,GACfsS,EAAGtI,KAAK6hC,EACd,CAGA,OADAk7D,EAAQC,QAAU10F,EAAG3V,OACdoqG,CACT,EAaA,SAAS78E,EAASmgB,EAAM90B,GACtBA,EAAQA,GAAS,EAGjB,IAFA,IAAI7Y,EAAI2tC,EAAK1tC,OAAS4Y,EAClBw8D,EAAM,IAAIttE,MAAM/H,GACbA,KACLq1E,EAAIr1E,GAAK2tC,EAAK3tC,EAAI6Y,GAEpB,OAAOw8D,CACT,CAKA,SAASxyD,EAAQ5X,EAAIs/F,GACnB,IAAK,IAAIlqG,KAAOkqG,EACdt/F,EAAG5K,GAAOkqG,EAAMlqG,GAElB,OAAO4K,CACT,CAKA,SAASspB,EAAUxH,GAEjB,IADA,IAAIof,EAAM,CAAC,EACFnsC,EAAI,EAAGA,EAAI+sB,EAAI9sB,OAAQD,IAC1B+sB,EAAI/sB,IACN6iB,EAAOspB,EAAKpf,EAAI/sB,IAGpB,OAAOmsC,CACT,CASA,SAAS44C,EAAMzhF,EAAGC,EAAGsE,GAAI,CAKzB,IAAIm3D,EAAK,SAAU17D,EAAGC,EAAGsE,GAAK,OAAO,CAAO,EAOxCsqD,EAAW,SAAU9vD,GAAK,OAAOA,CAAG,EAMxC,SAASmoG,EAAYlnG,EAAGC,GACtB,GAAID,IAAMC,EAAK,OAAO,EACtB,IAAIknG,EAAYphF,EAAS/lB,GACrBonG,EAAYrhF,EAAS9lB,GACzB,IAAIknG,IAAaC,EAwBV,OAAKD,IAAcC,GACjBthG,OAAO9F,KAAO8F,OAAO7F,GAxB5B,IACE,IAAIonG,EAAW5iG,MAAMmF,QAAQ5J,GACzBsnG,EAAW7iG,MAAMmF,QAAQ3J,GAC7B,GAAIonG,GAAYC,EACd,OAAOtnG,EAAErD,SAAWsD,EAAEtD,QAAUqD,EAAE8xB,OAAM,SAAUt3B,EAAGkC,GACnD,OAAOwqG,EAAW1sG,EAAGyF,EAAEvD,GACzB,IACK,GAAIsD,aAAawV,MAAQvV,aAAauV,KAC3C,OAAOxV,EAAEivB,YAAchvB,EAAEgvB,UACpB,GAAKo4E,GAAaC,EAQvB,OAAO,EAPP,IAAIt6B,EAAQ7zE,OAAOwL,KAAK3E,GACpBunG,EAAQpuG,OAAOwL,KAAK1E,GACxB,OAAO+sE,EAAMrwE,SAAW4qG,EAAM5qG,QAAUqwE,EAAMl7C,OAAM,SAAU/0B,GAC5D,OAAOmqG,EAAWlnG,EAAEjD,GAAMkD,EAAElD,GAC9B,GAQJ,CAHE,MAAOvC,GAEP,OAAO,CACT,CAMJ,CAOA,SAASgtG,EAAc/9E,EAAKrL,GAC1B,IAAK,IAAI1hB,EAAI,EAAGA,EAAI+sB,EAAI9sB,OAAQD,IAC9B,GAAIwqG,EAAWz9E,EAAI/sB,GAAI0hB,GAAQ,OAAO1hB,EAExC,OAAQ,CACV,CAKA,SAASmlF,EAAMvvE,GACb,IAAI8gB,GAAS,EACb,OAAO,WACAA,IACHA,GAAS,EACT9gB,EAAGxN,MAAMxH,KAAMgD,WAEnB,CACF,CAEA,IAAImnG,EAAW,uBAEXC,EAAc,CAChB,YACA,YACA,UAGEC,EAAkB,CACpB,eACA,UACA,cACA,UACA,eACA,UACA,gBACA,YACA,YACA,cACA,gBACA,kBAOE/kG,EAAS,CAKXglG,sBAAuBzuG,OAAOuC,OAAO,MAKrCmsG,QAAQ,EAKRC,eAAe,EAKfC,UAAU,EAKVC,aAAa,EAKbC,aAAc,KAKdC,YAAa,KAKbC,gBAAiB,GAMjBC,SAAUjvG,OAAOuC,OAAO,MAMxB2sG,cAAe3sC,EAMf4sC,eAAgB5sC,EAMhB6sC,iBAAkB7sC,EAKlB8sC,gBAAiB/mB,EAKjBgnB,qBAAsB55C,EAMtB65C,YAAahtC,EAMbitC,OAAO,EAKPC,gBAAiBjB,GAUfkB,EAAgB,8JAKpB,SAASC,EAAY19E,GACnB,IAAI7mB,GAAK6mB,EAAM,IAAIc,WAAW,GAC9B,OAAa,KAAN3nB,GAAoB,KAANA,CACvB,CAKA,SAASwkG,EAAK5tG,EAAK4B,EAAKqhB,EAAK7kB,GAC3BJ,OAAOC,eAAe+B,EAAK4B,EAAK,CAC9BzD,MAAO8kB,EACP7kB,aAAcA,EACduD,UAAU,EACVD,cAAc,GAElB,CAKA,IAAImsG,EAAS,IAAIjhF,OAAQ,KAAQ8gF,EAAoB,OAAI,WAkBzD,IAmCII,EAnCAC,EAAW,aAAe,CAAC,EAG3BC,EAA8B,oBAAXzqG,OACnB0qG,EAAkC,oBAAlBC,iBAAmCA,cAAcC,SACjEC,EAAeH,GAAUC,cAAcC,SAASjrF,cAChDmrF,EAAKL,GAAazqG,OAAO2pB,UAAUC,UAAUjK,cAC7C2pE,EAAOwhB,GAAM,eAAer/F,KAAKq/F,GACjCC,EAAQD,GAAMA,EAAGpmG,QAAQ,YAAc,EACvCsmG,GAASF,GAAMA,EAAGpmG,QAAQ,SAAW,EAErC4+F,IADawH,GAAMA,EAAGpmG,QAAQ,WACrBomG,GAAM,uBAAuBr/F,KAAKq/F,IAA0B,QAAjBD,GAGpDI,IAFWH,GAAM,cAAcr/F,KAAKq/F,GACtBA,GAAM,YAAYr/F,KAAKq/F,GAC9BA,GAAMA,EAAG1hF,MAAM,mBAGtB8hF,GAAc,CAAG,EAAEnhG,MAEnB8wF,IAAkB,EACtB,GAAI4P,EACF,IACE,IAAIx+E,GAAO,CAAC,EACZxxB,OAAOC,eAAeuxB,GAAM,UAAW,CACrCnxB,IAAK,WAEH+/F,IAAkB,CACpB,IAEF76F,OAAOkZ,iBAAiB,eAAgB,KAAM+S,GACnC,CAAX,MAAOnwB,GAAI,CAMf,IAAIqvG,GAAoB,WAWtB,YAVkBtpG,IAAd0oG,IAOAA,GALGE,IAAcC,QAA4B,IAAX,EAAAjkG,IAGtB,EAAAA,EAAgB,SAAuC,WAAlC,EAAAA,EAAgB,QAAE+gB,IAAI4jF,UAKpDb,CACT,EAGIlB,GAAWoB,GAAazqG,OAAOqrG,6BAGnC,SAASC,GAAUn3C,GACjB,MAAuB,mBAATA,GAAuB,cAAc1oD,KAAK0oD,EAAK1yD,WAC/D,CAEA,IAII8pG,GAJAC,GACgB,oBAAXrgG,QAA0BmgG,GAASngG,SACvB,oBAAZykC,SAA2B07D,GAAS17D,QAAQnX,SAMnD8yE,GAFiB,oBAAR17D,KAAuBy7D,GAASz7D,KAElCA,IAGc,WACnB,SAASA,IACPjxC,KAAKc,IAAMjF,OAAOuC,OAAO,KAC3B,CAWA,OAVA6yC,EAAIvwC,UAAUy0B,IAAM,SAAc11B,GAChC,OAAyB,IAAlBO,KAAKc,IAAIrB,EAClB,EACAwxC,EAAIvwC,UAAUwM,IAAM,SAAczN,GAChCO,KAAKc,IAAIrB,IAAO,CAClB,EACAwxC,EAAIvwC,UAAU4X,MAAQ,WACpBtY,KAAKc,IAAMjF,OAAOuC,OAAO,KAC3B,EAEO6yC,CACT,CAfoB,GAoBtB,IAAI/wC,GAAOikF,EA8FP7mF,GAAM,EAMNuvG,GAAM,WACR7sG,KAAKqR,GAAK/T,KACV0C,KAAK8sG,KAAO,EACd,EAEAD,GAAInsG,UAAUqsG,OAAS,SAAiBp0B,GACtC34E,KAAK8sG,KAAKnwG,KAAKg8E,EACjB,EAEAk0B,GAAInsG,UAAUssG,UAAY,SAAoBr0B,GAC5C1rE,EAAOjN,KAAK8sG,KAAMn0B,EACpB,EAEAk0B,GAAInsG,UAAUusG,OAAS,WACjBJ,GAAI3tG,QACN2tG,GAAI3tG,OAAOguG,OAAOltG,KAEtB,EAEA6sG,GAAInsG,UAAUonG,OAAS,WAErB,IAAIgF,EAAO9sG,KAAK8sG,KAAKngG,QAOrB,IAAK,IAAIvN,EAAI,EAAG4H,EAAI8lG,EAAKztG,OAAQD,EAAI4H,EAAG5H,IACtC0tG,EAAK1tG,GAAG4T,QAEZ,EAKA65F,GAAI3tG,OAAS,KACb,IAAIiuG,GAAc,GAElB,SAASC,GAAYluG,GACnBiuG,GAAYxwG,KAAKuC,GACjB2tG,GAAI3tG,OAASA,CACf,CAEA,SAASmuG,KACPF,GAAYpgF,MACZ8/E,GAAI3tG,OAASiuG,GAAYA,GAAY9tG,OAAS,EAChD,CAIA,IAAIiuG,GAAQ,SACVrjG,EACA/H,EACAmH,EACAzF,EACA2pG,EACAvrF,EACAhY,EACAwjG,GAEAxtG,KAAKiK,IAAMA,EACXjK,KAAKkC,KAAOA,EACZlC,KAAKqJ,SAAWA,EAChBrJ,KAAK4D,KAAOA,EACZ5D,KAAKutG,IAAMA,EACXvtG,KAAKytG,QAAKxqG,EACVjD,KAAKgiB,QAAUA,EACfhiB,KAAK0tG,eAAYzqG,EACjBjD,KAAK2tG,eAAY1qG,EACjBjD,KAAK4tG,eAAY3qG,EACjBjD,KAAKP,IAAMyC,GAAQA,EAAKzC,IACxBO,KAAKgK,iBAAmBA,EACxBhK,KAAK6tG,uBAAoB5qG,EACzBjD,KAAKsX,YAASrU,EACdjD,KAAKulF,KAAM,EACXvlF,KAAK8tG,UAAW,EAChB9tG,KAAK+tG,cAAe,EACpB/tG,KAAKguG,WAAY,EACjBhuG,KAAKiuG,UAAW,EAChBjuG,KAAKkuG,QAAS,EACdluG,KAAKwtG,aAAeA,EACpBxtG,KAAKmuG,eAAYlrG,EACjBjD,KAAKouG,oBAAqB,CAC5B,EAEIC,GAAqB,CAAE36D,MAAO,CAAEn0C,cAAc,IAIlD8uG,GAAmB36D,MAAMx3C,IAAM,WAC7B,OAAO8D,KAAK6tG,iBACd,EAEAhyG,OAAO+L,iBAAkB0lG,GAAM5sG,UAAW2tG,IAE1C,IAAIC,GAAmB,SAAU1qG,QACjB,IAATA,IAAkBA,EAAO,IAE9B,IAAI4wC,EAAO,IAAI84D,GAGf,OAFA94D,EAAK5wC,KAAOA,EACZ4wC,EAAKw5D,WAAY,EACVx5D,CACT,EAEA,SAAS+5D,GAAiBztF,GACxB,OAAO,IAAIwsF,QAAMrqG,OAAWA,OAAWA,EAAWuF,OAAOsY,GAC3D,CAMA,SAAS0tF,GAAYC,GACnB,IAAIC,EAAS,IAAIpB,GACfmB,EAAMxkG,IACNwkG,EAAMvsG,KAINusG,EAAMplG,UAAYolG,EAAMplG,SAASsD,QACjC8hG,EAAM7qG,KACN6qG,EAAMlB,IACNkB,EAAMzsF,QACNysF,EAAMzkG,iBACNykG,EAAMjB,cAWR,OATAkB,EAAOjB,GAAKgB,EAAMhB,GAClBiB,EAAOZ,SAAWW,EAAMX,SACxBY,EAAOjvG,IAAMgvG,EAAMhvG,IACnBivG,EAAOV,UAAYS,EAAMT,UACzBU,EAAOhB,UAAYe,EAAMf,UACzBgB,EAAOf,UAAYc,EAAMd,UACzBe,EAAOd,UAAYa,EAAMb,UACzBc,EAAOP,UAAYM,EAAMN,UACzBO,EAAOT,UAAW,EACXS,CACT,CAOA,IAAIplD,GAAaniD,MAAMzG,UACnBiuG,GAAe9yG,OAAOuC,OAAOkrD,IAEZ,CACnB,OACA,MACA,QACA,UACA,SACA,OACA,WAMansD,SAAQ,SAAUsiB,GAE/B,IAAI3c,EAAWwmD,GAAW7pC,GAC1BgsF,EAAIkD,GAAclvF,GAAQ,WAExB,IADA,IAAI+J,EAAO,GAAIwG,EAAMhtB,UAAU3D,OACvB2wB,KAAQxG,EAAMwG,GAAQhtB,UAAWgtB,GAEzC,IAEI4+E,EAFAlhF,EAAS5qB,EAAS0E,MAAMxH,KAAMwpB,GAC9BqlF,EAAK7uG,KAAK8uG,OAEd,OAAQrvF,GACN,IAAK,OACL,IAAK,UACHmvF,EAAWplF,EACX,MACF,IAAK,SACHolF,EAAWplF,EAAK7c,MAAM,GAM1B,OAHIiiG,GAAYC,EAAGE,aAAaH,GAEhCC,EAAGG,IAAIlH,SACAp6E,CACT,GACF,IAIA,IAAIuhF,GAAYpzG,OAAOozB,oBAAoB0/E,IAMvCO,IAAgB,EAEpB,SAASC,GAAiBnzG,GACxBkzG,GAAgBlzG,CAClB,CAQA,IAAIozG,GAAW,SAAmBpzG,GAChCgE,KAAKhE,MAAQA,EACbgE,KAAKgvG,IAAM,IAAInC,GACf7sG,KAAKqvG,QAAU,EACf5D,EAAIzvG,EAAO,SAAUgE,MACjBmH,MAAMmF,QAAQtQ,IACZ4vG,EAsCR,SAAuB1sG,EAAQ4lC,GAE7B5lC,EAAO4mC,UAAYhB,CAErB,CAzCMwqE,CAAatzG,EAAO2yG,IAgD1B,SAAsBzvG,EAAQ4lC,EAAKz9B,GACjC,IAAK,IAAIjI,EAAI,EAAG4H,EAAIK,EAAKhI,OAAQD,EAAI4H,EAAG5H,IAAK,CAC3C,IAAIK,EAAM4H,EAAKjI,GACfqsG,EAAIvsG,EAAQO,EAAKqlC,EAAIrlC,GACvB,CACF,CAnDM8vG,CAAYvzG,EAAO2yG,GAAcM,IAEnCjvG,KAAK+uG,aAAa/yG,IAElBgE,KAAKwvG,KAAKxzG,EAEd,EAoDA,SAASyzG,GAASzzG,EAAO0zG,GAIvB,IAAIb,EAHJ,GAAKpmF,EAASzsB,MAAUA,aAAiBsxG,IAkBzC,OAdIh/D,EAAOtyC,EAAO,WAAaA,EAAM8yG,kBAAkBM,GACrDP,EAAK7yG,EAAM8yG,OAEXI,KACC3C,OACAplG,MAAMmF,QAAQtQ,IAAU+qB,EAAc/qB,KACvCH,OAAOokC,aAAajkC,KACnBA,EAAM2zG,SAEPd,EAAK,IAAIO,GAASpzG,IAEhB0zG,GAAcb,GAChBA,EAAGQ,UAEER,CACT,CAKA,SAASe,GACP/xG,EACA4B,EACAqhB,EACA+uF,EACAC,GAEA,IAAId,EAAM,IAAInC,GAEV93D,EAAWl5C,OAAO0L,yBAAyB1J,EAAK4B,GACpD,IAAIs1C,IAAsC,IAA1BA,EAASx1C,aAAzB,CAKA,IAAImpD,EAAS3T,GAAYA,EAAS74C,IAC9B0pC,EAASmP,GAAYA,EAASj0C,IAC5B4nD,IAAU9iB,GAAgC,IAArB5iC,UAAU3D,SACnCyhB,EAAMjjB,EAAI4B,IAGZ,IAAIswG,GAAWD,GAAWL,GAAQ3uF,GAClCjlB,OAAOC,eAAe+B,EAAK4B,EAAK,CAC9BxD,YAAY,EACZsD,cAAc,EACdrD,IAAK,WACH,IAAIF,EAAQ0sD,EAASA,EAAOh8C,KAAK7O,GAAOijB,EAUxC,OATI+rF,GAAI3tG,SACN8vG,EAAI/B,SACA8C,IACFA,EAAQf,IAAI/B,SACR9lG,MAAMmF,QAAQtQ,IAChBg0G,GAAYh0G,KAIXA,CACT,EACA8E,IAAK,SAAyBmvG,GAC5B,IAAIj0G,EAAQ0sD,EAASA,EAAOh8C,KAAK7O,GAAOijB,EAEpCmvF,IAAWj0G,GAAUi0G,GAAWA,GAAUj0G,GAAUA,GAQpD0sD,IAAW9iB,IACXA,EACFA,EAAOl5B,KAAK7O,EAAKoyG,GAEjBnvF,EAAMmvF,EAERF,GAAWD,GAAWL,GAAQQ,GAC9BjB,EAAIlH,SACN,GA7CF,CA+CF,CAOA,SAAShnG,GAAK5B,EAAQO,EAAKqhB,GAMzB,GAAI3Z,MAAMmF,QAAQpN,IAAW4pG,EAAkBrpG,GAG7C,OAFAP,EAAOG,OAAS2R,KAAKo3B,IAAIlpC,EAAOG,OAAQI,GACxCP,EAAO6T,OAAOtT,EAAK,EAAGqhB,GACfA,EAET,GAAIrhB,KAAOP,KAAYO,KAAO5D,OAAO6E,WAEnC,OADAxB,EAAOO,GAAOqhB,EACPA,EAET,IAAI+tF,EAAK,EAASC,OAClB,OAAI5vG,EAAOywG,QAAWd,GAAMA,EAAGQ,QAKtBvuF,EAEJ+tF,GAILe,GAAkBf,EAAG7yG,MAAOyD,EAAKqhB,GACjC+tF,EAAGG,IAAIlH,SACAhnF,IALL5hB,EAAOO,GAAOqhB,EACPA,EAKX,CAKA,SAASovF,GAAKhxG,EAAQO,GAMpB,GAAI0H,MAAMmF,QAAQpN,IAAW4pG,EAAkBrpG,GAC7CP,EAAO6T,OAAOtT,EAAK,OADrB,CAIA,IAAIovG,EAAK,EAASC,OACd5vG,EAAOywG,QAAWd,GAAMA,EAAGQ,SAO1B/gE,EAAOpvC,EAAQO,YAGbP,EAAOO,GACTovG,GAGLA,EAAGG,IAAIlH,SAhBP,CAiBF,CAMA,SAASkI,GAAah0G,GACpB,IAAK,IAAIkB,OAAI,EAAUkC,EAAI,EAAG4H,EAAIhL,EAAMqD,OAAQD,EAAI4H,EAAG5H,KACrDlC,EAAIlB,EAAMoD,KACLlC,EAAE4xG,QAAU5xG,EAAE4xG,OAAOE,IAAI/B,SAC1B9lG,MAAMmF,QAAQpP,IAChB8yG,GAAY9yG,EAGlB,CAnNAkyG,GAAS1uG,UAAU8uG,KAAO,SAAe3xG,GAEvC,IADA,IAAIwJ,EAAOxL,OAAOwL,KAAKxJ,GACduB,EAAI,EAAGA,EAAIiI,EAAKhI,OAAQD,IAC/BwwG,GAAkB/xG,EAAKwJ,EAAKjI,GAEhC,EAKAgwG,GAAS1uG,UAAUquG,aAAe,SAAuBoB,GACvD,IAAK,IAAI/wG,EAAI,EAAG4H,EAAImpG,EAAM9wG,OAAQD,EAAI4H,EAAG5H,IACvCqwG,GAAQU,EAAM/wG,GAElB,EA8MA,IAAIgxG,GAAS9qG,EAAOglG,sBAoBpB,SAAS+F,GAAWhmG,EAAIoC,GACtB,IAAKA,EAAQ,OAAOpC,EAOpB,IANA,IAAI5K,EAAK6wG,EAAOC,EAEZlpG,EAAOulG,GACP57D,QAAQnX,QAAQptB,GAChB5Q,OAAOwL,KAAKoF,GAEPrN,EAAI,EAAGA,EAAIiI,EAAKhI,OAAQD,IAGnB,YAFZK,EAAM4H,EAAKjI,MAGXkxG,EAAQjmG,EAAG5K,GACX8wG,EAAU9jG,EAAKhN,GACV6uC,EAAOjkC,EAAI5K,GAGd6wG,IAAUC,GACVxpF,EAAcupF,IACdvpF,EAAcwpF,IAEdF,GAAUC,EAAOC,GANjBzvG,GAAIuJ,EAAI5K,EAAK8wG,IASjB,OAAOlmG,CACT,CAKA,SAASmmG,GACPC,EACAC,EACAC,GAEA,OAAKA,EAoBI,WAEL,IAAIC,EAAmC,mBAAbF,EACtBA,EAAShkG,KAAKikG,EAAIA,GAClBD,EACAG,EAAmC,mBAAdJ,EACrBA,EAAU/jG,KAAKikG,EAAIA,GACnBF,EACJ,OAAIG,EACKP,GAAUO,EAAcC,GAExBA,CAEX,EA/BKH,EAGAD,EAQE,WACL,OAAOJ,GACe,mBAAbK,EAA0BA,EAAShkG,KAAK1M,KAAMA,MAAQ0wG,EACxC,mBAAdD,EAA2BA,EAAU/jG,KAAK1M,KAAMA,MAAQywG,EAEnE,EAZSC,EAHAD,CAgCb,CA2BA,SAASK,GACPL,EACAC,GAEA,IAAInlE,EAAMmlE,EACND,EACEA,EAAU1vG,OAAO2vG,GACjBvpG,MAAMmF,QAAQokG,GACZA,EACA,CAACA,GACLD,EACJ,OAAOllE,EAKT,SAAsBwlE,GAEpB,IADA,IAAIxlE,EAAM,GACDnsC,EAAI,EAAGA,EAAI2xG,EAAM1xG,OAAQD,KACD,IAA3BmsC,EAAIzlC,QAAQirG,EAAM3xG,KACpBmsC,EAAI5uC,KAAKo0G,EAAM3xG,IAGnB,OAAOmsC,CACT,CAZMylE,CAAYzlE,GACZA,CACN,CAuBA,SAAS0lE,GACPR,EACAC,EACAC,EACAlxG,GAEA,IAAI8rC,EAAM1vC,OAAOuC,OAAOqyG,GAAa,MACrC,OAAIC,EAEKzuF,EAAOspB,EAAKmlE,GAEZnlE,CAEX,CA3EA6kE,GAAOluG,KAAO,SACZuuG,EACAC,EACAC,GAEA,OAAKA,EAcEH,GAAcC,EAAWC,EAAUC,GAbpCD,GAAgC,mBAAbA,EAQdD,EAEFD,GAAcC,EAAWC,EAIpC,EA+BArG,EAAgBltG,SAAQ,SAAU+8F,GAChCkW,GAAOlW,GAAQ4W,EACjB,IAwBA1G,EAAYjtG,SAAQ,SAAUuI,GAC5B0qG,GAAO1qG,EAAO,KAAOurG,EACvB,IAQAb,GAAOjlG,MAAQ,SACbslG,EACAC,EACAC,EACAlxG,GAMA,GAHIgxG,IAAcnE,KAAemE,OAAYxtG,GACzCytG,IAAapE,KAAeoE,OAAWztG,IAEtCytG,EAAY,OAAO70G,OAAOuC,OAAOqyG,GAAa,MAInD,IAAKA,EAAa,OAAOC,EACzB,IAAIj8B,EAAM,CAAC,EAEX,IAAK,IAAIy8B,KADTjvF,EAAOwyD,EAAKg8B,GACMC,EAAU,CAC1B,IAAIp5F,EAASm9D,EAAIy8B,GACbx9D,EAAQg9D,EAASQ,GACjB55F,IAAWnQ,MAAMmF,QAAQgL,KAC3BA,EAAS,CAACA,IAEZm9D,EAAIy8B,GAAS55F,EACTA,EAAOvW,OAAO2yC,GACdvsC,MAAMmF,QAAQonC,GAASA,EAAQ,CAACA,EACtC,CACA,OAAO+gC,CACT,EAKA27B,GAAOjxG,MACPixG,GAAO7kG,QACP6kG,GAAOe,OACPf,GAAOxpG,SAAW,SAChB6pG,EACAC,EACAC,EACAlxG,GAKA,IAAKgxG,EAAa,OAAOC,EACzB,IAAIj8B,EAAM54E,OAAOuC,OAAO,MAGxB,OAFA6jB,EAAOwyD,EAAKg8B,GACRC,GAAYzuF,EAAOwyD,EAAKi8B,GACrBj8B,CACT,EACA27B,GAAOgB,QAAUZ,GAKjB,IAAIa,GAAe,SAAUZ,EAAWC,GACtC,YAAoBztG,IAAbytG,EACHD,EACAC,CACN,EAwHA,SAASY,GACPh6F,EACAo8B,EACAi9D,GAkBA,GAZqB,mBAAVj9D,IACTA,EAAQA,EAAM7vC,SApGlB,SAAyBA,EAAS8sG,GAChC,IAAIxxG,EAAQ0E,EAAQ1E,MACpB,GAAKA,EAAL,CACA,IACIC,EAAG0hB,EADHyqB,EAAM,CAAC,EAEX,GAAIpkC,MAAMmF,QAAQnN,GAEhB,IADAC,EAAID,EAAME,OACHD,KAEc,iBADnB0hB,EAAM3hB,EAAMC,MAGVmsC,EADO89D,EAASvoF,IACJ,CAAEpb,KAAM,YAKnB,GAAIqhB,EAAc5nB,GACvB,IAAK,IAAIM,KAAON,EACd2hB,EAAM3hB,EAAMM,GAEZ8rC,EADO89D,EAAS5pG,IACJsnB,EAAcjG,GACtBA,EACA,CAAEpb,KAAMob,GAShBjd,EAAQ1E,MAAQosC,CA7BK,CA8BvB,CAuEEgmE,CAAe79D,GAlEjB,SAA0B7vC,EAAS8sG,GACjC,IAAIQ,EAASttG,EAAQstG,OACrB,GAAKA,EAAL,CACA,IAAIK,EAAa3tG,EAAQstG,OAAS,CAAC,EACnC,GAAIhqG,MAAMmF,QAAQ6kG,GAChB,IAAK,IAAI/xG,EAAI,EAAGA,EAAI+xG,EAAO9xG,OAAQD,IACjCoyG,EAAWL,EAAO/xG,IAAM,CAAEqN,KAAM0kG,EAAO/xG,SAEpC,GAAI2nB,EAAcoqF,GACvB,IAAK,IAAI1xG,KAAO0xG,EAAQ,CACtB,IAAIrwF,EAAMqwF,EAAO1xG,GACjB+xG,EAAW/xG,GAAOsnB,EAAcjG,GAC5BmB,EAAO,CAAExV,KAAMhN,GAAOqhB,GACtB,CAAErU,KAAMqU,EACd,CAZoB,CAoBxB,CA6CE2wF,CAAgB/9D,GAxClB,SAA8B7vC,GAC5B,IAAI6tG,EAAO7tG,EAAQiE,WACnB,GAAI4pG,EACF,IAAK,IAAIjyG,KAAOiyG,EAAM,CACpB,IAAIC,EAASD,EAAKjyG,GACI,mBAAXkyG,IACTD,EAAKjyG,GAAO,CAAE6O,KAAMqjG,EAAQ3+F,OAAQ2+F,GAExC,CAEJ,CA+BEC,CAAoBl+D,IAMfA,EAAMm+D,QACLn+D,EAAMo+D,UACRx6F,EAASg6F,GAAah6F,EAAQo8B,EAAMo+D,QAASnB,IAE3Cj9D,EAAMjtC,QACR,IAAK,IAAIrH,EAAI,EAAG4H,EAAI0sC,EAAMjtC,OAAOpH,OAAQD,EAAI4H,EAAG5H,IAC9CkY,EAASg6F,GAAah6F,EAAQo8B,EAAMjtC,OAAOrH,GAAIuxG,GAKrD,IACIlxG,EADAoE,EAAU,CAAC,EAEf,IAAKpE,KAAO6X,EACVy6F,EAAWtyG,GAEb,IAAKA,KAAOi0C,EACLpF,EAAOh3B,EAAQ7X,IAClBsyG,EAAWtyG,GAGf,SAASsyG,EAAYtyG,GACnB,IAAIuyG,EAAQ5B,GAAO3wG,IAAQ4xG,GAC3BxtG,EAAQpE,GAAOuyG,EAAM16F,EAAO7X,GAAMi0C,EAAMj0C,GAAMkxG,EAAIlxG,EACpD,CACA,OAAOoE,CACT,CAOA,SAASouG,GACPpuG,EACA6B,EACA2L,EACA6gG,GAGA,GAAkB,iBAAP7gG,EAAX,CAGA,IAAI8gG,EAAStuG,EAAQ6B,GAErB,GAAI4oC,EAAO6jE,EAAQ9gG,GAAO,OAAO8gG,EAAO9gG,GACxC,IAAI+gG,EAAc/I,EAASh4F,GAC3B,GAAIi9B,EAAO6jE,EAAQC,GAAgB,OAAOD,EAAOC,GACjD,IAAIC,EAAe/I,EAAW8I,GAC9B,OAAI9jE,EAAO6jE,EAAQE,GAAwBF,EAAOE,GAExCF,EAAO9gG,IAAO8gG,EAAOC,IAAgBD,EAAOE,EATtD,CAiBF,CAMA,SAASC,GACP7yG,EACA8yG,EACAC,EACA7B,GAEA,IAAI1pF,EAAOsrF,EAAY9yG,GACnBgzG,GAAUnkE,EAAOkkE,EAAW/yG,GAC5BzD,EAAQw2G,EAAU/yG,GAElBizG,EAAeC,GAAahsG,QAASsgB,EAAKvhB,MAC9C,GAAIgtG,GAAgB,EAClB,GAAID,IAAWnkE,EAAOrnB,EAAM,WAC1BjrB,GAAQ,OACH,GAAc,KAAVA,GAAgBA,IAAUwtG,EAAU/pG,GAAM,CAGnD,IAAImzG,EAAcD,GAAanqG,OAAQye,EAAKvhB,OACxCktG,EAAc,GAAKF,EAAeE,KACpC52G,GAAQ,EAEZ,CAGF,QAAciH,IAAVjH,EAAqB,CACvBA,EAqBJ,SAA8B20G,EAAI1pF,EAAMxnB,GAEtC,IAAK6uC,EAAOrnB,EAAM,WAChB,OAEF,IAAIwkF,EAAMxkF,EAAKhpB,QAEX,EAUJ,GAAI0yG,GAAMA,EAAGpgG,SAASiiG,gBACWvvG,IAA/B0tG,EAAGpgG,SAASiiG,UAAU/yG,SACHwD,IAAnB0tG,EAAGkC,OAAOpzG,GAEV,OAAOkxG,EAAGkC,OAAOpzG,GAInB,MAAsB,mBAARgsG,GAA6C,aAAvBqH,GAAQ7rF,EAAKvhB,MAC7C+lG,EAAI/+F,KAAKikG,GACTlF,CACN,CAjDYsH,CAAoBpC,EAAI1pF,EAAMxnB,GAGtC,IAAIuzG,EAAoB9D,GACxBC,IAAgB,GAChBM,GAAQzzG,GACRmzG,GAAgB6D,EAClB,CAQA,OAAOh3G,CACT,CAsHA,IAAIi3G,GAAsB,qBAO1B,SAASH,GAAS99F,GAChB,IAAIwV,EAAQxV,GAAMA,EAAGnS,WAAW2nB,MAAMyoF,IACtC,OAAOzoF,EAAQA,EAAM,GAAK,EAC5B,CAEA,SAAS0oF,GAAYxwG,EAAGC,GACtB,OAAOmwG,GAAQpwG,KAAOowG,GAAQnwG,EAChC,CAEA,SAASgwG,GAAcjtG,EAAMytG,GAC3B,IAAKhsG,MAAMmF,QAAQ6mG,GACjB,OAAOD,GAAWC,EAAeztG,GAAQ,GAAK,EAEhD,IAAK,IAAItG,EAAI,EAAG4wB,EAAMmjF,EAAc9zG,OAAQD,EAAI4wB,EAAK5wB,IACnD,GAAI8zG,GAAWC,EAAc/zG,GAAIsG,GAC/B,OAAOtG,EAGX,OAAQ,CACV,CAgDA,SAASg0G,GAAa5zF,EAAKmxF,EAAI0C,GAG7BjG,KACA,IACE,GAAIuD,EAEF,IADA,IAAIznC,EAAMynC,EACFznC,EAAMA,EAAIh4D,SAAU,CAC1B,IAAI6/F,EAAQ7nC,EAAI34D,SAAS+iG,cACzB,GAAIvC,EACF,IAAK,IAAI3xG,EAAI,EAAGA,EAAI2xG,EAAM1xG,OAAQD,IAChC,IAEE,IADoD,IAAtC2xG,EAAM3xG,GAAGsN,KAAKw8D,EAAK1pD,EAAKmxF,EAAI0C,GAC3B,MAGjB,CAFE,MAAOn2G,GACPq2G,GAAkBr2G,EAAGgsE,EAAK,qBAC5B,CAGN,CAEFqqC,GAAkB/zF,EAAKmxF,EAAI0C,EAG7B,CAFE,QACAhG,IACF,CACF,CAEA,SAASmG,GACPlzG,EACA0hB,EACAwH,EACAmnF,EACA0C,GAEA,IAAI9nE,EACJ,KACEA,EAAM/hB,EAAOlpB,EAAQkH,MAAMwa,EAASwH,GAAQlpB,EAAQoM,KAAKsV,MAC7CupB,EAAIokE,QAAU7tC,EAAUv2B,KAASA,EAAIkoE,WAC/CloE,EAAI84B,OAAM,SAAUnnE,GAAK,OAAOk2G,GAAYl2G,EAAGyzG,EAAI0C,EAAO,mBAAqB,IAG/E9nE,EAAIkoE,UAAW,EAInB,CAFE,MAAOv2G,GACPk2G,GAAYl2G,EAAGyzG,EAAI0C,EACrB,CACA,OAAO9nE,CACT,CAEA,SAASgoE,GAAmB/zF,EAAKmxF,EAAI0C,GACnC,GAAI/tG,EAAOqlG,aACT,IACE,OAAOrlG,EAAOqlG,aAAaj+F,KAAK,KAAM8S,EAAKmxF,EAAI0C,EAOjD,CANE,MAAOn2G,GAGHA,IAAMsiB,GACRk0F,GAASx2G,EAAG,KAAM,sBAEtB,CAEFw2G,GAASl0F,EAAKmxF,EAAI0C,EACpB,CAEA,SAASK,GAAUl0F,EAAKmxF,EAAI0C,GAK1B,IAAKxH,IAAaC,QAA8B,IAAZ1uG,EAGlC,MAAMoiB,EAFNpiB,EAAQC,MAAMmiB,EAIlB,CAIA,IAyBIm0F,GAzBAC,IAAmB,EAEnBC,GAAY,GACZC,IAAU,EAEd,SAASC,KACPD,IAAU,EACV,IAAIE,EAASH,GAAUlnG,MAAM,GAC7BknG,GAAUx0G,OAAS,EACnB,IAAK,IAAID,EAAI,EAAGA,EAAI40G,EAAO30G,OAAQD,IACjC40G,EAAO50G,IAEX,CAsBA,GAAuB,oBAAZ0e,SAA2B4uF,GAAS5uF,SAAU,CACvD,IAAIpW,GAAIoW,QAAQC,UAChB41F,GAAY,WACVjsG,GAAEmb,KAAKkxF,IAMHrP,IAASvsF,WAAWgsE,EAC1B,EACAyvB,IAAmB,CACrB,MAAO,GAAKlpB,GAAoC,oBAArBupB,mBACzBvH,GAASuH,mBAEuB,yCAAhCA,iBAAiBpxG,WAoBjB8wG,GAJiC,oBAAjBO,cAAgCxH,GAASwH,cAI7C,WACVA,aAAaH,GACf,EAGY,WACV57F,WAAW47F,GAAgB,EAC7B,MA1BC,CAID,IAAI3f,GAAU,EACV33F,GAAW,IAAIw3G,iBAAiBF,IAChCI,GAAWr3G,SAASgX,eAAetL,OAAO4rF,KAC9C33F,GAASgzG,QAAQ0E,GAAU,CACzBC,eAAe,IAEjBT,GAAY,WACVvf,IAAWA,GAAU,GAAK,EAC1B+f,GAASjyG,KAAOsG,OAAO4rF,GACzB,EACAwf,IAAmB,CACrB,CAcA,SAASjzB,GAAUR,EAAI5xC,GACrB,IAAIvrB,EAiBJ,GAhBA6wF,GAAUl3G,MAAK,WACb,GAAIwjF,EACF,IACEA,EAAGzzE,KAAK6hC,EAGV,CAFE,MAAOrxC,GACPk2G,GAAYl2G,EAAGqxC,EAAK,WACtB,MACSvrB,GACTA,EAASurB,EAEb,IACKulE,KACHA,IAAU,EACVH,OAGGxzB,GAAyB,oBAAZriE,QAChB,OAAO,IAAIA,SAAQ,SAAUC,GAC3BiF,EAAWjF,CACb,GAEJ,CA8FA,IAAIs2F,GAAc,IAAI1H,GAOtB,SAAS2H,GAAUxzF,GACjByzF,GAAUzzF,EAAKuzF,IACfA,GAAY/7F,OACd,CAEA,SAASi8F,GAAWzzF,EAAKqyC,GACvB,IAAI/zD,EAAGiI,EACHmtG,EAAMrtG,MAAMmF,QAAQwU,GACxB,MAAM0zF,IAAQ/rF,EAAS3H,IAASjlB,OAAO44G,SAAS3zF,IAAQA,aAAewsF,IAAvE,CAGA,GAAIxsF,EAAIguF,OAAQ,CACd,IAAI4F,EAAQ5zF,EAAIguF,OAAOE,IAAI39F,GAC3B,GAAI8hD,EAAKh+B,IAAIu/E,GACX,OAEFvhD,EAAKjmD,IAAIwnG,EACX,CACA,GAAIF,EAEF,IADAp1G,EAAI0hB,EAAIzhB,OACDD,KAAOm1G,GAAUzzF,EAAI1hB,GAAI+zD,QAIhC,IADA/zD,GADAiI,EAAOxL,OAAOwL,KAAKyZ,IACVzhB,OACFD,KAAOm1G,GAAUzzF,EAAIzZ,EAAKjI,IAAK+zD,EAdxC,CAgBF,CA2BA,IAAIwhD,GAAiBxL,GAAO,SAAU9oG,GACpC,IAAIyyF,EAA6B,MAAnBzyF,EAAKgF,OAAO,GAEtBuvG,EAA6B,OADjCv0G,EAAOyyF,EAAUzyF,EAAKsM,MAAM,GAAKtM,GACdgF,OAAO,GAEtBinC,EAA6B,OADjCjsC,EAAOu0G,EAAUv0G,EAAKsM,MAAM,GAAKtM,GACdgF,OAAO,GAE1B,MAAO,CACLhF,KAFFA,EAAOisC,EAAUjsC,EAAKsM,MAAM,GAAKtM,EAG/BkkF,KAAMqwB,EACNtoE,QAASA,EACTwmD,QAASA,EAEb,IAEA,SAAS+hB,GAAiBntF,EAAKipF,GAC7B,SAASmE,IACP,IAAIC,EAAc/xG,UAEd0kB,EAAMotF,EAAQptF,IAClB,IAAIvgB,MAAMmF,QAAQob,GAOhB,OAAO8rF,GAAwB9rF,EAAK,KAAM1kB,UAAW2tG,EAAI,gBALzD,IADA,IAAIjC,EAAShnF,EAAI/a,QACRvN,EAAI,EAAGA,EAAIsvG,EAAOrvG,OAAQD,IACjCo0G,GAAwB9E,EAAOtvG,GAAI,KAAM21G,EAAapE,EAAI,eAMhE,CAEA,OADAmE,EAAQptF,IAAMA,EACPotF,CACT,CAEA,SAASE,GACP3/F,EACA4/F,EACA/nG,EACAgoG,EACAC,EACAxE,GAEA,IAAItwG,EAAc6oE,EAAKksC,EAAK50G,EAC5B,IAAKH,KAAQgV,EACF6zD,EAAM7zD,EAAGhV,GAClB+0G,EAAMH,EAAM50G,GACZG,EAAQm0G,GAAet0G,GACnBqoG,EAAQx/B,KAKDw/B,EAAQ0M,IACb1M,EAAQx/B,EAAIxhD,OACdwhD,EAAM7zD,EAAGhV,GAAQw0G,GAAgB3rC,EAAKynC,IAEpC/H,EAAOpoG,EAAM+jF,QACfrb,EAAM7zD,EAAGhV,GAAQ80G,EAAkB30G,EAAMH,KAAM6oE,EAAK1oE,EAAM8rC,UAE5Dp/B,EAAI1M,EAAMH,KAAM6oE,EAAK1oE,EAAM8rC,QAAS9rC,EAAMsyF,QAAStyF,EAAMuE,SAChDmkE,IAAQksC,IACjBA,EAAI1tF,IAAMwhD,EACV7zD,EAAGhV,GAAQ+0G,IAGf,IAAK/0G,KAAQ40G,EACPvM,EAAQrzF,EAAGhV,KAEb60G,GADA10G,EAAQm0G,GAAet0G,IACPA,KAAM40G,EAAM50G,GAAOG,EAAM8rC,QAG/C,CAIA,SAAS+oE,GAAgB5J,EAAK6J,EAASpb,GAIrC,IAAI4a,EAHArJ,aAAe6B,KACjB7B,EAAMA,EAAIvpG,KAAKg4F,OAASuR,EAAIvpG,KAAKg4F,KAAO,CAAC,IAG3C,IAAIqb,EAAU9J,EAAI6J,GAElB,SAASE,IACPtb,EAAK1yF,MAAMxH,KAAMgD,WAGjBiK,EAAO6nG,EAAQptF,IAAK8tF,EACtB,CAEI9M,EAAQ6M,GAEVT,EAAUD,GAAgB,CAACW,IAGvB7M,EAAM4M,EAAQ7tF,MAAQkhF,EAAO2M,EAAQvmF,SAEvC8lF,EAAUS,GACF7tF,IAAI/qB,KAAK64G,GAGjBV,EAAUD,GAAgB,CAACU,EAASC,IAIxCV,EAAQ9lF,QAAS,EACjBy8E,EAAI6J,GAAWR,CACjB,CA6CA,SAASW,GACPlqE,EACAlgB,EACA5rB,EACAqX,EACA4+F,GAEA,GAAI/M,EAAMt9E,GAAO,CACf,GAAIijB,EAAOjjB,EAAM5rB,GAKf,OAJA8rC,EAAI9rC,GAAO4rB,EAAK5rB,GACXi2G,UACIrqF,EAAK5rB,IAEP,EACF,GAAI6uC,EAAOjjB,EAAMvU,GAKtB,OAJAy0B,EAAI9rC,GAAO4rB,EAAKvU,GACX4+F,UACIrqF,EAAKvU,IAEP,CAEX,CACA,OAAO,CACT,CA6BA,SAAS6+F,GAAmBtsG,GAC1B,OAAOm2E,EAAYn2E,GACf,CAACklG,GAAgBllG,IACjBlC,MAAMmF,QAAQjD,GACZusG,GAAuBvsG,QACvBpG,CACR,CAEA,SAAS4yG,GAAYrhE,GACnB,OAAOm0D,EAAMn0D,IAASm0D,EAAMn0D,EAAK5wC,QA5yEpB,IA4yEqC4wC,EAAKw5D,SACzD,CAEA,SAAS4H,GAAwBvsG,EAAUysG,GACzC,IACI12G,EAAG6H,EAAGmoB,EAAWoI,EADjB+T,EAAM,GAEV,IAAKnsC,EAAI,EAAGA,EAAIiK,EAAShK,OAAQD,IAE3BspG,EADJzhG,EAAIoC,EAASjK,KACkB,kBAAN6H,IAEzBuwB,EAAO+T,EADPnc,EAAYmc,EAAIlsC,OAAS,GAGrB8H,MAAMmF,QAAQrF,GACZA,EAAE5H,OAAS,IAGTw2G,IAFJ5uG,EAAI2uG,GAAuB3uG,GAAK6uG,GAAe,IAAM,IAAM12G,IAE1C,KAAOy2G,GAAWr+E,KACjC+T,EAAInc,GAAam/E,GAAgB/2E,EAAK5zB,KAAQqD,EAAE,GAAIrD,MACpDqD,EAAE4d,SAEJ0mB,EAAI5uC,KAAK6K,MAAM+jC,EAAKtkC,IAEbu4E,EAAYv4E,GACjB4uG,GAAWr+E,GAIb+T,EAAInc,GAAam/E,GAAgB/2E,EAAK5zB,KAAOqD,GAC9B,KAANA,GAETskC,EAAI5uC,KAAK4xG,GAAgBtnG,IAGvB4uG,GAAW5uG,IAAM4uG,GAAWr+E,GAE9B+T,EAAInc,GAAam/E,GAAgB/2E,EAAK5zB,KAAOqD,EAAErD,OAG3CglG,EAAOv/F,EAAS0sG,WAClBpN,EAAM1hG,EAAEgD,MACRy+F,EAAQzhG,EAAExH,MACVkpG,EAAMmN,KACN7uG,EAAExH,IAAM,UAAYq2G,EAAc,IAAM12G,EAAI,MAE9CmsC,EAAI5uC,KAAKsK,KAIf,OAAOskC,CACT,CAoCA,SAASyqE,GAAe7E,EAAQR,GAC9B,GAAIQ,EAAQ,CAOV,IALA,IAAIzjF,EAAS7xB,OAAOuC,OAAO,MACvBiJ,EAAOulG,GACP57D,QAAQnX,QAAQs3E,GAChBt1G,OAAOwL,KAAK8pG,GAEP/xG,EAAI,EAAGA,EAAIiI,EAAKhI,OAAQD,IAAK,CACpC,IAAIK,EAAM4H,EAAKjI,GAEf,GAAY,WAARK,EAAJ,CAGA,IAFA,IAAIw2G,EAAa9E,EAAO1xG,GAAKgN,KACzB6W,EAASqtF,EACNrtF,GAAQ,CACb,GAAIA,EAAO4yF,WAAa5nE,EAAOhrB,EAAO4yF,UAAWD,GAAa,CAC5DvoF,EAAOjuB,GAAO6jB,EAAO4yF,UAAUD,GAC/B,KACF,CACA3yF,EAASA,EAAOpS,OAClB,CACA,IAAKoS,EACH,GAAI,YAAa6tF,EAAO1xG,GAAM,CAC5B,IAAI02G,EAAiBhF,EAAO1xG,GAAKxB,QACjCyvB,EAAOjuB,GAAiC,mBAAnB02G,EACjBA,EAAezpG,KAAKikG,GACpBwF,CACN,MAAW,CAhBoB,CAoBnC,CACA,OAAOzoF,CACT,CACF,CASA,SAAS0oF,GACP/sG,EACA2Y,GAEA,IAAK3Y,IAAaA,EAAShK,OACzB,MAAO,CAAC,EAGV,IADA,IAAIg3G,EAAQ,CAAC,EACJj3G,EAAI,EAAG4H,EAAIqC,EAAShK,OAAQD,EAAI4H,EAAG5H,IAAK,CAC/C,IAAIs0C,EAAQrqC,EAASjK,GACjB8C,EAAOwxC,EAAMxxC,KAOjB,GALIA,GAAQA,EAAK2S,OAAS3S,EAAK2S,MAAMyhG,aAC5Bp0G,EAAK2S,MAAMyhG,KAIf5iE,EAAM1xB,UAAYA,GAAW0xB,EAAMg6D,YAAc1rF,IACpD9f,GAAqB,MAAbA,EAAKo0G,MAUZD,EAAMp4G,UAAYo4G,EAAMp4G,QAAU,KAAKtB,KAAK+2C,OAT7C,CACA,IAAIrzC,EAAO6B,EAAKo0G,KACZA,EAAQD,EAAMh2G,KAAUg2G,EAAMh2G,GAAQ,IACxB,aAAdqzC,EAAMzpC,IACRqsG,EAAK35G,KAAK6K,MAAM8uG,EAAM5iE,EAAMrqC,UAAY,IAExCitG,EAAK35G,KAAK+2C,EAEd,CAGF,CAEA,IAAK,IAAI6iE,KAAUF,EACbA,EAAME,GAAQ/hF,MAAMgiF,YACfH,EAAME,GAGjB,OAAOF,CACT,CAEA,SAASG,GAAchiE,GACrB,OAAQA,EAAKw5D,YAAcx5D,EAAKg5D,cAA+B,MAAdh5D,EAAK5wC,IACxD,CAIA,SAASwqG,GAAoB55D,GAC3B,OAAOA,EAAKw5D,WAAax5D,EAAKg5D,YAChC,CAIA,SAASiJ,GACPJ,EACAK,EACAC,GAEA,IAAIprE,EACAqrE,EAAiB/6G,OAAOwL,KAAKqvG,GAAar3G,OAAS,EACnDw3G,EAAWR,IAAUA,EAAMS,SAAWF,EACtCn3G,EAAM42G,GAASA,EAAMU,KACzB,GAAKV,EAEE,IAAIA,EAAMW,YAEf,OAAOX,EAAMW,YACR,GACLH,GACAF,GACAA,IAAcnO,GACd/oG,IAAQk3G,EAAUI,OACjBH,IACAD,EAAUM,WAIX,OAAON,EAGP,IAAK,IAAIzF,KADT3lE,EAAM,CAAC,EACW8qE,EACZA,EAAMnF,IAAuB,MAAbA,EAAM,KACxB3lE,EAAI2lE,GAASgG,GAAoBR,EAAaxF,EAAOmF,EAAMnF,IAGjE,MAtBE3lE,EAAM,CAAC,EAwBT,IAAK,IAAI4rE,KAAST,EACVS,KAAS5rE,IACbA,EAAI4rE,GAASC,GAAgBV,EAAaS,IAW9C,OANId,GAASx6G,OAAOokC,aAAao2E,KAC/B,EAAQW,YAAczrE,GAExBkgE,EAAIlgE,EAAK,UAAWsrE,GACpBpL,EAAIlgE,EAAK,OAAQ9rC,GACjBgsG,EAAIlgE,EAAK,aAAcqrE,GAChBrrE,CACT,CAEA,SAAS2rE,GAAoBR,EAAaj3G,EAAKuV,GAC7C,IAAIw8F,EAAa,WACf,IAAIjmE,EAAMvoC,UAAU3D,OAAS2V,EAAGxN,MAAM,KAAMxE,WAAagS,EAAG,CAAC,GAIzDy5F,GAHJljE,EAAMA,GAAsB,iBAARA,IAAqBpkC,MAAMmF,QAAQi/B,GACnD,CAACA,GACDoqE,GAAkBpqE,KACHA,EAAI,GACvB,OAAOA,KACJkjE,GACe,IAAfljE,EAAIlsC,QAAgBovG,EAAMT,YAAcI,GAAmBK,SAC1DxrG,EACAsoC,CACN,EAWA,OAPIv2B,EAAGE,OACLrZ,OAAOC,eAAe46G,EAAaj3G,EAAK,CACtCvD,IAAKs1G,EACLv1G,YAAY,EACZsD,cAAc,IAGXiyG,CACT,CAEA,SAAS4F,GAAgBf,EAAO52G,GAC9B,OAAO,WAAc,OAAO42G,EAAM52G,EAAM,CAC1C,CAOA,SAAS43G,GACPv2F,EACAhT,GAEA,IAAI2mE,EAAKr1E,EAAG4H,EAAGK,EAAM5H,EACrB,GAAI0H,MAAMmF,QAAQwU,IAAuB,iBAARA,EAE/B,IADA2zD,EAAM,IAAIttE,MAAM2Z,EAAIzhB,QACfD,EAAI,EAAG4H,EAAI8Z,EAAIzhB,OAAQD,EAAI4H,EAAG5H,IACjCq1E,EAAIr1E,GAAK0O,EAAOgT,EAAI1hB,GAAIA,QAErB,GAAmB,iBAAR0hB,EAEhB,IADA2zD,EAAM,IAAIttE,MAAM2Z,GACX1hB,EAAI,EAAGA,EAAI0hB,EAAK1hB,IACnBq1E,EAAIr1E,GAAK0O,EAAO1O,EAAI,EAAGA,QAEpB,GAAIqpB,EAAS3H,GAClB,GAAI8rF,IAAa9rF,EAAIvU,OAAOC,UAAW,CACrCioE,EAAM,GAGN,IAFA,IAAIjoE,EAAWsU,EAAIvU,OAAOC,YACtBkhB,EAASlhB,EAASsF,QACd4b,EAAO3b,MACb0iE,EAAI93E,KAAKmR,EAAO4f,EAAO1xB,MAAOy4E,EAAIp1E,SAClCquB,EAASlhB,EAASsF,MAEtB,MAGE,IAFAzK,EAAOxL,OAAOwL,KAAKyZ,GACnB2zD,EAAM,IAAIttE,MAAME,EAAKhI,QAChBD,EAAI,EAAG4H,EAAIK,EAAKhI,OAAQD,EAAI4H,EAAG5H,IAClCK,EAAM4H,EAAKjI,GACXq1E,EAAIr1E,GAAK0O,EAAOgT,EAAIrhB,GAAMA,EAAKL,GAQrC,OAJKupG,EAAMl0B,KACTA,EAAM,IAER,EAAMshC,UAAW,EACVthC,CACT,CAOA,SAAS6iC,GACPj3G,EACAk3G,EACAp4G,EACAq4G,GAEA,IACIC,EADAC,EAAe13G,KAAK23G,aAAat3G,GAEjCq3G,GAEFv4G,EAAQA,GAAS,CAAC,EACdq4G,IAIFr4G,EAAQ8iB,EAAOA,EAAO,CAAC,EAAGu1F,GAAar4G,IAEzCs4G,EACEC,EAAav4G,KACc,mBAAnBo4G,EAAgCA,IAAmBA,IAE7DE,EACEz3G,KAAK4K,OAAOvK,KACe,mBAAnBk3G,EAAgCA,IAAmBA,GAG/D,IAAIr4G,EAASC,GAASA,EAAMm3G,KAC5B,OAAIp3G,EACKc,KAAKuU,eAAe,WAAY,CAAE+hG,KAAMp3G,GAAUu4G,GAElDA,CAEX,CAOA,SAASG,GAAevmG,GACtB,OAAO4gG,GAAajyG,KAAKuQ,SAAU,UAAWc,IAAakgD,CAC7D,CAIA,SAASsmD,GAAeC,EAAQp1C,GAC9B,OAAIv7D,MAAMmF,QAAQwrG,IACmB,IAA5BA,EAAOhyG,QAAQ48D,GAEfo1C,IAAWp1C,CAEtB,CAOA,SAASq1C,GACPC,EACAv4G,EACAw4G,EACAC,EACAC,GAEA,IAAIC,EAAgB9yG,EAAOwlG,SAASrrG,IAAQw4G,EAC5C,OAAIE,GAAkBD,IAAiB5yG,EAAOwlG,SAASrrG,GAC9Co4G,GAAcM,EAAgBD,GAC5BE,EACFP,GAAcO,EAAeJ,GAC3BE,EACF1O,EAAU0O,KAAkBz4G,OAEbwD,IAAjB+0G,CACT,CAOA,SAASK,GACPn2G,EACA+H,EACAjO,EACAs8G,EACAC,GAEA,GAAIv8G,EACF,GAAKysB,EAASzsB,GAKP,CAIL,IAAIqvB,EAHAlkB,MAAMmF,QAAQtQ,KAChBA,EAAQ23B,EAAS33B,IAGnB,IAAIw8G,EAAO,SAAW/4G,GACpB,GACU,UAARA,GACQ,UAARA,GACAypG,EAAoBzpG,GAEpB4rB,EAAOnpB,MACF,CACL,IAAIwD,EAAOxD,EAAK2S,OAAS3S,EAAK2S,MAAMnP,KACpC2lB,EAAOitF,GAAUhzG,EAAO8lG,YAAYnhG,EAAKvE,EAAMjG,GAC3CyC,EAAKwT,WAAaxT,EAAKwT,SAAW,CAAC,GACnCxT,EAAK2S,QAAU3S,EAAK2S,MAAQ,CAAC,EACnC,CACA,IAAI4jG,EAAepP,EAAS5pG,GACxBi5G,EAAgBlP,EAAU/pG,GACxBg5G,KAAgBptF,GAAWqtF,KAAiBrtF,IAChDA,EAAK5rB,GAAOzD,EAAMyD,GAEd84G,KACOr2G,EAAKmT,KAAOnT,EAAKmT,GAAK,CAAC,IAC5B,UAAY5V,GAAQ,SAAUooG,GAChC7rG,EAAMyD,GAAOooG,CACf,GAGN,EAEA,IAAK,IAAIpoG,KAAOzD,EAAOw8G,EAAM/4G,EAC/B,MAEF,OAAOyC,CACT,CAOA,SAASy2G,GACPt1F,EACAu1F,GAEA,IAAIzP,EAASnpG,KAAK64G,eAAiB74G,KAAK64G,aAAe,IACnDC,EAAO3P,EAAO9lF,GAGlB,OAAIy1F,IAASF,GASbG,GALAD,EAAO3P,EAAO9lF,GAASrjB,KAAKuQ,SAAS0G,gBAAgBoM,GAAO3W,KAC1D1M,KAAKg5G,aACL,KACAh5G,MAEgB,aAAeqjB,GAAQ,GARhCy1F,CAUX,CAMA,SAASG,GACPH,EACAz1F,EACA5jB,GAGA,OADAs5G,GAAWD,EAAO,WAAaz1F,GAAS5jB,EAAO,IAAMA,EAAO,KAAM,GAC3Dq5G,CACT,CAEA,SAASC,GACPD,EACAr5G,EACAyuG,GAEA,GAAI/mG,MAAMmF,QAAQwsG,GAChB,IAAK,IAAI15G,EAAI,EAAGA,EAAI05G,EAAKz5G,OAAQD,IAC3B05G,EAAK15G,IAAyB,iBAAZ05G,EAAK15G,IACzB85G,GAAeJ,EAAK15G,GAAKK,EAAM,IAAML,EAAI8uG,QAI7CgL,GAAeJ,EAAMr5G,EAAKyuG,EAE9B,CAEA,SAASgL,GAAgB1kE,EAAM/0C,EAAKyuG,GAClC15D,EAAKs5D,UAAW,EAChBt5D,EAAK/0C,IAAMA,EACX+0C,EAAK05D,OAASA,CAChB,CAIA,SAASiL,GAAqBj3G,EAAMlG,GAClC,GAAIA,EACF,GAAK+qB,EAAc/qB,GAKZ,CACL,IAAIqZ,EAAKnT,EAAKmT,GAAKnT,EAAKmT,GAAK4M,EAAO,CAAC,EAAG/f,EAAKmT,IAAM,CAAC,EACpD,IAAK,IAAI5V,KAAOzD,EAAO,CACrB,IAAIooD,EAAW/uC,EAAG5V,GACd25G,EAAOp9G,EAAMyD,GACjB4V,EAAG5V,GAAO2kD,EAAW,GAAGrjD,OAAOqjD,EAAUg1D,GAAQA,CACnD,CACF,MAEF,OAAOl3G,CACT,CAIA,SAASm3G,GACP3xF,EACA6jB,EAEA+tE,EACAC,GAEAhuE,EAAMA,GAAO,CAAEurE,SAAUwC,GACzB,IAAK,IAAIl6G,EAAI,EAAGA,EAAIsoB,EAAIroB,OAAQD,IAAK,CACnC,IAAIk3G,EAAO5uF,EAAItoB,GACX+H,MAAMmF,QAAQgqG,GAChB+C,GAAmB/C,EAAM/qE,EAAK+tE,GACrBhD,IAELA,EAAKphG,QACPohG,EAAKthG,GAAGE,OAAQ,GAElBq2B,EAAI+qE,EAAK72G,KAAO62G,EAAKthG,GAEzB,CAIA,OAHIukG,IACF,EAAMxC,KAAOwC,GAERhuE,CACT,CAIA,SAASiuE,GAAiBC,EAAS79E,GACjC,IAAK,IAAIx8B,EAAI,EAAGA,EAAIw8B,EAAOv8B,OAAQD,GAAK,EAAG,CACzC,IAAIK,EAAMm8B,EAAOx8B,GACE,iBAARK,GAAoBA,IAC7Bg6G,EAAQ79E,EAAOx8B,IAAMw8B,EAAOx8B,EAAI,GAQpC,CACA,OAAOq6G,CACT,CAKA,SAASC,GAAiB19G,EAAO0nC,GAC/B,MAAwB,iBAAV1nC,EAAqB0nC,EAAS1nC,EAAQA,CACtD,CAIA,SAAS29G,GAAsBz6G,GAC7BA,EAAO06G,GAAKX,GACZ/5G,EAAO8rE,GAAK+9B,EACZ7pG,EAAOuW,GAAK5S,EACZ3D,EAAO26G,GAAKxC,GACZn4G,EAAO+V,GAAKqiG,GACZp4G,EAAO46G,GAAKlQ,EACZ1qG,EAAO+rE,GAAKi/B,EACZhrG,EAAO66G,GAAKpB,GACZz5G,EAAO86G,GAAKpC,GACZ14G,EAAOwX,GAAKqhG,GACZ74G,EAAOyV,GAAK0jG,GACZn5G,EAAOsW,GAAK+4F,GACZrvG,EAAO0W,GAAK04F,GACZpvG,EAAO6V,GAAKskG,GACZn6G,EAAOwV,GAAKykG,GACZj6G,EAAOgX,GAAKsjG,GACZt6G,EAAO+6G,GAAKP,EACd,CAIA,SAASQ,GACPh4G,EACA/C,EACAkK,EACAiO,EACAi+C,GAEA,IAKI4kD,EALAC,EAASp6G,KAET6D,EAAU0xD,EAAK1xD,QAIfyqC,EAAOh3B,EAAQ,SACjB6iG,EAAYt+G,OAAOuC,OAAOkZ,IAEhB+iG,UAAY/iG,GAKtB6iG,EAAY7iG,EAEZA,EAASA,EAAO+iG,WAElB,IAAIC,EAAa1R,EAAO/kG,EAAQqT,WAC5BqjG,GAAqBD,EAEzBt6G,KAAKkC,KAAOA,EACZlC,KAAKb,MAAQA,EACba,KAAKqJ,SAAWA,EAChBrJ,KAAKsX,OAASA,EACdtX,KAAKwK,UAAYtI,EAAKmT,IAAMmzF,EAC5BxoG,KAAKw6G,WAAaxE,GAAcnyG,EAAQstG,OAAQ75F,GAChDtX,KAAKq2G,MAAQ,WAOX,OANK+D,EAAOxvG,QACV6rG,GACEv0G,EAAK4S,YACLslG,EAAOxvG,OAASwrG,GAAa/sG,EAAUiO,IAGpC8iG,EAAOxvG,MAChB,EAEA/O,OAAOC,eAAekE,KAAM,cAAe,CACzC/D,YAAY,EACZC,IAAK,WACH,OAAOu6G,GAAqBv0G,EAAK4S,YAAa9U,KAAKq2G,QACrD,IAIEiE,IAEFt6G,KAAKuQ,SAAW1M,EAEhB7D,KAAK4K,OAAS5K,KAAKq2G,QACnBr2G,KAAK23G,aAAelB,GAAqBv0G,EAAK4S,YAAa9U,KAAK4K,SAG9D/G,EAAQsT,SACVnX,KAAKyU,GAAK,SAAU/R,EAAGC,EAAGsE,EAAGC,GAC3B,IAAIunG,EAAQn7F,GAAc6mG,EAAWz3G,EAAGC,EAAGsE,EAAGC,EAAGqzG,GAKjD,OAJI9L,IAAUtnG,MAAMmF,QAAQmiG,KAC1BA,EAAMb,UAAY/pG,EAAQsT,SAC1Bs3F,EAAMf,UAAYp2F,GAEbm3F,CACT,EAEAzuG,KAAKyU,GAAK,SAAU/R,EAAGC,EAAGsE,EAAGC,GAAK,OAAOoM,GAAc6mG,EAAWz3G,EAAGC,EAAGsE,EAAGC,EAAGqzG,EAAoB,CAEtG,CA6CA,SAASE,GAA8BhM,EAAOvsG,EAAMi4G,EAAWt2G,EAAS62G,GAItE,IAAIC,EAAQnM,GAAWC,GASvB,OARAkM,EAAMjN,UAAYyM,EAClBQ,EAAMhN,UAAY9pG,EAId3B,EAAKo0G,QACNqE,EAAMz4G,OAASy4G,EAAMz4G,KAAO,CAAC,IAAIo0G,KAAOp0G,EAAKo0G,MAEzCqE,CACT,CAEA,SAASC,GAAYvwG,EAAIoC,GACvB,IAAK,IAAIhN,KAAOgN,EACdpC,EAAGg/F,EAAS5pG,IAAQgN,EAAKhN,EAE7B,CA/DAk6G,GAAqBO,GAAwBx5G,WA0E7C,IAAIm6G,GAAsB,CACxBzwE,KAAM,SAAeqkE,EAAOqM,GAC1B,GACErM,EAAMZ,oBACLY,EAAMZ,kBAAkBkN,cACzBtM,EAAMvsG,KAAK84G,UACX,CAEA,IAAIC,EAAcxM,EAClBoM,GAAoBK,SAASD,EAAaA,EAC5C,KAAO,EACOxM,EAAMZ,kBA0JxB,SAEEY,EAEAn3F,GAEA,IAAIzT,EAAU,CACZs3G,cAAc,EACdC,aAAc3M,EACdn3F,OAAQA,GAGN+jG,EAAiB5M,EAAMvsG,KAAKm5G,eAC5B1S,EAAM0S,KACRx3G,EAAQiK,OAASutG,EAAevtG,OAChCjK,EAAQoT,gBAAkBokG,EAAepkG,iBAE3C,OAAO,IAAIw3F,EAAMzkG,iBAAiBurD,KAAK1xD,EACzC,CA5K4Cy3G,CACpC7M,EACA8M,KAEIC,OAAOV,EAAYrM,EAAMlB,SAAMtqG,EAAW63G,EAClD,CACF,EAEAI,SAAU,SAAmBO,EAAUhN,GACrC,IAAI5qG,EAAU4qG,EAAMzkG,kBAo8BxB,SACE2mG,EACA6B,EACAhoG,EACAkxG,EACAC,GAEI,EAUJ,IAAIC,EAAiBF,EAAYx5G,KAAK4S,YAClC+mG,EAAiBlL,EAAGgH,aACpBmE,KACDF,IAAmBA,EAAe9E,SAClC+E,IAAmBrT,IAAgBqT,EAAe/E,SAClD8E,GAAkBjL,EAAGgH,aAAaZ,OAAS6E,EAAe7E,OACzD6E,GAAkBjL,EAAGgH,aAAaZ,MAMlCgF,KACFJ,GACAhL,EAAGpgG,SAASyrG,iBACZF,GAGFnL,EAAGpgG,SAAS6qG,aAAeM,EAC3B/K,EAAGv5F,OAASskG,EAER/K,EAAGsL,SACLtL,EAAGsL,OAAO3kG,OAASokG,GAWrB,GATA/K,EAAGpgG,SAASyrG,gBAAkBL,EAK9BhL,EAAGvmG,OAASsxG,EAAYx5G,KAAK2S,OAAS2zF,EACtCmI,EAAGx7F,WAAa3K,GAAag+F,EAGzBgK,GAAa7B,EAAGpgG,SAASpR,MAAO,CAClCgwG,IAAgB,GAGhB,IAFA,IAAIhwG,EAAQwxG,EAAGkC,OACXqJ,EAAWvL,EAAGpgG,SAAS4rG,WAAa,GAC/B/8G,EAAI,EAAGA,EAAI88G,EAAS78G,OAAQD,IAAK,CACxC,IAAIK,EAAMy8G,EAAS98G,GACfmzG,EAAc5B,EAAGpgG,SAASpR,MAC9BA,EAAMM,GAAO6yG,GAAa7yG,EAAK8yG,EAAaC,EAAW7B,EACzD,CACAxB,IAAgB,GAEhBwB,EAAGpgG,SAASiiG,UAAYA,CAC1B,CAGAhoG,EAAYA,GAAag+F,EACzB,IAAI4T,EAAezL,EAAGpgG,SAAS8rG,iBAC/B1L,EAAGpgG,SAAS8rG,iBAAmB7xG,EAC/B8xG,GAAyB3L,EAAInmG,EAAW4xG,GAGpCL,IACFpL,EAAG/lG,OAASwrG,GAAauF,EAAgBD,EAAY15F,SACrD2uF,EAAG4L,gBAGD,CAGN,CAjhCIC,CADY/N,EAAMZ,kBAAoB4N,EAAS5N,kBAG7ChqG,EAAQ2uG,UACR3uG,EAAQ2G,UACRikG,EACA5qG,EAAQwF,SAEZ,EAEAgF,OAAQ,SAAiBogG,GACvB,IAssC8BkC,EAtsC1B3uF,EAAUysF,EAAMzsF,QAChB6rF,EAAoBY,EAAMZ,kBACzBA,EAAkB4O,aACrB5O,EAAkB4O,YAAa,EAC/BC,GAAS7O,EAAmB,YAE1BY,EAAMvsG,KAAK84G,YACTh5F,EAAQy6F,aA+rCgB9L,EAzrCF9C,GA4rC3B8O,WAAY,EACfC,GAAkBjgH,KAAKg0G,IA3rCjBkM,GAAuBhP,GAAmB,GAGhD,EAEAlzF,QAAS,SAAkB8zF,GACzB,IAAIZ,EAAoBY,EAAMZ,kBACzBA,EAAkBkN,eAChBtM,EAAMvsG,KAAK84G,UAGd8B,GAAyBjP,GAAmB,GAF5CA,EAAkBr9F,WAKxB,GAGEusG,GAAelhH,OAAOwL,KAAKwzG,IAE/B,SAASmC,GACPznD,EACArzD,EACA8f,EACA3Y,EACAY,GAEA,IAAIy+F,EAAQnzC,GAAZ,CAIA,IAAI0nD,EAAWj7F,EAAQzR,SAASshG,MAShC,GANIppF,EAAS8sC,KACXA,EAAO0nD,EAASh7F,OAAOszC,IAKL,mBAATA,EAAX,CAQA,IAAIi4C,EACJ,GAAI9E,EAAQnzC,EAAK2nD,OAEf3nD,EAiaJ,SACE4nD,EACAF,GAEA,GAAIrU,EAAOuU,EAAQ9/G,QAAUsrG,EAAMwU,EAAQC,WACzC,OAAOD,EAAQC,UAGjB,GAAIzU,EAAMwU,EAAQE,UAChB,OAAOF,EAAQE,SAGjB,IAAIC,EAAQC,GACRD,GAAS3U,EAAMwU,EAAQK,UAA8C,IAAnCL,EAAQK,OAAO13G,QAAQw3G,IAE3DH,EAAQK,OAAO7gH,KAAK2gH,GAGtB,GAAI1U,EAAOuU,EAAQM,UAAY9U,EAAMwU,EAAQO,aAC3C,OAAOP,EAAQO,YAGjB,GAAIJ,IAAU3U,EAAMwU,EAAQK,QAAS,CACnC,IAAIA,EAASL,EAAQK,OAAS,CAACF,GAC3BK,GAAO,EACPC,EAAe,KACfC,EAAe,KAElB,EAAQC,IAAI,kBAAkB,WAAc,OAAO7wG,EAAOuwG,EAAQF,EAAQ,IAE3E,IAAIS,EAAc,SAAUC,GAC1B,IAAK,IAAI5+G,EAAI,EAAG4H,EAAIw2G,EAAOn+G,OAAQD,EAAI4H,EAAG5H,IACvCo+G,EAAOp+G,GAAIm9G,eAGVyB,IACFR,EAAOn+G,OAAS,EACK,OAAjBu+G,IACFvlG,aAAaulG,GACbA,EAAe,MAEI,OAAjBC,IACFxlG,aAAawlG,GACbA,EAAe,MAGrB,EAEI9/F,EAAUwmE,GAAK,SAAUh5C,GAE3B4xE,EAAQE,SAAWY,GAAW1yE,EAAK0xE,GAG9BU,EAGHH,EAAOn+G,OAAS,EAFhB0+G,GAAY,EAIhB,IAEI//F,EAASumE,GAAK,SAAUrhE,GAKtBylF,EAAMwU,EAAQC,aAChBD,EAAQ9/G,OAAQ,EAChB0gH,GAAY,GAEhB,IAEIxyE,EAAM4xE,EAAQp/F,EAASC,GA+C3B,OA7CIyK,EAAS8iB,KACPu2B,EAAUv2B,GAERm9D,EAAQyU,EAAQE,WAClB9xE,EAAI1oB,KAAK9E,EAASC,GAEX8jD,EAAUv2B,EAAI8vD,aACvB9vD,EAAI8vD,UAAUx4E,KAAK9E,EAASC,GAExB2qF,EAAMp9D,EAAIluC,SACZ8/G,EAAQC,UAAYa,GAAW1yE,EAAIluC,MAAO4/G,IAGxCtU,EAAMp9D,EAAIkyE,WACZN,EAAQO,YAAcO,GAAW1yE,EAAIkyE,QAASR,GAC5B,IAAd1xE,EAAIl1B,MACN8mG,EAAQM,SAAU,EAElBG,EAAezlG,YAAW,WACxBylG,EAAe,KACXlV,EAAQyU,EAAQE,WAAa3U,EAAQyU,EAAQ9/G,SAC/C8/G,EAAQM,SAAU,EAClBM,GAAY,GAEhB,GAAGxyE,EAAIl1B,OAAS,MAIhBsyF,EAAMp9D,EAAI3rB,WACZi+F,EAAe1lG,YAAW,WACxB0lG,EAAe,KACXnV,EAAQyU,EAAQE,WAClBr/F,EAGM,KAGV,GAAGutB,EAAI3rB,YAKb+9F,GAAO,EAEAR,EAAQM,QACXN,EAAQO,YACRP,EAAQE,QACd,CACF,CA3hBWa,CADP1Q,EAAej4C,EAC4B0nD,QAC9Bh6G,IAATsyD,GAIF,OA+YN,SACE4nD,EACAj7G,EACA8f,EACA3Y,EACAY,GAEA,IAAIuqC,EAAO85D,KAGX,OAFA95D,EAAKg5D,aAAe2P,EACpB3oE,EAAK25D,UAAY,CAAEjsG,KAAMA,EAAM8f,QAASA,EAAS3Y,SAAUA,EAAUY,IAAKA,GACnEuqC,CACT,CA1Za2pE,CACL3Q,EACAtrG,EACA8f,EACA3Y,EACAY,GAKN/H,EAAOA,GAAQ,CAAC,EAIhBk8G,GAA0B7oD,GAGtBozC,EAAMzmG,EAAKm8G,QA0FjB,SAAyBx6G,EAAS3B,GAChC,IAAI+kB,EAAQpjB,EAAQw6G,OAASx6G,EAAQw6G,MAAMp3F,MAAS,QAChDzmB,EAASqD,EAAQw6G,OAASx6G,EAAQw6G,MAAM79G,OAAU,SACpD0B,EAAK2S,QAAU3S,EAAK2S,MAAQ,CAAC,IAAIoS,GAAQ/kB,EAAKm8G,MAAMriH,MACtD,IAAIqZ,EAAKnT,EAAKmT,KAAOnT,EAAKmT,GAAK,CAAC,GAC5B+uC,EAAW/uC,EAAG7U,GACd0rB,EAAWhqB,EAAKm8G,MAAMnyF,SACtBy8E,EAAMvkD,IAENj9C,MAAMmF,QAAQ83C,IACsB,IAAhCA,EAASt+C,QAAQomB,GACjBk4B,IAAal4B,KAEjB7W,EAAG7U,GAAS,CAAC0rB,GAAUnrB,OAAOqjD,IAGhC/uC,EAAG7U,GAAS0rB,CAEhB,CA3GIoyF,CAAe/oD,EAAK1xD,QAAS3B,GAI/B,IAAIswG,EA/8BN,SACEtwG,EACAqzD,EACAtrD,GAKA,IAAIsoG,EAAch9C,EAAK1xD,QAAQ1E,MAC/B,IAAIupG,EAAQ6J,GAAZ,CAGA,IAAIhnE,EAAM,CAAC,EACP12B,EAAQ3S,EAAK2S,MACb1V,EAAQ+C,EAAK/C,MACjB,GAAIwpG,EAAM9zF,IAAU8zF,EAAMxpG,GACxB,IAAK,IAAIM,KAAO8yG,EAAa,CAC3B,IAAIz7F,EAAS0yF,EAAU/pG,GAiBvBg2G,GAAUlqE,EAAKpsC,EAAOM,EAAKqX,GAAQ,IACnC2+F,GAAUlqE,EAAK12B,EAAOpV,EAAKqX,GAAQ,EACrC,CAEF,OAAOy0B,CA3BP,CA4BF,CAw6BkBgzE,CAA0Br8G,EAAMqzD,GAGhD,GAAIqzC,EAAOrzC,EAAK1xD,QAAQgK,YACtB,OAxMJ,SACE0nD,EACAi9C,EACAtwG,EACAi4G,EACA9wG,GAEA,IAAIxF,EAAU0xD,EAAK1xD,QACf1E,EAAQ,CAAC,EACTozG,EAAc1uG,EAAQ1E,MAC1B,GAAIwpG,EAAM4J,GACR,IAAK,IAAI9yG,KAAO8yG,EACdpzG,EAAMM,GAAO6yG,GAAa7yG,EAAK8yG,EAAaC,GAAahK,QAGvDG,EAAMzmG,EAAK2S,QAAU+lG,GAAWz7G,EAAO+C,EAAK2S,OAC5C8zF,EAAMzmG,EAAK/C,QAAUy7G,GAAWz7G,EAAO+C,EAAK/C,OAGlD,IAAIu7G,EAAgB,IAAIR,GACtBh4G,EACA/C,EACAkK,EACA8wG,EACA5kD,GAGEk5C,EAAQ5qG,EAAQiK,OAAOpB,KAAK,KAAMguG,EAAcjmG,GAAIimG,GAExD,GAAIjM,aAAiBnB,GACnB,OAAOmN,GAA6BhM,EAAOvsG,EAAMw4G,EAAcpjG,OAAQzT,GAClE,GAAIsD,MAAMmF,QAAQmiG,GAAQ,CAG/B,IAFA,IAAI1gG,EAAS4nG,GAAkBlH,IAAU,GACrCljE,EAAM,IAAIpkC,MAAM4G,EAAO1O,QAClBD,EAAI,EAAGA,EAAI2O,EAAO1O,OAAQD,IACjCmsC,EAAInsC,GAAKq7G,GAA6B1sG,EAAO3O,GAAI8C,EAAMw4G,EAAcpjG,OAAQzT,GAE/E,OAAO0nC,CACT,CACF,CAiKWizE,CAA0BjpD,EAAMi9C,EAAWtwG,EAAM8f,EAAS3Y,GAKnE,IAAImB,EAAYtI,EAAKmT,GAKrB,GAFAnT,EAAKmT,GAAKnT,EAAKu8G,SAEX7V,EAAOrzC,EAAK1xD,QAAQ66G,UAAW,CAKjC,IAAIpI,EAAOp0G,EAAKo0G,KAChBp0G,EAAO,CAAC,EACJo0G,IACFp0G,EAAKo0G,KAAOA,EAEhB,EAqCF,SAAgCp0G,GAE9B,IADA,IAAI6uG,EAAQ7uG,EAAKg4F,OAASh4F,EAAKg4F,KAAO,CAAC,GAC9B96F,EAAI,EAAGA,EAAI29G,GAAa19G,OAAQD,IAAK,CAC5C,IAAIK,EAAMs9G,GAAa39G,GACnBglD,EAAW2sD,EAAMtxG,GACjBk/G,EAAU9D,GAAoBp7G,GAC9B2kD,IAAau6D,GAAav6D,GAAYA,EAASw6D,UACjD7N,EAAMtxG,GAAO2kD,EAAWy6D,GAAYF,EAASv6D,GAAYu6D,EAE7D,CACF,CA5CEG,CAAsB58G,GAGtB,IAAI7B,EAAOk1D,EAAK1xD,QAAQxD,MAAQ4J,EAQhC,OAPY,IAAIqjG,GACb,iBAAoB/3C,EAAQ,KAAKl1D,EAAQ,IAAMA,EAAQ,IACxD6B,OAAMe,OAAWA,OAAWA,EAAW+e,EACvC,CAAEuzC,KAAMA,EAAMi9C,UAAWA,EAAWhoG,UAAWA,EAAWP,IAAKA,EAAKZ,SAAUA,GAC9EmkG,EApEF,CAhBA,CAwFF,CAkCA,SAASqR,GAAaE,EAAIC,GACxB,IAAIhwF,EAAS,SAAUtsB,EAAGC,GAExBo8G,EAAGr8G,EAAGC,GACNq8G,EAAGt8G,EAAGC,EACR,EAEA,OADAqsB,EAAO4vF,SAAU,EACV5vF,CACT,CA+BA,SAAS1b,GACP0O,EACA/X,EACA/H,EACAmH,EACA41G,EACAC,GAUA,OARI/3G,MAAMmF,QAAQpK,IAASs9E,EAAYt9E,MACrC+8G,EAAoB51G,EACpBA,EAAWnH,EACXA,OAAOe,GAEL2lG,EAAOsW,KACTD,EAlBmB,GAuBvB,SACEj9F,EACA/X,EACA/H,EACAmH,EACA41G,GAEA,GAAItW,EAAMzmG,IAASymG,EAAM,EAAOmG,QAM9B,OAAOR,KAGL3F,EAAMzmG,IAASymG,EAAMzmG,EAAKgI,MAC5BD,EAAM/H,EAAKgI,IAEb,IAAKD,EAEH,OAAOqkG,KAGL,EAYAnnG,MAAMmF,QAAQjD,IACO,mBAAhBA,EAAS,MAEhBnH,EAAOA,GAAQ,CAAC,GACX4S,YAAc,CAAE7W,QAASoL,EAAS,IACvCA,EAAShK,OAAS,GAhEC,IAkEjB4/G,EACF51G,EAAWssG,GAAkBtsG,GApEV,IAqEV41G,IACT51G,EAhjCJ,SAAkCA,GAChC,IAAK,IAAIjK,EAAI,EAAGA,EAAIiK,EAAShK,OAAQD,IACnC,GAAI+H,MAAMmF,QAAQjD,EAASjK,IACzB,OAAO+H,MAAMzG,UAAUK,OAAOyG,MAAM,GAAI6B,GAG5C,OAAOA,CACT,CAyiCe81G,CAAwB91G,IAErC,IAAIolG,EAAOhB,EACX,GAAmB,iBAARxjG,EAAkB,CAC3B,IAAIsrD,EACJk4C,EAAMzrF,EAAQ5K,QAAU4K,EAAQ5K,OAAOq2F,IAAOnoG,EAAO4lG,gBAAgBjhG,GASnEwkG,EAREnpG,EAAOylG,cAAc9gG,GAQf,IAAIqjG,GACVhoG,EAAO6lG,qBAAqBlhG,GAAM/H,EAAMmH,OACxCpG,OAAWA,EAAW+e,GAEb9f,GAASA,EAAKk9G,MAAQzW,EAAMpzC,EAAO08C,GAAajwF,EAAQzR,SAAU,aAActG,IAOnF,IAAIqjG,GACVrjG,EAAK/H,EAAMmH,OACXpG,OAAWA,EAAW+e,GAPhBg7F,GAAgBznD,EAAMrzD,EAAM8f,EAAS3Y,EAAUY,EAU3D,MAEEwkG,EAAQuO,GAAgB/yG,EAAK/H,EAAM8f,EAAS3Y,GAE9C,OAAIlC,MAAMmF,QAAQmiG,GACTA,EACE9F,EAAM8F,IACX9F,EAAM8E,IAAO4R,GAAQ5Q,EAAOhB,GAC5B9E,EAAMzmG,IA4Bd,SAA+BA,GACzBumB,EAASvmB,EAAKoT,QAChBg/F,GAASpyG,EAAKoT,OAEZmT,EAASvmB,EAAK8I,QAChBspG,GAASpyG,EAAK8I,MAElB,CAnCuBs0G,CAAqBp9G,GACjCusG,GAEAH,IAEX,CA5FSiR,CAAev9F,EAAS/X,EAAK/H,EAAMmH,EAAU41G,EACtD,CA6FA,SAASI,GAAS5Q,EAAOhB,EAAIvpD,GAO3B,GANAuqD,EAAMhB,GAAKA,EACO,kBAAdgB,EAAMxkG,MAERwjG,OAAKxqG,EACLihD,GAAQ,GAENykD,EAAM8F,EAAMplG,UACd,IAAK,IAAIjK,EAAI,EAAG4H,EAAIynG,EAAMplG,SAAShK,OAAQD,EAAI4H,EAAG5H,IAAK,CACrD,IAAIs0C,EAAQ+6D,EAAMplG,SAASjK,GACvBupG,EAAMj1D,EAAMzpC,OACdy+F,EAAQh1D,EAAM+5D,KAAQ7E,EAAO1kD,IAAwB,QAAdxQ,EAAMzpC,MAC7Co1G,GAAQ3rE,EAAO+5D,EAAIvpD,EAEvB,CAEJ,CAmDA,IA4PIhlD,GA5PAq+G,GAA2B,KA4E/B,SAASU,GAAYuB,EAAMltG,GAOzB,OALEktG,EAAKxhH,YACJ4uG,IAA0C,WAA7B4S,EAAKjzG,OAAOwL,gBAE1BynG,EAAOA,EAAKvhH,SAEPwqB,EAAS+2F,GACZltG,EAAK2P,OAAOu9F,GACZA,CACN,CA6IA,SAASC,GAAwBp2G,GAC/B,GAAIlC,MAAMmF,QAAQjD,GAChB,IAAK,IAAIjK,EAAI,EAAGA,EAAIiK,EAAShK,OAAQD,IAAK,CACxC,IAAI6H,EAAIoC,EAASjK,GACjB,GAAIupG,EAAM1hG,KAAO0hG,EAAM1hG,EAAE+C,mBAAqBokG,GAAmBnnG,IAC/D,OAAOA,CAEX,CAEJ,CAkBA,SAASiG,GAAK1M,EAAOwU,GACnB9V,GAAO4+G,IAAIt9G,EAAOwU,EACpB,CAEA,SAAS0qG,GAAUl/G,EAAOwU,GACxB9V,GAAOygH,KAAKn/G,EAAOwU,EACrB,CAEA,SAASmgG,GAAmB30G,EAAOwU,GACjC,IAAI4qG,EAAU1gH,GACd,OAAO,SAAS2gH,IACd,IAAIt0E,EAAMv2B,EAAGxN,MAAM,KAAMxE,WACb,OAARuoC,GACFq0E,EAAQD,KAAKn/G,EAAOq/G,EAExB,CACF,CAEA,SAASvD,GACP3L,EACAnmG,EACA4xG,GAEAl9G,GAASyxG,EACTqE,GAAgBxqG,EAAW4xG,GAAgB,CAAC,EAAGlvG,GAAKwyG,GAAUvK,GAAmBxE,GACjFzxG,QAAS+D,CACX,CAiGA,IAAIs4G,GAAiB,KAGrB,SAASuE,GAAkBnP,GACzB,IAAIoP,EAAqBxE,GAEzB,OADAA,GAAiB5K,EACV,WACL4K,GAAiBwE,CACnB,CACF,CA0QA,SAASC,GAAkBrP,GACzB,KAAOA,IAAOA,EAAKA,EAAGz/F,UACpB,GAAIy/F,EAAGgM,UAAa,OAAO,EAE7B,OAAO,CACT,CAEA,SAASE,GAAwBlM,EAAIsP,GACnC,GAAIA,GAEF,GADAtP,EAAGuP,iBAAkB,EACjBF,GAAiBrP,GACnB,YAEG,GAAIA,EAAGuP,gBACZ,OAEF,GAAIvP,EAAGgM,WAA8B,OAAjBhM,EAAGgM,UAAoB,CACzChM,EAAGgM,WAAY,EACf,IAAK,IAAIv9G,EAAI,EAAGA,EAAIuxG,EAAGrnG,UAAUjK,OAAQD,IACvCy9G,GAAuBlM,EAAGrnG,UAAUlK,IAEtCs9G,GAAS/L,EAAI,YACf,CACF,CAEA,SAASmM,GAA0BnM,EAAIsP,GACrC,KAAIA,IACFtP,EAAGuP,iBAAkB,EACjBF,GAAiBrP,KAIlBA,EAAGgM,WAAW,CACjBhM,EAAGgM,WAAY,EACf,IAAK,IAAIv9G,EAAI,EAAGA,EAAIuxG,EAAGrnG,UAAUjK,OAAQD,IACvC09G,GAAyBnM,EAAGrnG,UAAUlK,IAExCs9G,GAAS/L,EAAI,cACf,CACF,CAEA,SAAS+L,GAAU/L,EAAIzW,GAErBkT,KACA,IAAIvsG,EAAW8vG,EAAGpgG,SAAS2pF,GACvBmZ,EAAOnZ,EAAO,QAClB,GAAIr5F,EACF,IAAK,IAAIzB,EAAI,EAAGyc,EAAIhb,EAASxB,OAAQD,EAAIyc,EAAGzc,IAC1Co0G,GAAwB3yG,EAASzB,GAAIuxG,EAAI,KAAMA,EAAI0C,GAGnD1C,EAAGwP,eACLxP,EAAGllG,MAAM,QAAUyuF,GAErBmT,IACF,CAIA,IAEI3pB,GAAQ,GACRk5B,GAAoB,GACpBznF,GAAM,CAAC,EAEPirF,IAAU,EACVC,IAAW,EACXh9F,GAAQ,EAmBZ,IAAIi9F,GAAwB,EAGxBC,GAASroG,KAAKyS,IAQlB,GAAIkhF,IAAcnhB,EAAM,CACtB,IAAIggB,GAActpG,OAAOspG,YAEvBA,IAC2B,mBAApBA,GAAY//E,KACnB41F,KAAWzjH,SAASynD,YAAY,SAAShN,YAMzCgpE,GAAS,WAAc,OAAO7V,GAAY//E,KAAO,EAErD,CAKA,SAAS61F,KAGP,IAAIC,EAASpvG,EAcb,IAhBAivG,GAAwBC,KACxBF,IAAW,EAWX38B,GAAM7uC,MAAK,SAAUnyC,EAAGC,GAAK,OAAOD,EAAE2O,GAAK1O,EAAE0O,EAAI,IAI5CgS,GAAQ,EAAGA,GAAQqgE,GAAMrkF,OAAQgkB,MACpCo9F,EAAU/8B,GAAMrgE,KACJhT,QACVowG,EAAQpwG,SAEVgB,EAAKovG,EAAQpvG,GACb8jB,GAAI9jB,GAAM,KACVovG,EAAQ18B,MAmBV,IAAI28B,EAAiB9D,GAAkBjwG,QACnCg0G,EAAej9B,GAAM/2E,QAtFzB0W,GAAQqgE,GAAMrkF,OAASu9G,GAAkBv9G,OAAS,EAClD81B,GAAM,CAAC,EAIPirF,GAAUC,IAAW,EAsHvB,SAA6B38B,GAC3B,IAAK,IAAItkF,EAAI,EAAGA,EAAIskF,EAAMrkF,OAAQD,IAChCskF,EAAMtkF,GAAGu9G,WAAY,EACrBE,GAAuBn5B,EAAMtkF,IAAI,EAErC,CArCEwhH,CAAmBF,GAUrB,SAA2Bh9B,GACzB,IAAItkF,EAAIskF,EAAMrkF,OACd,KAAOD,KAAK,CACV,IAAIqhH,EAAU/8B,EAAMtkF,GAChBuxG,EAAK8P,EAAQ9P,GACbA,EAAGkQ,WAAaJ,GAAW9P,EAAG8L,aAAe9L,EAAGoK,cAClD2B,GAAS/L,EAAI,UAEjB,CACF,CAlBEmQ,CAAiBH,GAIblW,IAAYnlG,EAAOmlG,UACrBA,GAAShqG,KAAK,QAElB,CAoEA,IAAIsgH,GAAQ,EAORC,GAAU,SACZrQ,EACAsQ,EACA9gC,EACAt8E,EACAq9G,GAEAlhH,KAAK2wG,GAAKA,EACNuQ,IACFvQ,EAAGkQ,SAAW7gH,MAEhB2wG,EAAGwQ,UAAUxkH,KAAKqD,MAEd6D,GACF7D,KAAK8lG,OAASjiG,EAAQiiG,KACtB9lG,KAAKohH,OAASv9G,EAAQu9G,KACtBphH,KAAKqhH,OAASx9G,EAAQw9G,KACtBrhH,KAAK29G,OAAS95G,EAAQ85G,KACtB39G,KAAKqQ,OAASxM,EAAQwM,QAEtBrQ,KAAK8lG,KAAO9lG,KAAKohH,KAAOphH,KAAKqhH,KAAOrhH,KAAK29G,MAAO,EAElD39G,KAAKmgF,GAAKA,EACVngF,KAAKqR,KAAO0vG,GACZ/gH,KAAKshH,QAAS,EACdthH,KAAKuhH,MAAQvhH,KAAKqhH,KAClBrhH,KAAKwhH,KAAO,GACZxhH,KAAKyhH,QAAU,GACfzhH,KAAK0hH,OAAS,IAAI/U,GAClB3sG,KAAK2hH,UAAY,IAAIhV,GACrB3sG,KAAK8V,WAED,GAEmB,mBAAZmrG,EACTjhH,KAAK0oD,OAASu4D,GAEdjhH,KAAK0oD,OAx4HT,SAAoBx+B,GAClB,IAAIwhF,EAAO7+F,KAAKqd,GAAhB,CAGA,IAAI03F,EAAW13F,EAAK4B,MAAM,KAC1B,OAAO,SAAUjuB,GACf,IAAK,IAAIuB,EAAI,EAAGA,EAAIwiH,EAASviH,OAAQD,IAAK,CACxC,IAAKvB,EAAO,OACZA,EAAMA,EAAI+jH,EAASxiH,GACrB,CACA,OAAOvB,CACT,CARA,CASF,CA43HkBgkH,CAAUZ,GACnBjhH,KAAK0oD,SACR1oD,KAAK0oD,OAASy7B,IASlBnkF,KAAKhE,MAAQgE,KAAKqhH,UACdp+G,EACAjD,KAAK9D,KACX,EAKA8kH,GAAQtgH,UAAUxE,IAAM,WAEtB,IAAIF,EADJoxG,GAAWptG,MAEX,IAAI2wG,EAAK3wG,KAAK2wG,GACd,IACE30G,EAAQgE,KAAK0oD,OAAOh8C,KAAKikG,EAAIA,EAe/B,CAdE,MAAOzzG,GACP,IAAI8C,KAAKohH,KAGP,MAAMlkH,EAFNk2G,GAAYl2G,EAAGyzG,EAAK,uBAA2B3wG,KAAe,WAAI,IAItE,CAAE,QAGIA,KAAK8lG,MACPwO,GAASt4G,GAEXqxG,KACArtG,KAAK8hH,aACP,CACA,OAAO9lH,CACT,EAKAglH,GAAQtgH,UAAUwsG,OAAS,SAAiB8B,GAC1C,IAAI39F,EAAK29F,EAAI39F,GACRrR,KAAK2hH,UAAUxsF,IAAI9jB,KACtBrR,KAAK2hH,UAAUz0G,IAAImE,GACnBrR,KAAKyhH,QAAQ9kH,KAAKqyG,GACbhvG,KAAK0hH,OAAOvsF,IAAI9jB,IACnB29F,EAAIjC,OAAO/sG,MAGjB,EAKAghH,GAAQtgH,UAAUohH,YAAc,WAE9B,IADA,IAAI1iH,EAAIY,KAAKwhH,KAAKniH,OACXD,KAAK,CACV,IAAI4vG,EAAMhvG,KAAKwhH,KAAKpiH,GACfY,KAAK2hH,UAAUxsF,IAAI65E,EAAI39F,KAC1B29F,EAAIhC,UAAUhtG,KAElB,CACA,IAAI4vB,EAAM5vB,KAAK0hH,OACf1hH,KAAK0hH,OAAS1hH,KAAK2hH,UACnB3hH,KAAK2hH,UAAY/xF,EACjB5vB,KAAK2hH,UAAUrpG,QACfsX,EAAM5vB,KAAKwhH,KACXxhH,KAAKwhH,KAAOxhH,KAAKyhH,QACjBzhH,KAAKyhH,QAAU7xF,EACf5vB,KAAKyhH,QAAQpiH,OAAS,CACxB,EAMA2hH,GAAQtgH,UAAUsS,OAAS,WAErBhT,KAAKqhH,KACPrhH,KAAKuhH,OAAQ,EACJvhH,KAAK29G,KACd39G,KAAK+jF,MAnKT,SAAuB08B,GACrB,IAAIpvG,EAAKovG,EAAQpvG,GACjB,GAAe,MAAX8jB,GAAI9jB,GAAa,CAEnB,GADA8jB,GAAI9jB,IAAM,EACLgvG,GAEE,CAIL,IADA,IAAIjhH,EAAIskF,GAAMrkF,OAAS,EAChBD,EAAIikB,IAASqgE,GAAMtkF,GAAGiS,GAAKovG,EAAQpvG,IACxCjS,IAEFskF,GAAM3wE,OAAO3T,EAAI,EAAG,EAAGqhH,EACzB,MATE/8B,GAAM/mF,KAAK8jH,GAWRL,KACHA,IAAU,EAMVz/B,GAAS6/B,IAEb,CACF,CA2IIuB,CAAa/hH,KAEjB,EAMAghH,GAAQtgH,UAAUqjF,IAAM,WACtB,GAAI/jF,KAAKshH,OAAQ,CACf,IAAItlH,EAAQgE,KAAK9D,MACjB,GACEF,IAAUgE,KAAKhE,OAIfysB,EAASzsB,IACTgE,KAAK8lG,KACL,CAEA,IAAIvC,EAAWvjG,KAAKhE,MAEpB,GADAgE,KAAKhE,MAAQA,EACTgE,KAAKohH,KAAM,CACb,IAAI/N,EAAO,yBAA6BrzG,KAAe,WAAI,IAC3DwzG,GAAwBxzG,KAAKmgF,GAAIngF,KAAK2wG,GAAI,CAAC30G,EAAOunG,GAAWvjG,KAAK2wG,GAAI0C,EACxE,MACErzG,KAAKmgF,GAAGzzE,KAAK1M,KAAK2wG,GAAI30G,EAAOunG,EAEjC,CACF,CACF,EAMAyd,GAAQtgH,UAAUshH,SAAW,WAC3BhiH,KAAKhE,MAAQgE,KAAK9D,MAClB8D,KAAKuhH,OAAQ,CACf,EAKAP,GAAQtgH,UAAUusG,OAAS,WAEzB,IADA,IAAI7tG,EAAIY,KAAKwhH,KAAKniH,OACXD,KACLY,KAAKwhH,KAAKpiH,GAAG6tG,QAEjB,EAKA+T,GAAQtgH,UAAUuhH,SAAW,WAC3B,GAAIjiH,KAAKshH,OAAQ,CAIVthH,KAAK2wG,GAAGuR,mBACXj1G,EAAOjN,KAAK2wG,GAAGwQ,UAAWnhH,MAG5B,IADA,IAAIZ,EAAIY,KAAKwhH,KAAKniH,OACXD,KACLY,KAAKwhH,KAAKpiH,GAAG4tG,UAAUhtG,MAEzBA,KAAKshH,QAAS,CAChB,CACF,EAIA,IAAIa,GAA2B,CAC7BlmH,YAAY,EACZsD,cAAc,EACdrD,IAAKioF,EACLrjF,IAAKqjF,GAGP,SAASjvE,GAAOhW,EAAQkjH,EAAW3iH,GACjC0iH,GAAyBjmH,IAAM,WAC7B,OAAO8D,KAAKoiH,GAAW3iH,EACzB,EACA0iH,GAAyBrhH,IAAM,SAAsBggB,GACnD9gB,KAAKoiH,GAAW3iH,GAAOqhB,CACzB,EACAjlB,OAAOC,eAAeoD,EAAQO,EAAK0iH,GACrC,CAEA,SAASE,GAAW1R,GAClBA,EAAGwQ,UAAY,GACf,IAAI9zF,EAAOsjF,EAAGpgG,SACV8c,EAAKluB,OAaX,SAAoBwxG,EAAI2R,GACtB,IAAI9P,EAAY7B,EAAGpgG,SAASiiG,WAAa,CAAC,EACtCrzG,EAAQwxG,EAAGkC,OAAS,CAAC,EAGrBxrG,EAAOspG,EAAGpgG,SAAS4rG,UAAY,GACrBxL,EAAGz/F,SAGfi+F,IAAgB,GAElB,IAAIqJ,EAAO,SAAW/4G,GACpB4H,EAAK1K,KAAK8C,GACV,IAAIzD,EAAQs2G,GAAa7yG,EAAK6iH,EAAc9P,EAAW7B,GAuBrDf,GAAkBzwG,EAAOM,EAAKzD,GAK1ByD,KAAOkxG,GACXz7F,GAAMy7F,EAAI,SAAUlxG,EAExB,EAEA,IAAK,IAAIA,KAAO6iH,EAAc9J,EAAM/4G,GACpC0vG,IAAgB,EAClB,CA7DoBoT,CAAU5R,EAAItjF,EAAKluB,OACjCkuB,EAAK9hB,SAsNX,SAAsBolG,EAAIplG,GACZolG,EAAGpgG,SAASpR,MACxB,IAAK,IAAIM,KAAO8L,EAsBdolG,EAAGlxG,GAA+B,mBAAjB8L,EAAQ9L,GAAsB0kF,EAAO71E,EAAK/C,EAAQ9L,GAAMkxG,EAE7E,CAhPsB6R,CAAY7R,EAAItjF,EAAK9hB,SACrC8hB,EAAKnrB,KA6DX,SAAmByuG,GACjB,IAAIzuG,EAAOyuG,EAAGpgG,SAASrO,KAIlB6kB,EAHL7kB,EAAOyuG,EAAG8R,MAAwB,mBAATvgH,EAwC3B,SAAkBA,EAAMyuG,GAEtBvD,KACA,IACE,OAAOlrG,EAAKwK,KAAKikG,EAAIA,EAMvB,CALE,MAAOzzG,GAEP,OADAk2G,GAAYl2G,EAAGyzG,EAAI,UACZ,CAAC,CACV,CAAE,QACAtD,IACF,CACF,CAlDMqV,CAAQxgH,EAAMyuG,GACdzuG,GAAQ,CAAC,KAEXA,EAAO,CAAC,GAQV,IAAImF,EAAOxL,OAAOwL,KAAKnF,GACnB/C,EAAQwxG,EAAGpgG,SAASpR,MAEpBC,GADUuxG,EAAGpgG,SAAShF,QAClBlE,EAAKhI,QACb,KAAOD,KAAK,CACV,IAAIK,EAAM4H,EAAKjI,GACX,EAQAD,GAASmvC,EAAOnvC,EAAOM,IAMf+rG,EAAW/rG,IACrByV,GAAMy7F,EAAI,QAASlxG,EAEvB,CAEAgwG,GAAQvtG,GAAM,EAChB,CApGIygH,CAAShS,GAETlB,GAAQkB,EAAG8R,MAAQ,CAAC,GAAG,GAErBp1F,EAAKzmB,UAiHX,SAAuB+pG,EAAI/pG,GAEzB,IAAIg8G,EAAWjS,EAAGkS,kBAAoBhnH,OAAOuC,OAAO,MAEhD0kH,EAAQvW,KAEZ,IAAK,IAAI9sG,KAAOmH,EAAU,CACxB,IAAIm8G,EAAUn8G,EAASnH,GACnBipD,EAA4B,mBAAZq6D,EAAyBA,EAAUA,EAAQ7mH,IAC3D,EAOC4mH,IAEHF,EAASnjH,GAAO,IAAIuhH,GAClBrQ,EACAjoD,GAAUy7B,EACVA,EACA6+B,KAOEvjH,KAAOkxG,GACXsS,GAAetS,EAAIlxG,EAAKsjH,EAU5B,CACF,CA1JuBG,CAAavS,EAAItjF,EAAKzmB,UACvCymB,EAAKliB,OAASkiB,EAAKliB,QAAUmhG,IA2OnC,SAAoBqE,EAAIxlG,GACtB,IAAK,IAAI1L,KAAO0L,EAAO,CACrB,IAAI7K,EAAU6K,EAAM1L,GACpB,GAAI0H,MAAMmF,QAAQhM,GAChB,IAAK,IAAIlB,EAAI,EAAGA,EAAIkB,EAAQjB,OAAQD,IAClC+jH,GAAcxS,EAAIlxG,EAAKa,EAAQlB,SAGjC+jH,GAAcxS,EAAIlxG,EAAKa,EAE3B,CACF,CArPI8iH,CAAUzS,EAAItjF,EAAKliB,MAEvB,CA2GA,IAAI63G,GAAyB,CAAE3B,MAAM,GA6CrC,SAAS4B,GACP/jH,EACAO,EACAsjH,GAEA,IAAIM,GAAe9W,KACI,mBAAZwW,GACTZ,GAAyBjmH,IAAMmnH,EAC3BC,GAAqB7jH,GACrB8jH,GAAoBR,GACxBZ,GAAyBrhH,IAAMqjF,IAE/Bg+B,GAAyBjmH,IAAM6mH,EAAQ7mH,IACnCmnH,IAAiC,IAAlBN,EAAQn1F,MACrB01F,GAAqB7jH,GACrB8jH,GAAoBR,EAAQ7mH,KAC9BioF,EACJg+B,GAAyBrhH,IAAMiiH,EAAQjiH,KAAOqjF,GAWhDtoF,OAAOC,eAAeoD,EAAQO,EAAK0iH,GACrC,CAEA,SAASmB,GAAsB7jH,GAC7B,OAAO,WACL,IAAIghH,EAAUzgH,KAAK6iH,mBAAqB7iH,KAAK6iH,kBAAkBpjH,GAC/D,GAAIghH,EAOF,OANIA,EAAQc,OACVd,EAAQuB,WAENnV,GAAI3tG,QACNuhH,EAAQxT,SAEHwT,EAAQzkH,KAEnB,CACF,CAEA,SAASunH,GAAoBvuG,GAC3B,OAAO,WACL,OAAOA,EAAGtI,KAAK1M,KAAMA,KACvB,CACF,CA2CA,SAASmjH,GACPxS,EACAsQ,EACA3gH,EACAuD,GASA,OAPIkjB,EAAczmB,KAChBuD,EAAUvD,EACVA,EAAUA,EAAQA,SAEG,iBAAZA,IACTA,EAAUqwG,EAAGrwG,IAERqwG,EAAGz8F,OAAO+sG,EAAS3gH,EAASuD,EACrC,CAsDA,IAAI2/G,GAAQ,EAgFZ,SAASpF,GAA2B7oD,GAClC,IAAI1xD,EAAU0xD,EAAK1xD,QACnB,GAAI0xD,EAAKokB,MAAO,CACd,IAAI8pC,EAAerF,GAA0B7oD,EAAKokB,OAElD,GAAI8pC,IADqBluD,EAAKkuD,aACW,CAGvCluD,EAAKkuD,aAAeA,EAEpB,IAAIC,EAcV,SAAiCnuD,GAC/B,IAAIouD,EACAC,EAASruD,EAAK1xD,QACdggH,EAAStuD,EAAKuuD,cAClB,IAAK,IAAIrkH,KAAOmkH,EACVA,EAAOnkH,KAASokH,EAAOpkH,KACpBkkH,IAAYA,EAAW,CAAC,GAC7BA,EAASlkH,GAAOmkH,EAAOnkH,IAG3B,OAAOkkH,CACT,CAzB4BI,CAAuBxuD,GAEzCmuD,GACFzhG,EAAOszC,EAAKyuD,cAAeN,IAE7B7/G,EAAU0xD,EAAK1xD,QAAUytG,GAAamS,EAAcluD,EAAKyuD,gBAC7C3jH,OACVwD,EAAQmE,WAAWnE,EAAQxD,MAAQk1D,EAEvC,CACF,CACA,OAAO1xD,CACT,CAeA,SAASu3F,GAAKv3F,GAMZ7D,KAAKo9F,MAAMv5F,EACb,CAyCA,SAASogH,GAAY7oB,GAMnBA,EAAI8hB,IAAM,EACV,IAAIA,EAAM,EAKV9hB,EAAIn5E,OAAS,SAAU+hG,GACrBA,EAAgBA,GAAiB,CAAC,EAClC,IAAIE,EAAQlkH,KACRmkH,EAAUD,EAAMhH,IAChBkH,EAAcJ,EAAcK,QAAUL,EAAcK,MAAQ,CAAC,GACjE,GAAID,EAAYD,GACd,OAAOC,EAAYD,GAGrB,IAAI9jH,EAAO2jH,EAAc3jH,MAAQ6jH,EAAMrgH,QAAQxD,KAK/C,IAAIikH,EAAM,SAAuBzgH,GAC/B7D,KAAKo9F,MAAMv5F,EACb,EA4CA,OA3CAygH,EAAI5jH,UAAY7E,OAAOuC,OAAO8lH,EAAMxjH,YACtBkM,YAAc03G,EAC5BA,EAAIpH,IAAMA,IACVoH,EAAIzgH,QAAUytG,GACZ4S,EAAMrgH,QACNmgH,GAEFM,EAAW,MAAIJ,EAKXI,EAAIzgH,QAAQ1E,OAmCpB,SAAsBolH,GACpB,IAAIplH,EAAQolH,EAAK1gH,QAAQ1E,MACzB,IAAK,IAAIM,KAAON,EACd+V,GAAMqvG,EAAK7jH,UAAW,SAAUjB,EAEpC,CAvCM+kH,CAAYF,GAEVA,EAAIzgH,QAAQ+C,UAuCpB,SAAyB29G,GACvB,IAAI39G,EAAW29G,EAAK1gH,QAAQ+C,SAC5B,IAAK,IAAInH,KAAOmH,EACdq8G,GAAesB,EAAK7jH,UAAWjB,EAAKmH,EAASnH,GAEjD,CA3CMglH,CAAeH,GAIjBA,EAAIriG,OAASiiG,EAAMjiG,OACnBqiG,EAAII,MAAQR,EAAMQ,MAClBJ,EAAIt+F,IAAMk+F,EAAMl+F,IAIhBokF,EAAYjtG,SAAQ,SAAUuI,GAC5B4+G,EAAI5+G,GAAQw+G,EAAMx+G,EACpB,IAEIrF,IACFikH,EAAIzgH,QAAQmE,WAAW3H,GAAQikH,GAMjCA,EAAIb,aAAeS,EAAMrgH,QACzBygH,EAAIN,cAAgBA,EACpBM,EAAIR,cAAgB7hG,EAAO,CAAC,EAAGqiG,EAAIzgH,SAGnCugH,EAAYD,GAAWG,EAChBA,CACT,CACF,CAsDA,SAASK,GAAkBt3F,GACzB,OAAOA,IAASA,EAAKkoC,KAAK1xD,QAAQxD,MAAQgtB,EAAKpjB,IACjD,CAEA,SAAS26G,GAASx2F,EAAS/tB,GACzB,OAAI8G,MAAMmF,QAAQ8hB,GACTA,EAAQtoB,QAAQzF,IAAS,EACJ,iBAAZ+tB,EACTA,EAAQtC,MAAM,KAAKhmB,QAAQzF,IAAS,IAClC0hE,EAAS3zC,IACXA,EAAQvhB,KAAKxM,EAIxB,CAEA,SAASwkH,GAAYC,EAAmB9jH,GACtC,IAAI4sB,EAAQk3F,EAAkBl3F,MAC1BvmB,EAAOy9G,EAAkBz9G,KACzB40G,EAAS6I,EAAkB7I,OAC/B,IAAK,IAAIx8G,KAAOmuB,EAAO,CACrB,IAAIgK,EAAQhK,EAAMnuB,GAClB,GAAIm4B,EAAO,CACT,IAAIv3B,EAAOu3B,EAAMv3B,KACbA,IAASW,EAAOX,IAClB0kH,GAAgBn3F,EAAOnuB,EAAK4H,EAAM40G,EAEtC,CACF,CACF,CAEA,SAAS8I,GACPn3F,EACAnuB,EACA4H,EACA29G,GAEA,IAAIptF,EAAQhK,EAAMnuB,IACdm4B,GAAWotF,GAAWptF,EAAM3tB,MAAQ+6G,EAAQ/6G,KAC9C2tB,EAAMi2E,kBAAkBr9F,WAE1Bod,EAAMnuB,GAAO,KACbwN,EAAO5F,EAAM5H,EACf,EA9UA,SAAoB27F,GAClBA,EAAI16F,UAAU08F,MAAQ,SAAUv5F,GAC9B,IAAI8sG,EAAK3wG,KAET2wG,EAAGsU,KAAOzB,KAWV7S,EAAGhB,QAAS,EAER9rG,GAAWA,EAAQs3G,aA0C3B,SAAgCxK,EAAI9sG,GAClC,IAAIwpB,EAAOsjF,EAAGpgG,SAAW1U,OAAOuC,OAAOuyG,EAAG/jG,YAAY/I,SAElD63G,EAAc73G,EAAQu3G,aAC1B/tF,EAAK/V,OAASzT,EAAQyT,OACtB+V,EAAK+tF,aAAeM,EAEpB,IAAIwJ,EAAwBxJ,EAAY1xG,iBACxCqjB,EAAKmlF,UAAY0S,EAAsB1S,UACvCnlF,EAAKgvF,iBAAmB6I,EAAsB16G,UAC9C6iB,EAAK2uF,gBAAkBkJ,EAAsB77G,SAC7CgkB,EAAK83F,cAAgBD,EAAsBj7G,IAEvCpG,EAAQiK,SACVuf,EAAKvf,OAASjK,EAAQiK,OACtBuf,EAAKpW,gBAAkBpT,EAAQoT,gBAEnC,CAvDMmuG,CAAsBzU,EAAI9sG,GAE1B8sG,EAAGpgG,SAAW+gG,GACZ8M,GAA0BzN,EAAG/jG,aAC7B/I,GAAW,CAAC,EACZ8sG,GAOFA,EAAGqI,aAAerI,EAGpBA,EAAGn8F,MAAQm8F,EAnkCf,SAAwBA,GACtB,IAAI9sG,EAAU8sG,EAAGpgG,SAGb+G,EAASzT,EAAQyT,OACrB,GAAIA,IAAWzT,EAAQ66G,SAAU,CAC/B,KAAOpnG,EAAO/G,SAASmuG,UAAYpnG,EAAOpG,SACxCoG,EAASA,EAAOpG,QAElBoG,EAAOhO,UAAU3M,KAAKg0G,EACxB,CAEAA,EAAGz/F,QAAUoG,EACbq5F,EAAGj5F,MAAQJ,EAASA,EAAOI,MAAQi5F,EAEnCA,EAAGrnG,UAAY,GACfqnG,EAAGhlG,MAAQ,CAAC,EAEZglG,EAAGkQ,SAAW,KACdlQ,EAAGgM,UAAY,KACfhM,EAAGuP,iBAAkB,EACrBvP,EAAG8L,YAAa,EAChB9L,EAAGoK,cAAe,EAClBpK,EAAGuR,mBAAoB,CACzB,CA4iCImD,CAAc1U,GAttClB,SAAqBA,GACnBA,EAAGlQ,QAAU5kG,OAAOuC,OAAO,MAC3BuyG,EAAGwP,eAAgB,EAEnB,IAAI31G,EAAYmmG,EAAGpgG,SAAS8rG,iBACxB7xG,GACF8xG,GAAyB3L,EAAInmG,EAEjC,CA+sCI86G,CAAW3U,GA5+Cf,SAAqBA,GACnBA,EAAGsL,OAAS,KACZtL,EAAGkI,aAAe,KAClB,IAAIh1G,EAAU8sG,EAAGpgG,SACbmrG,EAAc/K,EAAGv5F,OAASvT,EAAQu3G,aAClCV,EAAgBgB,GAAeA,EAAY15F,QAC/C2uF,EAAG/lG,OAASwrG,GAAavyG,EAAQm4G,gBAAiBtB,GAClD/J,EAAGgH,aAAenP,EAKlBmI,EAAGl8F,GAAK,SAAU/R,EAAGC,EAAGsE,EAAGC,GAAK,OAAOoM,GAAcq9F,EAAIjuG,EAAGC,EAAGsE,EAAGC,GAAG,EAAQ,EAG7EypG,EAAGp8F,eAAiB,SAAU7R,EAAGC,EAAGsE,EAAGC,GAAK,OAAOoM,GAAcq9F,EAAIjuG,EAAGC,EAAGsE,EAAGC,GAAG,EAAO,EAIxF,IAAIq+G,EAAa7J,GAAeA,EAAYx5G,KAW1C0tG,GAAkBe,EAAI,SAAU4U,GAAcA,EAAW1wG,OAAS2zF,EAAa,MAAM,GACrFoH,GAAkBe,EAAI,aAAc9sG,EAAQw4G,kBAAoB7T,EAAa,MAAM,EAEvF,CA48CIgd,CAAW7U,GACX+L,GAAS/L,EAAI,gBAvhFjB,SAAyBA,GACvB,IAAIjjF,EAASsoF,GAAcrF,EAAGpgG,SAAS4gG,OAAQR,GAC3CjjF,IACFyhF,IAAgB,GAChBtzG,OAAOwL,KAAKqmB,GAAQvwB,SAAQ,SAAUsC,GAYlCmwG,GAAkBe,EAAIlxG,EAAKiuB,EAAOjuB,GAEtC,IACA0vG,IAAgB,GAEpB,CAmgFIsW,CAAe9U,GACf0R,GAAU1R,GAliFd,SAAsBA,GACpB,IAAIS,EAAUT,EAAGpgG,SAAS6gG,QACtBA,IACFT,EAAGuF,UAA+B,mBAAZ9E,EAClBA,EAAQ1kG,KAAKikG,GACbS,EAER,CA4hFIsU,CAAY/U,GACZ+L,GAAS/L,EAAI,WASTA,EAAGpgG,SAASsc,IACd8jF,EAAG6K,OAAO7K,EAAGpgG,SAASsc,GAE1B,CACF,CAmEA84F,CAAUvqB,IAlLV,SAAqBA,GAInB,IAAIwqB,EAAU,CACdA,IAAc,WAAc,OAAO5lH,KAAKyiH,KAAM,GAC1CoD,EAAW,CACfA,IAAe,WAAc,OAAO7lH,KAAK6yG,MAAO,GAahDh3G,OAAOC,eAAes/F,EAAI16F,UAAW,QAASklH,GAC9C/pH,OAAOC,eAAes/F,EAAI16F,UAAW,SAAUmlH,GAE/CzqB,EAAI16F,UAAUolH,KAAOhlH,GACrBs6F,EAAI16F,UAAUqlH,QAAU7V,GAExB9U,EAAI16F,UAAUwT,OAAS,SACrB+sG,EACA9gC,EACAt8E,GAEA,IAAI8sG,EAAK3wG,KACT,GAAI+mB,EAAco5D,GAChB,OAAOgjC,GAAcxS,EAAIsQ,EAAS9gC,EAAIt8E,IAExCA,EAAUA,GAAW,CAAC,GACdu9G,MAAO,EACf,IAAIX,EAAU,IAAIO,GAAQrQ,EAAIsQ,EAAS9gC,EAAIt8E,GAC3C,GAAIA,EAAQmiH,UAAW,CACrB,IAAI3S,EAAO,mCAAuCoN,EAAkB,WAAI,IACxErT,KACAoG,GAAwBrzB,EAAIwwB,EAAI,CAAC8P,EAAQzkH,OAAQ20G,EAAI0C,GACrDhG,IACF,CACA,OAAO,WACLoT,EAAQwB,UACV,CACF,CACF,CAmIAgE,CAAW7qB,IAtwCX,SAAsBA,GACpB,IAAI8qB,EAAS,SACb9qB,EAAI16F,UAAUo9G,IAAM,SAAUt9G,EAAOwU,GACnC,IAAI27F,EAAK3wG,KACT,GAAImH,MAAMmF,QAAQ9L,GAChB,IAAK,IAAIpB,EAAI,EAAG4H,EAAIxG,EAAMnB,OAAQD,EAAI4H,EAAG5H,IACvCuxG,EAAGmN,IAAIt9G,EAAMpB,GAAI4V,QAGlB27F,EAAGlQ,QAAQjgG,KAAWmwG,EAAGlQ,QAAQjgG,GAAS,KAAK7D,KAAKqY,GAGjDkxG,EAAOr5G,KAAKrM,KACdmwG,EAAGwP,eAAgB,GAGvB,OAAOxP,CACT,EAEAvV,EAAI16F,UAAUylH,MAAQ,SAAU3lH,EAAOwU,GACrC,IAAI27F,EAAK3wG,KACT,SAASqV,IACPs7F,EAAGgP,KAAKn/G,EAAO6U,GACfL,EAAGxN,MAAMmpG,EAAI3tG,UACf,CAGA,OAFAqS,EAAGL,GAAKA,EACR27F,EAAGmN,IAAIt9G,EAAO6U,GACPs7F,CACT,EAEAvV,EAAI16F,UAAUi/G,KAAO,SAAUn/G,EAAOwU,GACpC,IAAI27F,EAAK3wG,KAET,IAAKgD,UAAU3D,OAEb,OADAsxG,EAAGlQ,QAAU5kG,OAAOuC,OAAO,MACpBuyG,EAGT,GAAIxpG,MAAMmF,QAAQ9L,GAAQ,CACxB,IAAK,IAAI4lH,EAAM,EAAGp/G,EAAIxG,EAAMnB,OAAQ+mH,EAAMp/G,EAAGo/G,IAC3CzV,EAAGgP,KAAKn/G,EAAM4lH,GAAMpxG,GAEtB,OAAO27F,CACT,CAEA,IASIxwB,EATAkmC,EAAM1V,EAAGlQ,QAAQjgG,GACrB,IAAK6lH,EACH,OAAO1V,EAET,IAAK37F,EAEH,OADA27F,EAAGlQ,QAAQjgG,GAAS,KACbmwG,EAKT,IADA,IAAIvxG,EAAIinH,EAAIhnH,OACLD,KAEL,IADA+gF,EAAKkmC,EAAIjnH,MACE4V,GAAMmrE,EAAGnrE,KAAOA,EAAI,CAC7BqxG,EAAItzG,OAAO3T,EAAG,GACd,KACF,CAEF,OAAOuxG,CACT,EAEAvV,EAAI16F,UAAU+K,MAAQ,SAAUjL,GAC9B,IAAImwG,EAAK3wG,KAaLqmH,EAAM1V,EAAGlQ,QAAQjgG,GACrB,GAAI6lH,EAAK,CACPA,EAAMA,EAAIhnH,OAAS,EAAIutB,EAAQy5F,GAAOA,EAGtC,IAFA,IAAI78F,EAAOoD,EAAQ5pB,UAAW,GAC1BqwG,EAAO,sBAAyB7yG,EAAQ,IACnCpB,EAAI,EAAG4H,EAAIq/G,EAAIhnH,OAAQD,EAAI4H,EAAG5H,IACrCo0G,GAAwB6S,EAAIjnH,GAAIuxG,EAAInnF,EAAMmnF,EAAI0C,EAElD,CACA,OAAO1C,CACT,CACF,CA4qCA2V,CAAYlrB,IAnoCZ,SAAyBA,GACvBA,EAAI16F,UAAU6lH,QAAU,SAAU9X,EAAOqM,GACvC,IAAInK,EAAK3wG,KACLwmH,EAAS7V,EAAGpjG,IACZk5G,EAAY9V,EAAGsL,OACfyK,EAAwB5G,GAAkBnP,GAC9CA,EAAGsL,OAASxN,EAQVkC,EAAGpjG,IALAk5G,EAKM9V,EAAGgW,UAAUF,EAAWhY,GAHxBkC,EAAGgW,UAAUhW,EAAGpjG,IAAKkhG,EAAOqM,GAAW,GAKlD4L,IAEIF,IACFA,EAAOI,QAAU,MAEfjW,EAAGpjG,MACLojG,EAAGpjG,IAAIq5G,QAAUjW,GAGfA,EAAGv5F,QAAUu5F,EAAGz/F,SAAWy/F,EAAGv5F,SAAWu5F,EAAGz/F,QAAQ+qG,SACtDtL,EAAGz/F,QAAQ3D,IAAMojG,EAAGpjG,IAIxB,EAEA6tF,EAAI16F,UAAU67G,aAAe,WAClBv8G,KACF6gH,UADE7gH,KAEJ6gH,SAAS7tG,QAEhB,EAEAooF,EAAI16F,UAAU8P,SAAW,WACvB,IAAImgG,EAAK3wG,KACT,IAAI2wG,EAAGuR,kBAAP,CAGAxF,GAAS/L,EAAI,iBACbA,EAAGuR,mBAAoB,EAEvB,IAAI5qG,EAASq5F,EAAGz/F,SACZoG,GAAWA,EAAO4qG,mBAAsBvR,EAAGpgG,SAASmuG,UACtDzxG,EAAOqK,EAAOhO,UAAWqnG,GAGvBA,EAAGkQ,UACLlQ,EAAGkQ,SAASoB,WAGd,IADA,IAAI7iH,EAAIuxG,EAAGwQ,UAAU9hH,OACdD,KACLuxG,EAAGwQ,UAAU/hH,GAAG6iH,WAIdtR,EAAG8R,MAAM3T,QACX6B,EAAG8R,MAAM3T,OAAOO,UAGlBsB,EAAGoK,cAAe,EAElBpK,EAAGgW,UAAUhW,EAAGsL,OAAQ,MAExBS,GAAS/L,EAAI,aAEbA,EAAGgP,OAEChP,EAAGpjG,MACLojG,EAAGpjG,IAAIq5G,QAAU,MAGfjW,EAAGv5F,SACLu5F,EAAGv5F,OAAOE,OAAS,KAnCrB,CAqCF,CACF,CAmjCAuvG,CAAezrB,IAhiDf,SAAsBA,GAEpBue,GAAqBve,EAAI16F,WAEzB06F,EAAI16F,UAAUqL,UAAY,SAAUiJ,GAClC,OAAO2rE,GAAS3rE,EAAIhV,KACtB,EAEAo7F,EAAI16F,UAAUomH,QAAU,WACtB,IAiBIrY,EAjBAkC,EAAK3wG,KACL4U,EAAM+7F,EAAGpgG,SACTzC,EAAS8G,EAAI9G,OACbstG,EAAexmG,EAAIwmG,aAEnBA,IACFzK,EAAGgH,aAAelB,GAChB2E,EAAal5G,KAAK4S,YAClB67F,EAAG/lG,OACH+lG,EAAGgH,eAMPhH,EAAGv5F,OAASgkG,EAGZ,IAIEmC,GAA2B5M,EAC3BlC,EAAQ3gG,EAAOpB,KAAKikG,EAAGqI,aAAcrI,EAAGp8F,eAkB1C,CAjBE,MAAOrX,GACPk2G,GAAYl2G,EAAGyzG,EAAI,UAYjBlC,EAAQkC,EAAGsL,MAEf,CAAE,QACAsB,GAA2B,IAC7B,CAkBA,OAhBIp2G,MAAMmF,QAAQmiG,IAA2B,IAAjBA,EAAMpvG,SAChCovG,EAAQA,EAAM,IAGVA,aAAiBnB,KAQrBmB,EAAQH,MAGVG,EAAMn3F,OAAS8jG,EACR3M,CACT,CACF,CA29CAsY,CAAY3rB,IAgNZ,IAAI4rB,GAAe,CAACx+G,OAAQiiB,OAAQtjB,OAEhC8/G,GAAY,CACd5mH,KAAM,aACNq+G,UAAU,EAEVv/G,MAAO,CACL+nH,QAASF,GACTG,QAASH,GACT5+E,IAAK,CAAC5/B,OAAQ2Q,SAGhB5N,QAAS,CACP67G,WAAY,WACV,IAAIxyG,EAAM5U,KACN4tB,EAAQhZ,EAAIgZ,MACZvmB,EAAOuN,EAAIvN,KACXggH,EAAezyG,EAAIyyG,aACnBC,EAAa1yG,EAAI0yG,WACrB,GAAID,EAAc,CAChB,IAAIp9G,EAAMo9G,EAAap9G,IACnB4jG,EAAoBwZ,EAAaxZ,kBACjC7jG,EAAmBq9G,EAAar9G,iBACpC4jB,EAAM05F,GAAc,CAClBjnH,KAAMskH,GAAiB36G,GACvBC,IAAKA,EACL4jG,kBAAmBA,GAErBxmG,EAAK1K,KAAK2qH,GAENtnH,KAAKooC,KAAO/gC,EAAKhI,OAASuxC,SAAS5wC,KAAKooC,MAC1C28E,GAAgBn3F,EAAOvmB,EAAK,GAAIA,EAAMrH,KAAKi8G,QAE7Cj8G,KAAKqnH,aAAe,IACtB,CACF,GAGFthB,QAAS,WACP/lG,KAAK4tB,MAAQ/xB,OAAOuC,OAAO,MAC3B4B,KAAKqH,KAAO,EACd,EAEA6T,UAAW,WACT,IAAK,IAAIzb,KAAOO,KAAK4tB,MACnBm3F,GAAgB/kH,KAAK4tB,MAAOnuB,EAAKO,KAAKqH,KAE1C,EAEA8J,QAAS,WACP,IAAIipG,EAASp6G,KAEbA,KAAKonH,aACLpnH,KAAKkU,OAAO,WAAW,SAAU4M,GAC/B+jG,GAAWzK,GAAQ,SAAU/5G,GAAQ,OAAOukH,GAAQ9jG,EAAKzgB,EAAO,GAClE,IACAL,KAAKkU,OAAO,WAAW,SAAU4M,GAC/B+jG,GAAWzK,GAAQ,SAAU/5G,GAAQ,OAAQukH,GAAQ9jG,EAAKzgB,EAAO,GACnE,GACF,EAEAknH,QAAS,WACPvnH,KAAKonH,YACP,EAEAt5G,OAAQ,WACN,IAAIwoG,EAAOt2G,KAAK4K,OAAO3M,QACnBwwG,EAAQgR,GAAuBnJ,GAC/BtsG,EAAmBykG,GAASA,EAAMzkG,iBACtC,GAAIA,EAAkB,CAEpB,IAAI3J,EAAOskH,GAAiB36G,GAExBk9G,EADMlnH,KACQknH,QACdC,EAFMnnH,KAEQmnH,QAClB,GAEGD,KAAa7mH,IAASukH,GAAQsC,EAAS7mH,KAEvC8mH,GAAW9mH,GAAQukH,GAAQuC,EAAS9mH,GAErC,OAAOouG,EAGT,IACI7gF,EADQ5tB,KACM4tB,MACdvmB,EAFQrH,KAEKqH,KACb5H,EAAmB,MAAbgvG,EAAMhvG,IAGZuK,EAAiBurD,KAAK2nD,KAAOlzG,EAAiBC,IAAO,KAAQD,EAAoB,IAAK,IACtFykG,EAAMhvG,IACNmuB,EAAMnuB,IACRgvG,EAAMZ,kBAAoBjgF,EAAMnuB,GAAKouG,kBAErC5gG,EAAO5F,EAAM5H,GACb4H,EAAK1K,KAAK8C,KAGVO,KAAKqnH,aAAe5Y,EACpBzuG,KAAKsnH,WAAa7nH,GAGpBgvG,EAAMvsG,KAAK84G,WAAY,CACzB,CACA,OAAOvM,GAAU6H,GAAQA,EAAK,EAChC,GAGEkR,GAAoB,CACtBP,UAAWA,KAKb,SAAwB7rB,GAEtB,IAAIqsB,EAAY,CAChBA,IAAgB,WAAc,OAAOniH,CAAQ,GAQ7CzJ,OAAOC,eAAes/F,EAAK,SAAUqsB,GAKrCrsB,EAAI9qF,KAAO,CACTpQ,KAAMA,GACN+hB,OAAQA,EACRqvF,aAAcA,GACdoW,eAAgB9X,IAGlBxU,EAAIt6F,IAAMA,GACVs6F,EAAIntB,OAASiiC,GACb9U,EAAIza,SAAWA,GAGfya,EAAIusB,WAAa,SAAU9pH,GAEzB,OADA4xG,GAAQ5xG,GACDA,CACT,EAEAu9F,EAAIv3F,QAAUhI,OAAOuC,OAAO,MAC5BgsG,EAAYjtG,SAAQ,SAAUuI,GAC5B01F,EAAIv3F,QAAQ6B,EAAO,KAAO7J,OAAOuC,OAAO,KAC1C,IAIAg9F,EAAIv3F,QAAQguG,MAAQzW,EAEpBn5E,EAAOm5E,EAAIv3F,QAAQmE,WAAYw/G,IAzWjC,SAAkBpsB,GAChBA,EAAIp1E,IAAM,SAAU4hG,GAClB,IAAIC,EAAoB7nH,KAAK8nH,oBAAsB9nH,KAAK8nH,kBAAoB,IAC5E,GAAID,EAAiB/hH,QAAQ8hH,IAAW,EACtC,OAAO5nH,KAIT,IAAIwpB,EAAOoD,EAAQ5pB,UAAW,GAQ9B,OAPAwmB,EAAKhF,QAAQxkB,MACiB,mBAAnB4nH,EAAOzsB,QAChBysB,EAAOzsB,QAAQ3zF,MAAMogH,EAAQp+F,GACF,mBAAXo+F,GAChBA,EAAOpgH,MAAM,KAAMgiB,GAErBq+F,EAAiBlrH,KAAKirH,GACf5nH,IACT,CACF,CAyVE+nH,CAAQ3sB,GArVV,SAAsBA,GACpBA,EAAIspB,MAAQ,SAAUA,GAEpB,OADA1kH,KAAK6D,QAAUytG,GAAatxG,KAAK6D,QAAS6gH,GACnC1kH,IACT,CACF,CAiVEgoH,CAAY5sB,GACZ6oB,GAAW7oB,GAlPb,SAA6BA,GAI3BgP,EAAYjtG,SAAQ,SAAUuI,GAC5B01F,EAAI11F,GAAQ,SACV2L,EACA42G,GAEA,OAAKA,GAOU,cAATviH,GAAwBqhB,EAAckhG,KACxCA,EAAW5nH,KAAO4nH,EAAW5nH,MAAQgR,EACrC42G,EAAajoH,KAAK6D,QAAQguG,MAAM5vF,OAAOgmG,IAE5B,cAATviH,GAA8C,mBAAfuiH,IACjCA,EAAa,CAAE35G,KAAM25G,EAAYj1G,OAAQi1G,IAE3CjoH,KAAK6D,QAAQ6B,EAAO,KAAK2L,GAAM42G,EACxBA,GAdAjoH,KAAK6D,QAAQ6B,EAAO,KAAK2L,EAgBpC,CACF,GACF,CAuNE62G,CAAmB9sB,EACrB,CAEA+sB,CAAc/sB,IAEdv/F,OAAOC,eAAes/F,GAAI16F,UAAW,YAAa,CAChDxE,IAAKqwG,KAGP1wG,OAAOC,eAAes/F,GAAI16F,UAAW,cAAe,CAClDxE,IAAK,WAEH,OAAO8D,KAAKoX,QAAUpX,KAAKoX,OAAOC,UACpC,IAIFxb,OAAOC,eAAes/F,GAAK,0BAA2B,CACpDp/F,MAAOk+G,KAGT9e,GAAI9pF,QAAU,SAMd,IAAI05F,GAAiBhC,EAAQ,eAGzBof,GAAcpf,EAAQ,yCAUtBqf,GAAmBrf,EAAQ,wCAE3Bsf,GAA8Btf,EAAQ,sCAWtCuf,GAAgBvf,EAClB,8XAQEwf,GAAU,+BAEVC,GAAU,SAAUpoH,GACtB,MAA0B,MAAnBA,EAAKgF,OAAO,IAAmC,UAArBhF,EAAKsM,MAAM,EAAG,EACjD,EAEI+7G,GAAe,SAAUroH,GAC3B,OAAOooH,GAAQpoH,GAAQA,EAAKsM,MAAM,EAAGtM,EAAKhB,QAAU,EACtD,EAEIspH,GAAmB,SAAU7nG,GAC/B,OAAc,MAAPA,IAAuB,IAARA,CACxB,EAIA,SAAS8nG,GAAkBna,GAIzB,IAHA,IAAIvsG,EAAOusG,EAAMvsG,KACbuR,EAAag7F,EACboa,EAAYpa,EACT9F,EAAMkgB,EAAUhb,qBACrBgb,EAAYA,EAAUhb,kBAAkBoO,SACvB4M,EAAU3mH,OACzBA,EAAO4mH,GAAeD,EAAU3mH,KAAMA,IAG1C,KAAOymG,EAAMl1F,EAAaA,EAAW6D,SAC/B7D,GAAcA,EAAWvR,OAC3BA,EAAO4mH,GAAe5mH,EAAMuR,EAAWvR,OAG3C,OAYF,SACE6I,EACAg+G,GAEA,GAAIpgB,EAAM59F,IAAgB49F,EAAMogB,GAC9B,OAAOhoH,GAAOgK,EAAai+G,GAAeD,IAG5C,MAAO,EACT,CArBSE,CAAY/mH,EAAK6I,YAAa7I,EAAK8I,MAC5C,CAEA,SAAS89G,GAAgBp1E,EAAOp8B,GAC9B,MAAO,CACLvM,YAAahK,GAAO2yC,EAAM3oC,YAAauM,EAAOvM,aAC9CC,MAAO29F,EAAMj1D,EAAM1oC,OACf,CAAC0oC,EAAM1oC,MAAOsM,EAAOtM,OACrBsM,EAAOtM,MAEf,CAaA,SAASjK,GAAQ2B,EAAGC,GAClB,OAAOD,EAAIC,EAAKD,EAAI,IAAMC,EAAKD,EAAKC,GAAK,EAC3C,CAEA,SAASqmH,GAAgBhtH,GACvB,OAAImL,MAAMmF,QAAQtQ,GAapB,SAAyBA,GAGvB,IAFA,IACIktH,EADA39E,EAAM,GAEDnsC,EAAI,EAAG4H,EAAIhL,EAAMqD,OAAQD,EAAI4H,EAAG5H,IACnCupG,EAAMugB,EAAcF,GAAehtH,EAAMoD,MAAwB,KAAhB8pH,IAC/C39E,IAAOA,GAAO,KAClBA,GAAO29E,GAGX,OAAO39E,CACT,CAtBW49E,CAAentH,GAEpBysB,EAASzsB,GAsBf,SAA0BA,GACxB,IAAIuvC,EAAM,GACV,IAAK,IAAI9rC,KAAOzD,EACVA,EAAMyD,KACJ8rC,IAAOA,GAAO,KAClBA,GAAO9rC,GAGX,OAAO8rC,CACT,CA9BW69E,CAAgBptH,GAEJ,iBAAVA,EACFA,EAGF,EACT,CA2BA,IAAIqtH,GAAe,CACjBC,IAAK,6BACLC,KAAM,sCAGJC,GAAYxgB,EACd,snBAeEygB,GAAQzgB,EACV,kNAGA,GAGE+B,GAAgB,SAAU9gG,GAC5B,OAAOu/G,GAAUv/G,IAAQw/G,GAAMx/G,EACjC,EAaA,IAAIy/G,GAAsB7tH,OAAOuC,OAAO,MA0BxC,IAAIurH,GAAkB3gB,EAAQ,6CAgF9B,IAAI4gB,GAAuB/tH,OAAO4sG,OAAO,CACvCn1F,cAzDF,SAA0Bu2G,EAASpb,GACjC,IAAIlB,EAAMzwG,SAASwW,cAAcu2G,GACjC,MAAgB,WAAZA,GAIApb,EAAMvsG,MAAQusG,EAAMvsG,KAAK2S,YAAuC5R,IAA9BwrG,EAAMvsG,KAAK2S,MAAMi1G,UACrDvc,EAAIn8F,aAAa,WAAY,YAJtBm8F,CAOX,EAgDEwc,gBA9CF,SAA0B1pF,EAAWwpF,GACnC,OAAO/sH,SAASitH,gBAAgBV,GAAahpF,GAAYwpF,EAC3D,EA6CE/1G,eA3CF,SAAyBlQ,GACvB,OAAO9G,SAASgX,eAAelQ,EACjC,EA0CEomH,cAxCF,SAAwBpmH,GACtB,OAAO9G,SAASktH,cAAcpmH,EAChC,EAuCEoX,aArCF,SAAuBvH,EAAYw2G,EAAS5/B,GAC1C52E,EAAWuH,aAAaivG,EAAS5/B,EACnC,EAoCE32E,YAlCF,SAAsB8gC,EAAMd,GAC1Bc,EAAK9gC,YAAYggC,EACnB,EAiCErgC,YA/BF,SAAsBmhC,EAAMd,GAC1Bc,EAAKnhC,YAAYqgC,EACnB,EA8BEjgC,WA5BF,SAAqB+gC,GACnB,OAAOA,EAAK/gC,UACd,EA2BEy2G,YAzBF,SAAsB11E,GACpB,OAAOA,EAAK01E,WACd,EAwBEL,QAtBF,SAAkBr1E,GAChB,OAAOA,EAAKq1E,OACd,EAqBEM,eAnBF,SAAyB31E,EAAM5wC,GAC7B4wC,EAAK7+B,YAAc/R,CACrB,EAkBEwmH,cAhBF,SAAwB51E,EAAMmlD,GAC5BnlD,EAAKpjC,aAAauoF,EAAS,GAC7B,IAmBI/kF,GAAM,CACRxW,OAAQ,SAAiBqD,EAAGgtG,GAC1B4b,GAAY5b,EACd,EACAz7F,OAAQ,SAAiByoG,EAAUhN,GAC7BgN,EAASv5G,KAAK0S,MAAQ65F,EAAMvsG,KAAK0S,MACnCy1G,GAAY5O,GAAU,GACtB4O,GAAY5b,GAEhB,EACA9zF,QAAS,SAAkB8zF,GACzB4b,GAAY5b,GAAO,EACrB,GAGF,SAAS4b,GAAa5b,EAAO6b,GAC3B,IAAI7qH,EAAMgvG,EAAMvsG,KAAK0S,IACrB,GAAK+zF,EAAMlpG,GAAX,CAEA,IAAIkxG,EAAKlC,EAAMzsF,QACXpN,EAAM65F,EAAMZ,mBAAqBY,EAAMlB,IACvCgd,EAAO5Z,EAAGhlG,MACV2+G,EACEnjH,MAAMmF,QAAQi+G,EAAK9qH,IACrBwN,EAAOs9G,EAAK9qH,GAAMmV,GACT21G,EAAK9qH,KAASmV,IACvB21G,EAAK9qH,QAAOwD,GAGVwrG,EAAMvsG,KAAKsoH,SACRrjH,MAAMmF,QAAQi+G,EAAK9qH,IAEb8qH,EAAK9qH,GAAKqG,QAAQ8O,GAAO,GAElC21G,EAAK9qH,GAAK9C,KAAKiY,GAHf21G,EAAK9qH,GAAO,CAACmV,GAMf21G,EAAK9qH,GAAOmV,CApBU,CAuB5B,CAcA,IAAI61G,GAAY,IAAInd,GAAM,GAAI,CAAC,EAAG,IAE9ByD,GAAQ,CAAC,SAAU,WAAY,SAAU,SAAU,WAEvD,SAAS2Z,GAAWhoH,EAAGC,GACrB,OACED,EAAEjD,MAAQkD,EAAElD,KACZiD,EAAE8qG,eAAiB7qG,EAAE6qG,eAEjB9qG,EAAEuH,MAAQtH,EAAEsH,KACZvH,EAAEsrG,YAAcrrG,EAAEqrG,WAClBrF,EAAMjmG,EAAER,QAAUymG,EAAMhmG,EAAET,OAUlC,SAAwBQ,EAAGC,GACzB,GAAc,UAAVD,EAAEuH,IAAmB,OAAO,EAChC,IAAI7K,EACAurH,EAAQhiB,EAAMvpG,EAAIsD,EAAER,OAASymG,EAAMvpG,EAAIA,EAAEyV,QAAUzV,EAAEsG,KACrDklH,EAAQjiB,EAAMvpG,EAAIuD,EAAET,OAASymG,EAAMvpG,EAAIA,EAAEyV,QAAUzV,EAAEsG,KACzD,OAAOilH,IAAUC,GAASjB,GAAgBgB,IAAUhB,GAAgBiB,EACtE,CAfQC,CAAcnoH,EAAGC,IAEjBimG,EAAOlmG,EAAE0rG,qBACT1F,EAAQ/lG,EAAE6qG,aAAanwG,OAI/B,CAUA,SAASytH,GAAmBzhH,EAAU0hH,EAAUC,GAC9C,IAAI5rH,EAAGK,EACHmS,EAAM,CAAC,EACX,IAAKxS,EAAI2rH,EAAU3rH,GAAK4rH,IAAU5rH,EAE5BupG,EADJlpG,EAAM4J,EAASjK,GAAGK,OACAmS,EAAInS,GAAOL,GAE/B,OAAOwS,CACT,CAotBA,IAAI9J,GAAa,CACf1J,OAAQ6sH,GACRj4G,OAAQi4G,GACRtwG,QAAS,SAA2B8zF,GAClCwc,GAAiBxc,EAAOgc,GAC1B,GAGF,SAASQ,GAAkBxP,EAAUhN,IAC/BgN,EAASv5G,KAAK4F,YAAc2mG,EAAMvsG,KAAK4F,aAK7C,SAAkB2zG,EAAUhN,GAC1B,IAQIhvG,EAAKyrH,EAAQt5C,EARbu5C,EAAW1P,IAAagP,GACxBW,EAAY3c,IAAUgc,GACtBY,EAAUC,GAAsB7P,EAASv5G,KAAK4F,WAAY2zG,EAASz5F,SACnEupG,EAAUD,GAAsB7c,EAAMvsG,KAAK4F,WAAY2mG,EAAMzsF,SAE7DwpG,EAAiB,GACjBC,EAAoB,GAGxB,IAAKhsH,KAAO8rH,EACVL,EAASG,EAAQ5rH,GACjBmyE,EAAM25C,EAAQ9rH,GACTyrH,GAQHt5C,EAAI2xB,SAAW2nB,EAAOlvH,MACtB41E,EAAI85C,OAASR,EAAOlrF,IACpB2rF,GAAW/5C,EAAK,SAAU68B,EAAOgN,GAC7B7pC,EAAI65B,KAAO75B,EAAI65B,IAAImgB,kBACrBH,EAAkB9uH,KAAKi1E,KAVzB+5C,GAAW/5C,EAAK,OAAQ68B,EAAOgN,GAC3B7pC,EAAI65B,KAAO75B,EAAI65B,IAAImD,UACrB4c,EAAe7uH,KAAKi1E,IAa1B,GAAI45C,EAAensH,OAAQ,CACzB,IAAIwsH,EAAa,WACf,IAAK,IAAIzsH,EAAI,EAAGA,EAAIosH,EAAensH,OAAQD,IACzCusH,GAAWH,EAAepsH,GAAI,WAAYqvG,EAAOgN,EAErD,EACI0P,EACF9V,GAAe5G,EAAO,SAAUod,GAEhCA,GAEJ,CAEIJ,EAAkBpsH,QACpBg2G,GAAe5G,EAAO,aAAa,WACjC,IAAK,IAAIrvG,EAAI,EAAGA,EAAIqsH,EAAkBpsH,OAAQD,IAC5CusH,GAAWF,EAAkBrsH,GAAI,mBAAoBqvG,EAAOgN,EAEhE,IAGF,IAAK0P,EACH,IAAK1rH,KAAO4rH,EACLE,EAAQ9rH,IAEXksH,GAAWN,EAAQ5rH,GAAM,SAAUg8G,EAAUA,EAAU2P,EAI/D,CA/DI7E,CAAQ9K,EAAUhN,EAEtB,CA+DA,IAAIqd,GAAiBjwH,OAAOuC,OAAO,MAEnC,SAASktH,GACP5Z,EACAf,GAEA,IAKIvxG,EAAGwyE,EALHrmC,EAAM1vC,OAAOuC,OAAO,MACxB,IAAKszG,EAEH,OAAOnmE,EAGT,IAAKnsC,EAAI,EAAGA,EAAIsyG,EAAKryG,OAAQD,KAC3BwyE,EAAM8/B,EAAKtyG,IACF2W,YAEP67D,EAAI77D,UAAY+1G,IAElBvgF,EAAIwgF,GAAcn6C,IAAQA,EAC1BA,EAAI65B,IAAMwG,GAAatB,EAAGpgG,SAAU,aAAcqhE,EAAIvxE,MAGxD,OAAOkrC,CACT,CAEA,SAASwgF,GAAen6C,GACtB,OAAOA,EAAI/7D,SAAa+7D,EAAQ,KAAI,IAAO/1E,OAAOwL,KAAKuqE,EAAI77D,WAAa,CAAC,GAAGlE,KAAK,IACnF,CAEA,SAAS85G,GAAY/5C,EAAKsoB,EAAMuU,EAAOgN,EAAU2P,GAC/C,IAAIp2G,EAAK48D,EAAI65B,KAAO75B,EAAI65B,IAAIvR,GAC5B,GAAIllF,EACF,IACEA,EAAGy5F,EAAMlB,IAAK37B,EAAK68B,EAAOgN,EAAU2P,EAGtC,CAFE,MAAOluH,GACPk2G,GAAYl2G,EAAGuxG,EAAMzsF,QAAU,aAAgB4vD,EAAQ,KAAI,IAAMsoB,EAAO,QAC1E,CAEJ,CAEA,IAAI8xB,GAAc,CAChBp3G,GACA9M,IAKF,SAASmkH,GAAaxQ,EAAUhN,GAC9B,IAAIphF,EAAOohF,EAAMzkG,iBACjB,KAAI2+F,EAAMt7E,KAA4C,IAAnCA,EAAKkoC,KAAK1xD,QAAQqoH,cAGjCxjB,EAAQ+S,EAASv5G,KAAK2S,QAAU6zF,EAAQ+F,EAAMvsG,KAAK2S,QAAvD,CAGA,IAAIpV,EAAKypE,EACLqkC,EAAMkB,EAAMlB,IACZ4e,EAAW1Q,EAASv5G,KAAK2S,OAAS,CAAC,EACnCA,EAAQ45F,EAAMvsG,KAAK2S,OAAS,CAAC,EAMjC,IAAKpV,KAJDkpG,EAAM9zF,EAAMi6F,UACdj6F,EAAQ45F,EAAMvsG,KAAK2S,MAAQoN,EAAO,CAAC,EAAGpN,IAG5BA,EACVq0D,EAAMr0D,EAAMpV,GACN0sH,EAAS1sH,KACHypE,GACVkjD,GAAQ7e,EAAK9tG,EAAKypE,EAAKulC,EAAMvsG,KAAKk9G,KAStC,IAAK3/G,KAHAirF,GAAQ0hB,KAAWv3F,EAAM7Y,QAAUmwH,EAASnwH,OAC/CowH,GAAQ7e,EAAK,QAAS14F,EAAM7Y,OAElBmwH,EACNzjB,EAAQ7zF,EAAMpV,MACZgpH,GAAQhpH,GACV8tG,EAAI8e,kBAAkB7D,GAASE,GAAajpH,IAClC4oH,GAAiB5oH,IAC3B8tG,EAAIjb,gBAAgB7yF,GA5B1B,CAgCF,CAEA,SAAS2sH,GAASv/F,EAAIptB,EAAKzD,EAAOswH,GAC5BA,GAAWz/F,EAAGg9F,QAAQ/jH,QAAQ,MAAQ,EACxCymH,GAAY1/F,EAAIptB,EAAKzD,GACZusH,GAAc9oH,GAGnBkpH,GAAiB3sH,GACnB6wB,EAAGylE,gBAAgB7yF,IAInBzD,EAAgB,oBAARyD,GAA4C,UAAfotB,EAAGg9F,QACpC,OACApqH,EACJotB,EAAGzb,aAAa3R,EAAKzD,IAEdqsH,GAAiB5oH,GAC1BotB,EAAGzb,aAAa3R,EA5vCS,SAAUA,EAAKzD,GAC1C,OAAO2sH,GAAiB3sH,IAAoB,UAAVA,EAC9B,QAEQ,oBAARyD,GAA6B6oH,GAA4BtsH,GACvDA,EACA,MACR,CAqvCyBwwH,CAAuB/sH,EAAKzD,IACxCysH,GAAQhpH,GACbkpH,GAAiB3sH,GACnB6wB,EAAGw/F,kBAAkB7D,GAASE,GAAajpH,IAE3CotB,EAAG4/F,eAAejE,GAAS/oH,EAAKzD,GAGlCuwH,GAAY1/F,EAAIptB,EAAKzD,EAEzB,CAEA,SAASuwH,GAAa1/F,EAAIptB,EAAKzD,GAC7B,GAAI2sH,GAAiB3sH,GACnB6wB,EAAGylE,gBAAgB7yF,OACd,CAKL,GACEirF,IAASyhB,GACM,aAAft/E,EAAGg9F,SACK,gBAARpqH,GAAmC,KAAVzD,IAAiB6wB,EAAG6/F,OAC7C,CACA,IAAIC,EAAU,SAAUzvH,GACtBA,EAAE0vH,2BACF//F,EAAGpS,oBAAoB,QAASkyG,EAClC,EACA9/F,EAAGvS,iBAAiB,QAASqyG,GAE7B9/F,EAAG6/F,QAAS,CACd,CACA7/F,EAAGzb,aAAa3R,EAAKzD,EACvB,CACF,CAEA,IAAI6Y,GAAQ,CACVzW,OAAQ6tH,GACRj5G,OAAQi5G,IAKV,SAASY,GAAapR,EAAUhN,GAC9B,IAAI5hF,EAAK4hF,EAAMlB,IACXrrG,EAAOusG,EAAMvsG,KACb4qH,EAAUrR,EAASv5G,KACvB,KACEwmG,EAAQxmG,EAAK6I,cACb29F,EAAQxmG,EAAK8I,SACX09F,EAAQokB,IACNpkB,EAAQokB,EAAQ/hH,cAChB29F,EAAQokB,EAAQ9hH,SALtB,CAYA,IAAI+hH,EAAMnE,GAAiBna,GAGvBue,EAAkBngG,EAAGogG,mBACrBtkB,EAAMqkB,KACRD,EAAMhsH,GAAOgsH,EAAK/D,GAAegE,KAI/BD,IAAQlgG,EAAGqgG,aACbrgG,EAAGzb,aAAa,QAAS27G,GACzBlgG,EAAGqgG,WAAaH,EAblB,CAeF,CAEA,IAyCII,GAzCAC,GAAQ,CACVhvH,OAAQyuH,GACR75G,OAAQ65G,IAyCV,SAASQ,GAAqB7sH,EAAOF,EAASgsC,GAC5C,IAAIszE,EAAUuN,GACd,OAAO,SAAStN,IACd,IAAIt0E,EAAMjrC,EAAQkH,MAAM,KAAMxE,WAClB,OAARuoC,GACF+hF,GAAS9sH,EAAOq/G,EAAavzE,EAASszE,EAE1C,CACF,CAKA,IAAI2N,GAAkB3Z,MAAsBvH,IAAQlzF,OAAOkzF,GAAK,KAAO,IAEvE,SAASmhB,GACPntH,EACAC,EACAgsC,EACAwmD,GAQA,GAAIy6B,GAAiB,CACnB,IAAIE,EAAoBnN,GACpBx9G,EAAWxC,EACfA,EAAUwC,EAAS4qH,SAAW,SAAUxwH,GACtC,GAIEA,EAAEgC,SAAWhC,EAAE+f,eAEf/f,EAAEq6C,WAAak2E,GAIfvwH,EAAEq6C,WAAa,GAIfr6C,EAAEgC,OAAOo2C,gBAAkBx4C,SAE3B,OAAOgG,EAAS0E,MAAMxH,KAAMgD,UAEhC,CACF,CACAmqH,GAAS7yG,iBACPja,EACAC,EACA27F,GACI,CAAE3vD,QAASA,EAASwmD,QAASA,GAC7BxmD,EAER,CAEA,SAASghF,GACPjtH,EACAC,EACAgsC,EACAszE,IAECA,GAAWuN,IAAU1yG,oBACpBpa,EACAC,EAAQotH,UAAYptH,EACpBgsC,EAEJ,CAEA,SAASqhF,GAAoBlS,EAAUhN,GACrC,IAAI/F,EAAQ+S,EAASv5G,KAAKmT,MAAOqzF,EAAQ+F,EAAMvsG,KAAKmT,IAApD,CAGA,IAAIA,EAAKo5F,EAAMvsG,KAAKmT,IAAM,CAAC,EACvB4/F,EAAQwG,EAASv5G,KAAKmT,IAAM,CAAC,EACjC83G,GAAW1e,EAAMlB,IAlGnB,SAA0Bl4F,GAExB,GAAIszF,EAAMtzF,EAAc,KAAI,CAE1B,IAAI7U,EAAQkqF,EAAO,SAAW,QAC9Br1E,EAAG7U,GAAS,GAAGO,OAAOsU,EAAc,IAAGA,EAAG7U,IAAU,WAC7C6U,EAAc,GACvB,CAIIszF,EAAMtzF,EAAuB,OAC/BA,EAAGu4G,OAAS,GAAG7sH,OAAOsU,EAAuB,IAAGA,EAAGu4G,QAAU,WACtDv4G,EAAuB,IAElC,CAoFEw4G,CAAgBx4G,GAChB2/F,GAAgB3/F,EAAI4/F,EAAOuY,GAAOF,GAAUD,GAAqB5e,EAAMzsF,SACvEmrG,QAAWlqH,CANX,CAOF,CAEA,IAOI6qH,GAPAzpE,GAAS,CACXjmD,OAAQuvH,GACR36G,OAAQ26G,IAOV,SAASI,GAAgBtS,EAAUhN,GACjC,IAAI/F,EAAQ+S,EAASv5G,KAAKwT,YAAagzF,EAAQ+F,EAAMvsG,KAAKwT,UAA1D,CAGA,IAAIjW,EAAKypE,EACLqkC,EAAMkB,EAAMlB,IACZygB,EAAWvS,EAASv5G,KAAKwT,UAAY,CAAC,EACtCvW,EAAQsvG,EAAMvsG,KAAKwT,UAAY,CAAC,EAMpC,IAAKjW,KAJDkpG,EAAMxpG,EAAM2vG,UACd3vG,EAAQsvG,EAAMvsG,KAAKwT,SAAWuM,EAAO,CAAC,EAAG9iB,IAG/B6uH,EACJvuH,KAAON,IACXouG,EAAI9tG,GAAO,IAIf,IAAKA,KAAON,EAAO,CAKjB,GAJA+pE,EAAM/pE,EAAMM,GAIA,gBAARA,GAAiC,cAARA,EAAqB,CAEhD,GADIgvG,EAAMplG,WAAYolG,EAAMplG,SAAShK,OAAS,GAC1C6pE,IAAQ8kD,EAASvuH,GAAQ,SAGC,IAA1B8tG,EAAI5O,WAAWt/F,QACjBkuG,EAAI75F,YAAY65F,EAAI5O,WAAW,GAEnC,CAEA,GAAY,UAARl/F,GAAmC,aAAhB8tG,EAAIsc,QAAwB,CAGjDtc,EAAI0gB,OAAS/kD,EAEb,IAAIglD,EAASxlB,EAAQx/B,GAAO,GAAK1gE,OAAO0gE,GACpCilD,GAAkB5gB,EAAK2gB,KACzB3gB,EAAIvxG,MAAQkyH,EAEhB,MAAO,GAAY,cAARzuH,GAAuBgqH,GAAMlc,EAAIsc,UAAYnhB,EAAQ6E,EAAI9O,WAAY,EAE9EqvB,GAAeA,IAAgBhxH,SAASwW,cAAc,QACzCmrF,UAAY,QAAUv1B,EAAM,SAEzC,IADA,IAAIogD,EAAMwE,GAAaj6G,WAChB05F,EAAI15F,YACT05F,EAAI75F,YAAY65F,EAAI15F,YAEtB,KAAOy1G,EAAIz1G,YACT05F,EAAIl6F,YAAYi2G,EAAIz1G,WAExB,MAAO,GAKLq1D,IAAQ8kD,EAASvuH,GAIjB,IACE8tG,EAAI9tG,GAAOypE,CACA,CAAX,MAAOhsE,GAAI,CAEjB,CAhEA,CAiEF,CAKA,SAASixH,GAAmB5gB,EAAK6gB,GAC/B,OAAS7gB,EAAI8gB,YACK,WAAhB9gB,EAAIsc,SAMR,SAA+Btc,EAAK6gB,GAGlC,IAAIE,GAAa,EAGjB,IAAMA,EAAaxxH,SAASoP,gBAAkBqhG,CAAkB,CAAX,MAAOrwG,GAAI,CAChE,OAAOoxH,GAAc/gB,EAAIvxG,QAAUoyH,CACrC,CAbIG,CAAqBhhB,EAAK6gB,IAe9B,SAA+B7gB,EAAK0C,GAClC,IAAIj0G,EAAQuxG,EAAIvxG,MACZ+Z,EAAYw3F,EAAIihB,YACpB,GAAI7lB,EAAM5yF,GAAY,CACpB,GAAIA,EAAUwP,OACZ,OAAOwjF,EAAS/sG,KAAW+sG,EAASkH,GAEtC,GAAIl6F,EAAU9K,KACZ,OAAOjP,EAAMiP,SAAWglG,EAAOhlG,MAEnC,CACA,OAAOjP,IAAUi0G,CACnB,CA1BIwe,CAAqBlhB,EAAK6gB,GAE9B,CA0BA,IAAI14G,GAAW,CACbtX,OAAQ2vH,GACR/6G,OAAQ+6G,IAKNW,GAAiBvlB,GAAO,SAAUv1F,GACpC,IAAI23B,EAAM,CAAC,EAEPojF,EAAoB,QAOxB,OANA/6G,EAAQkY,MAFY,iBAES3uB,SAAQ,SAAU6vC,GAC7C,GAAIA,EAAM,CACR,IAAIpd,EAAMod,EAAKlhB,MAAM6iG,GACrB/+F,EAAIvwB,OAAS,IAAMksC,EAAI3b,EAAI,GAAG3kB,QAAU2kB,EAAI,GAAG3kB,OACjD,CACF,IACOsgC,CACT,IAGA,SAASqjF,GAAoB1sH,GAC3B,IAAIoT,EAAQu5G,GAAsB3sH,EAAKoT,OAGvC,OAAOpT,EAAKwlG,YACRzlF,EAAO/f,EAAKwlG,YAAapyF,GACzBA,CACN,CAGA,SAASu5G,GAAuBC,GAC9B,OAAI3nH,MAAMmF,QAAQwiH,GACTn7F,EAASm7F,GAEU,iBAAjBA,EACFJ,GAAeI,GAEjBA,CACT,CAsCA,IAyBIC,GAzBAC,GAAW,MACXC,GAAc,iBACdC,GAAU,SAAUriG,EAAIxsB,EAAMygB,GAEhC,GAAIkuG,GAASniH,KAAKxM,GAChBwsB,EAAGvX,MAAM65G,YAAY9uH,EAAMygB,QACtB,GAAImuG,GAAYpiH,KAAKiU,GAC1B+L,EAAGvX,MAAM65G,YAAY3lB,EAAUnpG,GAAOygB,EAAI7e,QAAQgtH,GAAa,IAAK,iBAC/D,CACL,IAAIrjG,EAAiB2W,GAAUliC,GAC/B,GAAI8G,MAAMmF,QAAQwU,GAIhB,IAAK,IAAI1hB,EAAI,EAAG4wB,EAAMlP,EAAIzhB,OAAQD,EAAI4wB,EAAK5wB,IACzCytB,EAAGvX,MAAMsW,GAAkB9K,EAAI1hB,QAGjCytB,EAAGvX,MAAMsW,GAAkB9K,CAE/B,CACF,EAEIsuG,GAAc,CAAC,SAAU,MAAO,MAGhC7sF,GAAY4mE,GAAO,SAAUliF,GAG/B,GAFA8nG,GAAaA,IAAcjyH,SAASwW,cAAc,OAAOgC,MAE5C,YADb2R,EAAOoiF,EAASpiF,KACUA,KAAQ8nG,GAChC,OAAO9nG,EAGT,IADA,IAAIooG,EAAUpoG,EAAK5hB,OAAO,GAAGqa,cAAgBuH,EAAKta,MAAM,GAC/CvN,EAAI,EAAGA,EAAIgwH,GAAY/vH,OAAQD,IAAK,CAC3C,IAAIiB,EAAO+uH,GAAYhwH,GAAKiwH,EAC5B,GAAIhvH,KAAQ0uH,GACV,OAAO1uH,CAEX,CACF,IAEA,SAASivH,GAAa7T,EAAUhN,GAC9B,IAAIvsG,EAAOusG,EAAMvsG,KACb4qH,EAAUrR,EAASv5G,KAEvB,KAAIwmG,EAAQxmG,EAAKwlG,cAAgBgB,EAAQxmG,EAAKoT,QAC5CozF,EAAQokB,EAAQplB,cAAgBgB,EAAQokB,EAAQx3G,QADlD,CAMA,IAAI4zD,EAAK7oE,EACLwsB,EAAK4hF,EAAMlB,IACXgiB,EAAiBzC,EAAQplB,YACzB8nB,EAAkB1C,EAAQ2C,iBAAmB3C,EAAQx3G,OAAS,CAAC,EAG/Do6G,EAAWH,GAAkBC,EAE7Bl6G,EAAQu5G,GAAsBpgB,EAAMvsG,KAAKoT,QAAU,CAAC,EAKxDm5F,EAAMvsG,KAAKutH,gBAAkB9mB,EAAMrzF,EAAMw5F,QACrC7sF,EAAO,CAAC,EAAG3M,GACXA,EAEJ,IAAIq6G,EApGN,SAAmBlhB,EAAOmhB,GACxB,IACIC,EADAtkF,EAAM,CAAC,EAGX,GAAIqkF,EAEF,IADA,IAAI/G,EAAYpa,EACToa,EAAUhb,oBACfgb,EAAYA,EAAUhb,kBAAkBoO,SAEzB4M,EAAU3mH,OACtB2tH,EAAYjB,GAAmB/F,EAAU3mH,QAE1C+f,EAAOspB,EAAKskF,IAKbA,EAAYjB,GAAmBngB,EAAMvsG,QACxC+f,EAAOspB,EAAKskF,GAId,IADA,IAAIp8G,EAAag7F,EACTh7F,EAAaA,EAAW6D,QAC1B7D,EAAWvR,OAAS2tH,EAAYjB,GAAmBn7G,EAAWvR,QAChE+f,EAAOspB,EAAKskF,GAGhB,OAAOtkF,CACT,CAwEiBukF,CAASrhB,GAAO,GAE/B,IAAKpuG,KAAQqvH,EACPhnB,EAAQinB,EAAStvH,KACnB6uH,GAAQriG,EAAIxsB,EAAM,IAGtB,IAAKA,KAAQsvH,GACXzmD,EAAMymD,EAAStvH,MACHqvH,EAASrvH,IAEnB6uH,GAAQriG,EAAIxsB,EAAa,MAAP6oE,EAAc,GAAKA,EA9BzC,CAiCF,CAEA,IAAI5zD,GAAQ,CACVlX,OAAQkxH,GACRt8G,OAAQs8G,IAKNS,GAAe,MAMnB,SAASC,GAAUnjG,EAAIkgG,GAErB,GAAKA,IAASA,EAAMA,EAAI9hH,QAKxB,GAAI4hB,EAAG7f,UACD+/G,EAAIjnH,QAAQ,MAAQ,EACtBinH,EAAIjhG,MAAMikG,IAAc5yH,SAAQ,SAAU8J,GAAK,OAAO4lB,EAAG7f,UAAUE,IAAIjG,EAAI,IAE3E4lB,EAAG7f,UAAUE,IAAI6/G,OAEd,CACL,IAAI7jD,EAAM,KAAOr8C,EAAG7vB,aAAa,UAAY,IAAM,IAC/CksE,EAAIpjE,QAAQ,IAAMinH,EAAM,KAAO,GACjClgG,EAAGzb,aAAa,SAAU83D,EAAM6jD,GAAK9hH,OAEzC,CACF,CAMA,SAASglH,GAAapjG,EAAIkgG,GAExB,GAAKA,IAASA,EAAMA,EAAI9hH,QAKxB,GAAI4hB,EAAG7f,UACD+/G,EAAIjnH,QAAQ,MAAQ,EACtBinH,EAAIjhG,MAAMikG,IAAc5yH,SAAQ,SAAU8J,GAAK,OAAO4lB,EAAG7f,UAAUC,OAAOhG,EAAI,IAE9E4lB,EAAG7f,UAAUC,OAAO8/G,GAEjBlgG,EAAG7f,UAAU3N,QAChBwtB,EAAGylE,gBAAgB,aAEhB,CAGL,IAFA,IAAIppB,EAAM,KAAOr8C,EAAG7vB,aAAa,UAAY,IAAM,IAC/CkzH,EAAM,IAAMnD,EAAM,IACf7jD,EAAIpjE,QAAQoqH,IAAQ,GACzBhnD,EAAMA,EAAIjnE,QAAQiuH,EAAK,MAEzBhnD,EAAMA,EAAIj+D,QAER4hB,EAAGzb,aAAa,QAAS83D,GAEzBr8C,EAAGylE,gBAAgB,QAEvB,CACF,CAIA,SAAS69B,GAAmBxe,GAC1B,GAAKA,EAAL,CAIA,GAAsB,iBAAXA,EAAqB,CAC9B,IAAIpmE,EAAM,CAAC,EAKX,OAJmB,IAAfomE,EAAOp/F,KACT0P,EAAOspB,EAAK6kF,GAAkBze,EAAOtxG,MAAQ,MAE/C4hB,EAAOspB,EAAKomE,GACLpmE,CACT,CAAO,MAAsB,iBAAXomE,EACTye,GAAkBze,QADpB,CATP,CAYF,CAEA,IAAIye,GAAoBjnB,GAAO,SAAU9oG,GACvC,MAAO,CACLgwH,WAAahwH,EAAO,SACpBiwH,aAAejwH,EAAO,YACtBkwH,iBAAmBlwH,EAAO,gBAC1BmwH,WAAanwH,EAAO,SACpBowH,aAAepwH,EAAO,YACtBqwH,iBAAmBrwH,EAAO,gBAE9B,IAEIswH,GAAgB9kB,IAAcM,EAC9BykB,GAAa,aACbC,GAAY,YAGZC,GAAiB,aACjBC,GAAqB,gBACrBC,GAAgB,YAChBC,GAAoB,eACpBN,UAE6B1tH,IAA3B7B,OAAO8vH,sBACwBjuH,IAAjC7B,OAAO+vH,wBAEPL,GAAiB,mBACjBC,GAAqB,4BAEO9tH,IAA1B7B,OAAOgwH,qBACuBnuH,IAAhC7B,OAAOiwH,uBAEPL,GAAgB,kBAChBC,GAAoB,uBAKxB,IAAIK,GAAMzlB,EACNzqG,OAAO23F,sBACL33F,OAAO23F,sBAAsBzqF,KAAKlN,QAClC+W,WACyB,SAAUnD,GAAM,OAAOA,GAAM,EAE5D,SAASu8G,GAAWv8G,GAClBs8G,IAAI,WACFA,GAAIt8G,EACN,GACF,CAEA,SAASw8G,GAAoB3kG,EAAIkgG,GAC/B,IAAI0E,EAAoB5kG,EAAGogG,qBAAuBpgG,EAAGogG,mBAAqB,IACtEwE,EAAkB3rH,QAAQinH,GAAO,IACnC0E,EAAkB90H,KAAKowH,GACvBiD,GAASnjG,EAAIkgG,GAEjB,CAEA,SAAS2E,GAAuB7kG,EAAIkgG,GAC9BlgG,EAAGogG,oBACLhgH,EAAO4f,EAAGogG,mBAAoBF,GAEhCkD,GAAYpjG,EAAIkgG,EAClB,CAEA,SAAS4E,GACP9kG,EACA+kG,EACAzxC,GAEA,IAAIvrE,EAAMi9G,GAAkBhlG,EAAI+kG,GAC5BlsH,EAAOkP,EAAIlP,KACXka,EAAUhL,EAAIgL,QACdkyG,EAAYl9G,EAAIk9G,UACpB,IAAKpsH,EAAQ,OAAOy6E,IACpB,IAAI3/E,EAAQkF,IAASkrH,GAAaG,GAAqBE,GACnDc,EAAQ,EACRthG,EAAM,WACR5D,EAAGpS,oBAAoBja,EAAOwxH,GAC9B7xC,GACF,EACI6xC,EAAQ,SAAU90H,GAChBA,EAAEgC,SAAW2tB,KACTklG,GAASD,GACbrhG,GAGN,EACAtY,YAAW,WACL45G,EAAQD,GACVrhG,GAEJ,GAAG7Q,EAAU,GACbiN,EAAGvS,iBAAiB9Z,EAAOwxH,EAC7B,CAEA,IAAIC,GAAc,yBAElB,SAASJ,GAAmBhlG,EAAI+kG,GAC9B,IASIlsH,EATA24E,EAASj9E,OAAOuoF,iBAAiB98D,GAEjCqlG,GAAoB7zC,EAAOyyC,GAAiB,UAAY,IAAIhlG,MAAM,MAClEqmG,GAAuB9zC,EAAOyyC,GAAiB,aAAe,IAAIhlG,MAAM,MACxEsmG,EAAoBC,GAAWH,EAAkBC,GACjDG,GAAmBj0C,EAAO2yC,GAAgB,UAAY,IAAIllG,MAAM,MAChEymG,GAAsBl0C,EAAO2yC,GAAgB,aAAe,IAAIllG,MAAM,MACtE0mG,EAAmBH,GAAWC,EAAiBC,GAG/C3yG,EAAU,EACVkyG,EAAY,EA8BhB,OA5BIF,IAAiBhB,GACfwB,EAAoB,IACtB1sH,EAAOkrH,GACPhxG,EAAUwyG,EACVN,EAAYK,EAAoB9yH,QAEzBuyH,IAAiBf,GACtB2B,EAAmB,IACrB9sH,EAAOmrH,GACPjxG,EAAU4yG,EACVV,EAAYS,EAAmBlzH,QASjCyyH,GALApsH,GADAka,EAAU5O,KAAKo3B,IAAIgqF,EAAmBI,IACrB,EACbJ,EAAoBI,EAClB5B,GACAC,GACF,MAEAnrH,IAASkrH,GACPuB,EAAoB9yH,OACpBkzH,EAAmBlzH,OACrB,EAKC,CACLqG,KAAMA,EACNka,QAASA,EACTkyG,UAAWA,EACXW,aANA/sH,IAASkrH,IACTqB,GAAYplH,KAAKwxE,EAAOyyC,GAAiB,aAO7C,CAEA,SAASuB,GAAYK,EAAQC,GAE3B,KAAOD,EAAOrzH,OAASszH,EAAUtzH,QAC/BqzH,EAASA,EAAO3xH,OAAO2xH,GAGzB,OAAO1hH,KAAKo3B,IAAI5gC,MAAM,KAAMmrH,EAAU/gH,KAAI,SAAU1K,EAAG9H,GACrD,OAAOwzH,GAAK1rH,GAAK0rH,GAAKF,EAAOtzH,GAC/B,IACF,CAMA,SAASwzH,GAAM7rH,GACb,OAAkD,IAA3CoS,OAAOpS,EAAE4F,MAAM,GAAI,GAAG1K,QAAQ,IAAK,KAC5C,CAIA,SAAS4wH,GAAOpkB,EAAOqkB,GACrB,IAAIjmG,EAAK4hF,EAAMlB,IAGX5E,EAAM97E,EAAGkmG,YACXlmG,EAAGkmG,SAASC,WAAY,EACxBnmG,EAAGkmG,YAGL,IAAI7wH,EAAOiuH,GAAkB1hB,EAAMvsG,KAAK+wH,YACxC,IAAIvqB,EAAQxmG,KAKRymG,EAAM97E,EAAGqmG,WAA6B,IAAhBrmG,EAAGklC,SAA7B,CA4BA,IAxBA,IAAIx/C,EAAMrQ,EAAKqQ,IACX7M,EAAOxD,EAAKwD,KACZ2qH,EAAanuH,EAAKmuH,WAClBC,EAAepuH,EAAKouH,aACpBC,EAAmBruH,EAAKquH,iBACxB4C,EAAcjxH,EAAKixH,YACnBC,EAAgBlxH,EAAKkxH,cACrBC,EAAoBnxH,EAAKmxH,kBACzBC,EAAcpxH,EAAKoxH,YACnBT,EAAQ3wH,EAAK2wH,MACbU,EAAarxH,EAAKqxH,WAClBC,EAAiBtxH,EAAKsxH,eACtBC,EAAevxH,EAAKuxH,aACpBC,EAASxxH,EAAKwxH,OACdC,EAAczxH,EAAKyxH,YACnBC,EAAkB1xH,EAAK0xH,gBACvB3hG,EAAW/vB,EAAK+vB,SAMhBjQ,EAAUu5F,GACVsY,EAAiBtY,GAAenkG,OAC7By8G,GAAkBA,EAAev8G,QACtC0K,EAAU6xG,EAAe7xG,QACzB6xG,EAAiBA,EAAev8G,OAGlC,IAAIw8G,GAAY9xG,EAAQy6F,aAAehO,EAAMV,aAE7C,IAAI+lB,GAAaJ,GAAqB,KAAXA,EAA3B,CAIA,IAAIK,EAAaD,GAAYX,EACzBA,EACA9C,EACA2D,EAAcF,GAAYT,EAC1BA,EACA9C,EACA0D,EAAUH,GAAYV,EACtBA,EACA9C,EAEA4D,EAAkBJ,GACjBL,GACDH,EACAa,EAAYL,GACO,mBAAXJ,EAAwBA,EAChCb,EACAuB,EAAiBN,GAChBH,GACDJ,EACAc,EAAqBP,GACpBF,GACDJ,EAEAc,EAAwBvrB,EAC1BtgF,EAASwJ,GACLA,EAAS4gG,MACT5gG,GAGF,EAIJ,IAAIsiG,GAAqB,IAARhiH,IAAkB45F,EAC/BqoB,EAAmBC,GAAuBN,GAE1Ch0C,EAAKtzD,EAAGqmG,SAAW3uC,GAAK,WACtBgwC,IACF7C,GAAsB7kG,EAAIonG,GAC1BvC,GAAsB7kG,EAAImnG,IAExB7zC,EAAG6yC,WACDuB,GACF7C,GAAsB7kG,EAAIknG,GAE5BM,GAAsBA,EAAmBxnG,IAEzCunG,GAAkBA,EAAevnG,GAEnCA,EAAGqmG,SAAW,IAChB,IAEKzkB,EAAMvsG,KAAK4M,MAEdumG,GAAe5G,EAAO,UAAU,WAC9B,IAAIn3F,EAASuV,EAAGpZ,WACZihH,EAAcp9G,GAAUA,EAAOq9G,UAAYr9G,EAAOq9G,SAASlmB,EAAMhvG,KACjEi1H,GACFA,EAAYzqH,MAAQwkG,EAAMxkG,KAC1ByqH,EAAYnnB,IAAIwlB,UAEhB2B,EAAYnnB,IAAIwlB,WAElBoB,GAAaA,EAAUtnG,EAAIszD,EAC7B,IAIF+zC,GAAmBA,EAAgBrnG,GAC/B0nG,IACF/C,GAAmB3kG,EAAIknG,GACvBvC,GAAmB3kG,EAAImnG,GACvBzC,IAAU,WACRG,GAAsB7kG,EAAIknG,GACrB5zC,EAAG6yC,YACNxB,GAAmB3kG,EAAIonG,GAClBO,IACCI,GAAgBN,GAClBn8G,WAAWgoE,EAAIm0C,GAEf3C,GAAmB9kG,EAAInnB,EAAMy6E,IAIrC,KAGEsuB,EAAMvsG,KAAK4M,OACbgkH,GAAiBA,IACjBqB,GAAaA,EAAUtnG,EAAIszD,IAGxBo0C,GAAeC,GAClBr0C,GA/FF,CAnCA,CAoIF,CAEA,SAAS00C,GAAOpmB,EAAO3vC,GACrB,IAAIjyC,EAAK4hF,EAAMlB,IAGX5E,EAAM97E,EAAGqmG,YACXrmG,EAAGqmG,SAASF,WAAY,EACxBnmG,EAAGqmG,YAGL,IAAIhxH,EAAOiuH,GAAkB1hB,EAAMvsG,KAAK+wH,YACxC,GAAIvqB,EAAQxmG,IAAyB,IAAhB2qB,EAAGklC,SACtB,OAAO+M,IAIT,IAAI6pC,EAAM97E,EAAGkmG,UAAb,CAIA,IAAIxgH,EAAMrQ,EAAKqQ,IACX7M,EAAOxD,EAAKwD,KACZ8qH,EAAatuH,EAAKsuH,WAClBC,EAAevuH,EAAKuuH,aACpBC,EAAmBxuH,EAAKwuH,iBACxBoE,EAAc5yH,EAAK4yH,YACnBD,EAAQ3yH,EAAK2yH,MACbE,EAAa7yH,EAAK6yH,WAClBC,EAAiB9yH,EAAK8yH,eACtBC,EAAa/yH,EAAK+yH,WAClBhjG,EAAW/vB,EAAK+vB,SAEhBsiG,GAAqB,IAARhiH,IAAkB45F,EAC/BqoB,EAAmBC,GAAuBI,GAE1CK,EAAwBnsB,EAC1BtgF,EAASwJ,GACLA,EAAS4iG,MACT5iG,GAGF,EAIJ,IAAIkuD,EAAKtzD,EAAGkmG,SAAWxuC,GAAK,WACtB13D,EAAGpZ,YAAcoZ,EAAGpZ,WAAWkhH,WACjC9nG,EAAGpZ,WAAWkhH,SAASlmB,EAAMhvG,KAAO,MAElC80H,IACF7C,GAAsB7kG,EAAI4jG,GAC1BiB,GAAsB7kG,EAAI6jG,IAExBvwC,EAAG6yC,WACDuB,GACF7C,GAAsB7kG,EAAI2jG,GAE5BwE,GAAkBA,EAAenoG,KAEjCiyC,IACAi2D,GAAcA,EAAWloG,IAE3BA,EAAGkmG,SAAW,IAChB,IAEIkC,EACFA,EAAWE,GAEXA,GAlDF,CAqDA,SAASA,IAEHh1C,EAAG6yC,aAIFvkB,EAAMvsG,KAAK4M,MAAQ+d,EAAGpZ,cACxBoZ,EAAGpZ,WAAWkhH,WAAa9nG,EAAGpZ,WAAWkhH,SAAW,CAAC,IAAKlmB,EAAS,KAAKA,GAE3EqmB,GAAeA,EAAYjoG,GACvB0nG,IACF/C,GAAmB3kG,EAAI2jG,GACvBgB,GAAmB3kG,EAAI6jG,GACvBa,IAAU,WACRG,GAAsB7kG,EAAI2jG,GACrBrwC,EAAG6yC,YACNxB,GAAmB3kG,EAAI4jG,GAClB+D,IACCI,GAAgBM,GAClB/8G,WAAWgoE,EAAI+0C,GAEfvD,GAAmB9kG,EAAInnB,EAAMy6E,IAIrC,KAEF00C,GAASA,EAAMhoG,EAAIszD,GACdo0C,GAAeC,GAClBr0C,IAEJ,CACF,CAmBA,SAASy0C,GAAiB9zG,GACxB,MAAsB,iBAARA,IAAqB0nB,MAAM1nB,EAC3C,CAQA,SAAS2zG,GAAwBz/G,GAC/B,GAAI0zF,EAAQ1zF,GACV,OAAO,EAET,IAAIogH,EAAapgH,EAAG0S,IACpB,OAAIihF,EAAMysB,GAEDX,GACLttH,MAAMmF,QAAQ8oH,GACVA,EAAW,GACXA,IAGEpgH,EAAG00F,SAAW10F,EAAG3V,QAAU,CAEvC,CAEA,SAASg2H,GAAQ5zH,EAAGgtG,IACM,IAApBA,EAAMvsG,KAAK4M,MACb+jH,GAAMpkB,EAEV,CAEA,IA4BI/oB,GAj7DJ,SAA8B4vC,GAC5B,IAAIl2H,EAAGyc,EACHwqG,EAAM,CAAC,EAEPn5E,EAAUooF,EAAQpoF,QAClB08E,EAAU0L,EAAQ1L,QAEtB,IAAKxqH,EAAI,EAAGA,EAAI2xG,GAAM1xG,SAAUD,EAE9B,IADAinH,EAAItV,GAAM3xG,IAAM,GACXyc,EAAI,EAAGA,EAAIqxB,EAAQ7tC,SAAUwc,EAC5B8sF,EAAMz7D,EAAQrxB,GAAGk1F,GAAM3xG,MACzBinH,EAAItV,GAAM3xG,IAAIzC,KAAKuwC,EAAQrxB,GAAGk1F,GAAM3xG,KAmB1C,SAASm2H,EAAY1oG,GACnB,IAAIvV,EAASsyG,EAAQn2G,WAAWoZ,GAE5B87E,EAAMrxF,IACRsyG,EAAQl2G,YAAY4D,EAAQuV,EAEhC,CAoBA,SAAS2oG,EACP/mB,EACAgnB,EACAC,EACAC,EACAC,EACAC,EACAxyG,GAYA,GAVIslF,EAAM8F,EAAMlB,MAAQ5E,EAAMktB,KAM5BpnB,EAAQonB,EAAWxyG,GAASmrF,GAAWC,IAGzCA,EAAMV,cAAgB6nB,GAiDxB,SAA0BnnB,EAAOgnB,EAAoBC,EAAWC,GAC9D,IAAIv2H,EAAIqvG,EAAMvsG,KACd,GAAIymG,EAAMvpG,GAAI,CACZ,IAAI02H,EAAgBntB,EAAM8F,EAAMZ,oBAAsBzuG,EAAE47G,UAQxD,GAPIrS,EAAMvpG,EAAIA,EAAE86F,OAASyO,EAAMvpG,EAAIA,EAAEgrC,OACnChrC,EAAEqvG,GAAO,GAMP9F,EAAM8F,EAAMZ,mBAMd,OALAkoB,EAActnB,EAAOgnB,GACrBpnH,EAAOqnH,EAAWjnB,EAAMlB,IAAKooB,GACzB/sB,EAAOktB,IA0BjB,SAA8BrnB,EAAOgnB,EAAoBC,EAAWC,GAClE,IAAIv2H,EAKA42H,EAAYvnB,EAChB,KAAOunB,EAAUnoB,mBAEf,GAAIlF,EAAMvpG,GADV42H,EAAYA,EAAUnoB,kBAAkBoO,QAChB/5G,OAASymG,EAAMvpG,EAAIA,EAAE6zH,YAAa,CACxD,IAAK7zH,EAAI,EAAGA,EAAIinH,EAAI4P,SAAS52H,SAAUD,EACrCinH,EAAI4P,SAAS72H,GAAGqrH,GAAWuL,GAE7BP,EAAmB94H,KAAKq5H,GACxB,KACF,CAIF3nH,EAAOqnH,EAAWjnB,EAAMlB,IAAKooB,EAC/B,CA7CQO,CAAoBznB,EAAOgnB,EAAoBC,EAAWC,IAErD,CAEX,CACF,CApEM3Y,CAAgBvO,EAAOgnB,EAAoBC,EAAWC,GAA1D,CAIA,IAAIzzH,EAAOusG,EAAMvsG,KACbmH,EAAWolG,EAAMplG,SACjBY,EAAMwkG,EAAMxkG,IACZ0+F,EAAM1+F,IAeRwkG,EAAMlB,IAAMkB,EAAMhB,GACdmc,EAAQG,gBAAgBtb,EAAMhB,GAAIxjG,GAClC2/G,EAAQt2G,cAAcrJ,EAAKwkG,GAC/B0nB,EAAS1nB,GAIP2nB,EAAe3nB,EAAOplG,EAAUosH,GAC5B9sB,EAAMzmG,IACRm0H,EAAkB5nB,EAAOgnB,GAE3BpnH,EAAOqnH,EAAWjnB,EAAMlB,IAAKooB,IAMtB/sB,EAAO6F,EAAMT,YACtBS,EAAMlB,IAAMqc,EAAQI,cAAcvb,EAAM7qG,MACxCyK,EAAOqnH,EAAWjnB,EAAMlB,IAAKooB,KAE7BlnB,EAAMlB,IAAMqc,EAAQ91G,eAAe26F,EAAM7qG,MACzCyK,EAAOqnH,EAAWjnB,EAAMlB,IAAKooB,GA1C/B,CA4CF,CAwBA,SAASI,EAAetnB,EAAOgnB,GACzB9sB,EAAM8F,EAAMvsG,KAAKo0H,iBACnBb,EAAmB94H,KAAK6K,MAAMiuH,EAAoBhnB,EAAMvsG,KAAKo0H,eAC7D7nB,EAAMvsG,KAAKo0H,cAAgB,MAE7B7nB,EAAMlB,IAAMkB,EAAMZ,kBAAkBtgG,IAChCgpH,EAAY9nB,IACd4nB,EAAkB5nB,EAAOgnB,GACzBU,EAAS1nB,KAIT4b,GAAY5b,GAEZgnB,EAAmB94H,KAAK8xG,GAE5B,CAwBA,SAASpgG,EAAQiJ,EAAQi2F,EAAKipB,GACxB7tB,EAAMrxF,KACJqxF,EAAM6tB,GACJ5M,EAAQn2G,WAAW+iH,KAAYl/G,GACjCsyG,EAAQ5uG,aAAa1D,EAAQi2F,EAAKipB,GAGpC5M,EAAQv2G,YAAYiE,EAAQi2F,GAGlC,CAEA,SAAS6oB,EAAgB3nB,EAAOplG,EAAUosH,GACxC,GAAItuH,MAAMmF,QAAQjD,GAAW,CACvB,EAGJ,IAAK,IAAIjK,EAAI,EAAGA,EAAIiK,EAAShK,SAAUD,EACrCo2H,EAAUnsH,EAASjK,GAAIq2H,EAAoBhnB,EAAMlB,IAAK,MAAM,EAAMlkG,EAAUjK,EAEhF,MAAWogF,EAAYivB,EAAM7qG,OAC3BgmH,EAAQv2G,YAAYo7F,EAAMlB,IAAKqc,EAAQ91G,eAAetL,OAAOimG,EAAM7qG,OAEvE,CAEA,SAAS2yH,EAAa9nB,GACpB,KAAOA,EAAMZ,mBACXY,EAAQA,EAAMZ,kBAAkBoO,OAElC,OAAOtT,EAAM8F,EAAMxkG,IACrB,CAEA,SAASosH,EAAmB5nB,EAAOgnB,GACjC,IAAK,IAAIrP,EAAM,EAAGA,EAAMC,EAAIjoH,OAAOiB,SAAU+mH,EAC3CC,EAAIjoH,OAAOgoH,GAAKqE,GAAWhc,GAGzB9F,EADJvpG,EAAIqvG,EAAMvsG,KAAKg4F,QAETyO,EAAMvpG,EAAEhB,SAAWgB,EAAEhB,OAAOqsH,GAAWhc,GACvC9F,EAAMvpG,EAAEiP,SAAWonH,EAAmB94H,KAAK8xG,GAEnD,CAKA,SAAS0nB,EAAU1nB,GACjB,IAAIrvG,EACJ,GAAIupG,EAAMvpG,EAAIqvG,EAAMb,WAClBgc,EAAQQ,cAAc3b,EAAMlB,IAAKnuG,QAGjC,IADA,IAAIq3H,EAAWhoB,EACRgoB,GACD9tB,EAAMvpG,EAAIq3H,EAASz0G,UAAY2mF,EAAMvpG,EAAIA,EAAEmR,SAAS4G,WACtDyyG,EAAQQ,cAAc3b,EAAMlB,IAAKnuG,GAEnCq3H,EAAWA,EAASn/G,OAIpBqxF,EAAMvpG,EAAIm8G,KACZn8G,IAAMqvG,EAAMzsF,SACZ5iB,IAAMqvG,EAAMf,WACZ/E,EAAMvpG,EAAIA,EAAEmR,SAAS4G,WAErByyG,EAAQQ,cAAc3b,EAAMlB,IAAKnuG,EAErC,CAEA,SAASs3H,EAAWhB,EAAWC,EAAQ5nH,EAAQ4oH,EAAU3L,EAAQyK,GAC/D,KAAOkB,GAAY3L,IAAU2L,EAC3BnB,EAAUznH,EAAO4oH,GAAWlB,EAAoBC,EAAWC,GAAQ,EAAO5nH,EAAQ4oH,EAEtF,CAEA,SAASC,EAAmBnoB,GAC1B,IAAIrvG,EAAGyc,EACH3Z,EAAOusG,EAAMvsG,KACjB,GAAIymG,EAAMzmG,GAER,IADIymG,EAAMvpG,EAAI8C,EAAKg4F,OAASyO,EAAMvpG,EAAIA,EAAEub,UAAYvb,EAAEqvG,GACjDrvG,EAAI,EAAGA,EAAIinH,EAAI1rG,QAAQtb,SAAUD,EAAKinH,EAAI1rG,QAAQvb,GAAGqvG,GAE5D,GAAI9F,EAAMvpG,EAAIqvG,EAAMplG,UAClB,IAAKwS,EAAI,EAAGA,EAAI4yF,EAAMplG,SAAShK,SAAUwc,EACvC+6G,EAAkBnoB,EAAMplG,SAASwS,GAGvC,CAEA,SAASg7G,EAAc9oH,EAAQ4oH,EAAU3L,GACvC,KAAO2L,GAAY3L,IAAU2L,EAAU,CACrC,IAAItqF,EAAKt+B,EAAO4oH,GACZhuB,EAAMt8D,KACJs8D,EAAMt8D,EAAGpiC,MACX6sH,EAA0BzqF,GAC1BuqF,EAAkBvqF,IAElBkpF,EAAWlpF,EAAGkhE,KAGpB,CACF,CAEA,SAASupB,EAA2BroB,EAAO3vC,GACzC,GAAI6pC,EAAM7pC,IAAO6pC,EAAM8F,EAAMvsG,MAAO,CAClC,IAAI9C,EACAoL,EAAY67G,EAAIp5G,OAAO5N,OAAS,EAapC,IAZIspG,EAAM7pC,GAGRA,EAAGt0D,WAAaA,EAGhBs0D,EAtRN,SAAqBi4D,EAAUvsH,GAC7B,SAAS0qG,IACuB,KAAxBA,EAAU1qG,WACd+qH,EAAWwB,EAEf,CAEA,OADA7hB,EAAU1qG,UAAYA,EACf0qG,CACT,CA8QW8hB,CAAWvoB,EAAMlB,IAAK/iG,GAGzBm+F,EAAMvpG,EAAIqvG,EAAMZ,oBAAsBlF,EAAMvpG,EAAIA,EAAE68G,SAAWtT,EAAMvpG,EAAE8C,OACvE40H,EAA0B13H,EAAG0/D,GAE1B1/D,EAAI,EAAGA,EAAIinH,EAAIp5G,OAAO5N,SAAUD,EACnCinH,EAAIp5G,OAAO7N,GAAGqvG,EAAO3vC,GAEnB6pC,EAAMvpG,EAAIqvG,EAAMvsG,KAAKg4F,OAASyO,EAAMvpG,EAAIA,EAAE6N,QAC5C7N,EAAEqvG,EAAO3vC,GAETA,GAEJ,MACEy2D,EAAW9mB,EAAMlB,IAErB,CA4FA,SAAS0pB,EAAcziF,EAAM0iF,EAAOj/G,EAAOwY,GACzC,IAAK,IAAIrxB,EAAI6Y,EAAO7Y,EAAIqxB,EAAKrxB,IAAK,CAChC,IAAI6H,EAAIiwH,EAAM93H,GACd,GAAIupG,EAAM1hG,IAAMyjH,GAAUl2E,EAAMvtC,GAAM,OAAO7H,CAC/C,CACF,CAEA,SAAS+3H,EACP1b,EACAhN,EACAgnB,EACAI,EACAxyG,EACA+zG,GAEA,GAAI3b,IAAahN,EAAjB,CAII9F,EAAM8F,EAAMlB,MAAQ5E,EAAMktB,KAE5BpnB,EAAQonB,EAAWxyG,GAASmrF,GAAWC,IAGzC,IAAIlB,EAAMkB,EAAMlB,IAAMkO,EAASlO,IAE/B,GAAI3E,EAAO6S,EAASrN,oBACdzF,EAAM8F,EAAMjB,aAAa6P,UAC3Bga,EAAQ5b,EAASlO,IAAKkB,EAAOgnB,GAE7BhnB,EAAML,oBAAqB,OAS/B,GAAIxF,EAAO6F,EAAMX,WACflF,EAAO6S,EAAS3N,WAChBW,EAAMhvG,MAAQg8G,EAASh8G,MACtBmpG,EAAO6F,EAAMR,WAAarF,EAAO6F,EAAMP,SAExCO,EAAMZ,kBAAoB4N,EAAS5N,sBALrC,CASA,IAAIzuG,EACA8C,EAAOusG,EAAMvsG,KACbymG,EAAMzmG,IAASymG,EAAMvpG,EAAI8C,EAAKg4F,OAASyO,EAAMvpG,EAAIA,EAAE87G,WACrD97G,EAAEq8G,EAAUhN,GAGd,IAAIyoB,EAAQzb,EAASpyG,SACjBgjC,EAAKoiE,EAAMplG,SACf,GAAIs/F,EAAMzmG,IAASq0H,EAAY9nB,GAAQ,CACrC,IAAKrvG,EAAI,EAAGA,EAAIinH,EAAIrzG,OAAO3T,SAAUD,EAAKinH,EAAIrzG,OAAO5T,GAAGq8G,EAAUhN,GAC9D9F,EAAMvpG,EAAI8C,EAAKg4F,OAASyO,EAAMvpG,EAAIA,EAAE4T,SAAW5T,EAAEq8G,EAAUhN,EACjE,CACI/F,EAAQ+F,EAAM7qG,MACZ+kG,EAAMuuB,IAAUvuB,EAAMt8D,GACpB6qF,IAAU7qF,GAxJpB,SAAyBqpF,EAAWwB,EAAOI,EAAO7B,EAAoB2B,GACpE,IAQIG,EAAaC,EAAUC,EARvBC,EAAc,EACdC,EAAc,EACdC,EAAYV,EAAM73H,OAAS,EAC3Bw4H,EAAgBX,EAAM,GACtBY,EAAcZ,EAAMU,GACpBG,EAAYT,EAAMj4H,OAAS,EAC3B24H,EAAgBV,EAAM,GACtBW,EAAcX,EAAMS,GAMpBG,GAAWd,EAMf,KAAOM,GAAeE,GAAaD,GAAeI,GAC5CrvB,EAAQmvB,GACVA,EAAgBX,IAAQQ,GACfhvB,EAAQovB,GACjBA,EAAcZ,IAAQU,GACblN,GAAUmN,EAAeG,IAClCb,EAAWU,EAAeG,EAAevC,EAAoB6B,EAAOK,GACpEE,EAAgBX,IAAQQ,GACxBM,EAAgBV,IAAQK,IACfjN,GAAUoN,EAAaG,IAChCd,EAAWW,EAAaG,EAAaxC,EAAoB6B,EAAOS,GAChED,EAAcZ,IAAQU,GACtBK,EAAcX,IAAQS,IACbrN,GAAUmN,EAAeI,IAClCd,EAAWU,EAAeI,EAAaxC,EAAoB6B,EAAOS,GAClEG,GAAWtO,EAAQ5uG,aAAa06G,EAAWmC,EAActqB,IAAKqc,EAAQM,YAAY4N,EAAYvqB,MAC9FsqB,EAAgBX,IAAQQ,GACxBO,EAAcX,IAAQS,IACbrN,GAAUoN,EAAaE,IAChCb,EAAWW,EAAaE,EAAevC,EAAoB6B,EAAOK,GAClEO,GAAWtO,EAAQ5uG,aAAa06G,EAAWoC,EAAYvqB,IAAKsqB,EAActqB,KAC1EuqB,EAAcZ,IAAQU,GACtBI,EAAgBV,IAAQK,KAEpBjvB,EAAQ6uB,KAAgBA,EAAczM,GAAkBoM,EAAOQ,EAAaE,IAI5ElvB,EAHJ8uB,EAAW7uB,EAAMqvB,EAAcv4H,KAC3B83H,EAAYS,EAAcv4H,KAC1Bw3H,EAAae,EAAed,EAAOQ,EAAaE,IAElDpC,EAAUwC,EAAevC,EAAoBC,EAAWmC,EAActqB,KAAK,EAAO+pB,EAAOK,GAGrFjN,GADJ+M,EAAcP,EAAMM,GACOQ,IACzBb,EAAWM,EAAaO,EAAevC,EAAoB6B,EAAOK,GAClET,EAAMM,QAAYv0H,EAClBi1H,GAAWtO,EAAQ5uG,aAAa06G,EAAW+B,EAAYlqB,IAAKsqB,EAActqB,MAG1EioB,EAAUwC,EAAevC,EAAoBC,EAAWmC,EAActqB,KAAK,EAAO+pB,EAAOK,GAG7FK,EAAgBV,IAAQK,IAGxBD,EAAcE,EAEhBlB,EAAUhB,EADDhtB,EAAQ4uB,EAAMS,EAAY,IAAM,KAAOT,EAAMS,EAAY,GAAGxqB,IACxC+pB,EAAOK,EAAaI,EAAWtC,GACnDkC,EAAcI,GACvBlB,EAAaK,EAAOQ,EAAaE,EAErC,CAkF0BO,CAAe5qB,EAAK2pB,EAAO7qF,EAAIopF,EAAoB2B,GAC9DzuB,EAAMt8D,IAIXs8D,EAAM8S,EAAS73G,OAASgmH,EAAQO,eAAe5c,EAAK,IACxDmpB,EAAUnpB,EAAK,KAAMlhE,EAAI,EAAGA,EAAGhtC,OAAS,EAAGo2H,IAClC9sB,EAAMuuB,GACfL,EAAaK,EAAO,EAAGA,EAAM73H,OAAS,GAC7BspG,EAAM8S,EAAS73G,OACxBgmH,EAAQO,eAAe5c,EAAK,IAErBkO,EAAS73G,OAAS6qG,EAAM7qG,MACjCgmH,EAAQO,eAAe5c,EAAKkB,EAAM7qG,MAEhC+kG,EAAMzmG,IACJymG,EAAMvpG,EAAI8C,EAAKg4F,OAASyO,EAAMvpG,EAAIA,EAAEg5H,YAAch5H,EAAEq8G,EAAUhN,EAhCpE,CA7BA,CA+DF,CAEA,SAAS4pB,EAAkB5pB,EAAO/qB,EAAO40C,GAGvC,GAAI1vB,EAAO0vB,IAAY3vB,EAAM8F,EAAMn3F,QACjCm3F,EAAMn3F,OAAOpV,KAAKo0H,cAAgB5yC,OAElC,IAAK,IAAItkF,EAAI,EAAGA,EAAIskF,EAAMrkF,SAAUD,EAClCskF,EAAMtkF,GAAG8C,KAAKg4F,KAAK7rF,OAAOq1E,EAAMtkF,GAGtC,CAEA,IAKIm5H,EAAmBvvB,EAAQ,2CAG/B,SAASquB,EAAS9pB,EAAKkB,EAAOgnB,EAAoB+C,GAChD,IAAIp5H,EACA6K,EAAMwkG,EAAMxkG,IACZ/H,EAAOusG,EAAMvsG,KACbmH,EAAWolG,EAAMplG,SAIrB,GAHAmvH,EAASA,GAAWt2H,GAAQA,EAAKk9G,IACjC3Q,EAAMlB,IAAMA,EAER3E,EAAO6F,EAAMT,YAAcrF,EAAM8F,EAAMjB,cAEzC,OADAiB,EAAML,oBAAqB,GACpB,EAQT,GAAIzF,EAAMzmG,KACJymG,EAAMvpG,EAAI8C,EAAKg4F,OAASyO,EAAMvpG,EAAIA,EAAEgrC,OAAShrC,EAAEqvG,GAAO,GACtD9F,EAAMvpG,EAAIqvG,EAAMZ,oBAGlB,OADAkoB,EAActnB,EAAOgnB,IACd,EAGX,GAAI9sB,EAAM1+F,GAAM,CACd,GAAI0+F,EAAMt/F,GAER,GAAKkkG,EAAIkrB,gBAIP,GAAI9vB,EAAMvpG,EAAI8C,IAASymG,EAAMvpG,EAAIA,EAAEsW,WAAaizF,EAAMvpG,EAAIA,EAAEq/F,YAC1D,GAAIr/F,IAAMmuG,EAAI9O,UAWZ,OAAO,MAEJ,CAIL,IAFA,IAAIi6B,GAAgB,EAChB7P,EAAYtb,EAAI15F,WACXuyG,EAAM,EAAGA,EAAM/8G,EAAShK,OAAQ+mH,IAAO,CAC9C,IAAKyC,IAAcwO,EAAQxO,EAAWx/G,EAAS+8G,GAAMqP,EAAoB+C,GAAS,CAChFE,GAAgB,EAChB,KACF,CACA7P,EAAYA,EAAUqB,WACxB,CAGA,IAAKwO,GAAiB7P,EAUpB,OAAO,CAEX,MA1CAuN,EAAe3nB,EAAOplG,EAAUosH,GA6CpC,GAAI9sB,EAAMzmG,GAAO,CACf,IAAIy2H,GAAa,EACjB,IAAK,IAAIl5H,KAAOyC,EACd,IAAKq2H,EAAiB94H,GAAM,CAC1Bk5H,GAAa,EACbtC,EAAkB5nB,EAAOgnB,GACzB,KACF,EAEGkD,GAAcz2H,EAAY,OAE7BoyG,GAASpyG,EAAY,MAEzB,CACF,MAAWqrG,EAAIrrG,OAASusG,EAAM7qG,OAC5B2pG,EAAIrrG,KAAOusG,EAAM7qG,MAEnB,OAAO,CACT,CAaA,OAAO,SAAgB63G,EAAUhN,EAAOqM,EAAWsc,GACjD,IAAI1uB,EAAQ+F,GAAZ,CAKA,IA7lBoBlB,EA6lBhBqrB,GAAiB,EACjBnD,EAAqB,GAEzB,GAAI/sB,EAAQ+S,GAEVmd,GAAiB,EACjBpD,EAAU/mB,EAAOgnB,OACZ,CACL,IAAIoD,EAAgBlwB,EAAM8S,EAAS1pD,UACnC,IAAK8mE,GAAiBnO,GAAUjP,EAAUhN,GAExC0oB,EAAW1b,EAAUhN,EAAOgnB,EAAoB,KAAM,KAAM2B,OACvD,CACL,GAAIyB,EAAe,CAQjB,GAJ0B,IAAtBpd,EAAS1pD,UAAkB0pD,EAASqd,aAAa3uB,KACnDsR,EAASnpB,gBAAgB6X,GACzB2Q,GAAY,GAEVlS,EAAOkS,IACLuc,EAAQ5b,EAAUhN,EAAOgnB,GAE3B,OADA4C,EAAiB5pB,EAAOgnB,GAAoB,GACrCha,EArnBGlO,EAkoBSkO,EAAvBA,EAjoBC,IAAInO,GAAMsc,EAAQC,QAAQtc,GAAKxsF,cAAe,CAAC,EAAG,QAAI9d,EAAWsqG,EAkoBpE,CAGA,IAAIwrB,EAAStd,EAASlO,IAClBmoB,EAAY9L,EAAQn2G,WAAWslH,GAcnC,GAXAvD,EACE/mB,EACAgnB,EAIAsD,EAAOhG,SAAW,KAAO2C,EACzB9L,EAAQM,YAAY6O,IAIlBpwB,EAAM8F,EAAMn3F,QAGd,IAFA,IAAIm/G,EAAWhoB,EAAMn3F,OACjB0hH,EAAYzC,EAAY9nB,GACrBgoB,GAAU,CACf,IAAK,IAAIr3H,EAAI,EAAGA,EAAIinH,EAAI1rG,QAAQtb,SAAUD,EACxCinH,EAAI1rG,QAAQvb,GAAGq3H,GAGjB,GADAA,EAASlpB,IAAMkB,EAAMlB,IACjByrB,EAAW,CACb,IAAK,IAAI5S,EAAM,EAAGA,EAAMC,EAAIjoH,OAAOiB,SAAU+mH,EAC3CC,EAAIjoH,OAAOgoH,GAAKqE,GAAWgM,GAK7B,IAAIpoH,EAASooH,EAASv0H,KAAKg4F,KAAK7rF,OAChC,GAAIA,EAAO2gB,OAET,IAAK,IAAIiqG,EAAM,EAAGA,EAAM5qH,EAAOqZ,IAAIroB,OAAQ45H,IACzC5qH,EAAOqZ,IAAIuxG,IAGjB,MACE5O,GAAYoM,GAEdA,EAAWA,EAASn/G,MACtB,CAIEqxF,EAAM+sB,GACRmB,EAAa,CAACpb,GAAW,EAAG,GACnB9S,EAAM8S,EAASxxG,MACxB2sH,EAAkBnb,EAEtB,CACF,CAGA,OADA4c,EAAiB5pB,EAAOgnB,EAAoBmD,GACrCnqB,EAAMlB,GAjGb,CAFM5E,EAAM8S,IAAamb,EAAkBnb,EAoG7C,CACF,CAmuCYyd,CAAoB,CAAEtP,QAASA,GAAS18E,QAf9B,CACpBr4B,GACAu4G,GACA/oE,GACA3uC,GACAJ,GAlBeu2F,EAAY,CAC3BztG,OAAQi3H,GACRY,SAAUZ,GACVpoH,OAAQ,SAAoBwhG,EAAO3vC,IAET,IAApB2vC,EAAMvsG,KAAK4M,KACb+lH,GAAMpmB,EAAO3vC,GAEbA,GAEJ,GACE,CAAC,GAeyB/9D,OAAOirH,MAUjC7f,GAEFrvG,SAASwd,iBAAiB,mBAAmB,WAC3C,IAAIuS,EAAK/vB,SAASoP,cACd2gB,GAAMA,EAAGssG,QACX78B,GAAQzvE,EAAI,QAEhB,IAGF,IAAI8wE,GAAY,CACdiR,SAAU,SAAmB/hF,EAAIipC,EAAS24C,EAAOgN,GAC7B,WAAdhN,EAAMxkG,KAEJwxG,EAASlO,MAAQkO,EAASlO,IAAI6rB,UAChC/jB,GAAe5G,EAAO,aAAa,WACjC9Q,GAAUiuB,iBAAiB/+F,EAAIipC,EAAS24C,EAC1C,IAEA4qB,GAAYxsG,EAAIipC,EAAS24C,EAAMzsF,SAEjC6K,EAAGusG,UAAY,GAAGxnH,IAAIlF,KAAKmgB,EAAGhpB,QAASmnD,MAChB,aAAdyjD,EAAMxkG,KAAsB0/G,GAAgB98F,EAAGnnB,SACxDmnB,EAAG2hG,YAAc14D,EAAQ//C,UACpB+/C,EAAQ//C,UAAUsrG,OACrBx0F,EAAGvS,iBAAiB,mBAAoBg/G,IACxCzsG,EAAGvS,iBAAiB,iBAAkBi/G,IAKtC1sG,EAAGvS,iBAAiB,SAAUi/G,IAE1BptB,IACFt/E,EAAGssG,QAAS,IAIpB,EAEAvN,iBAAkB,SAA2B/+F,EAAIipC,EAAS24C,GACxD,GAAkB,WAAdA,EAAMxkG,IAAkB,CAC1BovH,GAAYxsG,EAAIipC,EAAS24C,EAAMzsF,SAK/B,IAAIw3G,EAAc3sG,EAAGusG,UACjBK,EAAa5sG,EAAGusG,UAAY,GAAGxnH,IAAIlF,KAAKmgB,EAAGhpB,QAASmnD,IACxD,GAAIyuE,EAAWllG,MAAK,SAAUztB,EAAG1H,GAAK,OAAQwqG,EAAW9iG,EAAG0yH,EAAYp6H,GAAK,KAG3DytB,EAAGi9F,SACfh0D,EAAQ95D,MAAMu4B,MAAK,SAAUrmB,GAAK,OAAOwrH,GAAoBxrH,EAAGurH,EAAa,IAC7E3jE,EAAQ95D,QAAU85D,EAAQytC,UAAYm2B,GAAoB5jE,EAAQ95D,MAAOy9H,KAE3En9B,GAAQzvE,EAAI,SAGlB,CACF,GAGF,SAASwsG,GAAaxsG,EAAIipC,EAAS66C,GACjCgpB,GAAoB9sG,EAAIipC,EAAS66C,IAE7BjmB,GAAQ0hB,KACVj0F,YAAW,WACTwhH,GAAoB9sG,EAAIipC,EAAS66C,EACnC,GAAG,EAEP,CAEA,SAASgpB,GAAqB9sG,EAAIipC,EAAS66C,GACzC,IAAI30G,EAAQ85D,EAAQ95D,MAChB49H,EAAa/sG,EAAGi9F,SACpB,IAAI8P,GAAezyH,MAAMmF,QAAQtQ,GAAjC,CASA,IADA,IAAI69H,EAAUC,EACL16H,EAAI,EAAG4H,EAAI6lB,EAAGhpB,QAAQxE,OAAQD,EAAI4H,EAAG5H,IAE5C,GADA06H,EAASjtG,EAAGhpB,QAAQzE,GAChBw6H,EACFC,EAAW3vB,EAAaluG,EAAOgvD,GAAS8uE,KAAY,EAChDA,EAAOD,WAAaA,IACtBC,EAAOD,SAAWA,QAGpB,GAAIjwB,EAAW5+C,GAAS8uE,GAAS99H,GAI/B,YAHI6wB,EAAGktG,gBAAkB36H,IACvBytB,EAAGktG,cAAgB36H,IAMtBw6H,IACH/sG,EAAGktG,eAAiB,EAnBtB,CAqBF,CAEA,SAASL,GAAqB19H,EAAO6H,GACnC,OAAOA,EAAQ2wB,OAAM,SAAU1tB,GAAK,OAAQ8iG,EAAW9iG,EAAG9K,EAAQ,GACpE,CAEA,SAASgvD,GAAU8uE,GACjB,MAAO,WAAYA,EACfA,EAAO7L,OACP6L,EAAO99H,KACb,CAEA,SAASs9H,GAAoBp8H,GAC3BA,EAAEgC,OAAOmvH,WAAY,CACvB,CAEA,SAASkL,GAAkBr8H,GAEpBA,EAAEgC,OAAOmvH,YACdnxH,EAAEgC,OAAOmvH,WAAY,EACrB/xB,GAAQp/F,EAAEgC,OAAQ,SACpB,CAEA,SAASo9F,GAASzvE,EAAInnB,GACpB,IAAIxI,EAAIJ,SAASynD,YAAY,cAC7BrnD,EAAEsnD,UAAU9+C,GAAM,GAAM,GACxBmnB,EAAG63B,cAAcxnD,EACnB,CAKA,SAAS88H,GAAYvrB,GACnB,OAAOA,EAAMZ,mBAAuBY,EAAMvsG,MAASusG,EAAMvsG,KAAK+wH,WAE1DxkB,EADAurB,GAAWvrB,EAAMZ,kBAAkBoO,OAEzC,CAEA,IAAIntG,GAAO,CACTR,KAAM,SAAeue,EAAIjY,EAAK65F,GAC5B,IAAIzyG,EAAQ4Y,EAAI5Y,MAGZi+H,GADJxrB,EAAQurB,GAAWvrB,IACOvsG,MAAQusG,EAAMvsG,KAAK+wH,WACzCiH,EAAkBrtG,EAAGstG,mBACF,SAArBttG,EAAGvX,MAAMuvB,QAAqB,GAAKhY,EAAGvX,MAAMuvB,QAC1C7oC,GAASi+H,GACXxrB,EAAMvsG,KAAK4M,MAAO,EAClB+jH,GAAMpkB,GAAO,WACX5hF,EAAGvX,MAAMuvB,QAAUq1F,CACrB,KAEArtG,EAAGvX,MAAMuvB,QAAU7oC,EAAQk+H,EAAkB,MAEjD,EAEAlnH,OAAQ,SAAiB6Z,EAAIjY,EAAK65F,GAChC,IAAIzyG,EAAQ4Y,EAAI5Y,OAIXA,IAHU4Y,EAAI2uF,YAInBkL,EAAQurB,GAAWvrB,IACOvsG,MAAQusG,EAAMvsG,KAAK+wH,YAE3CxkB,EAAMvsG,KAAK4M,MAAO,EACd9S,EACF62H,GAAMpkB,GAAO,WACX5hF,EAAGvX,MAAMuvB,QAAUhY,EAAGstG,kBACxB,IAEAtF,GAAMpmB,GAAO,WACX5hF,EAAGvX,MAAMuvB,QAAU,MACrB,KAGFhY,EAAGvX,MAAMuvB,QAAU7oC,EAAQ6wB,EAAGstG,mBAAqB,OAEvD,EAEAz2B,OAAQ,SACN72E,EACAipC,EACA24C,EACAgN,EACA2P,GAEKA,IACHv+F,EAAGvX,MAAMuvB,QAAUhY,EAAGstG,mBAE1B,GAGEC,GAAqB,CACvB/b,MAAO1gB,GACP7uF,KAAMA,IAKJurH,GAAkB,CACpBh6H,KAAMmI,OACNkrH,OAAQ/sH,QACR4L,IAAK5L,QACLihC,KAAMp/B,OACN9C,KAAM8C,OACN6nH,WAAY7nH,OACZgoH,WAAYhoH,OACZ8nH,aAAc9nH,OACdioH,aAAcjoH,OACd+nH,iBAAkB/nH,OAClBkoH,iBAAkBloH,OAClB2qH,YAAa3qH,OACb6qH,kBAAmB7qH,OACnB4qH,cAAe5qH,OACfypB,SAAU,CAAC9Y,OAAQ3Q,OAAQ3M,SAK7B,SAASy+H,GAAc7rB,GACrB,IAAI8rB,EAAc9rB,GAASA,EAAMzkG,iBACjC,OAAIuwH,GAAeA,EAAYhlE,KAAK1xD,QAAQ66G,SACnC4b,GAAa7a,GAAuB8a,EAAYlxH,WAEhDolG,CAEX,CAEA,SAAS+rB,GAAuBhb,GAC9B,IAAIt9G,EAAO,CAAC,EACR2B,EAAU27G,EAAKjvG,SAEnB,IAAK,IAAI9Q,KAAOoE,EAAQ2uG,UACtBtwG,EAAKzC,GAAO+/G,EAAK//G,GAInB,IAAI+K,EAAY3G,EAAQw4G,iBACxB,IAAK,IAAInL,KAAS1mG,EAChBtI,EAAKmnG,EAAS6H,IAAU1mG,EAAU0mG,GAEpC,OAAOhvG,CACT,CAEA,SAASu4H,GAAax5H,EAAGy5H,GACvB,GAAI,iBAAiB7tH,KAAK6tH,EAASzwH,KACjC,OAAOhJ,EAAE,aAAc,CACrB9B,MAAOu7H,EAAS1wH,iBAAiBwoG,WAGvC,CAcA,IAAImoB,GAAgB,SAAU1zH,GAAK,OAAOA,EAAEgD,KAAOmkG,GAAmBnnG,EAAI,EAEtE2zH,GAAmB,SAAU1zH,GAAK,MAAkB,SAAXA,EAAE7G,IAAiB,EAE5Dw6H,GAAa,CACfx6H,KAAM,aACNlB,MAAOk7H,GACP3b,UAAU,EAEV5wG,OAAQ,SAAiB7M,GACvB,IAAIm5G,EAASp6G,KAETqJ,EAAWrJ,KAAK4K,OAAO3M,QAC3B,GAAKoL,IAKLA,EAAWA,EAASrI,OAAO25H,KAEbt7H,OAAd,CAKI,EAQJ,IAAIuoC,EAAO5nC,KAAK4nC,KAGZ,EASJ,IAAI8yF,EAAWrxH,EAAS,GAIxB,GA7DJ,SAA8BolG,GAC5B,KAAQA,EAAQA,EAAMn3F,QACpB,GAAIm3F,EAAMvsG,KAAK+wH,WACb,OAAO,CAGb,CAuDQ6H,CAAoB96H,KAAKoX,QAC3B,OAAOsjH,EAKT,IAAIhnF,EAAQ4mF,GAAaI,GAEzB,IAAKhnF,EACH,OAAOgnF,EAGT,GAAI16H,KAAK+6H,SACP,OAAON,GAAYx5H,EAAGy5H,GAMxB,IAAIrpH,EAAK,gBAAmBrR,KAAS,KAAI,IACzC0zC,EAAMj0C,IAAmB,MAAbi0C,EAAMj0C,IACdi0C,EAAMs6D,UACJ38F,EAAK,UACLA,EAAKqiC,EAAMzpC,IACbu1E,EAAY9rC,EAAMj0C,KACmB,IAAlC+I,OAAOkrC,EAAMj0C,KAAKqG,QAAQuL,GAAYqiC,EAAMj0C,IAAM4R,EAAKqiC,EAAMj0C,IAC9Di0C,EAAMj0C,IAEZ,IAAIyC,GAAQwxC,EAAMxxC,OAASwxC,EAAMxxC,KAAO,CAAC,IAAI+wH,WAAauH,GAAsBx6H,MAC5Eg7H,EAAch7H,KAAKi8G,OACnBgf,EAAWX,GAAaU,GAQ5B,GAJItnF,EAAMxxC,KAAK4F,YAAc4rC,EAAMxxC,KAAK4F,WAAWysB,KAAKqmG,MACtDlnF,EAAMxxC,KAAK4M,MAAO,GAIlBmsH,GACAA,EAAS/4H,OA7Ff,SAAsBwxC,EAAOunF,GAC3B,OAAOA,EAASx7H,MAAQi0C,EAAMj0C,KAAOw7H,EAAShxH,MAAQypC,EAAMzpC,GAC9D,CA4FOixH,CAAYxnF,EAAOunF,KACnB7sB,GAAmB6sB,MAElBA,EAASptB,oBAAqBotB,EAASptB,kBAAkBoO,OAAOjO,WAClE,CAGA,IAAI8e,EAAUmO,EAAS/4H,KAAK+wH,WAAahxG,EAAO,CAAC,EAAG/f,GAEpD,GAAa,WAAT0lC,EAOF,OALA5nC,KAAK+6H,UAAW,EAChB1lB,GAAeyX,EAAS,cAAc,WACpC1S,EAAO2gB,UAAW,EAClB3gB,EAAOmC,cACT,IACOke,GAAYx5H,EAAGy5H,GACjB,GAAa,WAAT9yF,EAAmB,CAC5B,GAAIwmE,GAAmB16D,GACrB,OAAOsnF,EAET,IAAIG,EACAhG,EAAe,WAAcgG,GAAgB,EACjD9lB,GAAenzG,EAAM,aAAcizH,GACnC9f,GAAenzG,EAAM,iBAAkBizH,GACvC9f,GAAeyX,EAAS,cAAc,SAAU+H,GAASsG,EAAetG,CAAO,GACjF,CACF,CAEA,OAAO6F,CAjGP,CAkGF,GAKEv7H,GAAQ8iB,EAAO,CACjBhY,IAAKzB,OACL4yH,UAAW5yH,QACV6xH,IAwIH,SAASgB,GAAgBp0H,GAEnBA,EAAEsmG,IAAI+tB,SACRr0H,EAAEsmG,IAAI+tB,UAGJr0H,EAAEsmG,IAAI2lB,UACRjsH,EAAEsmG,IAAI2lB,UAEV,CAEA,SAASqI,GAAgBt0H,GACvBA,EAAE/E,KAAKs5H,OAASv0H,EAAEsmG,IAAI9f,uBACxB,CAEA,SAASguC,GAAkBx0H,GACzB,IAAIy0H,EAASz0H,EAAE/E,KAAK+lC,IAChBuzF,EAASv0H,EAAE/E,KAAKs5H,OAChB79E,EAAK+9E,EAAO/uC,KAAO6uC,EAAO7uC,KAC1B/uC,EAAK89E,EAAOjvC,IAAM+uC,EAAO/uC,IAC7B,GAAI9uC,GAAMC,EAAI,CACZ32C,EAAE/E,KAAKy5H,OAAQ,EACf,IAAI50H,EAAIE,EAAEsmG,IAAIj4F,MACdvO,EAAEgvD,UAAYhvD,EAAE60H,gBAAkB,aAAej+E,EAAK,MAAQC,EAAK,MACnE72C,EAAE80H,mBAAqB,IACzB,CACF,QAhKO18H,GAAMyoC,KAkKb,IAAIk0F,GAAqB,CACvBjB,WAAYA,GACZkB,gBAlKoB,CACpB58H,MAAOA,GAEPiM,YAAa,WACX,IAAIgvG,EAASp6G,KAETgT,EAAShT,KAAKumH,QAClBvmH,KAAKumH,QAAU,SAAU9X,EAAOqM,GAC9B,IAAI4L,EAAwB5G,GAAkB1F,GAE9CA,EAAOuM,UACLvM,EAAO6B,OACP7B,EAAO4hB,MACP,GACA,GAEF5hB,EAAO6B,OAAS7B,EAAO4hB,KACvBtV,IACA1zG,EAAOtG,KAAK0tG,EAAQ3L,EAAOqM,EAC7B,CACF,EAEAhtG,OAAQ,SAAiB7M,GAQvB,IAPA,IAAIgJ,EAAMjK,KAAKiK,KAAOjK,KAAKoX,OAAOlV,KAAK+H,KAAO,OAC1C2H,EAAM/V,OAAOuC,OAAO,MACpB69H,EAAej8H,KAAKi8H,aAAej8H,KAAKqJ,SACxC6yH,EAAcl8H,KAAK4K,OAAO3M,SAAW,GACrCoL,EAAWrJ,KAAKqJ,SAAW,GAC3B8yH,EAAiB3B,GAAsBx6H,MAElCZ,EAAI,EAAGA,EAAI88H,EAAY78H,OAAQD,IAAK,CAC3C,IAAI6H,EAAIi1H,EAAY98H,GACpB,GAAI6H,EAAEgD,IACJ,GAAa,MAAThD,EAAExH,KAAoD,IAArC+I,OAAOvB,EAAExH,KAAKqG,QAAQ,WACzCuD,EAAS1M,KAAKsK,GACd2K,EAAI3K,EAAExH,KAAOwH,GACXA,EAAE/E,OAAS+E,EAAE/E,KAAO,CAAC,IAAI+wH,WAAakJ,OAO9C,CAEA,GAAIF,EAAc,CAGhB,IAFA,IAAID,EAAO,GACPlkG,EAAU,GACLsuF,EAAM,EAAGA,EAAM6V,EAAa58H,OAAQ+mH,IAAO,CAClD,IAAIgW,EAAMH,EAAa7V,GACvBgW,EAAIl6H,KAAK+wH,WAAakJ,EACtBC,EAAIl6H,KAAK+lC,IAAMm0F,EAAI7uB,IAAI9f,wBACnB77E,EAAIwqH,EAAI38H,KACVu8H,EAAKr/H,KAAKy/H,GAEVtkG,EAAQn7B,KAAKy/H,EAEjB,CACAp8H,KAAKg8H,KAAO/6H,EAAEgJ,EAAK,KAAM+xH,GACzBh8H,KAAK83B,QAAUA,CACjB,CAEA,OAAO72B,EAAEgJ,EAAK,KAAMZ,EACtB,EAEAk+G,QAAS,WACP,IAAIl+G,EAAWrJ,KAAKi8H,aAChBb,EAAYp7H,KAAKo7H,YAAep7H,KAAKK,MAAQ,KAAO,QACnDgJ,EAAShK,QAAWW,KAAKq8H,QAAQhzH,EAAS,GAAGkkG,IAAK6tB,KAMvD/xH,EAASlM,QAAQk+H,IACjBhyH,EAASlM,QAAQo+H,IACjBlyH,EAASlM,QAAQs+H,IAKjBz7H,KAAKs8H,QAAUx/H,SAASie,KAAKizE,aAE7B3kF,EAASlM,SAAQ,SAAU8J,GACzB,GAAIA,EAAE/E,KAAKy5H,MAAO,CAChB,IAAI9uG,EAAK5lB,EAAEsmG,IACPxmG,EAAI8lB,EAAGvX,MACXk8G,GAAmB3kG,EAAIuuG,GACvBr0H,EAAEgvD,UAAYhvD,EAAE60H,gBAAkB70H,EAAE80H,mBAAqB,GACzDhvG,EAAGvS,iBAAiBy2G,GAAoBlkG,EAAGyuG,QAAU,SAASn7C,EAAIjjF,GAC5DA,GAAKA,EAAEgC,SAAW2tB,GAGjB3vB,IAAK,aAAa2P,KAAK3P,EAAEq/H,gBAC5B1vG,EAAGpS,oBAAoBs2G,GAAoB5wC,GAC3CtzD,EAAGyuG,QAAU,KACb5J,GAAsB7kG,EAAIuuG,GAE9B,EACF,CACF,IACF,EAEA7vH,QAAS,CACP8wH,QAAS,SAAkBxvG,EAAIuuG,GAE7B,IAAKzK,GACH,OAAO,EAGT,GAAI3wH,KAAKw8H,SACP,OAAOx8H,KAAKw8H,SAOd,IAAI7hB,EAAQ9tF,EAAG4vG,YACX5vG,EAAGogG,oBACLpgG,EAAGogG,mBAAmB9vH,SAAQ,SAAU4vH,GAAOkD,GAAYtV,EAAOoS,EAAM,IAE1EiD,GAASrV,EAAOygB,GAChBzgB,EAAMrlG,MAAMuvB,QAAU,OACtB7kC,KAAKuN,IAAI8F,YAAYsnG,GACrB,IAAItH,EAAOwe,GAAkBlX,GAE7B,OADA36G,KAAKuN,IAAImG,YAAYinG,GACb36G,KAAKw8H,SAAWnpB,EAAKof,YAC/B,KAwCJr3B,GAAI91F,OAAO8lG,YAr3FO,SAAUnhG,EAAKvE,EAAMg3H,GACrC,MACY,UAATA,GAAoBtU,GAAYn+G,IAAkB,WAATvE,GAChC,aAATg3H,GAA+B,WAARzyH,GACd,YAATyyH,GAA8B,UAARzyH,GACb,UAATyyH,GAA4B,UAARzyH,CAEzB,EA+2FAmxF,GAAI91F,OAAOylG,cAAgBA,GAC3B3P,GAAI91F,OAAO0lG,eAAiBA,GAC5B5P,GAAI91F,OAAO4lG,gBAxtFX,SAA0BjhG,GACxB,OAAIw/G,GAAMx/G,GACD,MAIG,SAARA,EACK,YADT,CAGF,EAgtFAmxF,GAAI91F,OAAO2lG,iBA7sFX,SAA2BhhG,GAEzB,IAAK4hG,EACH,OAAO,EAET,GAAId,GAAc9gG,GAChB,OAAO,EAIT,GAFAA,EAAMA,EAAI8W,cAEsB,MAA5B2oG,GAAoBz/G,GACtB,OAAOy/G,GAAoBz/G,GAE7B,IAAI4iB,EAAK/vB,SAASwW,cAAcrJ,GAChC,OAAIA,EAAInE,QAAQ,MAAQ,EAEd4jH,GAAoBz/G,GAC1B4iB,EAAGjgB,cAAgBxL,OAAOu7H,oBAC1B9vG,EAAGjgB,cAAgBxL,OAAOw7H,YAGpBlT,GAAoBz/G,GAAO,qBAAqB4C,KAAKggB,EAAGhqB,WAEpE,EAyrFAof,EAAOm5E,GAAIv3F,QAAQiE,WAAYsyH,IAC/Bn4G,EAAOm5E,GAAIv3F,QAAQmE,WAAY8zH,IAG/B1gC,GAAI16F,UAAUimH,UAAY9a,EAAYnmB,GAAQvB,EAG9CiX,GAAI16F,UAAU86G,OAAS,SACrB3uF,EACAiuF,GAGA,OA30IF,SACEnK,EACA9jF,EACAiuF,GAyBA,IAAI+hB,EA2CJ,OAlEAlsB,EAAGpjG,IAAMsf,EACJ8jF,EAAGpgG,SAASzC,SACf6iG,EAAGpgG,SAASzC,OAASwgG,IAmBvBoO,GAAS/L,EAAI,eAsBXksB,EAAkB,WAChBlsB,EAAG4V,QAAQ5V,EAAGmW,UAAWhM,EAC3B,EAMF,IAAIkG,GAAQrQ,EAAIksB,EAAiB14C,EAAM,CACrC9zE,OAAQ,WACFsgG,EAAG8L,aAAe9L,EAAGoK,cACvB2B,GAAS/L,EAAI,eAEjB,IACC,GACHmK,GAAY,EAIK,MAAbnK,EAAGv5F,SACLu5F,EAAG8L,YAAa,EAChBC,GAAS/L,EAAI,YAERA,CACT,CAmwISmsB,CAAe98H,KADtB6sB,EAAKA,GAAMg/E,EA3rFb,SAAgBh/E,GACd,GAAkB,iBAAPA,EAAiB,CAE1B,OADe/vB,SAASiM,cAAc8jB,IAK7B/vB,SAASwW,cAAc,MAGlC,CACE,OAAOuZ,CAEX,CA8qFyBkwG,CAAMlwG,QAAM5pB,EACH63G,EAClC,EAIIjP,GACF1zF,YAAW,WACL7S,EAAOmlG,UACLA,IACFA,GAAShqG,KAAK,OAAQ26F,GAsB5B,GAAG,GAKL,yCC5yQA,IAAIj+F,EAAU,EAAQ,MAClB+qD,EAAuB,EAAQ,MAC/BX,EAAY,EAAQ,MAEpBD,EAAYC,EAAU,6BACtBF,EAAiB,EAAQ,KAAR,GAEjBx/C,EAA0B,oBAAf24B,WAA6B,EAAA34B,EAAS24B,WACjD2nB,EAAcD,IAEdE,EAASb,EAAU,0BACnBc,EAAY,CAAC,EACbC,EAAO,EAAQ,KACft6B,EAAiBnyB,OAAOmyB,eACxBq5B,GAAkBiB,GAAQt6B,GAC7B7wB,EAAQgrD,GAAa,SAAUI,GAC9B,GAA6B,mBAAlB1gD,EAAE0gD,GAA4B,CACxC,IAAIp8B,EAAM,IAAItkB,EAAE0gD,GAChB,GAAIh8C,OAAOwL,eAAeoU,EAAK,CAC9B,IAAI0P,EAAQ7N,EAAe7B,GACvB7sB,EAAagpD,EAAKzsB,EAAOtvB,OAAOwL,aACpC,IAAKzY,EAAY,CAChB,IAAIkpD,EAAax6B,EAAe6N,GAChCv8B,EAAagpD,EAAKE,EAAYj8C,OAAOwL,YACtC,CACAswC,EAAUE,GAAcjpD,EAAWpD,GACpC,CACD,CACD,IAGD,IAeIowB,EAAe,EAAQ,MAE3BjmB,EAAOtK,QAAU,SAAyBC,GACzC,QAAKswB,EAAatwB,KACbqrD,GAAoB96C,OAAOwL,eAAe/b,EAnB3B,SAA2BA,GAC/C,IAAIghI,GAAY,EAWhB,OAVA7/H,EAAQkrD,GAAW,SAAUK,EAAQH,GACpC,IAAKy0E,EACJ,IACC,IAAI38H,EAAOqoD,EAAOh8C,KAAK1Q,GACnBqE,IAASkoD,IACZy0E,EAAY38H,EAED,CAAX,MAAOnD,GAAI,CAEf,IACO8/H,CACR,CAOQr0E,CAAe3sD,GAD0CosD,EAAOd,EAAUtrD,GAAQ,GAAI,GAE9F,+BCpDA,IAAIihI,EAAgB,CACnB,gBACA,iBACA,eACA,eACA,aACA,aACA,YACA,cACA,cACA,aACA,qBAGGp1H,EAA0B,oBAAf24B,WAA6B,EAAA34B,EAAS24B,WAErDn6B,EAAOtK,QAAU,WAEhB,IADA,IAAI24E,EAAM,GACDt1E,EAAI,EAAGA,EAAI69H,EAAc59H,OAAQD,IACN,mBAAxByI,EAAEo1H,EAAc79H,MAC1Bs1E,EAAIA,EAAIr1E,QAAU49H,EAAc79H,IAGlC,OAAOs1E,CACR,8BCxBA,IAEItjD,EAFe,EAAQ,IAEfR,CAAa,qCAAqC,GAC9D,GAAIQ,EACH,IACCA,EAAM,GAAI,SAIX,CAHE,MAAOl0B,GAERk0B,EAAQ,IACT,CAGD/qB,EAAOtK,QAAUq1B,ICbb8rG,EAA2B,CAAC,EAGhC,SAASC,EAAoBC,GAE5B,IAAIC,EAAeH,EAAyBE,GAC5C,QAAqBn6H,IAAjBo6H,EACH,OAAOA,EAAathI,QAGrB,IAAIsK,EAAS62H,EAAyBE,GAAY,CACjD/rH,GAAI+rH,EACJE,QAAQ,EACRvhI,QAAS,CAAC,GAUX,OANAwhI,EAAoBH,GAAU/2H,EAAQA,EAAOtK,QAASohI,GAGtD92H,EAAOi3H,QAAS,EAGTj3H,EAAOtK,OACf,CCxBAohI,EAAoB52H,EAAKF,IACxB,IAAIqiD,EAASriD,GAAUA,EAAOrI,WAC7B,IAAOqI,EAAiB,QACxB,IAAM,EAEP,OADA82H,EAAoBj2H,EAAEwhD,EAAQ,CAAEhmD,EAAGgmD,IAC5BA,CAAM,ECLdy0E,EAAoBj2H,EAAI,CAACnL,EAASksH,KACjC,IAAI,IAAIxoH,KAAOwoH,EACXkV,EAAoBr2H,EAAEmhH,EAAYxoH,KAAS09H,EAAoBr2H,EAAE/K,EAAS0D,IAC5E5D,OAAOC,eAAeC,EAAS0D,EAAK,CAAExD,YAAY,EAAMC,IAAK+rH,EAAWxoH,IAE1E,ECND09H,EAAoBt1H,EAAI,WACvB,GAA0B,iBAAf24B,WAAyB,OAAOA,WAC3C,IACC,OAAOxgC,MAAQ,IAAIygC,SAAS,cAAb,EAGhB,CAFE,MAAOvjC,GACR,GAAsB,iBAAXkE,OAAqB,OAAOA,MACxC,CACA,CAPuB,GCAxB+7H,EAAoBr2H,EAAI,CAACjJ,EAAKopB,IAAUprB,OAAO6E,UAAUoX,eAAepL,KAAK7O,EAAKopB,GCClFk2G,EAAoBv6H,EAAK7G,IACH,oBAAXwQ,QAA0BA,OAAOwL,aAC1Clc,OAAOC,eAAeC,EAASwQ,OAAOwL,YAAa,CAAE/b,MAAO,WAE7DH,OAAOC,eAAeC,EAAS,aAAc,CAAEC,OAAO,GAAO,ECL9DmhI,EAAoBK,IAAOn3H,IAC1BA,EAAOo3H,MAAQ,GACVp3H,EAAOgD,WAAUhD,EAAOgD,SAAW,IACjChD,GCHR82H,EAAoBz1H,EAAI,4GCsCxB,MCtC2K,EDsC3K,CACCxF,KAAM,aACNw7H,KAFc,WAGb,MAAO,CACNC,UAAUt9H,EAAAA,EAAAA,IAAiB,iBAAkB,MAAO,iBACpDuG,WAAWvG,EAAAA,EAAAA,IAAiB,iBAAkB,MAAO,kBAEtD,EACDu9H,SAAU,CACTC,kBADS,WAER,OAAOv3H,EAAE,iBAAkB,0BAA2B,CAAEu3H,UAAWz8H,OAAOzD,GAAGmgI,MAAM57H,MACnF,mIEtCC2B,EAAU,CAAC,EAEfA,EAAQsK,kBAAoB,IAC5BtK,EAAQuK,cAAgB,IAElBvK,EAAQwK,OAAS,SAAc,KAAM,QAE3CxK,EAAQ0K,OAAS,IACjB1K,EAAQ2K,mBAAqB,IAEhB,IAAI,IAAS3K,GAKJ,KAAW,YAAiB,yBCPlD,SAXgB,OACd,GCTW,WAAa,IAAI4jG,EAAIznG,KAASy6F,EAAGgN,EAAIlzF,eAAmBE,EAAGgzF,EAAIjzF,MAAMC,IAAIgmF,EAAG,OAAOhmF,EAAG,MAAM,CAAC1J,YAAY,iBAAiB,CAAC0J,EAAG,QAAQ,CAACG,IAAI,QAAQC,MAAM,CAAC,YAAc,GAAG,SAAW,GAAG,MAAQ,IAAIa,SAAS,CAAC,OAAQ,IAAO,CAACjB,EAAG,SAAS,CAACI,MAAM,CAAC,IAAM4yF,EAAIk2B,UAAU,KAAO,gBAAgBl2B,EAAIjyF,GAAG,KAAKf,EAAG,SAAS,CAACI,MAAM,CAAC,IAAM4yF,EAAIi2B,SAAS,KAAO,eAAej2B,EAAIjyF,GAAG,SAASiyF,EAAIhyF,GAAGgyF,EAAIm2B,mBAAmB,WAAW,GACvZ,IDWpB,EACA,KACA,WACA,MAI8B,+kCE0BhC,MC7C8J,ED6C9J,CACC/jH,KAAM,MACNkkH,WAAY,CACX19H,MAAAA,KAED29H,KALc,WAMb,MAAO,CACNC,WAAW,EACXC,WAAW,EACXC,OAAQ,GACRv3H,aAAc,EACdw3H,cAAe,OACfrlH,cAAc,EAEf,EACDD,SAAU,CACTulH,UADS,WAER,OAAIr+H,KAAKk+H,UACDl+H,KAAKm+H,OAEEn+H,KAAKm+H,OACNtnF,MAAM,EACpB,EACDynF,QARS,WASR,OAAOt+H,KAAK4G,aAAe5G,KAAKq+H,UAAUR,OAAS,CACnD,EACD93B,YAXS,WAYR,OAAO/lG,KAAK4G,aAAe,CAC3B,EACDxF,OAdS,WAeR,OAAOpB,KAAK4G,eAAiB5G,KAAKq+H,UAAUR,OAAS,CACrD,EACDrjH,QAjBS,WAkBR,OAA6B,IAAtBxa,KAAK4G,YACZ,EACD2E,gBApBS,WAqBR,OAAOgzH,EAAE,iBAAkB,0BAA2B,CAAE18G,UAAWzC,OAAOhiB,GAAGgL,MAAMyR,MACnF,GAEIwB,QAvCQ,WAuCE,0IACf,EAAK8iH,OAAS,CAACj8H,GACfkd,OAAOtN,iBAAiB,SAAU,EAAKqJ,UAFxB,4CAGf,EACDX,cA3Cc,WA4Cb4E,OAAO3E,oBAAoB,SAAUza,KAAKmb,SAC1C,EACD5P,QAAS,CACFgzH,iBADE,WACiB,sJACpB,EAAKxlH,aADe,0EAMA/Q,EAAAA,EAAAA,KAAUw2H,EAAAA,EAAAA,IAAY,gCANtB,OAMjBp/G,EANiB,QAOvB,IAAK++G,QAAOxhI,KAAZ,UAAoByiB,EAAS4+G,KAAKG,SAClC,EAAKD,UAAY9+G,EAAS4+G,KAAKS,SAC/B,EAAK1lH,cAAe,EATG,kDAWvB3b,EAAQC,MAAM,yBAXS,2DAaxB,EACK+K,KAfE,WAeqB,mKAAlB81H,IAAkB,0CACtB,EAAKK,mBADiB,OAE5B,EAAKL,UAAY,EAAKA,UAAYA,EAClC,EAAKD,WAAY,EACjB,EAAKr3H,aAAe,EAJQ,4CAK5B,EACDyU,MArBQ,WAsBPrb,KAAKi+H,WAAY,EACjBj2H,EAAAA,EAAAA,QAAaw2H,EAAAA,EAAAA,IAAY,+BACzB,EACD1sH,KAzBQ,WA0BP9R,KAAKo+H,cAAgB,OACjBp+H,KAAKoB,OACRpB,KAAKqb,QAGNrb,KAAK4G,cAAgB,CACrB,EACDuU,SAjCQ,WAkCPnb,KAAKo+H,cAAgB,WACjBp+H,KAAKwa,UAGTxa,KAAK4G,cAAgB,EACrB,kBEvHC,EAAU,CAAC,EAEf,EAAQuH,kBAAoB,IAC5B,EAAQC,cAAgB,IAElB,EAAQC,OAAS,SAAc,KAAM,QAE3C,EAAQE,OAAS,IACjB,EAAQC,mBAAqB,IAEhB,IAAI,IAAS,GAKJ,KAAW,YAAiB,wBCf9C,EAAU,CAAC,EAEf,EAAQL,kBAAoB,IAC5B,EAAQC,cAAgB,IAElB,EAAQC,OAAS,SAAc,KAAM,QAE3C,EAAQE,OAAS,IACjB,EAAQC,mBAAqB,IAEhB,IAAI,IAAS,GAKJ,KAAW,YAAiB,WCNlD,SAXgB,OACd,GCVW,WAAa,IAAIi5F,EAAIznG,KAASy6F,EAAGgN,EAAIlzF,eAAmBE,EAAGgzF,EAAIjzF,MAAMC,IAAIgmF,EAAG,OAAQgN,EAAI5tF,WAAa4tF,EAAI22B,UAAU/+H,OAAS,EAAGoV,EAAG,QAAQ,CAACI,MAAM,CAAC,GAAK,iBAAiB,KAAO,QAAQ,eAAe4yF,EAAI3uF,YAAY,WAAW2uF,EAAI1uF,QAAQ,oBAAoB,EAA0D,KAAO,SAAS1D,GAAG,CAAC,SAAWoyF,EAAItsF,SAAS,KAAOssF,EAAI31F,KAAK,MAAQ21F,EAAIpsF,QAAQ,CAAuB,IAArBosF,EAAIw2B,cAAuBx2B,EAAIs2B,UAAmVt2B,EAAI7xF,KAA5UnB,EAAG,MAAM,CAAC1J,YAAY,gBAAgB,CAAC0J,EAAG,MAAM,CAAC1J,YAAY,yBAAyB,CAAC0J,EAAG,MAAM,CAAC1J,YAAY,QAAQ,CAAC0J,EAAG,IAAI,CAAC1J,YAAY,mBAAmB,CAAC08F,EAAIjyF,GAAG,eAAeiyF,EAAIhyF,GAAGgyF,EAAIi3B,YAAYr+H,MAAM,kBAAkBonG,EAAIjyF,GAAG,KAAKf,EAAG,KAAK,CAACiB,SAAS,CAAC,UAAY+xF,EAAIhyF,GAAGgyF,EAAIi3B,YAAYC,WAAWl3B,EAAIjyF,GAAG,KAAKf,EAAG,SAAkBgzF,EAAIjyF,GAAG,KAAKf,EAAG,MAAM,CAAC1J,YAAY,cAAc,CAAE08F,EAAI22B,UAAU/+H,OAAS,EAAGooG,EAAIxyF,GAAG,QAAO,WAAW,MAAO,CAACR,EAAG,aAAa,CAACI,MAAM,CAAC,KAAO4yF,EAAIy2B,cAAc,KAAO,WAAW,CAA2C,WAAzCz2B,EAAI22B,UAAU32B,EAAIw2B,cAAcv4H,KAAmB+O,EAAG,MAAM,CAAChV,IAAIgoG,EAAIw2B,aAAavoH,SAAS,CAAC,UAAY+xF,EAAIhyF,GAAGgyF,EAAI22B,UAAU32B,EAAIw2B,cAActvG,YAAYla,EAAGgzF,EAAI22B,UAAU32B,EAAIw2B,cAAc,CAACh0H,IAAI,MAAMoL,GAAG,CAAC,SAAW,SAASwyF,GAAQJ,EAAIw2B,cAAc,MAAM,GAAG,IAAGx2B,EAAI7xF,MAAM,GAAG6xF,EAAIjyF,GAAG,KAAKf,EAAG,MAAM,CAAC1J,YAAY,gBAAgB,CAAE08F,EAAU,OAAEhzF,EAAG,SAAS,CAAC1J,YAAY,+BAA+BsK,GAAG,CAAC,MAAQoyF,EAAIpsF,QAAQ,CAACosF,EAAIjyF,GAAG,WAAWiyF,EAAIhyF,GAAGgyF,EAAI62B,iBAAiB,YAAY72B,EAAI7xF,SAAS6xF,EAAI7xF,IAAI,GACr6C,IDYpB,EACA,KACA,WACA,MAI8B,QEdhCgpH,EAAAA,GAA0Bn5H,EAAAA,EAAAA,IAAiB,iBAAkB,GAAI,OAEjE21F,EAAAA,QAAAA,UAAAA,EAAkB13F,EAAAA,UAClB03F,EAAAA,QAAAA,UAAAA,EAAkBr3F,EAAAA,gBAElBq3F,EAAAA,QAAAA,UAAAA,YAA4Bh6F,OAAOs9H,YAEnC,IAAM7xG,EAAK/vB,SAASwW,cAAc,OAClCuZ,EAAGxb,GAAK,iBACRvU,SAASiM,cAAc,QAAQsK,YAAYwZ,GAE3C,IACM8jF,GAAK,IADEvV,EAAAA,QAAAA,OAAWyjC,KACFrjB,OAAO3uF,GAE7BzrB,OAAO09H,IAAIC,eAAiB,CAC3B32H,KAAMuoG,EAAGvoG","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/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/CancelToken.js","webpack:///firstrunwizard/node_modules/axios/lib/cancel/CanceledError.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/AxiosError.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/dispatchRequest.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/index.js","webpack:///firstrunwizard/node_modules/axios/lib/defaults/transitional.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/null.js","webpack:///firstrunwizard/node_modules/axios/lib/helpers/parseHeaders.js","webpack:///firstrunwizard/node_modules/axios/lib/helpers/parseProtocol.js","webpack:///firstrunwizard/node_modules/axios/lib/helpers/spread.js","webpack:///firstrunwizard/node_modules/axios/lib/helpers/toFormData.js","webpack:///firstrunwizard/node_modules/axios/lib/helpers/validator.js","webpack:///firstrunwizard/node_modules/axios/lib/utils.js","webpack:///firstrunwizard/node_modules/base64-js/index.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.define-property.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=10738c5b&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/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/ieee754/index.js","webpack:///firstrunwizard/node_modules/inherits/inherits_browser.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/buffer/index.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/node_modules/available-typed-arrays/index.js","webpack:///firstrunwizard/node_modules/es-abstract/helpers/getOwnPropertyDescriptor.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?6133","webpack://firstrunwizard/./src/App.vue?f581","webpack:///firstrunwizard/src/App.vue?vue&type=template&id=10738c5b&scoped=true&","webpack:///firstrunwizard/src/main.js"],"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\nrequire(\"core-js/modules/es.object.define-property.js\");\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nrequire(\"core-js/modules/es.object.assign.js\");\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\nvar client = _axios.default.create({\n headers: {\n requesttoken: (_getRequestToken = (0, _auth.getRequestToken)()) !== null && _getRequestToken !== void 0 ? _getRequestToken : ''\n }\n});\n\nvar cancelableClient = Object.assign(client, {\n CancelToken: _axios.default.CancelToken,\n isCancel: _axios.default.isCancel\n});\n(0, _auth.onRequestTokenUpdate)(function (token) {\n return client.defaults.headers.requesttoken = token;\n});\nvar _default = cancelableClient;\nexports.default = _default;\n//# sourceMappingURL=index.js.map","\"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","/*! For license information please see Modal.js.LICENSE.txt */\n!function(t,e){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define(\"NextcloudVue\",[],e):\"object\"==typeof exports?exports.NextcloudVue=e():(t.NextcloudVue=t.NextcloudVue||{},t.NextcloudVue[\"Components/Modal\"]=e())}(self,(function(){return function(){var t={5938:function(t,e,n){\"use strict\";var a=n(9156);e.Z={name:\"ActionButton\",mixins:[a.Z],props:{disabled:{type:Boolean,default:!1}},computed:{isFocusable:function(){return!this.disabled}}}},858:function(t,e,n){\"use strict\";var a=n(3251),i=n.n(a),o=n(8104),s=n(9040),r=n(1205),l=n(932),c=n(8099);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 g=\".focusable\";e.Z={name:\"Actions\",directives:{tooltip:s.default},components:{DotsHorizontal:i(),Popover:c.default,VNodes:o.Z},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:(0,l.t)(\"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-\"+(0,r.Z)(),children:this.$children,firstAction:{}}},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]},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)},children:function(){this.firstAction=this.children[0]?this.children[0]:{}}},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(g);if(n){var a=(i=this.$refs.menu.querySelectorAll(g),function(t){if(Array.isArray(t))return d(t)}(i)||function(t){if(\"undefined\"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t[\"@@iterator\"])return Array.from(t)}(i)||function(t,e){if(t){if(\"string\"==typeof t)return d(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)?d(t,e):void 0}}(i)||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.\")}()).indexOf(n);a>-1&&(this.focusIndex=a,this.focusAction())}}}var i},removeCurrentActive:function(){var t=this.$refs.menu.querySelector(\"li.active\");t&&t.classList.remove(\"active\")},focusAction:function(){var t=this.$refs.menu.querySelectorAll(g)[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(g).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(g).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)}}}},5041:function(t,e){\"use strict\";e.Z={name:\"VNodes\",functional:!0,render:function(t,e){return e.props.vnodes}}},4828:function(t,e,n){\"use strict\";var a=n(491);e.default=a.Z},5860:function(t,e,n){\"use strict\";var a=n(3083);e.default=a.Z},8099:function(t,e,n){\"use strict\";var a=n(7020);e.default=a.Z},9040:function(t,e,n){\"use strict\";n.d(e,{default:function(){return f}});var a=n(2965),i=n(3379),o=n.n(i),s=n(7795),r=n.n(s),l=n(569),c=n.n(l),d=n(3565),u=n.n(d),m=n(9216),p=n.n(m),g=n(4589),h=n.n(g),A=n(6051),v={};v.styleTagTransform=h(),v.setAttributes=u(),v.insert=c().bind(null,\"head\"),v.domAPI=r(),v.insertStyleElement=p(),o()(A.Z,v),A.Z&&A.Z.locals&&A.Z.locals,a.VTooltip.options.defaultTemplate='<div class=\"vue-tooltip\" role=\"tooltip\" data-v-'.concat(\"17fd6e1\",'><div class=\"tooltip-arrow\"></div><div class=\"tooltip-inner\"></div></div>'),a.VTooltip.options.defaultHtml=!1,a.VTooltip.options.defaultDelay={show:500,hide:200};var f=a.VTooltip},932:function(t,e,n){\"use strict\";n.d(e,{n:function(){return o},t:function(){return s}});var a=(0,n(6036).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\",\"Avatar of {displayName}\":\"Avatar de {displayName}\",\"Avatar of {displayName}, {status}\":\"Avatar de {displayName}, {status}\",\"Cancel changes\":\"Cancel·la els canvis\",Choose:\"Tria\",Close:\"Tanca\",\"Close navigation\":\"Tancar la navegació\",\"Confirm changes\":\"Confirmeu els canvis\",Custom:\"Personalitzat\",\"Edit item\":\"Edita l'element\",\"External documentation for {title}\":\"Documentació externa per a {title}\",Flags:\"Marques\",\"Food & Drink\":\"Menjar i begudes\",\"Frequently used\":\"Utilitzats recentment\",Global:\"Global\",\"Go back to the list\":\"Torna a la llista\",\"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\",\"Open navigation\":\"Obrir la navegació\",\"Pause slideshow\":\"Atura la presentació\",\"People & Body\":\"Persones i cos\",\"Pick an emoji\":\"Trieu un emoji\",\"Please select a time zone:\":\"Seleccioneu una zona horària:\",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\",\"Type to search time zone\":\"Escriviu per cercar la zona horària\",\"Unable to search the group\":\"No es pot cercar el grup\",\"Undo changes\":\"Desfer canvis\",\"Write message, @ to mention someone, : for emoji autocompletion …\":\"Escriu un missatge, @ per esmentar algú, : per a la compleció automàtica d'emojis...\"}},{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\",\"Avatar of {displayName}, {status}\":\"{displayName} -(e)n irudia, {status}\",\"Cancel changes\":\"Ezeztatu aldaketak\",Choose:\"Aukeratu\",Close:\"Itxi\",\"Close navigation\":\"Itxi nabigazioa\",\"Confirm changes\":\"Baieztatu aldaketak\",Custom:\"Pertsonalizatua\",\"Edit item\":\"Editatu elementua\",\"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\",\"Undo changes\":\"Aldaketak desegin\",\"Write message, @ to mention someone, : for emoji autocompletion …\":\"Idatzi mezua, @ norbait aipatzeko, : emojia automatikoki idazteko\"}},{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, : for emoji autocompletion …\":\"Ecrire un message, @ pour mentionner quelqu'un, : pour l'auto-complétion des émoticônes\"}},{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}\",\"Avatar of {displayName}, {status}\":\"Avatar di {displayName}, {status}\",\"Cancel changes\":\"Annulla modifiche\",Choose:\"Scegli\",Close:\"Chiudi\",\"Close navigation\":\"Chiudi la navigazione\",\"Confirm changes\":\"Conferma modifiche\",Custom:\"Personalizzato\",\"Edit item\":\"Modifica l'elemento\",\"External documentation for {title}\":\"Documentazione esterna per {title}\",Flags:\"Bandiere\",\"Food & Drink\":\"Cibo e bevande\",\"Frequently used\":\"Usati di frequente\",Global:\"Globale\",\"Go back to the list\":\"Torna all'elenco\",\"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\",\"Open navigation\":\"Apri la navigazione\",\"Pause slideshow\":\"Presentazione in pausa\",\"People & Body\":\"Persone e corpo\",\"Pick an emoji\":\"Scegli un emoji\",\"Please select a time zone:\":\"Si prega di selezionare un fuso orario:\",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\",\"Type to search time zone\":\"Digita per cercare un fuso orario\",\"Unable to search the group\":\"Impossibile cercare il gruppo\",\"Undo changes\":\"Cancella i cambiamenti\",\"Write message, @ to mention someone, : for emoji autocompletion …\":\"Scrivi un messaggio, @ per menzionare qualcuno, : per il completamento automatico delle emoji ...\"}},{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}\",\"Avatar of {displayName}, {status}\":\"Avatar {displayName}, {status}\",\"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, : for emoji autocompletion …\":\"Napíšte správu, @ ak chcete niekoho spomenúť, : pre automatické dopĺňanie emotikonov…\"}},{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]]};a.addTranslation(t.locale,{translations:{\"\":e}})}));var i=a.build(),o=i.ngettext.bind(i),s=i.gettext.bind(i)},723:function(t,e,n){\"use strict\";var a=n(2734),i=n.n(a);e.Z={before:function(){this.$slots.default&&\"\"!==this.text.trim()||(i().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():\"\"}}}},9156:function(t,e,n){\"use strict\";var a=n(723),i=n(6021);e.Z={mixins:[a.Z],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=(0,i.Z)(this,\"Actions\");e&&e.closeMenu&&e.closeMenu()}}}}},3648:function(t,e,n){\"use strict\";var a=n(932);e.Z={methods:{n:a.n,t:a.t}}},1205:function(t,e){\"use strict\";e.Z=function(t){return Math.random().toString(36).replace(/[^a-z]+/g,\"\").slice(0,t||5)}},6021:function(t,e){\"use strict\";e.Z=function(t,e){for(var n=t.$parent;n;){if(n.$options.name===e)return n;n=n.$parent}}},7645:function(t,e){\"use strict\";e.Z=function(t){t.mounted?Array.isArray(t.mounted)||(t.mounted=[t.mounted]):t.mounted=[],t.mounted.push((function(){this.$el.setAttribute(\"data-v-\".concat(\"17fd6e1\"),\"\")}))}},6051:function(t,e,n){\"use strict\";var a=n(4015),i=n.n(a),o=n(3645),s=n.n(o)()(i());s.push([t.id,\".material-design-icon{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.vue-tooltip[data-v-17fd6e1]{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-17fd6e1][x-placement^='top'] .tooltip-arrow{bottom:0;border-bottom-width:0;border-top-color:var(--color-main-background)}.vue-tooltip[data-v-17fd6e1][x-placement^='bottom'] .tooltip-arrow{top:0;border-top-width:0;border-bottom-color:var(--color-main-background)}.vue-tooltip[data-v-17fd6e1][x-placement^='right'] .tooltip-arrow{right:100%;border-left-width:0;border-right-color:var(--color-main-background)}.vue-tooltip[data-v-17fd6e1][x-placement^='left'] .tooltip-arrow{left:100%;border-right-width:0;border-left-color:var(--color-main-background)}.vue-tooltip[data-v-17fd6e1][aria-hidden='true']{visibility:hidden;transition:opacity .15s, visibility .15s;opacity:0}.vue-tooltip[data-v-17fd6e1][aria-hidden='false']{visibility:visible;transition:opacity .15s;opacity:1}.vue-tooltip[data-v-17fd6e1] .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-17fd6e1] .tooltip-arrow{position:absolute;z-index:1;width:0;height:0;margin:0;border-style:solid;border-color:transparent;border-width:10px}\\n\",\"\",{version:3,sources:[\"webpack://./src/assets/material-icons.css\",\"webpack://./src/directives/Tooltip/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,gEAoBE,QAAS,CACT,qBAAsB,CACtB,6CAA8C,CAtBhD,mEA2BE,KAAM,CACN,kBAAmB,CACnB,gDAAiD,CA7BnD,kEAkCE,UAAW,CACX,mBAAoB,CACpB,+CAAgD,CApClD,iEAyCE,SAAU,CACV,oBAAqB,CACrB,8CAA+C,CA3CjD,iDAgDE,iBAAkB,CAClB,wCAAyC,CACzC,SAAU,CAlDZ,kDAqDE,kBAAmB,CACnB,uBAAwB,CACxB,SAAU,CAvDZ,4CA4DE,eAAgB,CAChB,eAAgB,CAChB,iBAAkB,CAClB,4BAA6B,CAC7B,kCAAmC,CACnC,6CAA8C,CAjEhD,4CAsEE,iBAAkB,CAClB,SAAU,CACV,OAAQ,CACR,QAAS,CACT,QAAS,CACT,kBAAmB,CACnB,wBAAyB,CACzB,iBA/EgB\",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:\\\"17fd6e1\\\"; @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'] .tooltip-arrow {\\n\\t\\tbottom: 0;\\n\\t\\tborder-bottom-width: 0;\\n\\t\\tborder-top-color: var(--color-main-background);\\n\\t}\\n\\n\\t// BOTTOM\\n\\t&[x-placement^='bottom'] .tooltip-arrow {\\n\\t\\ttop: 0;\\n\\t\\tborder-top-width: 0;\\n\\t\\tborder-bottom-color: var(--color-main-background);\\n\\t}\\n\\n\\t// RIGHT\\n\\t&[x-placement^='right'] .tooltip-arrow {\\n\\t\\tright: 100%;\\n\\t\\tborder-left-width: 0;\\n\\t\\tborder-right-color: var(--color-main-background);\\n\\t}\\n\\n\\t// LEFT\\n\\t&[x-placement^='left'] .tooltip-arrow {\\n\\t\\tleft: 100%;\\n\\t\\tborder-right-width: 0;\\n\\t\\tborder-left-color: var(--color-main-background);\\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: transparent;\\n\\t\\tborder-width: $arrow-width;\\n\\t}\\n}\\n\"],sourceRoot:\"\"}]),e.Z=s},7087:function(t,e,n){\"use strict\";var a=n(4015),i=n.n(a),o=n(3645),s=n.n(o)()(i());s.push([t.id,\".material-design-icon[data-v-ef50c406]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}li.active[data-v-ef50c406]{background-color:var(--color-background-hover)}.action--disabled[data-v-ef50c406]{pointer-events:none;opacity:.5}.action--disabled[data-v-ef50c406]:hover,.action--disabled[data-v-ef50c406]:focus{cursor:default;opacity:.5}.action--disabled *[data-v-ef50c406]{opacity:1 !important}.action-button[data-v-ef50c406]{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-ef50c406]:hover,.action-button[data-v-ef50c406]:focus{opacity:1}.action-button>span[data-v-ef50c406]{cursor:pointer;white-space:nowrap}.action-button__icon[data-v-ef50c406]{width:44px;height:44px;opacity:1;background-position:14px center;background-size:16px;background-repeat:no-repeat}.action-button[data-v-ef50c406] .material-design-icon{width:44px;height:44px;opacity:1}.action-button[data-v-ef50c406] .material-design-icon .material-design-icon__svg{vertical-align:middle}.action-button p[data-v-ef50c406]{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-ef50c406]{cursor:pointer;white-space:pre-wrap}.action-button__title[data-v-ef50c406]{font-weight:bold;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;max-width:100%;display:inline-block}\\n\",\"\",{version:3,sources:[\"webpack://./src/assets/material-icons.css\",\"webpack://./src/assets/action.scss\",\"webpack://./src/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,gBAAgD,CAEhD,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.Z=s},9224:function(t,e,n){\"use strict\";var a=n(4015),i=n.n(a),o=n(3645),s=n.n(o)()(i());s.push([t.id,\".material-design-icon[data-v-2a98ba3b]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.action-item[data-v-2a98ba3b]{position:relative;display:inline-block}.action-item--single[data-v-2a98ba3b]:hover,.action-item--single[data-v-2a98ba3b]:focus,.action-item--single[data-v-2a98ba3b]:active,.action-item__menutoggle[data-v-2a98ba3b]:hover,.action-item__menutoggle[data-v-2a98ba3b]:focus,.action-item__menutoggle[data-v-2a98ba3b]:active{opacity:1;background-color:rgba(127,127,127,0.25) !important}.action-item__menutoggle[data-v-2a98ba3b]:disabled,.action-item--single[data-v-2a98ba3b]:disabled{opacity:.3 !important}.action-item.action-item--open .action-item__menutoggle[data-v-2a98ba3b]{opacity:1;background-color:rgba(127,127,127,0.25)}.action-item--single[data-v-2a98ba3b],.action-item__menutoggle[data-v-2a98ba3b]{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-2a98ba3b],.action-item__menutoggle--with-title[data-v-2a98ba3b]{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-2a98ba3b] span,.action-item__menutoggle--with-title[data-v-2a98ba3b] span{width:24px;height:24px;line-height:16px;position:absolute;top:0;left:0}.action-item[data-v-2a98ba3b] .material-design-icon{width:44px;height:44px;opacity:1}.action-item[data-v-2a98ba3b] .material-design-icon .material-design-icon__svg{vertical-align:middle}.action-item__menutoggle[data-v-2a98ba3b]{display:flex;align-items:center;justify-content:center;opacity:.7;font-weight:bold;line-height:16px}.action-item__menutoggle--primary[data-v-2a98ba3b]{opacity:1;color:var(--color-primary-text);border:none;background-color:var(--color-primary-element)}.action-item--open .action-item__menutoggle--primary[data-v-2a98ba3b],.action-item__menutoggle--primary[data-v-2a98ba3b]:hover,.action-item__menutoggle--primary[data-v-2a98ba3b]:focus,.action-item__menutoggle--primary[data-v-2a98ba3b]:active{color:var(--color-primary-text) !important;background-color:var(--color-primary-element-light) !important}.action-item--single[data-v-2a98ba3b]{opacity:.7}.action-item--single[data-v-2a98ba3b]:hover,.action-item--single[data-v-2a98ba3b]:focus,.action-item--single[data-v-2a98ba3b]:active{opacity:1}.action-item--single>[hidden][data-v-2a98ba3b]{display:none}.ie .action-item__menu[data-v-2a98ba3b],.ie .action-item__menu .action-item__menu_arrow[data-v-2a98ba3b],.edge .action-item__menu[data-v-2a98ba3b],.edge .action-item__menu .action-item__menu_arrow[data-v-2a98ba3b]{border:1px solid var(--color-border)}\\n\",\"\",{version:3,sources:[\"webpack://./src/assets/material-icons.css\",\"webpack://./src/components/Actions/Actions.vue\",\"webpack://./src/assets/variables.scss\"],names:[],mappings:\"AAGA,uCACC,YAAa,CACb,iBAAkB,CAClB,mBAAoB,CACpB,kBAAmB,CACnB,sBAAuB,CCopBxB,8BACC,iBAAkB,CAClB,oBAAqB,CAIrB,sRAMC,SC5nBc,CD8nBd,kDAA2C,CAC3C,kGAKA,qBAAsB,CApBxB,yEAwBE,SCxoBc,CDyoBd,uCCroBgD,CDsoBhD,gFAKA,qBAAsB,CACtB,UAAW,CACX,cCpqBmB,CDqqBnB,WCrqBmB,CDsqBnB,QAAS,CACT,SAAU,CACV,cAAe,CACf,WAAY,CACZ,kBAAkC,CAClC,4BAA6B,CAE7B,wGACC,iBAAkB,CAClB,cCvqB6C,CDwqB7C,iBChrBkB,CDirBlB,kBAAmB,CACnB,SC/pBa,CDgqBb,yCAA0C,CAE1C,6CAA8C,CAC9C,+BAAwC,CACxC,iBAAkB,CAVlB,oHAeC,UAAW,CACX,WAAY,CACZ,gBC1rBY,CD2rBZ,iBAAkB,CAClB,KAAM,CACN,MAAO,CA9DX,oDAoEE,UCvsBmB,CDwsBnB,WCxsBmB,CDysBnB,SCtrBc,CDgnBhB,+EAyEG,qBAAsB,CACtB,0CAMD,YAAa,CACb,kBAAmB,CACnB,sBAAuB,CACvB,UCpsBiB,CDqsBjB,gBAAiB,CACjB,gBCptBc,CDstBd,mDACC,SCxsBa,CDysBb,+BAAgC,CAChC,WAAY,CACZ,6CAA8C,CAC9C,kPAIC,0CAA2C,CAC3C,8DAA+D,CAC/D,sCAKF,UCxtBiB,CDutBjB,qIAKC,SC3tBa,CDstBd,+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:\\\"17fd6e1\\\"; @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\\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::v-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.Z=s},1309:function(t,e,n){\"use strict\";var a=n(4015),i=n.n(a),o=n(3645),s=n.n(o)()(i());s.push([t.id,\".material-design-icon[data-v-2da14a6a]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.modal-mask[data-v-2da14a6a]{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-2da14a6a]{background-color:rgba(0,0,0,0.92)}.modal-header[data-v-2da14a6a]{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-2da14a6a],.modal-header.invisible[style*='display: none'][data-v-2da14a6a]{visibility:hidden}.modal-header .modal-title[data-v-2da14a6a]{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-2da14a6a]{padding-left:132px;text-align:center}}.modal-header .icons-menu[data-v-2da14a6a]{position:absolute;right:0;display:flex;align-items:center;justify-content:flex-end}.modal-header .icons-menu .header-close[data-v-2da14a6a]{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-2da14a6a]{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-2da14a6a],.modal-header .icons-menu .play-pause-icons:hover .play-pause-icons__pause[data-v-2da14a6a],.modal-header .icons-menu .play-pause-icons:focus .play-pause-icons__play[data-v-2da14a6a],.modal-header .icons-menu .play-pause-icons:focus .play-pause-icons__pause[data-v-2da14a6a]{opacity:1;border-radius:22px;background-color:rgba(127,127,127,0.25)}.modal-header .icons-menu .play-pause-icons__play[data-v-2da14a6a],.modal-header .icons-menu .play-pause-icons__pause[data-v-2da14a6a]{box-sizing:border-box;width:44px;height:44px;margin:3px;cursor:pointer;opacity:.7}.modal-header .icons-menu .header-actions[data-v-2da14a6a]{margin:3px;color:white}.modal-header .icons-menu .action-item--single[data-v-2da14a6a]{box-sizing:border-box;width:44px;height:44px;cursor:pointer;background-position:center;background-size:22px}.modal-header .icons-menu[data-v-2da14a6a] button{color:#fff}.modal-header .icons-menu[data-v-2da14a6a] .action-item__menutoggle{padding:0}.modal-header .icons-menu[data-v-2da14a6a] .action-item__menutoggle span,.modal-header .icons-menu[data-v-2da14a6a] .action-item__menutoggle svg{width:var(--icon-size);height:var(--icon-size)}.modal-wrapper[data-v-2da14a6a]{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:100%;height:100%}.modal-wrapper .prev[data-v-2da14a6a],.modal-wrapper .next[data-v-2da14a6a]{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-2da14a6a],.modal-wrapper .prev.invisible[style*='display: none'][data-v-2da14a6a],.modal-wrapper .next.invisible[style*='display:none'][data-v-2da14a6a],.modal-wrapper .next.invisible[style*='display: none'][data-v-2da14a6a]{visibility:hidden}.modal-wrapper .prev[data-v-2da14a6a]{left:0}.modal-wrapper .next[data-v-2da14a6a]{right:0}.modal-wrapper .icon-next[data-v-2da14a6a],.modal-wrapper .icon-previous[data-v-2da14a6a]{box-sizing:border-box;width:44px;height:44px;color:white;background-image:none;display:flex}.modal-wrapper .modal-container[data-v-2da14a6a]{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-2da14a6a]{width:390px;max-width:95%;max-height:90%}.modal-wrapper--normal .modal-container[data-v-2da14a6a]{max-width:90%;width:600px;max-height:90%}.modal-wrapper--large .modal-container[data-v-2da14a6a]{max-width:90%;width:900px;max-height:90%}.modal-wrapper--full .modal-container[data-v-2da14a6a]{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-2da14a6a]{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-2da14a6a],.fade-leave-active[data-v-2da14a6a]{transition:opacity 250ms}.fade-enter[data-v-2da14a6a],.fade-leave-to[data-v-2da14a6a]{opacity:0}.fade-visibility-enter[data-v-2da14a6a],.fade-visibility-leave-to[data-v-2da14a6a]{visibility:hidden;opacity:0}.modal-in-enter-active[data-v-2da14a6a],.modal-in-leave-active[data-v-2da14a6a],.modal-out-enter-active[data-v-2da14a6a],.modal-out-leave-active[data-v-2da14a6a]{transition:opacity 250ms}.modal-in-enter[data-v-2da14a6a],.modal-in-leave-to[data-v-2da14a6a],.modal-out-enter[data-v-2da14a6a],.modal-out-leave-to[data-v-2da14a6a]{opacity:0}.modal-in-enter .modal-container[data-v-2da14a6a],.modal-in-leave-to .modal-container[data-v-2da14a6a]{transform:scale(0.9)}.modal-out-enter .modal-container[data-v-2da14a6a],.modal-out-leave-to .modal-container[data-v-2da14a6a]{transform:scale(1.1)}.modal-mask .play-pause-icons .progress-ring[data-v-2da14a6a]{position:absolute;top:0;left:0;transform:rotate(-90deg)}.modal-mask .play-pause-icons .progress-ring .progress-ring__circle[data-v-2da14a6a]{transition:100ms stroke-dashoffset;transform-origin:50% 50%;animation:progressring-data-v-2da14a6a 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-2da14a6a]{animation:breath-data-v-2da14a6a 2s cubic-bezier(0.4, 0, 0.2, 1) infinite}.modal-mask .play-pause-icons--paused .progress-ring__circle[data-v-2da14a6a]{animation-play-state:paused !important}@keyframes progressring-data-v-2da14a6a{from{stroke-dashoffset:94.24778}to{stroke-dashoffset:0}}@keyframes breath-data-v-2da14a6a{0%{opacity:1}50%{opacity:0}100%{opacity:1}}\\n\",\"\",{version:3,sources:[\"webpack://./src/assets/material-icons.css\",\"webpack://./src/components/Modal/Modal.vue\",\"webpack://./src/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:\\\"17fd6e1\\\"; @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: 390px;\\n\\t\\t\\tmax-width: 95%;\\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}\\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}\\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.Z=s},5878:function(t,e,n){\"use strict\";var a=n(4015),i=n.n(a),o=n(3645),s=n.n(o)()(i());s.push([t.id,\".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:transparent;border-width:10px}.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-bottom-width:0;border-top-color:var(--color-main-background)}.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-top-width:0;border-bottom-color:var(--color-main-background)}.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-left-width:0;border-right-color:var(--color-main-background)}.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-right-width:0;border-left-color:var(--color-main-background)}.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://./src/assets/material-icons.css\",\"webpack://./src/components/Popover/Popover.vue\"],names:[],mappings:\"AAGA,sBACC,YAAa,CACb,iBAAkB,CAClB,mBAAoB,CACpB,kBAAmB,CACnB,sBAAuB,CCyGxB,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,wBAAyB,CACzB,iBAvBgB,CAElB,6BAyBE,kBA3BgB,CAElB,6CA4BG,YA9Be,CA+Bf,6BAA8B,CAC9B,YAAa,CACb,eAAgB,CAChB,qBAAsB,CACtB,6CAA8C,CAjCjD,gCAsCE,eAxCgB,CAElB,gDAyCG,SA3Ce,CA4Cf,6BAA8B,CAC9B,YAAa,CACb,eAAgB,CAChB,kBAAmB,CACnB,gDAAiD,CA9CpD,+BAmDE,gBArDgB,CAElB,+CAsDG,4BAA6B,CAC7B,UAzDe,CA0Df,cAAe,CACf,aAAc,CACd,mBAAoB,CACpB,+CAAgD,CA3DnD,8BAgEE,iBAlEgB,CAElB,8CAmEG,4BAA6B,CAC7B,WAtEe,CAuEf,cAAe,CACf,aAAc,CACd,oBAAqB,CACrB,8CAA+C,CAxElD,6BA6EE,iBAAkB,CAClB,2EAA6E,CAC7E,SAAU,CA/EZ,8BAmFE,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:\\\"17fd6e1\\\"; @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$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: transparent;\\n\\t\\tborder-width: $arrow-width;\\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-bottom-width: 0;\\n\\t\\t\\tborder-top-color: var(--color-main-background);\\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-top-width: 0;\\n\\t\\t\\tborder-bottom-color: var(--color-main-background);\\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-left-width: 0;\\n\\t\\t\\tborder-right-color: var(--color-main-background);\\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-right-width: 0;\\n\\t\\t\\tborder-left-color: var(--color-main-background);\\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.Z=s},3645:function(t){\"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 s=this[o][0];null!=s&&(i[s]=!0)}for(var r=0;r<t.length;r++){var l=[].concat(t[r]);a&&i[l[0]]||(n&&(l[2]?l[2]=\"\".concat(n,\" and \").concat(l[2]):l[2]=n),e.push(l))}},e}},4015:function(t){\"use strict\";function e(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 n,a,i=(a=4,function(t){if(Array.isArray(t))return t}(n=t)||function(t,e){var n=t&&(\"undefined\"!=typeof Symbol&&t[Symbol.iterator]||t[\"@@iterator\"]);if(null!=n){var a,i,o=[],s=!0,r=!1;try{for(n=n.call(t);!(s=(a=n.next()).done)&&(o.push(a.value),!e||o.length!==e);s=!0);}catch(t){r=!0,i=t}finally{try{s||null==n.return||n.return()}finally{if(r)throw i}}return o}}(n,a)||function(t,n){if(t){if(\"string\"==typeof t)return e(t,n);var a=Object.prototype.toString.call(t).slice(8,-1);return\"Object\"===a&&t.constructor&&(a=t.constructor.name),\"Map\"===a||\"Set\"===a?Array.from(t):\"Arguments\"===a||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?e(t,n):void 0}}(n,a)||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.\")}()),o=i[1],s=i[3];if(!s)return o;if(\"function\"==typeof btoa){var r=btoa(unescape(encodeURIComponent(JSON.stringify(s)))),l=\"sourceMappingURL=data:application/json;charset=utf-8;base64,\".concat(r),c=\"/*# \".concat(l,\" */\"),d=s.sources.map((function(t){return\"/*# sourceURL=\".concat(s.sourceRoot||\"\").concat(t,\" */\")}));return[o].concat(d).concat([c]).join(\"\\n\")}return[o].join(\"\\n\")}},1756:function(t,e,n){\"use strict\";var a=n(3379),i=n.n(a),o=n(7795),s=n.n(o),r=n(569),l=n.n(r),c=n(3565),d=n.n(c),u=n(9216),m=n.n(u),p=n(4589),g=n.n(p),h=n(7087),A={};A.styleTagTransform=g(),A.setAttributes=d(),A.insert=l().bind(null,\"head\"),A.domAPI=s(),A.insertStyleElement=m(),i()(h.Z,A),h.Z&&h.Z.locals&&h.Z.locals},2694:function(t,e,n){\"use strict\";var a=n(3379),i=n.n(a),o=n(7795),s=n.n(o),r=n(569),l=n.n(r),c=n(3565),d=n.n(c),u=n(9216),m=n.n(u),p=n(4589),g=n.n(p),h=n(9224),A={};A.styleTagTransform=g(),A.setAttributes=d(),A.insert=l().bind(null,\"head\"),A.domAPI=s(),A.insertStyleElement=m(),i()(h.Z,A),h.Z&&h.Z.locals&&h.Z.locals},3379:function(t){\"use strict\";var e=[];function n(t){for(var n=-1,a=0;a<e.length;a++)if(e[a].identifier===t){n=a;break}return n}function a(t,a){for(var o={},s=[],r=0;r<t.length;r++){var l=t[r],c=a.base?l[0]+a.base:l[0],d=o[c]||0,u=\"\".concat(c,\" \").concat(d);o[c]=d+1;var m=n(u),p={css:l[1],media:l[2],sourceMap:l[3],supports:l[4],layer:l[5]};if(-1!==m)e[m].references++,e[m].updater(p);else{var g=i(p,a);a.byIndex=r,e.splice(r,0,{identifier:u,updater:g,references:1})}s.push(u)}return s}function i(t,e){var n=e.domAPI(e);return n.update(t),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,i){var o=a(t=t||[],i=i||{});return function(t){t=t||[];for(var s=0;s<o.length;s++){var r=n(o[s]);e[r].references--}for(var l=a(t,i),c=0;c<o.length;c++){var d=n(o[c]);0===e[d].references&&(e[d].updater(),e.splice(d,1))}o=l}}},569:function(t){\"use strict\";var e={};t.exports=function(t,n){var a=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(!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)}},9216:function(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:function(t,e,n){\"use strict\";t.exports=function(t){var e=n.nc;e&&t.setAttribute(\"nonce\",e)}},7795:function(t){\"use strict\";t.exports=function(t){var e=t.insertStyleElement(t);return{update:function(n){!function(t,e,n){var a=\"\";n.supports&&(a+=\"@supports (\".concat(n.supports,\") {\")),n.media&&(a+=\"@media \".concat(n.media,\" {\"));var i=void 0!==n.layer;i&&(a+=\"@layer\".concat(n.layer.length>0?\" \".concat(n.layer):\"\",\" {\")),a+=n.css,i&&(a+=\"}\"),n.media&&(a+=\"}\"),n.supports&&(a+=\"}\");var o=n.sourceMap;o&&\"undefined\"!=typeof btoa&&(a+=\"\\n/*# sourceMappingURL=data:application/json;base64,\".concat(btoa(unescape(encodeURIComponent(JSON.stringify(o)))),\" */\")),e.styleTagTransform(a,t,e.options)}(e,t,n)},remove:function(){!function(t){if(null===t.parentNode)return!1;t.parentNode.removeChild(t)}(e)}}}},4589:function(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))}}},491:function(t,e,n){\"use strict\";var a=n(8940),i=n(4403),o=(n(7911),n(1900)),s=n(3184),r=n.n(s),l=(0,o.Z)(i.Z,a.s,a.x,!1,null,\"ef50c406\",null);\"function\"==typeof r()&&r()(l),e.Z=l.exports},3083:function(t,e,n){\"use strict\";var a=n(9125),i=n(613),o=(n(3822),n(1900)),s=n(2192),r=n.n(s),l=(0,o.Z)(i.Z,a.s,a.x,!1,null,\"2a98ba3b\",null);\"function\"==typeof r()&&r()(l),e.Z=l.exports},7020:function(t,e,n){\"use strict\";n.d(e,{Z:function(){return k}});var a={name:\"Popover\",components:{VPopover:n(2965).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(3379),o=n.n(i),s=n(7795),r=n.n(s),l=n(569),c=n.n(l),d=n(3565),u=n.n(d),m=n(9216),p=n.n(m),g=n(4589),h=n.n(g),A=n(5878),v={};v.styleTagTransform=h(),v.setAttributes=u(),v.insert=c().bind(null,\"head\"),v.domAPI=r(),v.insertStyleElement=p(),o()(A.Z,v),A.Z&&A.Z.locals&&A.Z.locals;var f=n(1900),C=n(8733),b=n.n(C),y=(0,f.Z)(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 b()&&b()(y);var k=y.exports},8104:function(t,e,n){\"use strict\";var a=n(5494),i=(0,n(1900).Z)(a.Z,void 0,void 0,!1,null,null,null);e.Z=i.exports},4403:function(t,e,n){\"use strict\";var a=n(5938);e.Z=a.Z},613:function(t,e,n){\"use strict\";var a=n(858);e.Z=a.Z},5494:function(t,e,n){\"use strict\";var a=n(5041);e.Z=a.Z},7911:function(t,e,n){\"use strict\";n(1756)},3822:function(t,e,n){\"use strict\";n(2694)},3184:function(){},2192:function(){},8575:function(){},8733:function(){},8940:function(t,e,n){\"use strict\";n.d(e,{s:function(){return a},x:function(){return i}});var 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\",(function(){return[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)])},i=[]},9125:function(t,e,n){\"use strict\";n.d(e,{s:function(){return a},x:function(){return i}});var a=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 vue-button 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.apply(null,arguments)},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.apply(null,arguments)},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.apply(null,arguments)},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.apply(null,arguments):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.apply(null,arguments)},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.apply(null,arguments)},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.apply(null,arguments))}],mousemove:e.onMouseFocusAction}},[a(\"ul\",{attrs:{id:e.randomId,tabindex:\"-1\"}},[e.opened?[e._t(\"default\")]:e._e()],2)])])],1)},i=[]},1900:function(t,e,n){\"use strict\";function a(t,e,n,a,i,o,s,r){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),s?(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(s)},c._ssrRegister=l):i&&(l=r?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,{Z:function(){return a}})},6036:function(t){\"use strict\";t.exports=require(\"@nextcloud/l10n/dist/gettext\")},2640:function(t){\"use strict\";t.exports=require(\"hammerjs\")},2965:function(t){\"use strict\";t.exports=require(\"v-tooltip\")},2734:function(t){\"use strict\";t.exports=require(\"vue\")},9605:function(t){\"use strict\";t.exports=require(\"vue-material-design-icons/ChevronRight\")},5978:function(t){\"use strict\";t.exports=require(\"vue-material-design-icons/Close\")},3251:function(t){\"use strict\";t.exports=require(\"vue-material-design-icons/DotsHorizontal\")}},e={};function n(a){var i=e[a];if(void 0!==i)return i.exports;var o=e[a]={id:a,exports:{}};return t[a](o,o.exports,n),o.exports}n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,{a:e}),e},n.d=function(t,e){for(var a in e)n.o(e,a)&&!n.o(t,a)&&Object.defineProperty(t,a,{enumerable:!0,get:e[a]})},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.r=function(t){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(t,\"__esModule\",{value:!0})};var a={};return function(){\"use strict\";n.r(a),n.d(a,{default:function(){return M}});var t=n(7645),e=n(2640),i=n.n(e),o=require(\"vue-material-design-icons/ChevronLeft\"),s=n.n(o),r=n(9605),l=n.n(r),c=n(5978),d=n.n(c),u=require(\"vue-material-design-icons/Pause\"),m=n.n(u),p=require(\"vue-material-design-icons/Play\"),g=n.n(p),h=n(5860),A=n(4828),v=n(3648),f=n(932),C=n(9040);function b(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 y={name:\"Modal\",components:{ActionButton:A.default,Actions:h.default,ChevronLeft:s(),ChevronRight:l(),Close:d(),Pause:m(),Play:g()},directives:{tooltip:C.default},mixins:[v.Z],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?(0,f.t)(\"Pause slideshow\"):(0,f.t)(\"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())(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 b((function(){t.next(),t.handleSlideshow()}),this.slideshowDelay):(this.playing=!1,this.clearSlideshowTimeout())},clearSlideshowTimeout:function(){this.slideshowTimeout&&this.slideshowTimeout.clear()}}},k=n(3379),B=n.n(k),w=n(7795),S=n.n(w),x=n(569),N=n.n(x),j=n(3565),z=n.n(j),P=n(9216),E=n.n(P),_=n(4589),D=n.n(_),T=n(1309),$={};$.styleTagTransform=D(),$.setAttributes=z(),$.insert=N().bind(null,\"head\"),$.domAPI=S(),$.insertStyleElement=E(),B()(T.Z,$),T.Z&&T.Z.locals&&T.Z.locals;var F=n(1900),O=n(8575),U=n.n(O),G=(0,F.Z)(y,(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.apply(null,arguments)}}},[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.apply(null,arguments)}}},[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.apply(null,arguments)}}},[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,\"2da14a6a\",null);\"function\"==typeof U()&&U()(G);var I=G.exports;(0,t.Z)(I);var M=I}(),a}()}));\n//# sourceMappingURL=Modal.js.map","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 transitionalDefaults = require('../defaults/transitional');\nvar AxiosError = require('../core/AxiosError');\nvar CanceledError = require('../cancel/CanceledError');\nvar parseProtocol = require('../helpers/parseProtocol');\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) && utils.isStandardBrowserEnv()) {\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\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(new AxiosError('Request aborted', AxiosError.ECONNABORTED, config, 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(new AxiosError('Network Error', AxiosError.ERR_NETWORK, config, request, 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 || transitionalDefaults;\n if (config.timeoutErrorMessage) {\n timeoutErrorMessage = config.timeoutErrorMessage;\n }\n reject(new AxiosError(\n timeoutErrorMessage,\n transitional.clarifyTimeoutError ? AxiosError.ETIMEDOUT : AxiosError.ECONNABORTED,\n config,\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 CanceledError() : 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 var protocol = parseProtocol(fullPath);\n\n if (protocol && [ 'http', 'https', 'file' ].indexOf(protocol) === -1) {\n reject(new AxiosError('Unsupported protocol ' + protocol + ':', AxiosError.ERR_BAD_REQUEST, config));\n return;\n }\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.CanceledError = require('./cancel/CanceledError');\naxios.CancelToken = require('./cancel/CancelToken');\naxios.isCancel = require('./cancel/isCancel');\naxios.VERSION = require('./env/data').version;\naxios.toFormData = require('./helpers/toFormData');\n\n// Expose AxiosError class\naxios.AxiosError = require('../lib/core/AxiosError');\n\n// alias for CanceledError for backward compatibility\naxios.Cancel = axios.CanceledError;\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\nvar CanceledError = require('./CanceledError');\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 CanceledError(message);\n resolvePromise(token.reason);\n });\n}\n\n/**\n * Throws a `CanceledError` 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\nvar AxiosError = require('../core/AxiosError');\nvar utils = require('../utils');\n\n/**\n * A `CanceledError` is an object that is thrown when an operation is canceled.\n *\n * @class\n * @param {string=} message The message.\n */\nfunction CanceledError(message) {\n // eslint-disable-next-line no-eq-null,eqeqeq\n AxiosError.call(this, message == null ? 'canceled' : message, AxiosError.ERR_CANCELED);\n this.name = 'CanceledError';\n}\n\nutils.inherits(CanceledError, AxiosError, {\n __CANCEL__: true\n});\n\nmodule.exports = CanceledError;\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 buildFullPath = require('./buildFullPath');\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(configOrUrl, config) {\n /*eslint no-param-reassign:0*/\n // Allow for axios('example/url'[, config]) a la fetch API\n if (typeof configOrUrl === 'string') {\n config = config || {};\n config.url = configOrUrl;\n } else {\n config = configOrUrl || {};\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 var fullPath = buildFullPath(config.baseURL, config.url);\n return buildURL(fullPath, config.params, config.paramsSerializer);\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\n function generateHTTPMethod(isForm) {\n return function httpMethod(url, data, config) {\n return this.request(mergeConfig(config || {}, {\n method: method,\n headers: isForm ? {\n 'Content-Type': 'multipart/form-data'\n } : {},\n url: url,\n data: data\n }));\n };\n }\n\n Axios.prototype[method] = generateHTTPMethod();\n\n Axios.prototype[method + 'Form'] = generateHTTPMethod(true);\n});\n\nmodule.exports = Axios;\n","'use strict';\n\nvar utils = require('../utils');\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 {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [config] The config.\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n * @returns {Error} The created error.\n */\nfunction AxiosError(message, code, config, request, response) {\n Error.call(this);\n this.message = message;\n this.name = 'AxiosError';\n code && (this.code = code);\n config && (this.config = config);\n request && (this.request = request);\n response && (this.response = response);\n}\n\nutils.inherits(AxiosError, Error, {\n 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});\n\nvar prototype = AxiosError.prototype;\nvar descriptors = {};\n\n[\n 'ERR_BAD_OPTION_VALUE',\n 'ERR_BAD_OPTION',\n 'ECONNABORTED',\n 'ETIMEDOUT',\n 'ERR_NETWORK',\n 'ERR_FR_TOO_MANY_REDIRECTS',\n 'ERR_DEPRECATED',\n 'ERR_BAD_RESPONSE',\n 'ERR_BAD_REQUEST',\n 'ERR_CANCELED'\n// eslint-disable-next-line func-names\n].forEach(function(code) {\n descriptors[code] = {value: code};\n});\n\nObject.defineProperties(AxiosError, descriptors);\nObject.defineProperty(prototype, 'isAxiosError', {value: true});\n\n// eslint-disable-next-line func-names\nAxiosError.from = function(error, code, config, request, response, customProps) {\n var axiosError = Object.create(prototype);\n\n utils.toFlatObject(error, axiosError, function filter(obj) {\n return obj !== Error.prototype;\n });\n\n AxiosError.call(axiosError, error.message, code, config, request, response);\n\n axiosError.name = error.name;\n\n customProps && Object.assign(axiosError, customProps);\n\n return axiosError;\n};\n\nmodule.exports = AxiosError;\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 utils = require('./../utils');\nvar transformData = require('./transformData');\nvar isCancel = require('../cancel/isCancel');\nvar defaults = require('../defaults');\nvar CanceledError = require('../cancel/CanceledError');\n\n/**\n * Throws a `CanceledError` 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 CanceledError();\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\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 'beforeRedirect': 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 AxiosError = require('./AxiosError');\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(new AxiosError(\n 'Request failed with status code ' + response.status,\n [AxiosError.ERR_BAD_REQUEST, AxiosError.ERR_BAD_RESPONSE][Math.floor(response.status / 100) - 4],\n response.config,\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 AxiosError = require('../core/AxiosError');\nvar transitionalDefaults = require('./transitional');\nvar toFormData = require('../helpers/toFormData');\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: transitionalDefaults,\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\n var isObjectPayload = utils.isObject(data);\n var contentType = headers && headers['Content-Type'];\n\n var isFileList;\n\n if ((isFileList = utils.isFileList(data)) || (isObjectPayload && contentType === 'multipart/form-data')) {\n var _FormData = this.env && this.env.FormData;\n return toFormData(isFileList ? {'files[]': data} : data, _FormData && new _FormData());\n } else if (isObjectPayload || contentType === 'application/json') {\n setContentTypeIfUnset(headers, 'application/json');\n return stringifySafely(data);\n }\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 AxiosError.from(e, AxiosError.ERR_BAD_RESPONSE, this, null, this.response);\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 env: {\n FormData: require('./env/FormData')\n },\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","'use strict';\n\nmodule.exports = {\n silentJSONParsing: true,\n forcedJSONParsing: true,\n clarifyTimeoutError: false\n};\n","module.exports = {\n \"version\": \"0.27.2\"\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\nvar utils = require('./../utils');\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 utils.isObject(payload) && (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","// eslint-disable-next-line strict\nmodule.exports = null;\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\nmodule.exports = function parseProtocol(url) {\n var match = /^([-+\\w]{1,25})(:?\\/\\/|:)/.exec(url);\n return match && match[1] || '';\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 utils = require('../utils');\n\n/**\n * Convert a data object to FormData\n * @param {Object} obj\n * @param {?Object} [formData]\n * @returns {Object}\n **/\n\nfunction toFormData(obj, formData) {\n // eslint-disable-next-line no-param-reassign\n formData = formData || new FormData();\n\n var stack = [];\n\n function convertValue(value) {\n if (value === null) return '';\n\n if (utils.isDate(value)) {\n return value.toISOString();\n }\n\n if (utils.isArrayBuffer(value) || utils.isTypedArray(value)) {\n return typeof Blob === 'function' ? new Blob([value]) : Buffer.from(value);\n }\n\n return value;\n }\n\n function build(data, parentKey) {\n if (utils.isPlainObject(data) || utils.isArray(data)) {\n if (stack.indexOf(data) !== -1) {\n throw Error('Circular reference detected in ' + parentKey);\n }\n\n stack.push(data);\n\n utils.forEach(data, function each(value, key) {\n if (utils.isUndefined(value)) return;\n var fullKey = parentKey ? parentKey + '.' + key : key;\n var arr;\n\n if (value && !parentKey && typeof value === 'object') {\n if (utils.endsWith(key, '{}')) {\n // eslint-disable-next-line no-param-reassign\n value = JSON.stringify(value);\n } else if (utils.endsWith(key, '[]') && (arr = utils.toArray(value))) {\n // eslint-disable-next-line func-names\n arr.forEach(function(el) {\n !utils.isUndefined(el) && formData.append(fullKey, convertValue(el));\n });\n return;\n }\n }\n\n build(value, fullKey);\n });\n\n stack.pop();\n } else {\n formData.append(parentKey, convertValue(data));\n }\n }\n\n build(obj);\n\n return formData;\n}\n\nmodule.exports = toFormData;\n","'use strict';\n\nvar VERSION = require('../env/data').version;\nvar AxiosError = require('../core/AxiosError');\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 AxiosError(\n formatMessage(opt, ' has been removed' + (version ? ' in ' + version : '')),\n AxiosError.ERR_DEPRECATED\n );\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 AxiosError('options must be an object', AxiosError.ERR_BAD_OPTION_VALUE);\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 AxiosError('option ' + opt + ' must be ' + result, AxiosError.ERR_BAD_OPTION_VALUE);\n }\n continue;\n }\n if (allowUnknown !== true) {\n throw new AxiosError('Unknown option ' + opt, AxiosError.ERR_BAD_OPTION);\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// eslint-disable-next-line func-names\nvar kindOf = (function(cache) {\n // eslint-disable-next-line func-names\n return function(thing) {\n var str = toString.call(thing);\n return cache[str] || (cache[str] = str.slice(8, -1).toLowerCase());\n };\n})(Object.create(null));\n\nfunction kindOfTest(type) {\n type = type.toLowerCase();\n return function isKindOf(thing) {\n return kindOf(thing) === type;\n };\n}\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 Array.isArray(val);\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 * @function\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an ArrayBuffer, otherwise false\n */\nvar isArrayBuffer = kindOfTest('ArrayBuffer');\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) && (isArrayBuffer(val.buffer));\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 (kindOf(val) !== '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 * @function\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Date, otherwise false\n */\nvar isDate = kindOfTest('Date');\n\n/**\n * Determine if a value is a File\n *\n * @function\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a File, otherwise false\n */\nvar isFile = kindOfTest('File');\n\n/**\n * Determine if a value is a Blob\n *\n * @function\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Blob, otherwise false\n */\nvar isBlob = kindOfTest('Blob');\n\n/**\n * Determine if a value is a FileList\n *\n * @function\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a File, otherwise false\n */\nvar isFileList = kindOfTest('FileList');\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 FormData\n *\n * @param {Object} thing The value to test\n * @returns {boolean} True if value is an FormData, otherwise false\n */\nfunction isFormData(thing) {\n var pattern = '[object FormData]';\n return thing && (\n (typeof FormData === 'function' && thing instanceof FormData) ||\n toString.call(thing) === pattern ||\n (isFunction(thing.toString) && thing.toString() === pattern)\n );\n}\n\n/**\n * Determine if a value is a URLSearchParams object\n * @function\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a URLSearchParams object, otherwise false\n */\nvar isURLSearchParams = kindOfTest('URLSearchParams');\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\n/**\n * Inherit the prototype methods from one constructor into another\n * @param {function} constructor\n * @param {function} superConstructor\n * @param {object} [props]\n * @param {object} [descriptors]\n */\n\nfunction inherits(constructor, superConstructor, props, descriptors) {\n constructor.prototype = Object.create(superConstructor.prototype, descriptors);\n constructor.prototype.constructor = constructor;\n props && Object.assign(constructor.prototype, props);\n}\n\n/**\n * Resolve object with deep prototype chain to a flat object\n * @param {Object} sourceObj source object\n * @param {Object} [destObj]\n * @param {Function} [filter]\n * @returns {Object}\n */\n\nfunction toFlatObject(sourceObj, destObj, filter) {\n var props;\n var i;\n var prop;\n var merged = {};\n\n destObj = destObj || {};\n\n do {\n props = Object.getOwnPropertyNames(sourceObj);\n i = props.length;\n while (i-- > 0) {\n prop = props[i];\n if (!merged[prop]) {\n destObj[prop] = sourceObj[prop];\n merged[prop] = true;\n }\n }\n sourceObj = Object.getPrototypeOf(sourceObj);\n } while (sourceObj && (!filter || filter(sourceObj, destObj)) && sourceObj !== Object.prototype);\n\n return destObj;\n}\n\n/*\n * determines whether a string ends with the characters of a specified string\n * @param {String} str\n * @param {String} searchString\n * @param {Number} [position= 0]\n * @returns {boolean}\n */\nfunction endsWith(str, searchString, position) {\n str = String(str);\n if (position === undefined || position > str.length) {\n position = str.length;\n }\n position -= searchString.length;\n var lastIndex = str.indexOf(searchString, position);\n return lastIndex !== -1 && lastIndex === position;\n}\n\n\n/**\n * Returns new array from array like object\n * @param {*} [thing]\n * @returns {Array}\n */\nfunction toArray(thing) {\n if (!thing) return null;\n var i = thing.length;\n if (isUndefined(i)) return null;\n var arr = new Array(i);\n while (i-- > 0) {\n arr[i] = thing[i];\n }\n return arr;\n}\n\n// eslint-disable-next-line func-names\nvar isTypedArray = (function(TypedArray) {\n // eslint-disable-next-line func-names\n return function(thing) {\n return TypedArray && thing instanceof TypedArray;\n };\n})(typeof Uint8Array !== 'undefined' && Object.getPrototypeOf(Uint8Array));\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 inherits: inherits,\n toFlatObject: toFlatObject,\n kindOf: kindOf,\n kindOfTest: kindOfTest,\n endsWith: endsWith,\n toArray: toArray,\n isTypedArray: isTypedArray,\n isFileList: isFileList\n};\n","'use strict'\n\nexports.byteLength = byteLength\nexports.toByteArray = toByteArray\nexports.fromByteArray = fromByteArray\n\nvar lookup = []\nvar revLookup = []\nvar Arr = typeof Uint8Array !== 'undefined' ? Uint8Array : Array\n\nvar code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'\nfor (var i = 0, len = code.length; i < len; ++i) {\n lookup[i] = code[i]\n revLookup[code.charCodeAt(i)] = i\n}\n\n// Support decoding URL-safe base64 strings, as Node.js does.\n// See: https://en.wikipedia.org/wiki/Base64#URL_applications\nrevLookup['-'.charCodeAt(0)] = 62\nrevLookup['_'.charCodeAt(0)] = 63\n\nfunction getLens (b64) {\n var len = b64.length\n\n if (len % 4 > 0) {\n throw new Error('Invalid string. Length must be a multiple of 4')\n }\n\n // Trim off extra bytes after placeholder bytes are found\n // See: https://github.com/beatgammit/base64-js/issues/42\n var validLen = b64.indexOf('=')\n if (validLen === -1) validLen = len\n\n var placeHoldersLen = validLen === len\n ? 0\n : 4 - (validLen % 4)\n\n return [validLen, placeHoldersLen]\n}\n\n// base64 is 4/3 + up to two characters of the original data\nfunction byteLength (b64) {\n var lens = getLens(b64)\n var validLen = lens[0]\n var placeHoldersLen = lens[1]\n return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen\n}\n\nfunction _byteLength (b64, validLen, placeHoldersLen) {\n return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen\n}\n\nfunction toByteArray (b64) {\n var tmp\n var lens = getLens(b64)\n var validLen = lens[0]\n var placeHoldersLen = lens[1]\n\n var arr = new Arr(_byteLength(b64, validLen, placeHoldersLen))\n\n var curByte = 0\n\n // if there are placeholders, only get up to the last complete 4 chars\n var len = placeHoldersLen > 0\n ? validLen - 4\n : validLen\n\n var i\n for (i = 0; i < len; i += 4) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 18) |\n (revLookup[b64.charCodeAt(i + 1)] << 12) |\n (revLookup[b64.charCodeAt(i + 2)] << 6) |\n revLookup[b64.charCodeAt(i + 3)]\n arr[curByte++] = (tmp >> 16) & 0xFF\n arr[curByte++] = (tmp >> 8) & 0xFF\n arr[curByte++] = tmp & 0xFF\n }\n\n if (placeHoldersLen === 2) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 2) |\n (revLookup[b64.charCodeAt(i + 1)] >> 4)\n arr[curByte++] = tmp & 0xFF\n }\n\n if (placeHoldersLen === 1) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 10) |\n (revLookup[b64.charCodeAt(i + 1)] << 4) |\n (revLookup[b64.charCodeAt(i + 2)] >> 2)\n arr[curByte++] = (tmp >> 8) & 0xFF\n arr[curByte++] = tmp & 0xFF\n }\n\n return arr\n}\n\nfunction tripletToBase64 (num) {\n return lookup[num >> 18 & 0x3F] +\n lookup[num >> 12 & 0x3F] +\n lookup[num >> 6 & 0x3F] +\n lookup[num & 0x3F]\n}\n\nfunction encodeChunk (uint8, start, end) {\n var tmp\n var output = []\n for (var i = start; i < end; i += 3) {\n tmp =\n ((uint8[i] << 16) & 0xFF0000) +\n ((uint8[i + 1] << 8) & 0xFF00) +\n (uint8[i + 2] & 0xFF)\n output.push(tripletToBase64(tmp))\n }\n return output.join('')\n}\n\nfunction fromByteArray (uint8) {\n var tmp\n var len = uint8.length\n var extraBytes = len % 3 // if we have 1 byte left, pad 2 bytes\n var parts = []\n var maxChunkLength = 16383 // must be multiple of 3\n\n // go through the array every three bytes, we'll deal with trailing stuff later\n for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) {\n parts.push(encodeChunk(uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength)))\n }\n\n // pad the end with zeros, but make sure to not forget the extra bytes\n if (extraBytes === 1) {\n tmp = uint8[len - 1]\n parts.push(\n lookup[tmp >> 2] +\n lookup[(tmp << 4) & 0x3F] +\n '=='\n )\n } else if (extraBytes === 2) {\n tmp = (uint8[len - 2] << 8) + uint8[len - 1]\n parts.push(\n lookup[tmp >> 10] +\n lookup[(tmp >> 4) & 0x3F] +\n lookup[(tmp << 2) & 0x3F] +\n '='\n )\n }\n\n return parts.join('')\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 $ = require('../internals/export');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar objectDefinePropertyModile = require('../internals/object-define-property');\n\n// `Object.defineProperty` method\n// https://tc39.github.io/ecma262/#sec-object.defineproperty\n$({ target: 'Object', stat: true, forced: !DESCRIPTORS, sham: !DESCRIPTORS }, {\n defineProperty: objectDefinePropertyModile.f\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;border-radius:40px}#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;border-radius:40px}.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\":\"AA2IC,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,CACA,kBAAA,CAGD,8CACC,2CAAA,CACA,qCAAA,CACA,oCAAA,CACA,SAAA,CACA,kBAAA,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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\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\\tborder-radius: 40px;\\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\\tborder-radius: 40px;\\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-10738c5b]{background-color:rgba(0,0,0,.7)}.modal-mask[data-v-10738c5b] .modal-wrapper{position:relative}.modal-mask[data-v-10738c5b] .modal-container{display:flex;flex-direction:column;position:relative}.modal-mask .modal-body[data-v-10738c5b]{flex-grow:1;display:flex;overflow-x:hidden;overflow-y:auto}.modal-mask .modal-body>div[data-v-10738c5b]{display:flex;flex-grow:1;align-items:center;justify-content:center}.modal-header[data-v-10738c5b]{flex-shrink:0}.modal-header .firstrunwizard-header[data-v-10738c5b]{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-10738c5b]{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-10738c5b]{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-10738c5b]{align-self:flex-end}.modal-footer[data-v-10738c5b]{overflow:hidden;position:absolute;display:flex;bottom:0;right:0}.modal-footer button[data-v-10738c5b]{margin:10px}.next-enter-active[data-v-10738c5b],.next-leave-active[data-v-10738c5b],.previous-enter-active[data-v-10738c5b],.previous-leave-active[data-v-10738c5b]{transition:transform .1s,opacity .25s}.next-enter[data-v-10738c5b]{transform:translateX(50%);opacity:0}.next-leave-to[data-v-10738c5b]{transform:translateX(-50%);opacity:0}.previous-enter[data-v-10738c5b]{transform:translateX(-50%);opacity:0}.previous-leave-to[data-v-10738c5b]{transform:translateX(50%);opacity:0}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/App.vue\"],\"names\":[],\"mappings\":\"AAqVA,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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\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","/**\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","/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> */\nexports.read = function (buffer, offset, isLE, mLen, nBytes) {\n var e, m\n var eLen = (nBytes * 8) - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var nBits = -7\n var i = isLE ? (nBytes - 1) : 0\n var d = isLE ? -1 : 1\n var s = buffer[offset + i]\n\n i += d\n\n e = s & ((1 << (-nBits)) - 1)\n s >>= (-nBits)\n nBits += eLen\n for (; nBits > 0; e = (e * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n m = e & ((1 << (-nBits)) - 1)\n e >>= (-nBits)\n nBits += mLen\n for (; nBits > 0; m = (m * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n if (e === 0) {\n e = 1 - eBias\n } else if (e === eMax) {\n return m ? NaN : ((s ? -1 : 1) * Infinity)\n } else {\n m = m + Math.pow(2, mLen)\n e = e - eBias\n }\n return (s ? -1 : 1) * m * Math.pow(2, e - mLen)\n}\n\nexports.write = function (buffer, value, offset, isLE, mLen, nBytes) {\n var e, m, c\n var eLen = (nBytes * 8) - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0)\n var i = isLE ? 0 : (nBytes - 1)\n var d = isLE ? 1 : -1\n var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0\n\n value = Math.abs(value)\n\n if (isNaN(value) || value === Infinity) {\n m = isNaN(value) ? 1 : 0\n e = eMax\n } else {\n e = Math.floor(Math.log(value) / Math.LN2)\n if (value * (c = Math.pow(2, -e)) < 1) {\n e--\n c *= 2\n }\n if (e + eBias >= 1) {\n value += rt / c\n } else {\n value += rt * Math.pow(2, 1 - eBias)\n }\n if (value * c >= 2) {\n e++\n c /= 2\n }\n\n if (e + eBias >= eMax) {\n m = 0\n e = eMax\n } else if (e + eBias >= 1) {\n m = ((value * c) - 1) * Math.pow(2, mLen)\n e = e + eBias\n } else {\n m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen)\n e = 0\n }\n }\n\n for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {}\n\n e = (e << mLen) | m\n eLen += mLen\n for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {}\n\n buffer[offset + i - d] |= s * 128\n}\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","'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};","/*!\n * The buffer module from node.js, for the browser.\n *\n * @author Feross Aboukhadijeh <https://feross.org>\n * @license MIT\n */\n/* eslint-disable no-proto */\n\n'use strict'\n\nconst base64 = require('base64-js')\nconst ieee754 = require('ieee754')\nconst customInspectSymbol =\n (typeof Symbol === 'function' && typeof Symbol['for'] === 'function') // eslint-disable-line dot-notation\n ? Symbol['for']('nodejs.util.inspect.custom') // eslint-disable-line dot-notation\n : null\n\nexports.Buffer = Buffer\nexports.SlowBuffer = SlowBuffer\nexports.INSPECT_MAX_BYTES = 50\n\nconst K_MAX_LENGTH = 0x7fffffff\nexports.kMaxLength = K_MAX_LENGTH\n\n/**\n * If `Buffer.TYPED_ARRAY_SUPPORT`:\n * === true Use Uint8Array implementation (fastest)\n * === false Print warning and recommend using `buffer` v4.x which has an Object\n * implementation (most compatible, even IE6)\n *\n * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+,\n * Opera 11.6+, iOS 4.2+.\n *\n * We report that the browser does not support typed arrays if the are not subclassable\n * using __proto__. Firefox 4-29 lacks support for adding new properties to `Uint8Array`\n * (See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438). IE 10 lacks support\n * for __proto__ and has a buggy typed array implementation.\n */\nBuffer.TYPED_ARRAY_SUPPORT = typedArraySupport()\n\nif (!Buffer.TYPED_ARRAY_SUPPORT && typeof console !== 'undefined' &&\n typeof console.error === 'function') {\n console.error(\n 'This browser lacks typed array (Uint8Array) support which is required by ' +\n '`buffer` v5.x. Use `buffer` v4.x if you require old browser support.'\n )\n}\n\nfunction typedArraySupport () {\n // Can typed array instances can be augmented?\n try {\n const arr = new Uint8Array(1)\n const proto = { foo: function () { return 42 } }\n Object.setPrototypeOf(proto, Uint8Array.prototype)\n Object.setPrototypeOf(arr, proto)\n return arr.foo() === 42\n } catch (e) {\n return false\n }\n}\n\nObject.defineProperty(Buffer.prototype, 'parent', {\n enumerable: true,\n get: function () {\n if (!Buffer.isBuffer(this)) return undefined\n return this.buffer\n }\n})\n\nObject.defineProperty(Buffer.prototype, 'offset', {\n enumerable: true,\n get: function () {\n if (!Buffer.isBuffer(this)) return undefined\n return this.byteOffset\n }\n})\n\nfunction createBuffer (length) {\n if (length > K_MAX_LENGTH) {\n throw new RangeError('The value \"' + length + '\" is invalid for option \"size\"')\n }\n // Return an augmented `Uint8Array` instance\n const buf = new Uint8Array(length)\n Object.setPrototypeOf(buf, Buffer.prototype)\n return buf\n}\n\n/**\n * The Buffer constructor returns instances of `Uint8Array` that have their\n * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of\n * `Uint8Array`, so the returned instances will have all the node `Buffer` methods\n * and the `Uint8Array` methods. Square bracket notation works as expected -- it\n * returns a single octet.\n *\n * The `Uint8Array` prototype remains unmodified.\n */\n\nfunction Buffer (arg, encodingOrOffset, length) {\n // Common case.\n if (typeof arg === 'number') {\n if (typeof encodingOrOffset === 'string') {\n throw new TypeError(\n 'The \"string\" argument must be of type string. Received type number'\n )\n }\n return allocUnsafe(arg)\n }\n return from(arg, encodingOrOffset, length)\n}\n\nBuffer.poolSize = 8192 // not used by this implementation\n\nfunction from (value, encodingOrOffset, length) {\n if (typeof value === 'string') {\n return fromString(value, encodingOrOffset)\n }\n\n if (ArrayBuffer.isView(value)) {\n return fromArrayView(value)\n }\n\n if (value == null) {\n throw new TypeError(\n 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' +\n 'or Array-like Object. Received type ' + (typeof value)\n )\n }\n\n if (isInstance(value, ArrayBuffer) ||\n (value && isInstance(value.buffer, ArrayBuffer))) {\n return fromArrayBuffer(value, encodingOrOffset, length)\n }\n\n if (typeof SharedArrayBuffer !== 'undefined' &&\n (isInstance(value, SharedArrayBuffer) ||\n (value && isInstance(value.buffer, SharedArrayBuffer)))) {\n return fromArrayBuffer(value, encodingOrOffset, length)\n }\n\n if (typeof value === 'number') {\n throw new TypeError(\n 'The \"value\" argument must not be of type number. Received type number'\n )\n }\n\n const valueOf = value.valueOf && value.valueOf()\n if (valueOf != null && valueOf !== value) {\n return Buffer.from(valueOf, encodingOrOffset, length)\n }\n\n const b = fromObject(value)\n if (b) return b\n\n if (typeof Symbol !== 'undefined' && Symbol.toPrimitive != null &&\n typeof value[Symbol.toPrimitive] === 'function') {\n return Buffer.from(value[Symbol.toPrimitive]('string'), encodingOrOffset, length)\n }\n\n throw new TypeError(\n 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' +\n 'or Array-like Object. Received type ' + (typeof value)\n )\n}\n\n/**\n * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError\n * if value is a number.\n * Buffer.from(str[, encoding])\n * Buffer.from(array)\n * Buffer.from(buffer)\n * Buffer.from(arrayBuffer[, byteOffset[, length]])\n **/\nBuffer.from = function (value, encodingOrOffset, length) {\n return from(value, encodingOrOffset, length)\n}\n\n// Note: Change prototype *after* Buffer.from is defined to workaround Chrome bug:\n// https://github.com/feross/buffer/pull/148\nObject.setPrototypeOf(Buffer.prototype, Uint8Array.prototype)\nObject.setPrototypeOf(Buffer, Uint8Array)\n\nfunction assertSize (size) {\n if (typeof size !== 'number') {\n throw new TypeError('\"size\" argument must be of type number')\n } else if (size < 0) {\n throw new RangeError('The value \"' + size + '\" is invalid for option \"size\"')\n }\n}\n\nfunction alloc (size, fill, encoding) {\n assertSize(size)\n if (size <= 0) {\n return createBuffer(size)\n }\n if (fill !== undefined) {\n // Only pay attention to encoding if it's a string. This\n // prevents accidentally sending in a number that would\n // be interpreted as a start offset.\n return typeof encoding === 'string'\n ? createBuffer(size).fill(fill, encoding)\n : createBuffer(size).fill(fill)\n }\n return createBuffer(size)\n}\n\n/**\n * Creates a new filled Buffer instance.\n * alloc(size[, fill[, encoding]])\n **/\nBuffer.alloc = function (size, fill, encoding) {\n return alloc(size, fill, encoding)\n}\n\nfunction allocUnsafe (size) {\n assertSize(size)\n return createBuffer(size < 0 ? 0 : checked(size) | 0)\n}\n\n/**\n * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance.\n * */\nBuffer.allocUnsafe = function (size) {\n return allocUnsafe(size)\n}\n/**\n * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance.\n */\nBuffer.allocUnsafeSlow = function (size) {\n return allocUnsafe(size)\n}\n\nfunction fromString (string, encoding) {\n if (typeof encoding !== 'string' || encoding === '') {\n encoding = 'utf8'\n }\n\n if (!Buffer.isEncoding(encoding)) {\n throw new TypeError('Unknown encoding: ' + encoding)\n }\n\n const length = byteLength(string, encoding) | 0\n let buf = createBuffer(length)\n\n const actual = buf.write(string, encoding)\n\n if (actual !== length) {\n // Writing a hex string, for example, that contains invalid characters will\n // cause everything after the first invalid character to be ignored. (e.g.\n // 'abxxcd' will be treated as 'ab')\n buf = buf.slice(0, actual)\n }\n\n return buf\n}\n\nfunction fromArrayLike (array) {\n const length = array.length < 0 ? 0 : checked(array.length) | 0\n const buf = createBuffer(length)\n for (let i = 0; i < length; i += 1) {\n buf[i] = array[i] & 255\n }\n return buf\n}\n\nfunction fromArrayView (arrayView) {\n if (isInstance(arrayView, Uint8Array)) {\n const copy = new Uint8Array(arrayView)\n return fromArrayBuffer(copy.buffer, copy.byteOffset, copy.byteLength)\n }\n return fromArrayLike(arrayView)\n}\n\nfunction fromArrayBuffer (array, byteOffset, length) {\n if (byteOffset < 0 || array.byteLength < byteOffset) {\n throw new RangeError('\"offset\" is outside of buffer bounds')\n }\n\n if (array.byteLength < byteOffset + (length || 0)) {\n throw new RangeError('\"length\" is outside of buffer bounds')\n }\n\n let buf\n if (byteOffset === undefined && length === undefined) {\n buf = new Uint8Array(array)\n } else if (length === undefined) {\n buf = new Uint8Array(array, byteOffset)\n } else {\n buf = new Uint8Array(array, byteOffset, length)\n }\n\n // Return an augmented `Uint8Array` instance\n Object.setPrototypeOf(buf, Buffer.prototype)\n\n return buf\n}\n\nfunction fromObject (obj) {\n if (Buffer.isBuffer(obj)) {\n const len = checked(obj.length) | 0\n const buf = createBuffer(len)\n\n if (buf.length === 0) {\n return buf\n }\n\n obj.copy(buf, 0, 0, len)\n return buf\n }\n\n if (obj.length !== undefined) {\n if (typeof obj.length !== 'number' || numberIsNaN(obj.length)) {\n return createBuffer(0)\n }\n return fromArrayLike(obj)\n }\n\n if (obj.type === 'Buffer' && Array.isArray(obj.data)) {\n return fromArrayLike(obj.data)\n }\n}\n\nfunction checked (length) {\n // Note: cannot use `length < K_MAX_LENGTH` here because that fails when\n // length is NaN (which is otherwise coerced to zero.)\n if (length >= K_MAX_LENGTH) {\n throw new RangeError('Attempt to allocate Buffer larger than maximum ' +\n 'size: 0x' + K_MAX_LENGTH.toString(16) + ' bytes')\n }\n return length | 0\n}\n\nfunction SlowBuffer (length) {\n if (+length != length) { // eslint-disable-line eqeqeq\n length = 0\n }\n return Buffer.alloc(+length)\n}\n\nBuffer.isBuffer = function isBuffer (b) {\n return b != null && b._isBuffer === true &&\n b !== Buffer.prototype // so Buffer.isBuffer(Buffer.prototype) will be false\n}\n\nBuffer.compare = function compare (a, b) {\n if (isInstance(a, Uint8Array)) a = Buffer.from(a, a.offset, a.byteLength)\n if (isInstance(b, Uint8Array)) b = Buffer.from(b, b.offset, b.byteLength)\n if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) {\n throw new TypeError(\n 'The \"buf1\", \"buf2\" arguments must be one of type Buffer or Uint8Array'\n )\n }\n\n if (a === b) return 0\n\n let x = a.length\n let y = b.length\n\n for (let 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) return -1\n if (y < x) return 1\n return 0\n}\n\nBuffer.isEncoding = function isEncoding (encoding) {\n switch (String(encoding).toLowerCase()) {\n case 'hex':\n case 'utf8':\n case 'utf-8':\n case 'ascii':\n case 'latin1':\n case 'binary':\n case 'base64':\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return true\n default:\n return false\n }\n}\n\nBuffer.concat = function concat (list, length) {\n if (!Array.isArray(list)) {\n throw new TypeError('\"list\" argument must be an Array of Buffers')\n }\n\n if (list.length === 0) {\n return Buffer.alloc(0)\n }\n\n let i\n if (length === undefined) {\n length = 0\n for (i = 0; i < list.length; ++i) {\n length += list[i].length\n }\n }\n\n const buffer = Buffer.allocUnsafe(length)\n let pos = 0\n for (i = 0; i < list.length; ++i) {\n let buf = list[i]\n if (isInstance(buf, Uint8Array)) {\n if (pos + buf.length > buffer.length) {\n if (!Buffer.isBuffer(buf)) buf = Buffer.from(buf)\n buf.copy(buffer, pos)\n } else {\n Uint8Array.prototype.set.call(\n buffer,\n buf,\n pos\n )\n }\n } else if (!Buffer.isBuffer(buf)) {\n throw new TypeError('\"list\" argument must be an Array of Buffers')\n } else {\n buf.copy(buffer, pos)\n }\n pos += buf.length\n }\n return buffer\n}\n\nfunction byteLength (string, encoding) {\n if (Buffer.isBuffer(string)) {\n return string.length\n }\n if (ArrayBuffer.isView(string) || isInstance(string, ArrayBuffer)) {\n return string.byteLength\n }\n if (typeof string !== 'string') {\n throw new TypeError(\n 'The \"string\" argument must be one of type string, Buffer, or ArrayBuffer. ' +\n 'Received type ' + typeof string\n )\n }\n\n const len = string.length\n const mustMatch = (arguments.length > 2 && arguments[2] === true)\n if (!mustMatch && len === 0) return 0\n\n // Use a for loop to avoid recursion\n let loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'ascii':\n case 'latin1':\n case 'binary':\n return len\n case 'utf8':\n case 'utf-8':\n return utf8ToBytes(string).length\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return len * 2\n case 'hex':\n return len >>> 1\n case 'base64':\n return base64ToBytes(string).length\n default:\n if (loweredCase) {\n return mustMatch ? -1 : utf8ToBytes(string).length // assume utf8\n }\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\nBuffer.byteLength = byteLength\n\nfunction slowToString (encoding, start, end) {\n let loweredCase = false\n\n // No need to verify that \"this.length <= MAX_UINT32\" since it's a read-only\n // property of a typed array.\n\n // This behaves neither like String nor Uint8Array in that we set start/end\n // to their upper/lower bounds if the value passed is out of range.\n // undefined is handled specially as per ECMA-262 6th Edition,\n // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization.\n if (start === undefined || start < 0) {\n start = 0\n }\n // Return early if start > this.length. Done here to prevent potential uint32\n // coercion fail below.\n if (start > this.length) {\n return ''\n }\n\n if (end === undefined || end > this.length) {\n end = this.length\n }\n\n if (end <= 0) {\n return ''\n }\n\n // Force coercion to uint32. This will also coerce falsey/NaN values to 0.\n end >>>= 0\n start >>>= 0\n\n if (end <= start) {\n return ''\n }\n\n if (!encoding) encoding = 'utf8'\n\n while (true) {\n switch (encoding) {\n case 'hex':\n return hexSlice(this, start, end)\n\n case 'utf8':\n case 'utf-8':\n return utf8Slice(this, start, end)\n\n case 'ascii':\n return asciiSlice(this, start, end)\n\n case 'latin1':\n case 'binary':\n return latin1Slice(this, start, end)\n\n case 'base64':\n return base64Slice(this, start, end)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return utf16leSlice(this, start, end)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = (encoding + '').toLowerCase()\n loweredCase = true\n }\n }\n}\n\n// This property is used by `Buffer.isBuffer` (and the `is-buffer` npm package)\n// to detect a Buffer instance. It's not possible to use `instanceof Buffer`\n// reliably in a browserify context because there could be multiple different\n// copies of the 'buffer' package in use. This method works even for Buffer\n// instances that were created from another copy of the `buffer` package.\n// See: https://github.com/feross/buffer/issues/154\nBuffer.prototype._isBuffer = true\n\nfunction swap (b, n, m) {\n const i = b[n]\n b[n] = b[m]\n b[m] = i\n}\n\nBuffer.prototype.swap16 = function swap16 () {\n const len = this.length\n if (len % 2 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 16-bits')\n }\n for (let i = 0; i < len; i += 2) {\n swap(this, i, i + 1)\n }\n return this\n}\n\nBuffer.prototype.swap32 = function swap32 () {\n const len = this.length\n if (len % 4 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 32-bits')\n }\n for (let i = 0; i < len; i += 4) {\n swap(this, i, i + 3)\n swap(this, i + 1, i + 2)\n }\n return this\n}\n\nBuffer.prototype.swap64 = function swap64 () {\n const len = this.length\n if (len % 8 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 64-bits')\n }\n for (let i = 0; i < len; i += 8) {\n swap(this, i, i + 7)\n swap(this, i + 1, i + 6)\n swap(this, i + 2, i + 5)\n swap(this, i + 3, i + 4)\n }\n return this\n}\n\nBuffer.prototype.toString = function toString () {\n const length = this.length\n if (length === 0) return ''\n if (arguments.length === 0) return utf8Slice(this, 0, length)\n return slowToString.apply(this, arguments)\n}\n\nBuffer.prototype.toLocaleString = Buffer.prototype.toString\n\nBuffer.prototype.equals = function equals (b) {\n if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer')\n if (this === b) return true\n return Buffer.compare(this, b) === 0\n}\n\nBuffer.prototype.inspect = function inspect () {\n let str = ''\n const max = exports.INSPECT_MAX_BYTES\n str = this.toString('hex', 0, max).replace(/(.{2})/g, '$1 ').trim()\n if (this.length > max) str += ' ... '\n return '<Buffer ' + str + '>'\n}\nif (customInspectSymbol) {\n Buffer.prototype[customInspectSymbol] = Buffer.prototype.inspect\n}\n\nBuffer.prototype.compare = function compare (target, start, end, thisStart, thisEnd) {\n if (isInstance(target, Uint8Array)) {\n target = Buffer.from(target, target.offset, target.byteLength)\n }\n if (!Buffer.isBuffer(target)) {\n throw new TypeError(\n 'The \"target\" argument must be one of type Buffer or Uint8Array. ' +\n 'Received type ' + (typeof target)\n )\n }\n\n if (start === undefined) {\n start = 0\n }\n if (end === undefined) {\n end = target ? target.length : 0\n }\n if (thisStart === undefined) {\n thisStart = 0\n }\n if (thisEnd === undefined) {\n thisEnd = this.length\n }\n\n if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) {\n throw new RangeError('out of range index')\n }\n\n if (thisStart >= thisEnd && start >= end) {\n return 0\n }\n if (thisStart >= thisEnd) {\n return -1\n }\n if (start >= end) {\n return 1\n }\n\n start >>>= 0\n end >>>= 0\n thisStart >>>= 0\n thisEnd >>>= 0\n\n if (this === target) return 0\n\n let x = thisEnd - thisStart\n let y = end - start\n const len = Math.min(x, y)\n\n const thisCopy = this.slice(thisStart, thisEnd)\n const targetCopy = target.slice(start, end)\n\n for (let i = 0; i < len; ++i) {\n if (thisCopy[i] !== targetCopy[i]) {\n x = thisCopy[i]\n y = targetCopy[i]\n break\n }\n }\n\n if (x < y) return -1\n if (y < x) return 1\n return 0\n}\n\n// Finds either the first index of `val` in `buffer` at offset >= `byteOffset`,\n// OR the last index of `val` in `buffer` at offset <= `byteOffset`.\n//\n// Arguments:\n// - buffer - a Buffer to search\n// - val - a string, Buffer, or number\n// - byteOffset - an index into `buffer`; will be clamped to an int32\n// - encoding - an optional encoding, relevant is val is a string\n// - dir - true for indexOf, false for lastIndexOf\nfunction bidirectionalIndexOf (buffer, val, byteOffset, encoding, dir) {\n // Empty buffer means no match\n if (buffer.length === 0) return -1\n\n // Normalize byteOffset\n if (typeof byteOffset === 'string') {\n encoding = byteOffset\n byteOffset = 0\n } else if (byteOffset > 0x7fffffff) {\n byteOffset = 0x7fffffff\n } else if (byteOffset < -0x80000000) {\n byteOffset = -0x80000000\n }\n byteOffset = +byteOffset // Coerce to Number.\n if (numberIsNaN(byteOffset)) {\n // byteOffset: it it's undefined, null, NaN, \"foo\", etc, search whole buffer\n byteOffset = dir ? 0 : (buffer.length - 1)\n }\n\n // Normalize byteOffset: negative offsets start from the end of the buffer\n if (byteOffset < 0) byteOffset = buffer.length + byteOffset\n if (byteOffset >= buffer.length) {\n if (dir) return -1\n else byteOffset = buffer.length - 1\n } else if (byteOffset < 0) {\n if (dir) byteOffset = 0\n else return -1\n }\n\n // Normalize val\n if (typeof val === 'string') {\n val = Buffer.from(val, encoding)\n }\n\n // Finally, search either indexOf (if dir is true) or lastIndexOf\n if (Buffer.isBuffer(val)) {\n // Special case: looking for empty string/buffer always fails\n if (val.length === 0) {\n return -1\n }\n return arrayIndexOf(buffer, val, byteOffset, encoding, dir)\n } else if (typeof val === 'number') {\n val = val & 0xFF // Search for a byte value [0-255]\n if (typeof Uint8Array.prototype.indexOf === 'function') {\n if (dir) {\n return Uint8Array.prototype.indexOf.call(buffer, val, byteOffset)\n } else {\n return Uint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset)\n }\n }\n return arrayIndexOf(buffer, [val], byteOffset, encoding, dir)\n }\n\n throw new TypeError('val must be string, number or Buffer')\n}\n\nfunction arrayIndexOf (arr, val, byteOffset, encoding, dir) {\n let indexSize = 1\n let arrLength = arr.length\n let valLength = val.length\n\n if (encoding !== undefined) {\n encoding = String(encoding).toLowerCase()\n if (encoding === 'ucs2' || encoding === 'ucs-2' ||\n encoding === 'utf16le' || encoding === 'utf-16le') {\n if (arr.length < 2 || val.length < 2) {\n return -1\n }\n indexSize = 2\n arrLength /= 2\n valLength /= 2\n byteOffset /= 2\n }\n }\n\n function read (buf, i) {\n if (indexSize === 1) {\n return buf[i]\n } else {\n return buf.readUInt16BE(i * indexSize)\n }\n }\n\n let i\n if (dir) {\n let foundIndex = -1\n for (i = byteOffset; i < arrLength; i++) {\n if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) {\n if (foundIndex === -1) foundIndex = i\n if (i - foundIndex + 1 === valLength) return foundIndex * indexSize\n } else {\n if (foundIndex !== -1) i -= i - foundIndex\n foundIndex = -1\n }\n }\n } else {\n if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength\n for (i = byteOffset; i >= 0; i--) {\n let found = true\n for (let j = 0; j < valLength; j++) {\n if (read(arr, i + j) !== read(val, j)) {\n found = false\n break\n }\n }\n if (found) return i\n }\n }\n\n return -1\n}\n\nBuffer.prototype.includes = function includes (val, byteOffset, encoding) {\n return this.indexOf(val, byteOffset, encoding) !== -1\n}\n\nBuffer.prototype.indexOf = function indexOf (val, byteOffset, encoding) {\n return bidirectionalIndexOf(this, val, byteOffset, encoding, true)\n}\n\nBuffer.prototype.lastIndexOf = function lastIndexOf (val, byteOffset, encoding) {\n return bidirectionalIndexOf(this, val, byteOffset, encoding, false)\n}\n\nfunction hexWrite (buf, string, offset, length) {\n offset = Number(offset) || 0\n const remaining = buf.length - offset\n if (!length) {\n length = remaining\n } else {\n length = Number(length)\n if (length > remaining) {\n length = remaining\n }\n }\n\n const strLen = string.length\n\n if (length > strLen / 2) {\n length = strLen / 2\n }\n let i\n for (i = 0; i < length; ++i) {\n const parsed = parseInt(string.substr(i * 2, 2), 16)\n if (numberIsNaN(parsed)) return i\n buf[offset + i] = parsed\n }\n return i\n}\n\nfunction utf8Write (buf, string, offset, length) {\n return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nfunction asciiWrite (buf, string, offset, length) {\n return blitBuffer(asciiToBytes(string), buf, offset, length)\n}\n\nfunction base64Write (buf, string, offset, length) {\n return blitBuffer(base64ToBytes(string), buf, offset, length)\n}\n\nfunction ucs2Write (buf, string, offset, length) {\n return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nBuffer.prototype.write = function write (string, offset, length, encoding) {\n // Buffer#write(string)\n if (offset === undefined) {\n encoding = 'utf8'\n length = this.length\n offset = 0\n // Buffer#write(string, encoding)\n } else if (length === undefined && typeof offset === 'string') {\n encoding = offset\n length = this.length\n offset = 0\n // Buffer#write(string, offset[, length][, encoding])\n } else if (isFinite(offset)) {\n offset = offset >>> 0\n if (isFinite(length)) {\n length = length >>> 0\n if (encoding === undefined) encoding = 'utf8'\n } else {\n encoding = length\n length = undefined\n }\n } else {\n throw new Error(\n 'Buffer.write(string, encoding, offset[, length]) is no longer supported'\n )\n }\n\n const remaining = this.length - offset\n if (length === undefined || length > remaining) length = remaining\n\n if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) {\n throw new RangeError('Attempt to write outside buffer bounds')\n }\n\n if (!encoding) encoding = 'utf8'\n\n let loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'hex':\n return hexWrite(this, string, offset, length)\n\n case 'utf8':\n case 'utf-8':\n return utf8Write(this, string, offset, length)\n\n case 'ascii':\n case 'latin1':\n case 'binary':\n return asciiWrite(this, string, offset, length)\n\n case 'base64':\n // Warning: maxLength not taken into account in base64Write\n return base64Write(this, string, offset, length)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return ucs2Write(this, string, offset, length)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\n\nBuffer.prototype.toJSON = function toJSON () {\n return {\n type: 'Buffer',\n data: Array.prototype.slice.call(this._arr || this, 0)\n }\n}\n\nfunction base64Slice (buf, start, end) {\n if (start === 0 && end === buf.length) {\n return base64.fromByteArray(buf)\n } else {\n return base64.fromByteArray(buf.slice(start, end))\n }\n}\n\nfunction utf8Slice (buf, start, end) {\n end = Math.min(buf.length, end)\n const res = []\n\n let i = start\n while (i < end) {\n const firstByte = buf[i]\n let codePoint = null\n let bytesPerSequence = (firstByte > 0xEF)\n ? 4\n : (firstByte > 0xDF)\n ? 3\n : (firstByte > 0xBF)\n ? 2\n : 1\n\n if (i + bytesPerSequence <= end) {\n let secondByte, thirdByte, fourthByte, tempCodePoint\n\n switch (bytesPerSequence) {\n case 1:\n if (firstByte < 0x80) {\n codePoint = firstByte\n }\n break\n case 2:\n secondByte = buf[i + 1]\n if ((secondByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F)\n if (tempCodePoint > 0x7F) {\n codePoint = tempCodePoint\n }\n }\n break\n case 3:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F)\n if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) {\n codePoint = tempCodePoint\n }\n }\n break\n case 4:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n fourthByte = buf[i + 3]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F)\n if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) {\n codePoint = tempCodePoint\n }\n }\n }\n }\n\n if (codePoint === null) {\n // we did not generate a valid codePoint so insert a\n // replacement char (U+FFFD) and advance only 1 byte\n codePoint = 0xFFFD\n bytesPerSequence = 1\n } else if (codePoint > 0xFFFF) {\n // encode to utf16 (surrogate pair dance)\n codePoint -= 0x10000\n res.push(codePoint >>> 10 & 0x3FF | 0xD800)\n codePoint = 0xDC00 | codePoint & 0x3FF\n }\n\n res.push(codePoint)\n i += bytesPerSequence\n }\n\n return decodeCodePointsArray(res)\n}\n\n// Based on http://stackoverflow.com/a/22747272/680742, the browser with\n// the lowest limit is Chrome, with 0x10000 args.\n// We go 1 magnitude less, for safety\nconst MAX_ARGUMENTS_LENGTH = 0x1000\n\nfunction decodeCodePointsArray (codePoints) {\n const len = codePoints.length\n if (len <= MAX_ARGUMENTS_LENGTH) {\n return String.fromCharCode.apply(String, codePoints) // avoid extra slice()\n }\n\n // Decode in chunks to avoid \"call stack size exceeded\".\n let res = ''\n let i = 0\n while (i < len) {\n res += String.fromCharCode.apply(\n String,\n codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH)\n )\n }\n return res\n}\n\nfunction asciiSlice (buf, start, end) {\n let ret = ''\n end = Math.min(buf.length, end)\n\n for (let i = start; i < end; ++i) {\n ret += String.fromCharCode(buf[i] & 0x7F)\n }\n return ret\n}\n\nfunction latin1Slice (buf, start, end) {\n let ret = ''\n end = Math.min(buf.length, end)\n\n for (let i = start; i < end; ++i) {\n ret += String.fromCharCode(buf[i])\n }\n return ret\n}\n\nfunction hexSlice (buf, start, end) {\n const len = buf.length\n\n if (!start || start < 0) start = 0\n if (!end || end < 0 || end > len) end = len\n\n let out = ''\n for (let i = start; i < end; ++i) {\n out += hexSliceLookupTable[buf[i]]\n }\n return out\n}\n\nfunction utf16leSlice (buf, start, end) {\n const bytes = buf.slice(start, end)\n let res = ''\n // If bytes.length is odd, the last 8 bits must be ignored (same as node.js)\n for (let i = 0; i < bytes.length - 1; i += 2) {\n res += String.fromCharCode(bytes[i] + (bytes[i + 1] * 256))\n }\n return res\n}\n\nBuffer.prototype.slice = function slice (start, end) {\n const len = this.length\n start = ~~start\n end = end === undefined ? len : ~~end\n\n if (start < 0) {\n start += len\n if (start < 0) start = 0\n } else if (start > len) {\n start = len\n }\n\n if (end < 0) {\n end += len\n if (end < 0) end = 0\n } else if (end > len) {\n end = len\n }\n\n if (end < start) end = start\n\n const newBuf = this.subarray(start, end)\n // Return an augmented `Uint8Array` instance\n Object.setPrototypeOf(newBuf, Buffer.prototype)\n\n return newBuf\n}\n\n/*\n * Need to make sure that buffer isn't trying to write out of bounds.\n */\nfunction checkOffset (offset, ext, length) {\n if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint')\n if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length')\n}\n\nBuffer.prototype.readUintLE =\nBuffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n let val = this[offset]\n let mul = 1\n let i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUintBE =\nBuffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) {\n checkOffset(offset, byteLength, this.length)\n }\n\n let val = this[offset + --byteLength]\n let mul = 1\n while (byteLength > 0 && (mul *= 0x100)) {\n val += this[offset + --byteLength] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUint8 =\nBuffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 1, this.length)\n return this[offset]\n}\n\nBuffer.prototype.readUint16LE =\nBuffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n return this[offset] | (this[offset + 1] << 8)\n}\n\nBuffer.prototype.readUint16BE =\nBuffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n return (this[offset] << 8) | this[offset + 1]\n}\n\nBuffer.prototype.readUint32LE =\nBuffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return ((this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16)) +\n (this[offset + 3] * 0x1000000)\n}\n\nBuffer.prototype.readUint32BE =\nBuffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] * 0x1000000) +\n ((this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n this[offset + 3])\n}\n\nBuffer.prototype.readBigUInt64LE = defineBigIntMethod(function readBigUInt64LE (offset) {\n offset = offset >>> 0\n validateNumber(offset, 'offset')\n const first = this[offset]\n const last = this[offset + 7]\n if (first === undefined || last === undefined) {\n boundsError(offset, this.length - 8)\n }\n\n const lo = first +\n this[++offset] * 2 ** 8 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 24\n\n const hi = this[++offset] +\n this[++offset] * 2 ** 8 +\n this[++offset] * 2 ** 16 +\n last * 2 ** 24\n\n return BigInt(lo) + (BigInt(hi) << BigInt(32))\n})\n\nBuffer.prototype.readBigUInt64BE = defineBigIntMethod(function readBigUInt64BE (offset) {\n offset = offset >>> 0\n validateNumber(offset, 'offset')\n const first = this[offset]\n const last = this[offset + 7]\n if (first === undefined || last === undefined) {\n boundsError(offset, this.length - 8)\n }\n\n const hi = first * 2 ** 24 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 8 +\n this[++offset]\n\n const lo = this[++offset] * 2 ** 24 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 8 +\n last\n\n return (BigInt(hi) << BigInt(32)) + BigInt(lo)\n})\n\nBuffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n let val = this[offset]\n let mul = 1\n let i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n let i = byteLength\n let mul = 1\n let val = this[offset + --i]\n while (i > 0 && (mul *= 0x100)) {\n val += this[offset + --i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readInt8 = function readInt8 (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 1, this.length)\n if (!(this[offset] & 0x80)) return (this[offset])\n return ((0xff - this[offset] + 1) * -1)\n}\n\nBuffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n const val = this[offset] | (this[offset + 1] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n const val = this[offset + 1] | (this[offset] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16) |\n (this[offset + 3] << 24)\n}\n\nBuffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] << 24) |\n (this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n (this[offset + 3])\n}\n\nBuffer.prototype.readBigInt64LE = defineBigIntMethod(function readBigInt64LE (offset) {\n offset = offset >>> 0\n validateNumber(offset, 'offset')\n const first = this[offset]\n const last = this[offset + 7]\n if (first === undefined || last === undefined) {\n boundsError(offset, this.length - 8)\n }\n\n const val = this[offset + 4] +\n this[offset + 5] * 2 ** 8 +\n this[offset + 6] * 2 ** 16 +\n (last << 24) // Overflow\n\n return (BigInt(val) << BigInt(32)) +\n BigInt(first +\n this[++offset] * 2 ** 8 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 24)\n})\n\nBuffer.prototype.readBigInt64BE = defineBigIntMethod(function readBigInt64BE (offset) {\n offset = offset >>> 0\n validateNumber(offset, 'offset')\n const first = this[offset]\n const last = this[offset + 7]\n if (first === undefined || last === undefined) {\n boundsError(offset, this.length - 8)\n }\n\n const val = (first << 24) + // Overflow\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 8 +\n this[++offset]\n\n return (BigInt(val) << BigInt(32)) +\n BigInt(this[++offset] * 2 ** 24 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 8 +\n last)\n})\n\nBuffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, true, 23, 4)\n}\n\nBuffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, false, 23, 4)\n}\n\nBuffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, true, 52, 8)\n}\n\nBuffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, false, 52, 8)\n}\n\nfunction checkInt (buf, value, offset, ext, max, min) {\n if (!Buffer.isBuffer(buf)) throw new TypeError('\"buffer\" argument must be a Buffer instance')\n if (value > max || value < min) throw new RangeError('\"value\" argument is out of bounds')\n if (offset + ext > buf.length) throw new RangeError('Index out of range')\n}\n\nBuffer.prototype.writeUintLE =\nBuffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) {\n const maxBytes = Math.pow(2, 8 * byteLength) - 1\n checkInt(this, value, offset, byteLength, maxBytes, 0)\n }\n\n let mul = 1\n let i = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUintBE =\nBuffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) {\n const maxBytes = Math.pow(2, 8 * byteLength) - 1\n checkInt(this, value, offset, byteLength, maxBytes, 0)\n }\n\n let i = byteLength - 1\n let mul = 1\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUint8 =\nBuffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0)\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nBuffer.prototype.writeUint16LE =\nBuffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n return offset + 2\n}\n\nBuffer.prototype.writeUint16BE =\nBuffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n return offset + 2\n}\n\nBuffer.prototype.writeUint32LE =\nBuffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n this[offset + 3] = (value >>> 24)\n this[offset + 2] = (value >>> 16)\n this[offset + 1] = (value >>> 8)\n this[offset] = (value & 0xff)\n return offset + 4\n}\n\nBuffer.prototype.writeUint32BE =\nBuffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n return offset + 4\n}\n\nfunction wrtBigUInt64LE (buf, value, offset, min, max) {\n checkIntBI(value, min, max, buf, offset, 7)\n\n let lo = Number(value & BigInt(0xffffffff))\n buf[offset++] = lo\n lo = lo >> 8\n buf[offset++] = lo\n lo = lo >> 8\n buf[offset++] = lo\n lo = lo >> 8\n buf[offset++] = lo\n let hi = Number(value >> BigInt(32) & BigInt(0xffffffff))\n buf[offset++] = hi\n hi = hi >> 8\n buf[offset++] = hi\n hi = hi >> 8\n buf[offset++] = hi\n hi = hi >> 8\n buf[offset++] = hi\n return offset\n}\n\nfunction wrtBigUInt64BE (buf, value, offset, min, max) {\n checkIntBI(value, min, max, buf, offset, 7)\n\n let lo = Number(value & BigInt(0xffffffff))\n buf[offset + 7] = lo\n lo = lo >> 8\n buf[offset + 6] = lo\n lo = lo >> 8\n buf[offset + 5] = lo\n lo = lo >> 8\n buf[offset + 4] = lo\n let hi = Number(value >> BigInt(32) & BigInt(0xffffffff))\n buf[offset + 3] = hi\n hi = hi >> 8\n buf[offset + 2] = hi\n hi = hi >> 8\n buf[offset + 1] = hi\n hi = hi >> 8\n buf[offset] = hi\n return offset + 8\n}\n\nBuffer.prototype.writeBigUInt64LE = defineBigIntMethod(function writeBigUInt64LE (value, offset = 0) {\n return wrtBigUInt64LE(this, value, offset, BigInt(0), BigInt('0xffffffffffffffff'))\n})\n\nBuffer.prototype.writeBigUInt64BE = defineBigIntMethod(function writeBigUInt64BE (value, offset = 0) {\n return wrtBigUInt64BE(this, value, offset, BigInt(0), BigInt('0xffffffffffffffff'))\n})\n\nBuffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n const limit = Math.pow(2, (8 * byteLength) - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n let i = 0\n let mul = 1\n let sub = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) {\n sub = 1\n }\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n const limit = Math.pow(2, (8 * byteLength) - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n let i = byteLength - 1\n let mul = 1\n let sub = 0\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) {\n sub = 1\n }\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80)\n if (value < 0) value = 0xff + value + 1\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nBuffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n return offset + 2\n}\n\nBuffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n return offset + 2\n}\n\nBuffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n this[offset + 2] = (value >>> 16)\n this[offset + 3] = (value >>> 24)\n return offset + 4\n}\n\nBuffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n if (value < 0) value = 0xffffffff + value + 1\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n return offset + 4\n}\n\nBuffer.prototype.writeBigInt64LE = defineBigIntMethod(function writeBigInt64LE (value, offset = 0) {\n return wrtBigUInt64LE(this, value, offset, -BigInt('0x8000000000000000'), BigInt('0x7fffffffffffffff'))\n})\n\nBuffer.prototype.writeBigInt64BE = defineBigIntMethod(function writeBigInt64BE (value, offset = 0) {\n return wrtBigUInt64BE(this, value, offset, -BigInt('0x8000000000000000'), BigInt('0x7fffffffffffffff'))\n})\n\nfunction checkIEEE754 (buf, value, offset, ext, max, min) {\n if (offset + ext > buf.length) throw new RangeError('Index out of range')\n if (offset < 0) throw new RangeError('Index out of range')\n}\n\nfunction writeFloat (buf, value, offset, littleEndian, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 4, 3.4028234663852886e+38, -3.4028234663852886e+38)\n }\n ieee754.write(buf, value, offset, littleEndian, 23, 4)\n return offset + 4\n}\n\nBuffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) {\n return writeFloat(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) {\n return writeFloat(this, value, offset, false, noAssert)\n}\n\nfunction writeDouble (buf, value, offset, littleEndian, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 8, 1.7976931348623157E+308, -1.7976931348623157E+308)\n }\n ieee754.write(buf, value, offset, littleEndian, 52, 8)\n return offset + 8\n}\n\nBuffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) {\n return writeDouble(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) {\n return writeDouble(this, value, offset, false, noAssert)\n}\n\n// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length)\nBuffer.prototype.copy = function copy (target, targetStart, start, end) {\n if (!Buffer.isBuffer(target)) throw new TypeError('argument should be a Buffer')\n if (!start) start = 0\n if (!end && end !== 0) end = this.length\n if (targetStart >= target.length) targetStart = target.length\n if (!targetStart) targetStart = 0\n if (end > 0 && end < start) end = start\n\n // Copy 0 bytes; we're done\n if (end === start) return 0\n if (target.length === 0 || this.length === 0) return 0\n\n // Fatal error conditions\n if (targetStart < 0) {\n throw new RangeError('targetStart out of bounds')\n }\n if (start < 0 || start >= this.length) throw new RangeError('Index out of range')\n if (end < 0) throw new RangeError('sourceEnd out of bounds')\n\n // Are we oob?\n if (end > this.length) end = this.length\n if (target.length - targetStart < end - start) {\n end = target.length - targetStart + start\n }\n\n const len = end - start\n\n if (this === target && typeof Uint8Array.prototype.copyWithin === 'function') {\n // Use built-in when available, missing from IE11\n this.copyWithin(targetStart, start, end)\n } else {\n Uint8Array.prototype.set.call(\n target,\n this.subarray(start, end),\n targetStart\n )\n }\n\n return len\n}\n\n// Usage:\n// buffer.fill(number[, offset[, end]])\n// buffer.fill(buffer[, offset[, end]])\n// buffer.fill(string[, offset[, end]][, encoding])\nBuffer.prototype.fill = function fill (val, start, end, encoding) {\n // Handle string cases:\n if (typeof val === 'string') {\n if (typeof start === 'string') {\n encoding = start\n start = 0\n end = this.length\n } else if (typeof end === 'string') {\n encoding = end\n end = this.length\n }\n if (encoding !== undefined && typeof encoding !== 'string') {\n throw new TypeError('encoding must be a string')\n }\n if (typeof encoding === 'string' && !Buffer.isEncoding(encoding)) {\n throw new TypeError('Unknown encoding: ' + encoding)\n }\n if (val.length === 1) {\n const code = val.charCodeAt(0)\n if ((encoding === 'utf8' && code < 128) ||\n encoding === 'latin1') {\n // Fast path: If `val` fits into a single byte, use that numeric value.\n val = code\n }\n }\n } else if (typeof val === 'number') {\n val = val & 255\n } else if (typeof val === 'boolean') {\n val = Number(val)\n }\n\n // Invalid ranges are not set to a default, so can range check early.\n if (start < 0 || this.length < start || this.length < end) {\n throw new RangeError('Out of range index')\n }\n\n if (end <= start) {\n return this\n }\n\n start = start >>> 0\n end = end === undefined ? this.length : end >>> 0\n\n if (!val) val = 0\n\n let i\n if (typeof val === 'number') {\n for (i = start; i < end; ++i) {\n this[i] = val\n }\n } else {\n const bytes = Buffer.isBuffer(val)\n ? val\n : Buffer.from(val, encoding)\n const len = bytes.length\n if (len === 0) {\n throw new TypeError('The value \"' + val +\n '\" is invalid for argument \"value\"')\n }\n for (i = 0; i < end - start; ++i) {\n this[i + start] = bytes[i % len]\n }\n }\n\n return this\n}\n\n// CUSTOM ERRORS\n// =============\n\n// Simplified versions from Node, changed for Buffer-only usage\nconst errors = {}\nfunction E (sym, getMessage, Base) {\n errors[sym] = class NodeError extends Base {\n constructor () {\n super()\n\n Object.defineProperty(this, 'message', {\n value: getMessage.apply(this, arguments),\n writable: true,\n configurable: true\n })\n\n // Add the error code to the name to include it in the stack trace.\n this.name = `${this.name} [${sym}]`\n // Access the stack to generate the error message including the error code\n // from the name.\n this.stack // eslint-disable-line no-unused-expressions\n // Reset the name to the actual name.\n delete this.name\n }\n\n get code () {\n return sym\n }\n\n set code (value) {\n Object.defineProperty(this, 'code', {\n configurable: true,\n enumerable: true,\n value,\n writable: true\n })\n }\n\n toString () {\n return `${this.name} [${sym}]: ${this.message}`\n }\n }\n}\n\nE('ERR_BUFFER_OUT_OF_BOUNDS',\n function (name) {\n if (name) {\n return `${name} is outside of buffer bounds`\n }\n\n return 'Attempt to access memory outside buffer bounds'\n }, RangeError)\nE('ERR_INVALID_ARG_TYPE',\n function (name, actual) {\n return `The \"${name}\" argument must be of type number. Received type ${typeof actual}`\n }, TypeError)\nE('ERR_OUT_OF_RANGE',\n function (str, range, input) {\n let msg = `The value of \"${str}\" is out of range.`\n let received = input\n if (Number.isInteger(input) && Math.abs(input) > 2 ** 32) {\n received = addNumericalSeparator(String(input))\n } else if (typeof input === 'bigint') {\n received = String(input)\n if (input > BigInt(2) ** BigInt(32) || input < -(BigInt(2) ** BigInt(32))) {\n received = addNumericalSeparator(received)\n }\n received += 'n'\n }\n msg += ` It must be ${range}. Received ${received}`\n return msg\n }, RangeError)\n\nfunction addNumericalSeparator (val) {\n let res = ''\n let i = val.length\n const start = val[0] === '-' ? 1 : 0\n for (; i >= start + 4; i -= 3) {\n res = `_${val.slice(i - 3, i)}${res}`\n }\n return `${val.slice(0, i)}${res}`\n}\n\n// CHECK FUNCTIONS\n// ===============\n\nfunction checkBounds (buf, offset, byteLength) {\n validateNumber(offset, 'offset')\n if (buf[offset] === undefined || buf[offset + byteLength] === undefined) {\n boundsError(offset, buf.length - (byteLength + 1))\n }\n}\n\nfunction checkIntBI (value, min, max, buf, offset, byteLength) {\n if (value > max || value < min) {\n const n = typeof min === 'bigint' ? 'n' : ''\n let range\n if (byteLength > 3) {\n if (min === 0 || min === BigInt(0)) {\n range = `>= 0${n} and < 2${n} ** ${(byteLength + 1) * 8}${n}`\n } else {\n range = `>= -(2${n} ** ${(byteLength + 1) * 8 - 1}${n}) and < 2 ** ` +\n `${(byteLength + 1) * 8 - 1}${n}`\n }\n } else {\n range = `>= ${min}${n} and <= ${max}${n}`\n }\n throw new errors.ERR_OUT_OF_RANGE('value', range, value)\n }\n checkBounds(buf, offset, byteLength)\n}\n\nfunction validateNumber (value, name) {\n if (typeof value !== 'number') {\n throw new errors.ERR_INVALID_ARG_TYPE(name, 'number', value)\n }\n}\n\nfunction boundsError (value, length, type) {\n if (Math.floor(value) !== value) {\n validateNumber(value, type)\n throw new errors.ERR_OUT_OF_RANGE(type || 'offset', 'an integer', value)\n }\n\n if (length < 0) {\n throw new errors.ERR_BUFFER_OUT_OF_BOUNDS()\n }\n\n throw new errors.ERR_OUT_OF_RANGE(type || 'offset',\n `>= ${type ? 1 : 0} and <= ${length}`,\n value)\n}\n\n// HELPER FUNCTIONS\n// ================\n\nconst INVALID_BASE64_RE = /[^+/0-9A-Za-z-_]/g\n\nfunction base64clean (str) {\n // Node takes equal signs as end of the Base64 encoding\n str = str.split('=')[0]\n // Node strips out invalid characters like \\n and \\t from the string, base64-js does not\n str = str.trim().replace(INVALID_BASE64_RE, '')\n // Node converts strings with length < 2 to ''\n if (str.length < 2) return ''\n // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not\n while (str.length % 4 !== 0) {\n str = str + '='\n }\n return str\n}\n\nfunction utf8ToBytes (string, units) {\n units = units || Infinity\n let codePoint\n const length = string.length\n let leadSurrogate = null\n const bytes = []\n\n for (let i = 0; i < length; ++i) {\n codePoint = string.charCodeAt(i)\n\n // is surrogate component\n if (codePoint > 0xD7FF && codePoint < 0xE000) {\n // last char was a lead\n if (!leadSurrogate) {\n // no lead yet\n if (codePoint > 0xDBFF) {\n // unexpected trail\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n } else if (i + 1 === length) {\n // unpaired lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n }\n\n // valid lead\n leadSurrogate = codePoint\n\n continue\n }\n\n // 2 leads in a row\n if (codePoint < 0xDC00) {\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n leadSurrogate = codePoint\n continue\n }\n\n // valid surrogate pair\n codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000\n } else if (leadSurrogate) {\n // valid bmp char, but last char was a lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n }\n\n leadSurrogate = null\n\n // encode utf8\n if (codePoint < 0x80) {\n if ((units -= 1) < 0) break\n bytes.push(codePoint)\n } else if (codePoint < 0x800) {\n if ((units -= 2) < 0) break\n bytes.push(\n codePoint >> 0x6 | 0xC0,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x10000) {\n if ((units -= 3) < 0) break\n bytes.push(\n codePoint >> 0xC | 0xE0,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x110000) {\n if ((units -= 4) < 0) break\n bytes.push(\n codePoint >> 0x12 | 0xF0,\n codePoint >> 0xC & 0x3F | 0x80,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else {\n throw new Error('Invalid code point')\n }\n }\n\n return bytes\n}\n\nfunction asciiToBytes (str) {\n const byteArray = []\n for (let i = 0; i < str.length; ++i) {\n // Node's code seems to be doing this and not & 0x7F..\n byteArray.push(str.charCodeAt(i) & 0xFF)\n }\n return byteArray\n}\n\nfunction utf16leToBytes (str, units) {\n let c, hi, lo\n const byteArray = []\n for (let i = 0; i < str.length; ++i) {\n if ((units -= 2) < 0) break\n\n c = str.charCodeAt(i)\n hi = c >> 8\n lo = c % 256\n byteArray.push(lo)\n byteArray.push(hi)\n }\n\n return byteArray\n}\n\nfunction base64ToBytes (str) {\n return base64.toByteArray(base64clean(str))\n}\n\nfunction blitBuffer (src, dst, offset, length) {\n let i\n for (i = 0; i < length; ++i) {\n if ((i + offset >= dst.length) || (i >= src.length)) break\n dst[i + offset] = src[i]\n }\n return i\n}\n\n// ArrayBuffer or Uint8Array objects from other contexts (i.e. iframes) do not pass\n// the `instanceof` check but they should be treated as of that type.\n// See: https://github.com/feross/buffer/issues/166\nfunction isInstance (obj, type) {\n return obj instanceof type ||\n (obj != null && obj.constructor != null && obj.constructor.name != null &&\n obj.constructor.name === type.name)\n}\nfunction numberIsNaN (obj) {\n // For IE11 support\n return obj !== obj // eslint-disable-line no-self-compare\n}\n\n// Create lookup table for `toString('hex')`\n// See: https://github.com/feross/buffer/issues/219\nconst hexSliceLookupTable = (function () {\n const alphabet = '0123456789abcdef'\n const table = new Array(256)\n for (let i = 0; i < 16; ++i) {\n const i16 = i * 16\n for (let j = 0; j < 16; ++j) {\n table[i16 + j] = alphabet[i] + alphabet[j]\n }\n }\n return table\n})()\n\n// Return not function with Error if BigInt not supported\nfunction defineBigIntMethod (fn) {\n return typeof BigInt === 'undefined' ? BufferBigIntNotDefined : fn\n}\n\nfunction BufferBigIntNotDefined () {\n throw new Error('BigInt not supported')\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 return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _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 Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\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","'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","'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","// 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 v-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<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\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\tborder-radius: 40px;\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\tborder-radius: 40px;\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<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","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=10738c5b&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=10738c5b&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=10738c5b&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=10738c5b&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 \"10738c5b\",\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"],"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","self","module","t","n","Z","mixins","disabled","Boolean","computed","isFocusable","o","s","l","c","d","Array","u","keys","getOwnPropertySymbols","getOwnPropertyDescriptor","apply","m","p","getOwnPropertyDescriptors","defineProperties","g","directives","tooltip","components","DotsHorizontal","Popover","VNodes","open","forceMenu","forceTitle","menuTitle","String","primary","defaultIcon","ariaLabel","placement","boundariesElement","Element","querySelector","container","actions","opened","focusIndex","randomId","children","$children","firstAction","hasMultipleActions","isValidSingleAction","firstActionElement","singleActionTitle","isDisabled","$props","firstActionVNode","firstActionBinding","componentOptions","tag","is","href","$attrs","to","exact","firstActionEvent","listeners","click","firstActionEventBinding","firstActionIconSlot","$slots","icon","firstActionClass","staticClass","class","trim","iconSlotIsPopulated","watch","beforeMount","initActions","beforeUpdate","methods","openMenu","$emit","closeMenu","$refs","menuButton","focus","onOpen","$nextTick","focusFirstAction","onMouseFocusAction","activeElement","closest","menu","querySelectorAll","isArray","Symbol","iterator","from","call","slice","constructor","test","focusAction","removeCurrentActive","classList","remove","add","focusPreviousAction","preventIfEvent","focusNextAction","focusLastAction","$el","preventDefault","stopPropagation","execFirstAction","onFocus","onBlur","functional","render","vnodes","f","A","v","styleTagTransform","setAttributes","insert","bind","domAPI","insertStyleElement","locals","VTooltip","defaultTemplate","defaultHtml","defaultDelay","show","hide","detectLocale","Actions","Activities","Choose","Close","Custom","Flags","Global","Next","Objects","Previous","Search","Settings","Submit","Symbols","pluralId","msgid","msgid_plural","msgstr","addTranslation","build","before","util","$options","$destroy","getText","isLongText","title","closeAfterClick","isIconUrl","URL","onClick","Math","random","$parent","mounted","setAttribute","id","version","sources","names","mappings","sourcesContent","sourceRoot","map","join","next","done","return","btoa","unescape","JSON","stringify","identifier","base","css","media","sourceMap","supports","layer","references","updater","byIndex","splice","update","HTMLIFrameElement","contentDocument","head","Error","appendChild","createElement","attributes","nc","parentNode","removeChild","styleSheet","cssText","firstChild","createTextNode","x","k","VPopover","$watch","popover","isOpen","C","y","$createElement","_self","_c","_g","_b","ref","attrs","scopedSlots","_u","fn","_t","proxy","$listeners","focusable","on","style","backgroundImage","_v","_s","domProps","textContent","_e","rawName","expression","modifiers","auto","rel","_d","blur","hidden","delay","size","decorative","tabindex","keydown","_k","keyCode","ctrlKey","shiftKey","altKey","metaKey","mousemove","staticRenderFns","_compiled","_scopeId","$vnode","ssrContext","parent","__VUE_SSR_CONTEXT__","_registeredComponents","_ssrRegister","$root","shadowRoot","_injectStyles","beforeCreate","hasOwnProperty","toStringTag","M","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","insertBefore","lastChild","destroyed","previous","resetSlideshow","close","togglePlayPause","handleSlideshow","clearSlideshowTimeout","B","w","S","N","j","z","P","E","D","T","$","F","O","U","G","touchmove","invisible","height","width","stroke","fill","cx","cy","mousedown","currentTarget","I","utils","settle","cookies","buildURL","buildFullPath","parseHeaders","isURLSameOrigin","transitionalDefaults","AxiosError","CanceledError","parseProtocol","Promise","resolve","reject","onCanceled","requestData","requestHeaders","responseType","cancelToken","signal","isFormData","isStandardBrowserEnv","request","XMLHttpRequest","auth","username","password","Authorization","fullPath","baseURL","onloadend","responseHeaders","getAllResponseHeaders","response","responseText","status","statusText","err","method","toUpperCase","paramsSerializer","timeout","onreadystatechange","readyState","responseURL","onabort","ECONNABORTED","onerror","ERR_NETWORK","ontimeout","timeoutErrorMessage","transitional","clarifyTimeoutError","ETIMEDOUT","xsrfValue","withCredentials","xsrfCookieName","read","xsrfHeaderName","val","toLowerCase","setRequestHeader","isUndefined","onDownloadProgress","onUploadProgress","upload","cancel","abort","aborted","protocol","ERR_BAD_REQUEST","send","Axios","mergeConfig","axios","createInstance","defaultConfig","context","extend","instanceConfig","VERSION","toFormData","Cancel","all","promises","spread","isAxiosError","executor","resolvePromise","promise","then","_listeners","onfulfilled","_resolve","message","reason","throwIfRequested","listener","index","source","ERR_CANCELED","inherits","__CANCEL__","InterceptorManager","dispatchRequest","validators","interceptors","configOrUrl","assertOptions","silentJSONParsing","boolean","forcedJSONParsing","requestInterceptorChain","synchronousRequestInterceptors","interceptor","runWhen","synchronous","unshift","fulfilled","rejected","responseInterceptorChain","chain","shift","newConfig","onFulfilled","onRejected","getUri","generateHTTPMethod","isForm","code","toJSON","description","number","fileName","lineNumber","columnNumber","stack","descriptors","customProps","axiosError","toFlatObject","use","eject","isAbsoluteURL","combineURLs","requestedURL","transformData","throwIfCancellationRequested","transformRequest","merge","common","adapter","transformResponse","config1","config2","getMergedValue","isPlainObject","mergeDeepProperties","prop","valueFromConfig2","defaultToConfig2","mergeDirectKeys","mergeMap","configValue","validateStatus","ERR_BAD_RESPONSE","floor","fns","normalizeHeaderName","DEFAULT_CONTENT_TYPE","setContentTypeIfUnset","process","isArrayBuffer","isBuffer","isStream","isFile","isBlob","isArrayBufferView","buffer","isURLSearchParams","isFileList","isObjectPayload","isObject","contentType","_FormData","env","FormData","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","host","search","hash","hostname","port","pathname","location","requestURL","parsed","normalizedName","ignoreDuplicateOf","split","line","substr","exec","callback","arr","formData","convertValue","isTypedArray","Blob","Buffer","parentKey","fullKey","endsWith","toArray","el","append","pop","thing","deprecatedWarnings","formatMessage","opt","desc","opts","ERR_DEPRECATED","schema","allowUnknown","ERR_BAD_OPTION_VALUE","result","ERR_BAD_OPTION","cache","kindOf","str","kindOfTest","getPrototypeOf","isFunction","TypedArray","Uint8Array","pattern","ArrayBuffer","isView","pipe","product","assignValue","stripBOM","content","charCodeAt","superConstructor","sourceObj","destObj","merged","getOwnPropertyNames","searchString","position","lastIndex","byteLength","b64","lens","getLens","validLen","placeHoldersLen","toByteArray","tmp","Arr","_byteLength","curByte","len","revLookup","fromByteArray","uint8","extraBytes","maxChunkLength","len2","encodeChunk","lookup","end","num","output","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","fromIndex","IndexedObject","toObject","arraySpeciesCreate","TYPE","IS_MAP","IS_FILTER","IS_SOME","IS_EVERY","IS_FIND_INDEX","NO_HOLES","that","specificCreate","boundFunction","some","every","find","findIndex","fails","V8_VERSION","SPECIES","METHOD_NAME","array","foo","argument","DESCRIPTORS","has","thrower","ACCESSORS","argument0","argument1","originalArray","anObject","ENTRIES","returnMethod","ITERATOR","SAFE_CLOSING","called","iteratorWithReturn","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","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","globalThis","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","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","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","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","codeAt","max","min","integer","ceil","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","$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","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","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","dest","inherit","child","properties","childP","baseP","_super","boolOrFn","ifUndefined","val1","val2","addEventListeners","types","splitStr","removeEventListeners","hasParent","node","inStr","inArray","findByKey","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","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","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","isLE","mLen","nBytes","eLen","eMax","eBias","nBits","NaN","Infinity","pow","rt","LN2","ctor","superCtor","super_","TempCtor","hasToStringTag","$toString","callBound","isStandardArguments","isLegacyArguments","supportsStandardArguments","GeneratorFunction","fnToStr","isFnRegex","generatorFunc","getGeneratorFunc","getPolyfill","shim","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","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","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","freeExports","nodeType","freeModule","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","this_len","blue","green","red","white","kReadableOperator","strictEqualObject","notStrictEqualObject","notIdentical","copyError","inspectValue","compact","customInspect","depth","maxArrayLength","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","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","ieee754","customInspectSymbol","SlowBuffer","alloc","INSPECT_MAX_BYTES","K_MAX_LENGTH","createBuffer","buf","encodingOrOffset","encoding","isEncoding","fromString","arrayView","isInstance","fromArrayBuffer","fromArrayLike","fromArrayView","checked","fromObject","assertSize","mustMatch","loweredCase","utf8ToBytes","base64ToBytes","slowToString","hexSlice","utf8Slice","asciiSlice","latin1Slice","base64Slice","utf16leSlice","swap","bidirectionalIndexOf","dir","arrayIndexOf","lastIndexOf","indexSize","valLength","readUInt16BE","foundIndex","found","hexWrite","strLen","utf8Write","blitBuffer","asciiWrite","byteArray","asciiToBytes","base64Write","ucs2Write","units","utf16leToBytes","firstByte","codePoint","bytesPerSequence","secondByte","thirdByte","fourthByte","tempCodePoint","codePoints","MAX_ARGUMENTS_LENGTH","fromCharCode","decodeCodePointsArray","kMaxLength","TYPED_ARRAY_SUPPORT","typedArraySupport","poolSize","allocUnsafeSlow","_isBuffer","swap16","swap32","swap64","toLocaleString","equals","thisStart","thisEnd","thisCopy","targetCopy","ret","out","hexSliceLookupTable","bytes","checkOffset","ext","checkInt","wrtBigUInt64LE","checkIntBI","wrtBigUInt64BE","checkIEEE754","writeFloat","littleEndian","noAssert","writeDouble","newBuf","subarray","readUintLE","readUIntLE","mul","readUintBE","readUIntBE","readUint8","readUInt8","readUint16LE","readUInt16LE","readUint16BE","readUint32LE","readUInt32LE","readUint32BE","readUInt32BE","readBigUInt64LE","defineBigIntMethod","validateNumber","boundsError","readBigUInt64BE","readIntLE","readIntBE","readInt8","readInt16LE","readInt16BE","readInt32LE","readInt32BE","readBigInt64LE","readBigInt64BE","readFloatLE","readFloatBE","readDoubleLE","readDoubleBE","writeUintLE","writeUIntLE","writeUintBE","writeUIntBE","writeUint8","writeUInt8","writeUint16LE","writeUInt16LE","writeUint16BE","writeUInt16BE","writeUint32LE","writeUInt32LE","writeUint32BE","writeUInt32BE","writeBigUInt64LE","writeBigUInt64BE","writeIntLE","sub","writeIntBE","writeInt8","writeInt16LE","writeInt16BE","writeInt32LE","writeInt32BE","writeBigInt64LE","writeBigInt64BE","writeFloatLE","writeFloatBE","writeDoubleLE","writeDoubleBE","targetStart","copyWithin","errors","super","addNumericalSeparator","range","ERR_OUT_OF_RANGE","checkBounds","ERR_BUFFER_OUT_OF_BOUNDS","received","isInteger","INVALID_BASE64_RE","leadSurrogate","base64clean","dst","table","i16","BufferBigIntNotDefined","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","formatRegExp","objects","isNull","noDeprecation","throwDeprecation","traceDeprecation","trace","debugs","debugEnvRegex","NODE_DEBUG","debugEnv","stylize","stylizeNoColor","colors","isBoolean","_extend","stylizeWithColor","formatValue","styleType","styles","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","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","umask","MAX_LENGTH","parseOptions","compareIdentifiers","SemVer","loose","includePrerelease","LOOSE","FULL","raw","major","minor","patch","prerelease","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","api","newObj","lastIdentifiers","newList","newLastIdentifiers","_index","styleTarget","getTarget","styleElement","nonce","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","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","removeAttribute","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","childNodes","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","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","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","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","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","possibleNames","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","loaded","__webpack_modules__","nmd","paths","videoMp4","videoWebm","videoFallbackText","cloudName","theme","withIntro","slides","currentSlide","fadeDirection","slidesLoaded","slideList","isLast","startButtonText","loadStaticSlides","Modal","hasVideo","oc_defaults","slogan","__webpack_public_path__","App","OCA","FirstRunWizard"],"sourceRoot":""} \ No newline at end of file
+{"version":3,"file":"firstrunwizard-main.js?v=163c652edace575767ce","mappings":"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","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/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/CancelToken.js","webpack:///firstrunwizard/node_modules/axios/lib/cancel/CanceledError.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/AxiosError.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/dispatchRequest.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/index.js","webpack:///firstrunwizard/node_modules/axios/lib/defaults/transitional.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/null.js","webpack:///firstrunwizard/node_modules/axios/lib/helpers/parseHeaders.js","webpack:///firstrunwizard/node_modules/axios/lib/helpers/parseProtocol.js","webpack:///firstrunwizard/node_modules/axios/lib/helpers/spread.js","webpack:///firstrunwizard/node_modules/axios/lib/helpers/toFormData.js","webpack:///firstrunwizard/node_modules/axios/lib/helpers/validator.js","webpack:///firstrunwizard/node_modules/axios/lib/utils.js","webpack:///firstrunwizard/node_modules/base64-js/index.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.define-property.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=10738c5b&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/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/ieee754/index.js","webpack:///firstrunwizard/node_modules/inherits/inherits_browser.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/buffer/index.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/node_modules/available-typed-arrays/index.js","webpack:///firstrunwizard/node_modules/es-abstract/helpers/getOwnPropertyDescriptor.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?6133","webpack://firstrunwizard/./src/App.vue?f581","webpack:///firstrunwizard/src/App.vue?vue&type=template&id=10738c5b&scoped=true&","webpack:///firstrunwizard/src/main.js"],"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\nrequire(\"core-js/modules/es.object.define-property.js\");\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nrequire(\"core-js/modules/es.object.assign.js\");\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\nvar client = _axios.default.create({\n headers: {\n requesttoken: (_getRequestToken = (0, _auth.getRequestToken)()) !== null && _getRequestToken !== void 0 ? _getRequestToken : ''\n }\n});\n\nvar cancelableClient = Object.assign(client, {\n CancelToken: _axios.default.CancelToken,\n isCancel: _axios.default.isCancel\n});\n(0, _auth.onRequestTokenUpdate)(function (token) {\n return client.defaults.headers.requesttoken = token;\n});\nvar _default = cancelableClient;\nexports.default = _default;\n//# sourceMappingURL=index.js.map","\"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\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getGettextBuilder = getGettextBuilder;\n\nrequire(\"core-js/modules/es.regexp.exec.js\");\n\nrequire(\"core-js/modules/es.string.replace.js\");\n\nrequire(\"core-js/modules/es.object.define-property.js\");\n\nrequire(\"core-js/modules/es.object.to-string.js\");\n\nrequire(\"core-js/modules/es.regexp.to-string.js\");\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); Object.defineProperty(Constructor, \"prototype\", { writable: false }); 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.object.define-property.js\");\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.getCanonicalLocale = getCanonicalLocale;\nexports.getDayNames = getDayNames;\nexports.getDayNamesMin = getDayNamesMin;\nexports.getDayNamesShort = getDayNamesShort;\nexports.getFirstDay = getFirstDay;\nexports.getLanguage = getLanguage;\nexports.getLocale = getLocale;\nexports.getMonthNames = getMonthNames;\nexports.getMonthNamesShort = getMonthNamesShort;\nexports.translate = translate;\nexports.translatePlural = translatePlural;\n\nrequire(\"core-js/modules/es.regexp.exec.js\");\n\nrequire(\"core-js/modules/es.string.replace.js\");\n\n/// <reference types=\"@nextcloud/typings\" />\n\n/**\n * Returns the user's locale\n */\nfunction getLocale() {\n return document.documentElement.dataset.locale || 'en';\n}\n\nfunction getCanonicalLocale() {\n return getLocale().replace(/_/g, '-');\n}\n/**\n * Returns the user's language\n */\n\n\nfunction getLanguage() {\n return document.documentElement.lang || 'en';\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","/*! For license information please see Modal.js.LICENSE.txt */\n!function(t,e){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define(\"NextcloudVue\",[],e):\"object\"==typeof exports?exports.NextcloudVue=e():(t.NextcloudVue=t.NextcloudVue||{},t.NextcloudVue[\"Components/Modal\"]=e())}(self,(function(){return function(){var t={5938:function(t,e,n){\"use strict\";var a=n(9156);e.Z={name:\"ActionButton\",mixins:[a.Z],props:{disabled:{type:Boolean,default:!1}},computed:{isFocusable:function(){return!this.disabled}}}},858:function(t,e,n){\"use strict\";var a=n(3251),i=n.n(a),o=n(8104),s=n(9040),r=n(1205),l=n(932),c=n(8099);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 g=\".focusable\";e.Z={name:\"Actions\",directives:{tooltip:s.default},components:{DotsHorizontal:i(),Popover:c.default,VNodes:o.Z},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:(0,l.t)(\"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-\"+(0,r.Z)(),children:this.$children,firstAction:{}}},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]},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)},children:function(){this.firstAction=this.children[0]?this.children[0]:{}}},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(g);if(n){var a=(i=this.$refs.menu.querySelectorAll(g),function(t){if(Array.isArray(t))return d(t)}(i)||function(t){if(\"undefined\"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t[\"@@iterator\"])return Array.from(t)}(i)||function(t,e){if(t){if(\"string\"==typeof t)return d(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)?d(t,e):void 0}}(i)||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.\")}()).indexOf(n);a>-1&&(this.focusIndex=a,this.focusAction())}}}var i},removeCurrentActive:function(){var t=this.$refs.menu.querySelector(\"li.active\");t&&t.classList.remove(\"active\")},focusAction:function(){var t=this.$refs.menu.querySelectorAll(g)[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(g).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(g).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)}}}},5041:function(t,e){\"use strict\";e.Z={name:\"VNodes\",functional:!0,render:function(t,e){return e.props.vnodes}}},4828:function(t,e,n){\"use strict\";var a=n(491);e.default=a.Z},5860:function(t,e,n){\"use strict\";var a=n(3083);e.default=a.Z},8099:function(t,e,n){\"use strict\";var a=n(7020);e.default=a.Z},9040:function(t,e,n){\"use strict\";n.d(e,{default:function(){return f}});var a=n(2965),i=n(3379),o=n.n(i),s=n(7795),r=n.n(s),l=n(569),c=n.n(l),d=n(3565),u=n.n(d),m=n(9216),p=n.n(m),g=n(4589),h=n.n(g),A=n(6051),v={};v.styleTagTransform=h(),v.setAttributes=u(),v.insert=c().bind(null,\"head\"),v.domAPI=r(),v.insertStyleElement=p(),o()(A.Z,v),A.Z&&A.Z.locals&&A.Z.locals,a.VTooltip.options.defaultTemplate='<div class=\"vue-tooltip\" role=\"tooltip\" data-v-'.concat(\"17fd6e1\",'><div class=\"tooltip-arrow\"></div><div class=\"tooltip-inner\"></div></div>'),a.VTooltip.options.defaultHtml=!1,a.VTooltip.options.defaultDelay={show:500,hide:200};var f=a.VTooltip},932:function(t,e,n){\"use strict\";n.d(e,{n:function(){return o},t:function(){return s}});var a=(0,n(6036).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\",\"Avatar of {displayName}\":\"Avatar de {displayName}\",\"Avatar of {displayName}, {status}\":\"Avatar de {displayName}, {status}\",\"Cancel changes\":\"Cancel·la els canvis\",Choose:\"Tria\",Close:\"Tanca\",\"Close navigation\":\"Tancar la navegació\",\"Confirm changes\":\"Confirmeu els canvis\",Custom:\"Personalitzat\",\"Edit item\":\"Edita l'element\",\"External documentation for {title}\":\"Documentació externa per a {title}\",Flags:\"Marques\",\"Food & Drink\":\"Menjar i begudes\",\"Frequently used\":\"Utilitzats recentment\",Global:\"Global\",\"Go back to the list\":\"Torna a la llista\",\"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\",\"Open navigation\":\"Obrir la navegació\",\"Pause slideshow\":\"Atura la presentació\",\"People & Body\":\"Persones i cos\",\"Pick an emoji\":\"Trieu un emoji\",\"Please select a time zone:\":\"Seleccioneu una zona horària:\",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\",\"Type to search time zone\":\"Escriviu per cercar la zona horària\",\"Unable to search the group\":\"No es pot cercar el grup\",\"Undo changes\":\"Desfer canvis\",\"Write message, @ to mention someone, : for emoji autocompletion …\":\"Escriu un missatge, @ per esmentar algú, : per a la compleció automàtica d'emojis...\"}},{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\",\"Avatar of {displayName}, {status}\":\"{displayName} -(e)n irudia, {status}\",\"Cancel changes\":\"Ezeztatu aldaketak\",Choose:\"Aukeratu\",Close:\"Itxi\",\"Close navigation\":\"Itxi nabigazioa\",\"Confirm changes\":\"Baieztatu aldaketak\",Custom:\"Pertsonalizatua\",\"Edit item\":\"Editatu elementua\",\"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\",\"Undo changes\":\"Aldaketak desegin\",\"Write message, @ to mention someone, : for emoji autocompletion …\":\"Idatzi mezua, @ norbait aipatzeko, : emojia automatikoki idazteko\"}},{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, : for emoji autocompletion …\":\"Ecrire un message, @ pour mentionner quelqu'un, : pour l'auto-complétion des émoticônes\"}},{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}\",\"Avatar of {displayName}, {status}\":\"Avatar di {displayName}, {status}\",\"Cancel changes\":\"Annulla modifiche\",Choose:\"Scegli\",Close:\"Chiudi\",\"Close navigation\":\"Chiudi la navigazione\",\"Confirm changes\":\"Conferma modifiche\",Custom:\"Personalizzato\",\"Edit item\":\"Modifica l'elemento\",\"External documentation for {title}\":\"Documentazione esterna per {title}\",Flags:\"Bandiere\",\"Food & Drink\":\"Cibo e bevande\",\"Frequently used\":\"Usati di frequente\",Global:\"Globale\",\"Go back to the list\":\"Torna all'elenco\",\"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\",\"Open navigation\":\"Apri la navigazione\",\"Pause slideshow\":\"Presentazione in pausa\",\"People & Body\":\"Persone e corpo\",\"Pick an emoji\":\"Scegli un emoji\",\"Please select a time zone:\":\"Si prega di selezionare un fuso orario:\",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\",\"Type to search time zone\":\"Digita per cercare un fuso orario\",\"Unable to search the group\":\"Impossibile cercare il gruppo\",\"Undo changes\":\"Cancella i cambiamenti\",\"Write message, @ to mention someone, : for emoji autocompletion …\":\"Scrivi un messaggio, @ per menzionare qualcuno, : per il completamento automatico delle emoji ...\"}},{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}\",\"Avatar of {displayName}, {status}\":\"Avatar {displayName}, {status}\",\"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, : for emoji autocompletion …\":\"Napíšte správu, @ ak chcete niekoho spomenúť, : pre automatické dopĺňanie emotikonov…\"}},{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]]};a.addTranslation(t.locale,{translations:{\"\":e}})}));var i=a.build(),o=i.ngettext.bind(i),s=i.gettext.bind(i)},723:function(t,e,n){\"use strict\";var a=n(2734),i=n.n(a);e.Z={before:function(){this.$slots.default&&\"\"!==this.text.trim()||(i().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():\"\"}}}},9156:function(t,e,n){\"use strict\";var a=n(723),i=n(6021);e.Z={mixins:[a.Z],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=(0,i.Z)(this,\"Actions\");e&&e.closeMenu&&e.closeMenu()}}}}},3648:function(t,e,n){\"use strict\";var a=n(932);e.Z={methods:{n:a.n,t:a.t}}},1205:function(t,e){\"use strict\";e.Z=function(t){return Math.random().toString(36).replace(/[^a-z]+/g,\"\").slice(0,t||5)}},6021:function(t,e){\"use strict\";e.Z=function(t,e){for(var n=t.$parent;n;){if(n.$options.name===e)return n;n=n.$parent}}},7645:function(t,e){\"use strict\";e.Z=function(t){t.mounted?Array.isArray(t.mounted)||(t.mounted=[t.mounted]):t.mounted=[],t.mounted.push((function(){this.$el.setAttribute(\"data-v-\".concat(\"17fd6e1\"),\"\")}))}},6051:function(t,e,n){\"use strict\";var a=n(4015),i=n.n(a),o=n(3645),s=n.n(o)()(i());s.push([t.id,\".material-design-icon{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.vue-tooltip[data-v-17fd6e1]{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-17fd6e1][x-placement^='top'] .tooltip-arrow{bottom:0;border-bottom-width:0;border-top-color:var(--color-main-background)}.vue-tooltip[data-v-17fd6e1][x-placement^='bottom'] .tooltip-arrow{top:0;border-top-width:0;border-bottom-color:var(--color-main-background)}.vue-tooltip[data-v-17fd6e1][x-placement^='right'] .tooltip-arrow{right:100%;border-left-width:0;border-right-color:var(--color-main-background)}.vue-tooltip[data-v-17fd6e1][x-placement^='left'] .tooltip-arrow{left:100%;border-right-width:0;border-left-color:var(--color-main-background)}.vue-tooltip[data-v-17fd6e1][aria-hidden='true']{visibility:hidden;transition:opacity .15s, visibility .15s;opacity:0}.vue-tooltip[data-v-17fd6e1][aria-hidden='false']{visibility:visible;transition:opacity .15s;opacity:1}.vue-tooltip[data-v-17fd6e1] .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-17fd6e1] .tooltip-arrow{position:absolute;z-index:1;width:0;height:0;margin:0;border-style:solid;border-color:transparent;border-width:10px}\\n\",\"\",{version:3,sources:[\"webpack://./src/assets/material-icons.css\",\"webpack://./src/directives/Tooltip/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,gEAoBE,QAAS,CACT,qBAAsB,CACtB,6CAA8C,CAtBhD,mEA2BE,KAAM,CACN,kBAAmB,CACnB,gDAAiD,CA7BnD,kEAkCE,UAAW,CACX,mBAAoB,CACpB,+CAAgD,CApClD,iEAyCE,SAAU,CACV,oBAAqB,CACrB,8CAA+C,CA3CjD,iDAgDE,iBAAkB,CAClB,wCAAyC,CACzC,SAAU,CAlDZ,kDAqDE,kBAAmB,CACnB,uBAAwB,CACxB,SAAU,CAvDZ,4CA4DE,eAAgB,CAChB,eAAgB,CAChB,iBAAkB,CAClB,4BAA6B,CAC7B,kCAAmC,CACnC,6CAA8C,CAjEhD,4CAsEE,iBAAkB,CAClB,SAAU,CACV,OAAQ,CACR,QAAS,CACT,QAAS,CACT,kBAAmB,CACnB,wBAAyB,CACzB,iBA/EgB\",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:\\\"17fd6e1\\\"; @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'] .tooltip-arrow {\\n\\t\\tbottom: 0;\\n\\t\\tborder-bottom-width: 0;\\n\\t\\tborder-top-color: var(--color-main-background);\\n\\t}\\n\\n\\t// BOTTOM\\n\\t&[x-placement^='bottom'] .tooltip-arrow {\\n\\t\\ttop: 0;\\n\\t\\tborder-top-width: 0;\\n\\t\\tborder-bottom-color: var(--color-main-background);\\n\\t}\\n\\n\\t// RIGHT\\n\\t&[x-placement^='right'] .tooltip-arrow {\\n\\t\\tright: 100%;\\n\\t\\tborder-left-width: 0;\\n\\t\\tborder-right-color: var(--color-main-background);\\n\\t}\\n\\n\\t// LEFT\\n\\t&[x-placement^='left'] .tooltip-arrow {\\n\\t\\tleft: 100%;\\n\\t\\tborder-right-width: 0;\\n\\t\\tborder-left-color: var(--color-main-background);\\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: transparent;\\n\\t\\tborder-width: $arrow-width;\\n\\t}\\n}\\n\"],sourceRoot:\"\"}]),e.Z=s},7087:function(t,e,n){\"use strict\";var a=n(4015),i=n.n(a),o=n(3645),s=n.n(o)()(i());s.push([t.id,\".material-design-icon[data-v-ef50c406]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}li.active[data-v-ef50c406]{background-color:var(--color-background-hover)}.action--disabled[data-v-ef50c406]{pointer-events:none;opacity:.5}.action--disabled[data-v-ef50c406]:hover,.action--disabled[data-v-ef50c406]:focus{cursor:default;opacity:.5}.action--disabled *[data-v-ef50c406]{opacity:1 !important}.action-button[data-v-ef50c406]{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-ef50c406]:hover,.action-button[data-v-ef50c406]:focus{opacity:1}.action-button>span[data-v-ef50c406]{cursor:pointer;white-space:nowrap}.action-button__icon[data-v-ef50c406]{width:44px;height:44px;opacity:1;background-position:14px center;background-size:16px;background-repeat:no-repeat}.action-button[data-v-ef50c406] .material-design-icon{width:44px;height:44px;opacity:1}.action-button[data-v-ef50c406] .material-design-icon .material-design-icon__svg{vertical-align:middle}.action-button p[data-v-ef50c406]{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-ef50c406]{cursor:pointer;white-space:pre-wrap}.action-button__title[data-v-ef50c406]{font-weight:bold;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;max-width:100%;display:inline-block}\\n\",\"\",{version:3,sources:[\"webpack://./src/assets/material-icons.css\",\"webpack://./src/assets/action.scss\",\"webpack://./src/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,gBAAgD,CAEhD,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.Z=s},9224:function(t,e,n){\"use strict\";var a=n(4015),i=n.n(a),o=n(3645),s=n.n(o)()(i());s.push([t.id,\".material-design-icon[data-v-2a98ba3b]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.action-item[data-v-2a98ba3b]{position:relative;display:inline-block}.action-item--single[data-v-2a98ba3b]:hover,.action-item--single[data-v-2a98ba3b]:focus,.action-item--single[data-v-2a98ba3b]:active,.action-item__menutoggle[data-v-2a98ba3b]:hover,.action-item__menutoggle[data-v-2a98ba3b]:focus,.action-item__menutoggle[data-v-2a98ba3b]:active{opacity:1;background-color:rgba(127,127,127,0.25) !important}.action-item__menutoggle[data-v-2a98ba3b]:disabled,.action-item--single[data-v-2a98ba3b]:disabled{opacity:.3 !important}.action-item.action-item--open .action-item__menutoggle[data-v-2a98ba3b]{opacity:1;background-color:rgba(127,127,127,0.25)}.action-item--single[data-v-2a98ba3b],.action-item__menutoggle[data-v-2a98ba3b]{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-2a98ba3b],.action-item__menutoggle--with-title[data-v-2a98ba3b]{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-2a98ba3b] span,.action-item__menutoggle--with-title[data-v-2a98ba3b] span{width:24px;height:24px;line-height:16px;position:absolute;top:0;left:0}.action-item[data-v-2a98ba3b] .material-design-icon{width:44px;height:44px;opacity:1}.action-item[data-v-2a98ba3b] .material-design-icon .material-design-icon__svg{vertical-align:middle}.action-item__menutoggle[data-v-2a98ba3b]{display:flex;align-items:center;justify-content:center;opacity:.7;font-weight:bold;line-height:16px}.action-item__menutoggle--primary[data-v-2a98ba3b]{opacity:1;color:var(--color-primary-text);border:none;background-color:var(--color-primary-element)}.action-item--open .action-item__menutoggle--primary[data-v-2a98ba3b],.action-item__menutoggle--primary[data-v-2a98ba3b]:hover,.action-item__menutoggle--primary[data-v-2a98ba3b]:focus,.action-item__menutoggle--primary[data-v-2a98ba3b]:active{color:var(--color-primary-text) !important;background-color:var(--color-primary-element-light) !important}.action-item--single[data-v-2a98ba3b]{opacity:.7}.action-item--single[data-v-2a98ba3b]:hover,.action-item--single[data-v-2a98ba3b]:focus,.action-item--single[data-v-2a98ba3b]:active{opacity:1}.action-item--single>[hidden][data-v-2a98ba3b]{display:none}.ie .action-item__menu[data-v-2a98ba3b],.ie .action-item__menu .action-item__menu_arrow[data-v-2a98ba3b],.edge .action-item__menu[data-v-2a98ba3b],.edge .action-item__menu .action-item__menu_arrow[data-v-2a98ba3b]{border:1px solid var(--color-border)}\\n\",\"\",{version:3,sources:[\"webpack://./src/assets/material-icons.css\",\"webpack://./src/components/Actions/Actions.vue\",\"webpack://./src/assets/variables.scss\"],names:[],mappings:\"AAGA,uCACC,YAAa,CACb,iBAAkB,CAClB,mBAAoB,CACpB,kBAAmB,CACnB,sBAAuB,CCopBxB,8BACC,iBAAkB,CAClB,oBAAqB,CAIrB,sRAMC,SC5nBc,CD8nBd,kDAA2C,CAC3C,kGAKA,qBAAsB,CApBxB,yEAwBE,SCxoBc,CDyoBd,uCCroBgD,CDsoBhD,gFAKA,qBAAsB,CACtB,UAAW,CACX,cCpqBmB,CDqqBnB,WCrqBmB,CDsqBnB,QAAS,CACT,SAAU,CACV,cAAe,CACf,WAAY,CACZ,kBAAkC,CAClC,4BAA6B,CAE7B,wGACC,iBAAkB,CAClB,cCvqB6C,CDwqB7C,iBChrBkB,CDirBlB,kBAAmB,CACnB,SC/pBa,CDgqBb,yCAA0C,CAE1C,6CAA8C,CAC9C,+BAAwC,CACxC,iBAAkB,CAVlB,oHAeC,UAAW,CACX,WAAY,CACZ,gBC1rBY,CD2rBZ,iBAAkB,CAClB,KAAM,CACN,MAAO,CA9DX,oDAoEE,UCvsBmB,CDwsBnB,WCxsBmB,CDysBnB,SCtrBc,CDgnBhB,+EAyEG,qBAAsB,CACtB,0CAMD,YAAa,CACb,kBAAmB,CACnB,sBAAuB,CACvB,UCpsBiB,CDqsBjB,gBAAiB,CACjB,gBCptBc,CDstBd,mDACC,SCxsBa,CDysBb,+BAAgC,CAChC,WAAY,CACZ,6CAA8C,CAC9C,kPAIC,0CAA2C,CAC3C,8DAA+D,CAC/D,sCAKF,UCxtBiB,CDutBjB,qIAKC,SC3tBa,CDstBd,+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:\\\"17fd6e1\\\"; @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\\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::v-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.Z=s},1309:function(t,e,n){\"use strict\";var a=n(4015),i=n.n(a),o=n(3645),s=n.n(o)()(i());s.push([t.id,\".material-design-icon[data-v-2da14a6a]{display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center}.modal-mask[data-v-2da14a6a]{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-2da14a6a]{background-color:rgba(0,0,0,0.92)}.modal-header[data-v-2da14a6a]{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-2da14a6a],.modal-header.invisible[style*='display: none'][data-v-2da14a6a]{visibility:hidden}.modal-header .modal-title[data-v-2da14a6a]{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-2da14a6a]{padding-left:132px;text-align:center}}.modal-header .icons-menu[data-v-2da14a6a]{position:absolute;right:0;display:flex;align-items:center;justify-content:flex-end}.modal-header .icons-menu .header-close[data-v-2da14a6a]{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-2da14a6a]{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-2da14a6a],.modal-header .icons-menu .play-pause-icons:hover .play-pause-icons__pause[data-v-2da14a6a],.modal-header .icons-menu .play-pause-icons:focus .play-pause-icons__play[data-v-2da14a6a],.modal-header .icons-menu .play-pause-icons:focus .play-pause-icons__pause[data-v-2da14a6a]{opacity:1;border-radius:22px;background-color:rgba(127,127,127,0.25)}.modal-header .icons-menu .play-pause-icons__play[data-v-2da14a6a],.modal-header .icons-menu .play-pause-icons__pause[data-v-2da14a6a]{box-sizing:border-box;width:44px;height:44px;margin:3px;cursor:pointer;opacity:.7}.modal-header .icons-menu .header-actions[data-v-2da14a6a]{margin:3px;color:white}.modal-header .icons-menu .action-item--single[data-v-2da14a6a]{box-sizing:border-box;width:44px;height:44px;cursor:pointer;background-position:center;background-size:22px}.modal-header .icons-menu[data-v-2da14a6a] button{color:#fff}.modal-header .icons-menu[data-v-2da14a6a] .action-item__menutoggle{padding:0}.modal-header .icons-menu[data-v-2da14a6a] .action-item__menutoggle span,.modal-header .icons-menu[data-v-2da14a6a] .action-item__menutoggle svg{width:var(--icon-size);height:var(--icon-size)}.modal-wrapper[data-v-2da14a6a]{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:100%;height:100%}.modal-wrapper .prev[data-v-2da14a6a],.modal-wrapper .next[data-v-2da14a6a]{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-2da14a6a],.modal-wrapper .prev.invisible[style*='display: none'][data-v-2da14a6a],.modal-wrapper .next.invisible[style*='display:none'][data-v-2da14a6a],.modal-wrapper .next.invisible[style*='display: none'][data-v-2da14a6a]{visibility:hidden}.modal-wrapper .prev[data-v-2da14a6a]{left:0}.modal-wrapper .next[data-v-2da14a6a]{right:0}.modal-wrapper .icon-next[data-v-2da14a6a],.modal-wrapper .icon-previous[data-v-2da14a6a]{box-sizing:border-box;width:44px;height:44px;color:white;background-image:none;display:flex}.modal-wrapper .modal-container[data-v-2da14a6a]{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-2da14a6a]{width:390px;max-width:95%;max-height:90%}.modal-wrapper--normal .modal-container[data-v-2da14a6a]{max-width:90%;width:600px;max-height:90%}.modal-wrapper--large .modal-container[data-v-2da14a6a]{max-width:90%;width:900px;max-height:90%}.modal-wrapper--full .modal-container[data-v-2da14a6a]{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-2da14a6a]{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-2da14a6a],.fade-leave-active[data-v-2da14a6a]{transition:opacity 250ms}.fade-enter[data-v-2da14a6a],.fade-leave-to[data-v-2da14a6a]{opacity:0}.fade-visibility-enter[data-v-2da14a6a],.fade-visibility-leave-to[data-v-2da14a6a]{visibility:hidden;opacity:0}.modal-in-enter-active[data-v-2da14a6a],.modal-in-leave-active[data-v-2da14a6a],.modal-out-enter-active[data-v-2da14a6a],.modal-out-leave-active[data-v-2da14a6a]{transition:opacity 250ms}.modal-in-enter[data-v-2da14a6a],.modal-in-leave-to[data-v-2da14a6a],.modal-out-enter[data-v-2da14a6a],.modal-out-leave-to[data-v-2da14a6a]{opacity:0}.modal-in-enter .modal-container[data-v-2da14a6a],.modal-in-leave-to .modal-container[data-v-2da14a6a]{transform:scale(0.9)}.modal-out-enter .modal-container[data-v-2da14a6a],.modal-out-leave-to .modal-container[data-v-2da14a6a]{transform:scale(1.1)}.modal-mask .play-pause-icons .progress-ring[data-v-2da14a6a]{position:absolute;top:0;left:0;transform:rotate(-90deg)}.modal-mask .play-pause-icons .progress-ring .progress-ring__circle[data-v-2da14a6a]{transition:100ms stroke-dashoffset;transform-origin:50% 50%;animation:progressring-data-v-2da14a6a 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-2da14a6a]{animation:breath-data-v-2da14a6a 2s cubic-bezier(0.4, 0, 0.2, 1) infinite}.modal-mask .play-pause-icons--paused .progress-ring__circle[data-v-2da14a6a]{animation-play-state:paused !important}@keyframes progressring-data-v-2da14a6a{from{stroke-dashoffset:94.24778}to{stroke-dashoffset:0}}@keyframes breath-data-v-2da14a6a{0%{opacity:1}50%{opacity:0}100%{opacity:1}}\\n\",\"\",{version:3,sources:[\"webpack://./src/assets/material-icons.css\",\"webpack://./src/components/Modal/Modal.vue\",\"webpack://./src/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:\\\"17fd6e1\\\"; @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: 390px;\\n\\t\\t\\tmax-width: 95%;\\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}\\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}\\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.Z=s},5878:function(t,e,n){\"use strict\";var a=n(4015),i=n.n(a),o=n(3645),s=n.n(o)()(i());s.push([t.id,\".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:transparent;border-width:10px}.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-bottom-width:0;border-top-color:var(--color-main-background)}.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-top-width:0;border-bottom-color:var(--color-main-background)}.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-left-width:0;border-right-color:var(--color-main-background)}.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-right-width:0;border-left-color:var(--color-main-background)}.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://./src/assets/material-icons.css\",\"webpack://./src/components/Popover/Popover.vue\"],names:[],mappings:\"AAGA,sBACC,YAAa,CACb,iBAAkB,CAClB,mBAAoB,CACpB,kBAAmB,CACnB,sBAAuB,CCyGxB,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,wBAAyB,CACzB,iBAvBgB,CAElB,6BAyBE,kBA3BgB,CAElB,6CA4BG,YA9Be,CA+Bf,6BAA8B,CAC9B,YAAa,CACb,eAAgB,CAChB,qBAAsB,CACtB,6CAA8C,CAjCjD,gCAsCE,eAxCgB,CAElB,gDAyCG,SA3Ce,CA4Cf,6BAA8B,CAC9B,YAAa,CACb,eAAgB,CAChB,kBAAmB,CACnB,gDAAiD,CA9CpD,+BAmDE,gBArDgB,CAElB,+CAsDG,4BAA6B,CAC7B,UAzDe,CA0Df,cAAe,CACf,aAAc,CACd,mBAAoB,CACpB,+CAAgD,CA3DnD,8BAgEE,iBAlEgB,CAElB,8CAmEG,4BAA6B,CAC7B,WAtEe,CAuEf,cAAe,CACf,aAAc,CACd,oBAAqB,CACrB,8CAA+C,CAxElD,6BA6EE,iBAAkB,CAClB,2EAA6E,CAC7E,SAAU,CA/EZ,8BAmFE,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:\\\"17fd6e1\\\"; @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$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: transparent;\\n\\t\\tborder-width: $arrow-width;\\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-bottom-width: 0;\\n\\t\\t\\tborder-top-color: var(--color-main-background);\\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-top-width: 0;\\n\\t\\t\\tborder-bottom-color: var(--color-main-background);\\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-left-width: 0;\\n\\t\\t\\tborder-right-color: var(--color-main-background);\\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-right-width: 0;\\n\\t\\t\\tborder-left-color: var(--color-main-background);\\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.Z=s},3645:function(t){\"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 s=this[o][0];null!=s&&(i[s]=!0)}for(var r=0;r<t.length;r++){var l=[].concat(t[r]);a&&i[l[0]]||(n&&(l[2]?l[2]=\"\".concat(n,\" and \").concat(l[2]):l[2]=n),e.push(l))}},e}},4015:function(t){\"use strict\";function e(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 n,a,i=(a=4,function(t){if(Array.isArray(t))return t}(n=t)||function(t,e){var n=t&&(\"undefined\"!=typeof Symbol&&t[Symbol.iterator]||t[\"@@iterator\"]);if(null!=n){var a,i,o=[],s=!0,r=!1;try{for(n=n.call(t);!(s=(a=n.next()).done)&&(o.push(a.value),!e||o.length!==e);s=!0);}catch(t){r=!0,i=t}finally{try{s||null==n.return||n.return()}finally{if(r)throw i}}return o}}(n,a)||function(t,n){if(t){if(\"string\"==typeof t)return e(t,n);var a=Object.prototype.toString.call(t).slice(8,-1);return\"Object\"===a&&t.constructor&&(a=t.constructor.name),\"Map\"===a||\"Set\"===a?Array.from(t):\"Arguments\"===a||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?e(t,n):void 0}}(n,a)||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.\")}()),o=i[1],s=i[3];if(!s)return o;if(\"function\"==typeof btoa){var r=btoa(unescape(encodeURIComponent(JSON.stringify(s)))),l=\"sourceMappingURL=data:application/json;charset=utf-8;base64,\".concat(r),c=\"/*# \".concat(l,\" */\"),d=s.sources.map((function(t){return\"/*# sourceURL=\".concat(s.sourceRoot||\"\").concat(t,\" */\")}));return[o].concat(d).concat([c]).join(\"\\n\")}return[o].join(\"\\n\")}},1756:function(t,e,n){\"use strict\";var a=n(3379),i=n.n(a),o=n(7795),s=n.n(o),r=n(569),l=n.n(r),c=n(3565),d=n.n(c),u=n(9216),m=n.n(u),p=n(4589),g=n.n(p),h=n(7087),A={};A.styleTagTransform=g(),A.setAttributes=d(),A.insert=l().bind(null,\"head\"),A.domAPI=s(),A.insertStyleElement=m(),i()(h.Z,A),h.Z&&h.Z.locals&&h.Z.locals},2694:function(t,e,n){\"use strict\";var a=n(3379),i=n.n(a),o=n(7795),s=n.n(o),r=n(569),l=n.n(r),c=n(3565),d=n.n(c),u=n(9216),m=n.n(u),p=n(4589),g=n.n(p),h=n(9224),A={};A.styleTagTransform=g(),A.setAttributes=d(),A.insert=l().bind(null,\"head\"),A.domAPI=s(),A.insertStyleElement=m(),i()(h.Z,A),h.Z&&h.Z.locals&&h.Z.locals},3379:function(t){\"use strict\";var e=[];function n(t){for(var n=-1,a=0;a<e.length;a++)if(e[a].identifier===t){n=a;break}return n}function a(t,a){for(var o={},s=[],r=0;r<t.length;r++){var l=t[r],c=a.base?l[0]+a.base:l[0],d=o[c]||0,u=\"\".concat(c,\" \").concat(d);o[c]=d+1;var m=n(u),p={css:l[1],media:l[2],sourceMap:l[3],supports:l[4],layer:l[5]};if(-1!==m)e[m].references++,e[m].updater(p);else{var g=i(p,a);a.byIndex=r,e.splice(r,0,{identifier:u,updater:g,references:1})}s.push(u)}return s}function i(t,e){var n=e.domAPI(e);return n.update(t),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,i){var o=a(t=t||[],i=i||{});return function(t){t=t||[];for(var s=0;s<o.length;s++){var r=n(o[s]);e[r].references--}for(var l=a(t,i),c=0;c<o.length;c++){var d=n(o[c]);0===e[d].references&&(e[d].updater(),e.splice(d,1))}o=l}}},569:function(t){\"use strict\";var e={};t.exports=function(t,n){var a=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(!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)}},9216:function(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:function(t,e,n){\"use strict\";t.exports=function(t){var e=n.nc;e&&t.setAttribute(\"nonce\",e)}},7795:function(t){\"use strict\";t.exports=function(t){var e=t.insertStyleElement(t);return{update:function(n){!function(t,e,n){var a=\"\";n.supports&&(a+=\"@supports (\".concat(n.supports,\") {\")),n.media&&(a+=\"@media \".concat(n.media,\" {\"));var i=void 0!==n.layer;i&&(a+=\"@layer\".concat(n.layer.length>0?\" \".concat(n.layer):\"\",\" {\")),a+=n.css,i&&(a+=\"}\"),n.media&&(a+=\"}\"),n.supports&&(a+=\"}\");var o=n.sourceMap;o&&\"undefined\"!=typeof btoa&&(a+=\"\\n/*# sourceMappingURL=data:application/json;base64,\".concat(btoa(unescape(encodeURIComponent(JSON.stringify(o)))),\" */\")),e.styleTagTransform(a,t,e.options)}(e,t,n)},remove:function(){!function(t){if(null===t.parentNode)return!1;t.parentNode.removeChild(t)}(e)}}}},4589:function(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))}}},491:function(t,e,n){\"use strict\";var a=n(8940),i=n(4403),o=(n(7911),n(1900)),s=n(3184),r=n.n(s),l=(0,o.Z)(i.Z,a.s,a.x,!1,null,\"ef50c406\",null);\"function\"==typeof r()&&r()(l),e.Z=l.exports},3083:function(t,e,n){\"use strict\";var a=n(9125),i=n(613),o=(n(3822),n(1900)),s=n(2192),r=n.n(s),l=(0,o.Z)(i.Z,a.s,a.x,!1,null,\"2a98ba3b\",null);\"function\"==typeof r()&&r()(l),e.Z=l.exports},7020:function(t,e,n){\"use strict\";n.d(e,{Z:function(){return k}});var a={name:\"Popover\",components:{VPopover:n(2965).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(3379),o=n.n(i),s=n(7795),r=n.n(s),l=n(569),c=n.n(l),d=n(3565),u=n.n(d),m=n(9216),p=n.n(m),g=n(4589),h=n.n(g),A=n(5878),v={};v.styleTagTransform=h(),v.setAttributes=u(),v.insert=c().bind(null,\"head\"),v.domAPI=r(),v.insertStyleElement=p(),o()(A.Z,v),A.Z&&A.Z.locals&&A.Z.locals;var f=n(1900),C=n(8733),b=n.n(C),y=(0,f.Z)(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 b()&&b()(y);var k=y.exports},8104:function(t,e,n){\"use strict\";var a=n(5494),i=(0,n(1900).Z)(a.Z,void 0,void 0,!1,null,null,null);e.Z=i.exports},4403:function(t,e,n){\"use strict\";var a=n(5938);e.Z=a.Z},613:function(t,e,n){\"use strict\";var a=n(858);e.Z=a.Z},5494:function(t,e,n){\"use strict\";var a=n(5041);e.Z=a.Z},7911:function(t,e,n){\"use strict\";n(1756)},3822:function(t,e,n){\"use strict\";n(2694)},3184:function(){},2192:function(){},8575:function(){},8733:function(){},8940:function(t,e,n){\"use strict\";n.d(e,{s:function(){return a},x:function(){return i}});var 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\",(function(){return[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)])},i=[]},9125:function(t,e,n){\"use strict\";n.d(e,{s:function(){return a},x:function(){return i}});var a=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 vue-button 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.apply(null,arguments)},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.apply(null,arguments)},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.apply(null,arguments)},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.apply(null,arguments):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.apply(null,arguments)},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.apply(null,arguments)},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.apply(null,arguments))}],mousemove:e.onMouseFocusAction}},[a(\"ul\",{attrs:{id:e.randomId,tabindex:\"-1\"}},[e.opened?[e._t(\"default\")]:e._e()],2)])])],1)},i=[]},1900:function(t,e,n){\"use strict\";function a(t,e,n,a,i,o,s,r){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),s?(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(s)},c._ssrRegister=l):i&&(l=r?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,{Z:function(){return a}})},6036:function(t){\"use strict\";t.exports=require(\"@nextcloud/l10n/dist/gettext\")},2640:function(t){\"use strict\";t.exports=require(\"hammerjs\")},2965:function(t){\"use strict\";t.exports=require(\"v-tooltip\")},2734:function(t){\"use strict\";t.exports=require(\"vue\")},9605:function(t){\"use strict\";t.exports=require(\"vue-material-design-icons/ChevronRight\")},5978:function(t){\"use strict\";t.exports=require(\"vue-material-design-icons/Close\")},3251:function(t){\"use strict\";t.exports=require(\"vue-material-design-icons/DotsHorizontal\")}},e={};function n(a){var i=e[a];if(void 0!==i)return i.exports;var o=e[a]={id:a,exports:{}};return t[a](o,o.exports,n),o.exports}n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,{a:e}),e},n.d=function(t,e){for(var a in e)n.o(e,a)&&!n.o(t,a)&&Object.defineProperty(t,a,{enumerable:!0,get:e[a]})},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.r=function(t){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(t,\"__esModule\",{value:!0})};var a={};return function(){\"use strict\";n.r(a),n.d(a,{default:function(){return M}});var t=n(7645),e=n(2640),i=n.n(e),o=require(\"vue-material-design-icons/ChevronLeft\"),s=n.n(o),r=n(9605),l=n.n(r),c=n(5978),d=n.n(c),u=require(\"vue-material-design-icons/Pause\"),m=n.n(u),p=require(\"vue-material-design-icons/Play\"),g=n.n(p),h=n(5860),A=n(4828),v=n(3648),f=n(932),C=n(9040);function b(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 y={name:\"Modal\",components:{ActionButton:A.default,Actions:h.default,ChevronLeft:s(),ChevronRight:l(),Close:d(),Pause:m(),Play:g()},directives:{tooltip:C.default},mixins:[v.Z],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?(0,f.t)(\"Pause slideshow\"):(0,f.t)(\"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())(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 b((function(){t.next(),t.handleSlideshow()}),this.slideshowDelay):(this.playing=!1,this.clearSlideshowTimeout())},clearSlideshowTimeout:function(){this.slideshowTimeout&&this.slideshowTimeout.clear()}}},k=n(3379),B=n.n(k),w=n(7795),S=n.n(w),x=n(569),N=n.n(x),j=n(3565),z=n.n(j),P=n(9216),E=n.n(P),_=n(4589),D=n.n(_),T=n(1309),$={};$.styleTagTransform=D(),$.setAttributes=z(),$.insert=N().bind(null,\"head\"),$.domAPI=S(),$.insertStyleElement=E(),B()(T.Z,$),T.Z&&T.Z.locals&&T.Z.locals;var F=n(1900),O=n(8575),U=n.n(O),G=(0,F.Z)(y,(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.apply(null,arguments)}}},[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.apply(null,arguments)}}},[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.apply(null,arguments)}}},[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,\"2da14a6a\",null);\"function\"==typeof U()&&U()(G);var I=G.exports;(0,t.Z)(I);var M=I}(),a}()}));\n//# sourceMappingURL=Modal.js.map","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 transitionalDefaults = require('../defaults/transitional');\nvar AxiosError = require('../core/AxiosError');\nvar CanceledError = require('../cancel/CanceledError');\nvar parseProtocol = require('../helpers/parseProtocol');\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) && utils.isStandardBrowserEnv()) {\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\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(new AxiosError('Request aborted', AxiosError.ECONNABORTED, config, 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(new AxiosError('Network Error', AxiosError.ERR_NETWORK, config, request, 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 || transitionalDefaults;\n if (config.timeoutErrorMessage) {\n timeoutErrorMessage = config.timeoutErrorMessage;\n }\n reject(new AxiosError(\n timeoutErrorMessage,\n transitional.clarifyTimeoutError ? AxiosError.ETIMEDOUT : AxiosError.ECONNABORTED,\n config,\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 CanceledError() : 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 var protocol = parseProtocol(fullPath);\n\n if (protocol && [ 'http', 'https', 'file' ].indexOf(protocol) === -1) {\n reject(new AxiosError('Unsupported protocol ' + protocol + ':', AxiosError.ERR_BAD_REQUEST, config));\n return;\n }\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.CanceledError = require('./cancel/CanceledError');\naxios.CancelToken = require('./cancel/CancelToken');\naxios.isCancel = require('./cancel/isCancel');\naxios.VERSION = require('./env/data').version;\naxios.toFormData = require('./helpers/toFormData');\n\n// Expose AxiosError class\naxios.AxiosError = require('../lib/core/AxiosError');\n\n// alias for CanceledError for backward compatibility\naxios.Cancel = axios.CanceledError;\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\nvar CanceledError = require('./CanceledError');\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 CanceledError(message);\n resolvePromise(token.reason);\n });\n}\n\n/**\n * Throws a `CanceledError` 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\nvar AxiosError = require('../core/AxiosError');\nvar utils = require('../utils');\n\n/**\n * A `CanceledError` is an object that is thrown when an operation is canceled.\n *\n * @class\n * @param {string=} message The message.\n */\nfunction CanceledError(message) {\n // eslint-disable-next-line no-eq-null,eqeqeq\n AxiosError.call(this, message == null ? 'canceled' : message, AxiosError.ERR_CANCELED);\n this.name = 'CanceledError';\n}\n\nutils.inherits(CanceledError, AxiosError, {\n __CANCEL__: true\n});\n\nmodule.exports = CanceledError;\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 buildFullPath = require('./buildFullPath');\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(configOrUrl, config) {\n /*eslint no-param-reassign:0*/\n // Allow for axios('example/url'[, config]) a la fetch API\n if (typeof configOrUrl === 'string') {\n config = config || {};\n config.url = configOrUrl;\n } else {\n config = configOrUrl || {};\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 var fullPath = buildFullPath(config.baseURL, config.url);\n return buildURL(fullPath, config.params, config.paramsSerializer);\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\n function generateHTTPMethod(isForm) {\n return function httpMethod(url, data, config) {\n return this.request(mergeConfig(config || {}, {\n method: method,\n headers: isForm ? {\n 'Content-Type': 'multipart/form-data'\n } : {},\n url: url,\n data: data\n }));\n };\n }\n\n Axios.prototype[method] = generateHTTPMethod();\n\n Axios.prototype[method + 'Form'] = generateHTTPMethod(true);\n});\n\nmodule.exports = Axios;\n","'use strict';\n\nvar utils = require('../utils');\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 {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [config] The config.\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n * @returns {Error} The created error.\n */\nfunction AxiosError(message, code, config, request, response) {\n Error.call(this);\n this.message = message;\n this.name = 'AxiosError';\n code && (this.code = code);\n config && (this.config = config);\n request && (this.request = request);\n response && (this.response = response);\n}\n\nutils.inherits(AxiosError, Error, {\n 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});\n\nvar prototype = AxiosError.prototype;\nvar descriptors = {};\n\n[\n 'ERR_BAD_OPTION_VALUE',\n 'ERR_BAD_OPTION',\n 'ECONNABORTED',\n 'ETIMEDOUT',\n 'ERR_NETWORK',\n 'ERR_FR_TOO_MANY_REDIRECTS',\n 'ERR_DEPRECATED',\n 'ERR_BAD_RESPONSE',\n 'ERR_BAD_REQUEST',\n 'ERR_CANCELED'\n// eslint-disable-next-line func-names\n].forEach(function(code) {\n descriptors[code] = {value: code};\n});\n\nObject.defineProperties(AxiosError, descriptors);\nObject.defineProperty(prototype, 'isAxiosError', {value: true});\n\n// eslint-disable-next-line func-names\nAxiosError.from = function(error, code, config, request, response, customProps) {\n var axiosError = Object.create(prototype);\n\n utils.toFlatObject(error, axiosError, function filter(obj) {\n return obj !== Error.prototype;\n });\n\n AxiosError.call(axiosError, error.message, code, config, request, response);\n\n axiosError.name = error.name;\n\n customProps && Object.assign(axiosError, customProps);\n\n return axiosError;\n};\n\nmodule.exports = AxiosError;\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 utils = require('./../utils');\nvar transformData = require('./transformData');\nvar isCancel = require('../cancel/isCancel');\nvar defaults = require('../defaults');\nvar CanceledError = require('../cancel/CanceledError');\n\n/**\n * Throws a `CanceledError` 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 CanceledError();\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\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 'beforeRedirect': 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 AxiosError = require('./AxiosError');\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(new AxiosError(\n 'Request failed with status code ' + response.status,\n [AxiosError.ERR_BAD_REQUEST, AxiosError.ERR_BAD_RESPONSE][Math.floor(response.status / 100) - 4],\n response.config,\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 AxiosError = require('../core/AxiosError');\nvar transitionalDefaults = require('./transitional');\nvar toFormData = require('../helpers/toFormData');\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: transitionalDefaults,\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\n var isObjectPayload = utils.isObject(data);\n var contentType = headers && headers['Content-Type'];\n\n var isFileList;\n\n if ((isFileList = utils.isFileList(data)) || (isObjectPayload && contentType === 'multipart/form-data')) {\n var _FormData = this.env && this.env.FormData;\n return toFormData(isFileList ? {'files[]': data} : data, _FormData && new _FormData());\n } else if (isObjectPayload || contentType === 'application/json') {\n setContentTypeIfUnset(headers, 'application/json');\n return stringifySafely(data);\n }\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 AxiosError.from(e, AxiosError.ERR_BAD_RESPONSE, this, null, this.response);\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 env: {\n FormData: require('./env/FormData')\n },\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","'use strict';\n\nmodule.exports = {\n silentJSONParsing: true,\n forcedJSONParsing: true,\n clarifyTimeoutError: false\n};\n","module.exports = {\n \"version\": \"0.27.2\"\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\nvar utils = require('./../utils');\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 utils.isObject(payload) && (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","// eslint-disable-next-line strict\nmodule.exports = null;\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\nmodule.exports = function parseProtocol(url) {\n var match = /^([-+\\w]{1,25})(:?\\/\\/|:)/.exec(url);\n return match && match[1] || '';\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 utils = require('../utils');\n\n/**\n * Convert a data object to FormData\n * @param {Object} obj\n * @param {?Object} [formData]\n * @returns {Object}\n **/\n\nfunction toFormData(obj, formData) {\n // eslint-disable-next-line no-param-reassign\n formData = formData || new FormData();\n\n var stack = [];\n\n function convertValue(value) {\n if (value === null) return '';\n\n if (utils.isDate(value)) {\n return value.toISOString();\n }\n\n if (utils.isArrayBuffer(value) || utils.isTypedArray(value)) {\n return typeof Blob === 'function' ? new Blob([value]) : Buffer.from(value);\n }\n\n return value;\n }\n\n function build(data, parentKey) {\n if (utils.isPlainObject(data) || utils.isArray(data)) {\n if (stack.indexOf(data) !== -1) {\n throw Error('Circular reference detected in ' + parentKey);\n }\n\n stack.push(data);\n\n utils.forEach(data, function each(value, key) {\n if (utils.isUndefined(value)) return;\n var fullKey = parentKey ? parentKey + '.' + key : key;\n var arr;\n\n if (value && !parentKey && typeof value === 'object') {\n if (utils.endsWith(key, '{}')) {\n // eslint-disable-next-line no-param-reassign\n value = JSON.stringify(value);\n } else if (utils.endsWith(key, '[]') && (arr = utils.toArray(value))) {\n // eslint-disable-next-line func-names\n arr.forEach(function(el) {\n !utils.isUndefined(el) && formData.append(fullKey, convertValue(el));\n });\n return;\n }\n }\n\n build(value, fullKey);\n });\n\n stack.pop();\n } else {\n formData.append(parentKey, convertValue(data));\n }\n }\n\n build(obj);\n\n return formData;\n}\n\nmodule.exports = toFormData;\n","'use strict';\n\nvar VERSION = require('../env/data').version;\nvar AxiosError = require('../core/AxiosError');\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 AxiosError(\n formatMessage(opt, ' has been removed' + (version ? ' in ' + version : '')),\n AxiosError.ERR_DEPRECATED\n );\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 AxiosError('options must be an object', AxiosError.ERR_BAD_OPTION_VALUE);\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 AxiosError('option ' + opt + ' must be ' + result, AxiosError.ERR_BAD_OPTION_VALUE);\n }\n continue;\n }\n if (allowUnknown !== true) {\n throw new AxiosError('Unknown option ' + opt, AxiosError.ERR_BAD_OPTION);\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// eslint-disable-next-line func-names\nvar kindOf = (function(cache) {\n // eslint-disable-next-line func-names\n return function(thing) {\n var str = toString.call(thing);\n return cache[str] || (cache[str] = str.slice(8, -1).toLowerCase());\n };\n})(Object.create(null));\n\nfunction kindOfTest(type) {\n type = type.toLowerCase();\n return function isKindOf(thing) {\n return kindOf(thing) === type;\n };\n}\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 Array.isArray(val);\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 * @function\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an ArrayBuffer, otherwise false\n */\nvar isArrayBuffer = kindOfTest('ArrayBuffer');\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) && (isArrayBuffer(val.buffer));\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 (kindOf(val) !== '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 * @function\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Date, otherwise false\n */\nvar isDate = kindOfTest('Date');\n\n/**\n * Determine if a value is a File\n *\n * @function\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a File, otherwise false\n */\nvar isFile = kindOfTest('File');\n\n/**\n * Determine if a value is a Blob\n *\n * @function\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Blob, otherwise false\n */\nvar isBlob = kindOfTest('Blob');\n\n/**\n * Determine if a value is a FileList\n *\n * @function\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a File, otherwise false\n */\nvar isFileList = kindOfTest('FileList');\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 FormData\n *\n * @param {Object} thing The value to test\n * @returns {boolean} True if value is an FormData, otherwise false\n */\nfunction isFormData(thing) {\n var pattern = '[object FormData]';\n return thing && (\n (typeof FormData === 'function' && thing instanceof FormData) ||\n toString.call(thing) === pattern ||\n (isFunction(thing.toString) && thing.toString() === pattern)\n );\n}\n\n/**\n * Determine if a value is a URLSearchParams object\n * @function\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a URLSearchParams object, otherwise false\n */\nvar isURLSearchParams = kindOfTest('URLSearchParams');\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\n/**\n * Inherit the prototype methods from one constructor into another\n * @param {function} constructor\n * @param {function} superConstructor\n * @param {object} [props]\n * @param {object} [descriptors]\n */\n\nfunction inherits(constructor, superConstructor, props, descriptors) {\n constructor.prototype = Object.create(superConstructor.prototype, descriptors);\n constructor.prototype.constructor = constructor;\n props && Object.assign(constructor.prototype, props);\n}\n\n/**\n * Resolve object with deep prototype chain to a flat object\n * @param {Object} sourceObj source object\n * @param {Object} [destObj]\n * @param {Function} [filter]\n * @returns {Object}\n */\n\nfunction toFlatObject(sourceObj, destObj, filter) {\n var props;\n var i;\n var prop;\n var merged = {};\n\n destObj = destObj || {};\n\n do {\n props = Object.getOwnPropertyNames(sourceObj);\n i = props.length;\n while (i-- > 0) {\n prop = props[i];\n if (!merged[prop]) {\n destObj[prop] = sourceObj[prop];\n merged[prop] = true;\n }\n }\n sourceObj = Object.getPrototypeOf(sourceObj);\n } while (sourceObj && (!filter || filter(sourceObj, destObj)) && sourceObj !== Object.prototype);\n\n return destObj;\n}\n\n/*\n * determines whether a string ends with the characters of a specified string\n * @param {String} str\n * @param {String} searchString\n * @param {Number} [position= 0]\n * @returns {boolean}\n */\nfunction endsWith(str, searchString, position) {\n str = String(str);\n if (position === undefined || position > str.length) {\n position = str.length;\n }\n position -= searchString.length;\n var lastIndex = str.indexOf(searchString, position);\n return lastIndex !== -1 && lastIndex === position;\n}\n\n\n/**\n * Returns new array from array like object\n * @param {*} [thing]\n * @returns {Array}\n */\nfunction toArray(thing) {\n if (!thing) return null;\n var i = thing.length;\n if (isUndefined(i)) return null;\n var arr = new Array(i);\n while (i-- > 0) {\n arr[i] = thing[i];\n }\n return arr;\n}\n\n// eslint-disable-next-line func-names\nvar isTypedArray = (function(TypedArray) {\n // eslint-disable-next-line func-names\n return function(thing) {\n return TypedArray && thing instanceof TypedArray;\n };\n})(typeof Uint8Array !== 'undefined' && Object.getPrototypeOf(Uint8Array));\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 inherits: inherits,\n toFlatObject: toFlatObject,\n kindOf: kindOf,\n kindOfTest: kindOfTest,\n endsWith: endsWith,\n toArray: toArray,\n isTypedArray: isTypedArray,\n isFileList: isFileList\n};\n","'use strict'\n\nexports.byteLength = byteLength\nexports.toByteArray = toByteArray\nexports.fromByteArray = fromByteArray\n\nvar lookup = []\nvar revLookup = []\nvar Arr = typeof Uint8Array !== 'undefined' ? Uint8Array : Array\n\nvar code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'\nfor (var i = 0, len = code.length; i < len; ++i) {\n lookup[i] = code[i]\n revLookup[code.charCodeAt(i)] = i\n}\n\n// Support decoding URL-safe base64 strings, as Node.js does.\n// See: https://en.wikipedia.org/wiki/Base64#URL_applications\nrevLookup['-'.charCodeAt(0)] = 62\nrevLookup['_'.charCodeAt(0)] = 63\n\nfunction getLens (b64) {\n var len = b64.length\n\n if (len % 4 > 0) {\n throw new Error('Invalid string. Length must be a multiple of 4')\n }\n\n // Trim off extra bytes after placeholder bytes are found\n // See: https://github.com/beatgammit/base64-js/issues/42\n var validLen = b64.indexOf('=')\n if (validLen === -1) validLen = len\n\n var placeHoldersLen = validLen === len\n ? 0\n : 4 - (validLen % 4)\n\n return [validLen, placeHoldersLen]\n}\n\n// base64 is 4/3 + up to two characters of the original data\nfunction byteLength (b64) {\n var lens = getLens(b64)\n var validLen = lens[0]\n var placeHoldersLen = lens[1]\n return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen\n}\n\nfunction _byteLength (b64, validLen, placeHoldersLen) {\n return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen\n}\n\nfunction toByteArray (b64) {\n var tmp\n var lens = getLens(b64)\n var validLen = lens[0]\n var placeHoldersLen = lens[1]\n\n var arr = new Arr(_byteLength(b64, validLen, placeHoldersLen))\n\n var curByte = 0\n\n // if there are placeholders, only get up to the last complete 4 chars\n var len = placeHoldersLen > 0\n ? validLen - 4\n : validLen\n\n var i\n for (i = 0; i < len; i += 4) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 18) |\n (revLookup[b64.charCodeAt(i + 1)] << 12) |\n (revLookup[b64.charCodeAt(i + 2)] << 6) |\n revLookup[b64.charCodeAt(i + 3)]\n arr[curByte++] = (tmp >> 16) & 0xFF\n arr[curByte++] = (tmp >> 8) & 0xFF\n arr[curByte++] = tmp & 0xFF\n }\n\n if (placeHoldersLen === 2) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 2) |\n (revLookup[b64.charCodeAt(i + 1)] >> 4)\n arr[curByte++] = tmp & 0xFF\n }\n\n if (placeHoldersLen === 1) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 10) |\n (revLookup[b64.charCodeAt(i + 1)] << 4) |\n (revLookup[b64.charCodeAt(i + 2)] >> 2)\n arr[curByte++] = (tmp >> 8) & 0xFF\n arr[curByte++] = tmp & 0xFF\n }\n\n return arr\n}\n\nfunction tripletToBase64 (num) {\n return lookup[num >> 18 & 0x3F] +\n lookup[num >> 12 & 0x3F] +\n lookup[num >> 6 & 0x3F] +\n lookup[num & 0x3F]\n}\n\nfunction encodeChunk (uint8, start, end) {\n var tmp\n var output = []\n for (var i = start; i < end; i += 3) {\n tmp =\n ((uint8[i] << 16) & 0xFF0000) +\n ((uint8[i + 1] << 8) & 0xFF00) +\n (uint8[i + 2] & 0xFF)\n output.push(tripletToBase64(tmp))\n }\n return output.join('')\n}\n\nfunction fromByteArray (uint8) {\n var tmp\n var len = uint8.length\n var extraBytes = len % 3 // if we have 1 byte left, pad 2 bytes\n var parts = []\n var maxChunkLength = 16383 // must be multiple of 3\n\n // go through the array every three bytes, we'll deal with trailing stuff later\n for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) {\n parts.push(encodeChunk(uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength)))\n }\n\n // pad the end with zeros, but make sure to not forget the extra bytes\n if (extraBytes === 1) {\n tmp = uint8[len - 1]\n parts.push(\n lookup[tmp >> 2] +\n lookup[(tmp << 4) & 0x3F] +\n '=='\n )\n } else if (extraBytes === 2) {\n tmp = (uint8[len - 2] << 8) + uint8[len - 1]\n parts.push(\n lookup[tmp >> 10] +\n lookup[(tmp >> 4) & 0x3F] +\n lookup[(tmp << 2) & 0x3F] +\n '='\n )\n }\n\n return parts.join('')\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 $ = require('../internals/export');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar objectDefinePropertyModile = require('../internals/object-define-property');\n\n// `Object.defineProperty` method\n// https://tc39.github.io/ecma262/#sec-object.defineproperty\n$({ target: 'Object', stat: true, forced: !DESCRIPTORS, sham: !DESCRIPTORS }, {\n defineProperty: objectDefinePropertyModile.f\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;border-radius:40px}#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;border-radius:40px}.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\":\"AA2IC,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,CACA,kBAAA,CAGD,8CACC,2CAAA,CACA,qCAAA,CACA,oCAAA,CACA,SAAA,CACA,kBAAA,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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\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\\tborder-radius: 40px;\\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\\tborder-radius: 40px;\\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-10738c5b]{background-color:rgba(0,0,0,.7)}.modal-mask[data-v-10738c5b] .modal-wrapper{position:relative}.modal-mask[data-v-10738c5b] .modal-container{display:flex;flex-direction:column;position:relative}.modal-mask .modal-body[data-v-10738c5b]{flex-grow:1;display:flex;overflow-x:hidden;overflow-y:auto}.modal-mask .modal-body>div[data-v-10738c5b]{display:flex;flex-grow:1;align-items:center;justify-content:center}.modal-header[data-v-10738c5b]{flex-shrink:0}.modal-header .firstrunwizard-header[data-v-10738c5b]{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-10738c5b]{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-10738c5b]{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-10738c5b]{align-self:flex-end}.modal-footer[data-v-10738c5b]{overflow:hidden;position:absolute;display:flex;bottom:0;right:0}.modal-footer button[data-v-10738c5b]{margin:10px}.next-enter-active[data-v-10738c5b],.next-leave-active[data-v-10738c5b],.previous-enter-active[data-v-10738c5b],.previous-leave-active[data-v-10738c5b]{transition:transform .1s,opacity .25s}.next-enter[data-v-10738c5b]{transform:translateX(50%);opacity:0}.next-leave-to[data-v-10738c5b]{transform:translateX(-50%);opacity:0}.previous-enter[data-v-10738c5b]{transform:translateX(-50%);opacity:0}.previous-leave-to[data-v-10738c5b]{transform:translateX(50%);opacity:0}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/App.vue\"],\"names\":[],\"mappings\":\"AAqVA,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\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\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","/**\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","/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> */\nexports.read = function (buffer, offset, isLE, mLen, nBytes) {\n var e, m\n var eLen = (nBytes * 8) - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var nBits = -7\n var i = isLE ? (nBytes - 1) : 0\n var d = isLE ? -1 : 1\n var s = buffer[offset + i]\n\n i += d\n\n e = s & ((1 << (-nBits)) - 1)\n s >>= (-nBits)\n nBits += eLen\n for (; nBits > 0; e = (e * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n m = e & ((1 << (-nBits)) - 1)\n e >>= (-nBits)\n nBits += mLen\n for (; nBits > 0; m = (m * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n if (e === 0) {\n e = 1 - eBias\n } else if (e === eMax) {\n return m ? NaN : ((s ? -1 : 1) * Infinity)\n } else {\n m = m + Math.pow(2, mLen)\n e = e - eBias\n }\n return (s ? -1 : 1) * m * Math.pow(2, e - mLen)\n}\n\nexports.write = function (buffer, value, offset, isLE, mLen, nBytes) {\n var e, m, c\n var eLen = (nBytes * 8) - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0)\n var i = isLE ? 0 : (nBytes - 1)\n var d = isLE ? 1 : -1\n var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0\n\n value = Math.abs(value)\n\n if (isNaN(value) || value === Infinity) {\n m = isNaN(value) ? 1 : 0\n e = eMax\n } else {\n e = Math.floor(Math.log(value) / Math.LN2)\n if (value * (c = Math.pow(2, -e)) < 1) {\n e--\n c *= 2\n }\n if (e + eBias >= 1) {\n value += rt / c\n } else {\n value += rt * Math.pow(2, 1 - eBias)\n }\n if (value * c >= 2) {\n e++\n c /= 2\n }\n\n if (e + eBias >= eMax) {\n m = 0\n e = eMax\n } else if (e + eBias >= 1) {\n m = ((value * c) - 1) * Math.pow(2, mLen)\n e = e + eBias\n } else {\n m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen)\n e = 0\n }\n }\n\n for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {}\n\n e = (e << mLen) | m\n eLen += mLen\n for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {}\n\n buffer[offset + i - d] |= s * 128\n}\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","'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};","/*!\n * The buffer module from node.js, for the browser.\n *\n * @author Feross Aboukhadijeh <https://feross.org>\n * @license MIT\n */\n/* eslint-disable no-proto */\n\n'use strict'\n\nconst base64 = require('base64-js')\nconst ieee754 = require('ieee754')\nconst customInspectSymbol =\n (typeof Symbol === 'function' && typeof Symbol['for'] === 'function') // eslint-disable-line dot-notation\n ? Symbol['for']('nodejs.util.inspect.custom') // eslint-disable-line dot-notation\n : null\n\nexports.Buffer = Buffer\nexports.SlowBuffer = SlowBuffer\nexports.INSPECT_MAX_BYTES = 50\n\nconst K_MAX_LENGTH = 0x7fffffff\nexports.kMaxLength = K_MAX_LENGTH\n\n/**\n * If `Buffer.TYPED_ARRAY_SUPPORT`:\n * === true Use Uint8Array implementation (fastest)\n * === false Print warning and recommend using `buffer` v4.x which has an Object\n * implementation (most compatible, even IE6)\n *\n * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+,\n * Opera 11.6+, iOS 4.2+.\n *\n * We report that the browser does not support typed arrays if the are not subclassable\n * using __proto__. Firefox 4-29 lacks support for adding new properties to `Uint8Array`\n * (See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438). IE 10 lacks support\n * for __proto__ and has a buggy typed array implementation.\n */\nBuffer.TYPED_ARRAY_SUPPORT = typedArraySupport()\n\nif (!Buffer.TYPED_ARRAY_SUPPORT && typeof console !== 'undefined' &&\n typeof console.error === 'function') {\n console.error(\n 'This browser lacks typed array (Uint8Array) support which is required by ' +\n '`buffer` v5.x. Use `buffer` v4.x if you require old browser support.'\n )\n}\n\nfunction typedArraySupport () {\n // Can typed array instances can be augmented?\n try {\n const arr = new Uint8Array(1)\n const proto = { foo: function () { return 42 } }\n Object.setPrototypeOf(proto, Uint8Array.prototype)\n Object.setPrototypeOf(arr, proto)\n return arr.foo() === 42\n } catch (e) {\n return false\n }\n}\n\nObject.defineProperty(Buffer.prototype, 'parent', {\n enumerable: true,\n get: function () {\n if (!Buffer.isBuffer(this)) return undefined\n return this.buffer\n }\n})\n\nObject.defineProperty(Buffer.prototype, 'offset', {\n enumerable: true,\n get: function () {\n if (!Buffer.isBuffer(this)) return undefined\n return this.byteOffset\n }\n})\n\nfunction createBuffer (length) {\n if (length > K_MAX_LENGTH) {\n throw new RangeError('The value \"' + length + '\" is invalid for option \"size\"')\n }\n // Return an augmented `Uint8Array` instance\n const buf = new Uint8Array(length)\n Object.setPrototypeOf(buf, Buffer.prototype)\n return buf\n}\n\n/**\n * The Buffer constructor returns instances of `Uint8Array` that have their\n * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of\n * `Uint8Array`, so the returned instances will have all the node `Buffer` methods\n * and the `Uint8Array` methods. Square bracket notation works as expected -- it\n * returns a single octet.\n *\n * The `Uint8Array` prototype remains unmodified.\n */\n\nfunction Buffer (arg, encodingOrOffset, length) {\n // Common case.\n if (typeof arg === 'number') {\n if (typeof encodingOrOffset === 'string') {\n throw new TypeError(\n 'The \"string\" argument must be of type string. Received type number'\n )\n }\n return allocUnsafe(arg)\n }\n return from(arg, encodingOrOffset, length)\n}\n\nBuffer.poolSize = 8192 // not used by this implementation\n\nfunction from (value, encodingOrOffset, length) {\n if (typeof value === 'string') {\n return fromString(value, encodingOrOffset)\n }\n\n if (ArrayBuffer.isView(value)) {\n return fromArrayView(value)\n }\n\n if (value == null) {\n throw new TypeError(\n 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' +\n 'or Array-like Object. Received type ' + (typeof value)\n )\n }\n\n if (isInstance(value, ArrayBuffer) ||\n (value && isInstance(value.buffer, ArrayBuffer))) {\n return fromArrayBuffer(value, encodingOrOffset, length)\n }\n\n if (typeof SharedArrayBuffer !== 'undefined' &&\n (isInstance(value, SharedArrayBuffer) ||\n (value && isInstance(value.buffer, SharedArrayBuffer)))) {\n return fromArrayBuffer(value, encodingOrOffset, length)\n }\n\n if (typeof value === 'number') {\n throw new TypeError(\n 'The \"value\" argument must not be of type number. Received type number'\n )\n }\n\n const valueOf = value.valueOf && value.valueOf()\n if (valueOf != null && valueOf !== value) {\n return Buffer.from(valueOf, encodingOrOffset, length)\n }\n\n const b = fromObject(value)\n if (b) return b\n\n if (typeof Symbol !== 'undefined' && Symbol.toPrimitive != null &&\n typeof value[Symbol.toPrimitive] === 'function') {\n return Buffer.from(value[Symbol.toPrimitive]('string'), encodingOrOffset, length)\n }\n\n throw new TypeError(\n 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' +\n 'or Array-like Object. Received type ' + (typeof value)\n )\n}\n\n/**\n * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError\n * if value is a number.\n * Buffer.from(str[, encoding])\n * Buffer.from(array)\n * Buffer.from(buffer)\n * Buffer.from(arrayBuffer[, byteOffset[, length]])\n **/\nBuffer.from = function (value, encodingOrOffset, length) {\n return from(value, encodingOrOffset, length)\n}\n\n// Note: Change prototype *after* Buffer.from is defined to workaround Chrome bug:\n// https://github.com/feross/buffer/pull/148\nObject.setPrototypeOf(Buffer.prototype, Uint8Array.prototype)\nObject.setPrototypeOf(Buffer, Uint8Array)\n\nfunction assertSize (size) {\n if (typeof size !== 'number') {\n throw new TypeError('\"size\" argument must be of type number')\n } else if (size < 0) {\n throw new RangeError('The value \"' + size + '\" is invalid for option \"size\"')\n }\n}\n\nfunction alloc (size, fill, encoding) {\n assertSize(size)\n if (size <= 0) {\n return createBuffer(size)\n }\n if (fill !== undefined) {\n // Only pay attention to encoding if it's a string. This\n // prevents accidentally sending in a number that would\n // be interpreted as a start offset.\n return typeof encoding === 'string'\n ? createBuffer(size).fill(fill, encoding)\n : createBuffer(size).fill(fill)\n }\n return createBuffer(size)\n}\n\n/**\n * Creates a new filled Buffer instance.\n * alloc(size[, fill[, encoding]])\n **/\nBuffer.alloc = function (size, fill, encoding) {\n return alloc(size, fill, encoding)\n}\n\nfunction allocUnsafe (size) {\n assertSize(size)\n return createBuffer(size < 0 ? 0 : checked(size) | 0)\n}\n\n/**\n * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance.\n * */\nBuffer.allocUnsafe = function (size) {\n return allocUnsafe(size)\n}\n/**\n * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance.\n */\nBuffer.allocUnsafeSlow = function (size) {\n return allocUnsafe(size)\n}\n\nfunction fromString (string, encoding) {\n if (typeof encoding !== 'string' || encoding === '') {\n encoding = 'utf8'\n }\n\n if (!Buffer.isEncoding(encoding)) {\n throw new TypeError('Unknown encoding: ' + encoding)\n }\n\n const length = byteLength(string, encoding) | 0\n let buf = createBuffer(length)\n\n const actual = buf.write(string, encoding)\n\n if (actual !== length) {\n // Writing a hex string, for example, that contains invalid characters will\n // cause everything after the first invalid character to be ignored. (e.g.\n // 'abxxcd' will be treated as 'ab')\n buf = buf.slice(0, actual)\n }\n\n return buf\n}\n\nfunction fromArrayLike (array) {\n const length = array.length < 0 ? 0 : checked(array.length) | 0\n const buf = createBuffer(length)\n for (let i = 0; i < length; i += 1) {\n buf[i] = array[i] & 255\n }\n return buf\n}\n\nfunction fromArrayView (arrayView) {\n if (isInstance(arrayView, Uint8Array)) {\n const copy = new Uint8Array(arrayView)\n return fromArrayBuffer(copy.buffer, copy.byteOffset, copy.byteLength)\n }\n return fromArrayLike(arrayView)\n}\n\nfunction fromArrayBuffer (array, byteOffset, length) {\n if (byteOffset < 0 || array.byteLength < byteOffset) {\n throw new RangeError('\"offset\" is outside of buffer bounds')\n }\n\n if (array.byteLength < byteOffset + (length || 0)) {\n throw new RangeError('\"length\" is outside of buffer bounds')\n }\n\n let buf\n if (byteOffset === undefined && length === undefined) {\n buf = new Uint8Array(array)\n } else if (length === undefined) {\n buf = new Uint8Array(array, byteOffset)\n } else {\n buf = new Uint8Array(array, byteOffset, length)\n }\n\n // Return an augmented `Uint8Array` instance\n Object.setPrototypeOf(buf, Buffer.prototype)\n\n return buf\n}\n\nfunction fromObject (obj) {\n if (Buffer.isBuffer(obj)) {\n const len = checked(obj.length) | 0\n const buf = createBuffer(len)\n\n if (buf.length === 0) {\n return buf\n }\n\n obj.copy(buf, 0, 0, len)\n return buf\n }\n\n if (obj.length !== undefined) {\n if (typeof obj.length !== 'number' || numberIsNaN(obj.length)) {\n return createBuffer(0)\n }\n return fromArrayLike(obj)\n }\n\n if (obj.type === 'Buffer' && Array.isArray(obj.data)) {\n return fromArrayLike(obj.data)\n }\n}\n\nfunction checked (length) {\n // Note: cannot use `length < K_MAX_LENGTH` here because that fails when\n // length is NaN (which is otherwise coerced to zero.)\n if (length >= K_MAX_LENGTH) {\n throw new RangeError('Attempt to allocate Buffer larger than maximum ' +\n 'size: 0x' + K_MAX_LENGTH.toString(16) + ' bytes')\n }\n return length | 0\n}\n\nfunction SlowBuffer (length) {\n if (+length != length) { // eslint-disable-line eqeqeq\n length = 0\n }\n return Buffer.alloc(+length)\n}\n\nBuffer.isBuffer = function isBuffer (b) {\n return b != null && b._isBuffer === true &&\n b !== Buffer.prototype // so Buffer.isBuffer(Buffer.prototype) will be false\n}\n\nBuffer.compare = function compare (a, b) {\n if (isInstance(a, Uint8Array)) a = Buffer.from(a, a.offset, a.byteLength)\n if (isInstance(b, Uint8Array)) b = Buffer.from(b, b.offset, b.byteLength)\n if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) {\n throw new TypeError(\n 'The \"buf1\", \"buf2\" arguments must be one of type Buffer or Uint8Array'\n )\n }\n\n if (a === b) return 0\n\n let x = a.length\n let y = b.length\n\n for (let 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) return -1\n if (y < x) return 1\n return 0\n}\n\nBuffer.isEncoding = function isEncoding (encoding) {\n switch (String(encoding).toLowerCase()) {\n case 'hex':\n case 'utf8':\n case 'utf-8':\n case 'ascii':\n case 'latin1':\n case 'binary':\n case 'base64':\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return true\n default:\n return false\n }\n}\n\nBuffer.concat = function concat (list, length) {\n if (!Array.isArray(list)) {\n throw new TypeError('\"list\" argument must be an Array of Buffers')\n }\n\n if (list.length === 0) {\n return Buffer.alloc(0)\n }\n\n let i\n if (length === undefined) {\n length = 0\n for (i = 0; i < list.length; ++i) {\n length += list[i].length\n }\n }\n\n const buffer = Buffer.allocUnsafe(length)\n let pos = 0\n for (i = 0; i < list.length; ++i) {\n let buf = list[i]\n if (isInstance(buf, Uint8Array)) {\n if (pos + buf.length > buffer.length) {\n if (!Buffer.isBuffer(buf)) buf = Buffer.from(buf)\n buf.copy(buffer, pos)\n } else {\n Uint8Array.prototype.set.call(\n buffer,\n buf,\n pos\n )\n }\n } else if (!Buffer.isBuffer(buf)) {\n throw new TypeError('\"list\" argument must be an Array of Buffers')\n } else {\n buf.copy(buffer, pos)\n }\n pos += buf.length\n }\n return buffer\n}\n\nfunction byteLength (string, encoding) {\n if (Buffer.isBuffer(string)) {\n return string.length\n }\n if (ArrayBuffer.isView(string) || isInstance(string, ArrayBuffer)) {\n return string.byteLength\n }\n if (typeof string !== 'string') {\n throw new TypeError(\n 'The \"string\" argument must be one of type string, Buffer, or ArrayBuffer. ' +\n 'Received type ' + typeof string\n )\n }\n\n const len = string.length\n const mustMatch = (arguments.length > 2 && arguments[2] === true)\n if (!mustMatch && len === 0) return 0\n\n // Use a for loop to avoid recursion\n let loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'ascii':\n case 'latin1':\n case 'binary':\n return len\n case 'utf8':\n case 'utf-8':\n return utf8ToBytes(string).length\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return len * 2\n case 'hex':\n return len >>> 1\n case 'base64':\n return base64ToBytes(string).length\n default:\n if (loweredCase) {\n return mustMatch ? -1 : utf8ToBytes(string).length // assume utf8\n }\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\nBuffer.byteLength = byteLength\n\nfunction slowToString (encoding, start, end) {\n let loweredCase = false\n\n // No need to verify that \"this.length <= MAX_UINT32\" since it's a read-only\n // property of a typed array.\n\n // This behaves neither like String nor Uint8Array in that we set start/end\n // to their upper/lower bounds if the value passed is out of range.\n // undefined is handled specially as per ECMA-262 6th Edition,\n // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization.\n if (start === undefined || start < 0) {\n start = 0\n }\n // Return early if start > this.length. Done here to prevent potential uint32\n // coercion fail below.\n if (start > this.length) {\n return ''\n }\n\n if (end === undefined || end > this.length) {\n end = this.length\n }\n\n if (end <= 0) {\n return ''\n }\n\n // Force coercion to uint32. This will also coerce falsey/NaN values to 0.\n end >>>= 0\n start >>>= 0\n\n if (end <= start) {\n return ''\n }\n\n if (!encoding) encoding = 'utf8'\n\n while (true) {\n switch (encoding) {\n case 'hex':\n return hexSlice(this, start, end)\n\n case 'utf8':\n case 'utf-8':\n return utf8Slice(this, start, end)\n\n case 'ascii':\n return asciiSlice(this, start, end)\n\n case 'latin1':\n case 'binary':\n return latin1Slice(this, start, end)\n\n case 'base64':\n return base64Slice(this, start, end)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return utf16leSlice(this, start, end)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = (encoding + '').toLowerCase()\n loweredCase = true\n }\n }\n}\n\n// This property is used by `Buffer.isBuffer` (and the `is-buffer` npm package)\n// to detect a Buffer instance. It's not possible to use `instanceof Buffer`\n// reliably in a browserify context because there could be multiple different\n// copies of the 'buffer' package in use. This method works even for Buffer\n// instances that were created from another copy of the `buffer` package.\n// See: https://github.com/feross/buffer/issues/154\nBuffer.prototype._isBuffer = true\n\nfunction swap (b, n, m) {\n const i = b[n]\n b[n] = b[m]\n b[m] = i\n}\n\nBuffer.prototype.swap16 = function swap16 () {\n const len = this.length\n if (len % 2 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 16-bits')\n }\n for (let i = 0; i < len; i += 2) {\n swap(this, i, i + 1)\n }\n return this\n}\n\nBuffer.prototype.swap32 = function swap32 () {\n const len = this.length\n if (len % 4 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 32-bits')\n }\n for (let i = 0; i < len; i += 4) {\n swap(this, i, i + 3)\n swap(this, i + 1, i + 2)\n }\n return this\n}\n\nBuffer.prototype.swap64 = function swap64 () {\n const len = this.length\n if (len % 8 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 64-bits')\n }\n for (let i = 0; i < len; i += 8) {\n swap(this, i, i + 7)\n swap(this, i + 1, i + 6)\n swap(this, i + 2, i + 5)\n swap(this, i + 3, i + 4)\n }\n return this\n}\n\nBuffer.prototype.toString = function toString () {\n const length = this.length\n if (length === 0) return ''\n if (arguments.length === 0) return utf8Slice(this, 0, length)\n return slowToString.apply(this, arguments)\n}\n\nBuffer.prototype.toLocaleString = Buffer.prototype.toString\n\nBuffer.prototype.equals = function equals (b) {\n if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer')\n if (this === b) return true\n return Buffer.compare(this, b) === 0\n}\n\nBuffer.prototype.inspect = function inspect () {\n let str = ''\n const max = exports.INSPECT_MAX_BYTES\n str = this.toString('hex', 0, max).replace(/(.{2})/g, '$1 ').trim()\n if (this.length > max) str += ' ... '\n return '<Buffer ' + str + '>'\n}\nif (customInspectSymbol) {\n Buffer.prototype[customInspectSymbol] = Buffer.prototype.inspect\n}\n\nBuffer.prototype.compare = function compare (target, start, end, thisStart, thisEnd) {\n if (isInstance(target, Uint8Array)) {\n target = Buffer.from(target, target.offset, target.byteLength)\n }\n if (!Buffer.isBuffer(target)) {\n throw new TypeError(\n 'The \"target\" argument must be one of type Buffer or Uint8Array. ' +\n 'Received type ' + (typeof target)\n )\n }\n\n if (start === undefined) {\n start = 0\n }\n if (end === undefined) {\n end = target ? target.length : 0\n }\n if (thisStart === undefined) {\n thisStart = 0\n }\n if (thisEnd === undefined) {\n thisEnd = this.length\n }\n\n if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) {\n throw new RangeError('out of range index')\n }\n\n if (thisStart >= thisEnd && start >= end) {\n return 0\n }\n if (thisStart >= thisEnd) {\n return -1\n }\n if (start >= end) {\n return 1\n }\n\n start >>>= 0\n end >>>= 0\n thisStart >>>= 0\n thisEnd >>>= 0\n\n if (this === target) return 0\n\n let x = thisEnd - thisStart\n let y = end - start\n const len = Math.min(x, y)\n\n const thisCopy = this.slice(thisStart, thisEnd)\n const targetCopy = target.slice(start, end)\n\n for (let i = 0; i < len; ++i) {\n if (thisCopy[i] !== targetCopy[i]) {\n x = thisCopy[i]\n y = targetCopy[i]\n break\n }\n }\n\n if (x < y) return -1\n if (y < x) return 1\n return 0\n}\n\n// Finds either the first index of `val` in `buffer` at offset >= `byteOffset`,\n// OR the last index of `val` in `buffer` at offset <= `byteOffset`.\n//\n// Arguments:\n// - buffer - a Buffer to search\n// - val - a string, Buffer, or number\n// - byteOffset - an index into `buffer`; will be clamped to an int32\n// - encoding - an optional encoding, relevant is val is a string\n// - dir - true for indexOf, false for lastIndexOf\nfunction bidirectionalIndexOf (buffer, val, byteOffset, encoding, dir) {\n // Empty buffer means no match\n if (buffer.length === 0) return -1\n\n // Normalize byteOffset\n if (typeof byteOffset === 'string') {\n encoding = byteOffset\n byteOffset = 0\n } else if (byteOffset > 0x7fffffff) {\n byteOffset = 0x7fffffff\n } else if (byteOffset < -0x80000000) {\n byteOffset = -0x80000000\n }\n byteOffset = +byteOffset // Coerce to Number.\n if (numberIsNaN(byteOffset)) {\n // byteOffset: it it's undefined, null, NaN, \"foo\", etc, search whole buffer\n byteOffset = dir ? 0 : (buffer.length - 1)\n }\n\n // Normalize byteOffset: negative offsets start from the end of the buffer\n if (byteOffset < 0) byteOffset = buffer.length + byteOffset\n if (byteOffset >= buffer.length) {\n if (dir) return -1\n else byteOffset = buffer.length - 1\n } else if (byteOffset < 0) {\n if (dir) byteOffset = 0\n else return -1\n }\n\n // Normalize val\n if (typeof val === 'string') {\n val = Buffer.from(val, encoding)\n }\n\n // Finally, search either indexOf (if dir is true) or lastIndexOf\n if (Buffer.isBuffer(val)) {\n // Special case: looking for empty string/buffer always fails\n if (val.length === 0) {\n return -1\n }\n return arrayIndexOf(buffer, val, byteOffset, encoding, dir)\n } else if (typeof val === 'number') {\n val = val & 0xFF // Search for a byte value [0-255]\n if (typeof Uint8Array.prototype.indexOf === 'function') {\n if (dir) {\n return Uint8Array.prototype.indexOf.call(buffer, val, byteOffset)\n } else {\n return Uint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset)\n }\n }\n return arrayIndexOf(buffer, [val], byteOffset, encoding, dir)\n }\n\n throw new TypeError('val must be string, number or Buffer')\n}\n\nfunction arrayIndexOf (arr, val, byteOffset, encoding, dir) {\n let indexSize = 1\n let arrLength = arr.length\n let valLength = val.length\n\n if (encoding !== undefined) {\n encoding = String(encoding).toLowerCase()\n if (encoding === 'ucs2' || encoding === 'ucs-2' ||\n encoding === 'utf16le' || encoding === 'utf-16le') {\n if (arr.length < 2 || val.length < 2) {\n return -1\n }\n indexSize = 2\n arrLength /= 2\n valLength /= 2\n byteOffset /= 2\n }\n }\n\n function read (buf, i) {\n if (indexSize === 1) {\n return buf[i]\n } else {\n return buf.readUInt16BE(i * indexSize)\n }\n }\n\n let i\n if (dir) {\n let foundIndex = -1\n for (i = byteOffset; i < arrLength; i++) {\n if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) {\n if (foundIndex === -1) foundIndex = i\n if (i - foundIndex + 1 === valLength) return foundIndex * indexSize\n } else {\n if (foundIndex !== -1) i -= i - foundIndex\n foundIndex = -1\n }\n }\n } else {\n if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength\n for (i = byteOffset; i >= 0; i--) {\n let found = true\n for (let j = 0; j < valLength; j++) {\n if (read(arr, i + j) !== read(val, j)) {\n found = false\n break\n }\n }\n if (found) return i\n }\n }\n\n return -1\n}\n\nBuffer.prototype.includes = function includes (val, byteOffset, encoding) {\n return this.indexOf(val, byteOffset, encoding) !== -1\n}\n\nBuffer.prototype.indexOf = function indexOf (val, byteOffset, encoding) {\n return bidirectionalIndexOf(this, val, byteOffset, encoding, true)\n}\n\nBuffer.prototype.lastIndexOf = function lastIndexOf (val, byteOffset, encoding) {\n return bidirectionalIndexOf(this, val, byteOffset, encoding, false)\n}\n\nfunction hexWrite (buf, string, offset, length) {\n offset = Number(offset) || 0\n const remaining = buf.length - offset\n if (!length) {\n length = remaining\n } else {\n length = Number(length)\n if (length > remaining) {\n length = remaining\n }\n }\n\n const strLen = string.length\n\n if (length > strLen / 2) {\n length = strLen / 2\n }\n let i\n for (i = 0; i < length; ++i) {\n const parsed = parseInt(string.substr(i * 2, 2), 16)\n if (numberIsNaN(parsed)) return i\n buf[offset + i] = parsed\n }\n return i\n}\n\nfunction utf8Write (buf, string, offset, length) {\n return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nfunction asciiWrite (buf, string, offset, length) {\n return blitBuffer(asciiToBytes(string), buf, offset, length)\n}\n\nfunction base64Write (buf, string, offset, length) {\n return blitBuffer(base64ToBytes(string), buf, offset, length)\n}\n\nfunction ucs2Write (buf, string, offset, length) {\n return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nBuffer.prototype.write = function write (string, offset, length, encoding) {\n // Buffer#write(string)\n if (offset === undefined) {\n encoding = 'utf8'\n length = this.length\n offset = 0\n // Buffer#write(string, encoding)\n } else if (length === undefined && typeof offset === 'string') {\n encoding = offset\n length = this.length\n offset = 0\n // Buffer#write(string, offset[, length][, encoding])\n } else if (isFinite(offset)) {\n offset = offset >>> 0\n if (isFinite(length)) {\n length = length >>> 0\n if (encoding === undefined) encoding = 'utf8'\n } else {\n encoding = length\n length = undefined\n }\n } else {\n throw new Error(\n 'Buffer.write(string, encoding, offset[, length]) is no longer supported'\n )\n }\n\n const remaining = this.length - offset\n if (length === undefined || length > remaining) length = remaining\n\n if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) {\n throw new RangeError('Attempt to write outside buffer bounds')\n }\n\n if (!encoding) encoding = 'utf8'\n\n let loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'hex':\n return hexWrite(this, string, offset, length)\n\n case 'utf8':\n case 'utf-8':\n return utf8Write(this, string, offset, length)\n\n case 'ascii':\n case 'latin1':\n case 'binary':\n return asciiWrite(this, string, offset, length)\n\n case 'base64':\n // Warning: maxLength not taken into account in base64Write\n return base64Write(this, string, offset, length)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return ucs2Write(this, string, offset, length)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\n\nBuffer.prototype.toJSON = function toJSON () {\n return {\n type: 'Buffer',\n data: Array.prototype.slice.call(this._arr || this, 0)\n }\n}\n\nfunction base64Slice (buf, start, end) {\n if (start === 0 && end === buf.length) {\n return base64.fromByteArray(buf)\n } else {\n return base64.fromByteArray(buf.slice(start, end))\n }\n}\n\nfunction utf8Slice (buf, start, end) {\n end = Math.min(buf.length, end)\n const res = []\n\n let i = start\n while (i < end) {\n const firstByte = buf[i]\n let codePoint = null\n let bytesPerSequence = (firstByte > 0xEF)\n ? 4\n : (firstByte > 0xDF)\n ? 3\n : (firstByte > 0xBF)\n ? 2\n : 1\n\n if (i + bytesPerSequence <= end) {\n let secondByte, thirdByte, fourthByte, tempCodePoint\n\n switch (bytesPerSequence) {\n case 1:\n if (firstByte < 0x80) {\n codePoint = firstByte\n }\n break\n case 2:\n secondByte = buf[i + 1]\n if ((secondByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F)\n if (tempCodePoint > 0x7F) {\n codePoint = tempCodePoint\n }\n }\n break\n case 3:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F)\n if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) {\n codePoint = tempCodePoint\n }\n }\n break\n case 4:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n fourthByte = buf[i + 3]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F)\n if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) {\n codePoint = tempCodePoint\n }\n }\n }\n }\n\n if (codePoint === null) {\n // we did not generate a valid codePoint so insert a\n // replacement char (U+FFFD) and advance only 1 byte\n codePoint = 0xFFFD\n bytesPerSequence = 1\n } else if (codePoint > 0xFFFF) {\n // encode to utf16 (surrogate pair dance)\n codePoint -= 0x10000\n res.push(codePoint >>> 10 & 0x3FF | 0xD800)\n codePoint = 0xDC00 | codePoint & 0x3FF\n }\n\n res.push(codePoint)\n i += bytesPerSequence\n }\n\n return decodeCodePointsArray(res)\n}\n\n// Based on http://stackoverflow.com/a/22747272/680742, the browser with\n// the lowest limit is Chrome, with 0x10000 args.\n// We go 1 magnitude less, for safety\nconst MAX_ARGUMENTS_LENGTH = 0x1000\n\nfunction decodeCodePointsArray (codePoints) {\n const len = codePoints.length\n if (len <= MAX_ARGUMENTS_LENGTH) {\n return String.fromCharCode.apply(String, codePoints) // avoid extra slice()\n }\n\n // Decode in chunks to avoid \"call stack size exceeded\".\n let res = ''\n let i = 0\n while (i < len) {\n res += String.fromCharCode.apply(\n String,\n codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH)\n )\n }\n return res\n}\n\nfunction asciiSlice (buf, start, end) {\n let ret = ''\n end = Math.min(buf.length, end)\n\n for (let i = start; i < end; ++i) {\n ret += String.fromCharCode(buf[i] & 0x7F)\n }\n return ret\n}\n\nfunction latin1Slice (buf, start, end) {\n let ret = ''\n end = Math.min(buf.length, end)\n\n for (let i = start; i < end; ++i) {\n ret += String.fromCharCode(buf[i])\n }\n return ret\n}\n\nfunction hexSlice (buf, start, end) {\n const len = buf.length\n\n if (!start || start < 0) start = 0\n if (!end || end < 0 || end > len) end = len\n\n let out = ''\n for (let i = start; i < end; ++i) {\n out += hexSliceLookupTable[buf[i]]\n }\n return out\n}\n\nfunction utf16leSlice (buf, start, end) {\n const bytes = buf.slice(start, end)\n let res = ''\n // If bytes.length is odd, the last 8 bits must be ignored (same as node.js)\n for (let i = 0; i < bytes.length - 1; i += 2) {\n res += String.fromCharCode(bytes[i] + (bytes[i + 1] * 256))\n }\n return res\n}\n\nBuffer.prototype.slice = function slice (start, end) {\n const len = this.length\n start = ~~start\n end = end === undefined ? len : ~~end\n\n if (start < 0) {\n start += len\n if (start < 0) start = 0\n } else if (start > len) {\n start = len\n }\n\n if (end < 0) {\n end += len\n if (end < 0) end = 0\n } else if (end > len) {\n end = len\n }\n\n if (end < start) end = start\n\n const newBuf = this.subarray(start, end)\n // Return an augmented `Uint8Array` instance\n Object.setPrototypeOf(newBuf, Buffer.prototype)\n\n return newBuf\n}\n\n/*\n * Need to make sure that buffer isn't trying to write out of bounds.\n */\nfunction checkOffset (offset, ext, length) {\n if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint')\n if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length')\n}\n\nBuffer.prototype.readUintLE =\nBuffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n let val = this[offset]\n let mul = 1\n let i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUintBE =\nBuffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) {\n checkOffset(offset, byteLength, this.length)\n }\n\n let val = this[offset + --byteLength]\n let mul = 1\n while (byteLength > 0 && (mul *= 0x100)) {\n val += this[offset + --byteLength] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUint8 =\nBuffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 1, this.length)\n return this[offset]\n}\n\nBuffer.prototype.readUint16LE =\nBuffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n return this[offset] | (this[offset + 1] << 8)\n}\n\nBuffer.prototype.readUint16BE =\nBuffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n return (this[offset] << 8) | this[offset + 1]\n}\n\nBuffer.prototype.readUint32LE =\nBuffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return ((this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16)) +\n (this[offset + 3] * 0x1000000)\n}\n\nBuffer.prototype.readUint32BE =\nBuffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] * 0x1000000) +\n ((this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n this[offset + 3])\n}\n\nBuffer.prototype.readBigUInt64LE = defineBigIntMethod(function readBigUInt64LE (offset) {\n offset = offset >>> 0\n validateNumber(offset, 'offset')\n const first = this[offset]\n const last = this[offset + 7]\n if (first === undefined || last === undefined) {\n boundsError(offset, this.length - 8)\n }\n\n const lo = first +\n this[++offset] * 2 ** 8 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 24\n\n const hi = this[++offset] +\n this[++offset] * 2 ** 8 +\n this[++offset] * 2 ** 16 +\n last * 2 ** 24\n\n return BigInt(lo) + (BigInt(hi) << BigInt(32))\n})\n\nBuffer.prototype.readBigUInt64BE = defineBigIntMethod(function readBigUInt64BE (offset) {\n offset = offset >>> 0\n validateNumber(offset, 'offset')\n const first = this[offset]\n const last = this[offset + 7]\n if (first === undefined || last === undefined) {\n boundsError(offset, this.length - 8)\n }\n\n const hi = first * 2 ** 24 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 8 +\n this[++offset]\n\n const lo = this[++offset] * 2 ** 24 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 8 +\n last\n\n return (BigInt(hi) << BigInt(32)) + BigInt(lo)\n})\n\nBuffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n let val = this[offset]\n let mul = 1\n let i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n let i = byteLength\n let mul = 1\n let val = this[offset + --i]\n while (i > 0 && (mul *= 0x100)) {\n val += this[offset + --i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readInt8 = function readInt8 (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 1, this.length)\n if (!(this[offset] & 0x80)) return (this[offset])\n return ((0xff - this[offset] + 1) * -1)\n}\n\nBuffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n const val = this[offset] | (this[offset + 1] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n const val = this[offset + 1] | (this[offset] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16) |\n (this[offset + 3] << 24)\n}\n\nBuffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] << 24) |\n (this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n (this[offset + 3])\n}\n\nBuffer.prototype.readBigInt64LE = defineBigIntMethod(function readBigInt64LE (offset) {\n offset = offset >>> 0\n validateNumber(offset, 'offset')\n const first = this[offset]\n const last = this[offset + 7]\n if (first === undefined || last === undefined) {\n boundsError(offset, this.length - 8)\n }\n\n const val = this[offset + 4] +\n this[offset + 5] * 2 ** 8 +\n this[offset + 6] * 2 ** 16 +\n (last << 24) // Overflow\n\n return (BigInt(val) << BigInt(32)) +\n BigInt(first +\n this[++offset] * 2 ** 8 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 24)\n})\n\nBuffer.prototype.readBigInt64BE = defineBigIntMethod(function readBigInt64BE (offset) {\n offset = offset >>> 0\n validateNumber(offset, 'offset')\n const first = this[offset]\n const last = this[offset + 7]\n if (first === undefined || last === undefined) {\n boundsError(offset, this.length - 8)\n }\n\n const val = (first << 24) + // Overflow\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 8 +\n this[++offset]\n\n return (BigInt(val) << BigInt(32)) +\n BigInt(this[++offset] * 2 ** 24 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 8 +\n last)\n})\n\nBuffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, true, 23, 4)\n}\n\nBuffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, false, 23, 4)\n}\n\nBuffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, true, 52, 8)\n}\n\nBuffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, false, 52, 8)\n}\n\nfunction checkInt (buf, value, offset, ext, max, min) {\n if (!Buffer.isBuffer(buf)) throw new TypeError('\"buffer\" argument must be a Buffer instance')\n if (value > max || value < min) throw new RangeError('\"value\" argument is out of bounds')\n if (offset + ext > buf.length) throw new RangeError('Index out of range')\n}\n\nBuffer.prototype.writeUintLE =\nBuffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) {\n const maxBytes = Math.pow(2, 8 * byteLength) - 1\n checkInt(this, value, offset, byteLength, maxBytes, 0)\n }\n\n let mul = 1\n let i = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUintBE =\nBuffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) {\n const maxBytes = Math.pow(2, 8 * byteLength) - 1\n checkInt(this, value, offset, byteLength, maxBytes, 0)\n }\n\n let i = byteLength - 1\n let mul = 1\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUint8 =\nBuffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0)\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nBuffer.prototype.writeUint16LE =\nBuffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n return offset + 2\n}\n\nBuffer.prototype.writeUint16BE =\nBuffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n return offset + 2\n}\n\nBuffer.prototype.writeUint32LE =\nBuffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n this[offset + 3] = (value >>> 24)\n this[offset + 2] = (value >>> 16)\n this[offset + 1] = (value >>> 8)\n this[offset] = (value & 0xff)\n return offset + 4\n}\n\nBuffer.prototype.writeUint32BE =\nBuffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n return offset + 4\n}\n\nfunction wrtBigUInt64LE (buf, value, offset, min, max) {\n checkIntBI(value, min, max, buf, offset, 7)\n\n let lo = Number(value & BigInt(0xffffffff))\n buf[offset++] = lo\n lo = lo >> 8\n buf[offset++] = lo\n lo = lo >> 8\n buf[offset++] = lo\n lo = lo >> 8\n buf[offset++] = lo\n let hi = Number(value >> BigInt(32) & BigInt(0xffffffff))\n buf[offset++] = hi\n hi = hi >> 8\n buf[offset++] = hi\n hi = hi >> 8\n buf[offset++] = hi\n hi = hi >> 8\n buf[offset++] = hi\n return offset\n}\n\nfunction wrtBigUInt64BE (buf, value, offset, min, max) {\n checkIntBI(value, min, max, buf, offset, 7)\n\n let lo = Number(value & BigInt(0xffffffff))\n buf[offset + 7] = lo\n lo = lo >> 8\n buf[offset + 6] = lo\n lo = lo >> 8\n buf[offset + 5] = lo\n lo = lo >> 8\n buf[offset + 4] = lo\n let hi = Number(value >> BigInt(32) & BigInt(0xffffffff))\n buf[offset + 3] = hi\n hi = hi >> 8\n buf[offset + 2] = hi\n hi = hi >> 8\n buf[offset + 1] = hi\n hi = hi >> 8\n buf[offset] = hi\n return offset + 8\n}\n\nBuffer.prototype.writeBigUInt64LE = defineBigIntMethod(function writeBigUInt64LE (value, offset = 0) {\n return wrtBigUInt64LE(this, value, offset, BigInt(0), BigInt('0xffffffffffffffff'))\n})\n\nBuffer.prototype.writeBigUInt64BE = defineBigIntMethod(function writeBigUInt64BE (value, offset = 0) {\n return wrtBigUInt64BE(this, value, offset, BigInt(0), BigInt('0xffffffffffffffff'))\n})\n\nBuffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n const limit = Math.pow(2, (8 * byteLength) - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n let i = 0\n let mul = 1\n let sub = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) {\n sub = 1\n }\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n const limit = Math.pow(2, (8 * byteLength) - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n let i = byteLength - 1\n let mul = 1\n let sub = 0\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) {\n sub = 1\n }\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80)\n if (value < 0) value = 0xff + value + 1\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nBuffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n return offset + 2\n}\n\nBuffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n return offset + 2\n}\n\nBuffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n this[offset + 2] = (value >>> 16)\n this[offset + 3] = (value >>> 24)\n return offset + 4\n}\n\nBuffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n if (value < 0) value = 0xffffffff + value + 1\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n return offset + 4\n}\n\nBuffer.prototype.writeBigInt64LE = defineBigIntMethod(function writeBigInt64LE (value, offset = 0) {\n return wrtBigUInt64LE(this, value, offset, -BigInt('0x8000000000000000'), BigInt('0x7fffffffffffffff'))\n})\n\nBuffer.prototype.writeBigInt64BE = defineBigIntMethod(function writeBigInt64BE (value, offset = 0) {\n return wrtBigUInt64BE(this, value, offset, -BigInt('0x8000000000000000'), BigInt('0x7fffffffffffffff'))\n})\n\nfunction checkIEEE754 (buf, value, offset, ext, max, min) {\n if (offset + ext > buf.length) throw new RangeError('Index out of range')\n if (offset < 0) throw new RangeError('Index out of range')\n}\n\nfunction writeFloat (buf, value, offset, littleEndian, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 4, 3.4028234663852886e+38, -3.4028234663852886e+38)\n }\n ieee754.write(buf, value, offset, littleEndian, 23, 4)\n return offset + 4\n}\n\nBuffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) {\n return writeFloat(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) {\n return writeFloat(this, value, offset, false, noAssert)\n}\n\nfunction writeDouble (buf, value, offset, littleEndian, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 8, 1.7976931348623157E+308, -1.7976931348623157E+308)\n }\n ieee754.write(buf, value, offset, littleEndian, 52, 8)\n return offset + 8\n}\n\nBuffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) {\n return writeDouble(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) {\n return writeDouble(this, value, offset, false, noAssert)\n}\n\n// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length)\nBuffer.prototype.copy = function copy (target, targetStart, start, end) {\n if (!Buffer.isBuffer(target)) throw new TypeError('argument should be a Buffer')\n if (!start) start = 0\n if (!end && end !== 0) end = this.length\n if (targetStart >= target.length) targetStart = target.length\n if (!targetStart) targetStart = 0\n if (end > 0 && end < start) end = start\n\n // Copy 0 bytes; we're done\n if (end === start) return 0\n if (target.length === 0 || this.length === 0) return 0\n\n // Fatal error conditions\n if (targetStart < 0) {\n throw new RangeError('targetStart out of bounds')\n }\n if (start < 0 || start >= this.length) throw new RangeError('Index out of range')\n if (end < 0) throw new RangeError('sourceEnd out of bounds')\n\n // Are we oob?\n if (end > this.length) end = this.length\n if (target.length - targetStart < end - start) {\n end = target.length - targetStart + start\n }\n\n const len = end - start\n\n if (this === target && typeof Uint8Array.prototype.copyWithin === 'function') {\n // Use built-in when available, missing from IE11\n this.copyWithin(targetStart, start, end)\n } else {\n Uint8Array.prototype.set.call(\n target,\n this.subarray(start, end),\n targetStart\n )\n }\n\n return len\n}\n\n// Usage:\n// buffer.fill(number[, offset[, end]])\n// buffer.fill(buffer[, offset[, end]])\n// buffer.fill(string[, offset[, end]][, encoding])\nBuffer.prototype.fill = function fill (val, start, end, encoding) {\n // Handle string cases:\n if (typeof val === 'string') {\n if (typeof start === 'string') {\n encoding = start\n start = 0\n end = this.length\n } else if (typeof end === 'string') {\n encoding = end\n end = this.length\n }\n if (encoding !== undefined && typeof encoding !== 'string') {\n throw new TypeError('encoding must be a string')\n }\n if (typeof encoding === 'string' && !Buffer.isEncoding(encoding)) {\n throw new TypeError('Unknown encoding: ' + encoding)\n }\n if (val.length === 1) {\n const code = val.charCodeAt(0)\n if ((encoding === 'utf8' && code < 128) ||\n encoding === 'latin1') {\n // Fast path: If `val` fits into a single byte, use that numeric value.\n val = code\n }\n }\n } else if (typeof val === 'number') {\n val = val & 255\n } else if (typeof val === 'boolean') {\n val = Number(val)\n }\n\n // Invalid ranges are not set to a default, so can range check early.\n if (start < 0 || this.length < start || this.length < end) {\n throw new RangeError('Out of range index')\n }\n\n if (end <= start) {\n return this\n }\n\n start = start >>> 0\n end = end === undefined ? this.length : end >>> 0\n\n if (!val) val = 0\n\n let i\n if (typeof val === 'number') {\n for (i = start; i < end; ++i) {\n this[i] = val\n }\n } else {\n const bytes = Buffer.isBuffer(val)\n ? val\n : Buffer.from(val, encoding)\n const len = bytes.length\n if (len === 0) {\n throw new TypeError('The value \"' + val +\n '\" is invalid for argument \"value\"')\n }\n for (i = 0; i < end - start; ++i) {\n this[i + start] = bytes[i % len]\n }\n }\n\n return this\n}\n\n// CUSTOM ERRORS\n// =============\n\n// Simplified versions from Node, changed for Buffer-only usage\nconst errors = {}\nfunction E (sym, getMessage, Base) {\n errors[sym] = class NodeError extends Base {\n constructor () {\n super()\n\n Object.defineProperty(this, 'message', {\n value: getMessage.apply(this, arguments),\n writable: true,\n configurable: true\n })\n\n // Add the error code to the name to include it in the stack trace.\n this.name = `${this.name} [${sym}]`\n // Access the stack to generate the error message including the error code\n // from the name.\n this.stack // eslint-disable-line no-unused-expressions\n // Reset the name to the actual name.\n delete this.name\n }\n\n get code () {\n return sym\n }\n\n set code (value) {\n Object.defineProperty(this, 'code', {\n configurable: true,\n enumerable: true,\n value,\n writable: true\n })\n }\n\n toString () {\n return `${this.name} [${sym}]: ${this.message}`\n }\n }\n}\n\nE('ERR_BUFFER_OUT_OF_BOUNDS',\n function (name) {\n if (name) {\n return `${name} is outside of buffer bounds`\n }\n\n return 'Attempt to access memory outside buffer bounds'\n }, RangeError)\nE('ERR_INVALID_ARG_TYPE',\n function (name, actual) {\n return `The \"${name}\" argument must be of type number. Received type ${typeof actual}`\n }, TypeError)\nE('ERR_OUT_OF_RANGE',\n function (str, range, input) {\n let msg = `The value of \"${str}\" is out of range.`\n let received = input\n if (Number.isInteger(input) && Math.abs(input) > 2 ** 32) {\n received = addNumericalSeparator(String(input))\n } else if (typeof input === 'bigint') {\n received = String(input)\n if (input > BigInt(2) ** BigInt(32) || input < -(BigInt(2) ** BigInt(32))) {\n received = addNumericalSeparator(received)\n }\n received += 'n'\n }\n msg += ` It must be ${range}. Received ${received}`\n return msg\n }, RangeError)\n\nfunction addNumericalSeparator (val) {\n let res = ''\n let i = val.length\n const start = val[0] === '-' ? 1 : 0\n for (; i >= start + 4; i -= 3) {\n res = `_${val.slice(i - 3, i)}${res}`\n }\n return `${val.slice(0, i)}${res}`\n}\n\n// CHECK FUNCTIONS\n// ===============\n\nfunction checkBounds (buf, offset, byteLength) {\n validateNumber(offset, 'offset')\n if (buf[offset] === undefined || buf[offset + byteLength] === undefined) {\n boundsError(offset, buf.length - (byteLength + 1))\n }\n}\n\nfunction checkIntBI (value, min, max, buf, offset, byteLength) {\n if (value > max || value < min) {\n const n = typeof min === 'bigint' ? 'n' : ''\n let range\n if (byteLength > 3) {\n if (min === 0 || min === BigInt(0)) {\n range = `>= 0${n} and < 2${n} ** ${(byteLength + 1) * 8}${n}`\n } else {\n range = `>= -(2${n} ** ${(byteLength + 1) * 8 - 1}${n}) and < 2 ** ` +\n `${(byteLength + 1) * 8 - 1}${n}`\n }\n } else {\n range = `>= ${min}${n} and <= ${max}${n}`\n }\n throw new errors.ERR_OUT_OF_RANGE('value', range, value)\n }\n checkBounds(buf, offset, byteLength)\n}\n\nfunction validateNumber (value, name) {\n if (typeof value !== 'number') {\n throw new errors.ERR_INVALID_ARG_TYPE(name, 'number', value)\n }\n}\n\nfunction boundsError (value, length, type) {\n if (Math.floor(value) !== value) {\n validateNumber(value, type)\n throw new errors.ERR_OUT_OF_RANGE(type || 'offset', 'an integer', value)\n }\n\n if (length < 0) {\n throw new errors.ERR_BUFFER_OUT_OF_BOUNDS()\n }\n\n throw new errors.ERR_OUT_OF_RANGE(type || 'offset',\n `>= ${type ? 1 : 0} and <= ${length}`,\n value)\n}\n\n// HELPER FUNCTIONS\n// ================\n\nconst INVALID_BASE64_RE = /[^+/0-9A-Za-z-_]/g\n\nfunction base64clean (str) {\n // Node takes equal signs as end of the Base64 encoding\n str = str.split('=')[0]\n // Node strips out invalid characters like \\n and \\t from the string, base64-js does not\n str = str.trim().replace(INVALID_BASE64_RE, '')\n // Node converts strings with length < 2 to ''\n if (str.length < 2) return ''\n // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not\n while (str.length % 4 !== 0) {\n str = str + '='\n }\n return str\n}\n\nfunction utf8ToBytes (string, units) {\n units = units || Infinity\n let codePoint\n const length = string.length\n let leadSurrogate = null\n const bytes = []\n\n for (let i = 0; i < length; ++i) {\n codePoint = string.charCodeAt(i)\n\n // is surrogate component\n if (codePoint > 0xD7FF && codePoint < 0xE000) {\n // last char was a lead\n if (!leadSurrogate) {\n // no lead yet\n if (codePoint > 0xDBFF) {\n // unexpected trail\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n } else if (i + 1 === length) {\n // unpaired lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n }\n\n // valid lead\n leadSurrogate = codePoint\n\n continue\n }\n\n // 2 leads in a row\n if (codePoint < 0xDC00) {\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n leadSurrogate = codePoint\n continue\n }\n\n // valid surrogate pair\n codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000\n } else if (leadSurrogate) {\n // valid bmp char, but last char was a lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n }\n\n leadSurrogate = null\n\n // encode utf8\n if (codePoint < 0x80) {\n if ((units -= 1) < 0) break\n bytes.push(codePoint)\n } else if (codePoint < 0x800) {\n if ((units -= 2) < 0) break\n bytes.push(\n codePoint >> 0x6 | 0xC0,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x10000) {\n if ((units -= 3) < 0) break\n bytes.push(\n codePoint >> 0xC | 0xE0,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x110000) {\n if ((units -= 4) < 0) break\n bytes.push(\n codePoint >> 0x12 | 0xF0,\n codePoint >> 0xC & 0x3F | 0x80,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else {\n throw new Error('Invalid code point')\n }\n }\n\n return bytes\n}\n\nfunction asciiToBytes (str) {\n const byteArray = []\n for (let i = 0; i < str.length; ++i) {\n // Node's code seems to be doing this and not & 0x7F..\n byteArray.push(str.charCodeAt(i) & 0xFF)\n }\n return byteArray\n}\n\nfunction utf16leToBytes (str, units) {\n let c, hi, lo\n const byteArray = []\n for (let i = 0; i < str.length; ++i) {\n if ((units -= 2) < 0) break\n\n c = str.charCodeAt(i)\n hi = c >> 8\n lo = c % 256\n byteArray.push(lo)\n byteArray.push(hi)\n }\n\n return byteArray\n}\n\nfunction base64ToBytes (str) {\n return base64.toByteArray(base64clean(str))\n}\n\nfunction blitBuffer (src, dst, offset, length) {\n let i\n for (i = 0; i < length; ++i) {\n if ((i + offset >= dst.length) || (i >= src.length)) break\n dst[i + offset] = src[i]\n }\n return i\n}\n\n// ArrayBuffer or Uint8Array objects from other contexts (i.e. iframes) do not pass\n// the `instanceof` check but they should be treated as of that type.\n// See: https://github.com/feross/buffer/issues/166\nfunction isInstance (obj, type) {\n return obj instanceof type ||\n (obj != null && obj.constructor != null && obj.constructor.name != null &&\n obj.constructor.name === type.name)\n}\nfunction numberIsNaN (obj) {\n // For IE11 support\n return obj !== obj // eslint-disable-line no-self-compare\n}\n\n// Create lookup table for `toString('hex')`\n// See: https://github.com/feross/buffer/issues/219\nconst hexSliceLookupTable = (function () {\n const alphabet = '0123456789abcdef'\n const table = new Array(256)\n for (let i = 0; i < 16; ++i) {\n const i16 = i * 16\n for (let j = 0; j < 16; ++j) {\n table[i16 + j] = alphabet[i] + alphabet[j]\n }\n }\n return table\n})()\n\n// Return not function with Error if BigInt not supported\nfunction defineBigIntMethod (fn) {\n return typeof BigInt === 'undefined' ? BufferBigIntNotDefined : fn\n}\n\nfunction BufferBigIntNotDefined () {\n throw new Error('BigInt not supported')\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 return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _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 Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\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","'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","'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","// 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 v-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<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\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\tborder-radius: 40px;\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\tborder-radius: 40px;\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<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","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=10738c5b&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=10738c5b&lang=scss&scoped=true&\";\n export default content && content.locals ? content.locals : undefined;\n","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=10738c5b&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=10738c5b&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 \"10738c5b\",\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"],"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","documentElement","dataset","getCanonicalLocale","getDayNames","dayNames","getDayNamesMin","dayNamesMin","getDayNamesShort","dayNamesShort","getFirstDay","firstDay","lang","getMonthNames","monthNames","getMonthNamesShort","monthNamesShort","translate","app","text","options","L10N","translatePlural","textSingular","textPlural","url","params","allOptions","escape","noRewrite","_build","encodeURIComponent","charAt","config","modRewriteWorking","getRootUrl","generateFilePath","type","file","isCore","coreApps","indexOf","link","substring","appswebroots","encodeURI","webroot","self","module","t","n","Z","mixins","disabled","Boolean","computed","isFocusable","o","s","l","c","d","Array","u","keys","getOwnPropertySymbols","getOwnPropertyDescriptor","apply","m","p","getOwnPropertyDescriptors","defineProperties","g","directives","tooltip","components","DotsHorizontal","Popover","VNodes","open","forceMenu","forceTitle","menuTitle","String","primary","defaultIcon","ariaLabel","placement","boundariesElement","Element","querySelector","container","actions","opened","focusIndex","randomId","children","$children","firstAction","hasMultipleActions","isValidSingleAction","firstActionElement","singleActionTitle","isDisabled","$props","firstActionVNode","firstActionBinding","componentOptions","tag","is","href","$attrs","to","exact","firstActionEvent","listeners","click","firstActionEventBinding","firstActionIconSlot","$slots","icon","firstActionClass","staticClass","class","trim","iconSlotIsPopulated","watch","beforeMount","initActions","beforeUpdate","methods","openMenu","$emit","closeMenu","$refs","menuButton","focus","onOpen","$nextTick","focusFirstAction","onMouseFocusAction","activeElement","closest","menu","querySelectorAll","isArray","Symbol","iterator","from","call","slice","constructor","test","focusAction","removeCurrentActive","classList","remove","add","focusPreviousAction","preventIfEvent","focusNextAction","focusLastAction","$el","preventDefault","stopPropagation","execFirstAction","onFocus","onBlur","functional","render","vnodes","f","A","v","styleTagTransform","setAttributes","insert","bind","domAPI","insertStyleElement","locals","VTooltip","defaultTemplate","defaultHtml","defaultDelay","show","hide","detectLocale","Actions","Activities","Choose","Close","Custom","Flags","Global","Next","Objects","Previous","Search","Settings","Submit","Symbols","pluralId","msgid","msgid_plural","msgstr","addTranslation","build","before","util","$options","$destroy","getText","isLongText","title","closeAfterClick","isIconUrl","URL","onClick","Math","random","$parent","mounted","setAttribute","id","version","sources","names","mappings","sourcesContent","sourceRoot","map","join","next","done","return","btoa","unescape","JSON","stringify","identifier","base","css","media","sourceMap","supports","layer","references","updater","byIndex","splice","update","HTMLIFrameElement","contentDocument","head","Error","appendChild","createElement","attributes","nc","parentNode","removeChild","styleSheet","cssText","firstChild","createTextNode","x","k","VPopover","$watch","popover","isOpen","C","y","$createElement","_self","_c","_g","_b","ref","attrs","scopedSlots","_u","fn","_t","proxy","$listeners","focusable","on","style","backgroundImage","_v","_s","domProps","textContent","_e","rawName","expression","modifiers","auto","rel","_d","blur","hidden","delay","size","decorative","tabindex","keydown","_k","keyCode","ctrlKey","shiftKey","altKey","metaKey","mousemove","staticRenderFns","_compiled","_scopeId","$vnode","ssrContext","parent","__VUE_SSR_CONTEXT__","_registeredComponents","_ssrRegister","$root","shadowRoot","_injectStyles","beforeCreate","hasOwnProperty","toStringTag","M","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","insertBefore","lastChild","destroyed","previous","resetSlideshow","close","togglePlayPause","handleSlideshow","clearSlideshowTimeout","B","w","S","N","j","z","P","E","D","T","$","F","O","U","G","touchmove","invisible","height","width","stroke","fill","cx","cy","mousedown","currentTarget","I","utils","settle","cookies","buildURL","buildFullPath","parseHeaders","isURLSameOrigin","transitionalDefaults","AxiosError","CanceledError","parseProtocol","Promise","resolve","reject","onCanceled","requestData","requestHeaders","responseType","cancelToken","signal","isFormData","isStandardBrowserEnv","request","XMLHttpRequest","auth","username","password","Authorization","fullPath","baseURL","onloadend","responseHeaders","getAllResponseHeaders","response","responseText","status","statusText","err","method","toUpperCase","paramsSerializer","timeout","onreadystatechange","readyState","responseURL","onabort","ECONNABORTED","onerror","ERR_NETWORK","ontimeout","timeoutErrorMessage","transitional","clarifyTimeoutError","ETIMEDOUT","xsrfValue","withCredentials","xsrfCookieName","read","xsrfHeaderName","val","toLowerCase","setRequestHeader","isUndefined","onDownloadProgress","onUploadProgress","upload","cancel","abort","aborted","protocol","ERR_BAD_REQUEST","send","Axios","mergeConfig","axios","createInstance","defaultConfig","context","extend","instanceConfig","VERSION","toFormData","Cancel","all","promises","spread","isAxiosError","executor","resolvePromise","promise","then","_listeners","onfulfilled","_resolve","message","reason","throwIfRequested","listener","index","source","ERR_CANCELED","inherits","__CANCEL__","InterceptorManager","dispatchRequest","validators","interceptors","configOrUrl","assertOptions","silentJSONParsing","boolean","forcedJSONParsing","requestInterceptorChain","synchronousRequestInterceptors","interceptor","runWhen","synchronous","unshift","fulfilled","rejected","responseInterceptorChain","chain","shift","newConfig","onFulfilled","onRejected","getUri","generateHTTPMethod","isForm","code","toJSON","description","number","fileName","lineNumber","columnNumber","stack","descriptors","customProps","axiosError","toFlatObject","use","eject","isAbsoluteURL","combineURLs","requestedURL","transformData","throwIfCancellationRequested","transformRequest","merge","common","adapter","transformResponse","config1","config2","getMergedValue","isPlainObject","mergeDeepProperties","prop","valueFromConfig2","defaultToConfig2","mergeDirectKeys","mergeMap","configValue","validateStatus","ERR_BAD_RESPONSE","floor","fns","normalizeHeaderName","DEFAULT_CONTENT_TYPE","setContentTypeIfUnset","process","isArrayBuffer","isBuffer","isStream","isFile","isBlob","isArrayBufferView","buffer","isURLSearchParams","isFileList","isObjectPayload","isObject","contentType","_FormData","env","FormData","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","host","search","hash","hostname","port","pathname","location","requestURL","parsed","normalizedName","ignoreDuplicateOf","split","line","substr","exec","callback","arr","formData","convertValue","isTypedArray","Blob","Buffer","parentKey","fullKey","endsWith","toArray","el","append","pop","thing","deprecatedWarnings","formatMessage","opt","desc","opts","ERR_DEPRECATED","schema","allowUnknown","ERR_BAD_OPTION_VALUE","result","ERR_BAD_OPTION","cache","kindOf","str","kindOfTest","getPrototypeOf","isFunction","TypedArray","Uint8Array","pattern","ArrayBuffer","isView","pipe","product","assignValue","stripBOM","content","charCodeAt","superConstructor","sourceObj","destObj","merged","getOwnPropertyNames","searchString","position","lastIndex","byteLength","b64","lens","getLens","validLen","placeHoldersLen","toByteArray","tmp","Arr","_byteLength","curByte","len","revLookup","fromByteArray","uint8","extraBytes","maxChunkLength","len2","encodeChunk","lookup","end","num","output","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","fromIndex","IndexedObject","toObject","arraySpeciesCreate","TYPE","IS_MAP","IS_FILTER","IS_SOME","IS_EVERY","IS_FIND_INDEX","NO_HOLES","that","specificCreate","boundFunction","some","every","find","findIndex","fails","V8_VERSION","SPECIES","METHOD_NAME","array","foo","argument","DESCRIPTORS","has","thrower","ACCESSORS","argument0","argument1","originalArray","anObject","ENTRIES","returnMethod","ITERATOR","SAFE_CLOSING","called","iteratorWithReturn","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","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","globalThis","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","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","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","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","codeAt","max","min","integer","ceil","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","$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","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","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","dest","inherit","child","properties","childP","baseP","_super","boolOrFn","ifUndefined","val1","val2","addEventListeners","types","splitStr","removeEventListeners","hasParent","node","inStr","inArray","findByKey","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","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","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","isLE","mLen","nBytes","eLen","eMax","eBias","nBits","NaN","Infinity","pow","rt","LN2","ctor","superCtor","super_","TempCtor","hasToStringTag","$toString","callBound","isStandardArguments","isLegacyArguments","supportsStandardArguments","GeneratorFunction","fnToStr","isFnRegex","generatorFunc","getGeneratorFunc","getPolyfill","shim","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","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","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","freeExports","nodeType","freeModule","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","this_len","blue","green","red","white","kReadableOperator","strictEqualObject","notStrictEqualObject","notIdentical","copyError","inspectValue","compact","customInspect","depth","maxArrayLength","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","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","ieee754","customInspectSymbol","SlowBuffer","alloc","INSPECT_MAX_BYTES","K_MAX_LENGTH","createBuffer","buf","encodingOrOffset","encoding","isEncoding","fromString","arrayView","isInstance","fromArrayBuffer","fromArrayLike","fromArrayView","checked","fromObject","assertSize","mustMatch","loweredCase","utf8ToBytes","base64ToBytes","slowToString","hexSlice","utf8Slice","asciiSlice","latin1Slice","base64Slice","utf16leSlice","swap","bidirectionalIndexOf","dir","arrayIndexOf","lastIndexOf","indexSize","valLength","readUInt16BE","foundIndex","found","hexWrite","strLen","utf8Write","blitBuffer","asciiWrite","byteArray","asciiToBytes","base64Write","ucs2Write","units","utf16leToBytes","firstByte","codePoint","bytesPerSequence","secondByte","thirdByte","fourthByte","tempCodePoint","codePoints","MAX_ARGUMENTS_LENGTH","fromCharCode","decodeCodePointsArray","kMaxLength","TYPED_ARRAY_SUPPORT","typedArraySupport","poolSize","allocUnsafeSlow","_isBuffer","swap16","swap32","swap64","toLocaleString","equals","thisStart","thisEnd","thisCopy","targetCopy","ret","out","hexSliceLookupTable","bytes","checkOffset","ext","checkInt","wrtBigUInt64LE","checkIntBI","wrtBigUInt64BE","checkIEEE754","writeFloat","littleEndian","noAssert","writeDouble","newBuf","subarray","readUintLE","readUIntLE","mul","readUintBE","readUIntBE","readUint8","readUInt8","readUint16LE","readUInt16LE","readUint16BE","readUint32LE","readUInt32LE","readUint32BE","readUInt32BE","readBigUInt64LE","defineBigIntMethod","validateNumber","boundsError","readBigUInt64BE","readIntLE","readIntBE","readInt8","readInt16LE","readInt16BE","readInt32LE","readInt32BE","readBigInt64LE","readBigInt64BE","readFloatLE","readFloatBE","readDoubleLE","readDoubleBE","writeUintLE","writeUIntLE","writeUintBE","writeUIntBE","writeUint8","writeUInt8","writeUint16LE","writeUInt16LE","writeUint16BE","writeUInt16BE","writeUint32LE","writeUInt32LE","writeUint32BE","writeUInt32BE","writeBigUInt64LE","writeBigUInt64BE","writeIntLE","sub","writeIntBE","writeInt8","writeInt16LE","writeInt16BE","writeInt32LE","writeInt32BE","writeBigInt64LE","writeBigInt64BE","writeFloatLE","writeFloatBE","writeDoubleLE","writeDoubleBE","targetStart","copyWithin","errors","super","addNumericalSeparator","range","ERR_OUT_OF_RANGE","checkBounds","ERR_BUFFER_OUT_OF_BOUNDS","received","isInteger","INVALID_BASE64_RE","leadSurrogate","base64clean","dst","table","i16","BufferBigIntNotDefined","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","formatRegExp","objects","isNull","noDeprecation","throwDeprecation","traceDeprecation","trace","debugs","debugEnvRegex","NODE_DEBUG","debugEnv","stylize","stylizeNoColor","colors","isBoolean","_extend","stylizeWithColor","formatValue","styleType","styles","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","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","umask","MAX_LENGTH","parseOptions","compareIdentifiers","SemVer","loose","includePrerelease","LOOSE","FULL","raw","major","minor","patch","prerelease","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","api","newObj","lastIdentifiers","newList","newLastIdentifiers","_index","styleTarget","getTarget","styleElement","nonce","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","noOffsetParent","offsetParent","nextElementSibling","getRoot","findCommonOffsetParent","element1","element2","order","compareDocumentPosition","Node","DOCUMENT_POSITION_FOLLOWING","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","removeAttribute","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","childNodes","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","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","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","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","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","possibleNames","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","loaded","__webpack_modules__","nmd","paths","videoMp4","videoWebm","videoFallbackText","cloudName","theme","withIntro","slides","currentSlide","fadeDirection","slidesLoaded","slideList","isLast","startButtonText","loadStaticSlides","Modal","hasVideo","oc_defaults","slogan","__webpack_public_path__","App","OCA","FirstRunWizard"],"sourceRoot":""} \ No newline at end of file
diff --git a/package-lock.json b/package-lock.json
index a6fb04e7..67a2bc13 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -11,7 +11,7 @@
"dependencies": {
"@nextcloud/axios": "^1.10.0",
"@nextcloud/initial-state": "^1.2.1",
- "@nextcloud/l10n": "^1.4.1",
+ "@nextcloud/l10n": "^1.6.0",
"@nextcloud/router": "^1.2.0",
"@nextcloud/vue": "^5.3.1",
"vue": "^2.6.14"
@@ -2223,9 +2223,9 @@
}
},
"node_modules/@nextcloud/l10n": {
- "version": "1.4.1",
- "resolved": "https://registry.npmjs.org/@nextcloud/l10n/-/l10n-1.4.1.tgz",
- "integrity": "sha512-19LPGmozfuLCeO4xRS9Y1Av6DquqVgBH2kQyWL6dJ49AynMGN9uVOrNv3GYoqULzEcHoetMAt+8PLTdE6zKbvA==",
+ "version": "1.6.0",
+ "resolved": "https://registry.npmjs.org/@nextcloud/l10n/-/l10n-1.6.0.tgz",
+ "integrity": "sha512-aKGlgrwN9OiafN791sYus0shfwNeU3PlrH6Oi9ISma6iJSvN6a8aJM8WGKCJ9pqBaTR5PrDuckuM/WnybBWb6A==",
"dependencies": {
"core-js": "^3.6.4",
"node-gettext": "^3.0.0"
@@ -13777,9 +13777,9 @@
}
},
"@nextcloud/l10n": {
- "version": "1.4.1",
- "resolved": "https://registry.npmjs.org/@nextcloud/l10n/-/l10n-1.4.1.tgz",
- "integrity": "sha512-19LPGmozfuLCeO4xRS9Y1Av6DquqVgBH2kQyWL6dJ49AynMGN9uVOrNv3GYoqULzEcHoetMAt+8PLTdE6zKbvA==",
+ "version": "1.6.0",
+ "resolved": "https://registry.npmjs.org/@nextcloud/l10n/-/l10n-1.6.0.tgz",
+ "integrity": "sha512-aKGlgrwN9OiafN791sYus0shfwNeU3PlrH6Oi9ISma6iJSvN6a8aJM8WGKCJ9pqBaTR5PrDuckuM/WnybBWb6A==",
"requires": {
"core-js": "^3.6.4",
"node-gettext": "^3.0.0"
diff --git a/package.json b/package.json
index aae5d8f2..417b5ac1 100644
--- a/package.json
+++ b/package.json
@@ -17,7 +17,7 @@
"dependencies": {
"@nextcloud/axios": "^1.10.0",
"@nextcloud/initial-state": "^1.2.1",
- "@nextcloud/l10n": "^1.4.1",
+ "@nextcloud/l10n": "^1.6.0",
"@nextcloud/router": "^1.2.0",
"@nextcloud/vue": "^5.3.1",
"vue": "^2.6.14"