diff --git a/docs/css/app.a112045f.css b/docs/css/app.a112045f.css new file mode 100644 index 0000000..45e3d12 --- /dev/null +++ b/docs/css/app.a112045f.css @@ -0,0 +1 @@ +#font-dialog .md-content>div{margin:0 1em}#font-dialog #spinner-box{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}#font-dialog.md-dialog>.md-dialog-container{min-height:15em}#font-dialog .md-progress-spinner{align-content:center}#font-dialog .md-list{max-height:15em}#font-dialog .scroll-area{position:relative}.md-menu-content{z-index:11!important}body,html{font-family:Roboto,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-align:center}#app,.md-app,.md-list,.page-container,body{height:100%}.hljs{background-color:transparent!important}.md-list-item-content>.md-icon:last-child{margin-left:0!important} \ No newline at end of file diff --git a/docs/css/app.de8e4f7c.css b/docs/css/app.de8e4f7c.css deleted file mode 100644 index 515d2c2..0000000 --- a/docs/css/app.de8e4f7c.css +++ /dev/null @@ -1 +0,0 @@ -.md-menu-content{z-index:11!important}body,html{font-family:Roboto,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-align:center}#app,.md-app,.md-list,.page-container,body{height:100%}.hljs{background-color:transparent!important}.md-list-item-content>.md-icon:last-child{margin-left:0!important} \ No newline at end of file diff --git a/docs/index.html b/docs/index.html index 5e87a5d..d954319 100644 --- a/docs/index.html +++ b/docs/index.html @@ -1 +1 @@ -calligraphy
\ No newline at end of file +calligraphy
\ No newline at end of file diff --git a/docs/js/app.18ce6516.js b/docs/js/app.18ce6516.js deleted file mode 100644 index 69e7575..0000000 --- a/docs/js/app.18ce6516.js +++ /dev/null @@ -1,2 +0,0 @@ -(function(t){function e(e){for(var i,s,r=e[0],c=e[1],l=e[2],u=0,m=[];u\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n {{ font.family }}\r\n \r\n \r\n
\r\n \r\n \r\n Close\r\n Save\r\n \r\n
\r\n
\r\n\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FontSelector.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FontSelector.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./FontSelector.vue?vue&type=template&id=03f8d024&\"\nimport script from \"./FontSelector.vue?vue&type=script&lang=js&\"\nexport * from \"./FontSelector.vue?vue&type=script&lang=js&\"\nimport style0 from \"./FontSelector.vue?vue&type=style&index=0&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 null,\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","import mod from \"-!../node_modules/cache-loader/dist/cjs.js??ref--12-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../node_modules/cache-loader/dist/cjs.js??ref--12-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=eb7eaf72&\"\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=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import Vue from 'vue'\nimport App from './App.vue'\nimport axios from 'axios'\nimport VueAxios from 'vue-axios'\nimport VueHighlightJS from 'vue-highlightjs'\nimport VueMaterial from 'vue-material'\nimport json from 'highlight.js/lib/languages/css';\nimport 'vue-material/dist/vue-material.min.css'\nimport 'vue-material/dist/theme/default.css'\nimport 'highlight.js/styles/default.css';\n\nVue.use(VueHighlightJS, {languages: {json}})\nVue.use(VueMaterial)\nVue.use(VueAxios, axios)\n\nVue.config.productionTip = false\n\nnew Vue({\n render: h => h(App),\n}).$mount('#app')\n","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FontSelector.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FontSelector.vue?vue&type=style&index=0&lang=scss&\""],"sourceRoot":""} \ No newline at end of file diff --git a/docs/js/app.8309da9b.js b/docs/js/app.8309da9b.js new file mode 100644 index 0000000..0cef6cf --- /dev/null +++ b/docs/js/app.8309da9b.js @@ -0,0 +1,2 @@ +(function(t){function e(e){for(var i,a,r=e[0],l=e[1],c=e[2],u=0,f=[];u0){var n=this.results.slice(this.shown.length,this.shown.length+Math.min(e,5)+1);this.shown=this.shown.concat(n),e<=5?t.complete():t.loaded()}else t.complete()},getFonts:function(){var t=this;l.a.get("https://www.googleapis.com/webfonts/v1/webfonts?key=".concat("AIzaSyBOYf5oHoeJ88t4teIdvsNFBcN9MiUz1Iw")).then((function(e){t.fonts=e.data,t.fonts.items.forEach((function(t,e){return t.index=e}))}))},selectFont:function(t){this.selectedFont=this.fonts.items[t]}},computed:{results:function(){var t=this;return null!==this.fonts?this.search.length>0?this.fonts.items.filter((function(e){return e.family.includes(t.search)})):this.fonts.items:[]}},watch:{search:function(t,e){var n=this;if(t.length!==e.length)if(t.length>e.length)this.shown=this.shown.filter((function(t){return t.family.includes(n.search)}));else if(t.length\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n {{ results.length }} ({{ shown.length }})\r\n \r\n
\r\n \r\n \r\n \r\n {{ font.family }}\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n Close\r\n Save\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FontSelector.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FontSelector.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./FontSelector.vue?vue&type=template&id=772f0dff&\"\nimport script from \"./FontSelector.vue?vue&type=script&lang=js&\"\nexport * from \"./FontSelector.vue?vue&type=script&lang=js&\"\nimport style0 from \"./FontSelector.vue?vue&type=style&index=0&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 null,\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","import mod from \"-!../node_modules/cache-loader/dist/cjs.js??ref--12-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../node_modules/cache-loader/dist/cjs.js??ref--12-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=eb7eaf72&\"\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=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import Vue from 'vue'\nimport App from './App.vue'\nimport axios from 'axios'\nimport VueAxios from 'vue-axios'\nimport VueHighlightJS from 'vue-highlightjs'\nimport VueMaterial from 'vue-material'\nimport json from 'highlight.js/lib/languages/css';\nimport 'vue-material/dist/vue-material.min.css'\nimport 'vue-material/dist/theme/default.css'\nimport 'highlight.js/styles/default.css';\nimport InfiniteLoading from \"vue-infinite-loading\";\n\nVue.use(VueHighlightJS, {languages: {json}})\nVue.use(VueMaterial)\nVue.use(VueAxios, axios)\nVue.use(InfiniteLoading, {\n system: {\n // throttleLimit: 500,\n /* other settings need to configure */\n },\n});\n\nVue.config.productionTip = false\n\nnew Vue({\n render: h => h(App),\n}).$mount('#app')\n","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FontSelector.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FontSelector.vue?vue&type=style&index=0&lang=scss&\""],"sourceRoot":""} \ No newline at end of file diff --git a/docs/js/chunk-722a0ca4.615e65cc.js b/docs/js/chunk-442e92d4.62be7804.js similarity index 79% rename from docs/js/chunk-722a0ca4.615e65cc.js rename to docs/js/chunk-442e92d4.62be7804.js index 9994a06..6b88d20 100644 --- a/docs/js/chunk-722a0ca4.615e65cc.js +++ b/docs/js/chunk-442e92d4.62be7804.js @@ -1,2 +1,2 @@ -(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-722a0ca4"],{"0538":function(t,e,r){"use strict";var n=r("1c0b"),i=r("861d"),a=[].slice,o={},u=function(t,e,r){if(!(e in o)){for(var n=[],i=0;i~\.\[:]+)/g,_=/(\.[^\s\+>~\.\[:]+)/g,q=/(::[^\s\+>~\.\[:]+|:first-line|:first-letter|:before|:after)/gi,G=/(:[\w-]+\([^\)]*\))/gi,W=/(:[^\s\+>~\.\[:]+)/g,X=/([^\s\+>~\.\[:]+)/g;function U(t,e){var r=t.match(e);return r?[t.replace(e," "),r.length]:[t,0]}function H(t){var e=[0,0,0],r=t.replace(/:not\(([^\)]*)\)/g," $1 ").replace(/{[\s\S]*/gm," "),n=0,a=U(r,F),o=i()(a,2);r=o[0],n=o[1],e[1]+=n;var u=U(r,$),s=i()(u,2);r=s[0],n=s[1],e[0]+=n;var c=U(r,_),f=i()(c,2);r=f[0],n=f[1],e[1]+=n;var l=U(r,q),h=i()(l,2);r=h[0],n=h[1],e[2]+=n;var d=U(r,G),p=i()(d,2);r=p[0],n=p[1],e[1]+=n;var g=U(r,W),y=i()(g,2);r=y[0],n=y[1],e[1]+=n,r=r.replace(/[\*\s\+>~]/g," ").replace(/[#\.]/g," ");var v=U(r,X),m=i()(v,2);return r=m[0],n=m[1],e[2]+=n,e.join("")}var Y=1e-8;function Q(t){return Math.sqrt(Math.pow(t[0],2)+Math.pow(t[1],2))}function Z(t,e){return(t[0]*e[0]+t[1]*e[1])/(Q(t)*Q(e))}function J(t,e){return(t[0]*e[1]=0;--a){var o=this.tryEntries[a],u=o.completion;if("root"===o.tryLoc)return i("end");if(o.tryLoc<=this.prev){var s=n.call(o,"catchLoc"),c=n.call(o,"finallyLoc");if(s&&c){if(this.prev=0;--r){var i=this.tryEntries[r];if(i.tryLoc<=this.prev&&n.call(i,"finallyLoc")&&this.prev=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),C(r),p}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var i=n.arg;C(r)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(t,r,n){return this.delegate={iterator:M(t),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=e),p}},t}(t.exports);try{regeneratorRuntime=e}catch(r){Function("r","regeneratorRuntime = r")(e)}}));var ut=function(){function t(e,r,n){h()(this,t),this.document=e,this.name=r,this.value=n,this.isNormalizedColor=!1}return p()(t,[{key:"hasValue",value:function(){var t=this.value;return null!==t&&""!==t&&0!==t&&"undefined"!==typeof t}},{key:"isString",value:function(t){var e=this.value,r="string"===typeof e;return r&&t?t.test(e):r}},{key:"isUrlDefinition",value:function(){return this.isString(/^url\(/)}},{key:"isPixels",value:function(){if(!this.hasValue())return!1;var t=this.getString();switch(!0){case/px$/.test(t):case/^[0-9]+$/.test(t):return!0;default:return!1}}},{key:"setValue",value:function(t){return this.value=t,this}},{key:"getValue",value:function(t){return"undefined"===typeof t||this.hasValue()?this.value:t}},{key:"getNumber",value:function(t){if(!this.hasValue())return"undefined"===typeof t?0:parseFloat(t);var e=this.value,r=parseFloat(e);return this.isString(/%$/)&&(r/=100),r}},{key:"getString",value:function(t){return"undefined"===typeof t||this.hasValue()?"undefined"===typeof this.value?"":String(this.value):String(t)}},{key:"getColor",value:function(t){var e=this.getString(t);return this.isNormalizedColor||(this.isNormalizedColor=!0,e=j(e),this.value=e),e}},{key:"getDpi",value:function(){return 96}},{key:"getRem",value:function(){return this.document.rootEmSize}},{key:"getEm",value:function(){return this.document.emSize}},{key:"getUnits",value:function(){return this.getString().replace(/[0-9\.\-]/g,"")}},{key:"getPixels",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(!this.hasValue())return 0;var r="boolean"===typeof t?[void 0,t]:[t],n=i()(r,2),a=n[0],o=n[1],u=this.document.screen.viewPort;switch(!0){case this.isString(/vmin$/):return this.getNumber()/100*Math.min(u.computeSize("x"),u.computeSize("y"));case this.isString(/vmax$/):return this.getNumber()/100*Math.max(u.computeSize("x"),u.computeSize("y"));case this.isString(/vw$/):return this.getNumber()/100*u.computeSize("x");case this.isString(/vh$/):return this.getNumber()/100*u.computeSize("y");case this.isString(/rem$/):return this.getNumber()*this.getRem();case this.isString(/em$/):return this.getNumber()*this.getEm();case this.isString(/ex$/):return this.getNumber()*this.getEm()/2;case this.isString(/px$/):return this.getNumber();case this.isString(/pt$/):return this.getNumber()*this.getDpi()*(1/72);case this.isString(/pc$/):return 15*this.getNumber();case this.isString(/cm$/):return this.getNumber()*this.getDpi()/2.54;case this.isString(/mm$/):return this.getNumber()*this.getDpi()/25.4;case this.isString(/in$/):return this.getNumber()*this.getDpi();case this.isString(/%$/)&&o:return this.getNumber()*this.getEm();case this.isString(/%$/):return this.getNumber()*u.computeSize(a);default:var s=this.getNumber();return e&&s<1?s*u.computeSize(a):s}}},{key:"getMilliseconds",value:function(){return this.hasValue()?this.isString(/ms$/)?this.getNumber():1e3*this.getNumber():0}},{key:"getRadians",value:function(){if(!this.hasValue())return 0;switch(!0){case this.isString(/deg$/):return this.getNumber()*(Math.PI/180);case this.isString(/grad$/):return this.getNumber()*(Math.PI/200);case this.isString(/rad$/):return this.getNumber();default:return this.getNumber()*(Math.PI/180)}}},{key:"getDefinition",value:function(){var t=this.getString(),e=t.match(/#([^\)'"]+)/);return e&&(e=e[1]),e||(e=t),this.document.definitions[e]}},{key:"getFillStyleDefinition",value:function(t,e){var r=this.getDefinition();if(!r)return null;if("function"===typeof r.createGradient)return r.createGradient(this.document.ctx,t,e);if("function"===typeof r.createPattern){if(r.getHrefAttribute().hasValue()){var n=r.getAttribute("patternTransform");r=r.getHrefAttribute().getDefinition(),n.hasValue()&&r.getAttribute("patternTransform",!0).setValue(n.value)}return r.createPattern(this.document.ctx,t,e)}return null}},{key:"getTextBaseline",value:function(){return this.hasValue()?t.textBaselineMapping[this.getString()]:null}},{key:"addOpacity",value:function(e){for(var r=this.getColor(),n=r.length,i=0,a=0;a1&&void 0!==arguments[1]?arguments[1]:0,n=L(e),a=i()(n,2),o=a[0],u=void 0===o?r:o,s=a[1],c=void 0===s?r:s;return new t(u,c)}},{key:"parseScale",value:function(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1,n=L(e),a=i()(n,2),o=a[0],u=void 0===o?r:o,s=a[1],c=void 0===s?u:s;return new t(u,c)}},{key:"parsePath",value:function(e){for(var r=L(e),n=r.length,i=[],a=0;a0}},{key:"runEvents",value:function(){if(this.working){var t=this.screen,e=this.events,r=this.eventElements,n=t.ctx.canvas.style;n&&(n.cursor=""),e.forEach((function(t,e){var n=t.run,i=r[e];while(i)n(i),i=i.parent})),this.events=[],this.eventElements=[]}}},{key:"checkPath",value:function(t,e){if(this.working&&e){var r=this.events,n=this.eventElements;r.forEach((function(r,i){var a=r.x,o=r.y;!n[i]&&e.isPointInPath&&e.isPointInPath(a,o)&&(n[i]=t)}))}}},{key:"checkBoundingBox",value:function(t,e){if(this.working&&e){var r=this.events,n=this.eventElements;r.forEach((function(r,i){var a=r.x,o=r.y;!n[i]&&e.isPointInBox(a,o)&&(n[i]=t)}))}}},{key:"mapXY",value:function(t,e){var r=this.screen,n=r.window,i=r.ctx,a=new ct(t,e),o=i.canvas;while(o)a.x-=o.offsetLeft,a.y-=o.offsetTop,o=o.offsetParent;return n.scrollX&&(a.x+=n.scrollX),n.scrollY&&(a.y+=n.scrollY),a}},{key:"onClick",value:function(t){var e=this.mapXY((t||event).clientX,(t||event).clientY),r=e.x,n=e.y;this.events.push({type:"onclick",x:r,y:n,run:function(t){t.onClick&&t.onClick()}})}},{key:"onMouseMove",value:function(t){var e=this.mapXY((t||event).clientX,(t||event).clientY),r=e.x,n=e.y;this.events.push({type:"onmousemove",x:r,y:n,run:function(t){t.onMouseMove&&t.onMouseMove()}})}}]),t}(),lt="undefined"!==typeof window?window:null,ht="undefined"!==typeof fetch?fetch.bind(void 0):null,dt=function(){function t(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=r.fetch,i=void 0===n?ht:n,a=r.window,o=void 0===a?lt:a;h()(this,t),this.ctx=e,this.FRAMERATE=30,this.MAX_VIRTUAL_PIXELS=3e4,this.CLIENT_WIDTH=800,this.CLIENT_HEIGHT=600,this.viewPort=new st,this.mouse=new ft(this),this.animations=[],this.waits=[],this.frameDuration=0,this.isReadyLock=!1,this.isFirstRender=!0,this.intervalId=null,this.window=o,this.fetch=i}return p()(t,[{key:"wait",value:function(t){this.waits.push(t)}},{key:"ready",value:function(){return this.readyPromise?this.readyPromise:Promise.resolve()}},{key:"isReady",value:function(){if(this.isReadyLock)return!0;var t=this.waits.every((function(t){return t()}));return t&&(this.waits=[],this.resolveReady&&this.resolveReady()),this.isReadyLock=t,t}},{key:"setDefaults",value:function(t){t.strokeStyle="rgba(0,0,0,0)",t.lineCap="butt",t.lineJoin="miter",t.miterLimit=4}},{key:"setViewBox",value:function(t){var e=t.document,r=t.ctx,n=t.aspectRatio,a=t.width,o=t.desiredWidth,u=t.height,s=t.desiredHeight,c=t.minX,f=void 0===c?0:c,l=t.minY,h=void 0===l?0:l,d=t.refX,p=t.refY,g=t.clip,y=void 0!==g&&g,v=t.clipX,m=void 0===v?0:v,b=t.clipY,x=void 0===b?0:b,w=V(n).replace(/^defer\s/,""),k=w.split(" "),S=i()(k,2),P=S[0],R=S[1],A=P||"xMidYMid",C=R||"meet",E=a/o,M=u/s,D=Math.min(E,M),T=Math.max(E,M),O=o,N=s;"meet"===C&&(O*=D,N*=D),"slice"===C&&(O*=T,N*=T);var L=new ut(e,"refX",d),I=new ut(e,"refY",p),z=L.hasValue()&&I.hasValue();if(z&&r.translate(-D*L.getPixels("x"),-D*I.getPixels("y")),y){var B=D*m,j=D*x;r.beginPath(),r.moveTo(B,j),r.lineTo(a,j),r.lineTo(a,u),r.lineTo(B,u),r.closePath(),r.clip()}if(!z){var F="meet"===C&&D===M,$="slice"===C&&T===M,_="meet"===C&&D===E,q="slice"===C&&T===E;/^xMid/.test(A)&&(F||$)&&r.translate(a/2-O/2,0),/YMid$/.test(A)&&(_||q)&&r.translate(0,u/2-N/2),/^xMax/.test(A)&&(F||$)&&r.translate(a-O,0),/YMax$/.test(A)&&(_||q)&&r.translate(0,u-N)}switch(!0){case"none"===A:r.scale(E,M);break;case"meet"===C:r.scale(D,D);break;case"slice"===C:r.scale(T,T);break}r.translate(-f,-h)}},{key:"start",value:function(t){var e=this,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=r.enableRedraw,i=void 0!==n&&n,a=r.ignoreMouse,o=void 0!==a&&a,u=r.ignoreAnimation,s=void 0!==u&&u,c=r.ignoreDimensions,f=void 0!==c&&c,l=r.ignoreClear,h=void 0!==l&&l,d=r.forceRedraw,p=r.scaleWidth,g=r.scaleHeight,v=r.offsetX,m=r.offsetY,b=this.FRAMERATE,x=this.mouse,w=1e3/b;if(this.frameDuration=w,this.readyPromise=new Promise((function(t){e.resolveReady=t})),this.isReady()&&this.render(t,f,h,p,g,v,m),i){var k=Date.now(),S=k,P=0,R=function r(){k=Date.now(),P=k-S,P>=w&&(S=k-P%w,e.shouldUpdate(s,d)&&(e.render(t,f,h,p,g,v,m),x.runEvents())),e.intervalId=y()(r)};o||x.start(),this.intervalId=y()(R)}}},{key:"stop",value:function(){this.intervalId&&(y.a.cancel(this.intervalId),this.intervalId=null),this.mouse.stop()}},{key:"shouldUpdate",value:function(t,e){if(!t){var r=this.frameDuration,n=this.animations.reduce((function(t,e){return e.update(r)||t}),!1);if(n)return!0}return!("function"!==typeof e||!e())||(!(this.isReadyLock||!this.isReady())||!!this.mouse.hasEvents())}},{key:"render",value:function(t,e,r,n,i,a,o){var u=this.CLIENT_WIDTH,s=this.CLIENT_HEIGHT,c=this.viewPort,f=this.ctx,l=this.isFirstRender,h=f.canvas;c.clear(),h.width&&h.height?c.setCurrent(h.width,h.height):c.setCurrent(u,s);var d=t.getStyle("width"),p=t.getStyle("height");!e&&(l||"number"!==typeof n&&"number"!==typeof i)&&(d.hasValue()&&(h.width=d.getPixels("x"),h.style&&(h.style.width="".concat(h.width,"px"))),p.hasValue()&&(h.height=p.getPixels("y"),h.style&&(h.style.height="".concat(h.height,"px"))));var g=h.clientWidth||h.width,y=h.clientHeight||h.height;if(e&&d.hasValue()&&p.hasValue()&&(g=d.getPixels("x"),y=p.getPixels("y")),c.setCurrent(g,y),"number"===typeof a&&t.getAttribute("x",!0).setValue(a),"number"===typeof o&&t.getAttribute("y",!0).setValue(o),"number"===typeof n||"number"===typeof i){var v=L(t.getAttribute("viewBox").getString()),m=0,b=0;if("number"===typeof n){var x=t.getStyle("width");x.hasValue()?m=x.getPixels("x")/n:isNaN(v[2])||(m=v[2]/n)}if("number"===typeof i){var w=t.getStyle("height");w.hasValue()?b=w.getPixels("y")/i:isNaN(v[3])||(b=v[3]/i)}m||(m=b),b||(b=m),t.getAttribute("width",!0).setValue(n),t.getAttribute("height",!0).setValue(i);var k=t.getStyle("transform",!0,!0);k.setValue("".concat(k.getString()," scale(").concat(1/m,", ").concat(1/b,")"))}r||f.clearRect(0,0,g,y),t.render(f),l&&(this.isFirstRender=!1)}}]),t}();dt.defaultWindow=lt,dt.defaultFetch=ht;var pt=dt.defaultFetch,gt="undefined"!==typeof DOMParser?DOMParser:null,yt=function(){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=e.fetch,n=void 0===r?pt:r,i=e.DOMParser,a=void 0===i?gt:i;h()(this,t),this.fetch=n,this.DOMParser=a}return p()(t,[{key:"parse",value:function(){var t=s()(o.a.mark((function t(e){return o.a.wrap((function(t){while(1)switch(t.prev=t.next){case 0:if(!/^2&&void 0!==arguments[2]?arguments[2]:[];h()(this,t),this.type="rotate",this.angle=null,this.cx=0,this.cy=0;var i=L(r);this.angle=new ut(e,"angle",i[0]),this.cx=(i[1]||0)+(n[0]||0),this.cy=(i[2]||0)+(n[1]||0)}return p()(t,[{key:"apply",value:function(t){var e=this.cx,r=this.cy,n=this.angle;t.translate(e,r),t.rotate(n.getRadians()),t.translate(-e,-r)}},{key:"unapply",value:function(t){var e=this.cx,r=this.cy,n=this.angle;t.translate(e,r),t.rotate(-1*n.getRadians()),t.translate(-e,-r)}},{key:"applyToPoint",value:function(t){var e=this.cx,r=this.cy,n=this.angle,i=n.getRadians();t.applyTransform([1,0,0,1,e||0,r||0]),t.applyTransform([Math.cos(i),Math.sin(i),-Math.sin(i),Math.cos(i),0,0]),t.applyTransform([1,0,0,1,-e||0,-r||0])}}]),t}(),bt=function(){function t(e,r){h()(this,t),this.type="scale",this.scale=null;var n=ct.parseScale(r);0!==n.x&&0!==n.y||(n.x=Y,n.y=Y),this.scale=n}return p()(t,[{key:"apply",value:function(t){var e=this.scale,r=e.x,n=e.y;t.scale(r,n||r)}},{key:"unapply",value:function(t){var e=this.scale,r=e.x,n=e.y;t.scale(1/r,1/n||r)}},{key:"applyToPoint",value:function(t){var e=this.scale,r=e.x,n=e.y;t.applyTransform([r||0,0,0,n||0,0,0])}}]),t}(),xt=function(){function t(e,r){h()(this,t),this.type="matrix",this.matrix=[],this.matrix=L(r)}return p()(t,[{key:"apply",value:function(t){var e=this.matrix;t.transform(e[0],e[1],e[2],e[3],e[4],e[5])}},{key:"unapply",value:function(t){var e=this.matrix,r=e[0],n=e[2],i=e[4],a=e[1],o=e[3],u=e[5],s=0,c=0,f=1,l=1/(r*(o*f-u*c)-n*(a*f-u*s)+i*(a*c-o*s));t.transform(l*(o*f-u*c),l*(u*s-a*f),l*(i*c-n*f),l*(r*f-i*s),l*(n*u-i*o),l*(i*a-r*u))}},{key:"applyToPoint",value:function(t){t.applyTransform(this.matrix)}}]),t}();function wt(t){return function(){var e,r=k()(t);if(kt()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function kt(){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}}var St=function(t){P()(r,t);var e=wt(r);function r(t,n){var i;return h()(this,r),i=e.call(this,t,n),i.type="skew",i.angle=null,i.angle=new ut(t,"angle",n),i}return r}(xt);function Pt(t){return function(){var e,r=k()(t);if(Rt()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function Rt(){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}}var At=function(t){P()(r,t);var e=Pt(r);function r(t,n){var i;return h()(this,r),i=e.call(this,t,n),i.type="skewX",i.matrix=[1,0,Math.tan(i.angle.getRadians()),1,0,0],i}return r}(St);function Ct(t){return function(){var e,r=k()(t);if(Et()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function Et(){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}}var Mt=function(t){P()(r,t);var e=Ct(r);function r(t,n){var i;return h()(this,r),i=e.call(this,t,n),i.type="skewY",i.matrix=[1,Math.tan(i.angle.getRadians()),0,1,0,0],i}return r}(St);function Dt(t){return V(t).trim().replace(/\)([a-zA-Z])/g,") $1").replace(/\)(\s?,\s?)/g,") ").split(/\s(?=[a-z])/)}function Tt(t){var e=t.split("("),r=i()(e,2),n=r[0],a=r[1];return[n.trim(),a.trim().replace(")","")]}var Vt=function(){function t(e,r,n){var a=this;h()(this,t),this.document=e,this.transforms=[];var o=Dt(r),u=n?L(n):[];o.forEach((function(e){if("none"!==e){var r=Tt(e),n=i()(r,2),o=n[0],s=n[1],c=t.transformTypes[o];"undefined"!==typeof c&&a.transforms.push(new c(a.document,s,u))}}))}return p()(t,[{key:"apply",value:function(t){for(var e=this.transforms,r=e.length,n=0;n=0;n--)e[n].unapply(t)}},{key:"applyToPoint",value:function(t){for(var e=this.transforms,r=e.length,n=0;n2&&void 0!==arguments[2]&&arguments[2];if(h()(this,t),this.document=e,this.node=r,this.captureTextNodes=a,this.attributes={},this.styles={},this.stylesSpecificity={},this.animationFrozen=!1,this.animationFrozenValue="",this.parent=null,this.children=[],r&&1===r.nodeType){if(Array.from(r.attributes).forEach((function(t){var r=z(t.nodeName);n.attributes[r]=new ut(e,r,t.value)})),this.addStylesFromStyleDefinition(),this.getAttribute("style").hasValue()){var o=this.getAttribute("style").getString().split(";").map((function(t){return t.trim()}));o.forEach((function(t){if(t){var r=t.split(":").map((function(t){return t.trim()})),a=i()(r,2),o=a[0],u=a[1];n.styles[o]=new ut(e,o,u)}}))}var u=e.definitions,s=this.getAttribute("id");s.hasValue()&&(u[s.getValue()]||(u[s.getValue()]=this)),Array.from(r.childNodes).forEach((function(t){if(1===t.nodeType)n.addChild(t);else if(a&&(3===t.nodeType||4===t.nodeType)){var r=e.createTextNode(t);r.getText().length>0&&n.addChild(r)}}))}}return p()(t,[{key:"getAttribute",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],r=this.attributes[t];if(!r&&e){var n=new ut(this.document,t,"");return this.attributes[t]=n,n}return r||ut.empty(this.document)}},{key:"getHrefAttribute",value:function(){for(var t in this.attributes)if("href"===t||/:href$/.test(t))return this.attributes[t];return ut.empty(this.document)}},{key:"getStyle",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],r=arguments.length>2&&void 0!==arguments[2]&&arguments[2],n=this.styles[t];if(n)return n;var i=this.getAttribute(t);if(i&&i.hasValue())return this.styles[t]=i,i;if(!r){var a=this.parent;if(a){var o=a.getStyle(t);if(o&&o.hasValue())return o}}if(e){var u=new ut(this.document,t,"");return this.styles[t]=u,u}return n||ut.empty(this.document)}},{key:"render",value:function(t){if("none"!==this.getStyle("display").getString()&&"hidden"!==this.getStyle("visibility").getString()){if(t.save(),this.getStyle("mask").hasValue()){var e=this.getStyle("mask").getDefinition();e&&(this.applyEffects(t),e.apply(t,this))}else if("none"!==this.getStyle("filter").getValue("none")){var r=this.getStyle("filter").getDefinition();r&&(this.applyEffects(t),r.apply(t,this))}else this.setContext(t),this.renderChildren(t),this.clearContext(t);t.restore()}}},{key:"setContext",value:function(t){}},{key:"applyEffects",value:function(t){var e=Vt.fromElement(this.document,this);e&&e.apply(t);var r=this.getStyle("clip-path",!1,!0);if(r.hasValue()){var n=r.getDefinition();n&&n.apply(t)}}},{key:"clearContext",value:function(t){}},{key:"renderChildren",value:function(t){this.children.forEach((function(e){e.render(t)}))}},{key:"addChild",value:function(e){var r=e instanceof t?e:this.document.createElement(e);r.parent=this,t.ignoreChildTypes.includes(r.type)||this.children.push(r)}},{key:"matchesSelector",value:function(t){var e=this.node;if("function"===typeof e.matches)return e.matches(t);var r=e.getAttribute("class");return!(!r||""===r)&&r.split(" ").some((function(e){if(".".concat(e)===t)return!0}))}},{key:"addStylesFromStyleDefinition",value:function(){var t=this.document,e=t.styles,r=t.stylesSpecificity;for(var n in e)if("@"!==n[0]&&this.matchesSelector(n)){var i=e[n],a=r[n];if(i)for(var o in i){var u=this.stylesSpecificity[o];"undefined"===typeof u&&(u="000"),a>=u&&(this.styles[o]=i[o],this.stylesSpecificity[o]=a)}}}},{key:"removeStyles",value:function(t,e){var r=e.reduce((function(e,r){var n=t.getStyle(r);if(!n.hasValue())return e;var i=n.getString();return n.setValue(""),[].concat(A()(e),[[r,i]])}),[]);return r}},{key:"restoreStyles",value:function(t,e){e.forEach((function(e){var r=i()(e,2),n=r[0],a=r[1];t.getStyle(n,!0).setValue(a)}))}}]),t}();function Nt(t){return function(){var e,r=k()(t);if(Lt()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function Lt(){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}}Ot.ignoreChildTypes=["title"];var It=function(t){P()(r,t);var e=Nt(r);function r(t,n,i){var a;return h()(this,r),a=e.call(this,t,n,i),a}return r}(Ot);function zt(t){var e=t.trim();return/^('|")/.test(e)?e:'"'.concat(e,'"')}function Bt(e){return"undefined"===typeof t?e:e.trim().split(",").map(zt).join(",")}function jt(t){if(!t)return"";var e=t.trim().toLowerCase();switch(e){case"normal":case"italic":case"oblique":case"inherit":case"initial":case"unset":return e;default:return/^oblique\s+(-|)\d+deg$/.test(e)?e:""}}function Ft(t){if(!t)return"";var e=t.trim().toLowerCase();switch(e){case"normal":case"bold":case"lighter":case"bolder":case"inherit":case"initial":case"unset":return e;default:return/^[\d.]+$/.test(e)?e:""}}var $t=function(){function t(e,r,n,i,a,o){h()(this,t);var u=o?"string"===typeof o?t.parse(o):o:{};this.fontFamily=a||u.fontFamily,this.fontSize=i||u.fontSize,this.fontStyle=e||u.fontStyle,this.fontWeight=n||u.fontWeight,this.fontVariant=r||u.fontVariant}return p()(t,[{key:"toString",value:function(){return[jt(this.fontStyle),this.fontVariant,Ft(this.fontWeight),this.fontSize,Bt(this.fontFamily)].join(" ").trim()}}],[{key:"parse",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",r=arguments.length>1?arguments[1]:void 0,n="",a="",o="",u="",s="",c=V(e).trim().split(" "),f={fontSize:!1,fontStyle:!1,fontWeight:!1,fontVariant:!1};return c.forEach((function(e){switch(!0){case!f.fontStyle&&t.styles.includes(e):"inherit"!==e&&(n=e),f.fontStyle=!0;break;case!f.fontVariant&&t.variants.includes(e):"inherit"!==e&&(a=e),f.fontStyle=!0,f.fontVariant=!0;break;case!f.fontWeight&&t.weights.includes(e):"inherit"!==e&&(o=e),f.fontStyle=!0,f.fontVariant=!0,f.fontWeight=!0;break;case!f.fontSize:if("inherit"!==e){var r=e.split("/"),c=i()(r,1);u=c[0]}f.fontStyle=!0,f.fontVariant=!0,f.fontWeight=!0,f.fontSize=!0;break;default:"inherit"!==e&&(s+=e)}})),new t(n,a,o,u,s,r)}}]),t}();$t.styles="normal|italic|oblique|inherit",$t.variants="normal|small-caps|inherit",$t.weights="normal|bold|bolder|lighter|100|200|300|400|500|600|700|800|900|inherit";var _t=function(){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Number.NaN,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Number.NaN,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.NaN,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:Number.NaN;h()(this,t),this.x1=e,this.y1=r,this.x2=n,this.y2=i,this.addPoint(e,r),this.addPoint(n,i)}return p()(t,[{key:"addPoint",value:function(t,e){"undefined"!==typeof t&&((isNaN(this.x1)||isNaN(this.x2))&&(this.x1=t,this.x2=t),tthis.x2&&(this.x2=t)),"undefined"!==typeof e&&((isNaN(this.y1)||isNaN(this.y2))&&(this.y1=e,this.y2=e),ethis.y2&&(this.y2=e))}},{key:"addX",value:function(t){this.addPoint(t,null)}},{key:"addY",value:function(t){this.addPoint(null,t)}},{key:"addBoundingBox",value:function(t){if(t){var e=t.x1,r=t.y1,n=t.x2,i=t.y2;this.addPoint(e,r),this.addPoint(n,i)}}},{key:"sumCubic",value:function(t,e,r,n,i){return Math.pow(1-t,3)*e+3*Math.pow(1-t,2)*t*r+3*(1-t)*Math.pow(t,2)*n+Math.pow(t,3)*i}},{key:"bezierCurveAdd",value:function(t,e,r,n,i){var a=6*e-12*r+6*n,o=-3*e+9*r-9*n+3*i,u=3*r-3*e;if(0!==o){var s=Math.pow(a,2)-4*u*o;if(!(s<0)){var c=(-a+Math.sqrt(s))/(2*o);01&&void 0!==arguments[1]&&arguments[1];if(!e){var r=this.getStyle("fill"),n=this.getStyle("fill-opacity"),i=this.getStyle("stroke"),a=this.getStyle("stroke-opacity");if(r.isUrlDefinition()){var o=r.getFillStyleDefinition(this,n);o&&(t.fillStyle=o)}else if(r.hasValue()){"currentColor"===r.getString()&&r.setValue(this.getStyle("color").getColor());var u=r.getColor();"inherit"!==u&&(t.fillStyle="none"===u?"rgba(0,0,0,0)":u)}if(n.hasValue()){var s=new ut(this.document,"fill",t.fillStyle).addOpacity(n).getColor();t.fillStyle=s}if(i.isUrlDefinition()){var c=i.getFillStyleDefinition(this,a);c&&(t.strokeStyle=c)}else if(i.hasValue()){"currentColor"===i.getString()&&i.setValue(this.getStyle("color").getColor());var f=i.getString();"inherit"!==f&&(t.strokeStyle="none"===f?"rgba(0,0,0,0)":f)}if(a.hasValue()){var l=new ut(this.document,"stroke",t.strokeStyle).addOpacity(a).getString();t.strokeStyle=l}var h=this.getStyle("stroke-width");if(h.hasValue()){var d=h.getPixels();t.lineWidth=d||Y}var p=this.getStyle("stroke-linecap"),g=this.getStyle("stroke-linejoin"),y=this.getStyle("stroke-miterlimit"),v=this.getStyle("paint-order"),m=this.getStyle("stroke-dasharray"),b=this.getStyle("stroke-dashoffset");if(p.hasValue()&&(t.lineCap=p.getString()),g.hasValue()&&(t.lineJoin=g.getString()),y.hasValue()&&(t.miterLimit=y.getNumber()),v.hasValue()&&(t.paintOrder=v.getValue()),m.hasValue()&&"none"!==m.getString()){var x=L(m.getString());"undefined"!==typeof t.setLineDash?t.setLineDash(x):"undefined"!==typeof t.webkitLineDash?t.webkitLineDash=x:"undefined"===typeof t.mozDash||1===x.length&&0===x[0]||(t.mozDash=x);var w=b.getPixels();"undefined"!==typeof t.lineDashOffset?t.lineDashOffset=w:"undefined"!==typeof t.webkitLineDashOffset?t.webkitLineDashOffset=w:"undefined"!==typeof t.mozDashOffset&&(t.mozDashOffset=w)}}if(this.modifiedEmSizeStack=!1,"undefined"!==typeof t.font){var k=this.getStyle("font"),S=this.getStyle("font-style"),P=this.getStyle("font-variant"),R=this.getStyle("font-weight"),A=this.getStyle("font-size"),C=this.getStyle("font-family"),E=new $t(S.getString(),P.getString(),R.getString(),A.hasValue()?"".concat(A.getPixels(!0),"px"):"",C.getString(),$t.parse(k.getString(),t.font));S.setValue(E.fontStyle),P.setValue(E.fontVariant),R.setValue(E.fontWeight),A.setValue(E.fontSize),C.setValue(E.fontFamily),t.font=E.toString(),A.isPixels()&&(this.document.emSize=A.getPixels(),this.modifiedEmSizeStack=!0)}e||(this.applyEffects(t),t.globalAlpha=this.calculateOpacity())}},{key:"clearContext",value:function(t){E()(k()(r.prototype),"clearContext",this).call(this,t),this.modifiedEmSizeStack&&this.document.popEmSize()}}]),r}(Ot);function Xt(t){return function(){var e,r=k()(t);if(Ut()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function Ut(){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}}var Ht=function(t){P()(r,t);var e=Xt(r);function r(t,n,i){var a;return h()(this,r),a=e.call(this,t,n,(this instanceof r?this.constructor:void 0)===r||i),a.type="text",a.x=0,a.y=0,a.measureCache=-1,a}return p()(r,[{key:"setContext",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];E()(k()(r.prototype),"setContext",this).call(this,t,e);var n=this.getStyle("dominant-baseline").getTextBaseline()||this.getStyle("alignment-baseline").getTextBaseline();n&&(t.textBaseline=n)}},{key:"initializeCoordinates",value:function(t){this.x=this.getAttribute("x").getPixels("x"),this.y=this.getAttribute("y").getPixels("y");var e=this.getAttribute("dx"),r=this.getAttribute("dy");e.hasValue()&&(this.x+=e.getPixels("x")),r.hasValue()&&(this.y+=r.getPixels("y")),this.x+=this.getAnchorDelta(t,this,0)}},{key:"getBoundingBox",value:function(t){var e=this;if("text"!==this.type)return this.getTElementBoundingBox(t);this.initializeCoordinates(t);var r=null;return this.children.forEach((function(n,i){var a=e.getChildBoundingBox(t,e,e,i);r?r.addBoundingBox(a):r=a})),r}},{key:"getFontSize",value:function(){var t=this.document,e=this.parent,r=$t.parse(t.ctx.font).fontSize,n=e.getStyle("font-size").getNumber(r);return n}},{key:"getTElementBoundingBox",value:function(t){var e=this.getFontSize();return new _t(this.x,this.y-e,this.x+this.measureText(t),this.y)}},{key:"getGlyph",value:function(t,e,r){var n=e[r],i=null;if(t.isArabic){var a=e.length,o=e[r-1],u=e[r+1],s="isolated";(0===r||" "===o)&&r0&&" "!==o&&r0&&" "!==o&&(r===a-1||" "===u)&&(s="initial"),"undefined"!==typeof t.glyphs[n]&&(i=t.glyphs[n][s],i||"glyph"!==t.glyphs[n].type||(i=t.glyphs[n]))}else i=t.glyphs[n];return i||(i=t.missingGlyph),i}},{key:"getText",value:function(){return""}},{key:"getTextFromNode",value:function(t){var e=t||this.node,r=Array.from(e.parentNode.childNodes),n=r.indexOf(e),i=r.length-1,a=V(e.value||e.text||e.textContent||"");return 0===n&&(a=O(a)),n===i&&(a=N(a)),a}},{key:"renderChildren",value:function(t){var e=this;if("text"===this.type){this.initializeCoordinates(t),this.children.forEach((function(r,n){e.renderChild(t,e,e,n)}));var r=this.document.screen.mouse;r.isWorking()&&r.checkBoundingBox(this,this.getBoundingBox(t))}else this.renderTElementChildren(t)}},{key:"renderTElementChildren",value:function(t){var e=this.document,r=this.parent,n=this.getText(),i=r.getStyle("font-family").getDefinition();if(i)for(var a=i.fontFace.unitsPerEm,o=$t.parse(e.ctx.font),u=r.getStyle("font-size").getNumber(o.fontSize),s=r.getStyle("font-style").getString(o.fontStyle),c=u/a,f=i.isRTL?n.split("").reverse().join(""):n,l=L(r.getAttribute("dx").getString()),h=f.length,d=0;dr&&o.getAttribute("x").hasValue()||o.getAttribute("text-anchor").hasValue())break;u+=o.measureTextRecursive(t)}return-1*("end"===n?u:u/2)}return 0}},{key:"adjustChildCoordinates",value:function(t,e,r,n){var i=r.children[n];if("function"!==typeof i.measureText)return i;t.save(),i.setContext(t,!0);var a=i.getAttribute("x"),o=i.getAttribute("y"),u=i.getAttribute("dx"),s=i.getAttribute("dy"),c=i.getAttribute("text-anchor").getString("start");if(0===n&&"textNode"!==i.type&&(a.hasValue()||a.setValue(e.getAttribute("x").getValue("0")),o.hasValue()||o.setValue(e.getAttribute("y").getValue("0")),u.hasValue()||u.setValue(e.getAttribute("dx").getValue("0")),s.hasValue()||s.setValue(e.getAttribute("dy").getValue("0"))),a.hasValue()){if(i.x=a.getPixels("x")+e.getAnchorDelta(t,r,n),"start"!==c){var f=i.measureTextRecursive(t);i.x+=-1*("end"===c?f:f/2)}u.hasValue()&&(i.x+=u.getPixels("x"))}else{if("start"!==c){var l=i.measureTextRecursive(t);e.x+=-1*("end"===c?l:l/2)}u.hasValue()&&(e.x+=u.getPixels("x")),i.x=e.x}return e.x=i.x+i.measureText(t),o.hasValue()?(i.y=o.getPixels("y"),s.hasValue()&&(i.y+=s.getPixels("y"))):(s.hasValue()&&(e.y+=s.getPixels("y")),i.y=e.y),e.y=i.y,i.clearContext(t),t.restore(),i}},{key:"getChildBoundingBox",value:function(t,e,r,n){var i=this.adjustChildCoordinates(t,e,r,n),a=i.getBoundingBox(t);return a?(i.children.forEach((function(r,n){var o=e.getChildBoundingBox(t,e,i,n);a.addBoundingBox(o)})),a):null}},{key:"renderChild",value:function(t,e,r,n){var i=this.adjustChildCoordinates(t,e,r,n);i.render(t),i.children.forEach((function(r,n){e.renderChild(t,e,i,n)}))}},{key:"measureTextRecursive",value:function(t){var e=this.children.reduce((function(e,r){return e+r.measureTextRecursive(t)}),this.measureText(t));return e}},{key:"measureText",value:function(t){var e=this.measureCache;if(~e)return e;var r=this.getText(),n=this.measureTargetText(t,r);return this.measureCache=n,n}},{key:"measureTargetText",value:function(t,e){if(!e.length)return 0;var r=this.parent,n=r.getStyle("font-family").getDefinition();if(n){for(var i=this.getFontSize(),a=n.isRTL?e.split("").reverse().join(""):e,o=L(r.getAttribute("dx").getString()),u=a.length,s=0,c=0;c0?"":a.getTextFromNode(),a}return p()(r,[{key:"getText",value:function(){return this.text}}]),r}(Ht);function Jt(t){return function(){var e,r=k()(t);if(Kt()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function Kt(){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}}var te=function(t){P()(r,t);var e=Jt(r);function r(){var t;return h()(this,r),t=e.apply(this,arguments),t.type="textNode",t}return r}(Zt);function ee(t){var e=t.replace(/,/gm," ").replace(/([MmZzLlHhVvCcSsQqTtAa])([^\s])/gm,"$1 $2").replace(/([MmZzLlHhVvCcSsQqTtAa])([^\s])/gm,"$1 $2").replace(/([^\s])([MmZzLlHhVvCcSsQqTtAa])/gm,"$1 $2").replace(/([0-9])([+\-])/gm,"$1 $2").replace(/(\.[0-9]*)(\.)/gm,"$1 $2").replace(/(\.[0-9]*)(\.)/gm,"$1 $2").replace(/([Aa](?:\s+(?:[0-9]*\.)?[0-9]+){3})\s+([01])\s*([01])/gm,"$1 $2 $3 ");return V(e).trim()}var re=function(){function t(e){h()(this,t),this.control=null,this.start=null,this.current=null,this.command="",this.tokens=[],this.i=-1,this.previousCommand="",this.points=[],this.angles=[],this.tokens=ee(e).split(" ")}return p()(t,[{key:"reset",value:function(){this.i=-1,this.command="",this.previousCommand="",this.start=new ct(0,0),this.control=new ct(0,0),this.current=new ct(0,0),this.points=[],this.angles=[]}},{key:"isEnd",value:function(){var t=this.i,e=this.tokens;return t>=e.length-1}},{key:"isCommandOrEnd",value:function(){if(this.isEnd())return!0;var t=this.i,e=this.tokens;return/^[A-Za-z]$/.test(e[t+1])}},{key:"isRelativeCommand",value:function(){switch(this.command){case"m":case"l":case"h":case"v":case"c":case"s":case"q":case"t":case"a":case"z":return!0;default:return!1}}},{key:"getToken",value:function(){return this.i++,this.tokens[this.i]}},{key:"getScalar",value:function(){return parseFloat(this.getToken())}},{key:"nextCommand",value:function(){this.previousCommand=this.command,this.command=this.getToken()}},{key:"getPoint",value:function(){var t=new ct(this.getScalar(),this.getScalar());return this.makeAbsolute(t)}},{key:"getAsControlPoint",value:function(){var t=this.getPoint();return this.control=t,t}},{key:"getAsCurrentPoint",value:function(){var t=this.getPoint();return this.current=t,t}},{key:"getReflectedControlPoint",value:function(){var t=this.previousCommand.toLowerCase();if("c"!==t&&"s"!==t&&"q"!==t&&"t"!==t)return this.current;var e=this.current,r=e.x,n=e.y,i=this.control,a=i.x,o=i.y,u=new ct(2*r-a,2*n-o);return u}},{key:"makeAbsolute",value:function(t){if(this.isRelativeCommand()){var e=this.current,r=e.x,n=e.y;t.x+=r,t.y+=n}return t}},{key:"addMarker",value:function(t,e,r){var n=this.points,i=this.angles;r&&i.length>0&&!i[i.length-1]&&(i[i.length-1]=n[n.length-1].angleTo(r)),this.addMarkerAngle(t,e?e.angleTo(t):null)}},{key:"addMarkerAngle",value:function(t,e){this.points.push(t),this.angles.push(e)}},{key:"getMarkerPoints",value:function(){return this.points}},{key:"getMarkerAngles",value:function(){for(var t=this.angles,e=t.length,r=0;r1&&(i*=Math.sqrt(l),a*=Math.sqrt(l));var h=(u===s?-1:1)*Math.sqrt((Math.pow(i,2)*Math.pow(a,2)-Math.pow(i,2)*Math.pow(f.y,2)-Math.pow(a,2)*Math.pow(f.x,2))/(Math.pow(i,2)*Math.pow(f.y,2)+Math.pow(a,2)*Math.pow(f.x,2)));isNaN(h)&&(h=0);var d=new ct(h*i*f.y/a,h*-a*f.x/i),p=new ct((n.x+c.x)/2+Math.cos(o)*d.x-Math.sin(o)*d.y,(n.y+c.y)/2+Math.sin(o)*d.x+Math.cos(o)*d.y),g=J([1,0],[(f.x-d.x)/i,(f.y-d.y)/a]),y=[(f.x-d.x)/i,(f.y-d.y)/a],v=[(-f.x-d.x)/i,(-f.y-d.y)/a],m=J(y,v);Z(y,v)<=-1&&(m=Math.PI),Z(y,v)>=1&&(m=0);var b=1-s?1:-1,x=g+b*(m/2),w=new ct(p.x+i*Math.cos(x),p.y+a*Math.sin(x));if(r.addMarkerAngle(w,x-b*Math.PI/2),r.addMarkerAngle(c,x-b*Math.PI),e.addPoint(c.x,c.y),t&&!isNaN(g)&&!isNaN(m)){var k=i>a?i:a,S=i>a?1:i/a,P=i>a?a/i:1;t.translate(p.x,p.y),t.rotate(o),t.scale(S,P),t.arc(0,0,k,g,g+m,Boolean(1-s)),t.scale(1/S,1/P),t.rotate(-o),t.translate(-p.x,-p.y)}}}},{key:"pathZ",value:function(t,e){var r=this.pathParser;t&&e.x1!==e.x2&&e.y1!==e.y2&&t.closePath(),r.current=r.start}}]),r}(Wt);function oe(t){return function(){var e,r=k()(t);if(ue()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function ue(){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}}var se=function(t){P()(r,t);var e=oe(r);function r(){var t;return h()(this,r),t=e.apply(this,arguments),t.type="svg",t.root=!1,t}return p()(r,[{key:"clearContext",value:function(t){E()(k()(r.prototype),"clearContext",this).call(this,t),this.document.screen.viewPort.removeCurrent()}},{key:"setContext",value:function(t){var e=this.document,n=e.screen,i=e.window,a=t.canvas;if(n.setDefaults(t),a.style&&"undefined"!==typeof t.font&&i&&"undefined"!==typeof i.getComputedStyle){t.font=i.getComputedStyle(a).getPropertyValue("font");var o=new ut(e,"fontSize",$t.parse(t.font).fontSize);o.hasValue()&&(e.rootEmSize=o.getPixels("y"),e.emSize=e.rootEmSize)}E()(k()(r.prototype),"setContext",this).call(this,t),this.getAttribute("x").hasValue()||this.getAttribute("x",!0).setValue(0),this.getAttribute("y").hasValue()||this.getAttribute("y",!0).setValue(0),t.translate(this.getAttribute("x").getPixels("x"),this.getAttribute("y").getPixels("y"));var u=n.viewPort,s=u.width,c=u.height;this.getStyle("width").hasValue()||this.getStyle("width",!0).setValue("100%"),this.getStyle("height").hasValue()||this.getStyle("height",!0).setValue("100%"),this.getStyle("color").hasValue()||this.getStyle("color",!0).setValue("black");var f=this.getAttribute("refX"),l=this.getAttribute("refY"),h=this.getAttribute("viewBox"),d=h.hasValue()?L(h.getString()):null,p=!this.root&&"visible"!==this.getAttribute("overflow").getValue("hidden"),g=0,y=0,v=0,m=0;d&&(g=d[0],y=d[1]),this.root||(s=this.getStyle("width").getPixels("x"),c=this.getStyle("height").getPixels("y"),"marker"===this.type&&(v=g,m=y,g=0,y=0)),n.viewPort.setCurrent(s,c),d&&(s=d[2],c=d[3]),e.setViewBox({ctx:t,aspectRatio:this.getAttribute("preserveAspectRatio").getString(),width:n.viewPort.width,desiredWidth:s,height:n.viewPort.height,desiredHeight:c,minX:g,minY:y,refX:f.getValue(),refY:l.getValue(),clip:p,clipX:v,clipY:m}),d&&(n.viewPort.removeCurrent(),n.viewPort.setCurrent(s,c))}},{key:"resize",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:t,r=arguments.length>2&&void 0!==arguments[2]&&arguments[2],n=this.getAttribute("width",!0),i=this.getAttribute("height",!0),a=this.getAttribute("viewBox"),o=this.getAttribute("style"),u=n.getNumber(0),s=i.getNumber(0);if(r)if("string"===typeof r)this.getAttribute("preserveAspectRatio",!0).setValue(r);else{var c=this.getAttribute("preserveAspectRatio");c.hasValue()&&c.setValue(c.getString().replace(/^\s*(\S.*\S)\s*$/,"$1"))}if(n.setValue(t),i.setValue(e),a.hasValue()||a.setValue("0 0 ".concat(u||t," ").concat(s||e)),o.hasValue()){var f=this.getStyle("width"),l=this.getStyle("height");f.hasValue()&&f.setValue("".concat(t,"px")),l.hasValue()&&l.setValue("".concat(e,"px"))}}}]),r}(Wt);function ce(t){return function(){var e,r=k()(t);if(fe()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function fe(){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}}var le=function(t){P()(r,t);var e=ce(r);function r(){var t;return h()(this,r),t=e.apply(this,arguments),t.type="rect",t}return p()(r,[{key:"path",value:function(t){var e=this.getAttribute("x").getPixels("x"),r=this.getAttribute("y").getPixels("y"),n=this.getStyle("width").getPixels("x"),i=this.getStyle("height").getPixels("y"),a=this.getAttribute("rx"),o=this.getAttribute("ry"),u=a.getPixels("x"),s=o.getPixels("y");if(a.hasValue()&&!o.hasValue()&&(s=u),o.hasValue()&&!a.hasValue()&&(u=s),u=Math.min(u,n/2),s=Math.min(s,i/2),t){var c=(Math.sqrt(2)-1)/3*4;t.beginPath(),i>0&&n>0&&(t.moveTo(e+u,r),t.lineTo(e+n-u,r),t.bezierCurveTo(e+n-u+c*u,r,e+n,r+s-c*s,e+n,r+s),t.lineTo(e+n,r+i-s),t.bezierCurveTo(e+n,r+i-s+c*s,e+n-u+c*u,r+i,e+n-u,r+i),t.lineTo(e+u,r+i),t.bezierCurveTo(e+u-c*u,r+i,e,r+i-s+c*s,e,r+i-s),t.lineTo(e,r+s),t.bezierCurveTo(e,r+s-c*s,e+u-c*u,r,e+u,r),t.closePath())}return new _t(e,r,e+n,r+i)}},{key:"getMarkers",value:function(){return null}}]),r}(ae);function he(t){return function(){var e,r=k()(t);if(de()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function de(){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}}var pe=function(t){P()(r,t);var e=he(r);function r(){var t;return h()(this,r),t=e.apply(this,arguments),t.type="circle",t}return p()(r,[{key:"path",value:function(t){var e=this.getAttribute("cx").getPixels("x"),r=this.getAttribute("cy").getPixels("y"),n=this.getAttribute("r").getPixels();return t&&n>0&&(t.beginPath(),t.arc(e,r,n,0,2*Math.PI,!1),t.closePath()),new _t(e-n,r-n,e+n,r+n)}},{key:"getMarkers",value:function(){return null}}]),r}(ae);function ge(t){return function(){var e,r=k()(t);if(ye()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function ye(){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}}var ve=function(t){P()(r,t);var e=ge(r);function r(){var t;return h()(this,r),t=e.apply(this,arguments),t.type="ellipse",t}return p()(r,[{key:"path",value:function(t){var e=(Math.sqrt(2)-1)/3*4,r=this.getAttribute("rx").getPixels("x"),n=this.getAttribute("ry").getPixels("y"),i=this.getAttribute("cx").getPixels("x"),a=this.getAttribute("cy").getPixels("y");return t&&r>0&&n>0&&(t.beginPath(),t.moveTo(i+r,a),t.bezierCurveTo(i+r,a+e*n,i+e*r,a+n,i,a+n),t.bezierCurveTo(i-e*r,a+n,i-r,a+e*n,i-r,a),t.bezierCurveTo(i-r,a-e*n,i-e*r,a-n,i,a-n),t.bezierCurveTo(i+e*r,a-n,i+r,a-e*n,i+r,a),t.closePath()),new _t(i-r,a-n,i+r,a+n)}},{key:"getMarkers",value:function(){return null}}]),r}(ae);function me(t){return function(){var e,r=k()(t);if(be()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function be(){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}}var xe=function(t){P()(r,t);var e=me(r);function r(){var t;return h()(this,r),t=e.apply(this,arguments),t.type="line",t}return p()(r,[{key:"getPoints",value:function(){return[new ct(this.getAttribute("x1").getPixels("x"),this.getAttribute("y1").getPixels("y")),new ct(this.getAttribute("x2").getPixels("x"),this.getAttribute("y2").getPixels("y"))]}},{key:"path",value:function(t){var e=this.getPoints(),r=i()(e,2),n=r[0],a=n.x,o=n.y,u=r[1],s=u.x,c=u.y;return t&&(t.beginPath(),t.moveTo(a,o),t.lineTo(s,c)),new _t(a,o,s,c)}},{key:"getMarkers",value:function(){var t=this.getPoints(),e=i()(t,2),r=e[0],n=e[1],a=r.angleTo(n);return[[r,a],[n,a]]}}]),r}(ae);function we(t){return function(){var e,r=k()(t);if(ke()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function ke(){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}}var Se=function(t){P()(r,t);var e=we(r);function r(t,n,i){var a;return h()(this,r),a=e.call(this,t,n,i),a.type="polyline",a.points=[],a.points=ct.parsePath(a.getAttribute("points").getString()),a}return p()(r,[{key:"path",value:function(t){var e=this.points,r=i()(e,1),n=r[0],a=n.x,o=n.y,u=new _t(a,o);return t&&(t.beginPath(),t.moveTo(a,o)),e.forEach((function(e){var r=e.x,n=e.y;u.addPoint(r,n),t&&t.lineTo(r,n)})),u}},{key:"getMarkers",value:function(){var t=this.points,e=t.length-1,r=[];return t.forEach((function(n,i){i!==e&&r.push([n,n.angleTo(t[i+1])])})),r.length>0&&r.push([t[t.length-1],r[r.length-1][1]]),r}}]),r}(ae);function Pe(t){return function(){var e,r=k()(t);if(Re()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function Re(){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}}var Ae=function(t){P()(r,t);var e=Pe(r);function r(){var t;return h()(this,r),t=e.apply(this,arguments),t.type="polygon",t}return p()(r,[{key:"path",value:function(t){var e=E()(k()(r.prototype),"path",this).call(this,t),n=i()(this.points,1),a=n[0],o=a.x,u=a.y;return t&&(t.lineTo(o,u),t.closePath()),e}}]),r}(Se);function Ce(t){return function(){var e,r=k()(t);if(Ee()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function Ee(){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}}var Me=function(t){P()(r,t);var e=Ce(r);function r(){var t;return h()(this,r),t=e.apply(this,arguments),t.type="pattern",t}return p()(r,[{key:"createPattern",value:function(t,e,r){var n=this.getStyle("width").getPixels("x",!0),i=this.getStyle("height").getPixels("y",!0),a=new se(this.document,null);a.attributes.viewBox=new ut(this.document,"viewBox",this.getAttribute("viewBox").getValue()),a.attributes.width=new ut(this.document,"width","".concat(n,"px")),a.attributes.height=new ut(this.document,"height","".concat(i,"px")),a.attributes.transform=new ut(this.document,"transform",this.getAttribute("patternTransform").getValue()),a.children=this.children;var o=this.document.createCanvas(n,i),u=o.getContext("2d"),s=this.getAttribute("x"),c=this.getAttribute("y");s.hasValue()&&c.hasValue()&&u.translate(s.getPixels("x",!0),c.getPixels("y",!0)),r.hasValue()?this.styles["fill-opacity"]=r:Reflect.deleteProperty(this.styles,"fill-opacity");for(var f=-1;f<=1;f++)for(var l=-1;l<=1;l++)u.save(),a.attributes.x=new ut(this.document,"x",f*o.width),a.attributes.y=new ut(this.document,"y",l*o.height),a.render(u),u.restore();var h=t.createPattern(o,"repeat");return h}}]),r}(Ot);function De(t){return function(){var e,r=k()(t);if(Te()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function Te(){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}}var Ve=function(t){P()(r,t);var e=De(r);function r(){var t;return h()(this,r),t=e.apply(this,arguments),t.type="marker",t}return p()(r,[{key:"render",value:function(t,e,r){if(e){var n=e.x,i=e.y,a=this.getAttribute("orient").getValue("auto"),o=this.getAttribute("markerUnits").getValue("strokeWidth");t.translate(n,i),"auto"===a&&t.rotate(r),"strokeWidth"===o&&t.scale(t.lineWidth,t.lineWidth),t.save();var u=new se(this.document,null);u.type=this.type,u.attributes.viewBox=new ut(this.document,"viewBox",this.getAttribute("viewBox").getValue()),u.attributes.refX=new ut(this.document,"refX",this.getAttribute("refX").getValue()),u.attributes.refY=new ut(this.document,"refY",this.getAttribute("refY").getValue()),u.attributes.width=new ut(this.document,"width",this.getAttribute("markerWidth").getValue()),u.attributes.height=new ut(this.document,"height",this.getAttribute("markerHeight").getValue()),u.attributes.overflow=new ut(this.document,"overflow",this.getAttribute("overflow").getValue()),u.attributes.fill=new ut(this.document,"fill",this.getAttribute("fill").getColor("black")),u.attributes.stroke=new ut(this.document,"stroke",this.getAttribute("stroke").getValue("none")),u.children=this.children,u.render(t),t.restore(),"strokeWidth"===o&&t.scale(1/t.lineWidth,1/t.lineWidth),"auto"===a&&t.rotate(-r),t.translate(-n,-i)}}}]),r}(Ot);function Oe(t){return function(){var e,r=k()(t);if(Ne()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function Ne(){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}}var Le=function(t){P()(r,t);var e=Oe(r);function r(){var t;return h()(this,r),t=e.apply(this,arguments),t.type="defs",t}return p()(r,[{key:"render",value:function(){}}]),r}(Ot);function Ie(t){return function(){var e,r=k()(t);if(ze()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function ze(){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}}var Be=function(t){P()(r,t);var e=Ie(r);function r(){var t;return h()(this,r),t=e.apply(this,arguments),t.type="g",t}return p()(r,[{key:"getBoundingBox",value:function(t){var e=new _t;return this.children.forEach((function(r){e.addBoundingBox(r.getBoundingBox(t))})),e}}]),r}(Wt);function je(t){return function(){var e,r=k()(t);if(Fe()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function Fe(){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}}var $e=function(t){P()(r,t);var e=je(r);function r(t,n,i){var a;h()(this,r),a=e.call(this,t,n,i),a.attributesToInherit=["gradientUnits"],a.stops=[];var o=D()(a),u=o.stops,s=o.children;return s.forEach((function(t){"stop"===t.type&&u.push(t)})),a}return p()(r,[{key:"getGradientUnits",value:function(){return this.getAttribute("gradientUnits").getString("objectBoundingBox")}},{key:"createGradient",value:function(t,e,r){var n=this,a=this;this.getHrefAttribute().hasValue()&&(a=this.getHrefAttribute().getDefinition(),this.inheritStopContainer(a));var o=a,u=o.stops,s=this.getGradient(t,e);if(!s)return this.addParentOpacity(r,u[u.length-1].color);if(u.forEach((function(t){s.addColorStop(t.offset,n.addParentOpacity(r,t.color))})),this.getAttribute("gradientTransform").hasValue()){var c=this.document,f=c.screen,l=f.MAX_VIRTUAL_PIXELS,h=f.viewPort,d=i()(h.viewPorts,1),p=d[0],g=new le(c,null);g.attributes.x=new ut(c,"x",-l/3),g.attributes.y=new ut(c,"y",-l/3),g.attributes.width=new ut(c,"width",l),g.attributes.height=new ut(c,"height",l);var y=new Be(c,null);y.attributes.transform=new ut(c,"transform",this.getAttribute("gradientTransform").getValue()),y.children=[g];var v=new se(c,null);v.attributes.x=new ut(c,"x",0),v.attributes.y=new ut(c,"y",0),v.attributes.width=new ut(c,"width",p.width),v.attributes.height=new ut(c,"height",p.height),v.children=[y];var m=c.createCanvas(p.width,p.height),b=m.getContext("2d");return b.fillStyle=s,v.render(b),b.createPattern(m,"no-repeat")}return s}},{key:"inheritStopContainer",value:function(t){var e=this;this.attributesToInherit.forEach((function(r){!e.getAttribute(r).hasValue()&&t.getAttribute(r).hasValue()&&e.getAttribute(r,!0).setValue(t.getAttribute(r).getValue())}))}},{key:"addParentOpacity",value:function(t,e){if(t.hasValue()){var r=new ut(this.document,"color",e);return r.addOpacity(t).getColor()}return e}}]),r}(Ot);function _e(t){return function(){var e,r=k()(t);if(qe()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function qe(){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}}var Ge=function(t){P()(r,t);var e=_e(r);function r(t,n,i){var a;return h()(this,r),a=e.call(this,t,n,i),a.type="linearGradient",a.attributesToInherit.push("x1","y1","x2","y2"),a}return p()(r,[{key:"getGradient",value:function(t,e){var r="objectBoundingBox"===this.getGradientUnits(),n=r?e.getBoundingBox(t):null;if(r&&!n)return null;this.getAttribute("x1").hasValue()||this.getAttribute("y1").hasValue()||this.getAttribute("x2").hasValue()||this.getAttribute("y2").hasValue()||(this.getAttribute("x1",!0).setValue(0),this.getAttribute("y1",!0).setValue(0),this.getAttribute("x2",!0).setValue(1),this.getAttribute("y2",!0).setValue(0));var i=r?n.x+n.width*this.getAttribute("x1").getNumber():this.getAttribute("x1").getPixels("x"),a=r?n.y+n.height*this.getAttribute("y1").getNumber():this.getAttribute("y1").getPixels("y"),o=r?n.x+n.width*this.getAttribute("x2").getNumber():this.getAttribute("x2").getPixels("x"),u=r?n.y+n.height*this.getAttribute("y2").getNumber():this.getAttribute("y2").getPixels("y");return i===o&&a===u?null:t.createLinearGradient(i,a,o,u)}}]),r}($e);function We(t){return function(){var e,r=k()(t);if(Xe()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function Xe(){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}}var Ue=function(t){P()(r,t);var e=We(r);function r(t,n,i){var a;return h()(this,r),a=e.call(this,t,n,i),a.type="radialGradient",a.attributesToInherit.push("cx","cy","r","fx","fy","fr"),a}return p()(r,[{key:"getGradient",value:function(t,e){var r="objectBoundingBox"===this.getGradientUnits(),n=e.getBoundingBox(t);if(r&&!n)return null;this.getAttribute("cx").hasValue()||this.getAttribute("cx",!0).setValue("50%"),this.getAttribute("cy").hasValue()||this.getAttribute("cy",!0).setValue("50%"),this.getAttribute("r").hasValue()||this.getAttribute("r",!0).setValue("50%");var i=r?n.x+n.width*this.getAttribute("cx").getNumber():this.getAttribute("cx").getPixels("x"),a=r?n.y+n.height*this.getAttribute("cy").getNumber():this.getAttribute("cy").getPixels("y"),o=i,u=a;this.getAttribute("fx").hasValue()&&(o=r?n.x+n.width*this.getAttribute("fx").getNumber():this.getAttribute("fx").getPixels("x")),this.getAttribute("fy").hasValue()&&(u=r?n.y+n.height*this.getAttribute("fy").getNumber():this.getAttribute("fy").getPixels("y"));var s=r?(n.width+n.height)/2*this.getAttribute("r").getNumber():this.getAttribute("r").getPixels(),c=this.getAttribute("fr").getPixels();return t.createRadialGradient(o,u,c,i,a,s)}}]),r}($e);function He(t){return function(){var e,r=k()(t);if(Ye()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function Ye(){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}}var Qe=function(t){P()(r,t);var e=He(r);function r(t,n,i){var a;h()(this,r),a=e.call(this,t,n,i),a.type="stop";var o=Math.max(0,Math.min(1,a.getAttribute("offset").getNumber())),u=a.getStyle("stop-opacity"),s=a.getStyle("stop-color",!0);return""===s.getString()&&s.setValue("#000"),u.hasValue()&&(s=s.addOpacity(u)),a.offset=o,a.color=s.getColor(),a}return r}(Ot);function Ze(t){return function(){var e,r=k()(t);if(Je()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function Je(){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}}var Ke=function(t){P()(r,t);var e=Ze(r);function r(t,n,i){var a;return h()(this,r),a=e.call(this,t,n,i),a.type="animate",a.duration=0,a.initialValue=null,a.initialUnits="",a.removed=!1,a.frozen=!1,t.screen.animations.push(D()(a)),a.begin=a.getAttribute("begin").getMilliseconds(),a.maxDuration=a.begin+a.getAttribute("dur").getMilliseconds(),a.from=a.getAttribute("from"),a.to=a.getAttribute("to"),a.values=a.getAttribute("values"),a.values.hasValue()&&a.values.setValue(a.values.getString().split(";")),a}return p()(r,[{key:"getProperty",value:function(){var t=this.getAttribute("attributeType").getString(),e=this.getAttribute("attributeName").getString();return"CSS"===t?this.parent.getStyle(e,!0):this.parent.getAttribute(e,!0)}},{key:"calcValue",value:function(){var t=this.initialUnits,e=this.getProgress(),r=e.progress,n=e.from,i=e.to,a=n.getNumber()+(i.getNumber()-n.getNumber())*r;return"%"===t&&(a*=100),"".concat(a).concat(t)}},{key:"update",value:function(t){var e=this.parent,r=this.getProperty();if(this.initialValue||(this.initialValue=r.getString(),this.initialUnits=r.getUnits()),this.duration>this.maxDuration){var n=this.getAttribute("fill").getString("remove");if("indefinite"===this.getAttribute("repeatCount").getString()||"indefinite"===this.getAttribute("repeatDur").getString())this.duration=0;else if("freeze"!==n||this.frozen){if("remove"===n&&!this.removed)return this.removed=!0,r.setValue(e.animationFrozen?e.animationFrozenValue:this.initialValue),!0}else this.frozen=!0,e.animationFrozen=!0,e.animationFrozenValue=r.getString();return!1}this.duration+=t;var i=!1;if(this.begin=t.length?{done:!0}:{done:!1,value:t[e++]}},e:function(t){throw t},f:r}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var n,i,a=!0,o=!1;return{s:function(){n=t[Symbol.iterator]()},n:function(){var t=n.next();return a=t.done,t},e:function(t){o=!0,i=t},f:function(){try{a||null==n.return||n.return()}finally{if(o)throw i}}}}function ur(t,e){if(t){if("string"===typeof t)return sr(t,e);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(r):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?sr(t,e):void 0}}function sr(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r0&&Array.from(o).every((function(t){return 3===t.nodeType}));return a.hasText=s,a.text=s?a.getTextFromNode(u):"",a}return p()(r,[{key:"getText",value:function(){return this.text}},{key:"renderChildren",value:function(t){if(this.hasText){E()(k()(r.prototype),"renderChildren",this).call(this,t);var e=this.document,n=this.x,i=this.y,a=e.screen.mouse,o=new ut(e,"fontSize",$t.parse(e.ctx.font).fontSize);a.isWorking()&&a.checkBoundingBox(this,new _t(n,i-o.getPixels("y"),n+this.measureText(t),i))}else if(this.children.length>0){var u=new Be(this.document,null);u.children=this.children,u.parent=this,u.render(t)}}},{key:"onClick",value:function(){var t=this.document.window;t&&t.open(this.getHrefAttribute().getString())}},{key:"onMouseMove",value:function(){var t=this.document.ctx;t.canvas.style.cursor="pointer"}}]),r}(Ht);function Cr(t){if("undefined"===typeof Symbol||null==t[Symbol.iterator]){if(Array.isArray(t)||(t=Er(t))){var e=0,r=function(){};return{s:r,n:function(){return e>=t.length?{done:!0}:{done:!1,value:t[e++]}},e:function(t){throw t},f:r}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var n,i,a=!0,o=!1;return{s:function(){n=t[Symbol.iterator]()},n:function(){var t=n.next();return a=t.done,t},e:function(t){o=!0,i=t},f:function(){try{a||null==n.return||n.return()}finally{if(o)throw i}}}}function Er(t,e){if(t){if("string"===typeof t)return Mr(t,e);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(r):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Mr(t,e):void 0}}function Mr(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);ru?o:u,d=o>u?1:o/u,p=o>u?u/o:1;t&&(t.translate(i,a),t.rotate(f),t.scale(d,p),t.arc(0,0,h,s,s+c,Boolean(1-l)),t.scale(1/d,1/p),t.rotate(-f),t.translate(-i,-a));break;case"z":t&&t.closePath();break}}))}},{key:"renderChildren",value:function(t){this.setTextData(t),t.save();var e=this.parent.getStyle("text-decoration").getString(),r=this.getFontSize(),n=this.glyphInfo,i=t.fillStyle;"underline"===e&&t.beginPath(),n.forEach((function(i,a){var o=i.p0,u=i.p1,s=i.text;t.save(),t.translate(o.x,o.y),t.rotate(n[a].rotation),t.fillStyle&&t.fillText(s,0,0),t.strokeStyle&&t.strokeText(s,0,0),t.restore(),"underline"===e&&(0===a&&t.moveTo(o.x,o.y+r/8),t.lineTo(u.x,u.y+r/5))})),"underline"===e&&(t.lineWidth=r/20,t.strokeStyle=i,t.stroke(),t.closePath()),t.restore()}},{key:"getLetterSpacingAt",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return this.letterSpacingCache[t]||0}},{key:"findSegmentToFitChar",value:function(t,e,r,n,i,a,o,u){var s=a,c=this.measureText(t,o);" "===o&&"justify"===e&&r-1&&(s+=this.getLetterSpacingAt(u));var f=this.textHeight/20,l={p0:this.getEquidistantPointOnPath(s,f),p1:this.getEquidistantPointOnPath(s+c,f)};return s+=c,{offset:s,segment:l}}},{key:"measureText",value:function(t,e){var r=this.measuresCache,n=e||this.getText();if(r.has(n))return r.get(n);var i=this.measureTargetText(t,n);return r.set(n,i),i}},{key:"setTextData",value:function(t){var e=this;if(!this.glyphInfo){var r=this.getText(),n=r.split(""),i=r.split(" ").length-1,a=L(this.parent.getAttribute("dx").getString("0")),o=this.parent.getStyle("text-anchor").getString("start"),u=this.getStyle("letter-spacing"),s=this.parent.getStyle("letter-spacing"),c=0;u.hasValue()&&"inherit"!==u.getValue()?u.hasValue()&&"initial"!==u.getValue()&&"unset"!==u.getValue()&&(c=u.getPixels()):c=s.getPixels();var f=[],l=r.length;this.letterSpacingCache=f;for(var h=0;h1&&(r*=Math.sqrt(c),n*=Math.sqrt(c));var f=(a===o?-1:1)*Math.sqrt((Math.pow(r,2)*Math.pow(n,2)-Math.pow(r,2)*Math.pow(s.y,2)-Math.pow(n,2)*Math.pow(s.x,2))/(Math.pow(r,2)*Math.pow(s.y,2)+Math.pow(n,2)*Math.pow(s.x,2)));isNaN(f)&&(f=0);var l=new ct(f*r*s.y/n,f*-n*s.x/r),h=new ct((e.x+u.x)/2+Math.cos(i)*l.x-Math.sin(i)*l.y,(e.y+u.y)/2+Math.sin(i)*l.x+Math.cos(i)*l.y),d=J([1,0],[(s.x-l.x)/r,(s.y-l.y)/n]),p=[(s.x-l.x)/r,(s.y-l.y)/n],g=[(-s.x-l.x)/r,(-s.y-l.y)/n],y=J(p,g);return Z(p,g)<=-1&&(y=Math.PI),Z(p,g)>=1&&(y=0),0===o&&y>0&&(y-=2*Math.PI),1===o&&y<0&&(y+=2*Math.PI),[h.x,h.y,r,n,d,y,i,o]}}},{key:"calcLength",value:function(t,e,r,n){var i=0,a=null,o=null,u=0;switch(r){case"L":return this.getLineLength(t,e,n[0],n[1]);case"C":for(i=0,a=this.getPointOnCubicBezier(0,t,e,n[0],n[1],n[2],n[3],n[4],n[5]),u=.01;u<=1;u+=.01)o=this.getPointOnCubicBezier(u,t,e,n[0],n[1],n[2],n[3],n[4],n[5]),i+=this.getLineLength(a.x,a.y,o.x,o.y),a=o;return i;case"Q":for(i=0,a=this.getPointOnQuadraticBezier(0,t,e,n[0],n[1],n[2],n[3]),u=.01;u<=1;u+=.01)o=this.getPointOnQuadraticBezier(u,t,e,n[0],n[1],n[2],n[3]),i+=this.getLineLength(a.x,a.y,o.x,o.y),a=o;return i;case"A":i=0;var s=n[4],c=n[5],f=n[4]+c,l=Math.PI/180;if(Math.abs(s-f)f;u-=l)o=this.getPointOnEllipticalArc(n[0],n[1],n[2],n[3],u,0),i+=this.getLineLength(a.x,a.y,o.x,o.y),a=o;else for(u=s+l;u5&&void 0!==arguments[5]?arguments[5]:e,o=arguments.length>6&&void 0!==arguments[6]?arguments[6]:r,u=(i-r)/(n-e+Y),s=Math.sqrt(t*t/(1+u*u));ne)return null;var i,a=this.dataArray,o=Cr(a);try{for(o.s();!(i=o.n()).done;){var u=i.value;if(!u||!(u.pathLength<5e-5||r+u.pathLength+5e-5=0&&c>h)break;n=this.getPointOnEllipticalArc(u.points[0],u.points[1],u.points[2],u.points[3],c,u.points[6]);break;case"C":c=s/u.pathLength,c>1&&(c=1),n=this.getPointOnCubicBezier(c,u.start.x,u.start.y,u.points[0],u.points[1],u.points[2],u.points[3],u.points[4],u.points[5]);break;case"Q":c=s/u.pathLength,c>1&&(c=1),n=this.getPointOnQuadraticBezier(c,u.start.x,u.start.y,u.points[0],u.points[1],u.points[2],u.points[3]);break;default:}if(n)return n;break}r+=u.pathLength}}catch(d){o.e(d)}finally{o.f()}return null}},{key:"getLineLength",value:function(t,e,r,n){return Math.sqrt((r-t)*(r-t)+(n-e)*(n-e))}},{key:"getPathLength",value:function(){return-1===this.pathLength&&(this.pathLength=this.dataArray.reduce((function(t,e){return e.pathLength>0?t+e.pathLength:t}),0)),this.pathLength}},{key:"getPointOnCubicBezier",value:function(t,e,r,n,i,a,o,u,s){var c=u*K(t)+a*tt(t)+n*et(t)+e*rt(t),f=s*K(t)+o*tt(t)+i*et(t)+r*rt(t);return{x:c,y:f}}},{key:"getPointOnQuadraticBezier",value:function(t,e,r,n,i,a,o){var u=a*nt(t)+n*it(t)+e*at(t),s=o*nt(t)+i*it(t)+r*at(t);return{x:u,y:s}}},{key:"getPointOnEllipticalArc",value:function(t,e,r,n,i,a){var o=Math.cos(a),u=Math.sin(a),s={x:r*Math.cos(i),y:n*Math.sin(i)};return{x:t+(s.x*o-s.y*u),y:e+(s.x*u+s.y*o)}}},{key:"buildEquidistantCache",value:function(t,e){var r=this.getPathLength(),n=e||.25,i=t||r/100;if(!this.equidistantCache||this.equidistantCache.step!==i||this.equidistantCache.precision!==n){this.equidistantCache={step:i,precision:n,points:[]};for(var a=0,o=0;o<=r;o+=n){var u=this.getPointOnPath(o),s=this.getPointOnPath(o+n);u&&s&&(a+=this.getLineLength(u.x,u.y,s.x,s.y),a>=i&&(this.equidistantCache.points.push({x:u.x,y:u.y,distance:o}),a-=i))}}}},{key:"getEquidistantPointOnPath",value:function(t,e,r){if(this.buildEquidistantCache(e,r),t<0||t-this.getPathLength()>5e-5)return null;var n=Math.round(t/this.getPathLength()*(this.equidistantCache.points.length-1));return this.equidistantCache.points[n]||null}}]),r}(Ht);function Or(t){return function(){var e,r=k()(t);if(Nr()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function Nr(){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}}var Lr=function(t){P()(r,t);var e=Or(r);function r(t,n,i){var a;h()(this,r),a=e.call(this,t,n,i),a.type="image",a.loaded=!1;var o=a.getHrefAttribute().getString();if(!o)return x()(a);var u=/\.svg$/.test(o);return t.images.push(D()(a)),u?a.loadSvg(o):a.loadImage(o),a.isSvg=u,a}return p()(r,[{key:"loadImage",value:function(){var t=s()(o.a.mark((function t(e){var r;return o.a.wrap((function(t){while(1)switch(t.prev=t.next){case 0:return t.prev=0,t.next=3,this.document.createImage(e);case 3:r=t.sent,this.image=r,t.next=10;break;case 7:t.prev=7,t.t0=t["catch"](0),console.error('Error while loading image "'.concat(e,'":'),t.t0);case 10:this.loaded=!0;case 11:case"end":return t.stop()}}),t,this,[[0,7]])})));function e(e){return t.apply(this,arguments)}return e}()},{key:"loadSvg",value:function(){var t=s()(o.a.mark((function t(e){var r,n;return o.a.wrap((function(t){while(1)switch(t.prev=t.next){case 0:return t.prev=0,t.next=3,this.document.fetch(e);case 3:return r=t.sent,t.next=6,r.text();case 6:n=t.sent,this.image=n,t.next=13;break;case 10:t.prev=10,t.t0=t["catch"](0),console.error('Error while loading image "'.concat(e,'":'),t.t0);case 13:this.loaded=!0;case 14:case"end":return t.stop()}}),t,this,[[0,10]])})));function e(e){return t.apply(this,arguments)}return e}()},{key:"renderChildren",value:function(t){var e=this.document,r=this.image,n=this.loaded,i=this.getAttribute("x").getPixels("x"),a=this.getAttribute("y").getPixels("y"),o=this.getStyle("width").getPixels("x"),u=this.getStyle("height").getPixels("y");if(n&&r&&o&&u){if(t.save(),this.isSvg)e.canvg.forkString(t,this.image,{ignoreMouse:!0,ignoreAnimation:!0,ignoreDimensions:!0,ignoreClear:!0,offsetX:i,offsetY:a,scaleWidth:o,scaleHeight:u}).render();else{var s=this.image;t.translate(i,a),e.setViewBox({ctx:t,aspectRatio:this.getAttribute("preserveAspectRatio").getString(),width:o,desiredWidth:s.width,height:u,desiredHeight:s.height}),this.loaded&&("undefined"===typeof s.complete||s.complete)&&t.drawImage(s,0,0)}t.restore()}}},{key:"getBoundingBox",value:function(){var t=this.getAttribute("x").getPixels("x"),e=this.getAttribute("y").getPixels("y"),r=this.getStyle("width").getPixels("x"),n=this.getStyle("height").getPixels("y");return new _t(t,e,t+r,e+n)}}]),r}(Wt);function Ir(t){return function(){var e,r=k()(t);if(zr()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function zr(){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}}var Br=function(t){P()(r,t);var e=Ir(r);function r(){var t;return h()(this,r),t=e.apply(this,arguments),t.type="symbol",t}return p()(r,[{key:"render",value:function(t){}}]),r}(Wt),jr=function(){function t(e){h()(this,t),this.document=e,this.loaded=!1,e.fonts.push(this)}return p()(t,[{key:"load",value:function(){var t=s()(o.a.mark((function t(e,r){var n,i,a;return o.a.wrap((function(t){while(1)switch(t.prev=t.next){case 0:return t.prev=0,n=this.document,t.next=4,n.canvg.parser.load(r);case 4:i=t.sent,a=i.getElementsByTagName("font"),Array.from(a).forEach((function(t){var r=n.createElement(t);n.definitions[e]=r})),t.next=12;break;case 9:t.prev=9,t.t0=t["catch"](0),console.error('Error while loading font "'.concat(r,'":'),t.t0);case 12:this.loaded=!0;case 13:case"end":return t.stop()}}),t,this,[[0,9]])})));function e(e,r){return t.apply(this,arguments)}return e}()}]),t}();function Fr(t){return function(){var e,r=k()(t);if($r()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function $r(){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}}var _r=function(t){P()(r,t);var e=Fr(r);function r(t,n,i){var a;h()(this,r),a=e.call(this,t,n,i),a.type="style";var o=V(Array.from(n.childNodes).map((function(t){return t.data})).join("").replace(/(\/\*([^*]|[\r\n]|(\*+([^*\/]|[\r\n])))*\*+\/)|(^[\s]*\/\/.*)/gm,"").replace(/@import.*;/g,"")),u=o.split("}");return u.forEach((function(e){var r=e.trim();if(r){var n=r.split("{"),i=n[0].split(","),a=n[1].split(";");i.forEach((function(e){var r=e.trim();if(r){var n=t.styles[r]||{};if(a.forEach((function(e){var r=e.indexOf(":"),i=e.substr(0,r).trim(),a=e.substr(r+1,e.length-r).trim();i&&a&&(n[i]=new ut(t,i,a))})),t.styles[r]=n,t.stylesSpecificity[r]=H(r),"@font-face"===r){var i=n["font-family"].getString().replace(/"|'/g,""),o=n.src.getString().split(",");o.forEach((function(e){if(e.indexOf('format("svg")')>0){var r=B(e);r&&new jr(t).load(i,r)}}))}}}))}})),a}return r}(Ot);function qr(t){return function(){var e,r=k()(t);if(Gr()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function Gr(){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}}_r.parseExternalUrl=B;var Wr=function(t){P()(r,t);var e=qr(r);function r(){var t;return h()(this,r),t=e.apply(this,arguments),t.type="use",t}return p()(r,[{key:"setContext",value:function(t){E()(k()(r.prototype),"setContext",this).call(this,t);var e=this.getAttribute("x"),n=this.getAttribute("y");e.hasValue()&&t.translate(e.getPixels("x"),0),n.hasValue()&&t.translate(0,n.getPixels("y"))}},{key:"path",value:function(t){var e=this.element;e&&e.path(t)}},{key:"renderChildren",value:function(t){var e=this.document,r=this.element;if(r){var n=r;if("symbol"===r.type&&(n=new se(e,null),n.attributes.viewBox=new ut(e,"viewBox",r.getAttribute("viewBox").getString()),n.attributes.preserveAspectRatio=new ut(e,"preserveAspectRatio",r.getAttribute("preserveAspectRatio").getString()),n.attributes.overflow=new ut(e,"overflow",r.getAttribute("overflow").getString()),n.children=r.children),"svg"===n.type){var i=this.getStyle("width",!1,!0),a=this.getStyle("height",!1,!0);i.hasValue()&&(n.attributes.width=new ut(e,"width",i.getString())),a.hasValue()&&(n.attributes.height=new ut(e,"height",a.getString()))}var o=n.parent;n.parent=this,n.render(t),n.parent=o}}},{key:"getBoundingBox",value:function(t){var e=this.element;return e?e.getBoundingBox(t):null}},{key:"elementTransform",value:function(){var t=this.document,e=this.element;return Vt.fromElement(t,e)}},{key:"element",get:function(){return this._element||(this._element=this.getHrefAttribute().getDefinition()),this._element}}]),r}(Wt);function Xr(t){return function(){var e,r=k()(t);if(Ur()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function Ur(){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 Hr(t,e,r,n,i,a){return t[r*n*4+4*e+a]}function Yr(t,e,r,n,i,a,o){t[r*n*4+4*e+a]=o}function Qr(t,e,r){var n=t[e];return n*(n<0?r-255:r)}function Zr(t,e,r,n){return e+Math.cos(t)*r+Math.sin(t)*n}var Jr=function(t){P()(r,t);var e=Xr(r);function r(t,n,i){var a;h()(this,r),a=e.call(this,t,n,i),a.type="feColorMatrix";var o=L(a.getAttribute("values").getString());switch(a.getAttribute("type").getString("matrix")){case"saturate":var u=o[0];o=[.213+.787*u,.715-.715*u,.072-.072*u,0,0,.213-.213*u,.715+.285*u,.072-.072*u,0,0,.213-.213*u,.715-.715*u,.072+.928*u,0,0,0,0,0,1,0,0,0,0,0,1];break;case"hueRotate":var s=o[0]*Math.PI/180;o=[Zr(s,.213,.787,-.213),Zr(s,.715,-.715,-.715),Zr(s,.072,-.072,.928),0,0,Zr(s,.213,-.213,.143),Zr(s,.715,.285,.14),Zr(s,.072,-.072,-.283),0,0,Zr(s,.213,-.213,-.787),Zr(s,.715,-.715,.715),Zr(s,.072,.928,.072),0,0,0,0,0,1,0,0,0,0,0,1];break;case"luminanceToAlpha":o=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,.2125,.7154,.0721,0,0,0,0,0,0,1];break}return a.matrix=o,a.includeOpacity=a.getAttribute("includeOpacity").hasValue(),a}return p()(r,[{key:"apply",value:function(t,e,r,n,i){for(var a=this.includeOpacity,o=this.matrix,u=t.getImageData(0,0,n,i),s=0;s1&&void 0!==i[1]&&i[1],n=document.createElement("img"),r&&(n.crossOrigin="Anonymous"),t.abrupt("return",new Promise((function(t,r){n.onload=function(){t(n)},n.onerror=function(){r()},n.src=e})));case 4:case"end":return t.stop()}}),t)}))),On.apply(this,arguments)}var Nn=function(){function t(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=r.rootEmSize,i=void 0===n?12:n,a=r.emSize,o=void 0===a?12:a,u=r.createCanvas,s=void 0===u?t.createCanvas:u,c=r.createImage,f=void 0===c?t.createImage:c,l=r.anonymousCrossOrigin;h()(this,t),this.canvg=e,this.definitions={},this.styles={},this.stylesSpecificity={},this.images=[],this.fonts=[],this.emSizeStack=[],this.uniqueId=0,this.screen=e.screen,this.rootEmSize=i,this.emSize=o,this.createCanvas=s,this.createImage=this.bindCreateImage(f,l),this.screen.wait(this.isImagesLoaded.bind(this)),this.screen.wait(this.isFontsLoaded.bind(this))}return p()(t,[{key:"bindCreateImage",value:function(t,e){return"boolean"===typeof e?function(r,n){return t(r,"boolean"===typeof n?n:e)}:t}},{key:"popEmSize",value:function(){var t=this.emSizeStack;t.pop()}},{key:"getUniqueId",value:function(){return"canvg".concat(++this.uniqueId)}},{key:"isImagesLoaded",value:function(){return this.images.every((function(t){return t.loaded}))}},{key:"isFontsLoaded",value:function(){return this.fonts.every((function(t){return t.loaded}))}},{key:"createDocumentElement",value:function(t){var e=this.createElement(t.documentElement);return e.root=!0,e.addStylesFromStyleDefinition(),this.documentElement=e,e}},{key:"createElement",value:function(e){var r=e.nodeName.replace(/^[^:]+:/,""),n=t.elementTypes[r];return"undefined"!==typeof n?new n(this,e):new It(this,e)}},{key:"createTextNode",value:function(t){return new te(this,t)}},{key:"setViewBox",value:function(t){this.screen.setViewBox(Dn({document:this},t))}},{key:"window",get:function(){return this.screen.window}},{key:"fetch",get:function(){return this.screen.fetch}},{key:"ctx",get:function(){return this.screen.ctx}},{key:"emSize",get:function(){var t=this.emSizeStack;return t[t.length-1]},set:function(t){var e=this.emSizeStack;e.push(t)}}]),t}();function Ln(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function In(t){for(var e=1;e2&&void 0!==arguments[2]?arguments[2]:{};h()(this,t),this.parser=new yt(n),this.screen=new dt(e,n),this.options=n;var i=new Nn(this,n),a=i.createDocumentElement(r);this.document=i,this.documentElement=a}return p()(t,[{key:"fork",value:function(e,r){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return t.from(e,r,In({},this.options,{},n))}},{key:"forkString",value:function(e,r){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return t.fromString(e,r,In({},this.options,{},n))}},{key:"ready",value:function(){return this.screen.ready()}},{key:"isReady",value:function(){return this.screen.isReady()}},{key:"render",value:function(){var t=s()(o.a.mark((function t(){var e,r=arguments;return o.a.wrap((function(t){while(1)switch(t.prev=t.next){case 0:return e=r.length>0&&void 0!==r[0]?r[0]:{},this.start(In({enableRedraw:!0,ignoreAnimation:!0,ignoreMouse:!0},e)),t.next=4,this.ready();case 4:this.stop();case 5:case"end":return t.stop()}}),t,this)})));function e(){return t.apply(this,arguments)}return e}()},{key:"start",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=this.documentElement,r=this.screen,n=this.options;r.start(e,In({enableRedraw:!0},n,{},t))}},{key:"stop",value:function(){this.screen.stop()}},{key:"resize",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:t,r=arguments.length>2&&void 0!==arguments[2]&&arguments[2];this.documentElement.resize(t,e,r)}}],[{key:"from",value:function(){var e=s()(o.a.mark((function e(r,n){var i,a,u,s=arguments;return o.a.wrap((function(e){while(1)switch(e.prev=e.next){case 0:return i=s.length>2&&void 0!==s[2]?s[2]:{},a=new yt(i),e.next=4,a.parse(n);case 4:return u=e.sent,e.abrupt("return",new t(r,u,i));case 6:case"end":return e.stop()}}),e)})));function r(t,r){return e.apply(this,arguments)}return r}()},{key:"fromString",value:function(e,r){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=new yt(n),a=i.parseFromString(r);return new t(e,a,n)}}]),t}();function Bn(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=t.DOMParser,r={window:null,ignoreAnimation:!0,ignoreMouse:!0,DOMParser:e,createCanvas:function(t,e){return new OffscreenCanvas(t,e)},createImage:function(t){return s()(o.a.mark((function e(){var r,n,i;return o.a.wrap((function(e){while(1)switch(e.prev=e.next){case 0:return e.next=2,fetch(t);case 2:return r=e.sent,e.next=5,r.blob();case 5:return n=e.sent,e.next=8,createImageBitmap(n);case 8:return i=e.sent,e.abrupt("return",i);case 10:case"end":return e.stop()}}),e)})))()}};return"undefined"===typeof DOMParser&&"undefined"!==typeof e||Reflect.deleteProperty(r,"DOMParser"),r}function jn(t){var e=t.DOMParser,r=t.canvas,n=t.fetch;return{window:null,ignoreAnimation:!0,ignoreMouse:!0,DOMParser:e,fetch:n,createCanvas:r.createCanvas,createImage:r.loadImage}}var Fn=Object.freeze({__proto__:null,offscreen:Bn,node:jn});e["default"]=zn}.call(this,r("4362"))},"11b0":function(t,e,r){function n(t){if("undefined"!==typeof Symbol&&Symbol.iterator in Object(t))return Array.from(t)}r("a4d3"),r("e01a"),r("d28b"),r("a630"),r("d3b7"),r("3ca3"),r("ddb0"),t.exports=n},1276:function(t,e,r){"use strict";var n=r("d784"),i=r("44e7"),a=r("825a"),o=r("1d80"),u=r("4840"),s=r("8aa5"),c=r("50c4"),f=r("14c3"),l=r("9263"),h=r("d039"),d=[].push,p=Math.min,g=4294967295,y=!h((function(){return!RegExp(g,"y")}));n("split",2,(function(t,e,r){var n;return n="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(t,r){var n=String(o(this)),a=void 0===r?g:r>>>0;if(0===a)return[];if(void 0===t)return[n];if(!i(t))return e.call(n,t,a);var u,s,c,f=[],h=(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":""),p=0,y=new RegExp(t.source,h+"g");while(u=l.call(y,n)){if(s=y.lastIndex,s>p&&(f.push(n.slice(p,u.index)),u.length>1&&u.index=a))break;y.lastIndex===u.index&&y.lastIndex++}return p===n.length?!c&&y.test("")||f.push(""):f.push(n.slice(p)),f.length>a?f.slice(0,a):f}:"0".split(void 0,0).length?function(t,r){return void 0===t&&0===r?[]:e.call(this,t,r)}:e,[function(e,r){var i=o(this),a=void 0==e?void 0:e[t];return void 0!==a?a.call(e,i,r):n.call(String(i),e,r)},function(t,i){var o=r(n,t,this,i,n!==e);if(o.done)return o.value;var l=a(t),h=String(this),d=u(l,RegExp),v=l.unicode,m=(l.ignoreCase?"i":"")+(l.multiline?"m":"")+(l.unicode?"u":"")+(y?"y":"g"),b=new d(y?l:"^(?:"+l.source+")",m),x=void 0===i?g:i>>>0;if(0===x)return[];if(0===h.length)return null===f(b,h)?[h]:[];var w=0,k=0,S=[];while(k1?arguments[1]:void 0)}})},2236:function(t,e,r){var n=r("5a43");function i(t){if(Array.isArray(t))return n(t)}t.exports=i},"25f0":function(t,e,r){"use strict";var n=r("6eeb"),i=r("825a"),a=r("d039"),o=r("ad6d"),u="toString",s=RegExp.prototype,c=s[u],f=a((function(){return"/a/b"!=c.call({source:"a",flags:"b"})})),l=c.name!=u;(f||l)&&n(RegExp.prototype,u,(function(){var t=i(this),e=String(t.source),r=t.flags,n=String(void 0===r&&t instanceof RegExp&&!("flags"in s)?o.call(t):r);return"/"+e+"/"+n}),{unsafe:!0})},"26e9":function(t,e,r){"use strict";var n=r("23e7"),i=r("e8b5"),a=[].reverse,o=[1,2];n({target:"Array",proto:!0,forced:String(o)===String(o.reverse())},{reverse:function(){return i(this)&&(this.length=this.length),a.call(this)}})},"278c":function(t,e,r){var n=r("c135"),i=r("9b42"),a=r("6613"),o=r("c240");function u(t,e){return n(t)||i(t,e)||a(t,e)||o()}t.exports=u},"2ca0":function(t,e,r){"use strict";var n=r("23e7"),i=r("06cf").f,a=r("50c4"),o=r("5a34"),u=r("1d80"),s=r("ab13"),c=r("c430"),f="".startsWith,l=Math.min,h=s("startsWith"),d=!c&&!h&&!!function(){var t=i(String.prototype,"startsWith");return t&&!t.writable}();n({target:"String",proto:!0,forced:!d&&!h},{startsWith:function(t){var e=String(u(this));o(t);var r=a(l(arguments.length>1?arguments[1]:void 0,e.length)),n=String(t);return f?f.call(e,n,r):e.slice(r,r+n.length)===n}})},3410:function(t,e,r){var n=r("23e7"),i=r("d039"),a=r("7b0b"),o=r("e163"),u=r("e177"),s=i((function(){o(1)}));n({target:"Object",stat:!0,forced:s,sham:!u},{getPrototypeOf:function(t){return o(a(t))}})},"36c6":function(t,e,r){function n(e){return t.exports=n=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)},n(e)}r("3410"),t.exports=n},"3c96":function(t,e){function r(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}t.exports=r},"3ca3":function(t,e,r){"use strict";var n=r("6547").charAt,i=r("69f3"),a=r("7dd0"),o="String Iterator",u=i.set,s=i.getterFor(o);a(String,"String",(function(t){u(this,{type:o,string:String(t),index:0})}),(function(){var t,e=s(this),r=e.string,i=e.index;return i>=r.length?{value:void 0,done:!0}:(t=n(r,i),e.index+=t.length,{value:t,done:!1})}))},"448a":function(t,e,r){var n=r("2236"),i=r("11b0"),a=r("6613"),o=r("0676");function u(t){return n(t)||i(t)||a(t)||o()}t.exports=u},"45fc":function(t,e,r){"use strict";var n=r("23e7"),i=r("b727").some,a=r("a640"),o=r("ae40"),u=a("some"),s=o("some");n({target:"Array",proto:!0,forced:!u||!s},{some:function(t){return i(this,t,arguments.length>1?arguments[1]:void 0)}})},"466d":function(t,e,r){"use strict";var n=r("d784"),i=r("825a"),a=r("50c4"),o=r("1d80"),u=r("8aa5"),s=r("14c3");n("match",1,(function(t,e,r){return[function(e){var r=o(this),n=void 0==e?void 0:e[t];return void 0!==n?n.call(e,r):new RegExp(e)[t](String(r))},function(t){var n=r(e,t,this);if(n.done)return n.value;var o=i(t),c=String(this);if(!o.global)return s(o,c);var f=o.unicode;o.lastIndex=0;var l,h=[],d=0;while(null!==(l=s(o,c))){var p=String(l[0]);h[d]=p,""===p&&(o.lastIndex=u(c,a(o.lastIndex),f)),d++}return 0===d?null:h}]}))},"498a":function(t,e,r){"use strict";var n=r("23e7"),i=r("58a8").trim,a=r("c8d2");n({target:"String",proto:!0,forced:a("trim")},{trim:function(){return i(this)}})},"4a4b":function(t,e){function r(e,n){return t.exports=r=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t},r(e,n)}t.exports=r},"4ae1":function(t,e,r){var n=r("23e7"),i=r("d066"),a=r("1c0b"),o=r("825a"),u=r("861d"),s=r("7c73"),c=r("0538"),f=r("d039"),l=i("Reflect","construct"),h=f((function(){function t(){}return!(l((function(){}),[],t)instanceof t)})),d=!f((function(){l((function(){}))})),p=h||d;n({target:"Reflect",stat:!0,forced:p,sham:p},{construct:function(t,e){a(t),o(e);var r=arguments.length<3?t:a(arguments[2]);if(d&&!h)return l(t,e,r);if(t==r){switch(e.length){case 0:return new t;case 1:return new t(e[0]);case 2:return new t(e[0],e[1]);case 3:return new t(e[0],e[1],e[2]);case 4:return new t(e[0],e[1],e[2],e[3])}var n=[null];return n.push.apply(n,e),new(c.apply(t,n))}var i=r.prototype,f=s(u(i)?i:Object.prototype),p=Function.apply.call(t,f,e);return u(p)?p:f}})},"4df4":function(t,e,r){"use strict";var n=r("0366"),i=r("7b0b"),a=r("9bdd"),o=r("e95a"),u=r("50c4"),s=r("8418"),c=r("35a1");t.exports=function(t){var e,r,f,l,h,d,p=i(t),g="function"==typeof this?this:Array,y=arguments.length,v=y>1?arguments[1]:void 0,m=void 0!==v,b=c(p),x=0;if(m&&(v=n(v,y>2?arguments[2]:void 0,2)),void 0==b||g==Array&&o(b))for(e=u(p.length),r=new g(e);e>x;x++)d=m?v(p[x],x):p[x],s(r,x,d);else for(l=b.call(p),h=l.next,r=new g;!(f=h.call(l)).done;x++)d=m?a(l,v,[f.value,x],!0):f.value,s(r,x,d);return r.length=x,r}},"4ec9":function(t,e,r){"use strict";var n=r("6d61"),i=r("6566");t.exports=n("Map",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),i)},5319:function(t,e,r){"use strict";var n=r("d784"),i=r("825a"),a=r("7b0b"),o=r("50c4"),u=r("a691"),s=r("1d80"),c=r("8aa5"),f=r("14c3"),l=Math.max,h=Math.min,d=Math.floor,p=/\$([$&'`]|\d\d?|<[^>]*>)/g,g=/\$([$&'`]|\d\d?)/g,y=function(t){return void 0===t?t:String(t)};n("replace",2,(function(t,e,r,n){var v=n.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE,m=n.REPLACE_KEEPS_$0,b=v?"$":"$0";return[function(r,n){var i=s(this),a=void 0==r?void 0:r[t];return void 0!==a?a.call(r,i,n):e.call(String(i),r,n)},function(t,n){if(!v&&m||"string"===typeof n&&-1===n.indexOf(b)){var a=r(e,t,this,n);if(a.done)return a.value}var s=i(t),d=String(this),p="function"===typeof n;p||(n=String(n));var g=s.global;if(g){var w=s.unicode;s.lastIndex=0}var k=[];while(1){var S=f(s,d);if(null===S)break;if(k.push(S),!g)break;var P=String(S[0]);""===P&&(s.lastIndex=c(d,o(s.lastIndex),w))}for(var R="",A=0,C=0;C=A&&(R+=d.slice(A,M)+N,A=M+E.length)}return R+d.slice(A)}];function x(t,r,n,i,o,u){var s=n+t.length,c=i.length,f=g;return void 0!==o&&(o=a(o),f=p),e.call(u,f,(function(e,a){var u;switch(a.charAt(0)){case"$":return"$";case"&":return t;case"`":return r.slice(0,n);case"'":return r.slice(s);case"<":u=o[a.slice(1,-1)];break;default:var f=+a;if(0===f)return e;if(f>c){var l=d(f/10);return 0===l?e:l<=c?void 0===i[l-1]?a.charAt(1):i[l-1]+a.charAt(1):e}u=i[f-1]}return void 0===u?"":u}))}}))},5899:function(t,e){t.exports="\t\n\v\f\r Β αš€β€€β€β€‚β€ƒβ€„β€…β€†β€‡β€ˆβ€‰β€Šβ€―βŸγ€€\u2028\u2029\ufeff"},"58a8":function(t,e,r){var n=r("1d80"),i=r("5899"),a="["+i+"]",o=RegExp("^"+a+a+"*"),u=RegExp(a+a+"*$"),s=function(t){return function(e){var r=String(n(e));return 1&t&&(r=r.replace(o,"")),2&t&&(r=r.replace(u,"")),r}};t.exports={start:s(1),end:s(2),trim:s(3)}},"58e1":function(t,e){t.exports=function(t){this.ok=!1,this.alpha=1,"#"==t.charAt(0)&&(t=t.substr(1,6)),t=t.replace(/ /g,""),t=t.toLowerCase();var e={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"00ffff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000000",blanchedalmond:"ffebcd",blue:"0000ff",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"00ffff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dodgerblue:"1e90ff",feldspar:"d19275",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"ff00ff",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgrey:"d3d3d3",lightgreen:"90ee90",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslateblue:"8470ff",lightslategray:"778899",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"00ff00",limegreen:"32cd32",linen:"faf0e6",magenta:"ff00ff",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370d8",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"d87093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"ff0000",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",violetred:"d02090",wheat:"f5deb3",white:"ffffff",whitesmoke:"f5f5f5",yellow:"ffff00",yellowgreen:"9acd32"};t=e[t]||t;for(var r=[{re:/^rgba\((\d{1,3}),\s*(\d{1,3}),\s*(\d{1,3}),\s*((?:\d?\.)?\d)\)$/,example:["rgba(123, 234, 45, 0.8)","rgba(255,234,245,1.0)"],process:function(t){return[parseInt(t[1]),parseInt(t[2]),parseInt(t[3]),parseFloat(t[4])]}},{re:/^rgb\((\d{1,3}),\s*(\d{1,3}),\s*(\d{1,3})\)$/,example:["rgb(123, 234, 45)","rgb(255,234,245)"],process:function(t){return[parseInt(t[1]),parseInt(t[2]),parseInt(t[3])]}},{re:/^([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,example:["#00ff00","336699"],process:function(t){return[parseInt(t[1],16),parseInt(t[2],16),parseInt(t[3],16)]}},{re:/^([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,example:["#fb0","f0f"],process:function(t){return[parseInt(t[1]+t[1],16),parseInt(t[2]+t[2],16),parseInt(t[3]+t[3],16)]}}],n=0;n3&&(this.alpha=u[3]),this.ok=!0}}this.r=this.r<0||isNaN(this.r)?0:this.r>255?255:this.r,this.g=this.g<0||isNaN(this.g)?0:this.g>255?255:this.g,this.b=this.b<0||isNaN(this.b)?0:this.b>255?255:this.b,this.alpha=this.alpha<0?0:this.alpha>1||isNaN(this.alpha)?1:this.alpha,this.toRGB=function(){return"rgb("+this.r+", "+this.g+", "+this.b+")"},this.toRGBA=function(){return"rgba("+this.r+", "+this.g+", "+this.b+", "+this.alpha+")"},this.toHex=function(){var t=this.r.toString(16),e=this.g.toString(16),r=this.b.toString(16);return 1==t.length&&(t="0"+t),1==e.length&&(e="0"+e),1==r.length&&(r="0"+r),"#"+t+e+r},this.getHelpXML=function(){for(var t=new Array,n=0;n "+c.toRGB()+" -> "+c.toHex());s.appendChild(f),s.appendChild(l),u.appendChild(s)}catch(h){}return u}}},"5a43":function(t,e){function r(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r>P;if(c[k+3]=Z,0!==Z){var J=255/Z;c[k]=(j*S>>P)*J,c[k+1]=(F*S>>P)*J,c[k+2]=($*S>>P)*J}else c[k]=c[k+1]=c[k+2]=0;j-=L,F-=I,$-=z,_-=B,L-=b.r,I-=b.g,z-=b.b,B-=b.a;var K=Q+u+1;K=w+(K>P,ct>0?(ct=255/ct,c[Ct]=(pt*S>>P)*ct,c[Ct+1]=(gt*S>>P)*ct,c[Ct+2]=(yt*S>>P)*ct):c[Ct]=c[Ct+1]=c[Ct+2]=0,pt-=ft,gt-=lt,yt-=ht,vt-=dt,ft-=b.r,lt-=b.g,ht-=b.b,dt-=b.a,Ct=at+((Ct=At+p)=c?t?"":void 0:(a=u.charCodeAt(s),a<55296||a>56319||s+1===c||(o=u.charCodeAt(s+1))<56320||o>57343?t?u.charAt(s):a:t?u.slice(s,s+2):o-56320+(a-55296<<10)+65536)}};t.exports={codeAt:a(!1),charAt:a(!0)}},6566:function(t,e,r){"use strict";var n=r("9bf2").f,i=r("7c73"),a=r("e2cc"),o=r("0366"),u=r("19aa"),s=r("2266"),c=r("7dd0"),f=r("2626"),l=r("83ab"),h=r("f183").fastKey,d=r("69f3"),p=d.set,g=d.getterFor;t.exports={getConstructor:function(t,e,r,c){var f=t((function(t,n){u(t,f,e),p(t,{type:e,index:i(null),first:void 0,last:void 0,size:0}),l||(t.size=0),void 0!=n&&s(n,t[c],t,r)})),d=g(e),y=function(t,e,r){var n,i,a=d(t),o=v(t,e);return o?o.value=r:(a.last=o={index:i=h(e,!0),key:e,value:r,previous:n=a.last,next:void 0,removed:!1},a.first||(a.first=o),n&&(n.next=o),l?a.size++:t.size++,"F"!==i&&(a.index[i]=o)),t},v=function(t,e){var r,n=d(t),i=h(e);if("F"!==i)return n.index[i];for(r=n.first;r;r=r.next)if(r.key==e)return r};return a(f.prototype,{clear:function(){var t=this,e=d(t),r=e.index,n=e.first;while(n)n.removed=!0,n.previous&&(n.previous=n.previous.next=void 0),delete r[n.index],n=n.next;e.first=e.last=void 0,l?e.size=0:t.size=0},delete:function(t){var e=this,r=d(e),n=v(e,t);if(n){var i=n.next,a=n.previous;delete r.index[n.index],n.removed=!0,a&&(a.next=i),i&&(i.previous=a),r.first==n&&(r.first=i),r.last==n&&(r.last=a),l?r.size--:e.size--}return!!n},forEach:function(t){var e,r=d(this),n=o(t,arguments.length>1?arguments[1]:void 0,3);while(e=e?e.next:r.first){n(e.value,e.key,this);while(e&&e.removed)e=e.previous}},has:function(t){return!!v(this,t)}}),a(f.prototype,r?{get:function(t){var e=v(this,t);return e&&e.value},set:function(t,e){return y(this,0===t?0:t,e)}}:{add:function(t){return y(this,t=0===t?0:t,t)}}),l&&n(f.prototype,"size",{get:function(){return d(this).size}}),f},setStrong:function(t,e,r){var n=e+" Iterator",i=g(e),a=g(n);c(t,e,(function(t,e){p(this,{type:n,target:t,state:i(t),kind:e,last:void 0})}),(function(){var t=a(this),e=t.kind,r=t.last;while(r&&r.removed)r=r.previous;return t.target&&(t.last=r=r?r.next:t.state.first)?"keys"==e?{value:r.key,done:!1}:"values"==e?{value:r.value,done:!1}:{value:[r.key,r.value],done:!1}:(t.target=void 0,{value:void 0,done:!0})}),r?"entries":"values",!r,!0),f(e)}}},6613:function(t,e,r){r("a630"),r("fb6a"),r("b0c0"),r("d3b7"),r("25f0"),r("3ca3");var n=r("5a43");function i(t,e){if(t){if("string"===typeof t)return n(t,e);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)?n(t,e):void 0}}t.exports=i},"6b58":function(t,e,r){var n=r("7037"),i=r("3c96");function a(t,e){return!e||"object"!==n(e)&&"function"!==typeof e?i(t):e}t.exports=a},"6d08":function(t,e,r){(function(e){(function(){var r,n,i,a,o,u;"undefined"!==typeof performance&&null!==performance&&performance.now?t.exports=function(){return performance.now()}:"undefined"!==typeof e&&null!==e&&e.hrtime?(t.exports=function(){return(r()-o)/1e6},n=e.hrtime,r=function(){var t;return t=n(),1e9*t[0]+t[1]},a=r(),u=1e9*e.uptime(),o=a-u):Date.now?(t.exports=function(){return Date.now()-i},i=Date.now()):(t.exports=function(){return(new Date).getTime()-i},i=(new Date).getTime())}).call(this)}).call(this,r("4362"))},"6d61":function(t,e,r){"use strict";var n=r("23e7"),i=r("da84"),a=r("94ca"),o=r("6eeb"),u=r("f183"),s=r("2266"),c=r("19aa"),f=r("861d"),l=r("d039"),h=r("1c7e"),d=r("d44e"),p=r("7156");t.exports=function(t,e,r){var g=-1!==t.indexOf("Map"),y=-1!==t.indexOf("Weak"),v=g?"set":"add",m=i[t],b=m&&m.prototype,x=m,w={},k=function(t){var e=b[t];o(b,t,"add"==t?function(t){return e.call(this,0===t?0:t),this}:"delete"==t?function(t){return!(y&&!f(t))&&e.call(this,0===t?0:t)}:"get"==t?function(t){return y&&!f(t)?void 0:e.call(this,0===t?0:t)}:"has"==t?function(t){return!(y&&!f(t))&&e.call(this,0===t?0:t)}:function(t,r){return e.call(this,0===t?0:t,r),this})};if(a(t,"function"!=typeof m||!(y||b.forEach&&!l((function(){(new m).entries().next()})))))x=r.getConstructor(e,t,g,v),u.REQUIRED=!0;else if(a(t,!0)){var S=new x,P=S[v](y?{}:-0,1)!=S,R=l((function(){S.has(1)})),A=h((function(t){new m(t)})),C=!y&&l((function(){var t=new m,e=5;while(e--)t[v](e,e);return!t.has(-0)}));A||(x=e((function(e,r){c(e,x,t);var n=p(new m,e,x);return void 0!=r&&s(r,n[v],n,g),n})),x.prototype=b,b.constructor=x),(R||C)&&(k("delete"),k("has"),g&&k("get")),(C||P)&&k(v),y&&b.clear&&delete b.clear}return w[t]=x,n({global:!0,forced:x!=m},w),d(x,t),y||r.setStrong(x,t,g),x}},7037:function(t,e,r){function n(e){return"function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?t.exports=n=function(t){return typeof t}:t.exports=n=function(t){return t&&"function"===typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},n(e)}r("a4d3"),r("e01a"),r("d28b"),r("d3b7"),r("3ca3"),r("ddb0"),t.exports=n},7156:function(t,e,r){var n=r("861d"),i=r("d2bb");t.exports=function(t,e,r){var a,o;return i&&"function"==typeof(a=e.constructor)&&a!==r&&n(o=a.prototype)&&o!==r.prototype&&i(t,o),t}},"746f":function(t,e,r){var n=r("428f"),i=r("5135"),a=r("e538"),o=r("9bf2").f;t.exports=function(t){var e=n.Symbol||(n.Symbol={});i(e,t)||o(e,t,{value:a.f(t)})}},"7f78":function(t,e,r){var n=r("23e7"),i=r("825a"),a=r("e163"),o=r("e177");n({target:"Reflect",stat:!0,sham:!o},{getPrototypeOf:function(t){return a(i(t))}})},"81d5":function(t,e,r){"use strict";var n=r("7b0b"),i=r("23cb"),a=r("50c4");t.exports=function(t){var e=n(this),r=a(e.length),o=arguments.length,u=i(o>1?arguments[1]:void 0,r),s=o>2?arguments[2]:void 0,c=void 0===s?r:i(s,r);while(c>u)e[u++]=t;return e}},8418:function(t,e,r){"use strict";var n=r("c04e"),i=r("9bf2"),a=r("5c6c");t.exports=function(t,e,r){var o=n(e);o in t?i.f(t,o,a(0,r)):t[o]=r}},8962:function(t,e,r){r("e439"),r("5d41");var n=r("9f70");function i(e,r,a){return"undefined"!==typeof Reflect&&Reflect.get?t.exports=i=Reflect.get:t.exports=i=function(t,e,r){var i=n(t,e);if(i){var a=Object.getOwnPropertyDescriptor(i,e);return a.get?a.get.call(r):a.value}},i(e,r,a||e)}t.exports=i},"8aa5":function(t,e,r){"use strict";var n=r("6547").charAt;t.exports=function(t,e,r){return e+(r?n(t,e).length:1)}},9523:function(t,e){function r(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}t.exports=r},"96cf":function(t,e,r){var n=function(t){"use strict";var e,r=Object.prototype,n=r.hasOwnProperty,i="function"===typeof Symbol?Symbol:{},a=i.iterator||"@@iterator",o=i.asyncIterator||"@@asyncIterator",u=i.toStringTag||"@@toStringTag";function s(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{s({},"")}catch(V){s=function(t,e,r){return t[e]=r}}function c(t,e,r,n){var i=e&&e.prototype instanceof y?e:y,a=Object.create(i.prototype),o=new M(n||[]);return a._invoke=R(t,r,o),a}function f(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(V){return{type:"throw",arg:V}}}t.wrap=c;var l="suspendedStart",h="suspendedYield",d="executing",p="completed",g={};function y(){}function v(){}function m(){}var b={};b[a]=function(){return this};var x=Object.getPrototypeOf,w=x&&x(x(D([])));w&&w!==r&&n.call(w,a)&&(b=w);var k=m.prototype=y.prototype=Object.create(b);function S(t){["next","throw","return"].forEach((function(e){s(t,e,(function(t){return this._invoke(e,t)}))}))}function P(t,e){function r(i,a,o,u){var s=f(t[i],t,a);if("throw"!==s.type){var c=s.arg,l=c.value;return l&&"object"===typeof l&&n.call(l,"__await")?e.resolve(l.__await).then((function(t){r("next",t,o,u)}),(function(t){r("throw",t,o,u)})):e.resolve(l).then((function(t){c.value=t,o(c)}),(function(t){return r("throw",t,o,u)}))}u(s.arg)}var i;function a(t,n){function a(){return new e((function(e,i){r(t,n,e,i)}))}return i=i?i.then(a,a):a()}this._invoke=a}function R(t,e,r){var n=l;return function(i,a){if(n===d)throw new Error("Generator is already running");if(n===p){if("throw"===i)throw a;return T()}r.method=i,r.arg=a;while(1){var o=r.delegate;if(o){var u=A(o,r);if(u){if(u===g)continue;return u}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if(n===l)throw n=p,r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n=d;var s=f(t,e,r);if("normal"===s.type){if(n=r.done?p:h,s.arg===g)continue;return{value:s.arg,done:r.done}}"throw"===s.type&&(n=p,r.method="throw",r.arg=s.arg)}}}function A(t,r){var n=t.iterator[r.method];if(n===e){if(r.delegate=null,"throw"===r.method){if(t.iterator["return"]&&(r.method="return",r.arg=e,A(t,r),"throw"===r.method))return g;r.method="throw",r.arg=new TypeError("The iterator does not provide a 'throw' method")}return g}var i=f(n,t.iterator,r.arg);if("throw"===i.type)return r.method="throw",r.arg=i.arg,r.delegate=null,g;var a=i.arg;return a?a.done?(r[t.resultName]=a.value,r.next=t.nextLoc,"return"!==r.method&&(r.method="next",r.arg=e),r.delegate=null,g):a:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,g)}function C(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function E(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function M(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(C,this),this.reset(!0)}function D(t){if(t){var r=t[a];if(r)return r.call(t);if("function"===typeof t.next)return t;if(!isNaN(t.length)){var i=-1,o=function r(){while(++i=0;--a){var o=this.tryEntries[a],u=o.completion;if("root"===o.tryLoc)return i("end");if(o.tryLoc<=this.prev){var s=n.call(o,"catchLoc"),c=n.call(o,"finallyLoc");if(s&&c){if(this.prev=0;--r){var i=this.tryEntries[r];if(i.tryLoc<=this.prev&&n.call(i,"finallyLoc")&&this.prev=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),E(r),g}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var i=n.arg;E(r)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(t,r,n){return this.delegate={iterator:D(t),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=e),g}},t}(t.exports);try{regeneratorRuntime=n}catch(i){Function("r","regeneratorRuntime = r")(n)}},"970b":function(t,e){function r(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}t.exports=r},"99af":function(t,e,r){"use strict";var n=r("23e7"),i=r("d039"),a=r("e8b5"),o=r("861d"),u=r("7b0b"),s=r("50c4"),c=r("8418"),f=r("65f0"),l=r("1dde"),h=r("b622"),d=r("2d00"),p=h("isConcatSpreadable"),g=9007199254740991,y="Maximum allowed index exceeded",v=d>=51||!i((function(){var t=[];return t[p]=!1,t.concat()[0]!==t})),m=l("concat"),b=function(t){if(!o(t))return!1;var e=t[p];return void 0!==e?!!e:a(t)},x=!v||!m;n({target:"Array",proto:!0,forced:x},{concat:function(t){var e,r,n,i,a,o=u(this),l=f(o,0),h=0;for(e=-1,n=arguments.length;eg)throw TypeError(y);for(r=0;r=g)throw TypeError(y);c(l,h++,a)}return l.length=h,l}})},"9b42":function(t,e,r){function n(t,e){if("undefined"!==typeof Symbol&&Symbol.iterator in Object(t)){var r=[],n=!0,i=!1,a=void 0;try{for(var o,u=t[Symbol.iterator]();!(n=(o=u.next()).done);n=!0)if(r.push(o.value),e&&r.length===e)break}catch(s){i=!0,a=s}finally{try{n||null==u["return"]||u["return"]()}finally{if(i)throw a}}return r}}r("a4d3"),r("e01a"),r("d28b"),r("d3b7"),r("3ca3"),r("ddb0"),t.exports=n},"9f70":function(t,e,r){var n=r("36c6");function i(t,e){while(!Object.prototype.hasOwnProperty.call(t,e))if(t=n(t),null===t)break;return t}t.exports=i},a15b:function(t,e,r){"use strict";var n=r("23e7"),i=r("44ad"),a=r("fc6a"),o=r("a640"),u=[].join,s=i!=Object,c=o("join",",");n({target:"Array",proto:!0,forced:s||!c},{join:function(t){return u.call(a(this),void 0===t?",":t)}})},a34a:function(t,e,r){t.exports=r("96cf")},a4d3:function(t,e,r){"use strict";var n=r("23e7"),i=r("da84"),a=r("d066"),o=r("c430"),u=r("83ab"),s=r("4930"),c=r("fdbf"),f=r("d039"),l=r("5135"),h=r("e8b5"),d=r("861d"),p=r("825a"),g=r("7b0b"),y=r("fc6a"),v=r("c04e"),m=r("5c6c"),b=r("7c73"),x=r("df75"),w=r("241c"),k=r("057f"),S=r("7418"),P=r("06cf"),R=r("9bf2"),A=r("d1e7"),C=r("9112"),E=r("6eeb"),M=r("5692"),D=r("f772"),T=r("d012"),V=r("90e3"),O=r("b622"),N=r("e538"),L=r("746f"),I=r("d44e"),z=r("69f3"),B=r("b727").forEach,j=D("hidden"),F="Symbol",$="prototype",_=O("toPrimitive"),q=z.set,G=z.getterFor(F),W=Object[$],X=i.Symbol,U=a("JSON","stringify"),H=P.f,Y=R.f,Q=k.f,Z=A.f,J=M("symbols"),K=M("op-symbols"),tt=M("string-to-symbol-registry"),et=M("symbol-to-string-registry"),rt=M("wks"),nt=i.QObject,it=!nt||!nt[$]||!nt[$].findChild,at=u&&f((function(){return 7!=b(Y({},"a",{get:function(){return Y(this,"a",{value:7}).a}})).a}))?function(t,e,r){var n=H(W,e);n&&delete W[e],Y(t,e,r),n&&t!==W&&Y(W,e,n)}:Y,ot=function(t,e){var r=J[t]=b(X[$]);return q(r,{type:F,tag:t,description:e}),u||(r.description=e),r},ut=c?function(t){return"symbol"==typeof t}:function(t){return Object(t)instanceof X},st=function(t,e,r){t===W&&st(K,e,r),p(t);var n=v(e,!0);return p(r),l(J,n)?(r.enumerable?(l(t,j)&&t[j][n]&&(t[j][n]=!1),r=b(r,{enumerable:m(0,!1)})):(l(t,j)||Y(t,j,m(1,{})),t[j][n]=!0),at(t,n,r)):Y(t,n,r)},ct=function(t,e){p(t);var r=y(e),n=x(r).concat(pt(r));return B(n,(function(e){u&&!lt.call(r,e)||st(t,e,r[e])})),t},ft=function(t,e){return void 0===e?b(t):ct(b(t),e)},lt=function(t){var e=v(t,!0),r=Z.call(this,e);return!(this===W&&l(J,e)&&!l(K,e))&&(!(r||!l(this,e)||!l(J,e)||l(this,j)&&this[j][e])||r)},ht=function(t,e){var r=y(t),n=v(e,!0);if(r!==W||!l(J,n)||l(K,n)){var i=H(r,n);return!i||!l(J,n)||l(r,j)&&r[j][n]||(i.enumerable=!0),i}},dt=function(t){var e=Q(y(t)),r=[];return B(e,(function(t){l(J,t)||l(T,t)||r.push(t)})),r},pt=function(t){var e=t===W,r=Q(e?K:y(t)),n=[];return B(r,(function(t){!l(J,t)||e&&!l(W,t)||n.push(J[t])})),n};if(s||(X=function(){if(this instanceof X)throw TypeError("Symbol is not a constructor");var t=arguments.length&&void 0!==arguments[0]?String(arguments[0]):void 0,e=V(t),r=function(t){this===W&&r.call(K,t),l(this,j)&&l(this[j],e)&&(this[j][e]=!1),at(this,e,m(1,t))};return u&&it&&at(W,e,{configurable:!0,set:r}),ot(e,t)},E(X[$],"toString",(function(){return G(this).tag})),E(X,"withoutSetter",(function(t){return ot(V(t),t)})),A.f=lt,R.f=st,P.f=ht,w.f=k.f=dt,S.f=pt,N.f=function(t){return ot(O(t),t)},u&&(Y(X[$],"description",{configurable:!0,get:function(){return G(this).description}}),o||E(W,"propertyIsEnumerable",lt,{unsafe:!0}))),n({global:!0,wrap:!0,forced:!s,sham:!s},{Symbol:X}),B(x(rt),(function(t){L(t)})),n({target:F,stat:!0,forced:!s},{for:function(t){var e=String(t);if(l(tt,e))return tt[e];var r=X(e);return tt[e]=r,et[r]=e,r},keyFor:function(t){if(!ut(t))throw TypeError(t+" is not a symbol");if(l(et,t))return et[t]},useSetter:function(){it=!0},useSimple:function(){it=!1}}),n({target:"Object",stat:!0,forced:!s,sham:!u},{create:ft,defineProperty:st,defineProperties:ct,getOwnPropertyDescriptor:ht}),n({target:"Object",stat:!0,forced:!s},{getOwnPropertyNames:dt,getOwnPropertySymbols:pt}),n({target:"Object",stat:!0,forced:f((function(){S.f(1)}))},{getOwnPropertySymbols:function(t){return S.f(g(t))}}),U){var gt=!s||f((function(){var t=X();return"[null]"!=U([t])||"{}"!=U({a:t})||"{}"!=U(Object(t))}));n({target:"JSON",stat:!0,forced:gt},{stringify:function(t,e,r){var n,i=[t],a=1;while(arguments.length>a)i.push(arguments[a++]);if(n=e,(d(e)||void 0!==t)&&!ut(t))return h(e)||(e=function(t,e){if("function"==typeof n&&(e=n.call(this,t,e)),!ut(e))return e}),i[1]=e,U.apply(null,i)}})}X[$][_]||C(X[$],_,X[$].valueOf),I(X,F),T[j]=!0},a623:function(t,e,r){"use strict";var n=r("23e7"),i=r("b727").every,a=r("a640"),o=r("ae40"),u=a("every"),s=o("every");n({target:"Array",proto:!0,forced:!u||!s},{every:function(t){return i(this,t,arguments.length>1?arguments[1]:void 0)}})},a630:function(t,e,r){var n=r("23e7"),i=r("4df4"),a=r("1c7e"),o=!a((function(t){Array.from(t)}));n({target:"Array",stat:!0,forced:o},{from:i})},a6fd:function(t,e,r){var n=r("23e7"),i=r("d066"),a=r("1c0b"),o=r("825a"),u=r("d039"),s=i("Reflect","apply"),c=Function.apply,f=!u((function(){s((function(){}))}));n({target:"Reflect",stat:!0,forced:f},{apply:function(t,e,r){return a(t),o(r),s?s(t,e,r):c.call(t,e,r)}})},a9e3:function(t,e,r){"use strict";var n=r("83ab"),i=r("da84"),a=r("94ca"),o=r("6eeb"),u=r("5135"),s=r("c6b6"),c=r("7156"),f=r("c04e"),l=r("d039"),h=r("7c73"),d=r("241c").f,p=r("06cf").f,g=r("9bf2").f,y=r("58a8").trim,v="Number",m=i[v],b=m.prototype,x=s(h(b))==v,w=function(t){var e,r,n,i,a,o,u,s,c=f(t,!1);if("string"==typeof c&&c.length>2)if(c=y(c),e=c.charCodeAt(0),43===e||45===e){if(r=c.charCodeAt(2),88===r||120===r)return NaN}else if(48===e){switch(c.charCodeAt(1)){case 66:case 98:n=2,i=49;break;case 79:case 111:n=8,i=55;break;default:return+c}for(a=c.slice(2),o=a.length,u=0;ui)return NaN;return parseInt(a,n)}return+c};if(a(v,!m(" 0o1")||!m("0b1")||m("+0x1"))){for(var k,S=function(t){var e=arguments.length<1?0:t,r=this;return r instanceof S&&(x?l((function(){b.valueOf.call(r)})):s(r)!=v)?c(new m(w(e)),r,S):w(e)},P=n?d(m):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger".split(","),R=0;P.length>R;R++)u(m,k=P[R])&&!u(S,k)&&g(S,k,p(m,k));S.prototype=b,b.constructor=S,o(i,v,S)}},ac16:function(t,e,r){var n=r("23e7"),i=r("825a"),a=r("06cf").f;n({target:"Reflect",stat:!0},{deleteProperty:function(t,e){var r=a(i(t),e);return!(r&&!r.configurable)&&delete t[e]}})},b041:function(t,e,r){"use strict";var n=r("00ee"),i=r("f5df");t.exports=n?{}.toString:function(){return"[object "+i(this)+"]"}},b0c0:function(t,e,r){var n=r("83ab"),i=r("9bf2").f,a=Function.prototype,o=a.toString,u=/^\s*function ([^ (]*)/,s="name";n&&!(s in a)&&i(a,s,{configurable:!0,get:function(){try{return o.call(this).match(u)[1]}catch(t){return""}}})},b64b:function(t,e,r){var n=r("23e7"),i=r("7b0b"),a=r("df75"),o=r("d039"),u=o((function(){a(1)}));n({target:"Object",stat:!0,forced:u},{keys:function(t){return a(i(t))}})},bb2f:function(t,e,r){var n=r("d039");t.exports=!n((function(){return Object.isExtensible(Object.preventExtensions({}))}))},c135:function(t,e){function r(t){if(Array.isArray(t))return t}t.exports=r},c240:function(t,e){function r(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}t.exports=r},c449:function(t,e,r){(function(e){for(var n=r("6d08"),i="undefined"===typeof window?e:window,a=["moz","webkit"],o="AnimationFrame",u=i["request"+o],s=i["cancel"+o]||i["cancelRequest"+o],c=0;!u&&c1?arguments[1]:void 0)}})},cb29:function(t,e,r){var n=r("23e7"),i=r("81d5"),a=r("44d2");n({target:"Array",proto:!0},{fill:i}),a("fill")},d28b:function(t,e,r){var n=r("746f");n("iterator")},d3b7:function(t,e,r){var n=r("00ee"),i=r("6eeb"),a=r("b041");n||i(Object.prototype,"toString",a,{unsafe:!0})},d58f:function(t,e,r){var n=r("1c0b"),i=r("7b0b"),a=r("44ad"),o=r("50c4"),u=function(t){return function(e,r,u,s){n(r);var c=i(e),f=a(c),l=o(c.length),h=t?l-1:0,d=t?-1:1;if(u<2)while(1){if(h in f){s=f[h],h+=d;break}if(h+=d,t?h<0:l<=h)throw TypeError("Reduce of empty array with no initial value")}for(;t?h>=0:l>h;h+=d)h in f&&(s=r(s,f[h],h,c));return s}};t.exports={left:u(!1),right:u(!0)}},d81d:function(t,e,r){"use strict";var n=r("23e7"),i=r("b727").map,a=r("1dde"),o=r("ae40"),u=a("map"),s=o("map");n({target:"Array",proto:!0,forced:!u||!s},{map:function(t){return i(this,t,arguments.length>1?arguments[1]:void 0)}})},dbb4:function(t,e,r){var n=r("23e7"),i=r("83ab"),a=r("56ef"),o=r("fc6a"),u=r("06cf"),s=r("8418");n({target:"Object",stat:!0,sham:!i},{getOwnPropertyDescriptors:function(t){var e,r,n=o(t),i=u.f,c=a(n),f={},l=0;while(c.length>l)r=i(n,e=c[l++]),void 0!==r&&s(f,e,r);return f}})},ddb0:function(t,e,r){var n=r("da84"),i=r("fdbc"),a=r("e260"),o=r("9112"),u=r("b622"),s=u("iterator"),c=u("toStringTag"),f=a.values;for(var l in i){var h=n[l],d=h&&h.prototype;if(d){if(d[s]!==f)try{o(d,s,f)}catch(g){d[s]=f}if(d[c]||o(d,c,l),i[l])for(var p in a)if(d[p]!==a[p])try{o(d,p,a[p])}catch(g){d[p]=a[p]}}}},e01a:function(t,e,r){"use strict";var n=r("23e7"),i=r("83ab"),a=r("da84"),o=r("5135"),u=r("861d"),s=r("9bf2").f,c=r("e893"),f=a.Symbol;if(i&&"function"==typeof f&&(!("description"in f.prototype)||void 0!==f().description)){var l={},h=function(){var t=arguments.length<1||void 0===arguments[0]?void 0:String(arguments[0]),e=this instanceof h?new f(t):void 0===t?f():f(t);return""===t&&(l[e]=!0),e};c(h,f);var d=h.prototype=f.prototype;d.constructor=h;var p=d.toString,g="Symbol(test)"==String(f("test")),y=/^Symbol\((.*)\)[^)]+$/;s(d,"description",{configurable:!0,get:function(){var t=u(this)?this.valueOf():this,e=p.call(t);if(o(l,t))return"";var r=g?e.slice(7,-1):e.replace(y,"$1");return""===r?void 0:r}}),n({global:!0,forced:!0},{Symbol:h})}},e439:function(t,e,r){var n=r("23e7"),i=r("d039"),a=r("fc6a"),o=r("06cf").f,u=r("83ab"),s=i((function(){o(1)})),c=!u||s;n({target:"Object",stat:!0,forced:c,sham:!u},{getOwnPropertyDescriptor:function(t,e){return o(a(t),e)}})},e538:function(t,e,r){var n=r("b622");e.f=n},ed6d:function(t,e,r){var n=r("4a4b");function i(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&&n(t,e)}t.exports=i},f183:function(t,e,r){var n=r("d012"),i=r("861d"),a=r("5135"),o=r("9bf2").f,u=r("90e3"),s=r("bb2f"),c=u("meta"),f=0,l=Object.isExtensible||function(){return!0},h=function(t){o(t,c,{value:{objectID:"O"+ ++f,weakData:{}}})},d=function(t,e){if(!i(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!a(t,c)){if(!l(t))return"F";if(!e)return"E";h(t)}return t[c].objectID},p=function(t,e){if(!a(t,c)){if(!l(t))return!0;if(!e)return!1;h(t)}return t[c].weakData},g=function(t){return s&&y.REQUIRED&&l(t)&&!a(t,c)&&h(t),t},y=t.exports={REQUIRED:!1,fastKey:d,getWeakData:p,onFreeze:g};n[c]=!0},fb6a:function(t,e,r){"use strict";var n=r("23e7"),i=r("861d"),a=r("e8b5"),o=r("23cb"),u=r("50c4"),s=r("fc6a"),c=r("8418"),f=r("b622"),l=r("1dde"),h=r("ae40"),d=l("slice"),p=h("slice",{ACCESSORS:!0,0:0,1:2}),g=f("species"),y=[].slice,v=Math.max;n({target:"Array",proto:!0,forced:!d||!p},{slice:function(t,e){var r,n,f,l=s(this),h=u(l.length),d=o(t,h),p=o(void 0===e?h:e,h);if(a(l)&&(r=l.constructor,"function"!=typeof r||r!==Array&&!a(r.prototype)?i(r)&&(r=r[g],null===r&&(r=void 0)):r=void 0,r===Array||void 0===r))return y.call(l,d,p);for(n=new(void 0===r?Array:r)(v(p-d,0)),f=0;d~\.\[:]+)/g,_=/(\.[^\s\+>~\.\[:]+)/g,q=/(::[^\s\+>~\.\[:]+|:first-line|:first-letter|:before|:after)/gi,G=/(:[\w-]+\([^\)]*\))/gi,W=/(:[^\s\+>~\.\[:]+)/g,X=/([^\s\+>~\.\[:]+)/g;function U(t,e){var r=t.match(e);return r?[t.replace(e," "),r.length]:[t,0]}function H(t){var e=[0,0,0],r=t.replace(/:not\(([^\)]*)\)/g," $1 ").replace(/{[\s\S]*/gm," "),n=0,a=U(r,F),o=i()(a,2);r=o[0],n=o[1],e[1]+=n;var u=U(r,$),s=i()(u,2);r=s[0],n=s[1],e[0]+=n;var c=U(r,_),l=i()(c,2);r=l[0],n=l[1],e[1]+=n;var f=U(r,q),h=i()(f,2);r=h[0],n=h[1],e[2]+=n;var d=U(r,G),p=i()(d,2);r=p[0],n=p[1],e[1]+=n;var g=U(r,W),y=i()(g,2);r=y[0],n=y[1],e[1]+=n,r=r.replace(/[\*\s\+>~]/g," ").replace(/[#\.]/g," ");var v=U(r,X),m=i()(v,2);return r=m[0],n=m[1],e[2]+=n,e.join("")}var Y=1e-8;function Q(t){return Math.sqrt(Math.pow(t[0],2)+Math.pow(t[1],2))}function Z(t,e){return(t[0]*e[0]+t[1]*e[1])/(Q(t)*Q(e))}function J(t,e){return(t[0]*e[1]=0;--a){var o=this.tryEntries[a],u=o.completion;if("root"===o.tryLoc)return i("end");if(o.tryLoc<=this.prev){var s=n.call(o,"catchLoc"),c=n.call(o,"finallyLoc");if(s&&c){if(this.prev=0;--r){var i=this.tryEntries[r];if(i.tryLoc<=this.prev&&n.call(i,"finallyLoc")&&this.prev=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),C(r),p}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var i=n.arg;C(r)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(t,r,n){return this.delegate={iterator:M(t),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=e),p}},t}(t.exports);try{regeneratorRuntime=e}catch(r){Function("r","regeneratorRuntime = r")(e)}}));var ut=function(){function t(e,r,n){h()(this,t),this.document=e,this.name=r,this.value=n,this.isNormalizedColor=!1}return p()(t,[{key:"hasValue",value:function(){var t=this.value;return null!==t&&""!==t&&0!==t&&"undefined"!==typeof t}},{key:"isString",value:function(t){var e=this.value,r="string"===typeof e;return r&&t?t.test(e):r}},{key:"isUrlDefinition",value:function(){return this.isString(/^url\(/)}},{key:"isPixels",value:function(){if(!this.hasValue())return!1;var t=this.getString();switch(!0){case/px$/.test(t):case/^[0-9]+$/.test(t):return!0;default:return!1}}},{key:"setValue",value:function(t){return this.value=t,this}},{key:"getValue",value:function(t){return"undefined"===typeof t||this.hasValue()?this.value:t}},{key:"getNumber",value:function(t){if(!this.hasValue())return"undefined"===typeof t?0:parseFloat(t);var e=this.value,r=parseFloat(e);return this.isString(/%$/)&&(r/=100),r}},{key:"getString",value:function(t){return"undefined"===typeof t||this.hasValue()?"undefined"===typeof this.value?"":String(this.value):String(t)}},{key:"getColor",value:function(t){var e=this.getString(t);return this.isNormalizedColor||(this.isNormalizedColor=!0,e=j(e),this.value=e),e}},{key:"getDpi",value:function(){return 96}},{key:"getRem",value:function(){return this.document.rootEmSize}},{key:"getEm",value:function(){return this.document.emSize}},{key:"getUnits",value:function(){return this.getString().replace(/[0-9\.\-]/g,"")}},{key:"getPixels",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(!this.hasValue())return 0;var r="boolean"===typeof t?[void 0,t]:[t],n=i()(r,2),a=n[0],o=n[1],u=this.document.screen.viewPort;switch(!0){case this.isString(/vmin$/):return this.getNumber()/100*Math.min(u.computeSize("x"),u.computeSize("y"));case this.isString(/vmax$/):return this.getNumber()/100*Math.max(u.computeSize("x"),u.computeSize("y"));case this.isString(/vw$/):return this.getNumber()/100*u.computeSize("x");case this.isString(/vh$/):return this.getNumber()/100*u.computeSize("y");case this.isString(/rem$/):return this.getNumber()*this.getRem();case this.isString(/em$/):return this.getNumber()*this.getEm();case this.isString(/ex$/):return this.getNumber()*this.getEm()/2;case this.isString(/px$/):return this.getNumber();case this.isString(/pt$/):return this.getNumber()*this.getDpi()*(1/72);case this.isString(/pc$/):return 15*this.getNumber();case this.isString(/cm$/):return this.getNumber()*this.getDpi()/2.54;case this.isString(/mm$/):return this.getNumber()*this.getDpi()/25.4;case this.isString(/in$/):return this.getNumber()*this.getDpi();case this.isString(/%$/)&&o:return this.getNumber()*this.getEm();case this.isString(/%$/):return this.getNumber()*u.computeSize(a);default:var s=this.getNumber();return e&&s<1?s*u.computeSize(a):s}}},{key:"getMilliseconds",value:function(){return this.hasValue()?this.isString(/ms$/)?this.getNumber():1e3*this.getNumber():0}},{key:"getRadians",value:function(){if(!this.hasValue())return 0;switch(!0){case this.isString(/deg$/):return this.getNumber()*(Math.PI/180);case this.isString(/grad$/):return this.getNumber()*(Math.PI/200);case this.isString(/rad$/):return this.getNumber();default:return this.getNumber()*(Math.PI/180)}}},{key:"getDefinition",value:function(){var t=this.getString(),e=t.match(/#([^\)'"]+)/);return e&&(e=e[1]),e||(e=t),this.document.definitions[e]}},{key:"getFillStyleDefinition",value:function(t,e){var r=this.getDefinition();if(!r)return null;if("function"===typeof r.createGradient)return r.createGradient(this.document.ctx,t,e);if("function"===typeof r.createPattern){if(r.getHrefAttribute().hasValue()){var n=r.getAttribute("patternTransform");r=r.getHrefAttribute().getDefinition(),n.hasValue()&&r.getAttribute("patternTransform",!0).setValue(n.value)}return r.createPattern(this.document.ctx,t,e)}return null}},{key:"getTextBaseline",value:function(){return this.hasValue()?t.textBaselineMapping[this.getString()]:null}},{key:"addOpacity",value:function(e){for(var r=this.getColor(),n=r.length,i=0,a=0;a1&&void 0!==arguments[1]?arguments[1]:0,n=L(e),a=i()(n,2),o=a[0],u=void 0===o?r:o,s=a[1],c=void 0===s?r:s;return new t(u,c)}},{key:"parseScale",value:function(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1,n=L(e),a=i()(n,2),o=a[0],u=void 0===o?r:o,s=a[1],c=void 0===s?u:s;return new t(u,c)}},{key:"parsePath",value:function(e){for(var r=L(e),n=r.length,i=[],a=0;a0}},{key:"runEvents",value:function(){if(this.working){var t=this.screen,e=this.events,r=this.eventElements,n=t.ctx.canvas.style;n&&(n.cursor=""),e.forEach((function(t,e){var n=t.run,i=r[e];while(i)n(i),i=i.parent})),this.events=[],this.eventElements=[]}}},{key:"checkPath",value:function(t,e){if(this.working&&e){var r=this.events,n=this.eventElements;r.forEach((function(r,i){var a=r.x,o=r.y;!n[i]&&e.isPointInPath&&e.isPointInPath(a,o)&&(n[i]=t)}))}}},{key:"checkBoundingBox",value:function(t,e){if(this.working&&e){var r=this.events,n=this.eventElements;r.forEach((function(r,i){var a=r.x,o=r.y;!n[i]&&e.isPointInBox(a,o)&&(n[i]=t)}))}}},{key:"mapXY",value:function(t,e){var r=this.screen,n=r.window,i=r.ctx,a=new ct(t,e),o=i.canvas;while(o)a.x-=o.offsetLeft,a.y-=o.offsetTop,o=o.offsetParent;return n.scrollX&&(a.x+=n.scrollX),n.scrollY&&(a.y+=n.scrollY),a}},{key:"onClick",value:function(t){var e=this.mapXY((t||event).clientX,(t||event).clientY),r=e.x,n=e.y;this.events.push({type:"onclick",x:r,y:n,run:function(t){t.onClick&&t.onClick()}})}},{key:"onMouseMove",value:function(t){var e=this.mapXY((t||event).clientX,(t||event).clientY),r=e.x,n=e.y;this.events.push({type:"onmousemove",x:r,y:n,run:function(t){t.onMouseMove&&t.onMouseMove()}})}}]),t}(),ft="undefined"!==typeof window?window:null,ht="undefined"!==typeof fetch?fetch.bind(void 0):null,dt=function(){function t(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=r.fetch,i=void 0===n?ht:n,a=r.window,o=void 0===a?ft:a;h()(this,t),this.ctx=e,this.FRAMERATE=30,this.MAX_VIRTUAL_PIXELS=3e4,this.CLIENT_WIDTH=800,this.CLIENT_HEIGHT=600,this.viewPort=new st,this.mouse=new lt(this),this.animations=[],this.waits=[],this.frameDuration=0,this.isReadyLock=!1,this.isFirstRender=!0,this.intervalId=null,this.window=o,this.fetch=i}return p()(t,[{key:"wait",value:function(t){this.waits.push(t)}},{key:"ready",value:function(){return this.readyPromise?this.readyPromise:Promise.resolve()}},{key:"isReady",value:function(){if(this.isReadyLock)return!0;var t=this.waits.every((function(t){return t()}));return t&&(this.waits=[],this.resolveReady&&this.resolveReady()),this.isReadyLock=t,t}},{key:"setDefaults",value:function(t){t.strokeStyle="rgba(0,0,0,0)",t.lineCap="butt",t.lineJoin="miter",t.miterLimit=4}},{key:"setViewBox",value:function(t){var e=t.document,r=t.ctx,n=t.aspectRatio,a=t.width,o=t.desiredWidth,u=t.height,s=t.desiredHeight,c=t.minX,l=void 0===c?0:c,f=t.minY,h=void 0===f?0:f,d=t.refX,p=t.refY,g=t.clip,y=void 0!==g&&g,v=t.clipX,m=void 0===v?0:v,b=t.clipY,x=void 0===b?0:b,w=V(n).replace(/^defer\s/,""),k=w.split(" "),S=i()(k,2),P=S[0],R=S[1],A=P||"xMidYMid",C=R||"meet",E=a/o,M=u/s,D=Math.min(E,M),T=Math.max(E,M),O=o,N=s;"meet"===C&&(O*=D,N*=D),"slice"===C&&(O*=T,N*=T);var L=new ut(e,"refX",d),I=new ut(e,"refY",p),z=L.hasValue()&&I.hasValue();if(z&&r.translate(-D*L.getPixels("x"),-D*I.getPixels("y")),y){var B=D*m,j=D*x;r.beginPath(),r.moveTo(B,j),r.lineTo(a,j),r.lineTo(a,u),r.lineTo(B,u),r.closePath(),r.clip()}if(!z){var F="meet"===C&&D===M,$="slice"===C&&T===M,_="meet"===C&&D===E,q="slice"===C&&T===E;/^xMid/.test(A)&&(F||$)&&r.translate(a/2-O/2,0),/YMid$/.test(A)&&(_||q)&&r.translate(0,u/2-N/2),/^xMax/.test(A)&&(F||$)&&r.translate(a-O,0),/YMax$/.test(A)&&(_||q)&&r.translate(0,u-N)}switch(!0){case"none"===A:r.scale(E,M);break;case"meet"===C:r.scale(D,D);break;case"slice"===C:r.scale(T,T);break}r.translate(-l,-h)}},{key:"start",value:function(t){var e=this,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=r.enableRedraw,i=void 0!==n&&n,a=r.ignoreMouse,o=void 0!==a&&a,u=r.ignoreAnimation,s=void 0!==u&&u,c=r.ignoreDimensions,l=void 0!==c&&c,f=r.ignoreClear,h=void 0!==f&&f,d=r.forceRedraw,p=r.scaleWidth,g=r.scaleHeight,v=r.offsetX,m=r.offsetY,b=this.FRAMERATE,x=this.mouse,w=1e3/b;if(this.frameDuration=w,this.readyPromise=new Promise((function(t){e.resolveReady=t})),this.isReady()&&this.render(t,l,h,p,g,v,m),i){var k=Date.now(),S=k,P=0,R=function r(){k=Date.now(),P=k-S,P>=w&&(S=k-P%w,e.shouldUpdate(s,d)&&(e.render(t,l,h,p,g,v,m),x.runEvents())),e.intervalId=y()(r)};o||x.start(),this.intervalId=y()(R)}}},{key:"stop",value:function(){this.intervalId&&(y.a.cancel(this.intervalId),this.intervalId=null),this.mouse.stop()}},{key:"shouldUpdate",value:function(t,e){if(!t){var r=this.frameDuration,n=this.animations.reduce((function(t,e){return e.update(r)||t}),!1);if(n)return!0}return!("function"!==typeof e||!e())||(!(this.isReadyLock||!this.isReady())||!!this.mouse.hasEvents())}},{key:"render",value:function(t,e,r,n,i,a,o){var u=this.CLIENT_WIDTH,s=this.CLIENT_HEIGHT,c=this.viewPort,l=this.ctx,f=this.isFirstRender,h=l.canvas;c.clear(),h.width&&h.height?c.setCurrent(h.width,h.height):c.setCurrent(u,s);var d=t.getStyle("width"),p=t.getStyle("height");!e&&(f||"number"!==typeof n&&"number"!==typeof i)&&(d.hasValue()&&(h.width=d.getPixels("x"),h.style&&(h.style.width="".concat(h.width,"px"))),p.hasValue()&&(h.height=p.getPixels("y"),h.style&&(h.style.height="".concat(h.height,"px"))));var g=h.clientWidth||h.width,y=h.clientHeight||h.height;if(e&&d.hasValue()&&p.hasValue()&&(g=d.getPixels("x"),y=p.getPixels("y")),c.setCurrent(g,y),"number"===typeof a&&t.getAttribute("x",!0).setValue(a),"number"===typeof o&&t.getAttribute("y",!0).setValue(o),"number"===typeof n||"number"===typeof i){var v=L(t.getAttribute("viewBox").getString()),m=0,b=0;if("number"===typeof n){var x=t.getStyle("width");x.hasValue()?m=x.getPixels("x")/n:isNaN(v[2])||(m=v[2]/n)}if("number"===typeof i){var w=t.getStyle("height");w.hasValue()?b=w.getPixels("y")/i:isNaN(v[3])||(b=v[3]/i)}m||(m=b),b||(b=m),t.getAttribute("width",!0).setValue(n),t.getAttribute("height",!0).setValue(i);var k=t.getStyle("transform",!0,!0);k.setValue("".concat(k.getString()," scale(").concat(1/m,", ").concat(1/b,")"))}r||l.clearRect(0,0,g,y),t.render(l),f&&(this.isFirstRender=!1)}}]),t}();dt.defaultWindow=ft,dt.defaultFetch=ht;var pt=dt.defaultFetch,gt="undefined"!==typeof DOMParser?DOMParser:null,yt=function(){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=e.fetch,n=void 0===r?pt:r,i=e.DOMParser,a=void 0===i?gt:i;h()(this,t),this.fetch=n,this.DOMParser=a}return p()(t,[{key:"parse",value:function(){var t=s()(o.a.mark((function t(e){return o.a.wrap((function(t){while(1)switch(t.prev=t.next){case 0:if(!/^2&&void 0!==arguments[2]?arguments[2]:[];h()(this,t),this.type="rotate",this.angle=null,this.cx=0,this.cy=0;var i=L(r);this.angle=new ut(e,"angle",i[0]),this.cx=(i[1]||0)+(n[0]||0),this.cy=(i[2]||0)+(n[1]||0)}return p()(t,[{key:"apply",value:function(t){var e=this.cx,r=this.cy,n=this.angle;t.translate(e,r),t.rotate(n.getRadians()),t.translate(-e,-r)}},{key:"unapply",value:function(t){var e=this.cx,r=this.cy,n=this.angle;t.translate(e,r),t.rotate(-1*n.getRadians()),t.translate(-e,-r)}},{key:"applyToPoint",value:function(t){var e=this.cx,r=this.cy,n=this.angle,i=n.getRadians();t.applyTransform([1,0,0,1,e||0,r||0]),t.applyTransform([Math.cos(i),Math.sin(i),-Math.sin(i),Math.cos(i),0,0]),t.applyTransform([1,0,0,1,-e||0,-r||0])}}]),t}(),bt=function(){function t(e,r){h()(this,t),this.type="scale",this.scale=null;var n=ct.parseScale(r);0!==n.x&&0!==n.y||(n.x=Y,n.y=Y),this.scale=n}return p()(t,[{key:"apply",value:function(t){var e=this.scale,r=e.x,n=e.y;t.scale(r,n||r)}},{key:"unapply",value:function(t){var e=this.scale,r=e.x,n=e.y;t.scale(1/r,1/n||r)}},{key:"applyToPoint",value:function(t){var e=this.scale,r=e.x,n=e.y;t.applyTransform([r||0,0,0,n||0,0,0])}}]),t}(),xt=function(){function t(e,r){h()(this,t),this.type="matrix",this.matrix=[],this.matrix=L(r)}return p()(t,[{key:"apply",value:function(t){var e=this.matrix;t.transform(e[0],e[1],e[2],e[3],e[4],e[5])}},{key:"unapply",value:function(t){var e=this.matrix,r=e[0],n=e[2],i=e[4],a=e[1],o=e[3],u=e[5],s=0,c=0,l=1,f=1/(r*(o*l-u*c)-n*(a*l-u*s)+i*(a*c-o*s));t.transform(f*(o*l-u*c),f*(u*s-a*l),f*(i*c-n*l),f*(r*l-i*s),f*(n*u-i*o),f*(i*a-r*u))}},{key:"applyToPoint",value:function(t){t.applyTransform(this.matrix)}}]),t}();function wt(t){return function(){var e,r=k()(t);if(kt()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function kt(){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}}var St=function(t){P()(r,t);var e=wt(r);function r(t,n){var i;return h()(this,r),i=e.call(this,t,n),i.type="skew",i.angle=null,i.angle=new ut(t,"angle",n),i}return r}(xt);function Pt(t){return function(){var e,r=k()(t);if(Rt()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function Rt(){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}}var At=function(t){P()(r,t);var e=Pt(r);function r(t,n){var i;return h()(this,r),i=e.call(this,t,n),i.type="skewX",i.matrix=[1,0,Math.tan(i.angle.getRadians()),1,0,0],i}return r}(St);function Ct(t){return function(){var e,r=k()(t);if(Et()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function Et(){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}}var Mt=function(t){P()(r,t);var e=Ct(r);function r(t,n){var i;return h()(this,r),i=e.call(this,t,n),i.type="skewY",i.matrix=[1,Math.tan(i.angle.getRadians()),0,1,0,0],i}return r}(St);function Dt(t){return V(t).trim().replace(/\)([a-zA-Z])/g,") $1").replace(/\)(\s?,\s?)/g,") ").split(/\s(?=[a-z])/)}function Tt(t){var e=t.split("("),r=i()(e,2),n=r[0],a=r[1];return[n.trim(),a.trim().replace(")","")]}var Vt=function(){function t(e,r,n){var a=this;h()(this,t),this.document=e,this.transforms=[];var o=Dt(r),u=n?L(n):[];o.forEach((function(e){if("none"!==e){var r=Tt(e),n=i()(r,2),o=n[0],s=n[1],c=t.transformTypes[o];"undefined"!==typeof c&&a.transforms.push(new c(a.document,s,u))}}))}return p()(t,[{key:"apply",value:function(t){for(var e=this.transforms,r=e.length,n=0;n=0;n--)e[n].unapply(t)}},{key:"applyToPoint",value:function(t){for(var e=this.transforms,r=e.length,n=0;n2&&void 0!==arguments[2]&&arguments[2];if(h()(this,t),this.document=e,this.node=r,this.captureTextNodes=a,this.attributes={},this.styles={},this.stylesSpecificity={},this.animationFrozen=!1,this.animationFrozenValue="",this.parent=null,this.children=[],r&&1===r.nodeType){if(Array.from(r.attributes).forEach((function(t){var r=z(t.nodeName);n.attributes[r]=new ut(e,r,t.value)})),this.addStylesFromStyleDefinition(),this.getAttribute("style").hasValue()){var o=this.getAttribute("style").getString().split(";").map((function(t){return t.trim()}));o.forEach((function(t){if(t){var r=t.split(":").map((function(t){return t.trim()})),a=i()(r,2),o=a[0],u=a[1];n.styles[o]=new ut(e,o,u)}}))}var u=e.definitions,s=this.getAttribute("id");s.hasValue()&&(u[s.getValue()]||(u[s.getValue()]=this)),Array.from(r.childNodes).forEach((function(t){if(1===t.nodeType)n.addChild(t);else if(a&&(3===t.nodeType||4===t.nodeType)){var r=e.createTextNode(t);r.getText().length>0&&n.addChild(r)}}))}}return p()(t,[{key:"getAttribute",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],r=this.attributes[t];if(!r&&e){var n=new ut(this.document,t,"");return this.attributes[t]=n,n}return r||ut.empty(this.document)}},{key:"getHrefAttribute",value:function(){for(var t in this.attributes)if("href"===t||/:href$/.test(t))return this.attributes[t];return ut.empty(this.document)}},{key:"getStyle",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],r=arguments.length>2&&void 0!==arguments[2]&&arguments[2],n=this.styles[t];if(n)return n;var i=this.getAttribute(t);if(i&&i.hasValue())return this.styles[t]=i,i;if(!r){var a=this.parent;if(a){var o=a.getStyle(t);if(o&&o.hasValue())return o}}if(e){var u=new ut(this.document,t,"");return this.styles[t]=u,u}return n||ut.empty(this.document)}},{key:"render",value:function(t){if("none"!==this.getStyle("display").getString()&&"hidden"!==this.getStyle("visibility").getString()){if(t.save(),this.getStyle("mask").hasValue()){var e=this.getStyle("mask").getDefinition();e&&(this.applyEffects(t),e.apply(t,this))}else if("none"!==this.getStyle("filter").getValue("none")){var r=this.getStyle("filter").getDefinition();r&&(this.applyEffects(t),r.apply(t,this))}else this.setContext(t),this.renderChildren(t),this.clearContext(t);t.restore()}}},{key:"setContext",value:function(t){}},{key:"applyEffects",value:function(t){var e=Vt.fromElement(this.document,this);e&&e.apply(t);var r=this.getStyle("clip-path",!1,!0);if(r.hasValue()){var n=r.getDefinition();n&&n.apply(t)}}},{key:"clearContext",value:function(t){}},{key:"renderChildren",value:function(t){this.children.forEach((function(e){e.render(t)}))}},{key:"addChild",value:function(e){var r=e instanceof t?e:this.document.createElement(e);r.parent=this,t.ignoreChildTypes.includes(r.type)||this.children.push(r)}},{key:"matchesSelector",value:function(t){var e=this.node;if("function"===typeof e.matches)return e.matches(t);var r=e.getAttribute("class");return!(!r||""===r)&&r.split(" ").some((function(e){if(".".concat(e)===t)return!0}))}},{key:"addStylesFromStyleDefinition",value:function(){var t=this.document,e=t.styles,r=t.stylesSpecificity;for(var n in e)if("@"!==n[0]&&this.matchesSelector(n)){var i=e[n],a=r[n];if(i)for(var o in i){var u=this.stylesSpecificity[o];"undefined"===typeof u&&(u="000"),a>=u&&(this.styles[o]=i[o],this.stylesSpecificity[o]=a)}}}},{key:"removeStyles",value:function(t,e){var r=e.reduce((function(e,r){var n=t.getStyle(r);if(!n.hasValue())return e;var i=n.getString();return n.setValue(""),[].concat(A()(e),[[r,i]])}),[]);return r}},{key:"restoreStyles",value:function(t,e){e.forEach((function(e){var r=i()(e,2),n=r[0],a=r[1];t.getStyle(n,!0).setValue(a)}))}}]),t}();function Nt(t){return function(){var e,r=k()(t);if(Lt()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function Lt(){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}}Ot.ignoreChildTypes=["title"];var It=function(t){P()(r,t);var e=Nt(r);function r(t,n,i){var a;return h()(this,r),a=e.call(this,t,n,i),a}return r}(Ot);function zt(t){var e=t.trim();return/^('|")/.test(e)?e:'"'.concat(e,'"')}function Bt(e){return"undefined"===typeof t?e:e.trim().split(",").map(zt).join(",")}function jt(t){if(!t)return"";var e=t.trim().toLowerCase();switch(e){case"normal":case"italic":case"oblique":case"inherit":case"initial":case"unset":return e;default:return/^oblique\s+(-|)\d+deg$/.test(e)?e:""}}function Ft(t){if(!t)return"";var e=t.trim().toLowerCase();switch(e){case"normal":case"bold":case"lighter":case"bolder":case"inherit":case"initial":case"unset":return e;default:return/^[\d.]+$/.test(e)?e:""}}var $t=function(){function t(e,r,n,i,a,o){h()(this,t);var u=o?"string"===typeof o?t.parse(o):o:{};this.fontFamily=a||u.fontFamily,this.fontSize=i||u.fontSize,this.fontStyle=e||u.fontStyle,this.fontWeight=n||u.fontWeight,this.fontVariant=r||u.fontVariant}return p()(t,[{key:"toString",value:function(){return[jt(this.fontStyle),this.fontVariant,Ft(this.fontWeight),this.fontSize,Bt(this.fontFamily)].join(" ").trim()}}],[{key:"parse",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",r=arguments.length>1?arguments[1]:void 0,n="",a="",o="",u="",s="",c=V(e).trim().split(" "),l={fontSize:!1,fontStyle:!1,fontWeight:!1,fontVariant:!1};return c.forEach((function(e){switch(!0){case!l.fontStyle&&t.styles.includes(e):"inherit"!==e&&(n=e),l.fontStyle=!0;break;case!l.fontVariant&&t.variants.includes(e):"inherit"!==e&&(a=e),l.fontStyle=!0,l.fontVariant=!0;break;case!l.fontWeight&&t.weights.includes(e):"inherit"!==e&&(o=e),l.fontStyle=!0,l.fontVariant=!0,l.fontWeight=!0;break;case!l.fontSize:if("inherit"!==e){var r=e.split("/"),c=i()(r,1);u=c[0]}l.fontStyle=!0,l.fontVariant=!0,l.fontWeight=!0,l.fontSize=!0;break;default:"inherit"!==e&&(s+=e)}})),new t(n,a,o,u,s,r)}}]),t}();$t.styles="normal|italic|oblique|inherit",$t.variants="normal|small-caps|inherit",$t.weights="normal|bold|bolder|lighter|100|200|300|400|500|600|700|800|900|inherit";var _t=function(){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Number.NaN,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Number.NaN,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.NaN,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:Number.NaN;h()(this,t),this.x1=e,this.y1=r,this.x2=n,this.y2=i,this.addPoint(e,r),this.addPoint(n,i)}return p()(t,[{key:"addPoint",value:function(t,e){"undefined"!==typeof t&&((isNaN(this.x1)||isNaN(this.x2))&&(this.x1=t,this.x2=t),tthis.x2&&(this.x2=t)),"undefined"!==typeof e&&((isNaN(this.y1)||isNaN(this.y2))&&(this.y1=e,this.y2=e),ethis.y2&&(this.y2=e))}},{key:"addX",value:function(t){this.addPoint(t,null)}},{key:"addY",value:function(t){this.addPoint(null,t)}},{key:"addBoundingBox",value:function(t){if(t){var e=t.x1,r=t.y1,n=t.x2,i=t.y2;this.addPoint(e,r),this.addPoint(n,i)}}},{key:"sumCubic",value:function(t,e,r,n,i){return Math.pow(1-t,3)*e+3*Math.pow(1-t,2)*t*r+3*(1-t)*Math.pow(t,2)*n+Math.pow(t,3)*i}},{key:"bezierCurveAdd",value:function(t,e,r,n,i){var a=6*e-12*r+6*n,o=-3*e+9*r-9*n+3*i,u=3*r-3*e;if(0!==o){var s=Math.pow(a,2)-4*u*o;if(!(s<0)){var c=(-a+Math.sqrt(s))/(2*o);01&&void 0!==arguments[1]&&arguments[1];if(!e){var r=this.getStyle("fill"),n=this.getStyle("fill-opacity"),i=this.getStyle("stroke"),a=this.getStyle("stroke-opacity");if(r.isUrlDefinition()){var o=r.getFillStyleDefinition(this,n);o&&(t.fillStyle=o)}else if(r.hasValue()){"currentColor"===r.getString()&&r.setValue(this.getStyle("color").getColor());var u=r.getColor();"inherit"!==u&&(t.fillStyle="none"===u?"rgba(0,0,0,0)":u)}if(n.hasValue()){var s=new ut(this.document,"fill",t.fillStyle).addOpacity(n).getColor();t.fillStyle=s}if(i.isUrlDefinition()){var c=i.getFillStyleDefinition(this,a);c&&(t.strokeStyle=c)}else if(i.hasValue()){"currentColor"===i.getString()&&i.setValue(this.getStyle("color").getColor());var l=i.getString();"inherit"!==l&&(t.strokeStyle="none"===l?"rgba(0,0,0,0)":l)}if(a.hasValue()){var f=new ut(this.document,"stroke",t.strokeStyle).addOpacity(a).getString();t.strokeStyle=f}var h=this.getStyle("stroke-width");if(h.hasValue()){var d=h.getPixels();t.lineWidth=d||Y}var p=this.getStyle("stroke-linecap"),g=this.getStyle("stroke-linejoin"),y=this.getStyle("stroke-miterlimit"),v=this.getStyle("paint-order"),m=this.getStyle("stroke-dasharray"),b=this.getStyle("stroke-dashoffset");if(p.hasValue()&&(t.lineCap=p.getString()),g.hasValue()&&(t.lineJoin=g.getString()),y.hasValue()&&(t.miterLimit=y.getNumber()),v.hasValue()&&(t.paintOrder=v.getValue()),m.hasValue()&&"none"!==m.getString()){var x=L(m.getString());"undefined"!==typeof t.setLineDash?t.setLineDash(x):"undefined"!==typeof t.webkitLineDash?t.webkitLineDash=x:"undefined"===typeof t.mozDash||1===x.length&&0===x[0]||(t.mozDash=x);var w=b.getPixels();"undefined"!==typeof t.lineDashOffset?t.lineDashOffset=w:"undefined"!==typeof t.webkitLineDashOffset?t.webkitLineDashOffset=w:"undefined"!==typeof t.mozDashOffset&&(t.mozDashOffset=w)}}if(this.modifiedEmSizeStack=!1,"undefined"!==typeof t.font){var k=this.getStyle("font"),S=this.getStyle("font-style"),P=this.getStyle("font-variant"),R=this.getStyle("font-weight"),A=this.getStyle("font-size"),C=this.getStyle("font-family"),E=new $t(S.getString(),P.getString(),R.getString(),A.hasValue()?"".concat(A.getPixels(!0),"px"):"",C.getString(),$t.parse(k.getString(),t.font));S.setValue(E.fontStyle),P.setValue(E.fontVariant),R.setValue(E.fontWeight),A.setValue(E.fontSize),C.setValue(E.fontFamily),t.font=E.toString(),A.isPixels()&&(this.document.emSize=A.getPixels(),this.modifiedEmSizeStack=!0)}e||(this.applyEffects(t),t.globalAlpha=this.calculateOpacity())}},{key:"clearContext",value:function(t){E()(k()(r.prototype),"clearContext",this).call(this,t),this.modifiedEmSizeStack&&this.document.popEmSize()}}]),r}(Ot);function Xt(t){return function(){var e,r=k()(t);if(Ut()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function Ut(){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}}var Ht=function(t){P()(r,t);var e=Xt(r);function r(t,n,i){var a;return h()(this,r),a=e.call(this,t,n,(this instanceof r?this.constructor:void 0)===r||i),a.type="text",a.x=0,a.y=0,a.measureCache=-1,a}return p()(r,[{key:"setContext",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];E()(k()(r.prototype),"setContext",this).call(this,t,e);var n=this.getStyle("dominant-baseline").getTextBaseline()||this.getStyle("alignment-baseline").getTextBaseline();n&&(t.textBaseline=n)}},{key:"initializeCoordinates",value:function(t){this.x=this.getAttribute("x").getPixels("x"),this.y=this.getAttribute("y").getPixels("y");var e=this.getAttribute("dx"),r=this.getAttribute("dy");e.hasValue()&&(this.x+=e.getPixels("x")),r.hasValue()&&(this.y+=r.getPixels("y")),this.x+=this.getAnchorDelta(t,this,0)}},{key:"getBoundingBox",value:function(t){var e=this;if("text"!==this.type)return this.getTElementBoundingBox(t);this.initializeCoordinates(t);var r=null;return this.children.forEach((function(n,i){var a=e.getChildBoundingBox(t,e,e,i);r?r.addBoundingBox(a):r=a})),r}},{key:"getFontSize",value:function(){var t=this.document,e=this.parent,r=$t.parse(t.ctx.font).fontSize,n=e.getStyle("font-size").getNumber(r);return n}},{key:"getTElementBoundingBox",value:function(t){var e=this.getFontSize();return new _t(this.x,this.y-e,this.x+this.measureText(t),this.y)}},{key:"getGlyph",value:function(t,e,r){var n=e[r],i=null;if(t.isArabic){var a=e.length,o=e[r-1],u=e[r+1],s="isolated";(0===r||" "===o)&&r0&&" "!==o&&r0&&" "!==o&&(r===a-1||" "===u)&&(s="initial"),"undefined"!==typeof t.glyphs[n]&&(i=t.glyphs[n][s],i||"glyph"!==t.glyphs[n].type||(i=t.glyphs[n]))}else i=t.glyphs[n];return i||(i=t.missingGlyph),i}},{key:"getText",value:function(){return""}},{key:"getTextFromNode",value:function(t){var e=t||this.node,r=Array.from(e.parentNode.childNodes),n=r.indexOf(e),i=r.length-1,a=V(e.value||e.text||e.textContent||"");return 0===n&&(a=O(a)),n===i&&(a=N(a)),a}},{key:"renderChildren",value:function(t){var e=this;if("text"===this.type){this.initializeCoordinates(t),this.children.forEach((function(r,n){e.renderChild(t,e,e,n)}));var r=this.document.screen.mouse;r.isWorking()&&r.checkBoundingBox(this,this.getBoundingBox(t))}else this.renderTElementChildren(t)}},{key:"renderTElementChildren",value:function(t){var e=this.document,r=this.parent,n=this.getText(),i=r.getStyle("font-family").getDefinition();if(i)for(var a=i.fontFace.unitsPerEm,o=$t.parse(e.ctx.font),u=r.getStyle("font-size").getNumber(o.fontSize),s=r.getStyle("font-style").getString(o.fontStyle),c=u/a,l=i.isRTL?n.split("").reverse().join(""):n,f=L(r.getAttribute("dx").getString()),h=l.length,d=0;dr&&o.getAttribute("x").hasValue()||o.getAttribute("text-anchor").hasValue())break;u+=o.measureTextRecursive(t)}return-1*("end"===n?u:u/2)}return 0}},{key:"adjustChildCoordinates",value:function(t,e,r,n){var i=r.children[n];if("function"!==typeof i.measureText)return i;t.save(),i.setContext(t,!0);var a=i.getAttribute("x"),o=i.getAttribute("y"),u=i.getAttribute("dx"),s=i.getAttribute("dy"),c=i.getAttribute("text-anchor").getString("start");if(0===n&&"textNode"!==i.type&&(a.hasValue()||a.setValue(e.getAttribute("x").getValue("0")),o.hasValue()||o.setValue(e.getAttribute("y").getValue("0")),u.hasValue()||u.setValue(e.getAttribute("dx").getValue("0")),s.hasValue()||s.setValue(e.getAttribute("dy").getValue("0"))),a.hasValue()){if(i.x=a.getPixels("x")+e.getAnchorDelta(t,r,n),"start"!==c){var l=i.measureTextRecursive(t);i.x+=-1*("end"===c?l:l/2)}u.hasValue()&&(i.x+=u.getPixels("x"))}else{if("start"!==c){var f=i.measureTextRecursive(t);e.x+=-1*("end"===c?f:f/2)}u.hasValue()&&(e.x+=u.getPixels("x")),i.x=e.x}return e.x=i.x+i.measureText(t),o.hasValue()?(i.y=o.getPixels("y"),s.hasValue()&&(i.y+=s.getPixels("y"))):(s.hasValue()&&(e.y+=s.getPixels("y")),i.y=e.y),e.y=i.y,i.clearContext(t),t.restore(),i}},{key:"getChildBoundingBox",value:function(t,e,r,n){var i=this.adjustChildCoordinates(t,e,r,n),a=i.getBoundingBox(t);return a?(i.children.forEach((function(r,n){var o=e.getChildBoundingBox(t,e,i,n);a.addBoundingBox(o)})),a):null}},{key:"renderChild",value:function(t,e,r,n){var i=this.adjustChildCoordinates(t,e,r,n);i.render(t),i.children.forEach((function(r,n){e.renderChild(t,e,i,n)}))}},{key:"measureTextRecursive",value:function(t){var e=this.children.reduce((function(e,r){return e+r.measureTextRecursive(t)}),this.measureText(t));return e}},{key:"measureText",value:function(t){var e=this.measureCache;if(~e)return e;var r=this.getText(),n=this.measureTargetText(t,r);return this.measureCache=n,n}},{key:"measureTargetText",value:function(t,e){if(!e.length)return 0;var r=this.parent,n=r.getStyle("font-family").getDefinition();if(n){for(var i=this.getFontSize(),a=n.isRTL?e.split("").reverse().join(""):e,o=L(r.getAttribute("dx").getString()),u=a.length,s=0,c=0;c0?"":a.getTextFromNode(),a}return p()(r,[{key:"getText",value:function(){return this.text}}]),r}(Ht);function Jt(t){return function(){var e,r=k()(t);if(Kt()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function Kt(){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}}var te=function(t){P()(r,t);var e=Jt(r);function r(){var t;return h()(this,r),t=e.apply(this,arguments),t.type="textNode",t}return r}(Zt);function ee(t){var e=t.replace(/,/gm," ").replace(/([MmZzLlHhVvCcSsQqTtAa])([^\s])/gm,"$1 $2").replace(/([MmZzLlHhVvCcSsQqTtAa])([^\s])/gm,"$1 $2").replace(/([^\s])([MmZzLlHhVvCcSsQqTtAa])/gm,"$1 $2").replace(/([0-9])([+\-])/gm,"$1 $2").replace(/(\.[0-9]*)(\.)/gm,"$1 $2").replace(/(\.[0-9]*)(\.)/gm,"$1 $2").replace(/([Aa](?:\s+(?:[0-9]*\.)?[0-9]+){3})\s+([01])\s*([01])/gm,"$1 $2 $3 ");return V(e).trim()}var re=function(){function t(e){h()(this,t),this.control=null,this.start=null,this.current=null,this.command="",this.tokens=[],this.i=-1,this.previousCommand="",this.points=[],this.angles=[],this.tokens=ee(e).split(" ")}return p()(t,[{key:"reset",value:function(){this.i=-1,this.command="",this.previousCommand="",this.start=new ct(0,0),this.control=new ct(0,0),this.current=new ct(0,0),this.points=[],this.angles=[]}},{key:"isEnd",value:function(){var t=this.i,e=this.tokens;return t>=e.length-1}},{key:"isCommandOrEnd",value:function(){if(this.isEnd())return!0;var t=this.i,e=this.tokens;return/^[A-Za-z]$/.test(e[t+1])}},{key:"isRelativeCommand",value:function(){switch(this.command){case"m":case"l":case"h":case"v":case"c":case"s":case"q":case"t":case"a":case"z":return!0;default:return!1}}},{key:"getToken",value:function(){return this.i++,this.tokens[this.i]}},{key:"getScalar",value:function(){return parseFloat(this.getToken())}},{key:"nextCommand",value:function(){this.previousCommand=this.command,this.command=this.getToken()}},{key:"getPoint",value:function(){var t=new ct(this.getScalar(),this.getScalar());return this.makeAbsolute(t)}},{key:"getAsControlPoint",value:function(){var t=this.getPoint();return this.control=t,t}},{key:"getAsCurrentPoint",value:function(){var t=this.getPoint();return this.current=t,t}},{key:"getReflectedControlPoint",value:function(){var t=this.previousCommand.toLowerCase();if("c"!==t&&"s"!==t&&"q"!==t&&"t"!==t)return this.current;var e=this.current,r=e.x,n=e.y,i=this.control,a=i.x,o=i.y,u=new ct(2*r-a,2*n-o);return u}},{key:"makeAbsolute",value:function(t){if(this.isRelativeCommand()){var e=this.current,r=e.x,n=e.y;t.x+=r,t.y+=n}return t}},{key:"addMarker",value:function(t,e,r){var n=this.points,i=this.angles;r&&i.length>0&&!i[i.length-1]&&(i[i.length-1]=n[n.length-1].angleTo(r)),this.addMarkerAngle(t,e?e.angleTo(t):null)}},{key:"addMarkerAngle",value:function(t,e){this.points.push(t),this.angles.push(e)}},{key:"getMarkerPoints",value:function(){return this.points}},{key:"getMarkerAngles",value:function(){for(var t=this.angles,e=t.length,r=0;r1&&(i*=Math.sqrt(f),a*=Math.sqrt(f));var h=(u===s?-1:1)*Math.sqrt((Math.pow(i,2)*Math.pow(a,2)-Math.pow(i,2)*Math.pow(l.y,2)-Math.pow(a,2)*Math.pow(l.x,2))/(Math.pow(i,2)*Math.pow(l.y,2)+Math.pow(a,2)*Math.pow(l.x,2)));isNaN(h)&&(h=0);var d=new ct(h*i*l.y/a,h*-a*l.x/i),p=new ct((n.x+c.x)/2+Math.cos(o)*d.x-Math.sin(o)*d.y,(n.y+c.y)/2+Math.sin(o)*d.x+Math.cos(o)*d.y),g=J([1,0],[(l.x-d.x)/i,(l.y-d.y)/a]),y=[(l.x-d.x)/i,(l.y-d.y)/a],v=[(-l.x-d.x)/i,(-l.y-d.y)/a],m=J(y,v);Z(y,v)<=-1&&(m=Math.PI),Z(y,v)>=1&&(m=0);var b=1-s?1:-1,x=g+b*(m/2),w=new ct(p.x+i*Math.cos(x),p.y+a*Math.sin(x));if(r.addMarkerAngle(w,x-b*Math.PI/2),r.addMarkerAngle(c,x-b*Math.PI),e.addPoint(c.x,c.y),t&&!isNaN(g)&&!isNaN(m)){var k=i>a?i:a,S=i>a?1:i/a,P=i>a?a/i:1;t.translate(p.x,p.y),t.rotate(o),t.scale(S,P),t.arc(0,0,k,g,g+m,Boolean(1-s)),t.scale(1/S,1/P),t.rotate(-o),t.translate(-p.x,-p.y)}}}},{key:"pathZ",value:function(t,e){var r=this.pathParser;t&&e.x1!==e.x2&&e.y1!==e.y2&&t.closePath(),r.current=r.start}}]),r}(Wt);function oe(t){return function(){var e,r=k()(t);if(ue()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function ue(){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}}var se=function(t){P()(r,t);var e=oe(r);function r(){var t;return h()(this,r),t=e.apply(this,arguments),t.type="svg",t.root=!1,t}return p()(r,[{key:"clearContext",value:function(t){E()(k()(r.prototype),"clearContext",this).call(this,t),this.document.screen.viewPort.removeCurrent()}},{key:"setContext",value:function(t){var e=this.document,n=e.screen,i=e.window,a=t.canvas;if(n.setDefaults(t),a.style&&"undefined"!==typeof t.font&&i&&"undefined"!==typeof i.getComputedStyle){t.font=i.getComputedStyle(a).getPropertyValue("font");var o=new ut(e,"fontSize",$t.parse(t.font).fontSize);o.hasValue()&&(e.rootEmSize=o.getPixels("y"),e.emSize=e.rootEmSize)}E()(k()(r.prototype),"setContext",this).call(this,t),this.getAttribute("x").hasValue()||this.getAttribute("x",!0).setValue(0),this.getAttribute("y").hasValue()||this.getAttribute("y",!0).setValue(0),t.translate(this.getAttribute("x").getPixels("x"),this.getAttribute("y").getPixels("y"));var u=n.viewPort,s=u.width,c=u.height;this.getStyle("width").hasValue()||this.getStyle("width",!0).setValue("100%"),this.getStyle("height").hasValue()||this.getStyle("height",!0).setValue("100%"),this.getStyle("color").hasValue()||this.getStyle("color",!0).setValue("black");var l=this.getAttribute("refX"),f=this.getAttribute("refY"),h=this.getAttribute("viewBox"),d=h.hasValue()?L(h.getString()):null,p=!this.root&&"visible"!==this.getAttribute("overflow").getValue("hidden"),g=0,y=0,v=0,m=0;d&&(g=d[0],y=d[1]),this.root||(s=this.getStyle("width").getPixels("x"),c=this.getStyle("height").getPixels("y"),"marker"===this.type&&(v=g,m=y,g=0,y=0)),n.viewPort.setCurrent(s,c),d&&(s=d[2],c=d[3]),e.setViewBox({ctx:t,aspectRatio:this.getAttribute("preserveAspectRatio").getString(),width:n.viewPort.width,desiredWidth:s,height:n.viewPort.height,desiredHeight:c,minX:g,minY:y,refX:l.getValue(),refY:f.getValue(),clip:p,clipX:v,clipY:m}),d&&(n.viewPort.removeCurrent(),n.viewPort.setCurrent(s,c))}},{key:"resize",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:t,r=arguments.length>2&&void 0!==arguments[2]&&arguments[2],n=this.getAttribute("width",!0),i=this.getAttribute("height",!0),a=this.getAttribute("viewBox"),o=this.getAttribute("style"),u=n.getNumber(0),s=i.getNumber(0);if(r)if("string"===typeof r)this.getAttribute("preserveAspectRatio",!0).setValue(r);else{var c=this.getAttribute("preserveAspectRatio");c.hasValue()&&c.setValue(c.getString().replace(/^\s*(\S.*\S)\s*$/,"$1"))}if(n.setValue(t),i.setValue(e),a.hasValue()||a.setValue("0 0 ".concat(u||t," ").concat(s||e)),o.hasValue()){var l=this.getStyle("width"),f=this.getStyle("height");l.hasValue()&&l.setValue("".concat(t,"px")),f.hasValue()&&f.setValue("".concat(e,"px"))}}}]),r}(Wt);function ce(t){return function(){var e,r=k()(t);if(le()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function le(){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}}var fe=function(t){P()(r,t);var e=ce(r);function r(){var t;return h()(this,r),t=e.apply(this,arguments),t.type="rect",t}return p()(r,[{key:"path",value:function(t){var e=this.getAttribute("x").getPixels("x"),r=this.getAttribute("y").getPixels("y"),n=this.getStyle("width").getPixels("x"),i=this.getStyle("height").getPixels("y"),a=this.getAttribute("rx"),o=this.getAttribute("ry"),u=a.getPixels("x"),s=o.getPixels("y");if(a.hasValue()&&!o.hasValue()&&(s=u),o.hasValue()&&!a.hasValue()&&(u=s),u=Math.min(u,n/2),s=Math.min(s,i/2),t){var c=(Math.sqrt(2)-1)/3*4;t.beginPath(),i>0&&n>0&&(t.moveTo(e+u,r),t.lineTo(e+n-u,r),t.bezierCurveTo(e+n-u+c*u,r,e+n,r+s-c*s,e+n,r+s),t.lineTo(e+n,r+i-s),t.bezierCurveTo(e+n,r+i-s+c*s,e+n-u+c*u,r+i,e+n-u,r+i),t.lineTo(e+u,r+i),t.bezierCurveTo(e+u-c*u,r+i,e,r+i-s+c*s,e,r+i-s),t.lineTo(e,r+s),t.bezierCurveTo(e,r+s-c*s,e+u-c*u,r,e+u,r),t.closePath())}return new _t(e,r,e+n,r+i)}},{key:"getMarkers",value:function(){return null}}]),r}(ae);function he(t){return function(){var e,r=k()(t);if(de()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function de(){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}}var pe=function(t){P()(r,t);var e=he(r);function r(){var t;return h()(this,r),t=e.apply(this,arguments),t.type="circle",t}return p()(r,[{key:"path",value:function(t){var e=this.getAttribute("cx").getPixels("x"),r=this.getAttribute("cy").getPixels("y"),n=this.getAttribute("r").getPixels();return t&&n>0&&(t.beginPath(),t.arc(e,r,n,0,2*Math.PI,!1),t.closePath()),new _t(e-n,r-n,e+n,r+n)}},{key:"getMarkers",value:function(){return null}}]),r}(ae);function ge(t){return function(){var e,r=k()(t);if(ye()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function ye(){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}}var ve=function(t){P()(r,t);var e=ge(r);function r(){var t;return h()(this,r),t=e.apply(this,arguments),t.type="ellipse",t}return p()(r,[{key:"path",value:function(t){var e=(Math.sqrt(2)-1)/3*4,r=this.getAttribute("rx").getPixels("x"),n=this.getAttribute("ry").getPixels("y"),i=this.getAttribute("cx").getPixels("x"),a=this.getAttribute("cy").getPixels("y");return t&&r>0&&n>0&&(t.beginPath(),t.moveTo(i+r,a),t.bezierCurveTo(i+r,a+e*n,i+e*r,a+n,i,a+n),t.bezierCurveTo(i-e*r,a+n,i-r,a+e*n,i-r,a),t.bezierCurveTo(i-r,a-e*n,i-e*r,a-n,i,a-n),t.bezierCurveTo(i+e*r,a-n,i+r,a-e*n,i+r,a),t.closePath()),new _t(i-r,a-n,i+r,a+n)}},{key:"getMarkers",value:function(){return null}}]),r}(ae);function me(t){return function(){var e,r=k()(t);if(be()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function be(){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}}var xe=function(t){P()(r,t);var e=me(r);function r(){var t;return h()(this,r),t=e.apply(this,arguments),t.type="line",t}return p()(r,[{key:"getPoints",value:function(){return[new ct(this.getAttribute("x1").getPixels("x"),this.getAttribute("y1").getPixels("y")),new ct(this.getAttribute("x2").getPixels("x"),this.getAttribute("y2").getPixels("y"))]}},{key:"path",value:function(t){var e=this.getPoints(),r=i()(e,2),n=r[0],a=n.x,o=n.y,u=r[1],s=u.x,c=u.y;return t&&(t.beginPath(),t.moveTo(a,o),t.lineTo(s,c)),new _t(a,o,s,c)}},{key:"getMarkers",value:function(){var t=this.getPoints(),e=i()(t,2),r=e[0],n=e[1],a=r.angleTo(n);return[[r,a],[n,a]]}}]),r}(ae);function we(t){return function(){var e,r=k()(t);if(ke()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function ke(){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}}var Se=function(t){P()(r,t);var e=we(r);function r(t,n,i){var a;return h()(this,r),a=e.call(this,t,n,i),a.type="polyline",a.points=[],a.points=ct.parsePath(a.getAttribute("points").getString()),a}return p()(r,[{key:"path",value:function(t){var e=this.points,r=i()(e,1),n=r[0],a=n.x,o=n.y,u=new _t(a,o);return t&&(t.beginPath(),t.moveTo(a,o)),e.forEach((function(e){var r=e.x,n=e.y;u.addPoint(r,n),t&&t.lineTo(r,n)})),u}},{key:"getMarkers",value:function(){var t=this.points,e=t.length-1,r=[];return t.forEach((function(n,i){i!==e&&r.push([n,n.angleTo(t[i+1])])})),r.length>0&&r.push([t[t.length-1],r[r.length-1][1]]),r}}]),r}(ae);function Pe(t){return function(){var e,r=k()(t);if(Re()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function Re(){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}}var Ae=function(t){P()(r,t);var e=Pe(r);function r(){var t;return h()(this,r),t=e.apply(this,arguments),t.type="polygon",t}return p()(r,[{key:"path",value:function(t){var e=E()(k()(r.prototype),"path",this).call(this,t),n=i()(this.points,1),a=n[0],o=a.x,u=a.y;return t&&(t.lineTo(o,u),t.closePath()),e}}]),r}(Se);function Ce(t){return function(){var e,r=k()(t);if(Ee()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function Ee(){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}}var Me=function(t){P()(r,t);var e=Ce(r);function r(){var t;return h()(this,r),t=e.apply(this,arguments),t.type="pattern",t}return p()(r,[{key:"createPattern",value:function(t,e,r){var n=this.getStyle("width").getPixels("x",!0),i=this.getStyle("height").getPixels("y",!0),a=new se(this.document,null);a.attributes.viewBox=new ut(this.document,"viewBox",this.getAttribute("viewBox").getValue()),a.attributes.width=new ut(this.document,"width","".concat(n,"px")),a.attributes.height=new ut(this.document,"height","".concat(i,"px")),a.attributes.transform=new ut(this.document,"transform",this.getAttribute("patternTransform").getValue()),a.children=this.children;var o=this.document.createCanvas(n,i),u=o.getContext("2d"),s=this.getAttribute("x"),c=this.getAttribute("y");s.hasValue()&&c.hasValue()&&u.translate(s.getPixels("x",!0),c.getPixels("y",!0)),r.hasValue()?this.styles["fill-opacity"]=r:Reflect.deleteProperty(this.styles,"fill-opacity");for(var l=-1;l<=1;l++)for(var f=-1;f<=1;f++)u.save(),a.attributes.x=new ut(this.document,"x",l*o.width),a.attributes.y=new ut(this.document,"y",f*o.height),a.render(u),u.restore();var h=t.createPattern(o,"repeat");return h}}]),r}(Ot);function De(t){return function(){var e,r=k()(t);if(Te()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function Te(){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}}var Ve=function(t){P()(r,t);var e=De(r);function r(){var t;return h()(this,r),t=e.apply(this,arguments),t.type="marker",t}return p()(r,[{key:"render",value:function(t,e,r){if(e){var n=e.x,i=e.y,a=this.getAttribute("orient").getValue("auto"),o=this.getAttribute("markerUnits").getValue("strokeWidth");t.translate(n,i),"auto"===a&&t.rotate(r),"strokeWidth"===o&&t.scale(t.lineWidth,t.lineWidth),t.save();var u=new se(this.document,null);u.type=this.type,u.attributes.viewBox=new ut(this.document,"viewBox",this.getAttribute("viewBox").getValue()),u.attributes.refX=new ut(this.document,"refX",this.getAttribute("refX").getValue()),u.attributes.refY=new ut(this.document,"refY",this.getAttribute("refY").getValue()),u.attributes.width=new ut(this.document,"width",this.getAttribute("markerWidth").getValue()),u.attributes.height=new ut(this.document,"height",this.getAttribute("markerHeight").getValue()),u.attributes.overflow=new ut(this.document,"overflow",this.getAttribute("overflow").getValue()),u.attributes.fill=new ut(this.document,"fill",this.getAttribute("fill").getColor("black")),u.attributes.stroke=new ut(this.document,"stroke",this.getAttribute("stroke").getValue("none")),u.children=this.children,u.render(t),t.restore(),"strokeWidth"===o&&t.scale(1/t.lineWidth,1/t.lineWidth),"auto"===a&&t.rotate(-r),t.translate(-n,-i)}}}]),r}(Ot);function Oe(t){return function(){var e,r=k()(t);if(Ne()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function Ne(){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}}var Le=function(t){P()(r,t);var e=Oe(r);function r(){var t;return h()(this,r),t=e.apply(this,arguments),t.type="defs",t}return p()(r,[{key:"render",value:function(){}}]),r}(Ot);function Ie(t){return function(){var e,r=k()(t);if(ze()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function ze(){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}}var Be=function(t){P()(r,t);var e=Ie(r);function r(){var t;return h()(this,r),t=e.apply(this,arguments),t.type="g",t}return p()(r,[{key:"getBoundingBox",value:function(t){var e=new _t;return this.children.forEach((function(r){e.addBoundingBox(r.getBoundingBox(t))})),e}}]),r}(Wt);function je(t){return function(){var e,r=k()(t);if(Fe()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function Fe(){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}}var $e=function(t){P()(r,t);var e=je(r);function r(t,n,i){var a;h()(this,r),a=e.call(this,t,n,i),a.attributesToInherit=["gradientUnits"],a.stops=[];var o=D()(a),u=o.stops,s=o.children;return s.forEach((function(t){"stop"===t.type&&u.push(t)})),a}return p()(r,[{key:"getGradientUnits",value:function(){return this.getAttribute("gradientUnits").getString("objectBoundingBox")}},{key:"createGradient",value:function(t,e,r){var n=this,a=this;this.getHrefAttribute().hasValue()&&(a=this.getHrefAttribute().getDefinition(),this.inheritStopContainer(a));var o=a,u=o.stops,s=this.getGradient(t,e);if(!s)return this.addParentOpacity(r,u[u.length-1].color);if(u.forEach((function(t){s.addColorStop(t.offset,n.addParentOpacity(r,t.color))})),this.getAttribute("gradientTransform").hasValue()){var c=this.document,l=c.screen,f=l.MAX_VIRTUAL_PIXELS,h=l.viewPort,d=i()(h.viewPorts,1),p=d[0],g=new fe(c,null);g.attributes.x=new ut(c,"x",-f/3),g.attributes.y=new ut(c,"y",-f/3),g.attributes.width=new ut(c,"width",f),g.attributes.height=new ut(c,"height",f);var y=new Be(c,null);y.attributes.transform=new ut(c,"transform",this.getAttribute("gradientTransform").getValue()),y.children=[g];var v=new se(c,null);v.attributes.x=new ut(c,"x",0),v.attributes.y=new ut(c,"y",0),v.attributes.width=new ut(c,"width",p.width),v.attributes.height=new ut(c,"height",p.height),v.children=[y];var m=c.createCanvas(p.width,p.height),b=m.getContext("2d");return b.fillStyle=s,v.render(b),b.createPattern(m,"no-repeat")}return s}},{key:"inheritStopContainer",value:function(t){var e=this;this.attributesToInherit.forEach((function(r){!e.getAttribute(r).hasValue()&&t.getAttribute(r).hasValue()&&e.getAttribute(r,!0).setValue(t.getAttribute(r).getValue())}))}},{key:"addParentOpacity",value:function(t,e){if(t.hasValue()){var r=new ut(this.document,"color",e);return r.addOpacity(t).getColor()}return e}}]),r}(Ot);function _e(t){return function(){var e,r=k()(t);if(qe()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function qe(){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}}var Ge=function(t){P()(r,t);var e=_e(r);function r(t,n,i){var a;return h()(this,r),a=e.call(this,t,n,i),a.type="linearGradient",a.attributesToInherit.push("x1","y1","x2","y2"),a}return p()(r,[{key:"getGradient",value:function(t,e){var r="objectBoundingBox"===this.getGradientUnits(),n=r?e.getBoundingBox(t):null;if(r&&!n)return null;this.getAttribute("x1").hasValue()||this.getAttribute("y1").hasValue()||this.getAttribute("x2").hasValue()||this.getAttribute("y2").hasValue()||(this.getAttribute("x1",!0).setValue(0),this.getAttribute("y1",!0).setValue(0),this.getAttribute("x2",!0).setValue(1),this.getAttribute("y2",!0).setValue(0));var i=r?n.x+n.width*this.getAttribute("x1").getNumber():this.getAttribute("x1").getPixels("x"),a=r?n.y+n.height*this.getAttribute("y1").getNumber():this.getAttribute("y1").getPixels("y"),o=r?n.x+n.width*this.getAttribute("x2").getNumber():this.getAttribute("x2").getPixels("x"),u=r?n.y+n.height*this.getAttribute("y2").getNumber():this.getAttribute("y2").getPixels("y");return i===o&&a===u?null:t.createLinearGradient(i,a,o,u)}}]),r}($e);function We(t){return function(){var e,r=k()(t);if(Xe()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function Xe(){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}}var Ue=function(t){P()(r,t);var e=We(r);function r(t,n,i){var a;return h()(this,r),a=e.call(this,t,n,i),a.type="radialGradient",a.attributesToInherit.push("cx","cy","r","fx","fy","fr"),a}return p()(r,[{key:"getGradient",value:function(t,e){var r="objectBoundingBox"===this.getGradientUnits(),n=e.getBoundingBox(t);if(r&&!n)return null;this.getAttribute("cx").hasValue()||this.getAttribute("cx",!0).setValue("50%"),this.getAttribute("cy").hasValue()||this.getAttribute("cy",!0).setValue("50%"),this.getAttribute("r").hasValue()||this.getAttribute("r",!0).setValue("50%");var i=r?n.x+n.width*this.getAttribute("cx").getNumber():this.getAttribute("cx").getPixels("x"),a=r?n.y+n.height*this.getAttribute("cy").getNumber():this.getAttribute("cy").getPixels("y"),o=i,u=a;this.getAttribute("fx").hasValue()&&(o=r?n.x+n.width*this.getAttribute("fx").getNumber():this.getAttribute("fx").getPixels("x")),this.getAttribute("fy").hasValue()&&(u=r?n.y+n.height*this.getAttribute("fy").getNumber():this.getAttribute("fy").getPixels("y"));var s=r?(n.width+n.height)/2*this.getAttribute("r").getNumber():this.getAttribute("r").getPixels(),c=this.getAttribute("fr").getPixels();return t.createRadialGradient(o,u,c,i,a,s)}}]),r}($e);function He(t){return function(){var e,r=k()(t);if(Ye()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function Ye(){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}}var Qe=function(t){P()(r,t);var e=He(r);function r(t,n,i){var a;h()(this,r),a=e.call(this,t,n,i),a.type="stop";var o=Math.max(0,Math.min(1,a.getAttribute("offset").getNumber())),u=a.getStyle("stop-opacity"),s=a.getStyle("stop-color",!0);return""===s.getString()&&s.setValue("#000"),u.hasValue()&&(s=s.addOpacity(u)),a.offset=o,a.color=s.getColor(),a}return r}(Ot);function Ze(t){return function(){var e,r=k()(t);if(Je()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function Je(){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}}var Ke=function(t){P()(r,t);var e=Ze(r);function r(t,n,i){var a;return h()(this,r),a=e.call(this,t,n,i),a.type="animate",a.duration=0,a.initialValue=null,a.initialUnits="",a.removed=!1,a.frozen=!1,t.screen.animations.push(D()(a)),a.begin=a.getAttribute("begin").getMilliseconds(),a.maxDuration=a.begin+a.getAttribute("dur").getMilliseconds(),a.from=a.getAttribute("from"),a.to=a.getAttribute("to"),a.values=a.getAttribute("values"),a.values.hasValue()&&a.values.setValue(a.values.getString().split(";")),a}return p()(r,[{key:"getProperty",value:function(){var t=this.getAttribute("attributeType").getString(),e=this.getAttribute("attributeName").getString();return"CSS"===t?this.parent.getStyle(e,!0):this.parent.getAttribute(e,!0)}},{key:"calcValue",value:function(){var t=this.initialUnits,e=this.getProgress(),r=e.progress,n=e.from,i=e.to,a=n.getNumber()+(i.getNumber()-n.getNumber())*r;return"%"===t&&(a*=100),"".concat(a).concat(t)}},{key:"update",value:function(t){var e=this.parent,r=this.getProperty();if(this.initialValue||(this.initialValue=r.getString(),this.initialUnits=r.getUnits()),this.duration>this.maxDuration){var n=this.getAttribute("fill").getString("remove");if("indefinite"===this.getAttribute("repeatCount").getString()||"indefinite"===this.getAttribute("repeatDur").getString())this.duration=0;else if("freeze"!==n||this.frozen){if("remove"===n&&!this.removed)return this.removed=!0,r.setValue(e.animationFrozen?e.animationFrozenValue:this.initialValue),!0}else this.frozen=!0,e.animationFrozen=!0,e.animationFrozenValue=r.getString();return!1}this.duration+=t;var i=!1;if(this.begin=t.length?{done:!0}:{done:!1,value:t[e++]}},e:function(t){throw t},f:r}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var n,i,a=!0,o=!1;return{s:function(){n=t[Symbol.iterator]()},n:function(){var t=n.next();return a=t.done,t},e:function(t){o=!0,i=t},f:function(){try{a||null==n.return||n.return()}finally{if(o)throw i}}}}function ur(t,e){if(t){if("string"===typeof t)return sr(t,e);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(r):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?sr(t,e):void 0}}function sr(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r0&&Array.from(o).every((function(t){return 3===t.nodeType}));return a.hasText=s,a.text=s?a.getTextFromNode(u):"",a}return p()(r,[{key:"getText",value:function(){return this.text}},{key:"renderChildren",value:function(t){if(this.hasText){E()(k()(r.prototype),"renderChildren",this).call(this,t);var e=this.document,n=this.x,i=this.y,a=e.screen.mouse,o=new ut(e,"fontSize",$t.parse(e.ctx.font).fontSize);a.isWorking()&&a.checkBoundingBox(this,new _t(n,i-o.getPixels("y"),n+this.measureText(t),i))}else if(this.children.length>0){var u=new Be(this.document,null);u.children=this.children,u.parent=this,u.render(t)}}},{key:"onClick",value:function(){var t=this.document.window;t&&t.open(this.getHrefAttribute().getString())}},{key:"onMouseMove",value:function(){var t=this.document.ctx;t.canvas.style.cursor="pointer"}}]),r}(Ht);function Cr(t){if("undefined"===typeof Symbol||null==t[Symbol.iterator]){if(Array.isArray(t)||(t=Er(t))){var e=0,r=function(){};return{s:r,n:function(){return e>=t.length?{done:!0}:{done:!1,value:t[e++]}},e:function(t){throw t},f:r}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var n,i,a=!0,o=!1;return{s:function(){n=t[Symbol.iterator]()},n:function(){var t=n.next();return a=t.done,t},e:function(t){o=!0,i=t},f:function(){try{a||null==n.return||n.return()}finally{if(o)throw i}}}}function Er(t,e){if(t){if("string"===typeof t)return Mr(t,e);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(r):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Mr(t,e):void 0}}function Mr(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);ru?o:u,d=o>u?1:o/u,p=o>u?u/o:1;t&&(t.translate(i,a),t.rotate(l),t.scale(d,p),t.arc(0,0,h,s,s+c,Boolean(1-f)),t.scale(1/d,1/p),t.rotate(-l),t.translate(-i,-a));break;case"z":t&&t.closePath();break}}))}},{key:"renderChildren",value:function(t){this.setTextData(t),t.save();var e=this.parent.getStyle("text-decoration").getString(),r=this.getFontSize(),n=this.glyphInfo,i=t.fillStyle;"underline"===e&&t.beginPath(),n.forEach((function(i,a){var o=i.p0,u=i.p1,s=i.text;t.save(),t.translate(o.x,o.y),t.rotate(n[a].rotation),t.fillStyle&&t.fillText(s,0,0),t.strokeStyle&&t.strokeText(s,0,0),t.restore(),"underline"===e&&(0===a&&t.moveTo(o.x,o.y+r/8),t.lineTo(u.x,u.y+r/5))})),"underline"===e&&(t.lineWidth=r/20,t.strokeStyle=i,t.stroke(),t.closePath()),t.restore()}},{key:"getLetterSpacingAt",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return this.letterSpacingCache[t]||0}},{key:"findSegmentToFitChar",value:function(t,e,r,n,i,a,o,u){var s=a,c=this.measureText(t,o);" "===o&&"justify"===e&&r-1&&(s+=this.getLetterSpacingAt(u));var l=this.textHeight/20,f={p0:this.getEquidistantPointOnPath(s,l),p1:this.getEquidistantPointOnPath(s+c,l)};return s+=c,{offset:s,segment:f}}},{key:"measureText",value:function(t,e){var r=this.measuresCache,n=e||this.getText();if(r.has(n))return r.get(n);var i=this.measureTargetText(t,n);return r.set(n,i),i}},{key:"setTextData",value:function(t){var e=this;if(!this.glyphInfo){var r=this.getText(),n=r.split(""),i=r.split(" ").length-1,a=L(this.parent.getAttribute("dx").getString("0")),o=this.parent.getStyle("text-anchor").getString("start"),u=this.getStyle("letter-spacing"),s=this.parent.getStyle("letter-spacing"),c=0;u.hasValue()&&"inherit"!==u.getValue()?u.hasValue()&&"initial"!==u.getValue()&&"unset"!==u.getValue()&&(c=u.getPixels()):c=s.getPixels();var l=[],f=r.length;this.letterSpacingCache=l;for(var h=0;h1&&(r*=Math.sqrt(c),n*=Math.sqrt(c));var l=(a===o?-1:1)*Math.sqrt((Math.pow(r,2)*Math.pow(n,2)-Math.pow(r,2)*Math.pow(s.y,2)-Math.pow(n,2)*Math.pow(s.x,2))/(Math.pow(r,2)*Math.pow(s.y,2)+Math.pow(n,2)*Math.pow(s.x,2)));isNaN(l)&&(l=0);var f=new ct(l*r*s.y/n,l*-n*s.x/r),h=new ct((e.x+u.x)/2+Math.cos(i)*f.x-Math.sin(i)*f.y,(e.y+u.y)/2+Math.sin(i)*f.x+Math.cos(i)*f.y),d=J([1,0],[(s.x-f.x)/r,(s.y-f.y)/n]),p=[(s.x-f.x)/r,(s.y-f.y)/n],g=[(-s.x-f.x)/r,(-s.y-f.y)/n],y=J(p,g);return Z(p,g)<=-1&&(y=Math.PI),Z(p,g)>=1&&(y=0),0===o&&y>0&&(y-=2*Math.PI),1===o&&y<0&&(y+=2*Math.PI),[h.x,h.y,r,n,d,y,i,o]}}},{key:"calcLength",value:function(t,e,r,n){var i=0,a=null,o=null,u=0;switch(r){case"L":return this.getLineLength(t,e,n[0],n[1]);case"C":for(i=0,a=this.getPointOnCubicBezier(0,t,e,n[0],n[1],n[2],n[3],n[4],n[5]),u=.01;u<=1;u+=.01)o=this.getPointOnCubicBezier(u,t,e,n[0],n[1],n[2],n[3],n[4],n[5]),i+=this.getLineLength(a.x,a.y,o.x,o.y),a=o;return i;case"Q":for(i=0,a=this.getPointOnQuadraticBezier(0,t,e,n[0],n[1],n[2],n[3]),u=.01;u<=1;u+=.01)o=this.getPointOnQuadraticBezier(u,t,e,n[0],n[1],n[2],n[3]),i+=this.getLineLength(a.x,a.y,o.x,o.y),a=o;return i;case"A":i=0;var s=n[4],c=n[5],l=n[4]+c,f=Math.PI/180;if(Math.abs(s-l)l;u-=f)o=this.getPointOnEllipticalArc(n[0],n[1],n[2],n[3],u,0),i+=this.getLineLength(a.x,a.y,o.x,o.y),a=o;else for(u=s+f;u5&&void 0!==arguments[5]?arguments[5]:e,o=arguments.length>6&&void 0!==arguments[6]?arguments[6]:r,u=(i-r)/(n-e+Y),s=Math.sqrt(t*t/(1+u*u));ne)return null;var i,a=this.dataArray,o=Cr(a);try{for(o.s();!(i=o.n()).done;){var u=i.value;if(!u||!(u.pathLength<5e-5||r+u.pathLength+5e-5=0&&c>h)break;n=this.getPointOnEllipticalArc(u.points[0],u.points[1],u.points[2],u.points[3],c,u.points[6]);break;case"C":c=s/u.pathLength,c>1&&(c=1),n=this.getPointOnCubicBezier(c,u.start.x,u.start.y,u.points[0],u.points[1],u.points[2],u.points[3],u.points[4],u.points[5]);break;case"Q":c=s/u.pathLength,c>1&&(c=1),n=this.getPointOnQuadraticBezier(c,u.start.x,u.start.y,u.points[0],u.points[1],u.points[2],u.points[3]);break;default:}if(n)return n;break}r+=u.pathLength}}catch(d){o.e(d)}finally{o.f()}return null}},{key:"getLineLength",value:function(t,e,r,n){return Math.sqrt((r-t)*(r-t)+(n-e)*(n-e))}},{key:"getPathLength",value:function(){return-1===this.pathLength&&(this.pathLength=this.dataArray.reduce((function(t,e){return e.pathLength>0?t+e.pathLength:t}),0)),this.pathLength}},{key:"getPointOnCubicBezier",value:function(t,e,r,n,i,a,o,u,s){var c=u*K(t)+a*tt(t)+n*et(t)+e*rt(t),l=s*K(t)+o*tt(t)+i*et(t)+r*rt(t);return{x:c,y:l}}},{key:"getPointOnQuadraticBezier",value:function(t,e,r,n,i,a,o){var u=a*nt(t)+n*it(t)+e*at(t),s=o*nt(t)+i*it(t)+r*at(t);return{x:u,y:s}}},{key:"getPointOnEllipticalArc",value:function(t,e,r,n,i,a){var o=Math.cos(a),u=Math.sin(a),s={x:r*Math.cos(i),y:n*Math.sin(i)};return{x:t+(s.x*o-s.y*u),y:e+(s.x*u+s.y*o)}}},{key:"buildEquidistantCache",value:function(t,e){var r=this.getPathLength(),n=e||.25,i=t||r/100;if(!this.equidistantCache||this.equidistantCache.step!==i||this.equidistantCache.precision!==n){this.equidistantCache={step:i,precision:n,points:[]};for(var a=0,o=0;o<=r;o+=n){var u=this.getPointOnPath(o),s=this.getPointOnPath(o+n);u&&s&&(a+=this.getLineLength(u.x,u.y,s.x,s.y),a>=i&&(this.equidistantCache.points.push({x:u.x,y:u.y,distance:o}),a-=i))}}}},{key:"getEquidistantPointOnPath",value:function(t,e,r){if(this.buildEquidistantCache(e,r),t<0||t-this.getPathLength()>5e-5)return null;var n=Math.round(t/this.getPathLength()*(this.equidistantCache.points.length-1));return this.equidistantCache.points[n]||null}}]),r}(Ht);function Or(t){return function(){var e,r=k()(t);if(Nr()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function Nr(){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}}var Lr=function(t){P()(r,t);var e=Or(r);function r(t,n,i){var a;h()(this,r),a=e.call(this,t,n,i),a.type="image",a.loaded=!1;var o=a.getHrefAttribute().getString();if(!o)return x()(a);var u=/\.svg$/.test(o);return t.images.push(D()(a)),u?a.loadSvg(o):a.loadImage(o),a.isSvg=u,a}return p()(r,[{key:"loadImage",value:function(){var t=s()(o.a.mark((function t(e){var r;return o.a.wrap((function(t){while(1)switch(t.prev=t.next){case 0:return t.prev=0,t.next=3,this.document.createImage(e);case 3:r=t.sent,this.image=r,t.next=10;break;case 7:t.prev=7,t.t0=t["catch"](0),console.error('Error while loading image "'.concat(e,'":'),t.t0);case 10:this.loaded=!0;case 11:case"end":return t.stop()}}),t,this,[[0,7]])})));function e(e){return t.apply(this,arguments)}return e}()},{key:"loadSvg",value:function(){var t=s()(o.a.mark((function t(e){var r,n;return o.a.wrap((function(t){while(1)switch(t.prev=t.next){case 0:return t.prev=0,t.next=3,this.document.fetch(e);case 3:return r=t.sent,t.next=6,r.text();case 6:n=t.sent,this.image=n,t.next=13;break;case 10:t.prev=10,t.t0=t["catch"](0),console.error('Error while loading image "'.concat(e,'":'),t.t0);case 13:this.loaded=!0;case 14:case"end":return t.stop()}}),t,this,[[0,10]])})));function e(e){return t.apply(this,arguments)}return e}()},{key:"renderChildren",value:function(t){var e=this.document,r=this.image,n=this.loaded,i=this.getAttribute("x").getPixels("x"),a=this.getAttribute("y").getPixels("y"),o=this.getStyle("width").getPixels("x"),u=this.getStyle("height").getPixels("y");if(n&&r&&o&&u){if(t.save(),this.isSvg)e.canvg.forkString(t,this.image,{ignoreMouse:!0,ignoreAnimation:!0,ignoreDimensions:!0,ignoreClear:!0,offsetX:i,offsetY:a,scaleWidth:o,scaleHeight:u}).render();else{var s=this.image;t.translate(i,a),e.setViewBox({ctx:t,aspectRatio:this.getAttribute("preserveAspectRatio").getString(),width:o,desiredWidth:s.width,height:u,desiredHeight:s.height}),this.loaded&&("undefined"===typeof s.complete||s.complete)&&t.drawImage(s,0,0)}t.restore()}}},{key:"getBoundingBox",value:function(){var t=this.getAttribute("x").getPixels("x"),e=this.getAttribute("y").getPixels("y"),r=this.getStyle("width").getPixels("x"),n=this.getStyle("height").getPixels("y");return new _t(t,e,t+r,e+n)}}]),r}(Wt);function Ir(t){return function(){var e,r=k()(t);if(zr()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function zr(){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}}var Br=function(t){P()(r,t);var e=Ir(r);function r(){var t;return h()(this,r),t=e.apply(this,arguments),t.type="symbol",t}return p()(r,[{key:"render",value:function(t){}}]),r}(Wt),jr=function(){function t(e){h()(this,t),this.document=e,this.loaded=!1,e.fonts.push(this)}return p()(t,[{key:"load",value:function(){var t=s()(o.a.mark((function t(e,r){var n,i,a;return o.a.wrap((function(t){while(1)switch(t.prev=t.next){case 0:return t.prev=0,n=this.document,t.next=4,n.canvg.parser.load(r);case 4:i=t.sent,a=i.getElementsByTagName("font"),Array.from(a).forEach((function(t){var r=n.createElement(t);n.definitions[e]=r})),t.next=12;break;case 9:t.prev=9,t.t0=t["catch"](0),console.error('Error while loading font "'.concat(r,'":'),t.t0);case 12:this.loaded=!0;case 13:case"end":return t.stop()}}),t,this,[[0,9]])})));function e(e,r){return t.apply(this,arguments)}return e}()}]),t}();function Fr(t){return function(){var e,r=k()(t);if($r()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function $r(){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}}var _r=function(t){P()(r,t);var e=Fr(r);function r(t,n,i){var a;h()(this,r),a=e.call(this,t,n,i),a.type="style";var o=V(Array.from(n.childNodes).map((function(t){return t.data})).join("").replace(/(\/\*([^*]|[\r\n]|(\*+([^*\/]|[\r\n])))*\*+\/)|(^[\s]*\/\/.*)/gm,"").replace(/@import.*;/g,"")),u=o.split("}");return u.forEach((function(e){var r=e.trim();if(r){var n=r.split("{"),i=n[0].split(","),a=n[1].split(";");i.forEach((function(e){var r=e.trim();if(r){var n=t.styles[r]||{};if(a.forEach((function(e){var r=e.indexOf(":"),i=e.substr(0,r).trim(),a=e.substr(r+1,e.length-r).trim();i&&a&&(n[i]=new ut(t,i,a))})),t.styles[r]=n,t.stylesSpecificity[r]=H(r),"@font-face"===r){var i=n["font-family"].getString().replace(/"|'/g,""),o=n.src.getString().split(",");o.forEach((function(e){if(e.indexOf('format("svg")')>0){var r=B(e);r&&new jr(t).load(i,r)}}))}}}))}})),a}return r}(Ot);function qr(t){return function(){var e,r=k()(t);if(Gr()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function Gr(){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}}_r.parseExternalUrl=B;var Wr=function(t){P()(r,t);var e=qr(r);function r(){var t;return h()(this,r),t=e.apply(this,arguments),t.type="use",t}return p()(r,[{key:"setContext",value:function(t){E()(k()(r.prototype),"setContext",this).call(this,t);var e=this.getAttribute("x"),n=this.getAttribute("y");e.hasValue()&&t.translate(e.getPixels("x"),0),n.hasValue()&&t.translate(0,n.getPixels("y"))}},{key:"path",value:function(t){var e=this.element;e&&e.path(t)}},{key:"renderChildren",value:function(t){var e=this.document,r=this.element;if(r){var n=r;if("symbol"===r.type&&(n=new se(e,null),n.attributes.viewBox=new ut(e,"viewBox",r.getAttribute("viewBox").getString()),n.attributes.preserveAspectRatio=new ut(e,"preserveAspectRatio",r.getAttribute("preserveAspectRatio").getString()),n.attributes.overflow=new ut(e,"overflow",r.getAttribute("overflow").getString()),n.children=r.children),"svg"===n.type){var i=this.getStyle("width",!1,!0),a=this.getStyle("height",!1,!0);i.hasValue()&&(n.attributes.width=new ut(e,"width",i.getString())),a.hasValue()&&(n.attributes.height=new ut(e,"height",a.getString()))}var o=n.parent;n.parent=this,n.render(t),n.parent=o}}},{key:"getBoundingBox",value:function(t){var e=this.element;return e?e.getBoundingBox(t):null}},{key:"elementTransform",value:function(){var t=this.document,e=this.element;return Vt.fromElement(t,e)}},{key:"element",get:function(){return this._element||(this._element=this.getHrefAttribute().getDefinition()),this._element}}]),r}(Wt);function Xr(t){return function(){var e,r=k()(t);if(Ur()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return x()(this,e)}}function Ur(){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 Hr(t,e,r,n,i,a){return t[r*n*4+4*e+a]}function Yr(t,e,r,n,i,a,o){t[r*n*4+4*e+a]=o}function Qr(t,e,r){var n=t[e];return n*(n<0?r-255:r)}function Zr(t,e,r,n){return e+Math.cos(t)*r+Math.sin(t)*n}var Jr=function(t){P()(r,t);var e=Xr(r);function r(t,n,i){var a;h()(this,r),a=e.call(this,t,n,i),a.type="feColorMatrix";var o=L(a.getAttribute("values").getString());switch(a.getAttribute("type").getString("matrix")){case"saturate":var u=o[0];o=[.213+.787*u,.715-.715*u,.072-.072*u,0,0,.213-.213*u,.715+.285*u,.072-.072*u,0,0,.213-.213*u,.715-.715*u,.072+.928*u,0,0,0,0,0,1,0,0,0,0,0,1];break;case"hueRotate":var s=o[0]*Math.PI/180;o=[Zr(s,.213,.787,-.213),Zr(s,.715,-.715,-.715),Zr(s,.072,-.072,.928),0,0,Zr(s,.213,-.213,.143),Zr(s,.715,.285,.14),Zr(s,.072,-.072,-.283),0,0,Zr(s,.213,-.213,-.787),Zr(s,.715,-.715,.715),Zr(s,.072,.928,.072),0,0,0,0,0,1,0,0,0,0,0,1];break;case"luminanceToAlpha":o=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,.2125,.7154,.0721,0,0,0,0,0,0,1];break}return a.matrix=o,a.includeOpacity=a.getAttribute("includeOpacity").hasValue(),a}return p()(r,[{key:"apply",value:function(t,e,r,n,i){for(var a=this.includeOpacity,o=this.matrix,u=t.getImageData(0,0,n,i),s=0;s1&&void 0!==i[1]&&i[1],n=document.createElement("img"),r&&(n.crossOrigin="Anonymous"),t.abrupt("return",new Promise((function(t,r){n.onload=function(){t(n)},n.onerror=function(){r()},n.src=e})));case 4:case"end":return t.stop()}}),t)}))),On.apply(this,arguments)}var Nn=function(){function t(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=r.rootEmSize,i=void 0===n?12:n,a=r.emSize,o=void 0===a?12:a,u=r.createCanvas,s=void 0===u?t.createCanvas:u,c=r.createImage,l=void 0===c?t.createImage:c,f=r.anonymousCrossOrigin;h()(this,t),this.canvg=e,this.definitions={},this.styles={},this.stylesSpecificity={},this.images=[],this.fonts=[],this.emSizeStack=[],this.uniqueId=0,this.screen=e.screen,this.rootEmSize=i,this.emSize=o,this.createCanvas=s,this.createImage=this.bindCreateImage(l,f),this.screen.wait(this.isImagesLoaded.bind(this)),this.screen.wait(this.isFontsLoaded.bind(this))}return p()(t,[{key:"bindCreateImage",value:function(t,e){return"boolean"===typeof e?function(r,n){return t(r,"boolean"===typeof n?n:e)}:t}},{key:"popEmSize",value:function(){var t=this.emSizeStack;t.pop()}},{key:"getUniqueId",value:function(){return"canvg".concat(++this.uniqueId)}},{key:"isImagesLoaded",value:function(){return this.images.every((function(t){return t.loaded}))}},{key:"isFontsLoaded",value:function(){return this.fonts.every((function(t){return t.loaded}))}},{key:"createDocumentElement",value:function(t){var e=this.createElement(t.documentElement);return e.root=!0,e.addStylesFromStyleDefinition(),this.documentElement=e,e}},{key:"createElement",value:function(e){var r=e.nodeName.replace(/^[^:]+:/,""),n=t.elementTypes[r];return"undefined"!==typeof n?new n(this,e):new It(this,e)}},{key:"createTextNode",value:function(t){return new te(this,t)}},{key:"setViewBox",value:function(t){this.screen.setViewBox(Dn({document:this},t))}},{key:"window",get:function(){return this.screen.window}},{key:"fetch",get:function(){return this.screen.fetch}},{key:"ctx",get:function(){return this.screen.ctx}},{key:"emSize",get:function(){var t=this.emSizeStack;return t[t.length-1]},set:function(t){var e=this.emSizeStack;e.push(t)}}]),t}();function Ln(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function In(t){for(var e=1;e2&&void 0!==arguments[2]?arguments[2]:{};h()(this,t),this.parser=new yt(n),this.screen=new dt(e,n),this.options=n;var i=new Nn(this,n),a=i.createDocumentElement(r);this.document=i,this.documentElement=a}return p()(t,[{key:"fork",value:function(e,r){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return t.from(e,r,In({},this.options,{},n))}},{key:"forkString",value:function(e,r){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return t.fromString(e,r,In({},this.options,{},n))}},{key:"ready",value:function(){return this.screen.ready()}},{key:"isReady",value:function(){return this.screen.isReady()}},{key:"render",value:function(){var t=s()(o.a.mark((function t(){var e,r=arguments;return o.a.wrap((function(t){while(1)switch(t.prev=t.next){case 0:return e=r.length>0&&void 0!==r[0]?r[0]:{},this.start(In({enableRedraw:!0,ignoreAnimation:!0,ignoreMouse:!0},e)),t.next=4,this.ready();case 4:this.stop();case 5:case"end":return t.stop()}}),t,this)})));function e(){return t.apply(this,arguments)}return e}()},{key:"start",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=this.documentElement,r=this.screen,n=this.options;r.start(e,In({enableRedraw:!0},n,{},t))}},{key:"stop",value:function(){this.screen.stop()}},{key:"resize",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:t,r=arguments.length>2&&void 0!==arguments[2]&&arguments[2];this.documentElement.resize(t,e,r)}}],[{key:"from",value:function(){var e=s()(o.a.mark((function e(r,n){var i,a,u,s=arguments;return o.a.wrap((function(e){while(1)switch(e.prev=e.next){case 0:return i=s.length>2&&void 0!==s[2]?s[2]:{},a=new yt(i),e.next=4,a.parse(n);case 4:return u=e.sent,e.abrupt("return",new t(r,u,i));case 6:case"end":return e.stop()}}),e)})));function r(t,r){return e.apply(this,arguments)}return r}()},{key:"fromString",value:function(e,r){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=new yt(n),a=i.parseFromString(r);return new t(e,a,n)}}]),t}();function Bn(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=t.DOMParser,r={window:null,ignoreAnimation:!0,ignoreMouse:!0,DOMParser:e,createCanvas:function(t,e){return new OffscreenCanvas(t,e)},createImage:function(t){return s()(o.a.mark((function e(){var r,n,i;return o.a.wrap((function(e){while(1)switch(e.prev=e.next){case 0:return e.next=2,fetch(t);case 2:return r=e.sent,e.next=5,r.blob();case 5:return n=e.sent,e.next=8,createImageBitmap(n);case 8:return i=e.sent,e.abrupt("return",i);case 10:case"end":return e.stop()}}),e)})))()}};return"undefined"===typeof DOMParser&&"undefined"!==typeof e||Reflect.deleteProperty(r,"DOMParser"),r}function jn(t){var e=t.DOMParser,r=t.canvas,n=t.fetch;return{window:null,ignoreAnimation:!0,ignoreMouse:!0,DOMParser:e,fetch:n,createCanvas:r.createCanvas,createImage:r.loadImage}}var Fn=Object.freeze({__proto__:null,offscreen:Bn,node:jn});e["default"]=zn}.call(this,r("4362"))},"11b0":function(t,e,r){function n(t){if("undefined"!==typeof Symbol&&Symbol.iterator in Object(t))return Array.from(t)}r("a4d3"),r("e01a"),r("d28b"),r("a630"),r("d3b7"),r("3ca3"),r("ddb0"),t.exports=n},1276:function(t,e,r){"use strict";var n=r("d784"),i=r("44e7"),a=r("825a"),o=r("1d80"),u=r("4840"),s=r("8aa5"),c=r("50c4"),l=r("14c3"),f=r("9263"),h=r("d039"),d=[].push,p=Math.min,g=4294967295,y=!h((function(){return!RegExp(g,"y")}));n("split",2,(function(t,e,r){var n;return n="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(t,r){var n=String(o(this)),a=void 0===r?g:r>>>0;if(0===a)return[];if(void 0===t)return[n];if(!i(t))return e.call(n,t,a);var u,s,c,l=[],h=(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":""),p=0,y=new RegExp(t.source,h+"g");while(u=f.call(y,n)){if(s=y.lastIndex,s>p&&(l.push(n.slice(p,u.index)),u.length>1&&u.index=a))break;y.lastIndex===u.index&&y.lastIndex++}return p===n.length?!c&&y.test("")||l.push(""):l.push(n.slice(p)),l.length>a?l.slice(0,a):l}:"0".split(void 0,0).length?function(t,r){return void 0===t&&0===r?[]:e.call(this,t,r)}:e,[function(e,r){var i=o(this),a=void 0==e?void 0:e[t];return void 0!==a?a.call(e,i,r):n.call(String(i),e,r)},function(t,i){var o=r(n,t,this,i,n!==e);if(o.done)return o.value;var f=a(t),h=String(this),d=u(f,RegExp),v=f.unicode,m=(f.ignoreCase?"i":"")+(f.multiline?"m":"")+(f.unicode?"u":"")+(y?"y":"g"),b=new d(y?f:"^(?:"+f.source+")",m),x=void 0===i?g:i>>>0;if(0===x)return[];if(0===h.length)return null===l(b,h)?[h]:[];var w=0,k=0,S=[];while(k1?arguments[1]:void 0)}})},2236:function(t,e,r){var n=r("5a43");function i(t){if(Array.isArray(t))return n(t)}t.exports=i},"25f0":function(t,e,r){"use strict";var n=r("6eeb"),i=r("825a"),a=r("d039"),o=r("ad6d"),u="toString",s=RegExp.prototype,c=s[u],l=a((function(){return"/a/b"!=c.call({source:"a",flags:"b"})})),f=c.name!=u;(l||f)&&n(RegExp.prototype,u,(function(){var t=i(this),e=String(t.source),r=t.flags,n=String(void 0===r&&t instanceof RegExp&&!("flags"in s)?o.call(t):r);return"/"+e+"/"+n}),{unsafe:!0})},"26e9":function(t,e,r){"use strict";var n=r("23e7"),i=r("e8b5"),a=[].reverse,o=[1,2];n({target:"Array",proto:!0,forced:String(o)===String(o.reverse())},{reverse:function(){return i(this)&&(this.length=this.length),a.call(this)}})},"278c":function(t,e,r){var n=r("c135"),i=r("9b42"),a=r("6613"),o=r("c240");function u(t,e){return n(t)||i(t,e)||a(t,e)||o()}t.exports=u},"2ca0":function(t,e,r){"use strict";var n=r("23e7"),i=r("06cf").f,a=r("50c4"),o=r("5a34"),u=r("1d80"),s=r("ab13"),c=r("c430"),l="".startsWith,f=Math.min,h=s("startsWith"),d=!c&&!h&&!!function(){var t=i(String.prototype,"startsWith");return t&&!t.writable}();n({target:"String",proto:!0,forced:!d&&!h},{startsWith:function(t){var e=String(u(this));o(t);var r=a(f(arguments.length>1?arguments[1]:void 0,e.length)),n=String(t);return l?l.call(e,n,r):e.slice(r,r+n.length)===n}})},3410:function(t,e,r){var n=r("23e7"),i=r("d039"),a=r("7b0b"),o=r("e163"),u=r("e177"),s=i((function(){o(1)}));n({target:"Object",stat:!0,forced:s,sham:!u},{getPrototypeOf:function(t){return o(a(t))}})},"36c6":function(t,e,r){function n(e){return t.exports=n=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)},n(e)}r("3410"),t.exports=n},"3c96":function(t,e){function r(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}t.exports=r},"3ca3":function(t,e,r){"use strict";var n=r("6547").charAt,i=r("69f3"),a=r("7dd0"),o="String Iterator",u=i.set,s=i.getterFor(o);a(String,"String",(function(t){u(this,{type:o,string:String(t),index:0})}),(function(){var t,e=s(this),r=e.string,i=e.index;return i>=r.length?{value:void 0,done:!0}:(t=n(r,i),e.index+=t.length,{value:t,done:!1})}))},"448a":function(t,e,r){var n=r("2236"),i=r("11b0"),a=r("6613"),o=r("0676");function u(t){return n(t)||i(t)||a(t)||o()}t.exports=u},"45fc":function(t,e,r){"use strict";var n=r("23e7"),i=r("b727").some,a=r("a640"),o=r("ae40"),u=a("some"),s=o("some");n({target:"Array",proto:!0,forced:!u||!s},{some:function(t){return i(this,t,arguments.length>1?arguments[1]:void 0)}})},"466d":function(t,e,r){"use strict";var n=r("d784"),i=r("825a"),a=r("50c4"),o=r("1d80"),u=r("8aa5"),s=r("14c3");n("match",1,(function(t,e,r){return[function(e){var r=o(this),n=void 0==e?void 0:e[t];return void 0!==n?n.call(e,r):new RegExp(e)[t](String(r))},function(t){var n=r(e,t,this);if(n.done)return n.value;var o=i(t),c=String(this);if(!o.global)return s(o,c);var l=o.unicode;o.lastIndex=0;var f,h=[],d=0;while(null!==(f=s(o,c))){var p=String(f[0]);h[d]=p,""===p&&(o.lastIndex=u(c,a(o.lastIndex),l)),d++}return 0===d?null:h}]}))},"498a":function(t,e,r){"use strict";var n=r("23e7"),i=r("58a8").trim,a=r("c8d2");n({target:"String",proto:!0,forced:a("trim")},{trim:function(){return i(this)}})},"4a4b":function(t,e){function r(e,n){return t.exports=r=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t},r(e,n)}t.exports=r},"4ae1":function(t,e,r){var n=r("23e7"),i=r("d066"),a=r("1c0b"),o=r("825a"),u=r("861d"),s=r("7c73"),c=r("0538"),l=r("d039"),f=i("Reflect","construct"),h=l((function(){function t(){}return!(f((function(){}),[],t)instanceof t)})),d=!l((function(){f((function(){}))})),p=h||d;n({target:"Reflect",stat:!0,forced:p,sham:p},{construct:function(t,e){a(t),o(e);var r=arguments.length<3?t:a(arguments[2]);if(d&&!h)return f(t,e,r);if(t==r){switch(e.length){case 0:return new t;case 1:return new t(e[0]);case 2:return new t(e[0],e[1]);case 3:return new t(e[0],e[1],e[2]);case 4:return new t(e[0],e[1],e[2],e[3])}var n=[null];return n.push.apply(n,e),new(c.apply(t,n))}var i=r.prototype,l=s(u(i)?i:Object.prototype),p=Function.apply.call(t,l,e);return u(p)?p:l}})},"4df4":function(t,e,r){"use strict";var n=r("0366"),i=r("7b0b"),a=r("9bdd"),o=r("e95a"),u=r("50c4"),s=r("8418"),c=r("35a1");t.exports=function(t){var e,r,l,f,h,d,p=i(t),g="function"==typeof this?this:Array,y=arguments.length,v=y>1?arguments[1]:void 0,m=void 0!==v,b=c(p),x=0;if(m&&(v=n(v,y>2?arguments[2]:void 0,2)),void 0==b||g==Array&&o(b))for(e=u(p.length),r=new g(e);e>x;x++)d=m?v(p[x],x):p[x],s(r,x,d);else for(f=b.call(p),h=f.next,r=new g;!(l=h.call(f)).done;x++)d=m?a(f,v,[l.value,x],!0):l.value,s(r,x,d);return r.length=x,r}},"4ec9":function(t,e,r){"use strict";var n=r("6d61"),i=r("6566");t.exports=n("Map",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),i)},5319:function(t,e,r){"use strict";var n=r("d784"),i=r("825a"),a=r("7b0b"),o=r("50c4"),u=r("a691"),s=r("1d80"),c=r("8aa5"),l=r("14c3"),f=Math.max,h=Math.min,d=Math.floor,p=/\$([$&'`]|\d\d?|<[^>]*>)/g,g=/\$([$&'`]|\d\d?)/g,y=function(t){return void 0===t?t:String(t)};n("replace",2,(function(t,e,r,n){var v=n.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE,m=n.REPLACE_KEEPS_$0,b=v?"$":"$0";return[function(r,n){var i=s(this),a=void 0==r?void 0:r[t];return void 0!==a?a.call(r,i,n):e.call(String(i),r,n)},function(t,n){if(!v&&m||"string"===typeof n&&-1===n.indexOf(b)){var a=r(e,t,this,n);if(a.done)return a.value}var s=i(t),d=String(this),p="function"===typeof n;p||(n=String(n));var g=s.global;if(g){var w=s.unicode;s.lastIndex=0}var k=[];while(1){var S=l(s,d);if(null===S)break;if(k.push(S),!g)break;var P=String(S[0]);""===P&&(s.lastIndex=c(d,o(s.lastIndex),w))}for(var R="",A=0,C=0;C=A&&(R+=d.slice(A,M)+N,A=M+E.length)}return R+d.slice(A)}];function x(t,r,n,i,o,u){var s=n+t.length,c=i.length,l=g;return void 0!==o&&(o=a(o),l=p),e.call(u,l,(function(e,a){var u;switch(a.charAt(0)){case"$":return"$";case"&":return t;case"`":return r.slice(0,n);case"'":return r.slice(s);case"<":u=o[a.slice(1,-1)];break;default:var l=+a;if(0===l)return e;if(l>c){var f=d(l/10);return 0===f?e:f<=c?void 0===i[f-1]?a.charAt(1):i[f-1]+a.charAt(1):e}u=i[l-1]}return void 0===u?"":u}))}}))},5899:function(t,e){t.exports="\t\n\v\f\r Β αš€β€€β€β€‚β€ƒβ€„β€…β€†β€‡β€ˆβ€‰β€Šβ€―βŸγ€€\u2028\u2029\ufeff"},"58a8":function(t,e,r){var n=r("1d80"),i=r("5899"),a="["+i+"]",o=RegExp("^"+a+a+"*"),u=RegExp(a+a+"*$"),s=function(t){return function(e){var r=String(n(e));return 1&t&&(r=r.replace(o,"")),2&t&&(r=r.replace(u,"")),r}};t.exports={start:s(1),end:s(2),trim:s(3)}},"58e1":function(t,e){t.exports=function(t){this.ok=!1,this.alpha=1,"#"==t.charAt(0)&&(t=t.substr(1,6)),t=t.replace(/ /g,""),t=t.toLowerCase();var e={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"00ffff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000000",blanchedalmond:"ffebcd",blue:"0000ff",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"00ffff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dodgerblue:"1e90ff",feldspar:"d19275",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"ff00ff",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgrey:"d3d3d3",lightgreen:"90ee90",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslateblue:"8470ff",lightslategray:"778899",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"00ff00",limegreen:"32cd32",linen:"faf0e6",magenta:"ff00ff",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370d8",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"d87093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"ff0000",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",violetred:"d02090",wheat:"f5deb3",white:"ffffff",whitesmoke:"f5f5f5",yellow:"ffff00",yellowgreen:"9acd32"};t=e[t]||t;for(var r=[{re:/^rgba\((\d{1,3}),\s*(\d{1,3}),\s*(\d{1,3}),\s*((?:\d?\.)?\d)\)$/,example:["rgba(123, 234, 45, 0.8)","rgba(255,234,245,1.0)"],process:function(t){return[parseInt(t[1]),parseInt(t[2]),parseInt(t[3]),parseFloat(t[4])]}},{re:/^rgb\((\d{1,3}),\s*(\d{1,3}),\s*(\d{1,3})\)$/,example:["rgb(123, 234, 45)","rgb(255,234,245)"],process:function(t){return[parseInt(t[1]),parseInt(t[2]),parseInt(t[3])]}},{re:/^([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,example:["#00ff00","336699"],process:function(t){return[parseInt(t[1],16),parseInt(t[2],16),parseInt(t[3],16)]}},{re:/^([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,example:["#fb0","f0f"],process:function(t){return[parseInt(t[1]+t[1],16),parseInt(t[2]+t[2],16),parseInt(t[3]+t[3],16)]}}],n=0;n3&&(this.alpha=u[3]),this.ok=!0}}this.r=this.r<0||isNaN(this.r)?0:this.r>255?255:this.r,this.g=this.g<0||isNaN(this.g)?0:this.g>255?255:this.g,this.b=this.b<0||isNaN(this.b)?0:this.b>255?255:this.b,this.alpha=this.alpha<0?0:this.alpha>1||isNaN(this.alpha)?1:this.alpha,this.toRGB=function(){return"rgb("+this.r+", "+this.g+", "+this.b+")"},this.toRGBA=function(){return"rgba("+this.r+", "+this.g+", "+this.b+", "+this.alpha+")"},this.toHex=function(){var t=this.r.toString(16),e=this.g.toString(16),r=this.b.toString(16);return 1==t.length&&(t="0"+t),1==e.length&&(e="0"+e),1==r.length&&(r="0"+r),"#"+t+e+r},this.getHelpXML=function(){for(var t=new Array,n=0;n "+c.toRGB()+" -> "+c.toHex());s.appendChild(l),s.appendChild(f),u.appendChild(s)}catch(h){}return u}}},"5a43":function(t,e){function r(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r>P;if(c[k+3]=Z,0!==Z){var J=255/Z;c[k]=(j*S>>P)*J,c[k+1]=(F*S>>P)*J,c[k+2]=($*S>>P)*J}else c[k]=c[k+1]=c[k+2]=0;j-=L,F-=I,$-=z,_-=B,L-=b.r,I-=b.g,z-=b.b,B-=b.a;var K=Q+u+1;K=w+(K>P,ct>0?(ct=255/ct,c[Ct]=(pt*S>>P)*ct,c[Ct+1]=(gt*S>>P)*ct,c[Ct+2]=(yt*S>>P)*ct):c[Ct]=c[Ct+1]=c[Ct+2]=0,pt-=lt,gt-=ft,yt-=ht,vt-=dt,lt-=b.r,ft-=b.g,ht-=b.b,dt-=b.a,Ct=at+((Ct=At+p)=c?t?"":void 0:(a=u.charCodeAt(s),a<55296||a>56319||s+1===c||(o=u.charCodeAt(s+1))<56320||o>57343?t?u.charAt(s):a:t?u.slice(s,s+2):o-56320+(a-55296<<10)+65536)}};t.exports={codeAt:a(!1),charAt:a(!0)}},6566:function(t,e,r){"use strict";var n=r("9bf2").f,i=r("7c73"),a=r("e2cc"),o=r("0366"),u=r("19aa"),s=r("2266"),c=r("7dd0"),l=r("2626"),f=r("83ab"),h=r("f183").fastKey,d=r("69f3"),p=d.set,g=d.getterFor;t.exports={getConstructor:function(t,e,r,c){var l=t((function(t,n){u(t,l,e),p(t,{type:e,index:i(null),first:void 0,last:void 0,size:0}),f||(t.size=0),void 0!=n&&s(n,t[c],t,r)})),d=g(e),y=function(t,e,r){var n,i,a=d(t),o=v(t,e);return o?o.value=r:(a.last=o={index:i=h(e,!0),key:e,value:r,previous:n=a.last,next:void 0,removed:!1},a.first||(a.first=o),n&&(n.next=o),f?a.size++:t.size++,"F"!==i&&(a.index[i]=o)),t},v=function(t,e){var r,n=d(t),i=h(e);if("F"!==i)return n.index[i];for(r=n.first;r;r=r.next)if(r.key==e)return r};return a(l.prototype,{clear:function(){var t=this,e=d(t),r=e.index,n=e.first;while(n)n.removed=!0,n.previous&&(n.previous=n.previous.next=void 0),delete r[n.index],n=n.next;e.first=e.last=void 0,f?e.size=0:t.size=0},delete:function(t){var e=this,r=d(e),n=v(e,t);if(n){var i=n.next,a=n.previous;delete r.index[n.index],n.removed=!0,a&&(a.next=i),i&&(i.previous=a),r.first==n&&(r.first=i),r.last==n&&(r.last=a),f?r.size--:e.size--}return!!n},forEach:function(t){var e,r=d(this),n=o(t,arguments.length>1?arguments[1]:void 0,3);while(e=e?e.next:r.first){n(e.value,e.key,this);while(e&&e.removed)e=e.previous}},has:function(t){return!!v(this,t)}}),a(l.prototype,r?{get:function(t){var e=v(this,t);return e&&e.value},set:function(t,e){return y(this,0===t?0:t,e)}}:{add:function(t){return y(this,t=0===t?0:t,t)}}),f&&n(l.prototype,"size",{get:function(){return d(this).size}}),l},setStrong:function(t,e,r){var n=e+" Iterator",i=g(e),a=g(n);c(t,e,(function(t,e){p(this,{type:n,target:t,state:i(t),kind:e,last:void 0})}),(function(){var t=a(this),e=t.kind,r=t.last;while(r&&r.removed)r=r.previous;return t.target&&(t.last=r=r?r.next:t.state.first)?"keys"==e?{value:r.key,done:!1}:"values"==e?{value:r.value,done:!1}:{value:[r.key,r.value],done:!1}:(t.target=void 0,{value:void 0,done:!0})}),r?"entries":"values",!r,!0),l(e)}}},6613:function(t,e,r){r("a630"),r("fb6a"),r("b0c0"),r("d3b7"),r("25f0"),r("3ca3");var n=r("5a43");function i(t,e){if(t){if("string"===typeof t)return n(t,e);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)?n(t,e):void 0}}t.exports=i},"6b58":function(t,e,r){var n=r("7037"),i=r("3c96");function a(t,e){return!e||"object"!==n(e)&&"function"!==typeof e?i(t):e}t.exports=a},"6d08":function(t,e,r){(function(e){(function(){var r,n,i,a,o,u;"undefined"!==typeof performance&&null!==performance&&performance.now?t.exports=function(){return performance.now()}:"undefined"!==typeof e&&null!==e&&e.hrtime?(t.exports=function(){return(r()-o)/1e6},n=e.hrtime,r=function(){var t;return t=n(),1e9*t[0]+t[1]},a=r(),u=1e9*e.uptime(),o=a-u):Date.now?(t.exports=function(){return Date.now()-i},i=Date.now()):(t.exports=function(){return(new Date).getTime()-i},i=(new Date).getTime())}).call(this)}).call(this,r("4362"))},"6d61":function(t,e,r){"use strict";var n=r("23e7"),i=r("da84"),a=r("94ca"),o=r("6eeb"),u=r("f183"),s=r("2266"),c=r("19aa"),l=r("861d"),f=r("d039"),h=r("1c7e"),d=r("d44e"),p=r("7156");t.exports=function(t,e,r){var g=-1!==t.indexOf("Map"),y=-1!==t.indexOf("Weak"),v=g?"set":"add",m=i[t],b=m&&m.prototype,x=m,w={},k=function(t){var e=b[t];o(b,t,"add"==t?function(t){return e.call(this,0===t?0:t),this}:"delete"==t?function(t){return!(y&&!l(t))&&e.call(this,0===t?0:t)}:"get"==t?function(t){return y&&!l(t)?void 0:e.call(this,0===t?0:t)}:"has"==t?function(t){return!(y&&!l(t))&&e.call(this,0===t?0:t)}:function(t,r){return e.call(this,0===t?0:t,r),this})};if(a(t,"function"!=typeof m||!(y||b.forEach&&!f((function(){(new m).entries().next()})))))x=r.getConstructor(e,t,g,v),u.REQUIRED=!0;else if(a(t,!0)){var S=new x,P=S[v](y?{}:-0,1)!=S,R=f((function(){S.has(1)})),A=h((function(t){new m(t)})),C=!y&&f((function(){var t=new m,e=5;while(e--)t[v](e,e);return!t.has(-0)}));A||(x=e((function(e,r){c(e,x,t);var n=p(new m,e,x);return void 0!=r&&s(r,n[v],n,g),n})),x.prototype=b,b.constructor=x),(R||C)&&(k("delete"),k("has"),g&&k("get")),(C||P)&&k(v),y&&b.clear&&delete b.clear}return w[t]=x,n({global:!0,forced:x!=m},w),d(x,t),y||r.setStrong(x,t,g),x}},7037:function(t,e,r){function n(e){return"function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?t.exports=n=function(t){return typeof t}:t.exports=n=function(t){return t&&"function"===typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},n(e)}r("a4d3"),r("e01a"),r("d28b"),r("d3b7"),r("3ca3"),r("ddb0"),t.exports=n},7156:function(t,e,r){var n=r("861d"),i=r("d2bb");t.exports=function(t,e,r){var a,o;return i&&"function"==typeof(a=e.constructor)&&a!==r&&n(o=a.prototype)&&o!==r.prototype&&i(t,o),t}},"746f":function(t,e,r){var n=r("428f"),i=r("5135"),a=r("e538"),o=r("9bf2").f;t.exports=function(t){var e=n.Symbol||(n.Symbol={});i(e,t)||o(e,t,{value:a.f(t)})}},"7f78":function(t,e,r){var n=r("23e7"),i=r("825a"),a=r("e163"),o=r("e177");n({target:"Reflect",stat:!0,sham:!o},{getPrototypeOf:function(t){return a(i(t))}})},"81d5":function(t,e,r){"use strict";var n=r("7b0b"),i=r("23cb"),a=r("50c4");t.exports=function(t){var e=n(this),r=a(e.length),o=arguments.length,u=i(o>1?arguments[1]:void 0,r),s=o>2?arguments[2]:void 0,c=void 0===s?r:i(s,r);while(c>u)e[u++]=t;return e}},8962:function(t,e,r){r("e439"),r("5d41");var n=r("9f70");function i(e,r,a){return"undefined"!==typeof Reflect&&Reflect.get?t.exports=i=Reflect.get:t.exports=i=function(t,e,r){var i=n(t,e);if(i){var a=Object.getOwnPropertyDescriptor(i,e);return a.get?a.get.call(r):a.value}},i(e,r,a||e)}t.exports=i},"8aa5":function(t,e,r){"use strict";var n=r("6547").charAt;t.exports=function(t,e,r){return e+(r?n(t,e).length:1)}},9523:function(t,e){function r(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}t.exports=r},"96cf":function(t,e,r){var n=function(t){"use strict";var e,r=Object.prototype,n=r.hasOwnProperty,i="function"===typeof Symbol?Symbol:{},a=i.iterator||"@@iterator",o=i.asyncIterator||"@@asyncIterator",u=i.toStringTag||"@@toStringTag";function s(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{s({},"")}catch(V){s=function(t,e,r){return t[e]=r}}function c(t,e,r,n){var i=e&&e.prototype instanceof y?e:y,a=Object.create(i.prototype),o=new M(n||[]);return a._invoke=R(t,r,o),a}function l(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(V){return{type:"throw",arg:V}}}t.wrap=c;var f="suspendedStart",h="suspendedYield",d="executing",p="completed",g={};function y(){}function v(){}function m(){}var b={};b[a]=function(){return this};var x=Object.getPrototypeOf,w=x&&x(x(D([])));w&&w!==r&&n.call(w,a)&&(b=w);var k=m.prototype=y.prototype=Object.create(b);function S(t){["next","throw","return"].forEach((function(e){s(t,e,(function(t){return this._invoke(e,t)}))}))}function P(t,e){function r(i,a,o,u){var s=l(t[i],t,a);if("throw"!==s.type){var c=s.arg,f=c.value;return f&&"object"===typeof f&&n.call(f,"__await")?e.resolve(f.__await).then((function(t){r("next",t,o,u)}),(function(t){r("throw",t,o,u)})):e.resolve(f).then((function(t){c.value=t,o(c)}),(function(t){return r("throw",t,o,u)}))}u(s.arg)}var i;function a(t,n){function a(){return new e((function(e,i){r(t,n,e,i)}))}return i=i?i.then(a,a):a()}this._invoke=a}function R(t,e,r){var n=f;return function(i,a){if(n===d)throw new Error("Generator is already running");if(n===p){if("throw"===i)throw a;return T()}r.method=i,r.arg=a;while(1){var o=r.delegate;if(o){var u=A(o,r);if(u){if(u===g)continue;return u}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if(n===f)throw n=p,r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n=d;var s=l(t,e,r);if("normal"===s.type){if(n=r.done?p:h,s.arg===g)continue;return{value:s.arg,done:r.done}}"throw"===s.type&&(n=p,r.method="throw",r.arg=s.arg)}}}function A(t,r){var n=t.iterator[r.method];if(n===e){if(r.delegate=null,"throw"===r.method){if(t.iterator["return"]&&(r.method="return",r.arg=e,A(t,r),"throw"===r.method))return g;r.method="throw",r.arg=new TypeError("The iterator does not provide a 'throw' method")}return g}var i=l(n,t.iterator,r.arg);if("throw"===i.type)return r.method="throw",r.arg=i.arg,r.delegate=null,g;var a=i.arg;return a?a.done?(r[t.resultName]=a.value,r.next=t.nextLoc,"return"!==r.method&&(r.method="next",r.arg=e),r.delegate=null,g):a:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,g)}function C(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function E(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function M(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(C,this),this.reset(!0)}function D(t){if(t){var r=t[a];if(r)return r.call(t);if("function"===typeof t.next)return t;if(!isNaN(t.length)){var i=-1,o=function r(){while(++i=0;--a){var o=this.tryEntries[a],u=o.completion;if("root"===o.tryLoc)return i("end");if(o.tryLoc<=this.prev){var s=n.call(o,"catchLoc"),c=n.call(o,"finallyLoc");if(s&&c){if(this.prev=0;--r){var i=this.tryEntries[r];if(i.tryLoc<=this.prev&&n.call(i,"finallyLoc")&&this.prev=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),E(r),g}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var i=n.arg;E(r)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(t,r,n){return this.delegate={iterator:D(t),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=e),g}},t}(t.exports);try{regeneratorRuntime=n}catch(i){Function("r","regeneratorRuntime = r")(n)}},"970b":function(t,e){function r(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}t.exports=r},"9b42":function(t,e,r){function n(t,e){if("undefined"!==typeof Symbol&&Symbol.iterator in Object(t)){var r=[],n=!0,i=!1,a=void 0;try{for(var o,u=t[Symbol.iterator]();!(n=(o=u.next()).done);n=!0)if(r.push(o.value),e&&r.length===e)break}catch(s){i=!0,a=s}finally{try{n||null==u["return"]||u["return"]()}finally{if(i)throw a}}return r}}r("a4d3"),r("e01a"),r("d28b"),r("d3b7"),r("3ca3"),r("ddb0"),t.exports=n},"9f70":function(t,e,r){var n=r("36c6");function i(t,e){while(!Object.prototype.hasOwnProperty.call(t,e))if(t=n(t),null===t)break;return t}t.exports=i},a15b:function(t,e,r){"use strict";var n=r("23e7"),i=r("44ad"),a=r("fc6a"),o=r("a640"),u=[].join,s=i!=Object,c=o("join",",");n({target:"Array",proto:!0,forced:s||!c},{join:function(t){return u.call(a(this),void 0===t?",":t)}})},a34a:function(t,e,r){t.exports=r("96cf")},a4d3:function(t,e,r){"use strict";var n=r("23e7"),i=r("da84"),a=r("d066"),o=r("c430"),u=r("83ab"),s=r("4930"),c=r("fdbf"),l=r("d039"),f=r("5135"),h=r("e8b5"),d=r("861d"),p=r("825a"),g=r("7b0b"),y=r("fc6a"),v=r("c04e"),m=r("5c6c"),b=r("7c73"),x=r("df75"),w=r("241c"),k=r("057f"),S=r("7418"),P=r("06cf"),R=r("9bf2"),A=r("d1e7"),C=r("9112"),E=r("6eeb"),M=r("5692"),D=r("f772"),T=r("d012"),V=r("90e3"),O=r("b622"),N=r("e538"),L=r("746f"),I=r("d44e"),z=r("69f3"),B=r("b727").forEach,j=D("hidden"),F="Symbol",$="prototype",_=O("toPrimitive"),q=z.set,G=z.getterFor(F),W=Object[$],X=i.Symbol,U=a("JSON","stringify"),H=P.f,Y=R.f,Q=k.f,Z=A.f,J=M("symbols"),K=M("op-symbols"),tt=M("string-to-symbol-registry"),et=M("symbol-to-string-registry"),rt=M("wks"),nt=i.QObject,it=!nt||!nt[$]||!nt[$].findChild,at=u&&l((function(){return 7!=b(Y({},"a",{get:function(){return Y(this,"a",{value:7}).a}})).a}))?function(t,e,r){var n=H(W,e);n&&delete W[e],Y(t,e,r),n&&t!==W&&Y(W,e,n)}:Y,ot=function(t,e){var r=J[t]=b(X[$]);return q(r,{type:F,tag:t,description:e}),u||(r.description=e),r},ut=c?function(t){return"symbol"==typeof t}:function(t){return Object(t)instanceof X},st=function(t,e,r){t===W&&st(K,e,r),p(t);var n=v(e,!0);return p(r),f(J,n)?(r.enumerable?(f(t,j)&&t[j][n]&&(t[j][n]=!1),r=b(r,{enumerable:m(0,!1)})):(f(t,j)||Y(t,j,m(1,{})),t[j][n]=!0),at(t,n,r)):Y(t,n,r)},ct=function(t,e){p(t);var r=y(e),n=x(r).concat(pt(r));return B(n,(function(e){u&&!ft.call(r,e)||st(t,e,r[e])})),t},lt=function(t,e){return void 0===e?b(t):ct(b(t),e)},ft=function(t){var e=v(t,!0),r=Z.call(this,e);return!(this===W&&f(J,e)&&!f(K,e))&&(!(r||!f(this,e)||!f(J,e)||f(this,j)&&this[j][e])||r)},ht=function(t,e){var r=y(t),n=v(e,!0);if(r!==W||!f(J,n)||f(K,n)){var i=H(r,n);return!i||!f(J,n)||f(r,j)&&r[j][n]||(i.enumerable=!0),i}},dt=function(t){var e=Q(y(t)),r=[];return B(e,(function(t){f(J,t)||f(T,t)||r.push(t)})),r},pt=function(t){var e=t===W,r=Q(e?K:y(t)),n=[];return B(r,(function(t){!f(J,t)||e&&!f(W,t)||n.push(J[t])})),n};if(s||(X=function(){if(this instanceof X)throw TypeError("Symbol is not a constructor");var t=arguments.length&&void 0!==arguments[0]?String(arguments[0]):void 0,e=V(t),r=function(t){this===W&&r.call(K,t),f(this,j)&&f(this[j],e)&&(this[j][e]=!1),at(this,e,m(1,t))};return u&&it&&at(W,e,{configurable:!0,set:r}),ot(e,t)},E(X[$],"toString",(function(){return G(this).tag})),E(X,"withoutSetter",(function(t){return ot(V(t),t)})),A.f=ft,R.f=st,P.f=ht,w.f=k.f=dt,S.f=pt,N.f=function(t){return ot(O(t),t)},u&&(Y(X[$],"description",{configurable:!0,get:function(){return G(this).description}}),o||E(W,"propertyIsEnumerable",ft,{unsafe:!0}))),n({global:!0,wrap:!0,forced:!s,sham:!s},{Symbol:X}),B(x(rt),(function(t){L(t)})),n({target:F,stat:!0,forced:!s},{for:function(t){var e=String(t);if(f(tt,e))return tt[e];var r=X(e);return tt[e]=r,et[r]=e,r},keyFor:function(t){if(!ut(t))throw TypeError(t+" is not a symbol");if(f(et,t))return et[t]},useSetter:function(){it=!0},useSimple:function(){it=!1}}),n({target:"Object",stat:!0,forced:!s,sham:!u},{create:lt,defineProperty:st,defineProperties:ct,getOwnPropertyDescriptor:ht}),n({target:"Object",stat:!0,forced:!s},{getOwnPropertyNames:dt,getOwnPropertySymbols:pt}),n({target:"Object",stat:!0,forced:l((function(){S.f(1)}))},{getOwnPropertySymbols:function(t){return S.f(g(t))}}),U){var gt=!s||l((function(){var t=X();return"[null]"!=U([t])||"{}"!=U({a:t})||"{}"!=U(Object(t))}));n({target:"JSON",stat:!0,forced:gt},{stringify:function(t,e,r){var n,i=[t],a=1;while(arguments.length>a)i.push(arguments[a++]);if(n=e,(d(e)||void 0!==t)&&!ut(t))return h(e)||(e=function(t,e){if("function"==typeof n&&(e=n.call(this,t,e)),!ut(e))return e}),i[1]=e,U.apply(null,i)}})}X[$][_]||C(X[$],_,X[$].valueOf),I(X,F),T[j]=!0},a623:function(t,e,r){"use strict";var n=r("23e7"),i=r("b727").every,a=r("a640"),o=r("ae40"),u=a("every"),s=o("every");n({target:"Array",proto:!0,forced:!u||!s},{every:function(t){return i(this,t,arguments.length>1?arguments[1]:void 0)}})},a630:function(t,e,r){var n=r("23e7"),i=r("4df4"),a=r("1c7e"),o=!a((function(t){Array.from(t)}));n({target:"Array",stat:!0,forced:o},{from:i})},a6fd:function(t,e,r){var n=r("23e7"),i=r("d066"),a=r("1c0b"),o=r("825a"),u=r("d039"),s=i("Reflect","apply"),c=Function.apply,l=!u((function(){s((function(){}))}));n({target:"Reflect",stat:!0,forced:l},{apply:function(t,e,r){return a(t),o(r),s?s(t,e,r):c.call(t,e,r)}})},a9e3:function(t,e,r){"use strict";var n=r("83ab"),i=r("da84"),a=r("94ca"),o=r("6eeb"),u=r("5135"),s=r("c6b6"),c=r("7156"),l=r("c04e"),f=r("d039"),h=r("7c73"),d=r("241c").f,p=r("06cf").f,g=r("9bf2").f,y=r("58a8").trim,v="Number",m=i[v],b=m.prototype,x=s(h(b))==v,w=function(t){var e,r,n,i,a,o,u,s,c=l(t,!1);if("string"==typeof c&&c.length>2)if(c=y(c),e=c.charCodeAt(0),43===e||45===e){if(r=c.charCodeAt(2),88===r||120===r)return NaN}else if(48===e){switch(c.charCodeAt(1)){case 66:case 98:n=2,i=49;break;case 79:case 111:n=8,i=55;break;default:return+c}for(a=c.slice(2),o=a.length,u=0;ui)return NaN;return parseInt(a,n)}return+c};if(a(v,!m(" 0o1")||!m("0b1")||m("+0x1"))){for(var k,S=function(t){var e=arguments.length<1?0:t,r=this;return r instanceof S&&(x?f((function(){b.valueOf.call(r)})):s(r)!=v)?c(new m(w(e)),r,S):w(e)},P=n?d(m):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger".split(","),R=0;P.length>R;R++)u(m,k=P[R])&&!u(S,k)&&g(S,k,p(m,k));S.prototype=b,b.constructor=S,o(i,v,S)}},ac16:function(t,e,r){var n=r("23e7"),i=r("825a"),a=r("06cf").f;n({target:"Reflect",stat:!0},{deleteProperty:function(t,e){var r=a(i(t),e);return!(r&&!r.configurable)&&delete t[e]}})},b041:function(t,e,r){"use strict";var n=r("00ee"),i=r("f5df");t.exports=n?{}.toString:function(){return"[object "+i(this)+"]"}},b0c0:function(t,e,r){var n=r("83ab"),i=r("9bf2").f,a=Function.prototype,o=a.toString,u=/^\s*function ([^ (]*)/,s="name";n&&!(s in a)&&i(a,s,{configurable:!0,get:function(){try{return o.call(this).match(u)[1]}catch(t){return""}}})},b64b:function(t,e,r){var n=r("23e7"),i=r("7b0b"),a=r("df75"),o=r("d039"),u=o((function(){a(1)}));n({target:"Object",stat:!0,forced:u},{keys:function(t){return a(i(t))}})},bb2f:function(t,e,r){var n=r("d039");t.exports=!n((function(){return Object.isExtensible(Object.preventExtensions({}))}))},c135:function(t,e){function r(t){if(Array.isArray(t))return t}t.exports=r},c240:function(t,e){function r(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}t.exports=r},c449:function(t,e,r){(function(e){for(var n=r("6d08"),i="undefined"===typeof window?e:window,a=["moz","webkit"],o="AnimationFrame",u=i["request"+o],s=i["cancel"+o]||i["cancelRequest"+o],c=0;!u&&c1?arguments[1]:void 0)}})},cb29:function(t,e,r){var n=r("23e7"),i=r("81d5"),a=r("44d2");n({target:"Array",proto:!0},{fill:i}),a("fill")},d28b:function(t,e,r){var n=r("746f");n("iterator")},d3b7:function(t,e,r){var n=r("00ee"),i=r("6eeb"),a=r("b041");n||i(Object.prototype,"toString",a,{unsafe:!0})},d58f:function(t,e,r){var n=r("1c0b"),i=r("7b0b"),a=r("44ad"),o=r("50c4"),u=function(t){return function(e,r,u,s){n(r);var c=i(e),l=a(c),f=o(c.length),h=t?f-1:0,d=t?-1:1;if(u<2)while(1){if(h in l){s=l[h],h+=d;break}if(h+=d,t?h<0:f<=h)throw TypeError("Reduce of empty array with no initial value")}for(;t?h>=0:f>h;h+=d)h in l&&(s=r(s,l[h],h,c));return s}};t.exports={left:u(!1),right:u(!0)}},d81d:function(t,e,r){"use strict";var n=r("23e7"),i=r("b727").map,a=r("1dde"),o=r("ae40"),u=a("map"),s=o("map");n({target:"Array",proto:!0,forced:!u||!s},{map:function(t){return i(this,t,arguments.length>1?arguments[1]:void 0)}})},dbb4:function(t,e,r){var n=r("23e7"),i=r("83ab"),a=r("56ef"),o=r("fc6a"),u=r("06cf"),s=r("8418");n({target:"Object",stat:!0,sham:!i},{getOwnPropertyDescriptors:function(t){var e,r,n=o(t),i=u.f,c=a(n),l={},f=0;while(c.length>f)r=i(n,e=c[f++]),void 0!==r&&s(l,e,r);return l}})},ddb0:function(t,e,r){var n=r("da84"),i=r("fdbc"),a=r("e260"),o=r("9112"),u=r("b622"),s=u("iterator"),c=u("toStringTag"),l=a.values;for(var f in i){var h=n[f],d=h&&h.prototype;if(d){if(d[s]!==l)try{o(d,s,l)}catch(g){d[s]=l}if(d[c]||o(d,c,f),i[f])for(var p in a)if(d[p]!==a[p])try{o(d,p,a[p])}catch(g){d[p]=a[p]}}}},e01a:function(t,e,r){"use strict";var n=r("23e7"),i=r("83ab"),a=r("da84"),o=r("5135"),u=r("861d"),s=r("9bf2").f,c=r("e893"),l=a.Symbol;if(i&&"function"==typeof l&&(!("description"in l.prototype)||void 0!==l().description)){var f={},h=function(){var t=arguments.length<1||void 0===arguments[0]?void 0:String(arguments[0]),e=this instanceof h?new l(t):void 0===t?l():l(t);return""===t&&(f[e]=!0),e};c(h,l);var d=h.prototype=l.prototype;d.constructor=h;var p=d.toString,g="Symbol(test)"==String(l("test")),y=/^Symbol\((.*)\)[^)]+$/;s(d,"description",{configurable:!0,get:function(){var t=u(this)?this.valueOf():this,e=p.call(t);if(o(f,t))return"";var r=g?e.slice(7,-1):e.replace(y,"$1");return""===r?void 0:r}}),n({global:!0,forced:!0},{Symbol:h})}},e439:function(t,e,r){var n=r("23e7"),i=r("d039"),a=r("fc6a"),o=r("06cf").f,u=r("83ab"),s=i((function(){o(1)})),c=!u||s;n({target:"Object",stat:!0,forced:c,sham:!u},{getOwnPropertyDescriptor:function(t,e){return o(a(t),e)}})},e538:function(t,e,r){var n=r("b622");e.f=n},ed6d:function(t,e,r){var n=r("4a4b");function i(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&&n(t,e)}t.exports=i},f183:function(t,e,r){var n=r("d012"),i=r("861d"),a=r("5135"),o=r("9bf2").f,u=r("90e3"),s=r("bb2f"),c=u("meta"),l=0,f=Object.isExtensible||function(){return!0},h=function(t){o(t,c,{value:{objectID:"O"+ ++l,weakData:{}}})},d=function(t,e){if(!i(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!a(t,c)){if(!f(t))return"F";if(!e)return"E";h(t)}return t[c].objectID},p=function(t,e){if(!a(t,c)){if(!f(t))return!0;if(!e)return!1;h(t)}return t[c].weakData},g=function(t){return s&&y.REQUIRED&&f(t)&&!a(t,c)&&h(t),t},y=t.exports={REQUIRED:!1,fastKey:d,getWeakData:p,onFreeze:g};n[c]=!0}}]); +//# sourceMappingURL=chunk-442e92d4.62be7804.js.map \ No newline at end of file diff --git a/docs/js/chunk-442e92d4.62be7804.js.map b/docs/js/chunk-442e92d4.62be7804.js.map new file mode 100644 index 0000000..df6af7e --- /dev/null +++ b/docs/js/chunk-442e92d4.62be7804.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["webpack:///./node_modules/core-js/internals/function-bind.js","webpack:///./node_modules/core-js/internals/object-get-own-property-names-external.js","webpack:///./node_modules/@babel/runtime/helpers/nonIterableSpread.js","webpack:///./node_modules/canvg/lib/index.es.js","webpack:///./node_modules/@babel/runtime/helpers/iterableToArray.js","webpack:///./node_modules/core-js/modules/es.string.split.js","webpack:///./node_modules/core-js/modules/es.array.reduce.js","webpack:///./node_modules/@babel/runtime/helpers/arrayWithoutHoles.js","webpack:///./node_modules/core-js/modules/es.regexp.to-string.js","webpack:///./node_modules/core-js/modules/es.array.reverse.js","webpack:///./node_modules/@babel/runtime/helpers/slicedToArray.js","webpack:///./node_modules/core-js/modules/es.string.starts-with.js","webpack:///./node_modules/core-js/modules/es.object.get-prototype-of.js","webpack:///./node_modules/@babel/runtime/helpers/getPrototypeOf.js","webpack:///./node_modules/@babel/runtime/helpers/assertThisInitialized.js","webpack:///./node_modules/core-js/modules/es.string.iterator.js","webpack:///./node_modules/@babel/runtime/helpers/toConsumableArray.js","webpack:///./node_modules/core-js/modules/es.array.some.js","webpack:///./node_modules/core-js/modules/es.string.match.js","webpack:///./node_modules/core-js/modules/es.string.trim.js","webpack:///./node_modules/@babel/runtime/helpers/setPrototypeOf.js","webpack:///./node_modules/core-js/modules/es.reflect.construct.js","webpack:///./node_modules/core-js/internals/array-from.js","webpack:///./node_modules/core-js/modules/es.map.js","webpack:///./node_modules/core-js/modules/es.string.replace.js","webpack:///./node_modules/core-js/internals/whitespaces.js","webpack:///./node_modules/core-js/internals/string-trim.js","webpack:///./node_modules/rgbcolor/index.js","webpack:///./node_modules/@babel/runtime/helpers/arrayLikeToArray.js","webpack:///./node_modules/@babel/runtime/helpers/createClass.js","webpack:///./node_modules/core-js/modules/es.reflect.get.js","webpack:///./node_modules/stackblur-canvas/dist/stackblur-es.js","webpack:///./node_modules/core-js/internals/string-multibyte.js","webpack:///./node_modules/core-js/internals/collection-strong.js","webpack:///./node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js","webpack:///./node_modules/@babel/runtime/helpers/possibleConstructorReturn.js","webpack:///./node_modules/performance-now/lib/performance-now.js","webpack:///./node_modules/core-js/internals/collection.js","webpack:///./node_modules/@babel/runtime/helpers/typeof.js","webpack:///./node_modules/core-js/internals/inherit-if-required.js","webpack:///./node_modules/core-js/internals/define-well-known-symbol.js","webpack:///./node_modules/core-js/modules/es.reflect.get-prototype-of.js","webpack:///./node_modules/core-js/internals/array-fill.js","webpack:///./node_modules/@babel/runtime/helpers/get.js","webpack:///./node_modules/core-js/internals/advance-string-index.js","webpack:///./node_modules/@babel/runtime/helpers/defineProperty.js","webpack:///./node_modules/regenerator-runtime/runtime.js","webpack:///./node_modules/@babel/runtime/helpers/classCallCheck.js","webpack:///./node_modules/@babel/runtime/helpers/iterableToArrayLimit.js","webpack:///./node_modules/@babel/runtime/helpers/superPropBase.js","webpack:///./node_modules/core-js/modules/es.array.join.js","webpack:///./node_modules/@babel/runtime/regenerator/index.js","webpack:///./node_modules/core-js/modules/es.symbol.js","webpack:///./node_modules/core-js/modules/es.array.every.js","webpack:///./node_modules/core-js/modules/es.array.from.js","webpack:///./node_modules/core-js/modules/es.reflect.apply.js","webpack:///./node_modules/core-js/modules/es.number.constructor.js","webpack:///./node_modules/core-js/modules/es.reflect.delete-property.js","webpack:///./node_modules/core-js/internals/object-to-string.js","webpack:///./node_modules/core-js/modules/es.function.name.js","webpack:///./node_modules/core-js/modules/es.object.keys.js","webpack:///./node_modules/core-js/internals/freezing.js","webpack:///./node_modules/@babel/runtime/helpers/arrayWithHoles.js","webpack:///./node_modules/@babel/runtime/helpers/nonIterableRest.js","webpack:///./node_modules/raf/index.js","webpack:///./node_modules/core-js/internals/string-trim-forced.js","webpack:///./node_modules/@babel/runtime/helpers/asyncToGenerator.js","webpack:///./node_modules/core-js/modules/es.array.index-of.js","webpack:///./node_modules/core-js/modules/es.array.fill.js","webpack:///./node_modules/core-js/modules/es.symbol.iterator.js","webpack:///./node_modules/core-js/modules/es.object.to-string.js","webpack:///./node_modules/core-js/internals/array-reduce.js","webpack:///./node_modules/core-js/modules/es.array.map.js","webpack:///./node_modules/core-js/modules/es.object.get-own-property-descriptors.js","webpack:///./node_modules/core-js/modules/web.dom-collections.iterator.js","webpack:///./node_modules/core-js/modules/es.symbol.description.js","webpack:///./node_modules/core-js/modules/es.object.get-own-property-descriptor.js","webpack:///./node_modules/core-js/internals/well-known-symbol-wrapped.js","webpack:///./node_modules/@babel/runtime/helpers/inherits.js","webpack:///./node_modules/core-js/internals/internal-metadata.js"],"names":["aFunction","isObject","slice","factories","construct","C","argsLength","args","list","i","Function","join","module","exports","bind","that","fn","this","partArgs","call","arguments","boundFunction","concat","length","apply","prototype","toIndexedObject","nativeGetOwnPropertyNames","f","toString","windowNames","window","Object","getOwnPropertyNames","getWindowNames","it","error","_nonIterableSpread","TypeError","compressSpaces","str","replace","trimLeft","trimRight","toNumbers","matches","match","map","parseFloat","allUppercase","normalizeAttributeName","name","test","toLowerCase","parseExternalUrl","url","urlMatch","normalizeColor","color","startsWith","rgbParts","normalizedColor","num","isFloat","String","Math","round","attributeRegex","idRegex","classRegex","pseudoElementRegex","pseudoClassWithBracketsRegex","pseudoClassRegex","elementRegex","findSelectorMatch","selector","regex","getSelectorSpecificity","specificity","currentSelector","delta","_findSelectorMatch","_findSelectorMatch2","_findSelectorMatch3","_findSelectorMatch4","_findSelectorMatch5","_findSelectorMatch6","_findSelectorMatch7","_findSelectorMatch8","_findSelectorMatch9","_findSelectorMatch10","_findSelectorMatch11","_findSelectorMatch12","_findSelectorMatch13","_findSelectorMatch14","PSEUDO_ZERO","vectorMagnitude","v","sqrt","pow","vectorsRatio","u","vectorsAngle","acos","CB1","t","CB2","CB3","CB4","QB1","QB2","QB3","createCommonjsModule","runtime","undefined$1","Op","hasOwn","hasOwnProperty","$Symbol","Symbol","iteratorSymbol","iterator","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","toStringTag","wrap","innerFn","outerFn","self","tryLocsList","protoGenerator","Generator","generator","create","context","Context","_invoke","makeInvokeMethod","tryCatch","obj","arg","type","err","GenStateSuspendedStart","GenStateSuspendedYield","GenStateExecuting","GenStateCompleted","ContinueSentinel","GeneratorFunction","GeneratorFunctionPrototype","IteratorPrototype","getProto","getPrototypeOf","NativeIteratorPrototype","values","Gp","defineIteratorMethods","forEach","method","AsyncIterator","PromiseImpl","invoke","resolve","reject","record","result","value","__await","then","unwrapped","previousPromise","enqueue","callInvokeWithMethodAndArg","state","Error","doneResult","delegate","delegateResult","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","done","info","resultName","next","nextLoc","pushTryEntry","locs","entry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","iterable","iteratorMethod","isNaN","constructor","displayName","isGeneratorFunction","genFun","ctor","mark","setPrototypeOf","__proto__","awrap","async","Promise","iter","keys","object","key","reverse","pop","skipTempReset","prev","charAt","stop","rootEntry","rootRecord","rval","exception","handle","loc","caught","hasCatch","hasFinally","finallyEntry","complete","finish","thrown","delegateYield","regeneratorRuntime","accidentalStrictMode","Property","document","isNormalizedColor","regexp","isString","hasValue","asString","getString","def","n","rootEmSize","emSize","axisOrIsFontSize","processPercent","undefined","_ref","_ref2","axis","isFontSize","viewPort","screen","getNumber","min","computeSize","max","getRem","getEm","getDpi","PI","definitions","element","opacity","getDefinition","createGradient","ctx","createPattern","getHrefAttribute","patternTransform","getAttribute","setValue","textBaselineMapping","getColor","len","commas","ok","alpha","toRGBA","ViewPort","viewPorts","width","height","d","get","getCurrent","Point","x","y","point","atan2","transform","xp","yp","defaultValue","_toNumbers","_toNumbers2","_toNumbers2$","_toNumbers2$2","scale","_toNumbers3","_toNumbers4","_toNumbers4$","_toNumbers4$2","path","points","pathPoints","Mouse","working","events","eventElements","onClick","onMouseMove","canvas","onclick","onmousemove","style","cursor","run","parent","isPointInPath","boundingBox","_ref3","isPointInBox","_this$screen","offsetLeft","offsetTop","offsetParent","scrollX","scrollY","evt","_this$mapXY","mapXY","event","clientX","clientY","_this$mapXY2","defaultWindow","defaultFetch","fetch","Screen","_ref$fetch","_ref$window","FRAMERATE","MAX_VIRTUAL_PIXELS","CLIENT_WIDTH","CLIENT_HEIGHT","mouse","animations","waits","frameDuration","isReadyLock","isFirstRender","intervalId","checker","readyPromise","every","_","resolveReady","strokeStyle","lineCap","lineJoin","miterLimit","aspectRatio","desiredWidth","desiredHeight","_ref2$minX","minX","_ref2$minY","minY","refX","refY","_ref2$clip","clip","_ref2$clipX","clipX","_ref2$clipY","clipY","cleanAspectRatio","_cleanAspectRatio$spl","split","_cleanAspectRatio$spl2","aspectRatioAlign","aspectRatioMeetOrSlice","align","meetOrSlice","scaleX","scaleY","scaleMin","scaleMax","finalDesiredWidth","finalDesiredHeight","refXProp","refYProp","hasRefs","translate","getPixels","scaledClipX","scaledClipY","beginPath","moveTo","lineTo","closePath","isMeetMinY","isSliceMaxY","isMeetMinX","isSliceMaxX","_this","_ref3$enableRedraw","enableRedraw","_ref3$ignoreMouse","ignoreMouse","_ref3$ignoreAnimation","ignoreAnimation","_ref3$ignoreDimension","ignoreDimensions","_ref3$ignoreClear","ignoreClear","forceRedraw","scaleWidth","scaleHeight","offsetX","offsetY","isReady","render","now","Date","tick","shouldUpdate","runEvents","start","cancel","reduce","animation","update","hasEvents","clear","setCurrent","widthStyle","getStyle","heightStyle","cWidth","clientWidth","cHeight","clientHeight","viewBox","xRatio","yRatio","_widthStyle","_heightStyle","transformStyle","clearRect","defaultFetch$1","DefaultDOMParser","DOMParser","Parser","_ref$DOMParser","_parse","_callee","resource","_context","parseFromString","load","parse","_x","xml","parser","checkDocument","parserError","getElementsByTagName","textContent","_load","_callee2","response","_context2","text","_x2","Translate","_this$point","_this$point2","_this$point3","applyTransform","Rotate","rotate","transformOrigin","angle","cx","cy","numbers","getRadians","rad","cos","sin","Scale","scaleSize","parseScale","_this$scale","_this$scale2","_this$scale3","Matrix","matrix","a","b","c","e","g","h","det","_createSuper","Derived","Super","_isNativeReflectConstruct","NewTarget","Reflect","sham","Proxy","Skew","_Matrix","_super","skew","_createSuper$1","_isNativeReflectConstruct$1","SkewX","_Skew","tan","_createSuper$2","_isNativeReflectConstruct$2","SkewY","parseTransforms","trim","parseTransform","_transform$split","_transform$split2","Transform","transforms","data","originCoords","_parseTransform","_parseTransform2","TransformType","transformTypes","unapply","applyToPoint","transformOriginStyle","skewX","skewY","Element","node","captureTextNodes","attributes","styles","stylesSpecificity","animationFrozen","animationFrozenValue","children","nodeType","Array","from","attribute","nodeName","addStylesFromStyleDefinition","_style$split$map","_style$split$map2","id","getValue","childNodes","childNode","addChild","textNode","createTextNode","getText","createIfNotExists","attr","_attr","empty","skipAncestors","parentStyle","_style","save","mask","applyEffects","filter","setContext","renderChildren","clearContext","restore","fromElement","clipPathStyleProp","child","createElement","ignoreChildTypes","includes","styleClasses","some","styleClass","_this$document","matchesSelector","existingSpecificity","ignoreStyles","toRestore","styleProp","_createSuper$3","_isNativeReflectConstruct$3","UnknownElement","_Element","wrapFontFamily","fontFamily","trimmed","prepareFontFamily","process","prepareFontStyle","fontStyle","targetFontStyle","prepareFontWeight","fontWeight","targetFontWeight","Font","fontVariant","fontSize","inherit","inheritFont","font","parts","set","part","variants","weights","_part$split","_part$split2","BoundingBox","x1","Number","NaN","y1","x2","y2","addPoint","p0","p1","p2","p3","forX","b2ac","t1","addX","sumCubic","addY","t2","p0x","p0y","p1x","p1y","p2x","p2y","p3x","p3y","bezierCurveAdd","cp1x","cp1y","cp2x","cp2y","addBezierCurve","_createSuper$4","_isNativeReflectConstruct$4","RenderedElement","modifiedEmSizeStack","opacityStyle","fromMeasure","fillStyleProp","fillOpacityStyleProp","strokeStyleProp","strokeOpacityProp","isUrlDefinition","fillStyle","getFillStyleDefinition","_fillStyle","_fillStyle2","addOpacity","_strokeStyle","_strokeStyle2","strokeWidthStyleProp","newLineWidth","lineWidth","strokeLinecapStyleProp","strokeLinejoinStyleProp","strokeMiterlimitProp","pointOrderStyleProp","strokeDasharrayStyleProp","strokeDashoffsetProp","paintOrder","gaps","setLineDash","webkitLineDash","mozDash","offset","lineDashOffset","webkitLineDashOffset","mozDashOffset","fontStyleProp","fontStyleStyleProp","fontVariantStyleProp","fontWeightStyleProp","fontSizeStyleProp","fontFamilyStyleProp","isPixels","globalAlpha","calculateOpacity","popEmSize","_createSuper$5","_isNativeReflectConstruct$5","TextElement","_RenderedElement","measureCache","textBaseline","getTextBaseline","dxAttr","dyAttr","getAnchorDelta","_this2","getTElementBoundingBox","initializeCoordinates","childBoundingBox","getChildBoundingBox","addBoundingBox","inheritFontSize","getFontSize","measureText","char","glyph","isArabic","prevChar","nextChar","arabicForm","glyphs","missingGlyph","parentNode","index","indexOf","lastIndex","_this3","renderChild","isWorking","checkBoundingBox","getBoundingBox","renderTElementChildren","renderText","customFont","unitsPerEm","fontFace","ctxFont","isRTL","dx","getGlyph","lw","horizAdvX","strokeText","fillText","startI","textAnchor","measureTextRecursive","textParent","xAttr","yAttr","_width","adjustChildCoordinates","measure","measureTargetText","targetText","_measure","_ctx$measureText","_createSuper$6","_isNativeReflectConstruct$6","TSpanElement","_TextElement","getTextFromNode","_createSuper$7","_isNativeReflectConstruct$7","TextNode","_TSpanElement","preparePath","PathParser","control","current","command","tokens","previousCommand","angles","isEnd","getToken","getScalar","makeAbsolute","getPoint","_this$current","_this$control","ox","oy","isRelativeCommand","_this$current2","priorTo","angleTo","addMarkerAngle","j","_createSuper$8","_isNativeReflectConstruct$8","PathElement","pathParser","nextCommand","pathM","pathL","pathH","pathV","pathC","pathS","pathQ","pathT","pathA","pathZ","getMarkerPoints","getMarkerAngles","markers","checkPath","fillRuleStyleProp","fill","stroke","getMarkers","markersLastIndex","markerStartStyleProp","markerMidStyleProp","markerEndStyleProp","marker","_markers$","_marker","_markers$i","_point","_angle","_marker2","_markers$markersLastI","_point2","_angle2","getAsCurrentPoint","addMarker","isCommandOrEnd","_point3","_y","controlPoint","getAsControlPoint","currentPoint","bezierCurveTo","getReflectedControlPoint","addQuadraticCurve","quadraticCurveTo","rx","ry","xAxisRotation","largeArcFlag","sweepFlag","currp","l","s","cpp","centp","a1","ad","dir","ah","halfWay","r","sx","sy","arc","Boolean","_createSuper$9","_isNativeReflectConstruct$9","SVGElement","root","removeCurrent","setDefaults","getComputedStyle","getPropertyValue","fontSizeProp","_screen$viewPort","refXAttr","refYAttr","viewBoxAttr","setViewBox","preserveAspectRatio","widthAttr","heightAttr","styleAttr","originWidth","originHeight","preserveAspectRatioAttr","_createSuper$a","_isNativeReflectConstruct$a","RectElement","_PathElement","rxAttr","ryAttr","KAPPA","_createSuper$b","_isNativeReflectConstruct$b","CircleElement","_createSuper$c","_isNativeReflectConstruct$c","EllipseElement","_createSuper$d","_isNativeReflectConstruct$d","LineElement","_this$getPoints","getPoints","_this$getPoints2","_this$getPoints2$","x0","y0","_this$getPoints2$2","_this$getPoints3","_this$getPoints4","_createSuper$e","_isNativeReflectConstruct$e","PolylineElement","parsePath","_points","_points$","_createSuper$f","_isNativeReflectConstruct$f","PolygonElement","_PolylineElement","_this$points","_this$points$","_createSuper$g","_isNativeReflectConstruct$g","PatternElement","parentOpacityProp","patternSvg","patternCanvas","createCanvas","patternCtx","getContext","deleteProperty","pattern","_createSuper$h","_isNativeReflectConstruct$h","MarkerElement","orient","markerUnits","markerSvg","overflow","_createSuper$i","_isNativeReflectConstruct$i","DefsElement","_createSuper$j","_isNativeReflectConstruct$j","GElement","_createSuper$k","_isNativeReflectConstruct$k","GradientElement","attributesToInherit","stops","_assertThisInitialize","stopsContainer","inheritStopContainer","_stopsContainer","gradient","getGradient","addParentOpacity","addColorStop","_document$screen","_viewPort$viewPorts","rootView","rect","group","attributeToInherit","colorProp","_createSuper$l","_isNativeReflectConstruct$l","LinearGradientElement","_GradientElement","isBoundingBoxUnits","getGradientUnits","createLinearGradient","_createSuper$m","_isNativeReflectConstruct$m","RadialGradientElement","fx","fy","fr","createRadialGradient","_createSuper$n","_isNativeReflectConstruct$n","StopElement","stopOpacity","stopColor","_createSuper$o","_isNativeReflectConstruct$o","AnimateElement","duration","initialValue","initialUnits","removed","frozen","begin","getMilliseconds","maxDuration","to","attributeType","attributeName","_this$getProgress","getProgress","progress","newValue","prop","getProperty","getUnits","updated","calcValue","typeAttr","p","lb","floor","ub","ceil","_createSuper$p","_isNativeReflectConstruct$p","AnimateColorElement","_AnimateElement","colorFrom","colorTo","parseInt","_createSuper$q","_isNativeReflectConstruct$q","AnimateTransformElement","transformFrom","transformTo","_createForOfIteratorHelper","o","isArray","_unsupportedIterableToArray","F","_e","normalCompletion","didErr","step","_e2","return","minLen","_arrayLikeToArray","arr","arr2","_createSuper$r","_isNativeReflectConstruct$r","FontElement","_step","_iterator","fontFamilyStyle","unicode","_createSuper$s","_isNativeReflectConstruct$s","FontFaceElement","ascent","descent","_createSuper$t","_isNativeReflectConstruct$t","MissingGlyphElement","_createSuper$u","_isNativeReflectConstruct$u","GlyphElement","_createSuper$v","_isNativeReflectConstruct$v","TRefElement","firstChild","_createSuper$w","_isNativeReflectConstruct$w","AElement","hasText","open","_createForOfIteratorHelper$1","_unsupportedIterableToArray$1","_arrayLikeToArray$1","_createSuper$x","_isNativeReflectConstruct$x","TextPathElement","textWidth","textHeight","pathLength","glyphInfo","letterSpacingCache","measuresCache","Map","pathElement","dataArray","parsePathData","theta","dTheta","psi","fs","setTextData","textDecoration","partialText","rotation","idx","anchor","textFullWidth","fullPathWidth","spacesNumber","inputOffset","charI","glyphWidth","getLetterSpacingAt","splineStep","segment","getEquidistantPointOnPath","has","chars","thisSpacing","parentSpacing","letterSpacing","textLen","dxSum","acc","cur","getPathLength","startOffset","_this2$findSegmentToF","findSegmentToFitChar","nextOffset","getLineLength","kern","midpoint","getPointOnLine","transposeX","transposeY","pathCommands","startX","startY","cmd","upperCommand","toUpperCase","calcLength","_p","getPointOnCubicBezier","getPointOnQuadraticBezier","end","inc","abs","getPointOnEllipticalArc","dist","P1x","P1y","P2x","P2y","fromX","fromY","m","rise","pt","ix","iy","pRise","pRun","distance","fullLen","cumulativePathLength","pathCmd","currentT","pct","P3x","P3y","P4x","P4y","cosPsi","sinPsi","inputStep","inputPrecision","precision","equidistantCache","getPointOnPath","targetDistance","buildEquidistantCache","_createSuper$y","_isNativeReflectConstruct$y","ImageElement","loaded","href","isSvg","images","loadSvg","loadImage","_loadImage","image","createImage","t0","console","_loadSvg","svg","canvg","forkString","_image","drawImage","_createSuper$z","_isNativeReflectConstruct$z","SymbolElement","SVGFontLoader","fonts","svgDocument","fontNode","_createSuper$A","_isNativeReflectConstruct$A","StyleElement","css","cssDefs","cssParts","cssClasses","cssProps","cssClass","props","cssProp","substr","srcs","src","_createSuper$B","_isNativeReflectConstruct$B","UseElement","tempSvg","oldParent","_element","_createSuper$C","_isNativeReflectConstruct$C","imGet","img","rgba","imSet","val","mi","m1","m2","m3","FeColorMatrixElement","includeOpacity","__","srcData","getImageData","nr","ng","nb","na","putImageData","_createSuper$D","_isNativeReflectConstruct$D","MaskElement","ignoredStyles","removeStyles","maskCanvas","maskCtx","tmpCanvas","tmpCtx","globalCompositeOperation","fillRect","restoreStyles","_createSuper$E","_isNativeReflectConstruct$E","noop","ClipPathElement","contextProto","elementTransform","_createSuper$F","_isNativeReflectConstruct$F","FilterElement","px","py","efd","extraFilterDistance","tmpCanvasWidth","tmpCanvasHeight","_createSuper$G","_isNativeReflectConstruct$G","FeDropShadowElement","___","____","_____","_createSuper$H","_isNativeReflectConstruct$H","FeMorphologyElement","_createSuper$I","_isNativeReflectConstruct$I","FeCompositeElement","_createSuper$J","_isNativeReflectConstruct$J","FeGaussianBlurElement","blurRadius","body","getUniqueId","display","appendChild","removeChild","_createSuper$K","_isNativeReflectConstruct$K","TitleElement","_createSuper$L","_isNativeReflectConstruct$L","DescElement","elementTypes","ownKeys","enumerableOnly","getOwnPropertySymbols","symbols","sym","getOwnPropertyDescriptor","enumerable","_objectSpread","target","source","getOwnPropertyDescriptors","defineProperties","defineProperty","_createImage","anonymousCrossOrigin","_args","crossOrigin","onload","onerror","Document","_ref$rootEmSize","_ref$emSize","_ref$createCanvas","_ref$createImage","emSizeStack","uniqueId","bindCreateImage","wait","isImagesLoaded","isFontsLoaded","forceAnonymousCrossOrigin","documentElement","elementType","ElementType","config","ownKeys$1","_objectSpread$1","Canvg","options","createDocumentElement","fromString","ready","_render","baseOptions","resize","_from","_args2","offscreen","DOMParserFallback","preset","OffscreenCanvas","blob","createImageBitmap","freeze","_iterableToArray","fixRegExpWellKnownSymbolLogic","isRegExp","anObject","requireObjectCoercible","speciesConstructor","advanceStringIndex","toLength","callRegExpExec","regexpExec","fails","arrayPush","MAX_UINT32","SUPPORTS_Y","RegExp","SPLIT","nativeSplit","maybeCallNative","internalSplit","separator","limit","string","lim","lastLength","output","flags","ignoreCase","multiline","sticky","lastLastIndex","separatorCopy","O","splitter","res","S","unicodeMatching","q","A","z","$","$reduce","left","arrayMethodIsStrict","arrayMethodUsesToLength","STRICT_METHOD","USES_TO_LENGTH","1","proto","forced","callbackfn","arrayLikeToArray","require","_arrayWithoutHoles","redefine","TO_STRING","RegExpPrototype","nativeToString","NOT_GENERIC","INCORRECT_NAME","R","rf","unsafe","nativeReverse","arrayWithHoles","iterableToArrayLimit","unsupportedIterableToArray","nonIterableRest","_slicedToArray","notARegExp","correctIsRegExpLogic","IS_PURE","nativeStartsWith","CORRECT_IS_REGEXP_LOGIC","MDN_POLYFILL_BUG","descriptor","writable","searchString","search","toObject","nativeGetPrototypeOf","CORRECT_PROTOTYPE_GETTER","FAILS_ON_PRIMITIVES","stat","_getPrototypeOf","_assertThisInitialized","ReferenceError","InternalStateModule","defineIterator","STRING_ITERATOR","setInternalState","getInternalState","getterFor","iterated","arrayWithoutHoles","iterableToArray","nonIterableSpread","_toConsumableArray","$some","regExpExec","MATCH","nativeMatch","matcher","global","fullUnicode","matchStr","$trim","forcedStringTrimMethod","_setPrototypeOf","getBuiltIn","nativeConstruct","NEW_TARGET_BUG","ARGS_BUG","FORCED","Target","newTarget","$args","instance","callWithSafeIterationClosing","isArrayIteratorMethod","createProperty","getIteratorMethod","arrayLike","argumentsLength","mapfn","mapping","collection","collectionStrong","init","toInteger","SUBSTITUTION_SYMBOLS","SUBSTITUTION_SYMBOLS_NO_NAMED","maybeToString","REPLACE","nativeReplace","reason","REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE","REPLACE_KEEPS_$0","UNSAFE_SUBSTITUTE","searchValue","replaceValue","replacer","functionalReplace","results","accumulatedResult","nextSourcePosition","matched","position","captures","namedCaptures","groups","replacerArgs","replacement","getSubstitution","tailPos","ch","capture","whitespaces","whitespace","ltrim","rtrim","createMethod","TYPE","$this","color_string","simple_colors","aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dodgerblue","feldspar","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","green","greenyellow","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgrey","lightgreen","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslateblue","lightslategray","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","snow","springgreen","steelblue","teal","thistle","tomato","turquoise","violet","violetred","wheat","white","whitesmoke","yellow","yellowgreen","color_defs","re","example","bits","processor","exec","channels","toRGB","toHex","getHelpXML","examples","sc","setAttribute","list_item","list_color","RGBColor","example_div","cssText","list_item_value","_defineProperties","configurable","_createClass","Constructor","protoProps","staticProps","getOwnPropertyDescriptorModule","propertyKey","receiver","_typeof","_classCallCheck","mulTable","shgTable","getImageDataFromCanvas","topX","topY","getElementById","processCanvasRGBA","radius","imageData","processImageDataRGBA","stackEnd","pixels","div","widthMinus1","heightMinus1","radiusPlus1","sumFactor","stackStart","BlurStack","stack","stackIn","stackOut","yw","yi","mulSum","shgSum","pr","pg","pb","pa","_i","rInSum","gInSum","bInSum","aInSum","rOutSum","gOutSum","bOutSum","aOutSum","rSum","gSum","bSum","aSum","_i2","rbs","paInitial","_a2","_stackOut","_r","_g","_b","_a","_pr","_pg","_pb","_pa","_rOutSum","_gOutSum","_bOutSum","_aOutSum","_rSum","_gSum","_bSum","_aSum","_i3","_gInSum","_bInSum","_aInSum","_rInSum","_i4","_rbs","_p2","CONVERT_TO_STRING","pos","first","second","size","charCodeAt","codeAt","redefineAll","anInstance","iterate","setSpecies","DESCRIPTORS","fastKey","internalStateGetterFor","getConstructor","wrapper","CONSTRUCTOR_NAME","IS_MAP","ADDER","last","define","previous","getEntry","add","setStrong","ITERATOR_NAME","getInternalCollectionState","getInternalIteratorState","kind","assertThisInitialized","_possibleConstructorReturn","getNanoSeconds","hrtime","loadTime","moduleLoadTime","nodeLoadTime","upTime","performance","hr","uptime","getTime","isForced","InternalMetadataModule","checkCorrectnessOfIteration","setToStringTag","inheritIfRequired","common","IS_WEAK","NativeConstructor","NativePrototype","exported","fixMethod","KEY","nativeMethod","entries","REQUIRED","HASNT_CHAINING","THROWS_ON_PRIMITIVES","ACCEPT_ITERABLES","BUGGY_ZERO","$instance","dummy","Wrapper","NewTargetPrototype","wrappedWellKnownSymbolModule","NAME","objectGetPrototypeOf","toAbsoluteIndex","endPos","superPropBase","_get","property","base","desc","_defineProperty","_iterableToArrayLimit","_arr","_n","_d","_s","_superPropBase","IndexedObject","nativeJoin","ES3_STRINGS","NATIVE_SYMBOL","USE_SYMBOL_AS_UID","toPrimitive","createPropertyDescriptor","nativeObjectCreate","objectKeys","getOwnPropertyNamesModule","getOwnPropertyNamesExternal","getOwnPropertySymbolsModule","definePropertyModule","propertyIsEnumerableModule","createNonEnumerableProperty","shared","sharedKey","hiddenKeys","uid","wellKnownSymbol","defineWellKnownSymbol","$forEach","HIDDEN","SYMBOL","PROTOTYPE","TO_PRIMITIVE","ObjectPrototype","$stringify","nativeGetOwnPropertyDescriptor","nativeDefineProperty","nativePropertyIsEnumerable","AllSymbols","ObjectPrototypeSymbols","StringToSymbolRegistry","SymbolToStringRegistry","WellKnownSymbolsStore","QObject","USE_SETTER","findChild","setSymbolDescriptor","P","Attributes","ObjectPrototypeDescriptor","tag","description","symbol","isSymbol","$defineProperty","$defineProperties","Properties","properties","$getOwnPropertySymbols","$propertyIsEnumerable","$create","V","$getOwnPropertyDescriptor","$getOwnPropertyNames","names","IS_OBJECT_PROTOTYPE","setter","keyFor","useSetter","useSimple","FORCED_JSON_STRINGIFY","stringify","space","$replacer","valueOf","$every","INCORRECT_ITERATION","nativeApply","functionApply","OPTIONAL_ARGUMENTS_LIST","thisArgument","argumentsList","classof","NUMBER","NativeNumber","NumberPrototype","BROKEN_CLASSOF","toNumber","argument","third","radix","maxCode","digits","code","NumberWrapper","TO_STRING_TAG_SUPPORT","FunctionPrototype","FunctionPrototypeToString","nameRE","nativeKeys","isExtensible","preventExtensions","_arrayWithHoles","_nonIterableRest","vendors","suffix","raf","caf","queue","callback","_now","setTimeout","cp","cancelled","polyfill","requestAnimationFrame","cancelAnimationFrame","non","METHOD_NAME","asyncGeneratorStep","gen","_next","_throw","_asyncToGenerator","$indexOf","nativeIndexOf","NEGATIVE_ZERO","ACCESSORS","searchElement","addToUnscopables","IS_RIGHT","memo","right","$map","arrayMethodHasSpeciesSupport","HAS_SPECIES_SUPPORT","DOMIterables","ArrayIteratorMethods","ITERATOR","TO_STRING_TAG","ArrayValues","COLLECTION_NAME","Collection","CollectionPrototype","copyConstructorProperties","NativeSymbol","EmptyStringDescriptionStore","SymbolWrapper","symbolPrototype","symbolToString","native","_inherits","subClass","superClass","FREEZING","METADATA","setMetadata","objectID","weakData","getWeakData","onFreeze","meta"],"mappings":"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,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KAClwCC,EAAW,CAAC,EAAG,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,G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","file":"js/chunk-442e92d4.62be7804.js","sourcesContent":["'use strict';\nvar aFunction = require('../internals/a-function');\nvar isObject = require('../internals/is-object');\n\nvar slice = [].slice;\nvar factories = {};\n\nvar construct = function (C, argsLength, args) {\n if (!(argsLength in factories)) {\n for (var list = [], i = 0; i < argsLength; i++) list[i] = 'a[' + i + ']';\n // eslint-disable-next-line no-new-func\n factories[argsLength] = Function('C,a', 'return new C(' + list.join(',') + ')');\n } return factories[argsLength](C, args);\n};\n\n// `Function.prototype.bind` method implementation\n// https://tc39.github.io/ecma262/#sec-function.prototype.bind\nmodule.exports = Function.bind || function bind(that /* , ...args */) {\n var fn = aFunction(this);\n var partArgs = slice.call(arguments, 1);\n var boundFunction = function bound(/* args... */) {\n var args = partArgs.concat(slice.call(arguments));\n return this instanceof boundFunction ? construct(fn, args.length, args) : fn.apply(that, args);\n };\n if (isObject(fn.prototype)) boundFunction.prototype = fn.prototype;\n return boundFunction;\n};\n","var toIndexedObject = require('../internals/to-indexed-object');\nvar nativeGetOwnPropertyNames = require('../internals/object-get-own-property-names').f;\n\nvar toString = {}.toString;\n\nvar windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames\n ? Object.getOwnPropertyNames(window) : [];\n\nvar getWindowNames = function (it) {\n try {\n return nativeGetOwnPropertyNames(it);\n } catch (error) {\n return windowNames.slice();\n }\n};\n\n// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\nmodule.exports.f = function getOwnPropertyNames(it) {\n return windowNames && toString.call(it) == '[object Window]'\n ? getWindowNames(it)\n : nativeGetOwnPropertyNames(toIndexedObject(it));\n};\n","function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nmodule.exports = _nonIterableSpread;","import 'core-js/modules/es.array.map';\nimport 'core-js/modules/es.regexp.exec';\nimport 'core-js/modules/es.string.match';\nimport 'core-js/modules/es.string.replace';\nimport 'core-js/modules/es.string.starts-with';\nimport 'core-js/modules/es.array.join';\nimport _slicedToArray from '@babel/runtime/helpers/slicedToArray';\nimport 'core-js/modules/es.symbol';\nimport 'core-js/modules/es.array.filter';\nimport 'core-js/modules/es.array.for-each';\nimport 'core-js/modules/es.object.get-own-property-descriptor';\nimport 'core-js/modules/es.object.get-own-property-descriptors';\nimport 'core-js/modules/es.object.keys';\nimport 'core-js/modules/web.dom-collections.for-each';\nimport _regeneratorRuntime from '@babel/runtime/regenerator';\nimport _asyncToGenerator from '@babel/runtime/helpers/asyncToGenerator';\nimport _defineProperty from '@babel/runtime/helpers/defineProperty';\nimport _classCallCheck from '@babel/runtime/helpers/classCallCheck';\nimport _createClass from '@babel/runtime/helpers/createClass';\nimport 'core-js/modules/es.array.concat';\nimport 'core-js/modules/es.array.every';\nimport 'core-js/modules/es.array.reduce';\nimport 'core-js/modules/es.object.to-string';\nimport 'core-js/modules/es.promise';\nimport 'core-js/modules/es.string.split';\nimport requestAnimationFrame from 'raf';\nimport 'core-js/modules/es.function.name';\nimport RGBColor from 'rgbcolor';\nimport 'core-js/modules/es.reflect.construct';\nimport 'core-js/modules/es.regexp.to-string';\nimport _possibleConstructorReturn from '@babel/runtime/helpers/possibleConstructorReturn';\nimport _getPrototypeOf from '@babel/runtime/helpers/getPrototypeOf';\nimport _inherits from '@babel/runtime/helpers/inherits';\nimport 'core-js/modules/es.array.from';\nimport 'core-js/modules/es.array.includes';\nimport 'core-js/modules/es.array.some';\nimport 'core-js/modules/es.string.includes';\nimport 'core-js/modules/es.string.iterator';\nimport 'core-js/modules/es.string.trim';\nimport _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';\nimport 'core-js/modules/es.array.index-of';\nimport 'core-js/modules/es.array.reverse';\nimport _get from '@babel/runtime/helpers/get';\nimport 'core-js/modules/es.number.constructor';\nimport 'core-js/modules/es.array.fill';\nimport 'core-js/modules/es.reflect.delete-property';\nimport _assertThisInitialized from '@babel/runtime/helpers/assertThisInitialized';\nimport 'core-js/modules/es.array.iterator';\nimport 'core-js/modules/web.dom-collections.iterator';\nimport 'core-js/modules/es.symbol.description';\nimport 'core-js/modules/es.symbol.iterator';\nimport 'core-js/modules/es.array.slice';\nimport 'core-js/modules/es.map';\nimport 'core-js/modules/es.reflect.apply';\nimport 'core-js/modules/es.reflect.get-prototype-of';\nimport { canvasRGBA } from 'stackblur-canvas';\n\n/**\r\n * HTML-safe compress white-spaces.\r\n * @param str - String to compress.\r\n */\nfunction compressSpaces(str) {\n return str.replace(/(?!\\u3000)\\s+/gm, ' ');\n}\n/**\r\n * HTML-safe left trim.\r\n * @param str - String to trim.\r\n */\n\nfunction trimLeft(str) {\n return str.replace(/^[\\n \\t]+/, '');\n}\n/**\r\n * HTML-safe right trim.\r\n * @param str - String to trim.\r\n */\n\nfunction trimRight(str) {\n return str.replace(/[\\n \\t]+$/, '');\n}\n/**\r\n * String to numbers array.\r\n * @param str - Numbers string.\r\n */\n\nfunction toNumbers(str) {\n var matches = (str || '').match(/-?(\\d+(?:\\.\\d*(?:[eE][+-]?\\d+)?)?|\\.\\d+)(?=\\D|$)/gm) || [];\n return matches.map(parseFloat);\n} // Microsoft Edge fix\n\nvar allUppercase = /^[A-Z-]+$/;\n/**\r\n * Normalize attribute name.\r\n * @param name - Attribute name.\r\n */\n\nfunction normalizeAttributeName(name) {\n if (allUppercase.test(name)) {\n return name.toLowerCase();\n }\n\n return name;\n}\n/**\r\n * Parse external URL.\r\n * @param url - CSS url string.\r\n */\n\nfunction parseExternalUrl(url) {\n // single quotes [2]\n // v double quotes [3]\n // v v no quotes [4]\n // v v v\n var urlMatch = url.match(/url\\(('([^']+)'|\"([^\"]+)\"|([^'\"\\)]+))\\)/) || [];\n return urlMatch[2] || urlMatch[3] || urlMatch[4];\n}\n/**\r\n * Transform floats to integers in rgb colors.\r\n * @param color - Color to normalize.\r\n */\n\nfunction normalizeColor(color) {\n if (!color.startsWith('rgb')) {\n return color;\n }\n\n var rgbParts = 3;\n var normalizedColor = color.replace(/\\d+(\\.\\d+)?/g, function (num, isFloat) {\n return rgbParts-- && isFloat ? String(Math.round(parseFloat(num))) : num;\n });\n return normalizedColor;\n}\n\n// slightly modified version of https://github.com/keeganstreet/specificity/blob/master/specificity.js\nvar attributeRegex = /(\\[[^\\]]+\\])/g;\nvar idRegex = /(#[^\\s\\+>~\\.\\[:]+)/g;\nvar classRegex = /(\\.[^\\s\\+>~\\.\\[:]+)/g;\nvar pseudoElementRegex = /(::[^\\s\\+>~\\.\\[:]+|:first-line|:first-letter|:before|:after)/gi;\nvar pseudoClassWithBracketsRegex = /(:[\\w-]+\\([^\\)]*\\))/gi;\nvar pseudoClassRegex = /(:[^\\s\\+>~\\.\\[:]+)/g;\nvar elementRegex = /([^\\s\\+>~\\.\\[:]+)/g;\n\nfunction findSelectorMatch(selector, regex) {\n var matches = selector.match(regex);\n\n if (!matches) {\n return [selector, 0];\n }\n\n return [selector.replace(regex, ' '), matches.length];\n}\n/**\r\n * Measure selector specificity.\r\n * @param selector - Selector to measure.\r\n */\n\n\nfunction getSelectorSpecificity(selector) {\n var specificity = [0, 0, 0];\n var currentSelector = selector.replace(/:not\\(([^\\)]*)\\)/g, ' $1 ').replace(/{[\\s\\S]*/gm, ' ');\n var delta = 0;\n\n var _findSelectorMatch = findSelectorMatch(currentSelector, attributeRegex);\n\n var _findSelectorMatch2 = _slicedToArray(_findSelectorMatch, 2);\n\n currentSelector = _findSelectorMatch2[0];\n delta = _findSelectorMatch2[1];\n specificity[1] += delta;\n\n var _findSelectorMatch3 = findSelectorMatch(currentSelector, idRegex);\n\n var _findSelectorMatch4 = _slicedToArray(_findSelectorMatch3, 2);\n\n currentSelector = _findSelectorMatch4[0];\n delta = _findSelectorMatch4[1];\n specificity[0] += delta;\n\n var _findSelectorMatch5 = findSelectorMatch(currentSelector, classRegex);\n\n var _findSelectorMatch6 = _slicedToArray(_findSelectorMatch5, 2);\n\n currentSelector = _findSelectorMatch6[0];\n delta = _findSelectorMatch6[1];\n specificity[1] += delta;\n\n var _findSelectorMatch7 = findSelectorMatch(currentSelector, pseudoElementRegex);\n\n var _findSelectorMatch8 = _slicedToArray(_findSelectorMatch7, 2);\n\n currentSelector = _findSelectorMatch8[0];\n delta = _findSelectorMatch8[1];\n specificity[2] += delta;\n\n var _findSelectorMatch9 = findSelectorMatch(currentSelector, pseudoClassWithBracketsRegex);\n\n var _findSelectorMatch10 = _slicedToArray(_findSelectorMatch9, 2);\n\n currentSelector = _findSelectorMatch10[0];\n delta = _findSelectorMatch10[1];\n specificity[1] += delta;\n\n var _findSelectorMatch11 = findSelectorMatch(currentSelector, pseudoClassRegex);\n\n var _findSelectorMatch12 = _slicedToArray(_findSelectorMatch11, 2);\n\n currentSelector = _findSelectorMatch12[0];\n delta = _findSelectorMatch12[1];\n specificity[1] += delta;\n currentSelector = currentSelector.replace(/[\\*\\s\\+>~]/g, ' ').replace(/[#\\.]/g, ' ');\n\n var _findSelectorMatch13 = findSelectorMatch(currentSelector, elementRegex);\n\n var _findSelectorMatch14 = _slicedToArray(_findSelectorMatch13, 2);\n\n currentSelector = _findSelectorMatch14[0];\n delta = _findSelectorMatch14[1];\n // lgtm [js/useless-assignment-to-local]\n specificity[2] += delta;\n return specificity.join('');\n}\n\nvar PSEUDO_ZERO = .00000001;\n/**\r\n * Vector magnitude.\r\n */\n\nfunction vectorMagnitude(v) {\n return Math.sqrt(Math.pow(v[0], 2) + Math.pow(v[1], 2));\n}\n/**\r\n * Ratio between two vectors.\r\n */\n\nfunction vectorsRatio(u, v) {\n return (u[0] * v[0] + u[1] * v[1]) / (vectorMagnitude(u) * vectorMagnitude(v));\n}\n/**\r\n * Angle between two vectors.\r\n */\n\nfunction vectorsAngle(u, v) {\n return (u[0] * v[1] < u[1] * v[0] ? -1 : 1) * Math.acos(vectorsRatio(u, v));\n}\nfunction CB1(t) {\n return t * t * t;\n}\nfunction CB2(t) {\n return 3 * t * t * (1 - t);\n}\nfunction CB3(t) {\n return 3 * t * (1 - t) * (1 - t);\n}\nfunction CB4(t) {\n return (1 - t) * (1 - t) * (1 - t);\n}\nfunction QB1(t) {\n return t * t;\n}\nfunction QB2(t) {\n return 2 * t * (1 - t);\n}\nfunction QB3(t) {\n return (1 - t) * (1 - t);\n}\n\nfunction createCommonjsModule(fn, module) {\n\treturn module = { exports: {} }, fn(module, module.exports), module.exports;\n}\n\nvar runtime_1 = createCommonjsModule(function (module) {\n /**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n var runtime = function (exports) {\n\n var Op = Object.prototype;\n var hasOwn = Op.hasOwnProperty;\n var undefined$1; // More compressible than void 0.\n\n var $Symbol = typeof Symbol === \"function\" ? Symbol : {};\n var iteratorSymbol = $Symbol.iterator || \"@@iterator\";\n var asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\";\n var toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n\n function wrap(innerFn, outerFn, self, tryLocsList) {\n // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;\n var generator = Object.create(protoGenerator.prototype);\n var context = new Context(tryLocsList || []); // The ._invoke method unifies the implementations of the .next,\n // .throw, and .return methods.\n\n generator._invoke = makeInvokeMethod(innerFn, self, context);\n return generator;\n }\n\n exports.wrap = wrap; // Try/catch helper to minimize deoptimizations. Returns a completion\n // record like context.tryEntries[i].completion. This interface could\n // have been (and was previously) designed to take a closure to be\n // invoked without arguments, but in all the cases we care about we\n // already have an existing method we want to call, so there's no need\n // to create a new function object. We can even get away with assuming\n // the method takes exactly one argument, since that happens to be true\n // in every case, so we don't have to touch the arguments object. The\n // only additional allocation required is the completion record, which\n // has a stable shape and so hopefully should be cheap to allocate.\n\n function tryCatch(fn, obj, arg) {\n try {\n return {\n type: \"normal\",\n arg: fn.call(obj, arg)\n };\n } catch (err) {\n return {\n type: \"throw\",\n arg: err\n };\n }\n }\n\n var GenStateSuspendedStart = \"suspendedStart\";\n var GenStateSuspendedYield = \"suspendedYield\";\n var GenStateExecuting = \"executing\";\n var GenStateCompleted = \"completed\"; // Returning this object from the innerFn has the same effect as\n // breaking out of the dispatch switch statement.\n\n var ContinueSentinel = {}; // Dummy constructor functions that we use as the .constructor and\n // .constructor.prototype properties for functions that return Generator\n // objects. For full spec compliance, you may wish to configure your\n // minifier not to mangle the names of these two functions.\n\n function Generator() {}\n\n function GeneratorFunction() {}\n\n function GeneratorFunctionPrototype() {} // This is a polyfill for %IteratorPrototype% for environments that\n // don't natively support it.\n\n\n var IteratorPrototype = {};\n\n IteratorPrototype[iteratorSymbol] = function () {\n return this;\n };\n\n var getProto = Object.getPrototypeOf;\n var NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n\n if (NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {\n // This environment has a native %IteratorPrototype%; use it instead\n // of the polyfill.\n IteratorPrototype = NativeIteratorPrototype;\n }\n\n var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype);\n GeneratorFunction.prototype = Gp.constructor = GeneratorFunctionPrototype;\n GeneratorFunctionPrototype.constructor = GeneratorFunction;\n GeneratorFunctionPrototype[toStringTagSymbol] = GeneratorFunction.displayName = \"GeneratorFunction\"; // Helper for defining the .next, .throw, and .return methods of the\n // Iterator interface in terms of a single ._invoke method.\n\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function (method) {\n prototype[method] = function (arg) {\n return this._invoke(method, arg);\n };\n });\n }\n\n exports.isGeneratorFunction = function (genFun) {\n var ctor = typeof genFun === \"function\" && genFun.constructor;\n return ctor ? ctor === GeneratorFunction || // For the native GeneratorFunction constructor, the best we can\n // do is to check its .name property.\n (ctor.displayName || ctor.name) === \"GeneratorFunction\" : false;\n };\n\n exports.mark = function (genFun) {\n if (Object.setPrototypeOf) {\n Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);\n } else {\n genFun.__proto__ = GeneratorFunctionPrototype;\n\n if (!(toStringTagSymbol in genFun)) {\n genFun[toStringTagSymbol] = \"GeneratorFunction\";\n }\n }\n\n genFun.prototype = Object.create(Gp);\n return genFun;\n }; // Within the body of any async function, `await x` is transformed to\n // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test\n // `hasOwn.call(value, \"__await\")` to determine if the yielded value is\n // meant to be awaited.\n\n\n exports.awrap = function (arg) {\n return {\n __await: arg\n };\n };\n\n function AsyncIterator(generator, PromiseImpl) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n\n if (record.type === \"throw\") {\n reject(record.arg);\n } else {\n var result = record.arg;\n var value = result.value;\n\n if (value && typeof value === \"object\" && hasOwn.call(value, \"__await\")) {\n return PromiseImpl.resolve(value.__await).then(function (value) {\n invoke(\"next\", value, resolve, reject);\n }, function (err) {\n invoke(\"throw\", err, resolve, reject);\n });\n }\n\n return PromiseImpl.resolve(value).then(function (unwrapped) {\n // When a yielded Promise is resolved, its final value becomes\n // the .value of the Promise<{value,done}> result for the\n // current iteration.\n result.value = unwrapped;\n resolve(result);\n }, function (error) {\n // If a rejected Promise was yielded, throw the rejection back\n // into the async generator function so it can be handled there.\n return invoke(\"throw\", error, resolve, reject);\n });\n }\n }\n\n var previousPromise;\n\n function enqueue(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new PromiseImpl(function (resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n\n return previousPromise = // If enqueue has been called before, then we want to wait until\n // all previous Promises have been resolved before calling invoke,\n // so that results are always delivered in the correct order. If\n // enqueue has not been called before, then it is important to\n // call invoke immediately, without waiting on a callback to fire,\n // so that the async generator function has the opportunity to do\n // any necessary setup in a predictable way. This predictability\n // is why the Promise constructor synchronously invokes its\n // executor callback, and why async functions synchronously\n // execute code before the first await. Since we implement simple\n // async functions in terms of async generators, it is especially\n // important to get this right, even though it requires care.\n previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, // Avoid propagating failures to Promises returned by later\n // invocations of the iterator.\n callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();\n } // Define the unified helper method that is used to implement .next,\n // .throw, and .return (see defineIteratorMethods).\n\n\n this._invoke = enqueue;\n }\n\n defineIteratorMethods(AsyncIterator.prototype);\n\n AsyncIterator.prototype[asyncIteratorSymbol] = function () {\n return this;\n };\n\n exports.AsyncIterator = AsyncIterator; // Note that simple async functions are implemented on top of\n // AsyncIterator objects; they just return a Promise for the value of\n // the final result produced by the iterator.\n\n exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) {\n if (PromiseImpl === void 0) PromiseImpl = Promise;\n var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl);\n return exports.isGeneratorFunction(outerFn) ? iter // If outerFn is a generator, return the full iterator.\n : iter.next().then(function (result) {\n return result.done ? result.value : iter.next();\n });\n };\n\n function makeInvokeMethod(innerFn, self, context) {\n var state = GenStateSuspendedStart;\n return function invoke(method, arg) {\n if (state === GenStateExecuting) {\n throw new Error(\"Generator is already running\");\n }\n\n if (state === GenStateCompleted) {\n if (method === \"throw\") {\n throw arg;\n } // Be forgiving, per 25.3.3.3.3 of the spec:\n // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume\n\n\n return doneResult();\n }\n\n context.method = method;\n context.arg = arg;\n\n while (true) {\n var delegate = context.delegate;\n\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n\n if (context.method === \"next\") {\n // Setting context._sent for legacy support of Babel's\n // function.sent implementation.\n context.sent = context._sent = context.arg;\n } else if (context.method === \"throw\") {\n if (state === GenStateSuspendedStart) {\n state = GenStateCompleted;\n throw context.arg;\n }\n\n context.dispatchException(context.arg);\n } else if (context.method === \"return\") {\n context.abrupt(\"return\", context.arg);\n }\n\n state = GenStateExecuting;\n var record = tryCatch(innerFn, self, context);\n\n if (record.type === \"normal\") {\n // If an exception is thrown from innerFn, we leave state ===\n // GenStateExecuting and loop back for another invocation.\n state = context.done ? GenStateCompleted : GenStateSuspendedYield;\n\n if (record.arg === ContinueSentinel) {\n continue;\n }\n\n return {\n value: record.arg,\n done: context.done\n };\n } else if (record.type === \"throw\") {\n state = GenStateCompleted; // Dispatch the exception by looping back around to the\n // context.dispatchException(context.arg) call above.\n\n context.method = \"throw\";\n context.arg = record.arg;\n }\n }\n };\n } // Call delegate.iterator[context.method](context.arg) and handle the\n // result, either by returning a { value, done } result from the\n // delegate iterator, or by modifying context.method and context.arg,\n // setting context.delegate to null, and returning the ContinueSentinel.\n\n\n function maybeInvokeDelegate(delegate, context) {\n var method = delegate.iterator[context.method];\n\n if (method === undefined$1) {\n // A .throw or .return when the delegate iterator has no .throw\n // method always terminates the yield* loop.\n context.delegate = null;\n\n if (context.method === \"throw\") {\n // Note: [\"return\"] must be used for ES3 parsing compatibility.\n if (delegate.iterator[\"return\"]) {\n // If the delegate iterator has a return method, give it a\n // chance to clean up.\n context.method = \"return\";\n context.arg = undefined$1;\n maybeInvokeDelegate(delegate, context);\n\n if (context.method === \"throw\") {\n // If maybeInvokeDelegate(context) changed context.method from\n // \"return\" to \"throw\", let that override the TypeError below.\n return ContinueSentinel;\n }\n }\n\n context.method = \"throw\";\n context.arg = new TypeError(\"The iterator does not provide a 'throw' method\");\n }\n\n return ContinueSentinel;\n }\n\n var record = tryCatch(method, delegate.iterator, context.arg);\n\n if (record.type === \"throw\") {\n context.method = \"throw\";\n context.arg = record.arg;\n context.delegate = null;\n return ContinueSentinel;\n }\n\n var info = record.arg;\n\n if (!info) {\n context.method = \"throw\";\n context.arg = new TypeError(\"iterator result is not an object\");\n context.delegate = null;\n return ContinueSentinel;\n }\n\n if (info.done) {\n // Assign the result of the finished delegate to the temporary\n // variable specified by delegate.resultName (see delegateYield).\n context[delegate.resultName] = info.value; // Resume execution at the desired location (see delegateYield).\n\n context.next = delegate.nextLoc; // If context.method was \"throw\" but the delegate handled the\n // exception, let the outer generator proceed normally. If\n // context.method was \"next\", forget context.arg since it has been\n // \"consumed\" by the delegate iterator. If context.method was\n // \"return\", allow the original .return call to continue in the\n // outer generator.\n\n if (context.method !== \"return\") {\n context.method = \"next\";\n context.arg = undefined$1;\n }\n } else {\n // Re-yield the result returned by the delegate method.\n return info;\n } // The delegate iterator is finished, so forget it and continue with\n // the outer generator.\n\n\n context.delegate = null;\n return ContinueSentinel;\n } // Define Generator.prototype.{next,throw,return} in terms of the\n // unified ._invoke helper method.\n\n\n defineIteratorMethods(Gp);\n Gp[toStringTagSymbol] = \"Generator\"; // A Generator should always return itself as the iterator object when the\n // @@iterator function is called on it. Some browsers' implementations of the\n // iterator prototype chain incorrectly implement this, causing the Generator\n // object to not be returned from this call. This ensures that doesn't happen.\n // See https://github.com/facebook/regenerator/issues/274 for more details.\n\n Gp[iteratorSymbol] = function () {\n return this;\n };\n\n Gp.toString = function () {\n return \"[object Generator]\";\n };\n\n function pushTryEntry(locs) {\n var entry = {\n tryLoc: locs[0]\n };\n\n if (1 in locs) {\n entry.catchLoc = locs[1];\n }\n\n if (2 in locs) {\n entry.finallyLoc = locs[2];\n entry.afterLoc = locs[3];\n }\n\n this.tryEntries.push(entry);\n }\n\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\";\n delete record.arg;\n entry.completion = record;\n }\n\n function Context(tryLocsList) {\n // The root entry object (effectively a try statement without a catch\n // or a finally block) gives us a place to store values thrown from\n // locations where there is no enclosing try statement.\n this.tryEntries = [{\n tryLoc: \"root\"\n }];\n tryLocsList.forEach(pushTryEntry, this);\n this.reset(true);\n }\n\n exports.keys = function (object) {\n var keys = [];\n\n for (var key in object) {\n keys.push(key);\n }\n\n keys.reverse(); // Rather than returning an object with a next method, we keep\n // things simple and return the next function itself.\n\n return function next() {\n while (keys.length) {\n var key = keys.pop();\n\n if (key in object) {\n next.value = key;\n next.done = false;\n return next;\n }\n } // To avoid creating an additional object, we just hang the .value\n // and .done properties off the next function object itself. This\n // also ensures that the minifier will not anonymize the function.\n\n\n next.done = true;\n return next;\n };\n };\n\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n\n if (iteratorMethod) {\n return iteratorMethod.call(iterable);\n }\n\n if (typeof iterable.next === \"function\") {\n return iterable;\n }\n\n if (!isNaN(iterable.length)) {\n var i = -1,\n next = function next() {\n while (++i < iterable.length) {\n if (hasOwn.call(iterable, i)) {\n next.value = iterable[i];\n next.done = false;\n return next;\n }\n }\n\n next.value = undefined$1;\n next.done = true;\n return next;\n };\n\n return next.next = next;\n }\n } // Return an iterator with no values.\n\n\n return {\n next: doneResult\n };\n }\n\n exports.values = values;\n\n function doneResult() {\n return {\n value: undefined$1,\n done: true\n };\n }\n\n Context.prototype = {\n constructor: Context,\n reset: function (skipTempReset) {\n this.prev = 0;\n this.next = 0; // Resetting context._sent for legacy support of Babel's\n // function.sent implementation.\n\n this.sent = this._sent = undefined$1;\n this.done = false;\n this.delegate = null;\n this.method = \"next\";\n this.arg = undefined$1;\n this.tryEntries.forEach(resetTryEntry);\n\n if (!skipTempReset) {\n for (var name in this) {\n // Not sure about the optimal order of these conditions:\n if (name.charAt(0) === \"t\" && hasOwn.call(this, name) && !isNaN(+name.slice(1))) {\n this[name] = undefined$1;\n }\n }\n }\n },\n stop: function () {\n this.done = true;\n var rootEntry = this.tryEntries[0];\n var rootRecord = rootEntry.completion;\n\n if (rootRecord.type === \"throw\") {\n throw rootRecord.arg;\n }\n\n return this.rval;\n },\n dispatchException: function (exception) {\n if (this.done) {\n throw exception;\n }\n\n var context = this;\n\n function handle(loc, caught) {\n record.type = \"throw\";\n record.arg = exception;\n context.next = loc;\n\n if (caught) {\n // If the dispatched exception was caught by a catch block,\n // then let that catch block handle the exception normally.\n context.method = \"next\";\n context.arg = undefined$1;\n }\n\n return !!caught;\n }\n\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n var record = entry.completion;\n\n if (entry.tryLoc === \"root\") {\n // Exception thrown outside of any try block that could handle\n // it, so set the completion value of the entire function to\n // throw the exception.\n return handle(\"end\");\n }\n\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\");\n var hasFinally = hasOwn.call(entry, \"finallyLoc\");\n\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n } else if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n }\n } else if (hasFinally) {\n if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n } else {\n throw new Error(\"try statement without catch or finally\");\n }\n }\n }\n },\n abrupt: function (type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n\n if (entry.tryLoc <= this.prev && hasOwn.call(entry, \"finallyLoc\") && this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n\n if (finallyEntry && (type === \"break\" || type === \"continue\") && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc) {\n // Ignore the finally entry if control is not jumping to a\n // location outside the try/catch block.\n finallyEntry = null;\n }\n\n var record = finallyEntry ? finallyEntry.completion : {};\n record.type = type;\n record.arg = arg;\n\n if (finallyEntry) {\n this.method = \"next\";\n this.next = finallyEntry.finallyLoc;\n return ContinueSentinel;\n }\n\n return this.complete(record);\n },\n complete: function (record, afterLoc) {\n if (record.type === \"throw\") {\n throw record.arg;\n }\n\n if (record.type === \"break\" || record.type === \"continue\") {\n this.next = record.arg;\n } else if (record.type === \"return\") {\n this.rval = this.arg = record.arg;\n this.method = \"return\";\n this.next = \"end\";\n } else if (record.type === \"normal\" && afterLoc) {\n this.next = afterLoc;\n }\n\n return ContinueSentinel;\n },\n finish: function (finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n\n if (entry.finallyLoc === finallyLoc) {\n this.complete(entry.completion, entry.afterLoc);\n resetTryEntry(entry);\n return ContinueSentinel;\n }\n }\n },\n \"catch\": function (tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n\n if (record.type === \"throw\") {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n\n return thrown;\n }\n } // The context.catch method must only be called with a location\n // argument that corresponds to a known catch block.\n\n\n throw new Error(\"illegal catch attempt\");\n },\n delegateYield: function (iterable, resultName, nextLoc) {\n this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n };\n\n if (this.method === \"next\") {\n // Deliberately forget the last sent value so that we don't\n // accidentally pass it on to the delegate.\n this.arg = undefined$1;\n }\n\n return ContinueSentinel;\n }\n }; // Regardless of whether this script is executing as a CommonJS module\n // or not, return the runtime object so that we can declare the variable\n // regeneratorRuntime in the outer scope, which allows this module to be\n // injected easily by `bin/regenerator --include-runtime script.js`.\n\n return exports;\n }( // If this script is executing as a CommonJS module, use module.exports\n // as the regeneratorRuntime namespace. Otherwise create a new empty\n // object. Either way, the resulting object will be used to initialize\n // the regeneratorRuntime variable at the top of this file.\n module.exports );\n\n try {\n regeneratorRuntime = runtime;\n } catch (accidentalStrictMode) {\n // This module should not be running in strict mode, so the above\n // assignment should always work unless something is misconfigured. Just\n // in case runtime.js accidentally runs in strict mode, we can escape\n // strict mode using a global Function call. This could conceivably fail\n // if a Content Security Policy forbids using Function, but in that case\n // the proper solution is to fix the accidental strict mode problem. If\n // you've misconfigured your bundler to force strict mode and applied a\n // CSP to forbid Function, and you're not willing to fix either of those\n // problems, please detail your unique predicament in a GitHub issue.\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n }\n});\n\nvar Property = /*#__PURE__*/function () {\n function Property(document, name, value) {\n _classCallCheck(this, Property);\n\n this.document = document;\n this.name = name;\n this.value = value;\n this.isNormalizedColor = false;\n }\n\n _createClass(Property, [{\n key: \"hasValue\",\n value: function hasValue() {\n var value = this.value;\n return value !== null && value !== '' && value !== 0 && typeof value !== 'undefined';\n }\n }, {\n key: \"isString\",\n value: function isString(regexp) {\n var value = this.value;\n var result = typeof value === 'string';\n\n if (!result || !regexp) {\n return result;\n }\n\n return regexp.test(value);\n }\n }, {\n key: \"isUrlDefinition\",\n value: function isUrlDefinition() {\n return this.isString(/^url\\(/);\n }\n }, {\n key: \"isPixels\",\n value: function isPixels() {\n if (!this.hasValue()) {\n return false;\n }\n\n var asString = this.getString();\n\n switch (true) {\n case /px$/.test(asString):\n case /^[0-9]+$/.test(asString):\n return true;\n\n default:\n return false;\n }\n }\n }, {\n key: \"setValue\",\n value: function setValue(value) {\n this.value = value;\n return this;\n }\n }, {\n key: \"getValue\",\n value: function getValue(def) {\n if (typeof def === 'undefined' || this.hasValue()) {\n return this.value;\n }\n\n return def;\n }\n }, {\n key: \"getNumber\",\n value: function getNumber(def) {\n if (!this.hasValue()) {\n if (typeof def === 'undefined') {\n return 0;\n }\n\n return parseFloat(def);\n }\n\n var value = this.value;\n var n = parseFloat(value);\n\n if (this.isString(/%$/)) {\n n = n / 100.0;\n }\n\n return n;\n }\n }, {\n key: \"getString\",\n value: function getString(def) {\n if (typeof def === 'undefined' || this.hasValue()) {\n return typeof this.value === 'undefined' ? '' : String(this.value);\n }\n\n return String(def);\n }\n }, {\n key: \"getColor\",\n value: function getColor(def) {\n var color = this.getString(def);\n\n if (this.isNormalizedColor) {\n return color;\n }\n\n this.isNormalizedColor = true;\n color = normalizeColor(color);\n this.value = color;\n return color;\n }\n }, {\n key: \"getDpi\",\n value: function getDpi() {\n return 96.0; // TODO: compute?\n }\n }, {\n key: \"getRem\",\n value: function getRem() {\n return this.document.rootEmSize;\n }\n }, {\n key: \"getEm\",\n value: function getEm() {\n return this.document.emSize;\n }\n }, {\n key: \"getUnits\",\n value: function getUnits() {\n return this.getString().replace(/[0-9\\.\\-]/g, '');\n }\n }, {\n key: \"getPixels\",\n value: function getPixels(axisOrIsFontSize) {\n var processPercent = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n if (!this.hasValue()) {\n return 0;\n }\n\n var _ref = typeof axisOrIsFontSize === 'boolean' ? [undefined, axisOrIsFontSize] : [axisOrIsFontSize],\n _ref2 = _slicedToArray(_ref, 2),\n axis = _ref2[0],\n isFontSize = _ref2[1];\n\n var viewPort = this.document.screen.viewPort;\n\n switch (true) {\n case this.isString(/vmin$/):\n return this.getNumber() / 100.0 * Math.min(viewPort.computeSize('x'), viewPort.computeSize('y'));\n\n case this.isString(/vmax$/):\n return this.getNumber() / 100.0 * Math.max(viewPort.computeSize('x'), viewPort.computeSize('y'));\n\n case this.isString(/vw$/):\n return this.getNumber() / 100.0 * viewPort.computeSize('x');\n\n case this.isString(/vh$/):\n return this.getNumber() / 100.0 * viewPort.computeSize('y');\n\n case this.isString(/rem$/):\n return this.getNumber() * this.getRem();\n\n case this.isString(/em$/):\n return this.getNumber() * this.getEm();\n\n case this.isString(/ex$/):\n return this.getNumber() * this.getEm() / 2.0;\n\n case this.isString(/px$/):\n return this.getNumber();\n\n case this.isString(/pt$/):\n return this.getNumber() * this.getDpi() * (1.0 / 72.0);\n\n case this.isString(/pc$/):\n return this.getNumber() * 15;\n\n case this.isString(/cm$/):\n return this.getNumber() * this.getDpi() / 2.54;\n\n case this.isString(/mm$/):\n return this.getNumber() * this.getDpi() / 25.4;\n\n case this.isString(/in$/):\n return this.getNumber() * this.getDpi();\n\n case this.isString(/%$/) && isFontSize:\n return this.getNumber() * this.getEm();\n\n case this.isString(/%$/):\n return this.getNumber() * viewPort.computeSize(axis);\n\n default:\n {\n var n = this.getNumber();\n\n if (processPercent && n < 1.0) {\n return n * viewPort.computeSize(axis);\n }\n\n return n;\n }\n }\n }\n }, {\n key: \"getMilliseconds\",\n value: function getMilliseconds() {\n if (!this.hasValue()) {\n return 0;\n }\n\n if (this.isString(/ms$/)) {\n return this.getNumber();\n }\n\n return this.getNumber() * 1000;\n }\n }, {\n key: \"getRadians\",\n value: function getRadians() {\n if (!this.hasValue()) {\n return 0;\n }\n\n switch (true) {\n case this.isString(/deg$/):\n return this.getNumber() * (Math.PI / 180.0);\n\n case this.isString(/grad$/):\n return this.getNumber() * (Math.PI / 200.0);\n\n case this.isString(/rad$/):\n return this.getNumber();\n\n default:\n return this.getNumber() * (Math.PI / 180.0);\n }\n }\n }, {\n key: \"getDefinition\",\n value: function getDefinition() {\n var asString = this.getString();\n var name = asString.match(/#([^\\)'\"]+)/);\n\n if (name) {\n name = name[1];\n }\n\n if (!name) {\n name = asString;\n }\n\n return this.document.definitions[name];\n }\n }, {\n key: \"getFillStyleDefinition\",\n value: function getFillStyleDefinition(element, opacity) {\n var def = this.getDefinition();\n\n if (!def) {\n return null;\n } // gradient\n\n\n if (typeof def.createGradient === 'function') {\n return def.createGradient(this.document.ctx, element, opacity);\n } // pattern\n\n\n if (typeof def.createPattern === 'function') {\n if (def.getHrefAttribute().hasValue()) {\n var patternTransform = def.getAttribute('patternTransform');\n def = def.getHrefAttribute().getDefinition();\n\n if (patternTransform.hasValue()) {\n def.getAttribute('patternTransform', true).setValue(patternTransform.value);\n }\n }\n\n return def.createPattern(this.document.ctx, element, opacity);\n }\n\n return null;\n }\n }, {\n key: \"getTextBaseline\",\n value: function getTextBaseline() {\n if (!this.hasValue()) {\n return null;\n }\n\n return Property.textBaselineMapping[this.getString()];\n }\n }, {\n key: \"addOpacity\",\n value: function addOpacity(opacity) {\n var value = this.getColor();\n var len = value.length;\n var commas = 0; // Simulate old RGBColor version, which can't parse rgba.\n\n for (var i = 0; i < len; i++) {\n if (value[i] === ',') {\n commas++;\n }\n\n if (commas === 3) {\n break;\n }\n }\n\n if (opacity.hasValue() && this.isString() && commas !== 3) {\n var color = new RGBColor(value);\n\n if (color.ok) {\n color.alpha = opacity.getNumber();\n value = color.toRGBA();\n }\n }\n\n return new Property(this.document, this.name, value);\n }\n }], [{\n key: \"empty\",\n value: function empty(document) {\n return new Property(document, 'EMPTY', '');\n }\n }]);\n\n return Property;\n}();\nProperty.textBaselineMapping = {\n 'baseline': 'alphabetic',\n 'before-edge': 'top',\n 'text-before-edge': 'top',\n 'middle': 'middle',\n 'central': 'middle',\n 'after-edge': 'bottom',\n 'text-after-edge': 'bottom',\n 'ideographic': 'ideographic',\n 'alphabetic': 'alphabetic',\n 'hanging': 'hanging',\n 'mathematical': 'alphabetic'\n};\n\nvar ViewPort = /*#__PURE__*/function () {\n function ViewPort() {\n _classCallCheck(this, ViewPort);\n\n this.viewPorts = [];\n }\n\n _createClass(ViewPort, [{\n key: \"clear\",\n value: function clear() {\n this.viewPorts = [];\n }\n }, {\n key: \"setCurrent\",\n value: function setCurrent(width, height) {\n this.viewPorts.push({\n width: width,\n height: height\n });\n }\n }, {\n key: \"removeCurrent\",\n value: function removeCurrent() {\n this.viewPorts.pop();\n }\n }, {\n key: \"getCurrent\",\n value: function getCurrent() {\n var viewPorts = this.viewPorts;\n return viewPorts[viewPorts.length - 1];\n }\n }, {\n key: \"computeSize\",\n value: function computeSize(d) {\n if (typeof d === 'number') {\n return d;\n }\n\n if (d === 'x') {\n return this.width;\n }\n\n if (d === 'y') {\n return this.height;\n }\n\n return Math.sqrt(Math.pow(this.width, 2) + Math.pow(this.height, 2)) / Math.sqrt(2);\n }\n }, {\n key: \"width\",\n get: function get() {\n return this.getCurrent().width;\n }\n }, {\n key: \"height\",\n get: function get() {\n return this.getCurrent().height;\n }\n }]);\n\n return ViewPort;\n}();\n\nvar Point = /*#__PURE__*/function () {\n function Point(x, y) {\n _classCallCheck(this, Point);\n\n this.x = x;\n this.y = y;\n }\n\n _createClass(Point, [{\n key: \"angleTo\",\n value: function angleTo(point) {\n return Math.atan2(point.y - this.y, point.x - this.x);\n }\n }, {\n key: \"applyTransform\",\n value: function applyTransform(transform) {\n var x = this.x,\n y = this.y;\n var xp = x * transform[0] + y * transform[2] + transform[4];\n var yp = x * transform[1] + y * transform[3] + transform[5];\n this.x = xp;\n this.y = yp;\n }\n }], [{\n key: \"parse\",\n value: function parse(point) {\n var defaultValue = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;\n\n var _toNumbers = toNumbers(point),\n _toNumbers2 = _slicedToArray(_toNumbers, 2),\n _toNumbers2$ = _toNumbers2[0],\n x = _toNumbers2$ === void 0 ? defaultValue : _toNumbers2$,\n _toNumbers2$2 = _toNumbers2[1],\n y = _toNumbers2$2 === void 0 ? defaultValue : _toNumbers2$2;\n\n return new Point(x, y);\n }\n }, {\n key: \"parseScale\",\n value: function parseScale(scale) {\n var defaultValue = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;\n\n var _toNumbers3 = toNumbers(scale),\n _toNumbers4 = _slicedToArray(_toNumbers3, 2),\n _toNumbers4$ = _toNumbers4[0],\n x = _toNumbers4$ === void 0 ? defaultValue : _toNumbers4$,\n _toNumbers4$2 = _toNumbers4[1],\n y = _toNumbers4$2 === void 0 ? x : _toNumbers4$2;\n\n return new Point(x, y);\n }\n }, {\n key: \"parsePath\",\n value: function parsePath(path) {\n var points = toNumbers(path);\n var len = points.length;\n var pathPoints = [];\n\n for (var i = 0; i < len; i += 2) {\n pathPoints.push(new Point(points[i], points[i + 1]));\n }\n\n return pathPoints;\n }\n }]);\n\n return Point;\n}();\n\nvar Mouse = /*#__PURE__*/function () {\n function Mouse(screen) {\n _classCallCheck(this, Mouse);\n\n this.screen = screen;\n this.working = false;\n this.events = [];\n this.eventElements = [];\n this.onClick = this.onClick.bind(this);\n this.onMouseMove = this.onMouseMove.bind(this);\n }\n\n _createClass(Mouse, [{\n key: \"isWorking\",\n value: function isWorking() {\n return this.working;\n }\n }, {\n key: \"start\",\n value: function start() {\n if (this.working) {\n return;\n }\n\n var screen = this.screen,\n onClick = this.onClick,\n onMouseMove = this.onMouseMove;\n var canvas = screen.ctx.canvas;\n canvas.onclick = onClick;\n canvas.onmousemove = onMouseMove;\n this.working = true;\n }\n }, {\n key: \"stop\",\n value: function stop() {\n if (!this.working) {\n return;\n }\n\n var canvas = this.screen.ctx.canvas;\n this.working = false;\n canvas.onclick = null;\n canvas.onmousemove = null;\n }\n }, {\n key: \"hasEvents\",\n value: function hasEvents() {\n return this.working && this.events.length > 0;\n }\n }, {\n key: \"runEvents\",\n value: function runEvents() {\n if (!this.working) {\n return;\n }\n\n var document = this.screen,\n events = this.events,\n eventElements = this.eventElements;\n var style = document.ctx.canvas.style;\n\n if (style) {\n style.cursor = '';\n }\n\n events.forEach(function (_ref, i) {\n var run = _ref.run;\n var element = eventElements[i];\n\n while (element) {\n run(element);\n element = element.parent;\n }\n }); // done running, clear\n\n this.events = [];\n this.eventElements = [];\n }\n }, {\n key: \"checkPath\",\n value: function checkPath(element, ctx) {\n if (!this.working || !ctx) {\n return;\n }\n\n var events = this.events,\n eventElements = this.eventElements;\n events.forEach(function (_ref2, i) {\n var x = _ref2.x,\n y = _ref2.y;\n\n if (!eventElements[i] && ctx.isPointInPath && ctx.isPointInPath(x, y)) {\n eventElements[i] = element;\n }\n });\n }\n }, {\n key: \"checkBoundingBox\",\n value: function checkBoundingBox(element, boundingBox) {\n if (!this.working || !boundingBox) {\n return;\n }\n\n var events = this.events,\n eventElements = this.eventElements;\n events.forEach(function (_ref3, i) {\n var x = _ref3.x,\n y = _ref3.y;\n\n if (!eventElements[i] && boundingBox.isPointInBox(x, y)) {\n eventElements[i] = element;\n }\n });\n }\n }, {\n key: \"mapXY\",\n value: function mapXY(x, y) {\n var _this$screen = this.screen,\n window = _this$screen.window,\n ctx = _this$screen.ctx;\n var point = new Point(x, y);\n var element = ctx.canvas;\n\n while (element) {\n point.x -= element.offsetLeft;\n point.y -= element.offsetTop;\n element = element.offsetParent;\n }\n\n if (window.scrollX) {\n point.x += window.scrollX;\n }\n\n if (window.scrollY) {\n point.y += window.scrollY;\n }\n\n return point;\n }\n }, {\n key: \"onClick\",\n value: function onClick(evt) {\n var _this$mapXY = this.mapXY((evt || event).clientX, (evt || event).clientY),\n x = _this$mapXY.x,\n y = _this$mapXY.y;\n\n this.events.push({\n type: 'onclick',\n x: x,\n y: y,\n run: function run(event) {\n if (event.onClick) {\n event.onClick();\n }\n }\n });\n }\n }, {\n key: \"onMouseMove\",\n value: function onMouseMove(evt) {\n var _this$mapXY2 = this.mapXY((evt || event).clientX, (evt || event).clientY),\n x = _this$mapXY2.x,\n y = _this$mapXY2.y;\n\n this.events.push({\n type: 'onmousemove',\n x: x,\n y: y,\n run: function run(event) {\n if (event.onMouseMove) {\n event.onMouseMove();\n }\n }\n });\n }\n }]);\n\n return Mouse;\n}();\n\nvar defaultWindow = typeof window !== 'undefined' ? window : null;\nvar defaultFetch = typeof fetch !== 'undefined' ? fetch.bind(void 0) // `fetch` depends on context: `someObject.fetch(...)` will throw error.\n: null;\n\nvar Screen = /*#__PURE__*/function () {\n function Screen(ctx) {\n var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n _ref$fetch = _ref.fetch,\n fetch = _ref$fetch === void 0 ? defaultFetch : _ref$fetch,\n _ref$window = _ref.window,\n window = _ref$window === void 0 ? defaultWindow : _ref$window;\n\n _classCallCheck(this, Screen);\n\n this.ctx = ctx;\n this.FRAMERATE = 30;\n this.MAX_VIRTUAL_PIXELS = 30000;\n this.CLIENT_WIDTH = 800;\n this.CLIENT_HEIGHT = 600;\n this.viewPort = new ViewPort();\n this.mouse = new Mouse(this);\n this.animations = [];\n this.waits = [];\n this.frameDuration = 0;\n this.isReadyLock = false;\n this.isFirstRender = true;\n this.intervalId = null;\n this.window = window;\n this.fetch = fetch;\n }\n\n _createClass(Screen, [{\n key: \"wait\",\n value: function wait(checker) {\n this.waits.push(checker);\n }\n }, {\n key: \"ready\",\n value: function ready() {\n if (!this.readyPromise) {\n return Promise.resolve();\n }\n\n return this.readyPromise;\n }\n }, {\n key: \"isReady\",\n value: function isReady() {\n if (this.isReadyLock) {\n return true;\n }\n\n var isReadyLock = this.waits.every(function (_) {\n return _();\n });\n\n if (isReadyLock) {\n this.waits = [];\n\n if (this.resolveReady) {\n this.resolveReady();\n }\n }\n\n this.isReadyLock = isReadyLock;\n return isReadyLock;\n }\n }, {\n key: \"setDefaults\",\n value: function setDefaults(ctx) {\n // initial values and defaults\n ctx.strokeStyle = 'rgba(0,0,0,0)';\n ctx.lineCap = 'butt';\n ctx.lineJoin = 'miter';\n ctx.miterLimit = 4;\n }\n }, {\n key: \"setViewBox\",\n value: function setViewBox(_ref2) {\n var document = _ref2.document,\n ctx = _ref2.ctx,\n aspectRatio = _ref2.aspectRatio,\n width = _ref2.width,\n desiredWidth = _ref2.desiredWidth,\n height = _ref2.height,\n desiredHeight = _ref2.desiredHeight,\n _ref2$minX = _ref2.minX,\n minX = _ref2$minX === void 0 ? 0 : _ref2$minX,\n _ref2$minY = _ref2.minY,\n minY = _ref2$minY === void 0 ? 0 : _ref2$minY,\n refX = _ref2.refX,\n refY = _ref2.refY,\n _ref2$clip = _ref2.clip,\n clip = _ref2$clip === void 0 ? false : _ref2$clip,\n _ref2$clipX = _ref2.clipX,\n clipX = _ref2$clipX === void 0 ? 0 : _ref2$clipX,\n _ref2$clipY = _ref2.clipY,\n clipY = _ref2$clipY === void 0 ? 0 : _ref2$clipY;\n // aspect ratio - http://www.w3.org/TR/SVG/coords.html#PreserveAspectRatioAttribute\n var cleanAspectRatio = compressSpaces(aspectRatio).replace(/^defer\\s/, ''); // ignore defer\n\n var _cleanAspectRatio$spl = cleanAspectRatio.split(' '),\n _cleanAspectRatio$spl2 = _slicedToArray(_cleanAspectRatio$spl, 2),\n aspectRatioAlign = _cleanAspectRatio$spl2[0],\n aspectRatioMeetOrSlice = _cleanAspectRatio$spl2[1];\n\n var align = aspectRatioAlign || 'xMidYMid';\n var meetOrSlice = aspectRatioMeetOrSlice || 'meet'; // calculate scale\n\n var scaleX = width / desiredWidth;\n var scaleY = height / desiredHeight;\n var scaleMin = Math.min(scaleX, scaleY);\n var scaleMax = Math.max(scaleX, scaleY);\n var finalDesiredWidth = desiredWidth;\n var finalDesiredHeight = desiredHeight;\n\n if (meetOrSlice === 'meet') {\n finalDesiredWidth *= scaleMin;\n finalDesiredHeight *= scaleMin;\n }\n\n if (meetOrSlice === 'slice') {\n finalDesiredWidth *= scaleMax;\n finalDesiredHeight *= scaleMax;\n }\n\n var refXProp = new Property(document, 'refX', refX);\n var refYProp = new Property(document, 'refY', refY);\n var hasRefs = refXProp.hasValue() && refYProp.hasValue();\n\n if (hasRefs) {\n ctx.translate(-scaleMin * refXProp.getPixels('x'), -scaleMin * refYProp.getPixels('y'));\n }\n\n if (clip) {\n var scaledClipX = scaleMin * clipX;\n var scaledClipY = scaleMin * clipY;\n ctx.beginPath();\n ctx.moveTo(scaledClipX, scaledClipY);\n ctx.lineTo(width, scaledClipY);\n ctx.lineTo(width, height);\n ctx.lineTo(scaledClipX, height);\n ctx.closePath();\n ctx.clip();\n }\n\n if (!hasRefs) {\n var isMeetMinY = meetOrSlice === 'meet' && scaleMin === scaleY;\n var isSliceMaxY = meetOrSlice === 'slice' && scaleMax === scaleY;\n var isMeetMinX = meetOrSlice === 'meet' && scaleMin === scaleX;\n var isSliceMaxX = meetOrSlice === 'slice' && scaleMax === scaleX;\n\n if (/^xMid/.test(align) && (isMeetMinY || isSliceMaxY)) {\n ctx.translate(width / 2.0 - finalDesiredWidth / 2.0, 0);\n }\n\n if (/YMid$/.test(align) && (isMeetMinX || isSliceMaxX)) {\n ctx.translate(0, height / 2.0 - finalDesiredHeight / 2.0);\n }\n\n if (/^xMax/.test(align) && (isMeetMinY || isSliceMaxY)) {\n ctx.translate(width - finalDesiredWidth, 0);\n }\n\n if (/YMax$/.test(align) && (isMeetMinX || isSliceMaxX)) {\n ctx.translate(0, height - finalDesiredHeight);\n }\n } // scale\n\n\n switch (true) {\n case align === 'none':\n ctx.scale(scaleX, scaleY);\n break;\n\n case meetOrSlice === 'meet':\n ctx.scale(scaleMin, scaleMin);\n break;\n\n case meetOrSlice === 'slice':\n ctx.scale(scaleMax, scaleMax);\n break;\n } // translate\n\n\n ctx.translate(-minX, -minY);\n }\n }, {\n key: \"start\",\n value: function start(element) {\n var _this = this;\n\n var _ref3 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n _ref3$enableRedraw = _ref3.enableRedraw,\n enableRedraw = _ref3$enableRedraw === void 0 ? false : _ref3$enableRedraw,\n _ref3$ignoreMouse = _ref3.ignoreMouse,\n ignoreMouse = _ref3$ignoreMouse === void 0 ? false : _ref3$ignoreMouse,\n _ref3$ignoreAnimation = _ref3.ignoreAnimation,\n ignoreAnimation = _ref3$ignoreAnimation === void 0 ? false : _ref3$ignoreAnimation,\n _ref3$ignoreDimension = _ref3.ignoreDimensions,\n ignoreDimensions = _ref3$ignoreDimension === void 0 ? false : _ref3$ignoreDimension,\n _ref3$ignoreClear = _ref3.ignoreClear,\n ignoreClear = _ref3$ignoreClear === void 0 ? false : _ref3$ignoreClear,\n forceRedraw = _ref3.forceRedraw,\n scaleWidth = _ref3.scaleWidth,\n scaleHeight = _ref3.scaleHeight,\n offsetX = _ref3.offsetX,\n offsetY = _ref3.offsetY;\n\n var FRAMERATE = this.FRAMERATE,\n mouse = this.mouse;\n var frameDuration = 1000 / FRAMERATE;\n this.frameDuration = frameDuration;\n this.readyPromise = new Promise(function (resolve) {\n _this.resolveReady = resolve;\n });\n\n if (this.isReady()) {\n this.render(element, ignoreDimensions, ignoreClear, scaleWidth, scaleHeight, offsetX, offsetY);\n }\n\n if (!enableRedraw) {\n return;\n }\n\n var now = Date.now();\n var then = now;\n var delta = 0;\n\n var tick = function tick() {\n now = Date.now();\n delta = now - then;\n\n if (delta >= frameDuration) {\n then = now - delta % frameDuration;\n\n if (_this.shouldUpdate(ignoreAnimation, forceRedraw)) {\n _this.render(element, ignoreDimensions, ignoreClear, scaleWidth, scaleHeight, offsetX, offsetY);\n\n mouse.runEvents();\n }\n }\n\n _this.intervalId = requestAnimationFrame(tick);\n };\n\n if (!ignoreMouse) {\n mouse.start();\n }\n\n this.intervalId = requestAnimationFrame(tick);\n }\n }, {\n key: \"stop\",\n value: function stop() {\n if (this.intervalId) {\n requestAnimationFrame.cancel(this.intervalId);\n this.intervalId = null;\n }\n\n this.mouse.stop();\n }\n }, {\n key: \"shouldUpdate\",\n value: function shouldUpdate(ignoreAnimation, forceRedraw) {\n // need update from animations?\n if (!ignoreAnimation) {\n var frameDuration = this.frameDuration;\n var shouldUpdate = this.animations.reduce(function (shouldUpdate, animation) {\n return animation.update(frameDuration) || shouldUpdate;\n }, false);\n\n if (shouldUpdate) {\n return true;\n }\n } // need update from redraw?\n\n\n if (typeof forceRedraw === 'function' && forceRedraw()) {\n return true;\n }\n\n if (!this.isReadyLock && this.isReady()) {\n return true;\n } // need update from mouse events?\n\n\n if (this.mouse.hasEvents()) {\n return true;\n }\n\n return false;\n }\n }, {\n key: \"render\",\n value: function render(element, ignoreDimensions, ignoreClear, scaleWidth, scaleHeight, offsetX, offsetY) {\n var CLIENT_WIDTH = this.CLIENT_WIDTH,\n CLIENT_HEIGHT = this.CLIENT_HEIGHT,\n viewPort = this.viewPort,\n ctx = this.ctx,\n isFirstRender = this.isFirstRender;\n var canvas = ctx.canvas;\n viewPort.clear();\n\n if (canvas.width && canvas.height) {\n viewPort.setCurrent(canvas.width, canvas.height);\n } else {\n viewPort.setCurrent(CLIENT_WIDTH, CLIENT_HEIGHT);\n }\n\n var widthStyle = element.getStyle('width');\n var heightStyle = element.getStyle('height');\n\n if (!ignoreDimensions && (isFirstRender || typeof scaleWidth !== 'number' && typeof scaleHeight !== 'number')) {\n // set canvas size\n if (widthStyle.hasValue()) {\n canvas.width = widthStyle.getPixels('x');\n\n if (canvas.style) {\n canvas.style.width = \"\".concat(canvas.width, \"px\");\n }\n }\n\n if (heightStyle.hasValue()) {\n canvas.height = heightStyle.getPixels('y');\n\n if (canvas.style) {\n canvas.style.height = \"\".concat(canvas.height, \"px\");\n }\n }\n }\n\n var cWidth = canvas.clientWidth || canvas.width;\n var cHeight = canvas.clientHeight || canvas.height;\n\n if (ignoreDimensions && widthStyle.hasValue() && heightStyle.hasValue()) {\n cWidth = widthStyle.getPixels('x');\n cHeight = heightStyle.getPixels('y');\n }\n\n viewPort.setCurrent(cWidth, cHeight);\n\n if (typeof offsetX === 'number') {\n element.getAttribute('x', true).setValue(offsetX);\n }\n\n if (typeof offsetY === 'number') {\n element.getAttribute('y', true).setValue(offsetY);\n }\n\n if (typeof scaleWidth === 'number' || typeof scaleHeight === 'number') {\n var viewBox = toNumbers(element.getAttribute('viewBox').getString());\n var xRatio = 0;\n var yRatio = 0;\n\n if (typeof scaleWidth === 'number') {\n var _widthStyle = element.getStyle('width');\n\n if (_widthStyle.hasValue()) {\n xRatio = _widthStyle.getPixels('x') / scaleWidth;\n } else if (!isNaN(viewBox[2])) {\n xRatio = viewBox[2] / scaleWidth;\n }\n }\n\n if (typeof scaleHeight === 'number') {\n var _heightStyle = element.getStyle('height');\n\n if (_heightStyle.hasValue()) {\n yRatio = _heightStyle.getPixels('y') / scaleHeight;\n } else if (!isNaN(viewBox[3])) {\n yRatio = viewBox[3] / scaleHeight;\n }\n }\n\n if (!xRatio) {\n xRatio = yRatio;\n }\n\n if (!yRatio) {\n yRatio = xRatio;\n }\n\n element.getAttribute('width', true).setValue(scaleWidth);\n element.getAttribute('height', true).setValue(scaleHeight);\n var transformStyle = element.getStyle('transform', true, true);\n transformStyle.setValue(\"\".concat(transformStyle.getString(), \" scale(\").concat(1.0 / xRatio, \", \").concat(1.0 / yRatio, \")\"));\n } // clear and render\n\n\n if (!ignoreClear) {\n ctx.clearRect(0, 0, cWidth, cHeight);\n }\n\n element.render(ctx);\n\n if (isFirstRender) {\n this.isFirstRender = false;\n }\n }\n }]);\n\n return Screen;\n}();\nScreen.defaultWindow = defaultWindow;\nScreen.defaultFetch = defaultFetch;\n\nvar defaultFetch$1 = Screen.defaultFetch;\nvar DefaultDOMParser = typeof DOMParser !== 'undefined' ? DOMParser : null;\n\nvar Parser = /*#__PURE__*/function () {\n function Parser() {\n var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n _ref$fetch = _ref.fetch,\n fetch = _ref$fetch === void 0 ? defaultFetch$1 : _ref$fetch,\n _ref$DOMParser = _ref.DOMParser,\n DOMParser = _ref$DOMParser === void 0 ? DefaultDOMParser : _ref$DOMParser;\n\n _classCallCheck(this, Parser);\n\n this.fetch = fetch;\n this.DOMParser = DOMParser;\n }\n\n _createClass(Parser, [{\n key: \"parse\",\n value: function () {\n var _parse = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(resource) {\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n if (!/^ 2 && arguments[2] !== undefined ? arguments[2] : [];\n\n _classCallCheck(this, Rotate);\n\n this.type = 'rotate';\n this.angle = null;\n this.cx = 0;\n this.cy = 0;\n var numbers = toNumbers(rotate);\n this.angle = new Property(document, 'angle', numbers[0]);\n this.cx = (numbers[1] || 0) + (transformOrigin[0] || 0);\n this.cy = (numbers[2] || 0) + (transformOrigin[1] || 0);\n }\n\n _createClass(Rotate, [{\n key: \"apply\",\n value: function apply(ctx) {\n var cx = this.cx,\n cy = this.cy,\n angle = this.angle;\n ctx.translate(cx, cy);\n ctx.rotate(angle.getRadians());\n ctx.translate(-cx, -cy);\n }\n }, {\n key: \"unapply\",\n value: function unapply(ctx) {\n var cx = this.cx,\n cy = this.cy,\n angle = this.angle;\n ctx.translate(cx, cy);\n ctx.rotate(-1.0 * angle.getRadians());\n ctx.translate(-cx, -cy);\n }\n }, {\n key: \"applyToPoint\",\n value: function applyToPoint(point) {\n var cx = this.cx,\n cy = this.cy,\n angle = this.angle;\n var rad = angle.getRadians();\n point.applyTransform([1, 0, 0, 1, cx || 0.0, cy || 0.0 // this.p.y\n ]);\n point.applyTransform([Math.cos(rad), Math.sin(rad), -Math.sin(rad), Math.cos(rad), 0, 0]);\n point.applyTransform([1, 0, 0, 1, -cx || 0.0, -cy || 0.0 // -this.p.y\n ]);\n }\n }]);\n\n return Rotate;\n}();\n\nvar Scale = /*#__PURE__*/function () {\n function Scale(_, scale) {\n _classCallCheck(this, Scale);\n\n this.type = 'scale';\n this.scale = null;\n var scaleSize = Point.parseScale(scale); // Workaround for node-canvas\n\n if (scaleSize.x === 0 || scaleSize.y === 0) {\n scaleSize.x = PSEUDO_ZERO;\n scaleSize.y = PSEUDO_ZERO;\n }\n\n this.scale = scaleSize;\n }\n\n _createClass(Scale, [{\n key: \"apply\",\n value: function apply(ctx) {\n var _this$scale = this.scale,\n x = _this$scale.x,\n y = _this$scale.y;\n ctx.scale(x, y || x);\n }\n }, {\n key: \"unapply\",\n value: function unapply(ctx) {\n var _this$scale2 = this.scale,\n x = _this$scale2.x,\n y = _this$scale2.y;\n ctx.scale(1.0 / x, 1.0 / y || x);\n }\n }, {\n key: \"applyToPoint\",\n value: function applyToPoint(point) {\n var _this$scale3 = this.scale,\n x = _this$scale3.x,\n y = _this$scale3.y;\n point.applyTransform([x || 0.0, 0, 0, y || 0.0, 0, 0]);\n }\n }]);\n\n return Scale;\n}();\n\nvar Matrix = /*#__PURE__*/function () {\n function Matrix(_, matrix) {\n _classCallCheck(this, Matrix);\n\n this.type = 'matrix';\n this.matrix = [];\n this.matrix = toNumbers(matrix);\n }\n\n _createClass(Matrix, [{\n key: \"apply\",\n value: function apply(ctx) {\n var matrix = this.matrix;\n ctx.transform(matrix[0], matrix[1], matrix[2], matrix[3], matrix[4], matrix[5]);\n }\n }, {\n key: \"unapply\",\n value: function unapply(ctx) {\n var matrix = this.matrix;\n var a = matrix[0];\n var b = matrix[2];\n var c = matrix[4];\n var d = matrix[1];\n var e = matrix[3];\n var f = matrix[5];\n var g = 0.0;\n var h = 0.0;\n var i = 1.0;\n var det = 1 / (a * (e * i - f * h) - b * (d * i - f * g) + c * (d * h - e * g));\n ctx.transform(det * (e * i - f * h), det * (f * g - d * i), det * (c * h - b * i), det * (a * i - c * g), det * (b * f - c * e), det * (c * d - a * f));\n }\n }, {\n key: \"applyToPoint\",\n value: function applyToPoint(point) {\n point.applyTransform(this.matrix);\n }\n }]);\n\n return Matrix;\n}();\n\nfunction _createSuper(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\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\nvar Skew = /*#__PURE__*/function (_Matrix) {\n _inherits(Skew, _Matrix);\n\n var _super = _createSuper(Skew);\n\n function Skew(document, skew) {\n var _this;\n\n _classCallCheck(this, Skew);\n\n _this = _super.call(this, document, skew);\n _this.type = 'skew';\n _this.angle = null;\n _this.angle = new Property(document, 'angle', skew);\n return _this;\n }\n\n return Skew;\n}(Matrix);\n\nfunction _createSuper$1(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$1()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$1() { 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\nvar SkewX = /*#__PURE__*/function (_Skew) {\n _inherits(SkewX, _Skew);\n\n var _super = _createSuper$1(SkewX);\n\n function SkewX(document, skew) {\n var _this;\n\n _classCallCheck(this, SkewX);\n\n _this = _super.call(this, document, skew);\n _this.type = 'skewX';\n _this.matrix = [1, 0, Math.tan(_this.angle.getRadians()), 1, 0, 0];\n return _this;\n }\n\n return SkewX;\n}(Skew);\n\nfunction _createSuper$2(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$2()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$2() { 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\nvar SkewY = /*#__PURE__*/function (_Skew) {\n _inherits(SkewY, _Skew);\n\n var _super = _createSuper$2(SkewY);\n\n function SkewY(document, skew) {\n var _this;\n\n _classCallCheck(this, SkewY);\n\n _this = _super.call(this, document, skew);\n _this.type = 'skewY';\n _this.matrix = [1, Math.tan(_this.angle.getRadians()), 0, 1, 0, 0];\n return _this;\n }\n\n return SkewY;\n}(Skew);\n\nfunction parseTransforms(transform) {\n return compressSpaces(transform).trim().replace(/\\)([a-zA-Z])/g, ') $1').replace(/\\)(\\s?,\\s?)/g, ') ').split(/\\s(?=[a-z])/);\n}\n\nfunction parseTransform(transform) {\n var _transform$split = transform.split('('),\n _transform$split2 = _slicedToArray(_transform$split, 2),\n type = _transform$split2[0],\n value = _transform$split2[1];\n\n return [type.trim(), value.trim().replace(')', '')];\n}\n\nvar Transform = /*#__PURE__*/function () {\n function Transform(document, transform, transformOrigin) {\n var _this = this;\n\n _classCallCheck(this, Transform);\n\n this.document = document;\n this.transforms = [];\n var data = parseTransforms(transform);\n var originCoords = transformOrigin ? toNumbers(transformOrigin) : [];\n data.forEach(function (transform) {\n if (transform === 'none') {\n return;\n }\n\n var _parseTransform = parseTransform(transform),\n _parseTransform2 = _slicedToArray(_parseTransform, 2),\n type = _parseTransform2[0],\n value = _parseTransform2[1];\n\n var TransformType = Transform.transformTypes[type];\n\n if (typeof TransformType !== 'undefined') {\n _this.transforms.push(new TransformType(_this.document, value, originCoords));\n }\n });\n }\n\n _createClass(Transform, [{\n key: \"apply\",\n value: function apply(ctx) {\n var transforms = this.transforms;\n var len = transforms.length;\n\n for (var i = 0; i < len; i++) {\n transforms[i].apply(ctx);\n }\n }\n }, {\n key: \"unapply\",\n value: function unapply(ctx) {\n var transforms = this.transforms;\n var len = transforms.length;\n\n for (var i = len - 1; i >= 0; i--) {\n transforms[i].unapply(ctx);\n }\n } // TODO: applyToPoint unused ... remove?\n\n }, {\n key: \"applyToPoint\",\n value: function applyToPoint(point) {\n var transforms = this.transforms;\n var len = transforms.length;\n\n for (var i = 0; i < len; i++) {\n transforms[i].applyToPoint(point);\n }\n }\n }], [{\n key: \"fromElement\",\n value: function fromElement(document, element) {\n var transformStyle = element.getStyle('transform', false, true);\n var transformOriginStyle = element.getStyle('transform-origin', false, true);\n\n if (transformStyle.hasValue()) {\n return new Transform(document, transformStyle.getString(), transformOriginStyle.getString());\n }\n\n return null;\n }\n }]);\n\n return Transform;\n}();\nTransform.transformTypes = {\n translate: Translate,\n rotate: Rotate,\n scale: Scale,\n matrix: Matrix,\n skewX: SkewX,\n skewY: SkewY\n};\n\nvar Element = /*#__PURE__*/function () {\n function Element(document, node) {\n var _this = this;\n\n var captureTextNodes = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n\n _classCallCheck(this, Element);\n\n this.document = document;\n this.node = node;\n this.captureTextNodes = captureTextNodes;\n this.attributes = {};\n this.styles = {};\n this.stylesSpecificity = {};\n this.animationFrozen = false;\n this.animationFrozenValue = '';\n this.parent = null;\n this.children = [];\n\n if (!node || node.nodeType !== 1) {\n // ELEMENT_NODE\n return;\n } // add attributes\n\n\n Array.from(node.attributes).forEach(function (attribute) {\n var nodeName = normalizeAttributeName(attribute.nodeName);\n _this.attributes[nodeName] = new Property(document, nodeName, attribute.value);\n });\n this.addStylesFromStyleDefinition(); // add inline styles\n\n if (this.getAttribute('style').hasValue()) {\n var styles = this.getAttribute('style').getString().split(';').map(function (_) {\n return _.trim();\n });\n styles.forEach(function (style) {\n if (!style) {\n return;\n }\n\n var _style$split$map = style.split(':').map(function (_) {\n return _.trim();\n }),\n _style$split$map2 = _slicedToArray(_style$split$map, 2),\n name = _style$split$map2[0],\n value = _style$split$map2[1];\n\n _this.styles[name] = new Property(document, name, value);\n });\n }\n\n var definitions = document.definitions;\n var id = this.getAttribute('id'); // add id\n\n if (id.hasValue()) {\n if (!definitions[id.getValue()]) {\n definitions[id.getValue()] = this;\n }\n }\n\n Array.from(node.childNodes).forEach(function (childNode) {\n if (childNode.nodeType === 1) {\n _this.addChild(childNode); // ELEMENT_NODE\n\n } else if (captureTextNodes && (childNode.nodeType === 3 || childNode.nodeType === 4)) {\n var textNode = document.createTextNode(childNode);\n\n if (textNode.getText().length > 0) {\n _this.addChild(textNode); // TEXT_NODE\n\n }\n }\n });\n }\n\n _createClass(Element, [{\n key: \"getAttribute\",\n value: function getAttribute(name) {\n var createIfNotExists = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n var attr = this.attributes[name];\n\n if (!attr && createIfNotExists) {\n var _attr = new Property(this.document, name, '');\n\n this.attributes[name] = _attr;\n return _attr;\n }\n\n return attr || Property.empty(this.document);\n }\n }, {\n key: \"getHrefAttribute\",\n value: function getHrefAttribute() {\n for (var key in this.attributes) {\n if (key === 'href' || /:href$/.test(key)) {\n return this.attributes[key];\n }\n }\n\n return Property.empty(this.document);\n }\n }, {\n key: \"getStyle\",\n value: function getStyle(name) {\n var createIfNotExists = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n var skipAncestors = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n var style = this.styles[name];\n\n if (style) {\n return style;\n }\n\n var attr = this.getAttribute(name);\n\n if (attr && attr.hasValue()) {\n this.styles[name] = attr; // move up to me to cache\n\n return attr;\n }\n\n if (!skipAncestors) {\n var parent = this.parent;\n\n if (parent) {\n var parentStyle = parent.getStyle(name);\n\n if (parentStyle && parentStyle.hasValue()) {\n return parentStyle;\n }\n }\n }\n\n if (createIfNotExists) {\n var _style = new Property(this.document, name, '');\n\n this.styles[name] = _style;\n return _style;\n }\n\n return style || Property.empty(this.document);\n }\n }, {\n key: \"render\",\n value: function render(ctx) {\n // don't render display=none\n // don't render visibility=hidden\n if (this.getStyle('display').getString() === 'none' || this.getStyle('visibility').getString() === 'hidden') {\n return;\n }\n\n ctx.save();\n\n if (this.getStyle('mask').hasValue()) {\n // mask\n var mask = this.getStyle('mask').getDefinition();\n\n if (mask) {\n this.applyEffects(ctx);\n mask.apply(ctx, this);\n }\n } else if (this.getStyle('filter').getValue('none') !== 'none') {\n // filter\n var filter = this.getStyle('filter').getDefinition();\n\n if (filter) {\n this.applyEffects(ctx);\n filter.apply(ctx, this);\n }\n } else {\n this.setContext(ctx);\n this.renderChildren(ctx);\n this.clearContext(ctx);\n }\n\n ctx.restore();\n }\n }, {\n key: \"setContext\",\n value: function setContext(_) {}\n }, {\n key: \"applyEffects\",\n value: function applyEffects(ctx) {\n // transform\n var transform = Transform.fromElement(this.document, this);\n\n if (transform) {\n transform.apply(ctx);\n } // clip\n\n\n var clipPathStyleProp = this.getStyle('clip-path', false, true);\n\n if (clipPathStyleProp.hasValue()) {\n var clip = clipPathStyleProp.getDefinition();\n\n if (clip) {\n clip.apply(ctx);\n }\n }\n }\n }, {\n key: \"clearContext\",\n value: function clearContext(_) {}\n }, {\n key: \"renderChildren\",\n value: function renderChildren(ctx) {\n this.children.forEach(function (child) {\n child.render(ctx);\n });\n }\n }, {\n key: \"addChild\",\n value: function addChild(childNode) {\n var child = childNode instanceof Element ? childNode : this.document.createElement(childNode);\n child.parent = this;\n\n if (!Element.ignoreChildTypes.includes(child.type)) {\n this.children.push(child);\n }\n }\n }, {\n key: \"matchesSelector\",\n value: function matchesSelector(selector) {\n var node = this.node;\n\n if (typeof node.matches === 'function') {\n return node.matches(selector);\n }\n\n var styleClasses = node.getAttribute('class');\n\n if (!styleClasses || styleClasses === '') {\n return false;\n }\n\n return styleClasses.split(' ').some(function (styleClass) {\n if (\".\".concat(styleClass) === selector) {\n return true;\n }\n });\n }\n }, {\n key: \"addStylesFromStyleDefinition\",\n value: function addStylesFromStyleDefinition() {\n var _this$document = this.document,\n styles = _this$document.styles,\n stylesSpecificity = _this$document.stylesSpecificity;\n\n for (var selector in styles) {\n if (selector[0] !== '@' && this.matchesSelector(selector)) {\n var style = styles[selector];\n var specificity = stylesSpecificity[selector];\n\n if (style) {\n for (var name in style) {\n var existingSpecificity = this.stylesSpecificity[name];\n\n if (typeof existingSpecificity === 'undefined') {\n existingSpecificity = '000';\n }\n\n if (specificity >= existingSpecificity) {\n this.styles[name] = style[name];\n this.stylesSpecificity[name] = specificity;\n }\n }\n }\n }\n }\n }\n }, {\n key: \"removeStyles\",\n value: function removeStyles(element, ignoreStyles) {\n var toRestore = ignoreStyles.reduce(function (toRestore, name) {\n var styleProp = element.getStyle(name);\n\n if (!styleProp.hasValue()) {\n return toRestore;\n }\n\n var value = styleProp.getString();\n styleProp.setValue('');\n return [].concat(_toConsumableArray(toRestore), [[name, value]]);\n }, []);\n return toRestore;\n }\n }, {\n key: \"restoreStyles\",\n value: function restoreStyles(element, styles) {\n styles.forEach(function (_ref) {\n var _ref2 = _slicedToArray(_ref, 2),\n name = _ref2[0],\n value = _ref2[1];\n\n element.getStyle(name, true).setValue(value);\n });\n }\n }]);\n\n return Element;\n}();\nElement.ignoreChildTypes = ['title'];\n\nfunction _createSuper$3(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$3()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$3() { 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\nvar UnknownElement = /*#__PURE__*/function (_Element) {\n _inherits(UnknownElement, _Element);\n\n var _super = _createSuper$3(UnknownElement);\n\n function UnknownElement(document, node, captureTextNodes) {\n var _this;\n\n _classCallCheck(this, UnknownElement);\n\n _this = _super.call(this, document, node, captureTextNodes);\n\n return _this;\n }\n\n return UnknownElement;\n}(Element);\n\nfunction wrapFontFamily(fontFamily) {\n var trimmed = fontFamily.trim();\n return /^('|\")/.test(trimmed) ? trimmed : \"\\\"\".concat(trimmed, \"\\\"\");\n}\n\nfunction prepareFontFamily(fontFamily) {\n return typeof process === 'undefined' ? fontFamily : fontFamily.trim().split(',').map(wrapFontFamily).join(',');\n}\n/**\r\n * https://developer.mozilla.org/en-US/docs/Web/CSS/font-style\r\n */\n\n\nfunction prepareFontStyle(fontStyle) {\n if (!fontStyle) {\n return '';\n }\n\n var targetFontStyle = fontStyle.trim().toLowerCase();\n\n switch (targetFontStyle) {\n case 'normal':\n case 'italic':\n case 'oblique':\n case 'inherit':\n case 'initial':\n case 'unset':\n return targetFontStyle;\n\n default:\n if (/^oblique\\s+(-|)\\d+deg$/.test(targetFontStyle)) {\n return targetFontStyle;\n }\n\n return '';\n }\n}\n/**\r\n * https://developer.mozilla.org/en-US/docs/Web/CSS/font-weight\r\n */\n\n\nfunction prepareFontWeight(fontWeight) {\n if (!fontWeight) {\n return '';\n }\n\n var targetFontWeight = fontWeight.trim().toLowerCase();\n\n switch (targetFontWeight) {\n case 'normal':\n case 'bold':\n case 'lighter':\n case 'bolder':\n case 'inherit':\n case 'initial':\n case 'unset':\n return targetFontWeight;\n\n default:\n if (/^[\\d.]+$/.test(targetFontWeight)) {\n return targetFontWeight;\n }\n\n return '';\n }\n}\n\nvar Font = /*#__PURE__*/function () {\n function Font(fontStyle, fontVariant, fontWeight, fontSize, fontFamily, inherit) {\n _classCallCheck(this, Font);\n\n var inheritFont = inherit ? typeof inherit === 'string' ? Font.parse(inherit) : inherit : {};\n this.fontFamily = fontFamily || inheritFont.fontFamily;\n this.fontSize = fontSize || inheritFont.fontSize;\n this.fontStyle = fontStyle || inheritFont.fontStyle;\n this.fontWeight = fontWeight || inheritFont.fontWeight;\n this.fontVariant = fontVariant || inheritFont.fontVariant;\n }\n\n _createClass(Font, [{\n key: \"toString\",\n value: function toString() {\n return [prepareFontStyle(this.fontStyle), this.fontVariant, prepareFontWeight(this.fontWeight), this.fontSize, // Wrap fontFamily only on nodejs and only for canvas.ctx\n prepareFontFamily(this.fontFamily)].join(' ').trim();\n }\n }], [{\n key: \"parse\",\n value: function parse() {\n var font = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n var inherit = arguments.length > 1 ? arguments[1] : undefined;\n var fontStyle = '';\n var fontVariant = '';\n var fontWeight = '';\n var fontSize = '';\n var fontFamily = '';\n var parts = compressSpaces(font).trim().split(' ');\n var set = {\n fontSize: false,\n fontStyle: false,\n fontWeight: false,\n fontVariant: false\n };\n parts.forEach(function (part) {\n switch (true) {\n case !set.fontStyle && Font.styles.includes(part):\n if (part !== 'inherit') {\n fontStyle = part;\n }\n\n set.fontStyle = true;\n break;\n\n case !set.fontVariant && Font.variants.includes(part):\n if (part !== 'inherit') {\n fontVariant = part;\n }\n\n set.fontStyle = true;\n set.fontVariant = true;\n break;\n\n case !set.fontWeight && Font.weights.includes(part):\n if (part !== 'inherit') {\n fontWeight = part;\n }\n\n set.fontStyle = true;\n set.fontVariant = true;\n set.fontWeight = true;\n break;\n\n case !set.fontSize:\n if (part !== 'inherit') {\n var _part$split = part.split('/');\n\n var _part$split2 = _slicedToArray(_part$split, 1);\n\n fontSize = _part$split2[0];\n }\n\n set.fontStyle = true;\n set.fontVariant = true;\n set.fontWeight = true;\n set.fontSize = true;\n break;\n\n default:\n if (part !== 'inherit') {\n fontFamily += part;\n }\n\n }\n });\n return new Font(fontStyle, fontVariant, fontWeight, fontSize, fontFamily, inherit);\n }\n }]);\n\n return Font;\n}();\nFont.styles = 'normal|italic|oblique|inherit';\nFont.variants = 'normal|small-caps|inherit';\nFont.weights = 'normal|bold|bolder|lighter|100|200|300|400|500|600|700|800|900|inherit';\n\nvar BoundingBox = /*#__PURE__*/function () {\n function BoundingBox() {\n var x1 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : Number.NaN;\n var y1 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : Number.NaN;\n var x2 = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : Number.NaN;\n var y2 = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : Number.NaN;\n\n _classCallCheck(this, BoundingBox);\n\n this.x1 = x1;\n this.y1 = y1;\n this.x2 = x2;\n this.y2 = y2;\n this.addPoint(x1, y1);\n this.addPoint(x2, y2);\n }\n\n _createClass(BoundingBox, [{\n key: \"addPoint\",\n value: function addPoint(x, y) {\n if (typeof x !== 'undefined') {\n if (isNaN(this.x1) || isNaN(this.x2)) {\n this.x1 = x;\n this.x2 = x;\n }\n\n if (x < this.x1) {\n this.x1 = x;\n }\n\n if (x > this.x2) {\n this.x2 = x;\n }\n }\n\n if (typeof y !== 'undefined') {\n if (isNaN(this.y1) || isNaN(this.y2)) {\n this.y1 = y;\n this.y2 = y;\n }\n\n if (y < this.y1) {\n this.y1 = y;\n }\n\n if (y > this.y2) {\n this.y2 = y;\n }\n }\n }\n }, {\n key: \"addX\",\n value: function addX(x) {\n this.addPoint(x, null);\n }\n }, {\n key: \"addY\",\n value: function addY(y) {\n this.addPoint(null, y);\n }\n }, {\n key: \"addBoundingBox\",\n value: function addBoundingBox(boundingBox) {\n if (!boundingBox) {\n return;\n }\n\n var x1 = boundingBox.x1,\n y1 = boundingBox.y1,\n x2 = boundingBox.x2,\n y2 = boundingBox.y2;\n this.addPoint(x1, y1);\n this.addPoint(x2, y2);\n }\n }, {\n key: \"sumCubic\",\n value: function sumCubic(t, p0, p1, p2, p3) {\n return Math.pow(1 - t, 3) * p0 + 3 * Math.pow(1 - t, 2) * t * p1 + 3 * (1 - t) * Math.pow(t, 2) * p2 + Math.pow(t, 3) * p3;\n }\n }, {\n key: \"bezierCurveAdd\",\n value: function bezierCurveAdd(forX, p0, p1, p2, p3) {\n var b = 6 * p0 - 12 * p1 + 6 * p2;\n var a = -3 * p0 + 9 * p1 - 9 * p2 + 3 * p3;\n var c = 3 * p1 - 3 * p0;\n\n if (a === 0) {\n if (b === 0) {\n return;\n }\n\n var t = -c / b;\n\n if (0 < t && t < 1) {\n if (forX) {\n this.addX(this.sumCubic(t, p0, p1, p2, p3));\n } else {\n this.addY(this.sumCubic(t, p0, p1, p2, p3));\n }\n }\n\n return;\n }\n\n var b2ac = Math.pow(b, 2) - 4 * c * a;\n\n if (b2ac < 0) {\n return;\n }\n\n var t1 = (-b + Math.sqrt(b2ac)) / (2 * a);\n\n if (0 < t1 && t1 < 1) {\n if (forX) {\n this.addX(this.sumCubic(t1, p0, p1, p2, p3));\n } else {\n this.addY(this.sumCubic(t1, p0, p1, p2, p3));\n }\n }\n\n var t2 = (-b - Math.sqrt(b2ac)) / (2 * a);\n\n if (0 < t2 && t2 < 1) {\n if (forX) {\n this.addX(this.sumCubic(t2, p0, p1, p2, p3));\n } else {\n this.addY(this.sumCubic(t2, p0, p1, p2, p3));\n }\n }\n } // from http://blog.hackers-cafe.net/2009/06/how-to-calculate-bezier-curves-bounding.html\n\n }, {\n key: \"addBezierCurve\",\n value: function addBezierCurve(p0x, p0y, p1x, p1y, p2x, p2y, p3x, p3y) {\n this.addPoint(p0x, p0y);\n this.addPoint(p3x, p3y);\n this.bezierCurveAdd(true, p0x, p1x, p2x, p3x);\n this.bezierCurveAdd(false, p0y, p1y, p2y, p3y);\n }\n }, {\n key: \"addQuadraticCurve\",\n value: function addQuadraticCurve(p0x, p0y, p1x, p1y, p2x, p2y) {\n var cp1x = p0x + 2 / 3 * (p1x - p0x); // CP1 = QP0 + 2/3 *(QP1-QP0)\n\n var cp1y = p0y + 2 / 3 * (p1y - p0y); // CP1 = QP0 + 2/3 *(QP1-QP0)\n\n var cp2x = cp1x + 1 / 3 * (p2x - p0x); // CP2 = CP1 + 1/3 *(QP2-QP0)\n\n var cp2y = cp1y + 1 / 3 * (p2y - p0y); // CP2 = CP1 + 1/3 *(QP2-QP0)\n\n this.addBezierCurve(p0x, p0y, cp1x, cp2x, cp1y, cp2y, p2x, p2y);\n }\n }, {\n key: \"isPointInBox\",\n value: function isPointInBox(x, y) {\n var x1 = this.x1,\n y1 = this.y1,\n x2 = this.x2,\n y2 = this.y2;\n return x1 <= x && x <= x2 && y1 <= y && y <= y2;\n }\n }, {\n key: \"x\",\n get: function get() {\n return this.x1;\n }\n }, {\n key: \"y\",\n get: function get() {\n return this.y1;\n }\n }, {\n key: \"width\",\n get: function get() {\n return this.x2 - this.x1;\n }\n }, {\n key: \"height\",\n get: function get() {\n return this.y2 - this.y1;\n }\n }]);\n\n return BoundingBox;\n}();\n\nfunction _createSuper$4(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$4()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$4() { 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\nvar RenderedElement = /*#__PURE__*/function (_Element) {\n _inherits(RenderedElement, _Element);\n\n var _super = _createSuper$4(RenderedElement);\n\n function RenderedElement() {\n var _this;\n\n _classCallCheck(this, RenderedElement);\n\n _this = _super.apply(this, arguments);\n _this.modifiedEmSizeStack = false;\n return _this;\n }\n\n _createClass(RenderedElement, [{\n key: \"calculateOpacity\",\n value: function calculateOpacity() {\n var opacity = 1.0; // tslint:disable-next-line: no-this-assignment\n\n var element = this;\n\n while (element) {\n var opacityStyle = element.getStyle('opacity', false, true); // no ancestors on style call\n\n if (opacityStyle.hasValue()) {\n opacity *= opacityStyle.getNumber();\n }\n\n element = element.parent;\n }\n\n return opacity;\n }\n }, {\n key: \"setContext\",\n value: function setContext(ctx) {\n var fromMeasure = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n if (!fromMeasure) {\n // causes stack overflow when measuring text with gradients\n // fill\n var fillStyleProp = this.getStyle('fill');\n var fillOpacityStyleProp = this.getStyle('fill-opacity');\n var strokeStyleProp = this.getStyle('stroke');\n var strokeOpacityProp = this.getStyle('stroke-opacity');\n\n if (fillStyleProp.isUrlDefinition()) {\n var fillStyle = fillStyleProp.getFillStyleDefinition(this, fillOpacityStyleProp);\n\n if (fillStyle) {\n ctx.fillStyle = fillStyle;\n }\n } else if (fillStyleProp.hasValue()) {\n if (fillStyleProp.getString() === 'currentColor') {\n fillStyleProp.setValue(this.getStyle('color').getColor());\n }\n\n var _fillStyle = fillStyleProp.getColor();\n\n if (_fillStyle !== 'inherit') {\n ctx.fillStyle = _fillStyle === 'none' ? 'rgba(0,0,0,0)' : _fillStyle;\n }\n }\n\n if (fillOpacityStyleProp.hasValue()) {\n var _fillStyle2 = new Property(this.document, 'fill', ctx.fillStyle).addOpacity(fillOpacityStyleProp).getColor();\n\n ctx.fillStyle = _fillStyle2;\n } // stroke\n\n\n if (strokeStyleProp.isUrlDefinition()) {\n var strokeStyle = strokeStyleProp.getFillStyleDefinition(this, strokeOpacityProp);\n\n if (strokeStyle) {\n ctx.strokeStyle = strokeStyle;\n }\n } else if (strokeStyleProp.hasValue()) {\n if (strokeStyleProp.getString() === 'currentColor') {\n strokeStyleProp.setValue(this.getStyle('color').getColor());\n }\n\n var _strokeStyle = strokeStyleProp.getString();\n\n if (_strokeStyle !== 'inherit') {\n ctx.strokeStyle = _strokeStyle === 'none' ? 'rgba(0,0,0,0)' : _strokeStyle;\n }\n }\n\n if (strokeOpacityProp.hasValue()) {\n var _strokeStyle2 = new Property(this.document, 'stroke', ctx.strokeStyle).addOpacity(strokeOpacityProp).getString();\n\n ctx.strokeStyle = _strokeStyle2;\n }\n\n var strokeWidthStyleProp = this.getStyle('stroke-width');\n\n if (strokeWidthStyleProp.hasValue()) {\n var newLineWidth = strokeWidthStyleProp.getPixels();\n ctx.lineWidth = !newLineWidth ? PSEUDO_ZERO // browsers don't respect 0 (or node-canvas? :-)\n : newLineWidth;\n }\n\n var strokeLinecapStyleProp = this.getStyle('stroke-linecap');\n var strokeLinejoinStyleProp = this.getStyle('stroke-linejoin');\n var strokeMiterlimitProp = this.getStyle('stroke-miterlimit');\n var pointOrderStyleProp = this.getStyle('paint-order');\n var strokeDasharrayStyleProp = this.getStyle('stroke-dasharray');\n var strokeDashoffsetProp = this.getStyle('stroke-dashoffset');\n\n if (strokeLinecapStyleProp.hasValue()) {\n ctx.lineCap = strokeLinecapStyleProp.getString();\n }\n\n if (strokeLinejoinStyleProp.hasValue()) {\n ctx.lineJoin = strokeLinejoinStyleProp.getString();\n }\n\n if (strokeMiterlimitProp.hasValue()) {\n ctx.miterLimit = strokeMiterlimitProp.getNumber();\n }\n\n if (pointOrderStyleProp.hasValue()) {\n // ?\n ctx.paintOrder = pointOrderStyleProp.getValue();\n }\n\n if (strokeDasharrayStyleProp.hasValue() && strokeDasharrayStyleProp.getString() !== 'none') {\n var gaps = toNumbers(strokeDasharrayStyleProp.getString());\n\n if (typeof ctx.setLineDash !== 'undefined') {\n ctx.setLineDash(gaps);\n } else if (typeof ctx.webkitLineDash !== 'undefined') {\n ctx.webkitLineDash = gaps;\n } else if (typeof ctx.mozDash !== 'undefined' && !(gaps.length === 1 && gaps[0] === 0)) {\n ctx.mozDash = gaps;\n }\n\n var offset = strokeDashoffsetProp.getPixels();\n\n if (typeof ctx.lineDashOffset !== 'undefined') {\n ctx.lineDashOffset = offset;\n } else if (typeof ctx.webkitLineDashOffset !== 'undefined') {\n ctx.webkitLineDashOffset = offset;\n } else if (typeof ctx.mozDashOffset !== 'undefined') {\n ctx.mozDashOffset = offset;\n }\n }\n } // font\n\n\n this.modifiedEmSizeStack = false;\n\n if (typeof ctx.font !== 'undefined') {\n var fontStyleProp = this.getStyle('font');\n var fontStyleStyleProp = this.getStyle('font-style');\n var fontVariantStyleProp = this.getStyle('font-variant');\n var fontWeightStyleProp = this.getStyle('font-weight');\n var fontSizeStyleProp = this.getStyle('font-size');\n var fontFamilyStyleProp = this.getStyle('font-family');\n var font = new Font(fontStyleStyleProp.getString(), fontVariantStyleProp.getString(), fontWeightStyleProp.getString(), fontSizeStyleProp.hasValue() ? \"\".concat(fontSizeStyleProp.getPixels(true), \"px\") : '', fontFamilyStyleProp.getString(), Font.parse(fontStyleProp.getString(), ctx.font));\n fontStyleStyleProp.setValue(font.fontStyle);\n fontVariantStyleProp.setValue(font.fontVariant);\n fontWeightStyleProp.setValue(font.fontWeight);\n fontSizeStyleProp.setValue(font.fontSize);\n fontFamilyStyleProp.setValue(font.fontFamily);\n ctx.font = font.toString();\n\n if (fontSizeStyleProp.isPixels()) {\n this.document.emSize = fontSizeStyleProp.getPixels();\n this.modifiedEmSizeStack = true;\n }\n }\n\n if (!fromMeasure) {\n // effects\n this.applyEffects(ctx); // opacity\n\n ctx.globalAlpha = this.calculateOpacity();\n }\n }\n }, {\n key: \"clearContext\",\n value: function clearContext(ctx) {\n _get(_getPrototypeOf(RenderedElement.prototype), \"clearContext\", this).call(this, ctx);\n\n if (this.modifiedEmSizeStack) {\n this.document.popEmSize();\n }\n }\n }]);\n\n return RenderedElement;\n}(Element);\n\nfunction _createSuper$5(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$5()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$5() { 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\nvar TextElement = /*#__PURE__*/function (_RenderedElement) {\n _inherits(TextElement, _RenderedElement);\n\n var _super = _createSuper$5(TextElement);\n\n function TextElement(document, node, captureTextNodes) {\n var _this;\n\n _classCallCheck(this, TextElement);\n\n _this = _super.call(this, document, node, (this instanceof TextElement ? this.constructor : void 0) === TextElement ? true : captureTextNodes);\n _this.type = 'text';\n _this.x = 0;\n _this.y = 0;\n _this.measureCache = -1;\n return _this;\n }\n\n _createClass(TextElement, [{\n key: \"setContext\",\n value: function setContext(ctx) {\n var fromMeasure = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n _get(_getPrototypeOf(TextElement.prototype), \"setContext\", this).call(this, ctx, fromMeasure);\n\n var textBaseline = this.getStyle('dominant-baseline').getTextBaseline() || this.getStyle('alignment-baseline').getTextBaseline();\n\n if (textBaseline) {\n ctx.textBaseline = textBaseline;\n }\n }\n }, {\n key: \"initializeCoordinates\",\n value: function initializeCoordinates(ctx) {\n this.x = this.getAttribute('x').getPixels('x');\n this.y = this.getAttribute('y').getPixels('y');\n var dxAttr = this.getAttribute('dx');\n var dyAttr = this.getAttribute('dy');\n\n if (dxAttr.hasValue()) {\n this.x += dxAttr.getPixels('x');\n }\n\n if (dyAttr.hasValue()) {\n this.y += dyAttr.getPixels('y');\n }\n\n this.x += this.getAnchorDelta(ctx, this, 0);\n }\n }, {\n key: \"getBoundingBox\",\n value: function getBoundingBox(ctx) {\n var _this2 = this;\n\n if (this.type !== 'text') {\n return this.getTElementBoundingBox(ctx);\n }\n\n this.initializeCoordinates(ctx);\n var boundingBox = null;\n this.children.forEach(function (_, i) {\n var childBoundingBox = _this2.getChildBoundingBox(ctx, _this2, _this2, i);\n\n if (!boundingBox) {\n boundingBox = childBoundingBox;\n } else {\n boundingBox.addBoundingBox(childBoundingBox);\n }\n });\n return boundingBox;\n }\n }, {\n key: \"getFontSize\",\n value: function getFontSize() {\n var document = this.document,\n parent = this.parent;\n var inheritFontSize = Font.parse(document.ctx.font).fontSize;\n var fontSize = parent.getStyle('font-size').getNumber(inheritFontSize);\n return fontSize;\n }\n }, {\n key: \"getTElementBoundingBox\",\n value: function getTElementBoundingBox(ctx) {\n var fontSize = this.getFontSize();\n return new BoundingBox(this.x, this.y - fontSize, this.x + this.measureText(ctx), this.y);\n }\n }, {\n key: \"getGlyph\",\n value: function getGlyph(font, text, i) {\n var char = text[i];\n var glyph = null;\n\n if (font.isArabic) {\n var len = text.length;\n var prevChar = text[i - 1];\n var nextChar = text[i + 1];\n var arabicForm = 'isolated';\n\n if ((i === 0 || prevChar === ' ') && i < len - 2 && nextChar !== ' ') {\n arabicForm = 'terminal';\n }\n\n if (i > 0 && prevChar !== ' ' && i < len - 2 && nextChar !== ' ') {\n arabicForm = 'medial';\n }\n\n if (i > 0 && prevChar !== ' ' && (i === len - 1 || nextChar === ' ')) {\n arabicForm = 'initial';\n }\n\n if (typeof font.glyphs[char] !== 'undefined') {\n glyph = font.glyphs[char][arabicForm];\n\n if (!glyph && font.glyphs[char].type === 'glyph') {\n glyph = font.glyphs[char];\n }\n }\n } else {\n glyph = font.glyphs[char];\n }\n\n if (!glyph) {\n glyph = font.missingGlyph;\n }\n\n return glyph;\n }\n }, {\n key: \"getText\",\n value: function getText() {\n return '';\n }\n }, {\n key: \"getTextFromNode\",\n value: function getTextFromNode(node) {\n var textNode = node || this.node;\n var childNodes = Array.from(textNode.parentNode.childNodes);\n var index = childNodes.indexOf(textNode);\n var lastIndex = childNodes.length - 1;\n var text = compressSpaces(textNode.value || textNode.text || textNode.textContent || '');\n\n if (index === 0) {\n text = trimLeft(text);\n }\n\n if (index === lastIndex) {\n text = trimRight(text);\n }\n\n return text;\n }\n }, {\n key: \"renderChildren\",\n value: function renderChildren(ctx) {\n var _this3 = this;\n\n if (this.type !== 'text') {\n this.renderTElementChildren(ctx);\n return;\n }\n\n this.initializeCoordinates(ctx);\n this.children.forEach(function (_, i) {\n _this3.renderChild(ctx, _this3, _this3, i);\n });\n var mouse = this.document.screen.mouse; // Do not calc bounding box if mouse is not working.\n\n if (mouse.isWorking()) {\n mouse.checkBoundingBox(this, this.getBoundingBox(ctx));\n }\n }\n }, {\n key: \"renderTElementChildren\",\n value: function renderTElementChildren(ctx) {\n var document = this.document,\n parent = this.parent;\n var renderText = this.getText();\n var customFont = parent.getStyle('font-family').getDefinition();\n\n if (customFont) {\n var unitsPerEm = customFont.fontFace.unitsPerEm;\n var ctxFont = Font.parse(document.ctx.font);\n var fontSize = parent.getStyle('font-size').getNumber(ctxFont.fontSize);\n var fontStyle = parent.getStyle('font-style').getString(ctxFont.fontStyle);\n var scale = fontSize / unitsPerEm;\n var text = customFont.isRTL ? renderText.split('').reverse().join('') : renderText;\n var dx = toNumbers(parent.getAttribute('dx').getString());\n var len = text.length;\n\n for (var i = 0; i < len; i++) {\n var glyph = this.getGlyph(customFont, text, i);\n ctx.translate(this.x, this.y);\n ctx.scale(scale, -scale);\n var lw = ctx.lineWidth;\n ctx.lineWidth = ctx.lineWidth * unitsPerEm / fontSize;\n\n if (fontStyle === 'italic') {\n ctx.transform(1, 0, .4, 1, 0, 0);\n }\n\n glyph.render(ctx);\n\n if (fontStyle === 'italic') {\n ctx.transform(1, 0, -.4, 1, 0, 0);\n }\n\n ctx.lineWidth = lw;\n ctx.scale(1 / scale, -1 / scale);\n ctx.translate(-this.x, -this.y);\n this.x += fontSize * (glyph.horizAdvX || customFont.horizAdvX) / unitsPerEm;\n\n if (typeof dx[i] !== 'undefined' && !isNaN(dx[i])) {\n this.x += dx[i];\n }\n }\n\n return;\n }\n\n var x = this.x,\n y = this.y;\n\n if (ctx.paintOrder === 'stroke') {\n if (ctx.strokeStyle) {\n ctx.strokeText(renderText, x, y);\n }\n\n if (ctx.fillStyle) {\n ctx.fillText(renderText, x, y);\n }\n } else {\n if (ctx.fillStyle) {\n ctx.fillText(renderText, x, y);\n }\n\n if (ctx.strokeStyle) {\n ctx.strokeText(renderText, x, y);\n }\n }\n }\n }, {\n key: \"getAnchorDelta\",\n value: function getAnchorDelta(ctx, parent, startI) {\n var textAnchor = this.getStyle('text-anchor').getString('start');\n\n if (textAnchor !== 'start') {\n var children = parent.children;\n var len = children.length;\n var child = null;\n var width = 0;\n\n for (var i = startI; i < len; i++) {\n child = children[i];\n\n if (i > startI && child.getAttribute('x').hasValue() || child.getAttribute('text-anchor').hasValue()) {\n break; // new group\n }\n\n width += child.measureTextRecursive(ctx);\n }\n\n return -1 * (textAnchor === 'end' ? width : width / 2.0);\n }\n\n return 0;\n }\n }, {\n key: \"adjustChildCoordinates\",\n value: function adjustChildCoordinates(ctx, textParent, parent, i) {\n var child = parent.children[i];\n\n if (typeof child.measureText !== 'function') {\n return child;\n }\n\n ctx.save();\n child.setContext(ctx, true);\n var xAttr = child.getAttribute('x');\n var yAttr = child.getAttribute('y');\n var dxAttr = child.getAttribute('dx');\n var dyAttr = child.getAttribute('dy');\n var textAnchor = child.getAttribute('text-anchor').getString('start');\n\n if (i === 0 && child.type !== 'textNode') {\n if (!xAttr.hasValue()) {\n xAttr.setValue(textParent.getAttribute('x').getValue('0'));\n }\n\n if (!yAttr.hasValue()) {\n yAttr.setValue(textParent.getAttribute('y').getValue('0'));\n }\n\n if (!dxAttr.hasValue()) {\n dxAttr.setValue(textParent.getAttribute('dx').getValue('0'));\n }\n\n if (!dyAttr.hasValue()) {\n dyAttr.setValue(textParent.getAttribute('dy').getValue('0'));\n }\n }\n\n if (xAttr.hasValue()) {\n child.x = xAttr.getPixels('x') + textParent.getAnchorDelta(ctx, parent, i);\n\n if (textAnchor !== 'start') {\n var width = child.measureTextRecursive(ctx);\n child.x += -1 * (textAnchor === 'end' ? width : width / 2.0);\n }\n\n if (dxAttr.hasValue()) {\n child.x += dxAttr.getPixels('x');\n }\n } else {\n if (textAnchor !== 'start') {\n var _width = child.measureTextRecursive(ctx);\n\n textParent.x += -1 * (textAnchor === 'end' ? _width : _width / 2.0);\n }\n\n if (dxAttr.hasValue()) {\n textParent.x += dxAttr.getPixels('x');\n }\n\n child.x = textParent.x;\n }\n\n textParent.x = child.x + child.measureText(ctx);\n\n if (yAttr.hasValue()) {\n child.y = yAttr.getPixels('y');\n\n if (dyAttr.hasValue()) {\n child.y += dyAttr.getPixels('y');\n }\n } else {\n if (dyAttr.hasValue()) {\n textParent.y += dyAttr.getPixels('y');\n }\n\n child.y = textParent.y;\n }\n\n textParent.y = child.y;\n child.clearContext(ctx);\n ctx.restore();\n return child;\n }\n }, {\n key: \"getChildBoundingBox\",\n value: function getChildBoundingBox(ctx, textParent, parent, i) {\n var child = this.adjustChildCoordinates(ctx, textParent, parent, i);\n var boundingBox = child.getBoundingBox(ctx);\n\n if (!boundingBox) {\n return null;\n }\n\n child.children.forEach(function (_, i) {\n var childBoundingBox = textParent.getChildBoundingBox(ctx, textParent, child, i);\n boundingBox.addBoundingBox(childBoundingBox);\n });\n return boundingBox;\n }\n }, {\n key: \"renderChild\",\n value: function renderChild(ctx, textParent, parent, i) {\n var child = this.adjustChildCoordinates(ctx, textParent, parent, i);\n child.render(ctx);\n child.children.forEach(function (_, i) {\n textParent.renderChild(ctx, textParent, child, i);\n });\n }\n }, {\n key: \"measureTextRecursive\",\n value: function measureTextRecursive(ctx) {\n var width = this.children.reduce(function (width, child) {\n return width + child.measureTextRecursive(ctx);\n }, this.measureText(ctx));\n return width;\n }\n }, {\n key: \"measureText\",\n value: function measureText(ctx) {\n var measureCache = this.measureCache;\n\n if (~measureCache) {\n return measureCache;\n }\n\n var renderText = this.getText();\n var measure = this.measureTargetText(ctx, renderText);\n this.measureCache = measure;\n return measure;\n }\n }, {\n key: \"measureTargetText\",\n value: function measureTargetText(ctx, targetText) {\n if (!targetText.length) {\n return 0;\n }\n\n var parent = this.parent;\n var customFont = parent.getStyle('font-family').getDefinition();\n\n if (customFont) {\n var fontSize = this.getFontSize();\n var text = customFont.isRTL ? targetText.split('').reverse().join('') : targetText;\n var dx = toNumbers(parent.getAttribute('dx').getString());\n var len = text.length;\n var _measure = 0;\n\n for (var i = 0; i < len; i++) {\n var glyph = this.getGlyph(customFont, text, i);\n _measure += (glyph.horizAdvX || customFont.horizAdvX) * fontSize / customFont.fontFace.unitsPerEm;\n\n if (typeof dx[i] !== 'undefined' && !isNaN(dx[i])) {\n _measure += dx[i];\n }\n }\n\n return _measure;\n }\n\n if (!ctx.measureText) {\n return targetText.length * 10;\n }\n\n ctx.save();\n this.setContext(ctx, true);\n\n var _ctx$measureText = ctx.measureText(targetText),\n measure = _ctx$measureText.width;\n\n this.clearContext(ctx);\n ctx.restore();\n return measure;\n }\n }]);\n\n return TextElement;\n}(RenderedElement);\n\nfunction _createSuper$6(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$6()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$6() { 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\nvar TSpanElement = /*#__PURE__*/function (_TextElement) {\n _inherits(TSpanElement, _TextElement);\n\n var _super = _createSuper$6(TSpanElement);\n\n function TSpanElement(document, node, captureTextNodes) {\n var _this;\n\n _classCallCheck(this, TSpanElement);\n\n _this = _super.call(this, document, node, (this instanceof TSpanElement ? this.constructor : void 0) === TSpanElement ? true : captureTextNodes);\n _this.type = 'tspan'; // if this node has children, then they own the text\n\n _this.text = _this.children.length > 0 ? '' : _this.getTextFromNode();\n return _this;\n }\n\n _createClass(TSpanElement, [{\n key: \"getText\",\n value: function getText() {\n return this.text;\n }\n }]);\n\n return TSpanElement;\n}(TextElement);\n\nfunction _createSuper$7(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$7()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$7() { 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\nvar TextNode = /*#__PURE__*/function (_TSpanElement) {\n _inherits(TextNode, _TSpanElement);\n\n var _super = _createSuper$7(TextNode);\n\n function TextNode() {\n var _this;\n\n _classCallCheck(this, TextNode);\n\n _this = _super.apply(this, arguments);\n _this.type = 'textNode';\n return _this;\n }\n\n return TextNode;\n}(TSpanElement);\n\nfunction preparePath(path) {\n var d = path.replace(/,/gm, ' ') // get rid of all commas\n // As the end of a match can also be the start of the next match, we need to run this replace twice.\n .replace(/([MmZzLlHhVvCcSsQqTtAa])([^\\s])/gm, '$1 $2') // suffix commands with spaces\n .replace(/([MmZzLlHhVvCcSsQqTtAa])([^\\s])/gm, '$1 $2') // suffix commands with spaces\n .replace(/([^\\s])([MmZzLlHhVvCcSsQqTtAa])/gm, '$1 $2') // prefix commands with spaces\n .replace(/([0-9])([+\\-])/gm, '$1 $2') // separate digits on +- signs\n // Again, we need to run this twice to find all occurances\n .replace(/(\\.[0-9]*)(\\.)/gm, '$1 $2') // separate digits when they start with a comma\n .replace(/(\\.[0-9]*)(\\.)/gm, '$1 $2') // separate digits when they start with a comma\n .replace(/([Aa](?:\\s+(?:[0-9]*\\.)?[0-9]+){3})\\s+([01])\\s*([01])/gm, '$1 $2 $3 '); // shorthand elliptical arc path syntax\n\n return compressSpaces(d).trim();\n}\n\nvar PathParser = /*#__PURE__*/function () {\n function PathParser(path) {\n _classCallCheck(this, PathParser);\n\n this.control = null;\n this.start = null;\n this.current = null;\n this.command = '';\n this.tokens = [];\n this.i = -1;\n this.previousCommand = '';\n this.points = [];\n this.angles = [];\n this.tokens = preparePath(path).split(' ');\n }\n\n _createClass(PathParser, [{\n key: \"reset\",\n value: function reset() {\n this.i = -1;\n this.command = '';\n this.previousCommand = '';\n this.start = new Point(0, 0);\n this.control = new Point(0, 0);\n this.current = new Point(0, 0);\n this.points = [];\n this.angles = [];\n }\n }, {\n key: \"isEnd\",\n value: function isEnd() {\n var i = this.i,\n tokens = this.tokens;\n return i >= tokens.length - 1;\n }\n }, {\n key: \"isCommandOrEnd\",\n value: function isCommandOrEnd() {\n if (this.isEnd()) {\n return true;\n }\n\n var i = this.i,\n tokens = this.tokens;\n return /^[A-Za-z]$/.test(tokens[i + 1]);\n }\n }, {\n key: \"isRelativeCommand\",\n value: function isRelativeCommand() {\n switch (this.command) {\n case 'm':\n case 'l':\n case 'h':\n case 'v':\n case 'c':\n case 's':\n case 'q':\n case 't':\n case 'a':\n case 'z':\n return true;\n\n default:\n return false;\n }\n }\n }, {\n key: \"getToken\",\n value: function getToken() {\n this.i++;\n return this.tokens[this.i];\n }\n }, {\n key: \"getScalar\",\n value: function getScalar() {\n return parseFloat(this.getToken());\n }\n }, {\n key: \"nextCommand\",\n value: function nextCommand() {\n this.previousCommand = this.command;\n this.command = this.getToken();\n }\n }, {\n key: \"getPoint\",\n value: function getPoint() {\n var point = new Point(this.getScalar(), this.getScalar());\n return this.makeAbsolute(point);\n }\n }, {\n key: \"getAsControlPoint\",\n value: function getAsControlPoint() {\n var point = this.getPoint();\n this.control = point;\n return point;\n }\n }, {\n key: \"getAsCurrentPoint\",\n value: function getAsCurrentPoint() {\n var point = this.getPoint();\n this.current = point;\n return point;\n }\n }, {\n key: \"getReflectedControlPoint\",\n value: function getReflectedControlPoint() {\n var previousCommand = this.previousCommand.toLowerCase();\n\n if (previousCommand !== 'c' && previousCommand !== 's' && previousCommand !== 'q' && previousCommand !== 't') {\n return this.current;\n } // reflect point\n\n\n var _this$current = this.current,\n cx = _this$current.x,\n cy = _this$current.y,\n _this$control = this.control,\n ox = _this$control.x,\n oy = _this$control.y;\n var point = new Point(2 * cx - ox, 2 * cy - oy);\n return point;\n }\n }, {\n key: \"makeAbsolute\",\n value: function makeAbsolute(point) {\n if (this.isRelativeCommand()) {\n var _this$current2 = this.current,\n x = _this$current2.x,\n y = _this$current2.y;\n point.x += x;\n point.y += y;\n }\n\n return point;\n }\n }, {\n key: \"addMarker\",\n value: function addMarker(point, from, priorTo) {\n var points = this.points,\n angles = this.angles; // if the last angle isn't filled in because we didn't have this point yet ...\n\n if (priorTo && angles.length > 0 && !angles[angles.length - 1]) {\n angles[angles.length - 1] = points[points.length - 1].angleTo(priorTo);\n }\n\n this.addMarkerAngle(point, from ? from.angleTo(point) : null);\n }\n }, {\n key: \"addMarkerAngle\",\n value: function addMarkerAngle(point, angle) {\n this.points.push(point);\n this.angles.push(angle);\n }\n }, {\n key: \"getMarkerPoints\",\n value: function getMarkerPoints() {\n return this.points;\n }\n }, {\n key: \"getMarkerAngles\",\n value: function getMarkerAngles() {\n var angles = this.angles;\n var len = angles.length;\n\n for (var i = 0; i < len; i++) {\n if (!angles[i]) {\n for (var j = i + 1; j < len; j++) {\n if (angles[j]) {\n angles[i] = angles[j];\n break;\n }\n }\n }\n }\n\n return angles;\n }\n }]);\n\n return PathParser;\n}();\n\nfunction _createSuper$8(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$8()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$8() { 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\nvar PathElement = /*#__PURE__*/function (_RenderedElement) {\n _inherits(PathElement, _RenderedElement);\n\n var _super = _createSuper$8(PathElement);\n\n function PathElement(document, node, captureTextNodes) {\n var _this;\n\n _classCallCheck(this, PathElement);\n\n _this = _super.call(this, document, node, captureTextNodes);\n _this.type = 'path';\n _this.pathParser = null;\n _this.pathParser = new PathParser(_this.getAttribute('d').getString());\n return _this;\n }\n\n _createClass(PathElement, [{\n key: \"path\",\n value: function path(ctx) {\n var pathParser = this.pathParser;\n var boundingBox = new BoundingBox();\n pathParser.reset();\n\n if (ctx) {\n ctx.beginPath();\n }\n\n while (!pathParser.isEnd()) {\n pathParser.nextCommand();\n\n switch (pathParser.command) {\n case 'M':\n case 'm':\n this.pathM(ctx, boundingBox);\n break;\n\n case 'L':\n case 'l':\n this.pathL(ctx, boundingBox);\n break;\n\n case 'H':\n case 'h':\n this.pathH(ctx, boundingBox);\n break;\n\n case 'V':\n case 'v':\n this.pathV(ctx, boundingBox);\n break;\n\n case 'C':\n case 'c':\n this.pathC(ctx, boundingBox);\n break;\n\n case 'S':\n case 's':\n this.pathS(ctx, boundingBox);\n break;\n\n case 'Q':\n case 'q':\n this.pathQ(ctx, boundingBox);\n break;\n\n case 'T':\n case 't':\n this.pathT(ctx, boundingBox);\n break;\n\n case 'A':\n case 'a':\n this.pathA(ctx, boundingBox);\n break;\n\n case 'Z':\n case 'z':\n this.pathZ(ctx, boundingBox);\n break;\n }\n }\n\n return boundingBox;\n }\n }, {\n key: \"getBoundingBox\",\n value: function getBoundingBox(_) {\n return this.path();\n }\n }, {\n key: \"getMarkers\",\n value: function getMarkers() {\n var pathParser = this.pathParser;\n var points = pathParser.getMarkerPoints();\n var angles = pathParser.getMarkerAngles();\n var markers = points.map(function (point, i) {\n return [point, angles[i]];\n });\n return markers;\n }\n }, {\n key: \"renderChildren\",\n value: function renderChildren(ctx) {\n this.path(ctx);\n this.document.screen.mouse.checkPath(this, ctx);\n var fillRuleStyleProp = this.getStyle('fill-rule');\n\n if (ctx.fillStyle !== '') {\n if (fillRuleStyleProp.getString('inherit') !== 'inherit') {\n ctx.fill(fillRuleStyleProp.getString());\n } else {\n ctx.fill();\n }\n }\n\n if (ctx.strokeStyle !== '') {\n ctx.stroke();\n }\n\n var markers = this.getMarkers();\n\n if (markers) {\n var markersLastIndex = markers.length - 1;\n var markerStartStyleProp = this.getStyle('marker-start');\n var markerMidStyleProp = this.getStyle('marker-mid');\n var markerEndStyleProp = this.getStyle('marker-end');\n\n if (markerStartStyleProp.isUrlDefinition()) {\n var marker = markerStartStyleProp.getDefinition();\n\n var _markers$ = _slicedToArray(markers[0], 2),\n point = _markers$[0],\n angle = _markers$[1];\n\n marker.render(ctx, point, angle);\n }\n\n if (markerMidStyleProp.isUrlDefinition()) {\n var _marker = markerMidStyleProp.getDefinition();\n\n for (var i = 1; i < markersLastIndex; i++) {\n var _markers$i = _slicedToArray(markers[i], 2),\n _point = _markers$i[0],\n _angle = _markers$i[1];\n\n _marker.render(ctx, _point, _angle);\n }\n }\n\n if (markerEndStyleProp.isUrlDefinition()) {\n var _marker2 = markerEndStyleProp.getDefinition();\n\n var _markers$markersLastI = _slicedToArray(markers[markersLastIndex], 2),\n _point2 = _markers$markersLastI[0],\n _angle2 = _markers$markersLastI[1];\n\n _marker2.render(ctx, _point2, _angle2);\n }\n }\n }\n }, {\n key: \"pathM\",\n value: function pathM(ctx, boundingBox) {\n var pathParser = this.pathParser;\n var point = pathParser.getAsCurrentPoint();\n var x = point.x,\n y = point.y;\n pathParser.addMarker(point);\n boundingBox.addPoint(x, y);\n\n if (ctx) {\n ctx.moveTo(x, y);\n }\n\n pathParser.start = pathParser.current;\n\n while (!pathParser.isCommandOrEnd()) {\n var _point3 = pathParser.getAsCurrentPoint();\n\n var _x = _point3.x,\n _y = _point3.y;\n pathParser.addMarker(_point3, pathParser.start);\n boundingBox.addPoint(_x, _y);\n\n if (ctx) {\n ctx.lineTo(_x, _y);\n }\n }\n }\n }, {\n key: \"pathL\",\n value: function pathL(ctx, boundingBox) {\n var pathParser = this.pathParser;\n\n while (!pathParser.isCommandOrEnd()) {\n var current = pathParser.current;\n var point = pathParser.getAsCurrentPoint();\n var x = point.x,\n y = point.y;\n pathParser.addMarker(point, current);\n boundingBox.addPoint(x, y);\n\n if (ctx) {\n ctx.lineTo(x, y);\n }\n }\n }\n }, {\n key: \"pathH\",\n value: function pathH(ctx, boundingBox) {\n var pathParser = this.pathParser;\n\n while (!pathParser.isCommandOrEnd()) {\n var current = pathParser.current;\n var point = new Point((pathParser.isRelativeCommand() ? current.x : 0) + pathParser.getScalar(), current.y);\n pathParser.addMarker(point, current);\n pathParser.current = point;\n boundingBox.addPoint(point.x, point.y);\n\n if (ctx) {\n ctx.lineTo(point.x, point.y);\n }\n }\n }\n }, {\n key: \"pathV\",\n value: function pathV(ctx, boundingBox) {\n var pathParser = this.pathParser;\n\n while (!pathParser.isCommandOrEnd()) {\n var current = pathParser.current;\n var point = new Point(current.x, (pathParser.isRelativeCommand() ? current.y : 0) + pathParser.getScalar());\n pathParser.addMarker(point, current);\n pathParser.current = point;\n boundingBox.addPoint(point.x, point.y);\n\n if (ctx) {\n ctx.lineTo(point.x, point.y);\n }\n }\n }\n }, {\n key: \"pathC\",\n value: function pathC(ctx, boundingBox) {\n var pathParser = this.pathParser;\n\n while (!pathParser.isCommandOrEnd()) {\n var current = pathParser.current;\n var point = pathParser.getPoint();\n var controlPoint = pathParser.getAsControlPoint();\n var currentPoint = pathParser.getAsCurrentPoint();\n pathParser.addMarker(currentPoint, controlPoint, point);\n boundingBox.addBezierCurve(current.x, current.y, point.x, point.y, controlPoint.x, controlPoint.y, currentPoint.x, currentPoint.y);\n\n if (ctx) {\n ctx.bezierCurveTo(point.x, point.y, controlPoint.x, controlPoint.y, currentPoint.x, currentPoint.y);\n }\n }\n }\n }, {\n key: \"pathS\",\n value: function pathS(ctx, boundingBox) {\n var pathParser = this.pathParser;\n\n while (!pathParser.isCommandOrEnd()) {\n var current = pathParser.current;\n var point = pathParser.getReflectedControlPoint();\n var controlPoint = pathParser.getAsControlPoint();\n var currentPoint = pathParser.getAsCurrentPoint();\n pathParser.addMarker(currentPoint, controlPoint, point);\n boundingBox.addBezierCurve(current.x, current.y, point.x, point.y, controlPoint.x, controlPoint.y, currentPoint.x, currentPoint.y);\n\n if (ctx) {\n ctx.bezierCurveTo(point.x, point.y, controlPoint.x, controlPoint.y, currentPoint.x, currentPoint.y);\n }\n }\n }\n }, {\n key: \"pathQ\",\n value: function pathQ(ctx, boundingBox) {\n var pathParser = this.pathParser;\n\n while (!pathParser.isCommandOrEnd()) {\n var current = pathParser.current;\n var controlPoint = pathParser.getAsControlPoint();\n var currentPoint = pathParser.getAsCurrentPoint();\n pathParser.addMarker(currentPoint, controlPoint, controlPoint);\n boundingBox.addQuadraticCurve(current.x, current.y, controlPoint.x, controlPoint.y, currentPoint.x, currentPoint.y);\n\n if (ctx) {\n ctx.quadraticCurveTo(controlPoint.x, controlPoint.y, currentPoint.x, currentPoint.y);\n }\n }\n }\n }, {\n key: \"pathT\",\n value: function pathT(ctx, boundingBox) {\n var pathParser = this.pathParser;\n\n while (!pathParser.isCommandOrEnd()) {\n var current = pathParser.current;\n var controlPoint = pathParser.getReflectedControlPoint();\n pathParser.control = controlPoint;\n var currentPoint = pathParser.getAsCurrentPoint();\n pathParser.addMarker(currentPoint, controlPoint, controlPoint);\n boundingBox.addQuadraticCurve(current.x, current.y, controlPoint.x, controlPoint.y, currentPoint.x, currentPoint.y);\n\n if (ctx) {\n ctx.quadraticCurveTo(controlPoint.x, controlPoint.y, currentPoint.x, currentPoint.y);\n }\n }\n }\n }, {\n key: \"pathA\",\n value: function pathA(ctx, boundingBox) {\n var pathParser = this.pathParser;\n\n while (!pathParser.isCommandOrEnd()) {\n var current = pathParser.current;\n var rx = pathParser.getScalar();\n var ry = pathParser.getScalar();\n var xAxisRotation = pathParser.getScalar() * (Math.PI / 180.0);\n var largeArcFlag = pathParser.getScalar();\n var sweepFlag = pathParser.getScalar();\n var currentPoint = pathParser.getAsCurrentPoint(); // Conversion from endpoint to center parameterization\n // http://www.w3.org/TR/SVG11/implnote.html#ArcImplementationNotes\n // x1', y1'\n\n var currp = new Point(Math.cos(xAxisRotation) * (current.x - currentPoint.x) / 2.0 + Math.sin(xAxisRotation) * (current.y - currentPoint.y) / 2.0, -Math.sin(xAxisRotation) * (current.x - currentPoint.x) / 2.0 + Math.cos(xAxisRotation) * (current.y - currentPoint.y) / 2.0); // adjust radii\n\n var l = Math.pow(currp.x, 2) / Math.pow(rx, 2) + Math.pow(currp.y, 2) / Math.pow(ry, 2);\n\n if (l > 1) {\n rx *= Math.sqrt(l);\n ry *= Math.sqrt(l);\n } // cx', cy'\n\n\n var s = (largeArcFlag === sweepFlag ? -1 : 1) * Math.sqrt((Math.pow(rx, 2) * Math.pow(ry, 2) - Math.pow(rx, 2) * Math.pow(currp.y, 2) - Math.pow(ry, 2) * Math.pow(currp.x, 2)) / (Math.pow(rx, 2) * Math.pow(currp.y, 2) + Math.pow(ry, 2) * Math.pow(currp.x, 2)));\n\n if (isNaN(s)) {\n s = 0;\n }\n\n var cpp = new Point(s * rx * currp.y / ry, s * -ry * currp.x / rx); // cx, cy\n\n var centp = new Point((current.x + currentPoint.x) / 2.0 + Math.cos(xAxisRotation) * cpp.x - Math.sin(xAxisRotation) * cpp.y, (current.y + currentPoint.y) / 2.0 + Math.sin(xAxisRotation) * cpp.x + Math.cos(xAxisRotation) * cpp.y); // initial angle\n\n var a1 = vectorsAngle([1, 0], [(currp.x - cpp.x) / rx, (currp.y - cpp.y) / ry]); // angle delta\n\n var u = [(currp.x - cpp.x) / rx, (currp.y - cpp.y) / ry];\n var v = [(-currp.x - cpp.x) / rx, (-currp.y - cpp.y) / ry];\n var ad = vectorsAngle(u, v);\n\n if (vectorsRatio(u, v) <= -1) {\n ad = Math.PI;\n }\n\n if (vectorsRatio(u, v) >= 1) {\n ad = 0;\n } // for markers\n\n\n var dir = 1 - sweepFlag ? 1.0 : -1.0;\n var ah = a1 + dir * (ad / 2.0);\n var halfWay = new Point(centp.x + rx * Math.cos(ah), centp.y + ry * Math.sin(ah));\n pathParser.addMarkerAngle(halfWay, ah - dir * Math.PI / 2);\n pathParser.addMarkerAngle(currentPoint, ah - dir * Math.PI);\n boundingBox.addPoint(currentPoint.x, currentPoint.y); // TODO: this is too naive, make it better\n\n if (ctx && !isNaN(a1) && !isNaN(ad)) {\n var r = rx > ry ? rx : ry;\n var sx = rx > ry ? 1 : rx / ry;\n var sy = rx > ry ? ry / rx : 1;\n ctx.translate(centp.x, centp.y);\n ctx.rotate(xAxisRotation);\n ctx.scale(sx, sy);\n ctx.arc(0, 0, r, a1, a1 + ad, Boolean(1 - sweepFlag));\n ctx.scale(1 / sx, 1 / sy);\n ctx.rotate(-xAxisRotation);\n ctx.translate(-centp.x, -centp.y);\n }\n }\n }\n }, {\n key: \"pathZ\",\n value: function pathZ(ctx, boundingBox) {\n var pathParser = this.pathParser;\n\n if (ctx) {\n // only close path if it is not a straight line\n if (boundingBox.x1 !== boundingBox.x2 && boundingBox.y1 !== boundingBox.y2) {\n ctx.closePath();\n }\n }\n\n pathParser.current = pathParser.start;\n }\n }]);\n\n return PathElement;\n}(RenderedElement);\n\nfunction _createSuper$9(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$9()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$9() { 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\nvar SVGElement = /*#__PURE__*/function (_RenderedElement) {\n _inherits(SVGElement, _RenderedElement);\n\n var _super = _createSuper$9(SVGElement);\n\n function SVGElement() {\n var _this;\n\n _classCallCheck(this, SVGElement);\n\n _this = _super.apply(this, arguments);\n _this.type = 'svg';\n _this.root = false;\n return _this;\n }\n\n _createClass(SVGElement, [{\n key: \"clearContext\",\n value: function clearContext(ctx) {\n _get(_getPrototypeOf(SVGElement.prototype), \"clearContext\", this).call(this, ctx);\n\n this.document.screen.viewPort.removeCurrent();\n }\n }, {\n key: \"setContext\",\n value: function setContext(ctx) {\n var document = this.document;\n var screen = document.screen,\n window = document.window;\n var canvas = ctx.canvas;\n screen.setDefaults(ctx);\n\n if (canvas.style && typeof ctx.font !== 'undefined' && window && typeof window.getComputedStyle !== 'undefined') {\n ctx.font = window.getComputedStyle(canvas).getPropertyValue('font');\n var fontSizeProp = new Property(document, 'fontSize', Font.parse(ctx.font).fontSize);\n\n if (fontSizeProp.hasValue()) {\n document.rootEmSize = fontSizeProp.getPixels('y');\n document.emSize = document.rootEmSize;\n }\n }\n\n _get(_getPrototypeOf(SVGElement.prototype), \"setContext\", this).call(this, ctx); // create new view port\n\n\n if (!this.getAttribute('x').hasValue()) {\n this.getAttribute('x', true).setValue(0);\n }\n\n if (!this.getAttribute('y').hasValue()) {\n this.getAttribute('y', true).setValue(0);\n }\n\n ctx.translate(this.getAttribute('x').getPixels('x'), this.getAttribute('y').getPixels('y'));\n var _screen$viewPort = screen.viewPort,\n width = _screen$viewPort.width,\n height = _screen$viewPort.height;\n\n if (!this.getStyle('width').hasValue()) {\n this.getStyle('width', true).setValue('100%');\n }\n\n if (!this.getStyle('height').hasValue()) {\n this.getStyle('height', true).setValue('100%');\n }\n\n if (!this.getStyle('color').hasValue()) {\n this.getStyle('color', true).setValue('black');\n }\n\n var refXAttr = this.getAttribute('refX');\n var refYAttr = this.getAttribute('refY');\n var viewBoxAttr = this.getAttribute('viewBox');\n var viewBox = viewBoxAttr.hasValue() ? toNumbers(viewBoxAttr.getString()) : null;\n var clip = !this.root && this.getAttribute('overflow').getValue('hidden') !== 'visible';\n var minX = 0;\n var minY = 0;\n var clipX = 0;\n var clipY = 0;\n\n if (viewBox) {\n minX = viewBox[0];\n minY = viewBox[1];\n }\n\n if (!this.root) {\n width = this.getStyle('width').getPixels('x');\n height = this.getStyle('height').getPixels('y');\n\n if (this.type === 'marker') {\n clipX = minX;\n clipY = minY;\n minX = 0;\n minY = 0;\n }\n }\n\n screen.viewPort.setCurrent(width, height);\n\n if (viewBox) {\n width = viewBox[2];\n height = viewBox[3];\n }\n\n document.setViewBox({\n ctx: ctx,\n aspectRatio: this.getAttribute('preserveAspectRatio').getString(),\n width: screen.viewPort.width,\n desiredWidth: width,\n height: screen.viewPort.height,\n desiredHeight: height,\n minX: minX,\n minY: minY,\n refX: refXAttr.getValue(),\n refY: refYAttr.getValue(),\n clip: clip,\n clipX: clipX,\n clipY: clipY\n });\n\n if (viewBox) {\n screen.viewPort.removeCurrent();\n screen.viewPort.setCurrent(width, height);\n }\n }\n /**\r\n * Resize SVG to fit in given size.\r\n * @param width\r\n * @param height\r\n * @param preserveAspectRatio\r\n */\n\n }, {\n key: \"resize\",\n value: function resize(width) {\n var height = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : width;\n var preserveAspectRatio = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n var widthAttr = this.getAttribute('width', true);\n var heightAttr = this.getAttribute('height', true);\n var viewBoxAttr = this.getAttribute('viewBox');\n var styleAttr = this.getAttribute('style');\n var originWidth = widthAttr.getNumber(0);\n var originHeight = heightAttr.getNumber(0);\n\n if (preserveAspectRatio) {\n if (typeof preserveAspectRatio === 'string') {\n this.getAttribute('preserveAspectRatio', true).setValue(preserveAspectRatio);\n } else {\n var preserveAspectRatioAttr = this.getAttribute('preserveAspectRatio');\n\n if (preserveAspectRatioAttr.hasValue()) {\n preserveAspectRatioAttr.setValue(preserveAspectRatioAttr.getString().replace(/^\\s*(\\S.*\\S)\\s*$/, '$1'));\n }\n }\n }\n\n widthAttr.setValue(width);\n heightAttr.setValue(height);\n\n if (!viewBoxAttr.hasValue()) {\n viewBoxAttr.setValue(\"0 0 \".concat(originWidth || width, \" \").concat(originHeight || height));\n }\n\n if (styleAttr.hasValue()) {\n var widthStyle = this.getStyle('width');\n var heightStyle = this.getStyle('height');\n\n if (widthStyle.hasValue()) {\n widthStyle.setValue(\"\".concat(width, \"px\"));\n }\n\n if (heightStyle.hasValue()) {\n heightStyle.setValue(\"\".concat(height, \"px\"));\n }\n }\n }\n }]);\n\n return SVGElement;\n}(RenderedElement);\n\nfunction _createSuper$a(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$a()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$a() { 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\nvar RectElement = /*#__PURE__*/function (_PathElement) {\n _inherits(RectElement, _PathElement);\n\n var _super = _createSuper$a(RectElement);\n\n function RectElement() {\n var _this;\n\n _classCallCheck(this, RectElement);\n\n _this = _super.apply(this, arguments);\n _this.type = 'rect';\n return _this;\n }\n\n _createClass(RectElement, [{\n key: \"path\",\n value: function path(ctx) {\n var x = this.getAttribute('x').getPixels('x');\n var y = this.getAttribute('y').getPixels('y');\n var width = this.getStyle('width').getPixels('x');\n var height = this.getStyle('height').getPixels('y');\n var rxAttr = this.getAttribute('rx');\n var ryAttr = this.getAttribute('ry');\n var rx = rxAttr.getPixels('x');\n var ry = ryAttr.getPixels('y');\n\n if (rxAttr.hasValue() && !ryAttr.hasValue()) {\n ry = rx;\n }\n\n if (ryAttr.hasValue() && !rxAttr.hasValue()) {\n rx = ry;\n }\n\n rx = Math.min(rx, width / 2.0);\n ry = Math.min(ry, height / 2.0);\n\n if (ctx) {\n var KAPPA = 4 * ((Math.sqrt(2) - 1) / 3);\n ctx.beginPath(); // always start the path so we don't fill prior paths\n\n if (height > 0 && width > 0) {\n ctx.moveTo(x + rx, y);\n ctx.lineTo(x + width - rx, y);\n ctx.bezierCurveTo(x + width - rx + KAPPA * rx, y, x + width, y + ry - KAPPA * ry, x + width, y + ry);\n ctx.lineTo(x + width, y + height - ry);\n ctx.bezierCurveTo(x + width, y + height - ry + KAPPA * ry, x + width - rx + KAPPA * rx, y + height, x + width - rx, y + height);\n ctx.lineTo(x + rx, y + height);\n ctx.bezierCurveTo(x + rx - KAPPA * rx, y + height, x, y + height - ry + KAPPA * ry, x, y + height - ry);\n ctx.lineTo(x, y + ry);\n ctx.bezierCurveTo(x, y + ry - KAPPA * ry, x + rx - KAPPA * rx, y, x + rx, y);\n ctx.closePath();\n }\n }\n\n return new BoundingBox(x, y, x + width, y + height);\n }\n }, {\n key: \"getMarkers\",\n value: function getMarkers() {\n return null;\n }\n }]);\n\n return RectElement;\n}(PathElement);\n\nfunction _createSuper$b(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$b()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$b() { 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\nvar CircleElement = /*#__PURE__*/function (_PathElement) {\n _inherits(CircleElement, _PathElement);\n\n var _super = _createSuper$b(CircleElement);\n\n function CircleElement() {\n var _this;\n\n _classCallCheck(this, CircleElement);\n\n _this = _super.apply(this, arguments);\n _this.type = 'circle';\n return _this;\n }\n\n _createClass(CircleElement, [{\n key: \"path\",\n value: function path(ctx) {\n var cx = this.getAttribute('cx').getPixels('x');\n var cy = this.getAttribute('cy').getPixels('y');\n var r = this.getAttribute('r').getPixels();\n\n if (ctx && r > 0) {\n ctx.beginPath();\n ctx.arc(cx, cy, r, 0, Math.PI * 2, false);\n ctx.closePath();\n }\n\n return new BoundingBox(cx - r, cy - r, cx + r, cy + r);\n }\n }, {\n key: \"getMarkers\",\n value: function getMarkers() {\n return null;\n }\n }]);\n\n return CircleElement;\n}(PathElement);\n\nfunction _createSuper$c(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$c()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$c() { 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\nvar EllipseElement = /*#__PURE__*/function (_PathElement) {\n _inherits(EllipseElement, _PathElement);\n\n var _super = _createSuper$c(EllipseElement);\n\n function EllipseElement() {\n var _this;\n\n _classCallCheck(this, EllipseElement);\n\n _this = _super.apply(this, arguments);\n _this.type = 'ellipse';\n return _this;\n }\n\n _createClass(EllipseElement, [{\n key: \"path\",\n value: function path(ctx) {\n var KAPPA = 4 * ((Math.sqrt(2) - 1) / 3);\n var rx = this.getAttribute('rx').getPixels('x');\n var ry = this.getAttribute('ry').getPixels('y');\n var cx = this.getAttribute('cx').getPixels('x');\n var cy = this.getAttribute('cy').getPixels('y');\n\n if (ctx && rx > 0 && ry > 0) {\n ctx.beginPath();\n ctx.moveTo(cx + rx, cy);\n ctx.bezierCurveTo(cx + rx, cy + KAPPA * ry, cx + KAPPA * rx, cy + ry, cx, cy + ry);\n ctx.bezierCurveTo(cx - KAPPA * rx, cy + ry, cx - rx, cy + KAPPA * ry, cx - rx, cy);\n ctx.bezierCurveTo(cx - rx, cy - KAPPA * ry, cx - KAPPA * rx, cy - ry, cx, cy - ry);\n ctx.bezierCurveTo(cx + KAPPA * rx, cy - ry, cx + rx, cy - KAPPA * ry, cx + rx, cy);\n ctx.closePath();\n }\n\n return new BoundingBox(cx - rx, cy - ry, cx + rx, cy + ry);\n }\n }, {\n key: \"getMarkers\",\n value: function getMarkers() {\n return null;\n }\n }]);\n\n return EllipseElement;\n}(PathElement);\n\nfunction _createSuper$d(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$d()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$d() { 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\nvar LineElement = /*#__PURE__*/function (_PathElement) {\n _inherits(LineElement, _PathElement);\n\n var _super = _createSuper$d(LineElement);\n\n function LineElement() {\n var _this;\n\n _classCallCheck(this, LineElement);\n\n _this = _super.apply(this, arguments);\n _this.type = 'line';\n return _this;\n }\n\n _createClass(LineElement, [{\n key: \"getPoints\",\n value: function getPoints() {\n return [new Point(this.getAttribute('x1').getPixels('x'), this.getAttribute('y1').getPixels('y')), new Point(this.getAttribute('x2').getPixels('x'), this.getAttribute('y2').getPixels('y'))];\n }\n }, {\n key: \"path\",\n value: function path(ctx) {\n var _this$getPoints = this.getPoints(),\n _this$getPoints2 = _slicedToArray(_this$getPoints, 2),\n _this$getPoints2$ = _this$getPoints2[0],\n x0 = _this$getPoints2$.x,\n y0 = _this$getPoints2$.y,\n _this$getPoints2$2 = _this$getPoints2[1],\n x1 = _this$getPoints2$2.x,\n y1 = _this$getPoints2$2.y;\n\n if (ctx) {\n ctx.beginPath();\n ctx.moveTo(x0, y0);\n ctx.lineTo(x1, y1);\n }\n\n return new BoundingBox(x0, y0, x1, y1);\n }\n }, {\n key: \"getMarkers\",\n value: function getMarkers() {\n var _this$getPoints3 = this.getPoints(),\n _this$getPoints4 = _slicedToArray(_this$getPoints3, 2),\n p0 = _this$getPoints4[0],\n p1 = _this$getPoints4[1];\n\n var a = p0.angleTo(p1);\n return [[p0, a], [p1, a]];\n }\n }]);\n\n return LineElement;\n}(PathElement);\n\nfunction _createSuper$e(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$e()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$e() { 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\nvar PolylineElement = /*#__PURE__*/function (_PathElement) {\n _inherits(PolylineElement, _PathElement);\n\n var _super = _createSuper$e(PolylineElement);\n\n function PolylineElement(document, node, captureTextNodes) {\n var _this;\n\n _classCallCheck(this, PolylineElement);\n\n _this = _super.call(this, document, node, captureTextNodes);\n _this.type = 'polyline';\n _this.points = [];\n _this.points = Point.parsePath(_this.getAttribute('points').getString());\n return _this;\n }\n\n _createClass(PolylineElement, [{\n key: \"path\",\n value: function path(ctx) {\n var points = this.points;\n\n var _points = _slicedToArray(points, 1),\n _points$ = _points[0],\n x0 = _points$.x,\n y0 = _points$.y;\n\n var boundingBox = new BoundingBox(x0, y0);\n\n if (ctx) {\n ctx.beginPath();\n ctx.moveTo(x0, y0);\n }\n\n points.forEach(function (_ref) {\n var x = _ref.x,\n y = _ref.y;\n boundingBox.addPoint(x, y);\n\n if (ctx) {\n ctx.lineTo(x, y);\n }\n });\n return boundingBox;\n }\n }, {\n key: \"getMarkers\",\n value: function getMarkers() {\n var points = this.points;\n var lastIndex = points.length - 1;\n var markers = [];\n points.forEach(function (point, i) {\n if (i === lastIndex) {\n return;\n }\n\n markers.push([point, point.angleTo(points[i + 1])]);\n });\n\n if (markers.length > 0) {\n markers.push([points[points.length - 1], markers[markers.length - 1][1]]);\n }\n\n return markers;\n }\n }]);\n\n return PolylineElement;\n}(PathElement);\n\nfunction _createSuper$f(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$f()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$f() { 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\nvar PolygonElement = /*#__PURE__*/function (_PolylineElement) {\n _inherits(PolygonElement, _PolylineElement);\n\n var _super = _createSuper$f(PolygonElement);\n\n function PolygonElement() {\n var _this;\n\n _classCallCheck(this, PolygonElement);\n\n _this = _super.apply(this, arguments);\n _this.type = 'polygon';\n return _this;\n }\n\n _createClass(PolygonElement, [{\n key: \"path\",\n value: function path(ctx) {\n var boundingBox = _get(_getPrototypeOf(PolygonElement.prototype), \"path\", this).call(this, ctx);\n\n var _this$points = _slicedToArray(this.points, 1),\n _this$points$ = _this$points[0],\n x = _this$points$.x,\n y = _this$points$.y;\n\n if (ctx) {\n ctx.lineTo(x, y);\n ctx.closePath();\n }\n\n return boundingBox;\n }\n }]);\n\n return PolygonElement;\n}(PolylineElement);\n\nfunction _createSuper$g(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$g()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$g() { 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\nvar PatternElement = /*#__PURE__*/function (_Element) {\n _inherits(PatternElement, _Element);\n\n var _super = _createSuper$g(PatternElement);\n\n function PatternElement() {\n var _this;\n\n _classCallCheck(this, PatternElement);\n\n _this = _super.apply(this, arguments);\n _this.type = 'pattern';\n return _this;\n }\n\n _createClass(PatternElement, [{\n key: \"createPattern\",\n value: function createPattern(ctx, _, parentOpacityProp) {\n var width = this.getStyle('width').getPixels('x', true);\n var height = this.getStyle('height').getPixels('y', true); // render me using a temporary svg element\n\n var patternSvg = new SVGElement(this.document, null);\n patternSvg.attributes.viewBox = new Property(this.document, 'viewBox', this.getAttribute('viewBox').getValue());\n patternSvg.attributes.width = new Property(this.document, 'width', \"\".concat(width, \"px\"));\n patternSvg.attributes.height = new Property(this.document, 'height', \"\".concat(height, \"px\"));\n patternSvg.attributes.transform = new Property(this.document, 'transform', this.getAttribute('patternTransform').getValue());\n patternSvg.children = this.children;\n var patternCanvas = this.document.createCanvas(width, height);\n var patternCtx = patternCanvas.getContext('2d');\n var xAttr = this.getAttribute('x');\n var yAttr = this.getAttribute('y');\n\n if (xAttr.hasValue() && yAttr.hasValue()) {\n patternCtx.translate(xAttr.getPixels('x', true), yAttr.getPixels('y', true));\n }\n\n if (parentOpacityProp.hasValue()) {\n this.styles['fill-opacity'] = parentOpacityProp;\n } else {\n Reflect.deleteProperty(this.styles, 'fill-opacity');\n } // render 3x3 grid so when we transform there's no white space on edges\n\n\n for (var x = -1; x <= 1; x++) {\n for (var y = -1; y <= 1; y++) {\n patternCtx.save();\n patternSvg.attributes.x = new Property(this.document, 'x', x * patternCanvas.width);\n patternSvg.attributes.y = new Property(this.document, 'y', y * patternCanvas.height);\n patternSvg.render(patternCtx);\n patternCtx.restore();\n }\n }\n\n var pattern = ctx.createPattern(patternCanvas, 'repeat');\n return pattern;\n }\n }]);\n\n return PatternElement;\n}(Element);\n\nfunction _createSuper$h(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$h()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$h() { 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\nvar MarkerElement = /*#__PURE__*/function (_Element) {\n _inherits(MarkerElement, _Element);\n\n var _super = _createSuper$h(MarkerElement);\n\n function MarkerElement() {\n var _this;\n\n _classCallCheck(this, MarkerElement);\n\n _this = _super.apply(this, arguments);\n _this.type = 'marker';\n return _this;\n }\n\n _createClass(MarkerElement, [{\n key: \"render\",\n value: function render(ctx, point, angle) {\n if (!point) {\n return;\n }\n\n var x = point.x,\n y = point.y;\n var orient = this.getAttribute('orient').getValue('auto');\n var markerUnits = this.getAttribute('markerUnits').getValue('strokeWidth');\n ctx.translate(x, y);\n\n if (orient === 'auto') {\n ctx.rotate(angle);\n }\n\n if (markerUnits === 'strokeWidth') {\n ctx.scale(ctx.lineWidth, ctx.lineWidth);\n }\n\n ctx.save(); // render me using a temporary svg element\n\n var markerSvg = new SVGElement(this.document, null);\n markerSvg.type = this.type;\n markerSvg.attributes.viewBox = new Property(this.document, 'viewBox', this.getAttribute('viewBox').getValue());\n markerSvg.attributes.refX = new Property(this.document, 'refX', this.getAttribute('refX').getValue());\n markerSvg.attributes.refY = new Property(this.document, 'refY', this.getAttribute('refY').getValue());\n markerSvg.attributes.width = new Property(this.document, 'width', this.getAttribute('markerWidth').getValue());\n markerSvg.attributes.height = new Property(this.document, 'height', this.getAttribute('markerHeight').getValue());\n markerSvg.attributes.overflow = new Property(this.document, 'overflow', this.getAttribute('overflow').getValue());\n markerSvg.attributes.fill = new Property(this.document, 'fill', this.getAttribute('fill').getColor('black'));\n markerSvg.attributes.stroke = new Property(this.document, 'stroke', this.getAttribute('stroke').getValue('none'));\n markerSvg.children = this.children;\n markerSvg.render(ctx);\n ctx.restore();\n\n if (markerUnits === 'strokeWidth') {\n ctx.scale(1 / ctx.lineWidth, 1 / ctx.lineWidth);\n }\n\n if (orient === 'auto') {\n ctx.rotate(-angle);\n }\n\n ctx.translate(-x, -y);\n }\n }]);\n\n return MarkerElement;\n}(Element);\n\nfunction _createSuper$i(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$i()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$i() { 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\nvar DefsElement = /*#__PURE__*/function (_Element) {\n _inherits(DefsElement, _Element);\n\n var _super = _createSuper$i(DefsElement);\n\n function DefsElement() {\n var _this;\n\n _classCallCheck(this, DefsElement);\n\n _this = _super.apply(this, arguments);\n _this.type = 'defs';\n return _this;\n }\n\n _createClass(DefsElement, [{\n key: \"render\",\n value: function render() {// NOOP\n }\n }]);\n\n return DefsElement;\n}(Element);\n\nfunction _createSuper$j(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$j()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$j() { 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\nvar GElement = /*#__PURE__*/function (_RenderedElement) {\n _inherits(GElement, _RenderedElement);\n\n var _super = _createSuper$j(GElement);\n\n function GElement() {\n var _this;\n\n _classCallCheck(this, GElement);\n\n _this = _super.apply(this, arguments);\n _this.type = 'g';\n return _this;\n }\n\n _createClass(GElement, [{\n key: \"getBoundingBox\",\n value: function getBoundingBox(ctx) {\n var boundingBox = new BoundingBox();\n this.children.forEach(function (child) {\n boundingBox.addBoundingBox(child.getBoundingBox(ctx));\n });\n return boundingBox;\n }\n }]);\n\n return GElement;\n}(RenderedElement);\n\nfunction _createSuper$k(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$k()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$k() { 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\nvar GradientElement = /*#__PURE__*/function (_Element) {\n _inherits(GradientElement, _Element);\n\n var _super = _createSuper$k(GradientElement);\n\n function GradientElement(document, node, captureTextNodes) {\n var _this;\n\n _classCallCheck(this, GradientElement);\n\n _this = _super.call(this, document, node, captureTextNodes);\n _this.attributesToInherit = ['gradientUnits'];\n _this.stops = [];\n\n var _assertThisInitialize = _assertThisInitialized(_this),\n stops = _assertThisInitialize.stops,\n children = _assertThisInitialize.children;\n\n children.forEach(function (child) {\n if (child.type === 'stop') {\n stops.push(child);\n }\n });\n return _this;\n }\n\n _createClass(GradientElement, [{\n key: \"getGradientUnits\",\n value: function getGradientUnits() {\n return this.getAttribute('gradientUnits').getString('objectBoundingBox');\n }\n }, {\n key: \"createGradient\",\n value: function createGradient(ctx, element, parentOpacityProp) {\n var _this2 = this;\n\n // tslint:disable-next-line: no-this-assignment\n var stopsContainer = this;\n\n if (this.getHrefAttribute().hasValue()) {\n stopsContainer = this.getHrefAttribute().getDefinition();\n this.inheritStopContainer(stopsContainer);\n }\n\n var _stopsContainer = stopsContainer,\n stops = _stopsContainer.stops;\n var gradient = this.getGradient(ctx, element);\n\n if (!gradient) {\n return this.addParentOpacity(parentOpacityProp, stops[stops.length - 1].color);\n }\n\n stops.forEach(function (stop) {\n gradient.addColorStop(stop.offset, _this2.addParentOpacity(parentOpacityProp, stop.color));\n });\n\n if (this.getAttribute('gradientTransform').hasValue()) {\n // render as transformed pattern on temporary canvas\n var document = this.document;\n var _document$screen = document.screen,\n MAX_VIRTUAL_PIXELS = _document$screen.MAX_VIRTUAL_PIXELS,\n viewPort = _document$screen.viewPort;\n\n var _viewPort$viewPorts = _slicedToArray(viewPort.viewPorts, 1),\n rootView = _viewPort$viewPorts[0];\n\n var rect = new RectElement(document, null);\n rect.attributes.x = new Property(document, 'x', -MAX_VIRTUAL_PIXELS / 3.0);\n rect.attributes.y = new Property(document, 'y', -MAX_VIRTUAL_PIXELS / 3.0);\n rect.attributes.width = new Property(document, 'width', MAX_VIRTUAL_PIXELS);\n rect.attributes.height = new Property(document, 'height', MAX_VIRTUAL_PIXELS);\n var group = new GElement(document, null);\n group.attributes.transform = new Property(document, 'transform', this.getAttribute('gradientTransform').getValue());\n group.children = [rect];\n var patternSvg = new SVGElement(document, null);\n patternSvg.attributes.x = new Property(document, 'x', 0);\n patternSvg.attributes.y = new Property(document, 'y', 0);\n patternSvg.attributes.width = new Property(document, 'width', rootView.width);\n patternSvg.attributes.height = new Property(document, 'height', rootView.height);\n patternSvg.children = [group];\n var patternCanvas = document.createCanvas(rootView.width, rootView.height);\n var patternCtx = patternCanvas.getContext('2d');\n patternCtx.fillStyle = gradient;\n patternSvg.render(patternCtx);\n return patternCtx.createPattern(patternCanvas, 'no-repeat');\n }\n\n return gradient;\n }\n }, {\n key: \"inheritStopContainer\",\n value: function inheritStopContainer(stopsContainer) {\n var _this3 = this;\n\n this.attributesToInherit.forEach(function (attributeToInherit) {\n if (!_this3.getAttribute(attributeToInherit).hasValue() && stopsContainer.getAttribute(attributeToInherit).hasValue()) {\n _this3.getAttribute(attributeToInherit, true).setValue(stopsContainer.getAttribute(attributeToInherit).getValue());\n }\n });\n }\n }, {\n key: \"addParentOpacity\",\n value: function addParentOpacity(parentOpacityProp, color) {\n if (parentOpacityProp.hasValue()) {\n var colorProp = new Property(this.document, 'color', color);\n return colorProp.addOpacity(parentOpacityProp).getColor();\n }\n\n return color;\n }\n }]);\n\n return GradientElement;\n}(Element);\n\nfunction _createSuper$l(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$l()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$l() { 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\nvar LinearGradientElement = /*#__PURE__*/function (_GradientElement) {\n _inherits(LinearGradientElement, _GradientElement);\n\n var _super = _createSuper$l(LinearGradientElement);\n\n function LinearGradientElement(document, node, captureTextNodes) {\n var _this;\n\n _classCallCheck(this, LinearGradientElement);\n\n _this = _super.call(this, document, node, captureTextNodes);\n _this.type = 'linearGradient';\n\n _this.attributesToInherit.push('x1', 'y1', 'x2', 'y2');\n\n return _this;\n }\n\n _createClass(LinearGradientElement, [{\n key: \"getGradient\",\n value: function getGradient(ctx, element) {\n var isBoundingBoxUnits = this.getGradientUnits() === 'objectBoundingBox';\n var boundingBox = isBoundingBoxUnits ? element.getBoundingBox(ctx) : null;\n\n if (isBoundingBoxUnits && !boundingBox) {\n return null;\n }\n\n if (!this.getAttribute('x1').hasValue() && !this.getAttribute('y1').hasValue() && !this.getAttribute('x2').hasValue() && !this.getAttribute('y2').hasValue()) {\n this.getAttribute('x1', true).setValue(0);\n this.getAttribute('y1', true).setValue(0);\n this.getAttribute('x2', true).setValue(1);\n this.getAttribute('y2', true).setValue(0);\n }\n\n var x1 = isBoundingBoxUnits ? boundingBox.x + boundingBox.width * this.getAttribute('x1').getNumber() : this.getAttribute('x1').getPixels('x');\n var y1 = isBoundingBoxUnits ? boundingBox.y + boundingBox.height * this.getAttribute('y1').getNumber() : this.getAttribute('y1').getPixels('y');\n var x2 = isBoundingBoxUnits ? boundingBox.x + boundingBox.width * this.getAttribute('x2').getNumber() : this.getAttribute('x2').getPixels('x');\n var y2 = isBoundingBoxUnits ? boundingBox.y + boundingBox.height * this.getAttribute('y2').getNumber() : this.getAttribute('y2').getPixels('y');\n\n if (x1 === x2 && y1 === y2) {\n return null;\n }\n\n return ctx.createLinearGradient(x1, y1, x2, y2);\n }\n }]);\n\n return LinearGradientElement;\n}(GradientElement);\n\nfunction _createSuper$m(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$m()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$m() { 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\nvar RadialGradientElement = /*#__PURE__*/function (_GradientElement) {\n _inherits(RadialGradientElement, _GradientElement);\n\n var _super = _createSuper$m(RadialGradientElement);\n\n function RadialGradientElement(document, node, captureTextNodes) {\n var _this;\n\n _classCallCheck(this, RadialGradientElement);\n\n _this = _super.call(this, document, node, captureTextNodes);\n _this.type = 'radialGradient';\n\n _this.attributesToInherit.push('cx', 'cy', 'r', 'fx', 'fy', 'fr');\n\n return _this;\n }\n\n _createClass(RadialGradientElement, [{\n key: \"getGradient\",\n value: function getGradient(ctx, element) {\n var isBoundingBoxUnits = this.getGradientUnits() === 'objectBoundingBox';\n var boundingBox = element.getBoundingBox(ctx);\n\n if (isBoundingBoxUnits && !boundingBox) {\n return null;\n }\n\n if (!this.getAttribute('cx').hasValue()) {\n this.getAttribute('cx', true).setValue('50%');\n }\n\n if (!this.getAttribute('cy').hasValue()) {\n this.getAttribute('cy', true).setValue('50%');\n }\n\n if (!this.getAttribute('r').hasValue()) {\n this.getAttribute('r', true).setValue('50%');\n }\n\n var cx = isBoundingBoxUnits ? boundingBox.x + boundingBox.width * this.getAttribute('cx').getNumber() : this.getAttribute('cx').getPixels('x');\n var cy = isBoundingBoxUnits ? boundingBox.y + boundingBox.height * this.getAttribute('cy').getNumber() : this.getAttribute('cy').getPixels('y');\n var fx = cx;\n var fy = cy;\n\n if (this.getAttribute('fx').hasValue()) {\n fx = isBoundingBoxUnits ? boundingBox.x + boundingBox.width * this.getAttribute('fx').getNumber() : this.getAttribute('fx').getPixels('x');\n }\n\n if (this.getAttribute('fy').hasValue()) {\n fy = isBoundingBoxUnits ? boundingBox.y + boundingBox.height * this.getAttribute('fy').getNumber() : this.getAttribute('fy').getPixels('y');\n }\n\n var r = isBoundingBoxUnits ? (boundingBox.width + boundingBox.height) / 2.0 * this.getAttribute('r').getNumber() : this.getAttribute('r').getPixels();\n var fr = this.getAttribute('fr').getPixels();\n return ctx.createRadialGradient(fx, fy, fr, cx, cy, r);\n }\n }]);\n\n return RadialGradientElement;\n}(GradientElement);\n\nfunction _createSuper$n(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$n()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$n() { 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\nvar StopElement = /*#__PURE__*/function (_Element) {\n _inherits(StopElement, _Element);\n\n var _super = _createSuper$n(StopElement);\n\n function StopElement(document, node, captureTextNodes) {\n var _this;\n\n _classCallCheck(this, StopElement);\n\n _this = _super.call(this, document, node, captureTextNodes);\n _this.type = 'stop';\n var offset = Math.max(0, Math.min(1, _this.getAttribute('offset').getNumber()));\n\n var stopOpacity = _this.getStyle('stop-opacity');\n\n var stopColor = _this.getStyle('stop-color', true);\n\n if (stopColor.getString() === '') {\n stopColor.setValue('#000');\n }\n\n if (stopOpacity.hasValue()) {\n stopColor = stopColor.addOpacity(stopOpacity);\n }\n\n _this.offset = offset;\n _this.color = stopColor.getColor();\n return _this;\n }\n\n return StopElement;\n}(Element);\n\nfunction _createSuper$o(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$o()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$o() { 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\nvar AnimateElement = /*#__PURE__*/function (_Element) {\n _inherits(AnimateElement, _Element);\n\n var _super = _createSuper$o(AnimateElement);\n\n function AnimateElement(document, node, captureTextNodes) {\n var _this;\n\n _classCallCheck(this, AnimateElement);\n\n _this = _super.call(this, document, node, captureTextNodes);\n _this.type = 'animate';\n _this.duration = 0;\n _this.initialValue = null;\n _this.initialUnits = '';\n _this.removed = false;\n _this.frozen = false;\n document.screen.animations.push(_assertThisInitialized(_this));\n _this.begin = _this.getAttribute('begin').getMilliseconds();\n _this.maxDuration = _this.begin + _this.getAttribute('dur').getMilliseconds();\n _this.from = _this.getAttribute('from');\n _this.to = _this.getAttribute('to');\n _this.values = _this.getAttribute('values');\n\n if (_this.values.hasValue()) {\n _this.values.setValue(_this.values.getString().split(';'));\n }\n\n return _this;\n }\n\n _createClass(AnimateElement, [{\n key: \"getProperty\",\n value: function getProperty() {\n var attributeType = this.getAttribute('attributeType').getString();\n var attributeName = this.getAttribute('attributeName').getString();\n\n if (attributeType === 'CSS') {\n return this.parent.getStyle(attributeName, true);\n }\n\n return this.parent.getAttribute(attributeName, true);\n }\n }, {\n key: \"calcValue\",\n value: function calcValue() {\n var initialUnits = this.initialUnits;\n\n var _this$getProgress = this.getProgress(),\n progress = _this$getProgress.progress,\n from = _this$getProgress.from,\n to = _this$getProgress.to; // tween value linearly\n\n\n var newValue = from.getNumber() + (to.getNumber() - from.getNumber()) * progress;\n\n if (initialUnits === '%') {\n newValue *= 100.0; // numValue() returns 0-1 whereas properties are 0-100\n }\n\n return \"\".concat(newValue).concat(initialUnits);\n }\n }, {\n key: \"update\",\n value: function update(delta) {\n var parent = this.parent;\n var prop = this.getProperty(); // set initial value\n\n if (!this.initialValue) {\n this.initialValue = prop.getString();\n this.initialUnits = prop.getUnits();\n } // if we're past the end time\n\n\n if (this.duration > this.maxDuration) {\n var fill = this.getAttribute('fill').getString('remove'); // loop for indefinitely repeating animations\n\n if (this.getAttribute('repeatCount').getString() === 'indefinite' || this.getAttribute('repeatDur').getString() === 'indefinite') {\n this.duration = 0;\n } else if (fill === 'freeze' && !this.frozen) {\n this.frozen = true;\n parent.animationFrozen = true;\n parent.animationFrozenValue = prop.getString();\n } else if (fill === 'remove' && !this.removed) {\n this.removed = true;\n prop.setValue(parent.animationFrozen ? parent.animationFrozenValue : this.initialValue);\n return true;\n }\n\n return false;\n }\n\n this.duration += delta; // if we're past the begin time\n\n var updated = false;\n\n if (this.begin < this.duration) {\n var newValue = this.calcValue(); // tween\n\n var typeAttr = this.getAttribute('type');\n\n if (typeAttr.hasValue()) {\n // for transform, etc.\n var type = typeAttr.getString();\n newValue = \"\".concat(type, \"(\").concat(newValue, \")\");\n }\n\n prop.setValue(newValue);\n updated = true;\n }\n\n return updated;\n }\n }, {\n key: \"getProgress\",\n value: function getProgress() {\n var document = this.document,\n values = this.values;\n var result = {\n progress: (this.duration - this.begin) / (this.maxDuration - this.begin)\n };\n\n if (values.hasValue()) {\n var p = result.progress * (values.getValue().length - 1);\n var lb = Math.floor(p);\n var ub = Math.ceil(p);\n result.from = new Property(document, 'from', parseFloat(values.getValue()[lb]));\n result.to = new Property(document, 'to', parseFloat(values.getValue()[ub]));\n result.progress = (p - lb) / (ub - lb);\n } else {\n result.from = this.from;\n result.to = this.to;\n }\n\n return result;\n }\n }]);\n\n return AnimateElement;\n}(Element);\n\nfunction _createSuper$p(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$p()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$p() { 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\nvar AnimateColorElement = /*#__PURE__*/function (_AnimateElement) {\n _inherits(AnimateColorElement, _AnimateElement);\n\n var _super = _createSuper$p(AnimateColorElement);\n\n function AnimateColorElement() {\n var _this;\n\n _classCallCheck(this, AnimateColorElement);\n\n _this = _super.apply(this, arguments);\n _this.type = 'animateColor';\n return _this;\n }\n\n _createClass(AnimateColorElement, [{\n key: \"calcValue\",\n value: function calcValue() {\n var _this$getProgress = this.getProgress(),\n progress = _this$getProgress.progress,\n from = _this$getProgress.from,\n to = _this$getProgress.to;\n\n var colorFrom = new RGBColor(from.getColor());\n var colorTo = new RGBColor(to.getColor());\n\n if (colorFrom.ok && colorTo.ok) {\n // tween color linearly\n var r = colorFrom.r + (colorTo.r - colorFrom.r) * progress;\n var g = colorFrom.g + (colorTo.g - colorFrom.g) * progress;\n var b = colorFrom.b + (colorTo.b - colorFrom.b) * progress; // ? alpha\n\n return \"rgb(\".concat(parseInt(r, 10), \", \").concat(parseInt(g, 10), \", \").concat(parseInt(b, 10), \")\");\n }\n\n return this.getAttribute('from').getColor();\n }\n }]);\n\n return AnimateColorElement;\n}(AnimateElement);\n\nfunction _createSuper$q(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$q()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$q() { 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\nvar AnimateTransformElement = /*#__PURE__*/function (_AnimateElement) {\n _inherits(AnimateTransformElement, _AnimateElement);\n\n var _super = _createSuper$q(AnimateTransformElement);\n\n function AnimateTransformElement() {\n var _this;\n\n _classCallCheck(this, AnimateTransformElement);\n\n _this = _super.apply(this, arguments);\n _this.type = 'animateTransform';\n return _this;\n }\n\n _createClass(AnimateTransformElement, [{\n key: \"calcValue\",\n value: function calcValue() {\n var _this$getProgress = this.getProgress(),\n progress = _this$getProgress.progress,\n from = _this$getProgress.from,\n to = _this$getProgress.to; // tween value linearly\n\n\n var transformFrom = toNumbers(from.getString());\n var transformTo = toNumbers(to.getString());\n var newValue = transformFrom.map(function (from, i) {\n var to = transformTo[i];\n return from + (to - from) * progress;\n }).join(' ');\n return newValue;\n }\n }]);\n\n return AnimateTransformElement;\n}(AnimateElement);\n\nfunction _createForOfIteratorHelper(o) { if (typeof Symbol === \"undefined\" || o[Symbol.iterator] == null) { if (Array.isArray(o) || (o = _unsupportedIterableToArray(o))) { var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var it, normalCompletion = true, didErr = false, err; return { s: function s() { it = o[Symbol.iterator](); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(n); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _createSuper$r(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$r()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$r() { 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\nvar FontElement = /*#__PURE__*/function (_Element) {\n _inherits(FontElement, _Element);\n\n var _super = _createSuper$r(FontElement);\n\n function FontElement(document, node, captureTextNodes) {\n var _this;\n\n _classCallCheck(this, FontElement);\n\n _this = _super.call(this, document, node, captureTextNodes);\n _this.type = 'font';\n _this.glyphs = {};\n _this.horizAdvX = _this.getAttribute('horiz-adv-x').getNumber();\n var definitions = document.definitions;\n\n var _assertThisInitialize = _assertThisInitialized(_this),\n children = _assertThisInitialize.children;\n\n var _iterator = _createForOfIteratorHelper(children),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var child = _step.value;\n\n switch (child.type) {\n case 'font-face':\n {\n _this.fontFace = child;\n var fontFamilyStyle = child.getStyle('font-family');\n\n if (fontFamilyStyle.hasValue()) {\n definitions[fontFamilyStyle.getString()] = _assertThisInitialized(_this);\n }\n\n break;\n }\n\n case 'missing-glyph':\n _this.missingGlyph = child;\n break;\n\n case 'glyph':\n {\n var glyph = child;\n\n if (glyph.arabicForm) {\n _this.isRTL = true;\n _this.isArabic = true;\n\n if (typeof _this.glyphs[glyph.unicode] === 'undefined') {\n _this.glyphs[glyph.unicode] = {};\n }\n\n _this.glyphs[glyph.unicode][glyph.arabicForm] = glyph;\n } else {\n _this.glyphs[glyph.unicode] = glyph;\n }\n\n break;\n }\n\n default:\n }\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n\n return _this;\n }\n\n _createClass(FontElement, [{\n key: \"render\",\n value: function render() {// NO RENDER\n }\n }]);\n\n return FontElement;\n}(Element);\n\nfunction _createSuper$s(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$s()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$s() { 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\nvar FontFaceElement = /*#__PURE__*/function (_Element) {\n _inherits(FontFaceElement, _Element);\n\n var _super = _createSuper$s(FontFaceElement);\n\n function FontFaceElement(document, node, captureTextNodes) {\n var _this;\n\n _classCallCheck(this, FontFaceElement);\n\n _this = _super.call(this, document, node, captureTextNodes);\n _this.type = 'font-face';\n _this.ascent = _this.getAttribute('ascent').getNumber();\n _this.descent = _this.getAttribute('descent').getNumber();\n _this.unitsPerEm = _this.getAttribute('units-per-em').getNumber();\n return _this;\n }\n\n return FontFaceElement;\n}(Element);\n\nfunction _createSuper$t(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$t()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$t() { 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\nvar MissingGlyphElement = /*#__PURE__*/function (_PathElement) {\n _inherits(MissingGlyphElement, _PathElement);\n\n var _super = _createSuper$t(MissingGlyphElement);\n\n function MissingGlyphElement() {\n var _this;\n\n _classCallCheck(this, MissingGlyphElement);\n\n _this = _super.apply(this, arguments);\n _this.type = 'missing-glyph';\n _this.horizAdvX = 0;\n return _this;\n }\n\n return MissingGlyphElement;\n}(PathElement);\n\nfunction _createSuper$u(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$u()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$u() { 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\nvar GlyphElement = /*#__PURE__*/function (_PathElement) {\n _inherits(GlyphElement, _PathElement);\n\n var _super = _createSuper$u(GlyphElement);\n\n function GlyphElement(document, node, captureTextNodes) {\n var _this;\n\n _classCallCheck(this, GlyphElement);\n\n _this = _super.call(this, document, node, captureTextNodes);\n _this.type = 'glyph';\n _this.horizAdvX = _this.getAttribute('horiz-adv-x').getNumber();\n _this.unicode = _this.getAttribute('unicode').getString();\n _this.arabicForm = _this.getAttribute('arabic-form').getString();\n return _this;\n }\n\n return GlyphElement;\n}(PathElement);\n\nfunction _createSuper$v(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$v()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$v() { 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\nvar TRefElement = /*#__PURE__*/function (_TextElement) {\n _inherits(TRefElement, _TextElement);\n\n var _super = _createSuper$v(TRefElement);\n\n function TRefElement() {\n var _this;\n\n _classCallCheck(this, TRefElement);\n\n _this = _super.apply(this, arguments);\n _this.type = 'tref';\n return _this;\n }\n\n _createClass(TRefElement, [{\n key: \"getText\",\n value: function getText() {\n var element = this.getHrefAttribute().getDefinition();\n\n if (element) {\n var firstChild = element.children[0];\n\n if (firstChild) {\n return firstChild.getText();\n }\n }\n\n return '';\n }\n }]);\n\n return TRefElement;\n}(TextElement);\n\nfunction _createSuper$w(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$w()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$w() { 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\nvar AElement = /*#__PURE__*/function (_TextElement) {\n _inherits(AElement, _TextElement);\n\n var _super = _createSuper$w(AElement);\n\n function AElement(document, node, captureTextNodes) {\n var _this;\n\n _classCallCheck(this, AElement);\n\n _this = _super.call(this, document, node, captureTextNodes);\n _this.type = 'a';\n var childNodes = node.childNodes;\n var firstChild = childNodes[0];\n var hasText = childNodes.length > 0 && Array.from(childNodes).every(function (node) {\n return node.nodeType === 3;\n });\n _this.hasText = hasText;\n _this.text = hasText ? _this.getTextFromNode(firstChild) : '';\n return _this;\n }\n\n _createClass(AElement, [{\n key: \"getText\",\n value: function getText() {\n return this.text;\n }\n }, {\n key: \"renderChildren\",\n value: function renderChildren(ctx) {\n if (this.hasText) {\n // render as text element\n _get(_getPrototypeOf(AElement.prototype), \"renderChildren\", this).call(this, ctx);\n\n var document = this.document,\n x = this.x,\n y = this.y;\n var mouse = document.screen.mouse;\n var fontSize = new Property(document, 'fontSize', Font.parse(document.ctx.font).fontSize); // Do not calc bounding box if mouse is not working.\n\n if (mouse.isWorking()) {\n mouse.checkBoundingBox(this, new BoundingBox(x, y - fontSize.getPixels('y'), x + this.measureText(ctx), y));\n }\n } else if (this.children.length > 0) {\n // render as temporary group\n var g = new GElement(this.document, null);\n g.children = this.children;\n g.parent = this;\n g.render(ctx);\n }\n }\n }, {\n key: \"onClick\",\n value: function onClick() {\n var window = this.document.window;\n\n if (window) {\n window.open(this.getHrefAttribute().getString());\n }\n }\n }, {\n key: \"onMouseMove\",\n value: function onMouseMove() {\n var ctx = this.document.ctx;\n ctx.canvas.style.cursor = 'pointer';\n }\n }]);\n\n return AElement;\n}(TextElement);\n\nfunction _createForOfIteratorHelper$1(o) { if (typeof Symbol === \"undefined\" || o[Symbol.iterator] == null) { if (Array.isArray(o) || (o = _unsupportedIterableToArray$1(o))) { var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var it, normalCompletion = true, didErr = false, err; return { s: function s() { it = o[Symbol.iterator](); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }\n\nfunction _unsupportedIterableToArray$1(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray$1(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(n); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray$1(o, minLen); }\n\nfunction _arrayLikeToArray$1(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _createSuper$x(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$x()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$x() { 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\nvar TextPathElement = /*#__PURE__*/function (_TextElement) {\n _inherits(TextPathElement, _TextElement);\n\n var _super = _createSuper$x(TextPathElement);\n\n function TextPathElement(document, node, captureTextNodes) {\n var _this;\n\n _classCallCheck(this, TextPathElement);\n\n _this = _super.call(this, document, node, captureTextNodes);\n _this.type = 'textPath';\n _this.textWidth = 0;\n _this.textHeight = 0;\n _this.pathLength = -1;\n _this.glyphInfo = null;\n _this.letterSpacingCache = [];\n _this.measuresCache = new Map([['', 0]]);\n\n var pathElement = _this.getHrefAttribute().getDefinition();\n\n _this.text = _this.getTextFromNode();\n _this.dataArray = _this.parsePathData(pathElement);\n return _this;\n }\n\n _createClass(TextPathElement, [{\n key: \"getText\",\n value: function getText() {\n return this.text;\n }\n }, {\n key: \"path\",\n value: function path(ctx) {\n var dataArray = this.dataArray;\n\n if (ctx) {\n ctx.beginPath();\n }\n\n dataArray.forEach(function (_ref) {\n var command = _ref.command,\n points = _ref.points;\n\n switch (command) {\n case 'L':\n if (ctx) {\n ctx.lineTo(points[0], points[1]);\n }\n\n break;\n\n case 'M':\n if (ctx) {\n ctx.moveTo(points[0], points[1]);\n }\n\n break;\n\n case 'C':\n if (ctx) {\n ctx.bezierCurveTo(points[0], points[1], points[2], points[3], points[4], points[5]);\n }\n\n break;\n\n case 'Q':\n if (ctx) {\n ctx.quadraticCurveTo(points[0], points[1], points[2], points[3]);\n }\n\n break;\n\n case 'A':\n {\n var cx = points[0];\n var cy = points[1];\n var rx = points[2];\n var ry = points[3];\n var theta = points[4];\n var dTheta = points[5];\n var psi = points[6];\n var fs = points[7];\n var r = rx > ry ? rx : ry;\n var scaleX = rx > ry ? 1 : rx / ry;\n var scaleY = rx > ry ? ry / rx : 1;\n\n if (ctx) {\n ctx.translate(cx, cy);\n ctx.rotate(psi);\n ctx.scale(scaleX, scaleY);\n ctx.arc(0, 0, r, theta, theta + dTheta, Boolean(1 - fs));\n ctx.scale(1 / scaleX, 1 / scaleY);\n ctx.rotate(-psi);\n ctx.translate(-cx, -cy);\n }\n\n break;\n }\n\n case 'z':\n if (ctx) {\n ctx.closePath();\n }\n\n break;\n }\n });\n }\n }, {\n key: \"renderChildren\",\n value: function renderChildren(ctx) {\n this.setTextData(ctx);\n ctx.save();\n var textDecoration = this.parent.getStyle('text-decoration').getString();\n var fontSize = this.getFontSize();\n var glyphInfo = this.glyphInfo;\n var fill = ctx.fillStyle;\n\n if (textDecoration === 'underline') {\n ctx.beginPath();\n }\n\n glyphInfo.forEach(function (glyph, i) {\n var p0 = glyph.p0,\n p1 = glyph.p1,\n partialText = glyph.text;\n ctx.save();\n ctx.translate(p0.x, p0.y);\n ctx.rotate(glyphInfo[i].rotation);\n\n if (ctx.fillStyle) {\n ctx.fillText(partialText, 0, 0);\n }\n\n if (ctx.strokeStyle) {\n ctx.strokeText(partialText, 0, 0);\n }\n\n ctx.restore();\n\n if (textDecoration === 'underline') {\n if (i === 0) {\n ctx.moveTo(p0.x, p0.y + fontSize / 8);\n }\n\n ctx.lineTo(p1.x, p1.y + fontSize / 5);\n } //// To assist with debugging visually, uncomment following\n //\n // ctx.beginPath();\n // if (i % 2)\n // \tctx.strokeStyle = 'red';\n // else\n // \tctx.strokeStyle = 'green';\n // ctx.moveTo(p0.x, p0.y);\n // ctx.lineTo(p1.x, p1.y);\n // ctx.stroke();\n // ctx.closePath();\n\n });\n\n if (textDecoration === 'underline') {\n ctx.lineWidth = fontSize / 20;\n ctx.strokeStyle = fill;\n ctx.stroke();\n ctx.closePath();\n }\n\n ctx.restore();\n }\n }, {\n key: \"getLetterSpacingAt\",\n value: function getLetterSpacingAt() {\n var idx = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;\n return this.letterSpacingCache[idx] || 0;\n }\n }, {\n key: \"findSegmentToFitChar\",\n value: function findSegmentToFitChar(ctx, anchor, textFullWidth, fullPathWidth, spacesNumber, inputOffset, c, charI) {\n var offset = inputOffset;\n var glyphWidth = this.measureText(ctx, c);\n\n if (c === ' ' && anchor === 'justify' && textFullWidth < fullPathWidth) {\n glyphWidth += (fullPathWidth - textFullWidth) / spacesNumber;\n }\n\n if (charI > -1) {\n offset += this.getLetterSpacingAt(charI);\n }\n\n var splineStep = this.textHeight / 20;\n var segment = {\n p0: this.getEquidistantPointOnPath(offset, splineStep),\n p1: this.getEquidistantPointOnPath(offset + glyphWidth, splineStep)\n };\n offset += glyphWidth;\n return {\n offset: offset,\n segment: segment\n };\n }\n }, {\n key: \"measureText\",\n value: function measureText(ctx, text) {\n var measuresCache = this.measuresCache;\n var targetText = text || this.getText();\n\n if (measuresCache.has(targetText)) {\n return measuresCache.get(targetText);\n }\n\n var measure = this.measureTargetText(ctx, targetText);\n measuresCache.set(targetText, measure);\n return measure;\n } // This method supposes what all custom fonts already loaded.\n // If some font will be loaded after this method call, will not be rendered correctly.\n // You need to call this method manually to update glyphs cache.\n\n }, {\n key: \"setTextData\",\n value: function setTextData(ctx) {\n var _this2 = this;\n\n if (this.glyphInfo) {\n return;\n }\n\n var renderText = this.getText();\n var chars = renderText.split('');\n var spacesNumber = renderText.split(' ').length - 1;\n var dx = toNumbers(this.parent.getAttribute('dx').getString('0'));\n var anchor = this.parent.getStyle('text-anchor').getString('start');\n var thisSpacing = this.getStyle('letter-spacing');\n var parentSpacing = this.parent.getStyle('letter-spacing');\n var letterSpacing = 0;\n\n if (!thisSpacing.hasValue() || thisSpacing.getValue() === 'inherit') {\n letterSpacing = parentSpacing.getPixels();\n } else if (thisSpacing.hasValue()) {\n if (thisSpacing.getValue() !== 'initial' && thisSpacing.getValue() !== 'unset') {\n letterSpacing = thisSpacing.getPixels();\n }\n } // fill letter-spacing cache\n\n\n var letterSpacingCache = [];\n var textLen = renderText.length;\n this.letterSpacingCache = letterSpacingCache;\n\n for (var i = 0; i < textLen; i++) {\n letterSpacingCache.push(typeof dx[i] !== 'undefined' ? dx[i] : letterSpacing);\n }\n\n var dxSum = letterSpacingCache.reduce(function (acc, cur) {\n return acc + cur || 0;\n }, 0);\n this.textWidth = this.measureText(ctx);\n this.textHeight = this.getFontSize();\n var textFullWidth = Math.max(this.textWidth + dxSum, 0);\n this.glyphInfo = [];\n var fullPathWidth = this.getPathLength();\n var startOffset = this.getStyle('startOffset').getNumber(0) * fullPathWidth;\n var offset = 0;\n\n if (anchor === 'middle' || anchor === 'center') {\n offset = -textFullWidth / 2;\n }\n\n if (anchor === 'end' || anchor === 'right') {\n offset = -textFullWidth;\n }\n\n offset += startOffset;\n chars.forEach(function (char, i) {\n // Find such segment what distance between p0 and p1 is approx. width of glyph\n var _this2$findSegmentToF = _this2.findSegmentToFitChar(ctx, anchor, textFullWidth, fullPathWidth, spacesNumber, offset, char, i),\n nextOffset = _this2$findSegmentToF.offset,\n segment = _this2$findSegmentToF.segment;\n\n offset = nextOffset;\n\n if (!segment.p0 || !segment.p1) {\n return;\n }\n\n var width = _this2.getLineLength(segment.p0.x, segment.p0.y, segment.p1.x, segment.p1.y); // Note: Since glyphs are rendered one at a time, any kerning pair data built into the font will not be used.\n // Can foresee having a rough pair table built in that the developer can override as needed.\n // Or use \"dx\" attribute of the node as a naive replacement\n\n\n var kern = 0; // placeholder for future implementation\n\n var midpoint = _this2.getPointOnLine(kern + width / 2.0, segment.p0.x, segment.p0.y, segment.p1.x, segment.p1.y);\n\n var rotation = Math.atan2(segment.p1.y - segment.p0.y, segment.p1.x - segment.p0.x);\n\n _this2.glyphInfo.push({\n transposeX: midpoint.x,\n transposeY: midpoint.y,\n text: chars[i],\n p0: segment.p0,\n p1: segment.p1,\n rotation: rotation\n });\n });\n }\n }, {\n key: \"parsePathData\",\n value: function parsePathData(path) {\n this.pathLength = -1; // reset path length\n\n if (!path) {\n return [];\n }\n\n var pathCommands = [];\n var pathParser = path.pathParser;\n pathParser.reset(); // convert l, H, h, V, and v to L\n\n while (!pathParser.isEnd()) {\n var current = pathParser.current;\n var startX = current ? current.x : 0;\n var startY = current ? current.y : 0;\n var cmd = '';\n var points = [];\n pathParser.nextCommand();\n var upperCommand = pathParser.command.toUpperCase();\n\n switch (pathParser.command) {\n case 'M':\n case 'm':\n cmd = this.pathM(pathParser, points);\n break;\n\n case 'L':\n case 'l':\n cmd = this.pathL(pathParser, points);\n break;\n\n case 'H':\n case 'h':\n cmd = this.pathH(pathParser, points);\n break;\n\n case 'V':\n case 'v':\n cmd = this.pathV(pathParser, points);\n break;\n\n case 'C':\n case 'c':\n this.pathC(pathParser, points);\n break;\n\n case 'S':\n case 's':\n cmd = this.pathS(pathParser, points);\n break;\n\n case 'Q':\n case 'q':\n this.pathQ(pathParser, points);\n break;\n\n case 'T':\n case 't':\n cmd = this.pathT(pathParser, points);\n break;\n\n case 'A':\n case 'a':\n points = this.pathA(pathParser);\n break;\n\n case 'Z':\n case 'z':\n pathParser.current = pathParser.start;\n break;\n }\n\n if (upperCommand !== 'Z') {\n pathCommands.push({\n command: cmd || upperCommand,\n points: points,\n start: {\n x: startX,\n y: startY\n },\n pathLength: this.calcLength(startX, startY, cmd || upperCommand, points)\n });\n } else {\n pathCommands.push({\n command: 'z',\n points: [],\n pathLength: 0\n });\n }\n }\n\n return pathCommands;\n }\n }, {\n key: \"pathM\",\n value: function pathM(pathParser, points) {\n var p = pathParser.getAsCurrentPoint(); // pathParser.addMarker(p);\n\n points.push(p.x, p.y);\n pathParser.start = pathParser.current;\n\n while (!pathParser.isCommandOrEnd()) {\n var _p = pathParser.getAsCurrentPoint();\n\n points.push(_p.x, _p.y);\n return 'L';\n }\n }\n }, {\n key: \"pathL\",\n value: function pathL(pathParser, points) {\n while (!pathParser.isCommandOrEnd()) {\n var p = pathParser.getAsCurrentPoint();\n points.push(p.x, p.y);\n }\n\n return 'L';\n }\n }, {\n key: \"pathH\",\n value: function pathH(pathParser, points) {\n while (!pathParser.isCommandOrEnd()) {\n var current = pathParser.current;\n var point = new Point((pathParser.isRelativeCommand() ? current.x : 0) + pathParser.getScalar(), current.y);\n points.push(point.x, point.y);\n pathParser.current = point;\n }\n\n return 'L';\n }\n }, {\n key: \"pathV\",\n value: function pathV(pathParser, points) {\n while (!pathParser.isCommandOrEnd()) {\n var current = pathParser.current;\n var point = new Point(current.x, (pathParser.isRelativeCommand() ? current.y : 0) + pathParser.getScalar());\n points.push(point.x, point.y);\n pathParser.current = point;\n }\n\n return 'L';\n }\n }, {\n key: \"pathC\",\n value: function pathC(pathParser, points) {\n while (!pathParser.isCommandOrEnd()) {\n var point = pathParser.getPoint();\n var controlPoint = pathParser.getAsControlPoint();\n var currentPoint = pathParser.getAsCurrentPoint();\n points.push(point.x, point.y, controlPoint.x, controlPoint.y, currentPoint.x, currentPoint.y);\n }\n }\n }, {\n key: \"pathS\",\n value: function pathS(pathParser, points) {\n while (!pathParser.isCommandOrEnd()) {\n var point = pathParser.getReflectedControlPoint();\n var controlPoint = pathParser.getAsControlPoint();\n var currentPoint = pathParser.getAsCurrentPoint();\n points.push(point.x, point.y, controlPoint.x, controlPoint.y, currentPoint.x, currentPoint.y);\n }\n\n return 'C';\n }\n }, {\n key: \"pathQ\",\n value: function pathQ(pathParser, points) {\n while (!pathParser.isCommandOrEnd()) {\n var controlPoint = pathParser.getAsControlPoint();\n var currentPoint = pathParser.getAsCurrentPoint();\n points.push(controlPoint.x, controlPoint.y, currentPoint.x, currentPoint.y);\n }\n }\n }, {\n key: \"pathT\",\n value: function pathT(pathParser, points) {\n while (!pathParser.isCommandOrEnd()) {\n var controlPoint = pathParser.getReflectedControlPoint();\n pathParser.control = controlPoint;\n var currentPoint = pathParser.getAsCurrentPoint();\n points.push(controlPoint.x, controlPoint.y, currentPoint.x, currentPoint.y);\n }\n\n return 'Q';\n }\n }, {\n key: \"pathA\",\n value: function pathA(pathParser) {\n while (!pathParser.isCommandOrEnd()) {\n var current = pathParser.current; // x1, y1\n\n var rx = pathParser.getScalar();\n var ry = pathParser.getScalar();\n var xAxisRotation = pathParser.getScalar() * (Math.PI / 180.0); // Ο†\n\n var largeArcFlag = pathParser.getScalar(); // fA\n\n var sweepFlag = pathParser.getScalar(); // fS\n\n var currentPoint = pathParser.getAsCurrentPoint(); // x2, y2\n // Conversion from endpoint to center parameterization\n // http://www.w3.org/TR/SVG11/implnote.html#ArcImplementationNotes\n // x1', y1'\n\n var currp = new Point(Math.cos(xAxisRotation) * (current.x - currentPoint.x) / 2.0 + Math.sin(xAxisRotation) * (current.y - currentPoint.y) / 2.0, -Math.sin(xAxisRotation) * (current.x - currentPoint.x) / 2.0 + Math.cos(xAxisRotation) * (current.y - currentPoint.y) / 2.0); // adjust radii\n\n var l = Math.pow(currp.x, 2) / Math.pow(rx, 2) + Math.pow(currp.y, 2) / Math.pow(ry, 2);\n\n if (l > 1) {\n rx *= Math.sqrt(l);\n ry *= Math.sqrt(l);\n } // cx', cy'\n\n\n var s = (largeArcFlag === sweepFlag ? -1 : 1) * Math.sqrt((Math.pow(rx, 2) * Math.pow(ry, 2) - Math.pow(rx, 2) * Math.pow(currp.y, 2) - Math.pow(ry, 2) * Math.pow(currp.x, 2)) / (Math.pow(rx, 2) * Math.pow(currp.y, 2) + Math.pow(ry, 2) * Math.pow(currp.x, 2)));\n\n if (isNaN(s)) {\n s = 0;\n }\n\n var cpp = new Point(s * rx * currp.y / ry, s * -ry * currp.x / rx); // cx, cy\n\n var centp = new Point((current.x + currentPoint.x) / 2.0 + Math.cos(xAxisRotation) * cpp.x - Math.sin(xAxisRotation) * cpp.y, (current.y + currentPoint.y) / 2.0 + Math.sin(xAxisRotation) * cpp.x + Math.cos(xAxisRotation) * cpp.y); // initial angle\n\n var a1 = vectorsAngle([1, 0], [(currp.x - cpp.x) / rx, (currp.y - cpp.y) / ry]); // ΞΈ1\n // angle delta\n\n var u = [(currp.x - cpp.x) / rx, (currp.y - cpp.y) / ry];\n var v = [(-currp.x - cpp.x) / rx, (-currp.y - cpp.y) / ry];\n var ad = vectorsAngle(u, v); // Δθ\n\n if (vectorsRatio(u, v) <= -1) {\n ad = Math.PI;\n }\n\n if (vectorsRatio(u, v) >= 1) {\n ad = 0;\n }\n\n if (sweepFlag === 0 && ad > 0) {\n ad = ad - 2 * Math.PI;\n }\n\n if (sweepFlag === 1 && ad < 0) {\n ad = ad + 2 * Math.PI;\n }\n\n return [centp.x, centp.y, rx, ry, a1, ad, xAxisRotation, sweepFlag];\n }\n }\n }, {\n key: \"calcLength\",\n value: function calcLength(x, y, cmd, points) {\n var len = 0;\n var p1 = null;\n var p2 = null;\n var t = 0;\n\n switch (cmd) {\n case 'L':\n return this.getLineLength(x, y, points[0], points[1]);\n\n case 'C':\n // Approximates by breaking curve into 100 line segments\n len = 0.0;\n p1 = this.getPointOnCubicBezier(0, x, y, points[0], points[1], points[2], points[3], points[4], points[5]);\n\n for (t = 0.01; t <= 1; t += 0.01) {\n p2 = this.getPointOnCubicBezier(t, x, y, points[0], points[1], points[2], points[3], points[4], points[5]);\n len += this.getLineLength(p1.x, p1.y, p2.x, p2.y);\n p1 = p2;\n }\n\n return len;\n\n case 'Q':\n // Approximates by breaking curve into 100 line segments\n len = 0.0;\n p1 = this.getPointOnQuadraticBezier(0, x, y, points[0], points[1], points[2], points[3]);\n\n for (t = 0.01; t <= 1; t += 0.01) {\n p2 = this.getPointOnQuadraticBezier(t, x, y, points[0], points[1], points[2], points[3]);\n len += this.getLineLength(p1.x, p1.y, p2.x, p2.y);\n p1 = p2;\n }\n\n return len;\n\n case 'A':\n // Approximates by breaking curve into line segments\n len = 0.0;\n var start = points[4]; // 4 = theta\n\n var dTheta = points[5]; // 5 = dTheta\n\n var end = points[4] + dTheta;\n var inc = Math.PI / 180.0; // 1 degree resolution\n\n if (Math.abs(start - end) < inc) {\n inc = Math.abs(start - end);\n } // Note: for purpose of calculating arc length, not going to worry about rotating X-axis by angle psi\n\n\n p1 = this.getPointOnEllipticalArc(points[0], points[1], points[2], points[3], start, 0);\n\n if (dTheta < 0) {\n // clockwise\n for (t = start - inc; t > end; t -= inc) {\n p2 = this.getPointOnEllipticalArc(points[0], points[1], points[2], points[3], t, 0);\n len += this.getLineLength(p1.x, p1.y, p2.x, p2.y);\n p1 = p2;\n }\n } else {\n // counter-clockwise\n for (t = start + inc; t < end; t += inc) {\n p2 = this.getPointOnEllipticalArc(points[0], points[1], points[2], points[3], t, 0);\n len += this.getLineLength(p1.x, p1.y, p2.x, p2.y);\n p1 = p2;\n }\n }\n\n p2 = this.getPointOnEllipticalArc(points[0], points[1], points[2], points[3], end, 0);\n len += this.getLineLength(p1.x, p1.y, p2.x, p2.y);\n return len;\n }\n\n return 0;\n }\n }, {\n key: \"getPointOnLine\",\n value: function getPointOnLine(dist, P1x, P1y, P2x, P2y) {\n var fromX = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : P1x;\n var fromY = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : P1y;\n var m = (P2y - P1y) / (P2x - P1x + PSEUDO_ZERO);\n var run = Math.sqrt(dist * dist / (1 + m * m));\n\n if (P2x < P1x) {\n run *= -1;\n }\n\n var rise = m * run;\n var pt = null;\n\n if (P2x === P1x) {\n // vertical line\n pt = {\n x: fromX,\n y: fromY + rise\n };\n } else if ((fromY - P1y) / (fromX - P1x + PSEUDO_ZERO) === m) {\n pt = {\n x: fromX + run,\n y: fromY + rise\n };\n } else {\n var ix = 0;\n var iy = 0;\n var len = this.getLineLength(P1x, P1y, P2x, P2y);\n\n if (len < PSEUDO_ZERO) {\n return null;\n }\n\n var u = (fromX - P1x) * (P2x - P1x) + (fromY - P1y) * (P2y - P1y);\n u = u / (len * len);\n ix = P1x + u * (P2x - P1x);\n iy = P1y + u * (P2y - P1y);\n var pRise = this.getLineLength(fromX, fromY, ix, iy);\n var pRun = Math.sqrt(dist * dist - pRise * pRise);\n run = Math.sqrt(pRun * pRun / (1 + m * m));\n\n if (P2x < P1x) {\n run *= -1;\n }\n\n rise = m * run;\n pt = {\n x: ix + run,\n y: iy + rise\n };\n }\n\n return pt;\n }\n }, {\n key: \"getPointOnPath\",\n value: function getPointOnPath(distance) {\n var fullLen = this.getPathLength();\n var cumulativePathLength = 0;\n var p = null;\n\n if (distance < -0.00005 || distance - 0.00005 > fullLen) {\n return null;\n }\n\n var dataArray = this.dataArray;\n\n var _iterator = _createForOfIteratorHelper$1(dataArray),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var pathCmd = _step.value;\n\n if (pathCmd && (pathCmd.pathLength < 0.00005 || cumulativePathLength + pathCmd.pathLength + 0.00005 < distance)) {\n cumulativePathLength += pathCmd.pathLength;\n continue;\n }\n\n var delta = distance - cumulativePathLength;\n var currentT = 0;\n\n switch (pathCmd.command) {\n case 'L':\n p = this.getPointOnLine(delta, pathCmd.start.x, pathCmd.start.y, pathCmd.points[0], pathCmd.points[1], pathCmd.start.x, pathCmd.start.y);\n break;\n\n case 'A':\n var start = pathCmd.points[4]; // 4 = theta\n\n var dTheta = pathCmd.points[5]; // 5 = dTheta\n\n var end = pathCmd.points[4] + dTheta;\n currentT = start + delta / pathCmd.pathLength * dTheta;\n\n if (dTheta < 0 && currentT < end || dTheta >= 0 && currentT > end) {\n break;\n }\n\n p = this.getPointOnEllipticalArc(pathCmd.points[0], pathCmd.points[1], pathCmd.points[2], pathCmd.points[3], currentT, pathCmd.points[6]);\n break;\n\n case 'C':\n currentT = delta / pathCmd.pathLength;\n\n if (currentT > 1) {\n currentT = 1;\n }\n\n p = this.getPointOnCubicBezier(currentT, pathCmd.start.x, pathCmd.start.y, pathCmd.points[0], pathCmd.points[1], pathCmd.points[2], pathCmd.points[3], pathCmd.points[4], pathCmd.points[5]);\n break;\n\n case 'Q':\n currentT = delta / pathCmd.pathLength;\n\n if (currentT > 1) {\n currentT = 1;\n }\n\n p = this.getPointOnQuadraticBezier(currentT, pathCmd.start.x, pathCmd.start.y, pathCmd.points[0], pathCmd.points[1], pathCmd.points[2], pathCmd.points[3]);\n break;\n\n default:\n }\n\n if (p) {\n return p;\n }\n\n break;\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n\n return null;\n }\n }, {\n key: \"getLineLength\",\n value: function getLineLength(x1, y1, x2, y2) {\n return Math.sqrt((x2 - x1) * (x2 - x1) + (y2 - y1) * (y2 - y1));\n }\n }, {\n key: \"getPathLength\",\n value: function getPathLength() {\n if (this.pathLength === -1) {\n this.pathLength = this.dataArray.reduce(function (length, command) {\n return command.pathLength > 0 ? length + command.pathLength : length;\n }, 0);\n }\n\n return this.pathLength;\n }\n }, {\n key: \"getPointOnCubicBezier\",\n value: function getPointOnCubicBezier(pct, P1x, P1y, P2x, P2y, P3x, P3y, P4x, P4y) {\n var x = P4x * CB1(pct) + P3x * CB2(pct) + P2x * CB3(pct) + P1x * CB4(pct);\n var y = P4y * CB1(pct) + P3y * CB2(pct) + P2y * CB3(pct) + P1y * CB4(pct);\n return {\n x: x,\n y: y\n };\n }\n }, {\n key: \"getPointOnQuadraticBezier\",\n value: function getPointOnQuadraticBezier(pct, P1x, P1y, P2x, P2y, P3x, P3y) {\n var x = P3x * QB1(pct) + P2x * QB2(pct) + P1x * QB3(pct);\n var y = P3y * QB1(pct) + P2y * QB2(pct) + P1y * QB3(pct);\n return {\n x: x,\n y: y\n };\n }\n }, {\n key: \"getPointOnEllipticalArc\",\n value: function getPointOnEllipticalArc(cx, cy, rx, ry, theta, psi) {\n var cosPsi = Math.cos(psi);\n var sinPsi = Math.sin(psi);\n var pt = {\n x: rx * Math.cos(theta),\n y: ry * Math.sin(theta)\n };\n return {\n x: cx + (pt.x * cosPsi - pt.y * sinPsi),\n y: cy + (pt.x * sinPsi + pt.y * cosPsi)\n };\n } // TODO need some optimisations. possibly build cache only for curved segments?\n\n }, {\n key: \"buildEquidistantCache\",\n value: function buildEquidistantCache(inputStep, inputPrecision) {\n var fullLen = this.getPathLength();\n var precision = inputPrecision || 0.25; // accuracy vs performance\n\n var step = inputStep || fullLen / 100;\n\n if (!this.equidistantCache || this.equidistantCache.step !== step || this.equidistantCache.precision !== precision) {\n // Prepare cache\n this.equidistantCache = {\n step: step,\n precision: precision,\n points: []\n }; // Calculate points\n\n var s = 0;\n\n for (var l = 0; l <= fullLen; l += precision) {\n var p0 = this.getPointOnPath(l);\n var p1 = this.getPointOnPath(l + precision);\n\n if (!p0 || !p1) {\n continue;\n }\n\n s += this.getLineLength(p0.x, p0.y, p1.x, p1.y);\n\n if (s >= step) {\n this.equidistantCache.points.push({\n x: p0.x,\n y: p0.y,\n distance: l\n });\n s -= step;\n }\n }\n }\n }\n }, {\n key: \"getEquidistantPointOnPath\",\n value: function getEquidistantPointOnPath(targetDistance, step, precision) {\n this.buildEquidistantCache(step, precision);\n\n if (targetDistance < 0 || targetDistance - this.getPathLength() > 0.00005) {\n return null;\n }\n\n var idx = Math.round(targetDistance / this.getPathLength() * (this.equidistantCache.points.length - 1));\n return this.equidistantCache.points[idx] || null;\n }\n }]);\n\n return TextPathElement;\n}(TextElement);\n\nfunction _createSuper$y(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$y()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$y() { 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\nvar ImageElement = /*#__PURE__*/function (_RenderedElement) {\n _inherits(ImageElement, _RenderedElement);\n\n var _super = _createSuper$y(ImageElement);\n\n function ImageElement(document, node, captureTextNodes) {\n var _this;\n\n _classCallCheck(this, ImageElement);\n\n _this = _super.call(this, document, node, captureTextNodes);\n _this.type = 'image';\n _this.loaded = false;\n\n var href = _this.getHrefAttribute().getString();\n\n if (!href) {\n return _possibleConstructorReturn(_this);\n }\n\n var isSvg = /\\.svg$/.test(href);\n document.images.push(_assertThisInitialized(_this));\n\n if (!isSvg) {\n _this.loadImage(href);\n } else {\n _this.loadSvg(href);\n }\n\n _this.isSvg = isSvg;\n return _this;\n }\n\n _createClass(ImageElement, [{\n key: \"loadImage\",\n value: function () {\n var _loadImage = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(href) {\n var image;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.prev = 0;\n _context.next = 3;\n return this.document.createImage(href);\n\n case 3:\n image = _context.sent;\n this.image = image;\n _context.next = 10;\n break;\n\n case 7:\n _context.prev = 7;\n _context.t0 = _context[\"catch\"](0);\n // tslint:disable-next-line: no-console\n console.error(\"Error while loading image \\\"\".concat(href, \"\\\":\"), _context.t0);\n\n case 10:\n this.loaded = true;\n\n case 11:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this, [[0, 7]]);\n }));\n\n function loadImage(_x) {\n return _loadImage.apply(this, arguments);\n }\n\n return loadImage;\n }()\n }, {\n key: \"loadSvg\",\n value: function () {\n var _loadSvg = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2(href) {\n var response, svg;\n return _regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n _context2.prev = 0;\n _context2.next = 3;\n return this.document.fetch(href);\n\n case 3:\n response = _context2.sent;\n _context2.next = 6;\n return response.text();\n\n case 6:\n svg = _context2.sent;\n this.image = svg;\n _context2.next = 13;\n break;\n\n case 10:\n _context2.prev = 10;\n _context2.t0 = _context2[\"catch\"](0);\n // tslint:disable-next-line: no-console\n console.error(\"Error while loading image \\\"\".concat(href, \"\\\":\"), _context2.t0);\n\n case 13:\n this.loaded = true;\n\n case 14:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2, this, [[0, 10]]);\n }));\n\n function loadSvg(_x2) {\n return _loadSvg.apply(this, arguments);\n }\n\n return loadSvg;\n }()\n }, {\n key: \"renderChildren\",\n value: function renderChildren(ctx) {\n var document = this.document,\n image = this.image,\n loaded = this.loaded;\n var x = this.getAttribute('x').getPixels('x');\n var y = this.getAttribute('y').getPixels('y');\n var width = this.getStyle('width').getPixels('x');\n var height = this.getStyle('height').getPixels('y');\n\n if (!loaded || !image || !width || !height) {\n return;\n }\n\n ctx.save();\n\n if (this.isSvg) {\n document.canvg.forkString(ctx, this.image, {\n ignoreMouse: true,\n ignoreAnimation: true,\n ignoreDimensions: true,\n ignoreClear: true,\n offsetX: x,\n offsetY: y,\n scaleWidth: width,\n scaleHeight: height\n }).render();\n } else {\n var _image = this.image;\n ctx.translate(x, y);\n document.setViewBox({\n ctx: ctx,\n aspectRatio: this.getAttribute('preserveAspectRatio').getString(),\n width: width,\n desiredWidth: _image.width,\n height: height,\n desiredHeight: _image.height\n });\n\n if (this.loaded) {\n if (typeof _image.complete === 'undefined' || _image.complete) {\n ctx.drawImage(_image, 0, 0);\n }\n }\n }\n\n ctx.restore();\n }\n }, {\n key: \"getBoundingBox\",\n value: function getBoundingBox() {\n var x = this.getAttribute('x').getPixels('x');\n var y = this.getAttribute('y').getPixels('y');\n var width = this.getStyle('width').getPixels('x');\n var height = this.getStyle('height').getPixels('y');\n return new BoundingBox(x, y, x + width, y + height);\n }\n }]);\n\n return ImageElement;\n}(RenderedElement);\n\nfunction _createSuper$z(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$z()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$z() { 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\nvar SymbolElement = /*#__PURE__*/function (_RenderedElement) {\n _inherits(SymbolElement, _RenderedElement);\n\n var _super = _createSuper$z(SymbolElement);\n\n function SymbolElement() {\n var _this;\n\n _classCallCheck(this, SymbolElement);\n\n _this = _super.apply(this, arguments);\n _this.type = 'symbol';\n return _this;\n }\n\n _createClass(SymbolElement, [{\n key: \"render\",\n value: function render(_) {// NO RENDER\n }\n }]);\n\n return SymbolElement;\n}(RenderedElement);\n\nvar SVGFontLoader = /*#__PURE__*/function () {\n function SVGFontLoader(document) {\n _classCallCheck(this, SVGFontLoader);\n\n this.document = document;\n this.loaded = false;\n document.fonts.push(this);\n }\n\n _createClass(SVGFontLoader, [{\n key: \"load\",\n value: function () {\n var _load = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(fontFamily, url) {\n var document, svgDocument, fonts;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.prev = 0;\n document = this.document;\n _context.next = 4;\n return document.canvg.parser.load(url);\n\n case 4:\n svgDocument = _context.sent;\n fonts = svgDocument.getElementsByTagName('font');\n Array.from(fonts).forEach(function (fontNode) {\n var font = document.createElement(fontNode);\n document.definitions[fontFamily] = font;\n });\n _context.next = 12;\n break;\n\n case 9:\n _context.prev = 9;\n _context.t0 = _context[\"catch\"](0);\n // tslint:disable-next-line: no-console\n console.error(\"Error while loading font \\\"\".concat(url, \"\\\":\"), _context.t0);\n\n case 12:\n this.loaded = true;\n\n case 13:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this, [[0, 9]]);\n }));\n\n function load(_x, _x2) {\n return _load.apply(this, arguments);\n }\n\n return load;\n }()\n }]);\n\n return SVGFontLoader;\n}();\n\nfunction _createSuper$A(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$A()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$A() { 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\nvar StyleElement = /*#__PURE__*/function (_Element) {\n _inherits(StyleElement, _Element);\n\n var _super = _createSuper$A(StyleElement);\n\n function StyleElement(document, node, captureTextNodes) {\n var _this;\n\n _classCallCheck(this, StyleElement);\n\n _this = _super.call(this, document, node, captureTextNodes);\n _this.type = 'style';\n var css = compressSpaces(Array.from(node.childNodes).map(function (_) {\n return _.data;\n }).join('').replace(/(\\/\\*([^*]|[\\r\\n]|(\\*+([^*\\/]|[\\r\\n])))*\\*+\\/)|(^[\\s]*\\/\\/.*)/gm, '') // remove comments\n .replace(/@import.*;/g, '') // remove imports\n );\n var cssDefs = css.split('}');\n cssDefs.forEach(function (_) {\n var def = _.trim();\n\n if (!def) {\n return;\n }\n\n var cssParts = def.split('{');\n var cssClasses = cssParts[0].split(',');\n var cssProps = cssParts[1].split(';');\n cssClasses.forEach(function (_) {\n var cssClass = _.trim();\n\n if (!cssClass) {\n return;\n }\n\n var props = document.styles[cssClass] || {};\n cssProps.forEach(function (cssProp) {\n var prop = cssProp.indexOf(':');\n var name = cssProp.substr(0, prop).trim();\n var value = cssProp.substr(prop + 1, cssProp.length - prop).trim();\n\n if (name && value) {\n props[name] = new Property(document, name, value);\n }\n });\n document.styles[cssClass] = props;\n document.stylesSpecificity[cssClass] = getSelectorSpecificity(cssClass);\n\n if (cssClass === '@font-face') {\n // && !nodeEnv\n var fontFamily = props['font-family'].getString().replace(/\"|'/g, '');\n var srcs = props.src.getString().split(',');\n srcs.forEach(function (src) {\n if (src.indexOf('format(\"svg\")') > 0) {\n var url = parseExternalUrl(src);\n\n if (url) {\n new SVGFontLoader(document).load(fontFamily, url);\n }\n }\n });\n }\n });\n });\n return _this;\n }\n\n return StyleElement;\n}(Element);\nStyleElement.parseExternalUrl = parseExternalUrl;\n\nfunction _createSuper$B(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$B()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$B() { 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\nvar UseElement = /*#__PURE__*/function (_RenderedElement) {\n _inherits(UseElement, _RenderedElement);\n\n var _super = _createSuper$B(UseElement);\n\n function UseElement() {\n var _this;\n\n _classCallCheck(this, UseElement);\n\n _this = _super.apply(this, arguments);\n _this.type = 'use';\n return _this;\n }\n\n _createClass(UseElement, [{\n key: \"setContext\",\n value: function setContext(ctx) {\n _get(_getPrototypeOf(UseElement.prototype), \"setContext\", this).call(this, ctx);\n\n var xAttr = this.getAttribute('x');\n var yAttr = this.getAttribute('y');\n\n if (xAttr.hasValue()) {\n ctx.translate(xAttr.getPixels('x'), 0);\n }\n\n if (yAttr.hasValue()) {\n ctx.translate(0, yAttr.getPixels('y'));\n }\n }\n }, {\n key: \"path\",\n value: function path(ctx) {\n var element = this.element;\n\n if (element) {\n element.path(ctx);\n }\n }\n }, {\n key: \"renderChildren\",\n value: function renderChildren(ctx) {\n var document = this.document,\n element = this.element;\n\n if (element) {\n var tempSvg = element;\n\n if (element.type === 'symbol') {\n // render me using a temporary svg element in symbol cases (http://www.w3.org/TR/SVG/struct.html#UseElement)\n tempSvg = new SVGElement(document, null);\n tempSvg.attributes.viewBox = new Property(document, 'viewBox', element.getAttribute('viewBox').getString());\n tempSvg.attributes.preserveAspectRatio = new Property(document, 'preserveAspectRatio', element.getAttribute('preserveAspectRatio').getString());\n tempSvg.attributes.overflow = new Property(document, 'overflow', element.getAttribute('overflow').getString());\n tempSvg.children = element.children;\n }\n\n if (tempSvg.type === 'svg') {\n var widthStyle = this.getStyle('width', false, true);\n var heightStyle = this.getStyle('height', false, true); // if symbol or svg, inherit width/height from me\n\n if (widthStyle.hasValue()) {\n tempSvg.attributes.width = new Property(document, 'width', widthStyle.getString());\n }\n\n if (heightStyle.hasValue()) {\n tempSvg.attributes.height = new Property(document, 'height', heightStyle.getString());\n }\n }\n\n var oldParent = tempSvg.parent;\n tempSvg.parent = this;\n tempSvg.render(ctx);\n tempSvg.parent = oldParent;\n }\n }\n }, {\n key: \"getBoundingBox\",\n value: function getBoundingBox(ctx) {\n var element = this.element;\n\n if (element) {\n return element.getBoundingBox(ctx);\n }\n\n return null;\n }\n }, {\n key: \"elementTransform\",\n value: function elementTransform() {\n var document = this.document,\n element = this.element;\n return Transform.fromElement(document, element);\n }\n }, {\n key: \"element\",\n get: function get() {\n if (!this._element) {\n this._element = this.getHrefAttribute().getDefinition();\n }\n\n return this._element;\n }\n }]);\n\n return UseElement;\n}(RenderedElement);\n\nfunction _createSuper$C(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$C()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$C() { 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 imGet(img, x, y, width, _, rgba) {\n return img[y * width * 4 + x * 4 + rgba];\n}\n\nfunction imSet(img, x, y, width, _, rgba, val) {\n img[y * width * 4 + x * 4 + rgba] = val;\n}\n\nfunction m(matrix, i, v) {\n var mi = matrix[i];\n return mi * (mi < 0 ? v - 255 : v);\n}\n\nfunction c(a, m1, m2, m3) {\n return m1 + Math.cos(a) * m2 + Math.sin(a) * m3;\n}\n\nvar FeColorMatrixElement = /*#__PURE__*/function (_Element) {\n _inherits(FeColorMatrixElement, _Element);\n\n var _super = _createSuper$C(FeColorMatrixElement);\n\n function FeColorMatrixElement(document, node, captureTextNodes) {\n var _this;\n\n _classCallCheck(this, FeColorMatrixElement);\n\n _this = _super.call(this, document, node, captureTextNodes);\n _this.type = 'feColorMatrix';\n var matrix = toNumbers(_this.getAttribute('values').getString());\n\n switch (_this.getAttribute('type').getString('matrix')) {\n // http://www.w3.org/TR/SVG/filters.html#feColorMatrixElement\n case 'saturate':\n {\n var s = matrix[0];\n matrix = [0.213 + 0.787 * s, 0.715 - 0.715 * s, 0.072 - 0.072 * s, 0, 0, 0.213 - 0.213 * s, 0.715 + 0.285 * s, 0.072 - 0.072 * s, 0, 0, 0.213 - 0.213 * s, 0.715 - 0.715 * s, 0.072 + 0.928 * s, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1];\n break;\n }\n\n case 'hueRotate':\n {\n var a = matrix[0] * Math.PI / 180.0;\n matrix = [c(a, 0.213, 0.787, -0.213), c(a, 0.715, -0.715, -0.715), c(a, 0.072, -0.072, 0.928), 0, 0, c(a, 0.213, -0.213, 0.143), c(a, 0.715, 0.285, 0.140), c(a, 0.072, -0.072, -0.283), 0, 0, c(a, 0.213, -0.213, -0.787), c(a, 0.715, -0.715, 0.715), c(a, 0.072, 0.928, 0.072), 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1];\n break;\n }\n\n case 'luminanceToAlpha':\n matrix = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.2125, 0.7154, 0.0721, 0, 0, 0, 0, 0, 0, 1];\n break;\n }\n\n _this.matrix = matrix;\n _this.includeOpacity = _this.getAttribute('includeOpacity').hasValue();\n return _this;\n }\n\n _createClass(FeColorMatrixElement, [{\n key: \"apply\",\n value: function apply(ctx, _, __, width, height) {\n // assuming x==0 && y==0 for now\n var includeOpacity = this.includeOpacity,\n matrix = this.matrix;\n var srcData = ctx.getImageData(0, 0, width, height);\n\n for (var y = 0; y < height; y++) {\n for (var x = 0; x < width; x++) {\n var r = imGet(srcData.data, x, y, width, height, 0);\n var g = imGet(srcData.data, x, y, width, height, 1);\n var b = imGet(srcData.data, x, y, width, height, 2);\n var a = imGet(srcData.data, x, y, width, height, 3);\n var nr = m(matrix, 0, r) + m(matrix, 1, g) + m(matrix, 2, b) + m(matrix, 3, a) + m(matrix, 4, 1);\n var ng = m(matrix, 5, r) + m(matrix, 6, g) + m(matrix, 7, b) + m(matrix, 8, a) + m(matrix, 9, 1);\n var nb = m(matrix, 10, r) + m(matrix, 11, g) + m(matrix, 12, b) + m(matrix, 13, a) + m(matrix, 14, 1);\n var na = m(matrix, 15, r) + m(matrix, 16, g) + m(matrix, 17, b) + m(matrix, 18, a) + m(matrix, 19, 1);\n\n if (includeOpacity) {\n nr = ng = nb = 0;\n na *= a / 255;\n }\n\n imSet(srcData.data, x, y, width, height, 0, nr);\n imSet(srcData.data, x, y, width, height, 1, ng);\n imSet(srcData.data, x, y, width, height, 2, nb);\n imSet(srcData.data, x, y, width, height, 3, na);\n }\n }\n\n ctx.clearRect(0, 0, width, height);\n ctx.putImageData(srcData, 0, 0);\n }\n }]);\n\n return FeColorMatrixElement;\n}(Element);\n\nfunction _createSuper$D(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$D()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$D() { 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\nvar MaskElement = /*#__PURE__*/function (_Element) {\n _inherits(MaskElement, _Element);\n\n var _super = _createSuper$D(MaskElement);\n\n function MaskElement() {\n var _this;\n\n _classCallCheck(this, MaskElement);\n\n _this = _super.apply(this, arguments);\n _this.type = 'mask';\n return _this;\n }\n\n _createClass(MaskElement, [{\n key: \"apply\",\n value: function apply(ctx, element) {\n var document = this.document; // render as temp svg\n\n var x = this.getAttribute('x').getPixels('x');\n var y = this.getAttribute('y').getPixels('y');\n var width = this.getStyle('width').getPixels('x');\n var height = this.getStyle('height').getPixels('y');\n\n if (!width && !height) {\n var boundingBox = new BoundingBox();\n this.children.forEach(function (child) {\n boundingBox.addBoundingBox(child.getBoundingBox(ctx));\n });\n x = Math.floor(boundingBox.x1);\n y = Math.floor(boundingBox.y1);\n width = Math.floor(boundingBox.width);\n height = Math.floor(boundingBox.height);\n }\n\n var ignoredStyles = this.removeStyles(element, MaskElement.ignoreStyles);\n var maskCanvas = document.createCanvas(x + width, y + height);\n var maskCtx = maskCanvas.getContext('2d');\n document.screen.setDefaults(maskCtx);\n this.renderChildren(maskCtx); // convert mask to alpha with a fake node\n // TODO: refactor out apply from feColorMatrix\n\n new FeColorMatrixElement(document, {\n nodeType: 1,\n childNodes: [],\n attributes: [{\n nodeName: 'type',\n value: 'luminanceToAlpha'\n }, {\n nodeName: 'includeOpacity',\n value: 'true'\n }]\n }).apply(maskCtx, 0, 0, x + width, y + height);\n var tmpCanvas = document.createCanvas(x + width, y + height);\n var tmpCtx = tmpCanvas.getContext('2d');\n document.screen.setDefaults(tmpCtx);\n element.render(tmpCtx);\n tmpCtx.globalCompositeOperation = 'destination-in';\n tmpCtx.fillStyle = maskCtx.createPattern(maskCanvas, 'no-repeat');\n tmpCtx.fillRect(0, 0, x + width, y + height);\n ctx.fillStyle = tmpCtx.createPattern(tmpCanvas, 'no-repeat');\n ctx.fillRect(0, 0, x + width, y + height); // reassign mask\n\n this.restoreStyles(element, ignoredStyles);\n }\n }, {\n key: \"render\",\n value: function render(_) {// NO RENDER\n }\n }]);\n\n return MaskElement;\n}(Element);\nMaskElement.ignoreStyles = ['mask', 'transform', 'clip-path'];\n\nfunction _createSuper$E(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$E()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$E() { 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\nvar noop = function noop() {};\n\nvar ClipPathElement = /*#__PURE__*/function (_Element) {\n _inherits(ClipPathElement, _Element);\n\n var _super = _createSuper$E(ClipPathElement);\n\n function ClipPathElement() {\n var _this;\n\n _classCallCheck(this, ClipPathElement);\n\n _this = _super.apply(this, arguments);\n _this.type = 'clipPath';\n return _this;\n }\n\n _createClass(ClipPathElement, [{\n key: \"apply\",\n value: function apply(ctx) {\n var document = this.document;\n var contextProto = Reflect.getPrototypeOf(ctx);\n var beginPath = ctx.beginPath,\n closePath = ctx.closePath;\n\n if (contextProto) {\n contextProto.beginPath = noop;\n contextProto.closePath = noop;\n }\n\n Reflect.apply(beginPath, ctx, []);\n this.children.forEach(function (child) {\n if (typeof child.path === 'undefined') {\n return;\n }\n\n var transform = typeof child.elementTransform !== 'undefined' ? child.elementTransform() : null; // handle \n\n if (!transform) {\n transform = Transform.fromElement(document, child);\n }\n\n if (transform) {\n transform.apply(ctx);\n }\n\n child.path(ctx);\n\n if (contextProto) {\n contextProto.closePath = closePath;\n }\n\n if (transform) {\n transform.unapply(ctx);\n }\n });\n Reflect.apply(closePath, ctx, []);\n ctx.clip();\n\n if (contextProto) {\n contextProto.beginPath = beginPath;\n contextProto.closePath = closePath;\n }\n }\n }, {\n key: \"render\",\n value: function render(_) {// NO RENDER\n }\n }]);\n\n return ClipPathElement;\n}(Element);\n\nfunction _createSuper$F(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$F()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$F() { 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\nvar FilterElement = /*#__PURE__*/function (_Element) {\n _inherits(FilterElement, _Element);\n\n var _super = _createSuper$F(FilterElement);\n\n function FilterElement() {\n var _this;\n\n _classCallCheck(this, FilterElement);\n\n _this = _super.apply(this, arguments);\n _this.type = 'filter';\n return _this;\n }\n\n _createClass(FilterElement, [{\n key: \"apply\",\n value: function apply(ctx, element) {\n // render as temp svg\n var document = this.document,\n children = this.children;\n var boundingBox = element.getBoundingBox(ctx);\n\n if (!boundingBox) {\n return;\n }\n\n var px = 0;\n var py = 0;\n children.forEach(function (child) {\n var efd = child.extraFilterDistance || 0;\n px = Math.max(px, efd);\n py = Math.max(py, efd);\n });\n var width = Math.floor(boundingBox.width);\n var height = Math.floor(boundingBox.height);\n var tmpCanvasWidth = width + 2 * px;\n var tmpCanvasHeight = height + 2 * py;\n\n if (tmpCanvasWidth < 1 || tmpCanvasHeight < 1) {\n return;\n }\n\n var x = Math.floor(boundingBox.x);\n var y = Math.floor(boundingBox.y);\n var ignoredStyles = this.removeStyles(element, FilterElement.ignoreStyles);\n var tmpCanvas = document.createCanvas(tmpCanvasWidth, tmpCanvasHeight);\n var tmpCtx = tmpCanvas.getContext('2d');\n document.screen.setDefaults(tmpCtx);\n tmpCtx.translate(-x + px, -y + py);\n element.render(tmpCtx); // apply filters\n\n children.forEach(function (child) {\n if (typeof child.apply === 'function') {\n child.apply(tmpCtx, 0, 0, tmpCanvasWidth, tmpCanvasHeight);\n }\n }); // render on me\n\n ctx.drawImage(tmpCanvas, 0, 0, tmpCanvasWidth, tmpCanvasHeight, x - px, y - py, tmpCanvasWidth, tmpCanvasHeight);\n this.restoreStyles(element, ignoredStyles);\n }\n }, {\n key: \"render\",\n value: function render(_) {// NO RENDER\n }\n }]);\n\n return FilterElement;\n}(Element);\nFilterElement.ignoreStyles = ['filter', 'transform', 'clip-path'];\n\nfunction _createSuper$G(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$G()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$G() { 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\nvar FeDropShadowElement = /*#__PURE__*/function (_Element) {\n _inherits(FeDropShadowElement, _Element);\n\n var _super = _createSuper$G(FeDropShadowElement);\n\n function FeDropShadowElement(document, node, captureTextNodes) {\n var _this;\n\n _classCallCheck(this, FeDropShadowElement);\n\n _this = _super.call(this, document, node, captureTextNodes);\n _this.type = 'feDropShadow';\n\n _this.addStylesFromStyleDefinition();\n\n return _this;\n }\n\n _createClass(FeDropShadowElement, [{\n key: \"apply\",\n value: function apply(_, __, ___, ____, _____) {// TODO: implement\n }\n }]);\n\n return FeDropShadowElement;\n}(Element);\n\nfunction _createSuper$H(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$H()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$H() { 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\nvar FeMorphologyElement = /*#__PURE__*/function (_Element) {\n _inherits(FeMorphologyElement, _Element);\n\n var _super = _createSuper$H(FeMorphologyElement);\n\n function FeMorphologyElement() {\n var _this;\n\n _classCallCheck(this, FeMorphologyElement);\n\n _this = _super.apply(this, arguments);\n _this.type = 'feMorphology';\n return _this;\n }\n\n _createClass(FeMorphologyElement, [{\n key: \"apply\",\n value: function apply(_, __, ___, ____, _____) {// TODO: implement\n }\n }]);\n\n return FeMorphologyElement;\n}(Element);\n\nfunction _createSuper$I(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$I()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$I() { 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\nvar FeCompositeElement = /*#__PURE__*/function (_Element) {\n _inherits(FeCompositeElement, _Element);\n\n var _super = _createSuper$I(FeCompositeElement);\n\n function FeCompositeElement() {\n var _this;\n\n _classCallCheck(this, FeCompositeElement);\n\n _this = _super.apply(this, arguments);\n _this.type = 'feComposite';\n return _this;\n }\n\n _createClass(FeCompositeElement, [{\n key: \"apply\",\n value: function apply(_, __, ___, ____, _____) {// TODO: implement\n }\n }]);\n\n return FeCompositeElement;\n}(Element);\n\nfunction _createSuper$J(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$J()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$J() { 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\nvar FeGaussianBlurElement = /*#__PURE__*/function (_Element) {\n _inherits(FeGaussianBlurElement, _Element);\n\n var _super = _createSuper$J(FeGaussianBlurElement);\n\n function FeGaussianBlurElement(document, node, captureTextNodes) {\n var _this;\n\n _classCallCheck(this, FeGaussianBlurElement);\n\n _this = _super.call(this, document, node, captureTextNodes);\n _this.type = 'feGaussianBlur';\n _this.blurRadius = Math.floor(_this.getAttribute('stdDeviation').getNumber());\n _this.extraFilterDistance = _this.blurRadius;\n return _this;\n }\n\n _createClass(FeGaussianBlurElement, [{\n key: \"apply\",\n value: function apply(ctx, x, y, width, height) {\n var document = this.document,\n blurRadius = this.blurRadius;\n var body = document.window ? document.window.document.body : null;\n var canvas = ctx.canvas; // StackBlur requires canvas be on document\n\n canvas.id = document.getUniqueId();\n\n if (body) {\n canvas.style.display = 'none';\n body.appendChild(canvas);\n }\n\n canvasRGBA(canvas, x, y, width, height, blurRadius);\n\n if (body) {\n body.removeChild(canvas);\n }\n }\n }]);\n\n return FeGaussianBlurElement;\n}(Element);\n\nfunction _createSuper$K(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$K()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$K() { 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\nvar TitleElement = /*#__PURE__*/function (_Element) {\n _inherits(TitleElement, _Element);\n\n var _super = _createSuper$K(TitleElement);\n\n function TitleElement() {\n var _this;\n\n _classCallCheck(this, TitleElement);\n\n _this = _super.apply(this, arguments);\n _this.type = 'title';\n return _this;\n }\n\n return TitleElement;\n}(Element);\n\nfunction _createSuper$L(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$L()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$L() { 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\nvar DescElement = /*#__PURE__*/function (_Element) {\n _inherits(DescElement, _Element);\n\n var _super = _createSuper$L(DescElement);\n\n function DescElement() {\n var _this;\n\n _classCallCheck(this, DescElement);\n\n _this = _super.apply(this, arguments);\n _this.type = 'desc';\n return _this;\n }\n\n return DescElement;\n}(Element);\n\nvar elementTypes = {\n 'svg': SVGElement,\n 'rect': RectElement,\n 'circle': CircleElement,\n 'ellipse': EllipseElement,\n 'line': LineElement,\n 'polyline': PolylineElement,\n 'polygon': PolygonElement,\n 'path': PathElement,\n 'pattern': PatternElement,\n 'marker': MarkerElement,\n 'defs': DefsElement,\n 'linearGradient': LinearGradientElement,\n 'radialGradient': RadialGradientElement,\n 'stop': StopElement,\n 'animate': AnimateElement,\n 'animateColor': AnimateColorElement,\n 'animateTransform': AnimateTransformElement,\n 'font': FontElement,\n 'font-face': FontFaceElement,\n 'missing-glyph': MissingGlyphElement,\n 'glyph': GlyphElement,\n 'text': TextElement,\n 'tspan': TSpanElement,\n 'tref': TRefElement,\n 'a': AElement,\n 'textPath': TextPathElement,\n 'image': ImageElement,\n 'g': GElement,\n 'symbol': SymbolElement,\n 'style': StyleElement,\n 'use': UseElement,\n 'mask': MaskElement,\n 'clipPath': ClipPathElement,\n 'filter': FilterElement,\n 'feDropShadow': FeDropShadowElement,\n 'feMorphology': FeMorphologyElement,\n 'feComposite': FeCompositeElement,\n 'feColorMatrix': FeColorMatrixElement,\n 'feGaussianBlur': FeGaussianBlurElement,\n 'title': TitleElement,\n 'desc': DescElement\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 createCanvas(width, height) {\n var canvas = document.createElement('canvas');\n canvas.width = width;\n canvas.height = height;\n return canvas;\n}\n\nfunction createImage(_x) {\n return _createImage.apply(this, arguments);\n}\n\nfunction _createImage() {\n _createImage = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(src) {\n var anonymousCrossOrigin,\n image,\n _args = arguments;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n anonymousCrossOrigin = _args.length > 1 && _args[1] !== undefined ? _args[1] : false;\n image = document.createElement('img');\n\n if (anonymousCrossOrigin) {\n image.crossOrigin = 'Anonymous';\n }\n\n return _context.abrupt(\"return\", new Promise(function (resolve, reject) {\n image.onload = function () {\n resolve(image);\n };\n\n image.onerror = function () {\n reject();\n };\n\n image.src = src;\n }));\n\n case 4:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n return _createImage.apply(this, arguments);\n}\n\nvar Document = /*#__PURE__*/function () {\n function Document(canvg) {\n var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n _ref$rootEmSize = _ref.rootEmSize,\n rootEmSize = _ref$rootEmSize === void 0 ? 12 : _ref$rootEmSize,\n _ref$emSize = _ref.emSize,\n emSize = _ref$emSize === void 0 ? 12 : _ref$emSize,\n _ref$createCanvas = _ref.createCanvas,\n createCanvas = _ref$createCanvas === void 0 ? Document.createCanvas : _ref$createCanvas,\n _ref$createImage = _ref.createImage,\n createImage = _ref$createImage === void 0 ? Document.createImage : _ref$createImage,\n anonymousCrossOrigin = _ref.anonymousCrossOrigin;\n\n _classCallCheck(this, Document);\n\n this.canvg = canvg;\n this.definitions = {};\n this.styles = {};\n this.stylesSpecificity = {};\n this.images = [];\n this.fonts = [];\n this.emSizeStack = [];\n this.uniqueId = 0;\n this.screen = canvg.screen;\n this.rootEmSize = rootEmSize;\n this.emSize = emSize;\n this.createCanvas = createCanvas;\n this.createImage = this.bindCreateImage(createImage, anonymousCrossOrigin);\n this.screen.wait(this.isImagesLoaded.bind(this));\n this.screen.wait(this.isFontsLoaded.bind(this));\n }\n\n _createClass(Document, [{\n key: \"bindCreateImage\",\n value: function bindCreateImage(createImage, anonymousCrossOrigin) {\n if (typeof anonymousCrossOrigin === 'boolean') {\n return function (source, forceAnonymousCrossOrigin) {\n return createImage(source, typeof forceAnonymousCrossOrigin === 'boolean' ? forceAnonymousCrossOrigin : anonymousCrossOrigin);\n };\n }\n\n return createImage;\n }\n }, {\n key: \"popEmSize\",\n value: function popEmSize() {\n var emSizeStack = this.emSizeStack;\n emSizeStack.pop();\n }\n }, {\n key: \"getUniqueId\",\n value: function getUniqueId() {\n return \"canvg\".concat(++this.uniqueId);\n }\n }, {\n key: \"isImagesLoaded\",\n value: function isImagesLoaded() {\n return this.images.every(function (_) {\n return _.loaded;\n });\n }\n }, {\n key: \"isFontsLoaded\",\n value: function isFontsLoaded() {\n return this.fonts.every(function (_) {\n return _.loaded;\n });\n }\n }, {\n key: \"createDocumentElement\",\n value: function createDocumentElement(document) {\n var documentElement = this.createElement(document.documentElement);\n documentElement.root = true;\n documentElement.addStylesFromStyleDefinition();\n this.documentElement = documentElement;\n return documentElement;\n }\n }, {\n key: \"createElement\",\n value: function createElement(node) {\n var elementType = node.nodeName.replace(/^[^:]+:/, '');\n var ElementType = Document.elementTypes[elementType];\n\n if (typeof ElementType !== 'undefined') {\n return new ElementType(this, node);\n }\n\n return new UnknownElement(this, node);\n }\n }, {\n key: \"createTextNode\",\n value: function createTextNode(node) {\n return new TextNode(this, node);\n }\n }, {\n key: \"setViewBox\",\n value: function setViewBox(config) {\n this.screen.setViewBox(_objectSpread({\n document: this\n }, config));\n }\n }, {\n key: \"window\",\n get: function get() {\n return this.screen.window;\n }\n }, {\n key: \"fetch\",\n get: function get() {\n return this.screen.fetch;\n }\n }, {\n key: \"ctx\",\n get: function get() {\n return this.screen.ctx;\n }\n }, {\n key: \"emSize\",\n get: function get() {\n var emSizeStack = this.emSizeStack;\n return emSizeStack[emSizeStack.length - 1];\n },\n set: function set(value) {\n var emSizeStack = this.emSizeStack;\n emSizeStack.push(value);\n }\n }]);\n\n return Document;\n}();\nDocument.createCanvas = createCanvas;\nDocument.createImage = createImage;\nDocument.elementTypes = elementTypes;\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; }\n/**\r\n * SVG renderer on canvas.\r\n */\n\nvar Canvg = /*#__PURE__*/function () {\n /**\r\n * Main constructor.\r\n * @param ctx - Rendering context.\r\n * @param svg - SVG Document.\r\n * @param options - Rendering options.\r\n */\n function Canvg(ctx, svg) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n\n _classCallCheck(this, Canvg);\n\n this.parser = new Parser(options);\n this.screen = new Screen(ctx, options);\n this.options = options;\n var document = new Document(this, options);\n var documentElement = document.createDocumentElement(svg);\n this.document = document;\n this.documentElement = documentElement;\n }\n /**\r\n * Create Canvg isntance from SVG source string or URL.\r\n * @param ctx - Rendering context.\r\n * @param svg - SVG source string or URL.\r\n * @param options - Rendering options.\r\n */\n\n\n _createClass(Canvg, [{\n key: \"fork\",\n\n /**\r\n * Create new Canvg instance with inherited options.\r\n * @param ctx - Rendering context.\r\n * @param svg - SVG source string or URL.\r\n * @param options - Rendering options.\r\n */\n value: function fork(ctx, svg) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n return Canvg.from(ctx, svg, _objectSpread$1({}, this.options, {}, options));\n }\n /**\r\n * Create new Canvg instance with inherited options.\r\n * @param ctx - Rendering context.\r\n * @param svg - SVG source string.\r\n * @param options - Rendering options.\r\n */\n\n }, {\n key: \"forkString\",\n value: function forkString(ctx, svg) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n return Canvg.fromString(ctx, svg, _objectSpread$1({}, this.options, {}, options));\n }\n /**\r\n * Document is ready promise.\r\n */\n\n }, {\n key: \"ready\",\n value: function ready() {\n return this.screen.ready();\n }\n /**\r\n * Document is ready value.\r\n */\n\n }, {\n key: \"isReady\",\n value: function isReady() {\n return this.screen.isReady();\n }\n /**\r\n * Render only first frame, ignoring animations and mouse.\r\n * @param options - Rendering options.\r\n */\n\n }, {\n key: \"render\",\n value: function () {\n var _render = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {\n var options,\n _args = arguments;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n options = _args.length > 0 && _args[0] !== undefined ? _args[0] : {};\n this.start(_objectSpread$1({\n enableRedraw: true,\n ignoreAnimation: true,\n ignoreMouse: true\n }, options));\n _context.next = 4;\n return this.ready();\n\n case 4:\n this.stop();\n\n case 5:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this);\n }));\n\n function render() {\n return _render.apply(this, arguments);\n }\n\n return render;\n }()\n /**\r\n * Start rendering.\r\n * @param options - Render options.\r\n */\n\n }, {\n key: \"start\",\n value: function start() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var documentElement = this.documentElement,\n screen = this.screen,\n baseOptions = this.options;\n screen.start(documentElement, _objectSpread$1({\n enableRedraw: true\n }, baseOptions, {}, options));\n }\n /**\r\n * Stop rendering.\r\n */\n\n }, {\n key: \"stop\",\n value: function stop() {\n this.screen.stop();\n }\n /**\r\n * Resize SVG to fit in given size.\r\n * @param width\r\n * @param height\r\n * @param preserveAspectRatio\r\n */\n\n }, {\n key: \"resize\",\n value: function resize(width) {\n var height = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : width;\n var preserveAspectRatio = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n this.documentElement.resize(width, height, preserveAspectRatio);\n }\n }], [{\n key: \"from\",\n value: function () {\n var _from = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2(ctx, svg) {\n var options,\n parser,\n svgDocument,\n _args2 = arguments;\n return _regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n options = _args2.length > 2 && _args2[2] !== undefined ? _args2[2] : {};\n parser = new Parser(options);\n _context2.next = 4;\n return parser.parse(svg);\n\n case 4:\n svgDocument = _context2.sent;\n return _context2.abrupt(\"return\", new Canvg(ctx, svgDocument, options));\n\n case 6:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }));\n\n function from(_x, _x2) {\n return _from.apply(this, arguments);\n }\n\n return from;\n }()\n /**\r\n * Create Canvg isntance from SVG source string.\r\n * @param ctx - Rendering context.\r\n * @param svg - SVG source string.\r\n * @param options - Rendering options.\r\n */\n\n }, {\n key: \"fromString\",\n value: function fromString(ctx, svg) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var parser = new Parser(options);\n var svgDocument = parser.parseFromString(svg);\n return new Canvg(ctx, svgDocument, options);\n }\n }]);\n\n return Canvg;\n}();\n\n/**\r\n * Options preset for `OffscreenCanvas`.\r\n * @param config - Preset requirements.\r\n * @param config.DOMParser - XML/HTML parser from string into DOM Document.\r\n */\nfunction offscreen() {\n var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n DOMParserFallback = _ref.DOMParser;\n\n var preset = {\n window: null,\n ignoreAnimation: true,\n ignoreMouse: true,\n DOMParser: DOMParserFallback,\n createCanvas: function createCanvas(width, height) {\n return new OffscreenCanvas(width, height);\n },\n createImage: function createImage(url) {\n return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {\n var response, blob, img;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return fetch(url);\n\n case 2:\n response = _context.sent;\n _context.next = 5;\n return response.blob();\n\n case 5:\n blob = _context.sent;\n _context.next = 8;\n return createImageBitmap(blob);\n\n case 8:\n img = _context.sent;\n return _context.abrupt(\"return\", img);\n\n case 10:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }))();\n }\n };\n\n if (typeof DOMParser !== 'undefined' || typeof DOMParserFallback === 'undefined') {\n Reflect.deleteProperty(preset, 'DOMParser');\n }\n\n return preset;\n}\n\n/**\r\n * Options preset for `node-canvas`.\r\n * @param config - Preset requirements.\r\n * @param config.DOMParser - XML/HTML parser from string into DOM Document.\r\n * @param config.canvas - `node-canvas` exports.\r\n * @param config.fetch - WHATWG-compatible `fetch` function.\r\n */\nfunction node(_ref) {\n var DOMParser = _ref.DOMParser,\n canvas = _ref.canvas,\n fetch = _ref.fetch;\n return {\n window: null,\n ignoreAnimation: true,\n ignoreMouse: true,\n DOMParser: DOMParser,\n fetch: fetch,\n createCanvas: canvas.createCanvas,\n createImage: canvas.loadImage\n };\n}\n\n\n\nvar index = /*#__PURE__*/Object.freeze({\n\t__proto__: null,\n\toffscreen: offscreen,\n\tnode: node\n});\n\nexport default Canvg;\nexport { AElement, AnimateColorElement, AnimateElement, AnimateTransformElement, BoundingBox, CB1, CB2, CB3, CB4, Canvg, CircleElement, ClipPathElement, DefsElement, DescElement, Document, Element, EllipseElement, FeColorMatrixElement, FeCompositeElement, FeDropShadowElement, FeGaussianBlurElement, FeMorphologyElement, FilterElement, Font, FontElement, FontFaceElement, GElement, GlyphElement, GradientElement, ImageElement, LineElement, LinearGradientElement, MarkerElement, MaskElement, Matrix, MissingGlyphElement, Mouse, PSEUDO_ZERO, Parser, PathElement, PathParser, PatternElement, Point, PolygonElement, PolylineElement, Property, QB1, QB2, QB3, RadialGradientElement, RectElement, RenderedElement, Rotate, SVGElement, SVGFontLoader, Scale, Screen, Skew, SkewX, SkewY, StopElement, StyleElement, SymbolElement, TRefElement, TSpanElement, TextElement, TextPathElement, TitleElement, Transform, Translate, UnknownElement, UseElement, ViewPort, compressSpaces, getSelectorSpecificity, normalizeAttributeName, normalizeColor, parseExternalUrl, index as presets, toNumbers, trimLeft, trimRight, vectorMagnitude, vectorsAngle, vectorsRatio };\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZXMuanMiLCJzb3VyY2VzIjpbIi4uL25vZGVfbW9kdWxlcy9yZWdlbmVyYXRvci1ydW50aW1lL3J1bnRpbWUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTQtcHJlc2VudCwgRmFjZWJvb2ssIEluYy5cbiAqXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZSBmb3VuZCBpbiB0aGVcbiAqIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbiAqL1xuXG52YXIgcnVudGltZSA9IChmdW5jdGlvbiAoZXhwb3J0cykge1xuICBcInVzZSBzdHJpY3RcIjtcblxuICB2YXIgT3AgPSBPYmplY3QucHJvdG90eXBlO1xuICB2YXIgaGFzT3duID0gT3AuaGFzT3duUHJvcGVydHk7XG4gIHZhciB1bmRlZmluZWQ7IC8vIE1vcmUgY29tcHJlc3NpYmxlIHRoYW4gdm9pZCAwLlxuICB2YXIgJFN5bWJvbCA9IHR5cGVvZiBTeW1ib2wgPT09IFwiZnVuY3Rpb25cIiA/IFN5bWJvbCA6IHt9O1xuICB2YXIgaXRlcmF0b3JTeW1ib2wgPSAkU3ltYm9sLml0ZXJhdG9yIHx8IFwiQEBpdGVyYXRvclwiO1xuICB2YXIgYXN5bmNJdGVyYXRvclN5bWJvbCA9ICRTeW1ib2wuYXN5bmNJdGVyYXRvciB8fCBcIkBAYXN5bmNJdGVyYXRvclwiO1xuICB2YXIgdG9TdHJpbmdUYWdTeW1ib2wgPSAkU3ltYm9sLnRvU3RyaW5nVGFnIHx8IFwiQEB0b1N0cmluZ1RhZ1wiO1xuXG4gIGZ1bmN0aW9uIHdyYXAoaW5uZXJGbiwgb3V0ZXJGbiwgc2VsZiwgdHJ5TG9jc0xpc3QpIHtcbiAgICAvLyBJZiBvdXRlckZuIHByb3ZpZGVkIGFuZCBvdXRlckZuLnByb3RvdHlwZSBpcyBhIEdlbmVyYXRvciwgdGhlbiBvdXRlckZuLnByb3RvdHlwZSBpbnN0YW5jZW9mIEdlbmVyYXRvci5cbiAgICB2YXIgcHJvdG9HZW5lcmF0b3IgPSBvdXRlckZuICYmIG91dGVyRm4ucHJvdG90eXBlIGluc3RhbmNlb2YgR2VuZXJhdG9yID8gb3V0ZXJGbiA6IEdlbmVyYXRvcjtcbiAgICB2YXIgZ2VuZXJhdG9yID0gT2JqZWN0LmNyZWF0ZShwcm90b0dlbmVyYXRvci5wcm90b3R5cGUpO1xuICAgIHZhciBjb250ZXh0ID0gbmV3IENvbnRleHQodHJ5TG9jc0xpc3QgfHwgW10pO1xuXG4gICAgLy8gVGhlIC5faW52b2tlIG1ldGhvZCB1bmlmaWVzIHRoZSBpbXBsZW1lbnRhdGlvbnMgb2YgdGhlIC5uZXh0LFxuICAgIC8vIC50aHJvdywgYW5kIC5yZXR1cm4gbWV0aG9kcy5cbiAgICBnZW5lcmF0b3IuX2ludm9rZSA9IG1ha2VJbnZva2VNZXRob2QoaW5uZXJGbiwgc2VsZiwgY29udGV4dCk7XG5cbiAgICByZXR1cm4gZ2VuZXJhdG9yO1xuICB9XG4gIGV4cG9ydHMud3JhcCA9IHdyYXA7XG5cbiAgLy8gVHJ5L2NhdGNoIGhlbHBlciB0byBtaW5pbWl6ZSBkZW9wdGltaXphdGlvbnMuIFJldHVybnMgYSBjb21wbGV0aW9uXG4gIC8vIHJlY29yZCBsaWtlIGNvbnRleHQudHJ5RW50cmllc1tpXS5jb21wbGV0aW9uLiBUaGlzIGludGVyZmFjZSBjb3VsZFxuICAvLyBoYXZlIGJlZW4gKGFuZCB3YXMgcHJldmlvdXNseSkgZGVzaWduZWQgdG8gdGFrZSBhIGNsb3N1cmUgdG8gYmVcbiAgLy8gaW52b2tlZCB3aXRob3V0IGFyZ3VtZW50cywgYnV0IGluIGFsbCB0aGUgY2FzZXMgd2UgY2FyZSBhYm91dCB3ZVxuICAvLyBhbHJlYWR5IGhhdmUgYW4gZXhpc3RpbmcgbWV0aG9kIHdlIHdhbnQgdG8gY2FsbCwgc28gdGhlcmUncyBubyBuZWVkXG4gIC8vIHRvIGNyZWF0ZSBhIG5ldyBmdW5jdGlvbiBvYmplY3QuIFdlIGNhbiBldmVuIGdldCBhd2F5IHdpdGggYXNzdW1pbmdcbiAgLy8gdGhlIG1ldGhvZCB0YWtlcyBleGFjdGx5IG9uZSBhcmd1bWVudCwgc2luY2UgdGhhdCBoYXBwZW5zIHRvIGJlIHRydWVcbiAgLy8gaW4gZXZlcnkgY2FzZSwgc28gd2UgZG9uJ3QgaGF2ZSB0byB0b3VjaCB0aGUgYXJndW1lbnRzIG9iamVjdC4gVGhlXG4gIC8vIG9ubHkgYWRkaXRpb25hbCBhbGxvY2F0aW9uIHJlcXVpcmVkIGlzIHRoZSBjb21wbGV0aW9uIHJlY29yZCwgd2hpY2hcbiAgLy8gaGFzIGEgc3RhYmxlIHNoYXBlIGFuZCBzbyBob3BlZnVsbHkgc2hvdWxkIGJlIGNoZWFwIHRvIGFsbG9jYXRlLlxuICBmdW5jdGlvbiB0cnlDYXRjaChmbiwgb2JqLCBhcmcpIHtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIHsgdHlwZTogXCJub3JtYWxcIiwgYXJnOiBmbi5jYWxsKG9iaiwgYXJnKSB9O1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgcmV0dXJuIHsgdHlwZTogXCJ0aHJvd1wiLCBhcmc6IGVyciB9O1xuICAgIH1cbiAgfVxuXG4gIHZhciBHZW5TdGF0ZVN1c3BlbmRlZFN0YXJ0ID0gXCJzdXNwZW5kZWRTdGFydFwiO1xuICB2YXIgR2VuU3RhdGVTdXNwZW5kZWRZaWVsZCA9IFwic3VzcGVuZGVkWWllbGRcIjtcbiAgdmFyIEdlblN0YXRlRXhlY3V0aW5nID0gXCJleGVjdXRpbmdcIjtcbiAgdmFyIEdlblN0YXRlQ29tcGxldGVkID0gXCJjb21wbGV0ZWRcIjtcblxuICAvLyBSZXR1cm5pbmcgdGhpcyBvYmplY3QgZnJvbSB0aGUgaW5uZXJGbiBoYXMgdGhlIHNhbWUgZWZmZWN0IGFzXG4gIC8vIGJyZWFraW5nIG91dCBvZiB0aGUgZGlzcGF0Y2ggc3dpdGNoIHN0YXRlbWVudC5cbiAgdmFyIENvbnRpbnVlU2VudGluZWwgPSB7fTtcblxuICAvLyBEdW1teSBjb25zdHJ1Y3RvciBmdW5jdGlvbnMgdGhhdCB3ZSB1c2UgYXMgdGhlIC5jb25zdHJ1Y3RvciBhbmRcbiAgLy8gLmNvbnN0cnVjdG9yLnByb3RvdHlwZSBwcm9wZXJ0aWVzIGZvciBmdW5jdGlvbnMgdGhhdCByZXR1cm4gR2VuZXJhdG9yXG4gIC8vIG9iamVjdHMuIEZvciBmdWxsIHNwZWMgY29tcGxpYW5jZSwgeW91IG1heSB3aXNoIHRvIGNvbmZpZ3VyZSB5b3VyXG4gIC8vIG1pbmlmaWVyIG5vdCB0byBtYW5nbGUgdGhlIG5hbWVzIG9mIHRoZXNlIHR3byBmdW5jdGlvbnMuXG4gIGZ1bmN0aW9uIEdlbmVyYXRvcigpIHt9XG4gIGZ1bmN0aW9uIEdlbmVyYXRvckZ1bmN0aW9uKCkge31cbiAgZnVuY3Rpb24gR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGUoKSB7fVxuXG4gIC8vIFRoaXMgaXMgYSBwb2x5ZmlsbCBmb3IgJUl0ZXJhdG9yUHJvdG90eXBlJSBmb3IgZW52aXJvbm1lbnRzIHRoYXRcbiAgLy8gZG9uJ3QgbmF0aXZlbHkgc3VwcG9ydCBpdC5cbiAgdmFyIEl0ZXJhdG9yUHJvdG90eXBlID0ge307XG4gIEl0ZXJhdG9yUHJvdG90eXBlW2l0ZXJhdG9yU3ltYm9sXSA9IGZ1bmN0aW9uICgpIHtcbiAgICByZXR1cm4gdGhpcztcbiAgfTtcblxuICB2YXIgZ2V0UHJvdG8gPSBPYmplY3QuZ2V0UHJvdG90eXBlT2Y7XG4gIHZhciBOYXRpdmVJdGVyYXRvclByb3RvdHlwZSA9IGdldFByb3RvICYmIGdldFByb3RvKGdldFByb3RvKHZhbHVlcyhbXSkpKTtcbiAgaWYgKE5hdGl2ZUl0ZXJhdG9yUHJvdG90eXBlICYmXG4gICAgICBOYXRpdmVJdGVyYXRvclByb3RvdHlwZSAhPT0gT3AgJiZcbiAgICAgIGhhc093bi5jYWxsKE5hdGl2ZUl0ZXJhdG9yUHJvdG90eXBlLCBpdGVyYXRvclN5bWJvbCkpIHtcbiAgICAvLyBUaGlzIGVudmlyb25tZW50IGhhcyBhIG5hdGl2ZSAlSXRlcmF0b3JQcm90b3R5cGUlOyB1c2UgaXQgaW5zdGVhZFxuICAgIC8vIG9mIHRoZSBwb2x5ZmlsbC5cbiAgICBJdGVyYXRvclByb3RvdHlwZSA9IE5hdGl2ZUl0ZXJhdG9yUHJvdG90eXBlO1xuICB9XG5cbiAgdmFyIEdwID0gR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGUucHJvdG90eXBlID1cbiAgICBHZW5lcmF0b3IucHJvdG90eXBlID0gT2JqZWN0LmNyZWF0ZShJdGVyYXRvclByb3RvdHlwZSk7XG4gIEdlbmVyYXRvckZ1bmN0aW9uLnByb3RvdHlwZSA9IEdwLmNvbnN0cnVjdG9yID0gR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGU7XG4gIEdlbmVyYXRvckZ1bmN0aW9uUHJvdG90eXBlLmNvbnN0cnVjdG9yID0gR2VuZXJhdG9yRnVuY3Rpb247XG4gIEdlbmVyYXRvckZ1bmN0aW9uUHJvdG90eXBlW3RvU3RyaW5nVGFnU3ltYm9sXSA9XG4gICAgR2VuZXJhdG9yRnVuY3Rpb24uZGlzcGxheU5hbWUgPSBcIkdlbmVyYXRvckZ1bmN0aW9uXCI7XG5cbiAgLy8gSGVscGVyIGZvciBkZWZpbmluZyB0aGUgLm5leHQsIC50aHJvdywgYW5kIC5yZXR1cm4gbWV0aG9kcyBvZiB0aGVcbiAgLy8gSXRlcmF0b3IgaW50ZXJmYWNlIGluIHRlcm1zIG9mIGEgc2luZ2xlIC5faW52b2tlIG1ldGhvZC5cbiAgZnVuY3Rpb24gZGVmaW5lSXRlcmF0b3JNZXRob2RzKHByb3RvdHlwZSkge1xuICAgIFtcIm5leHRcIiwgXCJ0aHJvd1wiLCBcInJldHVyblwiXS5mb3JFYWNoKGZ1bmN0aW9uKG1ldGhvZCkge1xuICAgICAgcHJvdG90eXBlW21ldGhvZF0gPSBmdW5jdGlvbihhcmcpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2ludm9rZShtZXRob2QsIGFyZyk7XG4gICAgICB9O1xuICAgIH0pO1xuICB9XG5cbiAgZXhwb3J0cy5pc0dlbmVyYXRvckZ1bmN0aW9uID0gZnVuY3Rpb24oZ2VuRnVuKSB7XG4gICAgdmFyIGN0b3IgPSB0eXBlb2YgZ2VuRnVuID09PSBcImZ1bmN0aW9uXCIgJiYgZ2VuRnVuLmNvbnN0cnVjdG9yO1xuICAgIHJldHVybiBjdG9yXG4gICAgICA/IGN0b3IgPT09IEdlbmVyYXRvckZ1bmN0aW9uIHx8XG4gICAgICAgIC8vIEZvciB0aGUgbmF0aXZlIEdlbmVyYXRvckZ1bmN0aW9uIGNvbnN0cnVjdG9yLCB0aGUgYmVzdCB3ZSBjYW5cbiAgICAgICAgLy8gZG8gaXMgdG8gY2hlY2sgaXRzIC5uYW1lIHByb3BlcnR5LlxuICAgICAgICAoY3Rvci5kaXNwbGF5TmFtZSB8fCBjdG9yLm5hbWUpID09PSBcIkdlbmVyYXRvckZ1bmN0aW9uXCJcbiAgICAgIDogZmFsc2U7XG4gIH07XG5cbiAgZXhwb3J0cy5tYXJrID0gZnVuY3Rpb24oZ2VuRnVuKSB7XG4gICAgaWYgKE9iamVjdC5zZXRQcm90b3R5cGVPZikge1xuICAgICAgT2JqZWN0LnNldFByb3RvdHlwZU9mKGdlbkZ1biwgR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGUpO1xuICAgIH0gZWxzZSB7XG4gICAgICBnZW5GdW4uX19wcm90b19fID0gR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGU7XG4gICAgICBpZiAoISh0b1N0cmluZ1RhZ1N5bWJvbCBpbiBnZW5GdW4pKSB7XG4gICAgICAgIGdlbkZ1blt0b1N0cmluZ1RhZ1N5bWJvbF0gPSBcIkdlbmVyYXRvckZ1bmN0aW9uXCI7XG4gICAgICB9XG4gICAgfVxuICAgIGdlbkZ1bi5wcm90b3R5cGUgPSBPYmplY3QuY3JlYXRlKEdwKTtcbiAgICByZXR1cm4gZ2VuRnVuO1xuICB9O1xuXG4gIC8vIFdpdGhpbiB0aGUgYm9keSBvZiBhbnkgYXN5bmMgZnVuY3Rpb24sIGBhd2FpdCB4YCBpcyB0cmFuc2Zvcm1lZCB0b1xuICAvLyBgeWllbGQgcmVnZW5lcmF0b3JSdW50aW1lLmF3cmFwKHgpYCwgc28gdGhhdCB0aGUgcnVudGltZSBjYW4gdGVzdFxuICAvLyBgaGFzT3duLmNhbGwodmFsdWUsIFwiX19hd2FpdFwiKWAgdG8gZGV0ZXJtaW5lIGlmIHRoZSB5aWVsZGVkIHZhbHVlIGlzXG4gIC8vIG1lYW50IHRvIGJlIGF3YWl0ZWQuXG4gIGV4cG9ydHMuYXdyYXAgPSBmdW5jdGlvbihhcmcpIHtcbiAgICByZXR1cm4geyBfX2F3YWl0OiBhcmcgfTtcbiAgfTtcblxuICBmdW5jdGlvbiBBc3luY0l0ZXJhdG9yKGdlbmVyYXRvciwgUHJvbWlzZUltcGwpIHtcbiAgICBmdW5jdGlvbiBpbnZva2UobWV0aG9kLCBhcmcsIHJlc29sdmUsIHJlamVjdCkge1xuICAgICAgdmFyIHJlY29yZCA9IHRyeUNhdGNoKGdlbmVyYXRvclttZXRob2RdLCBnZW5lcmF0b3IsIGFyZyk7XG4gICAgICBpZiAocmVjb3JkLnR5cGUgPT09IFwidGhyb3dcIikge1xuICAgICAgICByZWplY3QocmVjb3JkLmFyZyk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB2YXIgcmVzdWx0ID0gcmVjb3JkLmFyZztcbiAgICAgICAgdmFyIHZhbHVlID0gcmVzdWx0LnZhbHVlO1xuICAgICAgICBpZiAodmFsdWUgJiZcbiAgICAgICAgICAgIHR5cGVvZiB2YWx1ZSA9PT0gXCJvYmplY3RcIiAmJlxuICAgICAgICAgICAgaGFzT3duLmNhbGwodmFsdWUsIFwiX19hd2FpdFwiKSkge1xuICAgICAgICAgIHJldHVybiBQcm9taXNlSW1wbC5yZXNvbHZlKHZhbHVlLl9fYXdhaXQpLnRoZW4oZnVuY3Rpb24odmFsdWUpIHtcbiAgICAgICAgICAgIGludm9rZShcIm5leHRcIiwgdmFsdWUsIHJlc29sdmUsIHJlamVjdCk7XG4gICAgICAgICAgfSwgZnVuY3Rpb24oZXJyKSB7XG4gICAgICAgICAgICBpbnZva2UoXCJ0aHJvd1wiLCBlcnIsIHJlc29sdmUsIHJlamVjdCk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gUHJvbWlzZUltcGwucmVzb2x2ZSh2YWx1ZSkudGhlbihmdW5jdGlvbih1bndyYXBwZWQpIHtcbiAgICAgICAgICAvLyBXaGVuIGEgeWllbGRlZCBQcm9taXNlIGlzIHJlc29sdmVkLCBpdHMgZmluYWwgdmFsdWUgYmVjb21lc1xuICAgICAgICAgIC8vIHRoZSAudmFsdWUgb2YgdGhlIFByb21pc2U8e3ZhbHVlLGRvbmV9PiByZXN1bHQgZm9yIHRoZVxuICAgICAgICAgIC8vIGN1cnJlbnQgaXRlcmF0aW9uLlxuICAgICAgICAgIHJlc3VsdC52YWx1ZSA9IHVud3JhcHBlZDtcbiAgICAgICAgICByZXNvbHZlKHJlc3VsdCk7XG4gICAgICAgIH0sIGZ1bmN0aW9uKGVycm9yKSB7XG4gICAgICAgICAgLy8gSWYgYSByZWplY3RlZCBQcm9taXNlIHdhcyB5aWVsZGVkLCB0aHJvdyB0aGUgcmVqZWN0aW9uIGJhY2tcbiAgICAgICAgICAvLyBpbnRvIHRoZSBhc3luYyBnZW5lcmF0b3IgZnVuY3Rpb24gc28gaXQgY2FuIGJlIGhhbmRsZWQgdGhlcmUuXG4gICAgICAgICAgcmV0dXJuIGludm9rZShcInRocm93XCIsIGVycm9yLCByZXNvbHZlLCByZWplY3QpO1xuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB2YXIgcHJldmlvdXNQcm9taXNlO1xuXG4gICAgZnVuY3Rpb24gZW5xdWV1ZShtZXRob2QsIGFyZykge1xuICAgICAgZnVuY3Rpb24gY2FsbEludm9rZVdpdGhNZXRob2RBbmRBcmcoKSB7XG4gICAgICAgIHJldHVybiBuZXcgUHJvbWlzZUltcGwoZnVuY3Rpb24ocmVzb2x2ZSwgcmVqZWN0KSB7XG4gICAgICAgICAgaW52b2tlKG1ldGhvZCwgYXJnLCByZXNvbHZlLCByZWplY3QpO1xuICAgICAgICB9KTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHByZXZpb3VzUHJvbWlzZSA9XG4gICAgICAgIC8vIElmIGVucXVldWUgaGFzIGJlZW4gY2FsbGVkIGJlZm9yZSwgdGhlbiB3ZSB3YW50IHRvIHdhaXQgdW50aWxcbiAgICAgICAgLy8gYWxsIHByZXZpb3VzIFByb21pc2VzIGhhdmUgYmVlbiByZXNvbHZlZCBiZWZvcmUgY2FsbGluZyBpbnZva2UsXG4gICAgICAgIC8vIHNvIHRoYXQgcmVzdWx0cyBhcmUgYWx3YXlzIGRlbGl2ZXJlZCBpbiB0aGUgY29ycmVjdCBvcmRlci4gSWZcbiAgICAgICAgLy8gZW5xdWV1ZSBoYXMgbm90IGJlZW4gY2FsbGVkIGJlZm9yZSwgdGhlbiBpdCBpcyBpbXBvcnRhbnQgdG9cbiAgICAgICAgLy8gY2FsbCBpbnZva2UgaW1tZWRpYXRlbHksIHdpdGhvdXQgd2FpdGluZyBvbiBhIGNhbGxiYWNrIHRvIGZpcmUsXG4gICAgICAgIC8vIHNvIHRoYXQgdGhlIGFzeW5jIGdlbmVyYXRvciBmdW5jdGlvbiBoYXMgdGhlIG9wcG9ydHVuaXR5IHRvIGRvXG4gICAgICAgIC8vIGFueSBuZWNlc3Nhcnkgc2V0dXAgaW4gYSBwcmVkaWN0YWJsZSB3YXkuIFRoaXMgcHJlZGljdGFiaWxpdHlcbiAgICAgICAgLy8gaXMgd2h5IHRoZSBQcm9taXNlIGNvbnN0cnVjdG9yIHN5bmNocm9ub3VzbHkgaW52b2tlcyBpdHNcbiAgICAgICAgLy8gZXhlY3V0b3IgY2FsbGJhY2ssIGFuZCB3aHkgYXN5bmMgZnVuY3Rpb25zIHN5bmNocm9ub3VzbHlcbiAgICAgICAgLy8gZXhlY3V0ZSBjb2RlIGJlZm9yZSB0aGUgZmlyc3QgYXdhaXQuIFNpbmNlIHdlIGltcGxlbWVudCBzaW1wbGVcbiAgICAgICAgLy8gYXN5bmMgZnVuY3Rpb25zIGluIHRlcm1zIG9mIGFzeW5jIGdlbmVyYXRvcnMsIGl0IGlzIGVzcGVjaWFsbHlcbiAgICAgICAgLy8gaW1wb3J0YW50IHRvIGdldCB0aGlzIHJpZ2h0LCBldmVuIHRob3VnaCBpdCByZXF1aXJlcyBjYXJlLlxuICAgICAgICBwcmV2aW91c1Byb21pc2UgPyBwcmV2aW91c1Byb21pc2UudGhlbihcbiAgICAgICAgICBjYWxsSW52b2tlV2l0aE1ldGhvZEFuZEFyZyxcbiAgICAgICAgICAvLyBBdm9pZCBwcm9wYWdhdGluZyBmYWlsdXJlcyB0byBQcm9taXNlcyByZXR1cm5lZCBieSBsYXRlclxuICAgICAgICAgIC8vIGludm9jYXRpb25zIG9mIHRoZSBpdGVyYXRvci5cbiAgICAgICAgICBjYWxsSW52b2tlV2l0aE1ldGhvZEFuZEFyZ1xuICAgICAgICApIDogY2FsbEludm9rZVdpdGhNZXRob2RBbmRBcmcoKTtcbiAgICB9XG5cbiAgICAvLyBEZWZpbmUgdGhlIHVuaWZpZWQgaGVscGVyIG1ldGhvZCB0aGF0IGlzIHVzZWQgdG8gaW1wbGVtZW50IC5uZXh0LFxuICAgIC8vIC50aHJvdywgYW5kIC5yZXR1cm4gKHNlZSBkZWZpbmVJdGVyYXRvck1ldGhvZHMpLlxuICAgIHRoaXMuX2ludm9rZSA9IGVucXVldWU7XG4gIH1cblxuICBkZWZpbmVJdGVyYXRvck1ldGhvZHMoQXN5bmNJdGVyYXRvci5wcm90b3R5cGUpO1xuICBBc3luY0l0ZXJhdG9yLnByb3RvdHlwZVthc3luY0l0ZXJhdG9yU3ltYm9sXSA9IGZ1bmN0aW9uICgpIHtcbiAgICByZXR1cm4gdGhpcztcbiAgfTtcbiAgZXhwb3J0cy5Bc3luY0l0ZXJhdG9yID0gQXN5bmNJdGVyYXRvcjtcblxuICAvLyBOb3RlIHRoYXQgc2ltcGxlIGFzeW5jIGZ1bmN0aW9ucyBhcmUgaW1wbGVtZW50ZWQgb24gdG9wIG9mXG4gIC8vIEFzeW5jSXRlcmF0b3Igb2JqZWN0czsgdGhleSBqdXN0IHJldHVybiBhIFByb21pc2UgZm9yIHRoZSB2YWx1ZSBvZlxuICAvLyB0aGUgZmluYWwgcmVzdWx0IHByb2R1Y2VkIGJ5IHRoZSBpdGVyYXRvci5cbiAgZXhwb3J0cy5hc3luYyA9IGZ1bmN0aW9uKGlubmVyRm4sIG91dGVyRm4sIHNlbGYsIHRyeUxvY3NMaXN0LCBQcm9taXNlSW1wbCkge1xuICAgIGlmIChQcm9taXNlSW1wbCA9PT0gdm9pZCAwKSBQcm9taXNlSW1wbCA9IFByb21pc2U7XG5cbiAgICB2YXIgaXRlciA9IG5ldyBBc3luY0l0ZXJhdG9yKFxuICAgICAgd3JhcChpbm5lckZuLCBvdXRlckZuLCBzZWxmLCB0cnlMb2NzTGlzdCksXG4gICAgICBQcm9taXNlSW1wbFxuICAgICk7XG5cbiAgICByZXR1cm4gZXhwb3J0cy5pc0dlbmVyYXRvckZ1bmN0aW9uKG91dGVyRm4pXG4gICAgICA/IGl0ZXIgLy8gSWYgb3V0ZXJGbiBpcyBhIGdlbmVyYXRvciwgcmV0dXJuIHRoZSBmdWxsIGl0ZXJhdG9yLlxuICAgICAgOiBpdGVyLm5leHQoKS50aGVuKGZ1bmN0aW9uKHJlc3VsdCkge1xuICAgICAgICAgIHJldHVybiByZXN1bHQuZG9uZSA/IHJlc3VsdC52YWx1ZSA6IGl0ZXIubmV4dCgpO1xuICAgICAgICB9KTtcbiAgfTtcblxuICBmdW5jdGlvbiBtYWtlSW52b2tlTWV0aG9kKGlubmVyRm4sIHNlbGYsIGNvbnRleHQpIHtcbiAgICB2YXIgc3RhdGUgPSBHZW5TdGF0ZVN1c3BlbmRlZFN0YXJ0O1xuXG4gICAgcmV0dXJuIGZ1bmN0aW9uIGludm9rZShtZXRob2QsIGFyZykge1xuICAgICAgaWYgKHN0YXRlID09PSBHZW5TdGF0ZUV4ZWN1dGluZykge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJHZW5lcmF0b3IgaXMgYWxyZWFkeSBydW5uaW5nXCIpO1xuICAgICAgfVxuXG4gICAgICBpZiAoc3RhdGUgPT09IEdlblN0YXRlQ29tcGxldGVkKSB7XG4gICAgICAgIGlmIChtZXRob2QgPT09IFwidGhyb3dcIikge1xuICAgICAgICAgIHRocm93IGFyZztcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEJlIGZvcmdpdmluZywgcGVyIDI1LjMuMy4zLjMgb2YgdGhlIHNwZWM6XG4gICAgICAgIC8vIGh0dHBzOi8vcGVvcGxlLm1vemlsbGEub3JnL35qb3JlbmRvcmZmL2VzNi1kcmFmdC5odG1sI3NlYy1nZW5lcmF0b3JyZXN1bWVcbiAgICAgICAgcmV0dXJuIGRvbmVSZXN1bHQoKTtcbiAgICAgIH1cblxuICAgICAgY29udGV4dC5tZXRob2QgPSBtZXRob2Q7XG4gICAgICBjb250ZXh0LmFyZyA9IGFyZztcblxuICAgICAgd2hpbGUgKHRydWUpIHtcbiAgICAgICAgdmFyIGRlbGVnYXRlID0gY29udGV4dC5kZWxlZ2F0ZTtcbiAgICAgICAgaWYgKGRlbGVnYXRlKSB7XG4gICAgICAgICAgdmFyIGRlbGVnYXRlUmVzdWx0ID0gbWF5YmVJbnZva2VEZWxlZ2F0ZShkZWxlZ2F0ZSwgY29udGV4dCk7XG4gICAgICAgICAgaWYgKGRlbGVnYXRlUmVzdWx0KSB7XG4gICAgICAgICAgICBpZiAoZGVsZWdhdGVSZXN1bHQgPT09IENvbnRpbnVlU2VudGluZWwpIGNvbnRpbnVlO1xuICAgICAgICAgICAgcmV0dXJuIGRlbGVnYXRlUmVzdWx0O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChjb250ZXh0Lm1ldGhvZCA9PT0gXCJuZXh0XCIpIHtcbiAgICAgICAgICAvLyBTZXR0aW5nIGNvbnRleHQuX3NlbnQgZm9yIGxlZ2FjeSBzdXBwb3J0IG9mIEJhYmVsJ3NcbiAgICAgICAgICAvLyBmdW5jdGlvbi5zZW50IGltcGxlbWVudGF0aW9uLlxuICAgICAgICAgIGNvbnRleHQuc2VudCA9IGNvbnRleHQuX3NlbnQgPSBjb250ZXh0LmFyZztcblxuICAgICAgICB9IGVsc2UgaWYgKGNvbnRleHQubWV0aG9kID09PSBcInRocm93XCIpIHtcbiAgICAgICAgICBpZiAoc3RhdGUgPT09IEdlblN0YXRlU3VzcGVuZGVkU3RhcnQpIHtcbiAgICAgICAgICAgIHN0YXRlID0gR2VuU3RhdGVDb21wbGV0ZWQ7XG4gICAgICAgICAgICB0aHJvdyBjb250ZXh0LmFyZztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBjb250ZXh0LmRpc3BhdGNoRXhjZXB0aW9uKGNvbnRleHQuYXJnKTtcblxuICAgICAgICB9IGVsc2UgaWYgKGNvbnRleHQubWV0aG9kID09PSBcInJldHVyblwiKSB7XG4gICAgICAgICAgY29udGV4dC5hYnJ1cHQoXCJyZXR1cm5cIiwgY29udGV4dC5hcmcpO1xuICAgICAgICB9XG5cbiAgICAgICAgc3RhdGUgPSBHZW5TdGF0ZUV4ZWN1dGluZztcblxuICAgICAgICB2YXIgcmVjb3JkID0gdHJ5Q2F0Y2goaW5uZXJGbiwgc2VsZiwgY29udGV4dCk7XG4gICAgICAgIGlmIChyZWNvcmQudHlwZSA9PT0gXCJub3JtYWxcIikge1xuICAgICAgICAgIC8vIElmIGFuIGV4Y2VwdGlvbiBpcyB0aHJvd24gZnJvbSBpbm5lckZuLCB3ZSBsZWF2ZSBzdGF0ZSA9PT1cbiAgICAgICAgICAvLyBHZW5TdGF0ZUV4ZWN1dGluZyBhbmQgbG9vcCBiYWNrIGZvciBhbm90aGVyIGludm9jYXRpb24uXG4gICAgICAgICAgc3RhdGUgPSBjb250ZXh0LmRvbmVcbiAgICAgICAgICAgID8gR2VuU3RhdGVDb21wbGV0ZWRcbiAgICAgICAgICAgIDogR2VuU3RhdGVTdXNwZW5kZWRZaWVsZDtcblxuICAgICAgICAgIGlmIChyZWNvcmQuYXJnID09PSBDb250aW51ZVNlbnRpbmVsKSB7XG4gICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgdmFsdWU6IHJlY29yZC5hcmcsXG4gICAgICAgICAgICBkb25lOiBjb250ZXh0LmRvbmVcbiAgICAgICAgICB9O1xuXG4gICAgICAgIH0gZWxzZSBpZiAocmVjb3JkLnR5cGUgPT09IFwidGhyb3dcIikge1xuICAgICAgICAgIHN0YXRlID0gR2VuU3RhdGVDb21wbGV0ZWQ7XG4gICAgICAgICAgLy8gRGlzcGF0Y2ggdGhlIGV4Y2VwdGlvbiBieSBsb29waW5nIGJhY2sgYXJvdW5kIHRvIHRoZVxuICAgICAgICAgIC8vIGNvbnRleHQuZGlzcGF0Y2hFeGNlcHRpb24oY29udGV4dC5hcmcpIGNhbGwgYWJvdmUuXG4gICAgICAgICAgY29udGV4dC5tZXRob2QgPSBcInRocm93XCI7XG4gICAgICAgICAgY29udGV4dC5hcmcgPSByZWNvcmQuYXJnO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfTtcbiAgfVxuXG4gIC8vIENhbGwgZGVsZWdhdGUuaXRlcmF0b3JbY29udGV4dC5tZXRob2RdKGNvbnRleHQuYXJnKSBhbmQgaGFuZGxlIHRoZVxuICAvLyByZXN1bHQsIGVpdGhlciBieSByZXR1cm5pbmcgYSB7IHZhbHVlLCBkb25lIH0gcmVzdWx0IGZyb20gdGhlXG4gIC8vIGRlbGVnYXRlIGl0ZXJhdG9yLCBvciBieSBtb2RpZnlpbmcgY29udGV4dC5tZXRob2QgYW5kIGNvbnRleHQuYXJnLFxuICAvLyBzZXR0aW5nIGNvbnRleHQuZGVsZWdhdGUgdG8gbnVsbCwgYW5kIHJldHVybmluZyB0aGUgQ29udGludWVTZW50aW5lbC5cbiAgZnVuY3Rpb24gbWF5YmVJbnZva2VEZWxlZ2F0ZShkZWxlZ2F0ZSwgY29udGV4dCkge1xuICAgIHZhciBtZXRob2QgPSBkZWxlZ2F0ZS5pdGVyYXRvcltjb250ZXh0Lm1ldGhvZF07XG4gICAgaWYgKG1ldGhvZCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAvLyBBIC50aHJvdyBvciAucmV0dXJuIHdoZW4gdGhlIGRlbGVnYXRlIGl0ZXJhdG9yIGhhcyBubyAudGhyb3dcbiAgICAgIC8vIG1ldGhvZCBhbHdheXMgdGVybWluYXRlcyB0aGUgeWllbGQqIGxvb3AuXG4gICAgICBjb250ZXh0LmRlbGVnYXRlID0gbnVsbDtcblxuICAgICAgaWYgKGNvbnRleHQubWV0aG9kID09PSBcInRocm93XCIpIHtcbiAgICAgICAgLy8gTm90ZTogW1wicmV0dXJuXCJdIG11c3QgYmUgdXNlZCBmb3IgRVMzIHBhcnNpbmcgY29tcGF0aWJpbGl0eS5cbiAgICAgICAgaWYgKGRlbGVnYXRlLml0ZXJhdG9yW1wicmV0dXJuXCJdKSB7XG4gICAgICAgICAgLy8gSWYgdGhlIGRlbGVnYXRlIGl0ZXJhdG9yIGhhcyBhIHJldHVybiBtZXRob2QsIGdpdmUgaXQgYVxuICAgICAgICAgIC8vIGNoYW5jZSB0byBjbGVhbiB1cC5cbiAgICAgICAgICBjb250ZXh0Lm1ldGhvZCA9IFwicmV0dXJuXCI7XG4gICAgICAgICAgY29udGV4dC5hcmcgPSB1bmRlZmluZWQ7XG4gICAgICAgICAgbWF5YmVJbnZva2VEZWxlZ2F0ZShkZWxlZ2F0ZSwgY29udGV4dCk7XG5cbiAgICAgICAgICBpZiAoY29udGV4dC5tZXRob2QgPT09IFwidGhyb3dcIikge1xuICAgICAgICAgICAgLy8gSWYgbWF5YmVJbnZva2VEZWxlZ2F0ZShjb250ZXh0KSBjaGFuZ2VkIGNvbnRleHQubWV0aG9kIGZyb21cbiAgICAgICAgICAgIC8vIFwicmV0dXJuXCIgdG8gXCJ0aHJvd1wiLCBsZXQgdGhhdCBvdmVycmlkZSB0aGUgVHlwZUVycm9yIGJlbG93LlxuICAgICAgICAgICAgcmV0dXJuIENvbnRpbnVlU2VudGluZWw7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgY29udGV4dC5tZXRob2QgPSBcInRocm93XCI7XG4gICAgICAgIGNvbnRleHQuYXJnID0gbmV3IFR5cGVFcnJvcihcbiAgICAgICAgICBcIlRoZSBpdGVyYXRvciBkb2VzIG5vdCBwcm92aWRlIGEgJ3Rocm93JyBtZXRob2RcIik7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBDb250aW51ZVNlbnRpbmVsO1xuICAgIH1cblxuICAgIHZhciByZWNvcmQgPSB0cnlDYXRjaChtZXRob2QsIGRlbGVnYXRlLml0ZXJhdG9yLCBjb250ZXh0LmFyZyk7XG5cbiAgICBpZiAocmVjb3JkLnR5cGUgPT09IFwidGhyb3dcIikge1xuICAgICAgY29udGV4dC5tZXRob2QgPSBcInRocm93XCI7XG4gICAgICBjb250ZXh0LmFyZyA9IHJlY29yZC5hcmc7XG4gICAgICBjb250ZXh0LmRlbGVnYXRlID0gbnVsbDtcbiAgICAgIHJldHVybiBDb250aW51ZVNlbnRpbmVsO1xuICAgIH1cblxuICAgIHZhciBpbmZvID0gcmVjb3JkLmFyZztcblxuICAgIGlmICghIGluZm8pIHtcbiAgICAgIGNvbnRleHQubWV0aG9kID0gXCJ0aHJvd1wiO1xuICAgICAgY29udGV4dC5hcmcgPSBuZXcgVHlwZUVycm9yKFwiaXRlcmF0b3IgcmVzdWx0IGlzIG5vdCBhbiBvYmplY3RcIik7XG4gICAgICBjb250ZXh0LmRlbGVnYXRlID0gbnVsbDtcbiAgICAgIHJldHVybiBDb250aW51ZVNlbnRpbmVsO1xuICAgIH1cblxuICAgIGlmIChpbmZvLmRvbmUpIHtcbiAgICAgIC8vIEFzc2lnbiB0aGUgcmVzdWx0IG9mIHRoZSBmaW5pc2hlZCBkZWxlZ2F0ZSB0byB0aGUgdGVtcG9yYXJ5XG4gICAgICAvLyB2YXJpYWJsZSBzcGVjaWZpZWQgYnkgZGVsZWdhdGUucmVzdWx0TmFtZSAoc2VlIGRlbGVnYXRlWWllbGQpLlxuICAgICAgY29udGV4dFtkZWxlZ2F0ZS5yZXN1bHROYW1lXSA9IGluZm8udmFsdWU7XG5cbiAgICAgIC8vIFJlc3VtZSBleGVjdXRpb24gYXQgdGhlIGRlc2lyZWQgbG9jYXRpb24gKHNlZSBkZWxlZ2F0ZVlpZWxkKS5cbiAgICAgIGNvbnRleHQubmV4dCA9IGRlbGVnYXRlLm5leHRMb2M7XG5cbiAgICAgIC8vIElmIGNvbnRleHQubWV0aG9kIHdhcyBcInRocm93XCIgYnV0IHRoZSBkZWxlZ2F0ZSBoYW5kbGVkIHRoZVxuICAgICAgLy8gZXhjZXB0aW9uLCBsZXQgdGhlIG91dGVyIGdlbmVyYXRvciBwcm9jZWVkIG5vcm1hbGx5LiBJZlxuICAgICAgLy8gY29udGV4dC5tZXRob2Qgd2FzIFwibmV4dFwiLCBmb3JnZXQgY29udGV4dC5hcmcgc2luY2UgaXQgaGFzIGJlZW5cbiAgICAgIC8vIFwiY29uc3VtZWRcIiBieSB0aGUgZGVsZWdhdGUgaXRlcmF0b3IuIElmIGNvbnRleHQubWV0aG9kIHdhc1xuICAgICAgLy8gXCJyZXR1cm5cIiwgYWxsb3cgdGhlIG9yaWdpbmFsIC5yZXR1cm4gY2FsbCB0byBjb250aW51ZSBpbiB0aGVcbiAgICAgIC8vIG91dGVyIGdlbmVyYXRvci5cbiAgICAgIGlmIChjb250ZXh0Lm1ldGhvZCAhPT0gXCJyZXR1cm5cIikge1xuICAgICAgICBjb250ZXh0Lm1ldGhvZCA9IFwibmV4dFwiO1xuICAgICAgICBjb250ZXh0LmFyZyA9IHVuZGVmaW5lZDtcbiAgICAgIH1cblxuICAgIH0gZWxzZSB7XG4gICAgICAvLyBSZS15aWVsZCB0aGUgcmVzdWx0IHJldHVybmVkIGJ5IHRoZSBkZWxlZ2F0ZSBtZXRob2QuXG4gICAgICByZXR1cm4gaW5mbztcbiAgICB9XG5cbiAgICAvLyBUaGUgZGVsZWdhdGUgaXRlcmF0b3IgaXMgZmluaXNoZWQsIHNvIGZvcmdldCBpdCBhbmQgY29udGludWUgd2l0aFxuICAgIC8vIHRoZSBvdXRlciBnZW5lcmF0b3IuXG4gICAgY29udGV4dC5kZWxlZ2F0ZSA9IG51bGw7XG4gICAgcmV0dXJuIENvbnRpbnVlU2VudGluZWw7XG4gIH1cblxuICAvLyBEZWZpbmUgR2VuZXJhdG9yLnByb3RvdHlwZS57bmV4dCx0aHJvdyxyZXR1cm59IGluIHRlcm1zIG9mIHRoZVxuICAvLyB1bmlmaWVkIC5faW52b2tlIGhlbHBlciBtZXRob2QuXG4gIGRlZmluZUl0ZXJhdG9yTWV0aG9kcyhHcCk7XG5cbiAgR3BbdG9TdHJpbmdUYWdTeW1ib2xdID0gXCJHZW5lcmF0b3JcIjtcblxuICAvLyBBIEdlbmVyYXRvciBzaG91bGQgYWx3YXlzIHJldHVybiBpdHNlbGYgYXMgdGhlIGl0ZXJhdG9yIG9iamVjdCB3aGVuIHRoZVxuICAvLyBAQGl0ZXJhdG9yIGZ1bmN0aW9uIGlzIGNhbGxlZCBvbiBpdC4gU29tZSBicm93c2VycycgaW1wbGVtZW50YXRpb25zIG9mIHRoZVxuICAvLyBpdGVyYXRvciBwcm90b3R5cGUgY2hhaW4gaW5jb3JyZWN0bHkgaW1wbGVtZW50IHRoaXMsIGNhdXNpbmcgdGhlIEdlbmVyYXRvclxuICAvLyBvYmplY3QgdG8gbm90IGJlIHJldHVybmVkIGZyb20gdGhpcyBjYWxsLiBUaGlzIGVuc3VyZXMgdGhhdCBkb2Vzbid0IGhhcHBlbi5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9mYWNlYm9vay9yZWdlbmVyYXRvci9pc3N1ZXMvMjc0IGZvciBtb3JlIGRldGFpbHMuXG4gIEdwW2l0ZXJhdG9yU3ltYm9sXSA9IGZ1bmN0aW9uKCkge1xuICAgIHJldHVybiB0aGlzO1xuICB9O1xuXG4gIEdwLnRvU3RyaW5nID0gZnVuY3Rpb24oKSB7XG4gICAgcmV0dXJuIFwiW29iamVjdCBHZW5lcmF0b3JdXCI7XG4gIH07XG5cbiAgZnVuY3Rpb24gcHVzaFRyeUVudHJ5KGxvY3MpIHtcbiAgICB2YXIgZW50cnkgPSB7IHRyeUxvYzogbG9jc1swXSB9O1xuXG4gICAgaWYgKDEgaW4gbG9jcykge1xuICAgICAgZW50cnkuY2F0Y2hMb2MgPSBsb2NzWzFdO1xuICAgIH1cblxuICAgIGlmICgyIGluIGxvY3MpIHtcbiAgICAgIGVudHJ5LmZpbmFsbHlMb2MgPSBsb2NzWzJdO1xuICAgICAgZW50cnkuYWZ0ZXJMb2MgPSBsb2NzWzNdO1xuICAgIH1cblxuICAgIHRoaXMudHJ5RW50cmllcy5wdXNoKGVudHJ5KTtcbiAgfVxuXG4gIGZ1bmN0aW9uIHJlc2V0VHJ5RW50cnkoZW50cnkpIHtcbiAgICB2YXIgcmVjb3JkID0gZW50cnkuY29tcGxldGlvbiB8fCB7fTtcbiAgICByZWNvcmQudHlwZSA9IFwibm9ybWFsXCI7XG4gICAgZGVsZXRlIHJlY29yZC5hcmc7XG4gICAgZW50cnkuY29tcGxldGlvbiA9IHJlY29yZDtcbiAgfVxuXG4gIGZ1bmN0aW9uIENvbnRleHQodHJ5TG9jc0xpc3QpIHtcbiAgICAvLyBUaGUgcm9vdCBlbnRyeSBvYmplY3QgKGVmZmVjdGl2ZWx5IGEgdHJ5IHN0YXRlbWVudCB3aXRob3V0IGEgY2F0Y2hcbiAgICAvLyBvciBhIGZpbmFsbHkgYmxvY2spIGdpdmVzIHVzIGEgcGxhY2UgdG8gc3RvcmUgdmFsdWVzIHRocm93biBmcm9tXG4gICAgLy8gbG9jYXRpb25zIHdoZXJlIHRoZXJlIGlzIG5vIGVuY2xvc2luZyB0cnkgc3RhdGVtZW50LlxuICAgIHRoaXMudHJ5RW50cmllcyA9IFt7IHRyeUxvYzogXCJyb290XCIgfV07XG4gICAgdHJ5TG9jc0xpc3QuZm9yRWFjaChwdXNoVHJ5RW50cnksIHRoaXMpO1xuICAgIHRoaXMucmVzZXQodHJ1ZSk7XG4gIH1cblxuICBleHBvcnRzLmtleXMgPSBmdW5jdGlvbihvYmplY3QpIHtcbiAgICB2YXIga2V5cyA9IFtdO1xuICAgIGZvciAodmFyIGtleSBpbiBvYmplY3QpIHtcbiAgICAgIGtleXMucHVzaChrZXkpO1xuICAgIH1cbiAgICBrZXlzLnJldmVyc2UoKTtcblxuICAgIC8vIFJhdGhlciB0aGFuIHJldHVybmluZyBhbiBvYmplY3Qgd2l0aCBhIG5leHQgbWV0aG9kLCB3ZSBrZWVwXG4gICAgLy8gdGhpbmdzIHNpbXBsZSBhbmQgcmV0dXJuIHRoZSBuZXh0IGZ1bmN0aW9uIGl0c2VsZi5cbiAgICByZXR1cm4gZnVuY3Rpb24gbmV4dCgpIHtcbiAgICAgIHdoaWxlIChrZXlzLmxlbmd0aCkge1xuICAgICAgICB2YXIga2V5ID0ga2V5cy5wb3AoKTtcbiAgICAgICAgaWYgKGtleSBpbiBvYmplY3QpIHtcbiAgICAgICAgICBuZXh0LnZhbHVlID0ga2V5O1xuICAgICAgICAgIG5leHQuZG9uZSA9IGZhbHNlO1xuICAgICAgICAgIHJldHVybiBuZXh0O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIFRvIGF2b2lkIGNyZWF0aW5nIGFuIGFkZGl0aW9uYWwgb2JqZWN0LCB3ZSBqdXN0IGhhbmcgdGhlIC52YWx1ZVxuICAgICAgLy8gYW5kIC5kb25lIHByb3BlcnRpZXMgb2ZmIHRoZSBuZXh0IGZ1bmN0aW9uIG9iamVjdCBpdHNlbGYuIFRoaXNcbiAgICAgIC8vIGFsc28gZW5zdXJlcyB0aGF0IHRoZSBtaW5pZmllciB3aWxsIG5vdCBhbm9ueW1pemUgdGhlIGZ1bmN0aW9uLlxuICAgICAgbmV4dC5kb25lID0gdHJ1ZTtcbiAgICAgIHJldHVybiBuZXh0O1xuICAgIH07XG4gIH07XG5cbiAgZnVuY3Rpb24gdmFsdWVzKGl0ZXJhYmxlKSB7XG4gICAgaWYgKGl0ZXJhYmxlKSB7XG4gICAgICB2YXIgaXRlcmF0b3JNZXRob2QgPSBpdGVyYWJsZVtpdGVyYXRvclN5bWJvbF07XG4gICAgICBpZiAoaXRlcmF0b3JNZXRob2QpIHtcbiAgICAgICAgcmV0dXJuIGl0ZXJhdG9yTWV0aG9kLmNhbGwoaXRlcmFibGUpO1xuICAgICAgfVxuXG4gICAgICBpZiAodHlwZW9mIGl0ZXJhYmxlLm5leHQgPT09IFwiZnVuY3Rpb25cIikge1xuICAgICAgICByZXR1cm4gaXRlcmFibGU7XG4gICAgICB9XG5cbiAgICAgIGlmICghaXNOYU4oaXRlcmFibGUubGVuZ3RoKSkge1xuICAgICAgICB2YXIgaSA9IC0xLCBuZXh0ID0gZnVuY3Rpb24gbmV4dCgpIHtcbiAgICAgICAgICB3aGlsZSAoKytpIDwgaXRlcmFibGUubGVuZ3RoKSB7XG4gICAgICAgICAgICBpZiAoaGFzT3duLmNhbGwoaXRlcmFibGUsIGkpKSB7XG4gICAgICAgICAgICAgIG5leHQudmFsdWUgPSBpdGVyYWJsZVtpXTtcbiAgICAgICAgICAgICAgbmV4dC5kb25lID0gZmFsc2U7XG4gICAgICAgICAgICAgIHJldHVybiBuZXh0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIG5leHQudmFsdWUgPSB1bmRlZmluZWQ7XG4gICAgICAgICAgbmV4dC5kb25lID0gdHJ1ZTtcblxuICAgICAgICAgIHJldHVybiBuZXh0O1xuICAgICAgICB9O1xuXG4gICAgICAgIHJldHVybiBuZXh0Lm5leHQgPSBuZXh0O1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFJldHVybiBhbiBpdGVyYXRvciB3aXRoIG5vIHZhbHVlcy5cbiAgICByZXR1cm4geyBuZXh0OiBkb25lUmVzdWx0IH07XG4gIH1cbiAgZXhwb3J0cy52YWx1ZXMgPSB2YWx1ZXM7XG5cbiAgZnVuY3Rpb24gZG9uZVJlc3VsdCgpIHtcbiAgICByZXR1cm4geyB2YWx1ZTogdW5kZWZpbmVkLCBkb25lOiB0cnVlIH07XG4gIH1cblxuICBDb250ZXh0LnByb3RvdHlwZSA9IHtcbiAgICBjb25zdHJ1Y3RvcjogQ29udGV4dCxcblxuICAgIHJlc2V0OiBmdW5jdGlvbihza2lwVGVtcFJlc2V0KSB7XG4gICAgICB0aGlzLnByZXYgPSAwO1xuICAgICAgdGhpcy5uZXh0ID0gMDtcbiAgICAgIC8vIFJlc2V0dGluZyBjb250ZXh0Ll9zZW50IGZvciBsZWdhY3kgc3VwcG9ydCBvZiBCYWJlbCdzXG4gICAgICAvLyBmdW5jdGlvbi5zZW50IGltcGxlbWVudGF0aW9uLlxuICAgICAgdGhpcy5zZW50ID0gdGhpcy5fc2VudCA9IHVuZGVmaW5lZDtcbiAgICAgIHRoaXMuZG9uZSA9IGZhbHNlO1xuICAgICAgdGhpcy5kZWxlZ2F0ZSA9IG51bGw7XG5cbiAgICAgIHRoaXMubWV0aG9kID0gXCJuZXh0XCI7XG4gICAgICB0aGlzLmFyZyA9IHVuZGVmaW5lZDtcblxuICAgICAgdGhpcy50cnlFbnRyaWVzLmZvckVhY2gocmVzZXRUcnlFbnRyeSk7XG5cbiAgICAgIGlmICghc2tpcFRlbXBSZXNldCkge1xuICAgICAgICBmb3IgKHZhciBuYW1lIGluIHRoaXMpIHtcbiAgICAgICAgICAvLyBOb3Qgc3VyZSBhYm91dCB0aGUgb3B0aW1hbCBvcmRlciBvZiB0aGVzZSBjb25kaXRpb25zOlxuICAgICAgICAgIGlmIChuYW1lLmNoYXJBdCgwKSA9PT0gXCJ0XCIgJiZcbiAgICAgICAgICAgICAgaGFzT3duLmNhbGwodGhpcywgbmFtZSkgJiZcbiAgICAgICAgICAgICAgIWlzTmFOKCtuYW1lLnNsaWNlKDEpKSkge1xuICAgICAgICAgICAgdGhpc1tuYW1lXSA9IHVuZGVmaW5lZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9LFxuXG4gICAgc3RvcDogZnVuY3Rpb24oKSB7XG4gICAgICB0aGlzLmRvbmUgPSB0cnVlO1xuXG4gICAgICB2YXIgcm9vdEVudHJ5ID0gdGhpcy50cnlFbnRyaWVzWzBdO1xuICAgICAgdmFyIHJvb3RSZWNvcmQgPSByb290RW50cnkuY29tcGxldGlvbjtcbiAgICAgIGlmIChyb290UmVjb3JkLnR5cGUgPT09IFwidGhyb3dcIikge1xuICAgICAgICB0aHJvdyByb290UmVjb3JkLmFyZztcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHRoaXMucnZhbDtcbiAgICB9LFxuXG4gICAgZGlzcGF0Y2hFeGNlcHRpb246IGZ1bmN0aW9uKGV4Y2VwdGlvbikge1xuICAgICAgaWYgKHRoaXMuZG9uZSkge1xuICAgICAgICB0aHJvdyBleGNlcHRpb247XG4gICAgICB9XG5cbiAgICAgIHZhciBjb250ZXh0ID0gdGhpcztcbiAgICAgIGZ1bmN0aW9uIGhhbmRsZShsb2MsIGNhdWdodCkge1xuICAgICAgICByZWNvcmQudHlwZSA9IFwidGhyb3dcIjtcbiAgICAgICAgcmVjb3JkLmFyZyA9IGV4Y2VwdGlvbjtcbiAgICAgICAgY29udGV4dC5uZXh0ID0gbG9jO1xuXG4gICAgICAgIGlmIChjYXVnaHQpIHtcbiAgICAgICAgICAvLyBJZiB0aGUgZGlzcGF0Y2hlZCBleGNlcHRpb24gd2FzIGNhdWdodCBieSBhIGNhdGNoIGJsb2NrLFxuICAgICAgICAgIC8vIHRoZW4gbGV0IHRoYXQgY2F0Y2ggYmxvY2sgaGFuZGxlIHRoZSBleGNlcHRpb24gbm9ybWFsbHkuXG4gICAgICAgICAgY29udGV4dC5tZXRob2QgPSBcIm5leHRcIjtcbiAgICAgICAgICBjb250ZXh0LmFyZyA9IHVuZGVmaW5lZDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiAhISBjYXVnaHQ7XG4gICAgICB9XG5cbiAgICAgIGZvciAodmFyIGkgPSB0aGlzLnRyeUVudHJpZXMubGVuZ3RoIC0gMTsgaSA+PSAwOyAtLWkpIHtcbiAgICAgICAgdmFyIGVudHJ5ID0gdGhpcy50cnlFbnRyaWVzW2ldO1xuICAgICAgICB2YXIgcmVjb3JkID0gZW50cnkuY29tcGxldGlvbjtcblxuICAgICAgICBpZiAoZW50cnkudHJ5TG9jID09PSBcInJvb3RcIikge1xuICAgICAgICAgIC8vIEV4Y2VwdGlvbiB0aHJvd24gb3V0c2lkZSBvZiBhbnkgdHJ5IGJsb2NrIHRoYXQgY291bGQgaGFuZGxlXG4gICAgICAgICAgLy8gaXQsIHNvIHNldCB0aGUgY29tcGxldGlvbiB2YWx1ZSBvZiB0aGUgZW50aXJlIGZ1bmN0aW9uIHRvXG4gICAgICAgICAgLy8gdGhyb3cgdGhlIGV4Y2VwdGlvbi5cbiAgICAgICAgICByZXR1cm4gaGFuZGxlKFwiZW5kXCIpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGVudHJ5LnRyeUxvYyA8PSB0aGlzLnByZXYpIHtcbiAgICAgICAgICB2YXIgaGFzQ2F0Y2ggPSBoYXNPd24uY2FsbChlbnRyeSwgXCJjYXRjaExvY1wiKTtcbiAgICAgICAgICB2YXIgaGFzRmluYWxseSA9IGhhc093bi5jYWxsKGVudHJ5LCBcImZpbmFsbHlMb2NcIik7XG5cbiAgICAgICAgICBpZiAoaGFzQ2F0Y2ggJiYgaGFzRmluYWxseSkge1xuICAgICAgICAgICAgaWYgKHRoaXMucHJldiA8IGVudHJ5LmNhdGNoTG9jKSB7XG4gICAgICAgICAgICAgIHJldHVybiBoYW5kbGUoZW50cnkuY2F0Y2hMb2MsIHRydWUpO1xuICAgICAgICAgICAgfSBlbHNlIGlmICh0aGlzLnByZXYgPCBlbnRyeS5maW5hbGx5TG9jKSB7XG4gICAgICAgICAgICAgIHJldHVybiBoYW5kbGUoZW50cnkuZmluYWxseUxvYyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9IGVsc2UgaWYgKGhhc0NhdGNoKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5wcmV2IDwgZW50cnkuY2F0Y2hMb2MpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIGhhbmRsZShlbnRyeS5jYXRjaExvYywgdHJ1ZSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9IGVsc2UgaWYgKGhhc0ZpbmFsbHkpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLnByZXYgPCBlbnRyeS5maW5hbGx5TG9jKSB7XG4gICAgICAgICAgICAgIHJldHVybiBoYW5kbGUoZW50cnkuZmluYWxseUxvYyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwidHJ5IHN0YXRlbWVudCB3aXRob3V0IGNhdGNoIG9yIGZpbmFsbHlcIik7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfSxcblxuICAgIGFicnVwdDogZnVuY3Rpb24odHlwZSwgYXJnKSB7XG4gICAgICBmb3IgKHZhciBpID0gdGhpcy50cnlFbnRyaWVzLmxlbmd0aCAtIDE7IGkgPj0gMDsgLS1pKSB7XG4gICAgICAgIHZhciBlbnRyeSA9IHRoaXMudHJ5RW50cmllc1tpXTtcbiAgICAgICAgaWYgKGVudHJ5LnRyeUxvYyA8PSB0aGlzLnByZXYgJiZcbiAgICAgICAgICAgIGhhc093bi5jYWxsKGVudHJ5LCBcImZpbmFsbHlMb2NcIikgJiZcbiAgICAgICAgICAgIHRoaXMucHJldiA8IGVudHJ5LmZpbmFsbHlMb2MpIHtcbiAgICAgICAgICB2YXIgZmluYWxseUVudHJ5ID0gZW50cnk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaWYgKGZpbmFsbHlFbnRyeSAmJlxuICAgICAgICAgICh0eXBlID09PSBcImJyZWFrXCIgfHxcbiAgICAgICAgICAgdHlwZSA9PT0gXCJjb250aW51ZVwiKSAmJlxuICAgICAgICAgIGZpbmFsbHlFbnRyeS50cnlMb2MgPD0gYXJnICYmXG4gICAgICAgICAgYXJnIDw9IGZpbmFsbHlFbnRyeS5maW5hbGx5TG9jKSB7XG4gICAgICAgIC8vIElnbm9yZSB0aGUgZmluYWxseSBlbnRyeSBpZiBjb250cm9sIGlzIG5vdCBqdW1waW5nIHRvIGFcbiAgICAgICAgLy8gbG9jYXRpb24gb3V0c2lkZSB0aGUgdHJ5L2NhdGNoIGJsb2NrLlxuICAgICAgICBmaW5hbGx5RW50cnkgPSBudWxsO1xuICAgICAgfVxuXG4gICAgICB2YXIgcmVjb3JkID0gZmluYWxseUVudHJ5ID8gZmluYWxseUVudHJ5LmNvbXBsZXRpb24gOiB7fTtcbiAgICAgIHJlY29yZC50eXBlID0gdHlwZTtcbiAgICAgIHJlY29yZC5hcmcgPSBhcmc7XG5cbiAgICAgIGlmIChmaW5hbGx5RW50cnkpIHtcbiAgICAgICAgdGhpcy5tZXRob2QgPSBcIm5leHRcIjtcbiAgICAgICAgdGhpcy5uZXh0ID0gZmluYWxseUVudHJ5LmZpbmFsbHlMb2M7XG4gICAgICAgIHJldHVybiBDb250aW51ZVNlbnRpbmVsO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gdGhpcy5jb21wbGV0ZShyZWNvcmQpO1xuICAgIH0sXG5cbiAgICBjb21wbGV0ZTogZnVuY3Rpb24ocmVjb3JkLCBhZnRlckxvYykge1xuICAgICAgaWYgKHJlY29yZC50eXBlID09PSBcInRocm93XCIpIHtcbiAgICAgICAgdGhyb3cgcmVjb3JkLmFyZztcbiAgICAgIH1cblxuICAgICAgaWYgKHJlY29yZC50eXBlID09PSBcImJyZWFrXCIgfHxcbiAgICAgICAgICByZWNvcmQudHlwZSA9PT0gXCJjb250aW51ZVwiKSB7XG4gICAgICAgIHRoaXMubmV4dCA9IHJlY29yZC5hcmc7XG4gICAgICB9IGVsc2UgaWYgKHJlY29yZC50eXBlID09PSBcInJldHVyblwiKSB7XG4gICAgICAgIHRoaXMucnZhbCA9IHRoaXMuYXJnID0gcmVjb3JkLmFyZztcbiAgICAgICAgdGhpcy5tZXRob2QgPSBcInJldHVyblwiO1xuICAgICAgICB0aGlzLm5leHQgPSBcImVuZFwiO1xuICAgICAgfSBlbHNlIGlmIChyZWNvcmQudHlwZSA9PT0gXCJub3JtYWxcIiAmJiBhZnRlckxvYykge1xuICAgICAgICB0aGlzLm5leHQgPSBhZnRlckxvYztcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIENvbnRpbnVlU2VudGluZWw7XG4gICAgfSxcblxuICAgIGZpbmlzaDogZnVuY3Rpb24oZmluYWxseUxvYykge1xuICAgICAgZm9yICh2YXIgaSA9IHRoaXMudHJ5RW50cmllcy5sZW5ndGggLSAxOyBpID49IDA7IC0taSkge1xuICAgICAgICB2YXIgZW50cnkgPSB0aGlzLnRyeUVudHJpZXNbaV07XG4gICAgICAgIGlmIChlbnRyeS5maW5hbGx5TG9jID09PSBmaW5hbGx5TG9jKSB7XG4gICAgICAgICAgdGhpcy5jb21wbGV0ZShlbnRyeS5jb21wbGV0aW9uLCBlbnRyeS5hZnRlckxvYyk7XG4gICAgICAgICAgcmVzZXRUcnlFbnRyeShlbnRyeSk7XG4gICAgICAgICAgcmV0dXJuIENvbnRpbnVlU2VudGluZWw7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9LFxuXG4gICAgXCJjYXRjaFwiOiBmdW5jdGlvbih0cnlMb2MpIHtcbiAgICAgIGZvciAodmFyIGkgPSB0aGlzLnRyeUVudHJpZXMubGVuZ3RoIC0gMTsgaSA+PSAwOyAtLWkpIHtcbiAgICAgICAgdmFyIGVudHJ5ID0gdGhpcy50cnlFbnRyaWVzW2ldO1xuICAgICAgICBpZiAoZW50cnkudHJ5TG9jID09PSB0cnlMb2MpIHtcbiAgICAgICAgICB2YXIgcmVjb3JkID0gZW50cnkuY29tcGxldGlvbjtcbiAgICAgICAgICBpZiAocmVjb3JkLnR5cGUgPT09IFwidGhyb3dcIikge1xuICAgICAgICAgICAgdmFyIHRocm93biA9IHJlY29yZC5hcmc7XG4gICAgICAgICAgICByZXNldFRyeUVudHJ5KGVudHJ5KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIHRocm93bjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBUaGUgY29udGV4dC5jYXRjaCBtZXRob2QgbXVzdCBvbmx5IGJlIGNhbGxlZCB3aXRoIGEgbG9jYXRpb25cbiAgICAgIC8vIGFyZ3VtZW50IHRoYXQgY29ycmVzcG9uZHMgdG8gYSBrbm93biBjYXRjaCBibG9jay5cbiAgICAgIHRocm93IG5ldyBFcnJvcihcImlsbGVnYWwgY2F0Y2ggYXR0ZW1wdFwiKTtcbiAgICB9LFxuXG4gICAgZGVsZWdhdGVZaWVsZDogZnVuY3Rpb24oaXRlcmFibGUsIHJlc3VsdE5hbWUsIG5leHRMb2MpIHtcbiAgICAgIHRoaXMuZGVsZWdhdGUgPSB7XG4gICAgICAgIGl0ZXJhdG9yOiB2YWx1ZXMoaXRlcmFibGUpLFxuICAgICAgICByZXN1bHROYW1lOiByZXN1bHROYW1lLFxuICAgICAgICBuZXh0TG9jOiBuZXh0TG9jXG4gICAgICB9O1xuXG4gICAgICBpZiAodGhpcy5tZXRob2QgPT09IFwibmV4dFwiKSB7XG4gICAgICAgIC8vIERlbGliZXJhdGVseSBmb3JnZXQgdGhlIGxhc3Qgc2VudCB2YWx1ZSBzbyB0aGF0IHdlIGRvbid0XG4gICAgICAgIC8vIGFjY2lkZW50YWxseSBwYXNzIGl0IG9uIHRvIHRoZSBkZWxlZ2F0ZS5cbiAgICAgICAgdGhpcy5hcmcgPSB1bmRlZmluZWQ7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBDb250aW51ZVNlbnRpbmVsO1xuICAgIH1cbiAgfTtcblxuICAvLyBSZWdhcmRsZXNzIG9mIHdoZXRoZXIgdGhpcyBzY3JpcHQgaXMgZXhlY3V0aW5nIGFzIGEgQ29tbW9uSlMgbW9kdWxlXG4gIC8vIG9yIG5vdCwgcmV0dXJuIHRoZSBydW50aW1lIG9iamVjdCBzbyB0aGF0IHdlIGNhbiBkZWNsYXJlIHRoZSB2YXJpYWJsZVxuICAvLyByZWdlbmVyYXRvclJ1bnRpbWUgaW4gdGhlIG91dGVyIHNjb3BlLCB3aGljaCBhbGxvd3MgdGhpcyBtb2R1bGUgdG8gYmVcbiAgLy8gaW5qZWN0ZWQgZWFzaWx5IGJ5IGBiaW4vcmVnZW5lcmF0b3IgLS1pbmNsdWRlLXJ1bnRpbWUgc2NyaXB0LmpzYC5cbiAgcmV0dXJuIGV4cG9ydHM7XG5cbn0oXG4gIC8vIElmIHRoaXMgc2NyaXB0IGlzIGV4ZWN1dGluZyBhcyBhIENvbW1vbkpTIG1vZHVsZSwgdXNlIG1vZHVsZS5leHBvcnRzXG4gIC8vIGFzIHRoZSByZWdlbmVyYXRvclJ1bnRpbWUgbmFtZXNwYWNlLiBPdGhlcndpc2UgY3JlYXRlIGEgbmV3IGVtcHR5XG4gIC8vIG9iamVjdC4gRWl0aGVyIHdheSwgdGhlIHJlc3VsdGluZyBvYmplY3Qgd2lsbCBiZSB1c2VkIHRvIGluaXRpYWxpemVcbiAgLy8gdGhlIHJlZ2VuZXJhdG9yUnVudGltZSB2YXJpYWJsZSBhdCB0aGUgdG9wIG9mIHRoaXMgZmlsZS5cbiAgdHlwZW9mIG1vZHVsZSA9PT0gXCJvYmplY3RcIiA/IG1vZHVsZS5leHBvcnRzIDoge31cbikpO1xuXG50cnkge1xuICByZWdlbmVyYXRvclJ1bnRpbWUgPSBydW50aW1lO1xufSBjYXRjaCAoYWNjaWRlbnRhbFN0cmljdE1vZGUpIHtcbiAgLy8gVGhpcyBtb2R1bGUgc2hvdWxkIG5vdCBiZSBydW5uaW5nIGluIHN0cmljdCBtb2RlLCBzbyB0aGUgYWJvdmVcbiAgLy8gYXNzaWdubWVudCBzaG91bGQgYWx3YXlzIHdvcmsgdW5sZXNzIHNvbWV0aGluZyBpcyBtaXNjb25maWd1cmVkLiBKdXN0XG4gIC8vIGluIGNhc2UgcnVudGltZS5qcyBhY2NpZGVudGFsbHkgcnVucyBpbiBzdHJpY3QgbW9kZSwgd2UgY2FuIGVzY2FwZVxuICAvLyBzdHJpY3QgbW9kZSB1c2luZyBhIGdsb2JhbCBGdW5jdGlvbiBjYWxsLiBUaGlzIGNvdWxkIGNvbmNlaXZhYmx5IGZhaWxcbiAgLy8gaWYgYSBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBmb3JiaWRzIHVzaW5nIEZ1bmN0aW9uLCBidXQgaW4gdGhhdCBjYXNlXG4gIC8vIHRoZSBwcm9wZXIgc29sdXRpb24gaXMgdG8gZml4IHRoZSBhY2NpZGVudGFsIHN0cmljdCBtb2RlIHByb2JsZW0uIElmXG4gIC8vIHlvdSd2ZSBtaXNjb25maWd1cmVkIHlvdXIgYnVuZGxlciB0byBmb3JjZSBzdHJpY3QgbW9kZSBhbmQgYXBwbGllZCBhXG4gIC8vIENTUCB0byBmb3JiaWQgRnVuY3Rpb24sIGFuZCB5b3UncmUgbm90IHdpbGxpbmcgdG8gZml4IGVpdGhlciBvZiB0aG9zZVxuICAvLyBwcm9ibGVtcywgcGxlYXNlIGRldGFpbCB5b3VyIHVuaXF1ZSBwcmVkaWNhbWVudCBpbiBhIEdpdEh1YiBpc3N1ZS5cbiAgRnVuY3Rpb24oXCJyXCIsIFwicmVnZW5lcmF0b3JSdW50aW1lID0gclwiKShydW50aW1lKTtcbn1cbiJdLCJuYW1lcyI6WyJydW50aW1lIiwiZXhwb3J0cyIsIk9wIiwiT2JqZWN0IiwicHJvdG90eXBlIiwiaGFzT3duIiwiaGFzT3duUHJvcGVydHkiLCJ1bmRlZmluZWQiLCIkU3ltYm9sIiwiU3ltYm9sIiwiaXRlcmF0b3JTeW1ib2wiLCJpdGVyYXRvciIsImFzeW5jSXRlcmF0b3JTeW1ib2wiLCJhc3luY0l0ZXJhdG9yIiwidG9TdHJpbmdUYWdTeW1ib2wiLCJ0b1N0cmluZ1RhZyIsIndyYXAiLCJpbm5lckZuIiwib3V0ZXJGbiIsInNlbGYiLCJ0cnlMb2NzTGlzdCIsInByb3RvR2VuZXJhdG9yIiwiR2VuZXJhdG9yIiwiZ2VuZXJhdG9yIiwiY3JlYXRlIiwiY29udGV4dCIsIkNvbnRleHQiLCJfaW52b2tlIiwibWFrZUludm9rZU1ldGhvZCIsInRyeUNhdGNoIiwiZm4iLCJvYmoiLCJhcmciLCJ0eXBlIiwiY2FsbCIsImVyciIsIkdlblN0YXRlU3VzcGVuZGVkU3RhcnQiLCJHZW5TdGF0ZVN1c3BlbmRlZFlpZWxkIiwiR2VuU3RhdGVFeGVjdXRpbmciLCJHZW5TdGF0ZUNvbXBsZXRlZCIsIkNvbnRpbnVlU2VudGluZWwiLCJHZW5lcmF0b3JGdW5jdGlvbiIsIkdlbmVyYXRvckZ1bmN0aW9uUHJvdG90eXBlIiwiSXRlcmF0b3JQcm90b3R5cGUiLCJnZXRQcm90byIsImdldFByb3RvdHlwZU9mIiwiTmF0aXZlSXRlcmF0b3JQcm90b3R5cGUiLCJ2YWx1ZXMiLCJHcCIsImNvbnN0cnVjdG9yIiwiZGlzcGxheU5hbWUiLCJkZWZpbmVJdGVyYXRvck1ldGhvZHMiLCJmb3JFYWNoIiwibWV0aG9kIiwiaXNHZW5lcmF0b3JGdW5jdGlvbiIsImdlbkZ1biIsImN0b3IiLCJuYW1lIiwibWFyayIsInNldFByb3RvdHlwZU9mIiwiX19wcm90b19fIiwiYXdyYXAiLCJfX2F3YWl0IiwiQXN5bmNJdGVyYXRvciIsIlByb21pc2VJbXBsIiwiaW52b2tlIiwicmVzb2x2ZSIsInJlamVjdCIsInJlY29yZCIsInJlc3VsdCIsInZhbHVlIiwidGhlbiIsInVud3JhcHBlZCIsImVycm9yIiwicHJldmlvdXNQcm9taXNlIiwiZW5xdWV1ZSIsImNhbGxJbnZva2VXaXRoTWV0aG9kQW5kQXJnIiwiYXN5bmMiLCJQcm9taXNlIiwiaXRlciIsIm5leHQiLCJkb25lIiwic3RhdGUiLCJFcnJvciIsImRvbmVSZXN1bHQiLCJkZWxlZ2F0ZSIsImRlbGVnYXRlUmVzdWx0IiwibWF5YmVJbnZva2VEZWxlZ2F0ZSIsInNlbnQiLCJfc2VudCIsImRpc3BhdGNoRXhjZXB0aW9uIiwiYWJydXB0IiwiVHlwZUVycm9yIiwiaW5mbyIsInJlc3VsdE5hbWUiLCJuZXh0TG9jIiwidG9TdHJpbmciLCJwdXNoVHJ5RW50cnkiLCJsb2NzIiwiZW50cnkiLCJ0cnlMb2MiLCJjYXRjaExvYyIsImZpbmFsbHlMb2MiLCJhZnRlckxvYyIsInRyeUVudHJpZXMiLCJwdXNoIiwicmVzZXRUcnlFbnRyeSIsImNvbXBsZXRpb24iLCJyZXNldCIsImtleXMiLCJvYmplY3QiLCJrZXkiLCJyZXZlcnNlIiwibGVuZ3RoIiwicG9wIiwiaXRlcmFibGUiLCJpdGVyYXRvck1ldGhvZCIsImlzTmFOIiwiaSIsInNraXBUZW1wUmVzZXQiLCJwcmV2IiwiY2hhckF0Iiwic2xpY2UiLCJzdG9wIiwicm9vdEVudHJ5Iiwicm9vdFJlY29yZCIsInJ2YWwiLCJleGNlcHRpb24iLCJoYW5kbGUiLCJsb2MiLCJjYXVnaHQiLCJoYXNDYXRjaCIsImhhc0ZpbmFsbHkiLCJmaW5hbGx5RW50cnkiLCJjb21wbGV0ZSIsImZpbmlzaCIsInRocm93biIsImRlbGVnYXRlWWllbGQiLCJtb2R1bGUiLCJyZWdlbmVyYXRvclJ1bnRpbWUiLCJhY2NpZGVudGFsU3RyaWN0TW9kZSIsIkZ1bmN0aW9uIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7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Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OyJ9\n","function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && Symbol.iterator in Object(iter)) return Array.from(iter);\n}\n\nmodule.exports = _iterableToArray;","'use strict';\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar isRegExp = require('../internals/is-regexp');\nvar anObject = require('../internals/an-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar speciesConstructor = require('../internals/species-constructor');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar toLength = require('../internals/to-length');\nvar callRegExpExec = require('../internals/regexp-exec-abstract');\nvar regexpExec = require('../internals/regexp-exec');\nvar fails = require('../internals/fails');\n\nvar arrayPush = [].push;\nvar min = Math.min;\nvar MAX_UINT32 = 0xFFFFFFFF;\n\n// babel-minify transpiles RegExp('x', 'y') -> /x/y and it causes SyntaxError\nvar SUPPORTS_Y = !fails(function () { return !RegExp(MAX_UINT32, 'y'); });\n\n// @@split logic\nfixRegExpWellKnownSymbolLogic('split', 2, function (SPLIT, nativeSplit, maybeCallNative) {\n var internalSplit;\n if (\n 'abbc'.split(/(b)*/)[1] == 'c' ||\n 'test'.split(/(?:)/, -1).length != 4 ||\n 'ab'.split(/(?:ab)*/).length != 2 ||\n '.'.split(/(.?)(.?)/).length != 4 ||\n '.'.split(/()()/).length > 1 ||\n ''.split(/.?/).length\n ) {\n // based on es5-shim implementation, need to rework it\n internalSplit = function (separator, limit) {\n var string = String(requireObjectCoercible(this));\n var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;\n if (lim === 0) return [];\n if (separator === undefined) return [string];\n // If `separator` is not a regex, use native split\n if (!isRegExp(separator)) {\n return nativeSplit.call(string, separator, lim);\n }\n var output = [];\n var flags = (separator.ignoreCase ? 'i' : '') +\n (separator.multiline ? 'm' : '') +\n (separator.unicode ? 'u' : '') +\n (separator.sticky ? 'y' : '');\n var lastLastIndex = 0;\n // Make `global` and avoid `lastIndex` issues by working with a copy\n var separatorCopy = new RegExp(separator.source, flags + 'g');\n var match, lastIndex, lastLength;\n while (match = regexpExec.call(separatorCopy, string)) {\n lastIndex = separatorCopy.lastIndex;\n if (lastIndex > lastLastIndex) {\n output.push(string.slice(lastLastIndex, match.index));\n if (match.length > 1 && match.index < string.length) arrayPush.apply(output, match.slice(1));\n lastLength = match[0].length;\n lastLastIndex = lastIndex;\n if (output.length >= lim) break;\n }\n if (separatorCopy.lastIndex === match.index) separatorCopy.lastIndex++; // Avoid an infinite loop\n }\n if (lastLastIndex === string.length) {\n if (lastLength || !separatorCopy.test('')) output.push('');\n } else output.push(string.slice(lastLastIndex));\n return output.length > lim ? output.slice(0, lim) : output;\n };\n // Chakra, V8\n } else if ('0'.split(undefined, 0).length) {\n internalSplit = function (separator, limit) {\n return separator === undefined && limit === 0 ? [] : nativeSplit.call(this, separator, limit);\n };\n } else internalSplit = nativeSplit;\n\n return [\n // `String.prototype.split` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.split\n function split(separator, limit) {\n var O = requireObjectCoercible(this);\n var splitter = separator == undefined ? undefined : separator[SPLIT];\n return splitter !== undefined\n ? splitter.call(separator, O, limit)\n : internalSplit.call(String(O), separator, limit);\n },\n // `RegExp.prototype[@@split]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@split\n //\n // NOTE: This cannot be properly polyfilled in engines that don't support\n // the 'y' flag.\n function (regexp, limit) {\n var res = maybeCallNative(internalSplit, regexp, this, limit, internalSplit !== nativeSplit);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n var C = speciesConstructor(rx, RegExp);\n\n var unicodeMatching = rx.unicode;\n var flags = (rx.ignoreCase ? 'i' : '') +\n (rx.multiline ? 'm' : '') +\n (rx.unicode ? 'u' : '') +\n (SUPPORTS_Y ? 'y' : 'g');\n\n // ^(? + rx + ) is needed, in combination with some S slicing, to\n // simulate the 'y' flag.\n var splitter = new C(SUPPORTS_Y ? rx : '^(?:' + rx.source + ')', flags);\n var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;\n if (lim === 0) return [];\n if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : [];\n var p = 0;\n var q = 0;\n var A = [];\n while (q < S.length) {\n splitter.lastIndex = SUPPORTS_Y ? q : 0;\n var z = callRegExpExec(splitter, SUPPORTS_Y ? S : S.slice(q));\n var e;\n if (\n z === null ||\n (e = min(toLength(splitter.lastIndex + (SUPPORTS_Y ? 0 : q)), S.length)) === p\n ) {\n q = advanceStringIndex(S, q, unicodeMatching);\n } else {\n A.push(S.slice(p, q));\n if (A.length === lim) return A;\n for (var i = 1; i <= z.length - 1; i++) {\n A.push(z[i]);\n if (A.length === lim) return A;\n }\n q = p = e;\n }\n }\n A.push(S.slice(p));\n return A;\n }\n ];\n}, !SUPPORTS_Y);\n","'use strict';\nvar $ = require('../internals/export');\nvar $reduce = require('../internals/array-reduce').left;\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar STRICT_METHOD = arrayMethodIsStrict('reduce');\nvar USES_TO_LENGTH = arrayMethodUsesToLength('reduce', { 1: 0 });\n\n// `Array.prototype.reduce` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.reduce\n$({ target: 'Array', proto: true, forced: !STRICT_METHOD || !USES_TO_LENGTH }, {\n reduce: function reduce(callbackfn /* , initialValue */) {\n return $reduce(this, callbackfn, arguments.length, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","var arrayLikeToArray = require(\"./arrayLikeToArray\");\n\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return arrayLikeToArray(arr);\n}\n\nmodule.exports = _arrayWithoutHoles;","'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 $ = require('../internals/export');\nvar isArray = require('../internals/is-array');\n\nvar nativeReverse = [].reverse;\nvar test = [1, 2];\n\n// `Array.prototype.reverse` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.reverse\n// fix for Safari 12.0 bug\n// https://bugs.webkit.org/show_bug.cgi?id=188794\n$({ target: 'Array', proto: true, forced: String(test) === String(test.reverse()) }, {\n reverse: function reverse() {\n // eslint-disable-next-line no-self-assign\n if (isArray(this)) this.length = this.length;\n return nativeReverse.call(this);\n }\n});\n","var arrayWithHoles = require(\"./arrayWithHoles\");\n\nvar iterableToArrayLimit = require(\"./iterableToArrayLimit\");\n\nvar unsupportedIterableToArray = require(\"./unsupportedIterableToArray\");\n\nvar nonIterableRest = require(\"./nonIterableRest\");\n\nfunction _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}\n\nmodule.exports = _slicedToArray;","'use strict';\nvar $ = require('../internals/export');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar toLength = require('../internals/to-length');\nvar notARegExp = require('../internals/not-a-regexp');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar correctIsRegExpLogic = require('../internals/correct-is-regexp-logic');\nvar IS_PURE = require('../internals/is-pure');\n\nvar nativeStartsWith = ''.startsWith;\nvar min = Math.min;\n\nvar CORRECT_IS_REGEXP_LOGIC = correctIsRegExpLogic('startsWith');\n// https://github.com/zloirock/core-js/pull/702\nvar MDN_POLYFILL_BUG = !IS_PURE && !CORRECT_IS_REGEXP_LOGIC && !!function () {\n var descriptor = getOwnPropertyDescriptor(String.prototype, 'startsWith');\n return descriptor && !descriptor.writable;\n}();\n\n// `String.prototype.startsWith` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.startswith\n$({ target: 'String', proto: true, forced: !MDN_POLYFILL_BUG && !CORRECT_IS_REGEXP_LOGIC }, {\n startsWith: function startsWith(searchString /* , position = 0 */) {\n var that = String(requireObjectCoercible(this));\n notARegExp(searchString);\n var index = toLength(min(arguments.length > 1 ? arguments[1] : undefined, that.length));\n var search = String(searchString);\n return nativeStartsWith\n ? nativeStartsWith.call(that, search, index)\n : that.slice(index, index + search.length) === search;\n }\n});\n","var $ = require('../internals/export');\nvar fails = require('../internals/fails');\nvar toObject = require('../internals/to-object');\nvar nativeGetPrototypeOf = require('../internals/object-get-prototype-of');\nvar CORRECT_PROTOTYPE_GETTER = require('../internals/correct-prototype-getter');\n\nvar FAILS_ON_PRIMITIVES = fails(function () { nativeGetPrototypeOf(1); });\n\n// `Object.getPrototypeOf` method\n// https://tc39.github.io/ecma262/#sec-object.getprototypeof\n$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES, sham: !CORRECT_PROTOTYPE_GETTER }, {\n getPrototypeOf: function getPrototypeOf(it) {\n return nativeGetPrototypeOf(toObject(it));\n }\n});\n\n","function _getPrototypeOf(o) {\n module.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}\n\nmodule.exports = _getPrototypeOf;","function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}\n\nmodule.exports = _assertThisInitialized;","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\nvar InternalStateModule = require('../internals/internal-state');\nvar defineIterator = require('../internals/define-iterator');\n\nvar STRING_ITERATOR = 'String Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(STRING_ITERATOR);\n\n// `String.prototype[@@iterator]` method\n// https://tc39.github.io/ecma262/#sec-string.prototype-@@iterator\ndefineIterator(String, 'String', function (iterated) {\n setInternalState(this, {\n type: STRING_ITERATOR,\n string: String(iterated),\n index: 0\n });\n// `%StringIteratorPrototype%.next` method\n// https://tc39.github.io/ecma262/#sec-%stringiteratorprototype%.next\n}, function next() {\n var state = getInternalState(this);\n var string = state.string;\n var index = state.index;\n var point;\n if (index >= string.length) return { value: undefined, done: true };\n point = charAt(string, index);\n state.index += point.length;\n return { value: point, done: false };\n});\n","var arrayWithoutHoles = require(\"./arrayWithoutHoles\");\n\nvar iterableToArray = require(\"./iterableToArray\");\n\nvar unsupportedIterableToArray = require(\"./unsupportedIterableToArray\");\n\nvar nonIterableSpread = require(\"./nonIterableSpread\");\n\nfunction _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}\n\nmodule.exports = _toConsumableArray;","'use strict';\nvar $ = require('../internals/export');\nvar $some = require('../internals/array-iteration').some;\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar STRICT_METHOD = arrayMethodIsStrict('some');\nvar USES_TO_LENGTH = arrayMethodUsesToLength('some');\n\n// `Array.prototype.some` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.some\n$({ target: 'Array', proto: true, forced: !STRICT_METHOD || !USES_TO_LENGTH }, {\n some: function some(callbackfn /* , thisArg */) {\n return $some(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","'use strict';\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar anObject = require('../internals/an-object');\nvar toLength = require('../internals/to-length');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar regExpExec = require('../internals/regexp-exec-abstract');\n\n// @@match logic\nfixRegExpWellKnownSymbolLogic('match', 1, function (MATCH, nativeMatch, maybeCallNative) {\n return [\n // `String.prototype.match` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.match\n function match(regexp) {\n var O = requireObjectCoercible(this);\n var matcher = regexp == undefined ? undefined : regexp[MATCH];\n return matcher !== undefined ? matcher.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));\n },\n // `RegExp.prototype[@@match]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@match\n function (regexp) {\n var res = maybeCallNative(nativeMatch, regexp, this);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n\n if (!rx.global) return regExpExec(rx, S);\n\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n var A = [];\n var n = 0;\n var result;\n while ((result = regExpExec(rx, S)) !== null) {\n var matchStr = String(result[0]);\n A[n] = matchStr;\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n n++;\n }\n return n === 0 ? null : A;\n }\n ];\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar $trim = require('../internals/string-trim').trim;\nvar forcedStringTrimMethod = require('../internals/string-trim-forced');\n\n// `String.prototype.trim` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.trim\n$({ target: 'String', proto: true, forced: forcedStringTrimMethod('trim') }, {\n trim: function trim() {\n return $trim(this);\n }\n});\n","function _setPrototypeOf(o, p) {\n module.exports = _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}\n\nmodule.exports = _setPrototypeOf;","var $ = require('../internals/export');\nvar getBuiltIn = require('../internals/get-built-in');\nvar aFunction = require('../internals/a-function');\nvar anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar create = require('../internals/object-create');\nvar bind = require('../internals/function-bind');\nvar fails = require('../internals/fails');\n\nvar nativeConstruct = getBuiltIn('Reflect', 'construct');\n\n// `Reflect.construct` method\n// https://tc39.github.io/ecma262/#sec-reflect.construct\n// MS Edge supports only 2 arguments and argumentsList argument is optional\n// FF Nightly sets third argument as `new.target`, but does not create `this` from it\nvar NEW_TARGET_BUG = fails(function () {\n function F() { /* empty */ }\n return !(nativeConstruct(function () { /* empty */ }, [], F) instanceof F);\n});\nvar ARGS_BUG = !fails(function () {\n nativeConstruct(function () { /* empty */ });\n});\nvar FORCED = NEW_TARGET_BUG || ARGS_BUG;\n\n$({ target: 'Reflect', stat: true, forced: FORCED, sham: FORCED }, {\n construct: function construct(Target, args /* , newTarget */) {\n aFunction(Target);\n anObject(args);\n var newTarget = arguments.length < 3 ? Target : aFunction(arguments[2]);\n if (ARGS_BUG && !NEW_TARGET_BUG) return nativeConstruct(Target, args, newTarget);\n if (Target == newTarget) {\n // w/o altered newTarget, optimization for 0-4 arguments\n switch (args.length) {\n case 0: return new Target();\n case 1: return new Target(args[0]);\n case 2: return new Target(args[0], args[1]);\n case 3: return new Target(args[0], args[1], args[2]);\n case 4: return new Target(args[0], args[1], args[2], args[3]);\n }\n // w/o altered newTarget, lot of arguments case\n var $args = [null];\n $args.push.apply($args, args);\n return new (bind.apply(Target, $args))();\n }\n // with altered newTarget, not support built-in constructors\n var proto = newTarget.prototype;\n var instance = create(isObject(proto) ? proto : Object.prototype);\n var result = Function.apply.call(Target, instance, args);\n return isObject(result) ? result : instance;\n }\n});\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar toObject = require('../internals/to-object');\nvar callWithSafeIterationClosing = require('../internals/call-with-safe-iteration-closing');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar toLength = require('../internals/to-length');\nvar createProperty = require('../internals/create-property');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\n// `Array.from` method implementation\n// https://tc39.github.io/ecma262/#sec-array.from\nmodule.exports = function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {\n var O = toObject(arrayLike);\n var C = typeof this == 'function' ? this : Array;\n var argumentsLength = arguments.length;\n var mapfn = argumentsLength > 1 ? arguments[1] : undefined;\n var mapping = mapfn !== undefined;\n var iteratorMethod = getIteratorMethod(O);\n var index = 0;\n var length, result, step, iterator, next, value;\n if (mapping) mapfn = bind(mapfn, argumentsLength > 2 ? arguments[2] : undefined, 2);\n // if the target is not iterable or it's an array with the default iterator - use a simple case\n if (iteratorMethod != undefined && !(C == Array && isArrayIteratorMethod(iteratorMethod))) {\n iterator = iteratorMethod.call(O);\n next = iterator.next;\n result = new C();\n for (;!(step = next.call(iterator)).done; index++) {\n value = mapping ? callWithSafeIterationClosing(iterator, mapfn, [step.value, index], true) : step.value;\n createProperty(result, index, value);\n }\n } else {\n length = toLength(O.length);\n result = new C(length);\n for (;length > index; index++) {\n value = mapping ? mapfn(O[index], index) : O[index];\n createProperty(result, index, value);\n }\n }\n result.length = index;\n return result;\n};\n","'use strict';\nvar collection = require('../internals/collection');\nvar collectionStrong = require('../internals/collection-strong');\n\n// `Map` constructor\n// https://tc39.github.io/ecma262/#sec-map-objects\nmodule.exports = collection('Map', function (init) {\n return function Map() { return init(this, arguments.length ? arguments[0] : undefined); };\n}, collectionStrong);\n","'use strict';\nvar 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","// a string of all valid unicode whitespaces\n// eslint-disable-next-line max-len\nmodule.exports = '\\u0009\\u000A\\u000B\\u000C\\u000D\\u0020\\u00A0\\u1680\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u202F\\u205F\\u3000\\u2028\\u2029\\uFEFF';\n","var requireObjectCoercible = require('../internals/require-object-coercible');\nvar whitespaces = require('../internals/whitespaces');\n\nvar whitespace = '[' + whitespaces + ']';\nvar ltrim = RegExp('^' + whitespace + whitespace + '*');\nvar rtrim = RegExp(whitespace + whitespace + '*$');\n\n// `String.prototype.{ trim, trimStart, trimEnd, trimLeft, trimRight }` methods implementation\nvar createMethod = function (TYPE) {\n return function ($this) {\n var string = String(requireObjectCoercible($this));\n if (TYPE & 1) string = string.replace(ltrim, '');\n if (TYPE & 2) string = string.replace(rtrim, '');\n return string;\n };\n};\n\nmodule.exports = {\n // `String.prototype.{ trimLeft, trimStart }` methods\n // https://tc39.github.io/ecma262/#sec-string.prototype.trimstart\n start: createMethod(1),\n // `String.prototype.{ trimRight, trimEnd }` methods\n // https://tc39.github.io/ecma262/#sec-string.prototype.trimend\n end: createMethod(2),\n // `String.prototype.trim` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.trim\n trim: createMethod(3)\n};\n","/*\n\tBased on rgbcolor.js by Stoyan Stefanov \n\thttp://www.phpied.com/rgb-color-parser-in-javascript/\n*/\n\nmodule.exports = function(color_string) {\n this.ok = false;\n this.alpha = 1.0;\n\n // strip any leading #\n if (color_string.charAt(0) == '#') { // remove # if any\n color_string = color_string.substr(1,6);\n }\n\n color_string = color_string.replace(/ /g,'');\n color_string = color_string.toLowerCase();\n\n // before getting into regexps, try simple matches\n // and overwrite the input\n var simple_colors = {\n aliceblue: 'f0f8ff',\n antiquewhite: 'faebd7',\n aqua: '00ffff',\n aquamarine: '7fffd4',\n azure: 'f0ffff',\n beige: 'f5f5dc',\n bisque: 'ffe4c4',\n black: '000000',\n blanchedalmond: 'ffebcd',\n blue: '0000ff',\n blueviolet: '8a2be2',\n brown: 'a52a2a',\n burlywood: 'deb887',\n cadetblue: '5f9ea0',\n chartreuse: '7fff00',\n chocolate: 'd2691e',\n coral: 'ff7f50',\n cornflowerblue: '6495ed',\n cornsilk: 'fff8dc',\n crimson: 'dc143c',\n cyan: '00ffff',\n darkblue: '00008b',\n darkcyan: '008b8b',\n darkgoldenrod: 'b8860b',\n darkgray: 'a9a9a9',\n darkgreen: '006400',\n darkkhaki: 'bdb76b',\n darkmagenta: '8b008b',\n darkolivegreen: '556b2f',\n darkorange: 'ff8c00',\n darkorchid: '9932cc',\n darkred: '8b0000',\n darksalmon: 'e9967a',\n darkseagreen: '8fbc8f',\n darkslateblue: '483d8b',\n darkslategray: '2f4f4f',\n darkturquoise: '00ced1',\n darkviolet: '9400d3',\n deeppink: 'ff1493',\n deepskyblue: '00bfff',\n dimgray: '696969',\n dodgerblue: '1e90ff',\n feldspar: 'd19275',\n firebrick: 'b22222',\n floralwhite: 'fffaf0',\n forestgreen: '228b22',\n fuchsia: 'ff00ff',\n gainsboro: 'dcdcdc',\n ghostwhite: 'f8f8ff',\n gold: 'ffd700',\n goldenrod: 'daa520',\n gray: '808080',\n green: '008000',\n greenyellow: 'adff2f',\n honeydew: 'f0fff0',\n hotpink: 'ff69b4',\n indianred : 'cd5c5c',\n indigo : '4b0082',\n ivory: 'fffff0',\n khaki: 'f0e68c',\n lavender: 'e6e6fa',\n lavenderblush: 'fff0f5',\n lawngreen: '7cfc00',\n lemonchiffon: 'fffacd',\n lightblue: 'add8e6',\n lightcoral: 'f08080',\n lightcyan: 'e0ffff',\n lightgoldenrodyellow: 'fafad2',\n lightgrey: 'd3d3d3',\n lightgreen: '90ee90',\n lightpink: 'ffb6c1',\n lightsalmon: 'ffa07a',\n lightseagreen: '20b2aa',\n lightskyblue: '87cefa',\n lightslateblue: '8470ff',\n lightslategray: '778899',\n lightsteelblue: 'b0c4de',\n lightyellow: 'ffffe0',\n lime: '00ff00',\n limegreen: '32cd32',\n linen: 'faf0e6',\n magenta: 'ff00ff',\n maroon: '800000',\n mediumaquamarine: '66cdaa',\n mediumblue: '0000cd',\n mediumorchid: 'ba55d3',\n mediumpurple: '9370d8',\n mediumseagreen: '3cb371',\n mediumslateblue: '7b68ee',\n mediumspringgreen: '00fa9a',\n mediumturquoise: '48d1cc',\n mediumvioletred: 'c71585',\n midnightblue: '191970',\n mintcream: 'f5fffa',\n mistyrose: 'ffe4e1',\n moccasin: 'ffe4b5',\n navajowhite: 'ffdead',\n navy: '000080',\n oldlace: 'fdf5e6',\n olive: '808000',\n olivedrab: '6b8e23',\n orange: 'ffa500',\n orangered: 'ff4500',\n orchid: 'da70d6',\n palegoldenrod: 'eee8aa',\n palegreen: '98fb98',\n paleturquoise: 'afeeee',\n palevioletred: 'd87093',\n papayawhip: 'ffefd5',\n peachpuff: 'ffdab9',\n peru: 'cd853f',\n pink: 'ffc0cb',\n plum: 'dda0dd',\n powderblue: 'b0e0e6',\n purple: '800080',\n rebeccapurple: '663399',\n red: 'ff0000',\n rosybrown: 'bc8f8f',\n royalblue: '4169e1',\n saddlebrown: '8b4513',\n salmon: 'fa8072',\n sandybrown: 'f4a460',\n seagreen: '2e8b57',\n seashell: 'fff5ee',\n sienna: 'a0522d',\n silver: 'c0c0c0',\n skyblue: '87ceeb',\n slateblue: '6a5acd',\n slategray: '708090',\n snow: 'fffafa',\n springgreen: '00ff7f',\n steelblue: '4682b4',\n tan: 'd2b48c',\n teal: '008080',\n thistle: 'd8bfd8',\n tomato: 'ff6347',\n turquoise: '40e0d0',\n violet: 'ee82ee',\n violetred: 'd02090',\n wheat: 'f5deb3',\n white: 'ffffff',\n whitesmoke: 'f5f5f5',\n yellow: 'ffff00',\n yellowgreen: '9acd32'\n };\n color_string = simple_colors[color_string] || color_string;\n // emd of simple type-in colors\n\n // array of color definition objects\n var color_defs = [\n {\n re: /^rgba\\((\\d{1,3}),\\s*(\\d{1,3}),\\s*(\\d{1,3}),\\s*((?:\\d?\\.)?\\d)\\)$/,\n example: ['rgba(123, 234, 45, 0.8)', 'rgba(255,234,245,1.0)'],\n process: function (bits){\n return [\n parseInt(bits[1]),\n parseInt(bits[2]),\n parseInt(bits[3]),\n parseFloat(bits[4])\n ];\n }\n },\n {\n re: /^rgb\\((\\d{1,3}),\\s*(\\d{1,3}),\\s*(\\d{1,3})\\)$/,\n example: ['rgb(123, 234, 45)', 'rgb(255,234,245)'],\n process: function (bits){\n return [\n parseInt(bits[1]),\n parseInt(bits[2]),\n parseInt(bits[3])\n ];\n }\n },\n {\n re: /^([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,\n example: ['#00ff00', '336699'],\n process: function (bits){\n return [\n parseInt(bits[1], 16),\n parseInt(bits[2], 16),\n parseInt(bits[3], 16)\n ];\n }\n },\n {\n re: /^([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,\n example: ['#fb0', 'f0f'],\n process: function (bits){\n return [\n parseInt(bits[1] + bits[1], 16),\n parseInt(bits[2] + bits[2], 16),\n parseInt(bits[3] + bits[3], 16)\n ];\n }\n }\n ];\n\n // search through the definitions to find a match\n for (var i = 0; i < color_defs.length; i++) {\n var re = color_defs[i].re;\n var processor = color_defs[i].process;\n var bits = re.exec(color_string);\n if (bits) {\n var channels = processor(bits);\n this.r = channels[0];\n this.g = channels[1];\n this.b = channels[2];\n if (channels.length > 3) {\n this.alpha = channels[3];\n }\n this.ok = true;\n }\n\n }\n\n // validate/cleanup values\n this.r = (this.r < 0 || isNaN(this.r)) ? 0 : ((this.r > 255) ? 255 : this.r);\n this.g = (this.g < 0 || isNaN(this.g)) ? 0 : ((this.g > 255) ? 255 : this.g);\n this.b = (this.b < 0 || isNaN(this.b)) ? 0 : ((this.b > 255) ? 255 : this.b);\n this.alpha = (this.alpha < 0) ? 0 : ((this.alpha > 1.0 || isNaN(this.alpha)) ? 1.0 : this.alpha);\n\n // some getters\n this.toRGB = function () {\n return 'rgb(' + this.r + ', ' + this.g + ', ' + this.b + ')';\n }\n this.toRGBA = function () {\n return 'rgba(' + this.r + ', ' + this.g + ', ' + this.b + ', ' + this.alpha + ')';\n }\n this.toHex = function () {\n var r = this.r.toString(16);\n var g = this.g.toString(16);\n var b = this.b.toString(16);\n if (r.length == 1) r = '0' + r;\n if (g.length == 1) g = '0' + g;\n if (b.length == 1) b = '0' + b;\n return '#' + r + g + b;\n }\n\n // help\n this.getHelpXML = function () {\n\n var examples = new Array();\n // add regexps\n for (var i = 0; i < color_defs.length; i++) {\n var example = color_defs[i].example;\n for (var j = 0; j < example.length; j++) {\n examples[examples.length] = example[j];\n }\n }\n // add type-in colors\n for (var sc in simple_colors) {\n examples[examples.length] = sc;\n }\n\n var xml = document.createElement('ul');\n xml.setAttribute('id', 'rgbcolor-examples');\n for (var i = 0; i < examples.length; i++) {\n try {\n var list_item = document.createElement('li');\n var list_color = new RGBColor(examples[i]);\n var example_div = document.createElement('div');\n example_div.style.cssText =\n 'margin: 3px; '\n + 'border: 1px solid black; '\n + 'background:' + list_color.toHex() + '; '\n + 'color:' + list_color.toHex()\n ;\n example_div.appendChild(document.createTextNode('test'));\n var list_item_value = document.createTextNode(\n ' ' + examples[i] + ' -> ' + list_color.toRGB() + ' -> ' + list_color.toHex()\n );\n list_item.appendChild(example_div);\n list_item.appendChild(list_item_value);\n xml.appendChild(list_item);\n\n } catch(e){}\n }\n return xml;\n\n }\n\n}\n","function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n\n return arr2;\n}\n\nmodule.exports = _arrayLikeToArray;","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\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\nmodule.exports = _createClass;","var $ = require('../internals/export');\nvar isObject = require('../internals/is-object');\nvar anObject = require('../internals/an-object');\nvar has = require('../internals/has');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\n\n// `Reflect.get` method\n// https://tc39.github.io/ecma262/#sec-reflect.get\nfunction get(target, propertyKey /* , receiver */) {\n var receiver = arguments.length < 3 ? target : arguments[2];\n var descriptor, prototype;\n if (anObject(target) === receiver) return target[propertyKey];\n if (descriptor = getOwnPropertyDescriptorModule.f(target, propertyKey)) return has(descriptor, 'value')\n ? descriptor.value\n : descriptor.get === undefined\n ? undefined\n : descriptor.get.call(receiver);\n if (isObject(prototype = getPrototypeOf(target))) return get(prototype, propertyKey, receiver);\n}\n\n$({ target: 'Reflect', stat: true }, {\n get: get\n});\n","function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function (obj) {\n return typeof obj;\n };\n } else {\n _typeof = function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\n/* eslint-disable no-bitwise -- used for calculations */\n\n/* eslint-disable unicorn/prefer-query-selector -- aiming at\n backward-compatibility */\n\n/**\n* StackBlur - a fast almost Gaussian Blur For Canvas\n*\n* In case you find this class useful - especially in commercial projects -\n* I am not totally unhappy for a small donation to my PayPal account\n* mario@quasimondo.de\n*\n* Or support me on flattr:\n* {@link https://flattr.com/thing/72791/StackBlur-a-fast-almost-Gaussian-Blur-Effect-for-CanvasJavascript}.\n*\n* @module StackBlur\n* @author Mario Klingemann\n* Contact: mario@quasimondo.com\n* Website: {@link http://www.quasimondo.com/StackBlurForCanvas/StackBlurDemo.html}\n* Twitter: @quasimondo\n*\n* @copyright (c) 2010 Mario Klingemann\n*\n* Permission is hereby granted, free of charge, to any person\n* obtaining a copy of this software and associated documentation\n* files (the \"Software\"), to deal in the Software without\n* restriction, including without limitation the rights to use,\n* copy, modify, merge, publish, distribute, sublicense, and/or sell\n* copies of the Software, and to permit persons to whom the\n* Software is furnished to do so, subject to the following\n* conditions:\n*\n* The above copyright notice and this permission notice shall be\n* included in all copies or substantial portions of the Software.\n*\n* THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES\n* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT\n* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,\n* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING\n* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR\n* OTHER DEALINGS IN THE SOFTWARE.\n*/\nvar mulTable = [512, 512, 456, 512, 328, 456, 335, 512, 405, 328, 271, 456, 388, 335, 292, 512, 454, 405, 364, 328, 298, 271, 496, 456, 420, 388, 360, 335, 312, 292, 273, 512, 482, 454, 428, 405, 383, 364, 345, 328, 312, 298, 284, 271, 259, 496, 475, 456, 437, 420, 404, 388, 374, 360, 347, 335, 323, 312, 302, 292, 282, 273, 265, 512, 497, 482, 468, 454, 441, 428, 417, 405, 394, 383, 373, 364, 354, 345, 337, 328, 320, 312, 305, 298, 291, 284, 278, 271, 265, 259, 507, 496, 485, 475, 465, 456, 446, 437, 428, 420, 412, 404, 396, 388, 381, 374, 367, 360, 354, 347, 341, 335, 329, 323, 318, 312, 307, 302, 297, 292, 287, 282, 278, 273, 269, 265, 261, 512, 505, 497, 489, 482, 475, 468, 461, 454, 447, 441, 435, 428, 422, 417, 411, 405, 399, 394, 389, 383, 378, 373, 368, 364, 359, 354, 350, 345, 341, 337, 332, 328, 324, 320, 316, 312, 309, 305, 301, 298, 294, 291, 287, 284, 281, 278, 274, 271, 268, 265, 262, 259, 257, 507, 501, 496, 491, 485, 480, 475, 470, 465, 460, 456, 451, 446, 442, 437, 433, 428, 424, 420, 416, 412, 408, 404, 400, 396, 392, 388, 385, 381, 377, 374, 370, 367, 363, 360, 357, 354, 350, 347, 344, 341, 338, 335, 332, 329, 326, 323, 320, 318, 315, 312, 310, 307, 304, 302, 299, 297, 294, 292, 289, 287, 285, 282, 280, 278, 275, 273, 271, 269, 267, 265, 263, 261, 259];\nvar shgTable = [9, 11, 12, 13, 13, 14, 14, 15, 15, 15, 15, 16, 16, 16, 16, 17, 17, 17, 17, 17, 17, 17, 18, 18, 18, 18, 18, 18, 18, 18, 18, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24];\n/**\n * @param {string|HTMLImageElement} img\n * @param {string|HTMLCanvasElement} canvas\n * @param {Float} radius\n * @param {boolean} blurAlphaChannel\n * @param {boolean} useOffsetWidth\n * @returns {undefined}\n */\n\nfunction processImage(img, canvas, radius, blurAlphaChannel, useOffsetWidth) {\n if (typeof img === 'string') {\n img = document.getElementById(img);\n }\n\n if (!img || !('naturalWidth' in img)) {\n return;\n }\n\n var dimensionType = useOffsetWidth ? 'offset' : 'natural';\n var w = img[dimensionType + 'Width'];\n var h = img[dimensionType + 'Height'];\n\n if (typeof canvas === 'string') {\n canvas = document.getElementById(canvas);\n }\n\n if (!canvas || !('getContext' in canvas)) {\n return;\n }\n\n canvas.style.width = w + 'px';\n canvas.style.height = h + 'px';\n canvas.width = w;\n canvas.height = h;\n var context = canvas.getContext('2d');\n context.clearRect(0, 0, w, h);\n context.drawImage(img, 0, 0, img.naturalWidth, img.naturalHeight, 0, 0, w, h);\n\n if (isNaN(radius) || radius < 1) {\n return;\n }\n\n if (blurAlphaChannel) {\n processCanvasRGBA(canvas, 0, 0, w, h, radius);\n } else {\n processCanvasRGB(canvas, 0, 0, w, h, radius);\n }\n}\n/**\n * @param {string|HTMLCanvasElement} canvas\n * @param {Integer} topX\n * @param {Integer} topY\n * @param {Integer} width\n * @param {Integer} height\n * @throws {Error|TypeError}\n * @returns {ImageData} See {@link https://html.spec.whatwg.org/multipage/canvas.html#imagedata}\n */\n\n\nfunction getImageDataFromCanvas(canvas, topX, topY, width, height) {\n if (typeof canvas === 'string') {\n canvas = document.getElementById(canvas);\n }\n\n if (!canvas || _typeof(canvas) !== 'object' || !('getContext' in canvas)) {\n throw new TypeError('Expecting canvas with `getContext` method ' + 'in processCanvasRGB(A) calls!');\n }\n\n var context = canvas.getContext('2d');\n\n try {\n return context.getImageData(topX, topY, width, height);\n } catch (e) {\n throw new Error('unable to access image data: ' + e);\n }\n}\n/**\n * @param {HTMLCanvasElement} canvas\n * @param {Integer} topX\n * @param {Integer} topY\n * @param {Integer} width\n * @param {Integer} height\n * @param {Float} radius\n * @returns {undefined}\n */\n\n\nfunction processCanvasRGBA(canvas, topX, topY, width, height, radius) {\n if (isNaN(radius) || radius < 1) {\n return;\n }\n\n radius |= 0;\n var imageData = getImageDataFromCanvas(canvas, topX, topY, width, height);\n imageData = processImageDataRGBA(imageData, topX, topY, width, height, radius);\n canvas.getContext('2d').putImageData(imageData, topX, topY);\n}\n/**\n * @param {ImageData} imageData\n * @param {Integer} topX\n * @param {Integer} topY\n * @param {Integer} width\n * @param {Integer} height\n * @param {Float} radius\n * @returns {ImageData}\n */\n\n\nfunction processImageDataRGBA(imageData, topX, topY, width, height, radius) {\n var pixels = imageData.data;\n var div = 2 * radius + 1; // const w4 = width << 2;\n\n var widthMinus1 = width - 1;\n var heightMinus1 = height - 1;\n var radiusPlus1 = radius + 1;\n var sumFactor = radiusPlus1 * (radiusPlus1 + 1) / 2;\n var stackStart = new BlurStack();\n var stack = stackStart;\n var stackEnd;\n\n for (var i = 1; i < div; i++) {\n stack = stack.next = new BlurStack();\n\n if (i === radiusPlus1) {\n stackEnd = stack;\n }\n }\n\n stack.next = stackStart;\n var stackIn = null,\n stackOut = null,\n yw = 0,\n yi = 0;\n var mulSum = mulTable[radius];\n var shgSum = shgTable[radius];\n\n for (var y = 0; y < height; y++) {\n stack = stackStart;\n var pr = pixels[yi],\n pg = pixels[yi + 1],\n pb = pixels[yi + 2],\n pa = pixels[yi + 3];\n\n for (var _i = 0; _i < radiusPlus1; _i++) {\n stack.r = pr;\n stack.g = pg;\n stack.b = pb;\n stack.a = pa;\n stack = stack.next;\n }\n\n var rInSum = 0,\n gInSum = 0,\n bInSum = 0,\n aInSum = 0,\n rOutSum = radiusPlus1 * pr,\n gOutSum = radiusPlus1 * pg,\n bOutSum = radiusPlus1 * pb,\n aOutSum = radiusPlus1 * pa,\n rSum = sumFactor * pr,\n gSum = sumFactor * pg,\n bSum = sumFactor * pb,\n aSum = sumFactor * pa;\n\n for (var _i2 = 1; _i2 < radiusPlus1; _i2++) {\n var p = yi + ((widthMinus1 < _i2 ? widthMinus1 : _i2) << 2);\n var r = pixels[p],\n g = pixels[p + 1],\n b = pixels[p + 2],\n a = pixels[p + 3];\n var rbs = radiusPlus1 - _i2;\n rSum += (stack.r = r) * rbs;\n gSum += (stack.g = g) * rbs;\n bSum += (stack.b = b) * rbs;\n aSum += (stack.a = a) * rbs;\n rInSum += r;\n gInSum += g;\n bInSum += b;\n aInSum += a;\n stack = stack.next;\n }\n\n stackIn = stackStart;\n stackOut = stackEnd;\n\n for (var x = 0; x < width; x++) {\n var paInitial = aSum * mulSum >> shgSum;\n pixels[yi + 3] = paInitial;\n\n if (paInitial !== 0) {\n var _a2 = 255 / paInitial;\n\n pixels[yi] = (rSum * mulSum >> shgSum) * _a2;\n pixels[yi + 1] = (gSum * mulSum >> shgSum) * _a2;\n pixels[yi + 2] = (bSum * mulSum >> shgSum) * _a2;\n } else {\n pixels[yi] = pixels[yi + 1] = pixels[yi + 2] = 0;\n }\n\n rSum -= rOutSum;\n gSum -= gOutSum;\n bSum -= bOutSum;\n aSum -= aOutSum;\n rOutSum -= stackIn.r;\n gOutSum -= stackIn.g;\n bOutSum -= stackIn.b;\n aOutSum -= stackIn.a;\n\n var _p = x + radius + 1;\n\n _p = yw + (_p < widthMinus1 ? _p : widthMinus1) << 2;\n rInSum += stackIn.r = pixels[_p];\n gInSum += stackIn.g = pixels[_p + 1];\n bInSum += stackIn.b = pixels[_p + 2];\n aInSum += stackIn.a = pixels[_p + 3];\n rSum += rInSum;\n gSum += gInSum;\n bSum += bInSum;\n aSum += aInSum;\n stackIn = stackIn.next;\n var _stackOut = stackOut,\n _r = _stackOut.r,\n _g = _stackOut.g,\n _b = _stackOut.b,\n _a = _stackOut.a;\n rOutSum += _r;\n gOutSum += _g;\n bOutSum += _b;\n aOutSum += _a;\n rInSum -= _r;\n gInSum -= _g;\n bInSum -= _b;\n aInSum -= _a;\n stackOut = stackOut.next;\n yi += 4;\n }\n\n yw += width;\n }\n\n for (var _x = 0; _x < width; _x++) {\n yi = _x << 2;\n\n var _pr = pixels[yi],\n _pg = pixels[yi + 1],\n _pb = pixels[yi + 2],\n _pa = pixels[yi + 3],\n _rOutSum = radiusPlus1 * _pr,\n _gOutSum = radiusPlus1 * _pg,\n _bOutSum = radiusPlus1 * _pb,\n _aOutSum = radiusPlus1 * _pa,\n _rSum = sumFactor * _pr,\n _gSum = sumFactor * _pg,\n _bSum = sumFactor * _pb,\n _aSum = sumFactor * _pa;\n\n stack = stackStart;\n\n for (var _i3 = 0; _i3 < radiusPlus1; _i3++) {\n stack.r = _pr;\n stack.g = _pg;\n stack.b = _pb;\n stack.a = _pa;\n stack = stack.next;\n }\n\n var yp = width;\n var _gInSum = 0,\n _bInSum = 0,\n _aInSum = 0,\n _rInSum = 0;\n\n for (var _i4 = 1; _i4 <= radius; _i4++) {\n yi = yp + _x << 2;\n\n var _rbs = radiusPlus1 - _i4;\n\n _rSum += (stack.r = _pr = pixels[yi]) * _rbs;\n _gSum += (stack.g = _pg = pixels[yi + 1]) * _rbs;\n _bSum += (stack.b = _pb = pixels[yi + 2]) * _rbs;\n _aSum += (stack.a = _pa = pixels[yi + 3]) * _rbs;\n _rInSum += _pr;\n _gInSum += _pg;\n _bInSum += _pb;\n _aInSum += _pa;\n stack = stack.next;\n\n if (_i4 < heightMinus1) {\n yp += width;\n }\n }\n\n yi = _x;\n stackIn = stackStart;\n stackOut = stackEnd;\n\n for (var _y = 0; _y < height; _y++) {\n var _p2 = yi << 2;\n\n pixels[_p2 + 3] = _pa = _aSum * mulSum >> shgSum;\n\n if (_pa > 0) {\n _pa = 255 / _pa;\n pixels[_p2] = (_rSum * mulSum >> shgSum) * _pa;\n pixels[_p2 + 1] = (_gSum * mulSum >> shgSum) * _pa;\n pixels[_p2 + 2] = (_bSum * mulSum >> shgSum) * _pa;\n } else {\n pixels[_p2] = pixels[_p2 + 1] = pixels[_p2 + 2] = 0;\n }\n\n _rSum -= _rOutSum;\n _gSum -= _gOutSum;\n _bSum -= _bOutSum;\n _aSum -= _aOutSum;\n _rOutSum -= stackIn.r;\n _gOutSum -= stackIn.g;\n _bOutSum -= stackIn.b;\n _aOutSum -= stackIn.a;\n _p2 = _x + ((_p2 = _y + radiusPlus1) < heightMinus1 ? _p2 : heightMinus1) * width << 2;\n _rSum += _rInSum += stackIn.r = pixels[_p2];\n _gSum += _gInSum += stackIn.g = pixels[_p2 + 1];\n _bSum += _bInSum += stackIn.b = pixels[_p2 + 2];\n _aSum += _aInSum += stackIn.a = pixels[_p2 + 3];\n stackIn = stackIn.next;\n _rOutSum += _pr = stackOut.r;\n _gOutSum += _pg = stackOut.g;\n _bOutSum += _pb = stackOut.b;\n _aOutSum += _pa = stackOut.a;\n _rInSum -= _pr;\n _gInSum -= _pg;\n _bInSum -= _pb;\n _aInSum -= _pa;\n stackOut = stackOut.next;\n yi += width;\n }\n }\n\n return imageData;\n}\n/**\n * @param {HTMLCanvasElement} canvas\n * @param {Integer} topX\n * @param {Integer} topY\n * @param {Integer} width\n * @param {Integer} height\n * @param {Float} radius\n * @returns {undefined}\n */\n\n\nfunction processCanvasRGB(canvas, topX, topY, width, height, radius) {\n if (isNaN(radius) || radius < 1) {\n return;\n }\n\n radius |= 0;\n var imageData = getImageDataFromCanvas(canvas, topX, topY, width, height);\n imageData = processImageDataRGB(imageData, topX, topY, width, height, radius);\n canvas.getContext('2d').putImageData(imageData, topX, topY);\n}\n/**\n * @param {ImageData} imageData\n * @param {Integer} topX\n * @param {Integer} topY\n * @param {Integer} width\n * @param {Integer} height\n * @param {Float} radius\n * @returns {ImageData}\n */\n\n\nfunction processImageDataRGB(imageData, topX, topY, width, height, radius) {\n var pixels = imageData.data;\n var div = 2 * radius + 1; // const w4 = width << 2;\n\n var widthMinus1 = width - 1;\n var heightMinus1 = height - 1;\n var radiusPlus1 = radius + 1;\n var sumFactor = radiusPlus1 * (radiusPlus1 + 1) / 2;\n var stackStart = new BlurStack();\n var stack = stackStart;\n var stackEnd;\n\n for (var i = 1; i < div; i++) {\n stack = stack.next = new BlurStack();\n\n if (i === radiusPlus1) {\n stackEnd = stack;\n }\n }\n\n stack.next = stackStart;\n var stackIn = null;\n var stackOut = null;\n var mulSum = mulTable[radius];\n var shgSum = shgTable[radius];\n var p, rbs;\n var yw = 0,\n yi = 0;\n\n for (var y = 0; y < height; y++) {\n var pr = pixels[yi],\n pg = pixels[yi + 1],\n pb = pixels[yi + 2],\n rOutSum = radiusPlus1 * pr,\n gOutSum = radiusPlus1 * pg,\n bOutSum = radiusPlus1 * pb,\n rSum = sumFactor * pr,\n gSum = sumFactor * pg,\n bSum = sumFactor * pb;\n stack = stackStart;\n\n for (var _i5 = 0; _i5 < radiusPlus1; _i5++) {\n stack.r = pr;\n stack.g = pg;\n stack.b = pb;\n stack = stack.next;\n }\n\n var rInSum = 0,\n gInSum = 0,\n bInSum = 0;\n\n for (var _i6 = 1; _i6 < radiusPlus1; _i6++) {\n p = yi + ((widthMinus1 < _i6 ? widthMinus1 : _i6) << 2);\n rSum += (stack.r = pr = pixels[p]) * (rbs = radiusPlus1 - _i6);\n gSum += (stack.g = pg = pixels[p + 1]) * rbs;\n bSum += (stack.b = pb = pixels[p + 2]) * rbs;\n rInSum += pr;\n gInSum += pg;\n bInSum += pb;\n stack = stack.next;\n }\n\n stackIn = stackStart;\n stackOut = stackEnd;\n\n for (var x = 0; x < width; x++) {\n pixels[yi] = rSum * mulSum >> shgSum;\n pixels[yi + 1] = gSum * mulSum >> shgSum;\n pixels[yi + 2] = bSum * mulSum >> shgSum;\n rSum -= rOutSum;\n gSum -= gOutSum;\n bSum -= bOutSum;\n rOutSum -= stackIn.r;\n gOutSum -= stackIn.g;\n bOutSum -= stackIn.b;\n p = yw + ((p = x + radius + 1) < widthMinus1 ? p : widthMinus1) << 2;\n rInSum += stackIn.r = pixels[p];\n gInSum += stackIn.g = pixels[p + 1];\n bInSum += stackIn.b = pixels[p + 2];\n rSum += rInSum;\n gSum += gInSum;\n bSum += bInSum;\n stackIn = stackIn.next;\n rOutSum += pr = stackOut.r;\n gOutSum += pg = stackOut.g;\n bOutSum += pb = stackOut.b;\n rInSum -= pr;\n gInSum -= pg;\n bInSum -= pb;\n stackOut = stackOut.next;\n yi += 4;\n }\n\n yw += width;\n }\n\n for (var _x2 = 0; _x2 < width; _x2++) {\n yi = _x2 << 2;\n\n var _pr2 = pixels[yi],\n _pg2 = pixels[yi + 1],\n _pb2 = pixels[yi + 2],\n _rOutSum2 = radiusPlus1 * _pr2,\n _gOutSum2 = radiusPlus1 * _pg2,\n _bOutSum2 = radiusPlus1 * _pb2,\n _rSum2 = sumFactor * _pr2,\n _gSum2 = sumFactor * _pg2,\n _bSum2 = sumFactor * _pb2;\n\n stack = stackStart;\n\n for (var _i7 = 0; _i7 < radiusPlus1; _i7++) {\n stack.r = _pr2;\n stack.g = _pg2;\n stack.b = _pb2;\n stack = stack.next;\n }\n\n var _rInSum2 = 0,\n _gInSum2 = 0,\n _bInSum2 = 0;\n\n for (var _i8 = 1, yp = width; _i8 <= radius; _i8++) {\n yi = yp + _x2 << 2;\n _rSum2 += (stack.r = _pr2 = pixels[yi]) * (rbs = radiusPlus1 - _i8);\n _gSum2 += (stack.g = _pg2 = pixels[yi + 1]) * rbs;\n _bSum2 += (stack.b = _pb2 = pixels[yi + 2]) * rbs;\n _rInSum2 += _pr2;\n _gInSum2 += _pg2;\n _bInSum2 += _pb2;\n stack = stack.next;\n\n if (_i8 < heightMinus1) {\n yp += width;\n }\n }\n\n yi = _x2;\n stackIn = stackStart;\n stackOut = stackEnd;\n\n for (var _y2 = 0; _y2 < height; _y2++) {\n p = yi << 2;\n pixels[p] = _rSum2 * mulSum >> shgSum;\n pixels[p + 1] = _gSum2 * mulSum >> shgSum;\n pixels[p + 2] = _bSum2 * mulSum >> shgSum;\n _rSum2 -= _rOutSum2;\n _gSum2 -= _gOutSum2;\n _bSum2 -= _bOutSum2;\n _rOutSum2 -= stackIn.r;\n _gOutSum2 -= stackIn.g;\n _bOutSum2 -= stackIn.b;\n p = _x2 + ((p = _y2 + radiusPlus1) < heightMinus1 ? p : heightMinus1) * width << 2;\n _rSum2 += _rInSum2 += stackIn.r = pixels[p];\n _gSum2 += _gInSum2 += stackIn.g = pixels[p + 1];\n _bSum2 += _bInSum2 += stackIn.b = pixels[p + 2];\n stackIn = stackIn.next;\n _rOutSum2 += _pr2 = stackOut.r;\n _gOutSum2 += _pg2 = stackOut.g;\n _bOutSum2 += _pb2 = stackOut.b;\n _rInSum2 -= _pr2;\n _gInSum2 -= _pg2;\n _bInSum2 -= _pb2;\n stackOut = stackOut.next;\n yi += width;\n }\n }\n\n return imageData;\n}\n/**\n *\n */\n\n\nvar BlurStack =\n/**\n * Set properties.\n */\nfunction BlurStack() {\n _classCallCheck(this, BlurStack);\n\n this.r = 0;\n this.g = 0;\n this.b = 0;\n this.a = 0;\n this.next = null;\n};\n\nexport { BlurStack, processCanvasRGB as canvasRGB, processCanvasRGBA as canvasRGBA, processImage as image, processImageDataRGB as imageDataRGB, processImageDataRGBA as imageDataRGBA };\n","var toInteger = require('../internals/to-integer');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\n// `String.prototype.{ codePointAt, at }` methods implementation\nvar createMethod = function (CONVERT_TO_STRING) {\n return function ($this, pos) {\n var S = String(requireObjectCoercible($this));\n var position = toInteger(pos);\n var size = S.length;\n var first, second;\n if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;\n first = S.charCodeAt(position);\n return first < 0xD800 || first > 0xDBFF || position + 1 === size\n || (second = S.charCodeAt(position + 1)) < 0xDC00 || second > 0xDFFF\n ? CONVERT_TO_STRING ? S.charAt(position) : first\n : CONVERT_TO_STRING ? S.slice(position, position + 2) : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;\n };\n};\n\nmodule.exports = {\n // `String.prototype.codePointAt` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.codepointat\n codeAt: createMethod(false),\n // `String.prototype.at` method\n // https://github.com/mathiasbynens/String.prototype.at\n charAt: createMethod(true)\n};\n","'use strict';\nvar defineProperty = require('../internals/object-define-property').f;\nvar create = require('../internals/object-create');\nvar redefineAll = require('../internals/redefine-all');\nvar bind = require('../internals/function-bind-context');\nvar anInstance = require('../internals/an-instance');\nvar iterate = require('../internals/iterate');\nvar defineIterator = require('../internals/define-iterator');\nvar setSpecies = require('../internals/set-species');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fastKey = require('../internals/internal-metadata').fastKey;\nvar InternalStateModule = require('../internals/internal-state');\n\nvar setInternalState = InternalStateModule.set;\nvar internalStateGetterFor = InternalStateModule.getterFor;\n\nmodule.exports = {\n getConstructor: function (wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER) {\n var C = wrapper(function (that, iterable) {\n anInstance(that, C, CONSTRUCTOR_NAME);\n setInternalState(that, {\n type: CONSTRUCTOR_NAME,\n index: create(null),\n first: undefined,\n last: undefined,\n size: 0\n });\n if (!DESCRIPTORS) that.size = 0;\n if (iterable != undefined) iterate(iterable, that[ADDER], that, IS_MAP);\n });\n\n var getInternalState = internalStateGetterFor(CONSTRUCTOR_NAME);\n\n var define = function (that, key, value) {\n var state = getInternalState(that);\n var entry = getEntry(that, key);\n var previous, index;\n // change existing entry\n if (entry) {\n entry.value = value;\n // create new entry\n } else {\n state.last = entry = {\n index: index = fastKey(key, true),\n key: key,\n value: value,\n previous: previous = state.last,\n next: undefined,\n removed: false\n };\n if (!state.first) state.first = entry;\n if (previous) previous.next = entry;\n if (DESCRIPTORS) state.size++;\n else that.size++;\n // add to index\n if (index !== 'F') state.index[index] = entry;\n } return that;\n };\n\n var getEntry = function (that, key) {\n var state = getInternalState(that);\n // fast case\n var index = fastKey(key);\n var entry;\n if (index !== 'F') return state.index[index];\n // frozen object case\n for (entry = state.first; entry; entry = entry.next) {\n if (entry.key == key) return entry;\n }\n };\n\n redefineAll(C.prototype, {\n // 23.1.3.1 Map.prototype.clear()\n // 23.2.3.2 Set.prototype.clear()\n clear: function clear() {\n var that = this;\n var state = getInternalState(that);\n var data = state.index;\n var entry = state.first;\n while (entry) {\n entry.removed = true;\n if (entry.previous) entry.previous = entry.previous.next = undefined;\n delete data[entry.index];\n entry = entry.next;\n }\n state.first = state.last = undefined;\n if (DESCRIPTORS) state.size = 0;\n else that.size = 0;\n },\n // 23.1.3.3 Map.prototype.delete(key)\n // 23.2.3.4 Set.prototype.delete(value)\n 'delete': function (key) {\n var that = this;\n var state = getInternalState(that);\n var entry = getEntry(that, key);\n if (entry) {\n var next = entry.next;\n var prev = entry.previous;\n delete state.index[entry.index];\n entry.removed = true;\n if (prev) prev.next = next;\n if (next) next.previous = prev;\n if (state.first == entry) state.first = next;\n if (state.last == entry) state.last = prev;\n if (DESCRIPTORS) state.size--;\n else that.size--;\n } return !!entry;\n },\n // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined)\n // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined)\n forEach: function forEach(callbackfn /* , that = undefined */) {\n var state = getInternalState(this);\n var boundFunction = bind(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3);\n var entry;\n while (entry = entry ? entry.next : state.first) {\n boundFunction(entry.value, entry.key, this);\n // revert to the last existing entry\n while (entry && entry.removed) entry = entry.previous;\n }\n },\n // 23.1.3.7 Map.prototype.has(key)\n // 23.2.3.7 Set.prototype.has(value)\n has: function has(key) {\n return !!getEntry(this, key);\n }\n });\n\n redefineAll(C.prototype, IS_MAP ? {\n // 23.1.3.6 Map.prototype.get(key)\n get: function get(key) {\n var entry = getEntry(this, key);\n return entry && entry.value;\n },\n // 23.1.3.9 Map.prototype.set(key, value)\n set: function set(key, value) {\n return define(this, key === 0 ? 0 : key, value);\n }\n } : {\n // 23.2.3.1 Set.prototype.add(value)\n add: function add(value) {\n return define(this, value = value === 0 ? 0 : value, value);\n }\n });\n if (DESCRIPTORS) defineProperty(C.prototype, 'size', {\n get: function () {\n return getInternalState(this).size;\n }\n });\n return C;\n },\n setStrong: function (C, CONSTRUCTOR_NAME, IS_MAP) {\n var ITERATOR_NAME = CONSTRUCTOR_NAME + ' Iterator';\n var getInternalCollectionState = internalStateGetterFor(CONSTRUCTOR_NAME);\n var getInternalIteratorState = internalStateGetterFor(ITERATOR_NAME);\n // add .keys, .values, .entries, [@@iterator]\n // 23.1.3.4, 23.1.3.8, 23.1.3.11, 23.1.3.12, 23.2.3.5, 23.2.3.8, 23.2.3.10, 23.2.3.11\n defineIterator(C, CONSTRUCTOR_NAME, function (iterated, kind) {\n setInternalState(this, {\n type: ITERATOR_NAME,\n target: iterated,\n state: getInternalCollectionState(iterated),\n kind: kind,\n last: undefined\n });\n }, function () {\n var state = getInternalIteratorState(this);\n var kind = state.kind;\n var entry = state.last;\n // revert to the last existing entry\n while (entry && entry.removed) entry = entry.previous;\n // get next entry\n if (!state.target || !(state.last = entry = entry ? entry.next : state.state.first)) {\n // or finish the iteration\n state.target = undefined;\n return { value: undefined, done: true };\n }\n // return step by kind\n if (kind == 'keys') return { value: entry.key, done: false };\n if (kind == 'values') return { value: entry.value, done: false };\n return { value: [entry.key, entry.value], done: false };\n }, IS_MAP ? 'entries' : 'values', !IS_MAP, true);\n\n // add [@@species], 23.1.2.2, 23.2.2.2\n setSpecies(CONSTRUCTOR_NAME);\n }\n};\n","var arrayLikeToArray = require(\"./arrayLikeToArray\");\n\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}\n\nmodule.exports = _unsupportedIterableToArray;","var _typeof = require(\"../helpers/typeof\");\n\nvar assertThisInitialized = require(\"./assertThisInitialized\");\n\nfunction _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n }\n\n return assertThisInitialized(self);\n}\n\nmodule.exports = _possibleConstructorReturn;","// Generated by CoffeeScript 1.12.2\n(function() {\n var getNanoSeconds, hrtime, loadTime, moduleLoadTime, nodeLoadTime, upTime;\n\n if ((typeof performance !== \"undefined\" && performance !== null) && performance.now) {\n module.exports = function() {\n return performance.now();\n };\n } else if ((typeof process !== \"undefined\" && process !== null) && process.hrtime) {\n module.exports = function() {\n return (getNanoSeconds() - nodeLoadTime) / 1e6;\n };\n hrtime = process.hrtime;\n getNanoSeconds = function() {\n var hr;\n hr = hrtime();\n return hr[0] * 1e9 + hr[1];\n };\n moduleLoadTime = getNanoSeconds();\n upTime = process.uptime() * 1e9;\n nodeLoadTime = moduleLoadTime - upTime;\n } else if (Date.now) {\n module.exports = function() {\n return Date.now() - loadTime;\n };\n loadTime = Date.now();\n } else {\n module.exports = function() {\n return new Date().getTime() - loadTime;\n };\n loadTime = new Date().getTime();\n }\n\n}).call(this);\n\n//# sourceMappingURL=performance-now.js.map\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","function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n module.exports = _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n module.exports = _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nmodule.exports = _typeof;","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 path = require('../internals/path');\nvar has = require('../internals/has');\nvar wrappedWellKnownSymbolModule = require('../internals/well-known-symbol-wrapped');\nvar defineProperty = require('../internals/object-define-property').f;\n\nmodule.exports = function (NAME) {\n var Symbol = path.Symbol || (path.Symbol = {});\n if (!has(Symbol, NAME)) defineProperty(Symbol, NAME, {\n value: wrappedWellKnownSymbolModule.f(NAME)\n });\n};\n","var $ = require('../internals/export');\nvar anObject = require('../internals/an-object');\nvar objectGetPrototypeOf = require('../internals/object-get-prototype-of');\nvar CORRECT_PROTOTYPE_GETTER = require('../internals/correct-prototype-getter');\n\n// `Reflect.getPrototypeOf` method\n// https://tc39.github.io/ecma262/#sec-reflect.getprototypeof\n$({ target: 'Reflect', stat: true, sham: !CORRECT_PROTOTYPE_GETTER }, {\n getPrototypeOf: function getPrototypeOf(target) {\n return objectGetPrototypeOf(anObject(target));\n }\n});\n","'use strict';\nvar toObject = require('../internals/to-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar toLength = require('../internals/to-length');\n\n// `Array.prototype.fill` method implementation\n// https://tc39.github.io/ecma262/#sec-array.prototype.fill\nmodule.exports = function fill(value /* , start = 0, end = @length */) {\n var O = toObject(this);\n var length = toLength(O.length);\n var argumentsLength = arguments.length;\n var index = toAbsoluteIndex(argumentsLength > 1 ? arguments[1] : undefined, length);\n var end = argumentsLength > 2 ? arguments[2] : undefined;\n var endPos = end === undefined ? length : toAbsoluteIndex(end, length);\n while (endPos > index) O[index++] = value;\n return O;\n};\n","var superPropBase = require(\"./superPropBase\");\n\nfunction _get(target, property, receiver) {\n if (typeof Reflect !== \"undefined\" && Reflect.get) {\n module.exports = _get = Reflect.get;\n } else {\n module.exports = _get = function _get(target, property, receiver) {\n var base = superPropBase(target, property);\n if (!base) return;\n var desc = Object.getOwnPropertyDescriptor(base, property);\n\n if (desc.get) {\n return desc.get.call(receiver);\n }\n\n return desc.value;\n };\n }\n\n return _get(target, property, receiver || target);\n}\n\nmodule.exports = _get;","'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","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}\n\nmodule.exports = _defineProperty;","/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nvar runtime = (function (exports) {\n \"use strict\";\n\n var Op = Object.prototype;\n var hasOwn = Op.hasOwnProperty;\n var undefined; // More compressible than void 0.\n var $Symbol = typeof Symbol === \"function\" ? Symbol : {};\n var iteratorSymbol = $Symbol.iterator || \"@@iterator\";\n var asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\";\n var toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n\n function define(obj, key, value) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n return obj[key];\n }\n try {\n // IE 8 has a broken Object.defineProperty that only works on DOM objects.\n define({}, \"\");\n } catch (err) {\n define = function(obj, key, value) {\n return obj[key] = value;\n };\n }\n\n function wrap(innerFn, outerFn, self, tryLocsList) {\n // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;\n var generator = Object.create(protoGenerator.prototype);\n var context = new Context(tryLocsList || []);\n\n // The ._invoke method unifies the implementations of the .next,\n // .throw, and .return methods.\n generator._invoke = makeInvokeMethod(innerFn, self, context);\n\n return generator;\n }\n exports.wrap = wrap;\n\n // Try/catch helper to minimize deoptimizations. Returns a completion\n // record like context.tryEntries[i].completion. This interface could\n // have been (and was previously) designed to take a closure to be\n // invoked without arguments, but in all the cases we care about we\n // already have an existing method we want to call, so there's no need\n // to create a new function object. We can even get away with assuming\n // the method takes exactly one argument, since that happens to be true\n // in every case, so we don't have to touch the arguments object. The\n // only additional allocation required is the completion record, which\n // has a stable shape and so hopefully should be cheap to allocate.\n function tryCatch(fn, obj, arg) {\n try {\n return { type: \"normal\", arg: fn.call(obj, arg) };\n } catch (err) {\n return { type: \"throw\", arg: err };\n }\n }\n\n var GenStateSuspendedStart = \"suspendedStart\";\n var GenStateSuspendedYield = \"suspendedYield\";\n var GenStateExecuting = \"executing\";\n var GenStateCompleted = \"completed\";\n\n // Returning this object from the innerFn has the same effect as\n // breaking out of the dispatch switch statement.\n var ContinueSentinel = {};\n\n // Dummy constructor functions that we use as the .constructor and\n // .constructor.prototype properties for functions that return Generator\n // objects. For full spec compliance, you may wish to configure your\n // minifier not to mangle the names of these two functions.\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n\n // This is a polyfill for %IteratorPrototype% for environments that\n // don't natively support it.\n var IteratorPrototype = {};\n IteratorPrototype[iteratorSymbol] = function () {\n return this;\n };\n\n var getProto = Object.getPrototypeOf;\n var NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n if (NativeIteratorPrototype &&\n NativeIteratorPrototype !== Op &&\n hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {\n // This environment has a native %IteratorPrototype%; use it instead\n // of the polyfill.\n IteratorPrototype = NativeIteratorPrototype;\n }\n\n var Gp = GeneratorFunctionPrototype.prototype =\n Generator.prototype = Object.create(IteratorPrototype);\n GeneratorFunction.prototype = Gp.constructor = GeneratorFunctionPrototype;\n GeneratorFunctionPrototype.constructor = GeneratorFunction;\n GeneratorFunction.displayName = define(\n GeneratorFunctionPrototype,\n toStringTagSymbol,\n \"GeneratorFunction\"\n );\n\n // Helper for defining the .next, .throw, and .return methods of the\n // Iterator interface in terms of a single ._invoke method.\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function(method) {\n define(prototype, method, function(arg) {\n return this._invoke(method, arg);\n });\n });\n }\n\n exports.isGeneratorFunction = function(genFun) {\n var ctor = typeof genFun === \"function\" && genFun.constructor;\n return ctor\n ? ctor === GeneratorFunction ||\n // For the native GeneratorFunction constructor, the best we can\n // do is to check its .name property.\n (ctor.displayName || ctor.name) === \"GeneratorFunction\"\n : false;\n };\n\n exports.mark = function(genFun) {\n if (Object.setPrototypeOf) {\n Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);\n } else {\n genFun.__proto__ = GeneratorFunctionPrototype;\n define(genFun, toStringTagSymbol, \"GeneratorFunction\");\n }\n genFun.prototype = Object.create(Gp);\n return genFun;\n };\n\n // Within the body of any async function, `await x` is transformed to\n // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test\n // `hasOwn.call(value, \"__await\")` to determine if the yielded value is\n // meant to be awaited.\n exports.awrap = function(arg) {\n return { __await: arg };\n };\n\n function AsyncIterator(generator, PromiseImpl) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n if (record.type === \"throw\") {\n reject(record.arg);\n } else {\n var result = record.arg;\n var value = result.value;\n if (value &&\n typeof value === \"object\" &&\n hasOwn.call(value, \"__await\")) {\n return PromiseImpl.resolve(value.__await).then(function(value) {\n invoke(\"next\", value, resolve, reject);\n }, function(err) {\n invoke(\"throw\", err, resolve, reject);\n });\n }\n\n return PromiseImpl.resolve(value).then(function(unwrapped) {\n // When a yielded Promise is resolved, its final value becomes\n // the .value of the Promise<{value,done}> result for the\n // current iteration.\n result.value = unwrapped;\n resolve(result);\n }, function(error) {\n // If a rejected Promise was yielded, throw the rejection back\n // into the async generator function so it can be handled there.\n return invoke(\"throw\", error, resolve, reject);\n });\n }\n }\n\n var previousPromise;\n\n function enqueue(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new PromiseImpl(function(resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n\n return previousPromise =\n // If enqueue has been called before, then we want to wait until\n // all previous Promises have been resolved before calling invoke,\n // so that results are always delivered in the correct order. If\n // enqueue has not been called before, then it is important to\n // call invoke immediately, without waiting on a callback to fire,\n // so that the async generator function has the opportunity to do\n // any necessary setup in a predictable way. This predictability\n // is why the Promise constructor synchronously invokes its\n // executor callback, and why async functions synchronously\n // execute code before the first await. Since we implement simple\n // async functions in terms of async generators, it is especially\n // important to get this right, even though it requires care.\n previousPromise ? previousPromise.then(\n callInvokeWithMethodAndArg,\n // Avoid propagating failures to Promises returned by later\n // invocations of the iterator.\n callInvokeWithMethodAndArg\n ) : callInvokeWithMethodAndArg();\n }\n\n // Define the unified helper method that is used to implement .next,\n // .throw, and .return (see defineIteratorMethods).\n this._invoke = enqueue;\n }\n\n defineIteratorMethods(AsyncIterator.prototype);\n AsyncIterator.prototype[asyncIteratorSymbol] = function () {\n return this;\n };\n exports.AsyncIterator = AsyncIterator;\n\n // Note that simple async functions are implemented on top of\n // AsyncIterator objects; they just return a Promise for the value of\n // the final result produced by the iterator.\n exports.async = function(innerFn, outerFn, self, tryLocsList, PromiseImpl) {\n if (PromiseImpl === void 0) PromiseImpl = Promise;\n\n var iter = new AsyncIterator(\n wrap(innerFn, outerFn, self, tryLocsList),\n PromiseImpl\n );\n\n return exports.isGeneratorFunction(outerFn)\n ? iter // If outerFn is a generator, return the full iterator.\n : iter.next().then(function(result) {\n return result.done ? result.value : iter.next();\n });\n };\n\n function makeInvokeMethod(innerFn, self, context) {\n var state = GenStateSuspendedStart;\n\n return function invoke(method, arg) {\n if (state === GenStateExecuting) {\n throw new Error(\"Generator is already running\");\n }\n\n if (state === GenStateCompleted) {\n if (method === \"throw\") {\n throw arg;\n }\n\n // Be forgiving, per 25.3.3.3.3 of the spec:\n // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume\n return doneResult();\n }\n\n context.method = method;\n context.arg = arg;\n\n while (true) {\n var delegate = context.delegate;\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n\n if (context.method === \"next\") {\n // Setting context._sent for legacy support of Babel's\n // function.sent implementation.\n context.sent = context._sent = context.arg;\n\n } else if (context.method === \"throw\") {\n if (state === GenStateSuspendedStart) {\n state = GenStateCompleted;\n throw context.arg;\n }\n\n context.dispatchException(context.arg);\n\n } else if (context.method === \"return\") {\n context.abrupt(\"return\", context.arg);\n }\n\n state = GenStateExecuting;\n\n var record = tryCatch(innerFn, self, context);\n if (record.type === \"normal\") {\n // If an exception is thrown from innerFn, we leave state ===\n // GenStateExecuting and loop back for another invocation.\n state = context.done\n ? GenStateCompleted\n : GenStateSuspendedYield;\n\n if (record.arg === ContinueSentinel) {\n continue;\n }\n\n return {\n value: record.arg,\n done: context.done\n };\n\n } else if (record.type === \"throw\") {\n state = GenStateCompleted;\n // Dispatch the exception by looping back around to the\n // context.dispatchException(context.arg) call above.\n context.method = \"throw\";\n context.arg = record.arg;\n }\n }\n };\n }\n\n // Call delegate.iterator[context.method](context.arg) and handle the\n // result, either by returning a { value, done } result from the\n // delegate iterator, or by modifying context.method and context.arg,\n // setting context.delegate to null, and returning the ContinueSentinel.\n function maybeInvokeDelegate(delegate, context) {\n var method = delegate.iterator[context.method];\n if (method === undefined) {\n // A .throw or .return when the delegate iterator has no .throw\n // method always terminates the yield* loop.\n context.delegate = null;\n\n if (context.method === \"throw\") {\n // Note: [\"return\"] must be used for ES3 parsing compatibility.\n if (delegate.iterator[\"return\"]) {\n // If the delegate iterator has a return method, give it a\n // chance to clean up.\n context.method = \"return\";\n context.arg = undefined;\n maybeInvokeDelegate(delegate, context);\n\n if (context.method === \"throw\") {\n // If maybeInvokeDelegate(context) changed context.method from\n // \"return\" to \"throw\", let that override the TypeError below.\n return ContinueSentinel;\n }\n }\n\n context.method = \"throw\";\n context.arg = new TypeError(\n \"The iterator does not provide a 'throw' method\");\n }\n\n return ContinueSentinel;\n }\n\n var record = tryCatch(method, delegate.iterator, context.arg);\n\n if (record.type === \"throw\") {\n context.method = \"throw\";\n context.arg = record.arg;\n context.delegate = null;\n return ContinueSentinel;\n }\n\n var info = record.arg;\n\n if (! info) {\n context.method = \"throw\";\n context.arg = new TypeError(\"iterator result is not an object\");\n context.delegate = null;\n return ContinueSentinel;\n }\n\n if (info.done) {\n // Assign the result of the finished delegate to the temporary\n // variable specified by delegate.resultName (see delegateYield).\n context[delegate.resultName] = info.value;\n\n // Resume execution at the desired location (see delegateYield).\n context.next = delegate.nextLoc;\n\n // If context.method was \"throw\" but the delegate handled the\n // exception, let the outer generator proceed normally. If\n // context.method was \"next\", forget context.arg since it has been\n // \"consumed\" by the delegate iterator. If context.method was\n // \"return\", allow the original .return call to continue in the\n // outer generator.\n if (context.method !== \"return\") {\n context.method = \"next\";\n context.arg = undefined;\n }\n\n } else {\n // Re-yield the result returned by the delegate method.\n return info;\n }\n\n // The delegate iterator is finished, so forget it and continue with\n // the outer generator.\n context.delegate = null;\n return ContinueSentinel;\n }\n\n // Define Generator.prototype.{next,throw,return} in terms of the\n // unified ._invoke helper method.\n defineIteratorMethods(Gp);\n\n define(Gp, toStringTagSymbol, \"Generator\");\n\n // A Generator should always return itself as the iterator object when the\n // @@iterator function is called on it. Some browsers' implementations of the\n // iterator prototype chain incorrectly implement this, causing the Generator\n // object to not be returned from this call. This ensures that doesn't happen.\n // See https://github.com/facebook/regenerator/issues/274 for more details.\n Gp[iteratorSymbol] = function() {\n return this;\n };\n\n Gp.toString = function() {\n return \"[object Generator]\";\n };\n\n function pushTryEntry(locs) {\n var entry = { tryLoc: locs[0] };\n\n if (1 in locs) {\n entry.catchLoc = locs[1];\n }\n\n if (2 in locs) {\n entry.finallyLoc = locs[2];\n entry.afterLoc = locs[3];\n }\n\n this.tryEntries.push(entry);\n }\n\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\";\n delete record.arg;\n entry.completion = record;\n }\n\n function Context(tryLocsList) {\n // The root entry object (effectively a try statement without a catch\n // or a finally block) gives us a place to store values thrown from\n // locations where there is no enclosing try statement.\n this.tryEntries = [{ tryLoc: \"root\" }];\n tryLocsList.forEach(pushTryEntry, this);\n this.reset(true);\n }\n\n exports.keys = function(object) {\n var keys = [];\n for (var key in object) {\n keys.push(key);\n }\n keys.reverse();\n\n // Rather than returning an object with a next method, we keep\n // things simple and return the next function itself.\n return function next() {\n while (keys.length) {\n var key = keys.pop();\n if (key in object) {\n next.value = key;\n next.done = false;\n return next;\n }\n }\n\n // To avoid creating an additional object, we just hang the .value\n // and .done properties off the next function object itself. This\n // also ensures that the minifier will not anonymize the function.\n next.done = true;\n return next;\n };\n };\n\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) {\n return iteratorMethod.call(iterable);\n }\n\n if (typeof iterable.next === \"function\") {\n return iterable;\n }\n\n if (!isNaN(iterable.length)) {\n var i = -1, next = function next() {\n while (++i < iterable.length) {\n if (hasOwn.call(iterable, i)) {\n next.value = iterable[i];\n next.done = false;\n return next;\n }\n }\n\n next.value = undefined;\n next.done = true;\n\n return next;\n };\n\n return next.next = next;\n }\n }\n\n // Return an iterator with no values.\n return { next: doneResult };\n }\n exports.values = values;\n\n function doneResult() {\n return { value: undefined, done: true };\n }\n\n Context.prototype = {\n constructor: Context,\n\n reset: function(skipTempReset) {\n this.prev = 0;\n this.next = 0;\n // Resetting context._sent for legacy support of Babel's\n // function.sent implementation.\n this.sent = this._sent = undefined;\n this.done = false;\n this.delegate = null;\n\n this.method = \"next\";\n this.arg = undefined;\n\n this.tryEntries.forEach(resetTryEntry);\n\n if (!skipTempReset) {\n for (var name in this) {\n // Not sure about the optimal order of these conditions:\n if (name.charAt(0) === \"t\" &&\n hasOwn.call(this, name) &&\n !isNaN(+name.slice(1))) {\n this[name] = undefined;\n }\n }\n }\n },\n\n stop: function() {\n this.done = true;\n\n var rootEntry = this.tryEntries[0];\n var rootRecord = rootEntry.completion;\n if (rootRecord.type === \"throw\") {\n throw rootRecord.arg;\n }\n\n return this.rval;\n },\n\n dispatchException: function(exception) {\n if (this.done) {\n throw exception;\n }\n\n var context = this;\n function handle(loc, caught) {\n record.type = \"throw\";\n record.arg = exception;\n context.next = loc;\n\n if (caught) {\n // If the dispatched exception was caught by a catch block,\n // then let that catch block handle the exception normally.\n context.method = \"next\";\n context.arg = undefined;\n }\n\n return !! caught;\n }\n\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n var record = entry.completion;\n\n if (entry.tryLoc === \"root\") {\n // Exception thrown outside of any try block that could handle\n // it, so set the completion value of the entire function to\n // throw the exception.\n return handle(\"end\");\n }\n\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\");\n var hasFinally = hasOwn.call(entry, \"finallyLoc\");\n\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n } else if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n }\n\n } else if (hasFinally) {\n if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else {\n throw new Error(\"try statement without catch or finally\");\n }\n }\n }\n },\n\n abrupt: function(type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc <= this.prev &&\n hasOwn.call(entry, \"finallyLoc\") &&\n this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n\n if (finallyEntry &&\n (type === \"break\" ||\n type === \"continue\") &&\n finallyEntry.tryLoc <= arg &&\n arg <= finallyEntry.finallyLoc) {\n // Ignore the finally entry if control is not jumping to a\n // location outside the try/catch block.\n finallyEntry = null;\n }\n\n var record = finallyEntry ? finallyEntry.completion : {};\n record.type = type;\n record.arg = arg;\n\n if (finallyEntry) {\n this.method = \"next\";\n this.next = finallyEntry.finallyLoc;\n return ContinueSentinel;\n }\n\n return this.complete(record);\n },\n\n complete: function(record, afterLoc) {\n if (record.type === \"throw\") {\n throw record.arg;\n }\n\n if (record.type === \"break\" ||\n record.type === \"continue\") {\n this.next = record.arg;\n } else if (record.type === \"return\") {\n this.rval = this.arg = record.arg;\n this.method = \"return\";\n this.next = \"end\";\n } else if (record.type === \"normal\" && afterLoc) {\n this.next = afterLoc;\n }\n\n return ContinueSentinel;\n },\n\n finish: function(finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) {\n this.complete(entry.completion, entry.afterLoc);\n resetTryEntry(entry);\n return ContinueSentinel;\n }\n }\n },\n\n \"catch\": function(tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n if (record.type === \"throw\") {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n return thrown;\n }\n }\n\n // The context.catch method must only be called with a location\n // argument that corresponds to a known catch block.\n throw new Error(\"illegal catch attempt\");\n },\n\n delegateYield: function(iterable, resultName, nextLoc) {\n this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n };\n\n if (this.method === \"next\") {\n // Deliberately forget the last sent value so that we don't\n // accidentally pass it on to the delegate.\n this.arg = undefined;\n }\n\n return ContinueSentinel;\n }\n };\n\n // Regardless of whether this script is executing as a CommonJS module\n // or not, return the runtime object so that we can declare the variable\n // regeneratorRuntime in the outer scope, which allows this module to be\n // injected easily by `bin/regenerator --include-runtime script.js`.\n return exports;\n\n}(\n // If this script is executing as a CommonJS module, use module.exports\n // as the regeneratorRuntime namespace. Otherwise create a new empty\n // object. Either way, the resulting object will be used to initialize\n // the regeneratorRuntime variable at the top of this file.\n typeof module === \"object\" ? module.exports : {}\n));\n\ntry {\n regeneratorRuntime = runtime;\n} catch (accidentalStrictMode) {\n // This module should not be running in strict mode, so the above\n // assignment should always work unless something is misconfigured. Just\n // in case runtime.js accidentally runs in strict mode, we can escape\n // strict mode using a global Function call. This could conceivably fail\n // if a Content Security Policy forbids using Function, but in that case\n // the proper solution is to fix the accidental strict mode problem. If\n // you've misconfigured your bundler to force strict mode and applied a\n // CSP to forbid Function, and you're not willing to fix either of those\n // problems, please detail your unique predicament in a GitHub issue.\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n}\n","function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nmodule.exports = _classCallCheck;","function _iterableToArrayLimit(arr, i) {\n if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n var _e = undefined;\n\n try {\n for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}\n\nmodule.exports = _iterableToArrayLimit;","var getPrototypeOf = require(\"./getPrototypeOf\");\n\nfunction _superPropBase(object, property) {\n while (!Object.prototype.hasOwnProperty.call(object, property)) {\n object = getPrototypeOf(object);\n if (object === null) break;\n }\n\n return object;\n}\n\nmodule.exports = _superPropBase;","'use strict';\nvar $ = require('../internals/export');\nvar IndexedObject = require('../internals/indexed-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar nativeJoin = [].join;\n\nvar ES3_STRINGS = IndexedObject != Object;\nvar STRICT_METHOD = arrayMethodIsStrict('join', ',');\n\n// `Array.prototype.join` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.join\n$({ target: 'Array', proto: true, forced: ES3_STRINGS || !STRICT_METHOD }, {\n join: function join(separator) {\n return nativeJoin.call(toIndexedObject(this), separator === undefined ? ',' : separator);\n }\n});\n","module.exports = require(\"regenerator-runtime\");\n","'use strict';\nvar $ = require('../internals/export');\nvar global = require('../internals/global');\nvar getBuiltIn = require('../internals/get-built-in');\nvar IS_PURE = require('../internals/is-pure');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar NATIVE_SYMBOL = require('../internals/native-symbol');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\nvar fails = require('../internals/fails');\nvar has = require('../internals/has');\nvar isArray = require('../internals/is-array');\nvar isObject = require('../internals/is-object');\nvar anObject = require('../internals/an-object');\nvar toObject = require('../internals/to-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPrimitive = require('../internals/to-primitive');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar nativeObjectCreate = require('../internals/object-create');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertyNamesExternal = require('../internals/object-get-own-property-names-external');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar redefine = require('../internals/redefine');\nvar shared = require('../internals/shared');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar uid = require('../internals/uid');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar wrappedWellKnownSymbolModule = require('../internals/well-known-symbol-wrapped');\nvar defineWellKnownSymbol = require('../internals/define-well-known-symbol');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar InternalStateModule = require('../internals/internal-state');\nvar $forEach = require('../internals/array-iteration').forEach;\n\nvar HIDDEN = sharedKey('hidden');\nvar SYMBOL = 'Symbol';\nvar PROTOTYPE = 'prototype';\nvar TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(SYMBOL);\nvar ObjectPrototype = Object[PROTOTYPE];\nvar $Symbol = global.Symbol;\nvar $stringify = getBuiltIn('JSON', 'stringify');\nvar nativeGetOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\nvar nativeDefineProperty = definePropertyModule.f;\nvar nativeGetOwnPropertyNames = getOwnPropertyNamesExternal.f;\nvar nativePropertyIsEnumerable = propertyIsEnumerableModule.f;\nvar AllSymbols = shared('symbols');\nvar ObjectPrototypeSymbols = shared('op-symbols');\nvar StringToSymbolRegistry = shared('string-to-symbol-registry');\nvar SymbolToStringRegistry = shared('symbol-to-string-registry');\nvar WellKnownSymbolsStore = shared('wks');\nvar QObject = global.QObject;\n// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173\nvar USE_SETTER = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;\n\n// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687\nvar setSymbolDescriptor = DESCRIPTORS && fails(function () {\n return nativeObjectCreate(nativeDefineProperty({}, 'a', {\n get: function () { return nativeDefineProperty(this, 'a', { value: 7 }).a; }\n })).a != 7;\n}) ? function (O, P, Attributes) {\n var ObjectPrototypeDescriptor = nativeGetOwnPropertyDescriptor(ObjectPrototype, P);\n if (ObjectPrototypeDescriptor) delete ObjectPrototype[P];\n nativeDefineProperty(O, P, Attributes);\n if (ObjectPrototypeDescriptor && O !== ObjectPrototype) {\n nativeDefineProperty(ObjectPrototype, P, ObjectPrototypeDescriptor);\n }\n} : nativeDefineProperty;\n\nvar wrap = function (tag, description) {\n var symbol = AllSymbols[tag] = nativeObjectCreate($Symbol[PROTOTYPE]);\n setInternalState(symbol, {\n type: SYMBOL,\n tag: tag,\n description: description\n });\n if (!DESCRIPTORS) symbol.description = description;\n return symbol;\n};\n\nvar isSymbol = USE_SYMBOL_AS_UID ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n return Object(it) instanceof $Symbol;\n};\n\nvar $defineProperty = function defineProperty(O, P, Attributes) {\n if (O === ObjectPrototype) $defineProperty(ObjectPrototypeSymbols, P, Attributes);\n anObject(O);\n var key = toPrimitive(P, true);\n anObject(Attributes);\n if (has(AllSymbols, key)) {\n if (!Attributes.enumerable) {\n if (!has(O, HIDDEN)) nativeDefineProperty(O, HIDDEN, createPropertyDescriptor(1, {}));\n O[HIDDEN][key] = true;\n } else {\n if (has(O, HIDDEN) && O[HIDDEN][key]) O[HIDDEN][key] = false;\n Attributes = nativeObjectCreate(Attributes, { enumerable: createPropertyDescriptor(0, false) });\n } return setSymbolDescriptor(O, key, Attributes);\n } return nativeDefineProperty(O, key, Attributes);\n};\n\nvar $defineProperties = function defineProperties(O, Properties) {\n anObject(O);\n var properties = toIndexedObject(Properties);\n var keys = objectKeys(properties).concat($getOwnPropertySymbols(properties));\n $forEach(keys, function (key) {\n if (!DESCRIPTORS || $propertyIsEnumerable.call(properties, key)) $defineProperty(O, key, properties[key]);\n });\n return O;\n};\n\nvar $create = function create(O, Properties) {\n return Properties === undefined ? nativeObjectCreate(O) : $defineProperties(nativeObjectCreate(O), Properties);\n};\n\nvar $propertyIsEnumerable = function propertyIsEnumerable(V) {\n var P = toPrimitive(V, true);\n var enumerable = nativePropertyIsEnumerable.call(this, P);\n if (this === ObjectPrototype && has(AllSymbols, P) && !has(ObjectPrototypeSymbols, P)) return false;\n return enumerable || !has(this, P) || !has(AllSymbols, P) || has(this, HIDDEN) && this[HIDDEN][P] ? enumerable : true;\n};\n\nvar $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(O, P) {\n var it = toIndexedObject(O);\n var key = toPrimitive(P, true);\n if (it === ObjectPrototype && has(AllSymbols, key) && !has(ObjectPrototypeSymbols, key)) return;\n var descriptor = nativeGetOwnPropertyDescriptor(it, key);\n if (descriptor && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) {\n descriptor.enumerable = true;\n }\n return descriptor;\n};\n\nvar $getOwnPropertyNames = function getOwnPropertyNames(O) {\n var names = nativeGetOwnPropertyNames(toIndexedObject(O));\n var result = [];\n $forEach(names, function (key) {\n if (!has(AllSymbols, key) && !has(hiddenKeys, key)) result.push(key);\n });\n return result;\n};\n\nvar $getOwnPropertySymbols = function getOwnPropertySymbols(O) {\n var IS_OBJECT_PROTOTYPE = O === ObjectPrototype;\n var names = nativeGetOwnPropertyNames(IS_OBJECT_PROTOTYPE ? ObjectPrototypeSymbols : toIndexedObject(O));\n var result = [];\n $forEach(names, function (key) {\n if (has(AllSymbols, key) && (!IS_OBJECT_PROTOTYPE || has(ObjectPrototype, key))) {\n result.push(AllSymbols[key]);\n }\n });\n return result;\n};\n\n// `Symbol` constructor\n// https://tc39.github.io/ecma262/#sec-symbol-constructor\nif (!NATIVE_SYMBOL) {\n $Symbol = function Symbol() {\n if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor');\n var description = !arguments.length || arguments[0] === undefined ? undefined : String(arguments[0]);\n var tag = uid(description);\n var setter = function (value) {\n if (this === ObjectPrototype) setter.call(ObjectPrototypeSymbols, value);\n if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false;\n setSymbolDescriptor(this, tag, createPropertyDescriptor(1, value));\n };\n if (DESCRIPTORS && USE_SETTER) setSymbolDescriptor(ObjectPrototype, tag, { configurable: true, set: setter });\n return wrap(tag, description);\n };\n\n redefine($Symbol[PROTOTYPE], 'toString', function toString() {\n return getInternalState(this).tag;\n });\n\n redefine($Symbol, 'withoutSetter', function (description) {\n return wrap(uid(description), description);\n });\n\n propertyIsEnumerableModule.f = $propertyIsEnumerable;\n definePropertyModule.f = $defineProperty;\n getOwnPropertyDescriptorModule.f = $getOwnPropertyDescriptor;\n getOwnPropertyNamesModule.f = getOwnPropertyNamesExternal.f = $getOwnPropertyNames;\n getOwnPropertySymbolsModule.f = $getOwnPropertySymbols;\n\n wrappedWellKnownSymbolModule.f = function (name) {\n return wrap(wellKnownSymbol(name), name);\n };\n\n if (DESCRIPTORS) {\n // https://github.com/tc39/proposal-Symbol-description\n nativeDefineProperty($Symbol[PROTOTYPE], 'description', {\n configurable: true,\n get: function description() {\n return getInternalState(this).description;\n }\n });\n if (!IS_PURE) {\n redefine(ObjectPrototype, 'propertyIsEnumerable', $propertyIsEnumerable, { unsafe: true });\n }\n }\n}\n\n$({ global: true, wrap: true, forced: !NATIVE_SYMBOL, sham: !NATIVE_SYMBOL }, {\n Symbol: $Symbol\n});\n\n$forEach(objectKeys(WellKnownSymbolsStore), function (name) {\n defineWellKnownSymbol(name);\n});\n\n$({ target: SYMBOL, stat: true, forced: !NATIVE_SYMBOL }, {\n // `Symbol.for` method\n // https://tc39.github.io/ecma262/#sec-symbol.for\n 'for': function (key) {\n var string = String(key);\n if (has(StringToSymbolRegistry, string)) return StringToSymbolRegistry[string];\n var symbol = $Symbol(string);\n StringToSymbolRegistry[string] = symbol;\n SymbolToStringRegistry[symbol] = string;\n return symbol;\n },\n // `Symbol.keyFor` method\n // https://tc39.github.io/ecma262/#sec-symbol.keyfor\n keyFor: function keyFor(sym) {\n if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol');\n if (has(SymbolToStringRegistry, sym)) return SymbolToStringRegistry[sym];\n },\n useSetter: function () { USE_SETTER = true; },\n useSimple: function () { USE_SETTER = false; }\n});\n\n$({ target: 'Object', stat: true, forced: !NATIVE_SYMBOL, sham: !DESCRIPTORS }, {\n // `Object.create` method\n // https://tc39.github.io/ecma262/#sec-object.create\n create: $create,\n // `Object.defineProperty` method\n // https://tc39.github.io/ecma262/#sec-object.defineproperty\n defineProperty: $defineProperty,\n // `Object.defineProperties` method\n // https://tc39.github.io/ecma262/#sec-object.defineproperties\n defineProperties: $defineProperties,\n // `Object.getOwnPropertyDescriptor` method\n // https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptors\n getOwnPropertyDescriptor: $getOwnPropertyDescriptor\n});\n\n$({ target: 'Object', stat: true, forced: !NATIVE_SYMBOL }, {\n // `Object.getOwnPropertyNames` method\n // https://tc39.github.io/ecma262/#sec-object.getownpropertynames\n getOwnPropertyNames: $getOwnPropertyNames,\n // `Object.getOwnPropertySymbols` method\n // https://tc39.github.io/ecma262/#sec-object.getownpropertysymbols\n getOwnPropertySymbols: $getOwnPropertySymbols\n});\n\n// Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives\n// https://bugs.chromium.org/p/v8/issues/detail?id=3443\n$({ target: 'Object', stat: true, forced: fails(function () { getOwnPropertySymbolsModule.f(1); }) }, {\n getOwnPropertySymbols: function getOwnPropertySymbols(it) {\n return getOwnPropertySymbolsModule.f(toObject(it));\n }\n});\n\n// `JSON.stringify` method behavior with symbols\n// https://tc39.github.io/ecma262/#sec-json.stringify\nif ($stringify) {\n var FORCED_JSON_STRINGIFY = !NATIVE_SYMBOL || fails(function () {\n var symbol = $Symbol();\n // MS Edge converts symbol values to JSON as {}\n return $stringify([symbol]) != '[null]'\n // WebKit converts symbol values to JSON as null\n || $stringify({ a: symbol }) != '{}'\n // V8 throws on boxed symbols\n || $stringify(Object(symbol)) != '{}';\n });\n\n $({ target: 'JSON', stat: true, forced: FORCED_JSON_STRINGIFY }, {\n // eslint-disable-next-line no-unused-vars\n stringify: function stringify(it, replacer, space) {\n var args = [it];\n var index = 1;\n var $replacer;\n while (arguments.length > index) args.push(arguments[index++]);\n $replacer = replacer;\n if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined\n if (!isArray(replacer)) replacer = function (key, value) {\n if (typeof $replacer == 'function') value = $replacer.call(this, key, value);\n if (!isSymbol(value)) return value;\n };\n args[1] = replacer;\n return $stringify.apply(null, args);\n }\n });\n}\n\n// `Symbol.prototype[@@toPrimitive]` method\n// https://tc39.github.io/ecma262/#sec-symbol.prototype-@@toprimitive\nif (!$Symbol[PROTOTYPE][TO_PRIMITIVE]) {\n createNonEnumerableProperty($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);\n}\n// `Symbol.prototype[@@toStringTag]` property\n// https://tc39.github.io/ecma262/#sec-symbol.prototype-@@tostringtag\nsetToStringTag($Symbol, SYMBOL);\n\nhiddenKeys[HIDDEN] = true;\n","'use strict';\nvar $ = require('../internals/export');\nvar $every = require('../internals/array-iteration').every;\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar STRICT_METHOD = arrayMethodIsStrict('every');\nvar USES_TO_LENGTH = arrayMethodUsesToLength('every');\n\n// `Array.prototype.every` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.every\n$({ target: 'Array', proto: true, forced: !STRICT_METHOD || !USES_TO_LENGTH }, {\n every: function every(callbackfn /* , thisArg */) {\n return $every(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","var $ = require('../internals/export');\nvar from = require('../internals/array-from');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\n\nvar INCORRECT_ITERATION = !checkCorrectnessOfIteration(function (iterable) {\n Array.from(iterable);\n});\n\n// `Array.from` method\n// https://tc39.github.io/ecma262/#sec-array.from\n$({ target: 'Array', stat: true, forced: INCORRECT_ITERATION }, {\n from: from\n});\n","var $ = require('../internals/export');\nvar getBuiltIn = require('../internals/get-built-in');\nvar aFunction = require('../internals/a-function');\nvar anObject = require('../internals/an-object');\nvar fails = require('../internals/fails');\n\nvar nativeApply = getBuiltIn('Reflect', 'apply');\nvar functionApply = Function.apply;\n\n// MS Edge argumentsList argument is optional\nvar OPTIONAL_ARGUMENTS_LIST = !fails(function () {\n nativeApply(function () { /* empty */ });\n});\n\n// `Reflect.apply` method\n// https://tc39.github.io/ecma262/#sec-reflect.apply\n$({ target: 'Reflect', stat: true, forced: OPTIONAL_ARGUMENTS_LIST }, {\n apply: function apply(target, thisArgument, argumentsList) {\n aFunction(target);\n anObject(argumentsList);\n return nativeApply\n ? nativeApply(target, thisArgument, argumentsList)\n : functionApply.call(target, thisArgument, argumentsList);\n }\n});\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar global = require('../internals/global');\nvar isForced = require('../internals/is-forced');\nvar redefine = require('../internals/redefine');\nvar has = require('../internals/has');\nvar classof = require('../internals/classof-raw');\nvar inheritIfRequired = require('../internals/inherit-if-required');\nvar toPrimitive = require('../internals/to-primitive');\nvar fails = require('../internals/fails');\nvar create = require('../internals/object-create');\nvar getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar defineProperty = require('../internals/object-define-property').f;\nvar trim = require('../internals/string-trim').trim;\n\nvar NUMBER = 'Number';\nvar NativeNumber = global[NUMBER];\nvar NumberPrototype = NativeNumber.prototype;\n\n// Opera ~12 has broken Object#toString\nvar BROKEN_CLASSOF = classof(create(NumberPrototype)) == NUMBER;\n\n// `ToNumber` abstract operation\n// https://tc39.github.io/ecma262/#sec-tonumber\nvar toNumber = function (argument) {\n var it = toPrimitive(argument, false);\n var first, third, radix, maxCode, digits, length, index, code;\n if (typeof it == 'string' && it.length > 2) {\n it = trim(it);\n first = it.charCodeAt(0);\n if (first === 43 || first === 45) {\n third = it.charCodeAt(2);\n if (third === 88 || third === 120) return NaN; // Number('+0x1') should be NaN, old V8 fix\n } else if (first === 48) {\n switch (it.charCodeAt(1)) {\n case 66: case 98: radix = 2; maxCode = 49; break; // fast equal of /^0b[01]+$/i\n case 79: case 111: radix = 8; maxCode = 55; break; // fast equal of /^0o[0-7]+$/i\n default: return +it;\n }\n digits = it.slice(2);\n length = digits.length;\n for (index = 0; index < length; index++) {\n code = digits.charCodeAt(index);\n // parseInt parses a string to a first unavailable symbol\n // but ToNumber should return NaN if a string contains unavailable symbols\n if (code < 48 || code > maxCode) return NaN;\n } return parseInt(digits, radix);\n }\n } return +it;\n};\n\n// `Number` constructor\n// https://tc39.github.io/ecma262/#sec-number-constructor\nif (isForced(NUMBER, !NativeNumber(' 0o1') || !NativeNumber('0b1') || NativeNumber('+0x1'))) {\n var NumberWrapper = function Number(value) {\n var it = arguments.length < 1 ? 0 : value;\n var dummy = this;\n return dummy instanceof NumberWrapper\n // check on 1..constructor(foo) case\n && (BROKEN_CLASSOF ? fails(function () { NumberPrototype.valueOf.call(dummy); }) : classof(dummy) != NUMBER)\n ? inheritIfRequired(new NativeNumber(toNumber(it)), dummy, NumberWrapper) : toNumber(it);\n };\n for (var keys = DESCRIPTORS ? getOwnPropertyNames(NativeNumber) : (\n // ES3:\n 'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' +\n // ES2015 (in case, if modules with ES2015 Number statics required before):\n 'EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,' +\n 'MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger'\n ).split(','), j = 0, key; keys.length > j; j++) {\n if (has(NativeNumber, key = keys[j]) && !has(NumberWrapper, key)) {\n defineProperty(NumberWrapper, key, getOwnPropertyDescriptor(NativeNumber, key));\n }\n }\n NumberWrapper.prototype = NumberPrototype;\n NumberPrototype.constructor = NumberWrapper;\n redefine(global, NUMBER, NumberWrapper);\n}\n","var $ = require('../internals/export');\nvar anObject = require('../internals/an-object');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\n\n// `Reflect.deleteProperty` method\n// https://tc39.github.io/ecma262/#sec-reflect.deleteproperty\n$({ target: 'Reflect', stat: true }, {\n deleteProperty: function deleteProperty(target, propertyKey) {\n var descriptor = getOwnPropertyDescriptor(anObject(target), propertyKey);\n return descriptor && !descriptor.configurable ? false : delete target[propertyKey];\n }\n});\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar classof = require('../internals/classof');\n\n// `Object.prototype.toString` method implementation\n// https://tc39.github.io/ecma262/#sec-object.prototype.tostring\nmodule.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {\n return '[object ' + classof(this) + ']';\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar defineProperty = require('../internals/object-define-property').f;\n\nvar FunctionPrototype = Function.prototype;\nvar FunctionPrototypeToString = FunctionPrototype.toString;\nvar nameRE = /^\\s*function ([^ (]*)/;\nvar NAME = 'name';\n\n// Function instances `.name` property\n// https://tc39.github.io/ecma262/#sec-function-instances-name\nif (DESCRIPTORS && !(NAME in FunctionPrototype)) {\n defineProperty(FunctionPrototype, NAME, {\n configurable: true,\n get: function () {\n try {\n return FunctionPrototypeToString.call(this).match(nameRE)[1];\n } catch (error) {\n return '';\n }\n }\n });\n}\n","var $ = require('../internals/export');\nvar toObject = require('../internals/to-object');\nvar nativeKeys = require('../internals/object-keys');\nvar fails = require('../internals/fails');\n\nvar FAILS_ON_PRIMITIVES = fails(function () { nativeKeys(1); });\n\n// `Object.keys` method\n// https://tc39.github.io/ecma262/#sec-object.keys\n$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES }, {\n keys: function keys(it) {\n return nativeKeys(toObject(it));\n }\n});\n","var fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n return Object.isExtensible(Object.preventExtensions({}));\n});\n","function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\n\nmodule.exports = _arrayWithHoles;","function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nmodule.exports = _nonIterableRest;","var now = require('performance-now')\n , root = typeof window === 'undefined' ? global : window\n , vendors = ['moz', 'webkit']\n , suffix = 'AnimationFrame'\n , raf = root['request' + suffix]\n , caf = root['cancel' + suffix] || root['cancelRequest' + suffix]\n\nfor(var i = 0; !raf && i < vendors.length; i++) {\n raf = root[vendors[i] + 'Request' + suffix]\n caf = root[vendors[i] + 'Cancel' + suffix]\n || root[vendors[i] + 'CancelRequest' + suffix]\n}\n\n// Some versions of FF have rAF but not cAF\nif(!raf || !caf) {\n var last = 0\n , id = 0\n , queue = []\n , frameDuration = 1000 / 60\n\n raf = function(callback) {\n if(queue.length === 0) {\n var _now = now()\n , next = Math.max(0, frameDuration - (_now - last))\n last = next + _now\n setTimeout(function() {\n var cp = queue.slice(0)\n // Clear queue here to prevent\n // callbacks from appending listeners\n // to the current frame's queue\n queue.length = 0\n for(var i = 0; i < cp.length; i++) {\n if(!cp[i].cancelled) {\n try{\n cp[i].callback(last)\n } catch(e) {\n setTimeout(function() { throw e }, 0)\n }\n }\n }\n }, Math.round(next))\n }\n queue.push({\n handle: ++id,\n callback: callback,\n cancelled: false\n })\n return id\n }\n\n caf = function(handle) {\n for(var i = 0; i < queue.length; i++) {\n if(queue[i].handle === handle) {\n queue[i].cancelled = true\n }\n }\n }\n}\n\nmodule.exports = function(fn) {\n // Wrap in a new function to prevent\n // `cancel` potentially being assigned\n // to the native rAF function\n return raf.call(root, fn)\n}\nmodule.exports.cancel = function() {\n caf.apply(root, arguments)\n}\nmodule.exports.polyfill = function(object) {\n if (!object) {\n object = root;\n }\n object.requestAnimationFrame = raf\n object.cancelAnimationFrame = caf\n}\n","var fails = require('../internals/fails');\nvar whitespaces = require('../internals/whitespaces');\n\nvar non = '\\u200B\\u0085\\u180E';\n\n// check that a method works with the correct list\n// of whitespaces and has a correct name\nmodule.exports = function (METHOD_NAME) {\n return fails(function () {\n return !!whitespaces[METHOD_NAME]() || non[METHOD_NAME]() != non || whitespaces[METHOD_NAME].name !== METHOD_NAME;\n });\n};\n","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\n\nfunction _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n\n _next(undefined);\n });\n };\n}\n\nmodule.exports = _asyncToGenerator;","'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","var $ = require('../internals/export');\nvar fill = require('../internals/array-fill');\nvar addToUnscopables = require('../internals/add-to-unscopables');\n\n// `Array.prototype.fill` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.fill\n$({ target: 'Array', proto: true }, {\n fill: fill\n});\n\n// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('fill');\n","var defineWellKnownSymbol = require('../internals/define-well-known-symbol');\n\n// `Symbol.iterator` well-known symbol\n// https://tc39.github.io/ecma262/#sec-symbol.iterator\ndefineWellKnownSymbol('iterator');\n","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","var aFunction = require('../internals/a-function');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\nvar toLength = require('../internals/to-length');\n\n// `Array.prototype.{ reduce, reduceRight }` methods implementation\nvar createMethod = function (IS_RIGHT) {\n return function (that, callbackfn, argumentsLength, memo) {\n aFunction(callbackfn);\n var O = toObject(that);\n var self = IndexedObject(O);\n var length = toLength(O.length);\n var index = IS_RIGHT ? length - 1 : 0;\n var i = IS_RIGHT ? -1 : 1;\n if (argumentsLength < 2) while (true) {\n if (index in self) {\n memo = self[index];\n index += i;\n break;\n }\n index += i;\n if (IS_RIGHT ? index < 0 : length <= index) {\n throw TypeError('Reduce of empty array with no initial value');\n }\n }\n for (;IS_RIGHT ? index >= 0 : length > index; index += i) if (index in self) {\n memo = callbackfn(memo, self[index], index, O);\n }\n return memo;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.reduce` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.reduce\n left: createMethod(false),\n // `Array.prototype.reduceRight` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.reduceright\n right: createMethod(true)\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar $map = require('../internals/array-iteration').map;\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('map');\n// FF49- issue\nvar USES_TO_LENGTH = arrayMethodUsesToLength('map');\n\n// `Array.prototype.map` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.map\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT || !USES_TO_LENGTH }, {\n map: function map(callbackfn /* , thisArg */) {\n return $map(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","var $ = require('../internals/export');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar ownKeys = require('../internals/own-keys');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar createProperty = require('../internals/create-property');\n\n// `Object.getOwnPropertyDescriptors` method\n// https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptors\n$({ target: 'Object', stat: true, sham: !DESCRIPTORS }, {\n getOwnPropertyDescriptors: function getOwnPropertyDescriptors(object) {\n var O = toIndexedObject(object);\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n var keys = ownKeys(O);\n var result = {};\n var index = 0;\n var key, descriptor;\n while (keys.length > index) {\n descriptor = getOwnPropertyDescriptor(O, key = keys[index++]);\n if (descriptor !== undefined) createProperty(result, key, descriptor);\n }\n return result;\n }\n});\n","var 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","// `Symbol.prototype.description` getter\n// https://tc39.github.io/ecma262/#sec-symbol.prototype.description\n'use strict';\nvar $ = require('../internals/export');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar global = require('../internals/global');\nvar has = require('../internals/has');\nvar isObject = require('../internals/is-object');\nvar defineProperty = require('../internals/object-define-property').f;\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\n\nvar NativeSymbol = global.Symbol;\n\nif (DESCRIPTORS && typeof NativeSymbol == 'function' && (!('description' in NativeSymbol.prototype) ||\n // Safari 12 bug\n NativeSymbol().description !== undefined\n)) {\n var EmptyStringDescriptionStore = {};\n // wrap Symbol constructor for correct work with undefined description\n var SymbolWrapper = function Symbol() {\n var description = arguments.length < 1 || arguments[0] === undefined ? undefined : String(arguments[0]);\n var result = this instanceof SymbolWrapper\n ? new NativeSymbol(description)\n // in Edge 13, String(Symbol(undefined)) === 'Symbol(undefined)'\n : description === undefined ? NativeSymbol() : NativeSymbol(description);\n if (description === '') EmptyStringDescriptionStore[result] = true;\n return result;\n };\n copyConstructorProperties(SymbolWrapper, NativeSymbol);\n var symbolPrototype = SymbolWrapper.prototype = NativeSymbol.prototype;\n symbolPrototype.constructor = SymbolWrapper;\n\n var symbolToString = symbolPrototype.toString;\n var native = String(NativeSymbol('test')) == 'Symbol(test)';\n var regexp = /^Symbol\\((.*)\\)[^)]+$/;\n defineProperty(symbolPrototype, 'description', {\n configurable: true,\n get: function description() {\n var symbol = isObject(this) ? this.valueOf() : this;\n var string = symbolToString.call(symbol);\n if (has(EmptyStringDescriptionStore, symbol)) return '';\n var desc = native ? string.slice(7, -1) : string.replace(regexp, '$1');\n return desc === '' ? undefined : desc;\n }\n });\n\n $({ global: true, forced: true }, {\n Symbol: SymbolWrapper\n });\n}\n","var $ = require('../internals/export');\nvar fails = require('../internals/fails');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar nativeGetOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar FAILS_ON_PRIMITIVES = fails(function () { nativeGetOwnPropertyDescriptor(1); });\nvar FORCED = !DESCRIPTORS || FAILS_ON_PRIMITIVES;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptor\n$({ target: 'Object', stat: true, forced: FORCED, sham: !DESCRIPTORS }, {\n getOwnPropertyDescriptor: function getOwnPropertyDescriptor(it, key) {\n return nativeGetOwnPropertyDescriptor(toIndexedObject(it), key);\n }\n});\n","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nexports.f = wellKnownSymbol;\n","var setPrototypeOf = require(\"./setPrototypeOf\");\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}\n\nmodule.exports = _inherits;","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"],"sourceRoot":""} \ No newline at end of file diff --git a/docs/js/chunk-722a0ca4.615e65cc.js.map b/docs/js/chunk-722a0ca4.615e65cc.js.map deleted file mode 100644 index 8c6f426..0000000 --- a/docs/js/chunk-722a0ca4.615e65cc.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["webpack:///./node_modules/core-js/internals/function-bind.js","webpack:///./node_modules/core-js/internals/object-get-own-property-names-external.js","webpack:///./node_modules/@babel/runtime/helpers/nonIterableSpread.js","webpack:///./node_modules/canvg/lib/index.es.js","webpack:///./node_modules/@babel/runtime/helpers/iterableToArray.js","webpack:///./node_modules/core-js/modules/es.string.split.js","webpack:///./node_modules/core-js/modules/es.array.reduce.js","webpack:///./node_modules/@babel/runtime/helpers/arrayWithoutHoles.js","webpack:///./node_modules/core-js/modules/es.regexp.to-string.js","webpack:///./node_modules/core-js/modules/es.array.reverse.js","webpack:///./node_modules/@babel/runtime/helpers/slicedToArray.js","webpack:///./node_modules/core-js/modules/es.string.starts-with.js","webpack:///./node_modules/core-js/modules/es.object.get-prototype-of.js","webpack:///./node_modules/@babel/runtime/helpers/getPrototypeOf.js","webpack:///./node_modules/@babel/runtime/helpers/assertThisInitialized.js","webpack:///./node_modules/core-js/modules/es.string.iterator.js","webpack:///./node_modules/@babel/runtime/helpers/toConsumableArray.js","webpack:///./node_modules/core-js/modules/es.array.some.js","webpack:///./node_modules/core-js/modules/es.string.match.js","webpack:///./node_modules/core-js/modules/es.string.trim.js","webpack:///./node_modules/@babel/runtime/helpers/setPrototypeOf.js","webpack:///./node_modules/core-js/modules/es.reflect.construct.js","webpack:///./node_modules/core-js/internals/array-from.js","webpack:///./node_modules/core-js/modules/es.map.js","webpack:///./node_modules/core-js/modules/es.string.replace.js","webpack:///./node_modules/core-js/internals/whitespaces.js","webpack:///./node_modules/core-js/internals/string-trim.js","webpack:///./node_modules/rgbcolor/index.js","webpack:///./node_modules/@babel/runtime/helpers/arrayLikeToArray.js","webpack:///./node_modules/@babel/runtime/helpers/createClass.js","webpack:///./node_modules/core-js/modules/es.reflect.get.js","webpack:///./node_modules/stackblur-canvas/dist/stackblur-es.js","webpack:///./node_modules/core-js/internals/string-multibyte.js","webpack:///./node_modules/core-js/internals/collection-strong.js","webpack:///./node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js","webpack:///./node_modules/@babel/runtime/helpers/possibleConstructorReturn.js","webpack:///./node_modules/performance-now/lib/performance-now.js","webpack:///./node_modules/core-js/internals/collection.js","webpack:///./node_modules/@babel/runtime/helpers/typeof.js","webpack:///./node_modules/core-js/internals/inherit-if-required.js","webpack:///./node_modules/core-js/internals/define-well-known-symbol.js","webpack:///./node_modules/core-js/modules/es.reflect.get-prototype-of.js","webpack:///./node_modules/core-js/internals/array-fill.js","webpack:///./node_modules/core-js/internals/create-property.js","webpack:///./node_modules/@babel/runtime/helpers/get.js","webpack:///./node_modules/core-js/internals/advance-string-index.js","webpack:///./node_modules/@babel/runtime/helpers/defineProperty.js","webpack:///./node_modules/regenerator-runtime/runtime.js","webpack:///./node_modules/@babel/runtime/helpers/classCallCheck.js","webpack:///./node_modules/core-js/modules/es.array.concat.js","webpack:///./node_modules/@babel/runtime/helpers/iterableToArrayLimit.js","webpack:///./node_modules/@babel/runtime/helpers/superPropBase.js","webpack:///./node_modules/core-js/modules/es.array.join.js","webpack:///./node_modules/@babel/runtime/regenerator/index.js","webpack:///./node_modules/core-js/modules/es.symbol.js","webpack:///./node_modules/core-js/modules/es.array.every.js","webpack:///./node_modules/core-js/modules/es.array.from.js","webpack:///./node_modules/core-js/modules/es.reflect.apply.js","webpack:///./node_modules/core-js/modules/es.number.constructor.js","webpack:///./node_modules/core-js/modules/es.reflect.delete-property.js","webpack:///./node_modules/core-js/internals/object-to-string.js","webpack:///./node_modules/core-js/modules/es.function.name.js","webpack:///./node_modules/core-js/modules/es.object.keys.js","webpack:///./node_modules/core-js/internals/freezing.js","webpack:///./node_modules/@babel/runtime/helpers/arrayWithHoles.js","webpack:///./node_modules/@babel/runtime/helpers/nonIterableRest.js","webpack:///./node_modules/raf/index.js","webpack:///./node_modules/core-js/internals/string-trim-forced.js","webpack:///./node_modules/@babel/runtime/helpers/asyncToGenerator.js","webpack:///./node_modules/core-js/modules/es.array.index-of.js","webpack:///./node_modules/core-js/modules/es.array.fill.js","webpack:///./node_modules/core-js/modules/es.symbol.iterator.js","webpack:///./node_modules/core-js/modules/es.object.to-string.js","webpack:///./node_modules/core-js/internals/array-reduce.js","webpack:///./node_modules/core-js/modules/es.array.map.js","webpack:///./node_modules/core-js/modules/es.object.get-own-property-descriptors.js","webpack:///./node_modules/core-js/modules/web.dom-collections.iterator.js","webpack:///./node_modules/core-js/modules/es.symbol.description.js","webpack:///./node_modules/core-js/modules/es.object.get-own-property-descriptor.js","webpack:///./node_modules/core-js/internals/well-known-symbol-wrapped.js","webpack:///./node_modules/@babel/runtime/helpers/inherits.js","webpack:///./node_modules/core-js/internals/internal-metadata.js","webpack:///./node_modules/core-js/modules/es.array.slice.js"],"names":["aFunction","isObject","slice","factories","construct","C","argsLength","args","list","i","Function","join","module","exports","bind","that","fn","this","partArgs","call","arguments","boundFunction","concat","length","apply","prototype","toIndexedObject","nativeGetOwnPropertyNames","f","toString","windowNames","window","Object","getOwnPropertyNames","getWindowNames","it","error","_nonIterableSpread","TypeError","compressSpaces","str","replace","trimLeft","trimRight","toNumbers","matches","match","map","parseFloat","allUppercase","normalizeAttributeName","name","test","toLowerCase","parseExternalUrl","url","urlMatch","normalizeColor","color","startsWith","rgbParts","normalizedColor","num","isFloat","String","Math","round","attributeRegex","idRegex","classRegex","pseudoElementRegex","pseudoClassWithBracketsRegex","pseudoClassRegex","elementRegex","findSelectorMatch","selector","regex","getSelectorSpecificity","specificity","currentSelector","delta","_findSelectorMatch","_findSelectorMatch2","_findSelectorMatch3","_findSelectorMatch4","_findSelectorMatch5","_findSelectorMatch6","_findSelectorMatch7","_findSelectorMatch8","_findSelectorMatch9","_findSelectorMatch10","_findSelectorMatch11","_findSelectorMatch12","_findSelectorMatch13","_findSelectorMatch14","PSEUDO_ZERO","vectorMagnitude","v","sqrt","pow","vectorsRatio","u","vectorsAngle","acos","CB1","t","CB2","CB3","CB4","QB1","QB2","QB3","createCommonjsModule","runtime","undefined$1","Op","hasOwn","hasOwnProperty","$Symbol","Symbol","iteratorSymbol","iterator","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","toStringTag","wrap","innerFn","outerFn","self","tryLocsList","protoGenerator","Generator","generator","create","context","Context","_invoke","makeInvokeMethod","tryCatch","obj","arg","type","err","GenStateSuspendedStart","GenStateSuspendedYield","GenStateExecuting","GenStateCompleted","ContinueSentinel","GeneratorFunction","GeneratorFunctionPrototype","IteratorPrototype","getProto","getPrototypeOf","NativeIteratorPrototype","values","Gp","defineIteratorMethods","forEach","method","AsyncIterator","PromiseImpl","invoke","resolve","reject","record","result","value","__await","then","unwrapped","previousPromise","enqueue","callInvokeWithMethodAndArg","state","Error","doneResult","delegate","delegateResult","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","done","info","resultName","next","nextLoc","pushTryEntry","locs","entry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","iterable","iteratorMethod","isNaN","constructor","displayName","isGeneratorFunction","genFun","ctor","mark","setPrototypeOf","__proto__","awrap","async","Promise","iter","keys","object","key","reverse","pop","skipTempReset","prev","charAt","stop","rootEntry","rootRecord","rval","exception","handle","loc","caught","hasCatch","hasFinally","finallyEntry","complete","finish","thrown","delegateYield","regeneratorRuntime","accidentalStrictMode","Property","document","isNormalizedColor","regexp","isString","hasValue","asString","getString","def","n","rootEmSize","emSize","axisOrIsFontSize","processPercent","undefined","_ref","_ref2","axis","isFontSize","viewPort","screen","getNumber","min","computeSize","max","getRem","getEm","getDpi","PI","definitions","element","opacity","getDefinition","createGradient","ctx","createPattern","getHrefAttribute","patternTransform","getAttribute","setValue","textBaselineMapping","getColor","len","commas","ok","alpha","toRGBA","ViewPort","viewPorts","width","height","d","get","getCurrent","Point","x","y","point","atan2","transform","xp","yp","defaultValue","_toNumbers","_toNumbers2","_toNumbers2$","_toNumbers2$2","scale","_toNumbers3","_toNumbers4","_toNumbers4$","_toNumbers4$2","path","points","pathPoints","Mouse","working","events","eventElements","onClick","onMouseMove","canvas","onclick","onmousemove","style","cursor","run","parent","isPointInPath","boundingBox","_ref3","isPointInBox","_this$screen","offsetLeft","offsetTop","offsetParent","scrollX","scrollY","evt","_this$mapXY","mapXY","event","clientX","clientY","_this$mapXY2","defaultWindow","defaultFetch","fetch","Screen","_ref$fetch","_ref$window","FRAMERATE","MAX_VIRTUAL_PIXELS","CLIENT_WIDTH","CLIENT_HEIGHT","mouse","animations","waits","frameDuration","isReadyLock","isFirstRender","intervalId","checker","readyPromise","every","_","resolveReady","strokeStyle","lineCap","lineJoin","miterLimit","aspectRatio","desiredWidth","desiredHeight","_ref2$minX","minX","_ref2$minY","minY","refX","refY","_ref2$clip","clip","_ref2$clipX","clipX","_ref2$clipY","clipY","cleanAspectRatio","_cleanAspectRatio$spl","split","_cleanAspectRatio$spl2","aspectRatioAlign","aspectRatioMeetOrSlice","align","meetOrSlice","scaleX","scaleY","scaleMin","scaleMax","finalDesiredWidth","finalDesiredHeight","refXProp","refYProp","hasRefs","translate","getPixels","scaledClipX","scaledClipY","beginPath","moveTo","lineTo","closePath","isMeetMinY","isSliceMaxY","isMeetMinX","isSliceMaxX","_this","_ref3$enableRedraw","enableRedraw","_ref3$ignoreMouse","ignoreMouse","_ref3$ignoreAnimation","ignoreAnimation","_ref3$ignoreDimension","ignoreDimensions","_ref3$ignoreClear","ignoreClear","forceRedraw","scaleWidth","scaleHeight","offsetX","offsetY","isReady","render","now","Date","tick","shouldUpdate","runEvents","start","cancel","reduce","animation","update","hasEvents","clear","setCurrent","widthStyle","getStyle","heightStyle","cWidth","clientWidth","cHeight","clientHeight","viewBox","xRatio","yRatio","_widthStyle","_heightStyle","transformStyle","clearRect","defaultFetch$1","DefaultDOMParser","DOMParser","Parser","_ref$DOMParser","_parse","_callee","resource","_context","parseFromString","load","parse","_x","xml","parser","checkDocument","parserError","getElementsByTagName","textContent","_load","_callee2","response","_context2","text","_x2","Translate","_this$point","_this$point2","_this$point3","applyTransform","Rotate","rotate","transformOrigin","angle","cx","cy","numbers","getRadians","rad","cos","sin","Scale","scaleSize","parseScale","_this$scale","_this$scale2","_this$scale3","Matrix","matrix","a","b","c","e","g","h","det","_createSuper","Derived","Super","_isNativeReflectConstruct","NewTarget","Reflect","sham","Proxy","Skew","_Matrix","_super","skew","_createSuper$1","_isNativeReflectConstruct$1","SkewX","_Skew","tan","_createSuper$2","_isNativeReflectConstruct$2","SkewY","parseTransforms","trim","parseTransform","_transform$split","_transform$split2","Transform","transforms","data","originCoords","_parseTransform","_parseTransform2","TransformType","transformTypes","unapply","applyToPoint","transformOriginStyle","skewX","skewY","Element","node","captureTextNodes","attributes","styles","stylesSpecificity","animationFrozen","animationFrozenValue","children","nodeType","Array","from","attribute","nodeName","addStylesFromStyleDefinition","_style$split$map","_style$split$map2","id","getValue","childNodes","childNode","addChild","textNode","createTextNode","getText","createIfNotExists","attr","_attr","empty","skipAncestors","parentStyle","_style","save","mask","applyEffects","filter","setContext","renderChildren","clearContext","restore","fromElement","clipPathStyleProp","child","createElement","ignoreChildTypes","includes","styleClasses","some","styleClass","_this$document","matchesSelector","existingSpecificity","ignoreStyles","toRestore","styleProp","_createSuper$3","_isNativeReflectConstruct$3","UnknownElement","_Element","wrapFontFamily","fontFamily","trimmed","prepareFontFamily","process","prepareFontStyle","fontStyle","targetFontStyle","prepareFontWeight","fontWeight","targetFontWeight","Font","fontVariant","fontSize","inherit","inheritFont","font","parts","set","part","variants","weights","_part$split","_part$split2","BoundingBox","x1","Number","NaN","y1","x2","y2","addPoint","p0","p1","p2","p3","forX","b2ac","t1","addX","sumCubic","addY","t2","p0x","p0y","p1x","p1y","p2x","p2y","p3x","p3y","bezierCurveAdd","cp1x","cp1y","cp2x","cp2y","addBezierCurve","_createSuper$4","_isNativeReflectConstruct$4","RenderedElement","modifiedEmSizeStack","opacityStyle","fromMeasure","fillStyleProp","fillOpacityStyleProp","strokeStyleProp","strokeOpacityProp","isUrlDefinition","fillStyle","getFillStyleDefinition","_fillStyle","_fillStyle2","addOpacity","_strokeStyle","_strokeStyle2","strokeWidthStyleProp","newLineWidth","lineWidth","strokeLinecapStyleProp","strokeLinejoinStyleProp","strokeMiterlimitProp","pointOrderStyleProp","strokeDasharrayStyleProp","strokeDashoffsetProp","paintOrder","gaps","setLineDash","webkitLineDash","mozDash","offset","lineDashOffset","webkitLineDashOffset","mozDashOffset","fontStyleProp","fontStyleStyleProp","fontVariantStyleProp","fontWeightStyleProp","fontSizeStyleProp","fontFamilyStyleProp","isPixels","globalAlpha","calculateOpacity","popEmSize","_createSuper$5","_isNativeReflectConstruct$5","TextElement","_RenderedElement","measureCache","textBaseline","getTextBaseline","dxAttr","dyAttr","getAnchorDelta","_this2","getTElementBoundingBox","initializeCoordinates","childBoundingBox","getChildBoundingBox","addBoundingBox","inheritFontSize","getFontSize","measureText","char","glyph","isArabic","prevChar","nextChar","arabicForm","glyphs","missingGlyph","parentNode","index","indexOf","lastIndex","_this3","renderChild","isWorking","checkBoundingBox","getBoundingBox","renderTElementChildren","renderText","customFont","unitsPerEm","fontFace","ctxFont","isRTL","dx","getGlyph","lw","horizAdvX","strokeText","fillText","startI","textAnchor","measureTextRecursive","textParent","xAttr","yAttr","_width","adjustChildCoordinates","measure","measureTargetText","targetText","_measure","_ctx$measureText","_createSuper$6","_isNativeReflectConstruct$6","TSpanElement","_TextElement","getTextFromNode","_createSuper$7","_isNativeReflectConstruct$7","TextNode","_TSpanElement","preparePath","PathParser","control","current","command","tokens","previousCommand","angles","isEnd","getToken","getScalar","makeAbsolute","getPoint","_this$current","_this$control","ox","oy","isRelativeCommand","_this$current2","priorTo","angleTo","addMarkerAngle","j","_createSuper$8","_isNativeReflectConstruct$8","PathElement","pathParser","nextCommand","pathM","pathL","pathH","pathV","pathC","pathS","pathQ","pathT","pathA","pathZ","getMarkerPoints","getMarkerAngles","markers","checkPath","fillRuleStyleProp","fill","stroke","getMarkers","markersLastIndex","markerStartStyleProp","markerMidStyleProp","markerEndStyleProp","marker","_markers$","_marker","_markers$i","_point","_angle","_marker2","_markers$markersLastI","_point2","_angle2","getAsCurrentPoint","addMarker","isCommandOrEnd","_point3","_y","controlPoint","getAsControlPoint","currentPoint","bezierCurveTo","getReflectedControlPoint","addQuadraticCurve","quadraticCurveTo","rx","ry","xAxisRotation","largeArcFlag","sweepFlag","currp","l","s","cpp","centp","a1","ad","dir","ah","halfWay","r","sx","sy","arc","Boolean","_createSuper$9","_isNativeReflectConstruct$9","SVGElement","root","removeCurrent","setDefaults","getComputedStyle","getPropertyValue","fontSizeProp","_screen$viewPort","refXAttr","refYAttr","viewBoxAttr","setViewBox","preserveAspectRatio","widthAttr","heightAttr","styleAttr","originWidth","originHeight","preserveAspectRatioAttr","_createSuper$a","_isNativeReflectConstruct$a","RectElement","_PathElement","rxAttr","ryAttr","KAPPA","_createSuper$b","_isNativeReflectConstruct$b","CircleElement","_createSuper$c","_isNativeReflectConstruct$c","EllipseElement","_createSuper$d","_isNativeReflectConstruct$d","LineElement","_this$getPoints","getPoints","_this$getPoints2","_this$getPoints2$","x0","y0","_this$getPoints2$2","_this$getPoints3","_this$getPoints4","_createSuper$e","_isNativeReflectConstruct$e","PolylineElement","parsePath","_points","_points$","_createSuper$f","_isNativeReflectConstruct$f","PolygonElement","_PolylineElement","_this$points","_this$points$","_createSuper$g","_isNativeReflectConstruct$g","PatternElement","parentOpacityProp","patternSvg","patternCanvas","createCanvas","patternCtx","getContext","deleteProperty","pattern","_createSuper$h","_isNativeReflectConstruct$h","MarkerElement","orient","markerUnits","markerSvg","overflow","_createSuper$i","_isNativeReflectConstruct$i","DefsElement","_createSuper$j","_isNativeReflectConstruct$j","GElement","_createSuper$k","_isNativeReflectConstruct$k","GradientElement","attributesToInherit","stops","_assertThisInitialize","stopsContainer","inheritStopContainer","_stopsContainer","gradient","getGradient","addParentOpacity","addColorStop","_document$screen","_viewPort$viewPorts","rootView","rect","group","attributeToInherit","colorProp","_createSuper$l","_isNativeReflectConstruct$l","LinearGradientElement","_GradientElement","isBoundingBoxUnits","getGradientUnits","createLinearGradient","_createSuper$m","_isNativeReflectConstruct$m","RadialGradientElement","fx","fy","fr","createRadialGradient","_createSuper$n","_isNativeReflectConstruct$n","StopElement","stopOpacity","stopColor","_createSuper$o","_isNativeReflectConstruct$o","AnimateElement","duration","initialValue","initialUnits","removed","frozen","begin","getMilliseconds","maxDuration","to","attributeType","attributeName","_this$getProgress","getProgress","progress","newValue","prop","getProperty","getUnits","updated","calcValue","typeAttr","p","lb","floor","ub","ceil","_createSuper$p","_isNativeReflectConstruct$p","AnimateColorElement","_AnimateElement","colorFrom","colorTo","parseInt","_createSuper$q","_isNativeReflectConstruct$q","AnimateTransformElement","transformFrom","transformTo","_createForOfIteratorHelper","o","isArray","_unsupportedIterableToArray","F","_e","normalCompletion","didErr","step","_e2","return","minLen","_arrayLikeToArray","arr","arr2","_createSuper$r","_isNativeReflectConstruct$r","FontElement","_step","_iterator","fontFamilyStyle","unicode","_createSuper$s","_isNativeReflectConstruct$s","FontFaceElement","ascent","descent","_createSuper$t","_isNativeReflectConstruct$t","MissingGlyphElement","_createSuper$u","_isNativeReflectConstruct$u","GlyphElement","_createSuper$v","_isNativeReflectConstruct$v","TRefElement","firstChild","_createSuper$w","_isNativeReflectConstruct$w","AElement","hasText","open","_createForOfIteratorHelper$1","_unsupportedIterableToArray$1","_arrayLikeToArray$1","_createSuper$x","_isNativeReflectConstruct$x","TextPathElement","textWidth","textHeight","pathLength","glyphInfo","letterSpacingCache","measuresCache","Map","pathElement","dataArray","parsePathData","theta","dTheta","psi","fs","setTextData","textDecoration","partialText","rotation","idx","anchor","textFullWidth","fullPathWidth","spacesNumber","inputOffset","charI","glyphWidth","getLetterSpacingAt","splineStep","segment","getEquidistantPointOnPath","has","chars","thisSpacing","parentSpacing","letterSpacing","textLen","dxSum","acc","cur","getPathLength","startOffset","_this2$findSegmentToF","findSegmentToFitChar","nextOffset","getLineLength","kern","midpoint","getPointOnLine","transposeX","transposeY","pathCommands","startX","startY","cmd","upperCommand","toUpperCase","calcLength","_p","getPointOnCubicBezier","getPointOnQuadraticBezier","end","inc","abs","getPointOnEllipticalArc","dist","P1x","P1y","P2x","P2y","fromX","fromY","m","rise","pt","ix","iy","pRise","pRun","distance","fullLen","cumulativePathLength","pathCmd","currentT","pct","P3x","P3y","P4x","P4y","cosPsi","sinPsi","inputStep","inputPrecision","precision","equidistantCache","getPointOnPath","targetDistance","buildEquidistantCache","_createSuper$y","_isNativeReflectConstruct$y","ImageElement","loaded","href","isSvg","images","loadSvg","loadImage","_loadImage","image","createImage","t0","console","_loadSvg","svg","canvg","forkString","_image","drawImage","_createSuper$z","_isNativeReflectConstruct$z","SymbolElement","SVGFontLoader","fonts","svgDocument","fontNode","_createSuper$A","_isNativeReflectConstruct$A","StyleElement","css","cssDefs","cssParts","cssClasses","cssProps","cssClass","props","cssProp","substr","srcs","src","_createSuper$B","_isNativeReflectConstruct$B","UseElement","tempSvg","oldParent","_element","_createSuper$C","_isNativeReflectConstruct$C","imGet","img","rgba","imSet","val","mi","m1","m2","m3","FeColorMatrixElement","includeOpacity","__","srcData","getImageData","nr","ng","nb","na","putImageData","_createSuper$D","_isNativeReflectConstruct$D","MaskElement","ignoredStyles","removeStyles","maskCanvas","maskCtx","tmpCanvas","tmpCtx","globalCompositeOperation","fillRect","restoreStyles","_createSuper$E","_isNativeReflectConstruct$E","noop","ClipPathElement","contextProto","elementTransform","_createSuper$F","_isNativeReflectConstruct$F","FilterElement","px","py","efd","extraFilterDistance","tmpCanvasWidth","tmpCanvasHeight","_createSuper$G","_isNativeReflectConstruct$G","FeDropShadowElement","___","____","_____","_createSuper$H","_isNativeReflectConstruct$H","FeMorphologyElement","_createSuper$I","_isNativeReflectConstruct$I","FeCompositeElement","_createSuper$J","_isNativeReflectConstruct$J","FeGaussianBlurElement","blurRadius","body","getUniqueId","display","appendChild","removeChild","_createSuper$K","_isNativeReflectConstruct$K","TitleElement","_createSuper$L","_isNativeReflectConstruct$L","DescElement","elementTypes","ownKeys","enumerableOnly","getOwnPropertySymbols","symbols","sym","getOwnPropertyDescriptor","enumerable","_objectSpread","target","source","getOwnPropertyDescriptors","defineProperties","defineProperty","_createImage","anonymousCrossOrigin","_args","crossOrigin","onload","onerror","Document","_ref$rootEmSize","_ref$emSize","_ref$createCanvas","_ref$createImage","emSizeStack","uniqueId","bindCreateImage","wait","isImagesLoaded","isFontsLoaded","forceAnonymousCrossOrigin","documentElement","elementType","ElementType","config","ownKeys$1","_objectSpread$1","Canvg","options","createDocumentElement","fromString","ready","_render","baseOptions","resize","_from","_args2","offscreen","DOMParserFallback","preset","OffscreenCanvas","blob","createImageBitmap","freeze","_iterableToArray","fixRegExpWellKnownSymbolLogic","isRegExp","anObject","requireObjectCoercible","speciesConstructor","advanceStringIndex","toLength","callRegExpExec","regexpExec","fails","arrayPush","MAX_UINT32","SUPPORTS_Y","RegExp","SPLIT","nativeSplit","maybeCallNative","internalSplit","separator","limit","string","lim","lastLength","output","flags","ignoreCase","multiline","sticky","lastLastIndex","separatorCopy","O","splitter","res","S","unicodeMatching","q","A","z","$","$reduce","left","arrayMethodIsStrict","arrayMethodUsesToLength","STRICT_METHOD","USES_TO_LENGTH","1","proto","forced","callbackfn","arrayLikeToArray","require","_arrayWithoutHoles","redefine","TO_STRING","RegExpPrototype","nativeToString","NOT_GENERIC","INCORRECT_NAME","R","rf","unsafe","nativeReverse","arrayWithHoles","iterableToArrayLimit","unsupportedIterableToArray","nonIterableRest","_slicedToArray","notARegExp","correctIsRegExpLogic","IS_PURE","nativeStartsWith","CORRECT_IS_REGEXP_LOGIC","MDN_POLYFILL_BUG","descriptor","writable","searchString","search","toObject","nativeGetPrototypeOf","CORRECT_PROTOTYPE_GETTER","FAILS_ON_PRIMITIVES","stat","_getPrototypeOf","_assertThisInitialized","ReferenceError","InternalStateModule","defineIterator","STRING_ITERATOR","setInternalState","getInternalState","getterFor","iterated","arrayWithoutHoles","iterableToArray","nonIterableSpread","_toConsumableArray","$some","regExpExec","MATCH","nativeMatch","matcher","global","fullUnicode","matchStr","$trim","forcedStringTrimMethod","_setPrototypeOf","getBuiltIn","nativeConstruct","NEW_TARGET_BUG","ARGS_BUG","FORCED","Target","newTarget","$args","instance","callWithSafeIterationClosing","isArrayIteratorMethod","createProperty","getIteratorMethod","arrayLike","argumentsLength","mapfn","mapping","collection","collectionStrong","init","toInteger","SUBSTITUTION_SYMBOLS","SUBSTITUTION_SYMBOLS_NO_NAMED","maybeToString","REPLACE","nativeReplace","reason","REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE","REPLACE_KEEPS_$0","UNSAFE_SUBSTITUTE","searchValue","replaceValue","replacer","functionalReplace","results","accumulatedResult","nextSourcePosition","matched","position","captures","namedCaptures","groups","replacerArgs","replacement","getSubstitution","tailPos","ch","capture","whitespaces","whitespace","ltrim","rtrim","createMethod","TYPE","$this","color_string","simple_colors","aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dodgerblue","feldspar","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","green","greenyellow","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgrey","lightgreen","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslateblue","lightslategray","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","snow","springgreen","steelblue","teal","thistle","tomato","turquoise","violet","violetred","wheat","white","whitesmoke","yellow","yellowgreen","color_defs","re","example","bits","processor","exec","channels","toRGB","toHex","getHelpXML","examples","sc","setAttribute","list_item","list_color","RGBColor","example_div","cssText","list_item_value","_defineProperties","configurable","_createClass","Constructor","protoProps","staticProps","getOwnPropertyDescriptorModule","propertyKey","receiver","_typeof","_classCallCheck","mulTable","shgTable","getImageDataFromCanvas","topX","topY","getElementById","processCanvasRGBA","radius","imageData","processImageDataRGBA","stackEnd","pixels","div","widthMinus1","heightMinus1","radiusPlus1","sumFactor","stackStart","BlurStack","stack","stackIn","stackOut","yw","yi","mulSum","shgSum","pr","pg","pb","pa","_i","rInSum","gInSum","bInSum","aInSum","rOutSum","gOutSum","bOutSum","aOutSum","rSum","gSum","bSum","aSum","_i2","rbs","paInitial","_a2","_stackOut","_r","_g","_b","_a","_pr","_pg","_pb","_pa","_rOutSum","_gOutSum","_bOutSum","_aOutSum","_rSum","_gSum","_bSum","_aSum","_i3","_gInSum","_bInSum","_aInSum","_rInSum","_i4","_rbs","_p2","CONVERT_TO_STRING","pos","first","second","size","charCodeAt","codeAt","redefineAll","anInstance","iterate","setSpecies","DESCRIPTORS","fastKey","internalStateGetterFor","getConstructor","wrapper","CONSTRUCTOR_NAME","IS_MAP","ADDER","last","define","previous","getEntry","add","setStrong","ITERATOR_NAME","getInternalCollectionState","getInternalIteratorState","kind","assertThisInitialized","_possibleConstructorReturn","getNanoSeconds","hrtime","loadTime","moduleLoadTime","nodeLoadTime","upTime","performance","hr","uptime","getTime","isForced","InternalMetadataModule","checkCorrectnessOfIteration","setToStringTag","inheritIfRequired","common","IS_WEAK","NativeConstructor","NativePrototype","exported","fixMethod","KEY","nativeMethod","entries","REQUIRED","HASNT_CHAINING","THROWS_ON_PRIMITIVES","ACCEPT_ITERABLES","BUGGY_ZERO","$instance","dummy","Wrapper","NewTargetPrototype","wrappedWellKnownSymbolModule","NAME","objectGetPrototypeOf","toAbsoluteIndex","endPos","toPrimitive","definePropertyModule","createPropertyDescriptor","superPropBase","_get","property","base","desc","_defineProperty","arraySpeciesCreate","arrayMethodHasSpeciesSupport","wellKnownSymbol","V8_VERSION","IS_CONCAT_SPREADABLE","MAX_SAFE_INTEGER","MAXIMUM_ALLOWED_INDEX_EXCEEDED","IS_CONCAT_SPREADABLE_SUPPORT","array","SPECIES_SUPPORT","isConcatSpreadable","spreadable","k","E","_iterableToArrayLimit","_arr","_n","_d","_s","_superPropBase","IndexedObject","nativeJoin","ES3_STRINGS","NATIVE_SYMBOL","USE_SYMBOL_AS_UID","nativeObjectCreate","objectKeys","getOwnPropertyNamesModule","getOwnPropertyNamesExternal","getOwnPropertySymbolsModule","propertyIsEnumerableModule","createNonEnumerableProperty","shared","sharedKey","hiddenKeys","uid","defineWellKnownSymbol","$forEach","HIDDEN","SYMBOL","PROTOTYPE","TO_PRIMITIVE","ObjectPrototype","$stringify","nativeGetOwnPropertyDescriptor","nativeDefineProperty","nativePropertyIsEnumerable","AllSymbols","ObjectPrototypeSymbols","StringToSymbolRegistry","SymbolToStringRegistry","WellKnownSymbolsStore","QObject","USE_SETTER","findChild","setSymbolDescriptor","P","Attributes","ObjectPrototypeDescriptor","tag","description","symbol","isSymbol","$defineProperty","$defineProperties","Properties","properties","$getOwnPropertySymbols","$propertyIsEnumerable","$create","V","$getOwnPropertyDescriptor","$getOwnPropertyNames","names","IS_OBJECT_PROTOTYPE","setter","keyFor","useSetter","useSimple","FORCED_JSON_STRINGIFY","stringify","space","$replacer","valueOf","$every","INCORRECT_ITERATION","nativeApply","functionApply","OPTIONAL_ARGUMENTS_LIST","thisArgument","argumentsList","classof","NUMBER","NativeNumber","NumberPrototype","BROKEN_CLASSOF","toNumber","argument","third","radix","maxCode","digits","code","NumberWrapper","TO_STRING_TAG_SUPPORT","FunctionPrototype","FunctionPrototypeToString","nameRE","nativeKeys","isExtensible","preventExtensions","_arrayWithHoles","_nonIterableRest","vendors","suffix","raf","caf","queue","callback","_now","setTimeout","cp","cancelled","polyfill","requestAnimationFrame","cancelAnimationFrame","non","METHOD_NAME","asyncGeneratorStep","gen","_next","_throw","_asyncToGenerator","$indexOf","nativeIndexOf","NEGATIVE_ZERO","ACCESSORS","searchElement","addToUnscopables","IS_RIGHT","memo","right","$map","HAS_SPECIES_SUPPORT","DOMIterables","ArrayIteratorMethods","ITERATOR","TO_STRING_TAG","ArrayValues","COLLECTION_NAME","Collection","CollectionPrototype","copyConstructorProperties","NativeSymbol","EmptyStringDescriptionStore","SymbolWrapper","symbolPrototype","symbolToString","native","_inherits","subClass","superClass","FREEZING","METADATA","setMetadata","objectID","weakData","getWeakData","onFreeze","meta","0","SPECIES","nativeSlice","fin"],"mappings":"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,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KAClwCC,EAAW,CAAC,EAAG,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,IA4DvgC,SAASC,EAAuBt2C,EAAQu2C,EAAMC,EAAMx4C,EAAOC,GAKzD,GAJsB,kBAAX+B,IACTA,EAAShF,SAASy7C,eAAez2C,KAG9BA,GAA8B,WAApBk2C,EAAQl2C,MAA0B,eAAgBA,GAC/D,MAAM,IAAI5R,UAAU,2EAGtB,IAAIiG,EAAU2L,EAAOgnB,WAAW,MAEhC,IACE,OAAO3yB,EAAQ0lC,aAAawc,EAAMC,EAAMx4C,EAAOC,GAC/C,MAAO8N,GACP,MAAM,IAAIlV,MAAM,gCAAkCkV,IActD,SAAS2qC,EAAkB12C,EAAQu2C,EAAMC,EAAMx4C,EAAOC,EAAQ04C,GAC5D,KAAIl+C,MAAMk+C,IAAWA,EAAS,GAA9B,CAIAA,GAAU,EACV,IAAIC,EAAYN,EAAuBt2C,EAAQu2C,EAAMC,EAAMx4C,EAAOC,GAClE24C,EAAYC,EAAqBD,EAAWL,EAAMC,EAAMx4C,EAAOC,EAAQ04C,GACvE32C,EAAOgnB,WAAW,MAAMoT,aAAawc,EAAWL,EAAMC,IAaxD,SAASK,EAAqBD,EAAWL,EAAMC,EAAMx4C,EAAOC,EAAQ04C,GAYlE,IAXA,IASIG,EATAC,EAASH,EAAU9oC,KACnBkpC,EAAM,EAAIL,EAAS,EAEnBM,EAAcj5C,EAAQ,EACtBk5C,EAAej5C,EAAS,EACxBk5C,EAAcR,EAAS,EACvBS,EAAYD,GAAeA,EAAc,GAAK,EAC9CE,EAAa,IAAIC,EACjBC,EAAQF,EAGH9qD,EAAI,EAAGA,EAAIyqD,EAAKzqD,IACvBgrD,EAAQA,EAAM9/C,KAAO,IAAI6/C,EAErB/qD,IAAM4qD,IACRL,EAAWS,GAIfA,EAAM9/C,KAAO4/C,EAQb,IAPA,IAAIG,EAAU,KACVC,EAAW,KACXC,EAAK,EACLC,EAAK,EACLC,EAASxB,EAASO,GAClBkB,EAASxB,EAASM,GAEbp4C,EAAI,EAAGA,EAAIN,EAAQM,IAAK,CAC/Bg5C,EAAQF,EAMR,IALA,IAAIS,EAAKf,EAAOY,GACZI,EAAKhB,EAAOY,EAAK,GACjBK,EAAKjB,EAAOY,EAAK,GACjBM,EAAKlB,EAAOY,EAAK,GAEZO,EAAK,EAAGA,EAAKf,EAAae,IACjCX,EAAM90B,EAAIq1B,EACVP,EAAMvrC,EAAI+rC,EACVR,EAAM1rC,EAAImsC,EACVT,EAAM3rC,EAAIqsC,EACVV,EAAQA,EAAM9/C,KAgBhB,IAbA,IAAI0gD,EAAS,EACTC,EAAS,EACTC,EAAS,EACTC,EAAS,EACTC,EAAUpB,EAAcW,EACxBU,EAAUrB,EAAcY,EACxBU,EAAUtB,EAAca,EACxBU,EAAUvB,EAAcc,EACxBU,EAAOvB,EAAYU,EACnBc,EAAOxB,EAAYW,EACnBc,EAAOzB,EAAYY,EACnBc,EAAO1B,EAAYa,EAEdc,EAAM,EAAGA,EAAM5B,EAAa4B,IAAO,CAC1C,IAAIhtB,EAAI4rB,IAAOV,EAAc8B,EAAM9B,EAAc8B,IAAQ,GACrDt2B,EAAIs0B,EAAOhrB,GACX/f,EAAI+qC,EAAOhrB,EAAI,GACflgB,EAAIkrC,EAAOhrB,EAAI,GACfngB,EAAImrC,EAAOhrB,EAAI,GACfitB,EAAM7B,EAAc4B,EACxBJ,IAASpB,EAAM90B,EAAIA,GAAKu2B,EACxBJ,IAASrB,EAAMvrC,EAAIA,GAAKgtC,EACxBH,IAAStB,EAAM1rC,EAAIA,GAAKmtC,EACxBF,IAASvB,EAAM3rC,EAAIA,GAAKotC,EACxBb,GAAU11B,EACV21B,GAAUpsC,EACVqsC,GAAUxsC,EACVysC,GAAU1sC,EACV2rC,EAAQA,EAAM9/C,KAGhB+/C,EAAUH,EACVI,EAAWX,EAEX,IAAK,IAAIx4C,EAAI,EAAGA,EAAIN,EAAOM,IAAK,CAC9B,IAAI26C,EAAYH,EAAOlB,GAAUC,EAGjC,GAFAd,EAAOY,EAAK,GAAKsB,EAEC,IAAdA,EAAiB,CACnB,IAAIC,EAAM,IAAMD,EAEhBlC,EAAOY,IAAOgB,EAAOf,GAAUC,GAAUqB,EACzCnC,EAAOY,EAAK,IAAMiB,EAAOhB,GAAUC,GAAUqB,EAC7CnC,EAAOY,EAAK,IAAMkB,EAAOjB,GAAUC,GAAUqB,OAE7CnC,EAAOY,GAAMZ,EAAOY,EAAK,GAAKZ,EAAOY,EAAK,GAAK,EAGjDgB,GAAQJ,EACRK,GAAQJ,EACRK,GAAQJ,EACRK,GAAQJ,EACRH,GAAWf,EAAQ/0B,EACnB+1B,GAAWhB,EAAQxrC,EACnBysC,GAAWjB,EAAQ3rC,EACnB6sC,GAAWlB,EAAQ5rC,EAEnB,IAAI6nB,EAAKn1B,EAAIq4C,EAAS,EAEtBljB,EAAKikB,GAAMjkB,EAAKwjB,EAAcxjB,EAAKwjB,IAAgB,EACnDkB,GAAUX,EAAQ/0B,EAAIs0B,EAAOtjB,GAC7B2kB,GAAUZ,EAAQxrC,EAAI+qC,EAAOtjB,EAAK,GAClC4kB,GAAUb,EAAQ3rC,EAAIkrC,EAAOtjB,EAAK,GAClC6kB,GAAUd,EAAQ5rC,EAAImrC,EAAOtjB,EAAK,GAClCklB,GAAQR,EACRS,GAAQR,EACRS,GAAQR,EACRS,GAAQR,EACRd,EAAUA,EAAQ//C,KAClB,IAAI0hD,GAAY1B,EACZ2B,GAAKD,GAAU12B,EACf42B,GAAKF,GAAUntC,EACfstC,GAAKH,GAAUttC,EACf0tC,GAAKJ,GAAUvtC,EACnB2sC,GAAWa,GACXZ,GAAWa,GACXZ,GAAWa,GACXZ,GAAWa,GACXpB,GAAUiB,GACVhB,GAAUiB,GACVhB,GAAUiB,GACVhB,GAAUiB,GACV9B,EAAWA,EAAShgD,KACpBkgD,GAAM,EAGRD,GAAM15C,EAGR,IAAK,IAAIuL,GAAK,EAAGA,GAAKvL,EAAOuL,KAAM,CACjCouC,EAAKpuC,IAAM,EAEX,IAAIiwC,GAAMzC,EAAOY,GACb8B,GAAM1C,EAAOY,EAAK,GAClB+B,GAAM3C,EAAOY,EAAK,GAClBgC,GAAM5C,EAAOY,EAAK,GAClBiC,GAAWzC,EAAcqC,GACzBK,GAAW1C,EAAcsC,GACzBK,GAAW3C,EAAcuC,GACzBK,GAAW5C,EAAcwC,GACzBK,GAAQ5C,EAAYoC,GACpBS,GAAQ7C,EAAYqC,GACpBS,GAAQ9C,EAAYsC,GACpBS,GAAQ/C,EAAYuC,GAExBpC,EAAQF,EAER,IAAK,IAAI+C,GAAM,EAAGA,GAAMjD,EAAaiD,KACnC7C,EAAM90B,EAAI+2B,GACVjC,EAAMvrC,EAAIytC,GACVlC,EAAM1rC,EAAI6tC,GACVnC,EAAM3rC,EAAI+tC,GACVpC,EAAQA,EAAM9/C,KAShB,IANA,IAAImH,GAAKZ,EACLq8C,GAAU,EACVC,GAAU,EACVC,GAAU,EACVC,GAAU,EAELC,GAAM,EAAGA,IAAO9D,EAAQ8D,KAAO,CACtC9C,EAAK/4C,GAAK2K,IAAM,EAEhB,IAAImxC,GAAOvD,EAAcsD,GAEzBT,KAAUzC,EAAM90B,EAAI+2B,GAAMzC,EAAOY,IAAO+C,GACxCT,KAAU1C,EAAMvrC,EAAIytC,GAAM1C,EAAOY,EAAK,IAAM+C,GAC5CR,KAAU3C,EAAM1rC,EAAI6tC,GAAM3C,EAAOY,EAAK,IAAM+C,GAC5CP,KAAU5C,EAAM3rC,EAAI+tC,GAAM5C,EAAOY,EAAK,IAAM+C,GAC5CF,IAAWhB,GACXa,IAAWZ,GACXa,IAAWZ,GACXa,IAAWZ,GACXpC,EAAQA,EAAM9/C,KAEVgjD,GAAMvD,IACRt4C,IAAMZ,GAIV25C,EAAKpuC,GACLiuC,EAAUH,EACVI,EAAWX,EAEX,IAAK,IAAI51B,GAAK,EAAGA,GAAKjjB,EAAQijB,KAAM,CAClC,IAAIy5B,GAAMhD,GAAM,EAEhBZ,EAAO4D,GAAM,GAAKhB,GAAMQ,GAAQvC,GAAUC,EAEtC8B,GAAM,GACRA,GAAM,IAAMA,GACZ5C,EAAO4D,KAAQX,GAAQpC,GAAUC,GAAU8B,GAC3C5C,EAAO4D,GAAM,IAAMV,GAAQrC,GAAUC,GAAU8B,GAC/C5C,EAAO4D,GAAM,IAAMT,GAAQtC,GAAUC,GAAU8B,IAE/C5C,EAAO4D,IAAO5D,EAAO4D,GAAM,GAAK5D,EAAO4D,GAAM,GAAK,EAGpDX,IAASJ,GACTK,IAASJ,GACTK,IAASJ,GACTK,IAASJ,GACTH,IAAYpC,EAAQ/0B,EACpBo3B,IAAYrC,EAAQxrC,EACpB8tC,IAAYtC,EAAQ3rC,EACpBkuC,IAAYvC,EAAQ5rC,EACpB+uC,GAAMpxC,KAAOoxC,GAAMz5B,GAAKi2B,GAAeD,EAAeyD,GAAMzD,GAAgBl5C,GAAS,EACrFg8C,IAASQ,IAAWhD,EAAQ/0B,EAAIs0B,EAAO4D,IACvCV,IAASI,IAAW7C,EAAQxrC,EAAI+qC,EAAO4D,GAAM,GAC7CT,IAASI,IAAW9C,EAAQ3rC,EAAIkrC,EAAO4D,GAAM,GAC7CR,IAASI,IAAW/C,EAAQ5rC,EAAImrC,EAAO4D,GAAM,GAC7CnD,EAAUA,EAAQ//C,KAClBmiD,IAAYJ,GAAM/B,EAASh1B,EAC3Bo3B,IAAYJ,GAAMhC,EAASzrC,EAC3B8tC,IAAYJ,GAAMjC,EAAS5rC,EAC3BkuC,IAAYJ,GAAMlC,EAAS7rC,EAC3B4uC,IAAWhB,GACXa,IAAWZ,GACXa,IAAWZ,GACXa,IAAWZ,GACXlC,EAAWA,EAAShgD,KACpBkgD,GAAM35C,GAIV,OAAO44C,EAkNT,IAAIU,EAIJ,SAASA,IACPnB,EAAgBppD,KAAMuqD,GAEtBvqD,KAAK01B,EAAI,EACT11B,KAAKif,EAAI,EACTjf,KAAK8e,EAAI,EACT9e,KAAK6e,EAAI,EACT7e,KAAK0K,KAAO,O,qBClnBd,IAAIyxC,EAAY,EAAQ,QACpB5H,EAAyB,EAAQ,QAGjC4J,EAAe,SAAU0P,GAC3B,OAAO,SAAUxP,EAAOyP,GACtB,IAGIC,EAAOC,EAHP3X,EAAItzC,OAAOwxC,EAAuB8J,IAClChB,EAAWlB,EAAU2R,GACrBG,EAAO5X,EAAE/1C,OAEb,OAAI+8C,EAAW,GAAKA,GAAY4Q,EAAaJ,EAAoB,QAAK/+C,GACtEi/C,EAAQ1X,EAAE6X,WAAW7Q,GACd0Q,EAAQ,OAAUA,EAAQ,OAAU1Q,EAAW,IAAM4Q,IACtDD,EAAS3X,EAAE6X,WAAW7Q,EAAW,IAAM,OAAU2Q,EAAS,MAC1DH,EAAoBxX,EAAEvpC,OAAOuwC,GAAY0Q,EACzCF,EAAoBxX,EAAEp3C,MAAMo+C,EAAUA,EAAW,GAA+B2Q,EAAS,OAAlCD,EAAQ,OAAU,IAA0B,SAI7GpuD,EAAOC,QAAU,CAGfuuD,OAAQhQ,GAAa,GAGrBrxC,OAAQqxC,GAAa,K,kCCxBvB,IAAI1M,EAAiB,EAAQ,QAAuC9wC,EAChE0G,EAAS,EAAQ,QACjB+mD,EAAc,EAAQ,QACtBvuD,EAAO,EAAQ,QACfwuD,EAAa,EAAQ,QACrBC,EAAU,EAAQ,QAClB5U,EAAiB,EAAQ,QACzB6U,EAAa,EAAQ,QACrBC,EAAc,EAAQ,QACtBC,EAAU,EAAQ,QAAkCA,QACpDhV,EAAsB,EAAQ,QAE9BG,EAAmBH,EAAoBlzB,IACvCmoC,EAAyBjV,EAAoBK,UAEjDn6C,EAAOC,QAAU,CACf+uD,eAAgB,SAAUC,EAASC,EAAkBC,EAAQC,GAC3D,IAAI3vD,EAAIwvD,GAAQ,SAAU9uD,EAAM0L,GAC9B6iD,EAAWvuD,EAAMV,EAAGyvD,GACpBjV,EAAiB95C,EAAM,CACrB+H,KAAMgnD,EACNrhC,MAAOnmB,EAAO,MACd0mD,WAAOj/C,EACPkgD,UAAMlgD,EACNm/C,KAAM,IAEHO,IAAa1uD,EAAKmuD,KAAO,QACdn/C,GAAZtD,GAAuB8iD,EAAQ9iD,EAAU1L,EAAKivD,GAAQjvD,EAAMgvD,MAG9DjV,EAAmB6U,EAAuBG,GAE1CI,EAAS,SAAUnvD,EAAM2M,EAAKnD,GAChC,IAEI4lD,EAAU1hC,EAFV3jB,EAAQgwC,EAAiB/5C,GACzBgL,EAAQqkD,EAASrvD,EAAM2M,GAqBzB,OAlBE3B,EACFA,EAAMxB,MAAQA,GAGdO,EAAMmlD,KAAOlkD,EAAQ,CACnB0iB,MAAOA,EAAQihC,EAAQhiD,GAAK,GAC5BA,IAAKA,EACLnD,MAAOA,EACP4lD,SAAUA,EAAWrlD,EAAMmlD,KAC3BtkD,UAAMoE,EACNgvB,SAAS,GAENj0B,EAAMkkD,QAAOlkD,EAAMkkD,MAAQjjD,GAC5BokD,IAAUA,EAASxkD,KAAOI,GAC1B0jD,EAAa3kD,EAAMokD,OAClBnuD,EAAKmuD,OAEI,MAAVzgC,IAAe3jB,EAAM2jB,MAAMA,GAAS1iB,IACjChL,GAGPqvD,EAAW,SAAUrvD,EAAM2M,GAC7B,IAGI3B,EAHAjB,EAAQgwC,EAAiB/5C,GAEzB0tB,EAAQihC,EAAQhiD,GAEpB,GAAc,MAAV+gB,EAAe,OAAO3jB,EAAM2jB,MAAMA,GAEtC,IAAK1iB,EAAQjB,EAAMkkD,MAAOjjD,EAAOA,EAAQA,EAAMJ,KAC7C,GAAII,EAAM2B,KAAOA,EAAK,OAAO3B,GAiFjC,OA7EAsjD,EAAYhvD,EAAEoB,UAAW,CAGvBoa,MAAO,WACL,IAAI9a,EAAOE,KACP6J,EAAQgwC,EAAiB/5C,GACzBihB,EAAOlX,EAAM2jB,MACb1iB,EAAQjB,EAAMkkD,MAClB,MAAOjjD,EACLA,EAAMgzB,SAAU,EACZhzB,EAAMokD,WAAUpkD,EAAMokD,SAAWpkD,EAAMokD,SAASxkD,UAAOoE,UACpDiS,EAAKjW,EAAM0iB,OAClB1iB,EAAQA,EAAMJ,KAEhBb,EAAMkkD,MAAQlkD,EAAMmlD,UAAOlgD,EACvB0/C,EAAa3kD,EAAMokD,KAAO,EACzBnuD,EAAKmuD,KAAO,GAInB,OAAU,SAAUxhD,GAClB,IAAI3M,EAAOE,KACP6J,EAAQgwC,EAAiB/5C,GACzBgL,EAAQqkD,EAASrvD,EAAM2M,GAC3B,GAAI3B,EAAO,CACT,IAAIJ,EAAOI,EAAMJ,KACbmC,EAAO/B,EAAMokD,gBACVrlD,EAAM2jB,MAAM1iB,EAAM0iB,OACzB1iB,EAAMgzB,SAAU,EACZjxB,IAAMA,EAAKnC,KAAOA,GAClBA,IAAMA,EAAKwkD,SAAWriD,GACtBhD,EAAMkkD,OAASjjD,IAAOjB,EAAMkkD,MAAQrjD,GACpCb,EAAMmlD,MAAQlkD,IAAOjB,EAAMmlD,KAAOniD,GAClC2hD,EAAa3kD,EAAMokD,OAClBnuD,EAAKmuD,OACV,QAASnjD,GAIbjC,QAAS,SAAiBuuC,GACxB,IAEItsC,EAFAjB,EAAQgwC,EAAiB75C,MACzBI,EAAgBP,EAAKu3C,EAAYj3C,UAAUG,OAAS,EAAIH,UAAU,QAAK2O,EAAW,GAEtF,MAAOhE,EAAQA,EAAQA,EAAMJ,KAAOb,EAAMkkD,MAAO,CAC/C3tD,EAAc0K,EAAMxB,MAAOwB,EAAM2B,IAAKzM,MAEtC,MAAO8K,GAASA,EAAMgzB,QAAShzB,EAAQA,EAAMokD,WAKjDnqB,IAAK,SAAat4B,GAChB,QAAS0iD,EAASnvD,KAAMyM,MAI5B2hD,EAAYhvD,EAAEoB,UAAWsuD,EAAS,CAEhC19C,IAAK,SAAa3E,GAChB,IAAI3B,EAAQqkD,EAASnvD,KAAMyM,GAC3B,OAAO3B,GAASA,EAAMxB,OAGxBid,IAAK,SAAa9Z,EAAKnD,GACrB,OAAO2lD,EAAOjvD,KAAc,IAARyM,EAAY,EAAIA,EAAKnD,KAEzC,CAEF8lD,IAAK,SAAa9lD,GAChB,OAAO2lD,EAAOjvD,KAAMsJ,EAAkB,IAAVA,EAAc,EAAIA,EAAOA,MAGrDklD,GAAa/c,EAAeryC,EAAEoB,UAAW,OAAQ,CACnD4Q,IAAK,WACH,OAAOyoC,EAAiB75C,MAAMiuD,QAG3B7uD,GAETiwD,UAAW,SAAUjwD,EAAGyvD,EAAkBC,GACxC,IAAIQ,EAAgBT,EAAmB,YACnCU,EAA6Bb,EAAuBG,GACpDW,EAA2Bd,EAAuBY,GAGtD5V,EAAet6C,EAAGyvD,GAAkB,SAAU9U,EAAU0V,GACtD7V,EAAiB55C,KAAM,CACrB6H,KAAMynD,EACNje,OAAQ0I,EACRlwC,MAAO0lD,EAA2BxV,GAClC0V,KAAMA,EACNT,UAAMlgD,OAEP,WACD,IAAIjF,EAAQ2lD,EAAyBxvD,MACjCyvD,EAAO5lD,EAAM4lD,KACb3kD,EAAQjB,EAAMmlD,KAElB,MAAOlkD,GAASA,EAAMgzB,QAAShzB,EAAQA,EAAMokD,SAE7C,OAAKrlD,EAAMwnC,SAAYxnC,EAAMmlD,KAAOlkD,EAAQA,EAAQA,EAAMJ,KAAOb,EAAMA,MAAMkkD,OAMjE,QAAR0B,EAAuB,CAAEnmD,MAAOwB,EAAM2B,IAAKlC,MAAM,GACzC,UAARklD,EAAyB,CAAEnmD,MAAOwB,EAAMxB,MAAOiB,MAAM,GAClD,CAAEjB,MAAO,CAACwB,EAAM2B,IAAK3B,EAAMxB,OAAQiB,MAAM,IAN9CV,EAAMwnC,YAASviC,EACR,CAAExF,WAAOwF,EAAWvE,MAAM,MAMlCukD,EAAS,UAAY,UAAWA,GAAQ,GAG3CP,EAAWM,M,iFCvLf,IAAIxX,EAAmBC,EAAQ,QAE/B,SAASlX,EAA4BF,EAAGU,GACtC,GAAKV,EAAL,CACA,GAAiB,kBAANA,EAAgB,OAAOmX,EAAiBnX,EAAGU,GACtD,IAAInyB,EAAI1N,OAAOP,UAAUI,SAASV,KAAKggC,GAAGjhC,MAAM,GAAI,GAEpD,MADU,WAANwP,GAAkByxB,EAAEv0B,cAAa8C,EAAIyxB,EAAEv0B,YAAYzJ,MAC7C,QAANuM,GAAqB,QAANA,EAAoB2T,MAAMC,KAAK6d,GACxC,cAANzxB,GAAqB,2CAA2CtM,KAAKsM,GAAW4oC,EAAiBnX,EAAGU,QAAxG,GAGFjhC,EAAOC,QAAUwgC,G,uBCXjB,IAAI+oB,EAAU7R,EAAQ,QAElBoY,EAAwBpY,EAAQ,QAEpC,SAASqY,EAA2B3oD,EAAM9G,GACxC,OAAIA,GAA2B,WAAlBipD,EAAQjpD,IAAsC,oBAATA,EAI3CwvD,EAAsB1oD,GAHpB9G,EAMXP,EAAOC,QAAU+vD,G,wBCZjB,aACA,WACE,IAAIC,EAAgBC,EAAQC,EAAUC,EAAgBC,EAAcC,EAExC,qBAAhBC,aAA+C,OAAhBA,aAAyBA,YAAYj2C,IAC9Eta,EAAOC,QAAU,WACf,OAAOswD,YAAYj2C,OAEQ,qBAAZwL,GAAuC,OAAZA,GAAqBA,EAAQoqC,QACzElwD,EAAOC,QAAU,WACf,OAAQgwD,IAAmBI,GAAgB,KAE7CH,EAASpqC,EAAQoqC,OACjBD,EAAiB,WACf,IAAIO,EAEJ,OADAA,EAAKN,IACU,IAARM,EAAG,GAAWA,EAAG,IAE1BJ,EAAiBH,IACjBK,EAA4B,IAAnBxqC,EAAQ2qC,SACjBJ,EAAeD,EAAiBE,GACvB/1C,KAAKD,KACdta,EAAOC,QAAU,WACf,OAAOsa,KAAKD,MAAQ61C,GAEtBA,EAAW51C,KAAKD,QAEhBta,EAAOC,QAAU,WACf,OAAO,IAAIsa,MAAOm2C,UAAYP,GAEhCA,GAAW,IAAI51C,MAAOm2C,aAGvBnwD,KAAKF,Q,0DChCR,IAAI02C,EAAI,EAAQ,QACZ+D,EAAS,EAAQ,QACjB6V,EAAW,EAAQ,QACnB9Y,EAAW,EAAQ,QACnB+Y,EAAyB,EAAQ,QACjCjC,EAAU,EAAQ,QAClBD,EAAa,EAAQ,QACrBrvD,EAAW,EAAQ,QACnB61C,EAAQ,EAAQ,QAChB2b,EAA8B,EAAQ,QACtCC,EAAiB,EAAQ,QACzBC,EAAoB,EAAQ,QAEhC/wD,EAAOC,QAAU,SAAUivD,EAAkBD,EAAS+B,GACpD,IAAI7B,GAA8C,IAArCD,EAAiBphC,QAAQ,OAClCmjC,GAAgD,IAAtC/B,EAAiBphC,QAAQ,QACnCshC,EAAQD,EAAS,MAAQ,MACzB+B,EAAoBpW,EAAOoU,GAC3BiC,EAAkBD,GAAqBA,EAAkBrwD,UACzDqoD,EAAcgI,EACdE,EAAW,GAEXC,EAAY,SAAUC,GACxB,IAAIC,EAAeJ,EAAgBG,GACnCzZ,EAASsZ,EAAiBG,EACjB,OAAPA,EAAe,SAAa3nD,GAE1B,OADA4nD,EAAahxD,KAAKF,KAAgB,IAAVsJ,EAAc,EAAIA,GACnCtJ,MACE,UAAPixD,EAAkB,SAAUxkD,GAC9B,QAAOmkD,IAAY5xD,EAASyN,KAAeykD,EAAahxD,KAAKF,KAAc,IAARyM,EAAY,EAAIA,IAC1E,OAAPwkD,EAAe,SAAaxkD,GAC9B,OAAOmkD,IAAY5xD,EAASyN,QAAOqC,EAAYoiD,EAAahxD,KAAKF,KAAc,IAARyM,EAAY,EAAIA,IAC9E,OAAPwkD,EAAe,SAAaxkD,GAC9B,QAAOmkD,IAAY5xD,EAASyN,KAAeykD,EAAahxD,KAAKF,KAAc,IAARyM,EAAY,EAAIA,IACjF,SAAaA,EAAKnD,GAEpB,OADA4nD,EAAahxD,KAAKF,KAAc,IAARyM,EAAY,EAAIA,EAAKnD,GACtCtJ,QAMb,GAAIswD,EAASzB,EAA8C,mBAArBgC,KAAqCD,GAAWE,EAAgBjoD,UAAYgsC,GAAM,YACtH,IAAIgc,GAAoBM,UAAUzmD,YAGlCm+C,EAAc8H,EAAOhC,eAAeC,EAASC,EAAkBC,EAAQC,GACvEwB,EAAuBa,UAAW,OAC7B,GAAId,EAASzB,GAAkB,GAAO,CAC3C,IAAItT,EAAW,IAAIsN,EAEfwI,EAAiB9V,EAASwT,GAAO6B,EAAU,IAAM,EAAG,IAAMrV,EAE1D+V,EAAuBzc,GAAM,WAAc0G,EAASxW,IAAI,MAGxDwsB,EAAmBf,GAA4B,SAAUhlD,GAAY,IAAIqlD,EAAkBrlD,MAE3FgmD,GAAcZ,GAAW/b,GAAM,WAEjC,IAAI4c,EAAY,IAAIZ,EAChBrjC,EAAQ,EACZ,MAAOA,IAASikC,EAAU1C,GAAOvhC,EAAOA,GACxC,OAAQikC,EAAU1sB,KAAK,MAGpBwsB,IACH1I,EAAc+F,GAAQ,SAAU8C,EAAOlmD,GACrC6iD,EAAWqD,EAAO7I,EAAagG,GAC/B,IAAI/uD,EAAO4wD,EAAkB,IAAIG,EAAqBa,EAAO7I,GAE7D,YADgB/5C,GAAZtD,GAAuB8iD,EAAQ9iD,EAAU1L,EAAKivD,GAAQjvD,EAAMgvD,GACzDhvD,KAET+oD,EAAYroD,UAAYswD,EACxBA,EAAgBnlD,YAAck9C,IAG5ByI,GAAwBE,KAC1BR,EAAU,UACVA,EAAU,OACVlC,GAAUkC,EAAU,SAGlBQ,GAAcH,IAAgBL,EAAUjC,GAGxC6B,GAAWE,EAAgBl2C,cAAck2C,EAAgBl2C,MAU/D,OAPAm2C,EAASlC,GAAoBhG,EAC7BnS,EAAE,CAAE+D,QAAQ,EAAMtD,OAAQ0R,GAAegI,GAAqBE,GAE9DN,EAAe5H,EAAagG,GAEvB+B,GAASD,EAAOtB,UAAUxG,EAAagG,EAAkBC,GAEvDjG,I,qBCjGT,SAASM,EAAQxhD,GAaf,MAVsB,oBAAXrB,QAAoD,kBAApBA,OAAOE,SAChD7G,EAAOC,QAAUupD,EAAU,SAAiBxhD,GAC1C,cAAcA,GAGhBhI,EAAOC,QAAUupD,EAAU,SAAiBxhD,GAC1C,OAAOA,GAAyB,oBAAXrB,QAAyBqB,EAAIgE,cAAgBrF,QAAUqB,IAAQrB,OAAO9F,UAAY,gBAAkBmH,GAItHwhD,EAAQxhD,G,4DAGjBhI,EAAOC,QAAUupD,G,qBChBjB,IAAInqD,EAAW,EAAQ,QACnBiN,EAAiB,EAAQ,QAG7BtM,EAAOC,QAAU,SAAUy+C,EAAOqT,EAAOC,GACvC,IAAInyC,EAAWoyC,EAUf,OAPE3lD,GAE0C,mBAAlCuT,EAAYkyC,EAAM/lD,cAC1B6T,IAAcmyC,GACd3yD,EAAS4yD,EAAqBpyC,EAAUhf,YACxCoxD,IAAuBD,EAAQnxD,WAC/ByL,EAAeoyC,EAAOuT,GACjBvT,I,uBCfT,IAAI7rC,EAAO,EAAQ,QACfuyB,EAAM,EAAQ,QACd8sB,EAA+B,EAAQ,QACvCpgB,EAAiB,EAAQ,QAAuC9wC,EAEpEhB,EAAOC,QAAU,SAAUkyD,GACzB,IAAIxrD,EAASkM,EAAKlM,SAAWkM,EAAKlM,OAAS,IACtCy+B,EAAIz+B,EAAQwrD,IAAOrgB,EAAenrC,EAAQwrD,EAAM,CACnDxoD,MAAOuoD,EAA6BlxD,EAAEmxD,O,uBCR1C,IAAIpb,EAAI,EAAQ,QACZpC,EAAW,EAAQ,QACnByd,EAAuB,EAAQ,QAC/B5Y,EAA2B,EAAQ,QAIvCzC,EAAE,CAAErF,OAAQ,UAAWgI,MAAM,EAAM35B,MAAOy5B,GAA4B,CACpE3wC,eAAgB,SAAwB6oC,GACtC,OAAO0gB,EAAqBzd,EAASjD,Q,oCCRzC,IAAI4H,EAAW,EAAQ,QACnB+Y,EAAkB,EAAQ,QAC1Btd,EAAW,EAAQ,QAIvB/0C,EAAOC,QAAU,SAAc0J,GAC7B,IAAI4sC,EAAI+C,EAASj5C,MACbM,EAASo0C,EAASwB,EAAE51C,QACpBu7C,EAAkB17C,UAAUG,OAC5BktB,EAAQwkC,EAAgBnW,EAAkB,EAAI17C,UAAU,QAAK2O,EAAWxO,GACxEumC,EAAMgV,EAAkB,EAAI17C,UAAU,QAAK2O,EAC3CmjD,OAAiBnjD,IAAR+3B,EAAoBvmC,EAAS0xD,EAAgBnrB,EAAKvmC,GAC/D,MAAO2xD,EAASzkC,EAAO0oB,EAAE1oB,KAAWlkB,EACpC,OAAO4sC,I,kCCdT,IAAIgc,EAAc,EAAQ,QACtBC,EAAuB,EAAQ,QAC/BC,EAA2B,EAAQ,QAEvCzyD,EAAOC,QAAU,SAAU4M,EAAQC,EAAKnD,GACtC,IAAI2/C,EAAciJ,EAAYzlD,GAC1Bw8C,KAAez8C,EAAQ2lD,EAAqBxxD,EAAE6L,EAAQy8C,EAAamJ,EAAyB,EAAG9oD,IAC9FkD,EAAOy8C,GAAe3/C,I,yCCR7B,IAAI+oD,EAAgB/a,EAAQ,QAE5B,SAASgb,EAAKjhB,EAAQkhB,EAAUrJ,GAiB9B,MAhBuB,qBAAZzpC,SAA2BA,QAAQrO,IAC5CzR,EAAOC,QAAU0yD,EAAO7yC,QAAQrO,IAEhCzR,EAAOC,QAAU0yD,EAAO,SAAcjhB,EAAQkhB,EAAUrJ,GACtD,IAAIsJ,EAAOH,EAAchhB,EAAQkhB,GACjC,GAAKC,EAAL,CACA,IAAIC,EAAO1xD,OAAOmwC,yBAAyBshB,EAAMD,GAEjD,OAAIE,EAAKrhD,IACAqhD,EAAKrhD,IAAIlR,KAAKgpD,GAGhBuJ,EAAKnpD,QAITgpD,EAAKjhB,EAAQkhB,EAAUrJ,GAAY7X,GAG5C1xC,EAAOC,QAAU0yD,G,oCCrBjB,IAAIxlD,EAAS,EAAQ,QAAiCA,OAItDnN,EAAOC,QAAU,SAAUy2C,EAAG7oB,EAAO8T,GACnC,OAAO9T,GAAS8T,EAAUx0B,EAAOupC,EAAG7oB,GAAOltB,OAAS,K,mBCNtD,SAASoyD,EAAgB/qD,EAAK8E,EAAKnD,GAYjC,OAXImD,KAAO9E,EACT5G,OAAO0wC,eAAe9pC,EAAK8E,EAAK,CAC9BnD,MAAOA,EACP6nC,YAAY,EACZwX,cAAc,EACd7P,UAAU,IAGZnxC,EAAI8E,GAAOnD,EAGN3B,EAGThI,EAAOC,QAAU8yD,G,uBCRjB,IAAI1sD,EAAW,SAAUpG,GACvB,aAEA,IAEIkP,EAFA5I,EAAKnF,OAAOP,UACZ2F,EAASD,EAAGE,eAEZC,EAA4B,oBAAXC,OAAwBA,OAAS,GAClDC,EAAiBF,EAAQG,UAAY,aACrCC,EAAsBJ,EAAQK,eAAiB,kBAC/CC,EAAoBN,EAAQO,aAAe,gBAE/C,SAASqoD,EAAOtnD,EAAK8E,EAAKnD,GAOxB,OANAvI,OAAO0wC,eAAe9pC,EAAK8E,EAAK,CAC9BnD,MAAOA,EACP6nC,YAAY,EACZwX,cAAc,EACd7P,UAAU,IAELnxC,EAAI8E,GAEb,IAEEwiD,EAAO,GAAI,IACX,MAAOnnD,GACPmnD,EAAS,SAAStnD,EAAK8E,EAAKnD,GAC1B,OAAO3B,EAAI8E,GAAOnD,GAItB,SAASzC,EAAKC,EAASC,EAASC,EAAMC,GAEpC,IAAIC,EAAiBH,GAAWA,EAAQvG,qBAAqB2G,EAAYJ,EAAUI,EAC/EC,EAAYrG,OAAOsG,OAAOH,EAAe1G,WACzC8G,EAAU,IAAIC,EAAQN,GAAe,IAMzC,OAFAG,EAAUI,QAAUC,EAAiBX,EAASE,EAAMM,GAE7CF,EAcT,SAASM,EAAS3H,EAAI4H,EAAKC,GACzB,IACE,MAAO,CAAEC,KAAM,SAAUD,IAAK7H,EAAGG,KAAKyH,EAAKC,IAC3C,MAAOE,GACP,MAAO,CAAED,KAAM,QAASD,IAAKE,IAhBjClI,EAAQiH,KAAOA,EAoBf,IAAIkB,EAAyB,iBACzBC,EAAyB,iBACzBC,EAAoB,YACpBC,EAAoB,YAIpBC,EAAmB,GAMvB,SAAShB,KACT,SAASiB,KACT,SAASC,KAIT,IAAIC,EAAoB,GACxBA,EAAkB/B,GAAkB,WAClC,OAAOvG,MAGT,IAAIuI,EAAWxH,OAAOyH,eAClBC,EAA0BF,GAAYA,EAASA,EAASG,EAAO,MAC/DD,GACAA,IAA4BvC,GAC5BC,EAAOjG,KAAKuI,EAAyBlC,KAGvC+B,EAAoBG,GAGtB,IAAIE,EAAKN,EAA2B7H,UAClC2G,EAAU3G,UAAYO,OAAOsG,OAAOiB,GAWtC,SAASM,EAAsBpI,GAC7B,CAAC,OAAQ,QAAS,UAAUqI,SAAQ,SAASC,GAC3CmmD,EAAOzuD,EAAWsI,GAAQ,SAASlB,GACjC,OAAO5H,KAAKwH,QAAQsB,EAAQlB,SAkClC,SAASmB,EAAc3B,EAAW4B,GAChC,SAASC,EAAOH,EAAQlB,EAAKsB,EAASC,GACpC,IAAIC,EAAS1B,EAASN,EAAU0B,GAAS1B,EAAWQ,GACpD,GAAoB,UAAhBwB,EAAOvB,KAEJ,CACL,IAAIwB,EAASD,EAAOxB,IAChB0B,EAAQD,EAAOC,MACnB,OAAIA,GACiB,kBAAVA,GACPnD,EAAOjG,KAAKoJ,EAAO,WACdN,EAAYE,QAAQI,EAAMC,SAASC,MAAK,SAASF,GACtDL,EAAO,OAAQK,EAAOJ,EAASC,MAC9B,SAASrB,GACVmB,EAAO,QAASnB,EAAKoB,EAASC,MAI3BH,EAAYE,QAAQI,GAAOE,MAAK,SAASC,GAI9CJ,EAAOC,MAAQG,EACfP,EAAQG,MACP,SAASlI,GAGV,OAAO8H,EAAO,QAAS9H,EAAO+H,EAASC,MAvBzCA,EAAOC,EAAOxB,KA4BlB,IAAI8B,EAEJ,SAASC,EAAQb,EAAQlB,GACvB,SAASgC,IACP,OAAO,IAAIZ,GAAY,SAASE,EAASC,GACvCF,EAAOH,EAAQlB,EAAKsB,EAASC,MAIjC,OAAOO,EAaLA,EAAkBA,EAAgBF,KAChCI,EAGAA,GACEA,IAKR5J,KAAKwH,QAAUmC,EA2BjB,SAASlC,EAAiBX,EAASE,EAAMM,GACvC,IAAIuC,EAAQ9B,EAEZ,OAAO,SAAgBe,EAAQlB,GAC7B,GAAIiC,IAAU5B,EACZ,MAAM,IAAI6B,MAAM,gCAGlB,GAAID,IAAU3B,EAAmB,CAC/B,GAAe,UAAXY,EACF,MAAMlB,EAKR,OAAOmC,IAGTzC,EAAQwB,OAASA,EACjBxB,EAAQM,IAAMA,EAEd,MAAO,EAAM,CACX,IAAIoC,EAAW1C,EAAQ0C,SACvB,GAAIA,EAAU,CACZ,IAAIC,EAAiBC,EAAoBF,EAAU1C,GACnD,GAAI2C,EAAgB,CAClB,GAAIA,IAAmB9B,EAAkB,SACzC,OAAO8B,GAIX,GAAuB,SAAnB3C,EAAQwB,OAGVxB,EAAQ6C,KAAO7C,EAAQ8C,MAAQ9C,EAAQM,SAElC,GAAuB,UAAnBN,EAAQwB,OAAoB,CACrC,GAAIe,IAAU9B,EAEZ,MADA8B,EAAQ3B,EACFZ,EAAQM,IAGhBN,EAAQ+C,kBAAkB/C,EAAQM,SAEN,WAAnBN,EAAQwB,QACjBxB,EAAQgD,OAAO,SAAUhD,EAAQM,KAGnCiC,EAAQ5B,EAER,IAAImB,EAAS1B,EAASZ,EAASE,EAAMM,GACrC,GAAoB,WAAhB8B,EAAOvB,KAAmB,CAO5B,GAJAgC,EAAQvC,EAAQiD,KACZrC,EACAF,EAEAoB,EAAOxB,MAAQO,EACjB,SAGF,MAAO,CACLmB,MAAOF,EAAOxB,IACd2C,KAAMjD,EAAQiD,MAGS,UAAhBnB,EAAOvB,OAChBgC,EAAQ3B,EAGRZ,EAAQwB,OAAS,QACjBxB,EAAQM,IAAMwB,EAAOxB,OAU7B,SAASsC,EAAoBF,EAAU1C,GACrC,IAAIwB,EAASkB,EAASxD,SAASc,EAAQwB,QACvC,GAAIA,IAAWgG,EAAW,CAKxB,GAFAxH,EAAQ0C,SAAW,KAEI,UAAnB1C,EAAQwB,OAAoB,CAE9B,GAAIkB,EAASxD,SAAS,YAGpBc,EAAQwB,OAAS,SACjBxB,EAAQM,IAAMkH,EACd5E,EAAoBF,EAAU1C,GAEP,UAAnBA,EAAQwB,QAGV,OAAOX,EAIXb,EAAQwB,OAAS,QACjBxB,EAAQM,IAAM,IAAIvG,UAChB,kDAGJ,OAAO8G,EAGT,IAAIiB,EAAS1B,EAASoB,EAAQkB,EAASxD,SAAUc,EAAQM,KAEzD,GAAoB,UAAhBwB,EAAOvB,KAIT,OAHAP,EAAQwB,OAAS,QACjBxB,EAAQM,IAAMwB,EAAOxB,IACrBN,EAAQ0C,SAAW,KACZ7B,EAGT,IAAIqC,EAAOpB,EAAOxB,IAElB,OAAM4C,EAOFA,EAAKD,MAGPjD,EAAQ0C,EAASS,YAAcD,EAAKlB,MAGpChC,EAAQoD,KAAOV,EAASW,QAQD,WAAnBrD,EAAQwB,SACVxB,EAAQwB,OAAS,OACjBxB,EAAQM,IAAMkH,GAUlBxH,EAAQ0C,SAAW,KACZ7B,GANEqC,GA3BPlD,EAAQwB,OAAS,QACjBxB,EAAQM,IAAM,IAAIvG,UAAU,oCAC5BiG,EAAQ0C,SAAW,KACZ7B,GAoDX,SAASyC,EAAaC,GACpB,IAAIC,EAAQ,CAAEC,OAAQF,EAAK,IAEvB,KAAKA,IACPC,EAAME,SAAWH,EAAK,IAGpB,KAAKA,IACPC,EAAMG,WAAaJ,EAAK,GACxBC,EAAMI,SAAWL,EAAK,IAGxB7K,KAAKmL,WAAWC,KAAKN,GAGvB,SAASO,EAAcP,GACrB,IAAI1B,EAAS0B,EAAMQ,YAAc,GACjClC,EAAOvB,KAAO,gBACPuB,EAAOxB,IACdkD,EAAMQ,WAAalC,EAGrB,SAAS7B,EAAQN,GAIfjH,KAAKmL,WAAa,CAAC,CAAEJ,OAAQ,SAC7B9D,EAAY4B,QAAQ+B,EAAc5K,MAClCA,KAAKuL,OAAM,GA8Bb,SAAS7C,EAAO8C,GACd,GAAIA,EAAU,CACZ,IAAIC,EAAiBD,EAASjF,GAC9B,GAAIkF,EACF,OAAOA,EAAevL,KAAKsL,GAG7B,GAA6B,oBAAlBA,EAASd,KAClB,OAAOc,EAGT,IAAKE,MAAMF,EAASlL,QAAS,CAC3B,IAAId,GAAK,EAAGkL,EAAO,SAASA,IAC1B,QAASlL,EAAIgM,EAASlL,OACpB,GAAI6F,EAAOjG,KAAKsL,EAAUhM,GAGxB,OAFAkL,EAAKpB,MAAQkC,EAAShM,GACtBkL,EAAKH,MAAO,EACLG,EAOX,OAHAA,EAAKpB,MAAQwF,EACbpE,EAAKH,MAAO,EAELG,GAGT,OAAOA,EAAKA,KAAOA,GAKvB,MAAO,CAAEA,KAAMX,GAIjB,SAASA,IACP,MAAO,CAAET,MAAOwF,EAAWvE,MAAM,GA+MnC,OA5mBAnC,EAAkB5H,UAAYmI,EAAGgD,YAActD,EAC/CA,EAA2BsD,YAAcvD,EACzCA,EAAkBwD,YAAcqjD,EAC9B5mD,EACA1B,EACA,qBAaF/G,EAAQiM,oBAAsB,SAASC,GACrC,IAAIC,EAAyB,oBAAXD,GAAyBA,EAAOH,YAClD,QAAOI,IACHA,IAAS3D,GAG2B,uBAAnC2D,EAAKH,aAAeG,EAAK7J,QAIhCtC,EAAQoM,KAAO,SAASF,GAQtB,OAPI/K,OAAOkL,eACTlL,OAAOkL,eAAeH,EAAQzD,IAE9ByD,EAAOI,UAAY7D,EACnB4mD,EAAOnjD,EAAQnF,EAAmB,sBAEpCmF,EAAOtL,UAAYO,OAAOsG,OAAOsB,GAC1BmD,GAOTlM,EAAQuM,MAAQ,SAASvE,GACvB,MAAO,CAAE2B,QAAS3B,IAsEpBgB,EAAsBG,EAAcvI,WACpCuI,EAAcvI,UAAUiG,GAAuB,WAC7C,OAAOzG,MAETJ,EAAQmJ,cAAgBA,EAKxBnJ,EAAQwM,MAAQ,SAAStF,EAASC,EAASC,EAAMC,EAAa+B,QACxC,IAAhBA,IAAwBA,EAAcqD,SAE1C,IAAIC,EAAO,IAAIvD,EACblC,EAAKC,EAASC,EAASC,EAAMC,GAC7B+B,GAGF,OAAOpJ,EAAQiM,oBAAoB9E,GAC/BuF,EACAA,EAAK5B,OAAOlB,MAAK,SAASH,GACxB,OAAOA,EAAOkB,KAAOlB,EAAOC,MAAQgD,EAAK5B,WAuKjD9B,EAAsBD,GAEtBsmD,EAAOtmD,EAAIhC,EAAmB,aAO9BgC,EAAGpC,GAAkB,WACnB,OAAOvG,MAGT2I,EAAG/H,SAAW,WACZ,MAAO,sBAkCThB,EAAQ2M,KAAO,SAASC,GACtB,IAAID,EAAO,GACX,IAAK,IAAIE,KAAOD,EACdD,EAAKnB,KAAKqB,GAMZ,OAJAF,EAAKG,UAIE,SAAShC,IACd,MAAO6B,EAAKjM,OAAQ,CAClB,IAAImM,EAAMF,EAAKI,MACf,GAAIF,KAAOD,EAGT,OAFA9B,EAAKpB,MAAQmD,EACb/B,EAAKH,MAAO,EACLG,EAQX,OADAA,EAAKH,MAAO,EACLG,IAsCX9K,EAAQ8I,OAASA,EAMjBnB,EAAQ/G,UAAY,CAClBmL,YAAapE,EAEbgE,MAAO,SAASqB,GAcd,GAbA5M,KAAK6M,KAAO,EACZ7M,KAAK0K,KAAO,EAGZ1K,KAAKmK,KAAOnK,KAAKoK,MAAQ0E,EACzB9O,KAAKuK,MAAO,EACZvK,KAAKgK,SAAW,KAEhBhK,KAAK8I,OAAS,OACd9I,KAAK4H,IAAMkH,EAEX9O,KAAKmL,WAAWtC,QAAQwC,IAEnBuB,EACH,IAAK,IAAI1K,KAAQlC,KAEQ,MAAnBkC,EAAK4K,OAAO,IACZ3G,EAAOjG,KAAKF,KAAMkC,KACjBwJ,OAAOxJ,EAAKjD,MAAM,MACrBe,KAAKkC,GAAQ4M,IAMrB/B,KAAM,WACJ/M,KAAKuK,MAAO,EAEZ,IAAIyC,EAAYhN,KAAKmL,WAAW,GAC5B8B,EAAaD,EAAU1B,WAC3B,GAAwB,UAApB2B,EAAWpF,KACb,MAAMoF,EAAWrF,IAGnB,OAAO5H,KAAKkN,MAGd7C,kBAAmB,SAAS8C,GAC1B,GAAInN,KAAKuK,KACP,MAAM4C,EAGR,IAAI7F,EAAUtH,KACd,SAASoN,EAAOC,EAAKC,GAYnB,OAXAlE,EAAOvB,KAAO,QACduB,EAAOxB,IAAMuF,EACb7F,EAAQoD,KAAO2C,EAEXC,IAGFhG,EAAQwB,OAAS,OACjBxB,EAAQM,IAAMkH,KAGNxB,EAGZ,IAAK,IAAI9N,EAAIQ,KAAKmL,WAAW7K,OAAS,EAAGd,GAAK,IAAKA,EAAG,CACpD,IAAIsL,EAAQ9K,KAAKmL,WAAW3L,GACxB4J,EAAS0B,EAAMQ,WAEnB,GAAqB,SAAjBR,EAAMC,OAIR,OAAOqC,EAAO,OAGhB,GAAItC,EAAMC,QAAU/K,KAAK6M,KAAM,CAC7B,IAAIU,EAAWpH,EAAOjG,KAAK4K,EAAO,YAC9B0C,EAAarH,EAAOjG,KAAK4K,EAAO,cAEpC,GAAIyC,GAAYC,EAAY,CAC1B,GAAIxN,KAAK6M,KAAO/B,EAAME,SACpB,OAAOoC,EAAOtC,EAAME,UAAU,GACzB,GAAIhL,KAAK6M,KAAO/B,EAAMG,WAC3B,OAAOmC,EAAOtC,EAAMG,iBAGjB,GAAIsC,GACT,GAAIvN,KAAK6M,KAAO/B,EAAME,SACpB,OAAOoC,EAAOtC,EAAME,UAAU,OAG3B,KAAIwC,EAMT,MAAM,IAAI1D,MAAM,0CALhB,GAAI9J,KAAK6M,KAAO/B,EAAMG,WACpB,OAAOmC,EAAOtC,EAAMG,gBAU9BX,OAAQ,SAASzC,EAAMD,GACrB,IAAK,IAAIpI,EAAIQ,KAAKmL,WAAW7K,OAAS,EAAGd,GAAK,IAAKA,EAAG,CACpD,IAAIsL,EAAQ9K,KAAKmL,WAAW3L,GAC5B,GAAIsL,EAAMC,QAAU/K,KAAK6M,MACrB1G,EAAOjG,KAAK4K,EAAO,eACnB9K,KAAK6M,KAAO/B,EAAMG,WAAY,CAChC,IAAIwC,EAAe3C,EACnB,OAIA2C,IACU,UAAT5F,GACS,aAATA,IACD4F,EAAa1C,QAAUnD,GACvBA,GAAO6F,EAAaxC,aAGtBwC,EAAe,MAGjB,IAAIrE,EAASqE,EAAeA,EAAanC,WAAa,GAItD,OAHAlC,EAAOvB,KAAOA,EACduB,EAAOxB,IAAMA,EAET6F,GACFzN,KAAK8I,OAAS,OACd9I,KAAK0K,KAAO+C,EAAaxC,WAClB9C,GAGFnI,KAAK0N,SAAStE,IAGvBsE,SAAU,SAAStE,EAAQ8B,GACzB,GAAoB,UAAhB9B,EAAOvB,KACT,MAAMuB,EAAOxB,IAcf,MAXoB,UAAhBwB,EAAOvB,MACS,aAAhBuB,EAAOvB,KACT7H,KAAK0K,KAAOtB,EAAOxB,IACM,WAAhBwB,EAAOvB,MAChB7H,KAAKkN,KAAOlN,KAAK4H,IAAMwB,EAAOxB,IAC9B5H,KAAK8I,OAAS,SACd9I,KAAK0K,KAAO,OACa,WAAhBtB,EAAOvB,MAAqBqD,IACrClL,KAAK0K,KAAOQ,GAGP/C,GAGTwF,OAAQ,SAAS1C,GACf,IAAK,IAAIzL,EAAIQ,KAAKmL,WAAW7K,OAAS,EAAGd,GAAK,IAAKA,EAAG,CACpD,IAAIsL,EAAQ9K,KAAKmL,WAAW3L,GAC5B,GAAIsL,EAAMG,aAAeA,EAGvB,OAFAjL,KAAK0N,SAAS5C,EAAMQ,WAAYR,EAAMI,UACtCG,EAAcP,GACP3C,IAKb,MAAS,SAAS4C,GAChB,IAAK,IAAIvL,EAAIQ,KAAKmL,WAAW7K,OAAS,EAAGd,GAAK,IAAKA,EAAG,CACpD,IAAIsL,EAAQ9K,KAAKmL,WAAW3L,GAC5B,GAAIsL,EAAMC,SAAWA,EAAQ,CAC3B,IAAI3B,EAAS0B,EAAMQ,WACnB,GAAoB,UAAhBlC,EAAOvB,KAAkB,CAC3B,IAAI+F,EAASxE,EAAOxB,IACpByD,EAAcP,GAEhB,OAAO8C,GAMX,MAAM,IAAI9D,MAAM,0BAGlB+D,cAAe,SAASrC,EAAUf,EAAYE,GAa5C,OAZA3K,KAAKgK,SAAW,CACdxD,SAAUkC,EAAO8C,GACjBf,WAAYA,EACZE,QAASA,GAGS,SAAhB3K,KAAK8I,SAGP9I,KAAK4H,IAAMkH,GAGN3G,IAQJvI,EA7sBK,CAotBiBD,EAAOC,SAGtC,IACEkO,mBAAqB9H,EACrB,MAAO+H,GAUPtO,SAAS,IAAK,yBAAdA,CAAwCuG,K,qBC1uB1C,SAASojD,EAAgB7N,EAAUsN,GACjC,KAAMtN,aAAoBsN,GACxB,MAAM,IAAIxnD,UAAU,qCAIxB1B,EAAOC,QAAUwpD,G,oCCLjB,IAAI1S,EAAI,EAAQ,QACZ7B,EAAQ,EAAQ,QAChB1U,EAAU,EAAQ,QAClBnhC,EAAW,EAAQ,QACnBi6C,EAAW,EAAQ,QACnBvE,EAAW,EAAQ,QACnBgH,EAAiB,EAAQ,QACzBiX,EAAqB,EAAQ,QAC7BC,EAA+B,EAAQ,QACvCC,EAAkB,EAAQ,QAC1BC,EAAa,EAAQ,QAErBC,EAAuBF,EAAgB,sBACvCG,EAAmB,iBACnBC,EAAiC,iCAKjCC,EAA+BJ,GAAc,KAAOje,GAAM,WAC5D,IAAIse,EAAQ,GAEZ,OADAA,EAAMJ,IAAwB,EACvBI,EAAM9yD,SAAS,KAAO8yD,KAG3BC,EAAkBR,EAA6B,UAE/CS,EAAqB,SAAUnd,GACjC,IAAKl3C,EAASk3C,GAAI,OAAO,EACzB,IAAIod,EAAapd,EAAE6c,GACnB,YAAsBjkD,IAAfwkD,IAA6BA,EAAanzB,EAAQ+V,IAGvDiF,GAAU+X,IAAiCE,EAK/C1c,EAAE,CAAErF,OAAQ,QAAS6F,OAAO,EAAMC,OAAQgE,GAAU,CAClD96C,OAAQ,SAAgBuH,GACtB,IAGIpI,EAAG+zD,EAAGjzD,EAAQoQ,EAAK8iD,EAHnBtd,EAAI+C,EAASj5C,MACbw2C,EAAImc,EAAmBzc,EAAG,GAC1BznC,EAAI,EAER,IAAKjP,GAAK,EAAGc,EAASH,UAAUG,OAAQd,EAAIc,EAAQd,IAElD,GADAg0D,GAAW,IAAPh0D,EAAW02C,EAAI/1C,UAAUX,GACzB6zD,EAAmBG,GAAI,CAEzB,GADA9iD,EAAMgkC,EAAS8e,EAAElzD,QACbmO,EAAIiC,EAAMsiD,EAAkB,MAAM3xD,UAAU4xD,GAChD,IAAKM,EAAI,EAAGA,EAAI7iD,EAAK6iD,IAAK9kD,IAAS8kD,KAAKC,GAAG9X,EAAelF,EAAG/nC,EAAG+kD,EAAED,QAC7D,CACL,GAAI9kD,GAAKukD,EAAkB,MAAM3xD,UAAU4xD,GAC3CvX,EAAelF,EAAG/nC,IAAK+kD,GAI3B,OADAhd,EAAEl2C,OAASmO,EACJ+nC,M,uBCzDX,SAASid,EAAsB3yB,EAAKthC,GAClC,GAAsB,qBAAX8G,QAA4BA,OAAOE,YAAYzF,OAAO+/B,GAAjE,CACA,IAAI4yB,EAAO,GACPC,GAAK,EACLC,GAAK,EACLtzB,OAAKxxB,EAET,IACE,IAAK,IAAiC+kD,EAA7B1I,EAAKrqB,EAAIx6B,OAAOE,cAAmBmtD,GAAME,EAAK1I,EAAGzgD,QAAQH,MAAOopD,GAAK,EAG5E,GAFAD,EAAKtoD,KAAKyoD,EAAGvqD,OAET9J,GAAKk0D,EAAKpzD,SAAWd,EAAG,MAE9B,MAAOsI,GACP8rD,GAAK,EACLtzB,EAAKx4B,EARP,QAUE,IACO6rD,GAAsB,MAAhBxI,EAAG,WAAmBA,EAAG,YADtC,QAGE,GAAIyI,EAAI,MAAMtzB,GAIlB,OAAOozB,G,4DAGT/zD,EAAOC,QAAU6zD,G,uBC3BjB,IAAIjrD,EAAiB8uC,EAAQ,QAE7B,SAASwc,EAAetnD,EAAQ+lD,GAC9B,OAAQxxD,OAAOP,UAAU4F,eAAelG,KAAKsM,EAAQ+lD,GAEnD,GADA/lD,EAAShE,EAAegE,GACT,OAAXA,EAAiB,MAGvB,OAAOA,EAGT7M,EAAOC,QAAUk0D,G,kCCVjB,IAAIpd,EAAI,EAAQ,QACZqd,EAAgB,EAAQ,QACxBtzD,EAAkB,EAAQ,QAC1Bo2C,EAAsB,EAAQ,QAE9Bmd,EAAa,GAAGt0D,KAEhBu0D,EAAcF,GAAiBhzD,OAC/Bg2C,EAAgBF,EAAoB,OAAQ,KAIhDH,EAAE,CAAErF,OAAQ,QAAS6F,OAAO,EAAMC,OAAQ8c,IAAgBld,GAAiB,CACzEr3C,KAAM,SAAc41C,GAClB,OAAO0e,EAAW9zD,KAAKO,EAAgBT,WAAqB8O,IAAdwmC,EAA0B,IAAMA,O,qBCflF31C,EAAOC,QAAU03C,EAAQ,S,kCCCzB,IAAIZ,EAAI,EAAQ,QACZ+D,EAAS,EAAQ,QACjBM,EAAa,EAAQ,QACrBtC,EAAU,EAAQ,QAClB+V,EAAc,EAAQ,QACtB0F,EAAgB,EAAQ,QACxBC,EAAoB,EAAQ,QAC5Btf,EAAQ,EAAQ,QAChB9P,EAAM,EAAQ,QACd5E,EAAU,EAAQ,QAClBnhC,EAAW,EAAQ,QACnBs1C,EAAW,EAAQ,QACnB2E,EAAW,EAAQ,QACnBx4C,EAAkB,EAAQ,QAC1ByxD,EAAc,EAAQ,QACtBE,EAA2B,EAAQ,QACnCgC,EAAqB,EAAQ,QAC7BC,EAAa,EAAQ,QACrBC,EAA4B,EAAQ,QACpCC,EAA8B,EAAQ,QACtCC,EAA8B,EAAQ,QACtCxL,EAAiC,EAAQ,QACzCmJ,EAAuB,EAAQ,QAC/BsC,EAA6B,EAAQ,QACrCC,EAA8B,EAAQ,QACtCld,EAAW,EAAQ,QACnBmd,EAAS,EAAQ,QACjBC,EAAY,EAAQ,QACpBC,EAAa,EAAQ,QACrBC,EAAM,EAAQ,QACdjC,EAAkB,EAAQ,QAC1BhB,EAA+B,EAAQ,QACvCkD,EAAwB,EAAQ,QAChCtE,EAAiB,EAAQ,QACzBhX,EAAsB,EAAQ,QAC9Bub,EAAW,EAAQ,QAAgCnsD,QAEnDosD,EAASL,EAAU,UACnBM,EAAS,SACTC,EAAY,YACZC,EAAevC,EAAgB,eAC/BjZ,EAAmBH,EAAoBlzB,IACvCszB,EAAmBJ,EAAoBK,UAAUob,GACjDG,EAAkBt0D,OAAOo0D,GACzB9uD,EAAUo0C,EAAOn0C,OACjBgvD,EAAava,EAAW,OAAQ,aAChCwa,EAAiCvM,EAA+BroD,EAChE60D,EAAuBrD,EAAqBxxD,EAC5CD,EAA4B6zD,EAA4B5zD,EACxD80D,EAA6BhB,EAA2B9zD,EACxD+0D,EAAaf,EAAO,WACpBgB,EAAyBhB,EAAO,cAChCiB,GAAyBjB,EAAO,6BAChCkB,GAAyBlB,EAAO,6BAChCmB,GAAwBnB,EAAO,OAC/BoB,GAAUtb,EAAOsb,QAEjBC,IAAcD,KAAYA,GAAQZ,KAAeY,GAAQZ,GAAWc,UAGpEC,GAAsB1H,GAAe3Z,GAAM,WAC7C,OAES,GAFFuf,EAAmBoB,EAAqB,GAAI,IAAK,CACtDpkD,IAAK,WAAc,OAAOokD,EAAqBx1D,KAAM,IAAK,CAAEsJ,MAAO,IAAKuV,MACtEA,KACD,SAAUq3B,EAAGigB,EAAGC,GACnB,IAAIC,EAA4Bd,EAA+BF,EAAiBc,GAC5EE,UAAkChB,EAAgBc,GACtDX,EAAqBtf,EAAGigB,EAAGC,GACvBC,GAA6BngB,IAAMmf,GACrCG,EAAqBH,EAAiBc,EAAGE,IAEzCb,EAEA3uD,GAAO,SAAUyvD,EAAKC,GACxB,IAAIC,EAASd,EAAWY,GAAOlC,EAAmB/tD,EAAQ8uD,IAO1D,OANAvb,EAAiB4c,EAAQ,CACvB3uD,KAAMqtD,EACNoB,IAAKA,EACLC,YAAaA,IAEV/H,IAAagI,EAAOD,YAAcA,GAChCC,GAGLC,GAAWtC,EAAoB,SAAUjzD,GAC3C,MAAoB,iBAANA,GACZ,SAAUA,GACZ,OAAOH,OAAOG,aAAemF,GAG3BqwD,GAAkB,SAAwBxgB,EAAGigB,EAAGC,GAC9ClgB,IAAMmf,GAAiBqB,GAAgBf,EAAwBQ,EAAGC,GACtE9hB,EAAS4B,GACT,IAAIzpC,EAAMylD,EAAYiE,GAAG,GAEzB,OADA7hB,EAAS8hB,GACLrxB,EAAI2wB,EAAYjpD,IACb2pD,EAAWjlB,YAIVpM,EAAImR,EAAG+e,IAAW/e,EAAE+e,GAAQxoD,KAAMypC,EAAE+e,GAAQxoD,IAAO,GACvD2pD,EAAahC,EAAmBgC,EAAY,CAAEjlB,WAAYihB,EAAyB,GAAG,OAJjFrtB,EAAImR,EAAG+e,IAASO,EAAqBtf,EAAG+e,EAAQ7C,EAAyB,EAAG,KACjFlc,EAAE+e,GAAQxoD,IAAO,GAIVypD,GAAoBhgB,EAAGzpC,EAAK2pD,IAC9BZ,EAAqBtf,EAAGzpC,EAAK2pD,IAGpCO,GAAoB,SAA0BzgB,EAAG0gB,GACnDtiB,EAAS4B,GACT,IAAI2gB,EAAap2D,EAAgBm2D,GAC7BrqD,EAAO8nD,EAAWwC,GAAYx2D,OAAOy2D,GAAuBD,IAIhE,OAHA7B,EAASzoD,GAAM,SAAUE,GAClB+hD,IAAeuI,GAAsB72D,KAAK22D,EAAYpqD,IAAMiqD,GAAgBxgB,EAAGzpC,EAAKoqD,EAAWpqD,OAE/FypC,GAGL8gB,GAAU,SAAgB9gB,EAAG0gB,GAC/B,YAAsB9nD,IAAf8nD,EAA2BxC,EAAmBle,GAAKygB,GAAkBvC,EAAmBle,GAAI0gB,IAGjGG,GAAwB,SAA8BE,GACxD,IAAId,EAAIjE,EAAY+E,GAAG,GACnB9lB,EAAaskB,EAA2Bv1D,KAAKF,KAAMm2D,GACvD,QAAIn2D,OAASq1D,GAAmBtwB,EAAI2wB,EAAYS,KAAOpxB,EAAI4wB,EAAwBQ,QAC5EhlB,IAAepM,EAAI/kC,KAAMm2D,KAAOpxB,EAAI2wB,EAAYS,IAAMpxB,EAAI/kC,KAAMi1D,IAAWj1D,KAAKi1D,GAAQkB,KAAKhlB,IAGlG+lB,GAA4B,SAAkChhB,EAAGigB,GACnE,IAAIj1D,EAAKT,EAAgBy1C,GACrBzpC,EAAMylD,EAAYiE,GAAG,GACzB,GAAIj1D,IAAOm0D,IAAmBtwB,EAAI2wB,EAAYjpD,IAASs4B,EAAI4wB,EAAwBlpD,GAAnF,CACA,IAAIosC,EAAa0c,EAA+Br0D,EAAIuL,GAIpD,OAHIosC,IAAc9T,EAAI2wB,EAAYjpD,IAAUs4B,EAAI7jC,EAAI+zD,IAAW/zD,EAAG+zD,GAAQxoD,KACxEosC,EAAW1H,YAAa,GAEnB0H,IAGLse,GAAuB,SAA6BjhB,GACtD,IAAIkhB,EAAQ12D,EAA0BD,EAAgBy1C,IAClD7sC,EAAS,GAIb,OAHA2rD,EAASoC,GAAO,SAAU3qD,GACnBs4B,EAAI2wB,EAAYjpD,IAASs4B,EAAI8vB,EAAYpoD,IAAMpD,EAAO+B,KAAKqB,MAE3DpD,GAGLytD,GAAyB,SAA+B5gB,GAC1D,IAAImhB,EAAsBnhB,IAAMmf,EAC5B+B,EAAQ12D,EAA0B22D,EAAsB1B,EAAyBl1D,EAAgBy1C,IACjG7sC,EAAS,GAMb,OALA2rD,EAASoC,GAAO,SAAU3qD,IACpBs4B,EAAI2wB,EAAYjpD,IAAU4qD,IAAuBtyB,EAAIswB,EAAiB5oD,IACxEpD,EAAO+B,KAAKsqD,EAAWjpD,OAGpBpD,GAkHT,GA7GK6qD,IACH7tD,EAAU,WACR,GAAIrG,gBAAgBqG,EAAS,MAAMhF,UAAU,+BAC7C,IAAIk1D,EAAep2D,UAAUG,aAA2BwO,IAAjB3O,UAAU,GAA+B4C,OAAO5C,UAAU,SAA7B2O,EAChEwnD,EAAMxB,EAAIyB,GACVe,EAAS,SAAUhuD,GACjBtJ,OAASq1D,GAAiBiC,EAAOp3D,KAAKy1D,EAAwBrsD,GAC9Dy7B,EAAI/kC,KAAMi1D,IAAWlwB,EAAI/kC,KAAKi1D,GAASqB,KAAMt2D,KAAKi1D,GAAQqB,IAAO,GACrEJ,GAAoBl2D,KAAMs2D,EAAKlE,EAAyB,EAAG9oD,KAG7D,OADIklD,GAAewH,IAAYE,GAAoBb,EAAiBiB,EAAK,CAAE3N,cAAc,EAAMpiC,IAAK+wC,IAC7FzwD,GAAKyvD,EAAKC,IAGnB/e,EAASnxC,EAAQ8uD,GAAY,YAAY,WACvC,OAAOtb,EAAiB75C,MAAMs2D,OAGhC9e,EAASnxC,EAAS,iBAAiB,SAAUkwD,GAC3C,OAAO1vD,GAAKiuD,EAAIyB,GAAcA,MAGhC9B,EAA2B9zD,EAAIo2D,GAC/B5E,EAAqBxxD,EAAI+1D,GACzB1N,EAA+BroD,EAAIu2D,GACnC5C,EAA0B3zD,EAAI4zD,EAA4B5zD,EAAIw2D,GAC9D3C,EAA4B7zD,EAAIm2D,GAEhCjF,EAA6BlxD,EAAI,SAAUuB,GACzC,OAAO2E,GAAKgsD,EAAgB3wD,GAAOA,IAGjCssD,IAEFgH,EAAqBnvD,EAAQ8uD,GAAY,cAAe,CACtDxM,cAAc,EACdv3C,IAAK,WACH,OAAOyoC,EAAiB75C,MAAMu2D,eAG7B9d,GACHjB,EAAS6d,EAAiB,uBAAwB0B,GAAuB,CAAE/e,QAAQ,MAKzFtB,EAAE,CAAE+D,QAAQ,EAAM5zC,MAAM,EAAMswC,QAAS+c,EAAex0C,MAAOw0C,GAAiB,CAC5E5tD,OAAQD,IAGV2uD,EAASX,EAAWyB,KAAwB,SAAU5zD,GACpD6yD,EAAsB7yD,MAGxBw0C,EAAE,CAAErF,OAAQ6jB,EAAQ7b,MAAM,EAAMlC,QAAS+c,GAAiB,CAGxD,IAAO,SAAUznD,GACf,IAAI+oC,EAASzyC,OAAO0J,GACpB,GAAIs4B,EAAI6wB,GAAwBpgB,GAAS,OAAOogB,GAAuBpgB,GACvE,IAAIghB,EAASnwD,EAAQmvC,GAGrB,OAFAogB,GAAuBpgB,GAAUghB,EACjCX,GAAuBW,GAAUhhB,EAC1BghB,GAITe,OAAQ,SAAgBtmB,GACtB,IAAKwlB,GAASxlB,GAAM,MAAM5vC,UAAU4vC,EAAM,oBAC1C,GAAIlM,EAAI8wB,GAAwB5kB,GAAM,OAAO4kB,GAAuB5kB,IAEtEumB,UAAW,WAAcxB,IAAa,GACtCyB,UAAW,WAAczB,IAAa,KAGxCtf,EAAE,CAAErF,OAAQ,SAAUgI,MAAM,EAAMlC,QAAS+c,EAAex0C,MAAO8uC,GAAe,CAG9EnnD,OAAQ2vD,GAGRvlB,eAAgBilB,GAGhBllB,iBAAkBmlB,GAGlBzlB,yBAA0BgmB,KAG5BxgB,EAAE,CAAErF,OAAQ,SAAUgI,MAAM,EAAMlC,QAAS+c,GAAiB,CAG1DlzD,oBAAqBm2D,GAGrBpmB,sBAAuB+lB,KAKzBpgB,EAAE,CAAErF,OAAQ,SAAUgI,MAAM,EAAMlC,OAAQtC,GAAM,WAAc2f,EAA4B7zD,EAAE,OAAU,CACpGowC,sBAAuB,SAA+B7vC,GACpD,OAAOszD,EAA4B7zD,EAAEs4C,EAAS/3C,OAM9Co0D,EAAY,CACd,IAAIoC,IAAyBxD,GAAiBrf,GAAM,WAClD,IAAI2hB,EAASnwD,IAEb,MAA+B,UAAxBivD,EAAW,CAACkB,KAEe,MAA7BlB,EAAW,CAAEz2C,EAAG23C,KAEc,MAA9BlB,EAAWv0D,OAAOy1D,OAGzB9f,EAAE,CAAErF,OAAQ,OAAQgI,MAAM,EAAMlC,OAAQugB,IAAyB,CAE/DC,UAAW,SAAmBz2D,EAAI67C,EAAU6a,GAC1C,IAEIC,EAFAv4D,EAAO,CAAC4B,GACRssB,EAAQ,EAEZ,MAAOrtB,UAAUG,OAASktB,EAAOluB,EAAK8L,KAAKjL,UAAUqtB,MAErD,GADAqqC,EAAY9a,GACP/9C,EAAS+9C,SAAoBjuC,IAAP5N,KAAoBu1D,GAASv1D,GAMxD,OALKi/B,EAAQ4c,KAAWA,EAAW,SAAUtwC,EAAKnD,GAEhD,GADwB,mBAAbuuD,IAAyBvuD,EAAQuuD,EAAU33D,KAAKF,KAAMyM,EAAKnD,KACjEmtD,GAASntD,GAAQ,OAAOA,IAE/BhK,EAAK,GAAKy9C,EACHuY,EAAW/0D,MAAM,KAAMjB,MAO/B+G,EAAQ8uD,GAAWC,IACtBV,EAA4BruD,EAAQ8uD,GAAYC,EAAc/uD,EAAQ8uD,GAAW2C,SAInFrH,EAAepqD,EAAS6uD,GAExBL,EAAWI,IAAU,G,kCCrTrB,IAAIve,EAAI,EAAQ,QACZqhB,EAAS,EAAQ,QAAgCniD,MACjDihC,EAAsB,EAAQ,QAC9BC,EAA0B,EAAQ,QAElCC,EAAgBF,EAAoB,SACpCG,EAAiBF,EAAwB,SAI7CJ,EAAE,CAAErF,OAAQ,QAAS6F,OAAO,EAAMC,QAASJ,IAAkBC,GAAkB,CAC7EphC,MAAO,SAAewhC,GACpB,OAAO2gB,EAAO/3D,KAAMo3C,EAAYj3C,UAAUG,OAAS,EAAIH,UAAU,QAAK2O,O,qBCb1E,IAAI4nC,EAAI,EAAQ,QACZr0B,EAAO,EAAQ,QACfmuC,EAA8B,EAAQ,QAEtCwH,GAAuBxH,GAA4B,SAAUhlD,GAC/D4W,MAAMC,KAAK7W,MAKbkrC,EAAE,CAAErF,OAAQ,QAASgI,MAAM,EAAMlC,OAAQ6gB,GAAuB,CAC9D31C,KAAMA,K,qBCXR,IAAIq0B,EAAI,EAAQ,QACZqE,EAAa,EAAQ,QACrBh8C,EAAY,EAAQ,QACpBu1C,EAAW,EAAQ,QACnBO,EAAQ,EAAQ,QAEhBojB,EAAcld,EAAW,UAAW,SACpCmd,EAAgBz4D,SAASc,MAGzB43D,GAA2BtjB,GAAM,WACnCojB,GAAY,kBAKdvhB,EAAE,CAAErF,OAAQ,UAAWgI,MAAM,EAAMlC,OAAQghB,GAA2B,CACpE53D,MAAO,SAAe8wC,EAAQ+mB,EAAcC,GAG1C,OAFAt5D,EAAUsyC,GACViD,EAAS+jB,GACFJ,EACHA,EAAY5mB,EAAQ+mB,EAAcC,GAClCH,EAAch4D,KAAKmxC,EAAQ+mB,EAAcC,O,kCCrBjD,IAAI7J,EAAc,EAAQ,QACtB/T,EAAS,EAAQ,QACjB6V,EAAW,EAAQ,QACnB9Y,EAAW,EAAQ,QACnBzS,EAAM,EAAQ,QACduzB,EAAU,EAAQ,QAClB5H,EAAoB,EAAQ,QAC5BwB,EAAc,EAAQ,QACtBrd,EAAQ,EAAQ,QAChBxtC,EAAS,EAAQ,QACjBrG,EAAsB,EAAQ,QAA8CL,EAC5EuwC,EAA2B,EAAQ,QAAmDvwC,EACtF8wC,EAAiB,EAAQ,QAAuC9wC,EAChE8f,EAAO,EAAQ,QAA4BA,KAE3C83C,EAAS,SACTC,EAAe/d,EAAO8d,GACtBE,EAAkBD,EAAah4D,UAG/Bk4D,EAAiBJ,EAAQjxD,EAAOoxD,KAAqBF,EAIrDI,EAAW,SAAUC,GACvB,IACI7K,EAAO8K,EAAOC,EAAOC,EAASC,EAAQ14D,EAAQktB,EAAOyrC,EADrD/3D,EAAKgxD,EAAY0G,GAAU,GAE/B,GAAiB,iBAAN13D,GAAkBA,EAAGZ,OAAS,EAGvC,GAFAY,EAAKuf,EAAKvf,GACV6sD,EAAQ7sD,EAAGgtD,WAAW,GACR,KAAVH,GAA0B,KAAVA,GAElB,GADA8K,EAAQ33D,EAAGgtD,WAAW,GACR,KAAV2K,GAA0B,MAAVA,EAAe,OAAO7xC,SACrC,GAAc,KAAV+mC,EAAc,CACvB,OAAQ7sD,EAAGgtD,WAAW,IACpB,KAAK,GAAI,KAAK,GAAI4K,EAAQ,EAAGC,EAAU,GAAI,MAC3C,KAAK,GAAI,KAAK,IAAKD,EAAQ,EAAGC,EAAU,GAAI,MAC5C,QAAS,OAAQ73D,EAInB,IAFA83D,EAAS93D,EAAGjC,MAAM,GAClBqB,EAAS04D,EAAO14D,OACXktB,EAAQ,EAAGA,EAAQltB,EAAQktB,IAI9B,GAHAyrC,EAAOD,EAAO9K,WAAW1gC,GAGrByrC,EAAO,IAAMA,EAAOF,EAAS,OAAO/xC,IACxC,OAAO2Y,SAASq5B,EAAQF,GAE5B,OAAQ53D,GAKZ,GAAIovD,EAASiI,GAASC,EAAa,UAAYA,EAAa,QAAUA,EAAa,SAAU,CAS3F,IARA,IAcqB/rD,EAdjBysD,EAAgB,SAAgB5vD,GAClC,IAAIpI,EAAKf,UAAUG,OAAS,EAAI,EAAIgJ,EAChCooD,EAAQ1xD,KACZ,OAAO0xD,aAAiBwH,IAElBR,EAAiB7jB,GAAM,WAAc4jB,EAAgBX,QAAQ53D,KAAKwxD,MAAa4G,EAAQ5G,IAAU6G,GACjG7H,EAAkB,IAAI8H,EAAaG,EAASz3D,IAAMwwD,EAAOwH,GAAiBP,EAASz3D,IAElFqL,EAAOiiD,EAAcxtD,EAAoBw3D,GAAgB,6KAMhEphD,MAAM,KAAMqa,EAAI,EAAQllB,EAAKjM,OAASmxB,EAAGA,IACrCsT,EAAIyzB,EAAc/rD,EAAMF,EAAKklB,MAAQsT,EAAIm0B,EAAezsD,IAC1DglC,EAAeynB,EAAezsD,EAAKykC,EAAyBsnB,EAAc/rD,IAG9EysD,EAAc14D,UAAYi4D,EAC1BA,EAAgB9sD,YAAcutD,EAC9B1hB,EAASiD,EAAQ8d,EAAQW,K,qBC5E3B,IAAIxiB,EAAI,EAAQ,QACZpC,EAAW,EAAQ,QACnBpD,EAA2B,EAAQ,QAAmDvwC,EAI1F+1C,EAAE,CAAErF,OAAQ,UAAWgI,MAAM,GAAQ,CACnCnf,eAAgB,SAAwBmX,EAAQ4X,GAC9C,IAAIpQ,EAAa3H,EAAyBoD,EAASjD,GAAS4X,GAC5D,QAAOpQ,IAAeA,EAAW8P,sBAA8BtX,EAAO4X,O,kCCR1E,IAAIkQ,EAAwB,EAAQ,QAChCb,EAAU,EAAQ,QAItB34D,EAAOC,QAAUu5D,EAAwB,GAAGv4D,SAAW,WACrD,MAAO,WAAa03D,EAAQt4D,MAAQ,M,qBCPtC,IAAIwuD,EAAc,EAAQ,QACtB/c,EAAiB,EAAQ,QAAuC9wC,EAEhEy4D,EAAoB35D,SAASe,UAC7B64D,EAA4BD,EAAkBx4D,SAC9C04D,EAAS,wBACTxH,EAAO,OAIPtD,KAAiBsD,KAAQsH,IAC3B3nB,EAAe2nB,EAAmBtH,EAAM,CACtCnJ,cAAc,EACdv3C,IAAK,WACH,IACE,OAAOioD,EAA0Bn5D,KAAKF,MAAM6B,MAAMy3D,GAAQ,GAC1D,MAAOn4D,GACP,MAAO,Q,qBCjBf,IAAIu1C,EAAI,EAAQ,QACZuC,EAAW,EAAQ,QACnBsgB,EAAa,EAAQ,QACrB1kB,EAAQ,EAAQ,QAEhBuE,EAAsBvE,GAAM,WAAc0kB,EAAW,MAIzD7iB,EAAE,CAAErF,OAAQ,SAAUgI,MAAM,EAAMlC,OAAQiC,GAAuB,CAC/D7sC,KAAM,SAAcrL,GAClB,OAAOq4D,EAAWtgB,EAAS/3C,Q,qBCX/B,IAAI2zC,EAAQ,EAAQ,QAEpBl1C,EAAOC,SAAWi1C,GAAM,WACtB,OAAO9zC,OAAOy4D,aAAaz4D,OAAO04D,kBAAkB,S,mBCHtD,SAASC,EAAgB54B,GACvB,GAAI1e,MAAM+d,QAAQW,GAAM,OAAOA,EAGjCnhC,EAAOC,QAAU85D,G,mBCJjB,SAASC,IACP,MAAM,IAAIt4D,UAAU,6IAGtB1B,EAAOC,QAAU+5D,G,sBCJjB,YAOA,IAPA,MAAU,EAAQ,QACdzjC,EAAyB,qBAAXp1B,OAAyB25C,EAAS35C,OAChD84D,EAAU,CAAC,MAAO,UAClBC,EAAS,iBACTC,EAAM5jC,EAAK,UAAY2jC,GACvBE,EAAM7jC,EAAK,SAAW2jC,IAAW3jC,EAAK,gBAAkB2jC,GAEpDr6D,EAAI,GAAIs6D,GAAOt6D,EAAIo6D,EAAQt5D,OAAQd,IACzCs6D,EAAM5jC,EAAK0jC,EAAQp6D,GAAK,UAAYq6D,GACpCE,EAAM7jC,EAAK0jC,EAAQp6D,GAAK,SAAWq6D,IAC5B3jC,EAAK0jC,EAAQp6D,GAAK,gBAAkBq6D,GAI7C,IAAIC,IAAQC,EAAK,CACf,IAAI/K,EAAO,EACPrsC,EAAK,EACLq3C,EAAQ,GACR1kD,EAAgB,IAAO,GAE3BwkD,EAAM,SAASG,GACb,GAAoB,IAAjBD,EAAM15D,OAAc,CACrB,IAAI45D,EAAOjgD,IACPvP,EAAO1H,KAAKwM,IAAI,EAAG8F,GAAiB4kD,EAAOlL,IAC/CA,EAAOtkD,EAAOwvD,EACdC,YAAW,WACT,IAAIC,EAAKJ,EAAM/6D,MAAM,GAIrB+6D,EAAM15D,OAAS,EACf,IAAI,IAAId,EAAI,EAAGA,EAAI46D,EAAG95D,OAAQd,IAC5B,IAAI46D,EAAG56D,GAAG66D,UACR,IACED,EAAG56D,GAAGy6D,SAASjL,GACf,MAAMhwC,GACNm7C,YAAW,WAAa,MAAMn7C,IAAK,MAIxChc,KAAKC,MAAMyH,IAOhB,OALAsvD,EAAM5uD,KAAK,CACTgC,SAAUuV,EACVs3C,SAAUA,EACVI,WAAW,IAEN13C,GAGTo3C,EAAM,SAAS3sD,GACb,IAAI,IAAI5N,EAAI,EAAGA,EAAIw6D,EAAM15D,OAAQd,IAC5Bw6D,EAAMx6D,GAAG4N,SAAWA,IACrB4sD,EAAMx6D,GAAG66D,WAAY,IAM7B16D,EAAOC,QAAU,SAASG,GAIxB,OAAO+5D,EAAI55D,KAAKg2B,EAAMn2B,IAExBJ,EAAOC,QAAQ2a,OAAS,WACtBw/C,EAAIx5D,MAAM21B,EAAM/1B,YAElBR,EAAOC,QAAQ06D,SAAW,SAAS9tD,GAC5BA,IACHA,EAAS0pB,GAEX1pB,EAAO+tD,sBAAwBT,EAC/BttD,EAAOguD,qBAAuBT,K,2CCzEhC,IAAIllB,EAAQ,EAAQ,QAChBkJ,EAAc,EAAQ,QAEtB0c,EAAM,MAIV96D,EAAOC,QAAU,SAAU86D,GACzB,OAAO7lB,GAAM,WACX,QAASkJ,EAAY2c,MAAkBD,EAAIC,MAAkBD,GAAO1c,EAAY2c,GAAax4D,OAASw4D,O,qBCT1G,SAASC,EAAmBC,EAAK1xD,EAASC,EAAQ0xD,EAAOC,EAAQruD,EAAK7E,GACpE,IACE,IAAI4C,EAAOowD,EAAInuD,GAAK7E,GAChB0B,EAAQkB,EAAKlB,MACjB,MAAOnI,GAEP,YADAgI,EAAOhI,GAILqJ,EAAKD,KACPrB,EAAQI,GAER+C,QAAQnD,QAAQI,GAAOE,KAAKqxD,EAAOC,GAIvC,SAASC,EAAkBh7D,GACzB,OAAO,WACL,IAAIiH,EAAOhH,KACPV,EAAOa,UACX,OAAO,IAAIkM,SAAQ,SAAUnD,EAASC,GACpC,IAAIyxD,EAAM76D,EAAGQ,MAAMyG,EAAM1H,GAEzB,SAASu7D,EAAMvxD,GACbqxD,EAAmBC,EAAK1xD,EAASC,EAAQ0xD,EAAOC,EAAQ,OAAQxxD,GAGlE,SAASwxD,EAAOhzD,GACd6yD,EAAmBC,EAAK1xD,EAASC,EAAQ0xD,EAAOC,EAAQ,QAAShzD,GAGnE+yD,OAAM/rD,O,UAKZnP,EAAOC,QAAUm7D,G,kCCnCjB,IAAIrkB,EAAI,EAAQ,QACZskB,EAAW,EAAQ,QAA+BvtC,QAClDopB,EAAsB,EAAQ,QAC9BC,EAA0B,EAAQ,QAElCmkB,EAAgB,GAAGxtC,QAEnBytC,IAAkBD,GAAiB,EAAI,CAAC,GAAGxtC,QAAQ,GAAI,GAAK,EAC5DspB,EAAgBF,EAAoB,WACpCG,EAAiBF,EAAwB,UAAW,CAAEqkB,WAAW,EAAMlkB,EAAG,IAI9EP,EAAE,CAAErF,OAAQ,QAAS6F,OAAO,EAAMC,OAAQ+jB,IAAkBnkB,IAAkBC,GAAkB,CAC9FvpB,QAAS,SAAiB2tC,GACxB,OAAOF,EAEHD,EAAc16D,MAAMP,KAAMG,YAAc,EACxC66D,EAASh7D,KAAMo7D,EAAej7D,UAAUG,OAAS,EAAIH,UAAU,QAAK2O,O,qBCnB5E,IAAI4nC,EAAI,EAAQ,QACZ5jB,EAAO,EAAQ,QACfuoC,EAAmB,EAAQ,QAI/B3kB,EAAE,CAAErF,OAAQ,QAAS6F,OAAO,GAAQ,CAClCpkB,KAAMA,IAIRuoC,EAAiB,S,qBCXjB,IAAItG,EAAwB,EAAQ,QAIpCA,EAAsB,a,qBCJtB,IAAIoE,EAAwB,EAAQ,QAChC3hB,EAAW,EAAQ,QACnB52C,EAAW,EAAQ,QAIlBu4D,GACH3hB,EAASz2C,OAAOP,UAAW,WAAYI,EAAU,CAAEo3C,QAAQ,K,qBCP7D,IAAIj5C,EAAY,EAAQ,QACpBk6C,EAAW,EAAQ,QACnB8a,EAAgB,EAAQ,QACxBrf,EAAW,EAAQ,QAGnByJ,EAAe,SAAUmd,GAC3B,OAAO,SAAUx7D,EAAMs3C,EAAYyE,EAAiB0f,GAClDx8D,EAAUq4C,GACV,IAAIlB,EAAI+C,EAASn5C,GACbkH,EAAO+sD,EAAc7d,GACrB51C,EAASo0C,EAASwB,EAAE51C,QACpBktB,EAAQ8tC,EAAWh7D,EAAS,EAAI,EAChCd,EAAI87D,GAAY,EAAI,EACxB,GAAIzf,EAAkB,EAAG,MAAO,EAAM,CACpC,GAAIruB,KAASxmB,EAAM,CACjBu0D,EAAOv0D,EAAKwmB,GACZA,GAAShuB,EACT,MAGF,GADAguB,GAAShuB,EACL87D,EAAW9tC,EAAQ,EAAIltB,GAAUktB,EACnC,MAAMnsB,UAAU,+CAGpB,KAAMi6D,EAAW9tC,GAAS,EAAIltB,EAASktB,EAAOA,GAAShuB,EAAOguB,KAASxmB,IACrEu0D,EAAOnkB,EAAWmkB,EAAMv0D,EAAKwmB,GAAQA,EAAO0oB,IAE9C,OAAOqlB,IAIX57D,EAAOC,QAAU,CAGfg3C,KAAMuH,GAAa,GAGnBqd,MAAOrd,GAAa,K,kCCrCtB,IAAIzH,EAAI,EAAQ,QACZ+kB,EAAO,EAAQ,QAAgC35D,IAC/C8wD,EAA+B,EAAQ,QACvC9b,EAA0B,EAAQ,QAElC4kB,EAAsB9I,EAA6B,OAEnD5b,EAAiBF,EAAwB,OAK7CJ,EAAE,CAAErF,OAAQ,QAAS6F,OAAO,EAAMC,QAASukB,IAAwB1kB,GAAkB,CACnFl1C,IAAK,SAAas1C,GAChB,OAAOqkB,EAAKz7D,KAAMo3C,EAAYj3C,UAAUG,OAAS,EAAIH,UAAU,QAAK2O,O,qBCfxE,IAAI4nC,EAAI,EAAQ,QACZ8X,EAAc,EAAQ,QACtB3d,EAAU,EAAQ,QAClBpwC,EAAkB,EAAQ,QAC1BuoD,EAAiC,EAAQ,QACzCtN,EAAiB,EAAQ,QAI7BhF,EAAE,CAAErF,OAAQ,SAAUgI,MAAM,EAAM35B,MAAO8uC,GAAe,CACtDjd,0BAA2B,SAAmC/kC,GAC5D,IAKIC,EAAKosC,EALL3C,EAAIz1C,EAAgB+L,GACpB0kC,EAA2B8X,EAA+BroD,EAC1D4L,EAAOskC,EAAQqF,GACf7sC,EAAS,GACTmkB,EAAQ,EAEZ,MAAOjhB,EAAKjM,OAASktB,EACnBqrB,EAAa3H,EAAyBgF,EAAGzpC,EAAMF,EAAKihB,WACjC1e,IAAf+pC,GAA0B6C,EAAeryC,EAAQoD,EAAKosC,GAE5D,OAAOxvC,M,qBCrBX,IAAIoxC,EAAS,EAAQ,QACjBkhB,EAAe,EAAQ,QACvBC,EAAuB,EAAQ,QAC/BlH,EAA8B,EAAQ,QACtC7B,EAAkB,EAAQ,QAE1BgJ,EAAWhJ,EAAgB,YAC3BiJ,EAAgBjJ,EAAgB,eAChCkJ,EAAcH,EAAqBlzD,OAEvC,IAAK,IAAIszD,KAAmBL,EAAc,CACxC,IAAIM,EAAaxhB,EAAOuhB,GACpBE,EAAsBD,GAAcA,EAAWz7D,UACnD,GAAI07D,EAAqB,CAEvB,GAAIA,EAAoBL,KAAcE,EAAa,IACjDrH,EAA4BwH,EAAqBL,EAAUE,GAC3D,MAAO56D,GACP+6D,EAAoBL,GAAYE,EAKlC,GAHKG,EAAoBJ,IACvBpH,EAA4BwH,EAAqBJ,EAAeE,GAE9DL,EAAaK,GAAkB,IAAK,IAAItB,KAAekB,EAEzD,GAAIM,EAAoBxB,KAAiBkB,EAAqBlB,GAAc,IAC1EhG,EAA4BwH,EAAqBxB,EAAakB,EAAqBlB,IACnF,MAAOv5D,GACP+6D,EAAoBxB,GAAekB,EAAqBlB,O,kCCzBhE,IAAIhkB,EAAI,EAAQ,QACZ8X,EAAc,EAAQ,QACtB/T,EAAS,EAAQ,QACjB1V,EAAM,EAAQ,QACd/lC,EAAW,EAAQ,QACnByyC,EAAiB,EAAQ,QAAuC9wC,EAChEw7D,EAA4B,EAAQ,QAEpCC,EAAe3hB,EAAOn0C,OAE1B,GAAIkoD,GAAsC,mBAAhB4N,MAAiC,gBAAiBA,EAAa57D,iBAExDsO,IAA/BstD,IAAe7F,aACd,CACD,IAAI8F,EAA8B,GAE9BC,EAAgB,WAClB,IAAI/F,EAAcp2D,UAAUG,OAAS,QAAsBwO,IAAjB3O,UAAU,QAAmB2O,EAAY/L,OAAO5C,UAAU,IAChGkJ,EAASrJ,gBAAgBs8D,EACzB,IAAIF,EAAa7F,QAEDznD,IAAhBynD,EAA4B6F,IAAiBA,EAAa7F,GAE9D,MADoB,KAAhBA,IAAoB8F,EAA4BhzD,IAAU,GACvDA,GAET8yD,EAA0BG,EAAeF,GACzC,IAAIG,EAAkBD,EAAc97D,UAAY47D,EAAa57D,UAC7D+7D,EAAgB5wD,YAAc2wD,EAE9B,IAAIE,EAAiBD,EAAgB37D,SACjC67D,EAAyC,gBAAhC15D,OAAOq5D,EAAa,SAC7BjuD,EAAS,wBACbsjC,EAAe8qB,EAAiB,cAAe,CAC7C5T,cAAc,EACdv3C,IAAK,WACH,IAAIolD,EAASx3D,EAASgB,MAAQA,KAAK83D,UAAY93D,KAC3Cw1C,EAASgnB,EAAet8D,KAAKs2D,GACjC,GAAIzxB,EAAIs3B,EAA6B7F,GAAS,MAAO,GACrD,IAAI/D,EAAOgK,EAASjnB,EAAOv2C,MAAM,GAAI,GAAKu2C,EAAOh0C,QAAQ2M,EAAQ,MACjE,MAAgB,KAATskD,OAAc3jD,EAAY2jD,KAIrC/b,EAAE,CAAE+D,QAAQ,EAAMtD,QAAQ,GAAQ,CAChC7wC,OAAQg2D,M,qBC/CZ,IAAI5lB,EAAI,EAAQ,QACZ7B,EAAQ,EAAQ,QAChBp0C,EAAkB,EAAQ,QAC1B80D,EAAiC,EAAQ,QAAmD50D,EAC5F6tD,EAAc,EAAQ,QAEtBpV,EAAsBvE,GAAM,WAAc0gB,EAA+B,MACzEpa,GAAUqT,GAAepV,EAI7B1C,EAAE,CAAErF,OAAQ,SAAUgI,MAAM,EAAMlC,OAAQgE,EAAQz7B,MAAO8uC,GAAe,CACtEtd,yBAA0B,SAAkChwC,EAAIuL,GAC9D,OAAO8oD,EAA+B90D,EAAgBS,GAAKuL,O,qBCb/D,IAAIomD,EAAkB,EAAQ,QAE9BjzD,EAAQe,EAAIkyD,G,qBCFZ,IAAI5mD,EAAiBqrC,EAAQ,QAE7B,SAASolB,EAAUC,EAAUC,GAC3B,GAA0B,oBAAfA,GAA4C,OAAfA,EACtC,MAAM,IAAIv7D,UAAU,sDAGtBs7D,EAASn8D,UAAYO,OAAOsG,OAAOu1D,GAAcA,EAAWp8D,UAAW,CACrEmL,YAAa,CACXrC,MAAOqzD,EACP7jB,UAAU,EACV6P,cAAc,KAGdiU,GAAY3wD,EAAe0wD,EAAUC,GAG3Cj9D,EAAOC,QAAU88D,G,qBCjBjB,IAAI7H,EAAa,EAAQ,QACrB71D,EAAW,EAAQ,QACnB+lC,EAAM,EAAQ,QACd0M,EAAiB,EAAQ,QAAuC9wC,EAChEm0D,EAAM,EAAQ,QACd+H,EAAW,EAAQ,QAEnBC,EAAWhI,EAAI,QACfnyC,EAAK,EAEL62C,EAAez4D,OAAOy4D,cAAgB,WACxC,OAAO,GAGLuD,EAAc,SAAU77D,GAC1BuwC,EAAevwC,EAAI47D,EAAU,CAAExzD,MAAO,CACpC0zD,SAAU,OAAQr6C,EAClBs6C,SAAU,OAIVxO,EAAU,SAAUvtD,EAAImG,GAE1B,IAAKrI,EAASkC,GAAK,MAAoB,iBAANA,EAAiBA,GAAmB,iBAANA,EAAiB,IAAM,KAAOA,EAC7F,IAAK6jC,EAAI7jC,EAAI47D,GAAW,CAEtB,IAAKtD,EAAat4D,GAAK,MAAO,IAE9B,IAAKmG,EAAQ,MAAO,IAEpB01D,EAAY77D,GAEZ,OAAOA,EAAG47D,GAAUE,UAGpBE,EAAc,SAAUh8D,EAAImG,GAC9B,IAAK09B,EAAI7jC,EAAI47D,GAAW,CAEtB,IAAKtD,EAAat4D,GAAK,OAAO,EAE9B,IAAKmG,EAAQ,OAAO,EAEpB01D,EAAY77D,GAEZ,OAAOA,EAAG47D,GAAUG,UAIpBE,EAAW,SAAUj8D,GAEvB,OADI27D,GAAYO,EAAKhM,UAAYoI,EAAat4D,KAAQ6jC,EAAI7jC,EAAI47D,IAAWC,EAAY77D,GAC9EA,GAGLk8D,EAAOz9D,EAAOC,QAAU,CAC1BwxD,UAAU,EACV3C,QAASA,EACTyO,YAAaA,EACbC,SAAUA,GAGZtI,EAAWiI,IAAY,G,kCC3DvB,IAAIpmB,EAAI,EAAQ,QACZ13C,EAAW,EAAQ,QACnBmhC,EAAU,EAAQ,QAClB6xB,EAAkB,EAAQ,QAC1Btd,EAAW,EAAQ,QACnBj0C,EAAkB,EAAQ,QAC1Bi7C,EAAiB,EAAQ,QACzBmX,EAAkB,EAAQ,QAC1BD,EAA+B,EAAQ,QACvC9b,EAA0B,EAAQ,QAElC4kB,EAAsB9I,EAA6B,SACnD5b,EAAiBF,EAAwB,QAAS,CAAEqkB,WAAW,EAAMkC,EAAG,EAAGpmB,EAAG,IAE9EqmB,EAAUzK,EAAgB,WAC1B0K,EAAc,GAAGt+D,MACjBuQ,EAAMxM,KAAKwM,IAKfknC,EAAE,CAAErF,OAAQ,QAAS6F,OAAO,EAAMC,QAASukB,IAAwB1kB,GAAkB,CACnF/3C,MAAO,SAAeqb,EAAOusB,GAC3B,IAKIgiB,EAAax/C,EAAQoF,EALrBynC,EAAIz1C,EAAgBT,MACpBM,EAASo0C,EAASwB,EAAE51C,QACpBizD,EAAIvB,EAAgB13C,EAAOha,GAC3Bk9D,EAAMxL,OAAwBljD,IAAR+3B,EAAoBvmC,EAASumC,EAAKvmC,GAG5D,GAAI6/B,EAAQ+V,KACV2S,EAAc3S,EAAEvqC,YAEU,mBAAfk9C,GAA8BA,IAAgBzmC,QAAS+d,EAAQ0oB,EAAYroD,WAE3ExB,EAAS6pD,KAClBA,EAAcA,EAAYyU,GACN,OAAhBzU,IAAsBA,OAAc/5C,IAHxC+5C,OAAc/5C,EAKZ+5C,IAAgBzmC,YAAyBtT,IAAhB+5C,GAC3B,OAAO0U,EAAYr9D,KAAKg2C,EAAGqd,EAAGiK,GAIlC,IADAn0D,EAAS,SAAqByF,IAAhB+5C,EAA4BzmC,MAAQymC,GAAar5C,EAAIguD,EAAMjK,EAAG,IACvE9kD,EAAI,EAAG8kD,EAAIiK,EAAKjK,IAAK9kD,IAAS8kD,KAAKrd,GAAGwF,EAAeryC,EAAQoF,EAAGynC,EAAEqd,IAEvE,OADAlqD,EAAO/I,OAASmO,EACTpF","file":"js/chunk-722a0ca4.615e65cc.js","sourcesContent":["'use strict';\nvar aFunction = require('../internals/a-function');\nvar isObject = require('../internals/is-object');\n\nvar slice = [].slice;\nvar factories = {};\n\nvar construct = function (C, argsLength, args) {\n if (!(argsLength in factories)) {\n for (var list = [], i = 0; i < argsLength; i++) list[i] = 'a[' + i + ']';\n // eslint-disable-next-line no-new-func\n factories[argsLength] = Function('C,a', 'return new C(' + list.join(',') + ')');\n } return factories[argsLength](C, args);\n};\n\n// `Function.prototype.bind` method implementation\n// https://tc39.github.io/ecma262/#sec-function.prototype.bind\nmodule.exports = Function.bind || function bind(that /* , ...args */) {\n var fn = aFunction(this);\n var partArgs = slice.call(arguments, 1);\n var boundFunction = function bound(/* args... */) {\n var args = partArgs.concat(slice.call(arguments));\n return this instanceof boundFunction ? construct(fn, args.length, args) : fn.apply(that, args);\n };\n if (isObject(fn.prototype)) boundFunction.prototype = fn.prototype;\n return boundFunction;\n};\n","var toIndexedObject = require('../internals/to-indexed-object');\nvar nativeGetOwnPropertyNames = require('../internals/object-get-own-property-names').f;\n\nvar toString = {}.toString;\n\nvar windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames\n ? Object.getOwnPropertyNames(window) : [];\n\nvar getWindowNames = function (it) {\n try {\n return nativeGetOwnPropertyNames(it);\n } catch (error) {\n return windowNames.slice();\n }\n};\n\n// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\nmodule.exports.f = function getOwnPropertyNames(it) {\n return windowNames && toString.call(it) == '[object Window]'\n ? getWindowNames(it)\n : nativeGetOwnPropertyNames(toIndexedObject(it));\n};\n","function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nmodule.exports = _nonIterableSpread;","import 'core-js/modules/es.array.map';\nimport 'core-js/modules/es.regexp.exec';\nimport 'core-js/modules/es.string.match';\nimport 'core-js/modules/es.string.replace';\nimport 'core-js/modules/es.string.starts-with';\nimport 'core-js/modules/es.array.join';\nimport _slicedToArray from '@babel/runtime/helpers/slicedToArray';\nimport 'core-js/modules/es.symbol';\nimport 'core-js/modules/es.array.filter';\nimport 'core-js/modules/es.array.for-each';\nimport 'core-js/modules/es.object.get-own-property-descriptor';\nimport 'core-js/modules/es.object.get-own-property-descriptors';\nimport 'core-js/modules/es.object.keys';\nimport 'core-js/modules/web.dom-collections.for-each';\nimport _regeneratorRuntime from '@babel/runtime/regenerator';\nimport _asyncToGenerator from '@babel/runtime/helpers/asyncToGenerator';\nimport _defineProperty from '@babel/runtime/helpers/defineProperty';\nimport _classCallCheck from '@babel/runtime/helpers/classCallCheck';\nimport _createClass from '@babel/runtime/helpers/createClass';\nimport 'core-js/modules/es.array.concat';\nimport 'core-js/modules/es.array.every';\nimport 'core-js/modules/es.array.reduce';\nimport 'core-js/modules/es.object.to-string';\nimport 'core-js/modules/es.promise';\nimport 'core-js/modules/es.string.split';\nimport requestAnimationFrame from 'raf';\nimport 'core-js/modules/es.function.name';\nimport RGBColor from 'rgbcolor';\nimport 'core-js/modules/es.reflect.construct';\nimport 'core-js/modules/es.regexp.to-string';\nimport _possibleConstructorReturn from '@babel/runtime/helpers/possibleConstructorReturn';\nimport _getPrototypeOf from '@babel/runtime/helpers/getPrototypeOf';\nimport _inherits from '@babel/runtime/helpers/inherits';\nimport 'core-js/modules/es.array.from';\nimport 'core-js/modules/es.array.includes';\nimport 'core-js/modules/es.array.some';\nimport 'core-js/modules/es.string.includes';\nimport 'core-js/modules/es.string.iterator';\nimport 'core-js/modules/es.string.trim';\nimport _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';\nimport 'core-js/modules/es.array.index-of';\nimport 'core-js/modules/es.array.reverse';\nimport _get from '@babel/runtime/helpers/get';\nimport 'core-js/modules/es.number.constructor';\nimport 'core-js/modules/es.array.fill';\nimport 'core-js/modules/es.reflect.delete-property';\nimport _assertThisInitialized from '@babel/runtime/helpers/assertThisInitialized';\nimport 'core-js/modules/es.array.iterator';\nimport 'core-js/modules/web.dom-collections.iterator';\nimport 'core-js/modules/es.symbol.description';\nimport 'core-js/modules/es.symbol.iterator';\nimport 'core-js/modules/es.array.slice';\nimport 'core-js/modules/es.map';\nimport 'core-js/modules/es.reflect.apply';\nimport 'core-js/modules/es.reflect.get-prototype-of';\nimport { canvasRGBA } from 'stackblur-canvas';\n\n/**\r\n * HTML-safe compress white-spaces.\r\n * @param str - String to compress.\r\n */\nfunction compressSpaces(str) {\n return str.replace(/(?!\\u3000)\\s+/gm, ' ');\n}\n/**\r\n * HTML-safe left trim.\r\n * @param str - String to trim.\r\n */\n\nfunction trimLeft(str) {\n return str.replace(/^[\\n \\t]+/, '');\n}\n/**\r\n * HTML-safe right trim.\r\n * @param str - String to trim.\r\n */\n\nfunction trimRight(str) {\n return str.replace(/[\\n \\t]+$/, '');\n}\n/**\r\n * String to numbers array.\r\n * @param str - Numbers string.\r\n */\n\nfunction toNumbers(str) {\n var matches = (str || '').match(/-?(\\d+(?:\\.\\d*(?:[eE][+-]?\\d+)?)?|\\.\\d+)(?=\\D|$)/gm) || [];\n return matches.map(parseFloat);\n} // Microsoft Edge fix\n\nvar allUppercase = /^[A-Z-]+$/;\n/**\r\n * Normalize attribute name.\r\n * @param name - Attribute name.\r\n */\n\nfunction normalizeAttributeName(name) {\n if (allUppercase.test(name)) {\n return name.toLowerCase();\n }\n\n return name;\n}\n/**\r\n * Parse external URL.\r\n * @param url - CSS url string.\r\n */\n\nfunction parseExternalUrl(url) {\n // single quotes [2]\n // v double quotes [3]\n // v v no quotes [4]\n // v v v\n var urlMatch = url.match(/url\\(('([^']+)'|\"([^\"]+)\"|([^'\"\\)]+))\\)/) || [];\n return urlMatch[2] || urlMatch[3] || urlMatch[4];\n}\n/**\r\n * Transform floats to integers in rgb colors.\r\n * @param color - Color to normalize.\r\n */\n\nfunction normalizeColor(color) {\n if (!color.startsWith('rgb')) {\n return color;\n }\n\n var rgbParts = 3;\n var normalizedColor = color.replace(/\\d+(\\.\\d+)?/g, function (num, isFloat) {\n return rgbParts-- && isFloat ? String(Math.round(parseFloat(num))) : num;\n });\n return normalizedColor;\n}\n\n// slightly modified version of https://github.com/keeganstreet/specificity/blob/master/specificity.js\nvar attributeRegex = /(\\[[^\\]]+\\])/g;\nvar idRegex = /(#[^\\s\\+>~\\.\\[:]+)/g;\nvar classRegex = /(\\.[^\\s\\+>~\\.\\[:]+)/g;\nvar pseudoElementRegex = /(::[^\\s\\+>~\\.\\[:]+|:first-line|:first-letter|:before|:after)/gi;\nvar pseudoClassWithBracketsRegex = /(:[\\w-]+\\([^\\)]*\\))/gi;\nvar pseudoClassRegex = /(:[^\\s\\+>~\\.\\[:]+)/g;\nvar elementRegex = /([^\\s\\+>~\\.\\[:]+)/g;\n\nfunction findSelectorMatch(selector, regex) {\n var matches = selector.match(regex);\n\n if (!matches) {\n return [selector, 0];\n }\n\n return [selector.replace(regex, ' '), matches.length];\n}\n/**\r\n * Measure selector specificity.\r\n * @param selector - Selector to measure.\r\n */\n\n\nfunction getSelectorSpecificity(selector) {\n var specificity = [0, 0, 0];\n var currentSelector = selector.replace(/:not\\(([^\\)]*)\\)/g, ' $1 ').replace(/{[\\s\\S]*/gm, ' ');\n var delta = 0;\n\n var _findSelectorMatch = findSelectorMatch(currentSelector, attributeRegex);\n\n var _findSelectorMatch2 = _slicedToArray(_findSelectorMatch, 2);\n\n currentSelector = _findSelectorMatch2[0];\n delta = _findSelectorMatch2[1];\n specificity[1] += delta;\n\n var _findSelectorMatch3 = findSelectorMatch(currentSelector, idRegex);\n\n var _findSelectorMatch4 = _slicedToArray(_findSelectorMatch3, 2);\n\n currentSelector = _findSelectorMatch4[0];\n delta = _findSelectorMatch4[1];\n specificity[0] += delta;\n\n var _findSelectorMatch5 = findSelectorMatch(currentSelector, classRegex);\n\n var _findSelectorMatch6 = _slicedToArray(_findSelectorMatch5, 2);\n\n currentSelector = _findSelectorMatch6[0];\n delta = _findSelectorMatch6[1];\n specificity[1] += delta;\n\n var _findSelectorMatch7 = findSelectorMatch(currentSelector, pseudoElementRegex);\n\n var _findSelectorMatch8 = _slicedToArray(_findSelectorMatch7, 2);\n\n currentSelector = _findSelectorMatch8[0];\n delta = _findSelectorMatch8[1];\n specificity[2] += delta;\n\n var _findSelectorMatch9 = findSelectorMatch(currentSelector, pseudoClassWithBracketsRegex);\n\n var _findSelectorMatch10 = _slicedToArray(_findSelectorMatch9, 2);\n\n currentSelector = _findSelectorMatch10[0];\n delta = _findSelectorMatch10[1];\n specificity[1] += delta;\n\n var _findSelectorMatch11 = findSelectorMatch(currentSelector, pseudoClassRegex);\n\n var _findSelectorMatch12 = _slicedToArray(_findSelectorMatch11, 2);\n\n currentSelector = _findSelectorMatch12[0];\n delta = _findSelectorMatch12[1];\n specificity[1] += delta;\n currentSelector = currentSelector.replace(/[\\*\\s\\+>~]/g, ' ').replace(/[#\\.]/g, ' ');\n\n var _findSelectorMatch13 = findSelectorMatch(currentSelector, elementRegex);\n\n var _findSelectorMatch14 = _slicedToArray(_findSelectorMatch13, 2);\n\n currentSelector = _findSelectorMatch14[0];\n delta = _findSelectorMatch14[1];\n // lgtm [js/useless-assignment-to-local]\n specificity[2] += delta;\n return specificity.join('');\n}\n\nvar PSEUDO_ZERO = .00000001;\n/**\r\n * Vector magnitude.\r\n */\n\nfunction vectorMagnitude(v) {\n return Math.sqrt(Math.pow(v[0], 2) + Math.pow(v[1], 2));\n}\n/**\r\n * Ratio between two vectors.\r\n */\n\nfunction vectorsRatio(u, v) {\n return (u[0] * v[0] + u[1] * v[1]) / (vectorMagnitude(u) * vectorMagnitude(v));\n}\n/**\r\n * Angle between two vectors.\r\n */\n\nfunction vectorsAngle(u, v) {\n return (u[0] * v[1] < u[1] * v[0] ? -1 : 1) * Math.acos(vectorsRatio(u, v));\n}\nfunction CB1(t) {\n return t * t * t;\n}\nfunction CB2(t) {\n return 3 * t * t * (1 - t);\n}\nfunction CB3(t) {\n return 3 * t * (1 - t) * (1 - t);\n}\nfunction CB4(t) {\n return (1 - t) * (1 - t) * (1 - t);\n}\nfunction QB1(t) {\n return t * t;\n}\nfunction QB2(t) {\n return 2 * t * (1 - t);\n}\nfunction QB3(t) {\n return (1 - t) * (1 - t);\n}\n\nfunction createCommonjsModule(fn, module) {\n\treturn module = { exports: {} }, fn(module, module.exports), module.exports;\n}\n\nvar runtime_1 = createCommonjsModule(function (module) {\n /**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n var runtime = function (exports) {\n\n var Op = Object.prototype;\n var hasOwn = Op.hasOwnProperty;\n var undefined$1; // More compressible than void 0.\n\n var $Symbol = typeof Symbol === \"function\" ? Symbol : {};\n var iteratorSymbol = $Symbol.iterator || \"@@iterator\";\n var asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\";\n var toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n\n function wrap(innerFn, outerFn, self, tryLocsList) {\n // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;\n var generator = Object.create(protoGenerator.prototype);\n var context = new Context(tryLocsList || []); // The ._invoke method unifies the implementations of the .next,\n // .throw, and .return methods.\n\n generator._invoke = makeInvokeMethod(innerFn, self, context);\n return generator;\n }\n\n exports.wrap = wrap; // Try/catch helper to minimize deoptimizations. Returns a completion\n // record like context.tryEntries[i].completion. This interface could\n // have been (and was previously) designed to take a closure to be\n // invoked without arguments, but in all the cases we care about we\n // already have an existing method we want to call, so there's no need\n // to create a new function object. We can even get away with assuming\n // the method takes exactly one argument, since that happens to be true\n // in every case, so we don't have to touch the arguments object. The\n // only additional allocation required is the completion record, which\n // has a stable shape and so hopefully should be cheap to allocate.\n\n function tryCatch(fn, obj, arg) {\n try {\n return {\n type: \"normal\",\n arg: fn.call(obj, arg)\n };\n } catch (err) {\n return {\n type: \"throw\",\n arg: err\n };\n }\n }\n\n var GenStateSuspendedStart = \"suspendedStart\";\n var GenStateSuspendedYield = \"suspendedYield\";\n var GenStateExecuting = \"executing\";\n var GenStateCompleted = \"completed\"; // Returning this object from the innerFn has the same effect as\n // breaking out of the dispatch switch statement.\n\n var ContinueSentinel = {}; // Dummy constructor functions that we use as the .constructor and\n // .constructor.prototype properties for functions that return Generator\n // objects. For full spec compliance, you may wish to configure your\n // minifier not to mangle the names of these two functions.\n\n function Generator() {}\n\n function GeneratorFunction() {}\n\n function GeneratorFunctionPrototype() {} // This is a polyfill for %IteratorPrototype% for environments that\n // don't natively support it.\n\n\n var IteratorPrototype = {};\n\n IteratorPrototype[iteratorSymbol] = function () {\n return this;\n };\n\n var getProto = Object.getPrototypeOf;\n var NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n\n if (NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {\n // This environment has a native %IteratorPrototype%; use it instead\n // of the polyfill.\n IteratorPrototype = NativeIteratorPrototype;\n }\n\n var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype);\n GeneratorFunction.prototype = Gp.constructor = GeneratorFunctionPrototype;\n GeneratorFunctionPrototype.constructor = GeneratorFunction;\n GeneratorFunctionPrototype[toStringTagSymbol] = GeneratorFunction.displayName = \"GeneratorFunction\"; // Helper for defining the .next, .throw, and .return methods of the\n // Iterator interface in terms of a single ._invoke method.\n\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function (method) {\n prototype[method] = function (arg) {\n return this._invoke(method, arg);\n };\n });\n }\n\n exports.isGeneratorFunction = function (genFun) {\n var ctor = typeof genFun === \"function\" && genFun.constructor;\n return ctor ? ctor === GeneratorFunction || // For the native GeneratorFunction constructor, the best we can\n // do is to check its .name property.\n (ctor.displayName || ctor.name) === \"GeneratorFunction\" : false;\n };\n\n exports.mark = function (genFun) {\n if (Object.setPrototypeOf) {\n Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);\n } else {\n genFun.__proto__ = GeneratorFunctionPrototype;\n\n if (!(toStringTagSymbol in genFun)) {\n genFun[toStringTagSymbol] = \"GeneratorFunction\";\n }\n }\n\n genFun.prototype = Object.create(Gp);\n return genFun;\n }; // Within the body of any async function, `await x` is transformed to\n // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test\n // `hasOwn.call(value, \"__await\")` to determine if the yielded value is\n // meant to be awaited.\n\n\n exports.awrap = function (arg) {\n return {\n __await: arg\n };\n };\n\n function AsyncIterator(generator, PromiseImpl) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n\n if (record.type === \"throw\") {\n reject(record.arg);\n } else {\n var result = record.arg;\n var value = result.value;\n\n if (value && typeof value === \"object\" && hasOwn.call(value, \"__await\")) {\n return PromiseImpl.resolve(value.__await).then(function (value) {\n invoke(\"next\", value, resolve, reject);\n }, function (err) {\n invoke(\"throw\", err, resolve, reject);\n });\n }\n\n return PromiseImpl.resolve(value).then(function (unwrapped) {\n // When a yielded Promise is resolved, its final value becomes\n // the .value of the Promise<{value,done}> result for the\n // current iteration.\n result.value = unwrapped;\n resolve(result);\n }, function (error) {\n // If a rejected Promise was yielded, throw the rejection back\n // into the async generator function so it can be handled there.\n return invoke(\"throw\", error, resolve, reject);\n });\n }\n }\n\n var previousPromise;\n\n function enqueue(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new PromiseImpl(function (resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n\n return previousPromise = // If enqueue has been called before, then we want to wait until\n // all previous Promises have been resolved before calling invoke,\n // so that results are always delivered in the correct order. If\n // enqueue has not been called before, then it is important to\n // call invoke immediately, without waiting on a callback to fire,\n // so that the async generator function has the opportunity to do\n // any necessary setup in a predictable way. This predictability\n // is why the Promise constructor synchronously invokes its\n // executor callback, and why async functions synchronously\n // execute code before the first await. Since we implement simple\n // async functions in terms of async generators, it is especially\n // important to get this right, even though it requires care.\n previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, // Avoid propagating failures to Promises returned by later\n // invocations of the iterator.\n callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();\n } // Define the unified helper method that is used to implement .next,\n // .throw, and .return (see defineIteratorMethods).\n\n\n this._invoke = enqueue;\n }\n\n defineIteratorMethods(AsyncIterator.prototype);\n\n AsyncIterator.prototype[asyncIteratorSymbol] = function () {\n return this;\n };\n\n exports.AsyncIterator = AsyncIterator; // Note that simple async functions are implemented on top of\n // AsyncIterator objects; they just return a Promise for the value of\n // the final result produced by the iterator.\n\n exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) {\n if (PromiseImpl === void 0) PromiseImpl = Promise;\n var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl);\n return exports.isGeneratorFunction(outerFn) ? iter // If outerFn is a generator, return the full iterator.\n : iter.next().then(function (result) {\n return result.done ? result.value : iter.next();\n });\n };\n\n function makeInvokeMethod(innerFn, self, context) {\n var state = GenStateSuspendedStart;\n return function invoke(method, arg) {\n if (state === GenStateExecuting) {\n throw new Error(\"Generator is already running\");\n }\n\n if (state === GenStateCompleted) {\n if (method === \"throw\") {\n throw arg;\n } // Be forgiving, per 25.3.3.3.3 of the spec:\n // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume\n\n\n return doneResult();\n }\n\n context.method = method;\n context.arg = arg;\n\n while (true) {\n var delegate = context.delegate;\n\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n\n if (context.method === \"next\") {\n // Setting context._sent for legacy support of Babel's\n // function.sent implementation.\n context.sent = context._sent = context.arg;\n } else if (context.method === \"throw\") {\n if (state === GenStateSuspendedStart) {\n state = GenStateCompleted;\n throw context.arg;\n }\n\n context.dispatchException(context.arg);\n } else if (context.method === \"return\") {\n context.abrupt(\"return\", context.arg);\n }\n\n state = GenStateExecuting;\n var record = tryCatch(innerFn, self, context);\n\n if (record.type === \"normal\") {\n // If an exception is thrown from innerFn, we leave state ===\n // GenStateExecuting and loop back for another invocation.\n state = context.done ? GenStateCompleted : GenStateSuspendedYield;\n\n if (record.arg === ContinueSentinel) {\n continue;\n }\n\n return {\n value: record.arg,\n done: context.done\n };\n } else if (record.type === \"throw\") {\n state = GenStateCompleted; // Dispatch the exception by looping back around to the\n // context.dispatchException(context.arg) call above.\n\n context.method = \"throw\";\n context.arg = record.arg;\n }\n }\n };\n } // Call delegate.iterator[context.method](context.arg) and handle the\n // result, either by returning a { value, done } result from the\n // delegate iterator, or by modifying context.method and context.arg,\n // setting context.delegate to null, and returning the ContinueSentinel.\n\n\n function maybeInvokeDelegate(delegate, context) {\n var method = delegate.iterator[context.method];\n\n if (method === undefined$1) {\n // A .throw or .return when the delegate iterator has no .throw\n // method always terminates the yield* loop.\n context.delegate = null;\n\n if (context.method === \"throw\") {\n // Note: [\"return\"] must be used for ES3 parsing compatibility.\n if (delegate.iterator[\"return\"]) {\n // If the delegate iterator has a return method, give it a\n // chance to clean up.\n context.method = \"return\";\n context.arg = undefined$1;\n maybeInvokeDelegate(delegate, context);\n\n if (context.method === \"throw\") {\n // If maybeInvokeDelegate(context) changed context.method from\n // \"return\" to \"throw\", let that override the TypeError below.\n return ContinueSentinel;\n }\n }\n\n context.method = \"throw\";\n context.arg = new TypeError(\"The iterator does not provide a 'throw' method\");\n }\n\n return ContinueSentinel;\n }\n\n var record = tryCatch(method, delegate.iterator, context.arg);\n\n if (record.type === \"throw\") {\n context.method = \"throw\";\n context.arg = record.arg;\n context.delegate = null;\n return ContinueSentinel;\n }\n\n var info = record.arg;\n\n if (!info) {\n context.method = \"throw\";\n context.arg = new TypeError(\"iterator result is not an object\");\n context.delegate = null;\n return ContinueSentinel;\n }\n\n if (info.done) {\n // Assign the result of the finished delegate to the temporary\n // variable specified by delegate.resultName (see delegateYield).\n context[delegate.resultName] = info.value; // Resume execution at the desired location (see delegateYield).\n\n context.next = delegate.nextLoc; // If context.method was \"throw\" but the delegate handled the\n // exception, let the outer generator proceed normally. If\n // context.method was \"next\", forget context.arg since it has been\n // \"consumed\" by the delegate iterator. If context.method was\n // \"return\", allow the original .return call to continue in the\n // outer generator.\n\n if (context.method !== \"return\") {\n context.method = \"next\";\n context.arg = undefined$1;\n }\n } else {\n // Re-yield the result returned by the delegate method.\n return info;\n } // The delegate iterator is finished, so forget it and continue with\n // the outer generator.\n\n\n context.delegate = null;\n return ContinueSentinel;\n } // Define Generator.prototype.{next,throw,return} in terms of the\n // unified ._invoke helper method.\n\n\n defineIteratorMethods(Gp);\n Gp[toStringTagSymbol] = \"Generator\"; // A Generator should always return itself as the iterator object when the\n // @@iterator function is called on it. Some browsers' implementations of the\n // iterator prototype chain incorrectly implement this, causing the Generator\n // object to not be returned from this call. This ensures that doesn't happen.\n // See https://github.com/facebook/regenerator/issues/274 for more details.\n\n Gp[iteratorSymbol] = function () {\n return this;\n };\n\n Gp.toString = function () {\n return \"[object Generator]\";\n };\n\n function pushTryEntry(locs) {\n var entry = {\n tryLoc: locs[0]\n };\n\n if (1 in locs) {\n entry.catchLoc = locs[1];\n }\n\n if (2 in locs) {\n entry.finallyLoc = locs[2];\n entry.afterLoc = locs[3];\n }\n\n this.tryEntries.push(entry);\n }\n\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\";\n delete record.arg;\n entry.completion = record;\n }\n\n function Context(tryLocsList) {\n // The root entry object (effectively a try statement without a catch\n // or a finally block) gives us a place to store values thrown from\n // locations where there is no enclosing try statement.\n this.tryEntries = [{\n tryLoc: \"root\"\n }];\n tryLocsList.forEach(pushTryEntry, this);\n this.reset(true);\n }\n\n exports.keys = function (object) {\n var keys = [];\n\n for (var key in object) {\n keys.push(key);\n }\n\n keys.reverse(); // Rather than returning an object with a next method, we keep\n // things simple and return the next function itself.\n\n return function next() {\n while (keys.length) {\n var key = keys.pop();\n\n if (key in object) {\n next.value = key;\n next.done = false;\n return next;\n }\n } // To avoid creating an additional object, we just hang the .value\n // and .done properties off the next function object itself. This\n // also ensures that the minifier will not anonymize the function.\n\n\n next.done = true;\n return next;\n };\n };\n\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n\n if (iteratorMethod) {\n return iteratorMethod.call(iterable);\n }\n\n if (typeof iterable.next === \"function\") {\n return iterable;\n }\n\n if (!isNaN(iterable.length)) {\n var i = -1,\n next = function next() {\n while (++i < iterable.length) {\n if (hasOwn.call(iterable, i)) {\n next.value = iterable[i];\n next.done = false;\n return next;\n }\n }\n\n next.value = undefined$1;\n next.done = true;\n return next;\n };\n\n return next.next = next;\n }\n } // Return an iterator with no values.\n\n\n return {\n next: doneResult\n };\n }\n\n exports.values = values;\n\n function doneResult() {\n return {\n value: undefined$1,\n done: true\n };\n }\n\n Context.prototype = {\n constructor: Context,\n reset: function (skipTempReset) {\n this.prev = 0;\n this.next = 0; // Resetting context._sent for legacy support of Babel's\n // function.sent implementation.\n\n this.sent = this._sent = undefined$1;\n this.done = false;\n this.delegate = null;\n this.method = \"next\";\n this.arg = undefined$1;\n this.tryEntries.forEach(resetTryEntry);\n\n if (!skipTempReset) {\n for (var name in this) {\n // Not sure about the optimal order of these conditions:\n if (name.charAt(0) === \"t\" && hasOwn.call(this, name) && !isNaN(+name.slice(1))) {\n this[name] = undefined$1;\n }\n }\n }\n },\n stop: function () {\n this.done = true;\n var rootEntry = this.tryEntries[0];\n var rootRecord = rootEntry.completion;\n\n if (rootRecord.type === \"throw\") {\n throw rootRecord.arg;\n }\n\n return this.rval;\n },\n dispatchException: function (exception) {\n if (this.done) {\n throw exception;\n }\n\n var context = this;\n\n function handle(loc, caught) {\n record.type = \"throw\";\n record.arg = exception;\n context.next = loc;\n\n if (caught) {\n // If the dispatched exception was caught by a catch block,\n // then let that catch block handle the exception normally.\n context.method = \"next\";\n context.arg = undefined$1;\n }\n\n return !!caught;\n }\n\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n var record = entry.completion;\n\n if (entry.tryLoc === \"root\") {\n // Exception thrown outside of any try block that could handle\n // it, so set the completion value of the entire function to\n // throw the exception.\n return handle(\"end\");\n }\n\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\");\n var hasFinally = hasOwn.call(entry, \"finallyLoc\");\n\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n } else if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n }\n } else if (hasFinally) {\n if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n } else {\n throw new Error(\"try statement without catch or finally\");\n }\n }\n }\n },\n abrupt: function (type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n\n if (entry.tryLoc <= this.prev && hasOwn.call(entry, \"finallyLoc\") && this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n\n if (finallyEntry && (type === \"break\" || type === \"continue\") && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc) {\n // Ignore the finally entry if control is not jumping to a\n // location outside the try/catch block.\n finallyEntry = null;\n }\n\n var record = finallyEntry ? finallyEntry.completion : {};\n record.type = type;\n record.arg = arg;\n\n if (finallyEntry) {\n this.method = \"next\";\n this.next = finallyEntry.finallyLoc;\n return ContinueSentinel;\n }\n\n return this.complete(record);\n },\n complete: function (record, afterLoc) {\n if (record.type === \"throw\") {\n throw record.arg;\n }\n\n if (record.type === \"break\" || record.type === \"continue\") {\n this.next = record.arg;\n } else if (record.type === \"return\") {\n this.rval = this.arg = record.arg;\n this.method = \"return\";\n this.next = \"end\";\n } else if (record.type === \"normal\" && afterLoc) {\n this.next = afterLoc;\n }\n\n return ContinueSentinel;\n },\n finish: function (finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n\n if (entry.finallyLoc === finallyLoc) {\n this.complete(entry.completion, entry.afterLoc);\n resetTryEntry(entry);\n return ContinueSentinel;\n }\n }\n },\n \"catch\": function (tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n\n if (record.type === \"throw\") {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n\n return thrown;\n }\n } // The context.catch method must only be called with a location\n // argument that corresponds to a known catch block.\n\n\n throw new Error(\"illegal catch attempt\");\n },\n delegateYield: function (iterable, resultName, nextLoc) {\n this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n };\n\n if (this.method === \"next\") {\n // Deliberately forget the last sent value so that we don't\n // accidentally pass it on to the delegate.\n this.arg = undefined$1;\n }\n\n return ContinueSentinel;\n }\n }; // Regardless of whether this script is executing as a CommonJS module\n // or not, return the runtime object so that we can declare the variable\n // regeneratorRuntime in the outer scope, which allows this module to be\n // injected easily by `bin/regenerator --include-runtime script.js`.\n\n return exports;\n }( // If this script is executing as a CommonJS module, use module.exports\n // as the regeneratorRuntime namespace. Otherwise create a new empty\n // object. Either way, the resulting object will be used to initialize\n // the regeneratorRuntime variable at the top of this file.\n module.exports );\n\n try {\n regeneratorRuntime = runtime;\n } catch (accidentalStrictMode) {\n // This module should not be running in strict mode, so the above\n // assignment should always work unless something is misconfigured. Just\n // in case runtime.js accidentally runs in strict mode, we can escape\n // strict mode using a global Function call. This could conceivably fail\n // if a Content Security Policy forbids using Function, but in that case\n // the proper solution is to fix the accidental strict mode problem. If\n // you've misconfigured your bundler to force strict mode and applied a\n // CSP to forbid Function, and you're not willing to fix either of those\n // problems, please detail your unique predicament in a GitHub issue.\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n }\n});\n\nvar Property = /*#__PURE__*/function () {\n function Property(document, name, value) {\n _classCallCheck(this, Property);\n\n this.document = document;\n this.name = name;\n this.value = value;\n this.isNormalizedColor = false;\n }\n\n _createClass(Property, [{\n key: \"hasValue\",\n value: function hasValue() {\n var value = this.value;\n return value !== null && value !== '' && value !== 0 && typeof value !== 'undefined';\n }\n }, {\n key: \"isString\",\n value: function isString(regexp) {\n var value = this.value;\n var result = typeof value === 'string';\n\n if (!result || !regexp) {\n return result;\n }\n\n return regexp.test(value);\n }\n }, {\n key: \"isUrlDefinition\",\n value: function isUrlDefinition() {\n return this.isString(/^url\\(/);\n }\n }, {\n key: \"isPixels\",\n value: function isPixels() {\n if (!this.hasValue()) {\n return false;\n }\n\n var asString = this.getString();\n\n switch (true) {\n case /px$/.test(asString):\n case /^[0-9]+$/.test(asString):\n return true;\n\n default:\n return false;\n }\n }\n }, {\n key: \"setValue\",\n value: function setValue(value) {\n this.value = value;\n return this;\n }\n }, {\n key: \"getValue\",\n value: function getValue(def) {\n if (typeof def === 'undefined' || this.hasValue()) {\n return this.value;\n }\n\n return def;\n }\n }, {\n key: \"getNumber\",\n value: function getNumber(def) {\n if (!this.hasValue()) {\n if (typeof def === 'undefined') {\n return 0;\n }\n\n return parseFloat(def);\n }\n\n var value = this.value;\n var n = parseFloat(value);\n\n if (this.isString(/%$/)) {\n n = n / 100.0;\n }\n\n return n;\n }\n }, {\n key: \"getString\",\n value: function getString(def) {\n if (typeof def === 'undefined' || this.hasValue()) {\n return typeof this.value === 'undefined' ? '' : String(this.value);\n }\n\n return String(def);\n }\n }, {\n key: \"getColor\",\n value: function getColor(def) {\n var color = this.getString(def);\n\n if (this.isNormalizedColor) {\n return color;\n }\n\n this.isNormalizedColor = true;\n color = normalizeColor(color);\n this.value = color;\n return color;\n }\n }, {\n key: \"getDpi\",\n value: function getDpi() {\n return 96.0; // TODO: compute?\n }\n }, {\n key: \"getRem\",\n value: function getRem() {\n return this.document.rootEmSize;\n }\n }, {\n key: \"getEm\",\n value: function getEm() {\n return this.document.emSize;\n }\n }, {\n key: \"getUnits\",\n value: function getUnits() {\n return this.getString().replace(/[0-9\\.\\-]/g, '');\n }\n }, {\n key: \"getPixels\",\n value: function getPixels(axisOrIsFontSize) {\n var processPercent = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n if (!this.hasValue()) {\n return 0;\n }\n\n var _ref = typeof axisOrIsFontSize === 'boolean' ? [undefined, axisOrIsFontSize] : [axisOrIsFontSize],\n _ref2 = _slicedToArray(_ref, 2),\n axis = _ref2[0],\n isFontSize = _ref2[1];\n\n var viewPort = this.document.screen.viewPort;\n\n switch (true) {\n case this.isString(/vmin$/):\n return this.getNumber() / 100.0 * Math.min(viewPort.computeSize('x'), viewPort.computeSize('y'));\n\n case this.isString(/vmax$/):\n return this.getNumber() / 100.0 * Math.max(viewPort.computeSize('x'), viewPort.computeSize('y'));\n\n case this.isString(/vw$/):\n return this.getNumber() / 100.0 * viewPort.computeSize('x');\n\n case this.isString(/vh$/):\n return this.getNumber() / 100.0 * viewPort.computeSize('y');\n\n case this.isString(/rem$/):\n return this.getNumber() * this.getRem();\n\n case this.isString(/em$/):\n return this.getNumber() * this.getEm();\n\n case this.isString(/ex$/):\n return this.getNumber() * this.getEm() / 2.0;\n\n case this.isString(/px$/):\n return this.getNumber();\n\n case this.isString(/pt$/):\n return this.getNumber() * this.getDpi() * (1.0 / 72.0);\n\n case this.isString(/pc$/):\n return this.getNumber() * 15;\n\n case this.isString(/cm$/):\n return this.getNumber() * this.getDpi() / 2.54;\n\n case this.isString(/mm$/):\n return this.getNumber() * this.getDpi() / 25.4;\n\n case this.isString(/in$/):\n return this.getNumber() * this.getDpi();\n\n case this.isString(/%$/) && isFontSize:\n return this.getNumber() * this.getEm();\n\n case this.isString(/%$/):\n return this.getNumber() * viewPort.computeSize(axis);\n\n default:\n {\n var n = this.getNumber();\n\n if (processPercent && n < 1.0) {\n return n * viewPort.computeSize(axis);\n }\n\n return n;\n }\n }\n }\n }, {\n key: \"getMilliseconds\",\n value: function getMilliseconds() {\n if (!this.hasValue()) {\n return 0;\n }\n\n if (this.isString(/ms$/)) {\n return this.getNumber();\n }\n\n return this.getNumber() * 1000;\n }\n }, {\n key: \"getRadians\",\n value: function getRadians() {\n if (!this.hasValue()) {\n return 0;\n }\n\n switch (true) {\n case this.isString(/deg$/):\n return this.getNumber() * (Math.PI / 180.0);\n\n case this.isString(/grad$/):\n return this.getNumber() * (Math.PI / 200.0);\n\n case this.isString(/rad$/):\n return this.getNumber();\n\n default:\n return this.getNumber() * (Math.PI / 180.0);\n }\n }\n }, {\n key: \"getDefinition\",\n value: function getDefinition() {\n var asString = this.getString();\n var name = asString.match(/#([^\\)'\"]+)/);\n\n if (name) {\n name = name[1];\n }\n\n if (!name) {\n name = asString;\n }\n\n return this.document.definitions[name];\n }\n }, {\n key: \"getFillStyleDefinition\",\n value: function getFillStyleDefinition(element, opacity) {\n var def = this.getDefinition();\n\n if (!def) {\n return null;\n } // gradient\n\n\n if (typeof def.createGradient === 'function') {\n return def.createGradient(this.document.ctx, element, opacity);\n } // pattern\n\n\n if (typeof def.createPattern === 'function') {\n if (def.getHrefAttribute().hasValue()) {\n var patternTransform = def.getAttribute('patternTransform');\n def = def.getHrefAttribute().getDefinition();\n\n if (patternTransform.hasValue()) {\n def.getAttribute('patternTransform', true).setValue(patternTransform.value);\n }\n }\n\n return def.createPattern(this.document.ctx, element, opacity);\n }\n\n return null;\n }\n }, {\n key: \"getTextBaseline\",\n value: function getTextBaseline() {\n if (!this.hasValue()) {\n return null;\n }\n\n return Property.textBaselineMapping[this.getString()];\n }\n }, {\n key: \"addOpacity\",\n value: function addOpacity(opacity) {\n var value = this.getColor();\n var len = value.length;\n var commas = 0; // Simulate old RGBColor version, which can't parse rgba.\n\n for (var i = 0; i < len; i++) {\n if (value[i] === ',') {\n commas++;\n }\n\n if (commas === 3) {\n break;\n }\n }\n\n if (opacity.hasValue() && this.isString() && commas !== 3) {\n var color = new RGBColor(value);\n\n if (color.ok) {\n color.alpha = opacity.getNumber();\n value = color.toRGBA();\n }\n }\n\n return new Property(this.document, this.name, value);\n }\n }], [{\n key: \"empty\",\n value: function empty(document) {\n return new Property(document, 'EMPTY', '');\n }\n }]);\n\n return Property;\n}();\nProperty.textBaselineMapping = {\n 'baseline': 'alphabetic',\n 'before-edge': 'top',\n 'text-before-edge': 'top',\n 'middle': 'middle',\n 'central': 'middle',\n 'after-edge': 'bottom',\n 'text-after-edge': 'bottom',\n 'ideographic': 'ideographic',\n 'alphabetic': 'alphabetic',\n 'hanging': 'hanging',\n 'mathematical': 'alphabetic'\n};\n\nvar ViewPort = /*#__PURE__*/function () {\n function ViewPort() {\n _classCallCheck(this, ViewPort);\n\n this.viewPorts = [];\n }\n\n _createClass(ViewPort, [{\n key: \"clear\",\n value: function clear() {\n this.viewPorts = [];\n }\n }, {\n key: \"setCurrent\",\n value: function setCurrent(width, height) {\n this.viewPorts.push({\n width: width,\n height: height\n });\n }\n }, {\n key: \"removeCurrent\",\n value: function removeCurrent() {\n this.viewPorts.pop();\n }\n }, {\n key: \"getCurrent\",\n value: function getCurrent() {\n var viewPorts = this.viewPorts;\n return viewPorts[viewPorts.length - 1];\n }\n }, {\n key: \"computeSize\",\n value: function computeSize(d) {\n if (typeof d === 'number') {\n return d;\n }\n\n if (d === 'x') {\n return this.width;\n }\n\n if (d === 'y') {\n return this.height;\n }\n\n return Math.sqrt(Math.pow(this.width, 2) + Math.pow(this.height, 2)) / Math.sqrt(2);\n }\n }, {\n key: \"width\",\n get: function get() {\n return this.getCurrent().width;\n }\n }, {\n key: \"height\",\n get: function get() {\n return this.getCurrent().height;\n }\n }]);\n\n return ViewPort;\n}();\n\nvar Point = /*#__PURE__*/function () {\n function Point(x, y) {\n _classCallCheck(this, Point);\n\n this.x = x;\n this.y = y;\n }\n\n _createClass(Point, [{\n key: \"angleTo\",\n value: function angleTo(point) {\n return Math.atan2(point.y - this.y, point.x - this.x);\n }\n }, {\n key: \"applyTransform\",\n value: function applyTransform(transform) {\n var x = this.x,\n y = this.y;\n var xp = x * transform[0] + y * transform[2] + transform[4];\n var yp = x * transform[1] + y * transform[3] + transform[5];\n this.x = xp;\n this.y = yp;\n }\n }], [{\n key: \"parse\",\n value: function parse(point) {\n var defaultValue = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;\n\n var _toNumbers = toNumbers(point),\n _toNumbers2 = _slicedToArray(_toNumbers, 2),\n _toNumbers2$ = _toNumbers2[0],\n x = _toNumbers2$ === void 0 ? defaultValue : _toNumbers2$,\n _toNumbers2$2 = _toNumbers2[1],\n y = _toNumbers2$2 === void 0 ? defaultValue : _toNumbers2$2;\n\n return new Point(x, y);\n }\n }, {\n key: \"parseScale\",\n value: function parseScale(scale) {\n var defaultValue = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;\n\n var _toNumbers3 = toNumbers(scale),\n _toNumbers4 = _slicedToArray(_toNumbers3, 2),\n _toNumbers4$ = _toNumbers4[0],\n x = _toNumbers4$ === void 0 ? defaultValue : _toNumbers4$,\n _toNumbers4$2 = _toNumbers4[1],\n y = _toNumbers4$2 === void 0 ? x : _toNumbers4$2;\n\n return new Point(x, y);\n }\n }, {\n key: \"parsePath\",\n value: function parsePath(path) {\n var points = toNumbers(path);\n var len = points.length;\n var pathPoints = [];\n\n for (var i = 0; i < len; i += 2) {\n pathPoints.push(new Point(points[i], points[i + 1]));\n }\n\n return pathPoints;\n }\n }]);\n\n return Point;\n}();\n\nvar Mouse = /*#__PURE__*/function () {\n function Mouse(screen) {\n _classCallCheck(this, Mouse);\n\n this.screen = screen;\n this.working = false;\n this.events = [];\n this.eventElements = [];\n this.onClick = this.onClick.bind(this);\n this.onMouseMove = this.onMouseMove.bind(this);\n }\n\n _createClass(Mouse, [{\n key: \"isWorking\",\n value: function isWorking() {\n return this.working;\n }\n }, {\n key: \"start\",\n value: function start() {\n if (this.working) {\n return;\n }\n\n var screen = this.screen,\n onClick = this.onClick,\n onMouseMove = this.onMouseMove;\n var canvas = screen.ctx.canvas;\n canvas.onclick = onClick;\n canvas.onmousemove = onMouseMove;\n this.working = true;\n }\n }, {\n key: \"stop\",\n value: function stop() {\n if (!this.working) {\n return;\n }\n\n var canvas = this.screen.ctx.canvas;\n this.working = false;\n canvas.onclick = null;\n canvas.onmousemove = null;\n }\n }, {\n key: \"hasEvents\",\n value: function hasEvents() {\n return this.working && this.events.length > 0;\n }\n }, {\n key: \"runEvents\",\n value: function runEvents() {\n if (!this.working) {\n return;\n }\n\n var document = this.screen,\n events = this.events,\n eventElements = this.eventElements;\n var style = document.ctx.canvas.style;\n\n if (style) {\n style.cursor = '';\n }\n\n events.forEach(function (_ref, i) {\n var run = _ref.run;\n var element = eventElements[i];\n\n while (element) {\n run(element);\n element = element.parent;\n }\n }); // done running, clear\n\n this.events = [];\n this.eventElements = [];\n }\n }, {\n key: \"checkPath\",\n value: function checkPath(element, ctx) {\n if (!this.working || !ctx) {\n return;\n }\n\n var events = this.events,\n eventElements = this.eventElements;\n events.forEach(function (_ref2, i) {\n var x = _ref2.x,\n y = _ref2.y;\n\n if (!eventElements[i] && ctx.isPointInPath && ctx.isPointInPath(x, y)) {\n eventElements[i] = element;\n }\n });\n }\n }, {\n key: \"checkBoundingBox\",\n value: function checkBoundingBox(element, boundingBox) {\n if (!this.working || !boundingBox) {\n return;\n }\n\n var events = this.events,\n eventElements = this.eventElements;\n events.forEach(function (_ref3, i) {\n var x = _ref3.x,\n y = _ref3.y;\n\n if (!eventElements[i] && boundingBox.isPointInBox(x, y)) {\n eventElements[i] = element;\n }\n });\n }\n }, {\n key: \"mapXY\",\n value: function mapXY(x, y) {\n var _this$screen = this.screen,\n window = _this$screen.window,\n ctx = _this$screen.ctx;\n var point = new Point(x, y);\n var element = ctx.canvas;\n\n while (element) {\n point.x -= element.offsetLeft;\n point.y -= element.offsetTop;\n element = element.offsetParent;\n }\n\n if (window.scrollX) {\n point.x += window.scrollX;\n }\n\n if (window.scrollY) {\n point.y += window.scrollY;\n }\n\n return point;\n }\n }, {\n key: \"onClick\",\n value: function onClick(evt) {\n var _this$mapXY = this.mapXY((evt || event).clientX, (evt || event).clientY),\n x = _this$mapXY.x,\n y = _this$mapXY.y;\n\n this.events.push({\n type: 'onclick',\n x: x,\n y: y,\n run: function run(event) {\n if (event.onClick) {\n event.onClick();\n }\n }\n });\n }\n }, {\n key: \"onMouseMove\",\n value: function onMouseMove(evt) {\n var _this$mapXY2 = this.mapXY((evt || event).clientX, (evt || event).clientY),\n x = _this$mapXY2.x,\n y = _this$mapXY2.y;\n\n this.events.push({\n type: 'onmousemove',\n x: x,\n y: y,\n run: function run(event) {\n if (event.onMouseMove) {\n event.onMouseMove();\n }\n }\n });\n }\n }]);\n\n return Mouse;\n}();\n\nvar defaultWindow = typeof window !== 'undefined' ? window : null;\nvar defaultFetch = typeof fetch !== 'undefined' ? fetch.bind(void 0) // `fetch` depends on context: `someObject.fetch(...)` will throw error.\n: null;\n\nvar Screen = /*#__PURE__*/function () {\n function Screen(ctx) {\n var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n _ref$fetch = _ref.fetch,\n fetch = _ref$fetch === void 0 ? defaultFetch : _ref$fetch,\n _ref$window = _ref.window,\n window = _ref$window === void 0 ? defaultWindow : _ref$window;\n\n _classCallCheck(this, Screen);\n\n this.ctx = ctx;\n this.FRAMERATE = 30;\n this.MAX_VIRTUAL_PIXELS = 30000;\n this.CLIENT_WIDTH = 800;\n this.CLIENT_HEIGHT = 600;\n this.viewPort = new ViewPort();\n this.mouse = new Mouse(this);\n this.animations = [];\n this.waits = [];\n this.frameDuration = 0;\n this.isReadyLock = false;\n this.isFirstRender = true;\n this.intervalId = null;\n this.window = window;\n this.fetch = fetch;\n }\n\n _createClass(Screen, [{\n key: \"wait\",\n value: function wait(checker) {\n this.waits.push(checker);\n }\n }, {\n key: \"ready\",\n value: function ready() {\n if (!this.readyPromise) {\n return Promise.resolve();\n }\n\n return this.readyPromise;\n }\n }, {\n key: \"isReady\",\n value: function isReady() {\n if (this.isReadyLock) {\n return true;\n }\n\n var isReadyLock = this.waits.every(function (_) {\n return _();\n });\n\n if (isReadyLock) {\n this.waits = [];\n\n if (this.resolveReady) {\n this.resolveReady();\n }\n }\n\n this.isReadyLock = isReadyLock;\n return isReadyLock;\n }\n }, {\n key: \"setDefaults\",\n value: function setDefaults(ctx) {\n // initial values and defaults\n ctx.strokeStyle = 'rgba(0,0,0,0)';\n ctx.lineCap = 'butt';\n ctx.lineJoin = 'miter';\n ctx.miterLimit = 4;\n }\n }, {\n key: \"setViewBox\",\n value: function setViewBox(_ref2) {\n var document = _ref2.document,\n ctx = _ref2.ctx,\n aspectRatio = _ref2.aspectRatio,\n width = _ref2.width,\n desiredWidth = _ref2.desiredWidth,\n height = _ref2.height,\n desiredHeight = _ref2.desiredHeight,\n _ref2$minX = _ref2.minX,\n minX = _ref2$minX === void 0 ? 0 : _ref2$minX,\n _ref2$minY = _ref2.minY,\n minY = _ref2$minY === void 0 ? 0 : _ref2$minY,\n refX = _ref2.refX,\n refY = _ref2.refY,\n _ref2$clip = _ref2.clip,\n clip = _ref2$clip === void 0 ? false : _ref2$clip,\n _ref2$clipX = _ref2.clipX,\n clipX = _ref2$clipX === void 0 ? 0 : _ref2$clipX,\n _ref2$clipY = _ref2.clipY,\n clipY = _ref2$clipY === void 0 ? 0 : _ref2$clipY;\n // aspect ratio - http://www.w3.org/TR/SVG/coords.html#PreserveAspectRatioAttribute\n var cleanAspectRatio = compressSpaces(aspectRatio).replace(/^defer\\s/, ''); // ignore defer\n\n var _cleanAspectRatio$spl = cleanAspectRatio.split(' '),\n _cleanAspectRatio$spl2 = _slicedToArray(_cleanAspectRatio$spl, 2),\n aspectRatioAlign = _cleanAspectRatio$spl2[0],\n aspectRatioMeetOrSlice = _cleanAspectRatio$spl2[1];\n\n var align = aspectRatioAlign || 'xMidYMid';\n var meetOrSlice = aspectRatioMeetOrSlice || 'meet'; // calculate scale\n\n var scaleX = width / desiredWidth;\n var scaleY = height / desiredHeight;\n var scaleMin = Math.min(scaleX, scaleY);\n var scaleMax = Math.max(scaleX, scaleY);\n var finalDesiredWidth = desiredWidth;\n var finalDesiredHeight = desiredHeight;\n\n if (meetOrSlice === 'meet') {\n finalDesiredWidth *= scaleMin;\n finalDesiredHeight *= scaleMin;\n }\n\n if (meetOrSlice === 'slice') {\n finalDesiredWidth *= scaleMax;\n finalDesiredHeight *= scaleMax;\n }\n\n var refXProp = new Property(document, 'refX', refX);\n var refYProp = new Property(document, 'refY', refY);\n var hasRefs = refXProp.hasValue() && refYProp.hasValue();\n\n if (hasRefs) {\n ctx.translate(-scaleMin * refXProp.getPixels('x'), -scaleMin * refYProp.getPixels('y'));\n }\n\n if (clip) {\n var scaledClipX = scaleMin * clipX;\n var scaledClipY = scaleMin * clipY;\n ctx.beginPath();\n ctx.moveTo(scaledClipX, scaledClipY);\n ctx.lineTo(width, scaledClipY);\n ctx.lineTo(width, height);\n ctx.lineTo(scaledClipX, height);\n ctx.closePath();\n ctx.clip();\n }\n\n if (!hasRefs) {\n var isMeetMinY = meetOrSlice === 'meet' && scaleMin === scaleY;\n var isSliceMaxY = meetOrSlice === 'slice' && scaleMax === scaleY;\n var isMeetMinX = meetOrSlice === 'meet' && scaleMin === scaleX;\n var isSliceMaxX = meetOrSlice === 'slice' && scaleMax === scaleX;\n\n if (/^xMid/.test(align) && (isMeetMinY || isSliceMaxY)) {\n ctx.translate(width / 2.0 - finalDesiredWidth / 2.0, 0);\n }\n\n if (/YMid$/.test(align) && (isMeetMinX || isSliceMaxX)) {\n ctx.translate(0, height / 2.0 - finalDesiredHeight / 2.0);\n }\n\n if (/^xMax/.test(align) && (isMeetMinY || isSliceMaxY)) {\n ctx.translate(width - finalDesiredWidth, 0);\n }\n\n if (/YMax$/.test(align) && (isMeetMinX || isSliceMaxX)) {\n ctx.translate(0, height - finalDesiredHeight);\n }\n } // scale\n\n\n switch (true) {\n case align === 'none':\n ctx.scale(scaleX, scaleY);\n break;\n\n case meetOrSlice === 'meet':\n ctx.scale(scaleMin, scaleMin);\n break;\n\n case meetOrSlice === 'slice':\n ctx.scale(scaleMax, scaleMax);\n break;\n } // translate\n\n\n ctx.translate(-minX, -minY);\n }\n }, {\n key: \"start\",\n value: function start(element) {\n var _this = this;\n\n var _ref3 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n _ref3$enableRedraw = _ref3.enableRedraw,\n enableRedraw = _ref3$enableRedraw === void 0 ? false : _ref3$enableRedraw,\n _ref3$ignoreMouse = _ref3.ignoreMouse,\n ignoreMouse = _ref3$ignoreMouse === void 0 ? false : _ref3$ignoreMouse,\n _ref3$ignoreAnimation = _ref3.ignoreAnimation,\n ignoreAnimation = _ref3$ignoreAnimation === void 0 ? false : _ref3$ignoreAnimation,\n _ref3$ignoreDimension = _ref3.ignoreDimensions,\n ignoreDimensions = _ref3$ignoreDimension === void 0 ? false : _ref3$ignoreDimension,\n _ref3$ignoreClear = _ref3.ignoreClear,\n ignoreClear = _ref3$ignoreClear === void 0 ? false : _ref3$ignoreClear,\n forceRedraw = _ref3.forceRedraw,\n scaleWidth = _ref3.scaleWidth,\n scaleHeight = _ref3.scaleHeight,\n offsetX = _ref3.offsetX,\n offsetY = _ref3.offsetY;\n\n var FRAMERATE = this.FRAMERATE,\n mouse = this.mouse;\n var frameDuration = 1000 / FRAMERATE;\n this.frameDuration = frameDuration;\n this.readyPromise = new Promise(function (resolve) {\n _this.resolveReady = resolve;\n });\n\n if (this.isReady()) {\n this.render(element, ignoreDimensions, ignoreClear, scaleWidth, scaleHeight, offsetX, offsetY);\n }\n\n if (!enableRedraw) {\n return;\n }\n\n var now = Date.now();\n var then = now;\n var delta = 0;\n\n var tick = function tick() {\n now = Date.now();\n delta = now - then;\n\n if (delta >= frameDuration) {\n then = now - delta % frameDuration;\n\n if (_this.shouldUpdate(ignoreAnimation, forceRedraw)) {\n _this.render(element, ignoreDimensions, ignoreClear, scaleWidth, scaleHeight, offsetX, offsetY);\n\n mouse.runEvents();\n }\n }\n\n _this.intervalId = requestAnimationFrame(tick);\n };\n\n if (!ignoreMouse) {\n mouse.start();\n }\n\n this.intervalId = requestAnimationFrame(tick);\n }\n }, {\n key: \"stop\",\n value: function stop() {\n if (this.intervalId) {\n requestAnimationFrame.cancel(this.intervalId);\n this.intervalId = null;\n }\n\n this.mouse.stop();\n }\n }, {\n key: \"shouldUpdate\",\n value: function shouldUpdate(ignoreAnimation, forceRedraw) {\n // need update from animations?\n if (!ignoreAnimation) {\n var frameDuration = this.frameDuration;\n var shouldUpdate = this.animations.reduce(function (shouldUpdate, animation) {\n return animation.update(frameDuration) || shouldUpdate;\n }, false);\n\n if (shouldUpdate) {\n return true;\n }\n } // need update from redraw?\n\n\n if (typeof forceRedraw === 'function' && forceRedraw()) {\n return true;\n }\n\n if (!this.isReadyLock && this.isReady()) {\n return true;\n } // need update from mouse events?\n\n\n if (this.mouse.hasEvents()) {\n return true;\n }\n\n return false;\n }\n }, {\n key: \"render\",\n value: function render(element, ignoreDimensions, ignoreClear, scaleWidth, scaleHeight, offsetX, offsetY) {\n var CLIENT_WIDTH = this.CLIENT_WIDTH,\n CLIENT_HEIGHT = this.CLIENT_HEIGHT,\n viewPort = this.viewPort,\n ctx = this.ctx,\n isFirstRender = this.isFirstRender;\n var canvas = ctx.canvas;\n viewPort.clear();\n\n if (canvas.width && canvas.height) {\n viewPort.setCurrent(canvas.width, canvas.height);\n } else {\n viewPort.setCurrent(CLIENT_WIDTH, CLIENT_HEIGHT);\n }\n\n var widthStyle = element.getStyle('width');\n var heightStyle = element.getStyle('height');\n\n if (!ignoreDimensions && (isFirstRender || typeof scaleWidth !== 'number' && typeof scaleHeight !== 'number')) {\n // set canvas size\n if (widthStyle.hasValue()) {\n canvas.width = widthStyle.getPixels('x');\n\n if (canvas.style) {\n canvas.style.width = \"\".concat(canvas.width, \"px\");\n }\n }\n\n if (heightStyle.hasValue()) {\n canvas.height = heightStyle.getPixels('y');\n\n if (canvas.style) {\n canvas.style.height = \"\".concat(canvas.height, \"px\");\n }\n }\n }\n\n var cWidth = canvas.clientWidth || canvas.width;\n var cHeight = canvas.clientHeight || canvas.height;\n\n if (ignoreDimensions && widthStyle.hasValue() && heightStyle.hasValue()) {\n cWidth = widthStyle.getPixels('x');\n cHeight = heightStyle.getPixels('y');\n }\n\n viewPort.setCurrent(cWidth, cHeight);\n\n if (typeof offsetX === 'number') {\n element.getAttribute('x', true).setValue(offsetX);\n }\n\n if (typeof offsetY === 'number') {\n element.getAttribute('y', true).setValue(offsetY);\n }\n\n if (typeof scaleWidth === 'number' || typeof scaleHeight === 'number') {\n var viewBox = toNumbers(element.getAttribute('viewBox').getString());\n var xRatio = 0;\n var yRatio = 0;\n\n if (typeof scaleWidth === 'number') {\n var _widthStyle = element.getStyle('width');\n\n if (_widthStyle.hasValue()) {\n xRatio = _widthStyle.getPixels('x') / scaleWidth;\n } else if (!isNaN(viewBox[2])) {\n xRatio = viewBox[2] / scaleWidth;\n }\n }\n\n if (typeof scaleHeight === 'number') {\n var _heightStyle = element.getStyle('height');\n\n if (_heightStyle.hasValue()) {\n yRatio = _heightStyle.getPixels('y') / scaleHeight;\n } else if (!isNaN(viewBox[3])) {\n yRatio = viewBox[3] / scaleHeight;\n }\n }\n\n if (!xRatio) {\n xRatio = yRatio;\n }\n\n if (!yRatio) {\n yRatio = xRatio;\n }\n\n element.getAttribute('width', true).setValue(scaleWidth);\n element.getAttribute('height', true).setValue(scaleHeight);\n var transformStyle = element.getStyle('transform', true, true);\n transformStyle.setValue(\"\".concat(transformStyle.getString(), \" scale(\").concat(1.0 / xRatio, \", \").concat(1.0 / yRatio, \")\"));\n } // clear and render\n\n\n if (!ignoreClear) {\n ctx.clearRect(0, 0, cWidth, cHeight);\n }\n\n element.render(ctx);\n\n if (isFirstRender) {\n this.isFirstRender = false;\n }\n }\n }]);\n\n return Screen;\n}();\nScreen.defaultWindow = defaultWindow;\nScreen.defaultFetch = defaultFetch;\n\nvar defaultFetch$1 = Screen.defaultFetch;\nvar DefaultDOMParser = typeof DOMParser !== 'undefined' ? DOMParser : null;\n\nvar Parser = /*#__PURE__*/function () {\n function Parser() {\n var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n _ref$fetch = _ref.fetch,\n fetch = _ref$fetch === void 0 ? defaultFetch$1 : _ref$fetch,\n _ref$DOMParser = _ref.DOMParser,\n DOMParser = _ref$DOMParser === void 0 ? DefaultDOMParser : _ref$DOMParser;\n\n _classCallCheck(this, Parser);\n\n this.fetch = fetch;\n this.DOMParser = DOMParser;\n }\n\n _createClass(Parser, [{\n key: \"parse\",\n value: function () {\n var _parse = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(resource) {\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n if (!/^ 2 && arguments[2] !== undefined ? arguments[2] : [];\n\n _classCallCheck(this, Rotate);\n\n this.type = 'rotate';\n this.angle = null;\n this.cx = 0;\n this.cy = 0;\n var numbers = toNumbers(rotate);\n this.angle = new Property(document, 'angle', numbers[0]);\n this.cx = (numbers[1] || 0) + (transformOrigin[0] || 0);\n this.cy = (numbers[2] || 0) + (transformOrigin[1] || 0);\n }\n\n _createClass(Rotate, [{\n key: \"apply\",\n value: function apply(ctx) {\n var cx = this.cx,\n cy = this.cy,\n angle = this.angle;\n ctx.translate(cx, cy);\n ctx.rotate(angle.getRadians());\n ctx.translate(-cx, -cy);\n }\n }, {\n key: \"unapply\",\n value: function unapply(ctx) {\n var cx = this.cx,\n cy = this.cy,\n angle = this.angle;\n ctx.translate(cx, cy);\n ctx.rotate(-1.0 * angle.getRadians());\n ctx.translate(-cx, -cy);\n }\n }, {\n key: \"applyToPoint\",\n value: function applyToPoint(point) {\n var cx = this.cx,\n cy = this.cy,\n angle = this.angle;\n var rad = angle.getRadians();\n point.applyTransform([1, 0, 0, 1, cx || 0.0, cy || 0.0 // this.p.y\n ]);\n point.applyTransform([Math.cos(rad), Math.sin(rad), -Math.sin(rad), Math.cos(rad), 0, 0]);\n point.applyTransform([1, 0, 0, 1, -cx || 0.0, -cy || 0.0 // -this.p.y\n ]);\n }\n }]);\n\n return Rotate;\n}();\n\nvar Scale = /*#__PURE__*/function () {\n function Scale(_, scale) {\n _classCallCheck(this, Scale);\n\n this.type = 'scale';\n this.scale = null;\n var scaleSize = Point.parseScale(scale); // Workaround for node-canvas\n\n if (scaleSize.x === 0 || scaleSize.y === 0) {\n scaleSize.x = PSEUDO_ZERO;\n scaleSize.y = PSEUDO_ZERO;\n }\n\n this.scale = scaleSize;\n }\n\n _createClass(Scale, [{\n key: \"apply\",\n value: function apply(ctx) {\n var _this$scale = this.scale,\n x = _this$scale.x,\n y = _this$scale.y;\n ctx.scale(x, y || x);\n }\n }, {\n key: \"unapply\",\n value: function unapply(ctx) {\n var _this$scale2 = this.scale,\n x = _this$scale2.x,\n y = _this$scale2.y;\n ctx.scale(1.0 / x, 1.0 / y || x);\n }\n }, {\n key: \"applyToPoint\",\n value: function applyToPoint(point) {\n var _this$scale3 = this.scale,\n x = _this$scale3.x,\n y = _this$scale3.y;\n point.applyTransform([x || 0.0, 0, 0, y || 0.0, 0, 0]);\n }\n }]);\n\n return Scale;\n}();\n\nvar Matrix = /*#__PURE__*/function () {\n function Matrix(_, matrix) {\n _classCallCheck(this, Matrix);\n\n this.type = 'matrix';\n this.matrix = [];\n this.matrix = toNumbers(matrix);\n }\n\n _createClass(Matrix, [{\n key: \"apply\",\n value: function apply(ctx) {\n var matrix = this.matrix;\n ctx.transform(matrix[0], matrix[1], matrix[2], matrix[3], matrix[4], matrix[5]);\n }\n }, {\n key: \"unapply\",\n value: function unapply(ctx) {\n var matrix = this.matrix;\n var a = matrix[0];\n var b = matrix[2];\n var c = matrix[4];\n var d = matrix[1];\n var e = matrix[3];\n var f = matrix[5];\n var g = 0.0;\n var h = 0.0;\n var i = 1.0;\n var det = 1 / (a * (e * i - f * h) - b * (d * i - f * g) + c * (d * h - e * g));\n ctx.transform(det * (e * i - f * h), det * (f * g - d * i), det * (c * h - b * i), det * (a * i - c * g), det * (b * f - c * e), det * (c * d - a * f));\n }\n }, {\n key: \"applyToPoint\",\n value: function applyToPoint(point) {\n point.applyTransform(this.matrix);\n }\n }]);\n\n return Matrix;\n}();\n\nfunction _createSuper(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\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\nvar Skew = /*#__PURE__*/function (_Matrix) {\n _inherits(Skew, _Matrix);\n\n var _super = _createSuper(Skew);\n\n function Skew(document, skew) {\n var _this;\n\n _classCallCheck(this, Skew);\n\n _this = _super.call(this, document, skew);\n _this.type = 'skew';\n _this.angle = null;\n _this.angle = new Property(document, 'angle', skew);\n return _this;\n }\n\n return Skew;\n}(Matrix);\n\nfunction _createSuper$1(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$1()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$1() { 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\nvar SkewX = /*#__PURE__*/function (_Skew) {\n _inherits(SkewX, _Skew);\n\n var _super = _createSuper$1(SkewX);\n\n function SkewX(document, skew) {\n var _this;\n\n _classCallCheck(this, SkewX);\n\n _this = _super.call(this, document, skew);\n _this.type = 'skewX';\n _this.matrix = [1, 0, Math.tan(_this.angle.getRadians()), 1, 0, 0];\n return _this;\n }\n\n return SkewX;\n}(Skew);\n\nfunction _createSuper$2(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$2()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$2() { 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\nvar SkewY = /*#__PURE__*/function (_Skew) {\n _inherits(SkewY, _Skew);\n\n var _super = _createSuper$2(SkewY);\n\n function SkewY(document, skew) {\n var _this;\n\n _classCallCheck(this, SkewY);\n\n _this = _super.call(this, document, skew);\n _this.type = 'skewY';\n _this.matrix = [1, Math.tan(_this.angle.getRadians()), 0, 1, 0, 0];\n return _this;\n }\n\n return SkewY;\n}(Skew);\n\nfunction parseTransforms(transform) {\n return compressSpaces(transform).trim().replace(/\\)([a-zA-Z])/g, ') $1').replace(/\\)(\\s?,\\s?)/g, ') ').split(/\\s(?=[a-z])/);\n}\n\nfunction parseTransform(transform) {\n var _transform$split = transform.split('('),\n _transform$split2 = _slicedToArray(_transform$split, 2),\n type = _transform$split2[0],\n value = _transform$split2[1];\n\n return [type.trim(), value.trim().replace(')', '')];\n}\n\nvar Transform = /*#__PURE__*/function () {\n function Transform(document, transform, transformOrigin) {\n var _this = this;\n\n _classCallCheck(this, Transform);\n\n this.document = document;\n this.transforms = [];\n var data = parseTransforms(transform);\n var originCoords = transformOrigin ? toNumbers(transformOrigin) : [];\n data.forEach(function (transform) {\n if (transform === 'none') {\n return;\n }\n\n var _parseTransform = parseTransform(transform),\n _parseTransform2 = _slicedToArray(_parseTransform, 2),\n type = _parseTransform2[0],\n value = _parseTransform2[1];\n\n var TransformType = Transform.transformTypes[type];\n\n if (typeof TransformType !== 'undefined') {\n _this.transforms.push(new TransformType(_this.document, value, originCoords));\n }\n });\n }\n\n _createClass(Transform, [{\n key: \"apply\",\n value: function apply(ctx) {\n var transforms = this.transforms;\n var len = transforms.length;\n\n for (var i = 0; i < len; i++) {\n transforms[i].apply(ctx);\n }\n }\n }, {\n key: \"unapply\",\n value: function unapply(ctx) {\n var transforms = this.transforms;\n var len = transforms.length;\n\n for (var i = len - 1; i >= 0; i--) {\n transforms[i].unapply(ctx);\n }\n } // TODO: applyToPoint unused ... remove?\n\n }, {\n key: \"applyToPoint\",\n value: function applyToPoint(point) {\n var transforms = this.transforms;\n var len = transforms.length;\n\n for (var i = 0; i < len; i++) {\n transforms[i].applyToPoint(point);\n }\n }\n }], [{\n key: \"fromElement\",\n value: function fromElement(document, element) {\n var transformStyle = element.getStyle('transform', false, true);\n var transformOriginStyle = element.getStyle('transform-origin', false, true);\n\n if (transformStyle.hasValue()) {\n return new Transform(document, transformStyle.getString(), transformOriginStyle.getString());\n }\n\n return null;\n }\n }]);\n\n return Transform;\n}();\nTransform.transformTypes = {\n translate: Translate,\n rotate: Rotate,\n scale: Scale,\n matrix: Matrix,\n skewX: SkewX,\n skewY: SkewY\n};\n\nvar Element = /*#__PURE__*/function () {\n function Element(document, node) {\n var _this = this;\n\n var captureTextNodes = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n\n _classCallCheck(this, Element);\n\n this.document = document;\n this.node = node;\n this.captureTextNodes = captureTextNodes;\n this.attributes = {};\n this.styles = {};\n this.stylesSpecificity = {};\n this.animationFrozen = false;\n this.animationFrozenValue = '';\n this.parent = null;\n this.children = [];\n\n if (!node || node.nodeType !== 1) {\n // ELEMENT_NODE\n return;\n } // add attributes\n\n\n Array.from(node.attributes).forEach(function (attribute) {\n var nodeName = normalizeAttributeName(attribute.nodeName);\n _this.attributes[nodeName] = new Property(document, nodeName, attribute.value);\n });\n this.addStylesFromStyleDefinition(); // add inline styles\n\n if (this.getAttribute('style').hasValue()) {\n var styles = this.getAttribute('style').getString().split(';').map(function (_) {\n return _.trim();\n });\n styles.forEach(function (style) {\n if (!style) {\n return;\n }\n\n var _style$split$map = style.split(':').map(function (_) {\n return _.trim();\n }),\n _style$split$map2 = _slicedToArray(_style$split$map, 2),\n name = _style$split$map2[0],\n value = _style$split$map2[1];\n\n _this.styles[name] = new Property(document, name, value);\n });\n }\n\n var definitions = document.definitions;\n var id = this.getAttribute('id'); // add id\n\n if (id.hasValue()) {\n if (!definitions[id.getValue()]) {\n definitions[id.getValue()] = this;\n }\n }\n\n Array.from(node.childNodes).forEach(function (childNode) {\n if (childNode.nodeType === 1) {\n _this.addChild(childNode); // ELEMENT_NODE\n\n } else if (captureTextNodes && (childNode.nodeType === 3 || childNode.nodeType === 4)) {\n var textNode = document.createTextNode(childNode);\n\n if (textNode.getText().length > 0) {\n _this.addChild(textNode); // TEXT_NODE\n\n }\n }\n });\n }\n\n _createClass(Element, [{\n key: \"getAttribute\",\n value: function getAttribute(name) {\n var createIfNotExists = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n var attr = this.attributes[name];\n\n if (!attr && createIfNotExists) {\n var _attr = new Property(this.document, name, '');\n\n this.attributes[name] = _attr;\n return _attr;\n }\n\n return attr || Property.empty(this.document);\n }\n }, {\n key: \"getHrefAttribute\",\n value: function getHrefAttribute() {\n for (var key in this.attributes) {\n if (key === 'href' || /:href$/.test(key)) {\n return this.attributes[key];\n }\n }\n\n return Property.empty(this.document);\n }\n }, {\n key: \"getStyle\",\n value: function getStyle(name) {\n var createIfNotExists = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n var skipAncestors = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n var style = this.styles[name];\n\n if (style) {\n return style;\n }\n\n var attr = this.getAttribute(name);\n\n if (attr && attr.hasValue()) {\n this.styles[name] = attr; // move up to me to cache\n\n return attr;\n }\n\n if (!skipAncestors) {\n var parent = this.parent;\n\n if (parent) {\n var parentStyle = parent.getStyle(name);\n\n if (parentStyle && parentStyle.hasValue()) {\n return parentStyle;\n }\n }\n }\n\n if (createIfNotExists) {\n var _style = new Property(this.document, name, '');\n\n this.styles[name] = _style;\n return _style;\n }\n\n return style || Property.empty(this.document);\n }\n }, {\n key: \"render\",\n value: function render(ctx) {\n // don't render display=none\n // don't render visibility=hidden\n if (this.getStyle('display').getString() === 'none' || this.getStyle('visibility').getString() === 'hidden') {\n return;\n }\n\n ctx.save();\n\n if (this.getStyle('mask').hasValue()) {\n // mask\n var mask = this.getStyle('mask').getDefinition();\n\n if (mask) {\n this.applyEffects(ctx);\n mask.apply(ctx, this);\n }\n } else if (this.getStyle('filter').getValue('none') !== 'none') {\n // filter\n var filter = this.getStyle('filter').getDefinition();\n\n if (filter) {\n this.applyEffects(ctx);\n filter.apply(ctx, this);\n }\n } else {\n this.setContext(ctx);\n this.renderChildren(ctx);\n this.clearContext(ctx);\n }\n\n ctx.restore();\n }\n }, {\n key: \"setContext\",\n value: function setContext(_) {}\n }, {\n key: \"applyEffects\",\n value: function applyEffects(ctx) {\n // transform\n var transform = Transform.fromElement(this.document, this);\n\n if (transform) {\n transform.apply(ctx);\n } // clip\n\n\n var clipPathStyleProp = this.getStyle('clip-path', false, true);\n\n if (clipPathStyleProp.hasValue()) {\n var clip = clipPathStyleProp.getDefinition();\n\n if (clip) {\n clip.apply(ctx);\n }\n }\n }\n }, {\n key: \"clearContext\",\n value: function clearContext(_) {}\n }, {\n key: \"renderChildren\",\n value: function renderChildren(ctx) {\n this.children.forEach(function (child) {\n child.render(ctx);\n });\n }\n }, {\n key: \"addChild\",\n value: function addChild(childNode) {\n var child = childNode instanceof Element ? childNode : this.document.createElement(childNode);\n child.parent = this;\n\n if (!Element.ignoreChildTypes.includes(child.type)) {\n this.children.push(child);\n }\n }\n }, {\n key: \"matchesSelector\",\n value: function matchesSelector(selector) {\n var node = this.node;\n\n if (typeof node.matches === 'function') {\n return node.matches(selector);\n }\n\n var styleClasses = node.getAttribute('class');\n\n if (!styleClasses || styleClasses === '') {\n return false;\n }\n\n return styleClasses.split(' ').some(function (styleClass) {\n if (\".\".concat(styleClass) === selector) {\n return true;\n }\n });\n }\n }, {\n key: \"addStylesFromStyleDefinition\",\n value: function addStylesFromStyleDefinition() {\n var _this$document = this.document,\n styles = _this$document.styles,\n stylesSpecificity = _this$document.stylesSpecificity;\n\n for (var selector in styles) {\n if (selector[0] !== '@' && this.matchesSelector(selector)) {\n var style = styles[selector];\n var specificity = stylesSpecificity[selector];\n\n if (style) {\n for (var name in style) {\n var existingSpecificity = this.stylesSpecificity[name];\n\n if (typeof existingSpecificity === 'undefined') {\n existingSpecificity = '000';\n }\n\n if (specificity >= existingSpecificity) {\n this.styles[name] = style[name];\n this.stylesSpecificity[name] = specificity;\n }\n }\n }\n }\n }\n }\n }, {\n key: \"removeStyles\",\n value: function removeStyles(element, ignoreStyles) {\n var toRestore = ignoreStyles.reduce(function (toRestore, name) {\n var styleProp = element.getStyle(name);\n\n if (!styleProp.hasValue()) {\n return toRestore;\n }\n\n var value = styleProp.getString();\n styleProp.setValue('');\n return [].concat(_toConsumableArray(toRestore), [[name, value]]);\n }, []);\n return toRestore;\n }\n }, {\n key: \"restoreStyles\",\n value: function restoreStyles(element, styles) {\n styles.forEach(function (_ref) {\n var _ref2 = _slicedToArray(_ref, 2),\n name = _ref2[0],\n value = _ref2[1];\n\n element.getStyle(name, true).setValue(value);\n });\n }\n }]);\n\n return Element;\n}();\nElement.ignoreChildTypes = ['title'];\n\nfunction _createSuper$3(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$3()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$3() { 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\nvar UnknownElement = /*#__PURE__*/function (_Element) {\n _inherits(UnknownElement, _Element);\n\n var _super = _createSuper$3(UnknownElement);\n\n function UnknownElement(document, node, captureTextNodes) {\n var _this;\n\n _classCallCheck(this, UnknownElement);\n\n _this = _super.call(this, document, node, captureTextNodes);\n\n return _this;\n }\n\n return UnknownElement;\n}(Element);\n\nfunction wrapFontFamily(fontFamily) {\n var trimmed = fontFamily.trim();\n return /^('|\")/.test(trimmed) ? trimmed : \"\\\"\".concat(trimmed, \"\\\"\");\n}\n\nfunction prepareFontFamily(fontFamily) {\n return typeof process === 'undefined' ? fontFamily : fontFamily.trim().split(',').map(wrapFontFamily).join(',');\n}\n/**\r\n * https://developer.mozilla.org/en-US/docs/Web/CSS/font-style\r\n */\n\n\nfunction prepareFontStyle(fontStyle) {\n if (!fontStyle) {\n return '';\n }\n\n var targetFontStyle = fontStyle.trim().toLowerCase();\n\n switch (targetFontStyle) {\n case 'normal':\n case 'italic':\n case 'oblique':\n case 'inherit':\n case 'initial':\n case 'unset':\n return targetFontStyle;\n\n default:\n if (/^oblique\\s+(-|)\\d+deg$/.test(targetFontStyle)) {\n return targetFontStyle;\n }\n\n return '';\n }\n}\n/**\r\n * https://developer.mozilla.org/en-US/docs/Web/CSS/font-weight\r\n */\n\n\nfunction prepareFontWeight(fontWeight) {\n if (!fontWeight) {\n return '';\n }\n\n var targetFontWeight = fontWeight.trim().toLowerCase();\n\n switch (targetFontWeight) {\n case 'normal':\n case 'bold':\n case 'lighter':\n case 'bolder':\n case 'inherit':\n case 'initial':\n case 'unset':\n return targetFontWeight;\n\n default:\n if (/^[\\d.]+$/.test(targetFontWeight)) {\n return targetFontWeight;\n }\n\n return '';\n }\n}\n\nvar Font = /*#__PURE__*/function () {\n function Font(fontStyle, fontVariant, fontWeight, fontSize, fontFamily, inherit) {\n _classCallCheck(this, Font);\n\n var inheritFont = inherit ? typeof inherit === 'string' ? Font.parse(inherit) : inherit : {};\n this.fontFamily = fontFamily || inheritFont.fontFamily;\n this.fontSize = fontSize || inheritFont.fontSize;\n this.fontStyle = fontStyle || inheritFont.fontStyle;\n this.fontWeight = fontWeight || inheritFont.fontWeight;\n this.fontVariant = fontVariant || inheritFont.fontVariant;\n }\n\n _createClass(Font, [{\n key: \"toString\",\n value: function toString() {\n return [prepareFontStyle(this.fontStyle), this.fontVariant, prepareFontWeight(this.fontWeight), this.fontSize, // Wrap fontFamily only on nodejs and only for canvas.ctx\n prepareFontFamily(this.fontFamily)].join(' ').trim();\n }\n }], [{\n key: \"parse\",\n value: function parse() {\n var font = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n var inherit = arguments.length > 1 ? arguments[1] : undefined;\n var fontStyle = '';\n var fontVariant = '';\n var fontWeight = '';\n var fontSize = '';\n var fontFamily = '';\n var parts = compressSpaces(font).trim().split(' ');\n var set = {\n fontSize: false,\n fontStyle: false,\n fontWeight: false,\n fontVariant: false\n };\n parts.forEach(function (part) {\n switch (true) {\n case !set.fontStyle && Font.styles.includes(part):\n if (part !== 'inherit') {\n fontStyle = part;\n }\n\n set.fontStyle = true;\n break;\n\n case !set.fontVariant && Font.variants.includes(part):\n if (part !== 'inherit') {\n fontVariant = part;\n }\n\n set.fontStyle = true;\n set.fontVariant = true;\n break;\n\n case !set.fontWeight && Font.weights.includes(part):\n if (part !== 'inherit') {\n fontWeight = part;\n }\n\n set.fontStyle = true;\n set.fontVariant = true;\n set.fontWeight = true;\n break;\n\n case !set.fontSize:\n if (part !== 'inherit') {\n var _part$split = part.split('/');\n\n var _part$split2 = _slicedToArray(_part$split, 1);\n\n fontSize = _part$split2[0];\n }\n\n set.fontStyle = true;\n set.fontVariant = true;\n set.fontWeight = true;\n set.fontSize = true;\n break;\n\n default:\n if (part !== 'inherit') {\n fontFamily += part;\n }\n\n }\n });\n return new Font(fontStyle, fontVariant, fontWeight, fontSize, fontFamily, inherit);\n }\n }]);\n\n return Font;\n}();\nFont.styles = 'normal|italic|oblique|inherit';\nFont.variants = 'normal|small-caps|inherit';\nFont.weights = 'normal|bold|bolder|lighter|100|200|300|400|500|600|700|800|900|inherit';\n\nvar BoundingBox = /*#__PURE__*/function () {\n function BoundingBox() {\n var x1 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : Number.NaN;\n var y1 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : Number.NaN;\n var x2 = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : Number.NaN;\n var y2 = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : Number.NaN;\n\n _classCallCheck(this, BoundingBox);\n\n this.x1 = x1;\n this.y1 = y1;\n this.x2 = x2;\n this.y2 = y2;\n this.addPoint(x1, y1);\n this.addPoint(x2, y2);\n }\n\n _createClass(BoundingBox, [{\n key: \"addPoint\",\n value: function addPoint(x, y) {\n if (typeof x !== 'undefined') {\n if (isNaN(this.x1) || isNaN(this.x2)) {\n this.x1 = x;\n this.x2 = x;\n }\n\n if (x < this.x1) {\n this.x1 = x;\n }\n\n if (x > this.x2) {\n this.x2 = x;\n }\n }\n\n if (typeof y !== 'undefined') {\n if (isNaN(this.y1) || isNaN(this.y2)) {\n this.y1 = y;\n this.y2 = y;\n }\n\n if (y < this.y1) {\n this.y1 = y;\n }\n\n if (y > this.y2) {\n this.y2 = y;\n }\n }\n }\n }, {\n key: \"addX\",\n value: function addX(x) {\n this.addPoint(x, null);\n }\n }, {\n key: \"addY\",\n value: function addY(y) {\n this.addPoint(null, y);\n }\n }, {\n key: \"addBoundingBox\",\n value: function addBoundingBox(boundingBox) {\n if (!boundingBox) {\n return;\n }\n\n var x1 = boundingBox.x1,\n y1 = boundingBox.y1,\n x2 = boundingBox.x2,\n y2 = boundingBox.y2;\n this.addPoint(x1, y1);\n this.addPoint(x2, y2);\n }\n }, {\n key: \"sumCubic\",\n value: function sumCubic(t, p0, p1, p2, p3) {\n return Math.pow(1 - t, 3) * p0 + 3 * Math.pow(1 - t, 2) * t * p1 + 3 * (1 - t) * Math.pow(t, 2) * p2 + Math.pow(t, 3) * p3;\n }\n }, {\n key: \"bezierCurveAdd\",\n value: function bezierCurveAdd(forX, p0, p1, p2, p3) {\n var b = 6 * p0 - 12 * p1 + 6 * p2;\n var a = -3 * p0 + 9 * p1 - 9 * p2 + 3 * p3;\n var c = 3 * p1 - 3 * p0;\n\n if (a === 0) {\n if (b === 0) {\n return;\n }\n\n var t = -c / b;\n\n if (0 < t && t < 1) {\n if (forX) {\n this.addX(this.sumCubic(t, p0, p1, p2, p3));\n } else {\n this.addY(this.sumCubic(t, p0, p1, p2, p3));\n }\n }\n\n return;\n }\n\n var b2ac = Math.pow(b, 2) - 4 * c * a;\n\n if (b2ac < 0) {\n return;\n }\n\n var t1 = (-b + Math.sqrt(b2ac)) / (2 * a);\n\n if (0 < t1 && t1 < 1) {\n if (forX) {\n this.addX(this.sumCubic(t1, p0, p1, p2, p3));\n } else {\n this.addY(this.sumCubic(t1, p0, p1, p2, p3));\n }\n }\n\n var t2 = (-b - Math.sqrt(b2ac)) / (2 * a);\n\n if (0 < t2 && t2 < 1) {\n if (forX) {\n this.addX(this.sumCubic(t2, p0, p1, p2, p3));\n } else {\n this.addY(this.sumCubic(t2, p0, p1, p2, p3));\n }\n }\n } // from http://blog.hackers-cafe.net/2009/06/how-to-calculate-bezier-curves-bounding.html\n\n }, {\n key: \"addBezierCurve\",\n value: function addBezierCurve(p0x, p0y, p1x, p1y, p2x, p2y, p3x, p3y) {\n this.addPoint(p0x, p0y);\n this.addPoint(p3x, p3y);\n this.bezierCurveAdd(true, p0x, p1x, p2x, p3x);\n this.bezierCurveAdd(false, p0y, p1y, p2y, p3y);\n }\n }, {\n key: \"addQuadraticCurve\",\n value: function addQuadraticCurve(p0x, p0y, p1x, p1y, p2x, p2y) {\n var cp1x = p0x + 2 / 3 * (p1x - p0x); // CP1 = QP0 + 2/3 *(QP1-QP0)\n\n var cp1y = p0y + 2 / 3 * (p1y - p0y); // CP1 = QP0 + 2/3 *(QP1-QP0)\n\n var cp2x = cp1x + 1 / 3 * (p2x - p0x); // CP2 = CP1 + 1/3 *(QP2-QP0)\n\n var cp2y = cp1y + 1 / 3 * (p2y - p0y); // CP2 = CP1 + 1/3 *(QP2-QP0)\n\n this.addBezierCurve(p0x, p0y, cp1x, cp2x, cp1y, cp2y, p2x, p2y);\n }\n }, {\n key: \"isPointInBox\",\n value: function isPointInBox(x, y) {\n var x1 = this.x1,\n y1 = this.y1,\n x2 = this.x2,\n y2 = this.y2;\n return x1 <= x && x <= x2 && y1 <= y && y <= y2;\n }\n }, {\n key: \"x\",\n get: function get() {\n return this.x1;\n }\n }, {\n key: \"y\",\n get: function get() {\n return this.y1;\n }\n }, {\n key: \"width\",\n get: function get() {\n return this.x2 - this.x1;\n }\n }, {\n key: \"height\",\n get: function get() {\n return this.y2 - this.y1;\n }\n }]);\n\n return BoundingBox;\n}();\n\nfunction _createSuper$4(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$4()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$4() { 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\nvar RenderedElement = /*#__PURE__*/function (_Element) {\n _inherits(RenderedElement, _Element);\n\n var _super = _createSuper$4(RenderedElement);\n\n function RenderedElement() {\n var _this;\n\n _classCallCheck(this, RenderedElement);\n\n _this = _super.apply(this, arguments);\n _this.modifiedEmSizeStack = false;\n return _this;\n }\n\n _createClass(RenderedElement, [{\n key: \"calculateOpacity\",\n value: function calculateOpacity() {\n var opacity = 1.0; // tslint:disable-next-line: no-this-assignment\n\n var element = this;\n\n while (element) {\n var opacityStyle = element.getStyle('opacity', false, true); // no ancestors on style call\n\n if (opacityStyle.hasValue()) {\n opacity *= opacityStyle.getNumber();\n }\n\n element = element.parent;\n }\n\n return opacity;\n }\n }, {\n key: \"setContext\",\n value: function setContext(ctx) {\n var fromMeasure = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n if (!fromMeasure) {\n // causes stack overflow when measuring text with gradients\n // fill\n var fillStyleProp = this.getStyle('fill');\n var fillOpacityStyleProp = this.getStyle('fill-opacity');\n var strokeStyleProp = this.getStyle('stroke');\n var strokeOpacityProp = this.getStyle('stroke-opacity');\n\n if (fillStyleProp.isUrlDefinition()) {\n var fillStyle = fillStyleProp.getFillStyleDefinition(this, fillOpacityStyleProp);\n\n if (fillStyle) {\n ctx.fillStyle = fillStyle;\n }\n } else if (fillStyleProp.hasValue()) {\n if (fillStyleProp.getString() === 'currentColor') {\n fillStyleProp.setValue(this.getStyle('color').getColor());\n }\n\n var _fillStyle = fillStyleProp.getColor();\n\n if (_fillStyle !== 'inherit') {\n ctx.fillStyle = _fillStyle === 'none' ? 'rgba(0,0,0,0)' : _fillStyle;\n }\n }\n\n if (fillOpacityStyleProp.hasValue()) {\n var _fillStyle2 = new Property(this.document, 'fill', ctx.fillStyle).addOpacity(fillOpacityStyleProp).getColor();\n\n ctx.fillStyle = _fillStyle2;\n } // stroke\n\n\n if (strokeStyleProp.isUrlDefinition()) {\n var strokeStyle = strokeStyleProp.getFillStyleDefinition(this, strokeOpacityProp);\n\n if (strokeStyle) {\n ctx.strokeStyle = strokeStyle;\n }\n } else if (strokeStyleProp.hasValue()) {\n if (strokeStyleProp.getString() === 'currentColor') {\n strokeStyleProp.setValue(this.getStyle('color').getColor());\n }\n\n var _strokeStyle = strokeStyleProp.getString();\n\n if (_strokeStyle !== 'inherit') {\n ctx.strokeStyle = _strokeStyle === 'none' ? 'rgba(0,0,0,0)' : _strokeStyle;\n }\n }\n\n if (strokeOpacityProp.hasValue()) {\n var _strokeStyle2 = new Property(this.document, 'stroke', ctx.strokeStyle).addOpacity(strokeOpacityProp).getString();\n\n ctx.strokeStyle = _strokeStyle2;\n }\n\n var strokeWidthStyleProp = this.getStyle('stroke-width');\n\n if (strokeWidthStyleProp.hasValue()) {\n var newLineWidth = strokeWidthStyleProp.getPixels();\n ctx.lineWidth = !newLineWidth ? PSEUDO_ZERO // browsers don't respect 0 (or node-canvas? :-)\n : newLineWidth;\n }\n\n var strokeLinecapStyleProp = this.getStyle('stroke-linecap');\n var strokeLinejoinStyleProp = this.getStyle('stroke-linejoin');\n var strokeMiterlimitProp = this.getStyle('stroke-miterlimit');\n var pointOrderStyleProp = this.getStyle('paint-order');\n var strokeDasharrayStyleProp = this.getStyle('stroke-dasharray');\n var strokeDashoffsetProp = this.getStyle('stroke-dashoffset');\n\n if (strokeLinecapStyleProp.hasValue()) {\n ctx.lineCap = strokeLinecapStyleProp.getString();\n }\n\n if (strokeLinejoinStyleProp.hasValue()) {\n ctx.lineJoin = strokeLinejoinStyleProp.getString();\n }\n\n if (strokeMiterlimitProp.hasValue()) {\n ctx.miterLimit = strokeMiterlimitProp.getNumber();\n }\n\n if (pointOrderStyleProp.hasValue()) {\n // ?\n ctx.paintOrder = pointOrderStyleProp.getValue();\n }\n\n if (strokeDasharrayStyleProp.hasValue() && strokeDasharrayStyleProp.getString() !== 'none') {\n var gaps = toNumbers(strokeDasharrayStyleProp.getString());\n\n if (typeof ctx.setLineDash !== 'undefined') {\n ctx.setLineDash(gaps);\n } else if (typeof ctx.webkitLineDash !== 'undefined') {\n ctx.webkitLineDash = gaps;\n } else if (typeof ctx.mozDash !== 'undefined' && !(gaps.length === 1 && gaps[0] === 0)) {\n ctx.mozDash = gaps;\n }\n\n var offset = strokeDashoffsetProp.getPixels();\n\n if (typeof ctx.lineDashOffset !== 'undefined') {\n ctx.lineDashOffset = offset;\n } else if (typeof ctx.webkitLineDashOffset !== 'undefined') {\n ctx.webkitLineDashOffset = offset;\n } else if (typeof ctx.mozDashOffset !== 'undefined') {\n ctx.mozDashOffset = offset;\n }\n }\n } // font\n\n\n this.modifiedEmSizeStack = false;\n\n if (typeof ctx.font !== 'undefined') {\n var fontStyleProp = this.getStyle('font');\n var fontStyleStyleProp = this.getStyle('font-style');\n var fontVariantStyleProp = this.getStyle('font-variant');\n var fontWeightStyleProp = this.getStyle('font-weight');\n var fontSizeStyleProp = this.getStyle('font-size');\n var fontFamilyStyleProp = this.getStyle('font-family');\n var font = new Font(fontStyleStyleProp.getString(), fontVariantStyleProp.getString(), fontWeightStyleProp.getString(), fontSizeStyleProp.hasValue() ? \"\".concat(fontSizeStyleProp.getPixels(true), \"px\") : '', fontFamilyStyleProp.getString(), Font.parse(fontStyleProp.getString(), ctx.font));\n fontStyleStyleProp.setValue(font.fontStyle);\n fontVariantStyleProp.setValue(font.fontVariant);\n fontWeightStyleProp.setValue(font.fontWeight);\n fontSizeStyleProp.setValue(font.fontSize);\n fontFamilyStyleProp.setValue(font.fontFamily);\n ctx.font = font.toString();\n\n if (fontSizeStyleProp.isPixels()) {\n this.document.emSize = fontSizeStyleProp.getPixels();\n this.modifiedEmSizeStack = true;\n }\n }\n\n if (!fromMeasure) {\n // effects\n this.applyEffects(ctx); // opacity\n\n ctx.globalAlpha = this.calculateOpacity();\n }\n }\n }, {\n key: \"clearContext\",\n value: function clearContext(ctx) {\n _get(_getPrototypeOf(RenderedElement.prototype), \"clearContext\", this).call(this, ctx);\n\n if (this.modifiedEmSizeStack) {\n this.document.popEmSize();\n }\n }\n }]);\n\n return RenderedElement;\n}(Element);\n\nfunction _createSuper$5(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$5()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$5() { 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\nvar TextElement = /*#__PURE__*/function (_RenderedElement) {\n _inherits(TextElement, _RenderedElement);\n\n var _super = _createSuper$5(TextElement);\n\n function TextElement(document, node, captureTextNodes) {\n var _this;\n\n _classCallCheck(this, TextElement);\n\n _this = _super.call(this, document, node, (this instanceof TextElement ? this.constructor : void 0) === TextElement ? true : captureTextNodes);\n _this.type = 'text';\n _this.x = 0;\n _this.y = 0;\n _this.measureCache = -1;\n return _this;\n }\n\n _createClass(TextElement, [{\n key: \"setContext\",\n value: function setContext(ctx) {\n var fromMeasure = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n _get(_getPrototypeOf(TextElement.prototype), \"setContext\", this).call(this, ctx, fromMeasure);\n\n var textBaseline = this.getStyle('dominant-baseline').getTextBaseline() || this.getStyle('alignment-baseline').getTextBaseline();\n\n if (textBaseline) {\n ctx.textBaseline = textBaseline;\n }\n }\n }, {\n key: \"initializeCoordinates\",\n value: function initializeCoordinates(ctx) {\n this.x = this.getAttribute('x').getPixels('x');\n this.y = this.getAttribute('y').getPixels('y');\n var dxAttr = this.getAttribute('dx');\n var dyAttr = this.getAttribute('dy');\n\n if (dxAttr.hasValue()) {\n this.x += dxAttr.getPixels('x');\n }\n\n if (dyAttr.hasValue()) {\n this.y += dyAttr.getPixels('y');\n }\n\n this.x += this.getAnchorDelta(ctx, this, 0);\n }\n }, {\n key: \"getBoundingBox\",\n value: function getBoundingBox(ctx) {\n var _this2 = this;\n\n if (this.type !== 'text') {\n return this.getTElementBoundingBox(ctx);\n }\n\n this.initializeCoordinates(ctx);\n var boundingBox = null;\n this.children.forEach(function (_, i) {\n var childBoundingBox = _this2.getChildBoundingBox(ctx, _this2, _this2, i);\n\n if (!boundingBox) {\n boundingBox = childBoundingBox;\n } else {\n boundingBox.addBoundingBox(childBoundingBox);\n }\n });\n return boundingBox;\n }\n }, {\n key: \"getFontSize\",\n value: function getFontSize() {\n var document = this.document,\n parent = this.parent;\n var inheritFontSize = Font.parse(document.ctx.font).fontSize;\n var fontSize = parent.getStyle('font-size').getNumber(inheritFontSize);\n return fontSize;\n }\n }, {\n key: \"getTElementBoundingBox\",\n value: function getTElementBoundingBox(ctx) {\n var fontSize = this.getFontSize();\n return new BoundingBox(this.x, this.y - fontSize, this.x + this.measureText(ctx), this.y);\n }\n }, {\n key: \"getGlyph\",\n value: function getGlyph(font, text, i) {\n var char = text[i];\n var glyph = null;\n\n if (font.isArabic) {\n var len = text.length;\n var prevChar = text[i - 1];\n var nextChar = text[i + 1];\n var arabicForm = 'isolated';\n\n if ((i === 0 || prevChar === ' ') && i < len - 2 && nextChar !== ' ') {\n arabicForm = 'terminal';\n }\n\n if (i > 0 && prevChar !== ' ' && i < len - 2 && nextChar !== ' ') {\n arabicForm = 'medial';\n }\n\n if (i > 0 && prevChar !== ' ' && (i === len - 1 || nextChar === ' ')) {\n arabicForm = 'initial';\n }\n\n if (typeof font.glyphs[char] !== 'undefined') {\n glyph = font.glyphs[char][arabicForm];\n\n if (!glyph && font.glyphs[char].type === 'glyph') {\n glyph = font.glyphs[char];\n }\n }\n } else {\n glyph = font.glyphs[char];\n }\n\n if (!glyph) {\n glyph = font.missingGlyph;\n }\n\n return glyph;\n }\n }, {\n key: \"getText\",\n value: function getText() {\n return '';\n }\n }, {\n key: \"getTextFromNode\",\n value: function getTextFromNode(node) {\n var textNode = node || this.node;\n var childNodes = Array.from(textNode.parentNode.childNodes);\n var index = childNodes.indexOf(textNode);\n var lastIndex = childNodes.length - 1;\n var text = compressSpaces(textNode.value || textNode.text || textNode.textContent || '');\n\n if (index === 0) {\n text = trimLeft(text);\n }\n\n if (index === lastIndex) {\n text = trimRight(text);\n }\n\n return text;\n }\n }, {\n key: \"renderChildren\",\n value: function renderChildren(ctx) {\n var _this3 = this;\n\n if (this.type !== 'text') {\n this.renderTElementChildren(ctx);\n return;\n }\n\n this.initializeCoordinates(ctx);\n this.children.forEach(function (_, i) {\n _this3.renderChild(ctx, _this3, _this3, i);\n });\n var mouse = this.document.screen.mouse; // Do not calc bounding box if mouse is not working.\n\n if (mouse.isWorking()) {\n mouse.checkBoundingBox(this, this.getBoundingBox(ctx));\n }\n }\n }, {\n key: \"renderTElementChildren\",\n value: function renderTElementChildren(ctx) {\n var document = this.document,\n parent = this.parent;\n var renderText = this.getText();\n var customFont = parent.getStyle('font-family').getDefinition();\n\n if (customFont) {\n var unitsPerEm = customFont.fontFace.unitsPerEm;\n var ctxFont = Font.parse(document.ctx.font);\n var fontSize = parent.getStyle('font-size').getNumber(ctxFont.fontSize);\n var fontStyle = parent.getStyle('font-style').getString(ctxFont.fontStyle);\n var scale = fontSize / unitsPerEm;\n var text = customFont.isRTL ? renderText.split('').reverse().join('') : renderText;\n var dx = toNumbers(parent.getAttribute('dx').getString());\n var len = text.length;\n\n for (var i = 0; i < len; i++) {\n var glyph = this.getGlyph(customFont, text, i);\n ctx.translate(this.x, this.y);\n ctx.scale(scale, -scale);\n var lw = ctx.lineWidth;\n ctx.lineWidth = ctx.lineWidth * unitsPerEm / fontSize;\n\n if (fontStyle === 'italic') {\n ctx.transform(1, 0, .4, 1, 0, 0);\n }\n\n glyph.render(ctx);\n\n if (fontStyle === 'italic') {\n ctx.transform(1, 0, -.4, 1, 0, 0);\n }\n\n ctx.lineWidth = lw;\n ctx.scale(1 / scale, -1 / scale);\n ctx.translate(-this.x, -this.y);\n this.x += fontSize * (glyph.horizAdvX || customFont.horizAdvX) / unitsPerEm;\n\n if (typeof dx[i] !== 'undefined' && !isNaN(dx[i])) {\n this.x += dx[i];\n }\n }\n\n return;\n }\n\n var x = this.x,\n y = this.y;\n\n if (ctx.paintOrder === 'stroke') {\n if (ctx.strokeStyle) {\n ctx.strokeText(renderText, x, y);\n }\n\n if (ctx.fillStyle) {\n ctx.fillText(renderText, x, y);\n }\n } else {\n if (ctx.fillStyle) {\n ctx.fillText(renderText, x, y);\n }\n\n if (ctx.strokeStyle) {\n ctx.strokeText(renderText, x, y);\n }\n }\n }\n }, {\n key: \"getAnchorDelta\",\n value: function getAnchorDelta(ctx, parent, startI) {\n var textAnchor = this.getStyle('text-anchor').getString('start');\n\n if (textAnchor !== 'start') {\n var children = parent.children;\n var len = children.length;\n var child = null;\n var width = 0;\n\n for (var i = startI; i < len; i++) {\n child = children[i];\n\n if (i > startI && child.getAttribute('x').hasValue() || child.getAttribute('text-anchor').hasValue()) {\n break; // new group\n }\n\n width += child.measureTextRecursive(ctx);\n }\n\n return -1 * (textAnchor === 'end' ? width : width / 2.0);\n }\n\n return 0;\n }\n }, {\n key: \"adjustChildCoordinates\",\n value: function adjustChildCoordinates(ctx, textParent, parent, i) {\n var child = parent.children[i];\n\n if (typeof child.measureText !== 'function') {\n return child;\n }\n\n ctx.save();\n child.setContext(ctx, true);\n var xAttr = child.getAttribute('x');\n var yAttr = child.getAttribute('y');\n var dxAttr = child.getAttribute('dx');\n var dyAttr = child.getAttribute('dy');\n var textAnchor = child.getAttribute('text-anchor').getString('start');\n\n if (i === 0 && child.type !== 'textNode') {\n if (!xAttr.hasValue()) {\n xAttr.setValue(textParent.getAttribute('x').getValue('0'));\n }\n\n if (!yAttr.hasValue()) {\n yAttr.setValue(textParent.getAttribute('y').getValue('0'));\n }\n\n if (!dxAttr.hasValue()) {\n dxAttr.setValue(textParent.getAttribute('dx').getValue('0'));\n }\n\n if (!dyAttr.hasValue()) {\n dyAttr.setValue(textParent.getAttribute('dy').getValue('0'));\n }\n }\n\n if (xAttr.hasValue()) {\n child.x = xAttr.getPixels('x') + textParent.getAnchorDelta(ctx, parent, i);\n\n if (textAnchor !== 'start') {\n var width = child.measureTextRecursive(ctx);\n child.x += -1 * (textAnchor === 'end' ? width : width / 2.0);\n }\n\n if (dxAttr.hasValue()) {\n child.x += dxAttr.getPixels('x');\n }\n } else {\n if (textAnchor !== 'start') {\n var _width = child.measureTextRecursive(ctx);\n\n textParent.x += -1 * (textAnchor === 'end' ? _width : _width / 2.0);\n }\n\n if (dxAttr.hasValue()) {\n textParent.x += dxAttr.getPixels('x');\n }\n\n child.x = textParent.x;\n }\n\n textParent.x = child.x + child.measureText(ctx);\n\n if (yAttr.hasValue()) {\n child.y = yAttr.getPixels('y');\n\n if (dyAttr.hasValue()) {\n child.y += dyAttr.getPixels('y');\n }\n } else {\n if (dyAttr.hasValue()) {\n textParent.y += dyAttr.getPixels('y');\n }\n\n child.y = textParent.y;\n }\n\n textParent.y = child.y;\n child.clearContext(ctx);\n ctx.restore();\n return child;\n }\n }, {\n key: \"getChildBoundingBox\",\n value: function getChildBoundingBox(ctx, textParent, parent, i) {\n var child = this.adjustChildCoordinates(ctx, textParent, parent, i);\n var boundingBox = child.getBoundingBox(ctx);\n\n if (!boundingBox) {\n return null;\n }\n\n child.children.forEach(function (_, i) {\n var childBoundingBox = textParent.getChildBoundingBox(ctx, textParent, child, i);\n boundingBox.addBoundingBox(childBoundingBox);\n });\n return boundingBox;\n }\n }, {\n key: \"renderChild\",\n value: function renderChild(ctx, textParent, parent, i) {\n var child = this.adjustChildCoordinates(ctx, textParent, parent, i);\n child.render(ctx);\n child.children.forEach(function (_, i) {\n textParent.renderChild(ctx, textParent, child, i);\n });\n }\n }, {\n key: \"measureTextRecursive\",\n value: function measureTextRecursive(ctx) {\n var width = this.children.reduce(function (width, child) {\n return width + child.measureTextRecursive(ctx);\n }, this.measureText(ctx));\n return width;\n }\n }, {\n key: \"measureText\",\n value: function measureText(ctx) {\n var measureCache = this.measureCache;\n\n if (~measureCache) {\n return measureCache;\n }\n\n var renderText = this.getText();\n var measure = this.measureTargetText(ctx, renderText);\n this.measureCache = measure;\n return measure;\n }\n }, {\n key: \"measureTargetText\",\n value: function measureTargetText(ctx, targetText) {\n if (!targetText.length) {\n return 0;\n }\n\n var parent = this.parent;\n var customFont = parent.getStyle('font-family').getDefinition();\n\n if (customFont) {\n var fontSize = this.getFontSize();\n var text = customFont.isRTL ? targetText.split('').reverse().join('') : targetText;\n var dx = toNumbers(parent.getAttribute('dx').getString());\n var len = text.length;\n var _measure = 0;\n\n for (var i = 0; i < len; i++) {\n var glyph = this.getGlyph(customFont, text, i);\n _measure += (glyph.horizAdvX || customFont.horizAdvX) * fontSize / customFont.fontFace.unitsPerEm;\n\n if (typeof dx[i] !== 'undefined' && !isNaN(dx[i])) {\n _measure += dx[i];\n }\n }\n\n return _measure;\n }\n\n if (!ctx.measureText) {\n return targetText.length * 10;\n }\n\n ctx.save();\n this.setContext(ctx, true);\n\n var _ctx$measureText = ctx.measureText(targetText),\n measure = _ctx$measureText.width;\n\n this.clearContext(ctx);\n ctx.restore();\n return measure;\n }\n }]);\n\n return TextElement;\n}(RenderedElement);\n\nfunction _createSuper$6(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$6()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$6() { 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\nvar TSpanElement = /*#__PURE__*/function (_TextElement) {\n _inherits(TSpanElement, _TextElement);\n\n var _super = _createSuper$6(TSpanElement);\n\n function TSpanElement(document, node, captureTextNodes) {\n var _this;\n\n _classCallCheck(this, TSpanElement);\n\n _this = _super.call(this, document, node, (this instanceof TSpanElement ? this.constructor : void 0) === TSpanElement ? true : captureTextNodes);\n _this.type = 'tspan'; // if this node has children, then they own the text\n\n _this.text = _this.children.length > 0 ? '' : _this.getTextFromNode();\n return _this;\n }\n\n _createClass(TSpanElement, [{\n key: \"getText\",\n value: function getText() {\n return this.text;\n }\n }]);\n\n return TSpanElement;\n}(TextElement);\n\nfunction _createSuper$7(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$7()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$7() { 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\nvar TextNode = /*#__PURE__*/function (_TSpanElement) {\n _inherits(TextNode, _TSpanElement);\n\n var _super = _createSuper$7(TextNode);\n\n function TextNode() {\n var _this;\n\n _classCallCheck(this, TextNode);\n\n _this = _super.apply(this, arguments);\n _this.type = 'textNode';\n return _this;\n }\n\n return TextNode;\n}(TSpanElement);\n\nfunction preparePath(path) {\n var d = path.replace(/,/gm, ' ') // get rid of all commas\n // As the end of a match can also be the start of the next match, we need to run this replace twice.\n .replace(/([MmZzLlHhVvCcSsQqTtAa])([^\\s])/gm, '$1 $2') // suffix commands with spaces\n .replace(/([MmZzLlHhVvCcSsQqTtAa])([^\\s])/gm, '$1 $2') // suffix commands with spaces\n .replace(/([^\\s])([MmZzLlHhVvCcSsQqTtAa])/gm, '$1 $2') // prefix commands with spaces\n .replace(/([0-9])([+\\-])/gm, '$1 $2') // separate digits on +- signs\n // Again, we need to run this twice to find all occurances\n .replace(/(\\.[0-9]*)(\\.)/gm, '$1 $2') // separate digits when they start with a comma\n .replace(/(\\.[0-9]*)(\\.)/gm, '$1 $2') // separate digits when they start with a comma\n .replace(/([Aa](?:\\s+(?:[0-9]*\\.)?[0-9]+){3})\\s+([01])\\s*([01])/gm, '$1 $2 $3 '); // shorthand elliptical arc path syntax\n\n return compressSpaces(d).trim();\n}\n\nvar PathParser = /*#__PURE__*/function () {\n function PathParser(path) {\n _classCallCheck(this, PathParser);\n\n this.control = null;\n this.start = null;\n this.current = null;\n this.command = '';\n this.tokens = [];\n this.i = -1;\n this.previousCommand = '';\n this.points = [];\n this.angles = [];\n this.tokens = preparePath(path).split(' ');\n }\n\n _createClass(PathParser, [{\n key: \"reset\",\n value: function reset() {\n this.i = -1;\n this.command = '';\n this.previousCommand = '';\n this.start = new Point(0, 0);\n this.control = new Point(0, 0);\n this.current = new Point(0, 0);\n this.points = [];\n this.angles = [];\n }\n }, {\n key: \"isEnd\",\n value: function isEnd() {\n var i = this.i,\n tokens = this.tokens;\n return i >= tokens.length - 1;\n }\n }, {\n key: \"isCommandOrEnd\",\n value: function isCommandOrEnd() {\n if (this.isEnd()) {\n return true;\n }\n\n var i = this.i,\n tokens = this.tokens;\n return /^[A-Za-z]$/.test(tokens[i + 1]);\n }\n }, {\n key: \"isRelativeCommand\",\n value: function isRelativeCommand() {\n switch (this.command) {\n case 'm':\n case 'l':\n case 'h':\n case 'v':\n case 'c':\n case 's':\n case 'q':\n case 't':\n case 'a':\n case 'z':\n return true;\n\n default:\n return false;\n }\n }\n }, {\n key: \"getToken\",\n value: function getToken() {\n this.i++;\n return this.tokens[this.i];\n }\n }, {\n key: \"getScalar\",\n value: function getScalar() {\n return parseFloat(this.getToken());\n }\n }, {\n key: \"nextCommand\",\n value: function nextCommand() {\n this.previousCommand = this.command;\n this.command = this.getToken();\n }\n }, {\n key: \"getPoint\",\n value: function getPoint() {\n var point = new Point(this.getScalar(), this.getScalar());\n return this.makeAbsolute(point);\n }\n }, {\n key: \"getAsControlPoint\",\n value: function getAsControlPoint() {\n var point = this.getPoint();\n this.control = point;\n return point;\n }\n }, {\n key: \"getAsCurrentPoint\",\n value: function getAsCurrentPoint() {\n var point = this.getPoint();\n this.current = point;\n return point;\n }\n }, {\n key: \"getReflectedControlPoint\",\n value: function getReflectedControlPoint() {\n var previousCommand = this.previousCommand.toLowerCase();\n\n if (previousCommand !== 'c' && previousCommand !== 's' && previousCommand !== 'q' && previousCommand !== 't') {\n return this.current;\n } // reflect point\n\n\n var _this$current = this.current,\n cx = _this$current.x,\n cy = _this$current.y,\n _this$control = this.control,\n ox = _this$control.x,\n oy = _this$control.y;\n var point = new Point(2 * cx - ox, 2 * cy - oy);\n return point;\n }\n }, {\n key: \"makeAbsolute\",\n value: function makeAbsolute(point) {\n if (this.isRelativeCommand()) {\n var _this$current2 = this.current,\n x = _this$current2.x,\n y = _this$current2.y;\n point.x += x;\n point.y += y;\n }\n\n return point;\n }\n }, {\n key: \"addMarker\",\n value: function addMarker(point, from, priorTo) {\n var points = this.points,\n angles = this.angles; // if the last angle isn't filled in because we didn't have this point yet ...\n\n if (priorTo && angles.length > 0 && !angles[angles.length - 1]) {\n angles[angles.length - 1] = points[points.length - 1].angleTo(priorTo);\n }\n\n this.addMarkerAngle(point, from ? from.angleTo(point) : null);\n }\n }, {\n key: \"addMarkerAngle\",\n value: function addMarkerAngle(point, angle) {\n this.points.push(point);\n this.angles.push(angle);\n }\n }, {\n key: \"getMarkerPoints\",\n value: function getMarkerPoints() {\n return this.points;\n }\n }, {\n key: \"getMarkerAngles\",\n value: function getMarkerAngles() {\n var angles = this.angles;\n var len = angles.length;\n\n for (var i = 0; i < len; i++) {\n if (!angles[i]) {\n for (var j = i + 1; j < len; j++) {\n if (angles[j]) {\n angles[i] = angles[j];\n break;\n }\n }\n }\n }\n\n return angles;\n }\n }]);\n\n return PathParser;\n}();\n\nfunction _createSuper$8(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$8()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$8() { 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\nvar PathElement = /*#__PURE__*/function (_RenderedElement) {\n _inherits(PathElement, _RenderedElement);\n\n var _super = _createSuper$8(PathElement);\n\n function PathElement(document, node, captureTextNodes) {\n var _this;\n\n _classCallCheck(this, PathElement);\n\n _this = _super.call(this, document, node, captureTextNodes);\n _this.type = 'path';\n _this.pathParser = null;\n _this.pathParser = new PathParser(_this.getAttribute('d').getString());\n return _this;\n }\n\n _createClass(PathElement, [{\n key: \"path\",\n value: function path(ctx) {\n var pathParser = this.pathParser;\n var boundingBox = new BoundingBox();\n pathParser.reset();\n\n if (ctx) {\n ctx.beginPath();\n }\n\n while (!pathParser.isEnd()) {\n pathParser.nextCommand();\n\n switch (pathParser.command) {\n case 'M':\n case 'm':\n this.pathM(ctx, boundingBox);\n break;\n\n case 'L':\n case 'l':\n this.pathL(ctx, boundingBox);\n break;\n\n case 'H':\n case 'h':\n this.pathH(ctx, boundingBox);\n break;\n\n case 'V':\n case 'v':\n this.pathV(ctx, boundingBox);\n break;\n\n case 'C':\n case 'c':\n this.pathC(ctx, boundingBox);\n break;\n\n case 'S':\n case 's':\n this.pathS(ctx, boundingBox);\n break;\n\n case 'Q':\n case 'q':\n this.pathQ(ctx, boundingBox);\n break;\n\n case 'T':\n case 't':\n this.pathT(ctx, boundingBox);\n break;\n\n case 'A':\n case 'a':\n this.pathA(ctx, boundingBox);\n break;\n\n case 'Z':\n case 'z':\n this.pathZ(ctx, boundingBox);\n break;\n }\n }\n\n return boundingBox;\n }\n }, {\n key: \"getBoundingBox\",\n value: function getBoundingBox(_) {\n return this.path();\n }\n }, {\n key: \"getMarkers\",\n value: function getMarkers() {\n var pathParser = this.pathParser;\n var points = pathParser.getMarkerPoints();\n var angles = pathParser.getMarkerAngles();\n var markers = points.map(function (point, i) {\n return [point, angles[i]];\n });\n return markers;\n }\n }, {\n key: \"renderChildren\",\n value: function renderChildren(ctx) {\n this.path(ctx);\n this.document.screen.mouse.checkPath(this, ctx);\n var fillRuleStyleProp = this.getStyle('fill-rule');\n\n if (ctx.fillStyle !== '') {\n if (fillRuleStyleProp.getString('inherit') !== 'inherit') {\n ctx.fill(fillRuleStyleProp.getString());\n } else {\n ctx.fill();\n }\n }\n\n if (ctx.strokeStyle !== '') {\n ctx.stroke();\n }\n\n var markers = this.getMarkers();\n\n if (markers) {\n var markersLastIndex = markers.length - 1;\n var markerStartStyleProp = this.getStyle('marker-start');\n var markerMidStyleProp = this.getStyle('marker-mid');\n var markerEndStyleProp = this.getStyle('marker-end');\n\n if (markerStartStyleProp.isUrlDefinition()) {\n var marker = markerStartStyleProp.getDefinition();\n\n var _markers$ = _slicedToArray(markers[0], 2),\n point = _markers$[0],\n angle = _markers$[1];\n\n marker.render(ctx, point, angle);\n }\n\n if (markerMidStyleProp.isUrlDefinition()) {\n var _marker = markerMidStyleProp.getDefinition();\n\n for (var i = 1; i < markersLastIndex; i++) {\n var _markers$i = _slicedToArray(markers[i], 2),\n _point = _markers$i[0],\n _angle = _markers$i[1];\n\n _marker.render(ctx, _point, _angle);\n }\n }\n\n if (markerEndStyleProp.isUrlDefinition()) {\n var _marker2 = markerEndStyleProp.getDefinition();\n\n var _markers$markersLastI = _slicedToArray(markers[markersLastIndex], 2),\n _point2 = _markers$markersLastI[0],\n _angle2 = _markers$markersLastI[1];\n\n _marker2.render(ctx, _point2, _angle2);\n }\n }\n }\n }, {\n key: \"pathM\",\n value: function pathM(ctx, boundingBox) {\n var pathParser = this.pathParser;\n var point = pathParser.getAsCurrentPoint();\n var x = point.x,\n y = point.y;\n pathParser.addMarker(point);\n boundingBox.addPoint(x, y);\n\n if (ctx) {\n ctx.moveTo(x, y);\n }\n\n pathParser.start = pathParser.current;\n\n while (!pathParser.isCommandOrEnd()) {\n var _point3 = pathParser.getAsCurrentPoint();\n\n var _x = _point3.x,\n _y = _point3.y;\n pathParser.addMarker(_point3, pathParser.start);\n boundingBox.addPoint(_x, _y);\n\n if (ctx) {\n ctx.lineTo(_x, _y);\n }\n }\n }\n }, {\n key: \"pathL\",\n value: function pathL(ctx, boundingBox) {\n var pathParser = this.pathParser;\n\n while (!pathParser.isCommandOrEnd()) {\n var current = pathParser.current;\n var point = pathParser.getAsCurrentPoint();\n var x = point.x,\n y = point.y;\n pathParser.addMarker(point, current);\n boundingBox.addPoint(x, y);\n\n if (ctx) {\n ctx.lineTo(x, y);\n }\n }\n }\n }, {\n key: \"pathH\",\n value: function pathH(ctx, boundingBox) {\n var pathParser = this.pathParser;\n\n while (!pathParser.isCommandOrEnd()) {\n var current = pathParser.current;\n var point = new Point((pathParser.isRelativeCommand() ? current.x : 0) + pathParser.getScalar(), current.y);\n pathParser.addMarker(point, current);\n pathParser.current = point;\n boundingBox.addPoint(point.x, point.y);\n\n if (ctx) {\n ctx.lineTo(point.x, point.y);\n }\n }\n }\n }, {\n key: \"pathV\",\n value: function pathV(ctx, boundingBox) {\n var pathParser = this.pathParser;\n\n while (!pathParser.isCommandOrEnd()) {\n var current = pathParser.current;\n var point = new Point(current.x, (pathParser.isRelativeCommand() ? current.y : 0) + pathParser.getScalar());\n pathParser.addMarker(point, current);\n pathParser.current = point;\n boundingBox.addPoint(point.x, point.y);\n\n if (ctx) {\n ctx.lineTo(point.x, point.y);\n }\n }\n }\n }, {\n key: \"pathC\",\n value: function pathC(ctx, boundingBox) {\n var pathParser = this.pathParser;\n\n while (!pathParser.isCommandOrEnd()) {\n var current = pathParser.current;\n var point = pathParser.getPoint();\n var controlPoint = pathParser.getAsControlPoint();\n var currentPoint = pathParser.getAsCurrentPoint();\n pathParser.addMarker(currentPoint, controlPoint, point);\n boundingBox.addBezierCurve(current.x, current.y, point.x, point.y, controlPoint.x, controlPoint.y, currentPoint.x, currentPoint.y);\n\n if (ctx) {\n ctx.bezierCurveTo(point.x, point.y, controlPoint.x, controlPoint.y, currentPoint.x, currentPoint.y);\n }\n }\n }\n }, {\n key: \"pathS\",\n value: function pathS(ctx, boundingBox) {\n var pathParser = this.pathParser;\n\n while (!pathParser.isCommandOrEnd()) {\n var current = pathParser.current;\n var point = pathParser.getReflectedControlPoint();\n var controlPoint = pathParser.getAsControlPoint();\n var currentPoint = pathParser.getAsCurrentPoint();\n pathParser.addMarker(currentPoint, controlPoint, point);\n boundingBox.addBezierCurve(current.x, current.y, point.x, point.y, controlPoint.x, controlPoint.y, currentPoint.x, currentPoint.y);\n\n if (ctx) {\n ctx.bezierCurveTo(point.x, point.y, controlPoint.x, controlPoint.y, currentPoint.x, currentPoint.y);\n }\n }\n }\n }, {\n key: \"pathQ\",\n value: function pathQ(ctx, boundingBox) {\n var pathParser = this.pathParser;\n\n while (!pathParser.isCommandOrEnd()) {\n var current = pathParser.current;\n var controlPoint = pathParser.getAsControlPoint();\n var currentPoint = pathParser.getAsCurrentPoint();\n pathParser.addMarker(currentPoint, controlPoint, controlPoint);\n boundingBox.addQuadraticCurve(current.x, current.y, controlPoint.x, controlPoint.y, currentPoint.x, currentPoint.y);\n\n if (ctx) {\n ctx.quadraticCurveTo(controlPoint.x, controlPoint.y, currentPoint.x, currentPoint.y);\n }\n }\n }\n }, {\n key: \"pathT\",\n value: function pathT(ctx, boundingBox) {\n var pathParser = this.pathParser;\n\n while (!pathParser.isCommandOrEnd()) {\n var current = pathParser.current;\n var controlPoint = pathParser.getReflectedControlPoint();\n pathParser.control = controlPoint;\n var currentPoint = pathParser.getAsCurrentPoint();\n pathParser.addMarker(currentPoint, controlPoint, controlPoint);\n boundingBox.addQuadraticCurve(current.x, current.y, controlPoint.x, controlPoint.y, currentPoint.x, currentPoint.y);\n\n if (ctx) {\n ctx.quadraticCurveTo(controlPoint.x, controlPoint.y, currentPoint.x, currentPoint.y);\n }\n }\n }\n }, {\n key: \"pathA\",\n value: function pathA(ctx, boundingBox) {\n var pathParser = this.pathParser;\n\n while (!pathParser.isCommandOrEnd()) {\n var current = pathParser.current;\n var rx = pathParser.getScalar();\n var ry = pathParser.getScalar();\n var xAxisRotation = pathParser.getScalar() * (Math.PI / 180.0);\n var largeArcFlag = pathParser.getScalar();\n var sweepFlag = pathParser.getScalar();\n var currentPoint = pathParser.getAsCurrentPoint(); // Conversion from endpoint to center parameterization\n // http://www.w3.org/TR/SVG11/implnote.html#ArcImplementationNotes\n // x1', y1'\n\n var currp = new Point(Math.cos(xAxisRotation) * (current.x - currentPoint.x) / 2.0 + Math.sin(xAxisRotation) * (current.y - currentPoint.y) / 2.0, -Math.sin(xAxisRotation) * (current.x - currentPoint.x) / 2.0 + Math.cos(xAxisRotation) * (current.y - currentPoint.y) / 2.0); // adjust radii\n\n var l = Math.pow(currp.x, 2) / Math.pow(rx, 2) + Math.pow(currp.y, 2) / Math.pow(ry, 2);\n\n if (l > 1) {\n rx *= Math.sqrt(l);\n ry *= Math.sqrt(l);\n } // cx', cy'\n\n\n var s = (largeArcFlag === sweepFlag ? -1 : 1) * Math.sqrt((Math.pow(rx, 2) * Math.pow(ry, 2) - Math.pow(rx, 2) * Math.pow(currp.y, 2) - Math.pow(ry, 2) * Math.pow(currp.x, 2)) / (Math.pow(rx, 2) * Math.pow(currp.y, 2) + Math.pow(ry, 2) * Math.pow(currp.x, 2)));\n\n if (isNaN(s)) {\n s = 0;\n }\n\n var cpp = new Point(s * rx * currp.y / ry, s * -ry * currp.x / rx); // cx, cy\n\n var centp = new Point((current.x + currentPoint.x) / 2.0 + Math.cos(xAxisRotation) * cpp.x - Math.sin(xAxisRotation) * cpp.y, (current.y + currentPoint.y) / 2.0 + Math.sin(xAxisRotation) * cpp.x + Math.cos(xAxisRotation) * cpp.y); // initial angle\n\n var a1 = vectorsAngle([1, 0], [(currp.x - cpp.x) / rx, (currp.y - cpp.y) / ry]); // angle delta\n\n var u = [(currp.x - cpp.x) / rx, (currp.y - cpp.y) / ry];\n var v = [(-currp.x - cpp.x) / rx, (-currp.y - cpp.y) / ry];\n var ad = vectorsAngle(u, v);\n\n if (vectorsRatio(u, v) <= -1) {\n ad = Math.PI;\n }\n\n if (vectorsRatio(u, v) >= 1) {\n ad = 0;\n } // for markers\n\n\n var dir = 1 - sweepFlag ? 1.0 : -1.0;\n var ah = a1 + dir * (ad / 2.0);\n var halfWay = new Point(centp.x + rx * Math.cos(ah), centp.y + ry * Math.sin(ah));\n pathParser.addMarkerAngle(halfWay, ah - dir * Math.PI / 2);\n pathParser.addMarkerAngle(currentPoint, ah - dir * Math.PI);\n boundingBox.addPoint(currentPoint.x, currentPoint.y); // TODO: this is too naive, make it better\n\n if (ctx && !isNaN(a1) && !isNaN(ad)) {\n var r = rx > ry ? rx : ry;\n var sx = rx > ry ? 1 : rx / ry;\n var sy = rx > ry ? ry / rx : 1;\n ctx.translate(centp.x, centp.y);\n ctx.rotate(xAxisRotation);\n ctx.scale(sx, sy);\n ctx.arc(0, 0, r, a1, a1 + ad, Boolean(1 - sweepFlag));\n ctx.scale(1 / sx, 1 / sy);\n ctx.rotate(-xAxisRotation);\n ctx.translate(-centp.x, -centp.y);\n }\n }\n }\n }, {\n key: \"pathZ\",\n value: function pathZ(ctx, boundingBox) {\n var pathParser = this.pathParser;\n\n if (ctx) {\n // only close path if it is not a straight line\n if (boundingBox.x1 !== boundingBox.x2 && boundingBox.y1 !== boundingBox.y2) {\n ctx.closePath();\n }\n }\n\n pathParser.current = pathParser.start;\n }\n }]);\n\n return PathElement;\n}(RenderedElement);\n\nfunction _createSuper$9(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$9()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$9() { 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\nvar SVGElement = /*#__PURE__*/function (_RenderedElement) {\n _inherits(SVGElement, _RenderedElement);\n\n var _super = _createSuper$9(SVGElement);\n\n function SVGElement() {\n var _this;\n\n _classCallCheck(this, SVGElement);\n\n _this = _super.apply(this, arguments);\n _this.type = 'svg';\n _this.root = false;\n return _this;\n }\n\n _createClass(SVGElement, [{\n key: \"clearContext\",\n value: function clearContext(ctx) {\n _get(_getPrototypeOf(SVGElement.prototype), \"clearContext\", this).call(this, ctx);\n\n this.document.screen.viewPort.removeCurrent();\n }\n }, {\n key: \"setContext\",\n value: function setContext(ctx) {\n var document = this.document;\n var screen = document.screen,\n window = document.window;\n var canvas = ctx.canvas;\n screen.setDefaults(ctx);\n\n if (canvas.style && typeof ctx.font !== 'undefined' && window && typeof window.getComputedStyle !== 'undefined') {\n ctx.font = window.getComputedStyle(canvas).getPropertyValue('font');\n var fontSizeProp = new Property(document, 'fontSize', Font.parse(ctx.font).fontSize);\n\n if (fontSizeProp.hasValue()) {\n document.rootEmSize = fontSizeProp.getPixels('y');\n document.emSize = document.rootEmSize;\n }\n }\n\n _get(_getPrototypeOf(SVGElement.prototype), \"setContext\", this).call(this, ctx); // create new view port\n\n\n if (!this.getAttribute('x').hasValue()) {\n this.getAttribute('x', true).setValue(0);\n }\n\n if (!this.getAttribute('y').hasValue()) {\n this.getAttribute('y', true).setValue(0);\n }\n\n ctx.translate(this.getAttribute('x').getPixels('x'), this.getAttribute('y').getPixels('y'));\n var _screen$viewPort = screen.viewPort,\n width = _screen$viewPort.width,\n height = _screen$viewPort.height;\n\n if (!this.getStyle('width').hasValue()) {\n this.getStyle('width', true).setValue('100%');\n }\n\n if (!this.getStyle('height').hasValue()) {\n this.getStyle('height', true).setValue('100%');\n }\n\n if (!this.getStyle('color').hasValue()) {\n this.getStyle('color', true).setValue('black');\n }\n\n var refXAttr = this.getAttribute('refX');\n var refYAttr = this.getAttribute('refY');\n var viewBoxAttr = this.getAttribute('viewBox');\n var viewBox = viewBoxAttr.hasValue() ? toNumbers(viewBoxAttr.getString()) : null;\n var clip = !this.root && this.getAttribute('overflow').getValue('hidden') !== 'visible';\n var minX = 0;\n var minY = 0;\n var clipX = 0;\n var clipY = 0;\n\n if (viewBox) {\n minX = viewBox[0];\n minY = viewBox[1];\n }\n\n if (!this.root) {\n width = this.getStyle('width').getPixels('x');\n height = this.getStyle('height').getPixels('y');\n\n if (this.type === 'marker') {\n clipX = minX;\n clipY = minY;\n minX = 0;\n minY = 0;\n }\n }\n\n screen.viewPort.setCurrent(width, height);\n\n if (viewBox) {\n width = viewBox[2];\n height = viewBox[3];\n }\n\n document.setViewBox({\n ctx: ctx,\n aspectRatio: this.getAttribute('preserveAspectRatio').getString(),\n width: screen.viewPort.width,\n desiredWidth: width,\n height: screen.viewPort.height,\n desiredHeight: height,\n minX: minX,\n minY: minY,\n refX: refXAttr.getValue(),\n refY: refYAttr.getValue(),\n clip: clip,\n clipX: clipX,\n clipY: clipY\n });\n\n if (viewBox) {\n screen.viewPort.removeCurrent();\n screen.viewPort.setCurrent(width, height);\n }\n }\n /**\r\n * Resize SVG to fit in given size.\r\n * @param width\r\n * @param height\r\n * @param preserveAspectRatio\r\n */\n\n }, {\n key: \"resize\",\n value: function resize(width) {\n var height = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : width;\n var preserveAspectRatio = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n var widthAttr = this.getAttribute('width', true);\n var heightAttr = this.getAttribute('height', true);\n var viewBoxAttr = this.getAttribute('viewBox');\n var styleAttr = this.getAttribute('style');\n var originWidth = widthAttr.getNumber(0);\n var originHeight = heightAttr.getNumber(0);\n\n if (preserveAspectRatio) {\n if (typeof preserveAspectRatio === 'string') {\n this.getAttribute('preserveAspectRatio', true).setValue(preserveAspectRatio);\n } else {\n var preserveAspectRatioAttr = this.getAttribute('preserveAspectRatio');\n\n if (preserveAspectRatioAttr.hasValue()) {\n preserveAspectRatioAttr.setValue(preserveAspectRatioAttr.getString().replace(/^\\s*(\\S.*\\S)\\s*$/, '$1'));\n }\n }\n }\n\n widthAttr.setValue(width);\n heightAttr.setValue(height);\n\n if (!viewBoxAttr.hasValue()) {\n viewBoxAttr.setValue(\"0 0 \".concat(originWidth || width, \" \").concat(originHeight || height));\n }\n\n if (styleAttr.hasValue()) {\n var widthStyle = this.getStyle('width');\n var heightStyle = this.getStyle('height');\n\n if (widthStyle.hasValue()) {\n widthStyle.setValue(\"\".concat(width, \"px\"));\n }\n\n if (heightStyle.hasValue()) {\n heightStyle.setValue(\"\".concat(height, \"px\"));\n }\n }\n }\n }]);\n\n return SVGElement;\n}(RenderedElement);\n\nfunction _createSuper$a(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$a()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$a() { 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\nvar RectElement = /*#__PURE__*/function (_PathElement) {\n _inherits(RectElement, _PathElement);\n\n var _super = _createSuper$a(RectElement);\n\n function RectElement() {\n var _this;\n\n _classCallCheck(this, RectElement);\n\n _this = _super.apply(this, arguments);\n _this.type = 'rect';\n return _this;\n }\n\n _createClass(RectElement, [{\n key: \"path\",\n value: function path(ctx) {\n var x = this.getAttribute('x').getPixels('x');\n var y = this.getAttribute('y').getPixels('y');\n var width = this.getStyle('width').getPixels('x');\n var height = this.getStyle('height').getPixels('y');\n var rxAttr = this.getAttribute('rx');\n var ryAttr = this.getAttribute('ry');\n var rx = rxAttr.getPixels('x');\n var ry = ryAttr.getPixels('y');\n\n if (rxAttr.hasValue() && !ryAttr.hasValue()) {\n ry = rx;\n }\n\n if (ryAttr.hasValue() && !rxAttr.hasValue()) {\n rx = ry;\n }\n\n rx = Math.min(rx, width / 2.0);\n ry = Math.min(ry, height / 2.0);\n\n if (ctx) {\n var KAPPA = 4 * ((Math.sqrt(2) - 1) / 3);\n ctx.beginPath(); // always start the path so we don't fill prior paths\n\n if (height > 0 && width > 0) {\n ctx.moveTo(x + rx, y);\n ctx.lineTo(x + width - rx, y);\n ctx.bezierCurveTo(x + width - rx + KAPPA * rx, y, x + width, y + ry - KAPPA * ry, x + width, y + ry);\n ctx.lineTo(x + width, y + height - ry);\n ctx.bezierCurveTo(x + width, y + height - ry + KAPPA * ry, x + width - rx + KAPPA * rx, y + height, x + width - rx, y + height);\n ctx.lineTo(x + rx, y + height);\n ctx.bezierCurveTo(x + rx - KAPPA * rx, y + height, x, y + height - ry + KAPPA * ry, x, y + height - ry);\n ctx.lineTo(x, y + ry);\n ctx.bezierCurveTo(x, y + ry - KAPPA * ry, x + rx - KAPPA * rx, y, x + rx, y);\n ctx.closePath();\n }\n }\n\n return new BoundingBox(x, y, x + width, y + height);\n }\n }, {\n key: \"getMarkers\",\n value: function getMarkers() {\n return null;\n }\n }]);\n\n return RectElement;\n}(PathElement);\n\nfunction _createSuper$b(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$b()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$b() { 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\nvar CircleElement = /*#__PURE__*/function (_PathElement) {\n _inherits(CircleElement, _PathElement);\n\n var _super = _createSuper$b(CircleElement);\n\n function CircleElement() {\n var _this;\n\n _classCallCheck(this, CircleElement);\n\n _this = _super.apply(this, arguments);\n _this.type = 'circle';\n return _this;\n }\n\n _createClass(CircleElement, [{\n key: \"path\",\n value: function path(ctx) {\n var cx = this.getAttribute('cx').getPixels('x');\n var cy = this.getAttribute('cy').getPixels('y');\n var r = this.getAttribute('r').getPixels();\n\n if (ctx && r > 0) {\n ctx.beginPath();\n ctx.arc(cx, cy, r, 0, Math.PI * 2, false);\n ctx.closePath();\n }\n\n return new BoundingBox(cx - r, cy - r, cx + r, cy + r);\n }\n }, {\n key: \"getMarkers\",\n value: function getMarkers() {\n return null;\n }\n }]);\n\n return CircleElement;\n}(PathElement);\n\nfunction _createSuper$c(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$c()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$c() { 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\nvar EllipseElement = /*#__PURE__*/function (_PathElement) {\n _inherits(EllipseElement, _PathElement);\n\n var _super = _createSuper$c(EllipseElement);\n\n function EllipseElement() {\n var _this;\n\n _classCallCheck(this, EllipseElement);\n\n _this = _super.apply(this, arguments);\n _this.type = 'ellipse';\n return _this;\n }\n\n _createClass(EllipseElement, [{\n key: \"path\",\n value: function path(ctx) {\n var KAPPA = 4 * ((Math.sqrt(2) - 1) / 3);\n var rx = this.getAttribute('rx').getPixels('x');\n var ry = this.getAttribute('ry').getPixels('y');\n var cx = this.getAttribute('cx').getPixels('x');\n var cy = this.getAttribute('cy').getPixels('y');\n\n if (ctx && rx > 0 && ry > 0) {\n ctx.beginPath();\n ctx.moveTo(cx + rx, cy);\n ctx.bezierCurveTo(cx + rx, cy + KAPPA * ry, cx + KAPPA * rx, cy + ry, cx, cy + ry);\n ctx.bezierCurveTo(cx - KAPPA * rx, cy + ry, cx - rx, cy + KAPPA * ry, cx - rx, cy);\n ctx.bezierCurveTo(cx - rx, cy - KAPPA * ry, cx - KAPPA * rx, cy - ry, cx, cy - ry);\n ctx.bezierCurveTo(cx + KAPPA * rx, cy - ry, cx + rx, cy - KAPPA * ry, cx + rx, cy);\n ctx.closePath();\n }\n\n return new BoundingBox(cx - rx, cy - ry, cx + rx, cy + ry);\n }\n }, {\n key: \"getMarkers\",\n value: function getMarkers() {\n return null;\n }\n }]);\n\n return EllipseElement;\n}(PathElement);\n\nfunction _createSuper$d(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$d()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$d() { 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\nvar LineElement = /*#__PURE__*/function (_PathElement) {\n _inherits(LineElement, _PathElement);\n\n var _super = _createSuper$d(LineElement);\n\n function LineElement() {\n var _this;\n\n _classCallCheck(this, LineElement);\n\n _this = _super.apply(this, arguments);\n _this.type = 'line';\n return _this;\n }\n\n _createClass(LineElement, [{\n key: \"getPoints\",\n value: function getPoints() {\n return [new Point(this.getAttribute('x1').getPixels('x'), this.getAttribute('y1').getPixels('y')), new Point(this.getAttribute('x2').getPixels('x'), this.getAttribute('y2').getPixels('y'))];\n }\n }, {\n key: \"path\",\n value: function path(ctx) {\n var _this$getPoints = this.getPoints(),\n _this$getPoints2 = _slicedToArray(_this$getPoints, 2),\n _this$getPoints2$ = _this$getPoints2[0],\n x0 = _this$getPoints2$.x,\n y0 = _this$getPoints2$.y,\n _this$getPoints2$2 = _this$getPoints2[1],\n x1 = _this$getPoints2$2.x,\n y1 = _this$getPoints2$2.y;\n\n if (ctx) {\n ctx.beginPath();\n ctx.moveTo(x0, y0);\n ctx.lineTo(x1, y1);\n }\n\n return new BoundingBox(x0, y0, x1, y1);\n }\n }, {\n key: \"getMarkers\",\n value: function getMarkers() {\n var _this$getPoints3 = this.getPoints(),\n _this$getPoints4 = _slicedToArray(_this$getPoints3, 2),\n p0 = _this$getPoints4[0],\n p1 = _this$getPoints4[1];\n\n var a = p0.angleTo(p1);\n return [[p0, a], [p1, a]];\n }\n }]);\n\n return LineElement;\n}(PathElement);\n\nfunction _createSuper$e(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$e()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$e() { 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\nvar PolylineElement = /*#__PURE__*/function (_PathElement) {\n _inherits(PolylineElement, _PathElement);\n\n var _super = _createSuper$e(PolylineElement);\n\n function PolylineElement(document, node, captureTextNodes) {\n var _this;\n\n _classCallCheck(this, PolylineElement);\n\n _this = _super.call(this, document, node, captureTextNodes);\n _this.type = 'polyline';\n _this.points = [];\n _this.points = Point.parsePath(_this.getAttribute('points').getString());\n return _this;\n }\n\n _createClass(PolylineElement, [{\n key: \"path\",\n value: function path(ctx) {\n var points = this.points;\n\n var _points = _slicedToArray(points, 1),\n _points$ = _points[0],\n x0 = _points$.x,\n y0 = _points$.y;\n\n var boundingBox = new BoundingBox(x0, y0);\n\n if (ctx) {\n ctx.beginPath();\n ctx.moveTo(x0, y0);\n }\n\n points.forEach(function (_ref) {\n var x = _ref.x,\n y = _ref.y;\n boundingBox.addPoint(x, y);\n\n if (ctx) {\n ctx.lineTo(x, y);\n }\n });\n return boundingBox;\n }\n }, {\n key: \"getMarkers\",\n value: function getMarkers() {\n var points = this.points;\n var lastIndex = points.length - 1;\n var markers = [];\n points.forEach(function (point, i) {\n if (i === lastIndex) {\n return;\n }\n\n markers.push([point, point.angleTo(points[i + 1])]);\n });\n\n if (markers.length > 0) {\n markers.push([points[points.length - 1], markers[markers.length - 1][1]]);\n }\n\n return markers;\n }\n }]);\n\n return PolylineElement;\n}(PathElement);\n\nfunction _createSuper$f(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$f()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$f() { 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\nvar PolygonElement = /*#__PURE__*/function (_PolylineElement) {\n _inherits(PolygonElement, _PolylineElement);\n\n var _super = _createSuper$f(PolygonElement);\n\n function PolygonElement() {\n var _this;\n\n _classCallCheck(this, PolygonElement);\n\n _this = _super.apply(this, arguments);\n _this.type = 'polygon';\n return _this;\n }\n\n _createClass(PolygonElement, [{\n key: \"path\",\n value: function path(ctx) {\n var boundingBox = _get(_getPrototypeOf(PolygonElement.prototype), \"path\", this).call(this, ctx);\n\n var _this$points = _slicedToArray(this.points, 1),\n _this$points$ = _this$points[0],\n x = _this$points$.x,\n y = _this$points$.y;\n\n if (ctx) {\n ctx.lineTo(x, y);\n ctx.closePath();\n }\n\n return boundingBox;\n }\n }]);\n\n return PolygonElement;\n}(PolylineElement);\n\nfunction _createSuper$g(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$g()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$g() { 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\nvar PatternElement = /*#__PURE__*/function (_Element) {\n _inherits(PatternElement, _Element);\n\n var _super = _createSuper$g(PatternElement);\n\n function PatternElement() {\n var _this;\n\n _classCallCheck(this, PatternElement);\n\n _this = _super.apply(this, arguments);\n _this.type = 'pattern';\n return _this;\n }\n\n _createClass(PatternElement, [{\n key: \"createPattern\",\n value: function createPattern(ctx, _, parentOpacityProp) {\n var width = this.getStyle('width').getPixels('x', true);\n var height = this.getStyle('height').getPixels('y', true); // render me using a temporary svg element\n\n var patternSvg = new SVGElement(this.document, null);\n patternSvg.attributes.viewBox = new Property(this.document, 'viewBox', this.getAttribute('viewBox').getValue());\n patternSvg.attributes.width = new Property(this.document, 'width', \"\".concat(width, \"px\"));\n patternSvg.attributes.height = new Property(this.document, 'height', \"\".concat(height, \"px\"));\n patternSvg.attributes.transform = new Property(this.document, 'transform', this.getAttribute('patternTransform').getValue());\n patternSvg.children = this.children;\n var patternCanvas = this.document.createCanvas(width, height);\n var patternCtx = patternCanvas.getContext('2d');\n var xAttr = this.getAttribute('x');\n var yAttr = this.getAttribute('y');\n\n if (xAttr.hasValue() && yAttr.hasValue()) {\n patternCtx.translate(xAttr.getPixels('x', true), yAttr.getPixels('y', true));\n }\n\n if (parentOpacityProp.hasValue()) {\n this.styles['fill-opacity'] = parentOpacityProp;\n } else {\n Reflect.deleteProperty(this.styles, 'fill-opacity');\n } // render 3x3 grid so when we transform there's no white space on edges\n\n\n for (var x = -1; x <= 1; x++) {\n for (var y = -1; y <= 1; y++) {\n patternCtx.save();\n patternSvg.attributes.x = new Property(this.document, 'x', x * patternCanvas.width);\n patternSvg.attributes.y = new Property(this.document, 'y', y * patternCanvas.height);\n patternSvg.render(patternCtx);\n patternCtx.restore();\n }\n }\n\n var pattern = ctx.createPattern(patternCanvas, 'repeat');\n return pattern;\n }\n }]);\n\n return PatternElement;\n}(Element);\n\nfunction _createSuper$h(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$h()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$h() { 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\nvar MarkerElement = /*#__PURE__*/function (_Element) {\n _inherits(MarkerElement, _Element);\n\n var _super = _createSuper$h(MarkerElement);\n\n function MarkerElement() {\n var _this;\n\n _classCallCheck(this, MarkerElement);\n\n _this = _super.apply(this, arguments);\n _this.type = 'marker';\n return _this;\n }\n\n _createClass(MarkerElement, [{\n key: \"render\",\n value: function render(ctx, point, angle) {\n if (!point) {\n return;\n }\n\n var x = point.x,\n y = point.y;\n var orient = this.getAttribute('orient').getValue('auto');\n var markerUnits = this.getAttribute('markerUnits').getValue('strokeWidth');\n ctx.translate(x, y);\n\n if (orient === 'auto') {\n ctx.rotate(angle);\n }\n\n if (markerUnits === 'strokeWidth') {\n ctx.scale(ctx.lineWidth, ctx.lineWidth);\n }\n\n ctx.save(); // render me using a temporary svg element\n\n var markerSvg = new SVGElement(this.document, null);\n markerSvg.type = this.type;\n markerSvg.attributes.viewBox = new Property(this.document, 'viewBox', this.getAttribute('viewBox').getValue());\n markerSvg.attributes.refX = new Property(this.document, 'refX', this.getAttribute('refX').getValue());\n markerSvg.attributes.refY = new Property(this.document, 'refY', this.getAttribute('refY').getValue());\n markerSvg.attributes.width = new Property(this.document, 'width', this.getAttribute('markerWidth').getValue());\n markerSvg.attributes.height = new Property(this.document, 'height', this.getAttribute('markerHeight').getValue());\n markerSvg.attributes.overflow = new Property(this.document, 'overflow', this.getAttribute('overflow').getValue());\n markerSvg.attributes.fill = new Property(this.document, 'fill', this.getAttribute('fill').getColor('black'));\n markerSvg.attributes.stroke = new Property(this.document, 'stroke', this.getAttribute('stroke').getValue('none'));\n markerSvg.children = this.children;\n markerSvg.render(ctx);\n ctx.restore();\n\n if (markerUnits === 'strokeWidth') {\n ctx.scale(1 / ctx.lineWidth, 1 / ctx.lineWidth);\n }\n\n if (orient === 'auto') {\n ctx.rotate(-angle);\n }\n\n ctx.translate(-x, -y);\n }\n }]);\n\n return MarkerElement;\n}(Element);\n\nfunction _createSuper$i(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$i()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$i() { 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\nvar DefsElement = /*#__PURE__*/function (_Element) {\n _inherits(DefsElement, _Element);\n\n var _super = _createSuper$i(DefsElement);\n\n function DefsElement() {\n var _this;\n\n _classCallCheck(this, DefsElement);\n\n _this = _super.apply(this, arguments);\n _this.type = 'defs';\n return _this;\n }\n\n _createClass(DefsElement, [{\n key: \"render\",\n value: function render() {// NOOP\n }\n }]);\n\n return DefsElement;\n}(Element);\n\nfunction _createSuper$j(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$j()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$j() { 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\nvar GElement = /*#__PURE__*/function (_RenderedElement) {\n _inherits(GElement, _RenderedElement);\n\n var _super = _createSuper$j(GElement);\n\n function GElement() {\n var _this;\n\n _classCallCheck(this, GElement);\n\n _this = _super.apply(this, arguments);\n _this.type = 'g';\n return _this;\n }\n\n _createClass(GElement, [{\n key: \"getBoundingBox\",\n value: function getBoundingBox(ctx) {\n var boundingBox = new BoundingBox();\n this.children.forEach(function (child) {\n boundingBox.addBoundingBox(child.getBoundingBox(ctx));\n });\n return boundingBox;\n }\n }]);\n\n return GElement;\n}(RenderedElement);\n\nfunction _createSuper$k(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$k()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$k() { 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\nvar GradientElement = /*#__PURE__*/function (_Element) {\n _inherits(GradientElement, _Element);\n\n var _super = _createSuper$k(GradientElement);\n\n function GradientElement(document, node, captureTextNodes) {\n var _this;\n\n _classCallCheck(this, GradientElement);\n\n _this = _super.call(this, document, node, captureTextNodes);\n _this.attributesToInherit = ['gradientUnits'];\n _this.stops = [];\n\n var _assertThisInitialize = _assertThisInitialized(_this),\n stops = _assertThisInitialize.stops,\n children = _assertThisInitialize.children;\n\n children.forEach(function (child) {\n if (child.type === 'stop') {\n stops.push(child);\n }\n });\n return _this;\n }\n\n _createClass(GradientElement, [{\n key: \"getGradientUnits\",\n value: function getGradientUnits() {\n return this.getAttribute('gradientUnits').getString('objectBoundingBox');\n }\n }, {\n key: \"createGradient\",\n value: function createGradient(ctx, element, parentOpacityProp) {\n var _this2 = this;\n\n // tslint:disable-next-line: no-this-assignment\n var stopsContainer = this;\n\n if (this.getHrefAttribute().hasValue()) {\n stopsContainer = this.getHrefAttribute().getDefinition();\n this.inheritStopContainer(stopsContainer);\n }\n\n var _stopsContainer = stopsContainer,\n stops = _stopsContainer.stops;\n var gradient = this.getGradient(ctx, element);\n\n if (!gradient) {\n return this.addParentOpacity(parentOpacityProp, stops[stops.length - 1].color);\n }\n\n stops.forEach(function (stop) {\n gradient.addColorStop(stop.offset, _this2.addParentOpacity(parentOpacityProp, stop.color));\n });\n\n if (this.getAttribute('gradientTransform').hasValue()) {\n // render as transformed pattern on temporary canvas\n var document = this.document;\n var _document$screen = document.screen,\n MAX_VIRTUAL_PIXELS = _document$screen.MAX_VIRTUAL_PIXELS,\n viewPort = _document$screen.viewPort;\n\n var _viewPort$viewPorts = _slicedToArray(viewPort.viewPorts, 1),\n rootView = _viewPort$viewPorts[0];\n\n var rect = new RectElement(document, null);\n rect.attributes.x = new Property(document, 'x', -MAX_VIRTUAL_PIXELS / 3.0);\n rect.attributes.y = new Property(document, 'y', -MAX_VIRTUAL_PIXELS / 3.0);\n rect.attributes.width = new Property(document, 'width', MAX_VIRTUAL_PIXELS);\n rect.attributes.height = new Property(document, 'height', MAX_VIRTUAL_PIXELS);\n var group = new GElement(document, null);\n group.attributes.transform = new Property(document, 'transform', this.getAttribute('gradientTransform').getValue());\n group.children = [rect];\n var patternSvg = new SVGElement(document, null);\n patternSvg.attributes.x = new Property(document, 'x', 0);\n patternSvg.attributes.y = new Property(document, 'y', 0);\n patternSvg.attributes.width = new Property(document, 'width', rootView.width);\n patternSvg.attributes.height = new Property(document, 'height', rootView.height);\n patternSvg.children = [group];\n var patternCanvas = document.createCanvas(rootView.width, rootView.height);\n var patternCtx = patternCanvas.getContext('2d');\n patternCtx.fillStyle = gradient;\n patternSvg.render(patternCtx);\n return patternCtx.createPattern(patternCanvas, 'no-repeat');\n }\n\n return gradient;\n }\n }, {\n key: \"inheritStopContainer\",\n value: function inheritStopContainer(stopsContainer) {\n var _this3 = this;\n\n this.attributesToInherit.forEach(function (attributeToInherit) {\n if (!_this3.getAttribute(attributeToInherit).hasValue() && stopsContainer.getAttribute(attributeToInherit).hasValue()) {\n _this3.getAttribute(attributeToInherit, true).setValue(stopsContainer.getAttribute(attributeToInherit).getValue());\n }\n });\n }\n }, {\n key: \"addParentOpacity\",\n value: function addParentOpacity(parentOpacityProp, color) {\n if (parentOpacityProp.hasValue()) {\n var colorProp = new Property(this.document, 'color', color);\n return colorProp.addOpacity(parentOpacityProp).getColor();\n }\n\n return color;\n }\n }]);\n\n return GradientElement;\n}(Element);\n\nfunction _createSuper$l(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$l()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$l() { 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\nvar LinearGradientElement = /*#__PURE__*/function (_GradientElement) {\n _inherits(LinearGradientElement, _GradientElement);\n\n var _super = _createSuper$l(LinearGradientElement);\n\n function LinearGradientElement(document, node, captureTextNodes) {\n var _this;\n\n _classCallCheck(this, LinearGradientElement);\n\n _this = _super.call(this, document, node, captureTextNodes);\n _this.type = 'linearGradient';\n\n _this.attributesToInherit.push('x1', 'y1', 'x2', 'y2');\n\n return _this;\n }\n\n _createClass(LinearGradientElement, [{\n key: \"getGradient\",\n value: function getGradient(ctx, element) {\n var isBoundingBoxUnits = this.getGradientUnits() === 'objectBoundingBox';\n var boundingBox = isBoundingBoxUnits ? element.getBoundingBox(ctx) : null;\n\n if (isBoundingBoxUnits && !boundingBox) {\n return null;\n }\n\n if (!this.getAttribute('x1').hasValue() && !this.getAttribute('y1').hasValue() && !this.getAttribute('x2').hasValue() && !this.getAttribute('y2').hasValue()) {\n this.getAttribute('x1', true).setValue(0);\n this.getAttribute('y1', true).setValue(0);\n this.getAttribute('x2', true).setValue(1);\n this.getAttribute('y2', true).setValue(0);\n }\n\n var x1 = isBoundingBoxUnits ? boundingBox.x + boundingBox.width * this.getAttribute('x1').getNumber() : this.getAttribute('x1').getPixels('x');\n var y1 = isBoundingBoxUnits ? boundingBox.y + boundingBox.height * this.getAttribute('y1').getNumber() : this.getAttribute('y1').getPixels('y');\n var x2 = isBoundingBoxUnits ? boundingBox.x + boundingBox.width * this.getAttribute('x2').getNumber() : this.getAttribute('x2').getPixels('x');\n var y2 = isBoundingBoxUnits ? boundingBox.y + boundingBox.height * this.getAttribute('y2').getNumber() : this.getAttribute('y2').getPixels('y');\n\n if (x1 === x2 && y1 === y2) {\n return null;\n }\n\n return ctx.createLinearGradient(x1, y1, x2, y2);\n }\n }]);\n\n return LinearGradientElement;\n}(GradientElement);\n\nfunction _createSuper$m(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$m()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$m() { 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\nvar RadialGradientElement = /*#__PURE__*/function (_GradientElement) {\n _inherits(RadialGradientElement, _GradientElement);\n\n var _super = _createSuper$m(RadialGradientElement);\n\n function RadialGradientElement(document, node, captureTextNodes) {\n var _this;\n\n _classCallCheck(this, RadialGradientElement);\n\n _this = _super.call(this, document, node, captureTextNodes);\n _this.type = 'radialGradient';\n\n _this.attributesToInherit.push('cx', 'cy', 'r', 'fx', 'fy', 'fr');\n\n return _this;\n }\n\n _createClass(RadialGradientElement, [{\n key: \"getGradient\",\n value: function getGradient(ctx, element) {\n var isBoundingBoxUnits = this.getGradientUnits() === 'objectBoundingBox';\n var boundingBox = element.getBoundingBox(ctx);\n\n if (isBoundingBoxUnits && !boundingBox) {\n return null;\n }\n\n if (!this.getAttribute('cx').hasValue()) {\n this.getAttribute('cx', true).setValue('50%');\n }\n\n if (!this.getAttribute('cy').hasValue()) {\n this.getAttribute('cy', true).setValue('50%');\n }\n\n if (!this.getAttribute('r').hasValue()) {\n this.getAttribute('r', true).setValue('50%');\n }\n\n var cx = isBoundingBoxUnits ? boundingBox.x + boundingBox.width * this.getAttribute('cx').getNumber() : this.getAttribute('cx').getPixels('x');\n var cy = isBoundingBoxUnits ? boundingBox.y + boundingBox.height * this.getAttribute('cy').getNumber() : this.getAttribute('cy').getPixels('y');\n var fx = cx;\n var fy = cy;\n\n if (this.getAttribute('fx').hasValue()) {\n fx = isBoundingBoxUnits ? boundingBox.x + boundingBox.width * this.getAttribute('fx').getNumber() : this.getAttribute('fx').getPixels('x');\n }\n\n if (this.getAttribute('fy').hasValue()) {\n fy = isBoundingBoxUnits ? boundingBox.y + boundingBox.height * this.getAttribute('fy').getNumber() : this.getAttribute('fy').getPixels('y');\n }\n\n var r = isBoundingBoxUnits ? (boundingBox.width + boundingBox.height) / 2.0 * this.getAttribute('r').getNumber() : this.getAttribute('r').getPixels();\n var fr = this.getAttribute('fr').getPixels();\n return ctx.createRadialGradient(fx, fy, fr, cx, cy, r);\n }\n }]);\n\n return RadialGradientElement;\n}(GradientElement);\n\nfunction _createSuper$n(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$n()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$n() { 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\nvar StopElement = /*#__PURE__*/function (_Element) {\n _inherits(StopElement, _Element);\n\n var _super = _createSuper$n(StopElement);\n\n function StopElement(document, node, captureTextNodes) {\n var _this;\n\n _classCallCheck(this, StopElement);\n\n _this = _super.call(this, document, node, captureTextNodes);\n _this.type = 'stop';\n var offset = Math.max(0, Math.min(1, _this.getAttribute('offset').getNumber()));\n\n var stopOpacity = _this.getStyle('stop-opacity');\n\n var stopColor = _this.getStyle('stop-color', true);\n\n if (stopColor.getString() === '') {\n stopColor.setValue('#000');\n }\n\n if (stopOpacity.hasValue()) {\n stopColor = stopColor.addOpacity(stopOpacity);\n }\n\n _this.offset = offset;\n _this.color = stopColor.getColor();\n return _this;\n }\n\n return StopElement;\n}(Element);\n\nfunction _createSuper$o(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$o()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$o() { 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\nvar AnimateElement = /*#__PURE__*/function (_Element) {\n _inherits(AnimateElement, _Element);\n\n var _super = _createSuper$o(AnimateElement);\n\n function AnimateElement(document, node, captureTextNodes) {\n var _this;\n\n _classCallCheck(this, AnimateElement);\n\n _this = _super.call(this, document, node, captureTextNodes);\n _this.type = 'animate';\n _this.duration = 0;\n _this.initialValue = null;\n _this.initialUnits = '';\n _this.removed = false;\n _this.frozen = false;\n document.screen.animations.push(_assertThisInitialized(_this));\n _this.begin = _this.getAttribute('begin').getMilliseconds();\n _this.maxDuration = _this.begin + _this.getAttribute('dur').getMilliseconds();\n _this.from = _this.getAttribute('from');\n _this.to = _this.getAttribute('to');\n _this.values = _this.getAttribute('values');\n\n if (_this.values.hasValue()) {\n _this.values.setValue(_this.values.getString().split(';'));\n }\n\n return _this;\n }\n\n _createClass(AnimateElement, [{\n key: \"getProperty\",\n value: function getProperty() {\n var attributeType = this.getAttribute('attributeType').getString();\n var attributeName = this.getAttribute('attributeName').getString();\n\n if (attributeType === 'CSS') {\n return this.parent.getStyle(attributeName, true);\n }\n\n return this.parent.getAttribute(attributeName, true);\n }\n }, {\n key: \"calcValue\",\n value: function calcValue() {\n var initialUnits = this.initialUnits;\n\n var _this$getProgress = this.getProgress(),\n progress = _this$getProgress.progress,\n from = _this$getProgress.from,\n to = _this$getProgress.to; // tween value linearly\n\n\n var newValue = from.getNumber() + (to.getNumber() - from.getNumber()) * progress;\n\n if (initialUnits === '%') {\n newValue *= 100.0; // numValue() returns 0-1 whereas properties are 0-100\n }\n\n return \"\".concat(newValue).concat(initialUnits);\n }\n }, {\n key: \"update\",\n value: function update(delta) {\n var parent = this.parent;\n var prop = this.getProperty(); // set initial value\n\n if (!this.initialValue) {\n this.initialValue = prop.getString();\n this.initialUnits = prop.getUnits();\n } // if we're past the end time\n\n\n if (this.duration > this.maxDuration) {\n var fill = this.getAttribute('fill').getString('remove'); // loop for indefinitely repeating animations\n\n if (this.getAttribute('repeatCount').getString() === 'indefinite' || this.getAttribute('repeatDur').getString() === 'indefinite') {\n this.duration = 0;\n } else if (fill === 'freeze' && !this.frozen) {\n this.frozen = true;\n parent.animationFrozen = true;\n parent.animationFrozenValue = prop.getString();\n } else if (fill === 'remove' && !this.removed) {\n this.removed = true;\n prop.setValue(parent.animationFrozen ? parent.animationFrozenValue : this.initialValue);\n return true;\n }\n\n return false;\n }\n\n this.duration += delta; // if we're past the begin time\n\n var updated = false;\n\n if (this.begin < this.duration) {\n var newValue = this.calcValue(); // tween\n\n var typeAttr = this.getAttribute('type');\n\n if (typeAttr.hasValue()) {\n // for transform, etc.\n var type = typeAttr.getString();\n newValue = \"\".concat(type, \"(\").concat(newValue, \")\");\n }\n\n prop.setValue(newValue);\n updated = true;\n }\n\n return updated;\n }\n }, {\n key: \"getProgress\",\n value: function getProgress() {\n var document = this.document,\n values = this.values;\n var result = {\n progress: (this.duration - this.begin) / (this.maxDuration - this.begin)\n };\n\n if (values.hasValue()) {\n var p = result.progress * (values.getValue().length - 1);\n var lb = Math.floor(p);\n var ub = Math.ceil(p);\n result.from = new Property(document, 'from', parseFloat(values.getValue()[lb]));\n result.to = new Property(document, 'to', parseFloat(values.getValue()[ub]));\n result.progress = (p - lb) / (ub - lb);\n } else {\n result.from = this.from;\n result.to = this.to;\n }\n\n return result;\n }\n }]);\n\n return AnimateElement;\n}(Element);\n\nfunction _createSuper$p(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$p()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$p() { 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\nvar AnimateColorElement = /*#__PURE__*/function (_AnimateElement) {\n _inherits(AnimateColorElement, _AnimateElement);\n\n var _super = _createSuper$p(AnimateColorElement);\n\n function AnimateColorElement() {\n var _this;\n\n _classCallCheck(this, AnimateColorElement);\n\n _this = _super.apply(this, arguments);\n _this.type = 'animateColor';\n return _this;\n }\n\n _createClass(AnimateColorElement, [{\n key: \"calcValue\",\n value: function calcValue() {\n var _this$getProgress = this.getProgress(),\n progress = _this$getProgress.progress,\n from = _this$getProgress.from,\n to = _this$getProgress.to;\n\n var colorFrom = new RGBColor(from.getColor());\n var colorTo = new RGBColor(to.getColor());\n\n if (colorFrom.ok && colorTo.ok) {\n // tween color linearly\n var r = colorFrom.r + (colorTo.r - colorFrom.r) * progress;\n var g = colorFrom.g + (colorTo.g - colorFrom.g) * progress;\n var b = colorFrom.b + (colorTo.b - colorFrom.b) * progress; // ? alpha\n\n return \"rgb(\".concat(parseInt(r, 10), \", \").concat(parseInt(g, 10), \", \").concat(parseInt(b, 10), \")\");\n }\n\n return this.getAttribute('from').getColor();\n }\n }]);\n\n return AnimateColorElement;\n}(AnimateElement);\n\nfunction _createSuper$q(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$q()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$q() { 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\nvar AnimateTransformElement = /*#__PURE__*/function (_AnimateElement) {\n _inherits(AnimateTransformElement, _AnimateElement);\n\n var _super = _createSuper$q(AnimateTransformElement);\n\n function AnimateTransformElement() {\n var _this;\n\n _classCallCheck(this, AnimateTransformElement);\n\n _this = _super.apply(this, arguments);\n _this.type = 'animateTransform';\n return _this;\n }\n\n _createClass(AnimateTransformElement, [{\n key: \"calcValue\",\n value: function calcValue() {\n var _this$getProgress = this.getProgress(),\n progress = _this$getProgress.progress,\n from = _this$getProgress.from,\n to = _this$getProgress.to; // tween value linearly\n\n\n var transformFrom = toNumbers(from.getString());\n var transformTo = toNumbers(to.getString());\n var newValue = transformFrom.map(function (from, i) {\n var to = transformTo[i];\n return from + (to - from) * progress;\n }).join(' ');\n return newValue;\n }\n }]);\n\n return AnimateTransformElement;\n}(AnimateElement);\n\nfunction _createForOfIteratorHelper(o) { if (typeof Symbol === \"undefined\" || o[Symbol.iterator] == null) { if (Array.isArray(o) || (o = _unsupportedIterableToArray(o))) { var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var it, normalCompletion = true, didErr = false, err; return { s: function s() { it = o[Symbol.iterator](); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(n); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _createSuper$r(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$r()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$r() { 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\nvar FontElement = /*#__PURE__*/function (_Element) {\n _inherits(FontElement, _Element);\n\n var _super = _createSuper$r(FontElement);\n\n function FontElement(document, node, captureTextNodes) {\n var _this;\n\n _classCallCheck(this, FontElement);\n\n _this = _super.call(this, document, node, captureTextNodes);\n _this.type = 'font';\n _this.glyphs = {};\n _this.horizAdvX = _this.getAttribute('horiz-adv-x').getNumber();\n var definitions = document.definitions;\n\n var _assertThisInitialize = _assertThisInitialized(_this),\n children = _assertThisInitialize.children;\n\n var _iterator = _createForOfIteratorHelper(children),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var child = _step.value;\n\n switch (child.type) {\n case 'font-face':\n {\n _this.fontFace = child;\n var fontFamilyStyle = child.getStyle('font-family');\n\n if (fontFamilyStyle.hasValue()) {\n definitions[fontFamilyStyle.getString()] = _assertThisInitialized(_this);\n }\n\n break;\n }\n\n case 'missing-glyph':\n _this.missingGlyph = child;\n break;\n\n case 'glyph':\n {\n var glyph = child;\n\n if (glyph.arabicForm) {\n _this.isRTL = true;\n _this.isArabic = true;\n\n if (typeof _this.glyphs[glyph.unicode] === 'undefined') {\n _this.glyphs[glyph.unicode] = {};\n }\n\n _this.glyphs[glyph.unicode][glyph.arabicForm] = glyph;\n } else {\n _this.glyphs[glyph.unicode] = glyph;\n }\n\n break;\n }\n\n default:\n }\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n\n return _this;\n }\n\n _createClass(FontElement, [{\n key: \"render\",\n value: function render() {// NO RENDER\n }\n }]);\n\n return FontElement;\n}(Element);\n\nfunction _createSuper$s(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$s()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$s() { 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\nvar FontFaceElement = /*#__PURE__*/function (_Element) {\n _inherits(FontFaceElement, _Element);\n\n var _super = _createSuper$s(FontFaceElement);\n\n function FontFaceElement(document, node, captureTextNodes) {\n var _this;\n\n _classCallCheck(this, FontFaceElement);\n\n _this = _super.call(this, document, node, captureTextNodes);\n _this.type = 'font-face';\n _this.ascent = _this.getAttribute('ascent').getNumber();\n _this.descent = _this.getAttribute('descent').getNumber();\n _this.unitsPerEm = _this.getAttribute('units-per-em').getNumber();\n return _this;\n }\n\n return FontFaceElement;\n}(Element);\n\nfunction _createSuper$t(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$t()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$t() { 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\nvar MissingGlyphElement = /*#__PURE__*/function (_PathElement) {\n _inherits(MissingGlyphElement, _PathElement);\n\n var _super = _createSuper$t(MissingGlyphElement);\n\n function MissingGlyphElement() {\n var _this;\n\n _classCallCheck(this, MissingGlyphElement);\n\n _this = _super.apply(this, arguments);\n _this.type = 'missing-glyph';\n _this.horizAdvX = 0;\n return _this;\n }\n\n return MissingGlyphElement;\n}(PathElement);\n\nfunction _createSuper$u(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$u()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$u() { 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\nvar GlyphElement = /*#__PURE__*/function (_PathElement) {\n _inherits(GlyphElement, _PathElement);\n\n var _super = _createSuper$u(GlyphElement);\n\n function GlyphElement(document, node, captureTextNodes) {\n var _this;\n\n _classCallCheck(this, GlyphElement);\n\n _this = _super.call(this, document, node, captureTextNodes);\n _this.type = 'glyph';\n _this.horizAdvX = _this.getAttribute('horiz-adv-x').getNumber();\n _this.unicode = _this.getAttribute('unicode').getString();\n _this.arabicForm = _this.getAttribute('arabic-form').getString();\n return _this;\n }\n\n return GlyphElement;\n}(PathElement);\n\nfunction _createSuper$v(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$v()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$v() { 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\nvar TRefElement = /*#__PURE__*/function (_TextElement) {\n _inherits(TRefElement, _TextElement);\n\n var _super = _createSuper$v(TRefElement);\n\n function TRefElement() {\n var _this;\n\n _classCallCheck(this, TRefElement);\n\n _this = _super.apply(this, arguments);\n _this.type = 'tref';\n return _this;\n }\n\n _createClass(TRefElement, [{\n key: \"getText\",\n value: function getText() {\n var element = this.getHrefAttribute().getDefinition();\n\n if (element) {\n var firstChild = element.children[0];\n\n if (firstChild) {\n return firstChild.getText();\n }\n }\n\n return '';\n }\n }]);\n\n return TRefElement;\n}(TextElement);\n\nfunction _createSuper$w(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$w()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$w() { 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\nvar AElement = /*#__PURE__*/function (_TextElement) {\n _inherits(AElement, _TextElement);\n\n var _super = _createSuper$w(AElement);\n\n function AElement(document, node, captureTextNodes) {\n var _this;\n\n _classCallCheck(this, AElement);\n\n _this = _super.call(this, document, node, captureTextNodes);\n _this.type = 'a';\n var childNodes = node.childNodes;\n var firstChild = childNodes[0];\n var hasText = childNodes.length > 0 && Array.from(childNodes).every(function (node) {\n return node.nodeType === 3;\n });\n _this.hasText = hasText;\n _this.text = hasText ? _this.getTextFromNode(firstChild) : '';\n return _this;\n }\n\n _createClass(AElement, [{\n key: \"getText\",\n value: function getText() {\n return this.text;\n }\n }, {\n key: \"renderChildren\",\n value: function renderChildren(ctx) {\n if (this.hasText) {\n // render as text element\n _get(_getPrototypeOf(AElement.prototype), \"renderChildren\", this).call(this, ctx);\n\n var document = this.document,\n x = this.x,\n y = this.y;\n var mouse = document.screen.mouse;\n var fontSize = new Property(document, 'fontSize', Font.parse(document.ctx.font).fontSize); // Do not calc bounding box if mouse is not working.\n\n if (mouse.isWorking()) {\n mouse.checkBoundingBox(this, new BoundingBox(x, y - fontSize.getPixels('y'), x + this.measureText(ctx), y));\n }\n } else if (this.children.length > 0) {\n // render as temporary group\n var g = new GElement(this.document, null);\n g.children = this.children;\n g.parent = this;\n g.render(ctx);\n }\n }\n }, {\n key: \"onClick\",\n value: function onClick() {\n var window = this.document.window;\n\n if (window) {\n window.open(this.getHrefAttribute().getString());\n }\n }\n }, {\n key: \"onMouseMove\",\n value: function onMouseMove() {\n var ctx = this.document.ctx;\n ctx.canvas.style.cursor = 'pointer';\n }\n }]);\n\n return AElement;\n}(TextElement);\n\nfunction _createForOfIteratorHelper$1(o) { if (typeof Symbol === \"undefined\" || o[Symbol.iterator] == null) { if (Array.isArray(o) || (o = _unsupportedIterableToArray$1(o))) { var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var it, normalCompletion = true, didErr = false, err; return { s: function s() { it = o[Symbol.iterator](); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }\n\nfunction _unsupportedIterableToArray$1(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray$1(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(n); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray$1(o, minLen); }\n\nfunction _arrayLikeToArray$1(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _createSuper$x(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$x()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$x() { 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\nvar TextPathElement = /*#__PURE__*/function (_TextElement) {\n _inherits(TextPathElement, _TextElement);\n\n var _super = _createSuper$x(TextPathElement);\n\n function TextPathElement(document, node, captureTextNodes) {\n var _this;\n\n _classCallCheck(this, TextPathElement);\n\n _this = _super.call(this, document, node, captureTextNodes);\n _this.type = 'textPath';\n _this.textWidth = 0;\n _this.textHeight = 0;\n _this.pathLength = -1;\n _this.glyphInfo = null;\n _this.letterSpacingCache = [];\n _this.measuresCache = new Map([['', 0]]);\n\n var pathElement = _this.getHrefAttribute().getDefinition();\n\n _this.text = _this.getTextFromNode();\n _this.dataArray = _this.parsePathData(pathElement);\n return _this;\n }\n\n _createClass(TextPathElement, [{\n key: \"getText\",\n value: function getText() {\n return this.text;\n }\n }, {\n key: \"path\",\n value: function path(ctx) {\n var dataArray = this.dataArray;\n\n if (ctx) {\n ctx.beginPath();\n }\n\n dataArray.forEach(function (_ref) {\n var command = _ref.command,\n points = _ref.points;\n\n switch (command) {\n case 'L':\n if (ctx) {\n ctx.lineTo(points[0], points[1]);\n }\n\n break;\n\n case 'M':\n if (ctx) {\n ctx.moveTo(points[0], points[1]);\n }\n\n break;\n\n case 'C':\n if (ctx) {\n ctx.bezierCurveTo(points[0], points[1], points[2], points[3], points[4], points[5]);\n }\n\n break;\n\n case 'Q':\n if (ctx) {\n ctx.quadraticCurveTo(points[0], points[1], points[2], points[3]);\n }\n\n break;\n\n case 'A':\n {\n var cx = points[0];\n var cy = points[1];\n var rx = points[2];\n var ry = points[3];\n var theta = points[4];\n var dTheta = points[5];\n var psi = points[6];\n var fs = points[7];\n var r = rx > ry ? rx : ry;\n var scaleX = rx > ry ? 1 : rx / ry;\n var scaleY = rx > ry ? ry / rx : 1;\n\n if (ctx) {\n ctx.translate(cx, cy);\n ctx.rotate(psi);\n ctx.scale(scaleX, scaleY);\n ctx.arc(0, 0, r, theta, theta + dTheta, Boolean(1 - fs));\n ctx.scale(1 / scaleX, 1 / scaleY);\n ctx.rotate(-psi);\n ctx.translate(-cx, -cy);\n }\n\n break;\n }\n\n case 'z':\n if (ctx) {\n ctx.closePath();\n }\n\n break;\n }\n });\n }\n }, {\n key: \"renderChildren\",\n value: function renderChildren(ctx) {\n this.setTextData(ctx);\n ctx.save();\n var textDecoration = this.parent.getStyle('text-decoration').getString();\n var fontSize = this.getFontSize();\n var glyphInfo = this.glyphInfo;\n var fill = ctx.fillStyle;\n\n if (textDecoration === 'underline') {\n ctx.beginPath();\n }\n\n glyphInfo.forEach(function (glyph, i) {\n var p0 = glyph.p0,\n p1 = glyph.p1,\n partialText = glyph.text;\n ctx.save();\n ctx.translate(p0.x, p0.y);\n ctx.rotate(glyphInfo[i].rotation);\n\n if (ctx.fillStyle) {\n ctx.fillText(partialText, 0, 0);\n }\n\n if (ctx.strokeStyle) {\n ctx.strokeText(partialText, 0, 0);\n }\n\n ctx.restore();\n\n if (textDecoration === 'underline') {\n if (i === 0) {\n ctx.moveTo(p0.x, p0.y + fontSize / 8);\n }\n\n ctx.lineTo(p1.x, p1.y + fontSize / 5);\n } //// To assist with debugging visually, uncomment following\n //\n // ctx.beginPath();\n // if (i % 2)\n // \tctx.strokeStyle = 'red';\n // else\n // \tctx.strokeStyle = 'green';\n // ctx.moveTo(p0.x, p0.y);\n // ctx.lineTo(p1.x, p1.y);\n // ctx.stroke();\n // ctx.closePath();\n\n });\n\n if (textDecoration === 'underline') {\n ctx.lineWidth = fontSize / 20;\n ctx.strokeStyle = fill;\n ctx.stroke();\n ctx.closePath();\n }\n\n ctx.restore();\n }\n }, {\n key: \"getLetterSpacingAt\",\n value: function getLetterSpacingAt() {\n var idx = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;\n return this.letterSpacingCache[idx] || 0;\n }\n }, {\n key: \"findSegmentToFitChar\",\n value: function findSegmentToFitChar(ctx, anchor, textFullWidth, fullPathWidth, spacesNumber, inputOffset, c, charI) {\n var offset = inputOffset;\n var glyphWidth = this.measureText(ctx, c);\n\n if (c === ' ' && anchor === 'justify' && textFullWidth < fullPathWidth) {\n glyphWidth += (fullPathWidth - textFullWidth) / spacesNumber;\n }\n\n if (charI > -1) {\n offset += this.getLetterSpacingAt(charI);\n }\n\n var splineStep = this.textHeight / 20;\n var segment = {\n p0: this.getEquidistantPointOnPath(offset, splineStep),\n p1: this.getEquidistantPointOnPath(offset + glyphWidth, splineStep)\n };\n offset += glyphWidth;\n return {\n offset: offset,\n segment: segment\n };\n }\n }, {\n key: \"measureText\",\n value: function measureText(ctx, text) {\n var measuresCache = this.measuresCache;\n var targetText = text || this.getText();\n\n if (measuresCache.has(targetText)) {\n return measuresCache.get(targetText);\n }\n\n var measure = this.measureTargetText(ctx, targetText);\n measuresCache.set(targetText, measure);\n return measure;\n } // This method supposes what all custom fonts already loaded.\n // If some font will be loaded after this method call, will not be rendered correctly.\n // You need to call this method manually to update glyphs cache.\n\n }, {\n key: \"setTextData\",\n value: function setTextData(ctx) {\n var _this2 = this;\n\n if (this.glyphInfo) {\n return;\n }\n\n var renderText = this.getText();\n var chars = renderText.split('');\n var spacesNumber = renderText.split(' ').length - 1;\n var dx = toNumbers(this.parent.getAttribute('dx').getString('0'));\n var anchor = this.parent.getStyle('text-anchor').getString('start');\n var thisSpacing = this.getStyle('letter-spacing');\n var parentSpacing = this.parent.getStyle('letter-spacing');\n var letterSpacing = 0;\n\n if (!thisSpacing.hasValue() || thisSpacing.getValue() === 'inherit') {\n letterSpacing = parentSpacing.getPixels();\n } else if (thisSpacing.hasValue()) {\n if (thisSpacing.getValue() !== 'initial' && thisSpacing.getValue() !== 'unset') {\n letterSpacing = thisSpacing.getPixels();\n }\n } // fill letter-spacing cache\n\n\n var letterSpacingCache = [];\n var textLen = renderText.length;\n this.letterSpacingCache = letterSpacingCache;\n\n for (var i = 0; i < textLen; i++) {\n letterSpacingCache.push(typeof dx[i] !== 'undefined' ? dx[i] : letterSpacing);\n }\n\n var dxSum = letterSpacingCache.reduce(function (acc, cur) {\n return acc + cur || 0;\n }, 0);\n this.textWidth = this.measureText(ctx);\n this.textHeight = this.getFontSize();\n var textFullWidth = Math.max(this.textWidth + dxSum, 0);\n this.glyphInfo = [];\n var fullPathWidth = this.getPathLength();\n var startOffset = this.getStyle('startOffset').getNumber(0) * fullPathWidth;\n var offset = 0;\n\n if (anchor === 'middle' || anchor === 'center') {\n offset = -textFullWidth / 2;\n }\n\n if (anchor === 'end' || anchor === 'right') {\n offset = -textFullWidth;\n }\n\n offset += startOffset;\n chars.forEach(function (char, i) {\n // Find such segment what distance between p0 and p1 is approx. width of glyph\n var _this2$findSegmentToF = _this2.findSegmentToFitChar(ctx, anchor, textFullWidth, fullPathWidth, spacesNumber, offset, char, i),\n nextOffset = _this2$findSegmentToF.offset,\n segment = _this2$findSegmentToF.segment;\n\n offset = nextOffset;\n\n if (!segment.p0 || !segment.p1) {\n return;\n }\n\n var width = _this2.getLineLength(segment.p0.x, segment.p0.y, segment.p1.x, segment.p1.y); // Note: Since glyphs are rendered one at a time, any kerning pair data built into the font will not be used.\n // Can foresee having a rough pair table built in that the developer can override as needed.\n // Or use \"dx\" attribute of the node as a naive replacement\n\n\n var kern = 0; // placeholder for future implementation\n\n var midpoint = _this2.getPointOnLine(kern + width / 2.0, segment.p0.x, segment.p0.y, segment.p1.x, segment.p1.y);\n\n var rotation = Math.atan2(segment.p1.y - segment.p0.y, segment.p1.x - segment.p0.x);\n\n _this2.glyphInfo.push({\n transposeX: midpoint.x,\n transposeY: midpoint.y,\n text: chars[i],\n p0: segment.p0,\n p1: segment.p1,\n rotation: rotation\n });\n });\n }\n }, {\n key: \"parsePathData\",\n value: function parsePathData(path) {\n this.pathLength = -1; // reset path length\n\n if (!path) {\n return [];\n }\n\n var pathCommands = [];\n var pathParser = path.pathParser;\n pathParser.reset(); // convert l, H, h, V, and v to L\n\n while (!pathParser.isEnd()) {\n var current = pathParser.current;\n var startX = current ? current.x : 0;\n var startY = current ? current.y : 0;\n var cmd = '';\n var points = [];\n pathParser.nextCommand();\n var upperCommand = pathParser.command.toUpperCase();\n\n switch (pathParser.command) {\n case 'M':\n case 'm':\n cmd = this.pathM(pathParser, points);\n break;\n\n case 'L':\n case 'l':\n cmd = this.pathL(pathParser, points);\n break;\n\n case 'H':\n case 'h':\n cmd = this.pathH(pathParser, points);\n break;\n\n case 'V':\n case 'v':\n cmd = this.pathV(pathParser, points);\n break;\n\n case 'C':\n case 'c':\n this.pathC(pathParser, points);\n break;\n\n case 'S':\n case 's':\n cmd = this.pathS(pathParser, points);\n break;\n\n case 'Q':\n case 'q':\n this.pathQ(pathParser, points);\n break;\n\n case 'T':\n case 't':\n cmd = this.pathT(pathParser, points);\n break;\n\n case 'A':\n case 'a':\n points = this.pathA(pathParser);\n break;\n\n case 'Z':\n case 'z':\n pathParser.current = pathParser.start;\n break;\n }\n\n if (upperCommand !== 'Z') {\n pathCommands.push({\n command: cmd || upperCommand,\n points: points,\n start: {\n x: startX,\n y: startY\n },\n pathLength: this.calcLength(startX, startY, cmd || upperCommand, points)\n });\n } else {\n pathCommands.push({\n command: 'z',\n points: [],\n pathLength: 0\n });\n }\n }\n\n return pathCommands;\n }\n }, {\n key: \"pathM\",\n value: function pathM(pathParser, points) {\n var p = pathParser.getAsCurrentPoint(); // pathParser.addMarker(p);\n\n points.push(p.x, p.y);\n pathParser.start = pathParser.current;\n\n while (!pathParser.isCommandOrEnd()) {\n var _p = pathParser.getAsCurrentPoint();\n\n points.push(_p.x, _p.y);\n return 'L';\n }\n }\n }, {\n key: \"pathL\",\n value: function pathL(pathParser, points) {\n while (!pathParser.isCommandOrEnd()) {\n var p = pathParser.getAsCurrentPoint();\n points.push(p.x, p.y);\n }\n\n return 'L';\n }\n }, {\n key: \"pathH\",\n value: function pathH(pathParser, points) {\n while (!pathParser.isCommandOrEnd()) {\n var current = pathParser.current;\n var point = new Point((pathParser.isRelativeCommand() ? current.x : 0) + pathParser.getScalar(), current.y);\n points.push(point.x, point.y);\n pathParser.current = point;\n }\n\n return 'L';\n }\n }, {\n key: \"pathV\",\n value: function pathV(pathParser, points) {\n while (!pathParser.isCommandOrEnd()) {\n var current = pathParser.current;\n var point = new Point(current.x, (pathParser.isRelativeCommand() ? current.y : 0) + pathParser.getScalar());\n points.push(point.x, point.y);\n pathParser.current = point;\n }\n\n return 'L';\n }\n }, {\n key: \"pathC\",\n value: function pathC(pathParser, points) {\n while (!pathParser.isCommandOrEnd()) {\n var point = pathParser.getPoint();\n var controlPoint = pathParser.getAsControlPoint();\n var currentPoint = pathParser.getAsCurrentPoint();\n points.push(point.x, point.y, controlPoint.x, controlPoint.y, currentPoint.x, currentPoint.y);\n }\n }\n }, {\n key: \"pathS\",\n value: function pathS(pathParser, points) {\n while (!pathParser.isCommandOrEnd()) {\n var point = pathParser.getReflectedControlPoint();\n var controlPoint = pathParser.getAsControlPoint();\n var currentPoint = pathParser.getAsCurrentPoint();\n points.push(point.x, point.y, controlPoint.x, controlPoint.y, currentPoint.x, currentPoint.y);\n }\n\n return 'C';\n }\n }, {\n key: \"pathQ\",\n value: function pathQ(pathParser, points) {\n while (!pathParser.isCommandOrEnd()) {\n var controlPoint = pathParser.getAsControlPoint();\n var currentPoint = pathParser.getAsCurrentPoint();\n points.push(controlPoint.x, controlPoint.y, currentPoint.x, currentPoint.y);\n }\n }\n }, {\n key: \"pathT\",\n value: function pathT(pathParser, points) {\n while (!pathParser.isCommandOrEnd()) {\n var controlPoint = pathParser.getReflectedControlPoint();\n pathParser.control = controlPoint;\n var currentPoint = pathParser.getAsCurrentPoint();\n points.push(controlPoint.x, controlPoint.y, currentPoint.x, currentPoint.y);\n }\n\n return 'Q';\n }\n }, {\n key: \"pathA\",\n value: function pathA(pathParser) {\n while (!pathParser.isCommandOrEnd()) {\n var current = pathParser.current; // x1, y1\n\n var rx = pathParser.getScalar();\n var ry = pathParser.getScalar();\n var xAxisRotation = pathParser.getScalar() * (Math.PI / 180.0); // Ο†\n\n var largeArcFlag = pathParser.getScalar(); // fA\n\n var sweepFlag = pathParser.getScalar(); // fS\n\n var currentPoint = pathParser.getAsCurrentPoint(); // x2, y2\n // Conversion from endpoint to center parameterization\n // http://www.w3.org/TR/SVG11/implnote.html#ArcImplementationNotes\n // x1', y1'\n\n var currp = new Point(Math.cos(xAxisRotation) * (current.x - currentPoint.x) / 2.0 + Math.sin(xAxisRotation) * (current.y - currentPoint.y) / 2.0, -Math.sin(xAxisRotation) * (current.x - currentPoint.x) / 2.0 + Math.cos(xAxisRotation) * (current.y - currentPoint.y) / 2.0); // adjust radii\n\n var l = Math.pow(currp.x, 2) / Math.pow(rx, 2) + Math.pow(currp.y, 2) / Math.pow(ry, 2);\n\n if (l > 1) {\n rx *= Math.sqrt(l);\n ry *= Math.sqrt(l);\n } // cx', cy'\n\n\n var s = (largeArcFlag === sweepFlag ? -1 : 1) * Math.sqrt((Math.pow(rx, 2) * Math.pow(ry, 2) - Math.pow(rx, 2) * Math.pow(currp.y, 2) - Math.pow(ry, 2) * Math.pow(currp.x, 2)) / (Math.pow(rx, 2) * Math.pow(currp.y, 2) + Math.pow(ry, 2) * Math.pow(currp.x, 2)));\n\n if (isNaN(s)) {\n s = 0;\n }\n\n var cpp = new Point(s * rx * currp.y / ry, s * -ry * currp.x / rx); // cx, cy\n\n var centp = new Point((current.x + currentPoint.x) / 2.0 + Math.cos(xAxisRotation) * cpp.x - Math.sin(xAxisRotation) * cpp.y, (current.y + currentPoint.y) / 2.0 + Math.sin(xAxisRotation) * cpp.x + Math.cos(xAxisRotation) * cpp.y); // initial angle\n\n var a1 = vectorsAngle([1, 0], [(currp.x - cpp.x) / rx, (currp.y - cpp.y) / ry]); // ΞΈ1\n // angle delta\n\n var u = [(currp.x - cpp.x) / rx, (currp.y - cpp.y) / ry];\n var v = [(-currp.x - cpp.x) / rx, (-currp.y - cpp.y) / ry];\n var ad = vectorsAngle(u, v); // Δθ\n\n if (vectorsRatio(u, v) <= -1) {\n ad = Math.PI;\n }\n\n if (vectorsRatio(u, v) >= 1) {\n ad = 0;\n }\n\n if (sweepFlag === 0 && ad > 0) {\n ad = ad - 2 * Math.PI;\n }\n\n if (sweepFlag === 1 && ad < 0) {\n ad = ad + 2 * Math.PI;\n }\n\n return [centp.x, centp.y, rx, ry, a1, ad, xAxisRotation, sweepFlag];\n }\n }\n }, {\n key: \"calcLength\",\n value: function calcLength(x, y, cmd, points) {\n var len = 0;\n var p1 = null;\n var p2 = null;\n var t = 0;\n\n switch (cmd) {\n case 'L':\n return this.getLineLength(x, y, points[0], points[1]);\n\n case 'C':\n // Approximates by breaking curve into 100 line segments\n len = 0.0;\n p1 = this.getPointOnCubicBezier(0, x, y, points[0], points[1], points[2], points[3], points[4], points[5]);\n\n for (t = 0.01; t <= 1; t += 0.01) {\n p2 = this.getPointOnCubicBezier(t, x, y, points[0], points[1], points[2], points[3], points[4], points[5]);\n len += this.getLineLength(p1.x, p1.y, p2.x, p2.y);\n p1 = p2;\n }\n\n return len;\n\n case 'Q':\n // Approximates by breaking curve into 100 line segments\n len = 0.0;\n p1 = this.getPointOnQuadraticBezier(0, x, y, points[0], points[1], points[2], points[3]);\n\n for (t = 0.01; t <= 1; t += 0.01) {\n p2 = this.getPointOnQuadraticBezier(t, x, y, points[0], points[1], points[2], points[3]);\n len += this.getLineLength(p1.x, p1.y, p2.x, p2.y);\n p1 = p2;\n }\n\n return len;\n\n case 'A':\n // Approximates by breaking curve into line segments\n len = 0.0;\n var start = points[4]; // 4 = theta\n\n var dTheta = points[5]; // 5 = dTheta\n\n var end = points[4] + dTheta;\n var inc = Math.PI / 180.0; // 1 degree resolution\n\n if (Math.abs(start - end) < inc) {\n inc = Math.abs(start - end);\n } // Note: for purpose of calculating arc length, not going to worry about rotating X-axis by angle psi\n\n\n p1 = this.getPointOnEllipticalArc(points[0], points[1], points[2], points[3], start, 0);\n\n if (dTheta < 0) {\n // clockwise\n for (t = start - inc; t > end; t -= inc) {\n p2 = this.getPointOnEllipticalArc(points[0], points[1], points[2], points[3], t, 0);\n len += this.getLineLength(p1.x, p1.y, p2.x, p2.y);\n p1 = p2;\n }\n } else {\n // counter-clockwise\n for (t = start + inc; t < end; t += inc) {\n p2 = this.getPointOnEllipticalArc(points[0], points[1], points[2], points[3], t, 0);\n len += this.getLineLength(p1.x, p1.y, p2.x, p2.y);\n p1 = p2;\n }\n }\n\n p2 = this.getPointOnEllipticalArc(points[0], points[1], points[2], points[3], end, 0);\n len += this.getLineLength(p1.x, p1.y, p2.x, p2.y);\n return len;\n }\n\n return 0;\n }\n }, {\n key: \"getPointOnLine\",\n value: function getPointOnLine(dist, P1x, P1y, P2x, P2y) {\n var fromX = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : P1x;\n var fromY = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : P1y;\n var m = (P2y - P1y) / (P2x - P1x + PSEUDO_ZERO);\n var run = Math.sqrt(dist * dist / (1 + m * m));\n\n if (P2x < P1x) {\n run *= -1;\n }\n\n var rise = m * run;\n var pt = null;\n\n if (P2x === P1x) {\n // vertical line\n pt = {\n x: fromX,\n y: fromY + rise\n };\n } else if ((fromY - P1y) / (fromX - P1x + PSEUDO_ZERO) === m) {\n pt = {\n x: fromX + run,\n y: fromY + rise\n };\n } else {\n var ix = 0;\n var iy = 0;\n var len = this.getLineLength(P1x, P1y, P2x, P2y);\n\n if (len < PSEUDO_ZERO) {\n return null;\n }\n\n var u = (fromX - P1x) * (P2x - P1x) + (fromY - P1y) * (P2y - P1y);\n u = u / (len * len);\n ix = P1x + u * (P2x - P1x);\n iy = P1y + u * (P2y - P1y);\n var pRise = this.getLineLength(fromX, fromY, ix, iy);\n var pRun = Math.sqrt(dist * dist - pRise * pRise);\n run = Math.sqrt(pRun * pRun / (1 + m * m));\n\n if (P2x < P1x) {\n run *= -1;\n }\n\n rise = m * run;\n pt = {\n x: ix + run,\n y: iy + rise\n };\n }\n\n return pt;\n }\n }, {\n key: \"getPointOnPath\",\n value: function getPointOnPath(distance) {\n var fullLen = this.getPathLength();\n var cumulativePathLength = 0;\n var p = null;\n\n if (distance < -0.00005 || distance - 0.00005 > fullLen) {\n return null;\n }\n\n var dataArray = this.dataArray;\n\n var _iterator = _createForOfIteratorHelper$1(dataArray),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var pathCmd = _step.value;\n\n if (pathCmd && (pathCmd.pathLength < 0.00005 || cumulativePathLength + pathCmd.pathLength + 0.00005 < distance)) {\n cumulativePathLength += pathCmd.pathLength;\n continue;\n }\n\n var delta = distance - cumulativePathLength;\n var currentT = 0;\n\n switch (pathCmd.command) {\n case 'L':\n p = this.getPointOnLine(delta, pathCmd.start.x, pathCmd.start.y, pathCmd.points[0], pathCmd.points[1], pathCmd.start.x, pathCmd.start.y);\n break;\n\n case 'A':\n var start = pathCmd.points[4]; // 4 = theta\n\n var dTheta = pathCmd.points[5]; // 5 = dTheta\n\n var end = pathCmd.points[4] + dTheta;\n currentT = start + delta / pathCmd.pathLength * dTheta;\n\n if (dTheta < 0 && currentT < end || dTheta >= 0 && currentT > end) {\n break;\n }\n\n p = this.getPointOnEllipticalArc(pathCmd.points[0], pathCmd.points[1], pathCmd.points[2], pathCmd.points[3], currentT, pathCmd.points[6]);\n break;\n\n case 'C':\n currentT = delta / pathCmd.pathLength;\n\n if (currentT > 1) {\n currentT = 1;\n }\n\n p = this.getPointOnCubicBezier(currentT, pathCmd.start.x, pathCmd.start.y, pathCmd.points[0], pathCmd.points[1], pathCmd.points[2], pathCmd.points[3], pathCmd.points[4], pathCmd.points[5]);\n break;\n\n case 'Q':\n currentT = delta / pathCmd.pathLength;\n\n if (currentT > 1) {\n currentT = 1;\n }\n\n p = this.getPointOnQuadraticBezier(currentT, pathCmd.start.x, pathCmd.start.y, pathCmd.points[0], pathCmd.points[1], pathCmd.points[2], pathCmd.points[3]);\n break;\n\n default:\n }\n\n if (p) {\n return p;\n }\n\n break;\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n\n return null;\n }\n }, {\n key: \"getLineLength\",\n value: function getLineLength(x1, y1, x2, y2) {\n return Math.sqrt((x2 - x1) * (x2 - x1) + (y2 - y1) * (y2 - y1));\n }\n }, {\n key: \"getPathLength\",\n value: function getPathLength() {\n if (this.pathLength === -1) {\n this.pathLength = this.dataArray.reduce(function (length, command) {\n return command.pathLength > 0 ? length + command.pathLength : length;\n }, 0);\n }\n\n return this.pathLength;\n }\n }, {\n key: \"getPointOnCubicBezier\",\n value: function getPointOnCubicBezier(pct, P1x, P1y, P2x, P2y, P3x, P3y, P4x, P4y) {\n var x = P4x * CB1(pct) + P3x * CB2(pct) + P2x * CB3(pct) + P1x * CB4(pct);\n var y = P4y * CB1(pct) + P3y * CB2(pct) + P2y * CB3(pct) + P1y * CB4(pct);\n return {\n x: x,\n y: y\n };\n }\n }, {\n key: \"getPointOnQuadraticBezier\",\n value: function getPointOnQuadraticBezier(pct, P1x, P1y, P2x, P2y, P3x, P3y) {\n var x = P3x * QB1(pct) + P2x * QB2(pct) + P1x * QB3(pct);\n var y = P3y * QB1(pct) + P2y * QB2(pct) + P1y * QB3(pct);\n return {\n x: x,\n y: y\n };\n }\n }, {\n key: \"getPointOnEllipticalArc\",\n value: function getPointOnEllipticalArc(cx, cy, rx, ry, theta, psi) {\n var cosPsi = Math.cos(psi);\n var sinPsi = Math.sin(psi);\n var pt = {\n x: rx * Math.cos(theta),\n y: ry * Math.sin(theta)\n };\n return {\n x: cx + (pt.x * cosPsi - pt.y * sinPsi),\n y: cy + (pt.x * sinPsi + pt.y * cosPsi)\n };\n } // TODO need some optimisations. possibly build cache only for curved segments?\n\n }, {\n key: \"buildEquidistantCache\",\n value: function buildEquidistantCache(inputStep, inputPrecision) {\n var fullLen = this.getPathLength();\n var precision = inputPrecision || 0.25; // accuracy vs performance\n\n var step = inputStep || fullLen / 100;\n\n if (!this.equidistantCache || this.equidistantCache.step !== step || this.equidistantCache.precision !== precision) {\n // Prepare cache\n this.equidistantCache = {\n step: step,\n precision: precision,\n points: []\n }; // Calculate points\n\n var s = 0;\n\n for (var l = 0; l <= fullLen; l += precision) {\n var p0 = this.getPointOnPath(l);\n var p1 = this.getPointOnPath(l + precision);\n\n if (!p0 || !p1) {\n continue;\n }\n\n s += this.getLineLength(p0.x, p0.y, p1.x, p1.y);\n\n if (s >= step) {\n this.equidistantCache.points.push({\n x: p0.x,\n y: p0.y,\n distance: l\n });\n s -= step;\n }\n }\n }\n }\n }, {\n key: \"getEquidistantPointOnPath\",\n value: function getEquidistantPointOnPath(targetDistance, step, precision) {\n this.buildEquidistantCache(step, precision);\n\n if (targetDistance < 0 || targetDistance - this.getPathLength() > 0.00005) {\n return null;\n }\n\n var idx = Math.round(targetDistance / this.getPathLength() * (this.equidistantCache.points.length - 1));\n return this.equidistantCache.points[idx] || null;\n }\n }]);\n\n return TextPathElement;\n}(TextElement);\n\nfunction _createSuper$y(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$y()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$y() { 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\nvar ImageElement = /*#__PURE__*/function (_RenderedElement) {\n _inherits(ImageElement, _RenderedElement);\n\n var _super = _createSuper$y(ImageElement);\n\n function ImageElement(document, node, captureTextNodes) {\n var _this;\n\n _classCallCheck(this, ImageElement);\n\n _this = _super.call(this, document, node, captureTextNodes);\n _this.type = 'image';\n _this.loaded = false;\n\n var href = _this.getHrefAttribute().getString();\n\n if (!href) {\n return _possibleConstructorReturn(_this);\n }\n\n var isSvg = /\\.svg$/.test(href);\n document.images.push(_assertThisInitialized(_this));\n\n if (!isSvg) {\n _this.loadImage(href);\n } else {\n _this.loadSvg(href);\n }\n\n _this.isSvg = isSvg;\n return _this;\n }\n\n _createClass(ImageElement, [{\n key: \"loadImage\",\n value: function () {\n var _loadImage = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(href) {\n var image;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.prev = 0;\n _context.next = 3;\n return this.document.createImage(href);\n\n case 3:\n image = _context.sent;\n this.image = image;\n _context.next = 10;\n break;\n\n case 7:\n _context.prev = 7;\n _context.t0 = _context[\"catch\"](0);\n // tslint:disable-next-line: no-console\n console.error(\"Error while loading image \\\"\".concat(href, \"\\\":\"), _context.t0);\n\n case 10:\n this.loaded = true;\n\n case 11:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this, [[0, 7]]);\n }));\n\n function loadImage(_x) {\n return _loadImage.apply(this, arguments);\n }\n\n return loadImage;\n }()\n }, {\n key: \"loadSvg\",\n value: function () {\n var _loadSvg = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2(href) {\n var response, svg;\n return _regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n _context2.prev = 0;\n _context2.next = 3;\n return this.document.fetch(href);\n\n case 3:\n response = _context2.sent;\n _context2.next = 6;\n return response.text();\n\n case 6:\n svg = _context2.sent;\n this.image = svg;\n _context2.next = 13;\n break;\n\n case 10:\n _context2.prev = 10;\n _context2.t0 = _context2[\"catch\"](0);\n // tslint:disable-next-line: no-console\n console.error(\"Error while loading image \\\"\".concat(href, \"\\\":\"), _context2.t0);\n\n case 13:\n this.loaded = true;\n\n case 14:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2, this, [[0, 10]]);\n }));\n\n function loadSvg(_x2) {\n return _loadSvg.apply(this, arguments);\n }\n\n return loadSvg;\n }()\n }, {\n key: \"renderChildren\",\n value: function renderChildren(ctx) {\n var document = this.document,\n image = this.image,\n loaded = this.loaded;\n var x = this.getAttribute('x').getPixels('x');\n var y = this.getAttribute('y').getPixels('y');\n var width = this.getStyle('width').getPixels('x');\n var height = this.getStyle('height').getPixels('y');\n\n if (!loaded || !image || !width || !height) {\n return;\n }\n\n ctx.save();\n\n if (this.isSvg) {\n document.canvg.forkString(ctx, this.image, {\n ignoreMouse: true,\n ignoreAnimation: true,\n ignoreDimensions: true,\n ignoreClear: true,\n offsetX: x,\n offsetY: y,\n scaleWidth: width,\n scaleHeight: height\n }).render();\n } else {\n var _image = this.image;\n ctx.translate(x, y);\n document.setViewBox({\n ctx: ctx,\n aspectRatio: this.getAttribute('preserveAspectRatio').getString(),\n width: width,\n desiredWidth: _image.width,\n height: height,\n desiredHeight: _image.height\n });\n\n if (this.loaded) {\n if (typeof _image.complete === 'undefined' || _image.complete) {\n ctx.drawImage(_image, 0, 0);\n }\n }\n }\n\n ctx.restore();\n }\n }, {\n key: \"getBoundingBox\",\n value: function getBoundingBox() {\n var x = this.getAttribute('x').getPixels('x');\n var y = this.getAttribute('y').getPixels('y');\n var width = this.getStyle('width').getPixels('x');\n var height = this.getStyle('height').getPixels('y');\n return new BoundingBox(x, y, x + width, y + height);\n }\n }]);\n\n return ImageElement;\n}(RenderedElement);\n\nfunction _createSuper$z(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$z()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$z() { 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\nvar SymbolElement = /*#__PURE__*/function (_RenderedElement) {\n _inherits(SymbolElement, _RenderedElement);\n\n var _super = _createSuper$z(SymbolElement);\n\n function SymbolElement() {\n var _this;\n\n _classCallCheck(this, SymbolElement);\n\n _this = _super.apply(this, arguments);\n _this.type = 'symbol';\n return _this;\n }\n\n _createClass(SymbolElement, [{\n key: \"render\",\n value: function render(_) {// NO RENDER\n }\n }]);\n\n return SymbolElement;\n}(RenderedElement);\n\nvar SVGFontLoader = /*#__PURE__*/function () {\n function SVGFontLoader(document) {\n _classCallCheck(this, SVGFontLoader);\n\n this.document = document;\n this.loaded = false;\n document.fonts.push(this);\n }\n\n _createClass(SVGFontLoader, [{\n key: \"load\",\n value: function () {\n var _load = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(fontFamily, url) {\n var document, svgDocument, fonts;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.prev = 0;\n document = this.document;\n _context.next = 4;\n return document.canvg.parser.load(url);\n\n case 4:\n svgDocument = _context.sent;\n fonts = svgDocument.getElementsByTagName('font');\n Array.from(fonts).forEach(function (fontNode) {\n var font = document.createElement(fontNode);\n document.definitions[fontFamily] = font;\n });\n _context.next = 12;\n break;\n\n case 9:\n _context.prev = 9;\n _context.t0 = _context[\"catch\"](0);\n // tslint:disable-next-line: no-console\n console.error(\"Error while loading font \\\"\".concat(url, \"\\\":\"), _context.t0);\n\n case 12:\n this.loaded = true;\n\n case 13:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this, [[0, 9]]);\n }));\n\n function load(_x, _x2) {\n return _load.apply(this, arguments);\n }\n\n return load;\n }()\n }]);\n\n return SVGFontLoader;\n}();\n\nfunction _createSuper$A(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$A()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$A() { 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\nvar StyleElement = /*#__PURE__*/function (_Element) {\n _inherits(StyleElement, _Element);\n\n var _super = _createSuper$A(StyleElement);\n\n function StyleElement(document, node, captureTextNodes) {\n var _this;\n\n _classCallCheck(this, StyleElement);\n\n _this = _super.call(this, document, node, captureTextNodes);\n _this.type = 'style';\n var css = compressSpaces(Array.from(node.childNodes).map(function (_) {\n return _.data;\n }).join('').replace(/(\\/\\*([^*]|[\\r\\n]|(\\*+([^*\\/]|[\\r\\n])))*\\*+\\/)|(^[\\s]*\\/\\/.*)/gm, '') // remove comments\n .replace(/@import.*;/g, '') // remove imports\n );\n var cssDefs = css.split('}');\n cssDefs.forEach(function (_) {\n var def = _.trim();\n\n if (!def) {\n return;\n }\n\n var cssParts = def.split('{');\n var cssClasses = cssParts[0].split(',');\n var cssProps = cssParts[1].split(';');\n cssClasses.forEach(function (_) {\n var cssClass = _.trim();\n\n if (!cssClass) {\n return;\n }\n\n var props = document.styles[cssClass] || {};\n cssProps.forEach(function (cssProp) {\n var prop = cssProp.indexOf(':');\n var name = cssProp.substr(0, prop).trim();\n var value = cssProp.substr(prop + 1, cssProp.length - prop).trim();\n\n if (name && value) {\n props[name] = new Property(document, name, value);\n }\n });\n document.styles[cssClass] = props;\n document.stylesSpecificity[cssClass] = getSelectorSpecificity(cssClass);\n\n if (cssClass === '@font-face') {\n // && !nodeEnv\n var fontFamily = props['font-family'].getString().replace(/\"|'/g, '');\n var srcs = props.src.getString().split(',');\n srcs.forEach(function (src) {\n if (src.indexOf('format(\"svg\")') > 0) {\n var url = parseExternalUrl(src);\n\n if (url) {\n new SVGFontLoader(document).load(fontFamily, url);\n }\n }\n });\n }\n });\n });\n return _this;\n }\n\n return StyleElement;\n}(Element);\nStyleElement.parseExternalUrl = parseExternalUrl;\n\nfunction _createSuper$B(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$B()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$B() { 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\nvar UseElement = /*#__PURE__*/function (_RenderedElement) {\n _inherits(UseElement, _RenderedElement);\n\n var _super = _createSuper$B(UseElement);\n\n function UseElement() {\n var _this;\n\n _classCallCheck(this, UseElement);\n\n _this = _super.apply(this, arguments);\n _this.type = 'use';\n return _this;\n }\n\n _createClass(UseElement, [{\n key: \"setContext\",\n value: function setContext(ctx) {\n _get(_getPrototypeOf(UseElement.prototype), \"setContext\", this).call(this, ctx);\n\n var xAttr = this.getAttribute('x');\n var yAttr = this.getAttribute('y');\n\n if (xAttr.hasValue()) {\n ctx.translate(xAttr.getPixels('x'), 0);\n }\n\n if (yAttr.hasValue()) {\n ctx.translate(0, yAttr.getPixels('y'));\n }\n }\n }, {\n key: \"path\",\n value: function path(ctx) {\n var element = this.element;\n\n if (element) {\n element.path(ctx);\n }\n }\n }, {\n key: \"renderChildren\",\n value: function renderChildren(ctx) {\n var document = this.document,\n element = this.element;\n\n if (element) {\n var tempSvg = element;\n\n if (element.type === 'symbol') {\n // render me using a temporary svg element in symbol cases (http://www.w3.org/TR/SVG/struct.html#UseElement)\n tempSvg = new SVGElement(document, null);\n tempSvg.attributes.viewBox = new Property(document, 'viewBox', element.getAttribute('viewBox').getString());\n tempSvg.attributes.preserveAspectRatio = new Property(document, 'preserveAspectRatio', element.getAttribute('preserveAspectRatio').getString());\n tempSvg.attributes.overflow = new Property(document, 'overflow', element.getAttribute('overflow').getString());\n tempSvg.children = element.children;\n }\n\n if (tempSvg.type === 'svg') {\n var widthStyle = this.getStyle('width', false, true);\n var heightStyle = this.getStyle('height', false, true); // if symbol or svg, inherit width/height from me\n\n if (widthStyle.hasValue()) {\n tempSvg.attributes.width = new Property(document, 'width', widthStyle.getString());\n }\n\n if (heightStyle.hasValue()) {\n tempSvg.attributes.height = new Property(document, 'height', heightStyle.getString());\n }\n }\n\n var oldParent = tempSvg.parent;\n tempSvg.parent = this;\n tempSvg.render(ctx);\n tempSvg.parent = oldParent;\n }\n }\n }, {\n key: \"getBoundingBox\",\n value: function getBoundingBox(ctx) {\n var element = this.element;\n\n if (element) {\n return element.getBoundingBox(ctx);\n }\n\n return null;\n }\n }, {\n key: \"elementTransform\",\n value: function elementTransform() {\n var document = this.document,\n element = this.element;\n return Transform.fromElement(document, element);\n }\n }, {\n key: \"element\",\n get: function get() {\n if (!this._element) {\n this._element = this.getHrefAttribute().getDefinition();\n }\n\n return this._element;\n }\n }]);\n\n return UseElement;\n}(RenderedElement);\n\nfunction _createSuper$C(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$C()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$C() { 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 imGet(img, x, y, width, _, rgba) {\n return img[y * width * 4 + x * 4 + rgba];\n}\n\nfunction imSet(img, x, y, width, _, rgba, val) {\n img[y * width * 4 + x * 4 + rgba] = val;\n}\n\nfunction m(matrix, i, v) {\n var mi = matrix[i];\n return mi * (mi < 0 ? v - 255 : v);\n}\n\nfunction c(a, m1, m2, m3) {\n return m1 + Math.cos(a) * m2 + Math.sin(a) * m3;\n}\n\nvar FeColorMatrixElement = /*#__PURE__*/function (_Element) {\n _inherits(FeColorMatrixElement, _Element);\n\n var _super = _createSuper$C(FeColorMatrixElement);\n\n function FeColorMatrixElement(document, node, captureTextNodes) {\n var _this;\n\n _classCallCheck(this, FeColorMatrixElement);\n\n _this = _super.call(this, document, node, captureTextNodes);\n _this.type = 'feColorMatrix';\n var matrix = toNumbers(_this.getAttribute('values').getString());\n\n switch (_this.getAttribute('type').getString('matrix')) {\n // http://www.w3.org/TR/SVG/filters.html#feColorMatrixElement\n case 'saturate':\n {\n var s = matrix[0];\n matrix = [0.213 + 0.787 * s, 0.715 - 0.715 * s, 0.072 - 0.072 * s, 0, 0, 0.213 - 0.213 * s, 0.715 + 0.285 * s, 0.072 - 0.072 * s, 0, 0, 0.213 - 0.213 * s, 0.715 - 0.715 * s, 0.072 + 0.928 * s, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1];\n break;\n }\n\n case 'hueRotate':\n {\n var a = matrix[0] * Math.PI / 180.0;\n matrix = [c(a, 0.213, 0.787, -0.213), c(a, 0.715, -0.715, -0.715), c(a, 0.072, -0.072, 0.928), 0, 0, c(a, 0.213, -0.213, 0.143), c(a, 0.715, 0.285, 0.140), c(a, 0.072, -0.072, -0.283), 0, 0, c(a, 0.213, -0.213, -0.787), c(a, 0.715, -0.715, 0.715), c(a, 0.072, 0.928, 0.072), 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1];\n break;\n }\n\n case 'luminanceToAlpha':\n matrix = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.2125, 0.7154, 0.0721, 0, 0, 0, 0, 0, 0, 1];\n break;\n }\n\n _this.matrix = matrix;\n _this.includeOpacity = _this.getAttribute('includeOpacity').hasValue();\n return _this;\n }\n\n _createClass(FeColorMatrixElement, [{\n key: \"apply\",\n value: function apply(ctx, _, __, width, height) {\n // assuming x==0 && y==0 for now\n var includeOpacity = this.includeOpacity,\n matrix = this.matrix;\n var srcData = ctx.getImageData(0, 0, width, height);\n\n for (var y = 0; y < height; y++) {\n for (var x = 0; x < width; x++) {\n var r = imGet(srcData.data, x, y, width, height, 0);\n var g = imGet(srcData.data, x, y, width, height, 1);\n var b = imGet(srcData.data, x, y, width, height, 2);\n var a = imGet(srcData.data, x, y, width, height, 3);\n var nr = m(matrix, 0, r) + m(matrix, 1, g) + m(matrix, 2, b) + m(matrix, 3, a) + m(matrix, 4, 1);\n var ng = m(matrix, 5, r) + m(matrix, 6, g) + m(matrix, 7, b) + m(matrix, 8, a) + m(matrix, 9, 1);\n var nb = m(matrix, 10, r) + m(matrix, 11, g) + m(matrix, 12, b) + m(matrix, 13, a) + m(matrix, 14, 1);\n var na = m(matrix, 15, r) + m(matrix, 16, g) + m(matrix, 17, b) + m(matrix, 18, a) + m(matrix, 19, 1);\n\n if (includeOpacity) {\n nr = ng = nb = 0;\n na *= a / 255;\n }\n\n imSet(srcData.data, x, y, width, height, 0, nr);\n imSet(srcData.data, x, y, width, height, 1, ng);\n imSet(srcData.data, x, y, width, height, 2, nb);\n imSet(srcData.data, x, y, width, height, 3, na);\n }\n }\n\n ctx.clearRect(0, 0, width, height);\n ctx.putImageData(srcData, 0, 0);\n }\n }]);\n\n return FeColorMatrixElement;\n}(Element);\n\nfunction _createSuper$D(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$D()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$D() { 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\nvar MaskElement = /*#__PURE__*/function (_Element) {\n _inherits(MaskElement, _Element);\n\n var _super = _createSuper$D(MaskElement);\n\n function MaskElement() {\n var _this;\n\n _classCallCheck(this, MaskElement);\n\n _this = _super.apply(this, arguments);\n _this.type = 'mask';\n return _this;\n }\n\n _createClass(MaskElement, [{\n key: \"apply\",\n value: function apply(ctx, element) {\n var document = this.document; // render as temp svg\n\n var x = this.getAttribute('x').getPixels('x');\n var y = this.getAttribute('y').getPixels('y');\n var width = this.getStyle('width').getPixels('x');\n var height = this.getStyle('height').getPixels('y');\n\n if (!width && !height) {\n var boundingBox = new BoundingBox();\n this.children.forEach(function (child) {\n boundingBox.addBoundingBox(child.getBoundingBox(ctx));\n });\n x = Math.floor(boundingBox.x1);\n y = Math.floor(boundingBox.y1);\n width = Math.floor(boundingBox.width);\n height = Math.floor(boundingBox.height);\n }\n\n var ignoredStyles = this.removeStyles(element, MaskElement.ignoreStyles);\n var maskCanvas = document.createCanvas(x + width, y + height);\n var maskCtx = maskCanvas.getContext('2d');\n document.screen.setDefaults(maskCtx);\n this.renderChildren(maskCtx); // convert mask to alpha with a fake node\n // TODO: refactor out apply from feColorMatrix\n\n new FeColorMatrixElement(document, {\n nodeType: 1,\n childNodes: [],\n attributes: [{\n nodeName: 'type',\n value: 'luminanceToAlpha'\n }, {\n nodeName: 'includeOpacity',\n value: 'true'\n }]\n }).apply(maskCtx, 0, 0, x + width, y + height);\n var tmpCanvas = document.createCanvas(x + width, y + height);\n var tmpCtx = tmpCanvas.getContext('2d');\n document.screen.setDefaults(tmpCtx);\n element.render(tmpCtx);\n tmpCtx.globalCompositeOperation = 'destination-in';\n tmpCtx.fillStyle = maskCtx.createPattern(maskCanvas, 'no-repeat');\n tmpCtx.fillRect(0, 0, x + width, y + height);\n ctx.fillStyle = tmpCtx.createPattern(tmpCanvas, 'no-repeat');\n ctx.fillRect(0, 0, x + width, y + height); // reassign mask\n\n this.restoreStyles(element, ignoredStyles);\n }\n }, {\n key: \"render\",\n value: function render(_) {// NO RENDER\n }\n }]);\n\n return MaskElement;\n}(Element);\nMaskElement.ignoreStyles = ['mask', 'transform', 'clip-path'];\n\nfunction _createSuper$E(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$E()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$E() { 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\nvar noop = function noop() {};\n\nvar ClipPathElement = /*#__PURE__*/function (_Element) {\n _inherits(ClipPathElement, _Element);\n\n var _super = _createSuper$E(ClipPathElement);\n\n function ClipPathElement() {\n var _this;\n\n _classCallCheck(this, ClipPathElement);\n\n _this = _super.apply(this, arguments);\n _this.type = 'clipPath';\n return _this;\n }\n\n _createClass(ClipPathElement, [{\n key: \"apply\",\n value: function apply(ctx) {\n var document = this.document;\n var contextProto = Reflect.getPrototypeOf(ctx);\n var beginPath = ctx.beginPath,\n closePath = ctx.closePath;\n\n if (contextProto) {\n contextProto.beginPath = noop;\n contextProto.closePath = noop;\n }\n\n Reflect.apply(beginPath, ctx, []);\n this.children.forEach(function (child) {\n if (typeof child.path === 'undefined') {\n return;\n }\n\n var transform = typeof child.elementTransform !== 'undefined' ? child.elementTransform() : null; // handle \n\n if (!transform) {\n transform = Transform.fromElement(document, child);\n }\n\n if (transform) {\n transform.apply(ctx);\n }\n\n child.path(ctx);\n\n if (contextProto) {\n contextProto.closePath = closePath;\n }\n\n if (transform) {\n transform.unapply(ctx);\n }\n });\n Reflect.apply(closePath, ctx, []);\n ctx.clip();\n\n if (contextProto) {\n contextProto.beginPath = beginPath;\n contextProto.closePath = closePath;\n }\n }\n }, {\n key: \"render\",\n value: function render(_) {// NO RENDER\n }\n }]);\n\n return ClipPathElement;\n}(Element);\n\nfunction _createSuper$F(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$F()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$F() { 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\nvar FilterElement = /*#__PURE__*/function (_Element) {\n _inherits(FilterElement, _Element);\n\n var _super = _createSuper$F(FilterElement);\n\n function FilterElement() {\n var _this;\n\n _classCallCheck(this, FilterElement);\n\n _this = _super.apply(this, arguments);\n _this.type = 'filter';\n return _this;\n }\n\n _createClass(FilterElement, [{\n key: \"apply\",\n value: function apply(ctx, element) {\n // render as temp svg\n var document = this.document,\n children = this.children;\n var boundingBox = element.getBoundingBox(ctx);\n\n if (!boundingBox) {\n return;\n }\n\n var px = 0;\n var py = 0;\n children.forEach(function (child) {\n var efd = child.extraFilterDistance || 0;\n px = Math.max(px, efd);\n py = Math.max(py, efd);\n });\n var width = Math.floor(boundingBox.width);\n var height = Math.floor(boundingBox.height);\n var tmpCanvasWidth = width + 2 * px;\n var tmpCanvasHeight = height + 2 * py;\n\n if (tmpCanvasWidth < 1 || tmpCanvasHeight < 1) {\n return;\n }\n\n var x = Math.floor(boundingBox.x);\n var y = Math.floor(boundingBox.y);\n var ignoredStyles = this.removeStyles(element, FilterElement.ignoreStyles);\n var tmpCanvas = document.createCanvas(tmpCanvasWidth, tmpCanvasHeight);\n var tmpCtx = tmpCanvas.getContext('2d');\n document.screen.setDefaults(tmpCtx);\n tmpCtx.translate(-x + px, -y + py);\n element.render(tmpCtx); // apply filters\n\n children.forEach(function (child) {\n if (typeof child.apply === 'function') {\n child.apply(tmpCtx, 0, 0, tmpCanvasWidth, tmpCanvasHeight);\n }\n }); // render on me\n\n ctx.drawImage(tmpCanvas, 0, 0, tmpCanvasWidth, tmpCanvasHeight, x - px, y - py, tmpCanvasWidth, tmpCanvasHeight);\n this.restoreStyles(element, ignoredStyles);\n }\n }, {\n key: \"render\",\n value: function render(_) {// NO RENDER\n }\n }]);\n\n return FilterElement;\n}(Element);\nFilterElement.ignoreStyles = ['filter', 'transform', 'clip-path'];\n\nfunction _createSuper$G(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$G()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$G() { 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\nvar FeDropShadowElement = /*#__PURE__*/function (_Element) {\n _inherits(FeDropShadowElement, _Element);\n\n var _super = _createSuper$G(FeDropShadowElement);\n\n function FeDropShadowElement(document, node, captureTextNodes) {\n var _this;\n\n _classCallCheck(this, FeDropShadowElement);\n\n _this = _super.call(this, document, node, captureTextNodes);\n _this.type = 'feDropShadow';\n\n _this.addStylesFromStyleDefinition();\n\n return _this;\n }\n\n _createClass(FeDropShadowElement, [{\n key: \"apply\",\n value: function apply(_, __, ___, ____, _____) {// TODO: implement\n }\n }]);\n\n return FeDropShadowElement;\n}(Element);\n\nfunction _createSuper$H(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$H()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$H() { 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\nvar FeMorphologyElement = /*#__PURE__*/function (_Element) {\n _inherits(FeMorphologyElement, _Element);\n\n var _super = _createSuper$H(FeMorphologyElement);\n\n function FeMorphologyElement() {\n var _this;\n\n _classCallCheck(this, FeMorphologyElement);\n\n _this = _super.apply(this, arguments);\n _this.type = 'feMorphology';\n return _this;\n }\n\n _createClass(FeMorphologyElement, [{\n key: \"apply\",\n value: function apply(_, __, ___, ____, _____) {// TODO: implement\n }\n }]);\n\n return FeMorphologyElement;\n}(Element);\n\nfunction _createSuper$I(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$I()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$I() { 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\nvar FeCompositeElement = /*#__PURE__*/function (_Element) {\n _inherits(FeCompositeElement, _Element);\n\n var _super = _createSuper$I(FeCompositeElement);\n\n function FeCompositeElement() {\n var _this;\n\n _classCallCheck(this, FeCompositeElement);\n\n _this = _super.apply(this, arguments);\n _this.type = 'feComposite';\n return _this;\n }\n\n _createClass(FeCompositeElement, [{\n key: \"apply\",\n value: function apply(_, __, ___, ____, _____) {// TODO: implement\n }\n }]);\n\n return FeCompositeElement;\n}(Element);\n\nfunction _createSuper$J(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$J()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$J() { 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\nvar FeGaussianBlurElement = /*#__PURE__*/function (_Element) {\n _inherits(FeGaussianBlurElement, _Element);\n\n var _super = _createSuper$J(FeGaussianBlurElement);\n\n function FeGaussianBlurElement(document, node, captureTextNodes) {\n var _this;\n\n _classCallCheck(this, FeGaussianBlurElement);\n\n _this = _super.call(this, document, node, captureTextNodes);\n _this.type = 'feGaussianBlur';\n _this.blurRadius = Math.floor(_this.getAttribute('stdDeviation').getNumber());\n _this.extraFilterDistance = _this.blurRadius;\n return _this;\n }\n\n _createClass(FeGaussianBlurElement, [{\n key: \"apply\",\n value: function apply(ctx, x, y, width, height) {\n var document = this.document,\n blurRadius = this.blurRadius;\n var body = document.window ? document.window.document.body : null;\n var canvas = ctx.canvas; // StackBlur requires canvas be on document\n\n canvas.id = document.getUniqueId();\n\n if (body) {\n canvas.style.display = 'none';\n body.appendChild(canvas);\n }\n\n canvasRGBA(canvas, x, y, width, height, blurRadius);\n\n if (body) {\n body.removeChild(canvas);\n }\n }\n }]);\n\n return FeGaussianBlurElement;\n}(Element);\n\nfunction _createSuper$K(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$K()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$K() { 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\nvar TitleElement = /*#__PURE__*/function (_Element) {\n _inherits(TitleElement, _Element);\n\n var _super = _createSuper$K(TitleElement);\n\n function TitleElement() {\n var _this;\n\n _classCallCheck(this, TitleElement);\n\n _this = _super.apply(this, arguments);\n _this.type = 'title';\n return _this;\n }\n\n return TitleElement;\n}(Element);\n\nfunction _createSuper$L(Derived) { return function () { var Super = _getPrototypeOf(Derived), result; if (_isNativeReflectConstruct$L()) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$L() { 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\nvar DescElement = /*#__PURE__*/function (_Element) {\n _inherits(DescElement, _Element);\n\n var _super = _createSuper$L(DescElement);\n\n function DescElement() {\n var _this;\n\n _classCallCheck(this, DescElement);\n\n _this = _super.apply(this, arguments);\n _this.type = 'desc';\n return _this;\n }\n\n return DescElement;\n}(Element);\n\nvar elementTypes = {\n 'svg': SVGElement,\n 'rect': RectElement,\n 'circle': CircleElement,\n 'ellipse': EllipseElement,\n 'line': LineElement,\n 'polyline': PolylineElement,\n 'polygon': PolygonElement,\n 'path': PathElement,\n 'pattern': PatternElement,\n 'marker': MarkerElement,\n 'defs': DefsElement,\n 'linearGradient': LinearGradientElement,\n 'radialGradient': RadialGradientElement,\n 'stop': StopElement,\n 'animate': AnimateElement,\n 'animateColor': AnimateColorElement,\n 'animateTransform': AnimateTransformElement,\n 'font': FontElement,\n 'font-face': FontFaceElement,\n 'missing-glyph': MissingGlyphElement,\n 'glyph': GlyphElement,\n 'text': TextElement,\n 'tspan': TSpanElement,\n 'tref': TRefElement,\n 'a': AElement,\n 'textPath': TextPathElement,\n 'image': ImageElement,\n 'g': GElement,\n 'symbol': SymbolElement,\n 'style': StyleElement,\n 'use': UseElement,\n 'mask': MaskElement,\n 'clipPath': ClipPathElement,\n 'filter': FilterElement,\n 'feDropShadow': FeDropShadowElement,\n 'feMorphology': FeMorphologyElement,\n 'feComposite': FeCompositeElement,\n 'feColorMatrix': FeColorMatrixElement,\n 'feGaussianBlur': FeGaussianBlurElement,\n 'title': TitleElement,\n 'desc': DescElement\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 createCanvas(width, height) {\n var canvas = document.createElement('canvas');\n canvas.width = width;\n canvas.height = height;\n return canvas;\n}\n\nfunction createImage(_x) {\n return _createImage.apply(this, arguments);\n}\n\nfunction _createImage() {\n _createImage = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(src) {\n var anonymousCrossOrigin,\n image,\n _args = arguments;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n anonymousCrossOrigin = _args.length > 1 && _args[1] !== undefined ? _args[1] : false;\n image = document.createElement('img');\n\n if (anonymousCrossOrigin) {\n image.crossOrigin = 'Anonymous';\n }\n\n return _context.abrupt(\"return\", new Promise(function (resolve, reject) {\n image.onload = function () {\n resolve(image);\n };\n\n image.onerror = function () {\n reject();\n };\n\n image.src = src;\n }));\n\n case 4:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n return _createImage.apply(this, arguments);\n}\n\nvar Document = /*#__PURE__*/function () {\n function Document(canvg) {\n var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n _ref$rootEmSize = _ref.rootEmSize,\n rootEmSize = _ref$rootEmSize === void 0 ? 12 : _ref$rootEmSize,\n _ref$emSize = _ref.emSize,\n emSize = _ref$emSize === void 0 ? 12 : _ref$emSize,\n _ref$createCanvas = _ref.createCanvas,\n createCanvas = _ref$createCanvas === void 0 ? Document.createCanvas : _ref$createCanvas,\n _ref$createImage = _ref.createImage,\n createImage = _ref$createImage === void 0 ? Document.createImage : _ref$createImage,\n anonymousCrossOrigin = _ref.anonymousCrossOrigin;\n\n _classCallCheck(this, Document);\n\n this.canvg = canvg;\n this.definitions = {};\n this.styles = {};\n this.stylesSpecificity = {};\n this.images = [];\n this.fonts = [];\n this.emSizeStack = [];\n this.uniqueId = 0;\n this.screen = canvg.screen;\n this.rootEmSize = rootEmSize;\n this.emSize = emSize;\n this.createCanvas = createCanvas;\n this.createImage = this.bindCreateImage(createImage, anonymousCrossOrigin);\n this.screen.wait(this.isImagesLoaded.bind(this));\n this.screen.wait(this.isFontsLoaded.bind(this));\n }\n\n _createClass(Document, [{\n key: \"bindCreateImage\",\n value: function bindCreateImage(createImage, anonymousCrossOrigin) {\n if (typeof anonymousCrossOrigin === 'boolean') {\n return function (source, forceAnonymousCrossOrigin) {\n return createImage(source, typeof forceAnonymousCrossOrigin === 'boolean' ? forceAnonymousCrossOrigin : anonymousCrossOrigin);\n };\n }\n\n return createImage;\n }\n }, {\n key: \"popEmSize\",\n value: function popEmSize() {\n var emSizeStack = this.emSizeStack;\n emSizeStack.pop();\n }\n }, {\n key: \"getUniqueId\",\n value: function getUniqueId() {\n return \"canvg\".concat(++this.uniqueId);\n }\n }, {\n key: \"isImagesLoaded\",\n value: function isImagesLoaded() {\n return this.images.every(function (_) {\n return _.loaded;\n });\n }\n }, {\n key: \"isFontsLoaded\",\n value: function isFontsLoaded() {\n return this.fonts.every(function (_) {\n return _.loaded;\n });\n }\n }, {\n key: \"createDocumentElement\",\n value: function createDocumentElement(document) {\n var documentElement = this.createElement(document.documentElement);\n documentElement.root = true;\n documentElement.addStylesFromStyleDefinition();\n this.documentElement = documentElement;\n return documentElement;\n }\n }, {\n key: \"createElement\",\n value: function createElement(node) {\n var elementType = node.nodeName.replace(/^[^:]+:/, '');\n var ElementType = Document.elementTypes[elementType];\n\n if (typeof ElementType !== 'undefined') {\n return new ElementType(this, node);\n }\n\n return new UnknownElement(this, node);\n }\n }, {\n key: \"createTextNode\",\n value: function createTextNode(node) {\n return new TextNode(this, node);\n }\n }, {\n key: \"setViewBox\",\n value: function setViewBox(config) {\n this.screen.setViewBox(_objectSpread({\n document: this\n }, config));\n }\n }, {\n key: \"window\",\n get: function get() {\n return this.screen.window;\n }\n }, {\n key: \"fetch\",\n get: function get() {\n return this.screen.fetch;\n }\n }, {\n key: \"ctx\",\n get: function get() {\n return this.screen.ctx;\n }\n }, {\n key: \"emSize\",\n get: function get() {\n var emSizeStack = this.emSizeStack;\n return emSizeStack[emSizeStack.length - 1];\n },\n set: function set(value) {\n var emSizeStack = this.emSizeStack;\n emSizeStack.push(value);\n }\n }]);\n\n return Document;\n}();\nDocument.createCanvas = createCanvas;\nDocument.createImage = createImage;\nDocument.elementTypes = elementTypes;\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; }\n/**\r\n * SVG renderer on canvas.\r\n */\n\nvar Canvg = /*#__PURE__*/function () {\n /**\r\n * Main constructor.\r\n * @param ctx - Rendering context.\r\n * @param svg - SVG Document.\r\n * @param options - Rendering options.\r\n */\n function Canvg(ctx, svg) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n\n _classCallCheck(this, Canvg);\n\n this.parser = new Parser(options);\n this.screen = new Screen(ctx, options);\n this.options = options;\n var document = new Document(this, options);\n var documentElement = document.createDocumentElement(svg);\n this.document = document;\n this.documentElement = documentElement;\n }\n /**\r\n * Create Canvg isntance from SVG source string or URL.\r\n * @param ctx - Rendering context.\r\n * @param svg - SVG source string or URL.\r\n * @param options - Rendering options.\r\n */\n\n\n _createClass(Canvg, [{\n key: \"fork\",\n\n /**\r\n * Create new Canvg instance with inherited options.\r\n * @param ctx - Rendering context.\r\n * @param svg - SVG source string or URL.\r\n * @param options - Rendering options.\r\n */\n value: function fork(ctx, svg) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n return Canvg.from(ctx, svg, _objectSpread$1({}, this.options, {}, options));\n }\n /**\r\n * Create new Canvg instance with inherited options.\r\n * @param ctx - Rendering context.\r\n * @param svg - SVG source string.\r\n * @param options - Rendering options.\r\n */\n\n }, {\n key: \"forkString\",\n value: function forkString(ctx, svg) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n return Canvg.fromString(ctx, svg, _objectSpread$1({}, this.options, {}, options));\n }\n /**\r\n * Document is ready promise.\r\n */\n\n }, {\n key: \"ready\",\n value: function ready() {\n return this.screen.ready();\n }\n /**\r\n * Document is ready value.\r\n */\n\n }, {\n key: \"isReady\",\n value: function isReady() {\n return this.screen.isReady();\n }\n /**\r\n * Render only first frame, ignoring animations and mouse.\r\n * @param options - Rendering options.\r\n */\n\n }, {\n key: \"render\",\n value: function () {\n var _render = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {\n var options,\n _args = arguments;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n options = _args.length > 0 && _args[0] !== undefined ? _args[0] : {};\n this.start(_objectSpread$1({\n enableRedraw: true,\n ignoreAnimation: true,\n ignoreMouse: true\n }, options));\n _context.next = 4;\n return this.ready();\n\n case 4:\n this.stop();\n\n case 5:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this);\n }));\n\n function render() {\n return _render.apply(this, arguments);\n }\n\n return render;\n }()\n /**\r\n * Start rendering.\r\n * @param options - Render options.\r\n */\n\n }, {\n key: \"start\",\n value: function start() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var documentElement = this.documentElement,\n screen = this.screen,\n baseOptions = this.options;\n screen.start(documentElement, _objectSpread$1({\n enableRedraw: true\n }, baseOptions, {}, options));\n }\n /**\r\n * Stop rendering.\r\n */\n\n }, {\n key: \"stop\",\n value: function stop() {\n this.screen.stop();\n }\n /**\r\n * Resize SVG to fit in given size.\r\n * @param width\r\n * @param height\r\n * @param preserveAspectRatio\r\n */\n\n }, {\n key: \"resize\",\n value: function resize(width) {\n var height = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : width;\n var preserveAspectRatio = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n this.documentElement.resize(width, height, preserveAspectRatio);\n }\n }], [{\n key: \"from\",\n value: function () {\n var _from = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2(ctx, svg) {\n var options,\n parser,\n svgDocument,\n _args2 = arguments;\n return _regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n options = _args2.length > 2 && _args2[2] !== undefined ? _args2[2] : {};\n parser = new Parser(options);\n _context2.next = 4;\n return parser.parse(svg);\n\n case 4:\n svgDocument = _context2.sent;\n return _context2.abrupt(\"return\", new Canvg(ctx, svgDocument, options));\n\n case 6:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }));\n\n function from(_x, _x2) {\n return _from.apply(this, arguments);\n }\n\n return from;\n }()\n /**\r\n * Create Canvg isntance from SVG source string.\r\n * @param ctx - Rendering context.\r\n * @param svg - SVG source string.\r\n * @param options - Rendering options.\r\n */\n\n }, {\n key: \"fromString\",\n value: function fromString(ctx, svg) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var parser = new Parser(options);\n var svgDocument = parser.parseFromString(svg);\n return new Canvg(ctx, svgDocument, options);\n }\n }]);\n\n return Canvg;\n}();\n\n/**\r\n * Options preset for `OffscreenCanvas`.\r\n * @param config - Preset requirements.\r\n * @param config.DOMParser - XML/HTML parser from string into DOM Document.\r\n */\nfunction offscreen() {\n var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n DOMParserFallback = _ref.DOMParser;\n\n var preset = {\n window: null,\n ignoreAnimation: true,\n ignoreMouse: true,\n DOMParser: DOMParserFallback,\n createCanvas: function createCanvas(width, height) {\n return new OffscreenCanvas(width, height);\n },\n createImage: function createImage(url) {\n return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {\n var response, blob, img;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return fetch(url);\n\n case 2:\n response = _context.sent;\n _context.next = 5;\n return response.blob();\n\n case 5:\n blob = _context.sent;\n _context.next = 8;\n return createImageBitmap(blob);\n\n case 8:\n img = _context.sent;\n return _context.abrupt(\"return\", img);\n\n case 10:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }))();\n }\n };\n\n if (typeof DOMParser !== 'undefined' || typeof DOMParserFallback === 'undefined') {\n Reflect.deleteProperty(preset, 'DOMParser');\n }\n\n return preset;\n}\n\n/**\r\n * Options preset for `node-canvas`.\r\n * @param config - Preset requirements.\r\n * @param config.DOMParser - XML/HTML parser from string into DOM Document.\r\n * @param config.canvas - `node-canvas` exports.\r\n * @param config.fetch - WHATWG-compatible `fetch` function.\r\n */\nfunction node(_ref) {\n var DOMParser = _ref.DOMParser,\n canvas = _ref.canvas,\n fetch = _ref.fetch;\n return {\n window: null,\n ignoreAnimation: true,\n ignoreMouse: true,\n DOMParser: DOMParser,\n fetch: fetch,\n createCanvas: canvas.createCanvas,\n createImage: canvas.loadImage\n };\n}\n\n\n\nvar index = /*#__PURE__*/Object.freeze({\n\t__proto__: null,\n\toffscreen: offscreen,\n\tnode: node\n});\n\nexport default Canvg;\nexport { AElement, AnimateColorElement, AnimateElement, AnimateTransformElement, BoundingBox, CB1, CB2, CB3, CB4, Canvg, CircleElement, ClipPathElement, DefsElement, DescElement, Document, Element, EllipseElement, FeColorMatrixElement, FeCompositeElement, FeDropShadowElement, FeGaussianBlurElement, FeMorphologyElement, FilterElement, Font, FontElement, FontFaceElement, GElement, GlyphElement, GradientElement, ImageElement, LineElement, LinearGradientElement, MarkerElement, MaskElement, Matrix, MissingGlyphElement, Mouse, PSEUDO_ZERO, Parser, PathElement, PathParser, PatternElement, Point, PolygonElement, PolylineElement, Property, QB1, QB2, QB3, RadialGradientElement, RectElement, RenderedElement, Rotate, SVGElement, SVGFontLoader, Scale, Screen, Skew, SkewX, SkewY, StopElement, StyleElement, SymbolElement, TRefElement, TSpanElement, TextElement, TextPathElement, TitleElement, Transform, Translate, UnknownElement, UseElement, ViewPort, compressSpaces, getSelectorSpecificity, normalizeAttributeName, normalizeColor, parseExternalUrl, index as presets, toNumbers, trimLeft, trimRight, vectorMagnitude, vectorsAngle, vectorsRatio };\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZXMuanMiLCJzb3VyY2VzIjpbIi4uL25vZGVfbW9kdWxlcy9yZWdlbmVyYXRvci1ydW50aW1lL3J1bnRpbWUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTQtcHJlc2VudCwgRmFjZWJvb2ssIEluYy5cbiAqXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZSBmb3VuZCBpbiB0aGVcbiAqIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS5cbiAqL1xuXG52YXIgcnVudGltZSA9IChmdW5jdGlvbiAoZXhwb3J0cykge1xuICBcInVzZSBzdHJpY3RcIjtcblxuICB2YXIgT3AgPSBPYmplY3QucHJvdG90eXBlO1xuICB2YXIgaGFzT3duID0gT3AuaGFzT3duUHJvcGVydHk7XG4gIHZhciB1bmRlZmluZWQ7IC8vIE1vcmUgY29tcHJlc3NpYmxlIHRoYW4gdm9pZCAwLlxuICB2YXIgJFN5bWJvbCA9IHR5cGVvZiBTeW1ib2wgPT09IFwiZnVuY3Rpb25cIiA/IFN5bWJvbCA6IHt9O1xuICB2YXIgaXRlcmF0b3JTeW1ib2wgPSAkU3ltYm9sLml0ZXJhdG9yIHx8IFwiQEBpdGVyYXRvclwiO1xuICB2YXIgYXN5bmNJdGVyYXRvclN5bWJvbCA9ICRTeW1ib2wuYXN5bmNJdGVyYXRvciB8fCBcIkBAYXN5bmNJdGVyYXRvclwiO1xuICB2YXIgdG9TdHJpbmdUYWdTeW1ib2wgPSAkU3ltYm9sLnRvU3RyaW5nVGFnIHx8IFwiQEB0b1N0cmluZ1RhZ1wiO1xuXG4gIGZ1bmN0aW9uIHdyYXAoaW5uZXJGbiwgb3V0ZXJGbiwgc2VsZiwgdHJ5TG9jc0xpc3QpIHtcbiAgICAvLyBJZiBvdXRlckZuIHByb3ZpZGVkIGFuZCBvdXRlckZuLnByb3RvdHlwZSBpcyBhIEdlbmVyYXRvciwgdGhlbiBvdXRlckZuLnByb3RvdHlwZSBpbnN0YW5jZW9mIEdlbmVyYXRvci5cbiAgICB2YXIgcHJvdG9HZW5lcmF0b3IgPSBvdXRlckZuICYmIG91dGVyRm4ucHJvdG90eXBlIGluc3RhbmNlb2YgR2VuZXJhdG9yID8gb3V0ZXJGbiA6IEdlbmVyYXRvcjtcbiAgICB2YXIgZ2VuZXJhdG9yID0gT2JqZWN0LmNyZWF0ZShwcm90b0dlbmVyYXRvci5wcm90b3R5cGUpO1xuICAgIHZhciBjb250ZXh0ID0gbmV3IENvbnRleHQodHJ5TG9jc0xpc3QgfHwgW10pO1xuXG4gICAgLy8gVGhlIC5faW52b2tlIG1ldGhvZCB1bmlmaWVzIHRoZSBpbXBsZW1lbnRhdGlvbnMgb2YgdGhlIC5uZXh0LFxuICAgIC8vIC50aHJvdywgYW5kIC5yZXR1cm4gbWV0aG9kcy5cbiAgICBnZW5lcmF0b3IuX2ludm9rZSA9IG1ha2VJbnZva2VNZXRob2QoaW5uZXJGbiwgc2VsZiwgY29udGV4dCk7XG5cbiAgICByZXR1cm4gZ2VuZXJhdG9yO1xuICB9XG4gIGV4cG9ydHMud3JhcCA9IHdyYXA7XG5cbiAgLy8gVHJ5L2NhdGNoIGhlbHBlciB0byBtaW5pbWl6ZSBkZW9wdGltaXphdGlvbnMuIFJldHVybnMgYSBjb21wbGV0aW9uXG4gIC8vIHJlY29yZCBsaWtlIGNvbnRleHQudHJ5RW50cmllc1tpXS5jb21wbGV0aW9uLiBUaGlzIGludGVyZmFjZSBjb3VsZFxuICAvLyBoYXZlIGJlZW4gKGFuZCB3YXMgcHJldmlvdXNseSkgZGVzaWduZWQgdG8gdGFrZSBhIGNsb3N1cmUgdG8gYmVcbiAgLy8gaW52b2tlZCB3aXRob3V0IGFyZ3VtZW50cywgYnV0IGluIGFsbCB0aGUgY2FzZXMgd2UgY2FyZSBhYm91dCB3ZVxuICAvLyBhbHJlYWR5IGhhdmUgYW4gZXhpc3RpbmcgbWV0aG9kIHdlIHdhbnQgdG8gY2FsbCwgc28gdGhlcmUncyBubyBuZWVkXG4gIC8vIHRvIGNyZWF0ZSBhIG5ldyBmdW5jdGlvbiBvYmplY3QuIFdlIGNhbiBldmVuIGdldCBhd2F5IHdpdGggYXNzdW1pbmdcbiAgLy8gdGhlIG1ldGhvZCB0YWtlcyBleGFjdGx5IG9uZSBhcmd1bWVudCwgc2luY2UgdGhhdCBoYXBwZW5zIHRvIGJlIHRydWVcbiAgLy8gaW4gZXZlcnkgY2FzZSwgc28gd2UgZG9uJ3QgaGF2ZSB0byB0b3VjaCB0aGUgYXJndW1lbnRzIG9iamVjdC4gVGhlXG4gIC8vIG9ubHkgYWRkaXRpb25hbCBhbGxvY2F0aW9uIHJlcXVpcmVkIGlzIHRoZSBjb21wbGV0aW9uIHJlY29yZCwgd2hpY2hcbiAgLy8gaGFzIGEgc3RhYmxlIHNoYXBlIGFuZCBzbyBob3BlZnVsbHkgc2hvdWxkIGJlIGNoZWFwIHRvIGFsbG9jYXRlLlxuICBmdW5jdGlvbiB0cnlDYXRjaChmbiwgb2JqLCBhcmcpIHtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIHsgdHlwZTogXCJub3JtYWxcIiwgYXJnOiBmbi5jYWxsKG9iaiwgYXJnKSB9O1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgcmV0dXJuIHsgdHlwZTogXCJ0aHJvd1wiLCBhcmc6IGVyciB9O1xuICAgIH1cbiAgfVxuXG4gIHZhciBHZW5TdGF0ZVN1c3BlbmRlZFN0YXJ0ID0gXCJzdXNwZW5kZWRTdGFydFwiO1xuICB2YXIgR2VuU3RhdGVTdXNwZW5kZWRZaWVsZCA9IFwic3VzcGVuZGVkWWllbGRcIjtcbiAgdmFyIEdlblN0YXRlRXhlY3V0aW5nID0gXCJleGVjdXRpbmdcIjtcbiAgdmFyIEdlblN0YXRlQ29tcGxldGVkID0gXCJjb21wbGV0ZWRcIjtcblxuICAvLyBSZXR1cm5pbmcgdGhpcyBvYmplY3QgZnJvbSB0aGUgaW5uZXJGbiBoYXMgdGhlIHNhbWUgZWZmZWN0IGFzXG4gIC8vIGJyZWFraW5nIG91dCBvZiB0aGUgZGlzcGF0Y2ggc3dpdGNoIHN0YXRlbWVudC5cbiAgdmFyIENvbnRpbnVlU2VudGluZWwgPSB7fTtcblxuICAvLyBEdW1teSBjb25zdHJ1Y3RvciBmdW5jdGlvbnMgdGhhdCB3ZSB1c2UgYXMgdGhlIC5jb25zdHJ1Y3RvciBhbmRcbiAgLy8gLmNvbnN0cnVjdG9yLnByb3RvdHlwZSBwcm9wZXJ0aWVzIGZvciBmdW5jdGlvbnMgdGhhdCByZXR1cm4gR2VuZXJhdG9yXG4gIC8vIG9iamVjdHMuIEZvciBmdWxsIHNwZWMgY29tcGxpYW5jZSwgeW91IG1heSB3aXNoIHRvIGNvbmZpZ3VyZSB5b3VyXG4gIC8vIG1pbmlmaWVyIG5vdCB0byBtYW5nbGUgdGhlIG5hbWVzIG9mIHRoZXNlIHR3byBmdW5jdGlvbnMuXG4gIGZ1bmN0aW9uIEdlbmVyYXRvcigpIHt9XG4gIGZ1bmN0aW9uIEdlbmVyYXRvckZ1bmN0aW9uKCkge31cbiAgZnVuY3Rpb24gR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGUoKSB7fVxuXG4gIC8vIFRoaXMgaXMgYSBwb2x5ZmlsbCBmb3IgJUl0ZXJhdG9yUHJvdG90eXBlJSBmb3IgZW52aXJvbm1lbnRzIHRoYXRcbiAgLy8gZG9uJ3QgbmF0aXZlbHkgc3VwcG9ydCBpdC5cbiAgdmFyIEl0ZXJhdG9yUHJvdG90eXBlID0ge307XG4gIEl0ZXJhdG9yUHJvdG90eXBlW2l0ZXJhdG9yU3ltYm9sXSA9IGZ1bmN0aW9uICgpIHtcbiAgICByZXR1cm4gdGhpcztcbiAgfTtcblxuICB2YXIgZ2V0UHJvdG8gPSBPYmplY3QuZ2V0UHJvdG90eXBlT2Y7XG4gIHZhciBOYXRpdmVJdGVyYXRvclByb3RvdHlwZSA9IGdldFByb3RvICYmIGdldFByb3RvKGdldFByb3RvKHZhbHVlcyhbXSkpKTtcbiAgaWYgKE5hdGl2ZUl0ZXJhdG9yUHJvdG90eXBlICYmXG4gICAgICBOYXRpdmVJdGVyYXRvclByb3RvdHlwZSAhPT0gT3AgJiZcbiAgICAgIGhhc093bi5jYWxsKE5hdGl2ZUl0ZXJhdG9yUHJvdG90eXBlLCBpdGVyYXRvclN5bWJvbCkpIHtcbiAgICAvLyBUaGlzIGVudmlyb25tZW50IGhhcyBhIG5hdGl2ZSAlSXRlcmF0b3JQcm90b3R5cGUlOyB1c2UgaXQgaW5zdGVhZFxuICAgIC8vIG9mIHRoZSBwb2x5ZmlsbC5cbiAgICBJdGVyYXRvclByb3RvdHlwZSA9IE5hdGl2ZUl0ZXJhdG9yUHJvdG90eXBlO1xuICB9XG5cbiAgdmFyIEdwID0gR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGUucHJvdG90eXBlID1cbiAgICBHZW5lcmF0b3IucHJvdG90eXBlID0gT2JqZWN0LmNyZWF0ZShJdGVyYXRvclByb3RvdHlwZSk7XG4gIEdlbmVyYXRvckZ1bmN0aW9uLnByb3RvdHlwZSA9IEdwLmNvbnN0cnVjdG9yID0gR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGU7XG4gIEdlbmVyYXRvckZ1bmN0aW9uUHJvdG90eXBlLmNvbnN0cnVjdG9yID0gR2VuZXJhdG9yRnVuY3Rpb247XG4gIEdlbmVyYXRvckZ1bmN0aW9uUHJvdG90eXBlW3RvU3RyaW5nVGFnU3ltYm9sXSA9XG4gICAgR2VuZXJhdG9yRnVuY3Rpb24uZGlzcGxheU5hbWUgPSBcIkdlbmVyYXRvckZ1bmN0aW9uXCI7XG5cbiAgLy8gSGVscGVyIGZvciBkZWZpbmluZyB0aGUgLm5leHQsIC50aHJvdywgYW5kIC5yZXR1cm4gbWV0aG9kcyBvZiB0aGVcbiAgLy8gSXRlcmF0b3IgaW50ZXJmYWNlIGluIHRlcm1zIG9mIGEgc2luZ2xlIC5faW52b2tlIG1ldGhvZC5cbiAgZnVuY3Rpb24gZGVmaW5lSXRlcmF0b3JNZXRob2RzKHByb3RvdHlwZSkge1xuICAgIFtcIm5leHRcIiwgXCJ0aHJvd1wiLCBcInJldHVyblwiXS5mb3JFYWNoKGZ1bmN0aW9uKG1ldGhvZCkge1xuICAgICAgcHJvdG90eXBlW21ldGhvZF0gPSBmdW5jdGlvbihhcmcpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2ludm9rZShtZXRob2QsIGFyZyk7XG4gICAgICB9O1xuICAgIH0pO1xuICB9XG5cbiAgZXhwb3J0cy5pc0dlbmVyYXRvckZ1bmN0aW9uID0gZnVuY3Rpb24oZ2VuRnVuKSB7XG4gICAgdmFyIGN0b3IgPSB0eXBlb2YgZ2VuRnVuID09PSBcImZ1bmN0aW9uXCIgJiYgZ2VuRnVuLmNvbnN0cnVjdG9yO1xuICAgIHJldHVybiBjdG9yXG4gICAgICA/IGN0b3IgPT09IEdlbmVyYXRvckZ1bmN0aW9uIHx8XG4gICAgICAgIC8vIEZvciB0aGUgbmF0aXZlIEdlbmVyYXRvckZ1bmN0aW9uIGNvbnN0cnVjdG9yLCB0aGUgYmVzdCB3ZSBjYW5cbiAgICAgICAgLy8gZG8gaXMgdG8gY2hlY2sgaXRzIC5uYW1lIHByb3BlcnR5LlxuICAgICAgICAoY3Rvci5kaXNwbGF5TmFtZSB8fCBjdG9yLm5hbWUpID09PSBcIkdlbmVyYXRvckZ1bmN0aW9uXCJcbiAgICAgIDogZmFsc2U7XG4gIH07XG5cbiAgZXhwb3J0cy5tYXJrID0gZnVuY3Rpb24oZ2VuRnVuKSB7XG4gICAgaWYgKE9iamVjdC5zZXRQcm90b3R5cGVPZikge1xuICAgICAgT2JqZWN0LnNldFByb3RvdHlwZU9mKGdlbkZ1biwgR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGUpO1xuICAgIH0gZWxzZSB7XG4gICAgICBnZW5GdW4uX19wcm90b19fID0gR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGU7XG4gICAgICBpZiAoISh0b1N0cmluZ1RhZ1N5bWJvbCBpbiBnZW5GdW4pKSB7XG4gICAgICAgIGdlbkZ1blt0b1N0cmluZ1RhZ1N5bWJvbF0gPSBcIkdlbmVyYXRvckZ1bmN0aW9uXCI7XG4gICAgICB9XG4gICAgfVxuICAgIGdlbkZ1bi5wcm90b3R5cGUgPSBPYmplY3QuY3JlYXRlKEdwKTtcbiAgICByZXR1cm4gZ2VuRnVuO1xuICB9O1xuXG4gIC8vIFdpdGhpbiB0aGUgYm9keSBvZiBhbnkgYXN5bmMgZnVuY3Rpb24sIGBhd2FpdCB4YCBpcyB0cmFuc2Zvcm1lZCB0b1xuICAvLyBgeWllbGQgcmVnZW5lcmF0b3JSdW50aW1lLmF3cmFwKHgpYCwgc28gdGhhdCB0aGUgcnVudGltZSBjYW4gdGVzdFxuICAvLyBgaGFzT3duLmNhbGwodmFsdWUsIFwiX19hd2FpdFwiKWAgdG8gZGV0ZXJtaW5lIGlmIHRoZSB5aWVsZGVkIHZhbHVlIGlzXG4gIC8vIG1lYW50IHRvIGJlIGF3YWl0ZWQuXG4gIGV4cG9ydHMuYXdyYXAgPSBmdW5jdGlvbihhcmcpIHtcbiAgICByZXR1cm4geyBfX2F3YWl0OiBhcmcgfTtcbiAgfTtcblxuICBmdW5jdGlvbiBBc3luY0l0ZXJhdG9yKGdlbmVyYXRvciwgUHJvbWlzZUltcGwpIHtcbiAgICBmdW5jdGlvbiBpbnZva2UobWV0aG9kLCBhcmcsIHJlc29sdmUsIHJlamVjdCkge1xuICAgICAgdmFyIHJlY29yZCA9IHRyeUNhdGNoKGdlbmVyYXRvclttZXRob2RdLCBnZW5lcmF0b3IsIGFyZyk7XG4gICAgICBpZiAocmVjb3JkLnR5cGUgPT09IFwidGhyb3dcIikge1xuICAgICAgICByZWplY3QocmVjb3JkLmFyZyk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB2YXIgcmVzdWx0ID0gcmVjb3JkLmFyZztcbiAgICAgICAgdmFyIHZhbHVlID0gcmVzdWx0LnZhbHVlO1xuICAgICAgICBpZiAodmFsdWUgJiZcbiAgICAgICAgICAgIHR5cGVvZiB2YWx1ZSA9PT0gXCJvYmplY3RcIiAmJlxuICAgICAgICAgICAgaGFzT3duLmNhbGwodmFsdWUsIFwiX19hd2FpdFwiKSkge1xuICAgICAgICAgIHJldHVybiBQcm9taXNlSW1wbC5yZXNvbHZlKHZhbHVlLl9fYXdhaXQpLnRoZW4oZnVuY3Rpb24odmFsdWUpIHtcbiAgICAgICAgICAgIGludm9rZShcIm5leHRcIiwgdmFsdWUsIHJlc29sdmUsIHJlamVjdCk7XG4gICAgICAgICAgfSwgZnVuY3Rpb24oZXJyKSB7XG4gICAgICAgICAgICBpbnZva2UoXCJ0aHJvd1wiLCBlcnIsIHJlc29sdmUsIHJlamVjdCk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gUHJvbWlzZUltcGwucmVzb2x2ZSh2YWx1ZSkudGhlbihmdW5jdGlvbih1bndyYXBwZWQpIHtcbiAgICAgICAgICAvLyBXaGVuIGEgeWllbGRlZCBQcm9taXNlIGlzIHJlc29sdmVkLCBpdHMgZmluYWwgdmFsdWUgYmVjb21lc1xuICAgICAgICAgIC8vIHRoZSAudmFsdWUgb2YgdGhlIFByb21pc2U8e3ZhbHVlLGRvbmV9PiByZXN1bHQgZm9yIHRoZVxuICAgICAgICAgIC8vIGN1cnJlbnQgaXRlcmF0aW9uLlxuICAgICAgICAgIHJlc3VsdC52YWx1ZSA9IHVud3JhcHBlZDtcbiAgICAgICAgICByZXNvbHZlKHJlc3VsdCk7XG4gICAgICAgIH0sIGZ1bmN0aW9uKGVycm9yKSB7XG4gICAgICAgICAgLy8gSWYgYSByZWplY3RlZCBQcm9taXNlIHdhcyB5aWVsZGVkLCB0aHJvdyB0aGUgcmVqZWN0aW9uIGJhY2tcbiAgICAgICAgICAvLyBpbnRvIHRoZSBhc3luYyBnZW5lcmF0b3IgZnVuY3Rpb24gc28gaXQgY2FuIGJlIGhhbmRsZWQgdGhlcmUuXG4gICAgICAgICAgcmV0dXJuIGludm9rZShcInRocm93XCIsIGVycm9yLCByZXNvbHZlLCByZWplY3QpO1xuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB2YXIgcHJldmlvdXNQcm9taXNlO1xuXG4gICAgZnVuY3Rpb24gZW5xdWV1ZShtZXRob2QsIGFyZykge1xuICAgICAgZnVuY3Rpb24gY2FsbEludm9rZVdpdGhNZXRob2RBbmRBcmcoKSB7XG4gICAgICAgIHJldHVybiBuZXcgUHJvbWlzZUltcGwoZnVuY3Rpb24ocmVzb2x2ZSwgcmVqZWN0KSB7XG4gICAgICAgICAgaW52b2tlKG1ldGhvZCwgYXJnLCByZXNvbHZlLCByZWplY3QpO1xuICAgICAgICB9KTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHByZXZpb3VzUHJvbWlzZSA9XG4gICAgICAgIC8vIElmIGVucXVldWUgaGFzIGJlZW4gY2FsbGVkIGJlZm9yZSwgdGhlbiB3ZSB3YW50IHRvIHdhaXQgdW50aWxcbiAgICAgICAgLy8gYWxsIHByZXZpb3VzIFByb21pc2VzIGhhdmUgYmVlbiByZXNvbHZlZCBiZWZvcmUgY2FsbGluZyBpbnZva2UsXG4gICAgICAgIC8vIHNvIHRoYXQgcmVzdWx0cyBhcmUgYWx3YXlzIGRlbGl2ZXJlZCBpbiB0aGUgY29ycmVjdCBvcmRlci4gSWZcbiAgICAgICAgLy8gZW5xdWV1ZSBoYXMgbm90IGJlZW4gY2FsbGVkIGJlZm9yZSwgdGhlbiBpdCBpcyBpbXBvcnRhbnQgdG9cbiAgICAgICAgLy8gY2FsbCBpbnZva2UgaW1tZWRpYXRlbHksIHdpdGhvdXQgd2FpdGluZyBvbiBhIGNhbGxiYWNrIHRvIGZpcmUsXG4gICAgICAgIC8vIHNvIHRoYXQgdGhlIGFzeW5jIGdlbmVyYXRvciBmdW5jdGlvbiBoYXMgdGhlIG9wcG9ydHVuaXR5IHRvIGRvXG4gICAgICAgIC8vIGFueSBuZWNlc3Nhcnkgc2V0dXAgaW4gYSBwcmVkaWN0YWJsZSB3YXkuIFRoaXMgcHJlZGljdGFiaWxpdHlcbiAgICAgICAgLy8gaXMgd2h5IHRoZSBQcm9taXNlIGNvbnN0cnVjdG9yIHN5bmNocm9ub3VzbHkgaW52b2tlcyBpdHNcbiAgICAgICAgLy8gZXhlY3V0b3IgY2FsbGJhY2ssIGFuZCB3aHkgYXN5bmMgZnVuY3Rpb25zIHN5bmNocm9ub3VzbHlcbiAgICAgICAgLy8gZXhlY3V0ZSBjb2RlIGJlZm9yZSB0aGUgZmlyc3QgYXdhaXQuIFNpbmNlIHdlIGltcGxlbWVudCBzaW1wbGVcbiAgICAgICAgLy8gYXN5bmMgZnVuY3Rpb25zIGluIHRlcm1zIG9mIGFzeW5jIGdlbmVyYXRvcnMsIGl0IGlzIGVzcGVjaWFsbHlcbiAgICAgICAgLy8gaW1wb3J0YW50IHRvIGdldCB0aGlzIHJpZ2h0LCBldmVuIHRob3VnaCBpdCByZXF1aXJlcyBjYXJlLlxuICAgICAgICBwcmV2aW91c1Byb21pc2UgPyBwcmV2aW91c1Byb21pc2UudGhlbihcbiAgICAgICAgICBjYWxsSW52b2tlV2l0aE1ldGhvZEFuZEFyZyxcbiAgICAgICAgICAvLyBBdm9pZCBwcm9wYWdhdGluZyBmYWlsdXJlcyB0byBQcm9taXNlcyByZXR1cm5lZCBieSBsYXRlclxuICAgICAgICAgIC8vIGludm9jYXRpb25zIG9mIHRoZSBpdGVyYXRvci5cbiAgICAgICAgICBjYWxsSW52b2tlV2l0aE1ldGhvZEFuZEFyZ1xuICAgICAgICApIDogY2FsbEludm9rZVdpdGhNZXRob2RBbmRBcmcoKTtcbiAgICB9XG5cbiAgICAvLyBEZWZpbmUgdGhlIHVuaWZpZWQgaGVscGVyIG1ldGhvZCB0aGF0IGlzIHVzZWQgdG8gaW1wbGVtZW50IC5uZXh0LFxuICAgIC8vIC50aHJvdywgYW5kIC5yZXR1cm4gKHNlZSBkZWZpbmVJdGVyYXRvck1ldGhvZHMpLlxuICAgIHRoaXMuX2ludm9rZSA9IGVucXVldWU7XG4gIH1cblxuICBkZWZpbmVJdGVyYXRvck1ldGhvZHMoQXN5bmNJdGVyYXRvci5wcm90b3R5cGUpO1xuICBBc3luY0l0ZXJhdG9yLnByb3RvdHlwZVthc3luY0l0ZXJhdG9yU3ltYm9sXSA9IGZ1bmN0aW9uICgpIHtcbiAgICByZXR1cm4gdGhpcztcbiAgfTtcbiAgZXhwb3J0cy5Bc3luY0l0ZXJhdG9yID0gQXN5bmNJdGVyYXRvcjtcblxuICAvLyBOb3RlIHRoYXQgc2ltcGxlIGFzeW5jIGZ1bmN0aW9ucyBhcmUgaW1wbGVtZW50ZWQgb24gdG9wIG9mXG4gIC8vIEFzeW5jSXRlcmF0b3Igb2JqZWN0czsgdGhleSBqdXN0IHJldHVybiBhIFByb21pc2UgZm9yIHRoZSB2YWx1ZSBvZlxuICAvLyB0aGUgZmluYWwgcmVzdWx0IHByb2R1Y2VkIGJ5IHRoZSBpdGVyYXRvci5cbiAgZXhwb3J0cy5hc3luYyA9IGZ1bmN0aW9uKGlubmVyRm4sIG91dGVyRm4sIHNlbGYsIHRyeUxvY3NMaXN0LCBQcm9taXNlSW1wbCkge1xuICAgIGlmIChQcm9taXNlSW1wbCA9PT0gdm9pZCAwKSBQcm9taXNlSW1wbCA9IFByb21pc2U7XG5cbiAgICB2YXIgaXRlciA9IG5ldyBBc3luY0l0ZXJhdG9yKFxuICAgICAgd3JhcChpbm5lckZuLCBvdXRlckZuLCBzZWxmLCB0cnlMb2NzTGlzdCksXG4gICAgICBQcm9taXNlSW1wbFxuICAgICk7XG5cbiAgICByZXR1cm4gZXhwb3J0cy5pc0dlbmVyYXRvckZ1bmN0aW9uKG91dGVyRm4pXG4gICAgICA/IGl0ZXIgLy8gSWYgb3V0ZXJGbiBpcyBhIGdlbmVyYXRvciwgcmV0dXJuIHRoZSBmdWxsIGl0ZXJhdG9yLlxuICAgICAgOiBpdGVyLm5leHQoKS50aGVuKGZ1bmN0aW9uKHJlc3VsdCkge1xuICAgICAgICAgIHJldHVybiByZXN1bHQuZG9uZSA/IHJlc3VsdC52YWx1ZSA6IGl0ZXIubmV4dCgpO1xuICAgICAgICB9KTtcbiAgfTtcblxuICBmdW5jdGlvbiBtYWtlSW52b2tlTWV0aG9kKGlubmVyRm4sIHNlbGYsIGNvbnRleHQpIHtcbiAgICB2YXIgc3RhdGUgPSBHZW5TdGF0ZVN1c3BlbmRlZFN0YXJ0O1xuXG4gICAgcmV0dXJuIGZ1bmN0aW9uIGludm9rZShtZXRob2QsIGFyZykge1xuICAgICAgaWYgKHN0YXRlID09PSBHZW5TdGF0ZUV4ZWN1dGluZykge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJHZW5lcmF0b3IgaXMgYWxyZWFkeSBydW5uaW5nXCIpO1xuICAgICAgfVxuXG4gICAgICBpZiAoc3RhdGUgPT09IEdlblN0YXRlQ29tcGxldGVkKSB7XG4gICAgICAgIGlmIChtZXRob2QgPT09IFwidGhyb3dcIikge1xuICAgICAgICAgIHRocm93IGFyZztcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEJlIGZvcmdpdmluZywgcGVyIDI1LjMuMy4zLjMgb2YgdGhlIHNwZWM6XG4gICAgICAgIC8vIGh0dHBzOi8vcGVvcGxlLm1vemlsbGEub3JnL35qb3JlbmRvcmZmL2VzNi1kcmFmdC5odG1sI3NlYy1nZW5lcmF0b3JyZXN1bWVcbiAgICAgICAgcmV0dXJuIGRvbmVSZXN1bHQoKTtcbiAgICAgIH1cblxuICAgICAgY29udGV4dC5tZXRob2QgPSBtZXRob2Q7XG4gICAgICBjb250ZXh0LmFyZyA9IGFyZztcblxuICAgICAgd2hpbGUgKHRydWUpIHtcbiAgICAgICAgdmFyIGRlbGVnYXRlID0gY29udGV4dC5kZWxlZ2F0ZTtcbiAgICAgICAgaWYgKGRlbGVnYXRlKSB7XG4gICAgICAgICAgdmFyIGRlbGVnYXRlUmVzdWx0ID0gbWF5YmVJbnZva2VEZWxlZ2F0ZShkZWxlZ2F0ZSwgY29udGV4dCk7XG4gICAgICAgICAgaWYgKGRlbGVnYXRlUmVzdWx0KSB7XG4gICAgICAgICAgICBpZiAoZGVsZWdhdGVSZXN1bHQgPT09IENvbnRpbnVlU2VudGluZWwpIGNvbnRpbnVlO1xuICAgICAgICAgICAgcmV0dXJuIGRlbGVnYXRlUmVzdWx0O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChjb250ZXh0Lm1ldGhvZCA9PT0gXCJuZXh0XCIpIHtcbiAgICAgICAgICAvLyBTZXR0aW5nIGNvbnRleHQuX3NlbnQgZm9yIGxlZ2FjeSBzdXBwb3J0IG9mIEJhYmVsJ3NcbiAgICAgICAgICAvLyBmdW5jdGlvbi5zZW50IGltcGxlbWVudGF0aW9uLlxuICAgICAgICAgIGNvbnRleHQuc2VudCA9IGNvbnRleHQuX3NlbnQgPSBjb250ZXh0LmFyZztcblxuICAgICAgICB9IGVsc2UgaWYgKGNvbnRleHQubWV0aG9kID09PSBcInRocm93XCIpIHtcbiAgICAgICAgICBpZiAoc3RhdGUgPT09IEdlblN0YXRlU3VzcGVuZGVkU3RhcnQpIHtcbiAgICAgICAgICAgIHN0YXRlID0gR2VuU3RhdGVDb21wbGV0ZWQ7XG4gICAgICAgICAgICB0aHJvdyBjb250ZXh0LmFyZztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBjb250ZXh0LmRpc3BhdGNoRXhjZXB0aW9uKGNvbnRleHQuYXJnKTtcblxuICAgICAgICB9IGVsc2UgaWYgKGNvbnRleHQubWV0aG9kID09PSBcInJldHVyblwiKSB7XG4gICAgICAgICAgY29udGV4dC5hYnJ1cHQoXCJyZXR1cm5cIiwgY29udGV4dC5hcmcpO1xuICAgICAgICB9XG5cbiAgICAgICAgc3RhdGUgPSBHZW5TdGF0ZUV4ZWN1dGluZztcblxuICAgICAgICB2YXIgcmVjb3JkID0gdHJ5Q2F0Y2goaW5uZXJGbiwgc2VsZiwgY29udGV4dCk7XG4gICAgICAgIGlmIChyZWNvcmQudHlwZSA9PT0gXCJub3JtYWxcIikge1xuICAgICAgICAgIC8vIElmIGFuIGV4Y2VwdGlvbiBpcyB0aHJvd24gZnJvbSBpbm5lckZuLCB3ZSBsZWF2ZSBzdGF0ZSA9PT1cbiAgICAgICAgICAvLyBHZW5TdGF0ZUV4ZWN1dGluZyBhbmQgbG9vcCBiYWNrIGZvciBhbm90aGVyIGludm9jYXRpb24uXG4gICAgICAgICAgc3RhdGUgPSBjb250ZXh0LmRvbmVcbiAgICAgICAgICAgID8gR2VuU3RhdGVDb21wbGV0ZWRcbiAgICAgICAgICAgIDogR2VuU3RhdGVTdXNwZW5kZWRZaWVsZDtcblxuICAgICAgICAgIGlmIChyZWNvcmQuYXJnID09PSBDb250aW51ZVNlbnRpbmVsKSB7XG4gICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgdmFsdWU6IHJlY29yZC5hcmcsXG4gICAgICAgICAgICBkb25lOiBjb250ZXh0LmRvbmVcbiAgICAgICAgICB9O1xuXG4gICAgICAgIH0gZWxzZSBpZiAocmVjb3JkLnR5cGUgPT09IFwidGhyb3dcIikge1xuICAgICAgICAgIHN0YXRlID0gR2VuU3RhdGVDb21wbGV0ZWQ7XG4gICAgICAgICAgLy8gRGlzcGF0Y2ggdGhlIGV4Y2VwdGlvbiBieSBsb29waW5nIGJhY2sgYXJvdW5kIHRvIHRoZVxuICAgICAgICAgIC8vIGNvbnRleHQuZGlzcGF0Y2hFeGNlcHRpb24oY29udGV4dC5hcmcpIGNhbGwgYWJvdmUuXG4gICAgICAgICAgY29udGV4dC5tZXRob2QgPSBcInRocm93XCI7XG4gICAgICAgICAgY29udGV4dC5hcmcgPSByZWNvcmQuYXJnO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfTtcbiAgfVxuXG4gIC8vIENhbGwgZGVsZWdhdGUuaXRlcmF0b3JbY29udGV4dC5tZXRob2RdKGNvbnRleHQuYXJnKSBhbmQgaGFuZGxlIHRoZVxuICAvLyByZXN1bHQsIGVpdGhlciBieSByZXR1cm5pbmcgYSB7IHZhbHVlLCBkb25lIH0gcmVzdWx0IGZyb20gdGhlXG4gIC8vIGRlbGVnYXRlIGl0ZXJhdG9yLCBvciBieSBtb2RpZnlpbmcgY29udGV4dC5tZXRob2QgYW5kIGNvbnRleHQuYXJnLFxuICAvLyBzZXR0aW5nIGNvbnRleHQuZGVsZWdhdGUgdG8gbnVsbCwgYW5kIHJldHVybmluZyB0aGUgQ29udGludWVTZW50aW5lbC5cbiAgZnVuY3Rpb24gbWF5YmVJbnZva2VEZWxlZ2F0ZShkZWxlZ2F0ZSwgY29udGV4dCkge1xuICAgIHZhciBtZXRob2QgPSBkZWxlZ2F0ZS5pdGVyYXRvcltjb250ZXh0Lm1ldGhvZF07XG4gICAgaWYgKG1ldGhvZCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAvLyBBIC50aHJvdyBvciAucmV0dXJuIHdoZW4gdGhlIGRlbGVnYXRlIGl0ZXJhdG9yIGhhcyBubyAudGhyb3dcbiAgICAgIC8vIG1ldGhvZCBhbHdheXMgdGVybWluYXRlcyB0aGUgeWllbGQqIGxvb3AuXG4gICAgICBjb250ZXh0LmRlbGVnYXRlID0gbnVsbDtcblxuICAgICAgaWYgKGNvbnRleHQubWV0aG9kID09PSBcInRocm93XCIpIHtcbiAgICAgICAgLy8gTm90ZTogW1wicmV0dXJuXCJdIG11c3QgYmUgdXNlZCBmb3IgRVMzIHBhcnNpbmcgY29tcGF0aWJpbGl0eS5cbiAgICAgICAgaWYgKGRlbGVnYXRlLml0ZXJhdG9yW1wicmV0dXJuXCJdKSB7XG4gICAgICAgICAgLy8gSWYgdGhlIGRlbGVnYXRlIGl0ZXJhdG9yIGhhcyBhIHJldHVybiBtZXRob2QsIGdpdmUgaXQgYVxuICAgICAgICAgIC8vIGNoYW5jZSB0byBjbGVhbiB1cC5cbiAgICAgICAgICBjb250ZXh0Lm1ldGhvZCA9IFwicmV0dXJuXCI7XG4gICAgICAgICAgY29udGV4dC5hcmcgPSB1bmRlZmluZWQ7XG4gICAgICAgICAgbWF5YmVJbnZva2VEZWxlZ2F0ZShkZWxlZ2F0ZSwgY29udGV4dCk7XG5cbiAgICAgICAgICBpZiAoY29udGV4dC5tZXRob2QgPT09IFwidGhyb3dcIikge1xuICAgICAgICAgICAgLy8gSWYgbWF5YmVJbnZva2VEZWxlZ2F0ZShjb250ZXh0KSBjaGFuZ2VkIGNvbnRleHQubWV0aG9kIGZyb21cbiAgICAgICAgICAgIC8vIFwicmV0dXJuXCIgdG8gXCJ0aHJvd1wiLCBsZXQgdGhhdCBvdmVycmlkZSB0aGUgVHlwZUVycm9yIGJlbG93LlxuICAgICAgICAgICAgcmV0dXJuIENvbnRpbnVlU2VudGluZWw7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgY29udGV4dC5tZXRob2QgPSBcInRocm93XCI7XG4gICAgICAgIGNvbnRleHQuYXJnID0gbmV3IFR5cGVFcnJvcihcbiAgICAgICAgICBcIlRoZSBpdGVyYXRvciBkb2VzIG5vdCBwcm92aWRlIGEgJ3Rocm93JyBtZXRob2RcIik7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBDb250aW51ZVNlbnRpbmVsO1xuICAgIH1cblxuICAgIHZhciByZWNvcmQgPSB0cnlDYXRjaChtZXRob2QsIGRlbGVnYXRlLml0ZXJhdG9yLCBjb250ZXh0LmFyZyk7XG5cbiAgICBpZiAocmVjb3JkLnR5cGUgPT09IFwidGhyb3dcIikge1xuICAgICAgY29udGV4dC5tZXRob2QgPSBcInRocm93XCI7XG4gICAgICBjb250ZXh0LmFyZyA9IHJlY29yZC5hcmc7XG4gICAgICBjb250ZXh0LmRlbGVnYXRlID0gbnVsbDtcbiAgICAgIHJldHVybiBDb250aW51ZVNlbnRpbmVsO1xuICAgIH1cblxuICAgIHZhciBpbmZvID0gcmVjb3JkLmFyZztcblxuICAgIGlmICghIGluZm8pIHtcbiAgICAgIGNvbnRleHQubWV0aG9kID0gXCJ0aHJvd1wiO1xuICAgICAgY29udGV4dC5hcmcgPSBuZXcgVHlwZUVycm9yKFwiaXRlcmF0b3IgcmVzdWx0IGlzIG5vdCBhbiBvYmplY3RcIik7XG4gICAgICBjb250ZXh0LmRlbGVnYXRlID0gbnVsbDtcbiAgICAgIHJldHVybiBDb250aW51ZVNlbnRpbmVsO1xuICAgIH1cblxuICAgIGlmIChpbmZvLmRvbmUpIHtcbiAgICAgIC8vIEFzc2lnbiB0aGUgcmVzdWx0IG9mIHRoZSBmaW5pc2hlZCBkZWxlZ2F0ZSB0byB0aGUgdGVtcG9yYXJ5XG4gICAgICAvLyB2YXJpYWJsZSBzcGVjaWZpZWQgYnkgZGVsZWdhdGUucmVzdWx0TmFtZSAoc2VlIGRlbGVnYXRlWWllbGQpLlxuICAgICAgY29udGV4dFtkZWxlZ2F0ZS5yZXN1bHROYW1lXSA9IGluZm8udmFsdWU7XG5cbiAgICAgIC8vIFJlc3VtZSBleGVjdXRpb24gYXQgdGhlIGRlc2lyZWQgbG9jYXRpb24gKHNlZSBkZWxlZ2F0ZVlpZWxkKS5cbiAgICAgIGNvbnRleHQubmV4dCA9IGRlbGVnYXRlLm5leHRMb2M7XG5cbiAgICAgIC8vIElmIGNvbnRleHQubWV0aG9kIHdhcyBcInRocm93XCIgYnV0IHRoZSBkZWxlZ2F0ZSBoYW5kbGVkIHRoZVxuICAgICAgLy8gZXhjZXB0aW9uLCBsZXQgdGhlIG91dGVyIGdlbmVyYXRvciBwcm9jZWVkIG5vcm1hbGx5LiBJZlxuICAgICAgLy8gY29udGV4dC5tZXRob2Qgd2FzIFwibmV4dFwiLCBmb3JnZXQgY29udGV4dC5hcmcgc2luY2UgaXQgaGFzIGJlZW5cbiAgICAgIC8vIFwiY29uc3VtZWRcIiBieSB0aGUgZGVsZWdhdGUgaXRlcmF0b3IuIElmIGNvbnRleHQubWV0aG9kIHdhc1xuICAgICAgLy8gXCJyZXR1cm5cIiwgYWxsb3cgdGhlIG9yaWdpbmFsIC5yZXR1cm4gY2FsbCB0byBjb250aW51ZSBpbiB0aGVcbiAgICAgIC8vIG91dGVyIGdlbmVyYXRvci5cbiAgICAgIGlmIChjb250ZXh0Lm1ldGhvZCAhPT0gXCJyZXR1cm5cIikge1xuICAgICAgICBjb250ZXh0Lm1ldGhvZCA9IFwibmV4dFwiO1xuICAgICAgICBjb250ZXh0LmFyZyA9IHVuZGVmaW5lZDtcbiAgICAgIH1cblxuICAgIH0gZWxzZSB7XG4gICAgICAvLyBSZS15aWVsZCB0aGUgcmVzdWx0IHJldHVybmVkIGJ5IHRoZSBkZWxlZ2F0ZSBtZXRob2QuXG4gICAgICByZXR1cm4gaW5mbztcbiAgICB9XG5cbiAgICAvLyBUaGUgZGVsZWdhdGUgaXRlcmF0b3IgaXMgZmluaXNoZWQsIHNvIGZvcmdldCBpdCBhbmQgY29udGludWUgd2l0aFxuICAgIC8vIHRoZSBvdXRlciBnZW5lcmF0b3IuXG4gICAgY29udGV4dC5kZWxlZ2F0ZSA9IG51bGw7XG4gICAgcmV0dXJuIENvbnRpbnVlU2VudGluZWw7XG4gIH1cblxuICAvLyBEZWZpbmUgR2VuZXJhdG9yLnByb3RvdHlwZS57bmV4dCx0aHJvdyxyZXR1cm59IGluIHRlcm1zIG9mIHRoZVxuICAvLyB1bmlmaWVkIC5faW52b2tlIGhlbHBlciBtZXRob2QuXG4gIGRlZmluZUl0ZXJhdG9yTWV0aG9kcyhHcCk7XG5cbiAgR3BbdG9TdHJpbmdUYWdTeW1ib2xdID0gXCJHZW5lcmF0b3JcIjtcblxuICAvLyBBIEdlbmVyYXRvciBzaG91bGQgYWx3YXlzIHJldHVybiBpdHNlbGYgYXMgdGhlIGl0ZXJhdG9yIG9iamVjdCB3aGVuIHRoZVxuICAvLyBAQGl0ZXJhdG9yIGZ1bmN0aW9uIGlzIGNhbGxlZCBvbiBpdC4gU29tZSBicm93c2VycycgaW1wbGVtZW50YXRpb25zIG9mIHRoZVxuICAvLyBpdGVyYXRvciBwcm90b3R5cGUgY2hhaW4gaW5jb3JyZWN0bHkgaW1wbGVtZW50IHRoaXMsIGNhdXNpbmcgdGhlIEdlbmVyYXRvclxuICAvLyBvYmplY3QgdG8gbm90IGJlIHJldHVybmVkIGZyb20gdGhpcyBjYWxsLiBUaGlzIGVuc3VyZXMgdGhhdCBkb2Vzbid0IGhhcHBlbi5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9mYWNlYm9vay9yZWdlbmVyYXRvci9pc3N1ZXMvMjc0IGZvciBtb3JlIGRldGFpbHMuXG4gIEdwW2l0ZXJhdG9yU3ltYm9sXSA9IGZ1bmN0aW9uKCkge1xuICAgIHJldHVybiB0aGlzO1xuICB9O1xuXG4gIEdwLnRvU3RyaW5nID0gZnVuY3Rpb24oKSB7XG4gICAgcmV0dXJuIFwiW29iamVjdCBHZW5lcmF0b3JdXCI7XG4gIH07XG5cbiAgZnVuY3Rpb24gcHVzaFRyeUVudHJ5KGxvY3MpIHtcbiAgICB2YXIgZW50cnkgPSB7IHRyeUxvYzogbG9jc1swXSB9O1xuXG4gICAgaWYgKDEgaW4gbG9jcykge1xuICAgICAgZW50cnkuY2F0Y2hMb2MgPSBsb2NzWzFdO1xuICAgIH1cblxuICAgIGlmICgyIGluIGxvY3MpIHtcbiAgICAgIGVudHJ5LmZpbmFsbHlMb2MgPSBsb2NzWzJdO1xuICAgICAgZW50cnkuYWZ0ZXJMb2MgPSBsb2NzWzNdO1xuICAgIH1cblxuICAgIHRoaXMudHJ5RW50cmllcy5wdXNoKGVudHJ5KTtcbiAgfVxuXG4gIGZ1bmN0aW9uIHJlc2V0VHJ5RW50cnkoZW50cnkpIHtcbiAgICB2YXIgcmVjb3JkID0gZW50cnkuY29tcGxldGlvbiB8fCB7fTtcbiAgICByZWNvcmQudHlwZSA9IFwibm9ybWFsXCI7XG4gICAgZGVsZXRlIHJlY29yZC5hcmc7XG4gICAgZW50cnkuY29tcGxldGlvbiA9IHJlY29yZDtcbiAgfVxuXG4gIGZ1bmN0aW9uIENvbnRleHQodHJ5TG9jc0xpc3QpIHtcbiAgICAvLyBUaGUgcm9vdCBlbnRyeSBvYmplY3QgKGVmZmVjdGl2ZWx5IGEgdHJ5IHN0YXRlbWVudCB3aXRob3V0IGEgY2F0Y2hcbiAgICAvLyBvciBhIGZpbmFsbHkgYmxvY2spIGdpdmVzIHVzIGEgcGxhY2UgdG8gc3RvcmUgdmFsdWVzIHRocm93biBmcm9tXG4gICAgLy8gbG9jYXRpb25zIHdoZXJlIHRoZXJlIGlzIG5vIGVuY2xvc2luZyB0cnkgc3RhdGVtZW50LlxuICAgIHRoaXMudHJ5RW50cmllcyA9IFt7IHRyeUxvYzogXCJyb290XCIgfV07XG4gICAgdHJ5TG9jc0xpc3QuZm9yRWFjaChwdXNoVHJ5RW50cnksIHRoaXMpO1xuICAgIHRoaXMucmVzZXQodHJ1ZSk7XG4gIH1cblxuICBleHBvcnRzLmtleXMgPSBmdW5jdGlvbihvYmplY3QpIHtcbiAgICB2YXIga2V5cyA9IFtdO1xuICAgIGZvciAodmFyIGtleSBpbiBvYmplY3QpIHtcbiAgICAgIGtleXMucHVzaChrZXkpO1xuICAgIH1cbiAgICBrZXlzLnJldmVyc2UoKTtcblxuICAgIC8vIFJhdGhlciB0aGFuIHJldHVybmluZyBhbiBvYmplY3Qgd2l0aCBhIG5leHQgbWV0aG9kLCB3ZSBrZWVwXG4gICAgLy8gdGhpbmdzIHNpbXBsZSBhbmQgcmV0dXJuIHRoZSBuZXh0IGZ1bmN0aW9uIGl0c2VsZi5cbiAgICByZXR1cm4gZnVuY3Rpb24gbmV4dCgpIHtcbiAgICAgIHdoaWxlIChrZXlzLmxlbmd0aCkge1xuICAgICAgICB2YXIga2V5ID0ga2V5cy5wb3AoKTtcbiAgICAgICAgaWYgKGtleSBpbiBvYmplY3QpIHtcbiAgICAgICAgICBuZXh0LnZhbHVlID0ga2V5O1xuICAgICAgICAgIG5leHQuZG9uZSA9IGZhbHNlO1xuICAgICAgICAgIHJldHVybiBuZXh0O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIFRvIGF2b2lkIGNyZWF0aW5nIGFuIGFkZGl0aW9uYWwgb2JqZWN0LCB3ZSBqdXN0IGhhbmcgdGhlIC52YWx1ZVxuICAgICAgLy8gYW5kIC5kb25lIHByb3BlcnRpZXMgb2ZmIHRoZSBuZXh0IGZ1bmN0aW9uIG9iamVjdCBpdHNlbGYuIFRoaXNcbiAgICAgIC8vIGFsc28gZW5zdXJlcyB0aGF0IHRoZSBtaW5pZmllciB3aWxsIG5vdCBhbm9ueW1pemUgdGhlIGZ1bmN0aW9uLlxuICAgICAgbmV4dC5kb25lID0gdHJ1ZTtcbiAgICAgIHJldHVybiBuZXh0O1xuICAgIH07XG4gIH07XG5cbiAgZnVuY3Rpb24gdmFsdWVzKGl0ZXJhYmxlKSB7XG4gICAgaWYgKGl0ZXJhYmxlKSB7XG4gICAgICB2YXIgaXRlcmF0b3JNZXRob2QgPSBpdGVyYWJsZVtpdGVyYXRvclN5bWJvbF07XG4gICAgICBpZiAoaXRlcmF0b3JNZXRob2QpIHtcbiAgICAgICAgcmV0dXJuIGl0ZXJhdG9yTWV0aG9kLmNhbGwoaXRlcmFibGUpO1xuICAgICAgfVxuXG4gICAgICBpZiAodHlwZW9mIGl0ZXJhYmxlLm5leHQgPT09IFwiZnVuY3Rpb25cIikge1xuICAgICAgICByZXR1cm4gaXRlcmFibGU7XG4gICAgICB9XG5cbiAgICAgIGlmICghaXNOYU4oaXRlcmFibGUubGVuZ3RoKSkge1xuICAgICAgICB2YXIgaSA9IC0xLCBuZXh0ID0gZnVuY3Rpb24gbmV4dCgpIHtcbiAgICAgICAgICB3aGlsZSAoKytpIDwgaXRlcmFibGUubGVuZ3RoKSB7XG4gICAgICAgICAgICBpZiAoaGFzT3duLmNhbGwoaXRlcmFibGUsIGkpKSB7XG4gICAgICAgICAgICAgIG5leHQudmFsdWUgPSBpdGVyYWJsZVtpXTtcbiAgICAgICAgICAgICAgbmV4dC5kb25lID0gZmFsc2U7XG4gICAgICAgICAgICAgIHJldHVybiBuZXh0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIG5leHQudmFsdWUgPSB1bmRlZmluZWQ7XG4gICAgICAgICAgbmV4dC5kb25lID0gdHJ1ZTtcblxuICAgICAgICAgIHJldHVybiBuZXh0O1xuICAgICAgICB9O1xuXG4gICAgICAgIHJldHVybiBuZXh0Lm5leHQgPSBuZXh0O1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFJldHVybiBhbiBpdGVyYXRvciB3aXRoIG5vIHZhbHVlcy5cbiAgICByZXR1cm4geyBuZXh0OiBkb25lUmVzdWx0IH07XG4gIH1cbiAgZXhwb3J0cy52YWx1ZXMgPSB2YWx1ZXM7XG5cbiAgZnVuY3Rpb24gZG9uZVJlc3VsdCgpIHtcbiAgICByZXR1cm4geyB2YWx1ZTogdW5kZWZpbmVkLCBkb25lOiB0cnVlIH07XG4gIH1cblxuICBDb250ZXh0LnByb3RvdHlwZSA9IHtcbiAgICBjb25zdHJ1Y3RvcjogQ29udGV4dCxcblxuICAgIHJlc2V0OiBmdW5jdGlvbihza2lwVGVtcFJlc2V0KSB7XG4gICAgICB0aGlzLnByZXYgPSAwO1xuICAgICAgdGhpcy5uZXh0ID0gMDtcbiAgICAgIC8vIFJlc2V0dGluZyBjb250ZXh0Ll9zZW50IGZvciBsZWdhY3kgc3VwcG9ydCBvZiBCYWJlbCdzXG4gICAgICAvLyBmdW5jdGlvbi5zZW50IGltcGxlbWVudGF0aW9uLlxuICAgICAgdGhpcy5zZW50ID0gdGhpcy5fc2VudCA9IHVuZGVmaW5lZDtcbiAgICAgIHRoaXMuZG9uZSA9IGZhbHNlO1xuICAgICAgdGhpcy5kZWxlZ2F0ZSA9IG51bGw7XG5cbiAgICAgIHRoaXMubWV0aG9kID0gXCJuZXh0XCI7XG4gICAgICB0aGlzLmFyZyA9IHVuZGVmaW5lZDtcblxuICAgICAgdGhpcy50cnlFbnRyaWVzLmZvckVhY2gocmVzZXRUcnlFbnRyeSk7XG5cbiAgICAgIGlmICghc2tpcFRlbXBSZXNldCkge1xuICAgICAgICBmb3IgKHZhciBuYW1lIGluIHRoaXMpIHtcbiAgICAgICAgICAvLyBOb3Qgc3VyZSBhYm91dCB0aGUgb3B0aW1hbCBvcmRlciBvZiB0aGVzZSBjb25kaXRpb25zOlxuICAgICAgICAgIGlmIChuYW1lLmNoYXJBdCgwKSA9PT0gXCJ0XCIgJiZcbiAgICAgICAgICAgICAgaGFzT3duLmNhbGwodGhpcywgbmFtZSkgJiZcbiAgICAgICAgICAgICAgIWlzTmFOKCtuYW1lLnNsaWNlKDEpKSkge1xuICAgICAgICAgICAgdGhpc1tuYW1lXSA9IHVuZGVmaW5lZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9LFxuXG4gICAgc3RvcDogZnVuY3Rpb24oKSB7XG4gICAgICB0aGlzLmRvbmUgPSB0cnVlO1xuXG4gICAgICB2YXIgcm9vdEVudHJ5ID0gdGhpcy50cnlFbnRyaWVzWzBdO1xuICAgICAgdmFyIHJvb3RSZWNvcmQgPSByb290RW50cnkuY29tcGxldGlvbjtcbiAgICAgIGlmIChyb290UmVjb3JkLnR5cGUgPT09IFwidGhyb3dcIikge1xuICAgICAgICB0aHJvdyByb290UmVjb3JkLmFyZztcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHRoaXMucnZhbDtcbiAgICB9LFxuXG4gICAgZGlzcGF0Y2hFeGNlcHRpb246IGZ1bmN0aW9uKGV4Y2VwdGlvbikge1xuICAgICAgaWYgKHRoaXMuZG9uZSkge1xuICAgICAgICB0aHJvdyBleGNlcHRpb247XG4gICAgICB9XG5cbiAgICAgIHZhciBjb250ZXh0ID0gdGhpcztcbiAgICAgIGZ1bmN0aW9uIGhhbmRsZShsb2MsIGNhdWdodCkge1xuICAgICAgICByZWNvcmQudHlwZSA9IFwidGhyb3dcIjtcbiAgICAgICAgcmVjb3JkLmFyZyA9IGV4Y2VwdGlvbjtcbiAgICAgICAgY29udGV4dC5uZXh0ID0gbG9jO1xuXG4gICAgICAgIGlmIChjYXVnaHQpIHtcbiAgICAgICAgICAvLyBJZiB0aGUgZGlzcGF0Y2hlZCBleGNlcHRpb24gd2FzIGNhdWdodCBieSBhIGNhdGNoIGJsb2NrLFxuICAgICAgICAgIC8vIHRoZW4gbGV0IHRoYXQgY2F0Y2ggYmxvY2sgaGFuZGxlIHRoZSBleGNlcHRpb24gbm9ybWFsbHkuXG4gICAgICAgICAgY29udGV4dC5tZXRob2QgPSBcIm5leHRcIjtcbiAgICAgICAgICBjb250ZXh0LmFyZyA9IHVuZGVmaW5lZDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiAhISBjYXVnaHQ7XG4gICAgICB9XG5cbiAgICAgIGZvciAodmFyIGkgPSB0aGlzLnRyeUVudHJpZXMubGVuZ3RoIC0gMTsgaSA+PSAwOyAtLWkpIHtcbiAgICAgICAgdmFyIGVudHJ5ID0gdGhpcy50cnlFbnRyaWVzW2ldO1xuICAgICAgICB2YXIgcmVjb3JkID0gZW50cnkuY29tcGxldGlvbjtcblxuICAgICAgICBpZiAoZW50cnkudHJ5TG9jID09PSBcInJvb3RcIikge1xuICAgICAgICAgIC8vIEV4Y2VwdGlvbiB0aHJvd24gb3V0c2lkZSBvZiBhbnkgdHJ5IGJsb2NrIHRoYXQgY291bGQgaGFuZGxlXG4gICAgICAgICAgLy8gaXQsIHNvIHNldCB0aGUgY29tcGxldGlvbiB2YWx1ZSBvZiB0aGUgZW50aXJlIGZ1bmN0aW9uIHRvXG4gICAgICAgICAgLy8gdGhyb3cgdGhlIGV4Y2VwdGlvbi5cbiAgICAgICAgICByZXR1cm4gaGFuZGxlKFwiZW5kXCIpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGVudHJ5LnRyeUxvYyA8PSB0aGlzLnByZXYpIHtcbiAgICAgICAgICB2YXIgaGFzQ2F0Y2ggPSBoYXNPd24uY2FsbChlbnRyeSwgXCJjYXRjaExvY1wiKTtcbiAgICAgICAgICB2YXIgaGFzRmluYWxseSA9IGhhc093bi5jYWxsKGVudHJ5LCBcImZpbmFsbHlMb2NcIik7XG5cbiAgICAgICAgICBpZiAoaGFzQ2F0Y2ggJiYgaGFzRmluYWxseSkge1xuICAgICAgICAgICAgaWYgKHRoaXMucHJldiA8IGVudHJ5LmNhdGNoTG9jKSB7XG4gICAgICAgICAgICAgIHJldHVybiBoYW5kbGUoZW50cnkuY2F0Y2hMb2MsIHRydWUpO1xuICAgICAgICAgICAgfSBlbHNlIGlmICh0aGlzLnByZXYgPCBlbnRyeS5maW5hbGx5TG9jKSB7XG4gICAgICAgICAgICAgIHJldHVybiBoYW5kbGUoZW50cnkuZmluYWxseUxvYyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9IGVsc2UgaWYgKGhhc0NhdGNoKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5wcmV2IDwgZW50cnkuY2F0Y2hMb2MpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIGhhbmRsZShlbnRyeS5jYXRjaExvYywgdHJ1ZSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9IGVsc2UgaWYgKGhhc0ZpbmFsbHkpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLnByZXYgPCBlbnRyeS5maW5hbGx5TG9jKSB7XG4gICAgICAgICAgICAgIHJldHVybiBoYW5kbGUoZW50cnkuZmluYWxseUxvYyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwidHJ5IHN0YXRlbWVudCB3aXRob3V0IGNhdGNoIG9yIGZpbmFsbHlcIik7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfSxcblxuICAgIGFicnVwdDogZnVuY3Rpb24odHlwZSwgYXJnKSB7XG4gICAgICBmb3IgKHZhciBpID0gdGhpcy50cnlFbnRyaWVzLmxlbmd0aCAtIDE7IGkgPj0gMDsgLS1pKSB7XG4gICAgICAgIHZhciBlbnRyeSA9IHRoaXMudHJ5RW50cmllc1tpXTtcbiAgICAgICAgaWYgKGVudHJ5LnRyeUxvYyA8PSB0aGlzLnByZXYgJiZcbiAgICAgICAgICAgIGhhc093bi5jYWxsKGVudHJ5LCBcImZpbmFsbHlMb2NcIikgJiZcbiAgICAgICAgICAgIHRoaXMucHJldiA8IGVudHJ5LmZpbmFsbHlMb2MpIHtcbiAgICAgICAgICB2YXIgZmluYWxseUVudHJ5ID0gZW50cnk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaWYgKGZpbmFsbHlFbnRyeSAmJlxuICAgICAgICAgICh0eXBlID09PSBcImJyZWFrXCIgfHxcbiAgICAgICAgICAgdHlwZSA9PT0gXCJjb250aW51ZVwiKSAmJlxuICAgICAgICAgIGZpbmFsbHlFbnRyeS50cnlMb2MgPD0gYXJnICYmXG4gICAgICAgICAgYXJnIDw9IGZpbmFsbHlFbnRyeS5maW5hbGx5TG9jKSB7XG4gICAgICAgIC8vIElnbm9yZSB0aGUgZmluYWxseSBlbnRyeSBpZiBjb250cm9sIGlzIG5vdCBqdW1waW5nIHRvIGFcbiAgICAgICAgLy8gbG9jYXRpb24gb3V0c2lkZSB0aGUgdHJ5L2NhdGNoIGJsb2NrLlxuICAgICAgICBmaW5hbGx5RW50cnkgPSBudWxsO1xuICAgICAgfVxuXG4gICAgICB2YXIgcmVjb3JkID0gZmluYWxseUVudHJ5ID8gZmluYWxseUVudHJ5LmNvbXBsZXRpb24gOiB7fTtcbiAgICAgIHJlY29yZC50eXBlID0gdHlwZTtcbiAgICAgIHJlY29yZC5hcmcgPSBhcmc7XG5cbiAgICAgIGlmIChmaW5hbGx5RW50cnkpIHtcbiAgICAgICAgdGhpcy5tZXRob2QgPSBcIm5leHRcIjtcbiAgICAgICAgdGhpcy5uZXh0ID0gZmluYWxseUVudHJ5LmZpbmFsbHlMb2M7XG4gICAgICAgIHJldHVybiBDb250aW51ZVNlbnRpbmVsO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gdGhpcy5jb21wbGV0ZShyZWNvcmQpO1xuICAgIH0sXG5cbiAgICBjb21wbGV0ZTogZnVuY3Rpb24ocmVjb3JkLCBhZnRlckxvYykge1xuICAgICAgaWYgKHJlY29yZC50eXBlID09PSBcInRocm93XCIpIHtcbiAgICAgICAgdGhyb3cgcmVjb3JkLmFyZztcbiAgICAgIH1cblxuICAgICAgaWYgKHJlY29yZC50eXBlID09PSBcImJyZWFrXCIgfHxcbiAgICAgICAgICByZWNvcmQudHlwZSA9PT0gXCJjb250aW51ZVwiKSB7XG4gICAgICAgIHRoaXMubmV4dCA9IHJlY29yZC5hcmc7XG4gICAgICB9IGVsc2UgaWYgKHJlY29yZC50eXBlID09PSBcInJldHVyblwiKSB7XG4gICAgICAgIHRoaXMucnZhbCA9IHRoaXMuYXJnID0gcmVjb3JkLmFyZztcbiAgICAgICAgdGhpcy5tZXRob2QgPSBcInJldHVyblwiO1xuICAgICAgICB0aGlzLm5leHQgPSBcImVuZFwiO1xuICAgICAgfSBlbHNlIGlmIChyZWNvcmQudHlwZSA9PT0gXCJub3JtYWxcIiAmJiBhZnRlckxvYykge1xuICAgICAgICB0aGlzLm5leHQgPSBhZnRlckxvYztcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIENvbnRpbnVlU2VudGluZWw7XG4gICAgfSxcblxuICAgIGZpbmlzaDogZnVuY3Rpb24oZmluYWxseUxvYykge1xuICAgICAgZm9yICh2YXIgaSA9IHRoaXMudHJ5RW50cmllcy5sZW5ndGggLSAxOyBpID49IDA7IC0taSkge1xuICAgICAgICB2YXIgZW50cnkgPSB0aGlzLnRyeUVudHJpZXNbaV07XG4gICAgICAgIGlmIChlbnRyeS5maW5hbGx5TG9jID09PSBmaW5hbGx5TG9jKSB7XG4gICAgICAgICAgdGhpcy5jb21wbGV0ZShlbnRyeS5jb21wbGV0aW9uLCBlbnRyeS5hZnRlckxvYyk7XG4gICAgICAgICAgcmVzZXRUcnlFbnRyeShlbnRyeSk7XG4gICAgICAgICAgcmV0dXJuIENvbnRpbnVlU2VudGluZWw7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9LFxuXG4gICAgXCJjYXRjaFwiOiBmdW5jdGlvbih0cnlMb2MpIHtcbiAgICAgIGZvciAodmFyIGkgPSB0aGlzLnRyeUVudHJpZXMubGVuZ3RoIC0gMTsgaSA+PSAwOyAtLWkpIHtcbiAgICAgICAgdmFyIGVudHJ5ID0gdGhpcy50cnlFbnRyaWVzW2ldO1xuICAgICAgICBpZiAoZW50cnkudHJ5TG9jID09PSB0cnlMb2MpIHtcbiAgICAgICAgICB2YXIgcmVjb3JkID0gZW50cnkuY29tcGxldGlvbjtcbiAgICAgICAgICBpZiAocmVjb3JkLnR5cGUgPT09IFwidGhyb3dcIikge1xuICAgICAgICAgICAgdmFyIHRocm93biA9IHJlY29yZC5hcmc7XG4gICAgICAgICAgICByZXNldFRyeUVudHJ5KGVudHJ5KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIHRocm93bjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBUaGUgY29udGV4dC5jYXRjaCBtZXRob2QgbXVzdCBvbmx5IGJlIGNhbGxlZCB3aXRoIGEgbG9jYXRpb25cbiAgICAgIC8vIGFyZ3VtZW50IHRoYXQgY29ycmVzcG9uZHMgdG8gYSBrbm93biBjYXRjaCBibG9jay5cbiAgICAgIHRocm93IG5ldyBFcnJvcihcImlsbGVnYWwgY2F0Y2ggYXR0ZW1wdFwiKTtcbiAgICB9LFxuXG4gICAgZGVsZWdhdGVZaWVsZDogZnVuY3Rpb24oaXRlcmFibGUsIHJlc3VsdE5hbWUsIG5leHRMb2MpIHtcbiAgICAgIHRoaXMuZGVsZWdhdGUgPSB7XG4gICAgICAgIGl0ZXJhdG9yOiB2YWx1ZXMoaXRlcmFibGUpLFxuICAgICAgICByZXN1bHROYW1lOiByZXN1bHROYW1lLFxuICAgICAgICBuZXh0TG9jOiBuZXh0TG9jXG4gICAgICB9O1xuXG4gICAgICBpZiAodGhpcy5tZXRob2QgPT09IFwibmV4dFwiKSB7XG4gICAgICAgIC8vIERlbGliZXJhdGVseSBmb3JnZXQgdGhlIGxhc3Qgc2VudCB2YWx1ZSBzbyB0aGF0IHdlIGRvbid0XG4gICAgICAgIC8vIGFjY2lkZW50YWxseSBwYXNzIGl0IG9uIHRvIHRoZSBkZWxlZ2F0ZS5cbiAgICAgICAgdGhpcy5hcmcgPSB1bmRlZmluZWQ7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBDb250aW51ZVNlbnRpbmVsO1xuICAgIH1cbiAgfTtcblxuICAvLyBSZWdhcmRsZXNzIG9mIHdoZXRoZXIgdGhpcyBzY3JpcHQgaXMgZXhlY3V0aW5nIGFzIGEgQ29tbW9uSlMgbW9kdWxlXG4gIC8vIG9yIG5vdCwgcmV0dXJuIHRoZSBydW50aW1lIG9iamVjdCBzbyB0aGF0IHdlIGNhbiBkZWNsYXJlIHRoZSB2YXJpYWJsZVxuICAvLyByZWdlbmVyYXRvclJ1bnRpbWUgaW4gdGhlIG91dGVyIHNjb3BlLCB3aGljaCBhbGxvd3MgdGhpcyBtb2R1bGUgdG8gYmVcbiAgLy8gaW5qZWN0ZWQgZWFzaWx5IGJ5IGBiaW4vcmVnZW5lcmF0b3IgLS1pbmNsdWRlLXJ1bnRpbWUgc2NyaXB0LmpzYC5cbiAgcmV0dXJuIGV4cG9ydHM7XG5cbn0oXG4gIC8vIElmIHRoaXMgc2NyaXB0IGlzIGV4ZWN1dGluZyBhcyBhIENvbW1vbkpTIG1vZHVsZSwgdXNlIG1vZHVsZS5leHBvcnRzXG4gIC8vIGFzIHRoZSByZWdlbmVyYXRvclJ1bnRpbWUgbmFtZXNwYWNlLiBPdGhlcndpc2UgY3JlYXRlIGEgbmV3IGVtcHR5XG4gIC8vIG9iamVjdC4gRWl0aGVyIHdheSwgdGhlIHJlc3VsdGluZyBvYmplY3Qgd2lsbCBiZSB1c2VkIHRvIGluaXRpYWxpemVcbiAgLy8gdGhlIHJlZ2VuZXJhdG9yUnVudGltZSB2YXJpYWJsZSBhdCB0aGUgdG9wIG9mIHRoaXMgZmlsZS5cbiAgdHlwZW9mIG1vZHVsZSA9PT0gXCJvYmplY3RcIiA/IG1vZHVsZS5leHBvcnRzIDoge31cbikpO1xuXG50cnkge1xuICByZWdlbmVyYXRvclJ1bnRpbWUgPSBydW50aW1lO1xufSBjYXRjaCAoYWNjaWRlbnRhbFN0cmljdE1vZGUpIHtcbiAgLy8gVGhpcyBtb2R1bGUgc2hvdWxkIG5vdCBiZSBydW5uaW5nIGluIHN0cmljdCBtb2RlLCBzbyB0aGUgYWJvdmVcbiAgLy8gYXNzaWdubWVudCBzaG91bGQgYWx3YXlzIHdvcmsgdW5sZXNzIHNvbWV0aGluZyBpcyBtaXNjb25maWd1cmVkLiBKdXN0XG4gIC8vIGluIGNhc2UgcnVudGltZS5qcyBhY2NpZGVudGFsbHkgcnVucyBpbiBzdHJpY3QgbW9kZSwgd2UgY2FuIGVzY2FwZVxuICAvLyBzdHJpY3QgbW9kZSB1c2luZyBhIGdsb2JhbCBGdW5jdGlvbiBjYWxsLiBUaGlzIGNvdWxkIGNvbmNlaXZhYmx5IGZhaWxcbiAgLy8gaWYgYSBDb250ZW50IFNlY3VyaXR5IFBvbGljeSBmb3JiaWRzIHVzaW5nIEZ1bmN0aW9uLCBidXQgaW4gdGhhdCBjYXNlXG4gIC8vIHRoZSBwcm9wZXIgc29sdXRpb24gaXMgdG8gZml4IHRoZSBhY2NpZGVudGFsIHN0cmljdCBtb2RlIHByb2JsZW0uIElmXG4gIC8vIHlvdSd2ZSBtaXNjb25maWd1cmVkIHlvdXIgYnVuZGxlciB0byBmb3JjZSBzdHJpY3QgbW9kZSBhbmQgYXBwbGllZCBhXG4gIC8vIENTUCB0byBmb3JiaWQgRnVuY3Rpb24sIGFuZCB5b3UncmUgbm90IHdpbGxpbmcgdG8gZml4IGVpdGhlciBvZiB0aG9zZVxuICAvLyBwcm9ibGVtcywgcGxlYXNlIGRldGFpbCB5b3VyIHVuaXF1ZSBwcmVkaWNhbWVudCBpbiBhIEdpdEh1YiBpc3N1ZS5cbiAgRnVuY3Rpb24oXCJyXCIsIFwicmVnZW5lcmF0b3JSdW50aW1lID0gclwiKShydW50aW1lKTtcbn1cbiJdLCJuYW1lcyI6WyJydW50aW1lIiwiZXhwb3J0cyIsIk9wIiwiT2JqZWN0IiwicHJvdG90eXBlIiwiaGFzT3duIiwiaGFzT3duUHJvcGVydHkiLCJ1bmRlZmluZWQiLCIkU3ltYm9sIiwiU3ltYm9sIiwiaXRlcmF0b3JTeW1ib2wiLCJpdGVyYXRvciIsImFzeW5jSXRlcmF0b3JTeW1ib2wiLCJhc3luY0l0ZXJhdG9yIiwidG9TdHJpbmdUYWdTeW1ib2wiLCJ0b1N0cmluZ1RhZyIsIndyYXAiLCJpbm5lckZuIiwib3V0ZXJGbiIsInNlbGYiLCJ0cnlMb2NzTGlzdCIsInByb3RvR2VuZXJhdG9yIiwiR2VuZXJhdG9yIiwiZ2VuZXJhdG9yIiwiY3JlYXRlIiwiY29udGV4dCIsIkNvbnRleHQiLCJfaW52b2tlIiwibWFrZUludm9rZU1ldGhvZCIsInRyeUNhdGNoIiwiZm4iLCJvYmoiLCJhcmciLCJ0eXBlIiwiY2FsbCIsImVyciIsIkdlblN0YXRlU3VzcGVuZGVkU3RhcnQiLCJHZW5TdGF0ZVN1c3BlbmRlZFlpZWxkIiwiR2VuU3RhdGVFeGVjdXRpbmciLCJHZW5TdGF0ZUNvbXBsZXRlZCIsIkNvbnRpbnVlU2VudGluZWwiLCJHZW5lcmF0b3JGdW5jdGlvbiIsIkdlbmVyYXRvckZ1bmN0aW9uUHJvdG90eXBlIiwiSXRlcmF0b3JQcm90b3R5cGUiLCJnZXRQcm90byIsImdldFByb3RvdHlwZU9mIiwiTmF0aXZlSXRlcmF0b3JQcm90b3R5cGUiLCJ2YWx1ZXMiLCJHcCIsImNvbnN0cnVjdG9yIiwiZGlzcGxheU5hbWUiLCJkZWZpbmVJdGVyYXRvck1ldGhvZHMiLCJmb3JFYWNoIiwibWV0aG9kIiwiaXNHZW5lcmF0b3JGdW5jdGlvbiIsImdlbkZ1biIsImN0b3IiLCJuYW1lIiwibWFyayIsInNldFByb3RvdHlwZU9mIiwiX19wcm90b19fIiwiYXdyYXAiLCJfX2F3YWl0IiwiQXN5bmNJdGVyYXRvciIsIlByb21pc2VJbXBsIiwiaW52b2tlIiwicmVzb2x2ZSIsInJlamVjdCIsInJlY29yZCIsInJlc3VsdCIsInZhbHVlIiwidGhlbiIsInVud3JhcHBlZCIsImVycm9yIiwicHJldmlvdXNQcm9taXNlIiwiZW5xdWV1ZSIsImNhbGxJbnZva2VXaXRoTWV0aG9kQW5kQXJnIiwiYXN5bmMiLCJQcm9taXNlIiwiaXRlciIsIm5leHQiLCJkb25lIiwic3RhdGUiLCJFcnJvciIsImRvbmVSZXN1bHQiLCJkZWxlZ2F0ZSIsImRlbGVnYXRlUmVzdWx0IiwibWF5YmVJbnZva2VEZWxlZ2F0ZSIsInNlbnQiLCJfc2VudCIsImRpc3BhdGNoRXhjZXB0aW9uIiwiYWJydXB0IiwiVHlwZUVycm9yIiwiaW5mbyIsInJlc3VsdE5hbWUiLCJuZXh0TG9jIiwidG9TdHJpbmciLCJwdXNoVHJ5RW50cnkiLCJsb2NzIiwiZW50cnkiLCJ0cnlMb2MiLCJjYXRjaExvYyIsImZpbmFsbHlMb2MiLCJhZnRlckxvYyIsInRyeUVudHJpZXMiLCJwdXNoIiwicmVzZXRUcnlFbnRyeSIsImNvbXBsZXRpb24iLCJyZXNldCIsImtleXMiLCJvYmplY3QiLCJrZXkiLCJyZXZlcnNlIiwibGVuZ3RoIiwicG9wIiwiaXRlcmFibGUiLCJpdGVyYXRvck1ldGhvZCIsImlzTmFOIiwiaSIsInNraXBUZW1wUmVzZXQiLCJwcmV2IiwiY2hhckF0Iiwic2xpY2UiLCJzdG9wIiwicm9vdEVudHJ5Iiwicm9vdFJlY29yZCIsInJ2YWwiLCJleGNlcHRpb24iLCJoYW5kbGUiLCJsb2MiLCJjYXVnaHQiLCJoYXNDYXRjaCIsImhhc0ZpbmFsbHkiLCJmaW5hbGx5RW50cnkiLCJjb21wbGV0ZSIsImZpbmlzaCIsInRocm93biIsImRlbGVnYXRlWWllbGQiLCJtb2R1bGUiLCJyZWdlbmVyYXRvclJ1bnRpbWUiLCJhY2NpZGVudGFsU3RyaWN0TW9kZSIsIkZ1bmN0aW9uIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7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Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OyJ9\n","function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && Symbol.iterator in Object(iter)) return Array.from(iter);\n}\n\nmodule.exports = _iterableToArray;","'use strict';\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar isRegExp = require('../internals/is-regexp');\nvar anObject = require('../internals/an-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar speciesConstructor = require('../internals/species-constructor');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar toLength = require('../internals/to-length');\nvar callRegExpExec = require('../internals/regexp-exec-abstract');\nvar regexpExec = require('../internals/regexp-exec');\nvar fails = require('../internals/fails');\n\nvar arrayPush = [].push;\nvar min = Math.min;\nvar MAX_UINT32 = 0xFFFFFFFF;\n\n// babel-minify transpiles RegExp('x', 'y') -> /x/y and it causes SyntaxError\nvar SUPPORTS_Y = !fails(function () { return !RegExp(MAX_UINT32, 'y'); });\n\n// @@split logic\nfixRegExpWellKnownSymbolLogic('split', 2, function (SPLIT, nativeSplit, maybeCallNative) {\n var internalSplit;\n if (\n 'abbc'.split(/(b)*/)[1] == 'c' ||\n 'test'.split(/(?:)/, -1).length != 4 ||\n 'ab'.split(/(?:ab)*/).length != 2 ||\n '.'.split(/(.?)(.?)/).length != 4 ||\n '.'.split(/()()/).length > 1 ||\n ''.split(/.?/).length\n ) {\n // based on es5-shim implementation, need to rework it\n internalSplit = function (separator, limit) {\n var string = String(requireObjectCoercible(this));\n var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;\n if (lim === 0) return [];\n if (separator === undefined) return [string];\n // If `separator` is not a regex, use native split\n if (!isRegExp(separator)) {\n return nativeSplit.call(string, separator, lim);\n }\n var output = [];\n var flags = (separator.ignoreCase ? 'i' : '') +\n (separator.multiline ? 'm' : '') +\n (separator.unicode ? 'u' : '') +\n (separator.sticky ? 'y' : '');\n var lastLastIndex = 0;\n // Make `global` and avoid `lastIndex` issues by working with a copy\n var separatorCopy = new RegExp(separator.source, flags + 'g');\n var match, lastIndex, lastLength;\n while (match = regexpExec.call(separatorCopy, string)) {\n lastIndex = separatorCopy.lastIndex;\n if (lastIndex > lastLastIndex) {\n output.push(string.slice(lastLastIndex, match.index));\n if (match.length > 1 && match.index < string.length) arrayPush.apply(output, match.slice(1));\n lastLength = match[0].length;\n lastLastIndex = lastIndex;\n if (output.length >= lim) break;\n }\n if (separatorCopy.lastIndex === match.index) separatorCopy.lastIndex++; // Avoid an infinite loop\n }\n if (lastLastIndex === string.length) {\n if (lastLength || !separatorCopy.test('')) output.push('');\n } else output.push(string.slice(lastLastIndex));\n return output.length > lim ? output.slice(0, lim) : output;\n };\n // Chakra, V8\n } else if ('0'.split(undefined, 0).length) {\n internalSplit = function (separator, limit) {\n return separator === undefined && limit === 0 ? [] : nativeSplit.call(this, separator, limit);\n };\n } else internalSplit = nativeSplit;\n\n return [\n // `String.prototype.split` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.split\n function split(separator, limit) {\n var O = requireObjectCoercible(this);\n var splitter = separator == undefined ? undefined : separator[SPLIT];\n return splitter !== undefined\n ? splitter.call(separator, O, limit)\n : internalSplit.call(String(O), separator, limit);\n },\n // `RegExp.prototype[@@split]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@split\n //\n // NOTE: This cannot be properly polyfilled in engines that don't support\n // the 'y' flag.\n function (regexp, limit) {\n var res = maybeCallNative(internalSplit, regexp, this, limit, internalSplit !== nativeSplit);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n var C = speciesConstructor(rx, RegExp);\n\n var unicodeMatching = rx.unicode;\n var flags = (rx.ignoreCase ? 'i' : '') +\n (rx.multiline ? 'm' : '') +\n (rx.unicode ? 'u' : '') +\n (SUPPORTS_Y ? 'y' : 'g');\n\n // ^(? + rx + ) is needed, in combination with some S slicing, to\n // simulate the 'y' flag.\n var splitter = new C(SUPPORTS_Y ? rx : '^(?:' + rx.source + ')', flags);\n var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;\n if (lim === 0) return [];\n if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : [];\n var p = 0;\n var q = 0;\n var A = [];\n while (q < S.length) {\n splitter.lastIndex = SUPPORTS_Y ? q : 0;\n var z = callRegExpExec(splitter, SUPPORTS_Y ? S : S.slice(q));\n var e;\n if (\n z === null ||\n (e = min(toLength(splitter.lastIndex + (SUPPORTS_Y ? 0 : q)), S.length)) === p\n ) {\n q = advanceStringIndex(S, q, unicodeMatching);\n } else {\n A.push(S.slice(p, q));\n if (A.length === lim) return A;\n for (var i = 1; i <= z.length - 1; i++) {\n A.push(z[i]);\n if (A.length === lim) return A;\n }\n q = p = e;\n }\n }\n A.push(S.slice(p));\n return A;\n }\n ];\n}, !SUPPORTS_Y);\n","'use strict';\nvar $ = require('../internals/export');\nvar $reduce = require('../internals/array-reduce').left;\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar STRICT_METHOD = arrayMethodIsStrict('reduce');\nvar USES_TO_LENGTH = arrayMethodUsesToLength('reduce', { 1: 0 });\n\n// `Array.prototype.reduce` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.reduce\n$({ target: 'Array', proto: true, forced: !STRICT_METHOD || !USES_TO_LENGTH }, {\n reduce: function reduce(callbackfn /* , initialValue */) {\n return $reduce(this, callbackfn, arguments.length, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","var arrayLikeToArray = require(\"./arrayLikeToArray\");\n\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return arrayLikeToArray(arr);\n}\n\nmodule.exports = _arrayWithoutHoles;","'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 $ = require('../internals/export');\nvar isArray = require('../internals/is-array');\n\nvar nativeReverse = [].reverse;\nvar test = [1, 2];\n\n// `Array.prototype.reverse` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.reverse\n// fix for Safari 12.0 bug\n// https://bugs.webkit.org/show_bug.cgi?id=188794\n$({ target: 'Array', proto: true, forced: String(test) === String(test.reverse()) }, {\n reverse: function reverse() {\n // eslint-disable-next-line no-self-assign\n if (isArray(this)) this.length = this.length;\n return nativeReverse.call(this);\n }\n});\n","var arrayWithHoles = require(\"./arrayWithHoles\");\n\nvar iterableToArrayLimit = require(\"./iterableToArrayLimit\");\n\nvar unsupportedIterableToArray = require(\"./unsupportedIterableToArray\");\n\nvar nonIterableRest = require(\"./nonIterableRest\");\n\nfunction _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}\n\nmodule.exports = _slicedToArray;","'use strict';\nvar $ = require('../internals/export');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar toLength = require('../internals/to-length');\nvar notARegExp = require('../internals/not-a-regexp');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar correctIsRegExpLogic = require('../internals/correct-is-regexp-logic');\nvar IS_PURE = require('../internals/is-pure');\n\nvar nativeStartsWith = ''.startsWith;\nvar min = Math.min;\n\nvar CORRECT_IS_REGEXP_LOGIC = correctIsRegExpLogic('startsWith');\n// https://github.com/zloirock/core-js/pull/702\nvar MDN_POLYFILL_BUG = !IS_PURE && !CORRECT_IS_REGEXP_LOGIC && !!function () {\n var descriptor = getOwnPropertyDescriptor(String.prototype, 'startsWith');\n return descriptor && !descriptor.writable;\n}();\n\n// `String.prototype.startsWith` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.startswith\n$({ target: 'String', proto: true, forced: !MDN_POLYFILL_BUG && !CORRECT_IS_REGEXP_LOGIC }, {\n startsWith: function startsWith(searchString /* , position = 0 */) {\n var that = String(requireObjectCoercible(this));\n notARegExp(searchString);\n var index = toLength(min(arguments.length > 1 ? arguments[1] : undefined, that.length));\n var search = String(searchString);\n return nativeStartsWith\n ? nativeStartsWith.call(that, search, index)\n : that.slice(index, index + search.length) === search;\n }\n});\n","var $ = require('../internals/export');\nvar fails = require('../internals/fails');\nvar toObject = require('../internals/to-object');\nvar nativeGetPrototypeOf = require('../internals/object-get-prototype-of');\nvar CORRECT_PROTOTYPE_GETTER = require('../internals/correct-prototype-getter');\n\nvar FAILS_ON_PRIMITIVES = fails(function () { nativeGetPrototypeOf(1); });\n\n// `Object.getPrototypeOf` method\n// https://tc39.github.io/ecma262/#sec-object.getprototypeof\n$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES, sham: !CORRECT_PROTOTYPE_GETTER }, {\n getPrototypeOf: function getPrototypeOf(it) {\n return nativeGetPrototypeOf(toObject(it));\n }\n});\n\n","function _getPrototypeOf(o) {\n module.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}\n\nmodule.exports = _getPrototypeOf;","function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}\n\nmodule.exports = _assertThisInitialized;","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\nvar InternalStateModule = require('../internals/internal-state');\nvar defineIterator = require('../internals/define-iterator');\n\nvar STRING_ITERATOR = 'String Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(STRING_ITERATOR);\n\n// `String.prototype[@@iterator]` method\n// https://tc39.github.io/ecma262/#sec-string.prototype-@@iterator\ndefineIterator(String, 'String', function (iterated) {\n setInternalState(this, {\n type: STRING_ITERATOR,\n string: String(iterated),\n index: 0\n });\n// `%StringIteratorPrototype%.next` method\n// https://tc39.github.io/ecma262/#sec-%stringiteratorprototype%.next\n}, function next() {\n var state = getInternalState(this);\n var string = state.string;\n var index = state.index;\n var point;\n if (index >= string.length) return { value: undefined, done: true };\n point = charAt(string, index);\n state.index += point.length;\n return { value: point, done: false };\n});\n","var arrayWithoutHoles = require(\"./arrayWithoutHoles\");\n\nvar iterableToArray = require(\"./iterableToArray\");\n\nvar unsupportedIterableToArray = require(\"./unsupportedIterableToArray\");\n\nvar nonIterableSpread = require(\"./nonIterableSpread\");\n\nfunction _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}\n\nmodule.exports = _toConsumableArray;","'use strict';\nvar $ = require('../internals/export');\nvar $some = require('../internals/array-iteration').some;\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar STRICT_METHOD = arrayMethodIsStrict('some');\nvar USES_TO_LENGTH = arrayMethodUsesToLength('some');\n\n// `Array.prototype.some` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.some\n$({ target: 'Array', proto: true, forced: !STRICT_METHOD || !USES_TO_LENGTH }, {\n some: function some(callbackfn /* , thisArg */) {\n return $some(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","'use strict';\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar anObject = require('../internals/an-object');\nvar toLength = require('../internals/to-length');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar regExpExec = require('../internals/regexp-exec-abstract');\n\n// @@match logic\nfixRegExpWellKnownSymbolLogic('match', 1, function (MATCH, nativeMatch, maybeCallNative) {\n return [\n // `String.prototype.match` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.match\n function match(regexp) {\n var O = requireObjectCoercible(this);\n var matcher = regexp == undefined ? undefined : regexp[MATCH];\n return matcher !== undefined ? matcher.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));\n },\n // `RegExp.prototype[@@match]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@match\n function (regexp) {\n var res = maybeCallNative(nativeMatch, regexp, this);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n\n if (!rx.global) return regExpExec(rx, S);\n\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n var A = [];\n var n = 0;\n var result;\n while ((result = regExpExec(rx, S)) !== null) {\n var matchStr = String(result[0]);\n A[n] = matchStr;\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n n++;\n }\n return n === 0 ? null : A;\n }\n ];\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar $trim = require('../internals/string-trim').trim;\nvar forcedStringTrimMethod = require('../internals/string-trim-forced');\n\n// `String.prototype.trim` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.trim\n$({ target: 'String', proto: true, forced: forcedStringTrimMethod('trim') }, {\n trim: function trim() {\n return $trim(this);\n }\n});\n","function _setPrototypeOf(o, p) {\n module.exports = _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}\n\nmodule.exports = _setPrototypeOf;","var $ = require('../internals/export');\nvar getBuiltIn = require('../internals/get-built-in');\nvar aFunction = require('../internals/a-function');\nvar anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar create = require('../internals/object-create');\nvar bind = require('../internals/function-bind');\nvar fails = require('../internals/fails');\n\nvar nativeConstruct = getBuiltIn('Reflect', 'construct');\n\n// `Reflect.construct` method\n// https://tc39.github.io/ecma262/#sec-reflect.construct\n// MS Edge supports only 2 arguments and argumentsList argument is optional\n// FF Nightly sets third argument as `new.target`, but does not create `this` from it\nvar NEW_TARGET_BUG = fails(function () {\n function F() { /* empty */ }\n return !(nativeConstruct(function () { /* empty */ }, [], F) instanceof F);\n});\nvar ARGS_BUG = !fails(function () {\n nativeConstruct(function () { /* empty */ });\n});\nvar FORCED = NEW_TARGET_BUG || ARGS_BUG;\n\n$({ target: 'Reflect', stat: true, forced: FORCED, sham: FORCED }, {\n construct: function construct(Target, args /* , newTarget */) {\n aFunction(Target);\n anObject(args);\n var newTarget = arguments.length < 3 ? Target : aFunction(arguments[2]);\n if (ARGS_BUG && !NEW_TARGET_BUG) return nativeConstruct(Target, args, newTarget);\n if (Target == newTarget) {\n // w/o altered newTarget, optimization for 0-4 arguments\n switch (args.length) {\n case 0: return new Target();\n case 1: return new Target(args[0]);\n case 2: return new Target(args[0], args[1]);\n case 3: return new Target(args[0], args[1], args[2]);\n case 4: return new Target(args[0], args[1], args[2], args[3]);\n }\n // w/o altered newTarget, lot of arguments case\n var $args = [null];\n $args.push.apply($args, args);\n return new (bind.apply(Target, $args))();\n }\n // with altered newTarget, not support built-in constructors\n var proto = newTarget.prototype;\n var instance = create(isObject(proto) ? proto : Object.prototype);\n var result = Function.apply.call(Target, instance, args);\n return isObject(result) ? result : instance;\n }\n});\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar toObject = require('../internals/to-object');\nvar callWithSafeIterationClosing = require('../internals/call-with-safe-iteration-closing');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar toLength = require('../internals/to-length');\nvar createProperty = require('../internals/create-property');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\n// `Array.from` method implementation\n// https://tc39.github.io/ecma262/#sec-array.from\nmodule.exports = function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {\n var O = toObject(arrayLike);\n var C = typeof this == 'function' ? this : Array;\n var argumentsLength = arguments.length;\n var mapfn = argumentsLength > 1 ? arguments[1] : undefined;\n var mapping = mapfn !== undefined;\n var iteratorMethod = getIteratorMethod(O);\n var index = 0;\n var length, result, step, iterator, next, value;\n if (mapping) mapfn = bind(mapfn, argumentsLength > 2 ? arguments[2] : undefined, 2);\n // if the target is not iterable or it's an array with the default iterator - use a simple case\n if (iteratorMethod != undefined && !(C == Array && isArrayIteratorMethod(iteratorMethod))) {\n iterator = iteratorMethod.call(O);\n next = iterator.next;\n result = new C();\n for (;!(step = next.call(iterator)).done; index++) {\n value = mapping ? callWithSafeIterationClosing(iterator, mapfn, [step.value, index], true) : step.value;\n createProperty(result, index, value);\n }\n } else {\n length = toLength(O.length);\n result = new C(length);\n for (;length > index; index++) {\n value = mapping ? mapfn(O[index], index) : O[index];\n createProperty(result, index, value);\n }\n }\n result.length = index;\n return result;\n};\n","'use strict';\nvar collection = require('../internals/collection');\nvar collectionStrong = require('../internals/collection-strong');\n\n// `Map` constructor\n// https://tc39.github.io/ecma262/#sec-map-objects\nmodule.exports = collection('Map', function (init) {\n return function Map() { return init(this, arguments.length ? arguments[0] : undefined); };\n}, collectionStrong);\n","'use strict';\nvar 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","// a string of all valid unicode whitespaces\n// eslint-disable-next-line max-len\nmodule.exports = '\\u0009\\u000A\\u000B\\u000C\\u000D\\u0020\\u00A0\\u1680\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u202F\\u205F\\u3000\\u2028\\u2029\\uFEFF';\n","var requireObjectCoercible = require('../internals/require-object-coercible');\nvar whitespaces = require('../internals/whitespaces');\n\nvar whitespace = '[' + whitespaces + ']';\nvar ltrim = RegExp('^' + whitespace + whitespace + '*');\nvar rtrim = RegExp(whitespace + whitespace + '*$');\n\n// `String.prototype.{ trim, trimStart, trimEnd, trimLeft, trimRight }` methods implementation\nvar createMethod = function (TYPE) {\n return function ($this) {\n var string = String(requireObjectCoercible($this));\n if (TYPE & 1) string = string.replace(ltrim, '');\n if (TYPE & 2) string = string.replace(rtrim, '');\n return string;\n };\n};\n\nmodule.exports = {\n // `String.prototype.{ trimLeft, trimStart }` methods\n // https://tc39.github.io/ecma262/#sec-string.prototype.trimstart\n start: createMethod(1),\n // `String.prototype.{ trimRight, trimEnd }` methods\n // https://tc39.github.io/ecma262/#sec-string.prototype.trimend\n end: createMethod(2),\n // `String.prototype.trim` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.trim\n trim: createMethod(3)\n};\n","/*\n\tBased on rgbcolor.js by Stoyan Stefanov \n\thttp://www.phpied.com/rgb-color-parser-in-javascript/\n*/\n\nmodule.exports = function(color_string) {\n this.ok = false;\n this.alpha = 1.0;\n\n // strip any leading #\n if (color_string.charAt(0) == '#') { // remove # if any\n color_string = color_string.substr(1,6);\n }\n\n color_string = color_string.replace(/ /g,'');\n color_string = color_string.toLowerCase();\n\n // before getting into regexps, try simple matches\n // and overwrite the input\n var simple_colors = {\n aliceblue: 'f0f8ff',\n antiquewhite: 'faebd7',\n aqua: '00ffff',\n aquamarine: '7fffd4',\n azure: 'f0ffff',\n beige: 'f5f5dc',\n bisque: 'ffe4c4',\n black: '000000',\n blanchedalmond: 'ffebcd',\n blue: '0000ff',\n blueviolet: '8a2be2',\n brown: 'a52a2a',\n burlywood: 'deb887',\n cadetblue: '5f9ea0',\n chartreuse: '7fff00',\n chocolate: 'd2691e',\n coral: 'ff7f50',\n cornflowerblue: '6495ed',\n cornsilk: 'fff8dc',\n crimson: 'dc143c',\n cyan: '00ffff',\n darkblue: '00008b',\n darkcyan: '008b8b',\n darkgoldenrod: 'b8860b',\n darkgray: 'a9a9a9',\n darkgreen: '006400',\n darkkhaki: 'bdb76b',\n darkmagenta: '8b008b',\n darkolivegreen: '556b2f',\n darkorange: 'ff8c00',\n darkorchid: '9932cc',\n darkred: '8b0000',\n darksalmon: 'e9967a',\n darkseagreen: '8fbc8f',\n darkslateblue: '483d8b',\n darkslategray: '2f4f4f',\n darkturquoise: '00ced1',\n darkviolet: '9400d3',\n deeppink: 'ff1493',\n deepskyblue: '00bfff',\n dimgray: '696969',\n dodgerblue: '1e90ff',\n feldspar: 'd19275',\n firebrick: 'b22222',\n floralwhite: 'fffaf0',\n forestgreen: '228b22',\n fuchsia: 'ff00ff',\n gainsboro: 'dcdcdc',\n ghostwhite: 'f8f8ff',\n gold: 'ffd700',\n goldenrod: 'daa520',\n gray: '808080',\n green: '008000',\n greenyellow: 'adff2f',\n honeydew: 'f0fff0',\n hotpink: 'ff69b4',\n indianred : 'cd5c5c',\n indigo : '4b0082',\n ivory: 'fffff0',\n khaki: 'f0e68c',\n lavender: 'e6e6fa',\n lavenderblush: 'fff0f5',\n lawngreen: '7cfc00',\n lemonchiffon: 'fffacd',\n lightblue: 'add8e6',\n lightcoral: 'f08080',\n lightcyan: 'e0ffff',\n lightgoldenrodyellow: 'fafad2',\n lightgrey: 'd3d3d3',\n lightgreen: '90ee90',\n lightpink: 'ffb6c1',\n lightsalmon: 'ffa07a',\n lightseagreen: '20b2aa',\n lightskyblue: '87cefa',\n lightslateblue: '8470ff',\n lightslategray: '778899',\n lightsteelblue: 'b0c4de',\n lightyellow: 'ffffe0',\n lime: '00ff00',\n limegreen: '32cd32',\n linen: 'faf0e6',\n magenta: 'ff00ff',\n maroon: '800000',\n mediumaquamarine: '66cdaa',\n mediumblue: '0000cd',\n mediumorchid: 'ba55d3',\n mediumpurple: '9370d8',\n mediumseagreen: '3cb371',\n mediumslateblue: '7b68ee',\n mediumspringgreen: '00fa9a',\n mediumturquoise: '48d1cc',\n mediumvioletred: 'c71585',\n midnightblue: '191970',\n mintcream: 'f5fffa',\n mistyrose: 'ffe4e1',\n moccasin: 'ffe4b5',\n navajowhite: 'ffdead',\n navy: '000080',\n oldlace: 'fdf5e6',\n olive: '808000',\n olivedrab: '6b8e23',\n orange: 'ffa500',\n orangered: 'ff4500',\n orchid: 'da70d6',\n palegoldenrod: 'eee8aa',\n palegreen: '98fb98',\n paleturquoise: 'afeeee',\n palevioletred: 'd87093',\n papayawhip: 'ffefd5',\n peachpuff: 'ffdab9',\n peru: 'cd853f',\n pink: 'ffc0cb',\n plum: 'dda0dd',\n powderblue: 'b0e0e6',\n purple: '800080',\n rebeccapurple: '663399',\n red: 'ff0000',\n rosybrown: 'bc8f8f',\n royalblue: '4169e1',\n saddlebrown: '8b4513',\n salmon: 'fa8072',\n sandybrown: 'f4a460',\n seagreen: '2e8b57',\n seashell: 'fff5ee',\n sienna: 'a0522d',\n silver: 'c0c0c0',\n skyblue: '87ceeb',\n slateblue: '6a5acd',\n slategray: '708090',\n snow: 'fffafa',\n springgreen: '00ff7f',\n steelblue: '4682b4',\n tan: 'd2b48c',\n teal: '008080',\n thistle: 'd8bfd8',\n tomato: 'ff6347',\n turquoise: '40e0d0',\n violet: 'ee82ee',\n violetred: 'd02090',\n wheat: 'f5deb3',\n white: 'ffffff',\n whitesmoke: 'f5f5f5',\n yellow: 'ffff00',\n yellowgreen: '9acd32'\n };\n color_string = simple_colors[color_string] || color_string;\n // emd of simple type-in colors\n\n // array of color definition objects\n var color_defs = [\n {\n re: /^rgba\\((\\d{1,3}),\\s*(\\d{1,3}),\\s*(\\d{1,3}),\\s*((?:\\d?\\.)?\\d)\\)$/,\n example: ['rgba(123, 234, 45, 0.8)', 'rgba(255,234,245,1.0)'],\n process: function (bits){\n return [\n parseInt(bits[1]),\n parseInt(bits[2]),\n parseInt(bits[3]),\n parseFloat(bits[4])\n ];\n }\n },\n {\n re: /^rgb\\((\\d{1,3}),\\s*(\\d{1,3}),\\s*(\\d{1,3})\\)$/,\n example: ['rgb(123, 234, 45)', 'rgb(255,234,245)'],\n process: function (bits){\n return [\n parseInt(bits[1]),\n parseInt(bits[2]),\n parseInt(bits[3])\n ];\n }\n },\n {\n re: /^([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,\n example: ['#00ff00', '336699'],\n process: function (bits){\n return [\n parseInt(bits[1], 16),\n parseInt(bits[2], 16),\n parseInt(bits[3], 16)\n ];\n }\n },\n {\n re: /^([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,\n example: ['#fb0', 'f0f'],\n process: function (bits){\n return [\n parseInt(bits[1] + bits[1], 16),\n parseInt(bits[2] + bits[2], 16),\n parseInt(bits[3] + bits[3], 16)\n ];\n }\n }\n ];\n\n // search through the definitions to find a match\n for (var i = 0; i < color_defs.length; i++) {\n var re = color_defs[i].re;\n var processor = color_defs[i].process;\n var bits = re.exec(color_string);\n if (bits) {\n var channels = processor(bits);\n this.r = channels[0];\n this.g = channels[1];\n this.b = channels[2];\n if (channels.length > 3) {\n this.alpha = channels[3];\n }\n this.ok = true;\n }\n\n }\n\n // validate/cleanup values\n this.r = (this.r < 0 || isNaN(this.r)) ? 0 : ((this.r > 255) ? 255 : this.r);\n this.g = (this.g < 0 || isNaN(this.g)) ? 0 : ((this.g > 255) ? 255 : this.g);\n this.b = (this.b < 0 || isNaN(this.b)) ? 0 : ((this.b > 255) ? 255 : this.b);\n this.alpha = (this.alpha < 0) ? 0 : ((this.alpha > 1.0 || isNaN(this.alpha)) ? 1.0 : this.alpha);\n\n // some getters\n this.toRGB = function () {\n return 'rgb(' + this.r + ', ' + this.g + ', ' + this.b + ')';\n }\n this.toRGBA = function () {\n return 'rgba(' + this.r + ', ' + this.g + ', ' + this.b + ', ' + this.alpha + ')';\n }\n this.toHex = function () {\n var r = this.r.toString(16);\n var g = this.g.toString(16);\n var b = this.b.toString(16);\n if (r.length == 1) r = '0' + r;\n if (g.length == 1) g = '0' + g;\n if (b.length == 1) b = '0' + b;\n return '#' + r + g + b;\n }\n\n // help\n this.getHelpXML = function () {\n\n var examples = new Array();\n // add regexps\n for (var i = 0; i < color_defs.length; i++) {\n var example = color_defs[i].example;\n for (var j = 0; j < example.length; j++) {\n examples[examples.length] = example[j];\n }\n }\n // add type-in colors\n for (var sc in simple_colors) {\n examples[examples.length] = sc;\n }\n\n var xml = document.createElement('ul');\n xml.setAttribute('id', 'rgbcolor-examples');\n for (var i = 0; i < examples.length; i++) {\n try {\n var list_item = document.createElement('li');\n var list_color = new RGBColor(examples[i]);\n var example_div = document.createElement('div');\n example_div.style.cssText =\n 'margin: 3px; '\n + 'border: 1px solid black; '\n + 'background:' + list_color.toHex() + '; '\n + 'color:' + list_color.toHex()\n ;\n example_div.appendChild(document.createTextNode('test'));\n var list_item_value = document.createTextNode(\n ' ' + examples[i] + ' -> ' + list_color.toRGB() + ' -> ' + list_color.toHex()\n );\n list_item.appendChild(example_div);\n list_item.appendChild(list_item_value);\n xml.appendChild(list_item);\n\n } catch(e){}\n }\n return xml;\n\n }\n\n}\n","function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n\n return arr2;\n}\n\nmodule.exports = _arrayLikeToArray;","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\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\nmodule.exports = _createClass;","var $ = require('../internals/export');\nvar isObject = require('../internals/is-object');\nvar anObject = require('../internals/an-object');\nvar has = require('../internals/has');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\n\n// `Reflect.get` method\n// https://tc39.github.io/ecma262/#sec-reflect.get\nfunction get(target, propertyKey /* , receiver */) {\n var receiver = arguments.length < 3 ? target : arguments[2];\n var descriptor, prototype;\n if (anObject(target) === receiver) return target[propertyKey];\n if (descriptor = getOwnPropertyDescriptorModule.f(target, propertyKey)) return has(descriptor, 'value')\n ? descriptor.value\n : descriptor.get === undefined\n ? undefined\n : descriptor.get.call(receiver);\n if (isObject(prototype = getPrototypeOf(target))) return get(prototype, propertyKey, receiver);\n}\n\n$({ target: 'Reflect', stat: true }, {\n get: get\n});\n","function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function (obj) {\n return typeof obj;\n };\n } else {\n _typeof = function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\n/* eslint-disable no-bitwise -- used for calculations */\n\n/* eslint-disable unicorn/prefer-query-selector -- aiming at\n backward-compatibility */\n\n/**\n* StackBlur - a fast almost Gaussian Blur For Canvas\n*\n* In case you find this class useful - especially in commercial projects -\n* I am not totally unhappy for a small donation to my PayPal account\n* mario@quasimondo.de\n*\n* Or support me on flattr:\n* {@link https://flattr.com/thing/72791/StackBlur-a-fast-almost-Gaussian-Blur-Effect-for-CanvasJavascript}.\n*\n* @module StackBlur\n* @author Mario Klingemann\n* Contact: mario@quasimondo.com\n* Website: {@link http://www.quasimondo.com/StackBlurForCanvas/StackBlurDemo.html}\n* Twitter: @quasimondo\n*\n* @copyright (c) 2010 Mario Klingemann\n*\n* Permission is hereby granted, free of charge, to any person\n* obtaining a copy of this software and associated documentation\n* files (the \"Software\"), to deal in the Software without\n* restriction, including without limitation the rights to use,\n* copy, modify, merge, publish, distribute, sublicense, and/or sell\n* copies of the Software, and to permit persons to whom the\n* Software is furnished to do so, subject to the following\n* conditions:\n*\n* The above copyright notice and this permission notice shall be\n* included in all copies or substantial portions of the Software.\n*\n* THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES\n* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT\n* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,\n* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING\n* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR\n* OTHER DEALINGS IN THE SOFTWARE.\n*/\nvar mulTable = [512, 512, 456, 512, 328, 456, 335, 512, 405, 328, 271, 456, 388, 335, 292, 512, 454, 405, 364, 328, 298, 271, 496, 456, 420, 388, 360, 335, 312, 292, 273, 512, 482, 454, 428, 405, 383, 364, 345, 328, 312, 298, 284, 271, 259, 496, 475, 456, 437, 420, 404, 388, 374, 360, 347, 335, 323, 312, 302, 292, 282, 273, 265, 512, 497, 482, 468, 454, 441, 428, 417, 405, 394, 383, 373, 364, 354, 345, 337, 328, 320, 312, 305, 298, 291, 284, 278, 271, 265, 259, 507, 496, 485, 475, 465, 456, 446, 437, 428, 420, 412, 404, 396, 388, 381, 374, 367, 360, 354, 347, 341, 335, 329, 323, 318, 312, 307, 302, 297, 292, 287, 282, 278, 273, 269, 265, 261, 512, 505, 497, 489, 482, 475, 468, 461, 454, 447, 441, 435, 428, 422, 417, 411, 405, 399, 394, 389, 383, 378, 373, 368, 364, 359, 354, 350, 345, 341, 337, 332, 328, 324, 320, 316, 312, 309, 305, 301, 298, 294, 291, 287, 284, 281, 278, 274, 271, 268, 265, 262, 259, 257, 507, 501, 496, 491, 485, 480, 475, 470, 465, 460, 456, 451, 446, 442, 437, 433, 428, 424, 420, 416, 412, 408, 404, 400, 396, 392, 388, 385, 381, 377, 374, 370, 367, 363, 360, 357, 354, 350, 347, 344, 341, 338, 335, 332, 329, 326, 323, 320, 318, 315, 312, 310, 307, 304, 302, 299, 297, 294, 292, 289, 287, 285, 282, 280, 278, 275, 273, 271, 269, 267, 265, 263, 261, 259];\nvar shgTable = [9, 11, 12, 13, 13, 14, 14, 15, 15, 15, 15, 16, 16, 16, 16, 17, 17, 17, 17, 17, 17, 17, 18, 18, 18, 18, 18, 18, 18, 18, 18, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24];\n/**\n * @param {string|HTMLImageElement} img\n * @param {string|HTMLCanvasElement} canvas\n * @param {Float} radius\n * @param {boolean} blurAlphaChannel\n * @param {boolean} useOffsetWidth\n * @returns {undefined}\n */\n\nfunction processImage(img, canvas, radius, blurAlphaChannel, useOffsetWidth) {\n if (typeof img === 'string') {\n img = document.getElementById(img);\n }\n\n if (!img || !('naturalWidth' in img)) {\n return;\n }\n\n var dimensionType = useOffsetWidth ? 'offset' : 'natural';\n var w = img[dimensionType + 'Width'];\n var h = img[dimensionType + 'Height'];\n\n if (typeof canvas === 'string') {\n canvas = document.getElementById(canvas);\n }\n\n if (!canvas || !('getContext' in canvas)) {\n return;\n }\n\n canvas.style.width = w + 'px';\n canvas.style.height = h + 'px';\n canvas.width = w;\n canvas.height = h;\n var context = canvas.getContext('2d');\n context.clearRect(0, 0, w, h);\n context.drawImage(img, 0, 0, img.naturalWidth, img.naturalHeight, 0, 0, w, h);\n\n if (isNaN(radius) || radius < 1) {\n return;\n }\n\n if (blurAlphaChannel) {\n processCanvasRGBA(canvas, 0, 0, w, h, radius);\n } else {\n processCanvasRGB(canvas, 0, 0, w, h, radius);\n }\n}\n/**\n * @param {string|HTMLCanvasElement} canvas\n * @param {Integer} topX\n * @param {Integer} topY\n * @param {Integer} width\n * @param {Integer} height\n * @throws {Error|TypeError}\n * @returns {ImageData} See {@link https://html.spec.whatwg.org/multipage/canvas.html#imagedata}\n */\n\n\nfunction getImageDataFromCanvas(canvas, topX, topY, width, height) {\n if (typeof canvas === 'string') {\n canvas = document.getElementById(canvas);\n }\n\n if (!canvas || _typeof(canvas) !== 'object' || !('getContext' in canvas)) {\n throw new TypeError('Expecting canvas with `getContext` method ' + 'in processCanvasRGB(A) calls!');\n }\n\n var context = canvas.getContext('2d');\n\n try {\n return context.getImageData(topX, topY, width, height);\n } catch (e) {\n throw new Error('unable to access image data: ' + e);\n }\n}\n/**\n * @param {HTMLCanvasElement} canvas\n * @param {Integer} topX\n * @param {Integer} topY\n * @param {Integer} width\n * @param {Integer} height\n * @param {Float} radius\n * @returns {undefined}\n */\n\n\nfunction processCanvasRGBA(canvas, topX, topY, width, height, radius) {\n if (isNaN(radius) || radius < 1) {\n return;\n }\n\n radius |= 0;\n var imageData = getImageDataFromCanvas(canvas, topX, topY, width, height);\n imageData = processImageDataRGBA(imageData, topX, topY, width, height, radius);\n canvas.getContext('2d').putImageData(imageData, topX, topY);\n}\n/**\n * @param {ImageData} imageData\n * @param {Integer} topX\n * @param {Integer} topY\n * @param {Integer} width\n * @param {Integer} height\n * @param {Float} radius\n * @returns {ImageData}\n */\n\n\nfunction processImageDataRGBA(imageData, topX, topY, width, height, radius) {\n var pixels = imageData.data;\n var div = 2 * radius + 1; // const w4 = width << 2;\n\n var widthMinus1 = width - 1;\n var heightMinus1 = height - 1;\n var radiusPlus1 = radius + 1;\n var sumFactor = radiusPlus1 * (radiusPlus1 + 1) / 2;\n var stackStart = new BlurStack();\n var stack = stackStart;\n var stackEnd;\n\n for (var i = 1; i < div; i++) {\n stack = stack.next = new BlurStack();\n\n if (i === radiusPlus1) {\n stackEnd = stack;\n }\n }\n\n stack.next = stackStart;\n var stackIn = null,\n stackOut = null,\n yw = 0,\n yi = 0;\n var mulSum = mulTable[radius];\n var shgSum = shgTable[radius];\n\n for (var y = 0; y < height; y++) {\n stack = stackStart;\n var pr = pixels[yi],\n pg = pixels[yi + 1],\n pb = pixels[yi + 2],\n pa = pixels[yi + 3];\n\n for (var _i = 0; _i < radiusPlus1; _i++) {\n stack.r = pr;\n stack.g = pg;\n stack.b = pb;\n stack.a = pa;\n stack = stack.next;\n }\n\n var rInSum = 0,\n gInSum = 0,\n bInSum = 0,\n aInSum = 0,\n rOutSum = radiusPlus1 * pr,\n gOutSum = radiusPlus1 * pg,\n bOutSum = radiusPlus1 * pb,\n aOutSum = radiusPlus1 * pa,\n rSum = sumFactor * pr,\n gSum = sumFactor * pg,\n bSum = sumFactor * pb,\n aSum = sumFactor * pa;\n\n for (var _i2 = 1; _i2 < radiusPlus1; _i2++) {\n var p = yi + ((widthMinus1 < _i2 ? widthMinus1 : _i2) << 2);\n var r = pixels[p],\n g = pixels[p + 1],\n b = pixels[p + 2],\n a = pixels[p + 3];\n var rbs = radiusPlus1 - _i2;\n rSum += (stack.r = r) * rbs;\n gSum += (stack.g = g) * rbs;\n bSum += (stack.b = b) * rbs;\n aSum += (stack.a = a) * rbs;\n rInSum += r;\n gInSum += g;\n bInSum += b;\n aInSum += a;\n stack = stack.next;\n }\n\n stackIn = stackStart;\n stackOut = stackEnd;\n\n for (var x = 0; x < width; x++) {\n var paInitial = aSum * mulSum >> shgSum;\n pixels[yi + 3] = paInitial;\n\n if (paInitial !== 0) {\n var _a2 = 255 / paInitial;\n\n pixels[yi] = (rSum * mulSum >> shgSum) * _a2;\n pixels[yi + 1] = (gSum * mulSum >> shgSum) * _a2;\n pixels[yi + 2] = (bSum * mulSum >> shgSum) * _a2;\n } else {\n pixels[yi] = pixels[yi + 1] = pixels[yi + 2] = 0;\n }\n\n rSum -= rOutSum;\n gSum -= gOutSum;\n bSum -= bOutSum;\n aSum -= aOutSum;\n rOutSum -= stackIn.r;\n gOutSum -= stackIn.g;\n bOutSum -= stackIn.b;\n aOutSum -= stackIn.a;\n\n var _p = x + radius + 1;\n\n _p = yw + (_p < widthMinus1 ? _p : widthMinus1) << 2;\n rInSum += stackIn.r = pixels[_p];\n gInSum += stackIn.g = pixels[_p + 1];\n bInSum += stackIn.b = pixels[_p + 2];\n aInSum += stackIn.a = pixels[_p + 3];\n rSum += rInSum;\n gSum += gInSum;\n bSum += bInSum;\n aSum += aInSum;\n stackIn = stackIn.next;\n var _stackOut = stackOut,\n _r = _stackOut.r,\n _g = _stackOut.g,\n _b = _stackOut.b,\n _a = _stackOut.a;\n rOutSum += _r;\n gOutSum += _g;\n bOutSum += _b;\n aOutSum += _a;\n rInSum -= _r;\n gInSum -= _g;\n bInSum -= _b;\n aInSum -= _a;\n stackOut = stackOut.next;\n yi += 4;\n }\n\n yw += width;\n }\n\n for (var _x = 0; _x < width; _x++) {\n yi = _x << 2;\n\n var _pr = pixels[yi],\n _pg = pixels[yi + 1],\n _pb = pixels[yi + 2],\n _pa = pixels[yi + 3],\n _rOutSum = radiusPlus1 * _pr,\n _gOutSum = radiusPlus1 * _pg,\n _bOutSum = radiusPlus1 * _pb,\n _aOutSum = radiusPlus1 * _pa,\n _rSum = sumFactor * _pr,\n _gSum = sumFactor * _pg,\n _bSum = sumFactor * _pb,\n _aSum = sumFactor * _pa;\n\n stack = stackStart;\n\n for (var _i3 = 0; _i3 < radiusPlus1; _i3++) {\n stack.r = _pr;\n stack.g = _pg;\n stack.b = _pb;\n stack.a = _pa;\n stack = stack.next;\n }\n\n var yp = width;\n var _gInSum = 0,\n _bInSum = 0,\n _aInSum = 0,\n _rInSum = 0;\n\n for (var _i4 = 1; _i4 <= radius; _i4++) {\n yi = yp + _x << 2;\n\n var _rbs = radiusPlus1 - _i4;\n\n _rSum += (stack.r = _pr = pixels[yi]) * _rbs;\n _gSum += (stack.g = _pg = pixels[yi + 1]) * _rbs;\n _bSum += (stack.b = _pb = pixels[yi + 2]) * _rbs;\n _aSum += (stack.a = _pa = pixels[yi + 3]) * _rbs;\n _rInSum += _pr;\n _gInSum += _pg;\n _bInSum += _pb;\n _aInSum += _pa;\n stack = stack.next;\n\n if (_i4 < heightMinus1) {\n yp += width;\n }\n }\n\n yi = _x;\n stackIn = stackStart;\n stackOut = stackEnd;\n\n for (var _y = 0; _y < height; _y++) {\n var _p2 = yi << 2;\n\n pixels[_p2 + 3] = _pa = _aSum * mulSum >> shgSum;\n\n if (_pa > 0) {\n _pa = 255 / _pa;\n pixels[_p2] = (_rSum * mulSum >> shgSum) * _pa;\n pixels[_p2 + 1] = (_gSum * mulSum >> shgSum) * _pa;\n pixels[_p2 + 2] = (_bSum * mulSum >> shgSum) * _pa;\n } else {\n pixels[_p2] = pixels[_p2 + 1] = pixels[_p2 + 2] = 0;\n }\n\n _rSum -= _rOutSum;\n _gSum -= _gOutSum;\n _bSum -= _bOutSum;\n _aSum -= _aOutSum;\n _rOutSum -= stackIn.r;\n _gOutSum -= stackIn.g;\n _bOutSum -= stackIn.b;\n _aOutSum -= stackIn.a;\n _p2 = _x + ((_p2 = _y + radiusPlus1) < heightMinus1 ? _p2 : heightMinus1) * width << 2;\n _rSum += _rInSum += stackIn.r = pixels[_p2];\n _gSum += _gInSum += stackIn.g = pixels[_p2 + 1];\n _bSum += _bInSum += stackIn.b = pixels[_p2 + 2];\n _aSum += _aInSum += stackIn.a = pixels[_p2 + 3];\n stackIn = stackIn.next;\n _rOutSum += _pr = stackOut.r;\n _gOutSum += _pg = stackOut.g;\n _bOutSum += _pb = stackOut.b;\n _aOutSum += _pa = stackOut.a;\n _rInSum -= _pr;\n _gInSum -= _pg;\n _bInSum -= _pb;\n _aInSum -= _pa;\n stackOut = stackOut.next;\n yi += width;\n }\n }\n\n return imageData;\n}\n/**\n * @param {HTMLCanvasElement} canvas\n * @param {Integer} topX\n * @param {Integer} topY\n * @param {Integer} width\n * @param {Integer} height\n * @param {Float} radius\n * @returns {undefined}\n */\n\n\nfunction processCanvasRGB(canvas, topX, topY, width, height, radius) {\n if (isNaN(radius) || radius < 1) {\n return;\n }\n\n radius |= 0;\n var imageData = getImageDataFromCanvas(canvas, topX, topY, width, height);\n imageData = processImageDataRGB(imageData, topX, topY, width, height, radius);\n canvas.getContext('2d').putImageData(imageData, topX, topY);\n}\n/**\n * @param {ImageData} imageData\n * @param {Integer} topX\n * @param {Integer} topY\n * @param {Integer} width\n * @param {Integer} height\n * @param {Float} radius\n * @returns {ImageData}\n */\n\n\nfunction processImageDataRGB(imageData, topX, topY, width, height, radius) {\n var pixels = imageData.data;\n var div = 2 * radius + 1; // const w4 = width << 2;\n\n var widthMinus1 = width - 1;\n var heightMinus1 = height - 1;\n var radiusPlus1 = radius + 1;\n var sumFactor = radiusPlus1 * (radiusPlus1 + 1) / 2;\n var stackStart = new BlurStack();\n var stack = stackStart;\n var stackEnd;\n\n for (var i = 1; i < div; i++) {\n stack = stack.next = new BlurStack();\n\n if (i === radiusPlus1) {\n stackEnd = stack;\n }\n }\n\n stack.next = stackStart;\n var stackIn = null;\n var stackOut = null;\n var mulSum = mulTable[radius];\n var shgSum = shgTable[radius];\n var p, rbs;\n var yw = 0,\n yi = 0;\n\n for (var y = 0; y < height; y++) {\n var pr = pixels[yi],\n pg = pixels[yi + 1],\n pb = pixels[yi + 2],\n rOutSum = radiusPlus1 * pr,\n gOutSum = radiusPlus1 * pg,\n bOutSum = radiusPlus1 * pb,\n rSum = sumFactor * pr,\n gSum = sumFactor * pg,\n bSum = sumFactor * pb;\n stack = stackStart;\n\n for (var _i5 = 0; _i5 < radiusPlus1; _i5++) {\n stack.r = pr;\n stack.g = pg;\n stack.b = pb;\n stack = stack.next;\n }\n\n var rInSum = 0,\n gInSum = 0,\n bInSum = 0;\n\n for (var _i6 = 1; _i6 < radiusPlus1; _i6++) {\n p = yi + ((widthMinus1 < _i6 ? widthMinus1 : _i6) << 2);\n rSum += (stack.r = pr = pixels[p]) * (rbs = radiusPlus1 - _i6);\n gSum += (stack.g = pg = pixels[p + 1]) * rbs;\n bSum += (stack.b = pb = pixels[p + 2]) * rbs;\n rInSum += pr;\n gInSum += pg;\n bInSum += pb;\n stack = stack.next;\n }\n\n stackIn = stackStart;\n stackOut = stackEnd;\n\n for (var x = 0; x < width; x++) {\n pixels[yi] = rSum * mulSum >> shgSum;\n pixels[yi + 1] = gSum * mulSum >> shgSum;\n pixels[yi + 2] = bSum * mulSum >> shgSum;\n rSum -= rOutSum;\n gSum -= gOutSum;\n bSum -= bOutSum;\n rOutSum -= stackIn.r;\n gOutSum -= stackIn.g;\n bOutSum -= stackIn.b;\n p = yw + ((p = x + radius + 1) < widthMinus1 ? p : widthMinus1) << 2;\n rInSum += stackIn.r = pixels[p];\n gInSum += stackIn.g = pixels[p + 1];\n bInSum += stackIn.b = pixels[p + 2];\n rSum += rInSum;\n gSum += gInSum;\n bSum += bInSum;\n stackIn = stackIn.next;\n rOutSum += pr = stackOut.r;\n gOutSum += pg = stackOut.g;\n bOutSum += pb = stackOut.b;\n rInSum -= pr;\n gInSum -= pg;\n bInSum -= pb;\n stackOut = stackOut.next;\n yi += 4;\n }\n\n yw += width;\n }\n\n for (var _x2 = 0; _x2 < width; _x2++) {\n yi = _x2 << 2;\n\n var _pr2 = pixels[yi],\n _pg2 = pixels[yi + 1],\n _pb2 = pixels[yi + 2],\n _rOutSum2 = radiusPlus1 * _pr2,\n _gOutSum2 = radiusPlus1 * _pg2,\n _bOutSum2 = radiusPlus1 * _pb2,\n _rSum2 = sumFactor * _pr2,\n _gSum2 = sumFactor * _pg2,\n _bSum2 = sumFactor * _pb2;\n\n stack = stackStart;\n\n for (var _i7 = 0; _i7 < radiusPlus1; _i7++) {\n stack.r = _pr2;\n stack.g = _pg2;\n stack.b = _pb2;\n stack = stack.next;\n }\n\n var _rInSum2 = 0,\n _gInSum2 = 0,\n _bInSum2 = 0;\n\n for (var _i8 = 1, yp = width; _i8 <= radius; _i8++) {\n yi = yp + _x2 << 2;\n _rSum2 += (stack.r = _pr2 = pixels[yi]) * (rbs = radiusPlus1 - _i8);\n _gSum2 += (stack.g = _pg2 = pixels[yi + 1]) * rbs;\n _bSum2 += (stack.b = _pb2 = pixels[yi + 2]) * rbs;\n _rInSum2 += _pr2;\n _gInSum2 += _pg2;\n _bInSum2 += _pb2;\n stack = stack.next;\n\n if (_i8 < heightMinus1) {\n yp += width;\n }\n }\n\n yi = _x2;\n stackIn = stackStart;\n stackOut = stackEnd;\n\n for (var _y2 = 0; _y2 < height; _y2++) {\n p = yi << 2;\n pixels[p] = _rSum2 * mulSum >> shgSum;\n pixels[p + 1] = _gSum2 * mulSum >> shgSum;\n pixels[p + 2] = _bSum2 * mulSum >> shgSum;\n _rSum2 -= _rOutSum2;\n _gSum2 -= _gOutSum2;\n _bSum2 -= _bOutSum2;\n _rOutSum2 -= stackIn.r;\n _gOutSum2 -= stackIn.g;\n _bOutSum2 -= stackIn.b;\n p = _x2 + ((p = _y2 + radiusPlus1) < heightMinus1 ? p : heightMinus1) * width << 2;\n _rSum2 += _rInSum2 += stackIn.r = pixels[p];\n _gSum2 += _gInSum2 += stackIn.g = pixels[p + 1];\n _bSum2 += _bInSum2 += stackIn.b = pixels[p + 2];\n stackIn = stackIn.next;\n _rOutSum2 += _pr2 = stackOut.r;\n _gOutSum2 += _pg2 = stackOut.g;\n _bOutSum2 += _pb2 = stackOut.b;\n _rInSum2 -= _pr2;\n _gInSum2 -= _pg2;\n _bInSum2 -= _pb2;\n stackOut = stackOut.next;\n yi += width;\n }\n }\n\n return imageData;\n}\n/**\n *\n */\n\n\nvar BlurStack =\n/**\n * Set properties.\n */\nfunction BlurStack() {\n _classCallCheck(this, BlurStack);\n\n this.r = 0;\n this.g = 0;\n this.b = 0;\n this.a = 0;\n this.next = null;\n};\n\nexport { BlurStack, processCanvasRGB as canvasRGB, processCanvasRGBA as canvasRGBA, processImage as image, processImageDataRGB as imageDataRGB, processImageDataRGBA as imageDataRGBA };\n","var toInteger = require('../internals/to-integer');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\n// `String.prototype.{ codePointAt, at }` methods implementation\nvar createMethod = function (CONVERT_TO_STRING) {\n return function ($this, pos) {\n var S = String(requireObjectCoercible($this));\n var position = toInteger(pos);\n var size = S.length;\n var first, second;\n if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;\n first = S.charCodeAt(position);\n return first < 0xD800 || first > 0xDBFF || position + 1 === size\n || (second = S.charCodeAt(position + 1)) < 0xDC00 || second > 0xDFFF\n ? CONVERT_TO_STRING ? S.charAt(position) : first\n : CONVERT_TO_STRING ? S.slice(position, position + 2) : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;\n };\n};\n\nmodule.exports = {\n // `String.prototype.codePointAt` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.codepointat\n codeAt: createMethod(false),\n // `String.prototype.at` method\n // https://github.com/mathiasbynens/String.prototype.at\n charAt: createMethod(true)\n};\n","'use strict';\nvar defineProperty = require('../internals/object-define-property').f;\nvar create = require('../internals/object-create');\nvar redefineAll = require('../internals/redefine-all');\nvar bind = require('../internals/function-bind-context');\nvar anInstance = require('../internals/an-instance');\nvar iterate = require('../internals/iterate');\nvar defineIterator = require('../internals/define-iterator');\nvar setSpecies = require('../internals/set-species');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fastKey = require('../internals/internal-metadata').fastKey;\nvar InternalStateModule = require('../internals/internal-state');\n\nvar setInternalState = InternalStateModule.set;\nvar internalStateGetterFor = InternalStateModule.getterFor;\n\nmodule.exports = {\n getConstructor: function (wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER) {\n var C = wrapper(function (that, iterable) {\n anInstance(that, C, CONSTRUCTOR_NAME);\n setInternalState(that, {\n type: CONSTRUCTOR_NAME,\n index: create(null),\n first: undefined,\n last: undefined,\n size: 0\n });\n if (!DESCRIPTORS) that.size = 0;\n if (iterable != undefined) iterate(iterable, that[ADDER], that, IS_MAP);\n });\n\n var getInternalState = internalStateGetterFor(CONSTRUCTOR_NAME);\n\n var define = function (that, key, value) {\n var state = getInternalState(that);\n var entry = getEntry(that, key);\n var previous, index;\n // change existing entry\n if (entry) {\n entry.value = value;\n // create new entry\n } else {\n state.last = entry = {\n index: index = fastKey(key, true),\n key: key,\n value: value,\n previous: previous = state.last,\n next: undefined,\n removed: false\n };\n if (!state.first) state.first = entry;\n if (previous) previous.next = entry;\n if (DESCRIPTORS) state.size++;\n else that.size++;\n // add to index\n if (index !== 'F') state.index[index] = entry;\n } return that;\n };\n\n var getEntry = function (that, key) {\n var state = getInternalState(that);\n // fast case\n var index = fastKey(key);\n var entry;\n if (index !== 'F') return state.index[index];\n // frozen object case\n for (entry = state.first; entry; entry = entry.next) {\n if (entry.key == key) return entry;\n }\n };\n\n redefineAll(C.prototype, {\n // 23.1.3.1 Map.prototype.clear()\n // 23.2.3.2 Set.prototype.clear()\n clear: function clear() {\n var that = this;\n var state = getInternalState(that);\n var data = state.index;\n var entry = state.first;\n while (entry) {\n entry.removed = true;\n if (entry.previous) entry.previous = entry.previous.next = undefined;\n delete data[entry.index];\n entry = entry.next;\n }\n state.first = state.last = undefined;\n if (DESCRIPTORS) state.size = 0;\n else that.size = 0;\n },\n // 23.1.3.3 Map.prototype.delete(key)\n // 23.2.3.4 Set.prototype.delete(value)\n 'delete': function (key) {\n var that = this;\n var state = getInternalState(that);\n var entry = getEntry(that, key);\n if (entry) {\n var next = entry.next;\n var prev = entry.previous;\n delete state.index[entry.index];\n entry.removed = true;\n if (prev) prev.next = next;\n if (next) next.previous = prev;\n if (state.first == entry) state.first = next;\n if (state.last == entry) state.last = prev;\n if (DESCRIPTORS) state.size--;\n else that.size--;\n } return !!entry;\n },\n // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined)\n // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined)\n forEach: function forEach(callbackfn /* , that = undefined */) {\n var state = getInternalState(this);\n var boundFunction = bind(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3);\n var entry;\n while (entry = entry ? entry.next : state.first) {\n boundFunction(entry.value, entry.key, this);\n // revert to the last existing entry\n while (entry && entry.removed) entry = entry.previous;\n }\n },\n // 23.1.3.7 Map.prototype.has(key)\n // 23.2.3.7 Set.prototype.has(value)\n has: function has(key) {\n return !!getEntry(this, key);\n }\n });\n\n redefineAll(C.prototype, IS_MAP ? {\n // 23.1.3.6 Map.prototype.get(key)\n get: function get(key) {\n var entry = getEntry(this, key);\n return entry && entry.value;\n },\n // 23.1.3.9 Map.prototype.set(key, value)\n set: function set(key, value) {\n return define(this, key === 0 ? 0 : key, value);\n }\n } : {\n // 23.2.3.1 Set.prototype.add(value)\n add: function add(value) {\n return define(this, value = value === 0 ? 0 : value, value);\n }\n });\n if (DESCRIPTORS) defineProperty(C.prototype, 'size', {\n get: function () {\n return getInternalState(this).size;\n }\n });\n return C;\n },\n setStrong: function (C, CONSTRUCTOR_NAME, IS_MAP) {\n var ITERATOR_NAME = CONSTRUCTOR_NAME + ' Iterator';\n var getInternalCollectionState = internalStateGetterFor(CONSTRUCTOR_NAME);\n var getInternalIteratorState = internalStateGetterFor(ITERATOR_NAME);\n // add .keys, .values, .entries, [@@iterator]\n // 23.1.3.4, 23.1.3.8, 23.1.3.11, 23.1.3.12, 23.2.3.5, 23.2.3.8, 23.2.3.10, 23.2.3.11\n defineIterator(C, CONSTRUCTOR_NAME, function (iterated, kind) {\n setInternalState(this, {\n type: ITERATOR_NAME,\n target: iterated,\n state: getInternalCollectionState(iterated),\n kind: kind,\n last: undefined\n });\n }, function () {\n var state = getInternalIteratorState(this);\n var kind = state.kind;\n var entry = state.last;\n // revert to the last existing entry\n while (entry && entry.removed) entry = entry.previous;\n // get next entry\n if (!state.target || !(state.last = entry = entry ? entry.next : state.state.first)) {\n // or finish the iteration\n state.target = undefined;\n return { value: undefined, done: true };\n }\n // return step by kind\n if (kind == 'keys') return { value: entry.key, done: false };\n if (kind == 'values') return { value: entry.value, done: false };\n return { value: [entry.key, entry.value], done: false };\n }, IS_MAP ? 'entries' : 'values', !IS_MAP, true);\n\n // add [@@species], 23.1.2.2, 23.2.2.2\n setSpecies(CONSTRUCTOR_NAME);\n }\n};\n","var arrayLikeToArray = require(\"./arrayLikeToArray\");\n\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}\n\nmodule.exports = _unsupportedIterableToArray;","var _typeof = require(\"../helpers/typeof\");\n\nvar assertThisInitialized = require(\"./assertThisInitialized\");\n\nfunction _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n }\n\n return assertThisInitialized(self);\n}\n\nmodule.exports = _possibleConstructorReturn;","// Generated by CoffeeScript 1.12.2\n(function() {\n var getNanoSeconds, hrtime, loadTime, moduleLoadTime, nodeLoadTime, upTime;\n\n if ((typeof performance !== \"undefined\" && performance !== null) && performance.now) {\n module.exports = function() {\n return performance.now();\n };\n } else if ((typeof process !== \"undefined\" && process !== null) && process.hrtime) {\n module.exports = function() {\n return (getNanoSeconds() - nodeLoadTime) / 1e6;\n };\n hrtime = process.hrtime;\n getNanoSeconds = function() {\n var hr;\n hr = hrtime();\n return hr[0] * 1e9 + hr[1];\n };\n moduleLoadTime = getNanoSeconds();\n upTime = process.uptime() * 1e9;\n nodeLoadTime = moduleLoadTime - upTime;\n } else if (Date.now) {\n module.exports = function() {\n return Date.now() - loadTime;\n };\n loadTime = Date.now();\n } else {\n module.exports = function() {\n return new Date().getTime() - loadTime;\n };\n loadTime = new Date().getTime();\n }\n\n}).call(this);\n\n//# sourceMappingURL=performance-now.js.map\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","function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n module.exports = _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n module.exports = _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nmodule.exports = _typeof;","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 path = require('../internals/path');\nvar has = require('../internals/has');\nvar wrappedWellKnownSymbolModule = require('../internals/well-known-symbol-wrapped');\nvar defineProperty = require('../internals/object-define-property').f;\n\nmodule.exports = function (NAME) {\n var Symbol = path.Symbol || (path.Symbol = {});\n if (!has(Symbol, NAME)) defineProperty(Symbol, NAME, {\n value: wrappedWellKnownSymbolModule.f(NAME)\n });\n};\n","var $ = require('../internals/export');\nvar anObject = require('../internals/an-object');\nvar objectGetPrototypeOf = require('../internals/object-get-prototype-of');\nvar CORRECT_PROTOTYPE_GETTER = require('../internals/correct-prototype-getter');\n\n// `Reflect.getPrototypeOf` method\n// https://tc39.github.io/ecma262/#sec-reflect.getprototypeof\n$({ target: 'Reflect', stat: true, sham: !CORRECT_PROTOTYPE_GETTER }, {\n getPrototypeOf: function getPrototypeOf(target) {\n return objectGetPrototypeOf(anObject(target));\n }\n});\n","'use strict';\nvar toObject = require('../internals/to-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar toLength = require('../internals/to-length');\n\n// `Array.prototype.fill` method implementation\n// https://tc39.github.io/ecma262/#sec-array.prototype.fill\nmodule.exports = function fill(value /* , start = 0, end = @length */) {\n var O = toObject(this);\n var length = toLength(O.length);\n var argumentsLength = arguments.length;\n var index = toAbsoluteIndex(argumentsLength > 1 ? arguments[1] : undefined, length);\n var end = argumentsLength > 2 ? arguments[2] : undefined;\n var endPos = end === undefined ? length : toAbsoluteIndex(end, length);\n while (endPos > index) O[index++] = value;\n return O;\n};\n","'use strict';\nvar toPrimitive = require('../internals/to-primitive');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = function (object, key, value) {\n var propertyKey = toPrimitive(key);\n if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value));\n else object[propertyKey] = value;\n};\n","var superPropBase = require(\"./superPropBase\");\n\nfunction _get(target, property, receiver) {\n if (typeof Reflect !== \"undefined\" && Reflect.get) {\n module.exports = _get = Reflect.get;\n } else {\n module.exports = _get = function _get(target, property, receiver) {\n var base = superPropBase(target, property);\n if (!base) return;\n var desc = Object.getOwnPropertyDescriptor(base, property);\n\n if (desc.get) {\n return desc.get.call(receiver);\n }\n\n return desc.value;\n };\n }\n\n return _get(target, property, receiver || target);\n}\n\nmodule.exports = _get;","'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","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}\n\nmodule.exports = _defineProperty;","/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nvar runtime = (function (exports) {\n \"use strict\";\n\n var Op = Object.prototype;\n var hasOwn = Op.hasOwnProperty;\n var undefined; // More compressible than void 0.\n var $Symbol = typeof Symbol === \"function\" ? Symbol : {};\n var iteratorSymbol = $Symbol.iterator || \"@@iterator\";\n var asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\";\n var toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n\n function define(obj, key, value) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n return obj[key];\n }\n try {\n // IE 8 has a broken Object.defineProperty that only works on DOM objects.\n define({}, \"\");\n } catch (err) {\n define = function(obj, key, value) {\n return obj[key] = value;\n };\n }\n\n function wrap(innerFn, outerFn, self, tryLocsList) {\n // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;\n var generator = Object.create(protoGenerator.prototype);\n var context = new Context(tryLocsList || []);\n\n // The ._invoke method unifies the implementations of the .next,\n // .throw, and .return methods.\n generator._invoke = makeInvokeMethod(innerFn, self, context);\n\n return generator;\n }\n exports.wrap = wrap;\n\n // Try/catch helper to minimize deoptimizations. Returns a completion\n // record like context.tryEntries[i].completion. This interface could\n // have been (and was previously) designed to take a closure to be\n // invoked without arguments, but in all the cases we care about we\n // already have an existing method we want to call, so there's no need\n // to create a new function object. We can even get away with assuming\n // the method takes exactly one argument, since that happens to be true\n // in every case, so we don't have to touch the arguments object. The\n // only additional allocation required is the completion record, which\n // has a stable shape and so hopefully should be cheap to allocate.\n function tryCatch(fn, obj, arg) {\n try {\n return { type: \"normal\", arg: fn.call(obj, arg) };\n } catch (err) {\n return { type: \"throw\", arg: err };\n }\n }\n\n var GenStateSuspendedStart = \"suspendedStart\";\n var GenStateSuspendedYield = \"suspendedYield\";\n var GenStateExecuting = \"executing\";\n var GenStateCompleted = \"completed\";\n\n // Returning this object from the innerFn has the same effect as\n // breaking out of the dispatch switch statement.\n var ContinueSentinel = {};\n\n // Dummy constructor functions that we use as the .constructor and\n // .constructor.prototype properties for functions that return Generator\n // objects. For full spec compliance, you may wish to configure your\n // minifier not to mangle the names of these two functions.\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n\n // This is a polyfill for %IteratorPrototype% for environments that\n // don't natively support it.\n var IteratorPrototype = {};\n IteratorPrototype[iteratorSymbol] = function () {\n return this;\n };\n\n var getProto = Object.getPrototypeOf;\n var NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n if (NativeIteratorPrototype &&\n NativeIteratorPrototype !== Op &&\n hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {\n // This environment has a native %IteratorPrototype%; use it instead\n // of the polyfill.\n IteratorPrototype = NativeIteratorPrototype;\n }\n\n var Gp = GeneratorFunctionPrototype.prototype =\n Generator.prototype = Object.create(IteratorPrototype);\n GeneratorFunction.prototype = Gp.constructor = GeneratorFunctionPrototype;\n GeneratorFunctionPrototype.constructor = GeneratorFunction;\n GeneratorFunction.displayName = define(\n GeneratorFunctionPrototype,\n toStringTagSymbol,\n \"GeneratorFunction\"\n );\n\n // Helper for defining the .next, .throw, and .return methods of the\n // Iterator interface in terms of a single ._invoke method.\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function(method) {\n define(prototype, method, function(arg) {\n return this._invoke(method, arg);\n });\n });\n }\n\n exports.isGeneratorFunction = function(genFun) {\n var ctor = typeof genFun === \"function\" && genFun.constructor;\n return ctor\n ? ctor === GeneratorFunction ||\n // For the native GeneratorFunction constructor, the best we can\n // do is to check its .name property.\n (ctor.displayName || ctor.name) === \"GeneratorFunction\"\n : false;\n };\n\n exports.mark = function(genFun) {\n if (Object.setPrototypeOf) {\n Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);\n } else {\n genFun.__proto__ = GeneratorFunctionPrototype;\n define(genFun, toStringTagSymbol, \"GeneratorFunction\");\n }\n genFun.prototype = Object.create(Gp);\n return genFun;\n };\n\n // Within the body of any async function, `await x` is transformed to\n // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test\n // `hasOwn.call(value, \"__await\")` to determine if the yielded value is\n // meant to be awaited.\n exports.awrap = function(arg) {\n return { __await: arg };\n };\n\n function AsyncIterator(generator, PromiseImpl) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n if (record.type === \"throw\") {\n reject(record.arg);\n } else {\n var result = record.arg;\n var value = result.value;\n if (value &&\n typeof value === \"object\" &&\n hasOwn.call(value, \"__await\")) {\n return PromiseImpl.resolve(value.__await).then(function(value) {\n invoke(\"next\", value, resolve, reject);\n }, function(err) {\n invoke(\"throw\", err, resolve, reject);\n });\n }\n\n return PromiseImpl.resolve(value).then(function(unwrapped) {\n // When a yielded Promise is resolved, its final value becomes\n // the .value of the Promise<{value,done}> result for the\n // current iteration.\n result.value = unwrapped;\n resolve(result);\n }, function(error) {\n // If a rejected Promise was yielded, throw the rejection back\n // into the async generator function so it can be handled there.\n return invoke(\"throw\", error, resolve, reject);\n });\n }\n }\n\n var previousPromise;\n\n function enqueue(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new PromiseImpl(function(resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n\n return previousPromise =\n // If enqueue has been called before, then we want to wait until\n // all previous Promises have been resolved before calling invoke,\n // so that results are always delivered in the correct order. If\n // enqueue has not been called before, then it is important to\n // call invoke immediately, without waiting on a callback to fire,\n // so that the async generator function has the opportunity to do\n // any necessary setup in a predictable way. This predictability\n // is why the Promise constructor synchronously invokes its\n // executor callback, and why async functions synchronously\n // execute code before the first await. Since we implement simple\n // async functions in terms of async generators, it is especially\n // important to get this right, even though it requires care.\n previousPromise ? previousPromise.then(\n callInvokeWithMethodAndArg,\n // Avoid propagating failures to Promises returned by later\n // invocations of the iterator.\n callInvokeWithMethodAndArg\n ) : callInvokeWithMethodAndArg();\n }\n\n // Define the unified helper method that is used to implement .next,\n // .throw, and .return (see defineIteratorMethods).\n this._invoke = enqueue;\n }\n\n defineIteratorMethods(AsyncIterator.prototype);\n AsyncIterator.prototype[asyncIteratorSymbol] = function () {\n return this;\n };\n exports.AsyncIterator = AsyncIterator;\n\n // Note that simple async functions are implemented on top of\n // AsyncIterator objects; they just return a Promise for the value of\n // the final result produced by the iterator.\n exports.async = function(innerFn, outerFn, self, tryLocsList, PromiseImpl) {\n if (PromiseImpl === void 0) PromiseImpl = Promise;\n\n var iter = new AsyncIterator(\n wrap(innerFn, outerFn, self, tryLocsList),\n PromiseImpl\n );\n\n return exports.isGeneratorFunction(outerFn)\n ? iter // If outerFn is a generator, return the full iterator.\n : iter.next().then(function(result) {\n return result.done ? result.value : iter.next();\n });\n };\n\n function makeInvokeMethod(innerFn, self, context) {\n var state = GenStateSuspendedStart;\n\n return function invoke(method, arg) {\n if (state === GenStateExecuting) {\n throw new Error(\"Generator is already running\");\n }\n\n if (state === GenStateCompleted) {\n if (method === \"throw\") {\n throw arg;\n }\n\n // Be forgiving, per 25.3.3.3.3 of the spec:\n // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume\n return doneResult();\n }\n\n context.method = method;\n context.arg = arg;\n\n while (true) {\n var delegate = context.delegate;\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n\n if (context.method === \"next\") {\n // Setting context._sent for legacy support of Babel's\n // function.sent implementation.\n context.sent = context._sent = context.arg;\n\n } else if (context.method === \"throw\") {\n if (state === GenStateSuspendedStart) {\n state = GenStateCompleted;\n throw context.arg;\n }\n\n context.dispatchException(context.arg);\n\n } else if (context.method === \"return\") {\n context.abrupt(\"return\", context.arg);\n }\n\n state = GenStateExecuting;\n\n var record = tryCatch(innerFn, self, context);\n if (record.type === \"normal\") {\n // If an exception is thrown from innerFn, we leave state ===\n // GenStateExecuting and loop back for another invocation.\n state = context.done\n ? GenStateCompleted\n : GenStateSuspendedYield;\n\n if (record.arg === ContinueSentinel) {\n continue;\n }\n\n return {\n value: record.arg,\n done: context.done\n };\n\n } else if (record.type === \"throw\") {\n state = GenStateCompleted;\n // Dispatch the exception by looping back around to the\n // context.dispatchException(context.arg) call above.\n context.method = \"throw\";\n context.arg = record.arg;\n }\n }\n };\n }\n\n // Call delegate.iterator[context.method](context.arg) and handle the\n // result, either by returning a { value, done } result from the\n // delegate iterator, or by modifying context.method and context.arg,\n // setting context.delegate to null, and returning the ContinueSentinel.\n function maybeInvokeDelegate(delegate, context) {\n var method = delegate.iterator[context.method];\n if (method === undefined) {\n // A .throw or .return when the delegate iterator has no .throw\n // method always terminates the yield* loop.\n context.delegate = null;\n\n if (context.method === \"throw\") {\n // Note: [\"return\"] must be used for ES3 parsing compatibility.\n if (delegate.iterator[\"return\"]) {\n // If the delegate iterator has a return method, give it a\n // chance to clean up.\n context.method = \"return\";\n context.arg = undefined;\n maybeInvokeDelegate(delegate, context);\n\n if (context.method === \"throw\") {\n // If maybeInvokeDelegate(context) changed context.method from\n // \"return\" to \"throw\", let that override the TypeError below.\n return ContinueSentinel;\n }\n }\n\n context.method = \"throw\";\n context.arg = new TypeError(\n \"The iterator does not provide a 'throw' method\");\n }\n\n return ContinueSentinel;\n }\n\n var record = tryCatch(method, delegate.iterator, context.arg);\n\n if (record.type === \"throw\") {\n context.method = \"throw\";\n context.arg = record.arg;\n context.delegate = null;\n return ContinueSentinel;\n }\n\n var info = record.arg;\n\n if (! info) {\n context.method = \"throw\";\n context.arg = new TypeError(\"iterator result is not an object\");\n context.delegate = null;\n return ContinueSentinel;\n }\n\n if (info.done) {\n // Assign the result of the finished delegate to the temporary\n // variable specified by delegate.resultName (see delegateYield).\n context[delegate.resultName] = info.value;\n\n // Resume execution at the desired location (see delegateYield).\n context.next = delegate.nextLoc;\n\n // If context.method was \"throw\" but the delegate handled the\n // exception, let the outer generator proceed normally. If\n // context.method was \"next\", forget context.arg since it has been\n // \"consumed\" by the delegate iterator. If context.method was\n // \"return\", allow the original .return call to continue in the\n // outer generator.\n if (context.method !== \"return\") {\n context.method = \"next\";\n context.arg = undefined;\n }\n\n } else {\n // Re-yield the result returned by the delegate method.\n return info;\n }\n\n // The delegate iterator is finished, so forget it and continue with\n // the outer generator.\n context.delegate = null;\n return ContinueSentinel;\n }\n\n // Define Generator.prototype.{next,throw,return} in terms of the\n // unified ._invoke helper method.\n defineIteratorMethods(Gp);\n\n define(Gp, toStringTagSymbol, \"Generator\");\n\n // A Generator should always return itself as the iterator object when the\n // @@iterator function is called on it. Some browsers' implementations of the\n // iterator prototype chain incorrectly implement this, causing the Generator\n // object to not be returned from this call. This ensures that doesn't happen.\n // See https://github.com/facebook/regenerator/issues/274 for more details.\n Gp[iteratorSymbol] = function() {\n return this;\n };\n\n Gp.toString = function() {\n return \"[object Generator]\";\n };\n\n function pushTryEntry(locs) {\n var entry = { tryLoc: locs[0] };\n\n if (1 in locs) {\n entry.catchLoc = locs[1];\n }\n\n if (2 in locs) {\n entry.finallyLoc = locs[2];\n entry.afterLoc = locs[3];\n }\n\n this.tryEntries.push(entry);\n }\n\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\";\n delete record.arg;\n entry.completion = record;\n }\n\n function Context(tryLocsList) {\n // The root entry object (effectively a try statement without a catch\n // or a finally block) gives us a place to store values thrown from\n // locations where there is no enclosing try statement.\n this.tryEntries = [{ tryLoc: \"root\" }];\n tryLocsList.forEach(pushTryEntry, this);\n this.reset(true);\n }\n\n exports.keys = function(object) {\n var keys = [];\n for (var key in object) {\n keys.push(key);\n }\n keys.reverse();\n\n // Rather than returning an object with a next method, we keep\n // things simple and return the next function itself.\n return function next() {\n while (keys.length) {\n var key = keys.pop();\n if (key in object) {\n next.value = key;\n next.done = false;\n return next;\n }\n }\n\n // To avoid creating an additional object, we just hang the .value\n // and .done properties off the next function object itself. This\n // also ensures that the minifier will not anonymize the function.\n next.done = true;\n return next;\n };\n };\n\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) {\n return iteratorMethod.call(iterable);\n }\n\n if (typeof iterable.next === \"function\") {\n return iterable;\n }\n\n if (!isNaN(iterable.length)) {\n var i = -1, next = function next() {\n while (++i < iterable.length) {\n if (hasOwn.call(iterable, i)) {\n next.value = iterable[i];\n next.done = false;\n return next;\n }\n }\n\n next.value = undefined;\n next.done = true;\n\n return next;\n };\n\n return next.next = next;\n }\n }\n\n // Return an iterator with no values.\n return { next: doneResult };\n }\n exports.values = values;\n\n function doneResult() {\n return { value: undefined, done: true };\n }\n\n Context.prototype = {\n constructor: Context,\n\n reset: function(skipTempReset) {\n this.prev = 0;\n this.next = 0;\n // Resetting context._sent for legacy support of Babel's\n // function.sent implementation.\n this.sent = this._sent = undefined;\n this.done = false;\n this.delegate = null;\n\n this.method = \"next\";\n this.arg = undefined;\n\n this.tryEntries.forEach(resetTryEntry);\n\n if (!skipTempReset) {\n for (var name in this) {\n // Not sure about the optimal order of these conditions:\n if (name.charAt(0) === \"t\" &&\n hasOwn.call(this, name) &&\n !isNaN(+name.slice(1))) {\n this[name] = undefined;\n }\n }\n }\n },\n\n stop: function() {\n this.done = true;\n\n var rootEntry = this.tryEntries[0];\n var rootRecord = rootEntry.completion;\n if (rootRecord.type === \"throw\") {\n throw rootRecord.arg;\n }\n\n return this.rval;\n },\n\n dispatchException: function(exception) {\n if (this.done) {\n throw exception;\n }\n\n var context = this;\n function handle(loc, caught) {\n record.type = \"throw\";\n record.arg = exception;\n context.next = loc;\n\n if (caught) {\n // If the dispatched exception was caught by a catch block,\n // then let that catch block handle the exception normally.\n context.method = \"next\";\n context.arg = undefined;\n }\n\n return !! caught;\n }\n\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n var record = entry.completion;\n\n if (entry.tryLoc === \"root\") {\n // Exception thrown outside of any try block that could handle\n // it, so set the completion value of the entire function to\n // throw the exception.\n return handle(\"end\");\n }\n\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\");\n var hasFinally = hasOwn.call(entry, \"finallyLoc\");\n\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n } else if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n }\n\n } else if (hasFinally) {\n if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else {\n throw new Error(\"try statement without catch or finally\");\n }\n }\n }\n },\n\n abrupt: function(type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc <= this.prev &&\n hasOwn.call(entry, \"finallyLoc\") &&\n this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n\n if (finallyEntry &&\n (type === \"break\" ||\n type === \"continue\") &&\n finallyEntry.tryLoc <= arg &&\n arg <= finallyEntry.finallyLoc) {\n // Ignore the finally entry if control is not jumping to a\n // location outside the try/catch block.\n finallyEntry = null;\n }\n\n var record = finallyEntry ? finallyEntry.completion : {};\n record.type = type;\n record.arg = arg;\n\n if (finallyEntry) {\n this.method = \"next\";\n this.next = finallyEntry.finallyLoc;\n return ContinueSentinel;\n }\n\n return this.complete(record);\n },\n\n complete: function(record, afterLoc) {\n if (record.type === \"throw\") {\n throw record.arg;\n }\n\n if (record.type === \"break\" ||\n record.type === \"continue\") {\n this.next = record.arg;\n } else if (record.type === \"return\") {\n this.rval = this.arg = record.arg;\n this.method = \"return\";\n this.next = \"end\";\n } else if (record.type === \"normal\" && afterLoc) {\n this.next = afterLoc;\n }\n\n return ContinueSentinel;\n },\n\n finish: function(finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) {\n this.complete(entry.completion, entry.afterLoc);\n resetTryEntry(entry);\n return ContinueSentinel;\n }\n }\n },\n\n \"catch\": function(tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n if (record.type === \"throw\") {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n return thrown;\n }\n }\n\n // The context.catch method must only be called with a location\n // argument that corresponds to a known catch block.\n throw new Error(\"illegal catch attempt\");\n },\n\n delegateYield: function(iterable, resultName, nextLoc) {\n this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n };\n\n if (this.method === \"next\") {\n // Deliberately forget the last sent value so that we don't\n // accidentally pass it on to the delegate.\n this.arg = undefined;\n }\n\n return ContinueSentinel;\n }\n };\n\n // Regardless of whether this script is executing as a CommonJS module\n // or not, return the runtime object so that we can declare the variable\n // regeneratorRuntime in the outer scope, which allows this module to be\n // injected easily by `bin/regenerator --include-runtime script.js`.\n return exports;\n\n}(\n // If this script is executing as a CommonJS module, use module.exports\n // as the regeneratorRuntime namespace. Otherwise create a new empty\n // object. Either way, the resulting object will be used to initialize\n // the regeneratorRuntime variable at the top of this file.\n typeof module === \"object\" ? module.exports : {}\n));\n\ntry {\n regeneratorRuntime = runtime;\n} catch (accidentalStrictMode) {\n // This module should not be running in strict mode, so the above\n // assignment should always work unless something is misconfigured. Just\n // in case runtime.js accidentally runs in strict mode, we can escape\n // strict mode using a global Function call. This could conceivably fail\n // if a Content Security Policy forbids using Function, but in that case\n // the proper solution is to fix the accidental strict mode problem. If\n // you've misconfigured your bundler to force strict mode and applied a\n // CSP to forbid Function, and you're not willing to fix either of those\n // problems, please detail your unique predicament in a GitHub issue.\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n}\n","function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nmodule.exports = _classCallCheck;","'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","function _iterableToArrayLimit(arr, i) {\n if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n var _e = undefined;\n\n try {\n for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}\n\nmodule.exports = _iterableToArrayLimit;","var getPrototypeOf = require(\"./getPrototypeOf\");\n\nfunction _superPropBase(object, property) {\n while (!Object.prototype.hasOwnProperty.call(object, property)) {\n object = getPrototypeOf(object);\n if (object === null) break;\n }\n\n return object;\n}\n\nmodule.exports = _superPropBase;","'use strict';\nvar $ = require('../internals/export');\nvar IndexedObject = require('../internals/indexed-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar nativeJoin = [].join;\n\nvar ES3_STRINGS = IndexedObject != Object;\nvar STRICT_METHOD = arrayMethodIsStrict('join', ',');\n\n// `Array.prototype.join` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.join\n$({ target: 'Array', proto: true, forced: ES3_STRINGS || !STRICT_METHOD }, {\n join: function join(separator) {\n return nativeJoin.call(toIndexedObject(this), separator === undefined ? ',' : separator);\n }\n});\n","module.exports = require(\"regenerator-runtime\");\n","'use strict';\nvar $ = require('../internals/export');\nvar global = require('../internals/global');\nvar getBuiltIn = require('../internals/get-built-in');\nvar IS_PURE = require('../internals/is-pure');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar NATIVE_SYMBOL = require('../internals/native-symbol');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\nvar fails = require('../internals/fails');\nvar has = require('../internals/has');\nvar isArray = require('../internals/is-array');\nvar isObject = require('../internals/is-object');\nvar anObject = require('../internals/an-object');\nvar toObject = require('../internals/to-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPrimitive = require('../internals/to-primitive');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar nativeObjectCreate = require('../internals/object-create');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertyNamesExternal = require('../internals/object-get-own-property-names-external');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar redefine = require('../internals/redefine');\nvar shared = require('../internals/shared');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar uid = require('../internals/uid');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar wrappedWellKnownSymbolModule = require('../internals/well-known-symbol-wrapped');\nvar defineWellKnownSymbol = require('../internals/define-well-known-symbol');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar InternalStateModule = require('../internals/internal-state');\nvar $forEach = require('../internals/array-iteration').forEach;\n\nvar HIDDEN = sharedKey('hidden');\nvar SYMBOL = 'Symbol';\nvar PROTOTYPE = 'prototype';\nvar TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(SYMBOL);\nvar ObjectPrototype = Object[PROTOTYPE];\nvar $Symbol = global.Symbol;\nvar $stringify = getBuiltIn('JSON', 'stringify');\nvar nativeGetOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\nvar nativeDefineProperty = definePropertyModule.f;\nvar nativeGetOwnPropertyNames = getOwnPropertyNamesExternal.f;\nvar nativePropertyIsEnumerable = propertyIsEnumerableModule.f;\nvar AllSymbols = shared('symbols');\nvar ObjectPrototypeSymbols = shared('op-symbols');\nvar StringToSymbolRegistry = shared('string-to-symbol-registry');\nvar SymbolToStringRegistry = shared('symbol-to-string-registry');\nvar WellKnownSymbolsStore = shared('wks');\nvar QObject = global.QObject;\n// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173\nvar USE_SETTER = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;\n\n// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687\nvar setSymbolDescriptor = DESCRIPTORS && fails(function () {\n return nativeObjectCreate(nativeDefineProperty({}, 'a', {\n get: function () { return nativeDefineProperty(this, 'a', { value: 7 }).a; }\n })).a != 7;\n}) ? function (O, P, Attributes) {\n var ObjectPrototypeDescriptor = nativeGetOwnPropertyDescriptor(ObjectPrototype, P);\n if (ObjectPrototypeDescriptor) delete ObjectPrototype[P];\n nativeDefineProperty(O, P, Attributes);\n if (ObjectPrototypeDescriptor && O !== ObjectPrototype) {\n nativeDefineProperty(ObjectPrototype, P, ObjectPrototypeDescriptor);\n }\n} : nativeDefineProperty;\n\nvar wrap = function (tag, description) {\n var symbol = AllSymbols[tag] = nativeObjectCreate($Symbol[PROTOTYPE]);\n setInternalState(symbol, {\n type: SYMBOL,\n tag: tag,\n description: description\n });\n if (!DESCRIPTORS) symbol.description = description;\n return symbol;\n};\n\nvar isSymbol = USE_SYMBOL_AS_UID ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n return Object(it) instanceof $Symbol;\n};\n\nvar $defineProperty = function defineProperty(O, P, Attributes) {\n if (O === ObjectPrototype) $defineProperty(ObjectPrototypeSymbols, P, Attributes);\n anObject(O);\n var key = toPrimitive(P, true);\n anObject(Attributes);\n if (has(AllSymbols, key)) {\n if (!Attributes.enumerable) {\n if (!has(O, HIDDEN)) nativeDefineProperty(O, HIDDEN, createPropertyDescriptor(1, {}));\n O[HIDDEN][key] = true;\n } else {\n if (has(O, HIDDEN) && O[HIDDEN][key]) O[HIDDEN][key] = false;\n Attributes = nativeObjectCreate(Attributes, { enumerable: createPropertyDescriptor(0, false) });\n } return setSymbolDescriptor(O, key, Attributes);\n } return nativeDefineProperty(O, key, Attributes);\n};\n\nvar $defineProperties = function defineProperties(O, Properties) {\n anObject(O);\n var properties = toIndexedObject(Properties);\n var keys = objectKeys(properties).concat($getOwnPropertySymbols(properties));\n $forEach(keys, function (key) {\n if (!DESCRIPTORS || $propertyIsEnumerable.call(properties, key)) $defineProperty(O, key, properties[key]);\n });\n return O;\n};\n\nvar $create = function create(O, Properties) {\n return Properties === undefined ? nativeObjectCreate(O) : $defineProperties(nativeObjectCreate(O), Properties);\n};\n\nvar $propertyIsEnumerable = function propertyIsEnumerable(V) {\n var P = toPrimitive(V, true);\n var enumerable = nativePropertyIsEnumerable.call(this, P);\n if (this === ObjectPrototype && has(AllSymbols, P) && !has(ObjectPrototypeSymbols, P)) return false;\n return enumerable || !has(this, P) || !has(AllSymbols, P) || has(this, HIDDEN) && this[HIDDEN][P] ? enumerable : true;\n};\n\nvar $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(O, P) {\n var it = toIndexedObject(O);\n var key = toPrimitive(P, true);\n if (it === ObjectPrototype && has(AllSymbols, key) && !has(ObjectPrototypeSymbols, key)) return;\n var descriptor = nativeGetOwnPropertyDescriptor(it, key);\n if (descriptor && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) {\n descriptor.enumerable = true;\n }\n return descriptor;\n};\n\nvar $getOwnPropertyNames = function getOwnPropertyNames(O) {\n var names = nativeGetOwnPropertyNames(toIndexedObject(O));\n var result = [];\n $forEach(names, function (key) {\n if (!has(AllSymbols, key) && !has(hiddenKeys, key)) result.push(key);\n });\n return result;\n};\n\nvar $getOwnPropertySymbols = function getOwnPropertySymbols(O) {\n var IS_OBJECT_PROTOTYPE = O === ObjectPrototype;\n var names = nativeGetOwnPropertyNames(IS_OBJECT_PROTOTYPE ? ObjectPrototypeSymbols : toIndexedObject(O));\n var result = [];\n $forEach(names, function (key) {\n if (has(AllSymbols, key) && (!IS_OBJECT_PROTOTYPE || has(ObjectPrototype, key))) {\n result.push(AllSymbols[key]);\n }\n });\n return result;\n};\n\n// `Symbol` constructor\n// https://tc39.github.io/ecma262/#sec-symbol-constructor\nif (!NATIVE_SYMBOL) {\n $Symbol = function Symbol() {\n if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor');\n var description = !arguments.length || arguments[0] === undefined ? undefined : String(arguments[0]);\n var tag = uid(description);\n var setter = function (value) {\n if (this === ObjectPrototype) setter.call(ObjectPrototypeSymbols, value);\n if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false;\n setSymbolDescriptor(this, tag, createPropertyDescriptor(1, value));\n };\n if (DESCRIPTORS && USE_SETTER) setSymbolDescriptor(ObjectPrototype, tag, { configurable: true, set: setter });\n return wrap(tag, description);\n };\n\n redefine($Symbol[PROTOTYPE], 'toString', function toString() {\n return getInternalState(this).tag;\n });\n\n redefine($Symbol, 'withoutSetter', function (description) {\n return wrap(uid(description), description);\n });\n\n propertyIsEnumerableModule.f = $propertyIsEnumerable;\n definePropertyModule.f = $defineProperty;\n getOwnPropertyDescriptorModule.f = $getOwnPropertyDescriptor;\n getOwnPropertyNamesModule.f = getOwnPropertyNamesExternal.f = $getOwnPropertyNames;\n getOwnPropertySymbolsModule.f = $getOwnPropertySymbols;\n\n wrappedWellKnownSymbolModule.f = function (name) {\n return wrap(wellKnownSymbol(name), name);\n };\n\n if (DESCRIPTORS) {\n // https://github.com/tc39/proposal-Symbol-description\n nativeDefineProperty($Symbol[PROTOTYPE], 'description', {\n configurable: true,\n get: function description() {\n return getInternalState(this).description;\n }\n });\n if (!IS_PURE) {\n redefine(ObjectPrototype, 'propertyIsEnumerable', $propertyIsEnumerable, { unsafe: true });\n }\n }\n}\n\n$({ global: true, wrap: true, forced: !NATIVE_SYMBOL, sham: !NATIVE_SYMBOL }, {\n Symbol: $Symbol\n});\n\n$forEach(objectKeys(WellKnownSymbolsStore), function (name) {\n defineWellKnownSymbol(name);\n});\n\n$({ target: SYMBOL, stat: true, forced: !NATIVE_SYMBOL }, {\n // `Symbol.for` method\n // https://tc39.github.io/ecma262/#sec-symbol.for\n 'for': function (key) {\n var string = String(key);\n if (has(StringToSymbolRegistry, string)) return StringToSymbolRegistry[string];\n var symbol = $Symbol(string);\n StringToSymbolRegistry[string] = symbol;\n SymbolToStringRegistry[symbol] = string;\n return symbol;\n },\n // `Symbol.keyFor` method\n // https://tc39.github.io/ecma262/#sec-symbol.keyfor\n keyFor: function keyFor(sym) {\n if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol');\n if (has(SymbolToStringRegistry, sym)) return SymbolToStringRegistry[sym];\n },\n useSetter: function () { USE_SETTER = true; },\n useSimple: function () { USE_SETTER = false; }\n});\n\n$({ target: 'Object', stat: true, forced: !NATIVE_SYMBOL, sham: !DESCRIPTORS }, {\n // `Object.create` method\n // https://tc39.github.io/ecma262/#sec-object.create\n create: $create,\n // `Object.defineProperty` method\n // https://tc39.github.io/ecma262/#sec-object.defineproperty\n defineProperty: $defineProperty,\n // `Object.defineProperties` method\n // https://tc39.github.io/ecma262/#sec-object.defineproperties\n defineProperties: $defineProperties,\n // `Object.getOwnPropertyDescriptor` method\n // https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptors\n getOwnPropertyDescriptor: $getOwnPropertyDescriptor\n});\n\n$({ target: 'Object', stat: true, forced: !NATIVE_SYMBOL }, {\n // `Object.getOwnPropertyNames` method\n // https://tc39.github.io/ecma262/#sec-object.getownpropertynames\n getOwnPropertyNames: $getOwnPropertyNames,\n // `Object.getOwnPropertySymbols` method\n // https://tc39.github.io/ecma262/#sec-object.getownpropertysymbols\n getOwnPropertySymbols: $getOwnPropertySymbols\n});\n\n// Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives\n// https://bugs.chromium.org/p/v8/issues/detail?id=3443\n$({ target: 'Object', stat: true, forced: fails(function () { getOwnPropertySymbolsModule.f(1); }) }, {\n getOwnPropertySymbols: function getOwnPropertySymbols(it) {\n return getOwnPropertySymbolsModule.f(toObject(it));\n }\n});\n\n// `JSON.stringify` method behavior with symbols\n// https://tc39.github.io/ecma262/#sec-json.stringify\nif ($stringify) {\n var FORCED_JSON_STRINGIFY = !NATIVE_SYMBOL || fails(function () {\n var symbol = $Symbol();\n // MS Edge converts symbol values to JSON as {}\n return $stringify([symbol]) != '[null]'\n // WebKit converts symbol values to JSON as null\n || $stringify({ a: symbol }) != '{}'\n // V8 throws on boxed symbols\n || $stringify(Object(symbol)) != '{}';\n });\n\n $({ target: 'JSON', stat: true, forced: FORCED_JSON_STRINGIFY }, {\n // eslint-disable-next-line no-unused-vars\n stringify: function stringify(it, replacer, space) {\n var args = [it];\n var index = 1;\n var $replacer;\n while (arguments.length > index) args.push(arguments[index++]);\n $replacer = replacer;\n if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined\n if (!isArray(replacer)) replacer = function (key, value) {\n if (typeof $replacer == 'function') value = $replacer.call(this, key, value);\n if (!isSymbol(value)) return value;\n };\n args[1] = replacer;\n return $stringify.apply(null, args);\n }\n });\n}\n\n// `Symbol.prototype[@@toPrimitive]` method\n// https://tc39.github.io/ecma262/#sec-symbol.prototype-@@toprimitive\nif (!$Symbol[PROTOTYPE][TO_PRIMITIVE]) {\n createNonEnumerableProperty($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);\n}\n// `Symbol.prototype[@@toStringTag]` property\n// https://tc39.github.io/ecma262/#sec-symbol.prototype-@@tostringtag\nsetToStringTag($Symbol, SYMBOL);\n\nhiddenKeys[HIDDEN] = true;\n","'use strict';\nvar $ = require('../internals/export');\nvar $every = require('../internals/array-iteration').every;\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar STRICT_METHOD = arrayMethodIsStrict('every');\nvar USES_TO_LENGTH = arrayMethodUsesToLength('every');\n\n// `Array.prototype.every` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.every\n$({ target: 'Array', proto: true, forced: !STRICT_METHOD || !USES_TO_LENGTH }, {\n every: function every(callbackfn /* , thisArg */) {\n return $every(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","var $ = require('../internals/export');\nvar from = require('../internals/array-from');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\n\nvar INCORRECT_ITERATION = !checkCorrectnessOfIteration(function (iterable) {\n Array.from(iterable);\n});\n\n// `Array.from` method\n// https://tc39.github.io/ecma262/#sec-array.from\n$({ target: 'Array', stat: true, forced: INCORRECT_ITERATION }, {\n from: from\n});\n","var $ = require('../internals/export');\nvar getBuiltIn = require('../internals/get-built-in');\nvar aFunction = require('../internals/a-function');\nvar anObject = require('../internals/an-object');\nvar fails = require('../internals/fails');\n\nvar nativeApply = getBuiltIn('Reflect', 'apply');\nvar functionApply = Function.apply;\n\n// MS Edge argumentsList argument is optional\nvar OPTIONAL_ARGUMENTS_LIST = !fails(function () {\n nativeApply(function () { /* empty */ });\n});\n\n// `Reflect.apply` method\n// https://tc39.github.io/ecma262/#sec-reflect.apply\n$({ target: 'Reflect', stat: true, forced: OPTIONAL_ARGUMENTS_LIST }, {\n apply: function apply(target, thisArgument, argumentsList) {\n aFunction(target);\n anObject(argumentsList);\n return nativeApply\n ? nativeApply(target, thisArgument, argumentsList)\n : functionApply.call(target, thisArgument, argumentsList);\n }\n});\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar global = require('../internals/global');\nvar isForced = require('../internals/is-forced');\nvar redefine = require('../internals/redefine');\nvar has = require('../internals/has');\nvar classof = require('../internals/classof-raw');\nvar inheritIfRequired = require('../internals/inherit-if-required');\nvar toPrimitive = require('../internals/to-primitive');\nvar fails = require('../internals/fails');\nvar create = require('../internals/object-create');\nvar getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar defineProperty = require('../internals/object-define-property').f;\nvar trim = require('../internals/string-trim').trim;\n\nvar NUMBER = 'Number';\nvar NativeNumber = global[NUMBER];\nvar NumberPrototype = NativeNumber.prototype;\n\n// Opera ~12 has broken Object#toString\nvar BROKEN_CLASSOF = classof(create(NumberPrototype)) == NUMBER;\n\n// `ToNumber` abstract operation\n// https://tc39.github.io/ecma262/#sec-tonumber\nvar toNumber = function (argument) {\n var it = toPrimitive(argument, false);\n var first, third, radix, maxCode, digits, length, index, code;\n if (typeof it == 'string' && it.length > 2) {\n it = trim(it);\n first = it.charCodeAt(0);\n if (first === 43 || first === 45) {\n third = it.charCodeAt(2);\n if (third === 88 || third === 120) return NaN; // Number('+0x1') should be NaN, old V8 fix\n } else if (first === 48) {\n switch (it.charCodeAt(1)) {\n case 66: case 98: radix = 2; maxCode = 49; break; // fast equal of /^0b[01]+$/i\n case 79: case 111: radix = 8; maxCode = 55; break; // fast equal of /^0o[0-7]+$/i\n default: return +it;\n }\n digits = it.slice(2);\n length = digits.length;\n for (index = 0; index < length; index++) {\n code = digits.charCodeAt(index);\n // parseInt parses a string to a first unavailable symbol\n // but ToNumber should return NaN if a string contains unavailable symbols\n if (code < 48 || code > maxCode) return NaN;\n } return parseInt(digits, radix);\n }\n } return +it;\n};\n\n// `Number` constructor\n// https://tc39.github.io/ecma262/#sec-number-constructor\nif (isForced(NUMBER, !NativeNumber(' 0o1') || !NativeNumber('0b1') || NativeNumber('+0x1'))) {\n var NumberWrapper = function Number(value) {\n var it = arguments.length < 1 ? 0 : value;\n var dummy = this;\n return dummy instanceof NumberWrapper\n // check on 1..constructor(foo) case\n && (BROKEN_CLASSOF ? fails(function () { NumberPrototype.valueOf.call(dummy); }) : classof(dummy) != NUMBER)\n ? inheritIfRequired(new NativeNumber(toNumber(it)), dummy, NumberWrapper) : toNumber(it);\n };\n for (var keys = DESCRIPTORS ? getOwnPropertyNames(NativeNumber) : (\n // ES3:\n 'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' +\n // ES2015 (in case, if modules with ES2015 Number statics required before):\n 'EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,' +\n 'MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger'\n ).split(','), j = 0, key; keys.length > j; j++) {\n if (has(NativeNumber, key = keys[j]) && !has(NumberWrapper, key)) {\n defineProperty(NumberWrapper, key, getOwnPropertyDescriptor(NativeNumber, key));\n }\n }\n NumberWrapper.prototype = NumberPrototype;\n NumberPrototype.constructor = NumberWrapper;\n redefine(global, NUMBER, NumberWrapper);\n}\n","var $ = require('../internals/export');\nvar anObject = require('../internals/an-object');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\n\n// `Reflect.deleteProperty` method\n// https://tc39.github.io/ecma262/#sec-reflect.deleteproperty\n$({ target: 'Reflect', stat: true }, {\n deleteProperty: function deleteProperty(target, propertyKey) {\n var descriptor = getOwnPropertyDescriptor(anObject(target), propertyKey);\n return descriptor && !descriptor.configurable ? false : delete target[propertyKey];\n }\n});\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar classof = require('../internals/classof');\n\n// `Object.prototype.toString` method implementation\n// https://tc39.github.io/ecma262/#sec-object.prototype.tostring\nmodule.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {\n return '[object ' + classof(this) + ']';\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar defineProperty = require('../internals/object-define-property').f;\n\nvar FunctionPrototype = Function.prototype;\nvar FunctionPrototypeToString = FunctionPrototype.toString;\nvar nameRE = /^\\s*function ([^ (]*)/;\nvar NAME = 'name';\n\n// Function instances `.name` property\n// https://tc39.github.io/ecma262/#sec-function-instances-name\nif (DESCRIPTORS && !(NAME in FunctionPrototype)) {\n defineProperty(FunctionPrototype, NAME, {\n configurable: true,\n get: function () {\n try {\n return FunctionPrototypeToString.call(this).match(nameRE)[1];\n } catch (error) {\n return '';\n }\n }\n });\n}\n","var $ = require('../internals/export');\nvar toObject = require('../internals/to-object');\nvar nativeKeys = require('../internals/object-keys');\nvar fails = require('../internals/fails');\n\nvar FAILS_ON_PRIMITIVES = fails(function () { nativeKeys(1); });\n\n// `Object.keys` method\n// https://tc39.github.io/ecma262/#sec-object.keys\n$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES }, {\n keys: function keys(it) {\n return nativeKeys(toObject(it));\n }\n});\n","var fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n return Object.isExtensible(Object.preventExtensions({}));\n});\n","function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\n\nmodule.exports = _arrayWithHoles;","function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nmodule.exports = _nonIterableRest;","var now = require('performance-now')\n , root = typeof window === 'undefined' ? global : window\n , vendors = ['moz', 'webkit']\n , suffix = 'AnimationFrame'\n , raf = root['request' + suffix]\n , caf = root['cancel' + suffix] || root['cancelRequest' + suffix]\n\nfor(var i = 0; !raf && i < vendors.length; i++) {\n raf = root[vendors[i] + 'Request' + suffix]\n caf = root[vendors[i] + 'Cancel' + suffix]\n || root[vendors[i] + 'CancelRequest' + suffix]\n}\n\n// Some versions of FF have rAF but not cAF\nif(!raf || !caf) {\n var last = 0\n , id = 0\n , queue = []\n , frameDuration = 1000 / 60\n\n raf = function(callback) {\n if(queue.length === 0) {\n var _now = now()\n , next = Math.max(0, frameDuration - (_now - last))\n last = next + _now\n setTimeout(function() {\n var cp = queue.slice(0)\n // Clear queue here to prevent\n // callbacks from appending listeners\n // to the current frame's queue\n queue.length = 0\n for(var i = 0; i < cp.length; i++) {\n if(!cp[i].cancelled) {\n try{\n cp[i].callback(last)\n } catch(e) {\n setTimeout(function() { throw e }, 0)\n }\n }\n }\n }, Math.round(next))\n }\n queue.push({\n handle: ++id,\n callback: callback,\n cancelled: false\n })\n return id\n }\n\n caf = function(handle) {\n for(var i = 0; i < queue.length; i++) {\n if(queue[i].handle === handle) {\n queue[i].cancelled = true\n }\n }\n }\n}\n\nmodule.exports = function(fn) {\n // Wrap in a new function to prevent\n // `cancel` potentially being assigned\n // to the native rAF function\n return raf.call(root, fn)\n}\nmodule.exports.cancel = function() {\n caf.apply(root, arguments)\n}\nmodule.exports.polyfill = function(object) {\n if (!object) {\n object = root;\n }\n object.requestAnimationFrame = raf\n object.cancelAnimationFrame = caf\n}\n","var fails = require('../internals/fails');\nvar whitespaces = require('../internals/whitespaces');\n\nvar non = '\\u200B\\u0085\\u180E';\n\n// check that a method works with the correct list\n// of whitespaces and has a correct name\nmodule.exports = function (METHOD_NAME) {\n return fails(function () {\n return !!whitespaces[METHOD_NAME]() || non[METHOD_NAME]() != non || whitespaces[METHOD_NAME].name !== METHOD_NAME;\n });\n};\n","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\n\nfunction _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n\n _next(undefined);\n });\n };\n}\n\nmodule.exports = _asyncToGenerator;","'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","var $ = require('../internals/export');\nvar fill = require('../internals/array-fill');\nvar addToUnscopables = require('../internals/add-to-unscopables');\n\n// `Array.prototype.fill` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.fill\n$({ target: 'Array', proto: true }, {\n fill: fill\n});\n\n// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('fill');\n","var defineWellKnownSymbol = require('../internals/define-well-known-symbol');\n\n// `Symbol.iterator` well-known symbol\n// https://tc39.github.io/ecma262/#sec-symbol.iterator\ndefineWellKnownSymbol('iterator');\n","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","var aFunction = require('../internals/a-function');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\nvar toLength = require('../internals/to-length');\n\n// `Array.prototype.{ reduce, reduceRight }` methods implementation\nvar createMethod = function (IS_RIGHT) {\n return function (that, callbackfn, argumentsLength, memo) {\n aFunction(callbackfn);\n var O = toObject(that);\n var self = IndexedObject(O);\n var length = toLength(O.length);\n var index = IS_RIGHT ? length - 1 : 0;\n var i = IS_RIGHT ? -1 : 1;\n if (argumentsLength < 2) while (true) {\n if (index in self) {\n memo = self[index];\n index += i;\n break;\n }\n index += i;\n if (IS_RIGHT ? index < 0 : length <= index) {\n throw TypeError('Reduce of empty array with no initial value');\n }\n }\n for (;IS_RIGHT ? index >= 0 : length > index; index += i) if (index in self) {\n memo = callbackfn(memo, self[index], index, O);\n }\n return memo;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.reduce` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.reduce\n left: createMethod(false),\n // `Array.prototype.reduceRight` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.reduceright\n right: createMethod(true)\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar $map = require('../internals/array-iteration').map;\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('map');\n// FF49- issue\nvar USES_TO_LENGTH = arrayMethodUsesToLength('map');\n\n// `Array.prototype.map` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.map\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT || !USES_TO_LENGTH }, {\n map: function map(callbackfn /* , thisArg */) {\n return $map(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","var $ = require('../internals/export');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar ownKeys = require('../internals/own-keys');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar createProperty = require('../internals/create-property');\n\n// `Object.getOwnPropertyDescriptors` method\n// https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptors\n$({ target: 'Object', stat: true, sham: !DESCRIPTORS }, {\n getOwnPropertyDescriptors: function getOwnPropertyDescriptors(object) {\n var O = toIndexedObject(object);\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n var keys = ownKeys(O);\n var result = {};\n var index = 0;\n var key, descriptor;\n while (keys.length > index) {\n descriptor = getOwnPropertyDescriptor(O, key = keys[index++]);\n if (descriptor !== undefined) createProperty(result, key, descriptor);\n }\n return result;\n }\n});\n","var 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","// `Symbol.prototype.description` getter\n// https://tc39.github.io/ecma262/#sec-symbol.prototype.description\n'use strict';\nvar $ = require('../internals/export');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar global = require('../internals/global');\nvar has = require('../internals/has');\nvar isObject = require('../internals/is-object');\nvar defineProperty = require('../internals/object-define-property').f;\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\n\nvar NativeSymbol = global.Symbol;\n\nif (DESCRIPTORS && typeof NativeSymbol == 'function' && (!('description' in NativeSymbol.prototype) ||\n // Safari 12 bug\n NativeSymbol().description !== undefined\n)) {\n var EmptyStringDescriptionStore = {};\n // wrap Symbol constructor for correct work with undefined description\n var SymbolWrapper = function Symbol() {\n var description = arguments.length < 1 || arguments[0] === undefined ? undefined : String(arguments[0]);\n var result = this instanceof SymbolWrapper\n ? new NativeSymbol(description)\n // in Edge 13, String(Symbol(undefined)) === 'Symbol(undefined)'\n : description === undefined ? NativeSymbol() : NativeSymbol(description);\n if (description === '') EmptyStringDescriptionStore[result] = true;\n return result;\n };\n copyConstructorProperties(SymbolWrapper, NativeSymbol);\n var symbolPrototype = SymbolWrapper.prototype = NativeSymbol.prototype;\n symbolPrototype.constructor = SymbolWrapper;\n\n var symbolToString = symbolPrototype.toString;\n var native = String(NativeSymbol('test')) == 'Symbol(test)';\n var regexp = /^Symbol\\((.*)\\)[^)]+$/;\n defineProperty(symbolPrototype, 'description', {\n configurable: true,\n get: function description() {\n var symbol = isObject(this) ? this.valueOf() : this;\n var string = symbolToString.call(symbol);\n if (has(EmptyStringDescriptionStore, symbol)) return '';\n var desc = native ? string.slice(7, -1) : string.replace(regexp, '$1');\n return desc === '' ? undefined : desc;\n }\n });\n\n $({ global: true, forced: true }, {\n Symbol: SymbolWrapper\n });\n}\n","var $ = require('../internals/export');\nvar fails = require('../internals/fails');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar nativeGetOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar FAILS_ON_PRIMITIVES = fails(function () { nativeGetOwnPropertyDescriptor(1); });\nvar FORCED = !DESCRIPTORS || FAILS_ON_PRIMITIVES;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptor\n$({ target: 'Object', stat: true, forced: FORCED, sham: !DESCRIPTORS }, {\n getOwnPropertyDescriptor: function getOwnPropertyDescriptor(it, key) {\n return nativeGetOwnPropertyDescriptor(toIndexedObject(it), key);\n }\n});\n","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nexports.f = wellKnownSymbol;\n","var setPrototypeOf = require(\"./setPrototypeOf\");\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}\n\nmodule.exports = _inherits;","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","'use strict';\nvar $ = require('../internals/export');\nvar isObject = require('../internals/is-object');\nvar isArray = require('../internals/is-array');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar toLength = require('../internals/to-length');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar createProperty = require('../internals/create-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('slice');\nvar USES_TO_LENGTH = arrayMethodUsesToLength('slice', { ACCESSORS: true, 0: 0, 1: 2 });\n\nvar SPECIES = wellKnownSymbol('species');\nvar nativeSlice = [].slice;\nvar max = Math.max;\n\n// `Array.prototype.slice` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.slice\n// fallback for not array-like ES3 strings and DOM objects\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT || !USES_TO_LENGTH }, {\n slice: function slice(start, end) {\n var O = toIndexedObject(this);\n var length = toLength(O.length);\n var k = toAbsoluteIndex(start, length);\n var fin = toAbsoluteIndex(end === undefined ? length : end, length);\n // inline `ArraySpeciesCreate` for usage native `Array#slice` where it's possible\n var Constructor, result, n;\n if (isArray(O)) {\n Constructor = O.constructor;\n // cross-realm fallback\n if (typeof Constructor == 'function' && (Constructor === Array || isArray(Constructor.prototype))) {\n Constructor = undefined;\n } else if (isObject(Constructor)) {\n Constructor = Constructor[SPECIES];\n if (Constructor === null) Constructor = undefined;\n }\n if (Constructor === Array || Constructor === undefined) {\n return nativeSlice.call(O, k, fin);\n }\n }\n result = new (Constructor === undefined ? Array : Constructor)(max(fin - k, 0));\n for (n = 0; k < fin; k++, n++) if (k in O) createProperty(result, n, O[k]);\n result.length = n;\n return result;\n }\n});\n"],"sourceRoot":""} \ No newline at end of file diff --git a/docs/js/chunk-vendors.582916f7.js b/docs/js/chunk-vendors.56893718.js similarity index 57% rename from docs/js/chunk-vendors.582916f7.js rename to docs/js/chunk-vendors.56893718.js index 0ae84ba..9b95b47 100644 --- a/docs/js/chunk-vendors.582916f7.js +++ b/docs/js/chunk-vendors.56893718.js @@ -1,16 +1,16 @@ -(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-vendors"],{"0081":function(e,t){e.exports=function(e){var t="[A-Z_][A-Z0-9_.]*",n={keyword:"HEADER ENDSEC DATA"},r={className:"meta",begin:"ISO-10303-21;",relevance:10},i={className:"meta",begin:"END-ISO-10303-21;",relevance:10};return{aliases:["p21","step","stp"],case_insensitive:!0,lexemes:t,keywords:n,contains:[r,i,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.COMMENT("/\\*\\*!","\\*/"),e.C_NUMBER_MODE,e.inherit(e.APOS_STRING_MODE,{illegal:null}),e.inherit(e.QUOTE_STRING_MODE,{illegal:null}),{className:"string",begin:"'",end:"'"},{className:"symbol",variants:[{begin:"#",end:"\\d+",illegal:"\\W"}]}]}}},"00ee":function(e,t,n){var r=n("b622"),i=r("toStringTag"),a={};a[i]="z",e.exports="[object z]"===String(a)},"01ac":function(e,t){e.exports=function(e){var t="\\d(_|\\d)*",n="[eE][-+]?"+t,r=t+"(\\."+t+")?("+n+")?",i="\\w+",a=t+"#"+i+"(\\."+i+")?#("+n+")?",o="\\b("+a+"|"+r+")",s="[A-Za-z](_?[A-Za-z0-9.])*",l="[]{}%#'\"",c=e.COMMENT("--","$"),d={begin:"\\s+:\\s+",end:"\\s*(:=|;|\\)|=>|$)",illegal:l,contains:[{beginKeywords:"loop for declare others",endsParent:!0},{className:"keyword",beginKeywords:"not null constant access function procedure in out aliased exception"},{className:"type",begin:s,endsParent:!0,relevance:0}]};return{case_insensitive:!0,keywords:{keyword:"abort else new return abs elsif not reverse abstract end accept entry select access exception of separate aliased exit or some all others subtype and for out synchronized array function overriding at tagged generic package task begin goto pragma terminate body private then if procedure type case in protected constant interface is raise use declare range delay limited record when delta loop rem while digits renames with do mod requeue xor",literal:"True False"},contains:[c,{className:"string",begin:/"/,end:/"/,contains:[{begin:/""/,relevance:0}]},{className:"string",begin:/'.'/},{className:"number",begin:o,relevance:0},{className:"symbol",begin:"'"+s},{className:"title",begin:"(\\bwith\\s+)?(\\bprivate\\s+)?\\bpackage\\s+(\\bbody\\s+)?",end:"(is|$)",keywords:"package body",excludeBegin:!0,excludeEnd:!0,illegal:l},{begin:"(\\b(with|overriding)\\s+)?\\b(function|procedure)\\s+",end:"(\\bis|\\bwith|\\brenames|\\)\\s*;)",keywords:"overriding function procedure with is renames return",returnBegin:!0,contains:[c,{className:"title",begin:"(\\bwith\\s+)?\\b(function|procedure)\\s+",end:"(\\(|\\s+|$)",excludeBegin:!0,excludeEnd:!0,illegal:l},d,{className:"type",begin:"\\breturn\\s+",end:"(\\s+|;|$)",keywords:"return",excludeBegin:!0,excludeEnd:!0,endsParent:!0,illegal:l}]},{className:"type",begin:"\\b(sub)?type\\s+",end:"\\s+",keywords:"type",excludeBegin:!0,illegal:l},d]}}},"0209":function(e,t){e.exports=function(e){function t(e){return"(?:"+e+")?"}var n="decltype\\(auto\\)",r="[a-zA-Z_]\\w*::",i="<.*?>",a="("+n+"|"+t(r)+"[a-zA-Z_]\\w*"+t(i)+")",o={className:"keyword",begin:"\\b[a-z\\d_]*_t\\b"},s="\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)",l={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{begin:"(u8?|U|L)?'("+s+"|.)",end:"'",illegal:"."},{begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\((?:.|\n)*?\)\1"/}]},c={className:"number",variants:[{begin:"\\b(0b[01']+)"},{begin:"(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)(u|U|l|L|ul|UL|f|F|b|B)"},{begin:"(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)"}],relevance:0},d={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{"meta-keyword":"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include"},contains:[{begin:/\\\n/,relevance:0},e.inherit(l,{className:"meta-string"}),{className:"meta-string",begin:/<.*?>/,end:/$/,illegal:"\\n"},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},u={className:"title",begin:t(r)+e.IDENT_RE,relevance:0},_=t(r)+e.IDENT_RE+"\\s*\\(",p={keyword:"int float while private char char8_t char16_t char32_t catch import module export virtual operator sizeof dynamic_cast|10 typedef const_cast|10 const for static_cast|10 union namespace unsigned long volatile static protected bool template mutable if public friend do goto auto void enum else break extern using asm case typeid wchar_tshort reinterpret_cast|10 default double register explicit signed typename try this switch continue inline delete alignas alignof constexpr consteval constinit decltype concept co_await co_return co_yield requires noexcept static_assert thread_local restrict final override atomic_bool atomic_char atomic_schar atomic_uchar atomic_short atomic_ushort atomic_int atomic_uint atomic_long atomic_ulong atomic_llong atomic_ullong new throw return and and_eq bitand bitor compl not not_eq or or_eq xor xor_eq",built_in:"std string wstring cin cout cerr clog stdin stdout stderr stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap array shared_ptr abort terminate abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf future isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc realloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf endl initializer_list unique_ptr _Bool complex _Complex imaginary _Imaginary",literal:"true false nullptr NULL"},f=[o,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,c,l],m={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:p,contains:f.concat([{begin:/\(/,end:/\)/,keywords:p,contains:f.concat(["self"]),relevance:0}]),relevance:0},h={className:"function",begin:"("+a+"[\\*&\\s]+)+"+_,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:p,illegal:/[^\w\s\*&:<>]/,contains:[{begin:n,keywords:p,relevance:0},{begin:_,returnBegin:!0,contains:[u],relevance:0},{className:"params",begin:/\(/,end:/\)/,keywords:p,relevance:0,contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,l,c,o,{begin:/\(/,end:/\)/,keywords:p,relevance:0,contains:["self",e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,l,c,o]}]},o,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,d]};return{aliases:["c","cc","h","c++","h++","hpp","hh","hxx","cxx"],keywords:p,illegal:"",keywords:p,contains:["self",o]},{begin:e.IDENT_RE+"::",keywords:p},{className:"class",beginKeywords:"class struct",end:/[{;:]/,contains:[{begin://,contains:["self"]},e.TITLE_MODE]}]),exports:{preprocessor:d,strings:l,keywords:p}}}},"0215":function(e,t){e.exports=function(e){var t={begin:"<",end:">",contains:[e.inherit(e.TITLE_MODE,{begin:/'[a-zA-Z0-9_]+/})]};return{aliases:["fs"],keywords:"abstract and as assert base begin class default delegate do done downcast downto elif else end exception extern false finally for fun function global if in inherit inline interface internal lazy let match member module mutable namespace new null of open or override private public rec return sig static struct then to true try type upcast use val void when while with yield",illegal:/\/\*/,contains:[{className:"keyword",begin:/\b(yield|return|let|do)!/},{className:"string",begin:'@"',end:'"',contains:[{begin:'""'}]},{className:"string",begin:'"""',end:'"""'},e.COMMENT("\\(\\*","\\*\\)"),{className:"class",beginKeywords:"type",end:"\\(|=|$",excludeEnd:!0,contains:[e.UNDERSCORE_TITLE_MODE,t]},{className:"meta",begin:"\\[<",end:">\\]",relevance:10},{className:"symbol",begin:"\\B('[A-Za-z])\\b",contains:[e.BACKSLASH_ESCAPE]},e.C_LINE_COMMENT_MODE,e.inherit(e.QUOTE_STRING_MODE,{illegal:null}),e.C_NUMBER_MODE]}}},"0290":function(e,t){e.exports=function(e){return{aliases:["adoc"],contains:[e.COMMENT("^/{4,}\\n","\\n/{4,}$",{relevance:10}),e.COMMENT("^//","$",{relevance:0}),{className:"title",begin:"^\\.\\w.*$"},{begin:"^[=\\*]{4,}\\n",end:"\\n^[=\\*]{4,}$",relevance:10},{className:"section",relevance:10,variants:[{begin:"^(={1,5}) .+?( \\1)?$"},{begin:"^[^\\[\\]\\n]+?\\n[=\\-~\\^\\+]{2,}$"}]},{className:"meta",begin:"^:.+?:",end:"\\s",excludeEnd:!0,relevance:10},{className:"meta",begin:"^\\[.+?\\]$",relevance:0},{className:"quote",begin:"^_{4,}\\n",end:"\\n_{4,}$",relevance:10},{className:"code",begin:"^[\\-\\.]{4,}\\n",end:"\\n[\\-\\.]{4,}$",relevance:10},{begin:"^\\+{4,}\\n",end:"\\n\\+{4,}$",contains:[{begin:"<",end:">",subLanguage:"xml",relevance:0}],relevance:10},{className:"bullet",begin:"^(\\*+|\\-+|\\.+|[^\\n]+?::)\\s+"},{className:"symbol",begin:"^(NOTE|TIP|IMPORTANT|WARNING|CAUTION):\\s+",relevance:10},{className:"strong",begin:"\\B\\*(?![\\*\\s])",end:"(\\n{2}|\\*)",contains:[{begin:"\\\\*\\w",relevance:0}]},{className:"emphasis",begin:"\\B'(?!['\\s])",end:"(\\n{2}|')",contains:[{begin:"\\\\'\\w",relevance:0}],relevance:0},{className:"emphasis",begin:"_(?![_\\s])",end:"(\\n{2}|_)",relevance:0},{className:"string",variants:[{begin:"``.+?''"},{begin:"`.+?'"}]},{className:"code",begin:"(`.+?`|\\+.+?\\+)",relevance:0},{className:"code",begin:"^[ \\t]",end:"$",relevance:0},{begin:"^'{3,}[ \\t]*$",relevance:10},{begin:"(link:)?(http|https|ftp|file|irc|image:?):\\S+\\[.*?\\]",returnBegin:!0,contains:[{begin:"(link|image:?):",relevance:0},{className:"link",begin:"\\w",end:"[^\\[]+",relevance:0},{className:"string",begin:"\\[",end:"\\]",excludeBegin:!0,excludeEnd:!0,relevance:0}],relevance:10}]}}},"02ac":function(e,t){e.exports=function(e){var t={className:"string",begin:"\\[\n(multipart)?",end:"\\]\n"},n={className:"string",begin:"\\d{4}-\\d{2}-\\d{2}(\\s+)\\d{2}:\\d{2}:\\d{2}.\\d+Z"},r={className:"string",begin:"(\\+|-)\\d+"},i={className:"keyword",relevance:10,variants:[{begin:"^(test|testing|success|successful|failure|error|skip|xfail|uxsuccess)(:?)\\s+(test)?"},{begin:"^progress(:?)(\\s+)?(pop|push)?"},{begin:"^tags:"},{begin:"^time:"}]};return{case_insensitive:!0,contains:[t,n,r,i]}}},"02c4":function(e,t){e.exports=function(e){var t={className:"keyword",begin:"\\$(f[asn]|t|vp[rtd]|children)"},n={className:"literal",begin:"false|true|PI|undef"},r={className:"number",begin:"\\b\\d+(\\.\\d+)?(e-?\\d+)?",relevance:0},i=e.inherit(e.QUOTE_STRING_MODE,{illegal:null}),a={className:"meta",keywords:{"meta-keyword":"include use"},begin:"include|use <",end:">"},o={className:"params",begin:"\\(",end:"\\)",contains:["self",r,i,t,n]},s={begin:"[*!#%]",relevance:0},l={className:"function",beginKeywords:"module function",end:"\\=|\\{",contains:[o,e.UNDERSCORE_TITLE_MODE]};return{aliases:["scad"],keywords:{keyword:"function module include use for intersection_for if else \\%",literal:"false true PI undef",built_in:"circle square polygon text sphere cube cylinder polyhedron translate rotate scale resize mirror multmatrix color offset hull minkowski union difference intersection abs sign sin cos tan acos asin atan atan2 floor round ceil ln log pow sqrt exp rands min max concat lookup str chr search version version_num norm cross parent_module echo import import_dxf dxf_linear_extrude linear_extrude rotate_extrude surface projection render children dxf_cross dxf_dim let assign"},contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,r,a,i,t,s,l]}}},"0366":function(e,t,n){var r=n("1c0b");e.exports=function(e,t,n){if(r(e),void 0===t)return e;switch(n){case 0:return function(){return e.call(t)};case 1:return function(n){return e.call(t,n)};case 2:return function(n,r){return e.call(t,n,r)};case 3:return function(n,r,i){return e.call(t,n,r,i)}}return function(){return e.apply(t,arguments)}}},"0481":function(e,t){e.exports=function(e){var t={begin:"`[\\s\\S]"};return{case_insensitive:!0,aliases:["ahk"],keywords:{keyword:"Break Continue Critical Exit ExitApp Gosub Goto New OnExit Pause return SetBatchLines SetTimer Suspend Thread Throw Until ahk_id ahk_class ahk_pid ahk_exe ahk_group",literal:"true false NOT AND OR",built_in:"ComSpec Clipboard ClipboardAll ErrorLevel"},contains:[t,e.inherit(e.QUOTE_STRING_MODE,{contains:[t]}),e.COMMENT(";","$",{relevance:0}),e.C_BLOCK_COMMENT_MODE,{className:"number",begin:e.NUMBER_RE,relevance:0},{className:"variable",begin:"%[a-zA-Z0-9#_$@]+%"},{className:"built_in",begin:"^\\s*\\w+\\s*(,|%)"},{className:"title",variants:[{begin:'^[^\\n";]+::(?!=)'},{begin:'^[^\\n";]+:(?!=)',relevance:0}]},{className:"meta",begin:"^\\s*#\\w+",end:"$",relevance:0},{className:"built_in",begin:"A_[a-zA-Z0-9]+"},{begin:",\\s*,"}]}}},"04a8":function(e,t){e.exports=function(e){var t={begin:/[\w-]+ *=/,returnBegin:!0,relevance:0,contains:[{className:"attr",begin:/[\w-]+/}]},n={className:"params",begin:/\(/,end:/\)/,contains:[t],relevance:0},r={className:"function",begin:/:[\w\-.]+/,relevance:0},i={className:"string",begin:/\B(([\/.])[\w\-.\/=]+)+/},a={className:"params",begin:/--[\w\-=\/]+/};return{aliases:["wildfly-cli"],lexemes:"[a-z-]+",keywords:{keyword:"alias batch cd clear command connect connection-factory connection-info data-source deploy deployment-info deployment-overlay echo echo-dmr help history if jdbc-driver-info jms-queue|20 jms-topic|20 ls patch pwd quit read-attribute read-operation reload rollout-plan run-batch set shutdown try unalias undeploy unset version xa-data-source",literal:"true false"},contains:[e.HASH_COMMENT_MODE,e.QUOTE_STRING_MODE,a,r,i,n]}}},"04b0":function(e,t){e.exports=function(e){return{aliases:["md","mkdown","mkd"],contains:[{className:"section",variants:[{begin:"^#{1,6}",end:"$"},{begin:"^.+?\\n[=-]{2,}$"}]},{begin:"<",end:">",subLanguage:"xml",relevance:0},{className:"bullet",begin:"^\\s*([*+-]|(\\d+\\.))\\s+"},{className:"strong",begin:"[*_]{2}.+?[*_]{2}"},{className:"emphasis",variants:[{begin:"\\*.+?\\*"},{begin:"_.+?_",relevance:0}]},{className:"quote",begin:"^>\\s+",end:"$"},{className:"code",variants:[{begin:"^```\\w*\\s*$",end:"^```[ ]*$"},{begin:"`.+?`"},{begin:"^( {4}|\\t)",end:"$",relevance:0}]},{begin:"^[-\\*]{3,}",end:"$"},{begin:"\\[.+?\\][\\(\\[].*?[\\)\\]]",returnBegin:!0,contains:[{className:"string",begin:"\\[",end:"\\]",excludeBegin:!0,returnEnd:!0,relevance:0},{className:"link",begin:"\\]\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0},{className:"symbol",begin:"\\]\\[",end:"\\]",excludeBegin:!0,excludeEnd:!0}],relevance:10},{begin:/^\[[^\n]+\]:/,returnBegin:!0,contains:[{className:"symbol",begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0},{className:"link",begin:/:\s*/,end:/$/,excludeBegin:!0}]}]}}},"06b4":function(e,t){e.exports=function(e){return{case_insensitive:!0,contains:[e.HASH_COMMENT_MODE,{className:"meta",variants:[{begin:"^TAP version (\\d+)$"},{begin:"^1\\.\\.(\\d+)$"}]},{begin:"(s+)?---$",end:"\\.\\.\\.$",subLanguage:"yaml",relevance:0},{className:"number",begin:" (\\d+) "},{className:"symbol",variants:[{begin:"^ok"},{begin:"^not ok"}]}]}}},"06cf":function(e,t,n){var r=n("83ab"),i=n("d1e7"),a=n("5c6c"),o=n("fc6a"),s=n("c04e"),l=n("5135"),c=n("0cfb"),d=Object.getOwnPropertyDescriptor;t.f=r?d:function(e,t){if(e=o(e),t=s(t,!0),c)try{return d(e,t)}catch(n){}if(l(e,t))return a(!i.f.call(e,t),e[t])}},"074e":function(e,t){e.exports=function(e){var t={className:"params",begin:"\\(",end:"\\)"},n={literal:".False. .True.",keyword:"kind do while private call intrinsic where elsewhere type endtype endmodule endselect endinterface end enddo endif if forall endforall only contains default return stop then public subroutine|10 function program .and. .or. .not. .le. .eq. .ge. .gt. .lt. goto save else use module select case access blank direct exist file fmt form formatted iostat name named nextrec number opened rec recl sequential status unformatted unit continue format pause cycle exit c_null_char c_alert c_backspace c_form_feed flush wait decimal round iomsg synchronous nopass non_overridable pass protected volatile abstract extends import non_intrinsic value deferred generic final enumerator class associate bind enum c_int c_short c_long c_long_long c_signed_char c_size_t c_int8_t c_int16_t c_int32_t c_int64_t c_int_least8_t c_int_least16_t c_int_least32_t c_int_least64_t c_int_fast8_t c_int_fast16_t c_int_fast32_t c_int_fast64_t c_intmax_t C_intptr_t c_float c_double c_long_double c_float_complex c_double_complex c_long_double_complex c_bool c_char c_null_ptr c_null_funptr c_new_line c_carriage_return c_horizontal_tab c_vertical_tab iso_c_binding c_loc c_funloc c_associated c_f_pointer c_ptr c_funptr iso_fortran_env character_storage_size error_unit file_storage_size input_unit iostat_end iostat_eor numeric_storage_size output_unit c_f_procpointer ieee_arithmetic ieee_support_underflow_control ieee_get_underflow_mode ieee_set_underflow_mode newunit contiguous recursive pad position action delim readwrite eor advance nml interface procedure namelist include sequence elemental pure integer real character complex logical dimension allocatable|10 parameter external implicit|10 none double precision assign intent optional pointer target in out common equivalence data begin_provider &begin_provider end_provider begin_shell end_shell begin_template end_template subst assert touch soft_touch provide no_dep free irp_if irp_else irp_endif irp_write irp_read",built_in:"alog alog10 amax0 amax1 amin0 amin1 amod cabs ccos cexp clog csin csqrt dabs dacos dasin datan datan2 dcos dcosh ddim dexp dint dlog dlog10 dmax1 dmin1 dmod dnint dsign dsin dsinh dsqrt dtan dtanh float iabs idim idint idnint ifix isign max0 max1 min0 min1 sngl algama cdabs cdcos cdexp cdlog cdsin cdsqrt cqabs cqcos cqexp cqlog cqsin cqsqrt dcmplx dconjg derf derfc dfloat dgamma dimag dlgama iqint qabs qacos qasin qatan qatan2 qcmplx qconjg qcos qcosh qdim qerf qerfc qexp qgamma qimag qlgama qlog qlog10 qmax1 qmin1 qmod qnint qsign qsin qsinh qsqrt qtan qtanh abs acos aimag aint anint asin atan atan2 char cmplx conjg cos cosh exp ichar index int log log10 max min nint sign sin sinh sqrt tan tanh print write dim lge lgt lle llt mod nullify allocate deallocate adjustl adjustr all allocated any associated bit_size btest ceiling count cshift date_and_time digits dot_product eoshift epsilon exponent floor fraction huge iand ibclr ibits ibset ieor ior ishft ishftc lbound len_trim matmul maxexponent maxloc maxval merge minexponent minloc minval modulo mvbits nearest pack present product radix random_number random_seed range repeat reshape rrspacing scale scan selected_int_kind selected_real_kind set_exponent shape size spacing spread sum system_clock tiny transpose trim ubound unpack verify achar iachar transfer dble entry dprod cpu_time command_argument_count get_command get_command_argument get_environment_variable is_iostat_end ieee_arithmetic ieee_support_underflow_control ieee_get_underflow_mode ieee_set_underflow_mode is_iostat_eor move_alloc new_line selected_char_kind same_type_as extends_type_ofacosh asinh atanh bessel_j0 bessel_j1 bessel_jn bessel_y0 bessel_y1 bessel_yn erf erfc erfc_scaled gamma log_gamma hypot norm2 atomic_define atomic_ref execute_command_line leadz trailz storage_size merge_bits bge bgt ble blt dshiftl dshiftr findloc iall iany iparity image_index lcobound ucobound maskl maskr num_images parity popcnt poppar shifta shiftl shiftr this_image IRP_ALIGN irp_here"};return{case_insensitive:!0,keywords:n,illegal:/\/\*/,contains:[e.inherit(e.APOS_STRING_MODE,{className:"string",relevance:0}),e.inherit(e.QUOTE_STRING_MODE,{className:"string",relevance:0}),{className:"function",beginKeywords:"subroutine function program",illegal:"[${=\\n]",contains:[e.UNDERSCORE_TITLE_MODE,t]},e.COMMENT("!","$",{relevance:0}),e.COMMENT("begin_doc","end_doc",{relevance:10}),{className:"number",begin:"(?=\\b|\\+|\\-|\\.)(?=\\.\\d|\\d)(?:\\d+)?(?:\\.?\\d*)(?:[de][+-]?\\d+)?\\b\\.?",relevance:0}]}}},"0a06":function(e,t,n){"use strict";var r=n("c532"),i=n("30b5"),a=n("f6b4"),o=n("5270"),s=n("4a7b");function l(e){this.defaults=e,this.interceptors={request:new a,response:new a}}l.prototype.request=function(e){"string"===typeof e?(e=arguments[1]||{},e.url=arguments[0]):e=e||{},e=s(this.defaults,e),e.method?e.method=e.method.toLowerCase():this.defaults.method?e.method=this.defaults.method.toLowerCase():e.method="get";var t=[o,void 0],n=Promise.resolve(e);this.interceptors.request.forEach((function(e){t.unshift(e.fulfilled,e.rejected)})),this.interceptors.response.forEach((function(e){t.push(e.fulfilled,e.rejected)}));while(t.length)n=n.then(t.shift(),t.shift());return n},l.prototype.getUri=function(e){return e=s(this.defaults,e),i(e.url,e.params,e.paramsSerializer).replace(/^\?/,"")},r.forEach(["delete","get","head","options"],(function(e){l.prototype[e]=function(t,n){return this.request(s(n||{},{method:e,url:t}))}})),r.forEach(["post","put","patch"],(function(e){l.prototype[e]=function(t,n,r){return this.request(s(r||{},{method:e,url:t,data:n}))}})),e.exports=l},"0b22":function(e,t){e.exports=function(e){var t={keyword:"break default func interface select case map struct chan else goto package switch const fallthrough if range type continue for import return var go defer bool byte complex64 complex128 float32 float64 int8 int16 int32 int64 string uint8 uint16 uint32 uint64 int uint uintptr rune",literal:"true false iota nil",built_in:"append cap close complex copy imag len make new panic print println real recover delete"};return{aliases:["golang"],keywords:t,illegal:""),{begin:"<%[%=-]?",end:"[%-]?%>",subLanguage:"ruby",excludeBegin:!0,excludeEnd:!0}]}}},1487:function(e,t,n){var r=n("a70e");r.registerLanguage("1c",n("f71c")),r.registerLanguage("abnf",n("b528")),r.registerLanguage("accesslog",n("998d")),r.registerLanguage("actionscript",n("f9f0")),r.registerLanguage("ada",n("01ac")),r.registerLanguage("angelscript",n("dbcc")),r.registerLanguage("apache",n("f0aa")),r.registerLanguage("applescript",n("7bc1")),r.registerLanguage("arcade",n("305e")),r.registerLanguage("cpp",n("0209")),r.registerLanguage("arduino",n("944e")),r.registerLanguage("armasm",n("a33c")),r.registerLanguage("xml",n("8dcb")),r.registerLanguage("asciidoc",n("0290")),r.registerLanguage("aspectj",n("9814")),r.registerLanguage("autohotkey",n("0481")),r.registerLanguage("autoit",n("ef99")),r.registerLanguage("avrasm",n("a6fb")),r.registerLanguage("awk",n("1069")),r.registerLanguage("axapta",n("a885")),r.registerLanguage("bash",n("f0f8")),r.registerLanguage("basic",n("a15a")),r.registerLanguage("bnf",n("75da")),r.registerLanguage("brainfuck",n("5921")),r.registerLanguage("cal",n("7781")),r.registerLanguage("capnproto",n("4a5e")),r.registerLanguage("ceylon",n("ba76")),r.registerLanguage("clean",n("51ab")),r.registerLanguage("clojure",n("b884")),r.registerLanguage("clojure-repl",n("149d")),r.registerLanguage("cmake",n("eaab")),r.registerLanguage("coffeescript",n("a995")),r.registerLanguage("coq",n("80b3")),r.registerLanguage("cos",n("8261")),r.registerLanguage("crmsh",n("c8e5")),r.registerLanguage("crystal",n("294a")),r.registerLanguage("cs",n("bb63")),r.registerLanguage("csp",n("4272")),r.registerLanguage("css",n("ee8c")),r.registerLanguage("d",n("8d6d")),r.registerLanguage("markdown",n("04b0")),r.registerLanguage("dart",n("7c46")),r.registerLanguage("delphi",n("1f8a")),r.registerLanguage("diff",n("48b8")),r.registerLanguage("django",n("d248")),r.registerLanguage("dns",n("8a86")),r.registerLanguage("dockerfile",n("44b5")),r.registerLanguage("dos",n("7cff")),r.registerLanguage("dsconfig",n("b91e")),r.registerLanguage("dts",n("b0cf")),r.registerLanguage("dust",n("f4da")),r.registerLanguage("ebnf",n("1b4d")),r.registerLanguage("elixir",n("7727")),r.registerLanguage("elm",n("5051")),r.registerLanguage("ruby",n("82cb")),r.registerLanguage("erb",n("1367")),r.registerLanguage("erlang-repl",n("f492")),r.registerLanguage("erlang",n("b3c5")),r.registerLanguage("excel",n("f5cf")),r.registerLanguage("fix",n("2b22")),r.registerLanguage("flix",n("a14e")),r.registerLanguage("fortran",n("485f")),r.registerLanguage("fsharp",n("0215")),r.registerLanguage("gams",n("7d9d")),r.registerLanguage("gauss",n("ae7a")),r.registerLanguage("gcode",n("94a2")),r.registerLanguage("gherkin",n("351a")),r.registerLanguage("glsl",n("df06")),r.registerLanguage("gml",n("e6ea")),r.registerLanguage("go",n("0b22")),r.registerLanguage("golo",n("919d")),r.registerLanguage("gradle",n("9544")),r.registerLanguage("groovy",n("1f64")),r.registerLanguage("haml",n("4f4a")),r.registerLanguage("handlebars",n("e55c")),r.registerLanguage("haskell",n("3f38")),r.registerLanguage("haxe",n("7c71")),r.registerLanguage("hsp",n("c22d")),r.registerLanguage("htmlbars",n("79b5")),r.registerLanguage("http",n("c01d")),r.registerLanguage("hy",n("8667")),r.registerLanguage("inform7",n("2e5d")),r.registerLanguage("ini",n("2a93")),r.registerLanguage("irpf90",n("074e")),r.registerLanguage("isbl",n("bb43")),r.registerLanguage("java",n("332f")),r.registerLanguage("javascript",n("4dd1")),r.registerLanguage("jboss-cli",n("04a8")),r.registerLanguage("json",n("5ad2")),r.registerLanguage("julia",n("2265")),r.registerLanguage("julia-repl",n("b7aa")),r.registerLanguage("kotlin",n("a941")),r.registerLanguage("lasso",n("25bd")),r.registerLanguage("ldif",n("1a06")),r.registerLanguage("leaf",n("2e9b")),r.registerLanguage("less",n("1846")),r.registerLanguage("lisp",n("9b32")),r.registerLanguage("livecodeserver",n("1beb")),r.registerLanguage("livescript",n("2e11")),r.registerLanguage("llvm",n("7c30")),r.registerLanguage("lsl",n("28ad")),r.registerLanguage("lua",n("ecfe")),r.registerLanguage("makefile",n("7a5e")),r.registerLanguage("mathematica",n("ef7a")),r.registerLanguage("matlab",n("8ca5")),r.registerLanguage("maxima",n("399d")),r.registerLanguage("mel",n("bb7e")),r.registerLanguage("mercury",n("2425")),r.registerLanguage("mipsasm",n("a342")),r.registerLanguage("mizar",n("0f16")),r.registerLanguage("perl",n("6a51")),r.registerLanguage("mojolicious",n("66ba")),r.registerLanguage("monkey",n("a710")),r.registerLanguage("moonscript",n("b1b9")),r.registerLanguage("n1ql",n("f4c8")),r.registerLanguage("nginx",n("f54f")),r.registerLanguage("nimrod",n("0f3c")),r.registerLanguage("nix",n("46ae")),r.registerLanguage("nsis",n("b322")),r.registerLanguage("objectivec",n("9bf21")),r.registerLanguage("ocaml",n("ee6c")),r.registerLanguage("openscad",n("02c4")),r.registerLanguage("oxygene",n("6de8")),r.registerLanguage("parser3",n("3728")),r.registerLanguage("pf",n("767a")),r.registerLanguage("pgsql",n("f851")),r.registerLanguage("php",n("2907")),r.registerLanguage("plaintext",n("44e5")),r.registerLanguage("pony",n("95d0")),r.registerLanguage("powershell",n("508e")),r.registerLanguage("processing",n("afba")),r.registerLanguage("profile",n("b90a")),r.registerLanguage("prolog",n("4396")),r.registerLanguage("properties",n("56b2")),r.registerLanguage("protobuf",n("2e8e")),r.registerLanguage("puppet",n("5027")),r.registerLanguage("purebasic",n("1b02")),r.registerLanguage("python",n("9510")),r.registerLanguage("q",n("5dfb")),r.registerLanguage("qml",n("612a")),r.registerLanguage("r",n("26bc")),r.registerLanguage("reasonml",n("e990")),r.registerLanguage("rib",n("0faf")),r.registerLanguage("roboconf",n("f50f")),r.registerLanguage("routeros",n("d959")),r.registerLanguage("rsl",n("a0a7")),r.registerLanguage("ruleslanguage",n("8aba")),r.registerLanguage("rust",n("2ce7")),r.registerLanguage("sas",n("40f4")),r.registerLanguage("scala",n("9f7fc")),r.registerLanguage("scheme",n("4108")),r.registerLanguage("scilab",n("ea4d")),r.registerLanguage("scss",n("6113")),r.registerLanguage("shell",n("b65b")),r.registerLanguage("smali",n("1b1c")),r.registerLanguage("smalltalk",n("8d4f")),r.registerLanguage("sml",n("dc41")),r.registerLanguage("sqf",n("e2a7")),r.registerLanguage("sql",n("de09")),r.registerLanguage("stan",n("8931")),r.registerLanguage("stata",n("d4b5")),r.registerLanguage("step21",n("0081")),r.registerLanguage("stylus",n("bd88")),r.registerLanguage("subunit",n("02ac")),r.registerLanguage("swift",n("2a39")),r.registerLanguage("taggerscript",n("2468")),r.registerLanguage("yaml",n("2e7b")),r.registerLanguage("tap",n("06b4")),r.registerLanguage("tcl",n("a27d")),r.registerLanguage("tex",n("29c8")),r.registerLanguage("thrift",n("adf9")),r.registerLanguage("tp",n("a613")),r.registerLanguage("twig",n("f46e")),r.registerLanguage("typescript",n("af44")),r.registerLanguage("vala",n("f122")),r.registerLanguage("vbnet",n("89e7")),r.registerLanguage("vbscript",n("5a3e")),r.registerLanguage("vbscript-html",n("f45a")),r.registerLanguage("verilog",n("e10f")),r.registerLanguage("vhdl",n("310f")),r.registerLanguage("vim",n("3c69")),r.registerLanguage("x86asm",n("a154")),r.registerLanguage("xl",n("2639")),r.registerLanguage("xquery",n("268a")),r.registerLanguage("zephir",n("9f0c")),e.exports=r},"149d":function(e,t){e.exports=function(e){return{contains:[{className:"meta",begin:/^([\w.-]+|\s*#_)?=>/,starts:{end:/$/,subLanguage:"clojure"}}]}}},"14c3":function(e,t,n){var r=n("c6b6"),i=n("9263");e.exports=function(e,t){var n=e.exec;if("function"===typeof n){var a=n.call(e,t);if("object"!==typeof a)throw TypeError("RegExp exec method returned something other than an Object or null");return a}if("RegExp"!==r(e))throw TypeError("RegExp#exec called on incompatible receiver");return i.call(e,t)}},"159b":function(e,t,n){var r=n("da84"),i=n("fdbc"),a=n("17c2"),o=n("9112");for(var s in i){var l=r[s],c=l&&l.prototype;if(c&&c.forEach!==a)try{o(c,"forEach",a)}catch(d){c.forEach=a}}},"17c2":function(e,t,n){"use strict";var r=n("b727").forEach,i=n("a640"),a=n("ae40"),o=i("forEach"),s=a("forEach");e.exports=o&&s?[].forEach:function(e){return r(this,e,arguments.length>1?arguments[1]:void 0)}},1846:function(e,t){e.exports=function(e){var t="[\\w-]+",n="("+t+"|@{"+t+"})",r=[],i=[],a=function(e){return{className:"string",begin:"~?"+e+".*?"+e}},o=function(e,t,n){return{className:e,begin:t,relevance:n}},s={begin:"\\(",end:"\\)",contains:i,relevance:0};i.push(e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,a("'"),a('"'),e.CSS_NUMBER_MODE,{begin:"(url|data-uri)\\(",starts:{className:"string",end:"[\\)\\n]",excludeEnd:!0}},o("number","#[0-9A-Fa-f]+\\b"),s,o("variable","@@?"+t,10),o("variable","@{"+t+"}"),o("built_in","~?`[^`]*?`"),{className:"attribute",begin:t+"\\s*:",end:":",returnBegin:!0,excludeEnd:!0},{className:"meta",begin:"!important"});var l=i.concat({begin:"{",end:"}",contains:r}),c={beginKeywords:"when",endsWithParent:!0,contains:[{beginKeywords:"and not"}].concat(i)},d={begin:n+"\\s*:",returnBegin:!0,end:"[;}]",relevance:0,contains:[{className:"attribute",begin:n,end:":",excludeEnd:!0,starts:{endsWithParent:!0,illegal:"[<=$]",relevance:0,contains:i}}]},u={className:"keyword",begin:"@(import|media|charset|font-face|(-[a-z]+-)?keyframes|supports|document|namespace|page|viewport|host)\\b",starts:{end:"[;{}]",returnEnd:!0,contains:i,relevance:0}},_={className:"variable",variants:[{begin:"@"+t+"\\s*:",relevance:15},{begin:"@"+t}],starts:{end:"[;}]",returnEnd:!0,contains:l}},p={variants:[{begin:"[\\.#:&\\[>]",end:"[;{}]"},{begin:n,end:"{"}],returnBegin:!0,returnEnd:!0,illegal:"[<='$\"]",relevance:0,contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,c,o("keyword","all\\b"),o("variable","@{"+t+"}"),o("selector-tag",n+"%?",0),o("selector-id","#"+n),o("selector-class","\\."+n,0),o("selector-tag","&",0),{className:"selector-attr",begin:"\\[",end:"\\]"},{className:"selector-pseudo",begin:/:(:)?[a-zA-Z0-9\_\-\+\(\)"'.]+/},{begin:"\\(",end:"\\)",contains:l},{begin:"!important"}]};return r.push(e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,u,_,d,p),{case_insensitive:!0,illegal:"[=>'/<($\"]",contains:r}}},"19aa":function(e,t){e.exports=function(e,t,n){if(!(e instanceof t))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return e}},"1a06":function(e,t){e.exports=function(e){return{contains:[{className:"attribute",begin:"^dn",end:": ",excludeEnd:!0,starts:{end:"$",relevance:0},relevance:10},{className:"attribute",begin:"^\\w",end:": ",excludeEnd:!0,starts:{end:"$",relevance:0}},{className:"literal",begin:"^-",end:"$"},e.HASH_COMMENT_MODE]}}},"1b02":function(e,t){e.exports=function(e){var t={className:"string",begin:'(~)?"',end:'"',illegal:"\\n"},n={className:"symbol",begin:"#[a-zA-Z_]\\w*\\$?"};return{aliases:["pb","pbi"],keywords:"Align And Array As Break CallDebugger Case CompilerCase CompilerDefault CompilerElse CompilerElseIf CompilerEndIf CompilerEndSelect CompilerError CompilerIf CompilerSelect CompilerWarning Continue Data DataSection Debug DebugLevel Declare DeclareC DeclareCDLL DeclareDLL DeclareModule Default Define Dim DisableASM DisableDebugger DisableExplicit Else ElseIf EnableASM EnableDebugger EnableExplicit End EndDataSection EndDeclareModule EndEnumeration EndIf EndImport EndInterface EndMacro EndModule EndProcedure EndSelect EndStructure EndStructureUnion EndWith Enumeration EnumerationBinary Extends FakeReturn For ForEach ForEver Global Gosub Goto If Import ImportC IncludeBinary IncludeFile IncludePath Interface List Macro MacroExpandedCount Map Module NewList NewMap Next Not Or Procedure ProcedureC ProcedureCDLL ProcedureDLL ProcedureReturn Protected Prototype PrototypeC ReDim Read Repeat Restore Return Runtime Select Shared Static Step Structure StructureUnion Swap Threaded To UndefineMacro Until Until UnuseModule UseModule Wend While With XIncludeFile XOr",contains:[e.COMMENT(";","$",{relevance:0}),{className:"function",begin:"\\b(Procedure|Declare)(C|CDLL|DLL)?\\b",end:"\\(",excludeEnd:!0,returnBegin:!0,contains:[{className:"keyword",begin:"(Procedure|Declare)(C|CDLL|DLL)?",excludeEnd:!0},{className:"type",begin:"\\.\\w*"},e.UNDERSCORE_TITLE_MODE]},t,n]}}},"1b1c":function(e,t){e.exports=function(e){var t=["add","and","cmp","cmpg","cmpl","const","div","double","float","goto","if","int","long","move","mul","neg","new","nop","not","or","rem","return","shl","shr","sput","sub","throw","ushr","xor"],n=["aget","aput","array","check","execute","fill","filled","goto/16","goto/32","iget","instance","invoke","iput","monitor","packed","sget","sparse"],r=["transient","constructor","abstract","final","synthetic","public","private","protected","static","bridge","system"];return{aliases:["smali"],contains:[{className:"string",begin:'"',end:'"',relevance:0},e.COMMENT("#","$",{relevance:0}),{className:"keyword",variants:[{begin:"\\s*\\.end\\s[a-zA-Z0-9]*"},{begin:"^[ ]*\\.[a-zA-Z]*",relevance:0},{begin:"\\s:[a-zA-Z_0-9]*",relevance:0},{begin:"\\s("+r.join("|")+")"}]},{className:"built_in",variants:[{begin:"\\s("+t.join("|")+")\\s"},{begin:"\\s("+t.join("|")+")((\\-|/)[a-zA-Z0-9]+)+\\s",relevance:10},{begin:"\\s("+n.join("|")+")((\\-|/)[a-zA-Z0-9]+)*\\s",relevance:10}]},{className:"class",begin:"L[^(;:\n]*;",relevance:0},{begin:"[vp][0-9]+"}]}}},"1b4d":function(e,t){e.exports=function(e){var t=e.COMMENT(/\(\*/,/\*\)/),n={className:"attribute",begin:/^[ ]*[a-zA-Z][a-zA-Z-_]*([\s-_]+[a-zA-Z][a-zA-Z]*)*/},r={className:"meta",begin:/\?.*\?/},i={begin:/=/,end:/[.;]/,contains:[t,r,{className:"string",variants:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{begin:"`",end:"`"}]}]};return{illegal:/\S/,contains:[t,n,i]}}},"1be4":function(e,t,n){var r=n("d066");e.exports=r("document","documentElement")},"1beb":function(e,t){e.exports=function(e){var t={className:"variable",variants:[{begin:"\\b([gtps][A-Z]{1}[a-zA-Z0-9]*)(\\[.+\\])?(?:\\s*?)"},{begin:"\\$_[A-Z]+"}],relevance:0},n=[e.C_BLOCK_COMMENT_MODE,e.HASH_COMMENT_MODE,e.COMMENT("--","$"),e.COMMENT("[^:]//","$")],r=e.inherit(e.TITLE_MODE,{variants:[{begin:"\\b_*rig[A-Z]+[A-Za-z0-9_\\-]*"},{begin:"\\b_[a-z0-9\\-]+"}]}),i=e.inherit(e.TITLE_MODE,{begin:"\\b([A-Za-z0-9_\\-]+)\\b"});return{case_insensitive:!1,keywords:{keyword:"$_COOKIE $_FILES $_GET $_GET_BINARY $_GET_RAW $_POST $_POST_BINARY $_POST_RAW $_SESSION $_SERVER codepoint codepoints segment segments codeunit codeunits sentence sentences trueWord trueWords paragraph after byte bytes english the until http forever descending using line real8 with seventh for stdout finally element word words fourth before black ninth sixth characters chars stderr uInt1 uInt1s uInt2 uInt2s stdin string lines relative rel any fifth items from middle mid at else of catch then third it file milliseconds seconds second secs sec int1 int1s int4 int4s internet int2 int2s normal text item last long detailed effective uInt4 uInt4s repeat end repeat URL in try into switch to words https token binfile each tenth as ticks tick system real4 by dateItems without char character ascending eighth whole dateTime numeric short first ftp integer abbreviated abbr abbrev private case while if div mod wrap and or bitAnd bitNot bitOr bitXor among not in a an within contains ends with begins the keys of keys",literal:"SIX TEN FORMFEED NINE ZERO NONE SPACE FOUR FALSE COLON CRLF PI COMMA ENDOFFILE EOF EIGHT FIVE QUOTE EMPTY ONE TRUE RETURN CR LINEFEED RIGHT BACKSLASH NULL SEVEN TAB THREE TWO six ten formfeed nine zero none space four false colon crlf pi comma endoffile eof eight five quote empty one true return cr linefeed right backslash null seven tab three two RIVERSION RISTATE FILE_READ_MODE FILE_WRITE_MODE FILE_WRITE_MODE DIR_WRITE_MODE FILE_READ_UMASK FILE_WRITE_UMASK DIR_READ_UMASK DIR_WRITE_UMASK",built_in:"put abs acos aliasReference annuity arrayDecode arrayEncode asin atan atan2 average avg avgDev base64Decode base64Encode baseConvert binaryDecode binaryEncode byteOffset byteToNum cachedURL cachedURLs charToNum cipherNames codepointOffset codepointProperty codepointToNum codeunitOffset commandNames compound compress constantNames cos date dateFormat decompress difference directories diskSpace DNSServers exp exp1 exp2 exp10 extents files flushEvents folders format functionNames geometricMean global globals hasMemory harmonicMean hostAddress hostAddressToName hostName hostNameToAddress isNumber ISOToMac itemOffset keys len length libURLErrorData libUrlFormData libURLftpCommand libURLLastHTTPHeaders libURLLastRHHeaders libUrlMultipartFormAddPart libUrlMultipartFormData libURLVersion lineOffset ln ln1 localNames log log2 log10 longFilePath lower macToISO matchChunk matchText matrixMultiply max md5Digest median merge messageAuthenticationCode messageDigest millisec millisecs millisecond milliseconds min monthNames nativeCharToNum normalizeText num number numToByte numToChar numToCodepoint numToNativeChar offset open openfiles openProcesses openProcessIDs openSockets paragraphOffset paramCount param params peerAddress pendingMessages platform popStdDev populationStandardDeviation populationVariance popVariance processID random randomBytes replaceText result revCreateXMLTree revCreateXMLTreeFromFile revCurrentRecord revCurrentRecordIsFirst revCurrentRecordIsLast revDatabaseColumnCount revDatabaseColumnIsNull revDatabaseColumnLengths revDatabaseColumnNames revDatabaseColumnNamed revDatabaseColumnNumbered revDatabaseColumnTypes revDatabaseConnectResult revDatabaseCursors revDatabaseID revDatabaseTableNames revDatabaseType revDataFromQuery revdb_closeCursor revdb_columnbynumber revdb_columncount revdb_columnisnull revdb_columnlengths revdb_columnnames revdb_columntypes revdb_commit revdb_connect revdb_connections revdb_connectionerr revdb_currentrecord revdb_cursorconnection revdb_cursorerr revdb_cursors revdb_dbtype revdb_disconnect revdb_execute revdb_iseof revdb_isbof revdb_movefirst revdb_movelast revdb_movenext revdb_moveprev revdb_query revdb_querylist revdb_recordcount revdb_rollback revdb_tablenames revGetDatabaseDriverPath revNumberOfRecords revOpenDatabase revOpenDatabases revQueryDatabase revQueryDatabaseBlob revQueryResult revQueryIsAtStart revQueryIsAtEnd revUnixFromMacPath revXMLAttribute revXMLAttributes revXMLAttributeValues revXMLChildContents revXMLChildNames revXMLCreateTreeFromFileWithNamespaces revXMLCreateTreeWithNamespaces revXMLDataFromXPathQuery revXMLEvaluateXPath revXMLFirstChild revXMLMatchingNode revXMLNextSibling revXMLNodeContents revXMLNumberOfChildren revXMLParent revXMLPreviousSibling revXMLRootNode revXMLRPC_CreateRequest revXMLRPC_Documents revXMLRPC_Error revXMLRPC_GetHost revXMLRPC_GetMethod revXMLRPC_GetParam revXMLText revXMLRPC_Execute revXMLRPC_GetParamCount revXMLRPC_GetParamNode revXMLRPC_GetParamType revXMLRPC_GetPath revXMLRPC_GetPort revXMLRPC_GetProtocol revXMLRPC_GetRequest revXMLRPC_GetResponse revXMLRPC_GetSocket revXMLTree revXMLTrees revXMLValidateDTD revZipDescribeItem revZipEnumerateItems revZipOpenArchives round sampVariance sec secs seconds sentenceOffset sha1Digest shell shortFilePath sin specialFolderPath sqrt standardDeviation statRound stdDev sum sysError systemVersion tan tempName textDecode textEncode tick ticks time to tokenOffset toLower toUpper transpose truewordOffset trunc uniDecode uniEncode upper URLDecode URLEncode URLStatus uuid value variableNames variance version waitDepth weekdayNames wordOffset xsltApplyStylesheet xsltApplyStylesheetFromFile xsltLoadStylesheet xsltLoadStylesheetFromFile add breakpoint cancel clear local variable file word line folder directory URL close socket process combine constant convert create new alias folder directory decrypt delete variable word line folder directory URL dispatch divide do encrypt filter get include intersect kill libURLDownloadToFile libURLFollowHttpRedirects libURLftpUpload libURLftpUploadFile libURLresetAll libUrlSetAuthCallback libURLSetDriver libURLSetCustomHTTPHeaders libUrlSetExpect100 libURLSetFTPListCommand libURLSetFTPMode libURLSetFTPStopTime libURLSetStatusCallback load extension loadedExtensions multiply socket prepare process post seek rel relative read from process rename replace require resetAll resolve revAddXMLNode revAppendXML revCloseCursor revCloseDatabase revCommitDatabase revCopyFile revCopyFolder revCopyXMLNode revDeleteFolder revDeleteXMLNode revDeleteAllXMLTrees revDeleteXMLTree revExecuteSQL revGoURL revInsertXMLNode revMoveFolder revMoveToFirstRecord revMoveToLastRecord revMoveToNextRecord revMoveToPreviousRecord revMoveToRecord revMoveXMLNode revPutIntoXMLNode revRollBackDatabase revSetDatabaseDriverPath revSetXMLAttribute revXMLRPC_AddParam revXMLRPC_DeleteAllDocuments revXMLAddDTD revXMLRPC_Free revXMLRPC_FreeAll revXMLRPC_DeleteDocument revXMLRPC_DeleteParam revXMLRPC_SetHost revXMLRPC_SetMethod revXMLRPC_SetPort revXMLRPC_SetProtocol revXMLRPC_SetSocket revZipAddItemWithData revZipAddItemWithFile revZipAddUncompressedItemWithData revZipAddUncompressedItemWithFile revZipCancel revZipCloseArchive revZipDeleteItem revZipExtractItemToFile revZipExtractItemToVariable revZipSetProgressCallback revZipRenameItem revZipReplaceItemWithData revZipReplaceItemWithFile revZipOpenArchive send set sort split start stop subtract symmetric union unload vectorDotProduct wait write"},contains:[t,{className:"keyword",begin:"\\bend\\sif\\b"},{className:"function",beginKeywords:"function",end:"$",contains:[t,i,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.BINARY_NUMBER_MODE,e.C_NUMBER_MODE,r]},{className:"function",begin:"\\bend\\s+",end:"$",keywords:"end",contains:[i,r],relevance:0},{beginKeywords:"command on",end:"$",contains:[t,i,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.BINARY_NUMBER_MODE,e.C_NUMBER_MODE,r]},{className:"meta",variants:[{begin:"<\\?(rev|lc|livecode)",relevance:10},{begin:"<\\?"},{begin:"\\?>"}]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.BINARY_NUMBER_MODE,e.C_NUMBER_MODE,r].concat(n),illegal:";$|^\\[|^=|&|{"}}},"1c0b":function(e,t){e.exports=function(e){if("function"!=typeof e)throw TypeError(String(e)+" is not a function");return e}},"1c7e":function(e,t,n){var r=n("b622"),i=r("iterator"),a=!1;try{var o=0,s={next:function(){return{done:!!o++}},return:function(){a=!0}};s[i]=function(){return this},Array.from(s,(function(){throw 2}))}catch(l){}e.exports=function(e,t){if(!t&&!a)return!1;var n=!1;try{var r={};r[i]=function(){return{next:function(){return{done:n=!0}}}},e(r)}catch(l){}return n}},"1cdc":function(e,t,n){var r=n("342f");e.exports=/(iphone|ipod|ipad).*applewebkit/i.test(r)},"1d2b":function(e,t,n){"use strict";e.exports=function(e,t){return function(){for(var n=new Array(arguments.length),r=0;r=51||!r((function(){var t=[],n=t.constructor={};return n[o]=function(){return{foo:1}},1!==t[e](Boolean).foo}))}},"1f64":function(e,t){e.exports=function(e){return{keywords:{literal:"true false null",keyword:"byte short char int long boolean float double void def as in assert trait super this abstract static volatile transient public private protected synchronized final class interface enum if else for while switch case break default continue throw throws try catch finally implements extends new import package return instanceof"},contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/,relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]}),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"string",begin:'"""',end:'"""'},{className:"string",begin:"'''",end:"'''"},{className:"string",begin:"\\$/",end:"/\\$",relevance:10},e.APOS_STRING_MODE,{className:"regexp",begin:/~?\/[^\/\n]+\//,contains:[e.BACKSLASH_ESCAPE]},e.QUOTE_STRING_MODE,{className:"meta",begin:"^#!/usr/bin/env",end:"$",illegal:"\n"},e.BINARY_NUMBER_MODE,{className:"class",beginKeywords:"class interface trait enum",end:"{",illegal:":",contains:[{beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE]},e.C_NUMBER_MODE,{className:"meta",begin:"@[A-Za-z]+"},{className:"string",begin:/[^\?]{0}[A-Za-z0-9_$]+ *:/},{begin:/\?/,end:/\:/},{className:"symbol",begin:"^\\s*[A-Za-z0-9_$]+:",relevance:0}],illegal:/#|<\//}}},"1f8a":function(e,t){e.exports=function(e){var t="exports register file shl array record property for mod while set ally label uses raise not stored class safecall var interface or private static exit index inherited to else stdcall override shr asm far resourcestring finalization packed virtual out and protected library do xorwrite goto near function end div overload object unit begin string on inline repeat until destructor write message program with read initialization except default nil if case cdecl in downto threadvar of try pascal const external constructor type public then implementation finally published procedure absolute reintroduce operator as is abstract alias assembler bitpacked break continue cppdecl cvar enumerator experimental platform deprecated unimplemented dynamic export far16 forward generic helper implements interrupt iochecks local name nodefault noreturn nostackframe oldfpccall otherwise saveregisters softfloat specialize strict unaligned varargs ",n=[e.C_LINE_COMMENT_MODE,e.COMMENT(/\{/,/\}/,{relevance:0}),e.COMMENT(/\(\*/,/\*\)/,{relevance:10})],r={className:"meta",variants:[{begin:/\{\$/,end:/\}/},{begin:/\(\*\$/,end:/\*\)/}]},i={className:"string",begin:/'/,end:/'/,contains:[{begin:/''/}]},a={className:"string",begin:/(#\d+)+/},o={begin:e.IDENT_RE+"\\s*=\\s*class\\s*\\(",returnBegin:!0,contains:[e.TITLE_MODE]},s={className:"function",beginKeywords:"function constructor destructor procedure",end:/[:;]/,keywords:"function constructor|10 destructor|10 procedure|10",contains:[e.TITLE_MODE,{className:"params",begin:/\(/,end:/\)/,keywords:t,contains:[i,a,r].concat(n)},r].concat(n)};return{aliases:["dpr","dfm","pas","pascal","freepascal","lazarus","lpr","lfm"],case_insensitive:!0,keywords:t,illegal:/"|\$[G-Zg-z]|\/\*|<\/|\|/,contains:[i,a,e.NUMBER_MODE,o,s,r].concat(n)}}},2265:function(e,t){e.exports=function(e){var t={keyword:"in isa where baremodule begin break catch ccall const continue do else elseif end export false finally for function global if import importall let local macro module quote return true try using while type immutable abstract bitstype typealias ",literal:"true false ARGS C_NULL DevNull ENDIAN_BOM ENV I Inf Inf16 Inf32 Inf64 InsertionSort JULIA_HOME LOAD_PATH MergeSort NaN NaN16 NaN32 NaN64 PROGRAM_FILE QuickSort RoundDown RoundFromZero RoundNearest RoundNearestTiesAway RoundNearestTiesUp RoundToZero RoundUp STDERR STDIN STDOUT VERSION catalan e|0 eu|0 eulergamma golden im nothing pi Ξ³ Ο€ Ο† ",built_in:"ANY AbstractArray AbstractChannel AbstractFloat AbstractMatrix AbstractRNG AbstractSerializer AbstractSet AbstractSparseArray AbstractSparseMatrix AbstractSparseVector AbstractString AbstractUnitRange AbstractVecOrMat AbstractVector Any ArgumentError Array AssertionError Associative Base64DecodePipe Base64EncodePipe Bidiagonal BigFloat BigInt BitArray BitMatrix BitVector Bool BoundsError BufferStream CachingPool CapturedException CartesianIndex CartesianRange Cchar Cdouble Cfloat Channel Char Cint Cintmax_t Clong Clonglong ClusterManager Cmd CodeInfo Colon Complex Complex128 Complex32 Complex64 CompositeException Condition ConjArray ConjMatrix ConjVector Cptrdiff_t Cshort Csize_t Cssize_t Cstring Cuchar Cuint Cuintmax_t Culong Culonglong Cushort Cwchar_t Cwstring DataType Date DateFormat DateTime DenseArray DenseMatrix DenseVecOrMat DenseVector Diagonal Dict DimensionMismatch Dims DirectIndexString Display DivideError DomainError EOFError EachLine Enum Enumerate ErrorException Exception ExponentialBackOff Expr Factorization FileMonitor Float16 Float32 Float64 Function Future GlobalRef GotoNode HTML Hermitian IO IOBuffer IOContext IOStream IPAddr IPv4 IPv6 IndexCartesian IndexLinear IndexStyle InexactError InitError Int Int128 Int16 Int32 Int64 Int8 IntSet Integer InterruptException InvalidStateException Irrational KeyError LabelNode LinSpace LineNumberNode LoadError LowerTriangular MIME Matrix MersenneTwister Method MethodError MethodTable Module NTuple NewvarNode NullException Nullable Number ObjectIdDict OrdinalRange OutOfMemoryError OverflowError Pair ParseError PartialQuickSort PermutedDimsArray Pipe PollingFileWatcher ProcessExitedException Ptr QuoteNode RandomDevice Range RangeIndex Rational RawFD ReadOnlyMemoryError Real ReentrantLock Ref Regex RegexMatch RemoteChannel RemoteException RevString RoundingMode RowVector SSAValue SegmentationFault SerializationState Set SharedArray SharedMatrix SharedVector Signed SimpleVector Slot SlotNumber SparseMatrixCSC SparseVector StackFrame StackOverflowError StackTrace StepRange StepRangeLen StridedArray StridedMatrix StridedVecOrMat StridedVector String SubArray SubString SymTridiagonal Symbol Symmetric SystemError TCPSocket Task Text TextDisplay Timer Tridiagonal Tuple Type TypeError TypeMapEntry TypeMapLevel TypeName TypeVar TypedSlot UDPSocket UInt UInt128 UInt16 UInt32 UInt64 UInt8 UndefRefError UndefVarError UnicodeError UniformScaling Union UnionAll UnitRange Unsigned UpperTriangular Val Vararg VecElement VecOrMat Vector VersionNumber Void WeakKeyDict WeakRef WorkerConfig WorkerPool "},n="[A-Za-z_\\u00A1-\\uFFFF][A-Za-z_0-9\\u00A1-\\uFFFF]*",r={lexemes:n,keywords:t,illegal:/<\//},i={className:"number",begin:/(\b0x[\d_]*(\.[\d_]*)?|0x\.\d[\d_]*)p[-+]?\d+|\b0[box][a-fA-F0-9][a-fA-F0-9_]*|(\b\d[\d_]*(\.[\d_]*)?|\.\d[\d_]*)([eEfF][-+]?\d+)?/,relevance:0},a={className:"string",begin:/'(.|\\[xXuU][a-zA-Z0-9]+)'/},o={className:"subst",begin:/\$\(/,end:/\)/,keywords:t},s={className:"variable",begin:"\\$"+n},l={className:"string",contains:[e.BACKSLASH_ESCAPE,o,s],variants:[{begin:/\w*"""/,end:/"""\w*/,relevance:10},{begin:/\w*"/,end:/"\w*/}]},c={className:"string",contains:[e.BACKSLASH_ESCAPE,o,s],begin:"`",end:"`"},d={className:"meta",begin:"@"+n},u={className:"comment",variants:[{begin:"#=",end:"=#",relevance:10},{begin:"#",end:"$"}]};return r.contains=[i,a,l,c,d,u,e.HASH_COMMENT_MODE,{className:"keyword",begin:"\\b(((abstract|primitive)\\s+)type|(mutable\\s+)?struct)\\b"},{begin:/<:/}],o.contains=r.contains,r}},2266:function(e,t,n){var r=n("825a"),i=n("e95a"),a=n("50c4"),o=n("0366"),s=n("35a1"),l=n("9bdd"),c=function(e,t){this.stopped=e,this.result=t},d=e.exports=function(e,t,n,d,u){var _,p,f,m,h,g,E,S=o(t,n,d?2:1);if(u)_=e;else{if(p=s(e),"function"!=typeof p)throw TypeError("Target is not iterable");if(i(p)){for(f=0,m=a(e.length);m>f;f++)if(h=d?S(r(E=e[f])[0],E[1]):S(e[f]),h&&h instanceof c)return h;return new c(!1)}_=p.call(e)}g=_.next;while(!(E=g.call(_)).done)if(h=l(_,S,E.value,d),"object"==typeof h&&h&&h instanceof c)return h;return new c(!1)};d.stop=function(e){return new c(!0,e)}},"23cb":function(e,t,n){var r=n("a691"),i=Math.max,a=Math.min;e.exports=function(e,t){var n=r(e);return n<0?i(n+t,0):a(n,t)}},"23e7":function(e,t,n){var r=n("da84"),i=n("06cf").f,a=n("9112"),o=n("6eeb"),s=n("ce4e"),l=n("e893"),c=n("94ca");e.exports=function(e,t){var n,d,u,_,p,f,m=e.target,h=e.global,g=e.stat;if(d=h?r:g?r[m]||s(m,{}):(r[m]||{}).prototype,d)for(u in t){if(p=t[u],e.noTargetGet?(f=i(d,u),_=f&&f.value):_=d[u],n=c(h?u:m+(g?".":"#")+u,e.forced),!n&&void 0!==_){if(typeof p===typeof _)continue;l(p,_)}(e.sham||_&&_.sham)&&a(p,"sham",!0),o(d,u,p,e)}}},"241c":function(e,t,n){var r=n("ca84"),i=n("7839"),a=i.concat("length","prototype");t.f=Object.getOwnPropertyNames||function(e){return r(e,a)}},2425:function(e,t){e.exports=function(e){var t={keyword:"module use_module import_module include_module end_module initialise mutable initialize finalize finalise interface implementation pred mode func type inst solver any_pred any_func is semidet det nondet multi erroneous failure cc_nondet cc_multi typeclass instance where pragma promise external trace atomic or_else require_complete_switch require_det require_semidet require_multi require_nondet require_cc_multi require_cc_nondet require_erroneous require_failure",meta:"inline no_inline type_spec source_file fact_table obsolete memo loop_check minimal_model terminates does_not_terminate check_termination promise_equivalent_clauses foreign_proc foreign_decl foreign_code foreign_type foreign_import_module foreign_export_enum foreign_export foreign_enum may_call_mercury will_not_call_mercury thread_safe not_thread_safe maybe_thread_safe promise_pure promise_semipure tabled_for_io local untrailed trailed attach_to_io_state can_pass_as_mercury_type stable will_not_throw_exception may_modify_trail will_not_modify_trail may_duplicate may_not_duplicate affects_liveness does_not_affect_liveness doesnt_affect_liveness no_sharing unknown_sharing sharing",built_in:"some all not if then else true fail false try catch catch_any semidet_true semidet_false semidet_fail impure_true impure semipure"},n=e.COMMENT("%","$"),r={className:"number",begin:"0'.\\|0[box][0-9a-fA-F]*"},i=e.inherit(e.APOS_STRING_MODE,{relevance:0}),a=e.inherit(e.QUOTE_STRING_MODE,{relevance:0}),o={className:"subst",begin:"\\\\[abfnrtv]\\|\\\\x[0-9a-fA-F]*\\\\\\|%[-+# *.0-9]*[dioxXucsfeEgGp]",relevance:0};a.contains=a.contains.slice(),a.contains.push(o);var s={className:"built_in",variants:[{begin:"<=>"},{begin:"<=",relevance:0},{begin:"=>",relevance:0},{begin:"/\\\\"},{begin:"\\\\/"}]},l={className:"built_in",variants:[{begin:":-\\|--\x3e"},{begin:"=",relevance:0}]};return{aliases:["m","moo"],keywords:t,contains:[s,l,n,e.C_BLOCK_COMMENT_MODE,r,e.NUMBER_MODE,i,a,{begin:/:-/},{begin:/\.$/}]}}},2444:function(e,t,n){"use strict";(function(t){var r=n("c532"),i=n("c8af"),a={"Content-Type":"application/x-www-form-urlencoded"};function o(e,t){!r.isUndefined(e)&&r.isUndefined(e["Content-Type"])&&(e["Content-Type"]=t)}function s(){var e;return("undefined"!==typeof XMLHttpRequest||"undefined"!==typeof t&&"[object process]"===Object.prototype.toString.call(t))&&(e=n("b50d")),e}var l={adapter:s(),transformRequest:[function(e,t){return i(t,"Accept"),i(t,"Content-Type"),r.isFormData(e)||r.isArrayBuffer(e)||r.isBuffer(e)||r.isStream(e)||r.isFile(e)||r.isBlob(e)?e:r.isArrayBufferView(e)?e.buffer:r.isURLSearchParams(e)?(o(t,"application/x-www-form-urlencoded;charset=utf-8"),e.toString()):r.isObject(e)?(o(t,"application/json;charset=utf-8"),JSON.stringify(e)):e}],transformResponse:[function(e){if("string"===typeof e)try{e=JSON.parse(e)}catch(t){}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*"}}};r.forEach(["delete","get","head"],(function(e){l.headers[e]={}})),r.forEach(["post","put","patch"],(function(e){l.headers[e]=r.merge(a)})),e.exports=l}).call(this,n("4362"))},2468:function(e,t){e.exports=function(e){var t={className:"comment",begin:/\$noop\(/,end:/\)/,contains:[{begin:/\(/,end:/\)/,contains:["self",{begin:/\\./}]}],relevance:10},n={className:"keyword",begin:/\$(?!noop)[a-zA-Z][_a-zA-Z0-9]*/,end:/\(/,excludeEnd:!0},r={className:"variable",begin:/%[_a-zA-Z0-9:]*/,end:"%"},i={className:"symbol",begin:/\\./};return{contains:[t,n,r,i]}}},2532:function(e,t,n){"use strict";var r=n("23e7"),i=n("5a34"),a=n("1d80"),o=n("ab13");r({target:"String",proto:!0,forced:!o("includes")},{includes:function(e){return!!~String(a(this)).indexOf(i(e),arguments.length>1?arguments[1]:void 0)}})},"25bd":function(e,t){e.exports=function(e){var t="[a-zA-Z_][\\w.]*",n="<\\?(lasso(script)?|=)",r="\\]|\\?>",i={literal:"true false none minimal full all void and or not bw nbw ew new cn ncn lt lte gt gte eq neq rx nrx ft",built_in:"array date decimal duration integer map pair string tag xml null boolean bytes keyword list locale queue set stack staticarray local var variable global data self inherited currentcapture givenblock",keyword:"cache database_names database_schemanames database_tablenames define_tag define_type email_batch encode_set html_comment handle handle_error header if inline iterate ljax_target link link_currentaction link_currentgroup link_currentrecord link_detail link_firstgroup link_firstrecord link_lastgroup link_lastrecord link_nextgroup link_nextrecord link_prevgroup link_prevrecord log loop namespace_using output_none portal private protect records referer referrer repeating resultset rows search_args search_arguments select sort_args sort_arguments thread_atomic value_list while abort case else fail_if fail_ifnot fail if_empty if_false if_null if_true loop_abort loop_continue loop_count params params_up return return_value run_children soap_definetag soap_lastrequest soap_lastresponse tag_name ascending average by define descending do equals frozen group handle_failure import in into join let match max min on order parent protected provide public require returnhome skip split_thread sum take thread to trait type where with yield yieldhome"},a=e.COMMENT("\x3c!--","--\x3e",{relevance:0}),o={className:"meta",begin:"\\[noprocess\\]",starts:{end:"\\[/noprocess\\]",returnEnd:!0,contains:[a]}},s={className:"meta",begin:"\\[/noprocess|"+n},l={className:"symbol",begin:"'"+t+"'"},c=[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.inherit(e.C_NUMBER_MODE,{begin:e.C_NUMBER_RE+"|(-?infinity|NaN)\\b"}),e.inherit(e.APOS_STRING_MODE,{illegal:null}),e.inherit(e.QUOTE_STRING_MODE,{illegal:null}),{className:"string",begin:"`",end:"`"},{variants:[{begin:"[#$]"+t},{begin:"#",end:"\\d+",illegal:"\\W"}]},{className:"type",begin:"::\\s*",end:t,illegal:"\\W"},{className:"params",variants:[{begin:"-(?!infinity)"+t,relevance:0},{begin:"(\\.\\.\\.)"}]},{begin:/(->|\.)\s*/,relevance:0,contains:[l]},{className:"class",beginKeywords:"define",returnEnd:!0,end:"\\(|=>",contains:[e.inherit(e.TITLE_MODE,{begin:t+"(=(?!>))?|[-+*/%](?!>)"})]}];return{aliases:["ls","lassoscript"],case_insensitive:!0,lexemes:t+"|&[lg]t;",keywords:i,contains:[{className:"meta",begin:r,relevance:0,starts:{end:"\\[|"+n,returnEnd:!0,relevance:0,contains:[a]}},o,s,{className:"meta",begin:"\\[no_square_brackets",starts:{end:"\\[/no_square_brackets\\]",lexemes:t+"|&[lg]t;",keywords:i,contains:[{className:"meta",begin:r,relevance:0,starts:{end:"\\[noprocess\\]|"+n,returnEnd:!0,contains:[a]}},o,s].concat(c)}},{className:"meta",begin:"\\[",relevance:0},{className:"meta",begin:"^#!",end:"lasso9$",relevance:10}].concat(c)}}},2626:function(e,t,n){"use strict";var r=n("d066"),i=n("9bf2"),a=n("b622"),o=n("83ab"),s=a("species");e.exports=function(e){var t=r(e),n=i.f;o&&t&&!t[s]&&n(t,s,{configurable:!0,get:function(){return this}})}},2639:function(e,t){e.exports=function(e){var t="ObjectLoader Animate MovieCredits Slides Filters Shading Materials LensFlare Mapping VLCAudioVideo StereoDecoder PointCloud NetworkAccess RemoteControl RegExp ChromaKey Snowfall NodeJS Speech Charts",n={keyword:"if then else do while until for loop import with is as where when by data constant integer real text name boolean symbol infix prefix postfix block tree",literal:"true false nil",built_in:"in mod rem and or xor not abs sign floor ceil sqrt sin cos tan asin acos atan exp expm1 log log2 log10 log1p pi at text_length text_range text_find text_replace contains page slide basic_slide title_slide title subtitle fade_in fade_out fade_at clear_color color line_color line_width texture_wrap texture_transform texture scale_?x scale_?y scale_?z? translate_?x translate_?y translate_?z? rotate_?x rotate_?y rotate_?z? rectangle circle ellipse sphere path line_to move_to quad_to curve_to theme background contents locally time mouse_?x mouse_?y mouse_buttons "+t},r={className:"string",begin:'"',end:'"',illegal:"\\n"},i={className:"string",begin:"'",end:"'",illegal:"\\n"},a={className:"string",begin:"<<",end:">>"},o={className:"number",begin:"[0-9]+#[0-9A-Z_]+(\\.[0-9-A-Z_]+)?#?([Ee][+-]?[0-9]+)?"},s={beginKeywords:"import",end:"$",keywords:n,contains:[r]},l={className:"function",begin:/[a-z][^\n]*->/,returnBegin:!0,end:/->/,contains:[e.inherit(e.TITLE_MODE,{starts:{endsWithParent:!0,keywords:n}})]};return{aliases:["tao"],lexemes:/[a-zA-Z][a-zA-Z0-9_?]*/,keywords:n,contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,r,i,a,l,s,o,e.NUMBER_MODE]}}},"268a":function(e,t){e.exports=function(e){var t="module schema namespace boundary-space preserve no-preserve strip default collation base-uri ordering context decimal-format decimal-separator copy-namespaces empty-sequence except exponent-separator external grouping-separator inherit no-inherit lax minus-sign per-mille percent schema-attribute schema-element strict unordered zero-digit declare import option function validate variable for at in let where order group by return if then else tumbling sliding window start when only end previous next stable ascending descending allowing empty greatest least some every satisfies switch case typeswitch try catch and or to union intersect instance of treat as castable cast map array delete insert into replace value rename copy modify update",n="item document-node node attribute document element comment namespace namespace-node processing-instruction text construction xs:anyAtomicType xs:untypedAtomic xs:duration xs:time xs:decimal xs:float xs:double xs:gYearMonth xs:gYear xs:gMonthDay xs:gMonth xs:gDay xs:boolean xs:base64Binary xs:hexBinary xs:anyURI xs:QName xs:NOTATION xs:dateTime xs:dateTimeStamp xs:date xs:string xs:normalizedString xs:token xs:language xs:NMTOKEN xs:Name xs:NCName xs:ID xs:IDREF xs:ENTITY xs:integer xs:nonPositiveInteger xs:negativeInteger xs:long xs:int xs:short xs:byte xs:nonNegativeInteger xs:unisignedLong xs:unsignedInt xs:unsignedShort xs:unsignedByte xs:positiveInteger xs:yearMonthDuration xs:dayTimeDuration",r="eq ne lt le gt ge is self:: child:: descendant:: descendant-or-self:: attribute:: following:: following-sibling:: parent:: ancestor:: ancestor-or-self:: preceding:: preceding-sibling:: NaN",i={className:"built_in",variants:[{begin:/\barray\:/,end:/(?:append|filter|flatten|fold\-(?:left|right)|for-each(?:\-pair)?|get|head|insert\-before|join|put|remove|reverse|size|sort|subarray|tail)\b/},{begin:/\bmap\:/,end:/(?:contains|entry|find|for\-each|get|keys|merge|put|remove|size)\b/},{begin:/\bmath\:/,end:/(?:a(?:cos|sin|tan[2]?)|cos|exp(?:10)?|log(?:10)?|pi|pow|sin|sqrt|tan)\b/},{begin:/\bop\:/,end:/\(/,excludeEnd:!0},{begin:/\bfn\:/,end:/\(/,excludeEnd:!0},{begin:/[^<\/\$\:'"-]\b(?:abs|accumulator\-(?:after|before)|adjust\-(?:date(?:Time)?|time)\-to\-timezone|analyze\-string|apply|available\-(?:environment\-variables|system\-properties)|avg|base\-uri|boolean|ceiling|codepoints?\-(?:equal|to\-string)|collation\-key|collection|compare|concat|contains(?:\-token)?|copy\-of|count|current(?:\-)?(?:date(?:Time)?|time|group(?:ing\-key)?|output\-uri|merge\-(?:group|key))?data|dateTime|days?\-from\-(?:date(?:Time)?|duration)|deep\-equal|default\-(?:collation|language)|distinct\-values|document(?:\-uri)?|doc(?:\-available)?|element\-(?:available|with\-id)|empty|encode\-for\-uri|ends\-with|environment\-variable|error|escape\-html\-uri|exactly\-one|exists|false|filter|floor|fold\-(?:left|right)|for\-each(?:\-pair)?|format\-(?:date(?:Time)?|time|integer|number)|function\-(?:arity|available|lookup|name)|generate\-id|has\-children|head|hours\-from\-(?:dateTime|duration|time)|id(?:ref)?|implicit\-timezone|in\-scope\-prefixes|index\-of|innermost|insert\-before|iri\-to\-uri|json\-(?:doc|to\-xml)|key|lang|last|load\-xquery\-module|local\-name(?:\-from\-QName)?|(?:lower|upper)\-case|matches|max|minutes\-from\-(?:dateTime|duration|time)|min|months?\-from\-(?:date(?:Time)?|duration)|name(?:space\-uri\-?(?:for\-prefix|from\-QName)?)?|nilled|node\-name|normalize\-(?:space|unicode)|not|number|one\-or\-more|outermost|parse\-(?:ietf\-date|json)|path|position|(?:prefix\-from\-)?QName|random\-number\-generator|regex\-group|remove|replace|resolve\-(?:QName|uri)|reverse|root|round(?:\-half\-to\-even)?|seconds\-from\-(?:dateTime|duration|time)|snapshot|sort|starts\-with|static\-base\-uri|stream\-available|string\-?(?:join|length|to\-codepoints)?|subsequence|substring\-?(?:after|before)?|sum|system\-property|tail|timezone\-from\-(?:date(?:Time)?|time)|tokenize|trace|trans(?:form|late)|true|type\-available|unordered|unparsed\-(?:entity|text)?\-?(?:public\-id|uri|available|lines)?|uri\-collection|xml\-to\-json|years?\-from\-(?:date(?:Time)?|duration)|zero\-or\-one)\b/},{begin:/\blocal\:/,end:/\(/,excludeEnd:!0},{begin:/\bzip\:/,end:/(?:zip\-file|(?:xml|html|text|binary)\-entry| (?:update\-)?entries)\b/},{begin:/\b(?:util|db|functx|app|xdmp|xmldb)\:/,end:/\(/,excludeEnd:!0}]},a={className:"title",begin:/\bxquery version "[13]\.[01]"\s?(?:encoding ".+")?/,end:/;/},o={className:"variable",begin:/[\$][\w-:]+/},s={className:"number",begin:"(\\b0[0-7_]+)|(\\b0x[0-9a-fA-F_]+)|(\\b[1-9][0-9_]*(\\.[0-9_]+)?)|[0_]\\b",relevance:0},l={className:"string",variants:[{begin:/"/,end:/"/,contains:[{begin:/""/,relevance:0}]},{begin:/'/,end:/'/,contains:[{begin:/''/,relevance:0}]}]},c={className:"meta",begin:/%[\w-:]+/},d={className:"comment",begin:"\\(:",end:":\\)",relevance:10,contains:[{className:"doctag",begin:"@\\w+"}]},u={beginKeywords:"element attribute comment document processing-instruction",end:"{",excludeEnd:!0},_={begin:/<([\w\._:\-]+)((\s*.*)=('|").*('|"))?>/,end:/(\/[\w\._:\-]+>)/,subLanguage:"xml",contains:[{begin:"{",end:"}",subLanguage:"xquery"},"self"]},p=[o,i,l,s,d,c,a,u,_];return{aliases:["xpath","xq"],case_insensitive:!1,lexemes:/[a-zA-Z\$][a-zA-Z0-9_:\-]*/,illegal:/(proc)|(abstract)|(extends)|(until)|(#)/,keywords:{keyword:t,type:n,literal:r},contains:p}}},"26bc":function(e,t){e.exports=function(e){var t="([a-zA-Z]|\\.[a-zA-Z.])[a-zA-Z0-9._]*";return{contains:[e.HASH_COMMENT_MODE,{begin:t,lexemes:t,keywords:{keyword:"function if in break next repeat else for return switch while try tryCatch stop warning require library attach detach source setMethod setGeneric setGroupGeneric setClass ...",literal:"NULL NA TRUE FALSE T F Inf NaN NA_integer_|10 NA_real_|10 NA_character_|10 NA_complex_|10"},relevance:0},{className:"number",begin:"0[xX][0-9a-fA-F]+[Li]?\\b",relevance:0},{className:"number",begin:"\\d+(?:[eE][+\\-]?\\d*)?L\\b",relevance:0},{className:"number",begin:"\\d+\\.(?!\\d)(?:i\\b)?",relevance:0},{className:"number",begin:"\\d+(?:\\.\\d*)?(?:[eE][+\\-]?\\d*)?i?\\b",relevance:0},{className:"number",begin:"\\.\\d+(?:[eE][+\\-]?\\d*)?i?\\b",relevance:0},{begin:"`",end:"`",relevance:0},{className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:'"',end:'"'},{begin:"'",end:"'"}]}]}}},2877:function(e,t,n){"use strict";function r(e,t,n,r,i,a,o,s){var l,c="function"===typeof e?e.options:e;if(t&&(c.render=t,c.staticRenderFns=n,c._compiled=!0),r&&(c.functional=!0),a&&(c._scopeId="data-v-"+a),o?(l=function(e){e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext,e||"undefined"===typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),i&&i.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(o)},c._ssrRegister=l):i&&(l=s?function(){i.call(this,(c.functional?this.parent:this).$root.$options.shadowRoot)}:i),l)if(c.functional){c._injectStyles=l;var d=c.render;c.render=function(e,t){return l.call(t),d(e,t)}}else{var u=c.beforeCreate;c.beforeCreate=u?[].concat(u,l):[l]}return{exports:e,options:c}}n.d(t,"a",(function(){return r}))},"28ad":function(e,t){e.exports=function(e){var t={className:"subst",begin:/\\[tn"\\]/},n={className:"string",begin:'"',end:'"',contains:[t]},r={className:"number",begin:e.C_NUMBER_RE},i={className:"literal",variants:[{begin:"\\b(?:PI|TWO_PI|PI_BY_TWO|DEG_TO_RAD|RAD_TO_DEG|SQRT2)\\b"},{begin:"\\b(?:XP_ERROR_(?:EXPERIENCES_DISABLED|EXPERIENCE_(?:DISABLED|SUSPENDED)|INVALID_(?:EXPERIENCE|PARAMETERS)|KEY_NOT_FOUND|MATURITY_EXCEEDED|NONE|NOT_(?:FOUND|PERMITTED(?:_LAND)?)|NO_EXPERIENCE|QUOTA_EXCEEDED|RETRY_UPDATE|STORAGE_EXCEPTION|STORE_DISABLED|THROTTLED|UNKNOWN_ERROR)|JSON_APPEND|STATUS_(?:PHYSICS|ROTATE_[XYZ]|PHANTOM|SANDBOX|BLOCK_GRAB(?:_OBJECT)?|(?:DIE|RETURN)_AT_EDGE|CAST_SHADOWS|OK|MALFORMED_PARAMS|TYPE_MISMATCH|BOUNDS_ERROR|NOT_(?:FOUND|SUPPORTED)|INTERNAL_ERROR|WHITELIST_FAILED)|AGENT(?:_(?:BY_(?:LEGACY_|USER)NAME|FLYING|ATTACHMENTS|SCRIPTED|MOUSELOOK|SITTING|ON_OBJECT|AWAY|WALKING|IN_AIR|TYPING|CROUCHING|BUSY|ALWAYS_RUN|AUTOPILOT|LIST_(?:PARCEL(?:_OWNER)?|REGION)))?|CAMERA_(?:PITCH|DISTANCE|BEHINDNESS_(?:ANGLE|LAG)|(?:FOCUS|POSITION)(?:_(?:THRESHOLD|LOCKED|LAG))?|FOCUS_OFFSET|ACTIVE)|ANIM_ON|LOOP|REVERSE|PING_PONG|SMOOTH|ROTATE|SCALE|ALL_SIDES|LINK_(?:ROOT|SET|ALL_(?:OTHERS|CHILDREN)|THIS)|ACTIVE|PASS(?:IVE|_(?:ALWAYS|IF_NOT_HANDLED|NEVER))|SCRIPTED|CONTROL_(?:FWD|BACK|(?:ROT_)?(?:LEFT|RIGHT)|UP|DOWN|(?:ML_)?LBUTTON)|PERMISSION_(?:RETURN_OBJECTS|DEBIT|OVERRIDE_ANIMATIONS|SILENT_ESTATE_MANAGEMENT|TAKE_CONTROLS|TRIGGER_ANIMATION|ATTACH|CHANGE_LINKS|(?:CONTROL|TRACK)_CAMERA|TELEPORT)|INVENTORY_(?:TEXTURE|SOUND|OBJECT|SCRIPT|LANDMARK|CLOTHING|NOTECARD|BODYPART|ANIMATION|GESTURE|ALL|NONE)|CHANGED_(?:INVENTORY|COLOR|SHAPE|SCALE|TEXTURE|LINK|ALLOWED_DROP|OWNER|REGION(?:_START)?|TELEPORT|MEDIA)|OBJECT_(?:CLICK_ACTION|HOVER_HEIGHT|LAST_OWNER_ID|(?:PHYSICS|SERVER|STREAMING)_COST|UNKNOWN_DETAIL|CHARACTER_TIME|PHANTOM|PHYSICS|TEMP_(?:ATTACHED|ON_REZ)|NAME|DESC|POS|PRIM_(?:COUNT|EQUIVALENCE)|RETURN_(?:PARCEL(?:_OWNER)?|REGION)|REZZER_KEY|ROO?T|VELOCITY|OMEGA|OWNER|GROUP(?:_TAG)?|CREATOR|ATTACHED_(?:POINT|SLOTS_AVAILABLE)|RENDER_WEIGHT|(?:BODY_SHAPE|PATHFINDING)_TYPE|(?:RUNNING|TOTAL)_SCRIPT_COUNT|TOTAL_INVENTORY_COUNT|SCRIPT_(?:MEMORY|TIME))|TYPE_(?:INTEGER|FLOAT|STRING|KEY|VECTOR|ROTATION|INVALID)|(?:DEBUG|PUBLIC)_CHANNEL|ATTACH_(?:AVATAR_CENTER|CHEST|HEAD|BACK|PELVIS|MOUTH|CHIN|NECK|NOSE|BELLY|[LR](?:SHOULDER|HAND|FOOT|EAR|EYE|[UL](?:ARM|LEG)|HIP)|(?:LEFT|RIGHT)_PEC|HUD_(?:CENTER_[12]|TOP_(?:RIGHT|CENTER|LEFT)|BOTTOM(?:_(?:RIGHT|LEFT))?)|[LR]HAND_RING1|TAIL_(?:BASE|TIP)|[LR]WING|FACE_(?:JAW|[LR]EAR|[LR]EYE|TOUNGE)|GROIN|HIND_[LR]FOOT)|LAND_(?:LEVEL|RAISE|LOWER|SMOOTH|NOISE|REVERT)|DATA_(?:ONLINE|NAME|BORN|SIM_(?:POS|STATUS|RATING)|PAYINFO)|PAYMENT_INFO_(?:ON_FILE|USED)|REMOTE_DATA_(?:CHANNEL|REQUEST|REPLY)|PSYS_(?:PART_(?:BF_(?:ZERO|ONE(?:_MINUS_(?:DEST_COLOR|SOURCE_(ALPHA|COLOR)))?|DEST_COLOR|SOURCE_(ALPHA|COLOR))|BLEND_FUNC_(DEST|SOURCE)|FLAGS|(?:START|END)_(?:COLOR|ALPHA|SCALE|GLOW)|MAX_AGE|(?:RIBBON|WIND|INTERP_(?:COLOR|SCALE)|BOUNCE|FOLLOW_(?:SRC|VELOCITY)|TARGET_(?:POS|LINEAR)|EMISSIVE)_MASK)|SRC_(?:MAX_AGE|PATTERN|ANGLE_(?:BEGIN|END)|BURST_(?:RATE|PART_COUNT|RADIUS|SPEED_(?:MIN|MAX))|ACCEL|TEXTURE|TARGET_KEY|OMEGA|PATTERN_(?:DROP|EXPLODE|ANGLE(?:_CONE(?:_EMPTY)?)?)))|VEHICLE_(?:REFERENCE_FRAME|TYPE_(?:NONE|SLED|CAR|BOAT|AIRPLANE|BALLOON)|(?:LINEAR|ANGULAR)_(?:FRICTION_TIMESCALE|MOTOR_DIRECTION)|LINEAR_MOTOR_OFFSET|HOVER_(?:HEIGHT|EFFICIENCY|TIMESCALE)|BUOYANCY|(?:LINEAR|ANGULAR)_(?:DEFLECTION_(?:EFFICIENCY|TIMESCALE)|MOTOR_(?:DECAY_)?TIMESCALE)|VERTICAL_ATTRACTION_(?:EFFICIENCY|TIMESCALE)|BANKING_(?:EFFICIENCY|MIX|TIMESCALE)|FLAG_(?:NO_DEFLECTION_UP|LIMIT_(?:ROLL_ONLY|MOTOR_UP)|HOVER_(?:(?:WATER|TERRAIN|UP)_ONLY|GLOBAL_HEIGHT)|MOUSELOOK_(?:STEER|BANK)|CAMERA_DECOUPLED))|PRIM_(?:ALLOW_UNSIT|ALPHA_MODE(?:_(?:BLEND|EMISSIVE|MASK|NONE))?|NORMAL|SPECULAR|TYPE(?:_(?:BOX|CYLINDER|PRISM|SPHERE|TORUS|TUBE|RING|SCULPT))?|HOLE_(?:DEFAULT|CIRCLE|SQUARE|TRIANGLE)|MATERIAL(?:_(?:STONE|METAL|GLASS|WOOD|FLESH|PLASTIC|RUBBER))?|SHINY_(?:NONE|LOW|MEDIUM|HIGH)|BUMP_(?:NONE|BRIGHT|DARK|WOOD|BARK|BRICKS|CHECKER|CONCRETE|TILE|STONE|DISKS|GRAVEL|BLOBS|SIDING|LARGETILE|STUCCO|SUCTION|WEAVE)|TEXGEN_(?:DEFAULT|PLANAR)|SCRIPTED_SIT_ONLY|SCULPT_(?:TYPE_(?:SPHERE|TORUS|PLANE|CYLINDER|MASK)|FLAG_(?:MIRROR|INVERT))|PHYSICS(?:_(?:SHAPE_(?:CONVEX|NONE|PRIM|TYPE)))?|(?:POS|ROT)_LOCAL|SLICE|TEXT|FLEXIBLE|POINT_LIGHT|TEMP_ON_REZ|PHANTOM|POSITION|SIT_TARGET|SIZE|ROTATION|TEXTURE|NAME|OMEGA|DESC|LINK_TARGET|COLOR|BUMP_SHINY|FULLBRIGHT|TEXGEN|GLOW|MEDIA_(?:ALT_IMAGE_ENABLE|CONTROLS|(?:CURRENT|HOME)_URL|AUTO_(?:LOOP|PLAY|SCALE|ZOOM)|FIRST_CLICK_INTERACT|(?:WIDTH|HEIGHT)_PIXELS|WHITELIST(?:_ENABLE)?|PERMS_(?:INTERACT|CONTROL)|PARAM_MAX|CONTROLS_(?:STANDARD|MINI)|PERM_(?:NONE|OWNER|GROUP|ANYONE)|MAX_(?:URL_LENGTH|WHITELIST_(?:SIZE|COUNT)|(?:WIDTH|HEIGHT)_PIXELS)))|MASK_(?:BASE|OWNER|GROUP|EVERYONE|NEXT)|PERM_(?:TRANSFER|MODIFY|COPY|MOVE|ALL)|PARCEL_(?:MEDIA_COMMAND_(?:STOP|PAUSE|PLAY|LOOP|TEXTURE|URL|TIME|AGENT|UNLOAD|AUTO_ALIGN|TYPE|SIZE|DESC|LOOP_SET)|FLAG_(?:ALLOW_(?:FLY|(?:GROUP_)?SCRIPTS|LANDMARK|TERRAFORM|DAMAGE|CREATE_(?:GROUP_)?OBJECTS)|USE_(?:ACCESS_(?:GROUP|LIST)|BAN_LIST|LAND_PASS_LIST)|LOCAL_SOUND_ONLY|RESTRICT_PUSHOBJECT|ALLOW_(?:GROUP|ALL)_OBJECT_ENTRY)|COUNT_(?:TOTAL|OWNER|GROUP|OTHER|SELECTED|TEMP)|DETAILS_(?:NAME|DESC|OWNER|GROUP|AREA|ID|SEE_AVATARS))|LIST_STAT_(?:MAX|MIN|MEAN|MEDIAN|STD_DEV|SUM(?:_SQUARES)?|NUM_COUNT|GEOMETRIC_MEAN|RANGE)|PAY_(?:HIDE|DEFAULT)|REGION_FLAG_(?:ALLOW_DAMAGE|FIXED_SUN|BLOCK_TERRAFORM|SANDBOX|DISABLE_(?:COLLISIONS|PHYSICS)|BLOCK_FLY|ALLOW_DIRECT_TELEPORT|RESTRICT_PUSHOBJECT)|HTTP_(?:METHOD|MIMETYPE|BODY_(?:MAXLENGTH|TRUNCATED)|CUSTOM_HEADER|PRAGMA_NO_CACHE|VERBOSE_THROTTLE|VERIFY_CERT)|SIT_(?:INVALID_(?:AGENT|LINK_OBJECT)|NO(?:T_EXPERIENCE|_(?:ACCESS|EXPERIENCE_PERMISSION|SIT_TARGET)))|STRING_(?:TRIM(?:_(?:HEAD|TAIL))?)|CLICK_ACTION_(?:NONE|TOUCH|SIT|BUY|PAY|OPEN(?:_MEDIA)?|PLAY|ZOOM)|TOUCH_INVALID_FACE|PROFILE_(?:NONE|SCRIPT_MEMORY)|RC_(?:DATA_FLAGS|DETECT_PHANTOM|GET_(?:LINK_NUM|NORMAL|ROOT_KEY)|MAX_HITS|REJECT_(?:TYPES|AGENTS|(?:NON)?PHYSICAL|LAND))|RCERR_(?:CAST_TIME_EXCEEDED|SIM_PERF_LOW|UNKNOWN)|ESTATE_ACCESS_(?:ALLOWED_(?:AGENT|GROUP)_(?:ADD|REMOVE)|BANNED_AGENT_(?:ADD|REMOVE))|DENSITY|FRICTION|RESTITUTION|GRAVITY_MULTIPLIER|KFM_(?:COMMAND|CMD_(?:PLAY|STOP|PAUSE)|MODE|FORWARD|LOOP|PING_PONG|REVERSE|DATA|ROTATION|TRANSLATION)|ERR_(?:GENERIC|PARCEL_PERMISSIONS|MALFORMED_PARAMS|RUNTIME_PERMISSIONS|THROTTLED)|CHARACTER_(?:CMD_(?:(?:SMOOTH_)?STOP|JUMP)|DESIRED_(?:TURN_)?SPEED|RADIUS|STAY_WITHIN_PARCEL|LENGTH|ORIENTATION|ACCOUNT_FOR_SKIPPED_FRAMES|AVOIDANCE_MODE|TYPE(?:_(?:[ABCD]|NONE))?|MAX_(?:DECEL|TURN_RADIUS|(?:ACCEL|SPEED)))|PURSUIT_(?:OFFSET|FUZZ_FACTOR|GOAL_TOLERANCE|INTERCEPT)|REQUIRE_LINE_OF_SIGHT|FORCE_DIRECT_PATH|VERTICAL|HORIZONTAL|AVOID_(?:CHARACTERS|DYNAMIC_OBSTACLES|NONE)|PU_(?:EVADE_(?:HIDDEN|SPOTTED)|FAILURE_(?:DYNAMIC_PATHFINDING_DISABLED|INVALID_(?:GOAL|START)|NO_(?:NAVMESH|VALID_DESTINATION)|OTHER|TARGET_GONE|(?:PARCEL_)?UNREACHABLE)|(?:GOAL|SLOWDOWN_DISTANCE)_REACHED)|TRAVERSAL_TYPE(?:_(?:FAST|NONE|SLOW))?|CONTENT_TYPE_(?:ATOM|FORM|HTML|JSON|LLSD|RSS|TEXT|XHTML|XML)|GCNP_(?:RADIUS|STATIC)|(?:PATROL|WANDER)_PAUSE_AT_WAYPOINTS|OPT_(?:AVATAR|CHARACTER|EXCLUSION_VOLUME|LEGACY_LINKSET|MATERIAL_VOLUME|OTHER|STATIC_OBSTACLE|WALKABLE)|SIM_STAT_PCT_CHARS_STEPPED)\\b"},{begin:"\\b(?:FALSE|TRUE)\\b"},{begin:"\\b(?:ZERO_ROTATION)\\b"},{begin:"\\b(?:EOF|JSON_(?:ARRAY|DELETE|FALSE|INVALID|NULL|NUMBER|OBJECT|STRING|TRUE)|NULL_KEY|TEXTURE_(?:BLANK|DEFAULT|MEDIA|PLYWOOD|TRANSPARENT)|URL_REQUEST_(?:GRANTED|DENIED))\\b"},{begin:"\\b(?:ZERO_VECTOR|TOUCH_INVALID_(?:TEXCOORD|VECTOR))\\b"}]},a={className:"built_in",begin:"\\b(?:ll(?:AgentInExperience|(?:Create|DataSize|Delete|KeyCount|Keys|Read|Update)KeyValue|GetExperience(?:Details|ErrorMessage)|ReturnObjectsBy(?:ID|Owner)|Json(?:2List|[GS]etValue|ValueType)|Sin|Cos|Tan|Atan2|Sqrt|Pow|Abs|Fabs|Frand|Floor|Ceil|Round|Vec(?:Mag|Norm|Dist)|Rot(?:Between|2(?:Euler|Fwd|Left|Up))|(?:Euler|Axes)2Rot|Whisper|(?:Region|Owner)?Say|Shout|Listen(?:Control|Remove)?|Sensor(?:Repeat|Remove)?|Detected(?:Name|Key|Owner|Type|Pos|Vel|Grab|Rot|Group|LinkNumber)|Die|Ground|Wind|(?:[GS]et)(?:AnimationOverride|MemoryLimit|PrimMediaParams|ParcelMusicURL|Object(?:Desc|Name)|PhysicsMaterial|Status|Scale|Color|Alpha|Texture|Pos|Rot|Force|Torque)|ResetAnimationOverride|(?:Scale|Offset|Rotate)Texture|(?:Rot)?Target(?:Remove)?|(?:Stop)?MoveToTarget|Apply(?:Rotational)?Impulse|Set(?:KeyframedMotion|ContentType|RegionPos|(?:Angular)?Velocity|Buoyancy|HoverHeight|ForceAndTorque|TimerEvent|ScriptState|Damage|TextureAnim|Sound(?:Queueing|Radius)|Vehicle(?:Type|(?:Float|Vector|Rotation)Param)|(?:Touch|Sit)?Text|Camera(?:Eye|At)Offset|PrimitiveParams|ClickAction|Link(?:Alpha|Color|PrimitiveParams(?:Fast)?|Texture(?:Anim)?|Camera|Media)|RemoteScriptAccessPin|PayPrice|LocalRot)|ScaleByFactor|Get(?:(?:Max|Min)ScaleFactor|ClosestNavPoint|StaticPath|SimStats|Env|PrimitiveParams|Link(?:PrimitiveParams|Number(?:OfSides)?|Key|Name|Media)|HTTPHeader|FreeURLs|Object(?:Details|PermMask|PrimCount)|Parcel(?:MaxPrims|Details|Prim(?:Count|Owners))|Attached(?:List)?|(?:SPMax|Free|Used)Memory|Region(?:Name|TimeDilation|FPS|Corner|AgentCount)|Root(?:Position|Rotation)|UnixTime|(?:Parcel|Region)Flags|(?:Wall|GMT)clock|SimulatorHostname|BoundingBox|GeometricCenter|Creator|NumberOf(?:Prims|NotecardLines|Sides)|Animation(?:List)?|(?:Camera|Local)(?:Pos|Rot)|Vel|Accel|Omega|Time(?:stamp|OfDay)|(?:Object|CenterOf)?Mass|MassMKS|Energy|Owner|(?:Owner)?Key|SunDirection|Texture(?:Offset|Scale|Rot)|Inventory(?:Number|Name|Key|Type|Creator|PermMask)|Permissions(?:Key)?|StartParameter|List(?:Length|EntryType)|Date|Agent(?:Size|Info|Language|List)|LandOwnerAt|NotecardLine|Script(?:Name|State))|(?:Get|Reset|GetAndReset)Time|PlaySound(?:Slave)?|LoopSound(?:Master|Slave)?|(?:Trigger|Stop|Preload)Sound|(?:(?:Get|Delete)Sub|Insert)String|To(?:Upper|Lower)|Give(?:InventoryList|Money)|RezObject|(?:Stop)?LookAt|Sleep|CollisionFilter|(?:Take|Release)Controls|DetachFromAvatar|AttachToAvatar(?:Temp)?|InstantMessage|(?:GetNext)?Email|StopHover|MinEventDelay|RotLookAt|String(?:Length|Trim)|(?:Start|Stop)Animation|TargetOmega|Request(?:Experience)?Permissions|(?:Create|Break)Link|BreakAllLinks|(?:Give|Remove)Inventory|Water|PassTouches|Request(?:Agent|Inventory)Data|TeleportAgent(?:Home|GlobalCoords)?|ModifyLand|CollisionSound|ResetScript|MessageLinked|PushObject|PassCollisions|AxisAngle2Rot|Rot2(?:Axis|Angle)|A(?:cos|sin)|AngleBetween|AllowInventoryDrop|SubStringIndex|List2(?:CSV|Integer|Json|Float|String|Key|Vector|Rot|List(?:Strided)?)|DeleteSubList|List(?:Statistics|Sort|Randomize|(?:Insert|Find|Replace)List)|EdgeOfWorld|AdjustSoundVolume|Key2Name|TriggerSoundLimited|EjectFromLand|(?:CSV|ParseString)2List|OverMyLand|SameGroup|UnSit|Ground(?:Slope|Normal|Contour)|GroundRepel|(?:Set|Remove)VehicleFlags|SitOnLink|(?:AvatarOn)?(?:Link)?SitTarget|Script(?:Danger|Profiler)|Dialog|VolumeDetect|ResetOtherScript|RemoteLoadScriptPin|(?:Open|Close)RemoteDataChannel|SendRemoteData|RemoteDataReply|(?:Integer|String)ToBase64|XorBase64|Log(?:10)?|Base64To(?:String|Integer)|ParseStringKeepNulls|RezAtRoot|RequestSimulatorData|ForceMouselook|(?:Load|Release|(?:E|Une)scape)URL|ParcelMedia(?:CommandList|Query)|ModPow|MapDestination|(?:RemoveFrom|AddTo|Reset)Land(?:Pass|Ban)List|(?:Set|Clear)CameraParams|HTTP(?:Request|Response)|TextBox|DetectedTouch(?:UV|Face|Pos|(?:N|Bin)ormal|ST)|(?:MD5|SHA1|DumpList2)String|Request(?:Secure)?URL|Clear(?:Prim|Link)Media|(?:Link)?ParticleSystem|(?:Get|Request)(?:Username|DisplayName)|RegionSayTo|CastRay|GenerateKey|TransferLindenDollars|ManageEstateAccess|(?:Create|Delete)Character|ExecCharacterCmd|Evade|FleeFrom|NavigateTo|PatrolPoints|Pursue|UpdateCharacter|WanderWithin))\\b"};return{illegal:":",contains:[n,{className:"comment",variants:[e.COMMENT("//","$"),e.COMMENT("/\\*","\\*/")],relevance:0},r,{className:"section",variants:[{begin:"\\b(?:state|default)\\b"},{begin:"\\b(?:state_(?:entry|exit)|touch(?:_(?:start|end))?|(?:land_)?collision(?:_(?:start|end))?|timer|listen|(?:no_)?sensor|control|(?:not_)?at_(?:rot_)?target|money|email|experience_permissions(?:_denied)?|run_time_permissions|changed|attach|dataserver|moving_(?:start|end)|link_message|(?:on|object)_rez|remote_data|http_re(?:sponse|quest)|path_update|transaction_result)\\b"}]},a,i,{className:"type",begin:"\\b(?:integer|float|string|key|vector|quaternion|rotation|list)\\b"}]}}},2907:function(e,t){e.exports=function(e){var t={begin:"\\$+[a-zA-Z_-ΓΏ][a-zA-Z0-9_-ΓΏ]*"},n={className:"meta",begin:/<\?(php)?|\?>/},r={className:"string",contains:[e.BACKSLASH_ESCAPE,n],variants:[{begin:'b"',end:'"'},{begin:"b'",end:"'"},e.inherit(e.APOS_STRING_MODE,{illegal:null}),e.inherit(e.QUOTE_STRING_MODE,{illegal:null})]},i={variants:[e.BINARY_NUMBER_MODE,e.C_NUMBER_MODE]};return{aliases:["php","php3","php4","php5","php6","php7"],case_insensitive:!0,keywords:"and include_once list abstract global private echo interface as static endswitch array null if endwhile or const for endforeach self var while isset public protected exit foreach throw elseif include __FILE__ empty require_once do xor return parent clone use __CLASS__ __LINE__ else break print eval new catch __METHOD__ case exception default die require __FUNCTION__ enddeclare final try switch continue endfor endif declare unset true false trait goto instanceof insteadof __DIR__ __NAMESPACE__ yield finally",contains:[e.HASH_COMMENT_MODE,e.COMMENT("//","$",{contains:[n]}),e.COMMENT("/\\*","\\*/",{contains:[{className:"doctag",begin:"@[A-Za-z]+"}]}),e.COMMENT("__halt_compiler.+?;",!1,{endsWithParent:!0,keywords:"__halt_compiler",lexemes:e.UNDERSCORE_IDENT_RE}),{className:"string",begin:/<<<['"]?\w+['"]?$/,end:/^\w+;?$/,contains:[e.BACKSLASH_ESCAPE,{className:"subst",variants:[{begin:/\$\w+/},{begin:/\{\$/,end:/\}/}]}]},n,{className:"keyword",begin:/\$this\b/},t,{begin:/(::|->)+[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/},{className:"function",beginKeywords:"function",end:/[;{]/,excludeEnd:!0,illegal:"\\$|\\[|%",contains:[e.UNDERSCORE_TITLE_MODE,{className:"params",begin:"\\(",end:"\\)",contains:["self",t,e.C_BLOCK_COMMENT_MODE,r,i]}]},{className:"class",beginKeywords:"class interface",end:"{",excludeEnd:!0,illegal:/[:\(\$"]/,contains:[{beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE]},{beginKeywords:"namespace",end:";",illegal:/[\.']/,contains:[e.UNDERSCORE_TITLE_MODE]},{beginKeywords:"use",end:";",contains:[e.UNDERSCORE_TITLE_MODE]},{begin:"=>"},r,i]}}},"294a":function(e,t){e.exports=function(e){var t="(_*[ui](8|16|32|64|128))?",n="(_*f(32|64))?",r="[a-zA-Z_]\\w*[!?=]?",i="[a-zA-Z_]\\w*[!?=]?|[-+~]\\@|<<|>>|[=!]~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~|]|//|//=|&[-+*]=?|&\\*\\*|\\[\\][=?]?",a="[A-Za-z_]\\w*(::\\w+)*(\\?|\\!)?",o={keyword:"abstract alias annotation as as? asm begin break case class def do else elsif end ensure enum extend for fun if include instance_sizeof is_a? lib macro module next nil? of out pointerof private protected rescue responds_to? return require select self sizeof struct super then type typeof union uninitialized unless until verbatim when while with yield __DIR__ __END_LINE__ __FILE__ __LINE__",literal:"false nil true"},s={className:"subst",begin:"#{",end:"}",keywords:o},l={className:"template-variable",variants:[{begin:"\\{\\{",end:"\\}\\}"},{begin:"\\{%",end:"%\\}"}],keywords:o};function c(e,t){var n=[{begin:e,end:t}];return n[0].contains=n,n}var d={className:"string",contains:[e.BACKSLASH_ESCAPE,s],variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/`/,end:/`/},{begin:"%[Qwi]?\\(",end:"\\)",contains:c("\\(","\\)")},{begin:"%[Qwi]?\\[",end:"\\]",contains:c("\\[","\\]")},{begin:"%[Qwi]?{",end:"}",contains:c("{","}")},{begin:"%[Qwi]?<",end:">",contains:c("<",">")},{begin:"%[Qwi]?\\|",end:"\\|"},{begin:/<<-\w+$/,end:/^\s*\w+$/}],relevance:0},u={className:"string",variants:[{begin:"%q\\(",end:"\\)",contains:c("\\(","\\)")},{begin:"%q\\[",end:"\\]",contains:c("\\[","\\]")},{begin:"%q{",end:"}",contains:c("{","}")},{begin:"%q<",end:">",contains:c("<",">")},{begin:"%q\\|",end:"\\|"},{begin:/<<-'\w+'$/,end:/^\s*\w+$/}],relevance:0},_={begin:"(?!%})("+e.RE_STARTERS_RE+"|\\n|\\b(case|if|select|unless|until|when|while)\\b)\\s*",keywords:"case if select unless until when while",contains:[{className:"regexp",contains:[e.BACKSLASH_ESCAPE,s],variants:[{begin:"//[a-z]*",relevance:0},{begin:"/(?!\\/)",end:"/[a-z]*"}]}],relevance:0},p={className:"regexp",contains:[e.BACKSLASH_ESCAPE,s],variants:[{begin:"%r\\(",end:"\\)",contains:c("\\(","\\)")},{begin:"%r\\[",end:"\\]",contains:c("\\[","\\]")},{begin:"%r{",end:"}",contains:c("{","}")},{begin:"%r<",end:">",contains:c("<",">")},{begin:"%r\\|",end:"\\|"}],relevance:0},f={className:"meta",begin:"@\\[",end:"\\]",contains:[e.inherit(e.QUOTE_STRING_MODE,{className:"meta-string"})]},m=[l,d,u,p,_,f,e.HASH_COMMENT_MODE,{className:"class",beginKeywords:"class module struct",end:"$|;",illegal:/=/,contains:[e.HASH_COMMENT_MODE,e.inherit(e.TITLE_MODE,{begin:a}),{begin:"<"}]},{className:"class",beginKeywords:"lib enum union",end:"$|;",illegal:/=/,contains:[e.HASH_COMMENT_MODE,e.inherit(e.TITLE_MODE,{begin:a})],relevance:10},{beginKeywords:"annotation",end:"$|;",illegal:/=/,contains:[e.HASH_COMMENT_MODE,e.inherit(e.TITLE_MODE,{begin:a})],relevance:10},{className:"function",beginKeywords:"def",end:/\B\b/,contains:[e.inherit(e.TITLE_MODE,{begin:i,endsParent:!0})]},{className:"function",beginKeywords:"fun macro",end:/\B\b/,contains:[e.inherit(e.TITLE_MODE,{begin:i,endsParent:!0})],relevance:5},{className:"symbol",begin:e.UNDERSCORE_IDENT_RE+"(\\!|\\?)?:",relevance:0},{className:"symbol",begin:":",contains:[d,{begin:i}],relevance:0},{className:"number",variants:[{begin:"\\b0b([01_]+)"+t},{begin:"\\b0o([0-7_]+)"+t},{begin:"\\b0x([A-Fa-f0-9_]+)"+t},{begin:"\\b([1-9][0-9_]*[0-9]|[0-9])(\\.[0-9][0-9_]*)?([eE]_*[-+]?[0-9_]*)?"+n+"(?!_)"},{begin:"\\b([1-9][0-9_]*|0)"+t}],relevance:0}];return s.contains=m,l.contains=m.slice(1),{aliases:["cr"],lexemes:r,keywords:o,contains:m}}},"29c8":function(e,t){e.exports=function(e){var t={className:"tag",begin:/\\/,relevance:0,contains:[{className:"name",variants:[{begin:/[a-zA-Z\u0430-\u044f\u0410-\u042f]+[*]?/},{begin:/[^a-zA-Z\u0430-\u044f\u0410-\u042f0-9]/}],starts:{endsWithParent:!0,relevance:0,contains:[{className:"string",variants:[{begin:/\[/,end:/\]/},{begin:/\{/,end:/\}/}]},{begin:/\s*=\s*/,endsWithParent:!0,relevance:0,contains:[{className:"number",begin:/-?\d*\.?\d+(pt|pc|mm|cm|in|dd|cc|ex|em)?/}]}]}}]};return{contains:[t,{className:"formula",contains:[t],relevance:0,variants:[{begin:/\$\$/,end:/\$\$/},{begin:/\$/,end:/\$/}]},e.COMMENT("%","$",{relevance:0})]}}},"2a39":function(e,t){e.exports=function(e){var t={keyword:"#available #colorLiteral #column #else #elseif #endif #file #fileLiteral #function #if #imageLiteral #line #selector #sourceLocation _ __COLUMN__ __FILE__ __FUNCTION__ __LINE__ Any as as! as? associatedtype associativity break case catch class continue convenience default defer deinit didSet do dynamic dynamicType else enum extension fallthrough false fileprivate final for func get guard if import in indirect infix init inout internal is lazy left let mutating nil none nonmutating open operator optional override postfix precedence prefix private protocol Protocol public repeat required rethrows return right self Self set static struct subscript super switch throw throws true try try! try? Type typealias unowned var weak where while willSet",literal:"true false nil",built_in:"abs advance alignof alignofValue anyGenerator assert assertionFailure bridgeFromObjectiveC bridgeFromObjectiveCUnconditional bridgeToObjectiveC bridgeToObjectiveCUnconditional c contains count countElements countLeadingZeros debugPrint debugPrintln distance dropFirst dropLast dump encodeBitsAsWords enumerate equal fatalError filter find getBridgedObjectiveCType getVaList indices insertionSort isBridgedToObjectiveC isBridgedVerbatimToObjectiveC isUniquelyReferenced isUniquelyReferencedNonObjC join lazy lexicographicalCompare map max maxElement min minElement numericCast overlaps partition posix precondition preconditionFailure print println quickSort readLine reduce reflect reinterpretCast reverse roundUpToAlignment sizeof sizeofValue sort split startsWith stride strideof strideofValue swap toString transcode underestimateCount unsafeAddressOf unsafeBitCast unsafeDowncast unsafeUnwrap unsafeReflect withExtendedLifetime withObjectAtPlusZero withUnsafePointer withUnsafePointerToObject withUnsafeMutablePointer withUnsafeMutablePointers withUnsafePointer withUnsafePointers withVaList zip"},n={className:"type",begin:"\\b[A-Z][\\wΓ€-ΚΈ']*",relevance:0},r={className:"type",begin:"\\b[A-Z][\\wΓ€-ΚΈ']*[!?]"},i=e.COMMENT("/\\*","\\*/",{contains:["self"]}),a={className:"subst",begin:/\\\(/,end:"\\)",keywords:t,contains:[]},o={className:"string",contains:[e.BACKSLASH_ESCAPE,a],variants:[{begin:/"""/,end:/"""/},{begin:/"/,end:/"/}]},s={className:"number",begin:"\\b([\\d_]+(\\.[\\deE_]+)?|0x[a-fA-F0-9_]+(\\.[a-fA-F0-9p_]+)?|0b[01_]+|0o[0-7_]+)\\b",relevance:0};return a.contains=[s],{keywords:t,contains:[o,e.C_LINE_COMMENT_MODE,i,r,n,s,{className:"function",beginKeywords:"func",end:"{",excludeEnd:!0,contains:[e.inherit(e.TITLE_MODE,{begin:/[A-Za-z$_][0-9A-Za-z$_]*/}),{begin://},{className:"params",begin:/\(/,end:/\)/,endsParent:!0,keywords:t,contains:["self",s,o,e.C_BLOCK_COMMENT_MODE,{begin:":"}],illegal:/["']/}],illegal:/\[|%/},{className:"class",beginKeywords:"struct protocol class extension enum",keywords:t,end:"\\{",excludeEnd:!0,contains:[e.inherit(e.TITLE_MODE,{begin:/[A-Za-z$_][\u00C0-\u02B80-9A-Za-z$_]*/})]},{className:"meta",begin:"(@discardableResult|@warn_unused_result|@exported|@lazy|@noescape|@NSCopying|@NSManaged|@objc|@objcMembers|@convention|@required|@noreturn|@IBAction|@IBDesignable|@IBInspectable|@IBOutlet|@infix|@prefix|@postfix|@autoclosure|@testable|@available|@nonobjc|@NSApplicationMain|@UIApplicationMain|@dynamicMemberLookup|@propertyWrapper)"},{beginKeywords:"import",end:/$/,contains:[e.C_LINE_COMMENT_MODE,i]}]}}},"2a93":function(e,t){e.exports=function(e){var t={className:"number",relevance:0,variants:[{begin:/([\+\-]+)?[\d]+_[\d_]+/},{begin:e.NUMBER_RE}]},n=e.COMMENT();n.variants=[{begin:/;/,end:/$/},{begin:/#/,end:/$/}];var r={className:"variable",variants:[{begin:/\$[\w\d"][\w\d_]*/},{begin:/\$\{(.*?)}/}]},i={className:"literal",begin:/\bon|off|true|false|yes|no\b/},a={className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:"'''",end:"'''",relevance:10},{begin:'"""',end:'"""',relevance:10},{begin:'"',end:'"'},{begin:"'",end:"'"}]},o={begin:/\[/,end:/\]/,contains:[n,i,r,a,t,"self"],relevance:0};return{aliases:["toml"],case_insensitive:!0,illegal:/\S/,contains:[n,{className:"section",begin:/\[+/,end:/\]+/},{begin:/^[a-z0-9\[\]_\.-]+(?=\s*=\s*)/,className:"attr",starts:{end:/$/,contains:[n,o,i,r,a,t]}}]}}},"2b0e":function(e,t,n){"use strict";n.r(t),function(e){ +(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-vendors"],{"0081":function(e,t){e.exports=function(e){var t="[A-Z_][A-Z0-9_.]*",n={keyword:"HEADER ENDSEC DATA"},r={className:"meta",begin:"ISO-10303-21;",relevance:10},i={className:"meta",begin:"END-ISO-10303-21;",relevance:10};return{aliases:["p21","step","stp"],case_insensitive:!0,lexemes:t,keywords:n,contains:[r,i,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.COMMENT("/\\*\\*!","\\*/"),e.C_NUMBER_MODE,e.inherit(e.APOS_STRING_MODE,{illegal:null}),e.inherit(e.QUOTE_STRING_MODE,{illegal:null}),{className:"string",begin:"'",end:"'"},{className:"symbol",variants:[{begin:"#",end:"\\d+",illegal:"\\W"}]}]}}},"00ee":function(e,t,n){var r=n("b622"),i=r("toStringTag"),a={};a[i]="z",e.exports="[object z]"===String(a)},"01ac":function(e,t){e.exports=function(e){var t="\\d(_|\\d)*",n="[eE][-+]?"+t,r=t+"(\\."+t+")?("+n+")?",i="\\w+",a=t+"#"+i+"(\\."+i+")?#("+n+")?",o="\\b("+a+"|"+r+")",s="[A-Za-z](_?[A-Za-z0-9.])*",l="[]{}%#'\"",c=e.COMMENT("--","$"),d={begin:"\\s+:\\s+",end:"\\s*(:=|;|\\)|=>|$)",illegal:l,contains:[{beginKeywords:"loop for declare others",endsParent:!0},{className:"keyword",beginKeywords:"not null constant access function procedure in out aliased exception"},{className:"type",begin:s,endsParent:!0,relevance:0}]};return{case_insensitive:!0,keywords:{keyword:"abort else new return abs elsif not reverse abstract end accept entry select access exception of separate aliased exit or some all others subtype and for out synchronized array function overriding at tagged generic package task begin goto pragma terminate body private then if procedure type case in protected constant interface is raise use declare range delay limited record when delta loop rem while digits renames with do mod requeue xor",literal:"True False"},contains:[c,{className:"string",begin:/"/,end:/"/,contains:[{begin:/""/,relevance:0}]},{className:"string",begin:/'.'/},{className:"number",begin:o,relevance:0},{className:"symbol",begin:"'"+s},{className:"title",begin:"(\\bwith\\s+)?(\\bprivate\\s+)?\\bpackage\\s+(\\bbody\\s+)?",end:"(is|$)",keywords:"package body",excludeBegin:!0,excludeEnd:!0,illegal:l},{begin:"(\\b(with|overriding)\\s+)?\\b(function|procedure)\\s+",end:"(\\bis|\\bwith|\\brenames|\\)\\s*;)",keywords:"overriding function procedure with is renames return",returnBegin:!0,contains:[c,{className:"title",begin:"(\\bwith\\s+)?\\b(function|procedure)\\s+",end:"(\\(|\\s+|$)",excludeBegin:!0,excludeEnd:!0,illegal:l},d,{className:"type",begin:"\\breturn\\s+",end:"(\\s+|;|$)",keywords:"return",excludeBegin:!0,excludeEnd:!0,endsParent:!0,illegal:l}]},{className:"type",begin:"\\b(sub)?type\\s+",end:"\\s+",keywords:"type",excludeBegin:!0,illegal:l},d]}}},"0209":function(e,t){e.exports=function(e){function t(e){return"(?:"+e+")?"}var n="decltype\\(auto\\)",r="[a-zA-Z_]\\w*::",i="<.*?>",a="("+n+"|"+t(r)+"[a-zA-Z_]\\w*"+t(i)+")",o={className:"keyword",begin:"\\b[a-z\\d_]*_t\\b"},s="\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)",l={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{begin:"(u8?|U|L)?'("+s+"|.)",end:"'",illegal:"."},{begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\((?:.|\n)*?\)\1"/}]},c={className:"number",variants:[{begin:"\\b(0b[01']+)"},{begin:"(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)(u|U|l|L|ul|UL|f|F|b|B)"},{begin:"(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)"}],relevance:0},d={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{"meta-keyword":"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include"},contains:[{begin:/\\\n/,relevance:0},e.inherit(l,{className:"meta-string"}),{className:"meta-string",begin:/<.*?>/,end:/$/,illegal:"\\n"},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},u={className:"title",begin:t(r)+e.IDENT_RE,relevance:0},_=t(r)+e.IDENT_RE+"\\s*\\(",p={keyword:"int float while private char char8_t char16_t char32_t catch import module export virtual operator sizeof dynamic_cast|10 typedef const_cast|10 const for static_cast|10 union namespace unsigned long volatile static protected bool template mutable if public friend do goto auto void enum else break extern using asm case typeid wchar_tshort reinterpret_cast|10 default double register explicit signed typename try this switch continue inline delete alignas alignof constexpr consteval constinit decltype concept co_await co_return co_yield requires noexcept static_assert thread_local restrict final override atomic_bool atomic_char atomic_schar atomic_uchar atomic_short atomic_ushort atomic_int atomic_uint atomic_long atomic_ulong atomic_llong atomic_ullong new throw return and and_eq bitand bitor compl not not_eq or or_eq xor xor_eq",built_in:"std string wstring cin cout cerr clog stdin stdout stderr stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap array shared_ptr abort terminate abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf future isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc realloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf endl initializer_list unique_ptr _Bool complex _Complex imaginary _Imaginary",literal:"true false nullptr NULL"},f=[o,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,c,l],m={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:p,contains:f.concat([{begin:/\(/,end:/\)/,keywords:p,contains:f.concat(["self"]),relevance:0}]),relevance:0},h={className:"function",begin:"("+a+"[\\*&\\s]+)+"+_,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:p,illegal:/[^\w\s\*&:<>]/,contains:[{begin:n,keywords:p,relevance:0},{begin:_,returnBegin:!0,contains:[u],relevance:0},{className:"params",begin:/\(/,end:/\)/,keywords:p,relevance:0,contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,l,c,o,{begin:/\(/,end:/\)/,keywords:p,relevance:0,contains:["self",e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,l,c,o]}]},o,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,d]};return{aliases:["c","cc","h","c++","h++","hpp","hh","hxx","cxx"],keywords:p,illegal:"",keywords:p,contains:["self",o]},{begin:e.IDENT_RE+"::",keywords:p},{className:"class",beginKeywords:"class struct",end:/[{;:]/,contains:[{begin://,contains:["self"]},e.TITLE_MODE]}]),exports:{preprocessor:d,strings:l,keywords:p}}}},"0215":function(e,t){e.exports=function(e){var t={begin:"<",end:">",contains:[e.inherit(e.TITLE_MODE,{begin:/'[a-zA-Z0-9_]+/})]};return{aliases:["fs"],keywords:"abstract and as assert base begin class default delegate do done downcast downto elif else end exception extern false finally for fun function global if in inherit inline interface internal lazy let match member module mutable namespace new null of open or override private public rec return sig static struct then to true try type upcast use val void when while with yield",illegal:/\/\*/,contains:[{className:"keyword",begin:/\b(yield|return|let|do)!/},{className:"string",begin:'@"',end:'"',contains:[{begin:'""'}]},{className:"string",begin:'"""',end:'"""'},e.COMMENT("\\(\\*","\\*\\)"),{className:"class",beginKeywords:"type",end:"\\(|=|$",excludeEnd:!0,contains:[e.UNDERSCORE_TITLE_MODE,t]},{className:"meta",begin:"\\[<",end:">\\]",relevance:10},{className:"symbol",begin:"\\B('[A-Za-z])\\b",contains:[e.BACKSLASH_ESCAPE]},e.C_LINE_COMMENT_MODE,e.inherit(e.QUOTE_STRING_MODE,{illegal:null}),e.C_NUMBER_MODE]}}},"0290":function(e,t){e.exports=function(e){return{aliases:["adoc"],contains:[e.COMMENT("^/{4,}\\n","\\n/{4,}$",{relevance:10}),e.COMMENT("^//","$",{relevance:0}),{className:"title",begin:"^\\.\\w.*$"},{begin:"^[=\\*]{4,}\\n",end:"\\n^[=\\*]{4,}$",relevance:10},{className:"section",relevance:10,variants:[{begin:"^(={1,5}) .+?( \\1)?$"},{begin:"^[^\\[\\]\\n]+?\\n[=\\-~\\^\\+]{2,}$"}]},{className:"meta",begin:"^:.+?:",end:"\\s",excludeEnd:!0,relevance:10},{className:"meta",begin:"^\\[.+?\\]$",relevance:0},{className:"quote",begin:"^_{4,}\\n",end:"\\n_{4,}$",relevance:10},{className:"code",begin:"^[\\-\\.]{4,}\\n",end:"\\n[\\-\\.]{4,}$",relevance:10},{begin:"^\\+{4,}\\n",end:"\\n\\+{4,}$",contains:[{begin:"<",end:">",subLanguage:"xml",relevance:0}],relevance:10},{className:"bullet",begin:"^(\\*+|\\-+|\\.+|[^\\n]+?::)\\s+"},{className:"symbol",begin:"^(NOTE|TIP|IMPORTANT|WARNING|CAUTION):\\s+",relevance:10},{className:"strong",begin:"\\B\\*(?![\\*\\s])",end:"(\\n{2}|\\*)",contains:[{begin:"\\\\*\\w",relevance:0}]},{className:"emphasis",begin:"\\B'(?!['\\s])",end:"(\\n{2}|')",contains:[{begin:"\\\\'\\w",relevance:0}],relevance:0},{className:"emphasis",begin:"_(?![_\\s])",end:"(\\n{2}|_)",relevance:0},{className:"string",variants:[{begin:"``.+?''"},{begin:"`.+?'"}]},{className:"code",begin:"(`.+?`|\\+.+?\\+)",relevance:0},{className:"code",begin:"^[ \\t]",end:"$",relevance:0},{begin:"^'{3,}[ \\t]*$",relevance:10},{begin:"(link:)?(http|https|ftp|file|irc|image:?):\\S+\\[.*?\\]",returnBegin:!0,contains:[{begin:"(link|image:?):",relevance:0},{className:"link",begin:"\\w",end:"[^\\[]+",relevance:0},{className:"string",begin:"\\[",end:"\\]",excludeBegin:!0,excludeEnd:!0,relevance:0}],relevance:10}]}}},"02ac":function(e,t){e.exports=function(e){var t={className:"string",begin:"\\[\n(multipart)?",end:"\\]\n"},n={className:"string",begin:"\\d{4}-\\d{2}-\\d{2}(\\s+)\\d{2}:\\d{2}:\\d{2}.\\d+Z"},r={className:"string",begin:"(\\+|-)\\d+"},i={className:"keyword",relevance:10,variants:[{begin:"^(test|testing|success|successful|failure|error|skip|xfail|uxsuccess)(:?)\\s+(test)?"},{begin:"^progress(:?)(\\s+)?(pop|push)?"},{begin:"^tags:"},{begin:"^time:"}]};return{case_insensitive:!0,contains:[t,n,r,i]}}},"02c4":function(e,t){e.exports=function(e){var t={className:"keyword",begin:"\\$(f[asn]|t|vp[rtd]|children)"},n={className:"literal",begin:"false|true|PI|undef"},r={className:"number",begin:"\\b\\d+(\\.\\d+)?(e-?\\d+)?",relevance:0},i=e.inherit(e.QUOTE_STRING_MODE,{illegal:null}),a={className:"meta",keywords:{"meta-keyword":"include use"},begin:"include|use <",end:">"},o={className:"params",begin:"\\(",end:"\\)",contains:["self",r,i,t,n]},s={begin:"[*!#%]",relevance:0},l={className:"function",beginKeywords:"module function",end:"\\=|\\{",contains:[o,e.UNDERSCORE_TITLE_MODE]};return{aliases:["scad"],keywords:{keyword:"function module include use for intersection_for if else \\%",literal:"false true PI undef",built_in:"circle square polygon text sphere cube cylinder polyhedron translate rotate scale resize mirror multmatrix color offset hull minkowski union difference intersection abs sign sin cos tan acos asin atan atan2 floor round ceil ln log pow sqrt exp rands min max concat lookup str chr search version version_num norm cross parent_module echo import import_dxf dxf_linear_extrude linear_extrude rotate_extrude surface projection render children dxf_cross dxf_dim let assign"},contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,r,a,i,t,s,l]}}},"0366":function(e,t,n){var r=n("1c0b");e.exports=function(e,t,n){if(r(e),void 0===t)return e;switch(n){case 0:return function(){return e.call(t)};case 1:return function(n){return e.call(t,n)};case 2:return function(n,r){return e.call(t,n,r)};case 3:return function(n,r,i){return e.call(t,n,r,i)}}return function(){return e.apply(t,arguments)}}},"0481":function(e,t){e.exports=function(e){var t={begin:"`[\\s\\S]"};return{case_insensitive:!0,aliases:["ahk"],keywords:{keyword:"Break Continue Critical Exit ExitApp Gosub Goto New OnExit Pause return SetBatchLines SetTimer Suspend Thread Throw Until ahk_id ahk_class ahk_pid ahk_exe ahk_group",literal:"true false NOT AND OR",built_in:"ComSpec Clipboard ClipboardAll ErrorLevel"},contains:[t,e.inherit(e.QUOTE_STRING_MODE,{contains:[t]}),e.COMMENT(";","$",{relevance:0}),e.C_BLOCK_COMMENT_MODE,{className:"number",begin:e.NUMBER_RE,relevance:0},{className:"variable",begin:"%[a-zA-Z0-9#_$@]+%"},{className:"built_in",begin:"^\\s*\\w+\\s*(,|%)"},{className:"title",variants:[{begin:'^[^\\n";]+::(?!=)'},{begin:'^[^\\n";]+:(?!=)',relevance:0}]},{className:"meta",begin:"^\\s*#\\w+",end:"$",relevance:0},{className:"built_in",begin:"A_[a-zA-Z0-9]+"},{begin:",\\s*,"}]}}},"04a8":function(e,t){e.exports=function(e){var t={begin:/[\w-]+ *=/,returnBegin:!0,relevance:0,contains:[{className:"attr",begin:/[\w-]+/}]},n={className:"params",begin:/\(/,end:/\)/,contains:[t],relevance:0},r={className:"function",begin:/:[\w\-.]+/,relevance:0},i={className:"string",begin:/\B(([\/.])[\w\-.\/=]+)+/},a={className:"params",begin:/--[\w\-=\/]+/};return{aliases:["wildfly-cli"],lexemes:"[a-z-]+",keywords:{keyword:"alias batch cd clear command connect connection-factory connection-info data-source deploy deployment-info deployment-overlay echo echo-dmr help history if jdbc-driver-info jms-queue|20 jms-topic|20 ls patch pwd quit read-attribute read-operation reload rollout-plan run-batch set shutdown try unalias undeploy unset version xa-data-source",literal:"true false"},contains:[e.HASH_COMMENT_MODE,e.QUOTE_STRING_MODE,a,r,i,n]}}},"04b0":function(e,t){e.exports=function(e){return{aliases:["md","mkdown","mkd"],contains:[{className:"section",variants:[{begin:"^#{1,6}",end:"$"},{begin:"^.+?\\n[=-]{2,}$"}]},{begin:"<",end:">",subLanguage:"xml",relevance:0},{className:"bullet",begin:"^\\s*([*+-]|(\\d+\\.))\\s+"},{className:"strong",begin:"[*_]{2}.+?[*_]{2}"},{className:"emphasis",variants:[{begin:"\\*.+?\\*"},{begin:"_.+?_",relevance:0}]},{className:"quote",begin:"^>\\s+",end:"$"},{className:"code",variants:[{begin:"^```\\w*\\s*$",end:"^```[ ]*$"},{begin:"`.+?`"},{begin:"^( {4}|\\t)",end:"$",relevance:0}]},{begin:"^[-\\*]{3,}",end:"$"},{begin:"\\[.+?\\][\\(\\[].*?[\\)\\]]",returnBegin:!0,contains:[{className:"string",begin:"\\[",end:"\\]",excludeBegin:!0,returnEnd:!0,relevance:0},{className:"link",begin:"\\]\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0},{className:"symbol",begin:"\\]\\[",end:"\\]",excludeBegin:!0,excludeEnd:!0}],relevance:10},{begin:/^\[[^\n]+\]:/,returnBegin:!0,contains:[{className:"symbol",begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0},{className:"link",begin:/:\s*/,end:/$/,excludeBegin:!0}]}]}}},"06b4":function(e,t){e.exports=function(e){return{case_insensitive:!0,contains:[e.HASH_COMMENT_MODE,{className:"meta",variants:[{begin:"^TAP version (\\d+)$"},{begin:"^1\\.\\.(\\d+)$"}]},{begin:"(s+)?---$",end:"\\.\\.\\.$",subLanguage:"yaml",relevance:0},{className:"number",begin:" (\\d+) "},{className:"symbol",variants:[{begin:"^ok"},{begin:"^not ok"}]}]}}},"06cf":function(e,t,n){var r=n("83ab"),i=n("d1e7"),a=n("5c6c"),o=n("fc6a"),s=n("c04e"),l=n("5135"),c=n("0cfb"),d=Object.getOwnPropertyDescriptor;t.f=r?d:function(e,t){if(e=o(e),t=s(t,!0),c)try{return d(e,t)}catch(n){}if(l(e,t))return a(!i.f.call(e,t),e[t])}},"074e":function(e,t){e.exports=function(e){var t={className:"params",begin:"\\(",end:"\\)"},n={literal:".False. .True.",keyword:"kind do while private call intrinsic where elsewhere type endtype endmodule endselect endinterface end enddo endif if forall endforall only contains default return stop then public subroutine|10 function program .and. .or. .not. .le. .eq. .ge. .gt. .lt. goto save else use module select case access blank direct exist file fmt form formatted iostat name named nextrec number opened rec recl sequential status unformatted unit continue format pause cycle exit c_null_char c_alert c_backspace c_form_feed flush wait decimal round iomsg synchronous nopass non_overridable pass protected volatile abstract extends import non_intrinsic value deferred generic final enumerator class associate bind enum c_int c_short c_long c_long_long c_signed_char c_size_t c_int8_t c_int16_t c_int32_t c_int64_t c_int_least8_t c_int_least16_t c_int_least32_t c_int_least64_t c_int_fast8_t c_int_fast16_t c_int_fast32_t c_int_fast64_t c_intmax_t C_intptr_t c_float c_double c_long_double c_float_complex c_double_complex c_long_double_complex c_bool c_char c_null_ptr c_null_funptr c_new_line c_carriage_return c_horizontal_tab c_vertical_tab iso_c_binding c_loc c_funloc c_associated c_f_pointer c_ptr c_funptr iso_fortran_env character_storage_size error_unit file_storage_size input_unit iostat_end iostat_eor numeric_storage_size output_unit c_f_procpointer ieee_arithmetic ieee_support_underflow_control ieee_get_underflow_mode ieee_set_underflow_mode newunit contiguous recursive pad position action delim readwrite eor advance nml interface procedure namelist include sequence elemental pure integer real character complex logical dimension allocatable|10 parameter external implicit|10 none double precision assign intent optional pointer target in out common equivalence data begin_provider &begin_provider end_provider begin_shell end_shell begin_template end_template subst assert touch soft_touch provide no_dep free irp_if irp_else irp_endif irp_write irp_read",built_in:"alog alog10 amax0 amax1 amin0 amin1 amod cabs ccos cexp clog csin csqrt dabs dacos dasin datan datan2 dcos dcosh ddim dexp dint dlog dlog10 dmax1 dmin1 dmod dnint dsign dsin dsinh dsqrt dtan dtanh float iabs idim idint idnint ifix isign max0 max1 min0 min1 sngl algama cdabs cdcos cdexp cdlog cdsin cdsqrt cqabs cqcos cqexp cqlog cqsin cqsqrt dcmplx dconjg derf derfc dfloat dgamma dimag dlgama iqint qabs qacos qasin qatan qatan2 qcmplx qconjg qcos qcosh qdim qerf qerfc qexp qgamma qimag qlgama qlog qlog10 qmax1 qmin1 qmod qnint qsign qsin qsinh qsqrt qtan qtanh abs acos aimag aint anint asin atan atan2 char cmplx conjg cos cosh exp ichar index int log log10 max min nint sign sin sinh sqrt tan tanh print write dim lge lgt lle llt mod nullify allocate deallocate adjustl adjustr all allocated any associated bit_size btest ceiling count cshift date_and_time digits dot_product eoshift epsilon exponent floor fraction huge iand ibclr ibits ibset ieor ior ishft ishftc lbound len_trim matmul maxexponent maxloc maxval merge minexponent minloc minval modulo mvbits nearest pack present product radix random_number random_seed range repeat reshape rrspacing scale scan selected_int_kind selected_real_kind set_exponent shape size spacing spread sum system_clock tiny transpose trim ubound unpack verify achar iachar transfer dble entry dprod cpu_time command_argument_count get_command get_command_argument get_environment_variable is_iostat_end ieee_arithmetic ieee_support_underflow_control ieee_get_underflow_mode ieee_set_underflow_mode is_iostat_eor move_alloc new_line selected_char_kind same_type_as extends_type_ofacosh asinh atanh bessel_j0 bessel_j1 bessel_jn bessel_y0 bessel_y1 bessel_yn erf erfc erfc_scaled gamma log_gamma hypot norm2 atomic_define atomic_ref execute_command_line leadz trailz storage_size merge_bits bge bgt ble blt dshiftl dshiftr findloc iall iany iparity image_index lcobound ucobound maskl maskr num_images parity popcnt poppar shifta shiftl shiftr this_image IRP_ALIGN irp_here"};return{case_insensitive:!0,keywords:n,illegal:/\/\*/,contains:[e.inherit(e.APOS_STRING_MODE,{className:"string",relevance:0}),e.inherit(e.QUOTE_STRING_MODE,{className:"string",relevance:0}),{className:"function",beginKeywords:"subroutine function program",illegal:"[${=\\n]",contains:[e.UNDERSCORE_TITLE_MODE,t]},e.COMMENT("!","$",{relevance:0}),e.COMMENT("begin_doc","end_doc",{relevance:10}),{className:"number",begin:"(?=\\b|\\+|\\-|\\.)(?=\\.\\d|\\d)(?:\\d+)?(?:\\.?\\d*)(?:[de][+-]?\\d+)?\\b\\.?",relevance:0}]}}},"0a06":function(e,t,n){"use strict";var r=n("c532"),i=n("30b5"),a=n("f6b4"),o=n("5270"),s=n("4a7b");function l(e){this.defaults=e,this.interceptors={request:new a,response:new a}}l.prototype.request=function(e){"string"===typeof e?(e=arguments[1]||{},e.url=arguments[0]):e=e||{},e=s(this.defaults,e),e.method?e.method=e.method.toLowerCase():this.defaults.method?e.method=this.defaults.method.toLowerCase():e.method="get";var t=[o,void 0],n=Promise.resolve(e);this.interceptors.request.forEach((function(e){t.unshift(e.fulfilled,e.rejected)})),this.interceptors.response.forEach((function(e){t.push(e.fulfilled,e.rejected)}));while(t.length)n=n.then(t.shift(),t.shift());return n},l.prototype.getUri=function(e){return e=s(this.defaults,e),i(e.url,e.params,e.paramsSerializer).replace(/^\?/,"")},r.forEach(["delete","get","head","options"],(function(e){l.prototype[e]=function(t,n){return this.request(s(n||{},{method:e,url:t}))}})),r.forEach(["post","put","patch"],(function(e){l.prototype[e]=function(t,n,r){return this.request(s(r||{},{method:e,url:t,data:n}))}})),e.exports=l},"0b22":function(e,t){e.exports=function(e){var t={keyword:"break default func interface select case map struct chan else goto package switch const fallthrough if range type continue for import return var go defer bool byte complex64 complex128 float32 float64 int8 int16 int32 int64 string uint8 uint16 uint32 uint64 int uint uintptr rune",literal:"true false iota nil",built_in:"append cap close complex copy imag len make new panic print println real recover delete"};return{aliases:["golang"],keywords:t,illegal:""),{begin:"<%[%=-]?",end:"[%-]?%>",subLanguage:"ruby",excludeBegin:!0,excludeEnd:!0}]}}},1487:function(e,t,n){var r=n("a70e");r.registerLanguage("1c",n("f71c")),r.registerLanguage("abnf",n("b528")),r.registerLanguage("accesslog",n("998d")),r.registerLanguage("actionscript",n("f9f0")),r.registerLanguage("ada",n("01ac")),r.registerLanguage("angelscript",n("dbcc")),r.registerLanguage("apache",n("f0aa")),r.registerLanguage("applescript",n("7bc1")),r.registerLanguage("arcade",n("305e")),r.registerLanguage("cpp",n("0209")),r.registerLanguage("arduino",n("944e")),r.registerLanguage("armasm",n("a33c")),r.registerLanguage("xml",n("8dcb")),r.registerLanguage("asciidoc",n("0290")),r.registerLanguage("aspectj",n("9814")),r.registerLanguage("autohotkey",n("0481")),r.registerLanguage("autoit",n("ef99")),r.registerLanguage("avrasm",n("a6fb")),r.registerLanguage("awk",n("1069")),r.registerLanguage("axapta",n("a885")),r.registerLanguage("bash",n("f0f8")),r.registerLanguage("basic",n("a15a")),r.registerLanguage("bnf",n("75da")),r.registerLanguage("brainfuck",n("5921")),r.registerLanguage("cal",n("7781")),r.registerLanguage("capnproto",n("4a5e")),r.registerLanguage("ceylon",n("ba76")),r.registerLanguage("clean",n("51ab")),r.registerLanguage("clojure",n("b884")),r.registerLanguage("clojure-repl",n("149d")),r.registerLanguage("cmake",n("eaab")),r.registerLanguage("coffeescript",n("a995")),r.registerLanguage("coq",n("80b3")),r.registerLanguage("cos",n("8261")),r.registerLanguage("crmsh",n("c8e5")),r.registerLanguage("crystal",n("294a")),r.registerLanguage("cs",n("bb63")),r.registerLanguage("csp",n("4272")),r.registerLanguage("css",n("ee8c")),r.registerLanguage("d",n("8d6d")),r.registerLanguage("markdown",n("04b0")),r.registerLanguage("dart",n("7c46")),r.registerLanguage("delphi",n("1f8a")),r.registerLanguage("diff",n("48b8")),r.registerLanguage("django",n("d248")),r.registerLanguage("dns",n("8a86")),r.registerLanguage("dockerfile",n("44b5")),r.registerLanguage("dos",n("7cff")),r.registerLanguage("dsconfig",n("b91e")),r.registerLanguage("dts",n("b0cf")),r.registerLanguage("dust",n("f4da")),r.registerLanguage("ebnf",n("1b4d")),r.registerLanguage("elixir",n("7727")),r.registerLanguage("elm",n("5051")),r.registerLanguage("ruby",n("82cb")),r.registerLanguage("erb",n("1367")),r.registerLanguage("erlang-repl",n("f492")),r.registerLanguage("erlang",n("b3c5")),r.registerLanguage("excel",n("f5cf")),r.registerLanguage("fix",n("2b22")),r.registerLanguage("flix",n("a14e")),r.registerLanguage("fortran",n("485f")),r.registerLanguage("fsharp",n("0215")),r.registerLanguage("gams",n("7d9d")),r.registerLanguage("gauss",n("ae7a")),r.registerLanguage("gcode",n("94a2")),r.registerLanguage("gherkin",n("351a")),r.registerLanguage("glsl",n("df06")),r.registerLanguage("gml",n("e6ea")),r.registerLanguage("go",n("0b22")),r.registerLanguage("golo",n("919d")),r.registerLanguage("gradle",n("9544")),r.registerLanguage("groovy",n("1f64")),r.registerLanguage("haml",n("4f4a")),r.registerLanguage("handlebars",n("e55c")),r.registerLanguage("haskell",n("3f38")),r.registerLanguage("haxe",n("7c71")),r.registerLanguage("hsp",n("c22d")),r.registerLanguage("htmlbars",n("79b5")),r.registerLanguage("http",n("c01d")),r.registerLanguage("hy",n("8667")),r.registerLanguage("inform7",n("2e5d")),r.registerLanguage("ini",n("2a93")),r.registerLanguage("irpf90",n("074e")),r.registerLanguage("isbl",n("bb43")),r.registerLanguage("java",n("332f")),r.registerLanguage("javascript",n("4dd1")),r.registerLanguage("jboss-cli",n("04a8")),r.registerLanguage("json",n("5ad2")),r.registerLanguage("julia",n("2265")),r.registerLanguage("julia-repl",n("b7aa")),r.registerLanguage("kotlin",n("a941")),r.registerLanguage("lasso",n("25bd")),r.registerLanguage("ldif",n("1a06")),r.registerLanguage("leaf",n("2e9b")),r.registerLanguage("less",n("1846")),r.registerLanguage("lisp",n("9b32")),r.registerLanguage("livecodeserver",n("1beb")),r.registerLanguage("livescript",n("2e11")),r.registerLanguage("llvm",n("7c30")),r.registerLanguage("lsl",n("28ad")),r.registerLanguage("lua",n("ecfe")),r.registerLanguage("makefile",n("7a5e")),r.registerLanguage("mathematica",n("ef7a")),r.registerLanguage("matlab",n("8ca5")),r.registerLanguage("maxima",n("399d")),r.registerLanguage("mel",n("bb7e")),r.registerLanguage("mercury",n("2425")),r.registerLanguage("mipsasm",n("a342")),r.registerLanguage("mizar",n("0f16")),r.registerLanguage("perl",n("6a51")),r.registerLanguage("mojolicious",n("66ba")),r.registerLanguage("monkey",n("a710")),r.registerLanguage("moonscript",n("b1b9")),r.registerLanguage("n1ql",n("f4c8")),r.registerLanguage("nginx",n("f54f")),r.registerLanguage("nimrod",n("0f3c")),r.registerLanguage("nix",n("46ae")),r.registerLanguage("nsis",n("b322")),r.registerLanguage("objectivec",n("9bf21")),r.registerLanguage("ocaml",n("ee6c")),r.registerLanguage("openscad",n("02c4")),r.registerLanguage("oxygene",n("6de8")),r.registerLanguage("parser3",n("3728")),r.registerLanguage("pf",n("767a")),r.registerLanguage("pgsql",n("f851")),r.registerLanguage("php",n("2907")),r.registerLanguage("plaintext",n("44e5")),r.registerLanguage("pony",n("95d0")),r.registerLanguage("powershell",n("508e")),r.registerLanguage("processing",n("afba")),r.registerLanguage("profile",n("b90a")),r.registerLanguage("prolog",n("4396")),r.registerLanguage("properties",n("56b2")),r.registerLanguage("protobuf",n("2e8e")),r.registerLanguage("puppet",n("5027")),r.registerLanguage("purebasic",n("1b02")),r.registerLanguage("python",n("9510")),r.registerLanguage("q",n("5dfb")),r.registerLanguage("qml",n("612a")),r.registerLanguage("r",n("26bc")),r.registerLanguage("reasonml",n("e990")),r.registerLanguage("rib",n("0faf")),r.registerLanguage("roboconf",n("f50f")),r.registerLanguage("routeros",n("d959")),r.registerLanguage("rsl",n("a0a7")),r.registerLanguage("ruleslanguage",n("8aba")),r.registerLanguage("rust",n("2ce7")),r.registerLanguage("sas",n("40f4")),r.registerLanguage("scala",n("9f7fc")),r.registerLanguage("scheme",n("4108")),r.registerLanguage("scilab",n("ea4d")),r.registerLanguage("scss",n("6113")),r.registerLanguage("shell",n("b65b")),r.registerLanguage("smali",n("1b1c")),r.registerLanguage("smalltalk",n("8d4f")),r.registerLanguage("sml",n("dc41")),r.registerLanguage("sqf",n("e2a7")),r.registerLanguage("sql",n("de09")),r.registerLanguage("stan",n("8931")),r.registerLanguage("stata",n("d4b5")),r.registerLanguage("step21",n("0081")),r.registerLanguage("stylus",n("bd88")),r.registerLanguage("subunit",n("02ac")),r.registerLanguage("swift",n("2a39")),r.registerLanguage("taggerscript",n("2468")),r.registerLanguage("yaml",n("2e7b")),r.registerLanguage("tap",n("06b4")),r.registerLanguage("tcl",n("a27d")),r.registerLanguage("tex",n("29c8")),r.registerLanguage("thrift",n("adf9")),r.registerLanguage("tp",n("a613")),r.registerLanguage("twig",n("f46e")),r.registerLanguage("typescript",n("af44")),r.registerLanguage("vala",n("f122")),r.registerLanguage("vbnet",n("89e7")),r.registerLanguage("vbscript",n("5a3e")),r.registerLanguage("vbscript-html",n("f45a")),r.registerLanguage("verilog",n("e10f")),r.registerLanguage("vhdl",n("310f")),r.registerLanguage("vim",n("3c69")),r.registerLanguage("x86asm",n("a154")),r.registerLanguage("xl",n("2639")),r.registerLanguage("xquery",n("268a")),r.registerLanguage("zephir",n("9f0c")),e.exports=r},"149d":function(e,t){e.exports=function(e){return{contains:[{className:"meta",begin:/^([\w.-]+|\s*#_)?=>/,starts:{end:/$/,subLanguage:"clojure"}}]}}},"14c3":function(e,t,n){var r=n("c6b6"),i=n("9263");e.exports=function(e,t){var n=e.exec;if("function"===typeof n){var a=n.call(e,t);if("object"!==typeof a)throw TypeError("RegExp exec method returned something other than an Object or null");return a}if("RegExp"!==r(e))throw TypeError("RegExp#exec called on incompatible receiver");return i.call(e,t)}},"159b":function(e,t,n){var r=n("da84"),i=n("fdbc"),a=n("17c2"),o=n("9112");for(var s in i){var l=r[s],c=l&&l.prototype;if(c&&c.forEach!==a)try{o(c,"forEach",a)}catch(d){c.forEach=a}}},"17c2":function(e,t,n){"use strict";var r=n("b727").forEach,i=n("a640"),a=n("ae40"),o=i("forEach"),s=a("forEach");e.exports=o&&s?[].forEach:function(e){return r(this,e,arguments.length>1?arguments[1]:void 0)}},1846:function(e,t){e.exports=function(e){var t="[\\w-]+",n="("+t+"|@{"+t+"})",r=[],i=[],a=function(e){return{className:"string",begin:"~?"+e+".*?"+e}},o=function(e,t,n){return{className:e,begin:t,relevance:n}},s={begin:"\\(",end:"\\)",contains:i,relevance:0};i.push(e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,a("'"),a('"'),e.CSS_NUMBER_MODE,{begin:"(url|data-uri)\\(",starts:{className:"string",end:"[\\)\\n]",excludeEnd:!0}},o("number","#[0-9A-Fa-f]+\\b"),s,o("variable","@@?"+t,10),o("variable","@{"+t+"}"),o("built_in","~?`[^`]*?`"),{className:"attribute",begin:t+"\\s*:",end:":",returnBegin:!0,excludeEnd:!0},{className:"meta",begin:"!important"});var l=i.concat({begin:"{",end:"}",contains:r}),c={beginKeywords:"when",endsWithParent:!0,contains:[{beginKeywords:"and not"}].concat(i)},d={begin:n+"\\s*:",returnBegin:!0,end:"[;}]",relevance:0,contains:[{className:"attribute",begin:n,end:":",excludeEnd:!0,starts:{endsWithParent:!0,illegal:"[<=$]",relevance:0,contains:i}}]},u={className:"keyword",begin:"@(import|media|charset|font-face|(-[a-z]+-)?keyframes|supports|document|namespace|page|viewport|host)\\b",starts:{end:"[;{}]",returnEnd:!0,contains:i,relevance:0}},_={className:"variable",variants:[{begin:"@"+t+"\\s*:",relevance:15},{begin:"@"+t}],starts:{end:"[;}]",returnEnd:!0,contains:l}},p={variants:[{begin:"[\\.#:&\\[>]",end:"[;{}]"},{begin:n,end:"{"}],returnBegin:!0,returnEnd:!0,illegal:"[<='$\"]",relevance:0,contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,c,o("keyword","all\\b"),o("variable","@{"+t+"}"),o("selector-tag",n+"%?",0),o("selector-id","#"+n),o("selector-class","\\."+n,0),o("selector-tag","&",0),{className:"selector-attr",begin:"\\[",end:"\\]"},{className:"selector-pseudo",begin:/:(:)?[a-zA-Z0-9\_\-\+\(\)"'.]+/},{begin:"\\(",end:"\\)",contains:l},{begin:"!important"}]};return r.push(e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,u,_,d,p),{case_insensitive:!0,illegal:"[=>'/<($\"]",contains:r}}},"19aa":function(e,t){e.exports=function(e,t,n){if(!(e instanceof t))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return e}},"1a06":function(e,t){e.exports=function(e){return{contains:[{className:"attribute",begin:"^dn",end:": ",excludeEnd:!0,starts:{end:"$",relevance:0},relevance:10},{className:"attribute",begin:"^\\w",end:": ",excludeEnd:!0,starts:{end:"$",relevance:0}},{className:"literal",begin:"^-",end:"$"},e.HASH_COMMENT_MODE]}}},"1b02":function(e,t){e.exports=function(e){var t={className:"string",begin:'(~)?"',end:'"',illegal:"\\n"},n={className:"symbol",begin:"#[a-zA-Z_]\\w*\\$?"};return{aliases:["pb","pbi"],keywords:"Align And Array As Break CallDebugger Case CompilerCase CompilerDefault CompilerElse CompilerElseIf CompilerEndIf CompilerEndSelect CompilerError CompilerIf CompilerSelect CompilerWarning Continue Data DataSection Debug DebugLevel Declare DeclareC DeclareCDLL DeclareDLL DeclareModule Default Define Dim DisableASM DisableDebugger DisableExplicit Else ElseIf EnableASM EnableDebugger EnableExplicit End EndDataSection EndDeclareModule EndEnumeration EndIf EndImport EndInterface EndMacro EndModule EndProcedure EndSelect EndStructure EndStructureUnion EndWith Enumeration EnumerationBinary Extends FakeReturn For ForEach ForEver Global Gosub Goto If Import ImportC IncludeBinary IncludeFile IncludePath Interface List Macro MacroExpandedCount Map Module NewList NewMap Next Not Or Procedure ProcedureC ProcedureCDLL ProcedureDLL ProcedureReturn Protected Prototype PrototypeC ReDim Read Repeat Restore Return Runtime Select Shared Static Step Structure StructureUnion Swap Threaded To UndefineMacro Until Until UnuseModule UseModule Wend While With XIncludeFile XOr",contains:[e.COMMENT(";","$",{relevance:0}),{className:"function",begin:"\\b(Procedure|Declare)(C|CDLL|DLL)?\\b",end:"\\(",excludeEnd:!0,returnBegin:!0,contains:[{className:"keyword",begin:"(Procedure|Declare)(C|CDLL|DLL)?",excludeEnd:!0},{className:"type",begin:"\\.\\w*"},e.UNDERSCORE_TITLE_MODE]},t,n]}}},"1b1c":function(e,t){e.exports=function(e){var t=["add","and","cmp","cmpg","cmpl","const","div","double","float","goto","if","int","long","move","mul","neg","new","nop","not","or","rem","return","shl","shr","sput","sub","throw","ushr","xor"],n=["aget","aput","array","check","execute","fill","filled","goto/16","goto/32","iget","instance","invoke","iput","monitor","packed","sget","sparse"],r=["transient","constructor","abstract","final","synthetic","public","private","protected","static","bridge","system"];return{aliases:["smali"],contains:[{className:"string",begin:'"',end:'"',relevance:0},e.COMMENT("#","$",{relevance:0}),{className:"keyword",variants:[{begin:"\\s*\\.end\\s[a-zA-Z0-9]*"},{begin:"^[ ]*\\.[a-zA-Z]*",relevance:0},{begin:"\\s:[a-zA-Z_0-9]*",relevance:0},{begin:"\\s("+r.join("|")+")"}]},{className:"built_in",variants:[{begin:"\\s("+t.join("|")+")\\s"},{begin:"\\s("+t.join("|")+")((\\-|/)[a-zA-Z0-9]+)+\\s",relevance:10},{begin:"\\s("+n.join("|")+")((\\-|/)[a-zA-Z0-9]+)*\\s",relevance:10}]},{className:"class",begin:"L[^(;:\n]*;",relevance:0},{begin:"[vp][0-9]+"}]}}},"1b4d":function(e,t){e.exports=function(e){var t=e.COMMENT(/\(\*/,/\*\)/),n={className:"attribute",begin:/^[ ]*[a-zA-Z][a-zA-Z-_]*([\s-_]+[a-zA-Z][a-zA-Z]*)*/},r={className:"meta",begin:/\?.*\?/},i={begin:/=/,end:/[.;]/,contains:[t,r,{className:"string",variants:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{begin:"`",end:"`"}]}]};return{illegal:/\S/,contains:[t,n,i]}}},"1be4":function(e,t,n){var r=n("d066");e.exports=r("document","documentElement")},"1beb":function(e,t){e.exports=function(e){var t={className:"variable",variants:[{begin:"\\b([gtps][A-Z]{1}[a-zA-Z0-9]*)(\\[.+\\])?(?:\\s*?)"},{begin:"\\$_[A-Z]+"}],relevance:0},n=[e.C_BLOCK_COMMENT_MODE,e.HASH_COMMENT_MODE,e.COMMENT("--","$"),e.COMMENT("[^:]//","$")],r=e.inherit(e.TITLE_MODE,{variants:[{begin:"\\b_*rig[A-Z]+[A-Za-z0-9_\\-]*"},{begin:"\\b_[a-z0-9\\-]+"}]}),i=e.inherit(e.TITLE_MODE,{begin:"\\b([A-Za-z0-9_\\-]+)\\b"});return{case_insensitive:!1,keywords:{keyword:"$_COOKIE $_FILES $_GET $_GET_BINARY $_GET_RAW $_POST $_POST_BINARY $_POST_RAW $_SESSION $_SERVER codepoint codepoints segment segments codeunit codeunits sentence sentences trueWord trueWords paragraph after byte bytes english the until http forever descending using line real8 with seventh for stdout finally element word words fourth before black ninth sixth characters chars stderr uInt1 uInt1s uInt2 uInt2s stdin string lines relative rel any fifth items from middle mid at else of catch then third it file milliseconds seconds second secs sec int1 int1s int4 int4s internet int2 int2s normal text item last long detailed effective uInt4 uInt4s repeat end repeat URL in try into switch to words https token binfile each tenth as ticks tick system real4 by dateItems without char character ascending eighth whole dateTime numeric short first ftp integer abbreviated abbr abbrev private case while if div mod wrap and or bitAnd bitNot bitOr bitXor among not in a an within contains ends with begins the keys of keys",literal:"SIX TEN FORMFEED NINE ZERO NONE SPACE FOUR FALSE COLON CRLF PI COMMA ENDOFFILE EOF EIGHT FIVE QUOTE EMPTY ONE TRUE RETURN CR LINEFEED RIGHT BACKSLASH NULL SEVEN TAB THREE TWO six ten formfeed nine zero none space four false colon crlf pi comma endoffile eof eight five quote empty one true return cr linefeed right backslash null seven tab three two RIVERSION RISTATE FILE_READ_MODE FILE_WRITE_MODE FILE_WRITE_MODE DIR_WRITE_MODE FILE_READ_UMASK FILE_WRITE_UMASK DIR_READ_UMASK DIR_WRITE_UMASK",built_in:"put abs acos aliasReference annuity arrayDecode arrayEncode asin atan atan2 average avg avgDev base64Decode base64Encode baseConvert binaryDecode binaryEncode byteOffset byteToNum cachedURL cachedURLs charToNum cipherNames codepointOffset codepointProperty codepointToNum codeunitOffset commandNames compound compress constantNames cos date dateFormat decompress difference directories diskSpace DNSServers exp exp1 exp2 exp10 extents files flushEvents folders format functionNames geometricMean global globals hasMemory harmonicMean hostAddress hostAddressToName hostName hostNameToAddress isNumber ISOToMac itemOffset keys len length libURLErrorData libUrlFormData libURLftpCommand libURLLastHTTPHeaders libURLLastRHHeaders libUrlMultipartFormAddPart libUrlMultipartFormData libURLVersion lineOffset ln ln1 localNames log log2 log10 longFilePath lower macToISO matchChunk matchText matrixMultiply max md5Digest median merge messageAuthenticationCode messageDigest millisec millisecs millisecond milliseconds min monthNames nativeCharToNum normalizeText num number numToByte numToChar numToCodepoint numToNativeChar offset open openfiles openProcesses openProcessIDs openSockets paragraphOffset paramCount param params peerAddress pendingMessages platform popStdDev populationStandardDeviation populationVariance popVariance processID random randomBytes replaceText result revCreateXMLTree revCreateXMLTreeFromFile revCurrentRecord revCurrentRecordIsFirst revCurrentRecordIsLast revDatabaseColumnCount revDatabaseColumnIsNull revDatabaseColumnLengths revDatabaseColumnNames revDatabaseColumnNamed revDatabaseColumnNumbered revDatabaseColumnTypes revDatabaseConnectResult revDatabaseCursors revDatabaseID revDatabaseTableNames revDatabaseType revDataFromQuery revdb_closeCursor revdb_columnbynumber revdb_columncount revdb_columnisnull revdb_columnlengths revdb_columnnames revdb_columntypes revdb_commit revdb_connect revdb_connections revdb_connectionerr revdb_currentrecord revdb_cursorconnection revdb_cursorerr revdb_cursors revdb_dbtype revdb_disconnect revdb_execute revdb_iseof revdb_isbof revdb_movefirst revdb_movelast revdb_movenext revdb_moveprev revdb_query revdb_querylist revdb_recordcount revdb_rollback revdb_tablenames revGetDatabaseDriverPath revNumberOfRecords revOpenDatabase revOpenDatabases revQueryDatabase revQueryDatabaseBlob revQueryResult revQueryIsAtStart revQueryIsAtEnd revUnixFromMacPath revXMLAttribute revXMLAttributes revXMLAttributeValues revXMLChildContents revXMLChildNames revXMLCreateTreeFromFileWithNamespaces revXMLCreateTreeWithNamespaces revXMLDataFromXPathQuery revXMLEvaluateXPath revXMLFirstChild revXMLMatchingNode revXMLNextSibling revXMLNodeContents revXMLNumberOfChildren revXMLParent revXMLPreviousSibling revXMLRootNode revXMLRPC_CreateRequest revXMLRPC_Documents revXMLRPC_Error revXMLRPC_GetHost revXMLRPC_GetMethod revXMLRPC_GetParam revXMLText revXMLRPC_Execute revXMLRPC_GetParamCount revXMLRPC_GetParamNode revXMLRPC_GetParamType revXMLRPC_GetPath revXMLRPC_GetPort revXMLRPC_GetProtocol revXMLRPC_GetRequest revXMLRPC_GetResponse revXMLRPC_GetSocket revXMLTree revXMLTrees revXMLValidateDTD revZipDescribeItem revZipEnumerateItems revZipOpenArchives round sampVariance sec secs seconds sentenceOffset sha1Digest shell shortFilePath sin specialFolderPath sqrt standardDeviation statRound stdDev sum sysError systemVersion tan tempName textDecode textEncode tick ticks time to tokenOffset toLower toUpper transpose truewordOffset trunc uniDecode uniEncode upper URLDecode URLEncode URLStatus uuid value variableNames variance version waitDepth weekdayNames wordOffset xsltApplyStylesheet xsltApplyStylesheetFromFile xsltLoadStylesheet xsltLoadStylesheetFromFile add breakpoint cancel clear local variable file word line folder directory URL close socket process combine constant convert create new alias folder directory decrypt delete variable word line folder directory URL dispatch divide do encrypt filter get include intersect kill libURLDownloadToFile libURLFollowHttpRedirects libURLftpUpload libURLftpUploadFile libURLresetAll libUrlSetAuthCallback libURLSetDriver libURLSetCustomHTTPHeaders libUrlSetExpect100 libURLSetFTPListCommand libURLSetFTPMode libURLSetFTPStopTime libURLSetStatusCallback load extension loadedExtensions multiply socket prepare process post seek rel relative read from process rename replace require resetAll resolve revAddXMLNode revAppendXML revCloseCursor revCloseDatabase revCommitDatabase revCopyFile revCopyFolder revCopyXMLNode revDeleteFolder revDeleteXMLNode revDeleteAllXMLTrees revDeleteXMLTree revExecuteSQL revGoURL revInsertXMLNode revMoveFolder revMoveToFirstRecord revMoveToLastRecord revMoveToNextRecord revMoveToPreviousRecord revMoveToRecord revMoveXMLNode revPutIntoXMLNode revRollBackDatabase revSetDatabaseDriverPath revSetXMLAttribute revXMLRPC_AddParam revXMLRPC_DeleteAllDocuments revXMLAddDTD revXMLRPC_Free revXMLRPC_FreeAll revXMLRPC_DeleteDocument revXMLRPC_DeleteParam revXMLRPC_SetHost revXMLRPC_SetMethod revXMLRPC_SetPort revXMLRPC_SetProtocol revXMLRPC_SetSocket revZipAddItemWithData revZipAddItemWithFile revZipAddUncompressedItemWithData revZipAddUncompressedItemWithFile revZipCancel revZipCloseArchive revZipDeleteItem revZipExtractItemToFile revZipExtractItemToVariable revZipSetProgressCallback revZipRenameItem revZipReplaceItemWithData revZipReplaceItemWithFile revZipOpenArchive send set sort split start stop subtract symmetric union unload vectorDotProduct wait write"},contains:[t,{className:"keyword",begin:"\\bend\\sif\\b"},{className:"function",beginKeywords:"function",end:"$",contains:[t,i,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.BINARY_NUMBER_MODE,e.C_NUMBER_MODE,r]},{className:"function",begin:"\\bend\\s+",end:"$",keywords:"end",contains:[i,r],relevance:0},{beginKeywords:"command on",end:"$",contains:[t,i,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.BINARY_NUMBER_MODE,e.C_NUMBER_MODE,r]},{className:"meta",variants:[{begin:"<\\?(rev|lc|livecode)",relevance:10},{begin:"<\\?"},{begin:"\\?>"}]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.BINARY_NUMBER_MODE,e.C_NUMBER_MODE,r].concat(n),illegal:";$|^\\[|^=|&|{"}}},"1c0b":function(e,t){e.exports=function(e){if("function"!=typeof e)throw TypeError(String(e)+" is not a function");return e}},"1c7e":function(e,t,n){var r=n("b622"),i=r("iterator"),a=!1;try{var o=0,s={next:function(){return{done:!!o++}},return:function(){a=!0}};s[i]=function(){return this},Array.from(s,(function(){throw 2}))}catch(l){}e.exports=function(e,t){if(!t&&!a)return!1;var n=!1;try{var r={};r[i]=function(){return{next:function(){return{done:n=!0}}}},e(r)}catch(l){}return n}},"1cdc":function(e,t,n){var r=n("342f");e.exports=/(iphone|ipod|ipad).*applewebkit/i.test(r)},"1d2b":function(e,t,n){"use strict";e.exports=function(e,t){return function(){for(var n=new Array(arguments.length),r=0;r=51||!r((function(){var t=[],n=t.constructor={};return n[o]=function(){return{foo:1}},1!==t[e](Boolean).foo}))}},"1f64":function(e,t){e.exports=function(e){return{keywords:{literal:"true false null",keyword:"byte short char int long boolean float double void def as in assert trait super this abstract static volatile transient public private protected synchronized final class interface enum if else for while switch case break default continue throw throws try catch finally implements extends new import package return instanceof"},contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/,relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]}),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"string",begin:'"""',end:'"""'},{className:"string",begin:"'''",end:"'''"},{className:"string",begin:"\\$/",end:"/\\$",relevance:10},e.APOS_STRING_MODE,{className:"regexp",begin:/~?\/[^\/\n]+\//,contains:[e.BACKSLASH_ESCAPE]},e.QUOTE_STRING_MODE,{className:"meta",begin:"^#!/usr/bin/env",end:"$",illegal:"\n"},e.BINARY_NUMBER_MODE,{className:"class",beginKeywords:"class interface trait enum",end:"{",illegal:":",contains:[{beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE]},e.C_NUMBER_MODE,{className:"meta",begin:"@[A-Za-z]+"},{className:"string",begin:/[^\?]{0}[A-Za-z0-9_$]+ *:/},{begin:/\?/,end:/\:/},{className:"symbol",begin:"^\\s*[A-Za-z0-9_$]+:",relevance:0}],illegal:/#|<\//}}},"1f8a":function(e,t){e.exports=function(e){var t="exports register file shl array record property for mod while set ally label uses raise not stored class safecall var interface or private static exit index inherited to else stdcall override shr asm far resourcestring finalization packed virtual out and protected library do xorwrite goto near function end div overload object unit begin string on inline repeat until destructor write message program with read initialization except default nil if case cdecl in downto threadvar of try pascal const external constructor type public then implementation finally published procedure absolute reintroduce operator as is abstract alias assembler bitpacked break continue cppdecl cvar enumerator experimental platform deprecated unimplemented dynamic export far16 forward generic helper implements interrupt iochecks local name nodefault noreturn nostackframe oldfpccall otherwise saveregisters softfloat specialize strict unaligned varargs ",n=[e.C_LINE_COMMENT_MODE,e.COMMENT(/\{/,/\}/,{relevance:0}),e.COMMENT(/\(\*/,/\*\)/,{relevance:10})],r={className:"meta",variants:[{begin:/\{\$/,end:/\}/},{begin:/\(\*\$/,end:/\*\)/}]},i={className:"string",begin:/'/,end:/'/,contains:[{begin:/''/}]},a={className:"string",begin:/(#\d+)+/},o={begin:e.IDENT_RE+"\\s*=\\s*class\\s*\\(",returnBegin:!0,contains:[e.TITLE_MODE]},s={className:"function",beginKeywords:"function constructor destructor procedure",end:/[:;]/,keywords:"function constructor|10 destructor|10 procedure|10",contains:[e.TITLE_MODE,{className:"params",begin:/\(/,end:/\)/,keywords:t,contains:[i,a,r].concat(n)},r].concat(n)};return{aliases:["dpr","dfm","pas","pascal","freepascal","lazarus","lpr","lfm"],case_insensitive:!0,keywords:t,illegal:/"|\$[G-Zg-z]|\/\*|<\/|\|/,contains:[i,a,e.NUMBER_MODE,o,s,r].concat(n)}}},2265:function(e,t){e.exports=function(e){var t={keyword:"in isa where baremodule begin break catch ccall const continue do else elseif end export false finally for function global if import importall let local macro module quote return true try using while type immutable abstract bitstype typealias ",literal:"true false ARGS C_NULL DevNull ENDIAN_BOM ENV I Inf Inf16 Inf32 Inf64 InsertionSort JULIA_HOME LOAD_PATH MergeSort NaN NaN16 NaN32 NaN64 PROGRAM_FILE QuickSort RoundDown RoundFromZero RoundNearest RoundNearestTiesAway RoundNearestTiesUp RoundToZero RoundUp STDERR STDIN STDOUT VERSION catalan e|0 eu|0 eulergamma golden im nothing pi Ξ³ Ο€ Ο† ",built_in:"ANY AbstractArray AbstractChannel AbstractFloat AbstractMatrix AbstractRNG AbstractSerializer AbstractSet AbstractSparseArray AbstractSparseMatrix AbstractSparseVector AbstractString AbstractUnitRange AbstractVecOrMat AbstractVector Any ArgumentError Array AssertionError Associative Base64DecodePipe Base64EncodePipe Bidiagonal BigFloat BigInt BitArray BitMatrix BitVector Bool BoundsError BufferStream CachingPool CapturedException CartesianIndex CartesianRange Cchar Cdouble Cfloat Channel Char Cint Cintmax_t Clong Clonglong ClusterManager Cmd CodeInfo Colon Complex Complex128 Complex32 Complex64 CompositeException Condition ConjArray ConjMatrix ConjVector Cptrdiff_t Cshort Csize_t Cssize_t Cstring Cuchar Cuint Cuintmax_t Culong Culonglong Cushort Cwchar_t Cwstring DataType Date DateFormat DateTime DenseArray DenseMatrix DenseVecOrMat DenseVector Diagonal Dict DimensionMismatch Dims DirectIndexString Display DivideError DomainError EOFError EachLine Enum Enumerate ErrorException Exception ExponentialBackOff Expr Factorization FileMonitor Float16 Float32 Float64 Function Future GlobalRef GotoNode HTML Hermitian IO IOBuffer IOContext IOStream IPAddr IPv4 IPv6 IndexCartesian IndexLinear IndexStyle InexactError InitError Int Int128 Int16 Int32 Int64 Int8 IntSet Integer InterruptException InvalidStateException Irrational KeyError LabelNode LinSpace LineNumberNode LoadError LowerTriangular MIME Matrix MersenneTwister Method MethodError MethodTable Module NTuple NewvarNode NullException Nullable Number ObjectIdDict OrdinalRange OutOfMemoryError OverflowError Pair ParseError PartialQuickSort PermutedDimsArray Pipe PollingFileWatcher ProcessExitedException Ptr QuoteNode RandomDevice Range RangeIndex Rational RawFD ReadOnlyMemoryError Real ReentrantLock Ref Regex RegexMatch RemoteChannel RemoteException RevString RoundingMode RowVector SSAValue SegmentationFault SerializationState Set SharedArray SharedMatrix SharedVector Signed SimpleVector Slot SlotNumber SparseMatrixCSC SparseVector StackFrame StackOverflowError StackTrace StepRange StepRangeLen StridedArray StridedMatrix StridedVecOrMat StridedVector String SubArray SubString SymTridiagonal Symbol Symmetric SystemError TCPSocket Task Text TextDisplay Timer Tridiagonal Tuple Type TypeError TypeMapEntry TypeMapLevel TypeName TypeVar TypedSlot UDPSocket UInt UInt128 UInt16 UInt32 UInt64 UInt8 UndefRefError UndefVarError UnicodeError UniformScaling Union UnionAll UnitRange Unsigned UpperTriangular Val Vararg VecElement VecOrMat Vector VersionNumber Void WeakKeyDict WeakRef WorkerConfig WorkerPool "},n="[A-Za-z_\\u00A1-\\uFFFF][A-Za-z_0-9\\u00A1-\\uFFFF]*",r={lexemes:n,keywords:t,illegal:/<\//},i={className:"number",begin:/(\b0x[\d_]*(\.[\d_]*)?|0x\.\d[\d_]*)p[-+]?\d+|\b0[box][a-fA-F0-9][a-fA-F0-9_]*|(\b\d[\d_]*(\.[\d_]*)?|\.\d[\d_]*)([eEfF][-+]?\d+)?/,relevance:0},a={className:"string",begin:/'(.|\\[xXuU][a-zA-Z0-9]+)'/},o={className:"subst",begin:/\$\(/,end:/\)/,keywords:t},s={className:"variable",begin:"\\$"+n},l={className:"string",contains:[e.BACKSLASH_ESCAPE,o,s],variants:[{begin:/\w*"""/,end:/"""\w*/,relevance:10},{begin:/\w*"/,end:/"\w*/}]},c={className:"string",contains:[e.BACKSLASH_ESCAPE,o,s],begin:"`",end:"`"},d={className:"meta",begin:"@"+n},u={className:"comment",variants:[{begin:"#=",end:"=#",relevance:10},{begin:"#",end:"$"}]};return r.contains=[i,a,l,c,d,u,e.HASH_COMMENT_MODE,{className:"keyword",begin:"\\b(((abstract|primitive)\\s+)type|(mutable\\s+)?struct)\\b"},{begin:/<:/}],o.contains=r.contains,r}},2266:function(e,t,n){var r=n("825a"),i=n("e95a"),a=n("50c4"),o=n("0366"),s=n("35a1"),l=n("9bdd"),c=function(e,t){this.stopped=e,this.result=t},d=e.exports=function(e,t,n,d,u){var _,p,f,m,h,g,b,v=o(t,n,d?2:1);if(u)_=e;else{if(p=s(e),"function"!=typeof p)throw TypeError("Target is not iterable");if(i(p)){for(f=0,m=a(e.length);m>f;f++)if(h=d?v(r(b=e[f])[0],b[1]):v(e[f]),h&&h instanceof c)return h;return new c(!1)}_=p.call(e)}g=_.next;while(!(b=g.call(_)).done)if(h=l(_,v,b.value,d),"object"==typeof h&&h&&h instanceof c)return h;return new c(!1)};d.stop=function(e){return new c(!0,e)}},"23cb":function(e,t,n){var r=n("a691"),i=Math.max,a=Math.min;e.exports=function(e,t){var n=r(e);return n<0?i(n+t,0):a(n,t)}},"23e7":function(e,t,n){var r=n("da84"),i=n("06cf").f,a=n("9112"),o=n("6eeb"),s=n("ce4e"),l=n("e893"),c=n("94ca");e.exports=function(e,t){var n,d,u,_,p,f,m=e.target,h=e.global,g=e.stat;if(d=h?r:g?r[m]||s(m,{}):(r[m]||{}).prototype,d)for(u in t){if(p=t[u],e.noTargetGet?(f=i(d,u),_=f&&f.value):_=d[u],n=c(h?u:m+(g?".":"#")+u,e.forced),!n&&void 0!==_){if(typeof p===typeof _)continue;l(p,_)}(e.sham||_&&_.sham)&&a(p,"sham",!0),o(d,u,p,e)}}},"241c":function(e,t,n){var r=n("ca84"),i=n("7839"),a=i.concat("length","prototype");t.f=Object.getOwnPropertyNames||function(e){return r(e,a)}},2425:function(e,t){e.exports=function(e){var t={keyword:"module use_module import_module include_module end_module initialise mutable initialize finalize finalise interface implementation pred mode func type inst solver any_pred any_func is semidet det nondet multi erroneous failure cc_nondet cc_multi typeclass instance where pragma promise external trace atomic or_else require_complete_switch require_det require_semidet require_multi require_nondet require_cc_multi require_cc_nondet require_erroneous require_failure",meta:"inline no_inline type_spec source_file fact_table obsolete memo loop_check minimal_model terminates does_not_terminate check_termination promise_equivalent_clauses foreign_proc foreign_decl foreign_code foreign_type foreign_import_module foreign_export_enum foreign_export foreign_enum may_call_mercury will_not_call_mercury thread_safe not_thread_safe maybe_thread_safe promise_pure promise_semipure tabled_for_io local untrailed trailed attach_to_io_state can_pass_as_mercury_type stable will_not_throw_exception may_modify_trail will_not_modify_trail may_duplicate may_not_duplicate affects_liveness does_not_affect_liveness doesnt_affect_liveness no_sharing unknown_sharing sharing",built_in:"some all not if then else true fail false try catch catch_any semidet_true semidet_false semidet_fail impure_true impure semipure"},n=e.COMMENT("%","$"),r={className:"number",begin:"0'.\\|0[box][0-9a-fA-F]*"},i=e.inherit(e.APOS_STRING_MODE,{relevance:0}),a=e.inherit(e.QUOTE_STRING_MODE,{relevance:0}),o={className:"subst",begin:"\\\\[abfnrtv]\\|\\\\x[0-9a-fA-F]*\\\\\\|%[-+# *.0-9]*[dioxXucsfeEgGp]",relevance:0};a.contains=a.contains.slice(),a.contains.push(o);var s={className:"built_in",variants:[{begin:"<=>"},{begin:"<=",relevance:0},{begin:"=>",relevance:0},{begin:"/\\\\"},{begin:"\\\\/"}]},l={className:"built_in",variants:[{begin:":-\\|--\x3e"},{begin:"=",relevance:0}]};return{aliases:["m","moo"],keywords:t,contains:[s,l,n,e.C_BLOCK_COMMENT_MODE,r,e.NUMBER_MODE,i,a,{begin:/:-/},{begin:/\.$/}]}}},2444:function(e,t,n){"use strict";(function(t){var r=n("c532"),i=n("c8af"),a={"Content-Type":"application/x-www-form-urlencoded"};function o(e,t){!r.isUndefined(e)&&r.isUndefined(e["Content-Type"])&&(e["Content-Type"]=t)}function s(){var e;return("undefined"!==typeof XMLHttpRequest||"undefined"!==typeof t&&"[object process]"===Object.prototype.toString.call(t))&&(e=n("b50d")),e}var l={adapter:s(),transformRequest:[function(e,t){return i(t,"Accept"),i(t,"Content-Type"),r.isFormData(e)||r.isArrayBuffer(e)||r.isBuffer(e)||r.isStream(e)||r.isFile(e)||r.isBlob(e)?e:r.isArrayBufferView(e)?e.buffer:r.isURLSearchParams(e)?(o(t,"application/x-www-form-urlencoded;charset=utf-8"),e.toString()):r.isObject(e)?(o(t,"application/json;charset=utf-8"),JSON.stringify(e)):e}],transformResponse:[function(e){if("string"===typeof e)try{e=JSON.parse(e)}catch(t){}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*"}}};r.forEach(["delete","get","head"],(function(e){l.headers[e]={}})),r.forEach(["post","put","patch"],(function(e){l.headers[e]=r.merge(a)})),e.exports=l}).call(this,n("4362"))},2468:function(e,t){e.exports=function(e){var t={className:"comment",begin:/\$noop\(/,end:/\)/,contains:[{begin:/\(/,end:/\)/,contains:["self",{begin:/\\./}]}],relevance:10},n={className:"keyword",begin:/\$(?!noop)[a-zA-Z][_a-zA-Z0-9]*/,end:/\(/,excludeEnd:!0},r={className:"variable",begin:/%[_a-zA-Z0-9:]*/,end:"%"},i={className:"symbol",begin:/\\./};return{contains:[t,n,r,i]}}},2532:function(e,t,n){"use strict";var r=n("23e7"),i=n("5a34"),a=n("1d80"),o=n("ab13");r({target:"String",proto:!0,forced:!o("includes")},{includes:function(e){return!!~String(a(this)).indexOf(i(e),arguments.length>1?arguments[1]:void 0)}})},"25bd":function(e,t){e.exports=function(e){var t="[a-zA-Z_][\\w.]*",n="<\\?(lasso(script)?|=)",r="\\]|\\?>",i={literal:"true false none minimal full all void and or not bw nbw ew new cn ncn lt lte gt gte eq neq rx nrx ft",built_in:"array date decimal duration integer map pair string tag xml null boolean bytes keyword list locale queue set stack staticarray local var variable global data self inherited currentcapture givenblock",keyword:"cache database_names database_schemanames database_tablenames define_tag define_type email_batch encode_set html_comment handle handle_error header if inline iterate ljax_target link link_currentaction link_currentgroup link_currentrecord link_detail link_firstgroup link_firstrecord link_lastgroup link_lastrecord link_nextgroup link_nextrecord link_prevgroup link_prevrecord log loop namespace_using output_none portal private protect records referer referrer repeating resultset rows search_args search_arguments select sort_args sort_arguments thread_atomic value_list while abort case else fail_if fail_ifnot fail if_empty if_false if_null if_true loop_abort loop_continue loop_count params params_up return return_value run_children soap_definetag soap_lastrequest soap_lastresponse tag_name ascending average by define descending do equals frozen group handle_failure import in into join let match max min on order parent protected provide public require returnhome skip split_thread sum take thread to trait type where with yield yieldhome"},a=e.COMMENT("\x3c!--","--\x3e",{relevance:0}),o={className:"meta",begin:"\\[noprocess\\]",starts:{end:"\\[/noprocess\\]",returnEnd:!0,contains:[a]}},s={className:"meta",begin:"\\[/noprocess|"+n},l={className:"symbol",begin:"'"+t+"'"},c=[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.inherit(e.C_NUMBER_MODE,{begin:e.C_NUMBER_RE+"|(-?infinity|NaN)\\b"}),e.inherit(e.APOS_STRING_MODE,{illegal:null}),e.inherit(e.QUOTE_STRING_MODE,{illegal:null}),{className:"string",begin:"`",end:"`"},{variants:[{begin:"[#$]"+t},{begin:"#",end:"\\d+",illegal:"\\W"}]},{className:"type",begin:"::\\s*",end:t,illegal:"\\W"},{className:"params",variants:[{begin:"-(?!infinity)"+t,relevance:0},{begin:"(\\.\\.\\.)"}]},{begin:/(->|\.)\s*/,relevance:0,contains:[l]},{className:"class",beginKeywords:"define",returnEnd:!0,end:"\\(|=>",contains:[e.inherit(e.TITLE_MODE,{begin:t+"(=(?!>))?|[-+*/%](?!>)"})]}];return{aliases:["ls","lassoscript"],case_insensitive:!0,lexemes:t+"|&[lg]t;",keywords:i,contains:[{className:"meta",begin:r,relevance:0,starts:{end:"\\[|"+n,returnEnd:!0,relevance:0,contains:[a]}},o,s,{className:"meta",begin:"\\[no_square_brackets",starts:{end:"\\[/no_square_brackets\\]",lexemes:t+"|&[lg]t;",keywords:i,contains:[{className:"meta",begin:r,relevance:0,starts:{end:"\\[noprocess\\]|"+n,returnEnd:!0,contains:[a]}},o,s].concat(c)}},{className:"meta",begin:"\\[",relevance:0},{className:"meta",begin:"^#!",end:"lasso9$",relevance:10}].concat(c)}}},2626:function(e,t,n){"use strict";var r=n("d066"),i=n("9bf2"),a=n("b622"),o=n("83ab"),s=a("species");e.exports=function(e){var t=r(e),n=i.f;o&&t&&!t[s]&&n(t,s,{configurable:!0,get:function(){return this}})}},2639:function(e,t){e.exports=function(e){var t="ObjectLoader Animate MovieCredits Slides Filters Shading Materials LensFlare Mapping VLCAudioVideo StereoDecoder PointCloud NetworkAccess RemoteControl RegExp ChromaKey Snowfall NodeJS Speech Charts",n={keyword:"if then else do while until for loop import with is as where when by data constant integer real text name boolean symbol infix prefix postfix block tree",literal:"true false nil",built_in:"in mod rem and or xor not abs sign floor ceil sqrt sin cos tan asin acos atan exp expm1 log log2 log10 log1p pi at text_length text_range text_find text_replace contains page slide basic_slide title_slide title subtitle fade_in fade_out fade_at clear_color color line_color line_width texture_wrap texture_transform texture scale_?x scale_?y scale_?z? translate_?x translate_?y translate_?z? rotate_?x rotate_?y rotate_?z? rectangle circle ellipse sphere path line_to move_to quad_to curve_to theme background contents locally time mouse_?x mouse_?y mouse_buttons "+t},r={className:"string",begin:'"',end:'"',illegal:"\\n"},i={className:"string",begin:"'",end:"'",illegal:"\\n"},a={className:"string",begin:"<<",end:">>"},o={className:"number",begin:"[0-9]+#[0-9A-Z_]+(\\.[0-9-A-Z_]+)?#?([Ee][+-]?[0-9]+)?"},s={beginKeywords:"import",end:"$",keywords:n,contains:[r]},l={className:"function",begin:/[a-z][^\n]*->/,returnBegin:!0,end:/->/,contains:[e.inherit(e.TITLE_MODE,{starts:{endsWithParent:!0,keywords:n}})]};return{aliases:["tao"],lexemes:/[a-zA-Z][a-zA-Z0-9_?]*/,keywords:n,contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,r,i,a,l,s,o,e.NUMBER_MODE]}}},"268a":function(e,t){e.exports=function(e){var t="module schema namespace boundary-space preserve no-preserve strip default collation base-uri ordering context decimal-format decimal-separator copy-namespaces empty-sequence except exponent-separator external grouping-separator inherit no-inherit lax minus-sign per-mille percent schema-attribute schema-element strict unordered zero-digit declare import option function validate variable for at in let where order group by return if then else tumbling sliding window start when only end previous next stable ascending descending allowing empty greatest least some every satisfies switch case typeswitch try catch and or to union intersect instance of treat as castable cast map array delete insert into replace value rename copy modify update",n="item document-node node attribute document element comment namespace namespace-node processing-instruction text construction xs:anyAtomicType xs:untypedAtomic xs:duration xs:time xs:decimal xs:float xs:double xs:gYearMonth xs:gYear xs:gMonthDay xs:gMonth xs:gDay xs:boolean xs:base64Binary xs:hexBinary xs:anyURI xs:QName xs:NOTATION xs:dateTime xs:dateTimeStamp xs:date xs:string xs:normalizedString xs:token xs:language xs:NMTOKEN xs:Name xs:NCName xs:ID xs:IDREF xs:ENTITY xs:integer xs:nonPositiveInteger xs:negativeInteger xs:long xs:int xs:short xs:byte xs:nonNegativeInteger xs:unisignedLong xs:unsignedInt xs:unsignedShort xs:unsignedByte xs:positiveInteger xs:yearMonthDuration xs:dayTimeDuration",r="eq ne lt le gt ge is self:: child:: descendant:: descendant-or-self:: attribute:: following:: following-sibling:: parent:: ancestor:: ancestor-or-self:: preceding:: preceding-sibling:: NaN",i={className:"built_in",variants:[{begin:/\barray\:/,end:/(?:append|filter|flatten|fold\-(?:left|right)|for-each(?:\-pair)?|get|head|insert\-before|join|put|remove|reverse|size|sort|subarray|tail)\b/},{begin:/\bmap\:/,end:/(?:contains|entry|find|for\-each|get|keys|merge|put|remove|size)\b/},{begin:/\bmath\:/,end:/(?:a(?:cos|sin|tan[2]?)|cos|exp(?:10)?|log(?:10)?|pi|pow|sin|sqrt|tan)\b/},{begin:/\bop\:/,end:/\(/,excludeEnd:!0},{begin:/\bfn\:/,end:/\(/,excludeEnd:!0},{begin:/[^<\/\$\:'"-]\b(?:abs|accumulator\-(?:after|before)|adjust\-(?:date(?:Time)?|time)\-to\-timezone|analyze\-string|apply|available\-(?:environment\-variables|system\-properties)|avg|base\-uri|boolean|ceiling|codepoints?\-(?:equal|to\-string)|collation\-key|collection|compare|concat|contains(?:\-token)?|copy\-of|count|current(?:\-)?(?:date(?:Time)?|time|group(?:ing\-key)?|output\-uri|merge\-(?:group|key))?data|dateTime|days?\-from\-(?:date(?:Time)?|duration)|deep\-equal|default\-(?:collation|language)|distinct\-values|document(?:\-uri)?|doc(?:\-available)?|element\-(?:available|with\-id)|empty|encode\-for\-uri|ends\-with|environment\-variable|error|escape\-html\-uri|exactly\-one|exists|false|filter|floor|fold\-(?:left|right)|for\-each(?:\-pair)?|format\-(?:date(?:Time)?|time|integer|number)|function\-(?:arity|available|lookup|name)|generate\-id|has\-children|head|hours\-from\-(?:dateTime|duration|time)|id(?:ref)?|implicit\-timezone|in\-scope\-prefixes|index\-of|innermost|insert\-before|iri\-to\-uri|json\-(?:doc|to\-xml)|key|lang|last|load\-xquery\-module|local\-name(?:\-from\-QName)?|(?:lower|upper)\-case|matches|max|minutes\-from\-(?:dateTime|duration|time)|min|months?\-from\-(?:date(?:Time)?|duration)|name(?:space\-uri\-?(?:for\-prefix|from\-QName)?)?|nilled|node\-name|normalize\-(?:space|unicode)|not|number|one\-or\-more|outermost|parse\-(?:ietf\-date|json)|path|position|(?:prefix\-from\-)?QName|random\-number\-generator|regex\-group|remove|replace|resolve\-(?:QName|uri)|reverse|root|round(?:\-half\-to\-even)?|seconds\-from\-(?:dateTime|duration|time)|snapshot|sort|starts\-with|static\-base\-uri|stream\-available|string\-?(?:join|length|to\-codepoints)?|subsequence|substring\-?(?:after|before)?|sum|system\-property|tail|timezone\-from\-(?:date(?:Time)?|time)|tokenize|trace|trans(?:form|late)|true|type\-available|unordered|unparsed\-(?:entity|text)?\-?(?:public\-id|uri|available|lines)?|uri\-collection|xml\-to\-json|years?\-from\-(?:date(?:Time)?|duration)|zero\-or\-one)\b/},{begin:/\blocal\:/,end:/\(/,excludeEnd:!0},{begin:/\bzip\:/,end:/(?:zip\-file|(?:xml|html|text|binary)\-entry| (?:update\-)?entries)\b/},{begin:/\b(?:util|db|functx|app|xdmp|xmldb)\:/,end:/\(/,excludeEnd:!0}]},a={className:"title",begin:/\bxquery version "[13]\.[01]"\s?(?:encoding ".+")?/,end:/;/},o={className:"variable",begin:/[\$][\w-:]+/},s={className:"number",begin:"(\\b0[0-7_]+)|(\\b0x[0-9a-fA-F_]+)|(\\b[1-9][0-9_]*(\\.[0-9_]+)?)|[0_]\\b",relevance:0},l={className:"string",variants:[{begin:/"/,end:/"/,contains:[{begin:/""/,relevance:0}]},{begin:/'/,end:/'/,contains:[{begin:/''/,relevance:0}]}]},c={className:"meta",begin:/%[\w-:]+/},d={className:"comment",begin:"\\(:",end:":\\)",relevance:10,contains:[{className:"doctag",begin:"@\\w+"}]},u={beginKeywords:"element attribute comment document processing-instruction",end:"{",excludeEnd:!0},_={begin:/<([\w\._:\-]+)((\s*.*)=('|").*('|"))?>/,end:/(\/[\w\._:\-]+>)/,subLanguage:"xml",contains:[{begin:"{",end:"}",subLanguage:"xquery"},"self"]},p=[o,i,l,s,d,c,a,u,_];return{aliases:["xpath","xq"],case_insensitive:!1,lexemes:/[a-zA-Z\$][a-zA-Z0-9_:\-]*/,illegal:/(proc)|(abstract)|(extends)|(until)|(#)/,keywords:{keyword:t,type:n,literal:r},contains:p}}},"26bc":function(e,t){e.exports=function(e){var t="([a-zA-Z]|\\.[a-zA-Z.])[a-zA-Z0-9._]*";return{contains:[e.HASH_COMMENT_MODE,{begin:t,lexemes:t,keywords:{keyword:"function if in break next repeat else for return switch while try tryCatch stop warning require library attach detach source setMethod setGeneric setGroupGeneric setClass ...",literal:"NULL NA TRUE FALSE T F Inf NaN NA_integer_|10 NA_real_|10 NA_character_|10 NA_complex_|10"},relevance:0},{className:"number",begin:"0[xX][0-9a-fA-F]+[Li]?\\b",relevance:0},{className:"number",begin:"\\d+(?:[eE][+\\-]?\\d*)?L\\b",relevance:0},{className:"number",begin:"\\d+\\.(?!\\d)(?:i\\b)?",relevance:0},{className:"number",begin:"\\d+(?:\\.\\d*)?(?:[eE][+\\-]?\\d*)?i?\\b",relevance:0},{className:"number",begin:"\\.\\d+(?:[eE][+\\-]?\\d*)?i?\\b",relevance:0},{begin:"`",end:"`",relevance:0},{className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:'"',end:'"'},{begin:"'",end:"'"}]}]}}},2877:function(e,t,n){"use strict";function r(e,t,n,r,i,a,o,s){var l,c="function"===typeof e?e.options:e;if(t&&(c.render=t,c.staticRenderFns=n,c._compiled=!0),r&&(c.functional=!0),a&&(c._scopeId="data-v-"+a),o?(l=function(e){e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext,e||"undefined"===typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),i&&i.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(o)},c._ssrRegister=l):i&&(l=s?function(){i.call(this,(c.functional?this.parent:this).$root.$options.shadowRoot)}:i),l)if(c.functional){c._injectStyles=l;var d=c.render;c.render=function(e,t){return l.call(t),d(e,t)}}else{var u=c.beforeCreate;c.beforeCreate=u?[].concat(u,l):[l]}return{exports:e,options:c}}n.d(t,"a",(function(){return r}))},"28ad":function(e,t){e.exports=function(e){var t={className:"subst",begin:/\\[tn"\\]/},n={className:"string",begin:'"',end:'"',contains:[t]},r={className:"number",begin:e.C_NUMBER_RE},i={className:"literal",variants:[{begin:"\\b(?:PI|TWO_PI|PI_BY_TWO|DEG_TO_RAD|RAD_TO_DEG|SQRT2)\\b"},{begin:"\\b(?:XP_ERROR_(?:EXPERIENCES_DISABLED|EXPERIENCE_(?:DISABLED|SUSPENDED)|INVALID_(?:EXPERIENCE|PARAMETERS)|KEY_NOT_FOUND|MATURITY_EXCEEDED|NONE|NOT_(?:FOUND|PERMITTED(?:_LAND)?)|NO_EXPERIENCE|QUOTA_EXCEEDED|RETRY_UPDATE|STORAGE_EXCEPTION|STORE_DISABLED|THROTTLED|UNKNOWN_ERROR)|JSON_APPEND|STATUS_(?:PHYSICS|ROTATE_[XYZ]|PHANTOM|SANDBOX|BLOCK_GRAB(?:_OBJECT)?|(?:DIE|RETURN)_AT_EDGE|CAST_SHADOWS|OK|MALFORMED_PARAMS|TYPE_MISMATCH|BOUNDS_ERROR|NOT_(?:FOUND|SUPPORTED)|INTERNAL_ERROR|WHITELIST_FAILED)|AGENT(?:_(?:BY_(?:LEGACY_|USER)NAME|FLYING|ATTACHMENTS|SCRIPTED|MOUSELOOK|SITTING|ON_OBJECT|AWAY|WALKING|IN_AIR|TYPING|CROUCHING|BUSY|ALWAYS_RUN|AUTOPILOT|LIST_(?:PARCEL(?:_OWNER)?|REGION)))?|CAMERA_(?:PITCH|DISTANCE|BEHINDNESS_(?:ANGLE|LAG)|(?:FOCUS|POSITION)(?:_(?:THRESHOLD|LOCKED|LAG))?|FOCUS_OFFSET|ACTIVE)|ANIM_ON|LOOP|REVERSE|PING_PONG|SMOOTH|ROTATE|SCALE|ALL_SIDES|LINK_(?:ROOT|SET|ALL_(?:OTHERS|CHILDREN)|THIS)|ACTIVE|PASS(?:IVE|_(?:ALWAYS|IF_NOT_HANDLED|NEVER))|SCRIPTED|CONTROL_(?:FWD|BACK|(?:ROT_)?(?:LEFT|RIGHT)|UP|DOWN|(?:ML_)?LBUTTON)|PERMISSION_(?:RETURN_OBJECTS|DEBIT|OVERRIDE_ANIMATIONS|SILENT_ESTATE_MANAGEMENT|TAKE_CONTROLS|TRIGGER_ANIMATION|ATTACH|CHANGE_LINKS|(?:CONTROL|TRACK)_CAMERA|TELEPORT)|INVENTORY_(?:TEXTURE|SOUND|OBJECT|SCRIPT|LANDMARK|CLOTHING|NOTECARD|BODYPART|ANIMATION|GESTURE|ALL|NONE)|CHANGED_(?:INVENTORY|COLOR|SHAPE|SCALE|TEXTURE|LINK|ALLOWED_DROP|OWNER|REGION(?:_START)?|TELEPORT|MEDIA)|OBJECT_(?:CLICK_ACTION|HOVER_HEIGHT|LAST_OWNER_ID|(?:PHYSICS|SERVER|STREAMING)_COST|UNKNOWN_DETAIL|CHARACTER_TIME|PHANTOM|PHYSICS|TEMP_(?:ATTACHED|ON_REZ)|NAME|DESC|POS|PRIM_(?:COUNT|EQUIVALENCE)|RETURN_(?:PARCEL(?:_OWNER)?|REGION)|REZZER_KEY|ROO?T|VELOCITY|OMEGA|OWNER|GROUP(?:_TAG)?|CREATOR|ATTACHED_(?:POINT|SLOTS_AVAILABLE)|RENDER_WEIGHT|(?:BODY_SHAPE|PATHFINDING)_TYPE|(?:RUNNING|TOTAL)_SCRIPT_COUNT|TOTAL_INVENTORY_COUNT|SCRIPT_(?:MEMORY|TIME))|TYPE_(?:INTEGER|FLOAT|STRING|KEY|VECTOR|ROTATION|INVALID)|(?:DEBUG|PUBLIC)_CHANNEL|ATTACH_(?:AVATAR_CENTER|CHEST|HEAD|BACK|PELVIS|MOUTH|CHIN|NECK|NOSE|BELLY|[LR](?:SHOULDER|HAND|FOOT|EAR|EYE|[UL](?:ARM|LEG)|HIP)|(?:LEFT|RIGHT)_PEC|HUD_(?:CENTER_[12]|TOP_(?:RIGHT|CENTER|LEFT)|BOTTOM(?:_(?:RIGHT|LEFT))?)|[LR]HAND_RING1|TAIL_(?:BASE|TIP)|[LR]WING|FACE_(?:JAW|[LR]EAR|[LR]EYE|TOUNGE)|GROIN|HIND_[LR]FOOT)|LAND_(?:LEVEL|RAISE|LOWER|SMOOTH|NOISE|REVERT)|DATA_(?:ONLINE|NAME|BORN|SIM_(?:POS|STATUS|RATING)|PAYINFO)|PAYMENT_INFO_(?:ON_FILE|USED)|REMOTE_DATA_(?:CHANNEL|REQUEST|REPLY)|PSYS_(?:PART_(?:BF_(?:ZERO|ONE(?:_MINUS_(?:DEST_COLOR|SOURCE_(ALPHA|COLOR)))?|DEST_COLOR|SOURCE_(ALPHA|COLOR))|BLEND_FUNC_(DEST|SOURCE)|FLAGS|(?:START|END)_(?:COLOR|ALPHA|SCALE|GLOW)|MAX_AGE|(?:RIBBON|WIND|INTERP_(?:COLOR|SCALE)|BOUNCE|FOLLOW_(?:SRC|VELOCITY)|TARGET_(?:POS|LINEAR)|EMISSIVE)_MASK)|SRC_(?:MAX_AGE|PATTERN|ANGLE_(?:BEGIN|END)|BURST_(?:RATE|PART_COUNT|RADIUS|SPEED_(?:MIN|MAX))|ACCEL|TEXTURE|TARGET_KEY|OMEGA|PATTERN_(?:DROP|EXPLODE|ANGLE(?:_CONE(?:_EMPTY)?)?)))|VEHICLE_(?:REFERENCE_FRAME|TYPE_(?:NONE|SLED|CAR|BOAT|AIRPLANE|BALLOON)|(?:LINEAR|ANGULAR)_(?:FRICTION_TIMESCALE|MOTOR_DIRECTION)|LINEAR_MOTOR_OFFSET|HOVER_(?:HEIGHT|EFFICIENCY|TIMESCALE)|BUOYANCY|(?:LINEAR|ANGULAR)_(?:DEFLECTION_(?:EFFICIENCY|TIMESCALE)|MOTOR_(?:DECAY_)?TIMESCALE)|VERTICAL_ATTRACTION_(?:EFFICIENCY|TIMESCALE)|BANKING_(?:EFFICIENCY|MIX|TIMESCALE)|FLAG_(?:NO_DEFLECTION_UP|LIMIT_(?:ROLL_ONLY|MOTOR_UP)|HOVER_(?:(?:WATER|TERRAIN|UP)_ONLY|GLOBAL_HEIGHT)|MOUSELOOK_(?:STEER|BANK)|CAMERA_DECOUPLED))|PRIM_(?:ALLOW_UNSIT|ALPHA_MODE(?:_(?:BLEND|EMISSIVE|MASK|NONE))?|NORMAL|SPECULAR|TYPE(?:_(?:BOX|CYLINDER|PRISM|SPHERE|TORUS|TUBE|RING|SCULPT))?|HOLE_(?:DEFAULT|CIRCLE|SQUARE|TRIANGLE)|MATERIAL(?:_(?:STONE|METAL|GLASS|WOOD|FLESH|PLASTIC|RUBBER))?|SHINY_(?:NONE|LOW|MEDIUM|HIGH)|BUMP_(?:NONE|BRIGHT|DARK|WOOD|BARK|BRICKS|CHECKER|CONCRETE|TILE|STONE|DISKS|GRAVEL|BLOBS|SIDING|LARGETILE|STUCCO|SUCTION|WEAVE)|TEXGEN_(?:DEFAULT|PLANAR)|SCRIPTED_SIT_ONLY|SCULPT_(?:TYPE_(?:SPHERE|TORUS|PLANE|CYLINDER|MASK)|FLAG_(?:MIRROR|INVERT))|PHYSICS(?:_(?:SHAPE_(?:CONVEX|NONE|PRIM|TYPE)))?|(?:POS|ROT)_LOCAL|SLICE|TEXT|FLEXIBLE|POINT_LIGHT|TEMP_ON_REZ|PHANTOM|POSITION|SIT_TARGET|SIZE|ROTATION|TEXTURE|NAME|OMEGA|DESC|LINK_TARGET|COLOR|BUMP_SHINY|FULLBRIGHT|TEXGEN|GLOW|MEDIA_(?:ALT_IMAGE_ENABLE|CONTROLS|(?:CURRENT|HOME)_URL|AUTO_(?:LOOP|PLAY|SCALE|ZOOM)|FIRST_CLICK_INTERACT|(?:WIDTH|HEIGHT)_PIXELS|WHITELIST(?:_ENABLE)?|PERMS_(?:INTERACT|CONTROL)|PARAM_MAX|CONTROLS_(?:STANDARD|MINI)|PERM_(?:NONE|OWNER|GROUP|ANYONE)|MAX_(?:URL_LENGTH|WHITELIST_(?:SIZE|COUNT)|(?:WIDTH|HEIGHT)_PIXELS)))|MASK_(?:BASE|OWNER|GROUP|EVERYONE|NEXT)|PERM_(?:TRANSFER|MODIFY|COPY|MOVE|ALL)|PARCEL_(?:MEDIA_COMMAND_(?:STOP|PAUSE|PLAY|LOOP|TEXTURE|URL|TIME|AGENT|UNLOAD|AUTO_ALIGN|TYPE|SIZE|DESC|LOOP_SET)|FLAG_(?:ALLOW_(?:FLY|(?:GROUP_)?SCRIPTS|LANDMARK|TERRAFORM|DAMAGE|CREATE_(?:GROUP_)?OBJECTS)|USE_(?:ACCESS_(?:GROUP|LIST)|BAN_LIST|LAND_PASS_LIST)|LOCAL_SOUND_ONLY|RESTRICT_PUSHOBJECT|ALLOW_(?:GROUP|ALL)_OBJECT_ENTRY)|COUNT_(?:TOTAL|OWNER|GROUP|OTHER|SELECTED|TEMP)|DETAILS_(?:NAME|DESC|OWNER|GROUP|AREA|ID|SEE_AVATARS))|LIST_STAT_(?:MAX|MIN|MEAN|MEDIAN|STD_DEV|SUM(?:_SQUARES)?|NUM_COUNT|GEOMETRIC_MEAN|RANGE)|PAY_(?:HIDE|DEFAULT)|REGION_FLAG_(?:ALLOW_DAMAGE|FIXED_SUN|BLOCK_TERRAFORM|SANDBOX|DISABLE_(?:COLLISIONS|PHYSICS)|BLOCK_FLY|ALLOW_DIRECT_TELEPORT|RESTRICT_PUSHOBJECT)|HTTP_(?:METHOD|MIMETYPE|BODY_(?:MAXLENGTH|TRUNCATED)|CUSTOM_HEADER|PRAGMA_NO_CACHE|VERBOSE_THROTTLE|VERIFY_CERT)|SIT_(?:INVALID_(?:AGENT|LINK_OBJECT)|NO(?:T_EXPERIENCE|_(?:ACCESS|EXPERIENCE_PERMISSION|SIT_TARGET)))|STRING_(?:TRIM(?:_(?:HEAD|TAIL))?)|CLICK_ACTION_(?:NONE|TOUCH|SIT|BUY|PAY|OPEN(?:_MEDIA)?|PLAY|ZOOM)|TOUCH_INVALID_FACE|PROFILE_(?:NONE|SCRIPT_MEMORY)|RC_(?:DATA_FLAGS|DETECT_PHANTOM|GET_(?:LINK_NUM|NORMAL|ROOT_KEY)|MAX_HITS|REJECT_(?:TYPES|AGENTS|(?:NON)?PHYSICAL|LAND))|RCERR_(?:CAST_TIME_EXCEEDED|SIM_PERF_LOW|UNKNOWN)|ESTATE_ACCESS_(?:ALLOWED_(?:AGENT|GROUP)_(?:ADD|REMOVE)|BANNED_AGENT_(?:ADD|REMOVE))|DENSITY|FRICTION|RESTITUTION|GRAVITY_MULTIPLIER|KFM_(?:COMMAND|CMD_(?:PLAY|STOP|PAUSE)|MODE|FORWARD|LOOP|PING_PONG|REVERSE|DATA|ROTATION|TRANSLATION)|ERR_(?:GENERIC|PARCEL_PERMISSIONS|MALFORMED_PARAMS|RUNTIME_PERMISSIONS|THROTTLED)|CHARACTER_(?:CMD_(?:(?:SMOOTH_)?STOP|JUMP)|DESIRED_(?:TURN_)?SPEED|RADIUS|STAY_WITHIN_PARCEL|LENGTH|ORIENTATION|ACCOUNT_FOR_SKIPPED_FRAMES|AVOIDANCE_MODE|TYPE(?:_(?:[ABCD]|NONE))?|MAX_(?:DECEL|TURN_RADIUS|(?:ACCEL|SPEED)))|PURSUIT_(?:OFFSET|FUZZ_FACTOR|GOAL_TOLERANCE|INTERCEPT)|REQUIRE_LINE_OF_SIGHT|FORCE_DIRECT_PATH|VERTICAL|HORIZONTAL|AVOID_(?:CHARACTERS|DYNAMIC_OBSTACLES|NONE)|PU_(?:EVADE_(?:HIDDEN|SPOTTED)|FAILURE_(?:DYNAMIC_PATHFINDING_DISABLED|INVALID_(?:GOAL|START)|NO_(?:NAVMESH|VALID_DESTINATION)|OTHER|TARGET_GONE|(?:PARCEL_)?UNREACHABLE)|(?:GOAL|SLOWDOWN_DISTANCE)_REACHED)|TRAVERSAL_TYPE(?:_(?:FAST|NONE|SLOW))?|CONTENT_TYPE_(?:ATOM|FORM|HTML|JSON|LLSD|RSS|TEXT|XHTML|XML)|GCNP_(?:RADIUS|STATIC)|(?:PATROL|WANDER)_PAUSE_AT_WAYPOINTS|OPT_(?:AVATAR|CHARACTER|EXCLUSION_VOLUME|LEGACY_LINKSET|MATERIAL_VOLUME|OTHER|STATIC_OBSTACLE|WALKABLE)|SIM_STAT_PCT_CHARS_STEPPED)\\b"},{begin:"\\b(?:FALSE|TRUE)\\b"},{begin:"\\b(?:ZERO_ROTATION)\\b"},{begin:"\\b(?:EOF|JSON_(?:ARRAY|DELETE|FALSE|INVALID|NULL|NUMBER|OBJECT|STRING|TRUE)|NULL_KEY|TEXTURE_(?:BLANK|DEFAULT|MEDIA|PLYWOOD|TRANSPARENT)|URL_REQUEST_(?:GRANTED|DENIED))\\b"},{begin:"\\b(?:ZERO_VECTOR|TOUCH_INVALID_(?:TEXCOORD|VECTOR))\\b"}]},a={className:"built_in",begin:"\\b(?:ll(?:AgentInExperience|(?:Create|DataSize|Delete|KeyCount|Keys|Read|Update)KeyValue|GetExperience(?:Details|ErrorMessage)|ReturnObjectsBy(?:ID|Owner)|Json(?:2List|[GS]etValue|ValueType)|Sin|Cos|Tan|Atan2|Sqrt|Pow|Abs|Fabs|Frand|Floor|Ceil|Round|Vec(?:Mag|Norm|Dist)|Rot(?:Between|2(?:Euler|Fwd|Left|Up))|(?:Euler|Axes)2Rot|Whisper|(?:Region|Owner)?Say|Shout|Listen(?:Control|Remove)?|Sensor(?:Repeat|Remove)?|Detected(?:Name|Key|Owner|Type|Pos|Vel|Grab|Rot|Group|LinkNumber)|Die|Ground|Wind|(?:[GS]et)(?:AnimationOverride|MemoryLimit|PrimMediaParams|ParcelMusicURL|Object(?:Desc|Name)|PhysicsMaterial|Status|Scale|Color|Alpha|Texture|Pos|Rot|Force|Torque)|ResetAnimationOverride|(?:Scale|Offset|Rotate)Texture|(?:Rot)?Target(?:Remove)?|(?:Stop)?MoveToTarget|Apply(?:Rotational)?Impulse|Set(?:KeyframedMotion|ContentType|RegionPos|(?:Angular)?Velocity|Buoyancy|HoverHeight|ForceAndTorque|TimerEvent|ScriptState|Damage|TextureAnim|Sound(?:Queueing|Radius)|Vehicle(?:Type|(?:Float|Vector|Rotation)Param)|(?:Touch|Sit)?Text|Camera(?:Eye|At)Offset|PrimitiveParams|ClickAction|Link(?:Alpha|Color|PrimitiveParams(?:Fast)?|Texture(?:Anim)?|Camera|Media)|RemoteScriptAccessPin|PayPrice|LocalRot)|ScaleByFactor|Get(?:(?:Max|Min)ScaleFactor|ClosestNavPoint|StaticPath|SimStats|Env|PrimitiveParams|Link(?:PrimitiveParams|Number(?:OfSides)?|Key|Name|Media)|HTTPHeader|FreeURLs|Object(?:Details|PermMask|PrimCount)|Parcel(?:MaxPrims|Details|Prim(?:Count|Owners))|Attached(?:List)?|(?:SPMax|Free|Used)Memory|Region(?:Name|TimeDilation|FPS|Corner|AgentCount)|Root(?:Position|Rotation)|UnixTime|(?:Parcel|Region)Flags|(?:Wall|GMT)clock|SimulatorHostname|BoundingBox|GeometricCenter|Creator|NumberOf(?:Prims|NotecardLines|Sides)|Animation(?:List)?|(?:Camera|Local)(?:Pos|Rot)|Vel|Accel|Omega|Time(?:stamp|OfDay)|(?:Object|CenterOf)?Mass|MassMKS|Energy|Owner|(?:Owner)?Key|SunDirection|Texture(?:Offset|Scale|Rot)|Inventory(?:Number|Name|Key|Type|Creator|PermMask)|Permissions(?:Key)?|StartParameter|List(?:Length|EntryType)|Date|Agent(?:Size|Info|Language|List)|LandOwnerAt|NotecardLine|Script(?:Name|State))|(?:Get|Reset|GetAndReset)Time|PlaySound(?:Slave)?|LoopSound(?:Master|Slave)?|(?:Trigger|Stop|Preload)Sound|(?:(?:Get|Delete)Sub|Insert)String|To(?:Upper|Lower)|Give(?:InventoryList|Money)|RezObject|(?:Stop)?LookAt|Sleep|CollisionFilter|(?:Take|Release)Controls|DetachFromAvatar|AttachToAvatar(?:Temp)?|InstantMessage|(?:GetNext)?Email|StopHover|MinEventDelay|RotLookAt|String(?:Length|Trim)|(?:Start|Stop)Animation|TargetOmega|Request(?:Experience)?Permissions|(?:Create|Break)Link|BreakAllLinks|(?:Give|Remove)Inventory|Water|PassTouches|Request(?:Agent|Inventory)Data|TeleportAgent(?:Home|GlobalCoords)?|ModifyLand|CollisionSound|ResetScript|MessageLinked|PushObject|PassCollisions|AxisAngle2Rot|Rot2(?:Axis|Angle)|A(?:cos|sin)|AngleBetween|AllowInventoryDrop|SubStringIndex|List2(?:CSV|Integer|Json|Float|String|Key|Vector|Rot|List(?:Strided)?)|DeleteSubList|List(?:Statistics|Sort|Randomize|(?:Insert|Find|Replace)List)|EdgeOfWorld|AdjustSoundVolume|Key2Name|TriggerSoundLimited|EjectFromLand|(?:CSV|ParseString)2List|OverMyLand|SameGroup|UnSit|Ground(?:Slope|Normal|Contour)|GroundRepel|(?:Set|Remove)VehicleFlags|SitOnLink|(?:AvatarOn)?(?:Link)?SitTarget|Script(?:Danger|Profiler)|Dialog|VolumeDetect|ResetOtherScript|RemoteLoadScriptPin|(?:Open|Close)RemoteDataChannel|SendRemoteData|RemoteDataReply|(?:Integer|String)ToBase64|XorBase64|Log(?:10)?|Base64To(?:String|Integer)|ParseStringKeepNulls|RezAtRoot|RequestSimulatorData|ForceMouselook|(?:Load|Release|(?:E|Une)scape)URL|ParcelMedia(?:CommandList|Query)|ModPow|MapDestination|(?:RemoveFrom|AddTo|Reset)Land(?:Pass|Ban)List|(?:Set|Clear)CameraParams|HTTP(?:Request|Response)|TextBox|DetectedTouch(?:UV|Face|Pos|(?:N|Bin)ormal|ST)|(?:MD5|SHA1|DumpList2)String|Request(?:Secure)?URL|Clear(?:Prim|Link)Media|(?:Link)?ParticleSystem|(?:Get|Request)(?:Username|DisplayName)|RegionSayTo|CastRay|GenerateKey|TransferLindenDollars|ManageEstateAccess|(?:Create|Delete)Character|ExecCharacterCmd|Evade|FleeFrom|NavigateTo|PatrolPoints|Pursue|UpdateCharacter|WanderWithin))\\b"};return{illegal:":",contains:[n,{className:"comment",variants:[e.COMMENT("//","$"),e.COMMENT("/\\*","\\*/")],relevance:0},r,{className:"section",variants:[{begin:"\\b(?:state|default)\\b"},{begin:"\\b(?:state_(?:entry|exit)|touch(?:_(?:start|end))?|(?:land_)?collision(?:_(?:start|end))?|timer|listen|(?:no_)?sensor|control|(?:not_)?at_(?:rot_)?target|money|email|experience_permissions(?:_denied)?|run_time_permissions|changed|attach|dataserver|moving_(?:start|end)|link_message|(?:on|object)_rez|remote_data|http_re(?:sponse|quest)|path_update|transaction_result)\\b"}]},a,i,{className:"type",begin:"\\b(?:integer|float|string|key|vector|quaternion|rotation|list)\\b"}]}}},2907:function(e,t){e.exports=function(e){var t={begin:"\\$+[a-zA-Z_-ΓΏ][a-zA-Z0-9_-ΓΏ]*"},n={className:"meta",begin:/<\?(php)?|\?>/},r={className:"string",contains:[e.BACKSLASH_ESCAPE,n],variants:[{begin:'b"',end:'"'},{begin:"b'",end:"'"},e.inherit(e.APOS_STRING_MODE,{illegal:null}),e.inherit(e.QUOTE_STRING_MODE,{illegal:null})]},i={variants:[e.BINARY_NUMBER_MODE,e.C_NUMBER_MODE]};return{aliases:["php","php3","php4","php5","php6","php7"],case_insensitive:!0,keywords:"and include_once list abstract global private echo interface as static endswitch array null if endwhile or const for endforeach self var while isset public protected exit foreach throw elseif include __FILE__ empty require_once do xor return parent clone use __CLASS__ __LINE__ else break print eval new catch __METHOD__ case exception default die require __FUNCTION__ enddeclare final try switch continue endfor endif declare unset true false trait goto instanceof insteadof __DIR__ __NAMESPACE__ yield finally",contains:[e.HASH_COMMENT_MODE,e.COMMENT("//","$",{contains:[n]}),e.COMMENT("/\\*","\\*/",{contains:[{className:"doctag",begin:"@[A-Za-z]+"}]}),e.COMMENT("__halt_compiler.+?;",!1,{endsWithParent:!0,keywords:"__halt_compiler",lexemes:e.UNDERSCORE_IDENT_RE}),{className:"string",begin:/<<<['"]?\w+['"]?$/,end:/^\w+;?$/,contains:[e.BACKSLASH_ESCAPE,{className:"subst",variants:[{begin:/\$\w+/},{begin:/\{\$/,end:/\}/}]}]},n,{className:"keyword",begin:/\$this\b/},t,{begin:/(::|->)+[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/},{className:"function",beginKeywords:"function",end:/[;{]/,excludeEnd:!0,illegal:"\\$|\\[|%",contains:[e.UNDERSCORE_TITLE_MODE,{className:"params",begin:"\\(",end:"\\)",contains:["self",t,e.C_BLOCK_COMMENT_MODE,r,i]}]},{className:"class",beginKeywords:"class interface",end:"{",excludeEnd:!0,illegal:/[:\(\$"]/,contains:[{beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE]},{beginKeywords:"namespace",end:";",illegal:/[\.']/,contains:[e.UNDERSCORE_TITLE_MODE]},{beginKeywords:"use",end:";",contains:[e.UNDERSCORE_TITLE_MODE]},{begin:"=>"},r,i]}}},"294a":function(e,t){e.exports=function(e){var t="(_*[ui](8|16|32|64|128))?",n="(_*f(32|64))?",r="[a-zA-Z_]\\w*[!?=]?",i="[a-zA-Z_]\\w*[!?=]?|[-+~]\\@|<<|>>|[=!]~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~|]|//|//=|&[-+*]=?|&\\*\\*|\\[\\][=?]?",a="[A-Za-z_]\\w*(::\\w+)*(\\?|\\!)?",o={keyword:"abstract alias annotation as as? asm begin break case class def do else elsif end ensure enum extend for fun if include instance_sizeof is_a? lib macro module next nil? of out pointerof private protected rescue responds_to? return require select self sizeof struct super then type typeof union uninitialized unless until verbatim when while with yield __DIR__ __END_LINE__ __FILE__ __LINE__",literal:"false nil true"},s={className:"subst",begin:"#{",end:"}",keywords:o},l={className:"template-variable",variants:[{begin:"\\{\\{",end:"\\}\\}"},{begin:"\\{%",end:"%\\}"}],keywords:o};function c(e,t){var n=[{begin:e,end:t}];return n[0].contains=n,n}var d={className:"string",contains:[e.BACKSLASH_ESCAPE,s],variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/`/,end:/`/},{begin:"%[Qwi]?\\(",end:"\\)",contains:c("\\(","\\)")},{begin:"%[Qwi]?\\[",end:"\\]",contains:c("\\[","\\]")},{begin:"%[Qwi]?{",end:"}",contains:c("{","}")},{begin:"%[Qwi]?<",end:">",contains:c("<",">")},{begin:"%[Qwi]?\\|",end:"\\|"},{begin:/<<-\w+$/,end:/^\s*\w+$/}],relevance:0},u={className:"string",variants:[{begin:"%q\\(",end:"\\)",contains:c("\\(","\\)")},{begin:"%q\\[",end:"\\]",contains:c("\\[","\\]")},{begin:"%q{",end:"}",contains:c("{","}")},{begin:"%q<",end:">",contains:c("<",">")},{begin:"%q\\|",end:"\\|"},{begin:/<<-'\w+'$/,end:/^\s*\w+$/}],relevance:0},_={begin:"(?!%})("+e.RE_STARTERS_RE+"|\\n|\\b(case|if|select|unless|until|when|while)\\b)\\s*",keywords:"case if select unless until when while",contains:[{className:"regexp",contains:[e.BACKSLASH_ESCAPE,s],variants:[{begin:"//[a-z]*",relevance:0},{begin:"/(?!\\/)",end:"/[a-z]*"}]}],relevance:0},p={className:"regexp",contains:[e.BACKSLASH_ESCAPE,s],variants:[{begin:"%r\\(",end:"\\)",contains:c("\\(","\\)")},{begin:"%r\\[",end:"\\]",contains:c("\\[","\\]")},{begin:"%r{",end:"}",contains:c("{","}")},{begin:"%r<",end:">",contains:c("<",">")},{begin:"%r\\|",end:"\\|"}],relevance:0},f={className:"meta",begin:"@\\[",end:"\\]",contains:[e.inherit(e.QUOTE_STRING_MODE,{className:"meta-string"})]},m=[l,d,u,p,_,f,e.HASH_COMMENT_MODE,{className:"class",beginKeywords:"class module struct",end:"$|;",illegal:/=/,contains:[e.HASH_COMMENT_MODE,e.inherit(e.TITLE_MODE,{begin:a}),{begin:"<"}]},{className:"class",beginKeywords:"lib enum union",end:"$|;",illegal:/=/,contains:[e.HASH_COMMENT_MODE,e.inherit(e.TITLE_MODE,{begin:a})],relevance:10},{beginKeywords:"annotation",end:"$|;",illegal:/=/,contains:[e.HASH_COMMENT_MODE,e.inherit(e.TITLE_MODE,{begin:a})],relevance:10},{className:"function",beginKeywords:"def",end:/\B\b/,contains:[e.inherit(e.TITLE_MODE,{begin:i,endsParent:!0})]},{className:"function",beginKeywords:"fun macro",end:/\B\b/,contains:[e.inherit(e.TITLE_MODE,{begin:i,endsParent:!0})],relevance:5},{className:"symbol",begin:e.UNDERSCORE_IDENT_RE+"(\\!|\\?)?:",relevance:0},{className:"symbol",begin:":",contains:[d,{begin:i}],relevance:0},{className:"number",variants:[{begin:"\\b0b([01_]+)"+t},{begin:"\\b0o([0-7_]+)"+t},{begin:"\\b0x([A-Fa-f0-9_]+)"+t},{begin:"\\b([1-9][0-9_]*[0-9]|[0-9])(\\.[0-9][0-9_]*)?([eE]_*[-+]?[0-9_]*)?"+n+"(?!_)"},{begin:"\\b([1-9][0-9_]*|0)"+t}],relevance:0}];return s.contains=m,l.contains=m.slice(1),{aliases:["cr"],lexemes:r,keywords:o,contains:m}}},"29c8":function(e,t){e.exports=function(e){var t={className:"tag",begin:/\\/,relevance:0,contains:[{className:"name",variants:[{begin:/[a-zA-Z\u0430-\u044f\u0410-\u042f]+[*]?/},{begin:/[^a-zA-Z\u0430-\u044f\u0410-\u042f0-9]/}],starts:{endsWithParent:!0,relevance:0,contains:[{className:"string",variants:[{begin:/\[/,end:/\]/},{begin:/\{/,end:/\}/}]},{begin:/\s*=\s*/,endsWithParent:!0,relevance:0,contains:[{className:"number",begin:/-?\d*\.?\d+(pt|pc|mm|cm|in|dd|cc|ex|em)?/}]}]}}]};return{contains:[t,{className:"formula",contains:[t],relevance:0,variants:[{begin:/\$\$/,end:/\$\$/},{begin:/\$/,end:/\$/}]},e.COMMENT("%","$",{relevance:0})]}}},"2a39":function(e,t){e.exports=function(e){var t={keyword:"#available #colorLiteral #column #else #elseif #endif #file #fileLiteral #function #if #imageLiteral #line #selector #sourceLocation _ __COLUMN__ __FILE__ __FUNCTION__ __LINE__ Any as as! as? associatedtype associativity break case catch class continue convenience default defer deinit didSet do dynamic dynamicType else enum extension fallthrough false fileprivate final for func get guard if import in indirect infix init inout internal is lazy left let mutating nil none nonmutating open operator optional override postfix precedence prefix private protocol Protocol public repeat required rethrows return right self Self set static struct subscript super switch throw throws true try try! try? Type typealias unowned var weak where while willSet",literal:"true false nil",built_in:"abs advance alignof alignofValue anyGenerator assert assertionFailure bridgeFromObjectiveC bridgeFromObjectiveCUnconditional bridgeToObjectiveC bridgeToObjectiveCUnconditional c contains count countElements countLeadingZeros debugPrint debugPrintln distance dropFirst dropLast dump encodeBitsAsWords enumerate equal fatalError filter find getBridgedObjectiveCType getVaList indices insertionSort isBridgedToObjectiveC isBridgedVerbatimToObjectiveC isUniquelyReferenced isUniquelyReferencedNonObjC join lazy lexicographicalCompare map max maxElement min minElement numericCast overlaps partition posix precondition preconditionFailure print println quickSort readLine reduce reflect reinterpretCast reverse roundUpToAlignment sizeof sizeofValue sort split startsWith stride strideof strideofValue swap toString transcode underestimateCount unsafeAddressOf unsafeBitCast unsafeDowncast unsafeUnwrap unsafeReflect withExtendedLifetime withObjectAtPlusZero withUnsafePointer withUnsafePointerToObject withUnsafeMutablePointer withUnsafeMutablePointers withUnsafePointer withUnsafePointers withVaList zip"},n={className:"type",begin:"\\b[A-Z][\\wΓ€-ΚΈ']*",relevance:0},r={className:"type",begin:"\\b[A-Z][\\wΓ€-ΚΈ']*[!?]"},i=e.COMMENT("/\\*","\\*/",{contains:["self"]}),a={className:"subst",begin:/\\\(/,end:"\\)",keywords:t,contains:[]},o={className:"string",contains:[e.BACKSLASH_ESCAPE,a],variants:[{begin:/"""/,end:/"""/},{begin:/"/,end:/"/}]},s={className:"number",begin:"\\b([\\d_]+(\\.[\\deE_]+)?|0x[a-fA-F0-9_]+(\\.[a-fA-F0-9p_]+)?|0b[01_]+|0o[0-7_]+)\\b",relevance:0};return a.contains=[s],{keywords:t,contains:[o,e.C_LINE_COMMENT_MODE,i,r,n,s,{className:"function",beginKeywords:"func",end:"{",excludeEnd:!0,contains:[e.inherit(e.TITLE_MODE,{begin:/[A-Za-z$_][0-9A-Za-z$_]*/}),{begin://},{className:"params",begin:/\(/,end:/\)/,endsParent:!0,keywords:t,contains:["self",s,o,e.C_BLOCK_COMMENT_MODE,{begin:":"}],illegal:/["']/}],illegal:/\[|%/},{className:"class",beginKeywords:"struct protocol class extension enum",keywords:t,end:"\\{",excludeEnd:!0,contains:[e.inherit(e.TITLE_MODE,{begin:/[A-Za-z$_][\u00C0-\u02B80-9A-Za-z$_]*/})]},{className:"meta",begin:"(@discardableResult|@warn_unused_result|@exported|@lazy|@noescape|@NSCopying|@NSManaged|@objc|@objcMembers|@convention|@required|@noreturn|@IBAction|@IBDesignable|@IBInspectable|@IBOutlet|@infix|@prefix|@postfix|@autoclosure|@testable|@available|@nonobjc|@NSApplicationMain|@UIApplicationMain|@dynamicMemberLookup|@propertyWrapper)"},{beginKeywords:"import",end:/$/,contains:[e.C_LINE_COMMENT_MODE,i]}]}}},"2a93":function(e,t){e.exports=function(e){var t={className:"number",relevance:0,variants:[{begin:/([\+\-]+)?[\d]+_[\d_]+/},{begin:e.NUMBER_RE}]},n=e.COMMENT();n.variants=[{begin:/;/,end:/$/},{begin:/#/,end:/$/}];var r={className:"variable",variants:[{begin:/\$[\w\d"][\w\d_]*/},{begin:/\$\{(.*?)}/}]},i={className:"literal",begin:/\bon|off|true|false|yes|no\b/},a={className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:"'''",end:"'''",relevance:10},{begin:'"""',end:'"""',relevance:10},{begin:'"',end:'"'},{begin:"'",end:"'"}]},o={begin:/\[/,end:/\]/,contains:[n,i,r,a,t,"self"],relevance:0};return{aliases:["toml"],case_insensitive:!0,illegal:/\S/,contains:[n,{className:"section",begin:/\[+/,end:/\]+/},{begin:/^[a-z0-9\[\]_\.-]+(?=\s*=\s*)/,className:"attr",starts:{end:/$/,contains:[n,o,i,r,a,t]}}]}}},"2b0e":function(e,t,n){"use strict";n.r(t),function(e){ /*! * Vue.js v2.6.12 * (c) 2014-2020 Evan You * Released under the MIT License. */ -var n=Object.freeze({});function r(e){return void 0===e||null===e}function i(e){return void 0!==e&&null!==e}function a(e){return!0===e}function o(e){return!1===e}function s(e){return"string"===typeof e||"number"===typeof e||"symbol"===typeof e||"boolean"===typeof e}function l(e){return null!==e&&"object"===typeof e}var c=Object.prototype.toString;function d(e){return"[object Object]"===c.call(e)}function u(e){return"[object RegExp]"===c.call(e)}function _(e){var t=parseFloat(String(e));return t>=0&&Math.floor(t)===t&&isFinite(e)}function p(e){return i(e)&&"function"===typeof e.then&&"function"===typeof e.catch}function f(e){return null==e?"":Array.isArray(e)||d(e)&&e.toString===c?JSON.stringify(e,null,2):String(e)}function m(e){var t=parseFloat(e);return isNaN(t)?e:t}function h(e,t){for(var n=Object.create(null),r=e.split(","),i=0;i-1)return e.splice(n,1)}}var S=Object.prototype.hasOwnProperty;function b(e,t){return S.call(e,t)}function v(e){var t=Object.create(null);return function(n){var r=t[n];return r||(t[n]=e(n))}}var y=/-(\w)/g,T=v((function(e){return e.replace(y,(function(e,t){return t?t.toUpperCase():""}))})),C=v((function(e){return e.charAt(0).toUpperCase()+e.slice(1)})),N=/\B([A-Z])/g,O=v((function(e){return e.replace(N,"-$1").toLowerCase()}));function R(e,t){function n(n){var r=arguments.length;return r?r>1?e.apply(t,arguments):e.call(t,n):e.call(t)}return n._length=e.length,n}function A(e,t){return e.bind(t)}var w=Function.prototype.bind?A:R;function I(e,t){t=t||0;var n=e.length-t,r=new Array(n);while(n--)r[n]=e[n+t];return r}function M(e,t){for(var n in t)e[n]=t[n];return e}function x(e){for(var t={},n=0;n0,ne=J&&J.indexOf("edge/")>0,re=(J&&J.indexOf("android"),J&&/iphone|ipad|ipod|ios/.test(J)||"ios"===Z),ie=(J&&/chrome\/\d+/.test(J),J&&/phantomjs/.test(J),J&&J.match(/firefox\/(\d+)/)),ae={}.watch,oe=!1;if(K)try{var se={};Object.defineProperty(se,"passive",{get:function(){oe=!0}}),window.addEventListener("test-passive",null,se)}catch(To){}var le=function(){return void 0===W&&(W=!K&&!X&&"undefined"!==typeof e&&(e["process"]&&"server"===e["process"].env.VUE_ENV)),W},ce=K&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__;function de(e){return"function"===typeof e&&/native code/.test(e.toString())}var ue,_e="undefined"!==typeof Symbol&&de(Symbol)&&"undefined"!==typeof Reflect&&de(Reflect.ownKeys);ue="undefined"!==typeof Set&&de(Set)?Set:function(){function e(){this.set=Object.create(null)}return e.prototype.has=function(e){return!0===this.set[e]},e.prototype.add=function(e){this.set[e]=!0},e.prototype.clear=function(){this.set=Object.create(null)},e}();var pe=D,fe=0,me=function(){this.id=fe++,this.subs=[]};me.prototype.addSub=function(e){this.subs.push(e)},me.prototype.removeSub=function(e){E(this.subs,e)},me.prototype.depend=function(){me.target&&me.target.addDep(this)},me.prototype.notify=function(){var e=this.subs.slice();for(var t=0,n=e.length;t-1)if(a&&!b(i,"default"))o=!1;else if(""===o||o===O(e)){var l=et(String,i.type);(l<0||s0&&(o=Rt(o,(t||"")+"_"+n),Ot(o[0])&&Ot(c)&&(d[l]=ye(c.text+o[0].text),o.shift()),d.push.apply(d,o)):s(o)?Ot(c)?d[l]=ye(c.text+o):""!==o&&d.push(ye(o)):Ot(o)&&Ot(c)?d[l]=ye(c.text+o.text):(a(e._isVList)&&i(o.tag)&&r(o.key)&&i(t)&&(o.key="__vlist"+t+"_"+n+"__"),d.push(o)));return d}function At(e){var t=e.$options.provide;t&&(e._provided="function"===typeof t?t.call(e):t)}function wt(e){var t=It(e.$options.inject,e);t&&(we(!1),Object.keys(t).forEach((function(n){Le(e,n,t[n])})),we(!0))}function It(e,t){if(e){for(var n=Object.create(null),r=_e?Reflect.ownKeys(e):Object.keys(e),i=0;i0,o=e?!!e.$stable:!a,s=e&&e.$key;if(e){if(e._normalized)return e._normalized;if(o&&r&&r!==n&&s===r.$key&&!a&&!r.$hasNormal)return r;for(var l in i={},e)e[l]&&"$"!==l[0]&&(i[l]=Lt(t,l,e[l]))}else i={};for(var c in t)c in i||(i[c]=Pt(t,c));return e&&Object.isExtensible(e)&&(e._normalized=i),V(i,"$stable",o),V(i,"$key",s),V(i,"$hasNormal",a),i}function Lt(e,t,n){var r=function(){var e=arguments.length?n.apply(null,arguments):n({});return e=e&&"object"===typeof e&&!Array.isArray(e)?[e]:Nt(e),e&&(0===e.length||1===e.length&&e[0].isComment)?void 0:e};return n.proxy&&Object.defineProperty(e,t,{get:r,enumerable:!0,configurable:!0}),r}function Pt(e,t){return function(){return e[t]}}function kt(e,t){var n,r,a,o,s;if(Array.isArray(e)||"string"===typeof e)for(n=new Array(e.length),r=0,a=e.length;r1?I(n):n;for(var r=I(arguments,1),i='event handler for "'+e+'"',a=0,o=n.length;adocument.createEvent("Event").timeStamp&&(Wn=function(){return Qn.now()})}function Kn(){var e,t;for(zn=Wn(),Hn=!0,Gn.sort((function(e,t){return e.id-t.id})),Vn=0;VnVn&&Gn[n].id>e.id)n--;Gn.splice(n+1,0,e)}else Gn.push(e);qn||(qn=!0,ft(Kn))}}var tr=0,nr=function(e,t,n,r,i){this.vm=e,i&&(e._watcher=this),e._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=++tr,this.active=!0,this.dirty=this.lazy,this.deps=[],this.newDeps=[],this.depIds=new ue,this.newDepIds=new ue,this.expression="","function"===typeof t?this.getter=t:(this.getter=z(t),this.getter||(this.getter=D)),this.value=this.lazy?void 0:this.get()};nr.prototype.get=function(){var e;ge(this);var t=this.vm;try{e=this.getter.call(t,t)}catch(To){if(!this.user)throw To;tt(To,t,'getter for watcher "'+this.expression+'"')}finally{this.deep&&ht(e),Ee(),this.cleanupDeps()}return e},nr.prototype.addDep=function(e){var t=e.id;this.newDepIds.has(t)||(this.newDepIds.add(t),this.newDeps.push(e),this.depIds.has(t)||e.addSub(this))},nr.prototype.cleanupDeps=function(){var e=this.deps.length;while(e--){var t=this.deps[e];this.newDepIds.has(t.id)||t.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},nr.prototype.update=function(){this.lazy?this.dirty=!0:this.sync?this.run():er(this)},nr.prototype.run=function(){if(this.active){var e=this.get();if(e!==this.value||l(e)||this.deep){var t=this.value;if(this.value=e,this.user)try{this.cb.call(this.vm,e,t)}catch(To){tt(To,this.vm,'callback for watcher "'+this.expression+'"')}else this.cb.call(this.vm,e,t)}}},nr.prototype.evaluate=function(){this.value=this.get(),this.dirty=!1},nr.prototype.depend=function(){var e=this.deps.length;while(e--)this.deps[e].depend()},nr.prototype.teardown=function(){if(this.active){this.vm._isBeingDestroyed||E(this.vm._watchers,this);var e=this.deps.length;while(e--)this.deps[e].removeSub(this);this.active=!1}};var rr={enumerable:!0,configurable:!0,get:D,set:D};function ir(e,t,n){rr.get=function(){return this[t][n]},rr.set=function(e){this[t][n]=e},Object.defineProperty(e,n,rr)}function ar(e){e._watchers=[];var t=e.$options;t.props&&or(e,t.props),t.methods&&fr(e,t.methods),t.data?sr(e):De(e._data={},!0),t.computed&&dr(e,t.computed),t.watch&&t.watch!==ae&&mr(e,t.watch)}function or(e,t){var n=e.$options.propsData||{},r=e._props={},i=e.$options._propKeys=[],a=!e.$parent;a||we(!1);var o=function(a){i.push(a);var o=Ke(a,t,n,e);Le(r,a,o),a in e||ir(e,"_props",a)};for(var s in t)o(s);we(!0)}function sr(e){var t=e.$options.data;t=e._data="function"===typeof t?lr(t,e):t||{},d(t)||(t={});var n=Object.keys(t),r=e.$options.props,i=(e.$options.methods,n.length);while(i--){var a=n[i];0,r&&b(r,a)||H(a)||ir(e,"_data",a)}De(t,!0)}function lr(e,t){ge();try{return e.call(t,t)}catch(To){return tt(To,t,"data()"),{}}finally{Ee()}}var cr={lazy:!0};function dr(e,t){var n=e._computedWatchers=Object.create(null),r=le();for(var i in t){var a=t[i],o="function"===typeof a?a:a.get;0,r||(n[i]=new nr(e,o||D,D,cr)),i in e||ur(e,i,a)}}function ur(e,t,n){var r=!le();"function"===typeof n?(rr.get=r?_r(t):pr(n),rr.set=D):(rr.get=n.get?r&&!1!==n.cache?_r(t):pr(n.get):D,rr.set=n.set||D),Object.defineProperty(e,t,rr)}function _r(e){return function(){var t=this._computedWatchers&&this._computedWatchers[e];if(t)return t.dirty&&t.evaluate(),me.target&&t.depend(),t.value}}function pr(e){return function(){return e.call(this,this)}}function fr(e,t){e.$options.props;for(var n in t)e[n]="function"!==typeof t[n]?D:w(t[n],e)}function mr(e,t){for(var n in t){var r=t[n];if(Array.isArray(r))for(var i=0;i-1)return this;var n=I(arguments,1);return n.unshift(this),"function"===typeof e.install?e.install.apply(e,n):"function"===typeof e&&e.apply(null,n),t.push(e),this}}function Nr(e){e.mixin=function(e){return this.options=We(this.options,e),this}}function Or(e){e.cid=0;var t=1;e.extend=function(e){e=e||{};var n=this,r=n.cid,i=e._Ctor||(e._Ctor={});if(i[r])return i[r];var a=e.name||n.options.name;var o=function(e){this._init(e)};return o.prototype=Object.create(n.prototype),o.prototype.constructor=o,o.cid=t++,o.options=We(n.options,e),o["super"]=n,o.options.props&&Rr(o),o.options.computed&&Ar(o),o.extend=n.extend,o.mixin=n.mixin,o.use=n.use,G.forEach((function(e){o[e]=n[e]})),a&&(o.options.components[a]=o),o.superOptions=n.options,o.extendOptions=e,o.sealedOptions=M({},o.options),i[r]=o,o}}function Rr(e){var t=e.options.props;for(var n in t)ir(e.prototype,"_props",n)}function Ar(e){var t=e.options.computed;for(var n in t)ur(e.prototype,n,t[n])}function wr(e){G.forEach((function(t){e[t]=function(e,n){return n?("component"===t&&d(n)&&(n.name=n.name||e,n=this.options._base.extend(n)),"directive"===t&&"function"===typeof n&&(n={bind:n,update:n}),this.options[t+"s"][e]=n,n):this.options[t+"s"][e]}}))}function Ir(e){return e&&(e.Ctor.options.name||e.tag)}function Mr(e,t){return Array.isArray(e)?e.indexOf(t)>-1:"string"===typeof e?e.split(",").indexOf(t)>-1:!!u(e)&&e.test(t)}function xr(e,t){var n=e.cache,r=e.keys,i=e._vnode;for(var a in n){var o=n[a];if(o){var s=Ir(o.componentOptions);s&&!t(s)&&Dr(n,a,r,i)}}}function Dr(e,t,n,r){var i=e[t];!i||r&&i.tag===r.tag||i.componentInstance.$destroy(),e[t]=null,E(n,t)}Sr(Tr),gr(Tr),wn(Tr),Dn(Tr),En(Tr);var Lr=[String,RegExp,Array],Pr={name:"keep-alive",abstract:!0,props:{include:Lr,exclude:Lr,max:[String,Number]},created:function(){this.cache=Object.create(null),this.keys=[]},destroyed:function(){for(var e in this.cache)Dr(this.cache,e,this.keys)},mounted:function(){var e=this;this.$watch("include",(function(t){xr(e,(function(e){return Mr(t,e)}))})),this.$watch("exclude",(function(t){xr(e,(function(e){return!Mr(t,e)}))}))},render:function(){var e=this.$slots.default,t=Tn(e),n=t&&t.componentOptions;if(n){var r=Ir(n),i=this,a=i.include,o=i.exclude;if(a&&(!r||!Mr(a,r))||o&&r&&Mr(o,r))return t;var s=this,l=s.cache,c=s.keys,d=null==t.key?n.Ctor.cid+(n.tag?"::"+n.tag:""):t.key;l[d]?(t.componentInstance=l[d].componentInstance,E(c,d),c.push(d)):(l[d]=t,c.push(d),this.max&&c.length>parseInt(this.max)&&Dr(l,c[0],c,this._vnode)),t.data.keepAlive=!0}return t||e&&e[0]}},kr={KeepAlive:Pr};function Fr(e){var t={get:function(){return j}};Object.defineProperty(e,"config",t),e.util={warn:pe,extend:M,mergeOptions:We,defineReactive:Le},e.set=Pe,e.delete=ke,e.nextTick=ft,e.observable=function(e){return De(e),e},e.options=Object.create(null),G.forEach((function(t){e.options[t+"s"]=Object.create(null)})),e.options._base=e,M(e.options.components,kr),Cr(e),Nr(e),Or(e),wr(e)}Fr(Tr),Object.defineProperty(Tr.prototype,"$isServer",{get:le}),Object.defineProperty(Tr.prototype,"$ssrContext",{get:function(){return this.$vnode&&this.$vnode.ssrContext}}),Object.defineProperty(Tr,"FunctionalRenderContext",{value:Xt}),Tr.version="2.6.12";var Ur=h("style,class"),Br=h("input,textarea,option,select,progress"),Gr=function(e,t,n){return"value"===n&&Br(e)&&"button"!==t||"selected"===n&&"option"===e||"checked"===n&&"input"===e||"muted"===n&&"video"===e},Yr=h("contenteditable,draggable,spellcheck"),jr=h("events,caret,typing,plaintext-only"),qr=function(e,t){return Wr(t)||"false"===t?"false":"contenteditable"===e&&jr(t)?t:"true"},Hr=h("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,translate,truespeed,typemustmatch,visible"),Vr="http://www.w3.org/1999/xlink",$r=function(e){return":"===e.charAt(5)&&"xlink"===e.slice(0,5)},zr=function(e){return $r(e)?e.slice(6,e.length):""},Wr=function(e){return null==e||!1===e};function Qr(e){var t=e.data,n=e,r=e;while(i(r.componentInstance))r=r.componentInstance._vnode,r&&r.data&&(t=Kr(r.data,t));while(i(n=n.parent))n&&n.data&&(t=Kr(t,n.data));return Xr(t.staticClass,t.class)}function Kr(e,t){return{staticClass:Zr(e.staticClass,t.staticClass),class:i(e.class)?[e.class,t.class]:t.class}}function Xr(e,t){return i(e)||i(t)?Zr(e,Jr(t)):""}function Zr(e,t){return e?t?e+" "+t:e:t||""}function Jr(e){return Array.isArray(e)?ei(e):l(e)?ti(e):"string"===typeof e?e:""}function ei(e){for(var t,n="",r=0,a=e.length;r-1?si[e]=t.constructor===window.HTMLUnknownElement||t.constructor===window.HTMLElement:si[e]=/HTMLUnknownElement/.test(t.toString())}var ci=h("text,number,password,search,email,tel,url");function di(e){if("string"===typeof e){var t=document.querySelector(e);return t||document.createElement("div")}return e}function ui(e,t){var n=document.createElement(e);return"select"!==e||t.data&&t.data.attrs&&void 0!==t.data.attrs.multiple&&n.setAttribute("multiple","multiple"),n}function _i(e,t){return document.createElementNS(ni[e],t)}function pi(e){return document.createTextNode(e)}function fi(e){return document.createComment(e)}function mi(e,t,n){e.insertBefore(t,n)}function hi(e,t){e.removeChild(t)}function gi(e,t){e.appendChild(t)}function Ei(e){return e.parentNode}function Si(e){return e.nextSibling}function bi(e){return e.tagName}function vi(e,t){e.textContent=t}function yi(e,t){e.setAttribute(t,"")}var Ti=Object.freeze({createElement:ui,createElementNS:_i,createTextNode:pi,createComment:fi,insertBefore:mi,removeChild:hi,appendChild:gi,parentNode:Ei,nextSibling:Si,tagName:bi,setTextContent:vi,setStyleScope:yi}),Ci={create:function(e,t){Ni(t)},update:function(e,t){e.data.ref!==t.data.ref&&(Ni(e,!0),Ni(t))},destroy:function(e){Ni(e,!0)}};function Ni(e,t){var n=e.data.ref;if(i(n)){var r=e.context,a=e.componentInstance||e.elm,o=r.$refs;t?Array.isArray(o[n])?E(o[n],a):o[n]===a&&(o[n]=void 0):e.data.refInFor?Array.isArray(o[n])?o[n].indexOf(a)<0&&o[n].push(a):o[n]=[a]:o[n]=a}}var Oi=new Se("",{},[]),Ri=["create","activate","update","remove","destroy"];function Ai(e,t){return e.key===t.key&&(e.tag===t.tag&&e.isComment===t.isComment&&i(e.data)===i(t.data)&&wi(e,t)||a(e.isAsyncPlaceholder)&&e.asyncFactory===t.asyncFactory&&r(t.asyncFactory.error))}function wi(e,t){if("input"!==e.tag)return!0;var n,r=i(n=e.data)&&i(n=n.attrs)&&n.type,a=i(n=t.data)&&i(n=n.attrs)&&n.type;return r===a||ci(r)&&ci(a)}function Ii(e,t,n){var r,a,o={};for(r=t;r<=n;++r)a=e[r].key,i(a)&&(o[a]=r);return o}function Mi(e){var t,n,o={},l=e.modules,c=e.nodeOps;for(t=0;tm?(u=r(n[E+1])?null:n[E+1].elm,T(e,u,n,f,E,a)):f>E&&N(t,_,m)}function A(e,t,n,r){for(var a=n;a-1?ji(e,t,n):Hr(t)?Wr(n)?e.removeAttribute(t):(n="allowfullscreen"===t&&"EMBED"===e.tagName?"true":t,e.setAttribute(t,n)):Yr(t)?e.setAttribute(t,qr(t,n)):$r(t)?Wr(n)?e.removeAttributeNS(Vr,zr(t)):e.setAttributeNS(Vr,t,n):ji(e,t,n)}function ji(e,t,n){if(Wr(n))e.removeAttribute(t);else{if(ee&&!te&&"TEXTAREA"===e.tagName&&"placeholder"===t&&""!==n&&!e.__ieph){var r=function(t){t.stopImmediatePropagation(),e.removeEventListener("input",r)};e.addEventListener("input",r),e.__ieph=!0}e.setAttribute(t,n)}}var qi={create:Gi,update:Gi};function Hi(e,t){var n=t.elm,a=t.data,o=e.data;if(!(r(a.staticClass)&&r(a.class)&&(r(o)||r(o.staticClass)&&r(o.class)))){var s=Qr(t),l=n._transitionClasses;i(l)&&(s=Zr(s,Jr(l))),s!==n._prevClass&&(n.setAttribute("class",s),n._prevClass=s)}}var Vi,$i={create:Hi,update:Hi},zi="__r",Wi="__c";function Qi(e){if(i(e[zi])){var t=ee?"change":"input";e[t]=[].concat(e[zi],e[t]||[]),delete e[zi]}i(e[Wi])&&(e.change=[].concat(e[Wi],e.change||[]),delete e[Wi])}function Ki(e,t,n){var r=Vi;return function i(){var a=t.apply(null,arguments);null!==a&&Ji(e,i,n,r)}}var Xi=ot&&!(ie&&Number(ie[1])<=53);function Zi(e,t,n,r){if(Xi){var i=zn,a=t;t=a._wrapper=function(e){if(e.target===e.currentTarget||e.timeStamp>=i||e.timeStamp<=0||e.target.ownerDocument!==document)return a.apply(this,arguments)}}Vi.addEventListener(e,t,oe?{capture:n,passive:r}:n)}function Ji(e,t,n,r){(r||Vi).removeEventListener(e,t._wrapper||t,n)}function ea(e,t){if(!r(e.data.on)||!r(t.data.on)){var n=t.data.on||{},i=e.data.on||{};Vi=t.elm,Qi(n),bt(n,i,Zi,Ji,Ki,t.context),Vi=void 0}}var ta,na={create:ea,update:ea};function ra(e,t){if(!r(e.data.domProps)||!r(t.data.domProps)){var n,a,o=t.elm,s=e.data.domProps||{},l=t.data.domProps||{};for(n in i(l.__ob__)&&(l=t.data.domProps=M({},l)),s)n in l||(o[n]="");for(n in l){if(a=l[n],"textContent"===n||"innerHTML"===n){if(t.children&&(t.children.length=0),a===s[n])continue;1===o.childNodes.length&&o.removeChild(o.childNodes[0])}if("value"===n&&"PROGRESS"!==o.tagName){o._value=a;var c=r(a)?"":String(a);ia(o,c)&&(o.value=c)}else if("innerHTML"===n&&ii(o.tagName)&&r(o.innerHTML)){ta=ta||document.createElement("div"),ta.innerHTML=""+a+"";var d=ta.firstChild;while(o.firstChild)o.removeChild(o.firstChild);while(d.firstChild)o.appendChild(d.firstChild)}else if(a!==s[n])try{o[n]=a}catch(To){}}}}function ia(e,t){return!e.composing&&("OPTION"===e.tagName||aa(e,t)||oa(e,t))}function aa(e,t){var n=!0;try{n=document.activeElement!==e}catch(To){}return n&&e.value!==t}function oa(e,t){var n=e.value,r=e._vModifiers;if(i(r)){if(r.number)return m(n)!==m(t);if(r.trim)return n.trim()!==t.trim()}return n!==t}var sa={create:ra,update:ra},la=v((function(e){var t={},n=/;(?![^(]*\))/g,r=/:(.+)/;return e.split(n).forEach((function(e){if(e){var n=e.split(r);n.length>1&&(t[n[0].trim()]=n[1].trim())}})),t}));function ca(e){var t=da(e.style);return e.staticStyle?M(e.staticStyle,t):t}function da(e){return Array.isArray(e)?x(e):"string"===typeof e?la(e):e}function ua(e,t){var n,r={};if(t){var i=e;while(i.componentInstance)i=i.componentInstance._vnode,i&&i.data&&(n=ca(i.data))&&M(r,n)}(n=ca(e.data))&&M(r,n);var a=e;while(a=a.parent)a.data&&(n=ca(a.data))&&M(r,n);return r}var _a,pa=/^--/,fa=/\s*!important$/,ma=function(e,t,n){if(pa.test(t))e.style.setProperty(t,n);else if(fa.test(n))e.style.setProperty(O(t),n.replace(fa,""),"important");else{var r=ga(t);if(Array.isArray(n))for(var i=0,a=n.length;i-1?t.split(ba).forEach((function(t){return e.classList.add(t)})):e.classList.add(t);else{var n=" "+(e.getAttribute("class")||"")+" ";n.indexOf(" "+t+" ")<0&&e.setAttribute("class",(n+t).trim())}}function ya(e,t){if(t&&(t=t.trim()))if(e.classList)t.indexOf(" ")>-1?t.split(ba).forEach((function(t){return e.classList.remove(t)})):e.classList.remove(t),e.classList.length||e.removeAttribute("class");else{var n=" "+(e.getAttribute("class")||"")+" ",r=" "+t+" ";while(n.indexOf(r)>=0)n=n.replace(r," ");n=n.trim(),n?e.setAttribute("class",n):e.removeAttribute("class")}}function Ta(e){if(e){if("object"===typeof e){var t={};return!1!==e.css&&M(t,Ca(e.name||"v")),M(t,e),t}return"string"===typeof e?Ca(e):void 0}}var Ca=v((function(e){return{enterClass:e+"-enter",enterToClass:e+"-enter-to",enterActiveClass:e+"-enter-active",leaveClass:e+"-leave",leaveToClass:e+"-leave-to",leaveActiveClass:e+"-leave-active"}})),Na=K&&!te,Oa="transition",Ra="animation",Aa="transition",wa="transitionend",Ia="animation",Ma="animationend";Na&&(void 0===window.ontransitionend&&void 0!==window.onwebkittransitionend&&(Aa="WebkitTransition",wa="webkitTransitionEnd"),void 0===window.onanimationend&&void 0!==window.onwebkitanimationend&&(Ia="WebkitAnimation",Ma="webkitAnimationEnd"));var xa=K?window.requestAnimationFrame?window.requestAnimationFrame.bind(window):setTimeout:function(e){return e()};function Da(e){xa((function(){xa(e)}))}function La(e,t){var n=e._transitionClasses||(e._transitionClasses=[]);n.indexOf(t)<0&&(n.push(t),va(e,t))}function Pa(e,t){e._transitionClasses&&E(e._transitionClasses,t),ya(e,t)}function ka(e,t,n){var r=Ua(e,t),i=r.type,a=r.timeout,o=r.propCount;if(!i)return n();var s=i===Oa?wa:Ma,l=0,c=function(){e.removeEventListener(s,d),n()},d=function(t){t.target===e&&++l>=o&&c()};setTimeout((function(){l0&&(n=Oa,d=o,u=a.length):t===Ra?c>0&&(n=Ra,d=c,u=l.length):(d=Math.max(o,c),n=d>0?o>c?Oa:Ra:null,u=n?n===Oa?a.length:l.length:0);var _=n===Oa&&Fa.test(r[Aa+"Property"]);return{type:n,timeout:d,propCount:u,hasTransform:_}}function Ba(e,t){while(e.length1}function Va(e,t){!0!==t.data.show&&Ya(t)}var $a=K?{create:Va,activate:Va,remove:function(e,t){!0!==e.data.show?ja(e,t):t()}}:{},za=[qi,$i,na,sa,Sa,$a],Wa=za.concat(Bi),Qa=Mi({nodeOps:Ti,modules:Wa});te&&document.addEventListener("selectionchange",(function(){var e=document.activeElement;e&&e.vmodel&&ro(e,"input")}));var Ka={inserted:function(e,t,n,r){"select"===n.tag?(r.elm&&!r.elm._vOptions?vt(n,"postpatch",(function(){Ka.componentUpdated(e,t,n)})):Xa(e,t,n.context),e._vOptions=[].map.call(e.options,eo)):("textarea"===n.tag||ci(e.type))&&(e._vModifiers=t.modifiers,t.modifiers.lazy||(e.addEventListener("compositionstart",to),e.addEventListener("compositionend",no),e.addEventListener("change",no),te&&(e.vmodel=!0)))},componentUpdated:function(e,t,n){if("select"===n.tag){Xa(e,t,n.context);var r=e._vOptions,i=e._vOptions=[].map.call(e.options,eo);if(i.some((function(e,t){return!k(e,r[t])}))){var a=e.multiple?t.value.some((function(e){return Ja(e,i)})):t.value!==t.oldValue&&Ja(t.value,i);a&&ro(e,"change")}}}};function Xa(e,t,n){Za(e,t,n),(ee||ne)&&setTimeout((function(){Za(e,t,n)}),0)}function Za(e,t,n){var r=t.value,i=e.multiple;if(!i||Array.isArray(r)){for(var a,o,s=0,l=e.options.length;s-1,o.selected!==a&&(o.selected=a);else if(k(eo(o),r))return void(e.selectedIndex!==s&&(e.selectedIndex=s));i||(e.selectedIndex=-1)}}function Ja(e,t){return t.every((function(t){return!k(t,e)}))}function eo(e){return"_value"in e?e._value:e.value}function to(e){e.target.composing=!0}function no(e){e.target.composing&&(e.target.composing=!1,ro(e.target,"input"))}function ro(e,t){var n=document.createEvent("HTMLEvents");n.initEvent(t,!0,!0),e.dispatchEvent(n)}function io(e){return!e.componentInstance||e.data&&e.data.transition?e:io(e.componentInstance._vnode)}var ao={bind:function(e,t,n){var r=t.value;n=io(n);var i=n.data&&n.data.transition,a=e.__vOriginalDisplay="none"===e.style.display?"":e.style.display;r&&i?(n.data.show=!0,Ya(n,(function(){e.style.display=a}))):e.style.display=r?a:"none"},update:function(e,t,n){var r=t.value,i=t.oldValue;if(!r!==!i){n=io(n);var a=n.data&&n.data.transition;a?(n.data.show=!0,r?Ya(n,(function(){e.style.display=e.__vOriginalDisplay})):ja(n,(function(){e.style.display="none"}))):e.style.display=r?e.__vOriginalDisplay:"none"}},unbind:function(e,t,n,r,i){i||(e.style.display=e.__vOriginalDisplay)}},oo={model:Ka,show:ao},so={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 lo(e){var t=e&&e.componentOptions;return t&&t.Ctor.options.abstract?lo(Tn(t.children)):e}function co(e){var t={},n=e.$options;for(var r in n.propsData)t[r]=e[r];var i=n._parentListeners;for(var a in i)t[T(a)]=i[a];return t}function uo(e,t){if(/\d-keep-alive$/.test(t.tag))return e("keep-alive",{props:t.componentOptions.propsData})}function _o(e){while(e=e.parent)if(e.data.transition)return!0}function po(e,t){return t.key===e.key&&t.tag===e.tag}var fo=function(e){return e.tag||yn(e)},mo=function(e){return"show"===e.name},ho={name:"transition",props:so,abstract:!0,render:function(e){var t=this,n=this.$slots.default;if(n&&(n=n.filter(fo),n.length)){0;var r=this.mode;0;var i=n[0];if(_o(this.$vnode))return i;var a=lo(i);if(!a)return i;if(this._leaving)return uo(e,i);var o="__transition-"+this._uid+"-";a.key=null==a.key?a.isComment?o+"comment":o+a.tag:s(a.key)?0===String(a.key).indexOf(o)?a.key:o+a.key:a.key;var l=(a.data||(a.data={})).transition=co(this),c=this._vnode,d=lo(c);if(a.data.directives&&a.data.directives.some(mo)&&(a.data.show=!0),d&&d.data&&!po(a,d)&&!yn(d)&&(!d.componentInstance||!d.componentInstance._vnode.isComment)){var u=d.data.transition=M({},l);if("out-in"===r)return this._leaving=!0,vt(u,"afterLeave",(function(){t._leaving=!1,t.$forceUpdate()})),uo(e,i);if("in-out"===r){if(yn(a))return c;var _,p=function(){_()};vt(l,"afterEnter",p),vt(l,"enterCancelled",p),vt(u,"delayLeave",(function(e){_=e}))}}return i}}},go=M({tag:String,moveClass:String},so);delete go.mode;var Eo={props:go,beforeMount:function(){var e=this,t=this._update;this._update=function(n,r){var i=Mn(e);e.__patch__(e._vnode,e.kept,!1,!0),e._vnode=e.kept,i(),t.call(e,n,r)}},render:function(e){for(var t=this.tag||this.$vnode.data.tag||"span",n=Object.create(null),r=this.prevChildren=this.children,i=this.$slots.default||[],a=this.children=[],o=co(this),s=0;s"}]}}},"2cf4":function(e,t,n){var r,i,a,o=n("da84"),s=n("d039"),l=n("c6b6"),c=n("0366"),d=n("1be4"),u=n("cc12"),_=n("1cdc"),p=o.location,f=o.setImmediate,m=o.clearImmediate,h=o.process,g=o.MessageChannel,E=o.Dispatch,S=0,b={},v="onreadystatechange",y=function(e){if(b.hasOwnProperty(e)){var t=b[e];delete b[e],t()}},T=function(e){return function(){y(e)}},C=function(e){y(e.data)},N=function(e){o.postMessage(e+"",p.protocol+"//"+p.host)};f&&m||(f=function(e){var t=[],n=1;while(arguments.length>n)t.push(arguments[n++]);return b[++S]=function(){("function"==typeof e?e:Function(e)).apply(void 0,t)},r(S),S},m=function(e){delete b[e]},"process"==l(h)?r=function(e){h.nextTick(T(e))}:E&&E.now?r=function(e){E.now(T(e))}:g&&!_?(i=new g,a=i.port2,i.port1.onmessage=C,r=c(a.postMessage,a,1)):!o.addEventListener||"function"!=typeof postMessage||o.importScripts||s(N)||"file:"===p.protocol?r=v in u("script")?function(e){d.appendChild(u("script"))[v]=function(){d.removeChild(this),y(e)}}:function(e){setTimeout(T(e),0)}:(r=N,o.addEventListener("message",C,!1))),e.exports={set:f,clear:m}},"2d00":function(e,t,n){var r,i,a=n("da84"),o=n("342f"),s=a.process,l=s&&s.versions,c=l&&l.v8;c?(r=c.split("."),i=r[0]+r[1]):o&&(r=o.match(/Edge\/(\d+)/),(!r||r[1]>=74)&&(r=o.match(/Chrome\/(\d+)/),r&&(i=r[1]))),e.exports=i&&+i},"2d83":function(e,t,n){"use strict";var r=n("387f");e.exports=function(e,t,n,i,a){var o=new Error(e);return r(o,t,n,i,a)}},"2e11":function(e,t){e.exports=function(e){var t={keyword:"in if for while finally new do return else break catch instanceof throw try this switch continue typeof delete debugger case default function var with then unless until loop of by when and or is isnt not it that otherwise from to til fallthrough super case default function var void const let enum export import native list map __hasProp __extends __slice __bind __indexOf",literal:"true false null undefined yes no on off it that void",built_in:"npm require console print module global window document"},n="[A-Za-z$_](?:-[0-9A-Za-z$_]|[0-9A-Za-z$_])*",r=e.inherit(e.TITLE_MODE,{begin:n}),i={className:"subst",begin:/#\{/,end:/}/,keywords:t},a={className:"subst",begin:/#[A-Za-z$_]/,end:/(?:\-[0-9A-Za-z$_]|[0-9A-Za-z$_])*/,keywords:t},o=[e.BINARY_NUMBER_MODE,{className:"number",begin:"(\\b0[xX][a-fA-F0-9_]+)|(\\b\\d(\\d|_\\d)*(\\.(\\d(\\d|_\\d)*)?)?(_*[eE]([-+]\\d(_\\d|\\d)*)?)?[_a-z]*)",relevance:0,starts:{end:"(\\s*/)?",relevance:0}},{className:"string",variants:[{begin:/'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE]},{begin:/'/,end:/'/,contains:[e.BACKSLASH_ESCAPE]},{begin:/"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,i,a]},{begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,i,a]},{begin:/\\/,end:/(\s|$)/,excludeEnd:!0}]},{className:"regexp",variants:[{begin:"//",end:"//[gim]*",contains:[i,e.HASH_COMMENT_MODE]},{begin:/\/(?![ *])(\\\/|.)*?\/[gim]*(?=\W)/}]},{begin:"@"+n},{begin:"``",end:"``",excludeBegin:!0,excludeEnd:!0,subLanguage:"javascript"}];i.contains=o;var s={className:"params",begin:"\\(",returnBegin:!0,contains:[{begin:/\(/,end:/\)/,keywords:t,contains:["self"].concat(o)}]},l={begin:"(#=>|=>|\\|>>|-?->|\\!->)"};return{aliases:["ls"],keywords:t,illegal:/\/\*/,contains:o.concat([e.COMMENT("\\/\\*","\\*\\/"),e.HASH_COMMENT_MODE,l,{className:"function",contains:[r,s],returnBegin:!0,variants:[{begin:"("+n+"\\s*(?:=|:=)\\s*)?(\\(.*\\))?\\s*\\B\\->\\*?",end:"\\->\\*?"},{begin:"("+n+"\\s*(?:=|:=)\\s*)?!?(\\(.*\\))?\\s*\\B[-~]{1,2}>\\*?",end:"[-~]{1,2}>\\*?"},{begin:"("+n+"\\s*(?:=|:=)\\s*)?(\\(.*\\))?\\s*\\B!?[-~]{1,2}>\\*?",end:"!?[-~]{1,2}>\\*?"}]},{className:"class",beginKeywords:"class",end:"$",illegal:/[:="\[\]]/,contains:[{beginKeywords:"extends",endsWithParent:!0,illegal:/[:="\[\]]/,contains:[r]},r]},{begin:n+":",end:":",returnBegin:!0,returnEnd:!0,relevance:0}])}}},"2e5d":function(e,t){e.exports=function(e){var t="\\[",n="\\]";return{aliases:["i7"],case_insensitive:!0,keywords:{keyword:"thing room person man woman animal container supporter backdrop door scenery open closed locked inside gender is are say understand kind of rule"},contains:[{className:"string",begin:'"',end:'"',relevance:0,contains:[{className:"subst",begin:t,end:n}]},{className:"section",begin:/^(Volume|Book|Part|Chapter|Section|Table)\b/,end:"$"},{begin:/^(Check|Carry out|Report|Instead of|To|Rule|When|Before|After)\b/,end:":",contains:[{begin:"\\(This",end:"\\)"}]},{className:"comment",begin:t,end:n,contains:["self"]}]}}},"2e67":function(e,t,n){"use strict";e.exports=function(e){return!(!e||!e.__CANCEL__)}},"2e7b":function(e,t){e.exports=function(e){var t="true false yes no null",n={className:"attr",variants:[{begin:"\\w[\\w :\\/.-]*:(?=[ \t]|$)"},{begin:'"\\w[\\w :\\/.-]*":(?=[ \t]|$)'},{begin:"'\\w[\\w :\\/.-]*':(?=[ \t]|$)"}]},r={className:"template-variable",variants:[{begin:"{{",end:"}}"},{begin:"%{",end:"}"}]},i={className:"string",relevance:0,variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/\S+/}],contains:[e.BACKSLASH_ESCAPE,r]};return{case_insensitive:!0,aliases:["yml","YAML","yaml"],contains:[n,{className:"meta",begin:"^---s*$",relevance:10},{className:"string",begin:"[\\|>]([0-9]?[+-])?[ ]*\\n( *)[\\S ]+\\n(\\2[\\S ]+\\n?)*"},{begin:"<%[%=-]?",end:"[%-]?%>",subLanguage:"ruby",excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:"!"+e.UNDERSCORE_IDENT_RE},{className:"type",begin:"!!"+e.UNDERSCORE_IDENT_RE},{className:"meta",begin:"&"+e.UNDERSCORE_IDENT_RE+"$"},{className:"meta",begin:"\\*"+e.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"\\-(?=[ ]|$)",relevance:0},e.HASH_COMMENT_MODE,{beginKeywords:t,keywords:{literal:t}},{className:"number",begin:e.C_NUMBER_RE+"\\b"},i]}}},"2e8e":function(e,t){e.exports=function(e){return{keywords:{keyword:"package import option optional required repeated group oneof",built_in:"double float int32 int64 uint32 uint64 sint32 sint64 fixed32 fixed64 sfixed32 sfixed64 bool string bytes",literal:"true false"},contains:[e.QUOTE_STRING_MODE,e.NUMBER_MODE,e.C_LINE_COMMENT_MODE,{className:"class",beginKeywords:"message enum service",end:/\{/,illegal:/\n/,contains:[e.inherit(e.TITLE_MODE,{starts:{endsWithParent:!0,excludeEnd:!0}})]},{className:"function",beginKeywords:"rpc",end:/;/,excludeEnd:!0,keywords:"rpc returns"},{begin:/^\s*[A-Z_]+/,end:/\s*=/,excludeEnd:!0}]}}},"2e9b":function(e,t){e.exports=function(e){return{contains:[{className:"function",begin:"#+[A-Za-z_0-9]*\\(",end:" {",returnBegin:!0,excludeEnd:!0,contains:[{className:"keyword",begin:"#+"},{className:"title",begin:"[A-Za-z_][A-Za-z_0-9]*"},{className:"params",begin:"\\(",end:"\\)",endsParent:!0,contains:[{className:"string",begin:'"',end:'"'},{className:"variable",begin:"[A-Za-z_][A-Za-z_0-9]*"}]}]}]}}},"305e":function(e,t){e.exports=function(e){var t="[A-Za-z_][0-9A-Za-z_]*",n={keyword:"if for while var new function do return void else break",literal:"BackSlash DoubleQuote false ForwardSlash Infinity NaN NewLine null PI SingleQuote Tab TextFormatting true undefined",built_in:"Abs Acos Angle Attachments Area AreaGeodetic Asin Atan Atan2 Average Bearing Boolean Buffer BufferGeodetic Ceil Centroid Clip Console Constrain Contains Cos Count Crosses Cut Date DateAdd DateDiff Day Decode DefaultValue Dictionary Difference Disjoint Distance DistanceGeodetic Distinct DomainCode DomainName Equals Exp Extent Feature FeatureSet FeatureSetByAssociation FeatureSetById FeatureSetByPortalItem FeatureSetByRelationshipName FeatureSetByTitle FeatureSetByUrl Filter First Floor Geometry GroupBy Guid HasKey Hour IIf IndexOf Intersection Intersects IsEmpty IsNan IsSelfIntersecting Length LengthGeodetic Log Max Mean Millisecond Min Minute Month MultiPartToSinglePart Multipoint NextSequenceValue Now Number OrderBy Overlaps Point Polygon Polyline Portal Pow Random Relate Reverse RingIsClockWise Round Second SetGeometry Sin Sort Sqrt Stdev Sum SymmetricDifference Tan Text Timestamp Today ToLocal Top Touches ToUTC TrackCurrentTime TrackGeometryWindow TrackIndex TrackStartTime TrackWindow TypeOf Union UrlEncode Variance Weekday When Within Year "},r={className:"symbol",begin:"\\$[datastore|feature|layer|map|measure|sourcefeature|sourcelayer|targetfeature|targetlayer|value|view]+"},i={className:"number",variants:[{begin:"\\b(0[bB][01]+)"},{begin:"\\b(0[oO][0-7]+)"},{begin:e.C_NUMBER_RE}],relevance:0},a={className:"subst",begin:"\\$\\{",end:"\\}",keywords:n,contains:[]},o={className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,a]};a.contains=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,o,i,e.REGEXP_MODE];var s=a.contains.concat([e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE]);return{aliases:["arcade"],keywords:n,contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,o,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,r,i,{begin:/[{,]\s*/,relevance:0,contains:[{begin:t+"\\s*:",returnBegin:!0,relevance:0,contains:[{className:"attr",begin:t,relevance:0}]}]},{begin:"("+e.RE_STARTERS_RE+"|\\b(return)\\b)\\s*",keywords:"return",contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.REGEXP_MODE,{className:"function",begin:"(\\(.*?\\)|"+t+")\\s*=>",returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:t},{begin:/\(\s*\)/},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:n,contains:s}]}]}],relevance:0},{className:"function",beginKeywords:"function",end:/\{/,excludeEnd:!0,contains:[e.inherit(e.TITLE_MODE,{begin:t}),{className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,contains:s}],illegal:/\[|%/},{begin:/\$[(.]/}],illegal:/#(?!!)/}}},"30b5":function(e,t,n){"use strict";var r=n("c532");function i(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}e.exports=function(e,t,n){if(!t)return e;var a;if(n)a=n(t);else if(r.isURLSearchParams(t))a=t.toString();else{var o=[];r.forEach(t,(function(e,t){null!==e&&"undefined"!==typeof e&&(r.isArray(e)?t+="[]":e=[e],r.forEach(e,(function(e){r.isDate(e)?e=e.toISOString():r.isObject(e)&&(e=JSON.stringify(e)),o.push(i(t)+"="+i(e))})))})),a=o.join("&")}if(a){var s=e.indexOf("#");-1!==s&&(e=e.slice(0,s)),e+=(-1===e.indexOf("?")?"?":"&")+a}return e}},"310f":function(e,t){e.exports=function(e){var t="\\d(_|\\d)*",n="[eE][-+]?"+t,r=t+"(\\."+t+")?("+n+")?",i="\\w+",a=t+"#"+i+"(\\."+i+")?#("+n+")?",o="\\b("+a+"|"+r+")";return{case_insensitive:!0,keywords:{keyword:"abs access after alias all and architecture array assert assume assume_guarantee attribute begin block body buffer bus case component configuration constant context cover disconnect downto default else elsif end entity exit fairness file for force function generate generic group guarded if impure in inertial inout is label library linkage literal loop map mod nand new next nor not null of on open or others out package parameter port postponed procedure process property protected pure range record register reject release rem report restrict restrict_guarantee return rol ror select sequence severity shared signal sla sll sra srl strong subtype then to transport type unaffected units until use variable view vmode vprop vunit wait when while with xnor xor",built_in:"boolean bit character integer time delay_length natural positive string bit_vector file_open_kind file_open_status std_logic std_logic_vector unsigned signed boolean_vector integer_vector std_ulogic std_ulogic_vector unresolved_unsigned u_unsigned unresolved_signed u_signed real_vector time_vector",literal:"false true note warning error failure line text side width"},illegal:"{",contains:[e.C_BLOCK_COMMENT_MODE,e.COMMENT("--","$"),e.QUOTE_STRING_MODE,{className:"number",begin:o,relevance:0},{className:"string",begin:"'(U|X|0|1|Z|W|L|H|-)'",contains:[e.BACKSLASH_ESCAPE]},{className:"symbol",begin:"'[A-Za-z](_?[A-Za-z0-9])*",contains:[e.BACKSLASH_ESCAPE]}]}}},"332f":function(e,t){e.exports=function(e){var t="[Γ€-ΚΈa-zA-Z_$][Γ€-ΚΈa-zA-Z_$0-9]*",n=t+"(<"+t+"(\\s*,\\s*"+t+")*>)?",r="false synchronized int abstract float private char boolean var static null if const for true while long strictfp finally protected import native final void enum else break transient catch instanceof byte super volatile case assert short package default double public try this switch continue throws protected public private module requires exports do",i="\\b(0[bB]([01]+[01_]+[01]+|[01]+)|0[xX]([a-fA-F0-9]+[a-fA-F0-9_]+[a-fA-F0-9]+|[a-fA-F0-9]+)|(([\\d]+[\\d_]+[\\d]+|[\\d]+)(\\.([\\d]+[\\d_]+[\\d]+|[\\d]+))?|\\.([\\d]+[\\d_]+[\\d]+|[\\d]+))([eE][-+]?\\d+)?)[lLfF]?",a={className:"number",begin:i,relevance:0};return{aliases:["jsp"],keywords:r,illegal:/<\/|#/,contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/,relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]}),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{className:"class",beginKeywords:"class interface",end:/[{;=]/,excludeEnd:!0,keywords:"class interface",illegal:/[:"\[\]]/,contains:[{beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE]},{beginKeywords:"new throw return else",relevance:0},{className:"function",begin:"("+n+"\\s+)+"+e.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:r,contains:[{begin:e.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,relevance:0,contains:[e.UNDERSCORE_TITLE_MODE]},{className:"params",begin:/\(/,end:/\)/,keywords:r,relevance:0,contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},a,{className:"meta",begin:"@[A-Za-z]+"}]}}},"342f":function(e,t,n){var r=n("d066");e.exports=r("navigator","userAgent")||""},"351a":function(e,t){e.exports=function(e){return{aliases:["feature"],keywords:"Feature Background Ability Business Need Scenario Scenarios Scenario Outline Scenario Template Examples Given And Then But When",contains:[{className:"symbol",begin:"\\*",relevance:0},{className:"meta",begin:"@[^@\\s]+"},{begin:"\\|",end:"\\|\\w*$",contains:[{className:"string",begin:"[^|]+"}]},{className:"variable",begin:"<",end:">"},e.HASH_COMMENT_MODE,{className:"string",begin:'"""',end:'"""'},e.QUOTE_STRING_MODE]}}},"35a1":function(e,t,n){var r=n("f5df"),i=n("3f8c"),a=n("b622"),o=a("iterator");e.exports=function(e){if(void 0!=e)return e[o]||e["@@iterator"]||i[r(e)]}},3728:function(e,t){e.exports=function(e){var t=e.COMMENT("{","}",{contains:["self"]});return{subLanguage:"xml",relevance:0,contains:[e.COMMENT("^#","$"),e.COMMENT("\\^rem{","}",{relevance:10,contains:[t]}),{className:"meta",begin:"^@(?:BASE|USE|CLASS|OPTIONS)$",relevance:10},{className:"title",begin:"@[\\w\\-]+\\[[\\w^;\\-]*\\](?:\\[[\\w^;\\-]*\\])?(?:.*)$"},{className:"variable",begin:"\\$\\{?[\\w\\-\\.\\:]+\\}?"},{className:"keyword",begin:"\\^[\\w\\-\\.\\:]+"},{className:"number",begin:"\\^#[0-9a-fA-F]+"},e.C_NUMBER_MODE]}}},"37e8":function(e,t,n){var r=n("83ab"),i=n("9bf2"),a=n("825a"),o=n("df75");e.exports=r?Object.defineProperties:function(e,t){a(e);var n,r=o(t),s=r.length,l=0;while(s>l)i.f(e,n=r[l++],t[n]);return e}},"387f":function(e,t,n){"use strict";e.exports=function(e,t,n,r,i){return e.config=t,n&&(e.code=n),e.request=r,e.response=i,e.isAxiosError=!0,e.toJSON=function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:this.config,code:this.code}},e}},3934:function(e,t,n){"use strict";var r=n("c532");e.exports=r.isStandardBrowserEnv()?function(){var e,t=/(msie|trident)/i.test(navigator.userAgent),n=document.createElement("a");function i(e){var r=e;return t&&(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 e=i(window.location.href),function(t){var n=r.isString(t)?i(t):t;return n.protocol===e.protocol&&n.host===e.host}}():function(){return function(){return!0}}()},"399d":function(e,t){e.exports=function(e){var t="if then else elseif for thru do while unless step in and or not",n="true false unknown inf minf ind und %e %i %pi %phi %gamma",r=" abasep abs absint absolute_real_time acos acosh acot acoth acsc acsch activate addcol add_edge add_edges addmatrices addrow add_vertex add_vertices adjacency_matrix adjoin adjoint af agd airy airy_ai airy_bi airy_dai airy_dbi algsys alg_type alias allroots alphacharp alphanumericp amortization %and annuity_fv annuity_pv antid antidiff AntiDifference append appendfile apply apply1 apply2 applyb1 apropos args arit_amortization arithmetic arithsum array arrayapply arrayinfo arraymake arraysetapply ascii asec asech asin asinh askinteger asksign assoc assoc_legendre_p assoc_legendre_q assume assume_external_byte_order asympa at atan atan2 atanh atensimp atom atvalue augcoefmatrix augmented_lagrangian_method av average_degree backtrace bars barsplot barsplot_description base64 base64_decode bashindices batch batchload bc2 bdvac belln benefit_cost bern bernpoly bernstein_approx bernstein_expand bernstein_poly bessel bessel_i bessel_j bessel_k bessel_simplify bessel_y beta beta_incomplete beta_incomplete_generalized beta_incomplete_regularized bezout bfallroots bffac bf_find_root bf_fmin_cobyla bfhzeta bfloat bfloatp bfpsi bfpsi0 bfzeta biconnected_components bimetric binomial bipartition block blockmatrixp bode_gain bode_phase bothcoef box boxplot boxplot_description break bug_report build_info|10 buildq build_sample burn cabs canform canten cardinality carg cartan cartesian_product catch cauchy_matrix cbffac cdf_bernoulli cdf_beta cdf_binomial cdf_cauchy cdf_chi2 cdf_continuous_uniform cdf_discrete_uniform cdf_exp cdf_f cdf_gamma cdf_general_finite_discrete cdf_geometric cdf_gumbel cdf_hypergeometric cdf_laplace cdf_logistic cdf_lognormal cdf_negative_binomial cdf_noncentral_chi2 cdf_noncentral_student_t cdf_normal cdf_pareto cdf_poisson cdf_rank_sum cdf_rayleigh cdf_signed_rank cdf_student_t cdf_weibull cdisplay ceiling central_moment cequal cequalignore cf cfdisrep cfexpand cgeodesic cgreaterp cgreaterpignore changename changevar chaosgame charat charfun charfun2 charlist charp charpoly chdir chebyshev_t chebyshev_u checkdiv check_overlaps chinese cholesky christof chromatic_index chromatic_number cint circulant_graph clear_edge_weight clear_rules clear_vertex_label clebsch_gordan clebsch_graph clessp clesspignore close closefile cmetric coeff coefmatrix cograd col collapse collectterms columnop columnspace columnswap columnvector combination combine comp2pui compare compfile compile compile_file complement_graph complete_bipartite_graph complete_graph complex_number_p components compose_functions concan concat conjugate conmetderiv connected_components connect_vertices cons constant constantp constituent constvalue cont2part content continuous_freq contortion contour_plot contract contract_edge contragrad contrib_ode convert coord copy copy_file copy_graph copylist copymatrix cor cos cosh cot coth cov cov1 covdiff covect covers crc24sum create_graph create_list csc csch csetup cspline ctaylor ct_coordsys ctransform ctranspose cube_graph cuboctahedron_graph cunlisp cv cycle_digraph cycle_graph cylindrical days360 dblint deactivate declare declare_constvalue declare_dimensions declare_fundamental_dimensions declare_fundamental_units declare_qty declare_translated declare_unit_conversion declare_units declare_weights decsym defcon define define_alt_display define_variable defint defmatch defrule defstruct deftaylor degree_sequence del delete deleten delta demo demoivre denom depends derivdegree derivlist describe desolve determinant dfloat dgauss_a dgauss_b dgeev dgemm dgeqrf dgesv dgesvd diag diagmatrix diag_matrix diagmatrixp diameter diff digitcharp dimacs_export dimacs_import dimension dimensionless dimensions dimensions_as_list direct directory discrete_freq disjoin disjointp disolate disp dispcon dispform dispfun dispJordan display disprule dispterms distrib divide divisors divsum dkummer_m dkummer_u dlange dodecahedron_graph dotproduct dotsimp dpart draw draw2d draw3d drawdf draw_file draw_graph dscalar echelon edge_coloring edge_connectivity edges eigens_by_jacobi eigenvalues eigenvectors eighth einstein eivals eivects elapsed_real_time elapsed_run_time ele2comp ele2polynome ele2pui elem elementp elevation_grid elim elim_allbut eliminate eliminate_using ellipse elliptic_e elliptic_ec elliptic_eu elliptic_f elliptic_kc elliptic_pi ematrix empty_graph emptyp endcons entermatrix entertensor entier equal equalp equiv_classes erf erfc erf_generalized erfi errcatch error errormsg errors euler ev eval_string evenp every evolution evolution2d evundiff example exp expand expandwrt expandwrt_factored expint expintegral_chi expintegral_ci expintegral_e expintegral_e1 expintegral_ei expintegral_e_simplify expintegral_li expintegral_shi expintegral_si explicit explose exponentialize express expt exsec extdiff extract_linear_equations extremal_subset ezgcd %f f90 facsum factcomb factor factorfacsum factorial factorout factorsum facts fast_central_elements fast_linsolve fasttimes featurep fernfale fft fib fibtophi fifth filename_merge file_search file_type fillarray findde find_root find_root_abs find_root_error find_root_rel first fix flatten flength float floatnump floor flower_snark flush flush1deriv flushd flushnd flush_output fmin_cobyla forget fortran fourcos fourexpand fourier fourier_elim fourint fourintcos fourintsin foursimp foursin fourth fposition frame_bracket freeof freshline fresnel_c fresnel_s from_adjacency_matrix frucht_graph full_listify fullmap fullmapl fullratsimp fullratsubst fullsetify funcsolve fundamental_dimensions fundamental_units fundef funmake funp fv g0 g1 gamma gamma_greek gamma_incomplete gamma_incomplete_generalized gamma_incomplete_regularized gauss gauss_a gauss_b gaussprob gcd gcdex gcdivide gcfac gcfactor gd generalized_lambert_w genfact gen_laguerre genmatrix gensym geo_amortization geo_annuity_fv geo_annuity_pv geomap geometric geometric_mean geosum get getcurrentdirectory get_edge_weight getenv get_lu_factors get_output_stream_string get_pixel get_plot_option get_tex_environment get_tex_environment_default get_vertex_label gfactor gfactorsum ggf girth global_variances gn gnuplot_close gnuplot_replot gnuplot_reset gnuplot_restart gnuplot_start go Gosper GosperSum gr2d gr3d gradef gramschmidt graph6_decode graph6_encode graph6_export graph6_import graph_center graph_charpoly graph_eigenvalues graph_flow graph_order graph_periphery graph_product graph_size graph_union great_rhombicosidodecahedron_graph great_rhombicuboctahedron_graph grid_graph grind grobner_basis grotzch_graph hamilton_cycle hamilton_path hankel hankel_1 hankel_2 harmonic harmonic_mean hav heawood_graph hermite hessian hgfred hilbertmap hilbert_matrix hipow histogram histogram_description hodge horner hypergeometric i0 i1 %ibes ic1 ic2 ic_convert ichr1 ichr2 icosahedron_graph icosidodecahedron_graph icurvature ident identfor identity idiff idim idummy ieqn %if ifactors iframes ifs igcdex igeodesic_coords ilt image imagpart imetric implicit implicit_derivative implicit_plot indexed_tensor indices induced_subgraph inferencep inference_result infix info_display init_atensor init_ctensor in_neighbors innerproduct inpart inprod inrt integerp integer_partitions integrate intersect intersection intervalp intopois intosum invariant1 invariant2 inverse_fft inverse_jacobi_cd inverse_jacobi_cn inverse_jacobi_cs inverse_jacobi_dc inverse_jacobi_dn inverse_jacobi_ds inverse_jacobi_nc inverse_jacobi_nd inverse_jacobi_ns inverse_jacobi_sc inverse_jacobi_sd inverse_jacobi_sn invert invert_by_adjoint invert_by_lu inv_mod irr is is_biconnected is_bipartite is_connected is_digraph is_edge_in_graph is_graph is_graph_or_digraph ishow is_isomorphic isolate isomorphism is_planar isqrt isreal_p is_sconnected is_tree is_vertex_in_graph items_inference %j j0 j1 jacobi jacobian jacobi_cd jacobi_cn jacobi_cs jacobi_dc jacobi_dn jacobi_ds jacobi_nc jacobi_nd jacobi_ns jacobi_p jacobi_sc jacobi_sd jacobi_sn JF jn join jordan julia julia_set julia_sin %k kdels kdelta kill killcontext kostka kron_delta kronecker_product kummer_m kummer_u kurtosis kurtosis_bernoulli kurtosis_beta kurtosis_binomial kurtosis_chi2 kurtosis_continuous_uniform kurtosis_discrete_uniform kurtosis_exp kurtosis_f kurtosis_gamma kurtosis_general_finite_discrete kurtosis_geometric kurtosis_gumbel kurtosis_hypergeometric kurtosis_laplace kurtosis_logistic kurtosis_lognormal kurtosis_negative_binomial kurtosis_noncentral_chi2 kurtosis_noncentral_student_t kurtosis_normal kurtosis_pareto kurtosis_poisson kurtosis_rayleigh kurtosis_student_t kurtosis_weibull label labels lagrange laguerre lambda lambert_w laplace laplacian_matrix last lbfgs lc2kdt lcharp lc_l lcm lc_u ldefint ldisp ldisplay legendre_p legendre_q leinstein length let letrules letsimp levi_civita lfreeof lgtreillis lhs li liediff limit Lindstedt linear linearinterpol linear_program linear_regression line_graph linsolve listarray list_correlations listify list_matrix_entries list_nc_monomials listoftens listofvars listp lmax lmin load loadfile local locate_matrix_entry log logcontract log_gamma lopow lorentz_gauge lowercasep lpart lratsubst lreduce lriemann lsquares_estimates lsquares_estimates_approximate lsquares_estimates_exact lsquares_mse lsquares_residual_mse lsquares_residuals lsum ltreillis lu_backsub lucas lu_factor %m macroexpand macroexpand1 make_array makebox makefact makegamma make_graph make_level_picture makelist makeOrders make_poly_continent make_poly_country make_polygon make_random_state make_rgb_picture makeset make_string_input_stream make_string_output_stream make_transform mandelbrot mandelbrot_set map mapatom maplist matchdeclare matchfix mat_cond mat_fullunblocker mat_function mathml_display mat_norm matrix matrixmap matrixp matrix_size mattrace mat_trace mat_unblocker max max_clique max_degree max_flow maximize_lp max_independent_set max_matching maybe md5sum mean mean_bernoulli mean_beta mean_binomial mean_chi2 mean_continuous_uniform mean_deviation mean_discrete_uniform mean_exp mean_f mean_gamma mean_general_finite_discrete mean_geometric mean_gumbel mean_hypergeometric mean_laplace mean_logistic mean_lognormal mean_negative_binomial mean_noncentral_chi2 mean_noncentral_student_t mean_normal mean_pareto mean_poisson mean_rayleigh mean_student_t mean_weibull median median_deviation member mesh metricexpandall mgf1_sha1 min min_degree min_edge_cut minfactorial minimalPoly minimize_lp minimum_spanning_tree minor minpack_lsquares minpack_solve min_vertex_cover min_vertex_cut mkdir mnewton mod mode_declare mode_identity ModeMatrix moebius mon2schur mono monomial_dimensions multibernstein_poly multi_display_for_texinfo multi_elem multinomial multinomial_coeff multi_orbit multiplot_mode multi_pui multsym multthru mycielski_graph nary natural_unit nc_degree ncexpt ncharpoly negative_picture neighbors new newcontext newdet new_graph newline newton new_variable next_prime nicedummies niceindices ninth nofix nonarray noncentral_moment nonmetricity nonnegintegerp nonscalarp nonzeroandfreeof notequal nounify nptetrad npv nroots nterms ntermst nthroot nullity nullspace num numbered_boundaries numberp number_to_octets num_distinct_partitions numerval numfactor num_partitions nusum nzeta nzetai nzetar octets_to_number octets_to_oid odd_girth oddp ode2 ode_check odelin oid_to_octets op opena opena_binary openr openr_binary openw openw_binary operatorp opsubst optimize %or orbit orbits ordergreat ordergreatp orderless orderlessp orthogonal_complement orthopoly_recur orthopoly_weight outermap out_neighbors outofpois pade parabolic_cylinder_d parametric parametric_surface parg parGosper parse_string parse_timedate part part2cont partfrac partition partition_set partpol path_digraph path_graph pathname_directory pathname_name pathname_type pdf_bernoulli pdf_beta pdf_binomial pdf_cauchy pdf_chi2 pdf_continuous_uniform pdf_discrete_uniform pdf_exp pdf_f pdf_gamma pdf_general_finite_discrete pdf_geometric pdf_gumbel pdf_hypergeometric pdf_laplace pdf_logistic pdf_lognormal pdf_negative_binomial pdf_noncentral_chi2 pdf_noncentral_student_t pdf_normal pdf_pareto pdf_poisson pdf_rank_sum pdf_rayleigh pdf_signed_rank pdf_student_t pdf_weibull pearson_skewness permanent permut permutation permutations petersen_graph petrov pickapart picture_equalp picturep piechart piechart_description planar_embedding playback plog plot2d plot3d plotdf ploteq plsquares pochhammer points poisdiff poisexpt poisint poismap poisplus poissimp poissubst poistimes poistrim polar polarform polartorect polar_to_xy poly_add poly_buchberger poly_buchberger_criterion poly_colon_ideal poly_content polydecomp poly_depends_p poly_elimination_ideal poly_exact_divide poly_expand poly_expt poly_gcd polygon poly_grobner poly_grobner_equal poly_grobner_member poly_grobner_subsetp poly_ideal_intersection poly_ideal_polysaturation poly_ideal_polysaturation1 poly_ideal_saturation poly_ideal_saturation1 poly_lcm poly_minimization polymod poly_multiply polynome2ele polynomialp poly_normal_form poly_normalize poly_normalize_list poly_polysaturation_extension poly_primitive_part poly_pseudo_divide poly_reduced_grobner poly_reduction poly_saturation_extension poly_s_polynomial poly_subtract polytocompanion pop postfix potential power_mod powerseries powerset prefix prev_prime primep primes principal_components print printf printfile print_graph printpois printprops prodrac product properties propvars psi psubst ptriangularize pui pui2comp pui2ele pui2polynome pui_direct puireduc push put pv qput qrange qty quad_control quad_qag quad_qagi quad_qagp quad_qags quad_qawc quad_qawf quad_qawo quad_qaws quadrilateral quantile quantile_bernoulli quantile_beta quantile_binomial quantile_cauchy quantile_chi2 quantile_continuous_uniform quantile_discrete_uniform quantile_exp quantile_f quantile_gamma quantile_general_finite_discrete quantile_geometric quantile_gumbel quantile_hypergeometric quantile_laplace quantile_logistic quantile_lognormal quantile_negative_binomial quantile_noncentral_chi2 quantile_noncentral_student_t quantile_normal quantile_pareto quantile_poisson quantile_rayleigh quantile_student_t quantile_weibull quartile_skewness quit qunit quotient racah_v racah_w radcan radius random random_bernoulli random_beta random_binomial random_bipartite_graph random_cauchy random_chi2 random_continuous_uniform random_digraph random_discrete_uniform random_exp random_f random_gamma random_general_finite_discrete random_geometric random_graph random_graph1 random_gumbel random_hypergeometric random_laplace random_logistic random_lognormal random_negative_binomial random_network random_noncentral_chi2 random_noncentral_student_t random_normal random_pareto random_permutation random_poisson random_rayleigh random_regular_graph random_student_t random_tournament random_tree random_weibull range rank rat ratcoef ratdenom ratdiff ratdisrep ratexpand ratinterpol rational rationalize ratnumer ratnump ratp ratsimp ratsubst ratvars ratweight read read_array read_binary_array read_binary_list read_binary_matrix readbyte readchar read_hashed_array readline read_list read_matrix read_nested_list readonly read_xpm real_imagpart_to_conjugate realpart realroots rearray rectangle rectform rectform_log_if_constant recttopolar rediff reduce_consts reduce_order region region_boundaries region_boundaries_plus rem remainder remarray rembox remcomps remcon remcoord remfun remfunction remlet remove remove_constvalue remove_dimensions remove_edge remove_fundamental_dimensions remove_fundamental_units remove_plot_option remove_vertex rempart remrule remsym remvalue rename rename_file reset reset_displays residue resolvante resolvante_alternee1 resolvante_bipartite resolvante_diedrale resolvante_klein resolvante_klein3 resolvante_produit_sym resolvante_unitaire resolvante_vierer rest resultant return reveal reverse revert revert2 rgb2level rhs ricci riemann rinvariant risch rk rmdir rncombine romberg room rootscontract round row rowop rowswap rreduce run_testsuite %s save saving scalarp scaled_bessel_i scaled_bessel_i0 scaled_bessel_i1 scalefactors scanmap scatterplot scatterplot_description scene schur2comp sconcat scopy scsimp scurvature sdowncase sec sech second sequal sequalignore set_alt_display setdifference set_draw_defaults set_edge_weight setelmx setequalp setify setp set_partitions set_plot_option set_prompt set_random_state set_tex_environment set_tex_environment_default setunits setup_autoload set_up_dot_simplifications set_vertex_label seventh sexplode sf sha1sum sha256sum shortest_path shortest_weighted_path show showcomps showratvars sierpinskiale sierpinskimap sign signum similaritytransform simp_inequality simplify_sum simplode simpmetderiv simtran sin sinh sinsert sinvertcase sixth skewness skewness_bernoulli skewness_beta skewness_binomial skewness_chi2 skewness_continuous_uniform skewness_discrete_uniform skewness_exp skewness_f skewness_gamma skewness_general_finite_discrete skewness_geometric skewness_gumbel skewness_hypergeometric skewness_laplace skewness_logistic skewness_lognormal skewness_negative_binomial skewness_noncentral_chi2 skewness_noncentral_student_t skewness_normal skewness_pareto skewness_poisson skewness_rayleigh skewness_student_t skewness_weibull slength smake small_rhombicosidodecahedron_graph small_rhombicuboctahedron_graph smax smin smismatch snowmap snub_cube_graph snub_dodecahedron_graph solve solve_rec solve_rec_rat some somrac sort sparse6_decode sparse6_encode sparse6_export sparse6_import specint spherical spherical_bessel_j spherical_bessel_y spherical_hankel1 spherical_hankel2 spherical_harmonic spherical_to_xyz splice split sposition sprint sqfr sqrt sqrtdenest sremove sremovefirst sreverse ssearch ssort sstatus ssubst ssubstfirst staircase standardize standardize_inverse_trig starplot starplot_description status std std1 std_bernoulli std_beta std_binomial std_chi2 std_continuous_uniform std_discrete_uniform std_exp std_f std_gamma std_general_finite_discrete std_geometric std_gumbel std_hypergeometric std_laplace std_logistic std_lognormal std_negative_binomial std_noncentral_chi2 std_noncentral_student_t std_normal std_pareto std_poisson std_rayleigh std_student_t std_weibull stemplot stirling stirling1 stirling2 strim striml strimr string stringout stringp strong_components struve_h struve_l sublis sublist sublist_indices submatrix subsample subset subsetp subst substinpart subst_parallel substpart substring subvar subvarp sum sumcontract summand_to_rec supcase supcontext symbolp symmdifference symmetricp system take_channel take_inference tan tanh taylor taylorinfo taylorp taylor_simplifier taytorat tcl_output tcontract tellrat tellsimp tellsimpafter tentex tenth test_mean test_means_difference test_normality test_proportion test_proportions_difference test_rank_sum test_sign test_signed_rank test_variance test_variance_ratio tex tex1 tex_display texput %th third throw time timedate timer timer_info tldefint tlimit todd_coxeter toeplitz tokens to_lisp topological_sort to_poly to_poly_solve totaldisrep totalfourier totient tpartpol trace tracematrix trace_options transform_sample translate translate_file transpose treefale tree_reduce treillis treinat triangle triangularize trigexpand trigrat trigreduce trigsimp trunc truncate truncated_cube_graph truncated_dodecahedron_graph truncated_icosahedron_graph truncated_tetrahedron_graph tr_warnings_get tube tutte_graph ueivects uforget ultraspherical underlying_graph undiff union unique uniteigenvectors unitp units unit_step unitvector unorder unsum untellrat untimer untrace uppercasep uricci uriemann uvect vandermonde_matrix var var1 var_bernoulli var_beta var_binomial var_chi2 var_continuous_uniform var_discrete_uniform var_exp var_f var_gamma var_general_finite_discrete var_geometric var_gumbel var_hypergeometric var_laplace var_logistic var_lognormal var_negative_binomial var_noncentral_chi2 var_noncentral_student_t var_normal var_pareto var_poisson var_rayleigh var_student_t var_weibull vector vectorpotential vectorsimp verbify vers vertex_coloring vertex_connectivity vertex_degree vertex_distance vertex_eccentricity vertex_in_degree vertex_out_degree vertices vertices_to_cycle vertices_to_path %w weyl wheel_graph wiener_index wigner_3j wigner_6j wigner_9j with_stdout write_binary_data writebyte write_data writefile wronskian xreduce xthru %y Zeilberger zeroequiv zerofor zeromatrix zeromatrixp zeta zgeev zheev zlange zn_add_table zn_carmichael_lambda zn_characteristic_factors zn_determinant zn_factor_generators zn_invert_by_lu zn_log zn_mult_table absboxchar activecontexts adapt_depth additive adim aform algebraic algepsilon algexact aliases allbut all_dotsimp_denoms allocation allsym alphabetic animation antisymmetric arrays askexp assume_pos assume_pos_pred assumescalar asymbol atomgrad atrig1 axes axis_3d axis_bottom axis_left axis_right axis_top azimuth background background_color backsubst berlefact bernstein_explicit besselexpand beta_args_sum_to_integer beta_expand bftorat bftrunc bindtest border boundaries_array box boxchar breakup %c capping cauchysum cbrange cbtics center cflength cframe_flag cnonmet_flag color color_bar color_bar_tics colorbox columns commutative complex cone context contexts contour contour_levels cosnpiflag ctaypov ctaypt ctayswitch ctayvar ct_coords ctorsion_flag ctrgsimp cube current_let_rule_package cylinder data_file_name debugmode decreasing default_let_rule_package delay dependencies derivabbrev derivsubst detout diagmetric diff dim dimensions dispflag display2d|10 display_format_internal distribute_over doallmxops domain domxexpt domxmxops domxnctimes dontfactor doscmxops doscmxplus dot0nscsimp dot0simp dot1simp dotassoc dotconstrules dotdistrib dotexptsimp dotident dotscrules draw_graph_program draw_realpart edge_color edge_coloring edge_partition edge_type edge_width %edispflag elevation %emode endphi endtheta engineering_format_floats enhanced3d %enumer epsilon_lp erfflag erf_representation errormsg error_size error_syms error_type %e_to_numlog eval even evenfun evflag evfun ev_point expandwrt_denom expintexpand expintrep expon expop exptdispflag exptisolate exptsubst facexpand facsum_combine factlim factorflag factorial_expand factors_only fb feature features file_name file_output_append file_search_demo file_search_lisp file_search_maxima|10 file_search_tests file_search_usage file_type_lisp file_type_maxima|10 fill_color fill_density filled_func fixed_vertices flipflag float2bf font font_size fortindent fortspaces fpprec fpprintprec functions gamma_expand gammalim gdet genindex gensumnum GGFCFMAX GGFINFINITY globalsolve gnuplot_command gnuplot_curve_styles gnuplot_curve_titles gnuplot_default_term_command gnuplot_dumb_term_command gnuplot_file_args gnuplot_file_name gnuplot_out_file gnuplot_pdf_term_command gnuplot_pm3d gnuplot_png_term_command gnuplot_postamble gnuplot_preamble gnuplot_ps_term_command gnuplot_svg_term_command gnuplot_term gnuplot_view_args Gosper_in_Zeilberger gradefs grid grid2d grind halfangles head_angle head_both head_length head_type height hypergeometric_representation %iargs ibase icc1 icc2 icounter idummyx ieqnprint ifb ifc1 ifc2 ifg ifgi ifr iframe_bracket_form ifri igeowedge_flag ikt1 ikt2 imaginary inchar increasing infeval infinity inflag infolists inm inmc1 inmc2 intanalysis integer integervalued integrate_use_rootsof integration_constant integration_constant_counter interpolate_color intfaclim ip_grid ip_grid_in irrational isolate_wrt_times iterations itr julia_parameter %k1 %k2 keepfloat key key_pos kinvariant kt label label_alignment label_orientation labels lassociative lbfgs_ncorrections lbfgs_nfeval_max leftjust legend letrat let_rule_packages lfg lg lhospitallim limsubst linear linear_solver linechar linel|10 linenum line_type linewidth line_width linsolve_params linsolvewarn lispdisp listarith listconstvars listdummyvars lmxchar load_pathname loadprint logabs logarc logcb logconcoeffp logexpand lognegint logsimp logx logx_secondary logy logy_secondary logz lriem m1pbranch macroexpansion macros mainvar manual_demo maperror mapprint matrix_element_add matrix_element_mult matrix_element_transpose maxapplydepth maxapplyheight maxima_tempdir|10 maxima_userdir|10 maxnegex MAX_ORD maxposex maxpsifracdenom maxpsifracnum maxpsinegint maxpsiposint maxtayorder mesh_lines_color method mod_big_prime mode_check_errorp mode_checkp mode_check_warnp mod_test mod_threshold modular_linear_solver modulus multiplicative multiplicities myoptions nary negdistrib negsumdispflag newline newtonepsilon newtonmaxiter nextlayerfactor niceindicespref nm nmc noeval nolabels nonegative_lp noninteger nonscalar noun noundisp nouns np npi nticks ntrig numer numer_pbranch obase odd oddfun opacity opproperties opsubst optimprefix optionset orientation origin orthopoly_returns_intervals outative outchar packagefile palette partswitch pdf_file pfeformat phiresolution %piargs piece pivot_count_sx pivot_max_sx plot_format plot_options plot_realpart png_file pochhammer_max_index points pointsize point_size points_joined point_type poislim poisson poly_coefficient_ring poly_elimination_order polyfactor poly_grobner_algorithm poly_grobner_debug poly_monomial_order poly_primary_elimination_order poly_return_term_list poly_secondary_elimination_order poly_top_reduction_only posfun position powerdisp pred prederror primep_number_of_tests product_use_gamma program programmode promote_float_to_bigfloat prompt proportional_axes props psexpand ps_file radexpand radius radsubstflag rassociative ratalgdenom ratchristof ratdenomdivide rateinstein ratepsilon ratfac rational ratmx ratprint ratriemann ratsimpexpons ratvarswitch ratweights ratweyl ratwtlvl real realonly redraw refcheck resolution restart resultant ric riem rmxchar %rnum_list rombergabs rombergit rombergmin rombergtol rootsconmode rootsepsilon run_viewer same_xy same_xyz savedef savefactors scalar scalarmatrixp scale scale_lp setcheck setcheckbreak setval show_edge_color show_edges show_edge_type show_edge_width show_id show_label showtime show_vertex_color show_vertex_size show_vertex_type show_vertices show_weight simp simplified_output simplify_products simpproduct simpsum sinnpiflag solvedecomposes solveexplicit solvefactors solvenullwarn solveradcan solvetrigwarn space sparse sphere spring_embedding_depth sqrtdispflag stardisp startphi starttheta stats_numer stringdisp structures style sublis_apply_lambda subnumsimp sumexpand sumsplitfact surface surface_hide svg_file symmetric tab taylordepth taylor_logexpand taylor_order_coefficients taylor_truncate_polynomials tensorkill terminal testsuite_files thetaresolution timer_devalue title tlimswitch tr track transcompile transform transform_xy translate_fast_arrays transparent transrun tr_array_as_ref tr_bound_function_applyp tr_file_tty_messagesp tr_float_can_branch_complex tr_function_call_default trigexpandplus trigexpandtimes triginverses trigsign trivial_solutions tr_numer tr_optimize_max_loop tr_semicompile tr_state_vars tr_warn_bad_function_calls tr_warn_fexpr tr_warn_meval tr_warn_mode tr_warn_undeclared tr_warn_undefined_variable tstep ttyoff tube_extremes ufg ug %unitexpand unit_vectors uric uriem use_fast_arrays user_preamble usersetunits values vect_cross verbose vertex_color vertex_coloring vertex_partition vertex_size vertex_type view warnings weyl width windowname windowtitle wired_surface wireframe xaxis xaxis_color xaxis_secondary xaxis_type xaxis_width xlabel xlabel_secondary xlength xrange xrange_secondary xtics xtics_axis xtics_rotate xtics_rotate_secondary xtics_secondary xtics_secondary_axis xu_grid x_voxel xy_file xyplane xy_scale yaxis yaxis_color yaxis_secondary yaxis_type yaxis_width ylabel ylabel_secondary ylength yrange yrange_secondary ytics ytics_axis ytics_rotate ytics_rotate_secondary ytics_secondary ytics_secondary_axis yv_grid y_voxel yx_ratio zaxis zaxis_color zaxis_type zaxis_width zeroa zerob zerobern zeta%pi zlabel zlabel_rotate zlength zmin zn_primroot_limit zn_primroot_pretest",i="_ __ %|0 %%|0";return{lexemes:"[A-Za-z_%][0-9A-Za-z_%]*",keywords:{keyword:t,literal:n,built_in:r,symbol:i},contains:[{className:"comment",begin:"/\\*",end:"\\*/",contains:["self"]},e.QUOTE_STRING_MODE,{className:"number",relevance:0,variants:[{begin:"\\b(\\d+|\\d+\\.|\\.\\d+|\\d+\\.\\d+)[Ee][-+]?\\d+\\b"},{begin:"\\b(\\d+|\\d+\\.|\\.\\d+|\\d+\\.\\d+)[Bb][-+]?\\d+\\b",relevance:10},{begin:"\\b(\\.\\d+|\\d+\\.\\d+)\\b"},{begin:"\\b(\\d+|0[0-9A-Za-z]+)\\.?\\b"}]}],illegal:/@/}}},"3bbe":function(e,t,n){var r=n("861d");e.exports=function(e){if(!r(e)&&null!==e)throw TypeError("Can't set "+String(e)+" as a prototype");return e}},"3c69":function(e,t){e.exports=function(e){return{lexemes:/[!#@\w]+/,keywords:{keyword:"N|0 P|0 X|0 a|0 ab abc abo al am an|0 ar arga argd arge argdo argg argl argu as au aug aun b|0 bN ba bad bd be bel bf bl bm bn bo bp br brea breaka breakd breakl bro bufdo buffers bun bw c|0 cN cNf ca cabc caddb cad caddf cal cat cb cc ccl cd ce cex cf cfir cgetb cgete cg changes chd che checkt cl cla clo cm cmapc cme cn cnew cnf cno cnorea cnoreme co col colo com comc comp con conf cope cp cpf cq cr cs cst cu cuna cunme cw delm deb debugg delc delf dif diffg diffo diffp diffpu diffs diffthis dig di dl dell dj dli do doautoa dp dr ds dsp e|0 ea ec echoe echoh echom echon el elsei em en endfo endf endt endw ene ex exe exi exu f|0 files filet fin fina fini fir fix fo foldc foldd folddoc foldo for fu go gr grepa gu gv ha helpf helpg helpt hi hid his ia iabc if ij il im imapc ime ino inorea inoreme int is isp iu iuna iunme j|0 ju k|0 keepa kee keepj lN lNf l|0 lad laddb laddf la lan lat lb lc lch lcl lcs le lefta let lex lf lfir lgetb lgete lg lgr lgrepa lh ll lla lli lmak lm lmapc lne lnew lnf ln loadk lo loc lockv lol lope lp lpf lr ls lt lu lua luad luaf lv lvimgrepa lw m|0 ma mak map mapc marks mat me menut mes mk mks mksp mkv mkvie mod mz mzf nbc nb nbs new nm nmapc nme nn nnoreme noa no noh norea noreme norm nu nun nunme ol o|0 om omapc ome on ono onoreme opt ou ounme ow p|0 profd prof pro promptr pc ped pe perld po popu pp pre prev ps pt ptN ptf ptj ptl ptn ptp ptr pts pu pw py3 python3 py3d py3f py pyd pyf quita qa rec red redi redr redraws reg res ret retu rew ri rightb rub rubyd rubyf rund ru rv sN san sa sal sav sb sbN sba sbf sbl sbm sbn sbp sbr scrip scripte scs se setf setg setl sf sfir sh sim sig sil sl sla sm smap smapc sme sn sni sno snor snoreme sor so spelld spe spelli spellr spellu spellw sp spr sre st sta startg startr star stopi stj sts sun sunm sunme sus sv sw sy synti sync tN tabN tabc tabdo tabe tabf tabfir tabl tabm tabnew tabn tabo tabp tabr tabs tab ta tags tc tcld tclf te tf th tj tl tm tn to tp tr try ts tu u|0 undoj undol una unh unl unlo unm unme uns up ve verb vert vim vimgrepa vi viu vie vm vmapc vme vne vn vnoreme vs vu vunme windo w|0 wN wa wh wi winc winp wn wp wq wqa ws wu wv x|0 xa xmapc xm xme xn xnoreme xu xunme y|0 z|0 ~ Next Print append abbreviate abclear aboveleft all amenu anoremenu args argadd argdelete argedit argglobal arglocal argument ascii autocmd augroup aunmenu buffer bNext ball badd bdelete behave belowright bfirst blast bmodified bnext botright bprevious brewind break breakadd breakdel breaklist browse bunload bwipeout change cNext cNfile cabbrev cabclear caddbuffer caddexpr caddfile call catch cbuffer cclose center cexpr cfile cfirst cgetbuffer cgetexpr cgetfile chdir checkpath checktime clist clast close cmap cmapclear cmenu cnext cnewer cnfile cnoremap cnoreabbrev cnoremenu copy colder colorscheme command comclear compiler continue confirm copen cprevious cpfile cquit crewind cscope cstag cunmap cunabbrev cunmenu cwindow delete delmarks debug debuggreedy delcommand delfunction diffupdate diffget diffoff diffpatch diffput diffsplit digraphs display deletel djump dlist doautocmd doautoall deletep drop dsearch dsplit edit earlier echo echoerr echohl echomsg else elseif emenu endif endfor endfunction endtry endwhile enew execute exit exusage file filetype find finally finish first fixdel fold foldclose folddoopen folddoclosed foldopen function global goto grep grepadd gui gvim hardcopy help helpfind helpgrep helptags highlight hide history insert iabbrev iabclear ijump ilist imap imapclear imenu inoremap inoreabbrev inoremenu intro isearch isplit iunmap iunabbrev iunmenu join jumps keepalt keepmarks keepjumps lNext lNfile list laddexpr laddbuffer laddfile last language later lbuffer lcd lchdir lclose lcscope left leftabove lexpr lfile lfirst lgetbuffer lgetexpr lgetfile lgrep lgrepadd lhelpgrep llast llist lmake lmap lmapclear lnext lnewer lnfile lnoremap loadkeymap loadview lockmarks lockvar lolder lopen lprevious lpfile lrewind ltag lunmap luado luafile lvimgrep lvimgrepadd lwindow move mark make mapclear match menu menutranslate messages mkexrc mksession mkspell mkvimrc mkview mode mzscheme mzfile nbclose nbkey nbsart next nmap nmapclear nmenu nnoremap nnoremenu noautocmd noremap nohlsearch noreabbrev noremenu normal number nunmap nunmenu oldfiles open omap omapclear omenu only onoremap onoremenu options ounmap ounmenu ownsyntax print profdel profile promptfind promptrepl pclose pedit perl perldo pop popup ppop preserve previous psearch ptag ptNext ptfirst ptjump ptlast ptnext ptprevious ptrewind ptselect put pwd py3do py3file python pydo pyfile quit quitall qall read recover redo redir redraw redrawstatus registers resize retab return rewind right rightbelow ruby rubydo rubyfile rundo runtime rviminfo substitute sNext sandbox sargument sall saveas sbuffer sbNext sball sbfirst sblast sbmodified sbnext sbprevious sbrewind scriptnames scriptencoding scscope set setfiletype setglobal setlocal sfind sfirst shell simalt sign silent sleep slast smagic smapclear smenu snext sniff snomagic snoremap snoremenu sort source spelldump spellgood spellinfo spellrepall spellundo spellwrong split sprevious srewind stop stag startgreplace startreplace startinsert stopinsert stjump stselect sunhide sunmap sunmenu suspend sview swapname syntax syntime syncbind tNext tabNext tabclose tabedit tabfind tabfirst tablast tabmove tabnext tabonly tabprevious tabrewind tag tcl tcldo tclfile tearoff tfirst throw tjump tlast tmenu tnext topleft tprevious trewind tselect tunmenu undo undojoin undolist unabbreviate unhide unlet unlockvar unmap unmenu unsilent update vglobal version verbose vertical vimgrep vimgrepadd visual viusage view vmap vmapclear vmenu vnew vnoremap vnoremenu vsplit vunmap vunmenu write wNext wall while winsize wincmd winpos wnext wprevious wqall wsverb wundo wviminfo xit xall xmapclear xmap xmenu xnoremap xnoremenu xunmap xunmenu yank",built_in:"synIDtrans atan2 range matcharg did_filetype asin feedkeys xor argv complete_check add getwinposx getqflist getwinposy screencol clearmatches empty extend getcmdpos mzeval garbagecollect setreg ceil sqrt diff_hlID inputsecret get getfperm getpid filewritable shiftwidth max sinh isdirectory synID system inputrestore winline atan visualmode inputlist tabpagewinnr round getregtype mapcheck hasmapto histdel argidx findfile sha256 exists toupper getcmdline taglist string getmatches bufnr strftime winwidth bufexists strtrans tabpagebuflist setcmdpos remote_read printf setloclist getpos getline bufwinnr float2nr len getcmdtype diff_filler luaeval resolve libcallnr foldclosedend reverse filter has_key bufname str2float strlen setline getcharmod setbufvar index searchpos shellescape undofile foldclosed setqflist buflisted strchars str2nr virtcol floor remove undotree remote_expr winheight gettabwinvar reltime cursor tabpagenr finddir localtime acos getloclist search tanh matchend rename gettabvar strdisplaywidth type abs py3eval setwinvar tolower wildmenumode log10 spellsuggest bufloaded synconcealed nextnonblank server2client complete settabwinvar executable input wincol setmatches getftype hlID inputsave searchpair or screenrow line settabvar histadd deepcopy strpart remote_peek and eval getftime submatch screenchar winsaveview matchadd mkdir screenattr getfontname libcall reltimestr getfsize winnr invert pow getbufline byte2line soundfold repeat fnameescape tagfiles sin strwidth spellbadword trunc maparg log lispindent hostname setpos globpath remote_foreground getchar synIDattr fnamemodify cscope_connection stridx winbufnr indent min complete_add nr2char searchpairpos inputdialog values matchlist items hlexists strridx browsedir expand fmod pathshorten line2byte argc count getwinvar glob foldtextresult getreg foreground cosh matchdelete has char2nr simplify histget searchdecl iconv winrestcmd pumvisible writefile foldlevel haslocaldir keys cos matchstr foldtext histnr tan tempname getcwd byteidx getbufvar islocked escape eventhandler remote_send serverlist winrestview synstack pyeval prevnonblank readfile cindent filereadable changenr exp"},illegal:/;/,contains:[e.NUMBER_MODE,{className:"string",begin:"'",end:"'",illegal:"\\n"},{className:"string",begin:/"(\\"|\n\\|[^"\n])*"/},e.COMMENT('"',"$"),{className:"variable",begin:/[bwtglsav]:[\w\d_]*/},{className:"function",beginKeywords:"function function!",end:"$",relevance:0,contains:[e.TITLE_MODE,{className:"params",begin:"\\(",end:"\\)"}]},{className:"symbol",begin:/<[\w-]+>/}]}}},"3f38":function(e,t){e.exports=function(e){var t={variants:[e.COMMENT("--","$"),e.COMMENT("{-","-}",{contains:["self"]})]},n={className:"meta",begin:"{-#",end:"#-}"},r={className:"meta",begin:"^#",end:"$"},i={className:"type",begin:"\\b[A-Z][\\w']*",relevance:0},a={begin:"\\(",end:"\\)",illegal:'"',contains:[n,r,{className:"type",begin:"\\b[A-Z][\\w]*(\\((\\.\\.|,|\\w+)\\))?"},e.inherit(e.TITLE_MODE,{begin:"[_a-z][\\w']*"}),t]},o={begin:"{",end:"}",contains:a.contains};return{aliases:["hs"],keywords:"let in if then else case of where do module import hiding qualified type data newtype deriving class instance as default infix infixl infixr foreign export ccall stdcall cplusplus jvm dotnet safe unsafe family forall mdo proc rec",contains:[{beginKeywords:"module",end:"where",keywords:"module where",contains:[a,t],illegal:"\\W\\.|;"},{begin:"\\bimport\\b",end:"$",keywords:"import qualified as hiding",contains:[a,t],illegal:"\\W\\.|;"},{className:"class",begin:"^(\\s*)?(class|instance)\\b",end:"where",keywords:"class family instance where",contains:[i,a,t]},{className:"class",begin:"\\b(data|(new)?type)\\b",end:"$",keywords:"data family type newtype deriving",contains:[n,i,a,o,t]},{beginKeywords:"default",end:"$",contains:[i,a,t]},{beginKeywords:"infix infixl infixr",end:"$",contains:[e.C_NUMBER_MODE,t]},{begin:"\\bforeign\\b",end:"$",keywords:"foreign import export ccall stdcall cplusplus jvm dotnet safe unsafe",contains:[i,e.QUOTE_STRING_MODE,t]},{className:"meta",begin:"#!\\/usr\\/bin\\/env runhaskell",end:"$"},n,r,e.QUOTE_STRING_MODE,e.C_NUMBER_MODE,i,e.inherit(e.TITLE_MODE,{begin:"^[_a-z][\\w']*"}),t,{begin:"->|<-"}]}}},"3f8c":function(e,t){e.exports={}},"40f4":function(e,t){e.exports=function(e){var t="do if then else end until while abort array attrib by call cards cards4 catname continue datalines datalines4 delete delim delimiter display dm drop endsas error file filename footnote format goto in infile informat input keep label leave length libname link list lostcard merge missing modify options output out page put redirect remove rename replace retain return select set skip startsas stop title update waitsas where window x systask add and alter as cascade check create delete describe distinct drop foreign from group having index insert into in key like message modify msgtype not null on or order primary references reset restrict select set table unique update validate view where",n="abs|addr|airy|arcos|arsin|atan|attrc|attrn|band|betainv|blshift|bnot|bor|brshift|bxor|byte|cdf|ceil|cexist|cinv|close|cnonct|collate|compbl|compound|compress|cos|cosh|css|curobs|cv|daccdb|daccdbsl|daccsl|daccsyd|dacctab|dairy|date|datejul|datepart|datetime|day|dclose|depdb|depdbsl|depdbsl|depsl|depsl|depsyd|depsyd|deptab|deptab|dequote|dhms|dif|digamma|dim|dinfo|dnum|dopen|doptname|doptnum|dread|dropnote|dsname|erf|erfc|exist|exp|fappend|fclose|fcol|fdelete|fetch|fetchobs|fexist|fget|fileexist|filename|fileref|finfo|finv|fipname|fipnamel|fipstate|floor|fnonct|fnote|fopen|foptname|foptnum|fpoint|fpos|fput|fread|frewind|frlen|fsep|fuzz|fwrite|gaminv|gamma|getoption|getvarc|getvarn|hbound|hms|hosthelp|hour|ibessel|index|indexc|indexw|input|inputc|inputn|int|intck|intnx|intrr|irr|jbessel|juldate|kurtosis|lag|lbound|left|length|lgamma|libname|libref|log|log10|log2|logpdf|logpmf|logsdf|lowcase|max|mdy|mean|min|minute|mod|month|mopen|mort|n|netpv|nmiss|normal|note|npv|open|ordinal|pathname|pdf|peek|peekc|pmf|point|poisson|poke|probbeta|probbnml|probchi|probf|probgam|probhypr|probit|probnegb|probnorm|probt|put|putc|putn|qtr|quote|ranbin|rancau|ranexp|rangam|range|rank|rannor|ranpoi|rantbl|rantri|ranuni|repeat|resolve|reverse|rewind|right|round|saving|scan|sdf|second|sign|sin|sinh|skewness|soundex|spedis|sqrt|std|stderr|stfips|stname|stnamel|substr|sum|symget|sysget|sysmsg|sysprod|sysrc|system|tan|tanh|time|timepart|tinv|tnonct|today|translate|tranwrd|trigamma|trim|trimn|trunc|uniform|upcase|uss|var|varfmt|varinfmt|varlabel|varlen|varname|varnum|varray|varrayx|vartype|verify|vformat|vformatd|vformatdx|vformatn|vformatnx|vformatw|vformatwx|vformatx|vinarray|vinarrayx|vinformat|vinformatd|vinformatdx|vinformatn|vinformatnx|vinformatw|vinformatwx|vinformatx|vlabel|vlabelx|vlength|vlengthx|vname|vnamex|vtype|vtypex|weekday|year|yyq|zipfips|zipname|zipnamel|zipstate",r="bquote|nrbquote|cmpres|qcmpres|compstor|datatyp|display|do|else|end|eval|global|goto|if|index|input|keydef|label|left|length|let|local|lowcase|macro|mend|nrbquote|nrquote|nrstr|put|qcmpres|qleft|qlowcase|qscan|qsubstr|qsysfunc|qtrim|quote|qupcase|scan|str|substr|superq|syscall|sysevalf|sysexec|sysfunc|sysget|syslput|sysprod|sysrc|sysrput|then|to|trim|unquote|until|upcase|verify|while|window";return{aliases:["sas","SAS"],case_insensitive:!0,keywords:{literal:"null missing _all_ _automatic_ _character_ _infile_ _n_ _name_ _null_ _numeric_ _user_ _webout_",meta:t},contains:[{className:"keyword",begin:/^\s*(proc [\w\d_]+|data|run|quit)[\s\;]/},{className:"variable",begin:/\&[a-zA-Z_\&][a-zA-Z0-9_]*\.?/},{className:"emphasis",begin:/^\s*datalines|cards.*;/,end:/^\s*;\s*$/},{className:"built_in",begin:"%("+r+")"},{className:"name",begin:/%[a-zA-Z_][a-zA-Z_0-9]*/},{className:"meta",begin:"[^%]("+n+")[(]"},{className:"string",variants:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},e.COMMENT("\\*",";"),e.C_BLOCK_COMMENT_MODE]}}},4108:function(e,t){e.exports=function(e){var t="[^\\(\\)\\[\\]\\{\\}\",'`;#|\\\\\\s]+",n="(\\-|\\+)?\\d+([./]\\d+)?",r=n+"[+\\-]"+n+"i",i={"builtin-name":"case-lambda call/cc class define-class exit-handler field import inherit init-field interface let*-values let-values let/ec mixin opt-lambda override protect provide public rename require require-for-syntax syntax syntax-case syntax-error unit/sig unless when with-syntax and begin call-with-current-continuation call-with-input-file call-with-output-file case cond define define-syntax delay do dynamic-wind else for-each if lambda let let* let-syntax letrec letrec-syntax map or syntax-rules ' * + , ,@ - ... / ; < <= = => > >= ` abs acos angle append apply asin assoc assq assv atan boolean? caar cadr call-with-input-file call-with-output-file call-with-values car cdddar cddddr cdr ceiling char->integer char-alphabetic? char-ci<=? char-ci=? char-ci>? char-downcase char-lower-case? char-numeric? char-ready? char-upcase char-upper-case? char-whitespace? char<=? char=? char>? char? close-input-port close-output-port complex? cons cos current-input-port current-output-port denominator display eof-object? eq? equal? eqv? eval even? exact->inexact exact? exp expt floor force gcd imag-part inexact->exact inexact? input-port? integer->char integer? interaction-environment lcm length list list->string list->vector list-ref list-tail list? load log magnitude make-polar make-rectangular make-string make-vector max member memq memv min modulo negative? newline not null-environment null? number->string number? numerator odd? open-input-file open-output-file output-port? pair? peek-char port? positive? procedure? quasiquote quote quotient rational? rationalize read read-char real-part real? remainder reverse round scheme-report-environment set! set-car! set-cdr! sin sqrt string string->list string->number string->symbol string-append string-ci<=? string-ci=? string-ci>? string-copy string-fill! string-length string-ref string-set! string<=? string=? string>? string? substring symbol->string symbol? tan transcript-off transcript-on truncate values vector vector->list vector-fill! vector-length vector-ref vector-set! with-input-from-file with-output-to-file write write-char zero?"},a={className:"meta",begin:"^#!",end:"$"},o={className:"literal",begin:"(#t|#f|#\\\\"+t+"|#\\\\.)"},s={className:"number",variants:[{begin:n,relevance:0},{begin:r,relevance:0},{begin:"#b[0-1]+(/[0-1]+)?"},{begin:"#o[0-7]+(/[0-7]+)?"},{begin:"#x[0-9a-f]+(/[0-9a-f]+)?"}]},l=e.QUOTE_STRING_MODE,c=[e.COMMENT(";","$",{relevance:0}),e.COMMENT("#\\|","\\|#")],d={begin:t,relevance:0},u={className:"symbol",begin:"'"+t},_={endsWithParent:!0,relevance:0},p={variants:[{begin:/'/},{begin:"`"}],contains:[{begin:"\\(",end:"\\)",contains:["self",o,l,s,d,u]}]},f={className:"name",begin:t,lexemes:t,keywords:i},m={begin:/lambda/,endsWithParent:!0,returnBegin:!0,contains:[f,{begin:/\(/,end:/\)/,endsParent:!0,contains:[d]}]},h={variants:[{begin:"\\(",end:"\\)"},{begin:"\\[",end:"\\]"}],contains:[m,f,_]};return _.contains=[o,s,l,d,u,p,h].concat(c),{illegal:/\S/,contains:[a,s,l,u,p,h].concat(c)}}},4160:function(e,t,n){"use strict";var r=n("23e7"),i=n("17c2");r({target:"Array",proto:!0,forced:[].forEach!=i},{forEach:i})},4272:function(e,t){e.exports=function(e){return{case_insensitive:!1,lexemes:"[a-zA-Z][a-zA-Z0-9_-]*",keywords:{keyword:"base-uri child-src connect-src default-src font-src form-action frame-ancestors frame-src img-src media-src object-src plugin-types report-uri sandbox script-src style-src"},contains:[{className:"string",begin:"'",end:"'"},{className:"attribute",begin:"^Content",end:":",excludeEnd:!0}]}}},"428f":function(e,t,n){var r=n("da84");e.exports=r},4362:function(e,t,n){t.nextTick=function(e){var t=Array.prototype.slice.call(arguments);t.shift(),setTimeout((function(){e.apply(null,t)}),0)},t.platform=t.arch=t.execPath=t.title="browser",t.pid=1,t.browser=!0,t.env={},t.argv=[],t.binding=function(e){throw new Error("No such module. (Possibly not yet loaded)")},function(){var e,r="/";t.cwd=function(){return r},t.chdir=function(t){e||(e=n("df7c")),r=e.resolve(t,r)}}(),t.exit=t.kill=t.umask=t.dlopen=t.uptime=t.memoryUsage=t.uvCounters=function(){},t.features={}},4396:function(e,t){e.exports=function(e){var t={begin:/[a-z][A-Za-z0-9_]*/,relevance:0},n={className:"symbol",variants:[{begin:/[A-Z][a-zA-Z0-9_]*/},{begin:/_[A-Za-z0-9_]*/}],relevance:0},r={begin:/\(/,end:/\)/,relevance:0},i={begin:/\[/,end:/\]/},a={className:"comment",begin:/%/,end:/$/,contains:[e.PHRASAL_WORDS_MODE]},o={className:"string",begin:/`/,end:/`/,contains:[e.BACKSLASH_ESCAPE]},s={className:"string",begin:/0\'(\\\'|.)/},l={className:"string",begin:/0\'\\s/},c={begin:/:-/},d=[t,n,r,c,i,a,e.C_BLOCK_COMMENT_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,o,s,l,e.C_NUMBER_MODE];return r.contains=d,i.contains=d,{contains:d.concat([{begin:/\.$/}])}}},"43f9":function(e,t,n){ +var n=Object.freeze({});function r(e){return void 0===e||null===e}function i(e){return void 0!==e&&null!==e}function a(e){return!0===e}function o(e){return!1===e}function s(e){return"string"===typeof e||"number"===typeof e||"symbol"===typeof e||"boolean"===typeof e}function l(e){return null!==e&&"object"===typeof e}var c=Object.prototype.toString;function d(e){return"[object Object]"===c.call(e)}function u(e){return"[object RegExp]"===c.call(e)}function _(e){var t=parseFloat(String(e));return t>=0&&Math.floor(t)===t&&isFinite(e)}function p(e){return i(e)&&"function"===typeof e.then&&"function"===typeof e.catch}function f(e){return null==e?"":Array.isArray(e)||d(e)&&e.toString===c?JSON.stringify(e,null,2):String(e)}function m(e){var t=parseFloat(e);return isNaN(t)?e:t}function h(e,t){for(var n=Object.create(null),r=e.split(","),i=0;i-1)return e.splice(n,1)}}var v=Object.prototype.hasOwnProperty;function E(e,t){return v.call(e,t)}function S(e){var t=Object.create(null);return function(n){var r=t[n];return r||(t[n]=e(n))}}var y=/-(\w)/g,T=S((function(e){return e.replace(y,(function(e,t){return t?t.toUpperCase():""}))})),C=S((function(e){return e.charAt(0).toUpperCase()+e.slice(1)})),N=/\B([A-Z])/g,O=S((function(e){return e.replace(N,"-$1").toLowerCase()}));function R(e,t){function n(n){var r=arguments.length;return r?r>1?e.apply(t,arguments):e.call(t,n):e.call(t)}return n._length=e.length,n}function A(e,t){return e.bind(t)}var w=Function.prototype.bind?A:R;function I(e,t){t=t||0;var n=e.length-t,r=new Array(n);while(n--)r[n]=e[n+t];return r}function x(e,t){for(var n in t)e[n]=t[n];return e}function M(e){for(var t={},n=0;n0,ne=J&&J.indexOf("edge/")>0,re=(J&&J.indexOf("android"),J&&/iphone|ipad|ipod|ios/.test(J)||"ios"===Z),ie=(J&&/chrome\/\d+/.test(J),J&&/phantomjs/.test(J),J&&J.match(/firefox\/(\d+)/)),ae={}.watch,oe=!1;if(K)try{var se={};Object.defineProperty(se,"passive",{get:function(){oe=!0}}),window.addEventListener("test-passive",null,se)}catch(To){}var le=function(){return void 0===W&&(W=!K&&!X&&"undefined"!==typeof e&&(e["process"]&&"server"===e["process"].env.VUE_ENV)),W},ce=K&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__;function de(e){return"function"===typeof e&&/native code/.test(e.toString())}var ue,_e="undefined"!==typeof Symbol&&de(Symbol)&&"undefined"!==typeof Reflect&&de(Reflect.ownKeys);ue="undefined"!==typeof Set&&de(Set)?Set:function(){function e(){this.set=Object.create(null)}return e.prototype.has=function(e){return!0===this.set[e]},e.prototype.add=function(e){this.set[e]=!0},e.prototype.clear=function(){this.set=Object.create(null)},e}();var pe=D,fe=0,me=function(){this.id=fe++,this.subs=[]};me.prototype.addSub=function(e){this.subs.push(e)},me.prototype.removeSub=function(e){b(this.subs,e)},me.prototype.depend=function(){me.target&&me.target.addDep(this)},me.prototype.notify=function(){var e=this.subs.slice();for(var t=0,n=e.length;t-1)if(a&&!E(i,"default"))o=!1;else if(""===o||o===O(e)){var l=et(String,i.type);(l<0||s0&&(o=Rt(o,(t||"")+"_"+n),Ot(o[0])&&Ot(c)&&(d[l]=ye(c.text+o[0].text),o.shift()),d.push.apply(d,o)):s(o)?Ot(c)?d[l]=ye(c.text+o):""!==o&&d.push(ye(o)):Ot(o)&&Ot(c)?d[l]=ye(c.text+o.text):(a(e._isVList)&&i(o.tag)&&r(o.key)&&i(t)&&(o.key="__vlist"+t+"_"+n+"__"),d.push(o)));return d}function At(e){var t=e.$options.provide;t&&(e._provided="function"===typeof t?t.call(e):t)}function wt(e){var t=It(e.$options.inject,e);t&&(we(!1),Object.keys(t).forEach((function(n){Le(e,n,t[n])})),we(!0))}function It(e,t){if(e){for(var n=Object.create(null),r=_e?Reflect.ownKeys(e):Object.keys(e),i=0;i0,o=e?!!e.$stable:!a,s=e&&e.$key;if(e){if(e._normalized)return e._normalized;if(o&&r&&r!==n&&s===r.$key&&!a&&!r.$hasNormal)return r;for(var l in i={},e)e[l]&&"$"!==l[0]&&(i[l]=Lt(t,l,e[l]))}else i={};for(var c in t)c in i||(i[c]=Pt(t,c));return e&&Object.isExtensible(e)&&(e._normalized=i),V(i,"$stable",o),V(i,"$key",s),V(i,"$hasNormal",a),i}function Lt(e,t,n){var r=function(){var e=arguments.length?n.apply(null,arguments):n({});return e=e&&"object"===typeof e&&!Array.isArray(e)?[e]:Nt(e),e&&(0===e.length||1===e.length&&e[0].isComment)?void 0:e};return n.proxy&&Object.defineProperty(e,t,{get:r,enumerable:!0,configurable:!0}),r}function Pt(e,t){return function(){return e[t]}}function kt(e,t){var n,r,a,o,s;if(Array.isArray(e)||"string"===typeof e)for(n=new Array(e.length),r=0,a=e.length;r1?I(n):n;for(var r=I(arguments,1),i='event handler for "'+e+'"',a=0,o=n.length;adocument.createEvent("Event").timeStamp&&(Wn=function(){return Qn.now()})}function Kn(){var e,t;for(zn=Wn(),Hn=!0,Gn.sort((function(e,t){return e.id-t.id})),Vn=0;VnVn&&Gn[n].id>e.id)n--;Gn.splice(n+1,0,e)}else Gn.push(e);qn||(qn=!0,ft(Kn))}}var tr=0,nr=function(e,t,n,r,i){this.vm=e,i&&(e._watcher=this),e._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=++tr,this.active=!0,this.dirty=this.lazy,this.deps=[],this.newDeps=[],this.depIds=new ue,this.newDepIds=new ue,this.expression="","function"===typeof t?this.getter=t:(this.getter=z(t),this.getter||(this.getter=D)),this.value=this.lazy?void 0:this.get()};nr.prototype.get=function(){var e;ge(this);var t=this.vm;try{e=this.getter.call(t,t)}catch(To){if(!this.user)throw To;tt(To,t,'getter for watcher "'+this.expression+'"')}finally{this.deep&&ht(e),be(),this.cleanupDeps()}return e},nr.prototype.addDep=function(e){var t=e.id;this.newDepIds.has(t)||(this.newDepIds.add(t),this.newDeps.push(e),this.depIds.has(t)||e.addSub(this))},nr.prototype.cleanupDeps=function(){var e=this.deps.length;while(e--){var t=this.deps[e];this.newDepIds.has(t.id)||t.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},nr.prototype.update=function(){this.lazy?this.dirty=!0:this.sync?this.run():er(this)},nr.prototype.run=function(){if(this.active){var e=this.get();if(e!==this.value||l(e)||this.deep){var t=this.value;if(this.value=e,this.user)try{this.cb.call(this.vm,e,t)}catch(To){tt(To,this.vm,'callback for watcher "'+this.expression+'"')}else this.cb.call(this.vm,e,t)}}},nr.prototype.evaluate=function(){this.value=this.get(),this.dirty=!1},nr.prototype.depend=function(){var e=this.deps.length;while(e--)this.deps[e].depend()},nr.prototype.teardown=function(){if(this.active){this.vm._isBeingDestroyed||b(this.vm._watchers,this);var e=this.deps.length;while(e--)this.deps[e].removeSub(this);this.active=!1}};var rr={enumerable:!0,configurable:!0,get:D,set:D};function ir(e,t,n){rr.get=function(){return this[t][n]},rr.set=function(e){this[t][n]=e},Object.defineProperty(e,n,rr)}function ar(e){e._watchers=[];var t=e.$options;t.props&&or(e,t.props),t.methods&&fr(e,t.methods),t.data?sr(e):De(e._data={},!0),t.computed&&dr(e,t.computed),t.watch&&t.watch!==ae&&mr(e,t.watch)}function or(e,t){var n=e.$options.propsData||{},r=e._props={},i=e.$options._propKeys=[],a=!e.$parent;a||we(!1);var o=function(a){i.push(a);var o=Ke(a,t,n,e);Le(r,a,o),a in e||ir(e,"_props",a)};for(var s in t)o(s);we(!0)}function sr(e){var t=e.$options.data;t=e._data="function"===typeof t?lr(t,e):t||{},d(t)||(t={});var n=Object.keys(t),r=e.$options.props,i=(e.$options.methods,n.length);while(i--){var a=n[i];0,r&&E(r,a)||H(a)||ir(e,"_data",a)}De(t,!0)}function lr(e,t){ge();try{return e.call(t,t)}catch(To){return tt(To,t,"data()"),{}}finally{be()}}var cr={lazy:!0};function dr(e,t){var n=e._computedWatchers=Object.create(null),r=le();for(var i in t){var a=t[i],o="function"===typeof a?a:a.get;0,r||(n[i]=new nr(e,o||D,D,cr)),i in e||ur(e,i,a)}}function ur(e,t,n){var r=!le();"function"===typeof n?(rr.get=r?_r(t):pr(n),rr.set=D):(rr.get=n.get?r&&!1!==n.cache?_r(t):pr(n.get):D,rr.set=n.set||D),Object.defineProperty(e,t,rr)}function _r(e){return function(){var t=this._computedWatchers&&this._computedWatchers[e];if(t)return t.dirty&&t.evaluate(),me.target&&t.depend(),t.value}}function pr(e){return function(){return e.call(this,this)}}function fr(e,t){e.$options.props;for(var n in t)e[n]="function"!==typeof t[n]?D:w(t[n],e)}function mr(e,t){for(var n in t){var r=t[n];if(Array.isArray(r))for(var i=0;i-1)return this;var n=I(arguments,1);return n.unshift(this),"function"===typeof e.install?e.install.apply(e,n):"function"===typeof e&&e.apply(null,n),t.push(e),this}}function Nr(e){e.mixin=function(e){return this.options=We(this.options,e),this}}function Or(e){e.cid=0;var t=1;e.extend=function(e){e=e||{};var n=this,r=n.cid,i=e._Ctor||(e._Ctor={});if(i[r])return i[r];var a=e.name||n.options.name;var o=function(e){this._init(e)};return o.prototype=Object.create(n.prototype),o.prototype.constructor=o,o.cid=t++,o.options=We(n.options,e),o["super"]=n,o.options.props&&Rr(o),o.options.computed&&Ar(o),o.extend=n.extend,o.mixin=n.mixin,o.use=n.use,G.forEach((function(e){o[e]=n[e]})),a&&(o.options.components[a]=o),o.superOptions=n.options,o.extendOptions=e,o.sealedOptions=x({},o.options),i[r]=o,o}}function Rr(e){var t=e.options.props;for(var n in t)ir(e.prototype,"_props",n)}function Ar(e){var t=e.options.computed;for(var n in t)ur(e.prototype,n,t[n])}function wr(e){G.forEach((function(t){e[t]=function(e,n){return n?("component"===t&&d(n)&&(n.name=n.name||e,n=this.options._base.extend(n)),"directive"===t&&"function"===typeof n&&(n={bind:n,update:n}),this.options[t+"s"][e]=n,n):this.options[t+"s"][e]}}))}function Ir(e){return e&&(e.Ctor.options.name||e.tag)}function xr(e,t){return Array.isArray(e)?e.indexOf(t)>-1:"string"===typeof e?e.split(",").indexOf(t)>-1:!!u(e)&&e.test(t)}function Mr(e,t){var n=e.cache,r=e.keys,i=e._vnode;for(var a in n){var o=n[a];if(o){var s=Ir(o.componentOptions);s&&!t(s)&&Dr(n,a,r,i)}}}function Dr(e,t,n,r){var i=e[t];!i||r&&i.tag===r.tag||i.componentInstance.$destroy(),e[t]=null,b(n,t)}vr(Tr),gr(Tr),wn(Tr),Dn(Tr),bn(Tr);var Lr=[String,RegExp,Array],Pr={name:"keep-alive",abstract:!0,props:{include:Lr,exclude:Lr,max:[String,Number]},created:function(){this.cache=Object.create(null),this.keys=[]},destroyed:function(){for(var e in this.cache)Dr(this.cache,e,this.keys)},mounted:function(){var e=this;this.$watch("include",(function(t){Mr(e,(function(e){return xr(t,e)}))})),this.$watch("exclude",(function(t){Mr(e,(function(e){return!xr(t,e)}))}))},render:function(){var e=this.$slots.default,t=Tn(e),n=t&&t.componentOptions;if(n){var r=Ir(n),i=this,a=i.include,o=i.exclude;if(a&&(!r||!xr(a,r))||o&&r&&xr(o,r))return t;var s=this,l=s.cache,c=s.keys,d=null==t.key?n.Ctor.cid+(n.tag?"::"+n.tag:""):t.key;l[d]?(t.componentInstance=l[d].componentInstance,b(c,d),c.push(d)):(l[d]=t,c.push(d),this.max&&c.length>parseInt(this.max)&&Dr(l,c[0],c,this._vnode)),t.data.keepAlive=!0}return t||e&&e[0]}},kr={KeepAlive:Pr};function Fr(e){var t={get:function(){return j}};Object.defineProperty(e,"config",t),e.util={warn:pe,extend:x,mergeOptions:We,defineReactive:Le},e.set=Pe,e.delete=ke,e.nextTick=ft,e.observable=function(e){return De(e),e},e.options=Object.create(null),G.forEach((function(t){e.options[t+"s"]=Object.create(null)})),e.options._base=e,x(e.options.components,kr),Cr(e),Nr(e),Or(e),wr(e)}Fr(Tr),Object.defineProperty(Tr.prototype,"$isServer",{get:le}),Object.defineProperty(Tr.prototype,"$ssrContext",{get:function(){return this.$vnode&&this.$vnode.ssrContext}}),Object.defineProperty(Tr,"FunctionalRenderContext",{value:Xt}),Tr.version="2.6.12";var Ur=h("style,class"),Br=h("input,textarea,option,select,progress"),Gr=function(e,t,n){return"value"===n&&Br(e)&&"button"!==t||"selected"===n&&"option"===e||"checked"===n&&"input"===e||"muted"===n&&"video"===e},Yr=h("contenteditable,draggable,spellcheck"),jr=h("events,caret,typing,plaintext-only"),qr=function(e,t){return Wr(t)||"false"===t?"false":"contenteditable"===e&&jr(t)?t:"true"},Hr=h("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,translate,truespeed,typemustmatch,visible"),Vr="http://www.w3.org/1999/xlink",$r=function(e){return":"===e.charAt(5)&&"xlink"===e.slice(0,5)},zr=function(e){return $r(e)?e.slice(6,e.length):""},Wr=function(e){return null==e||!1===e};function Qr(e){var t=e.data,n=e,r=e;while(i(r.componentInstance))r=r.componentInstance._vnode,r&&r.data&&(t=Kr(r.data,t));while(i(n=n.parent))n&&n.data&&(t=Kr(t,n.data));return Xr(t.staticClass,t.class)}function Kr(e,t){return{staticClass:Zr(e.staticClass,t.staticClass),class:i(e.class)?[e.class,t.class]:t.class}}function Xr(e,t){return i(e)||i(t)?Zr(e,Jr(t)):""}function Zr(e,t){return e?t?e+" "+t:e:t||""}function Jr(e){return Array.isArray(e)?ei(e):l(e)?ti(e):"string"===typeof e?e:""}function ei(e){for(var t,n="",r=0,a=e.length;r-1?si[e]=t.constructor===window.HTMLUnknownElement||t.constructor===window.HTMLElement:si[e]=/HTMLUnknownElement/.test(t.toString())}var ci=h("text,number,password,search,email,tel,url");function di(e){if("string"===typeof e){var t=document.querySelector(e);return t||document.createElement("div")}return e}function ui(e,t){var n=document.createElement(e);return"select"!==e||t.data&&t.data.attrs&&void 0!==t.data.attrs.multiple&&n.setAttribute("multiple","multiple"),n}function _i(e,t){return document.createElementNS(ni[e],t)}function pi(e){return document.createTextNode(e)}function fi(e){return document.createComment(e)}function mi(e,t,n){e.insertBefore(t,n)}function hi(e,t){e.removeChild(t)}function gi(e,t){e.appendChild(t)}function bi(e){return e.parentNode}function vi(e){return e.nextSibling}function Ei(e){return e.tagName}function Si(e,t){e.textContent=t}function yi(e,t){e.setAttribute(t,"")}var Ti=Object.freeze({createElement:ui,createElementNS:_i,createTextNode:pi,createComment:fi,insertBefore:mi,removeChild:hi,appendChild:gi,parentNode:bi,nextSibling:vi,tagName:Ei,setTextContent:Si,setStyleScope:yi}),Ci={create:function(e,t){Ni(t)},update:function(e,t){e.data.ref!==t.data.ref&&(Ni(e,!0),Ni(t))},destroy:function(e){Ni(e,!0)}};function Ni(e,t){var n=e.data.ref;if(i(n)){var r=e.context,a=e.componentInstance||e.elm,o=r.$refs;t?Array.isArray(o[n])?b(o[n],a):o[n]===a&&(o[n]=void 0):e.data.refInFor?Array.isArray(o[n])?o[n].indexOf(a)<0&&o[n].push(a):o[n]=[a]:o[n]=a}}var Oi=new ve("",{},[]),Ri=["create","activate","update","remove","destroy"];function Ai(e,t){return e.key===t.key&&(e.tag===t.tag&&e.isComment===t.isComment&&i(e.data)===i(t.data)&&wi(e,t)||a(e.isAsyncPlaceholder)&&e.asyncFactory===t.asyncFactory&&r(t.asyncFactory.error))}function wi(e,t){if("input"!==e.tag)return!0;var n,r=i(n=e.data)&&i(n=n.attrs)&&n.type,a=i(n=t.data)&&i(n=n.attrs)&&n.type;return r===a||ci(r)&&ci(a)}function Ii(e,t,n){var r,a,o={};for(r=t;r<=n;++r)a=e[r].key,i(a)&&(o[a]=r);return o}function xi(e){var t,n,o={},l=e.modules,c=e.nodeOps;for(t=0;tm?(u=r(n[b+1])?null:n[b+1].elm,T(e,u,n,f,b,a)):f>b&&N(t,_,m)}function A(e,t,n,r){for(var a=n;a-1?ji(e,t,n):Hr(t)?Wr(n)?e.removeAttribute(t):(n="allowfullscreen"===t&&"EMBED"===e.tagName?"true":t,e.setAttribute(t,n)):Yr(t)?e.setAttribute(t,qr(t,n)):$r(t)?Wr(n)?e.removeAttributeNS(Vr,zr(t)):e.setAttributeNS(Vr,t,n):ji(e,t,n)}function ji(e,t,n){if(Wr(n))e.removeAttribute(t);else{if(ee&&!te&&"TEXTAREA"===e.tagName&&"placeholder"===t&&""!==n&&!e.__ieph){var r=function(t){t.stopImmediatePropagation(),e.removeEventListener("input",r)};e.addEventListener("input",r),e.__ieph=!0}e.setAttribute(t,n)}}var qi={create:Gi,update:Gi};function Hi(e,t){var n=t.elm,a=t.data,o=e.data;if(!(r(a.staticClass)&&r(a.class)&&(r(o)||r(o.staticClass)&&r(o.class)))){var s=Qr(t),l=n._transitionClasses;i(l)&&(s=Zr(s,Jr(l))),s!==n._prevClass&&(n.setAttribute("class",s),n._prevClass=s)}}var Vi,$i={create:Hi,update:Hi},zi="__r",Wi="__c";function Qi(e){if(i(e[zi])){var t=ee?"change":"input";e[t]=[].concat(e[zi],e[t]||[]),delete e[zi]}i(e[Wi])&&(e.change=[].concat(e[Wi],e.change||[]),delete e[Wi])}function Ki(e,t,n){var r=Vi;return function i(){var a=t.apply(null,arguments);null!==a&&Ji(e,i,n,r)}}var Xi=ot&&!(ie&&Number(ie[1])<=53);function Zi(e,t,n,r){if(Xi){var i=zn,a=t;t=a._wrapper=function(e){if(e.target===e.currentTarget||e.timeStamp>=i||e.timeStamp<=0||e.target.ownerDocument!==document)return a.apply(this,arguments)}}Vi.addEventListener(e,t,oe?{capture:n,passive:r}:n)}function Ji(e,t,n,r){(r||Vi).removeEventListener(e,t._wrapper||t,n)}function ea(e,t){if(!r(e.data.on)||!r(t.data.on)){var n=t.data.on||{},i=e.data.on||{};Vi=t.elm,Qi(n),Et(n,i,Zi,Ji,Ki,t.context),Vi=void 0}}var ta,na={create:ea,update:ea};function ra(e,t){if(!r(e.data.domProps)||!r(t.data.domProps)){var n,a,o=t.elm,s=e.data.domProps||{},l=t.data.domProps||{};for(n in i(l.__ob__)&&(l=t.data.domProps=x({},l)),s)n in l||(o[n]="");for(n in l){if(a=l[n],"textContent"===n||"innerHTML"===n){if(t.children&&(t.children.length=0),a===s[n])continue;1===o.childNodes.length&&o.removeChild(o.childNodes[0])}if("value"===n&&"PROGRESS"!==o.tagName){o._value=a;var c=r(a)?"":String(a);ia(o,c)&&(o.value=c)}else if("innerHTML"===n&&ii(o.tagName)&&r(o.innerHTML)){ta=ta||document.createElement("div"),ta.innerHTML=""+a+"";var d=ta.firstChild;while(o.firstChild)o.removeChild(o.firstChild);while(d.firstChild)o.appendChild(d.firstChild)}else if(a!==s[n])try{o[n]=a}catch(To){}}}}function ia(e,t){return!e.composing&&("OPTION"===e.tagName||aa(e,t)||oa(e,t))}function aa(e,t){var n=!0;try{n=document.activeElement!==e}catch(To){}return n&&e.value!==t}function oa(e,t){var n=e.value,r=e._vModifiers;if(i(r)){if(r.number)return m(n)!==m(t);if(r.trim)return n.trim()!==t.trim()}return n!==t}var sa={create:ra,update:ra},la=S((function(e){var t={},n=/;(?![^(]*\))/g,r=/:(.+)/;return e.split(n).forEach((function(e){if(e){var n=e.split(r);n.length>1&&(t[n[0].trim()]=n[1].trim())}})),t}));function ca(e){var t=da(e.style);return e.staticStyle?x(e.staticStyle,t):t}function da(e){return Array.isArray(e)?M(e):"string"===typeof e?la(e):e}function ua(e,t){var n,r={};if(t){var i=e;while(i.componentInstance)i=i.componentInstance._vnode,i&&i.data&&(n=ca(i.data))&&x(r,n)}(n=ca(e.data))&&x(r,n);var a=e;while(a=a.parent)a.data&&(n=ca(a.data))&&x(r,n);return r}var _a,pa=/^--/,fa=/\s*!important$/,ma=function(e,t,n){if(pa.test(t))e.style.setProperty(t,n);else if(fa.test(n))e.style.setProperty(O(t),n.replace(fa,""),"important");else{var r=ga(t);if(Array.isArray(n))for(var i=0,a=n.length;i-1?t.split(Ea).forEach((function(t){return e.classList.add(t)})):e.classList.add(t);else{var n=" "+(e.getAttribute("class")||"")+" ";n.indexOf(" "+t+" ")<0&&e.setAttribute("class",(n+t).trim())}}function ya(e,t){if(t&&(t=t.trim()))if(e.classList)t.indexOf(" ")>-1?t.split(Ea).forEach((function(t){return e.classList.remove(t)})):e.classList.remove(t),e.classList.length||e.removeAttribute("class");else{var n=" "+(e.getAttribute("class")||"")+" ",r=" "+t+" ";while(n.indexOf(r)>=0)n=n.replace(r," ");n=n.trim(),n?e.setAttribute("class",n):e.removeAttribute("class")}}function Ta(e){if(e){if("object"===typeof e){var t={};return!1!==e.css&&x(t,Ca(e.name||"v")),x(t,e),t}return"string"===typeof e?Ca(e):void 0}}var Ca=S((function(e){return{enterClass:e+"-enter",enterToClass:e+"-enter-to",enterActiveClass:e+"-enter-active",leaveClass:e+"-leave",leaveToClass:e+"-leave-to",leaveActiveClass:e+"-leave-active"}})),Na=K&&!te,Oa="transition",Ra="animation",Aa="transition",wa="transitionend",Ia="animation",xa="animationend";Na&&(void 0===window.ontransitionend&&void 0!==window.onwebkittransitionend&&(Aa="WebkitTransition",wa="webkitTransitionEnd"),void 0===window.onanimationend&&void 0!==window.onwebkitanimationend&&(Ia="WebkitAnimation",xa="webkitAnimationEnd"));var Ma=K?window.requestAnimationFrame?window.requestAnimationFrame.bind(window):setTimeout:function(e){return e()};function Da(e){Ma((function(){Ma(e)}))}function La(e,t){var n=e._transitionClasses||(e._transitionClasses=[]);n.indexOf(t)<0&&(n.push(t),Sa(e,t))}function Pa(e,t){e._transitionClasses&&b(e._transitionClasses,t),ya(e,t)}function ka(e,t,n){var r=Ua(e,t),i=r.type,a=r.timeout,o=r.propCount;if(!i)return n();var s=i===Oa?wa:xa,l=0,c=function(){e.removeEventListener(s,d),n()},d=function(t){t.target===e&&++l>=o&&c()};setTimeout((function(){l0&&(n=Oa,d=o,u=a.length):t===Ra?c>0&&(n=Ra,d=c,u=l.length):(d=Math.max(o,c),n=d>0?o>c?Oa:Ra:null,u=n?n===Oa?a.length:l.length:0);var _=n===Oa&&Fa.test(r[Aa+"Property"]);return{type:n,timeout:d,propCount:u,hasTransform:_}}function Ba(e,t){while(e.length1}function Va(e,t){!0!==t.data.show&&Ya(t)}var $a=K?{create:Va,activate:Va,remove:function(e,t){!0!==e.data.show?ja(e,t):t()}}:{},za=[qi,$i,na,sa,va,$a],Wa=za.concat(Bi),Qa=xi({nodeOps:Ti,modules:Wa});te&&document.addEventListener("selectionchange",(function(){var e=document.activeElement;e&&e.vmodel&&ro(e,"input")}));var Ka={inserted:function(e,t,n,r){"select"===n.tag?(r.elm&&!r.elm._vOptions?St(n,"postpatch",(function(){Ka.componentUpdated(e,t,n)})):Xa(e,t,n.context),e._vOptions=[].map.call(e.options,eo)):("textarea"===n.tag||ci(e.type))&&(e._vModifiers=t.modifiers,t.modifiers.lazy||(e.addEventListener("compositionstart",to),e.addEventListener("compositionend",no),e.addEventListener("change",no),te&&(e.vmodel=!0)))},componentUpdated:function(e,t,n){if("select"===n.tag){Xa(e,t,n.context);var r=e._vOptions,i=e._vOptions=[].map.call(e.options,eo);if(i.some((function(e,t){return!k(e,r[t])}))){var a=e.multiple?t.value.some((function(e){return Ja(e,i)})):t.value!==t.oldValue&&Ja(t.value,i);a&&ro(e,"change")}}}};function Xa(e,t,n){Za(e,t,n),(ee||ne)&&setTimeout((function(){Za(e,t,n)}),0)}function Za(e,t,n){var r=t.value,i=e.multiple;if(!i||Array.isArray(r)){for(var a,o,s=0,l=e.options.length;s-1,o.selected!==a&&(o.selected=a);else if(k(eo(o),r))return void(e.selectedIndex!==s&&(e.selectedIndex=s));i||(e.selectedIndex=-1)}}function Ja(e,t){return t.every((function(t){return!k(t,e)}))}function eo(e){return"_value"in e?e._value:e.value}function to(e){e.target.composing=!0}function no(e){e.target.composing&&(e.target.composing=!1,ro(e.target,"input"))}function ro(e,t){var n=document.createEvent("HTMLEvents");n.initEvent(t,!0,!0),e.dispatchEvent(n)}function io(e){return!e.componentInstance||e.data&&e.data.transition?e:io(e.componentInstance._vnode)}var ao={bind:function(e,t,n){var r=t.value;n=io(n);var i=n.data&&n.data.transition,a=e.__vOriginalDisplay="none"===e.style.display?"":e.style.display;r&&i?(n.data.show=!0,Ya(n,(function(){e.style.display=a}))):e.style.display=r?a:"none"},update:function(e,t,n){var r=t.value,i=t.oldValue;if(!r!==!i){n=io(n);var a=n.data&&n.data.transition;a?(n.data.show=!0,r?Ya(n,(function(){e.style.display=e.__vOriginalDisplay})):ja(n,(function(){e.style.display="none"}))):e.style.display=r?e.__vOriginalDisplay:"none"}},unbind:function(e,t,n,r,i){i||(e.style.display=e.__vOriginalDisplay)}},oo={model:Ka,show:ao},so={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 lo(e){var t=e&&e.componentOptions;return t&&t.Ctor.options.abstract?lo(Tn(t.children)):e}function co(e){var t={},n=e.$options;for(var r in n.propsData)t[r]=e[r];var i=n._parentListeners;for(var a in i)t[T(a)]=i[a];return t}function uo(e,t){if(/\d-keep-alive$/.test(t.tag))return e("keep-alive",{props:t.componentOptions.propsData})}function _o(e){while(e=e.parent)if(e.data.transition)return!0}function po(e,t){return t.key===e.key&&t.tag===e.tag}var fo=function(e){return e.tag||yn(e)},mo=function(e){return"show"===e.name},ho={name:"transition",props:so,abstract:!0,render:function(e){var t=this,n=this.$slots.default;if(n&&(n=n.filter(fo),n.length)){0;var r=this.mode;0;var i=n[0];if(_o(this.$vnode))return i;var a=lo(i);if(!a)return i;if(this._leaving)return uo(e,i);var o="__transition-"+this._uid+"-";a.key=null==a.key?a.isComment?o+"comment":o+a.tag:s(a.key)?0===String(a.key).indexOf(o)?a.key:o+a.key:a.key;var l=(a.data||(a.data={})).transition=co(this),c=this._vnode,d=lo(c);if(a.data.directives&&a.data.directives.some(mo)&&(a.data.show=!0),d&&d.data&&!po(a,d)&&!yn(d)&&(!d.componentInstance||!d.componentInstance._vnode.isComment)){var u=d.data.transition=x({},l);if("out-in"===r)return this._leaving=!0,St(u,"afterLeave",(function(){t._leaving=!1,t.$forceUpdate()})),uo(e,i);if("in-out"===r){if(yn(a))return c;var _,p=function(){_()};St(l,"afterEnter",p),St(l,"enterCancelled",p),St(u,"delayLeave",(function(e){_=e}))}}return i}}},go=x({tag:String,moveClass:String},so);delete go.mode;var bo={props:go,beforeMount:function(){var e=this,t=this._update;this._update=function(n,r){var i=xn(e);e.__patch__(e._vnode,e.kept,!1,!0),e._vnode=e.kept,i(),t.call(e,n,r)}},render:function(e){for(var t=this.tag||this.$vnode.data.tag||"span",n=Object.create(null),r=this.prevChildren=this.children,i=this.$slots.default||[],a=this.children=[],o=co(this),s=0;s"}]}}},"2cf4":function(e,t,n){var r,i,a,o=n("da84"),s=n("d039"),l=n("c6b6"),c=n("0366"),d=n("1be4"),u=n("cc12"),_=n("1cdc"),p=o.location,f=o.setImmediate,m=o.clearImmediate,h=o.process,g=o.MessageChannel,b=o.Dispatch,v=0,E={},S="onreadystatechange",y=function(e){if(E.hasOwnProperty(e)){var t=E[e];delete E[e],t()}},T=function(e){return function(){y(e)}},C=function(e){y(e.data)},N=function(e){o.postMessage(e+"",p.protocol+"//"+p.host)};f&&m||(f=function(e){var t=[],n=1;while(arguments.length>n)t.push(arguments[n++]);return E[++v]=function(){("function"==typeof e?e:Function(e)).apply(void 0,t)},r(v),v},m=function(e){delete E[e]},"process"==l(h)?r=function(e){h.nextTick(T(e))}:b&&b.now?r=function(e){b.now(T(e))}:g&&!_?(i=new g,a=i.port2,i.port1.onmessage=C,r=c(a.postMessage,a,1)):!o.addEventListener||"function"!=typeof postMessage||o.importScripts||s(N)||"file:"===p.protocol?r=S in u("script")?function(e){d.appendChild(u("script"))[S]=function(){d.removeChild(this),y(e)}}:function(e){setTimeout(T(e),0)}:(r=N,o.addEventListener("message",C,!1))),e.exports={set:f,clear:m}},"2d00":function(e,t,n){var r,i,a=n("da84"),o=n("342f"),s=a.process,l=s&&s.versions,c=l&&l.v8;c?(r=c.split("."),i=r[0]+r[1]):o&&(r=o.match(/Edge\/(\d+)/),(!r||r[1]>=74)&&(r=o.match(/Chrome\/(\d+)/),r&&(i=r[1]))),e.exports=i&&+i},"2d83":function(e,t,n){"use strict";var r=n("387f");e.exports=function(e,t,n,i,a){var o=new Error(e);return r(o,t,n,i,a)}},"2e11":function(e,t){e.exports=function(e){var t={keyword:"in if for while finally new do return else break catch instanceof throw try this switch continue typeof delete debugger case default function var with then unless until loop of by when and or is isnt not it that otherwise from to til fallthrough super case default function var void const let enum export import native list map __hasProp __extends __slice __bind __indexOf",literal:"true false null undefined yes no on off it that void",built_in:"npm require console print module global window document"},n="[A-Za-z$_](?:-[0-9A-Za-z$_]|[0-9A-Za-z$_])*",r=e.inherit(e.TITLE_MODE,{begin:n}),i={className:"subst",begin:/#\{/,end:/}/,keywords:t},a={className:"subst",begin:/#[A-Za-z$_]/,end:/(?:\-[0-9A-Za-z$_]|[0-9A-Za-z$_])*/,keywords:t},o=[e.BINARY_NUMBER_MODE,{className:"number",begin:"(\\b0[xX][a-fA-F0-9_]+)|(\\b\\d(\\d|_\\d)*(\\.(\\d(\\d|_\\d)*)?)?(_*[eE]([-+]\\d(_\\d|\\d)*)?)?[_a-z]*)",relevance:0,starts:{end:"(\\s*/)?",relevance:0}},{className:"string",variants:[{begin:/'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE]},{begin:/'/,end:/'/,contains:[e.BACKSLASH_ESCAPE]},{begin:/"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,i,a]},{begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,i,a]},{begin:/\\/,end:/(\s|$)/,excludeEnd:!0}]},{className:"regexp",variants:[{begin:"//",end:"//[gim]*",contains:[i,e.HASH_COMMENT_MODE]},{begin:/\/(?![ *])(\\\/|.)*?\/[gim]*(?=\W)/}]},{begin:"@"+n},{begin:"``",end:"``",excludeBegin:!0,excludeEnd:!0,subLanguage:"javascript"}];i.contains=o;var s={className:"params",begin:"\\(",returnBegin:!0,contains:[{begin:/\(/,end:/\)/,keywords:t,contains:["self"].concat(o)}]},l={begin:"(#=>|=>|\\|>>|-?->|\\!->)"};return{aliases:["ls"],keywords:t,illegal:/\/\*/,contains:o.concat([e.COMMENT("\\/\\*","\\*\\/"),e.HASH_COMMENT_MODE,l,{className:"function",contains:[r,s],returnBegin:!0,variants:[{begin:"("+n+"\\s*(?:=|:=)\\s*)?(\\(.*\\))?\\s*\\B\\->\\*?",end:"\\->\\*?"},{begin:"("+n+"\\s*(?:=|:=)\\s*)?!?(\\(.*\\))?\\s*\\B[-~]{1,2}>\\*?",end:"[-~]{1,2}>\\*?"},{begin:"("+n+"\\s*(?:=|:=)\\s*)?(\\(.*\\))?\\s*\\B!?[-~]{1,2}>\\*?",end:"!?[-~]{1,2}>\\*?"}]},{className:"class",beginKeywords:"class",end:"$",illegal:/[:="\[\]]/,contains:[{beginKeywords:"extends",endsWithParent:!0,illegal:/[:="\[\]]/,contains:[r]},r]},{begin:n+":",end:":",returnBegin:!0,returnEnd:!0,relevance:0}])}}},"2e5d":function(e,t){e.exports=function(e){var t="\\[",n="\\]";return{aliases:["i7"],case_insensitive:!0,keywords:{keyword:"thing room person man woman animal container supporter backdrop door scenery open closed locked inside gender is are say understand kind of rule"},contains:[{className:"string",begin:'"',end:'"',relevance:0,contains:[{className:"subst",begin:t,end:n}]},{className:"section",begin:/^(Volume|Book|Part|Chapter|Section|Table)\b/,end:"$"},{begin:/^(Check|Carry out|Report|Instead of|To|Rule|When|Before|After)\b/,end:":",contains:[{begin:"\\(This",end:"\\)"}]},{className:"comment",begin:t,end:n,contains:["self"]}]}}},"2e67":function(e,t,n){"use strict";e.exports=function(e){return!(!e||!e.__CANCEL__)}},"2e7b":function(e,t){e.exports=function(e){var t="true false yes no null",n={className:"attr",variants:[{begin:"\\w[\\w :\\/.-]*:(?=[ \t]|$)"},{begin:'"\\w[\\w :\\/.-]*":(?=[ \t]|$)'},{begin:"'\\w[\\w :\\/.-]*':(?=[ \t]|$)"}]},r={className:"template-variable",variants:[{begin:"{{",end:"}}"},{begin:"%{",end:"}"}]},i={className:"string",relevance:0,variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/\S+/}],contains:[e.BACKSLASH_ESCAPE,r]};return{case_insensitive:!0,aliases:["yml","YAML","yaml"],contains:[n,{className:"meta",begin:"^---s*$",relevance:10},{className:"string",begin:"[\\|>]([0-9]?[+-])?[ ]*\\n( *)[\\S ]+\\n(\\2[\\S ]+\\n?)*"},{begin:"<%[%=-]?",end:"[%-]?%>",subLanguage:"ruby",excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:"!"+e.UNDERSCORE_IDENT_RE},{className:"type",begin:"!!"+e.UNDERSCORE_IDENT_RE},{className:"meta",begin:"&"+e.UNDERSCORE_IDENT_RE+"$"},{className:"meta",begin:"\\*"+e.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"\\-(?=[ ]|$)",relevance:0},e.HASH_COMMENT_MODE,{beginKeywords:t,keywords:{literal:t}},{className:"number",begin:e.C_NUMBER_RE+"\\b"},i]}}},"2e8e":function(e,t){e.exports=function(e){return{keywords:{keyword:"package import option optional required repeated group oneof",built_in:"double float int32 int64 uint32 uint64 sint32 sint64 fixed32 fixed64 sfixed32 sfixed64 bool string bytes",literal:"true false"},contains:[e.QUOTE_STRING_MODE,e.NUMBER_MODE,e.C_LINE_COMMENT_MODE,{className:"class",beginKeywords:"message enum service",end:/\{/,illegal:/\n/,contains:[e.inherit(e.TITLE_MODE,{starts:{endsWithParent:!0,excludeEnd:!0}})]},{className:"function",beginKeywords:"rpc",end:/;/,excludeEnd:!0,keywords:"rpc returns"},{begin:/^\s*[A-Z_]+/,end:/\s*=/,excludeEnd:!0}]}}},"2e9b":function(e,t){e.exports=function(e){return{contains:[{className:"function",begin:"#+[A-Za-z_0-9]*\\(",end:" {",returnBegin:!0,excludeEnd:!0,contains:[{className:"keyword",begin:"#+"},{className:"title",begin:"[A-Za-z_][A-Za-z_0-9]*"},{className:"params",begin:"\\(",end:"\\)",endsParent:!0,contains:[{className:"string",begin:'"',end:'"'},{className:"variable",begin:"[A-Za-z_][A-Za-z_0-9]*"}]}]}]}}},"305e":function(e,t){e.exports=function(e){var t="[A-Za-z_][0-9A-Za-z_]*",n={keyword:"if for while var new function do return void else break",literal:"BackSlash DoubleQuote false ForwardSlash Infinity NaN NewLine null PI SingleQuote Tab TextFormatting true undefined",built_in:"Abs Acos Angle Attachments Area AreaGeodetic Asin Atan Atan2 Average Bearing Boolean Buffer BufferGeodetic Ceil Centroid Clip Console Constrain Contains Cos Count Crosses Cut Date DateAdd DateDiff Day Decode DefaultValue Dictionary Difference Disjoint Distance DistanceGeodetic Distinct DomainCode DomainName Equals Exp Extent Feature FeatureSet FeatureSetByAssociation FeatureSetById FeatureSetByPortalItem FeatureSetByRelationshipName FeatureSetByTitle FeatureSetByUrl Filter First Floor Geometry GroupBy Guid HasKey Hour IIf IndexOf Intersection Intersects IsEmpty IsNan IsSelfIntersecting Length LengthGeodetic Log Max Mean Millisecond Min Minute Month MultiPartToSinglePart Multipoint NextSequenceValue Now Number OrderBy Overlaps Point Polygon Polyline Portal Pow Random Relate Reverse RingIsClockWise Round Second SetGeometry Sin Sort Sqrt Stdev Sum SymmetricDifference Tan Text Timestamp Today ToLocal Top Touches ToUTC TrackCurrentTime TrackGeometryWindow TrackIndex TrackStartTime TrackWindow TypeOf Union UrlEncode Variance Weekday When Within Year "},r={className:"symbol",begin:"\\$[datastore|feature|layer|map|measure|sourcefeature|sourcelayer|targetfeature|targetlayer|value|view]+"},i={className:"number",variants:[{begin:"\\b(0[bB][01]+)"},{begin:"\\b(0[oO][0-7]+)"},{begin:e.C_NUMBER_RE}],relevance:0},a={className:"subst",begin:"\\$\\{",end:"\\}",keywords:n,contains:[]},o={className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,a]};a.contains=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,o,i,e.REGEXP_MODE];var s=a.contains.concat([e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE]);return{aliases:["arcade"],keywords:n,contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,o,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,r,i,{begin:/[{,]\s*/,relevance:0,contains:[{begin:t+"\\s*:",returnBegin:!0,relevance:0,contains:[{className:"attr",begin:t,relevance:0}]}]},{begin:"("+e.RE_STARTERS_RE+"|\\b(return)\\b)\\s*",keywords:"return",contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.REGEXP_MODE,{className:"function",begin:"(\\(.*?\\)|"+t+")\\s*=>",returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:t},{begin:/\(\s*\)/},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:n,contains:s}]}]}],relevance:0},{className:"function",beginKeywords:"function",end:/\{/,excludeEnd:!0,contains:[e.inherit(e.TITLE_MODE,{begin:t}),{className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,contains:s}],illegal:/\[|%/},{begin:/\$[(.]/}],illegal:/#(?!!)/}}},"30b5":function(e,t,n){"use strict";var r=n("c532");function i(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}e.exports=function(e,t,n){if(!t)return e;var a;if(n)a=n(t);else if(r.isURLSearchParams(t))a=t.toString();else{var o=[];r.forEach(t,(function(e,t){null!==e&&"undefined"!==typeof e&&(r.isArray(e)?t+="[]":e=[e],r.forEach(e,(function(e){r.isDate(e)?e=e.toISOString():r.isObject(e)&&(e=JSON.stringify(e)),o.push(i(t)+"="+i(e))})))})),a=o.join("&")}if(a){var s=e.indexOf("#");-1!==s&&(e=e.slice(0,s)),e+=(-1===e.indexOf("?")?"?":"&")+a}return e}},"310f":function(e,t){e.exports=function(e){var t="\\d(_|\\d)*",n="[eE][-+]?"+t,r=t+"(\\."+t+")?("+n+")?",i="\\w+",a=t+"#"+i+"(\\."+i+")?#("+n+")?",o="\\b("+a+"|"+r+")";return{case_insensitive:!0,keywords:{keyword:"abs access after alias all and architecture array assert assume assume_guarantee attribute begin block body buffer bus case component configuration constant context cover disconnect downto default else elsif end entity exit fairness file for force function generate generic group guarded if impure in inertial inout is label library linkage literal loop map mod nand new next nor not null of on open or others out package parameter port postponed procedure process property protected pure range record register reject release rem report restrict restrict_guarantee return rol ror select sequence severity shared signal sla sll sra srl strong subtype then to transport type unaffected units until use variable view vmode vprop vunit wait when while with xnor xor",built_in:"boolean bit character integer time delay_length natural positive string bit_vector file_open_kind file_open_status std_logic std_logic_vector unsigned signed boolean_vector integer_vector std_ulogic std_ulogic_vector unresolved_unsigned u_unsigned unresolved_signed u_signed real_vector time_vector",literal:"false true note warning error failure line text side width"},illegal:"{",contains:[e.C_BLOCK_COMMENT_MODE,e.COMMENT("--","$"),e.QUOTE_STRING_MODE,{className:"number",begin:o,relevance:0},{className:"string",begin:"'(U|X|0|1|Z|W|L|H|-)'",contains:[e.BACKSLASH_ESCAPE]},{className:"symbol",begin:"'[A-Za-z](_?[A-Za-z0-9])*",contains:[e.BACKSLASH_ESCAPE]}]}}},"332f":function(e,t){e.exports=function(e){var t="[Γ€-ΚΈa-zA-Z_$][Γ€-ΚΈa-zA-Z_$0-9]*",n=t+"(<"+t+"(\\s*,\\s*"+t+")*>)?",r="false synchronized int abstract float private char boolean var static null if const for true while long strictfp finally protected import native final void enum else break transient catch instanceof byte super volatile case assert short package default double public try this switch continue throws protected public private module requires exports do",i="\\b(0[bB]([01]+[01_]+[01]+|[01]+)|0[xX]([a-fA-F0-9]+[a-fA-F0-9_]+[a-fA-F0-9]+|[a-fA-F0-9]+)|(([\\d]+[\\d_]+[\\d]+|[\\d]+)(\\.([\\d]+[\\d_]+[\\d]+|[\\d]+))?|\\.([\\d]+[\\d_]+[\\d]+|[\\d]+))([eE][-+]?\\d+)?)[lLfF]?",a={className:"number",begin:i,relevance:0};return{aliases:["jsp"],keywords:r,illegal:/<\/|#/,contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/,relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]}),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{className:"class",beginKeywords:"class interface",end:/[{;=]/,excludeEnd:!0,keywords:"class interface",illegal:/[:"\[\]]/,contains:[{beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE]},{beginKeywords:"new throw return else",relevance:0},{className:"function",begin:"("+n+"\\s+)+"+e.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:r,contains:[{begin:e.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,relevance:0,contains:[e.UNDERSCORE_TITLE_MODE]},{className:"params",begin:/\(/,end:/\)/,keywords:r,relevance:0,contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},a,{className:"meta",begin:"@[A-Za-z]+"}]}}},"342f":function(e,t,n){var r=n("d066");e.exports=r("navigator","userAgent")||""},"351a":function(e,t){e.exports=function(e){return{aliases:["feature"],keywords:"Feature Background Ability Business Need Scenario Scenarios Scenario Outline Scenario Template Examples Given And Then But When",contains:[{className:"symbol",begin:"\\*",relevance:0},{className:"meta",begin:"@[^@\\s]+"},{begin:"\\|",end:"\\|\\w*$",contains:[{className:"string",begin:"[^|]+"}]},{className:"variable",begin:"<",end:">"},e.HASH_COMMENT_MODE,{className:"string",begin:'"""',end:'"""'},e.QUOTE_STRING_MODE]}}},"35a1":function(e,t,n){var r=n("f5df"),i=n("3f8c"),a=n("b622"),o=a("iterator");e.exports=function(e){if(void 0!=e)return e[o]||e["@@iterator"]||i[r(e)]}},3728:function(e,t){e.exports=function(e){var t=e.COMMENT("{","}",{contains:["self"]});return{subLanguage:"xml",relevance:0,contains:[e.COMMENT("^#","$"),e.COMMENT("\\^rem{","}",{relevance:10,contains:[t]}),{className:"meta",begin:"^@(?:BASE|USE|CLASS|OPTIONS)$",relevance:10},{className:"title",begin:"@[\\w\\-]+\\[[\\w^;\\-]*\\](?:\\[[\\w^;\\-]*\\])?(?:.*)$"},{className:"variable",begin:"\\$\\{?[\\w\\-\\.\\:]+\\}?"},{className:"keyword",begin:"\\^[\\w\\-\\.\\:]+"},{className:"number",begin:"\\^#[0-9a-fA-F]+"},e.C_NUMBER_MODE]}}},"37e8":function(e,t,n){var r=n("83ab"),i=n("9bf2"),a=n("825a"),o=n("df75");e.exports=r?Object.defineProperties:function(e,t){a(e);var n,r=o(t),s=r.length,l=0;while(s>l)i.f(e,n=r[l++],t[n]);return e}},"387f":function(e,t,n){"use strict";e.exports=function(e,t,n,r,i){return e.config=t,n&&(e.code=n),e.request=r,e.response=i,e.isAxiosError=!0,e.toJSON=function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:this.config,code:this.code}},e}},3934:function(e,t,n){"use strict";var r=n("c532");e.exports=r.isStandardBrowserEnv()?function(){var e,t=/(msie|trident)/i.test(navigator.userAgent),n=document.createElement("a");function i(e){var r=e;return t&&(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 e=i(window.location.href),function(t){var n=r.isString(t)?i(t):t;return n.protocol===e.protocol&&n.host===e.host}}():function(){return function(){return!0}}()},"399d":function(e,t){e.exports=function(e){var t="if then else elseif for thru do while unless step in and or not",n="true false unknown inf minf ind und %e %i %pi %phi %gamma",r=" abasep abs absint absolute_real_time acos acosh acot acoth acsc acsch activate addcol add_edge add_edges addmatrices addrow add_vertex add_vertices adjacency_matrix adjoin adjoint af agd airy airy_ai airy_bi airy_dai airy_dbi algsys alg_type alias allroots alphacharp alphanumericp amortization %and annuity_fv annuity_pv antid antidiff AntiDifference append appendfile apply apply1 apply2 applyb1 apropos args arit_amortization arithmetic arithsum array arrayapply arrayinfo arraymake arraysetapply ascii asec asech asin asinh askinteger asksign assoc assoc_legendre_p assoc_legendre_q assume assume_external_byte_order asympa at atan atan2 atanh atensimp atom atvalue augcoefmatrix augmented_lagrangian_method av average_degree backtrace bars barsplot barsplot_description base64 base64_decode bashindices batch batchload bc2 bdvac belln benefit_cost bern bernpoly bernstein_approx bernstein_expand bernstein_poly bessel bessel_i bessel_j bessel_k bessel_simplify bessel_y beta beta_incomplete beta_incomplete_generalized beta_incomplete_regularized bezout bfallroots bffac bf_find_root bf_fmin_cobyla bfhzeta bfloat bfloatp bfpsi bfpsi0 bfzeta biconnected_components bimetric binomial bipartition block blockmatrixp bode_gain bode_phase bothcoef box boxplot boxplot_description break bug_report build_info|10 buildq build_sample burn cabs canform canten cardinality carg cartan cartesian_product catch cauchy_matrix cbffac cdf_bernoulli cdf_beta cdf_binomial cdf_cauchy cdf_chi2 cdf_continuous_uniform cdf_discrete_uniform cdf_exp cdf_f cdf_gamma cdf_general_finite_discrete cdf_geometric cdf_gumbel cdf_hypergeometric cdf_laplace cdf_logistic cdf_lognormal cdf_negative_binomial cdf_noncentral_chi2 cdf_noncentral_student_t cdf_normal cdf_pareto cdf_poisson cdf_rank_sum cdf_rayleigh cdf_signed_rank cdf_student_t cdf_weibull cdisplay ceiling central_moment cequal cequalignore cf cfdisrep cfexpand cgeodesic cgreaterp cgreaterpignore changename changevar chaosgame charat charfun charfun2 charlist charp charpoly chdir chebyshev_t chebyshev_u checkdiv check_overlaps chinese cholesky christof chromatic_index chromatic_number cint circulant_graph clear_edge_weight clear_rules clear_vertex_label clebsch_gordan clebsch_graph clessp clesspignore close closefile cmetric coeff coefmatrix cograd col collapse collectterms columnop columnspace columnswap columnvector combination combine comp2pui compare compfile compile compile_file complement_graph complete_bipartite_graph complete_graph complex_number_p components compose_functions concan concat conjugate conmetderiv connected_components connect_vertices cons constant constantp constituent constvalue cont2part content continuous_freq contortion contour_plot contract contract_edge contragrad contrib_ode convert coord copy copy_file copy_graph copylist copymatrix cor cos cosh cot coth cov cov1 covdiff covect covers crc24sum create_graph create_list csc csch csetup cspline ctaylor ct_coordsys ctransform ctranspose cube_graph cuboctahedron_graph cunlisp cv cycle_digraph cycle_graph cylindrical days360 dblint deactivate declare declare_constvalue declare_dimensions declare_fundamental_dimensions declare_fundamental_units declare_qty declare_translated declare_unit_conversion declare_units declare_weights decsym defcon define define_alt_display define_variable defint defmatch defrule defstruct deftaylor degree_sequence del delete deleten delta demo demoivre denom depends derivdegree derivlist describe desolve determinant dfloat dgauss_a dgauss_b dgeev dgemm dgeqrf dgesv dgesvd diag diagmatrix diag_matrix diagmatrixp diameter diff digitcharp dimacs_export dimacs_import dimension dimensionless dimensions dimensions_as_list direct directory discrete_freq disjoin disjointp disolate disp dispcon dispform dispfun dispJordan display disprule dispterms distrib divide divisors divsum dkummer_m dkummer_u dlange dodecahedron_graph dotproduct dotsimp dpart draw draw2d draw3d drawdf draw_file draw_graph dscalar echelon edge_coloring edge_connectivity edges eigens_by_jacobi eigenvalues eigenvectors eighth einstein eivals eivects elapsed_real_time elapsed_run_time ele2comp ele2polynome ele2pui elem elementp elevation_grid elim elim_allbut eliminate eliminate_using ellipse elliptic_e elliptic_ec elliptic_eu elliptic_f elliptic_kc elliptic_pi ematrix empty_graph emptyp endcons entermatrix entertensor entier equal equalp equiv_classes erf erfc erf_generalized erfi errcatch error errormsg errors euler ev eval_string evenp every evolution evolution2d evundiff example exp expand expandwrt expandwrt_factored expint expintegral_chi expintegral_ci expintegral_e expintegral_e1 expintegral_ei expintegral_e_simplify expintegral_li expintegral_shi expintegral_si explicit explose exponentialize express expt exsec extdiff extract_linear_equations extremal_subset ezgcd %f f90 facsum factcomb factor factorfacsum factorial factorout factorsum facts fast_central_elements fast_linsolve fasttimes featurep fernfale fft fib fibtophi fifth filename_merge file_search file_type fillarray findde find_root find_root_abs find_root_error find_root_rel first fix flatten flength float floatnump floor flower_snark flush flush1deriv flushd flushnd flush_output fmin_cobyla forget fortran fourcos fourexpand fourier fourier_elim fourint fourintcos fourintsin foursimp foursin fourth fposition frame_bracket freeof freshline fresnel_c fresnel_s from_adjacency_matrix frucht_graph full_listify fullmap fullmapl fullratsimp fullratsubst fullsetify funcsolve fundamental_dimensions fundamental_units fundef funmake funp fv g0 g1 gamma gamma_greek gamma_incomplete gamma_incomplete_generalized gamma_incomplete_regularized gauss gauss_a gauss_b gaussprob gcd gcdex gcdivide gcfac gcfactor gd generalized_lambert_w genfact gen_laguerre genmatrix gensym geo_amortization geo_annuity_fv geo_annuity_pv geomap geometric geometric_mean geosum get getcurrentdirectory get_edge_weight getenv get_lu_factors get_output_stream_string get_pixel get_plot_option get_tex_environment get_tex_environment_default get_vertex_label gfactor gfactorsum ggf girth global_variances gn gnuplot_close gnuplot_replot gnuplot_reset gnuplot_restart gnuplot_start go Gosper GosperSum gr2d gr3d gradef gramschmidt graph6_decode graph6_encode graph6_export graph6_import graph_center graph_charpoly graph_eigenvalues graph_flow graph_order graph_periphery graph_product graph_size graph_union great_rhombicosidodecahedron_graph great_rhombicuboctahedron_graph grid_graph grind grobner_basis grotzch_graph hamilton_cycle hamilton_path hankel hankel_1 hankel_2 harmonic harmonic_mean hav heawood_graph hermite hessian hgfred hilbertmap hilbert_matrix hipow histogram histogram_description hodge horner hypergeometric i0 i1 %ibes ic1 ic2 ic_convert ichr1 ichr2 icosahedron_graph icosidodecahedron_graph icurvature ident identfor identity idiff idim idummy ieqn %if ifactors iframes ifs igcdex igeodesic_coords ilt image imagpart imetric implicit implicit_derivative implicit_plot indexed_tensor indices induced_subgraph inferencep inference_result infix info_display init_atensor init_ctensor in_neighbors innerproduct inpart inprod inrt integerp integer_partitions integrate intersect intersection intervalp intopois intosum invariant1 invariant2 inverse_fft inverse_jacobi_cd inverse_jacobi_cn inverse_jacobi_cs inverse_jacobi_dc inverse_jacobi_dn inverse_jacobi_ds inverse_jacobi_nc inverse_jacobi_nd inverse_jacobi_ns inverse_jacobi_sc inverse_jacobi_sd inverse_jacobi_sn invert invert_by_adjoint invert_by_lu inv_mod irr is is_biconnected is_bipartite is_connected is_digraph is_edge_in_graph is_graph is_graph_or_digraph ishow is_isomorphic isolate isomorphism is_planar isqrt isreal_p is_sconnected is_tree is_vertex_in_graph items_inference %j j0 j1 jacobi jacobian jacobi_cd jacobi_cn jacobi_cs jacobi_dc jacobi_dn jacobi_ds jacobi_nc jacobi_nd jacobi_ns jacobi_p jacobi_sc jacobi_sd jacobi_sn JF jn join jordan julia julia_set julia_sin %k kdels kdelta kill killcontext kostka kron_delta kronecker_product kummer_m kummer_u kurtosis kurtosis_bernoulli kurtosis_beta kurtosis_binomial kurtosis_chi2 kurtosis_continuous_uniform kurtosis_discrete_uniform kurtosis_exp kurtosis_f kurtosis_gamma kurtosis_general_finite_discrete kurtosis_geometric kurtosis_gumbel kurtosis_hypergeometric kurtosis_laplace kurtosis_logistic kurtosis_lognormal kurtosis_negative_binomial kurtosis_noncentral_chi2 kurtosis_noncentral_student_t kurtosis_normal kurtosis_pareto kurtosis_poisson kurtosis_rayleigh kurtosis_student_t kurtosis_weibull label labels lagrange laguerre lambda lambert_w laplace laplacian_matrix last lbfgs lc2kdt lcharp lc_l lcm lc_u ldefint ldisp ldisplay legendre_p legendre_q leinstein length let letrules letsimp levi_civita lfreeof lgtreillis lhs li liediff limit Lindstedt linear linearinterpol linear_program linear_regression line_graph linsolve listarray list_correlations listify list_matrix_entries list_nc_monomials listoftens listofvars listp lmax lmin load loadfile local locate_matrix_entry log logcontract log_gamma lopow lorentz_gauge lowercasep lpart lratsubst lreduce lriemann lsquares_estimates lsquares_estimates_approximate lsquares_estimates_exact lsquares_mse lsquares_residual_mse lsquares_residuals lsum ltreillis lu_backsub lucas lu_factor %m macroexpand macroexpand1 make_array makebox makefact makegamma make_graph make_level_picture makelist makeOrders make_poly_continent make_poly_country make_polygon make_random_state make_rgb_picture makeset make_string_input_stream make_string_output_stream make_transform mandelbrot mandelbrot_set map mapatom maplist matchdeclare matchfix mat_cond mat_fullunblocker mat_function mathml_display mat_norm matrix matrixmap matrixp matrix_size mattrace mat_trace mat_unblocker max max_clique max_degree max_flow maximize_lp max_independent_set max_matching maybe md5sum mean mean_bernoulli mean_beta mean_binomial mean_chi2 mean_continuous_uniform mean_deviation mean_discrete_uniform mean_exp mean_f mean_gamma mean_general_finite_discrete mean_geometric mean_gumbel mean_hypergeometric mean_laplace mean_logistic mean_lognormal mean_negative_binomial mean_noncentral_chi2 mean_noncentral_student_t mean_normal mean_pareto mean_poisson mean_rayleigh mean_student_t mean_weibull median median_deviation member mesh metricexpandall mgf1_sha1 min min_degree min_edge_cut minfactorial minimalPoly minimize_lp minimum_spanning_tree minor minpack_lsquares minpack_solve min_vertex_cover min_vertex_cut mkdir mnewton mod mode_declare mode_identity ModeMatrix moebius mon2schur mono monomial_dimensions multibernstein_poly multi_display_for_texinfo multi_elem multinomial multinomial_coeff multi_orbit multiplot_mode multi_pui multsym multthru mycielski_graph nary natural_unit nc_degree ncexpt ncharpoly negative_picture neighbors new newcontext newdet new_graph newline newton new_variable next_prime nicedummies niceindices ninth nofix nonarray noncentral_moment nonmetricity nonnegintegerp nonscalarp nonzeroandfreeof notequal nounify nptetrad npv nroots nterms ntermst nthroot nullity nullspace num numbered_boundaries numberp number_to_octets num_distinct_partitions numerval numfactor num_partitions nusum nzeta nzetai nzetar octets_to_number octets_to_oid odd_girth oddp ode2 ode_check odelin oid_to_octets op opena opena_binary openr openr_binary openw openw_binary operatorp opsubst optimize %or orbit orbits ordergreat ordergreatp orderless orderlessp orthogonal_complement orthopoly_recur orthopoly_weight outermap out_neighbors outofpois pade parabolic_cylinder_d parametric parametric_surface parg parGosper parse_string parse_timedate part part2cont partfrac partition partition_set partpol path_digraph path_graph pathname_directory pathname_name pathname_type pdf_bernoulli pdf_beta pdf_binomial pdf_cauchy pdf_chi2 pdf_continuous_uniform pdf_discrete_uniform pdf_exp pdf_f pdf_gamma pdf_general_finite_discrete pdf_geometric pdf_gumbel pdf_hypergeometric pdf_laplace pdf_logistic pdf_lognormal pdf_negative_binomial pdf_noncentral_chi2 pdf_noncentral_student_t pdf_normal pdf_pareto pdf_poisson pdf_rank_sum pdf_rayleigh pdf_signed_rank pdf_student_t pdf_weibull pearson_skewness permanent permut permutation permutations petersen_graph petrov pickapart picture_equalp picturep piechart piechart_description planar_embedding playback plog plot2d plot3d plotdf ploteq plsquares pochhammer points poisdiff poisexpt poisint poismap poisplus poissimp poissubst poistimes poistrim polar polarform polartorect polar_to_xy poly_add poly_buchberger poly_buchberger_criterion poly_colon_ideal poly_content polydecomp poly_depends_p poly_elimination_ideal poly_exact_divide poly_expand poly_expt poly_gcd polygon poly_grobner poly_grobner_equal poly_grobner_member poly_grobner_subsetp poly_ideal_intersection poly_ideal_polysaturation poly_ideal_polysaturation1 poly_ideal_saturation poly_ideal_saturation1 poly_lcm poly_minimization polymod poly_multiply polynome2ele polynomialp poly_normal_form poly_normalize poly_normalize_list poly_polysaturation_extension poly_primitive_part poly_pseudo_divide poly_reduced_grobner poly_reduction poly_saturation_extension poly_s_polynomial poly_subtract polytocompanion pop postfix potential power_mod powerseries powerset prefix prev_prime primep primes principal_components print printf printfile print_graph printpois printprops prodrac product properties propvars psi psubst ptriangularize pui pui2comp pui2ele pui2polynome pui_direct puireduc push put pv qput qrange qty quad_control quad_qag quad_qagi quad_qagp quad_qags quad_qawc quad_qawf quad_qawo quad_qaws quadrilateral quantile quantile_bernoulli quantile_beta quantile_binomial quantile_cauchy quantile_chi2 quantile_continuous_uniform quantile_discrete_uniform quantile_exp quantile_f quantile_gamma quantile_general_finite_discrete quantile_geometric quantile_gumbel quantile_hypergeometric quantile_laplace quantile_logistic quantile_lognormal quantile_negative_binomial quantile_noncentral_chi2 quantile_noncentral_student_t quantile_normal quantile_pareto quantile_poisson quantile_rayleigh quantile_student_t quantile_weibull quartile_skewness quit qunit quotient racah_v racah_w radcan radius random random_bernoulli random_beta random_binomial random_bipartite_graph random_cauchy random_chi2 random_continuous_uniform random_digraph random_discrete_uniform random_exp random_f random_gamma random_general_finite_discrete random_geometric random_graph random_graph1 random_gumbel random_hypergeometric random_laplace random_logistic random_lognormal random_negative_binomial random_network random_noncentral_chi2 random_noncentral_student_t random_normal random_pareto random_permutation random_poisson random_rayleigh random_regular_graph random_student_t random_tournament random_tree random_weibull range rank rat ratcoef ratdenom ratdiff ratdisrep ratexpand ratinterpol rational rationalize ratnumer ratnump ratp ratsimp ratsubst ratvars ratweight read read_array read_binary_array read_binary_list read_binary_matrix readbyte readchar read_hashed_array readline read_list read_matrix read_nested_list readonly read_xpm real_imagpart_to_conjugate realpart realroots rearray rectangle rectform rectform_log_if_constant recttopolar rediff reduce_consts reduce_order region region_boundaries region_boundaries_plus rem remainder remarray rembox remcomps remcon remcoord remfun remfunction remlet remove remove_constvalue remove_dimensions remove_edge remove_fundamental_dimensions remove_fundamental_units remove_plot_option remove_vertex rempart remrule remsym remvalue rename rename_file reset reset_displays residue resolvante resolvante_alternee1 resolvante_bipartite resolvante_diedrale resolvante_klein resolvante_klein3 resolvante_produit_sym resolvante_unitaire resolvante_vierer rest resultant return reveal reverse revert revert2 rgb2level rhs ricci riemann rinvariant risch rk rmdir rncombine romberg room rootscontract round row rowop rowswap rreduce run_testsuite %s save saving scalarp scaled_bessel_i scaled_bessel_i0 scaled_bessel_i1 scalefactors scanmap scatterplot scatterplot_description scene schur2comp sconcat scopy scsimp scurvature sdowncase sec sech second sequal sequalignore set_alt_display setdifference set_draw_defaults set_edge_weight setelmx setequalp setify setp set_partitions set_plot_option set_prompt set_random_state set_tex_environment set_tex_environment_default setunits setup_autoload set_up_dot_simplifications set_vertex_label seventh sexplode sf sha1sum sha256sum shortest_path shortest_weighted_path show showcomps showratvars sierpinskiale sierpinskimap sign signum similaritytransform simp_inequality simplify_sum simplode simpmetderiv simtran sin sinh sinsert sinvertcase sixth skewness skewness_bernoulli skewness_beta skewness_binomial skewness_chi2 skewness_continuous_uniform skewness_discrete_uniform skewness_exp skewness_f skewness_gamma skewness_general_finite_discrete skewness_geometric skewness_gumbel skewness_hypergeometric skewness_laplace skewness_logistic skewness_lognormal skewness_negative_binomial skewness_noncentral_chi2 skewness_noncentral_student_t skewness_normal skewness_pareto skewness_poisson skewness_rayleigh skewness_student_t skewness_weibull slength smake small_rhombicosidodecahedron_graph small_rhombicuboctahedron_graph smax smin smismatch snowmap snub_cube_graph snub_dodecahedron_graph solve solve_rec solve_rec_rat some somrac sort sparse6_decode sparse6_encode sparse6_export sparse6_import specint spherical spherical_bessel_j spherical_bessel_y spherical_hankel1 spherical_hankel2 spherical_harmonic spherical_to_xyz splice split sposition sprint sqfr sqrt sqrtdenest sremove sremovefirst sreverse ssearch ssort sstatus ssubst ssubstfirst staircase standardize standardize_inverse_trig starplot starplot_description status std std1 std_bernoulli std_beta std_binomial std_chi2 std_continuous_uniform std_discrete_uniform std_exp std_f std_gamma std_general_finite_discrete std_geometric std_gumbel std_hypergeometric std_laplace std_logistic std_lognormal std_negative_binomial std_noncentral_chi2 std_noncentral_student_t std_normal std_pareto std_poisson std_rayleigh std_student_t std_weibull stemplot stirling stirling1 stirling2 strim striml strimr string stringout stringp strong_components struve_h struve_l sublis sublist sublist_indices submatrix subsample subset subsetp subst substinpart subst_parallel substpart substring subvar subvarp sum sumcontract summand_to_rec supcase supcontext symbolp symmdifference symmetricp system take_channel take_inference tan tanh taylor taylorinfo taylorp taylor_simplifier taytorat tcl_output tcontract tellrat tellsimp tellsimpafter tentex tenth test_mean test_means_difference test_normality test_proportion test_proportions_difference test_rank_sum test_sign test_signed_rank test_variance test_variance_ratio tex tex1 tex_display texput %th third throw time timedate timer timer_info tldefint tlimit todd_coxeter toeplitz tokens to_lisp topological_sort to_poly to_poly_solve totaldisrep totalfourier totient tpartpol trace tracematrix trace_options transform_sample translate translate_file transpose treefale tree_reduce treillis treinat triangle triangularize trigexpand trigrat trigreduce trigsimp trunc truncate truncated_cube_graph truncated_dodecahedron_graph truncated_icosahedron_graph truncated_tetrahedron_graph tr_warnings_get tube tutte_graph ueivects uforget ultraspherical underlying_graph undiff union unique uniteigenvectors unitp units unit_step unitvector unorder unsum untellrat untimer untrace uppercasep uricci uriemann uvect vandermonde_matrix var var1 var_bernoulli var_beta var_binomial var_chi2 var_continuous_uniform var_discrete_uniform var_exp var_f var_gamma var_general_finite_discrete var_geometric var_gumbel var_hypergeometric var_laplace var_logistic var_lognormal var_negative_binomial var_noncentral_chi2 var_noncentral_student_t var_normal var_pareto var_poisson var_rayleigh var_student_t var_weibull vector vectorpotential vectorsimp verbify vers vertex_coloring vertex_connectivity vertex_degree vertex_distance vertex_eccentricity vertex_in_degree vertex_out_degree vertices vertices_to_cycle vertices_to_path %w weyl wheel_graph wiener_index wigner_3j wigner_6j wigner_9j with_stdout write_binary_data writebyte write_data writefile wronskian xreduce xthru %y Zeilberger zeroequiv zerofor zeromatrix zeromatrixp zeta zgeev zheev zlange zn_add_table zn_carmichael_lambda zn_characteristic_factors zn_determinant zn_factor_generators zn_invert_by_lu zn_log zn_mult_table absboxchar activecontexts adapt_depth additive adim aform algebraic algepsilon algexact aliases allbut all_dotsimp_denoms allocation allsym alphabetic animation antisymmetric arrays askexp assume_pos assume_pos_pred assumescalar asymbol atomgrad atrig1 axes axis_3d axis_bottom axis_left axis_right axis_top azimuth background background_color backsubst berlefact bernstein_explicit besselexpand beta_args_sum_to_integer beta_expand bftorat bftrunc bindtest border boundaries_array box boxchar breakup %c capping cauchysum cbrange cbtics center cflength cframe_flag cnonmet_flag color color_bar color_bar_tics colorbox columns commutative complex cone context contexts contour contour_levels cosnpiflag ctaypov ctaypt ctayswitch ctayvar ct_coords ctorsion_flag ctrgsimp cube current_let_rule_package cylinder data_file_name debugmode decreasing default_let_rule_package delay dependencies derivabbrev derivsubst detout diagmetric diff dim dimensions dispflag display2d|10 display_format_internal distribute_over doallmxops domain domxexpt domxmxops domxnctimes dontfactor doscmxops doscmxplus dot0nscsimp dot0simp dot1simp dotassoc dotconstrules dotdistrib dotexptsimp dotident dotscrules draw_graph_program draw_realpart edge_color edge_coloring edge_partition edge_type edge_width %edispflag elevation %emode endphi endtheta engineering_format_floats enhanced3d %enumer epsilon_lp erfflag erf_representation errormsg error_size error_syms error_type %e_to_numlog eval even evenfun evflag evfun ev_point expandwrt_denom expintexpand expintrep expon expop exptdispflag exptisolate exptsubst facexpand facsum_combine factlim factorflag factorial_expand factors_only fb feature features file_name file_output_append file_search_demo file_search_lisp file_search_maxima|10 file_search_tests file_search_usage file_type_lisp file_type_maxima|10 fill_color fill_density filled_func fixed_vertices flipflag float2bf font font_size fortindent fortspaces fpprec fpprintprec functions gamma_expand gammalim gdet genindex gensumnum GGFCFMAX GGFINFINITY globalsolve gnuplot_command gnuplot_curve_styles gnuplot_curve_titles gnuplot_default_term_command gnuplot_dumb_term_command gnuplot_file_args gnuplot_file_name gnuplot_out_file gnuplot_pdf_term_command gnuplot_pm3d gnuplot_png_term_command gnuplot_postamble gnuplot_preamble gnuplot_ps_term_command gnuplot_svg_term_command gnuplot_term gnuplot_view_args Gosper_in_Zeilberger gradefs grid grid2d grind halfangles head_angle head_both head_length head_type height hypergeometric_representation %iargs ibase icc1 icc2 icounter idummyx ieqnprint ifb ifc1 ifc2 ifg ifgi ifr iframe_bracket_form ifri igeowedge_flag ikt1 ikt2 imaginary inchar increasing infeval infinity inflag infolists inm inmc1 inmc2 intanalysis integer integervalued integrate_use_rootsof integration_constant integration_constant_counter interpolate_color intfaclim ip_grid ip_grid_in irrational isolate_wrt_times iterations itr julia_parameter %k1 %k2 keepfloat key key_pos kinvariant kt label label_alignment label_orientation labels lassociative lbfgs_ncorrections lbfgs_nfeval_max leftjust legend letrat let_rule_packages lfg lg lhospitallim limsubst linear linear_solver linechar linel|10 linenum line_type linewidth line_width linsolve_params linsolvewarn lispdisp listarith listconstvars listdummyvars lmxchar load_pathname loadprint logabs logarc logcb logconcoeffp logexpand lognegint logsimp logx logx_secondary logy logy_secondary logz lriem m1pbranch macroexpansion macros mainvar manual_demo maperror mapprint matrix_element_add matrix_element_mult matrix_element_transpose maxapplydepth maxapplyheight maxima_tempdir|10 maxima_userdir|10 maxnegex MAX_ORD maxposex maxpsifracdenom maxpsifracnum maxpsinegint maxpsiposint maxtayorder mesh_lines_color method mod_big_prime mode_check_errorp mode_checkp mode_check_warnp mod_test mod_threshold modular_linear_solver modulus multiplicative multiplicities myoptions nary negdistrib negsumdispflag newline newtonepsilon newtonmaxiter nextlayerfactor niceindicespref nm nmc noeval nolabels nonegative_lp noninteger nonscalar noun noundisp nouns np npi nticks ntrig numer numer_pbranch obase odd oddfun opacity opproperties opsubst optimprefix optionset orientation origin orthopoly_returns_intervals outative outchar packagefile palette partswitch pdf_file pfeformat phiresolution %piargs piece pivot_count_sx pivot_max_sx plot_format plot_options plot_realpart png_file pochhammer_max_index points pointsize point_size points_joined point_type poislim poisson poly_coefficient_ring poly_elimination_order polyfactor poly_grobner_algorithm poly_grobner_debug poly_monomial_order poly_primary_elimination_order poly_return_term_list poly_secondary_elimination_order poly_top_reduction_only posfun position powerdisp pred prederror primep_number_of_tests product_use_gamma program programmode promote_float_to_bigfloat prompt proportional_axes props psexpand ps_file radexpand radius radsubstflag rassociative ratalgdenom ratchristof ratdenomdivide rateinstein ratepsilon ratfac rational ratmx ratprint ratriemann ratsimpexpons ratvarswitch ratweights ratweyl ratwtlvl real realonly redraw refcheck resolution restart resultant ric riem rmxchar %rnum_list rombergabs rombergit rombergmin rombergtol rootsconmode rootsepsilon run_viewer same_xy same_xyz savedef savefactors scalar scalarmatrixp scale scale_lp setcheck setcheckbreak setval show_edge_color show_edges show_edge_type show_edge_width show_id show_label showtime show_vertex_color show_vertex_size show_vertex_type show_vertices show_weight simp simplified_output simplify_products simpproduct simpsum sinnpiflag solvedecomposes solveexplicit solvefactors solvenullwarn solveradcan solvetrigwarn space sparse sphere spring_embedding_depth sqrtdispflag stardisp startphi starttheta stats_numer stringdisp structures style sublis_apply_lambda subnumsimp sumexpand sumsplitfact surface surface_hide svg_file symmetric tab taylordepth taylor_logexpand taylor_order_coefficients taylor_truncate_polynomials tensorkill terminal testsuite_files thetaresolution timer_devalue title tlimswitch tr track transcompile transform transform_xy translate_fast_arrays transparent transrun tr_array_as_ref tr_bound_function_applyp tr_file_tty_messagesp tr_float_can_branch_complex tr_function_call_default trigexpandplus trigexpandtimes triginverses trigsign trivial_solutions tr_numer tr_optimize_max_loop tr_semicompile tr_state_vars tr_warn_bad_function_calls tr_warn_fexpr tr_warn_meval tr_warn_mode tr_warn_undeclared tr_warn_undefined_variable tstep ttyoff tube_extremes ufg ug %unitexpand unit_vectors uric uriem use_fast_arrays user_preamble usersetunits values vect_cross verbose vertex_color vertex_coloring vertex_partition vertex_size vertex_type view warnings weyl width windowname windowtitle wired_surface wireframe xaxis xaxis_color xaxis_secondary xaxis_type xaxis_width xlabel xlabel_secondary xlength xrange xrange_secondary xtics xtics_axis xtics_rotate xtics_rotate_secondary xtics_secondary xtics_secondary_axis xu_grid x_voxel xy_file xyplane xy_scale yaxis yaxis_color yaxis_secondary yaxis_type yaxis_width ylabel ylabel_secondary ylength yrange yrange_secondary ytics ytics_axis ytics_rotate ytics_rotate_secondary ytics_secondary ytics_secondary_axis yv_grid y_voxel yx_ratio zaxis zaxis_color zaxis_type zaxis_width zeroa zerob zerobern zeta%pi zlabel zlabel_rotate zlength zmin zn_primroot_limit zn_primroot_pretest",i="_ __ %|0 %%|0";return{lexemes:"[A-Za-z_%][0-9A-Za-z_%]*",keywords:{keyword:t,literal:n,built_in:r,symbol:i},contains:[{className:"comment",begin:"/\\*",end:"\\*/",contains:["self"]},e.QUOTE_STRING_MODE,{className:"number",relevance:0,variants:[{begin:"\\b(\\d+|\\d+\\.|\\.\\d+|\\d+\\.\\d+)[Ee][-+]?\\d+\\b"},{begin:"\\b(\\d+|\\d+\\.|\\.\\d+|\\d+\\.\\d+)[Bb][-+]?\\d+\\b",relevance:10},{begin:"\\b(\\.\\d+|\\d+\\.\\d+)\\b"},{begin:"\\b(\\d+|0[0-9A-Za-z]+)\\.?\\b"}]}],illegal:/@/}}},"3bbe":function(e,t,n){var r=n("861d");e.exports=function(e){if(!r(e)&&null!==e)throw TypeError("Can't set "+String(e)+" as a prototype");return e}},"3c69":function(e,t){e.exports=function(e){return{lexemes:/[!#@\w]+/,keywords:{keyword:"N|0 P|0 X|0 a|0 ab abc abo al am an|0 ar arga argd arge argdo argg argl argu as au aug aun b|0 bN ba bad bd be bel bf bl bm bn bo bp br brea breaka breakd breakl bro bufdo buffers bun bw c|0 cN cNf ca cabc caddb cad caddf cal cat cb cc ccl cd ce cex cf cfir cgetb cgete cg changes chd che checkt cl cla clo cm cmapc cme cn cnew cnf cno cnorea cnoreme co col colo com comc comp con conf cope cp cpf cq cr cs cst cu cuna cunme cw delm deb debugg delc delf dif diffg diffo diffp diffpu diffs diffthis dig di dl dell dj dli do doautoa dp dr ds dsp e|0 ea ec echoe echoh echom echon el elsei em en endfo endf endt endw ene ex exe exi exu f|0 files filet fin fina fini fir fix fo foldc foldd folddoc foldo for fu go gr grepa gu gv ha helpf helpg helpt hi hid his ia iabc if ij il im imapc ime ino inorea inoreme int is isp iu iuna iunme j|0 ju k|0 keepa kee keepj lN lNf l|0 lad laddb laddf la lan lat lb lc lch lcl lcs le lefta let lex lf lfir lgetb lgete lg lgr lgrepa lh ll lla lli lmak lm lmapc lne lnew lnf ln loadk lo loc lockv lol lope lp lpf lr ls lt lu lua luad luaf lv lvimgrepa lw m|0 ma mak map mapc marks mat me menut mes mk mks mksp mkv mkvie mod mz mzf nbc nb nbs new nm nmapc nme nn nnoreme noa no noh norea noreme norm nu nun nunme ol o|0 om omapc ome on ono onoreme opt ou ounme ow p|0 profd prof pro promptr pc ped pe perld po popu pp pre prev ps pt ptN ptf ptj ptl ptn ptp ptr pts pu pw py3 python3 py3d py3f py pyd pyf quita qa rec red redi redr redraws reg res ret retu rew ri rightb rub rubyd rubyf rund ru rv sN san sa sal sav sb sbN sba sbf sbl sbm sbn sbp sbr scrip scripte scs se setf setg setl sf sfir sh sim sig sil sl sla sm smap smapc sme sn sni sno snor snoreme sor so spelld spe spelli spellr spellu spellw sp spr sre st sta startg startr star stopi stj sts sun sunm sunme sus sv sw sy synti sync tN tabN tabc tabdo tabe tabf tabfir tabl tabm tabnew tabn tabo tabp tabr tabs tab ta tags tc tcld tclf te tf th tj tl tm tn to tp tr try ts tu u|0 undoj undol una unh unl unlo unm unme uns up ve verb vert vim vimgrepa vi viu vie vm vmapc vme vne vn vnoreme vs vu vunme windo w|0 wN wa wh wi winc winp wn wp wq wqa ws wu wv x|0 xa xmapc xm xme xn xnoreme xu xunme y|0 z|0 ~ Next Print append abbreviate abclear aboveleft all amenu anoremenu args argadd argdelete argedit argglobal arglocal argument ascii autocmd augroup aunmenu buffer bNext ball badd bdelete behave belowright bfirst blast bmodified bnext botright bprevious brewind break breakadd breakdel breaklist browse bunload bwipeout change cNext cNfile cabbrev cabclear caddbuffer caddexpr caddfile call catch cbuffer cclose center cexpr cfile cfirst cgetbuffer cgetexpr cgetfile chdir checkpath checktime clist clast close cmap cmapclear cmenu cnext cnewer cnfile cnoremap cnoreabbrev cnoremenu copy colder colorscheme command comclear compiler continue confirm copen cprevious cpfile cquit crewind cscope cstag cunmap cunabbrev cunmenu cwindow delete delmarks debug debuggreedy delcommand delfunction diffupdate diffget diffoff diffpatch diffput diffsplit digraphs display deletel djump dlist doautocmd doautoall deletep drop dsearch dsplit edit earlier echo echoerr echohl echomsg else elseif emenu endif endfor endfunction endtry endwhile enew execute exit exusage file filetype find finally finish first fixdel fold foldclose folddoopen folddoclosed foldopen function global goto grep grepadd gui gvim hardcopy help helpfind helpgrep helptags highlight hide history insert iabbrev iabclear ijump ilist imap imapclear imenu inoremap inoreabbrev inoremenu intro isearch isplit iunmap iunabbrev iunmenu join jumps keepalt keepmarks keepjumps lNext lNfile list laddexpr laddbuffer laddfile last language later lbuffer lcd lchdir lclose lcscope left leftabove lexpr lfile lfirst lgetbuffer lgetexpr lgetfile lgrep lgrepadd lhelpgrep llast llist lmake lmap lmapclear lnext lnewer lnfile lnoremap loadkeymap loadview lockmarks lockvar lolder lopen lprevious lpfile lrewind ltag lunmap luado luafile lvimgrep lvimgrepadd lwindow move mark make mapclear match menu menutranslate messages mkexrc mksession mkspell mkvimrc mkview mode mzscheme mzfile nbclose nbkey nbsart next nmap nmapclear nmenu nnoremap nnoremenu noautocmd noremap nohlsearch noreabbrev noremenu normal number nunmap nunmenu oldfiles open omap omapclear omenu only onoremap onoremenu options ounmap ounmenu ownsyntax print profdel profile promptfind promptrepl pclose pedit perl perldo pop popup ppop preserve previous psearch ptag ptNext ptfirst ptjump ptlast ptnext ptprevious ptrewind ptselect put pwd py3do py3file python pydo pyfile quit quitall qall read recover redo redir redraw redrawstatus registers resize retab return rewind right rightbelow ruby rubydo rubyfile rundo runtime rviminfo substitute sNext sandbox sargument sall saveas sbuffer sbNext sball sbfirst sblast sbmodified sbnext sbprevious sbrewind scriptnames scriptencoding scscope set setfiletype setglobal setlocal sfind sfirst shell simalt sign silent sleep slast smagic smapclear smenu snext sniff snomagic snoremap snoremenu sort source spelldump spellgood spellinfo spellrepall spellundo spellwrong split sprevious srewind stop stag startgreplace startreplace startinsert stopinsert stjump stselect sunhide sunmap sunmenu suspend sview swapname syntax syntime syncbind tNext tabNext tabclose tabedit tabfind tabfirst tablast tabmove tabnext tabonly tabprevious tabrewind tag tcl tcldo tclfile tearoff tfirst throw tjump tlast tmenu tnext topleft tprevious trewind tselect tunmenu undo undojoin undolist unabbreviate unhide unlet unlockvar unmap unmenu unsilent update vglobal version verbose vertical vimgrep vimgrepadd visual viusage view vmap vmapclear vmenu vnew vnoremap vnoremenu vsplit vunmap vunmenu write wNext wall while winsize wincmd winpos wnext wprevious wqall wsverb wundo wviminfo xit xall xmapclear xmap xmenu xnoremap xnoremenu xunmap xunmenu yank",built_in:"synIDtrans atan2 range matcharg did_filetype asin feedkeys xor argv complete_check add getwinposx getqflist getwinposy screencol clearmatches empty extend getcmdpos mzeval garbagecollect setreg ceil sqrt diff_hlID inputsecret get getfperm getpid filewritable shiftwidth max sinh isdirectory synID system inputrestore winline atan visualmode inputlist tabpagewinnr round getregtype mapcheck hasmapto histdel argidx findfile sha256 exists toupper getcmdline taglist string getmatches bufnr strftime winwidth bufexists strtrans tabpagebuflist setcmdpos remote_read printf setloclist getpos getline bufwinnr float2nr len getcmdtype diff_filler luaeval resolve libcallnr foldclosedend reverse filter has_key bufname str2float strlen setline getcharmod setbufvar index searchpos shellescape undofile foldclosed setqflist buflisted strchars str2nr virtcol floor remove undotree remote_expr winheight gettabwinvar reltime cursor tabpagenr finddir localtime acos getloclist search tanh matchend rename gettabvar strdisplaywidth type abs py3eval setwinvar tolower wildmenumode log10 spellsuggest bufloaded synconcealed nextnonblank server2client complete settabwinvar executable input wincol setmatches getftype hlID inputsave searchpair or screenrow line settabvar histadd deepcopy strpart remote_peek and eval getftime submatch screenchar winsaveview matchadd mkdir screenattr getfontname libcall reltimestr getfsize winnr invert pow getbufline byte2line soundfold repeat fnameescape tagfiles sin strwidth spellbadword trunc maparg log lispindent hostname setpos globpath remote_foreground getchar synIDattr fnamemodify cscope_connection stridx winbufnr indent min complete_add nr2char searchpairpos inputdialog values matchlist items hlexists strridx browsedir expand fmod pathshorten line2byte argc count getwinvar glob foldtextresult getreg foreground cosh matchdelete has char2nr simplify histget searchdecl iconv winrestcmd pumvisible writefile foldlevel haslocaldir keys cos matchstr foldtext histnr tan tempname getcwd byteidx getbufvar islocked escape eventhandler remote_send serverlist winrestview synstack pyeval prevnonblank readfile cindent filereadable changenr exp"},illegal:/;/,contains:[e.NUMBER_MODE,{className:"string",begin:"'",end:"'",illegal:"\\n"},{className:"string",begin:/"(\\"|\n\\|[^"\n])*"/},e.COMMENT('"',"$"),{className:"variable",begin:/[bwtglsav]:[\w\d_]*/},{className:"function",beginKeywords:"function function!",end:"$",relevance:0,contains:[e.TITLE_MODE,{className:"params",begin:"\\(",end:"\\)"}]},{className:"symbol",begin:/<[\w-]+>/}]}}},"3f38":function(e,t){e.exports=function(e){var t={variants:[e.COMMENT("--","$"),e.COMMENT("{-","-}",{contains:["self"]})]},n={className:"meta",begin:"{-#",end:"#-}"},r={className:"meta",begin:"^#",end:"$"},i={className:"type",begin:"\\b[A-Z][\\w']*",relevance:0},a={begin:"\\(",end:"\\)",illegal:'"',contains:[n,r,{className:"type",begin:"\\b[A-Z][\\w]*(\\((\\.\\.|,|\\w+)\\))?"},e.inherit(e.TITLE_MODE,{begin:"[_a-z][\\w']*"}),t]},o={begin:"{",end:"}",contains:a.contains};return{aliases:["hs"],keywords:"let in if then else case of where do module import hiding qualified type data newtype deriving class instance as default infix infixl infixr foreign export ccall stdcall cplusplus jvm dotnet safe unsafe family forall mdo proc rec",contains:[{beginKeywords:"module",end:"where",keywords:"module where",contains:[a,t],illegal:"\\W\\.|;"},{begin:"\\bimport\\b",end:"$",keywords:"import qualified as hiding",contains:[a,t],illegal:"\\W\\.|;"},{className:"class",begin:"^(\\s*)?(class|instance)\\b",end:"where",keywords:"class family instance where",contains:[i,a,t]},{className:"class",begin:"\\b(data|(new)?type)\\b",end:"$",keywords:"data family type newtype deriving",contains:[n,i,a,o,t]},{beginKeywords:"default",end:"$",contains:[i,a,t]},{beginKeywords:"infix infixl infixr",end:"$",contains:[e.C_NUMBER_MODE,t]},{begin:"\\bforeign\\b",end:"$",keywords:"foreign import export ccall stdcall cplusplus jvm dotnet safe unsafe",contains:[i,e.QUOTE_STRING_MODE,t]},{className:"meta",begin:"#!\\/usr\\/bin\\/env runhaskell",end:"$"},n,r,e.QUOTE_STRING_MODE,e.C_NUMBER_MODE,i,e.inherit(e.TITLE_MODE,{begin:"^[_a-z][\\w']*"}),t,{begin:"->|<-"}]}}},"3f8c":function(e,t){e.exports={}},"40f4":function(e,t){e.exports=function(e){var t="do if then else end until while abort array attrib by call cards cards4 catname continue datalines datalines4 delete delim delimiter display dm drop endsas error file filename footnote format goto in infile informat input keep label leave length libname link list lostcard merge missing modify options output out page put redirect remove rename replace retain return select set skip startsas stop title update waitsas where window x systask add and alter as cascade check create delete describe distinct drop foreign from group having index insert into in key like message modify msgtype not null on or order primary references reset restrict select set table unique update validate view where",n="abs|addr|airy|arcos|arsin|atan|attrc|attrn|band|betainv|blshift|bnot|bor|brshift|bxor|byte|cdf|ceil|cexist|cinv|close|cnonct|collate|compbl|compound|compress|cos|cosh|css|curobs|cv|daccdb|daccdbsl|daccsl|daccsyd|dacctab|dairy|date|datejul|datepart|datetime|day|dclose|depdb|depdbsl|depdbsl|depsl|depsl|depsyd|depsyd|deptab|deptab|dequote|dhms|dif|digamma|dim|dinfo|dnum|dopen|doptname|doptnum|dread|dropnote|dsname|erf|erfc|exist|exp|fappend|fclose|fcol|fdelete|fetch|fetchobs|fexist|fget|fileexist|filename|fileref|finfo|finv|fipname|fipnamel|fipstate|floor|fnonct|fnote|fopen|foptname|foptnum|fpoint|fpos|fput|fread|frewind|frlen|fsep|fuzz|fwrite|gaminv|gamma|getoption|getvarc|getvarn|hbound|hms|hosthelp|hour|ibessel|index|indexc|indexw|input|inputc|inputn|int|intck|intnx|intrr|irr|jbessel|juldate|kurtosis|lag|lbound|left|length|lgamma|libname|libref|log|log10|log2|logpdf|logpmf|logsdf|lowcase|max|mdy|mean|min|minute|mod|month|mopen|mort|n|netpv|nmiss|normal|note|npv|open|ordinal|pathname|pdf|peek|peekc|pmf|point|poisson|poke|probbeta|probbnml|probchi|probf|probgam|probhypr|probit|probnegb|probnorm|probt|put|putc|putn|qtr|quote|ranbin|rancau|ranexp|rangam|range|rank|rannor|ranpoi|rantbl|rantri|ranuni|repeat|resolve|reverse|rewind|right|round|saving|scan|sdf|second|sign|sin|sinh|skewness|soundex|spedis|sqrt|std|stderr|stfips|stname|stnamel|substr|sum|symget|sysget|sysmsg|sysprod|sysrc|system|tan|tanh|time|timepart|tinv|tnonct|today|translate|tranwrd|trigamma|trim|trimn|trunc|uniform|upcase|uss|var|varfmt|varinfmt|varlabel|varlen|varname|varnum|varray|varrayx|vartype|verify|vformat|vformatd|vformatdx|vformatn|vformatnx|vformatw|vformatwx|vformatx|vinarray|vinarrayx|vinformat|vinformatd|vinformatdx|vinformatn|vinformatnx|vinformatw|vinformatwx|vinformatx|vlabel|vlabelx|vlength|vlengthx|vname|vnamex|vtype|vtypex|weekday|year|yyq|zipfips|zipname|zipnamel|zipstate",r="bquote|nrbquote|cmpres|qcmpres|compstor|datatyp|display|do|else|end|eval|global|goto|if|index|input|keydef|label|left|length|let|local|lowcase|macro|mend|nrbquote|nrquote|nrstr|put|qcmpres|qleft|qlowcase|qscan|qsubstr|qsysfunc|qtrim|quote|qupcase|scan|str|substr|superq|syscall|sysevalf|sysexec|sysfunc|sysget|syslput|sysprod|sysrc|sysrput|then|to|trim|unquote|until|upcase|verify|while|window";return{aliases:["sas","SAS"],case_insensitive:!0,keywords:{literal:"null missing _all_ _automatic_ _character_ _infile_ _n_ _name_ _null_ _numeric_ _user_ _webout_",meta:t},contains:[{className:"keyword",begin:/^\s*(proc [\w\d_]+|data|run|quit)[\s\;]/},{className:"variable",begin:/\&[a-zA-Z_\&][a-zA-Z0-9_]*\.?/},{className:"emphasis",begin:/^\s*datalines|cards.*;/,end:/^\s*;\s*$/},{className:"built_in",begin:"%("+r+")"},{className:"name",begin:/%[a-zA-Z_][a-zA-Z_0-9]*/},{className:"meta",begin:"[^%]("+n+")[(]"},{className:"string",variants:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},e.COMMENT("\\*",";"),e.C_BLOCK_COMMENT_MODE]}}},4108:function(e,t){e.exports=function(e){var t="[^\\(\\)\\[\\]\\{\\}\",'`;#|\\\\\\s]+",n="(\\-|\\+)?\\d+([./]\\d+)?",r=n+"[+\\-]"+n+"i",i={"builtin-name":"case-lambda call/cc class define-class exit-handler field import inherit init-field interface let*-values let-values let/ec mixin opt-lambda override protect provide public rename require require-for-syntax syntax syntax-case syntax-error unit/sig unless when with-syntax and begin call-with-current-continuation call-with-input-file call-with-output-file case cond define define-syntax delay do dynamic-wind else for-each if lambda let let* let-syntax letrec letrec-syntax map or syntax-rules ' * + , ,@ - ... / ; < <= = => > >= ` abs acos angle append apply asin assoc assq assv atan boolean? caar cadr call-with-input-file call-with-output-file call-with-values car cdddar cddddr cdr ceiling char->integer char-alphabetic? char-ci<=? char-ci=? char-ci>? char-downcase char-lower-case? char-numeric? char-ready? char-upcase char-upper-case? char-whitespace? char<=? char=? char>? char? close-input-port close-output-port complex? cons cos current-input-port current-output-port denominator display eof-object? eq? equal? eqv? eval even? exact->inexact exact? exp expt floor force gcd imag-part inexact->exact inexact? input-port? integer->char integer? interaction-environment lcm length list list->string list->vector list-ref list-tail list? load log magnitude make-polar make-rectangular make-string make-vector max member memq memv min modulo negative? newline not null-environment null? number->string number? numerator odd? open-input-file open-output-file output-port? pair? peek-char port? positive? procedure? quasiquote quote quotient rational? rationalize read read-char real-part real? remainder reverse round scheme-report-environment set! set-car! set-cdr! sin sqrt string string->list string->number string->symbol string-append string-ci<=? string-ci=? string-ci>? string-copy string-fill! string-length string-ref string-set! string<=? string=? string>? string? substring symbol->string symbol? tan transcript-off transcript-on truncate values vector vector->list vector-fill! vector-length vector-ref vector-set! with-input-from-file with-output-to-file write write-char zero?"},a={className:"meta",begin:"^#!",end:"$"},o={className:"literal",begin:"(#t|#f|#\\\\"+t+"|#\\\\.)"},s={className:"number",variants:[{begin:n,relevance:0},{begin:r,relevance:0},{begin:"#b[0-1]+(/[0-1]+)?"},{begin:"#o[0-7]+(/[0-7]+)?"},{begin:"#x[0-9a-f]+(/[0-9a-f]+)?"}]},l=e.QUOTE_STRING_MODE,c=[e.COMMENT(";","$",{relevance:0}),e.COMMENT("#\\|","\\|#")],d={begin:t,relevance:0},u={className:"symbol",begin:"'"+t},_={endsWithParent:!0,relevance:0},p={variants:[{begin:/'/},{begin:"`"}],contains:[{begin:"\\(",end:"\\)",contains:["self",o,l,s,d,u]}]},f={className:"name",begin:t,lexemes:t,keywords:i},m={begin:/lambda/,endsWithParent:!0,returnBegin:!0,contains:[f,{begin:/\(/,end:/\)/,endsParent:!0,contains:[d]}]},h={variants:[{begin:"\\(",end:"\\)"},{begin:"\\[",end:"\\]"}],contains:[m,f,_]};return _.contains=[o,s,l,d,u,p,h].concat(c),{illegal:/\S/,contains:[a,s,l,u,p,h].concat(c)}}},4160:function(e,t,n){"use strict";var r=n("23e7"),i=n("17c2");r({target:"Array",proto:!0,forced:[].forEach!=i},{forEach:i})},4272:function(e,t){e.exports=function(e){return{case_insensitive:!1,lexemes:"[a-zA-Z][a-zA-Z0-9_-]*",keywords:{keyword:"base-uri child-src connect-src default-src font-src form-action frame-ancestors frame-src img-src media-src object-src plugin-types report-uri sandbox script-src style-src"},contains:[{className:"string",begin:"'",end:"'"},{className:"attribute",begin:"^Content",end:":",excludeEnd:!0}]}}},"428f":function(e,t,n){var r=n("da84");e.exports=r},4362:function(e,t,n){t.nextTick=function(e){var t=Array.prototype.slice.call(arguments);t.shift(),setTimeout((function(){e.apply(null,t)}),0)},t.platform=t.arch=t.execPath=t.title="browser",t.pid=1,t.browser=!0,t.env={},t.argv=[],t.binding=function(e){throw new Error("No such module. (Possibly not yet loaded)")},function(){var e,r="/";t.cwd=function(){return r},t.chdir=function(t){e||(e=n("df7c")),r=e.resolve(t,r)}}(),t.exit=t.kill=t.umask=t.dlopen=t.uptime=t.memoryUsage=t.uvCounters=function(){},t.features={}},4396:function(e,t){e.exports=function(e){var t={begin:/[a-z][A-Za-z0-9_]*/,relevance:0},n={className:"symbol",variants:[{begin:/[A-Z][a-zA-Z0-9_]*/},{begin:/_[A-Za-z0-9_]*/}],relevance:0},r={begin:/\(/,end:/\)/,relevance:0},i={begin:/\[/,end:/\]/},a={className:"comment",begin:/%/,end:/$/,contains:[e.PHRASAL_WORDS_MODE]},o={className:"string",begin:/`/,end:/`/,contains:[e.BACKSLASH_ESCAPE]},s={className:"string",begin:/0\'(\\\'|.)/},l={className:"string",begin:/0\'\\s/},c={begin:/:-/},d=[t,n,r,c,i,a,e.C_BLOCK_COMMENT_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,o,s,l,e.C_NUMBER_MODE];return r.contains=d,i.contains=d,{contains:d.concat([{begin:/\.$/}])}}},"43f9":function(e,t,n){ /*! * vue-material v1.0.0-beta-15 * Made with <3 by marcosmoura 2020 * Released under the MIT License. */ -(function(t,r){e.exports=r(n("2b0e"))})("undefined"!==typeof self&&self,(function(e){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:r})},n.n=function(e){var t=e&&e.__esModule?function(){return e["default"]}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=179)}([function(e,t){e.exports=function(e,t,n,r,i,a){var o,s=e=e||{},l=typeof e.default;"object"!==l&&"function"!==l||(o=e,s=e.default);var c,d="function"===typeof s?s.options:s;if(t&&(d.render=t.render,d.staticRenderFns=t.staticRenderFns,d._compiled=!0),n&&(d.functional=!0),i&&(d._scopeId=i),a?(c=function(e){e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext,e||"undefined"===typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),r&&r.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(a)},d._ssrRegister=c):r&&(c=r),c){var u=d.functional,_=u?d.render:d.beforeCreate;u?(d._injectStyles=c,d.render=function(e,t){return c.call(t),_(e,t)}):d.beforeCreate=_?[].concat(_,c):[c]}return{esModule:o,exports:s,options:d}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){var t={props:{mdTheme:null},computed:{$mdActiveTheme:function(){var e=i.default.enabled,t=i.default.getThemeName,n=i.default.getAncestorTheme;return e&&!1!==this.mdTheme?t(this.mdTheme||n(this)):null}}};return(0,o.default)(t,e)};var r=n(32),i=s(r),a=n(35),o=s(a);function s(e){return e&&e.__esModule?e:{default:e}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n(180);var r=n(31),i=s(r),a=n(32),o=s(a);function s(e){return e&&e.__esModule?e:{default:e}}var l=function(){var e=new i.default({ripple:!0,theming:{},locale:{startYear:1900,endYear:2099,dateFormat:"yyyy-MM-dd",days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],shorterDays:["S","M","T","W","T","F","S"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","June","July","Aug","Sept","Oct","Nov","Dec"],shorterMonths:["J","F","M","A","M","Ju","Ju","A","Se","O","N","D"],firstDayOfAWeek:0,cancel:"Cancel",confirm:"Ok"},router:{linkActiveClass:"router-link-active"}});return Object.defineProperties(e.theming,{metaColors:{get:function(){return o.default.metaColors},set:function(e){o.default.metaColors=e}},theme:{get:function(){return o.default.theme},set:function(e){o.default.theme=e}},enabled:{get:function(){return o.default.enabled},set:function(e){o.default.enabled=e}}}),e};t.default=function(e){e.material||(e.material=l(),e.prototype.$material=e.material)}},function(e,t,n){"use strict";function r(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=Object.prototype.toString.call(e);return e instanceof Date||"object"===typeof e&&"[object Date]"===t?new Date(e.getTime()):"number"===typeof e||"[object Number]"===t?new Date(e):("string"!==typeof e&&"[object String]"!==t||"undefined"===typeof console||(console.warn("Starting with v2.0.0-beta.1 date-fns doesn't accept strings as arguments. Please use `parseISO` to parse strings. See: https://git.io/fpAk2"),console.warn((new Error).stack)),new Date(NaN))}t["a"]=r},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(8),i=a(r);function a(e){return e&&e.__esModule?e:{default:e}}t.default=function(e,t){return{validator:function(n){return!!t.includes(n)||(i.default.util.warn("The "+e+" prop is invalid. Given value: "+n+". Available options: "+t.join(", ")+".",void 0),!1)}}}},function(e,t,n){"use strict";function r(e){if(null===e||!0===e||!1===e)return NaN;var t=Number(e);return isNaN(t)?t:t<0?Math.ceil(t):Math.floor(t)}t["a"]=r},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(73),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(282),s=!1;function l(e){s||n(278)}var c=n(0),d=!1,u=l,_=null,p=null,f=c(i.a,o["a"],d,u,_,p);f.options.__file="src/components/MdIcon/MdIcon.vue",t["default"]=f.exports},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(){return Math.random().toString(36).slice(4)};t.default=r},function(t,n){t.exports=e},function(e,t,n){(function(t){for(var r=n(187),i="undefined"===typeof window?t:window,a=["moz","webkit"],o="AnimationFrame",s=i["request"+o],l=i["cancel"+o]||i["cancelRequest"+o],c=0;!s&&c=0)&&e.setAttribute("for",this.id)}}},setFormResetListener:function(){if(this.$el.form){var e=this.$el.form;e.addEventListener("reset",this.onParentFormReset)}},removeFormResetListener:function(){if(this.$el.form){var e=this.$el.form;e.removeEventListener("reset",this.onParentFormReset)}},onParentFormReset:function(){this.clearField()},isInvalidValue:function(){return this.$el.validity.badInput},setFieldValue:function(){this.MdField.value=this.model},setPlaceholder:function(){this.MdField.placeholder=Boolean(this.placeholder)},setDisabled:function(){this.MdField.disabled=Boolean(this.disabled)},setRequired:function(){this.MdField.required=Boolean(this.required)},setMaxlength:function(){this.mdCounter?this.MdField.counter=parseInt(this.mdCounter,10):this.MdField.maxlength=parseInt(this.maxlength,10)},onFocus:function(){this.MdField.focused=!0},onBlur:function(){this.MdField.focused=!1}},created:function(){this.setFieldValue(),this.setPlaceholder(),this.setDisabled(),this.setRequired(),this.setMaxlength()},mounted:function(){this.setLabelFor(),this.setFormResetListener()},beforeDestroy:function(){this.removeFormResetListener()}}},function(e,t,n){"use strict";t["a"]=i;var r=n(3);function i(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=1,n=Object(r["a"])(e),i=n.getUTCDay(),a=(i=0&&l<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var c=Object(i["a"])(e),d=c.getUTCDay(),u=(d=1&&u<=7))throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively");var _=new Date(0);_.setUTCFullYear(o+1,0,u),_.setUTCHours(0,0,0,0);var p=Object(a["a"])(_,t),f=new Date(0);f.setUTCFullYear(o,0,u),f.setUTCHours(0,0,0,0);var m=Object(a["a"])(f,t);return n.getTime()>=p.getTime()?o+1:n.getTime()>=m.getTime()?o:o-1}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(90),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(302),s=!1;function l(e){s||n(301)}var c=n(0),d=!1,u=l,_=null,p=null,f=c(i.a,o["a"],d,u,_,p);f.options.__file="src/components/MdOverlay/MdOverlay.vue",t["default"]=f.exports},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t["default"]=i;var r=n(3);function i(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=Object(r["a"])(e),n=t.getFullYear(),i=t.getMonth(),a=new Date(0);return a.setFullYear(n,i+1,0),a.setHours(0,0,0,0),a.getDate()}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(93),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=!1;function s(e){o||n(316)}var l=n(0),c=null,d=!1,u=s,_=null,p=null,f=l(i.a,c,d,u,_,p);f.options.__file="src/components/MdPopover/MdPopover.vue",t["default"]=f.exports},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(9),i=s(r),a=n(118),o=s(a);function s(e){return e&&e.__esModule?e:{default:e}}t.default=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:window,t=arguments[1],n=(0,o.default)(e,"resize",(function(){(0,i.default)(t)}),{passive:!0});return{destroy:n.destroy}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(161),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(479),s=!1;function l(e){s||n(476)}var c=n(0),d=!1,u=l,_=null,p=null,f=c(i.a,o["a"],d,u,_,p);f.options.__file="src/components/MdTable/MdTableHead.vue",t["default"]=f.exports},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){var t={};return i.default.util.defineReactive(t,"reactive",e),t.reactive};var r=n(8),i=a(r);function a(e){return e&&e.__esModule?e:{default:e}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(8),i=a(r);function a(e){return e&&e.__esModule?e:{default:e}}var o=null,s=null,l=null;t.default=new i.default({data:function(){return{prefix:"md-theme-",theme:"default",enabled:!0,metaColors:!1}},computed:{themeTarget:function(){return!this.$isServer&&document.documentElement},fullThemeName:function(){return this.getThemeName()}},watch:{enabled:{immediate:!0,handler:function(){var e=this.fullThemeName,t=this.themeTarget,n=this.enabled;t&&(n?(t.classList.add(e),this.metaColors&&this.setHtmlMetaColors(e)):(t.classList.remove(e),this.metaColors&&this.setHtmlMetaColors()))}},theme:function(e,t){var n=this.getThemeName,r=this.themeTarget;e=n(e),r.classList.remove(n(t)),r.classList.add(e),this.metaColors&&this.setHtmlMetaColors(e)},metaColors:function(e){e?this.setHtmlMetaColors(this.fullThemeName):this.setHtmlMetaColors()}},methods:{getAncestorTheme:function(e){var t=this;if(e){var n=e.mdTheme,r=function e(r){if(r){var i=r.mdTheme,a=r.$parent;return i&&i!==n?i:e(a)}return t.theme};return r(e.$parent)}return null},getThemeName:function(e){var t=e||this.theme;return this.prefix+t},setMicrosoftColors:function(e){o&&o.setAttribute("content",e)},setThemeColors:function(e){s&&s.setAttribute("content",e)},setMaskColors:function(e){l&&l.setAttribute("color",e)},setHtmlMetaColors:function(e){var t="#fff";if(e){var n=window.getComputedStyle(document.documentElement);t=n.getPropertyValue("--"+e+"-primary")}t&&(this.setMicrosoftColors(t),this.setThemeColors(t),this.setMaskColors(t))}},mounted:function(){var e=this;o=document.querySelector('[name="msapplication-TileColor"]'),s=document.querySelector('[name="theme-color"]'),l=document.querySelector('[rel="mask-icon"]'),this.enabled&&this.metaColors&&window.addEventListener("load",(function(){e.setHtmlMetaColors(e.fullThemeName)}))}})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=Object.assign||function(e){for(var t=1;t-1}));return t.length?t:[]}function v(e){var t=e&&e["md-permanent"];return t&&("clipped"===t||"card"===t)}t.default={name:"MdApp",functional:!0,render:function(e,t){var n=t.children,i=t.props,a=t.data,o=s.default,l=e(o),d=l.context,u=l.functionalContext,_=l.componentOptions,p=S(n,d,u,_,e),f=b(p);f.forEach((function(e){e&&v(e.data.attrs)&&(o=c.default)}));var m={};return a.staticClass&&a.staticClass.split(/\s+/).forEach((function(e){0!==e.length&&(m[e]=!0)})),e(o,{attrs:i,class:r({},m,a.class),style:r({},a.staticStyle,a.style)},p)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(1),i=s(r),a=n(36),o=s(a);function s(e){return e&&e.__esModule?e:{default:e}}t.default=new i.default({name:"MdAppSideDrawer",mixins:[o.default]})},function(e,t,n){(function(t,n){e.exports=n()})(0,(function(){"use strict";var e=function(e){return t(e)&&!n(e)};function t(e){return!!e&&"object"===typeof e}function n(e){var t=Object.prototype.toString.call(e);return"[object RegExp]"===t||"[object Date]"===t||a(e)}var r="function"===typeof Symbol&&Symbol.for,i=r?Symbol.for("react.element"):60103;function a(e){return e.$$typeof===i}function o(e){return Array.isArray(e)?[]:{}}function s(e,t){return!1!==t.clone&&t.isMergeableObject(e)?u(o(e),e,t):e}function l(e,t,n){return e.concat(t).map((function(e){return s(e,n)}))}function c(e,t){if(!t.customMerge)return u;var n=t.customMerge(e);return"function"===typeof n?n:u}function d(e,t,n){var r={};return n.isMergeableObject(e)&&Object.keys(e).forEach((function(t){r[t]=s(e[t],n)})),Object.keys(t).forEach((function(i){n.isMergeableObject(t[i])&&e[i]?r[i]=c(i,n)(e[i],t[i],n):r[i]=s(t[i],n)})),r}function u(t,n,r){r=r||{},r.arrayMerge=r.arrayMerge||l,r.isMergeableObject=r.isMergeableObject||e;var i=Array.isArray(n),a=Array.isArray(t),o=i===a;return o?i?r.arrayMerge(t,n,r):d(t,n,r):s(n,r)}u.all=function(e,t){if(!Array.isArray(e))throw new Error("first argument should be an array");return e.reduce((function(e,n){return u(e,n,t)}),{})};var _=u;return _}))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=Object.assign||function(e){for(var t=1;t=i},handleFlexibleMode:function(e){var t=this.getToolbarConstrants(e),n=t.scrollTop,r=t.initialHeight,i=this.MdApp.toolbar.element,a=i.querySelector(".md-toolbar-row:first-child"),o=a.offsetHeight,s=r-n,l=n=i)||this.revealLastPos>a+r},handleFixedLastMode:function(e){var t=this.getToolbarConstrants(e),n=t.scrollTop,r=t.toolbarHeight,i=t.safeAmount,a=this.MdApp.toolbar.element,o=a.querySelector(".md-toolbar-row:first-child"),s=o.offsetHeight;this.setToolbarTimer(n),this.setToolbarMarginAndHeight(n-s,r),this.MdApp.toolbar.fixedLastHeight=s,this.MdApp.toolbar.fixedLastActive=!(n>=s)||this.revealLastPos>n+i},handleOverlapMode:function(e){var t=this.getToolbarConstrants(e),n=t.toolbarHeight,r=t.scrollTop,i=t.initialHeight,a=this.MdApp.toolbar.element,o=a.querySelector(".md-toolbar-row:first-child"),s=o.offsetHeight,l=i-r-100*r/(i-s-s/1.5);s&&(r=s?(this.MdApp.toolbar.overlapOff=!1,a.style.height=l+"px"):(this.MdApp.toolbar.overlapOff=!0,a.style.height=s+"px")),this.setToolbarMarginAndHeight(r,n)},handleModeScroll:function(e){"reveal"===this.mdMode?this.handleRevealMode(e):"fixed-last"===this.mdMode?this.handleFixedLastMode(e):"overlap"===this.mdMode?this.handleOverlapMode(e):"flexible"===this.mdMode&&this.handleFlexibleMode(e)},handleScroll:function(e){var t=this;this.MdApp.toolbar.element&&(0,a.default)((function(){t.mdWaterfall&&t.handleWaterfallScroll(e),t.mdMode&&t.handleModeScroll(e)}))}},created:function(){this.MdApp.options.mode=this.mdMode,this.MdApp.options.waterfall=this.mdWaterfall,this.setToolbarElevation()},mounted:function(){var e={target:{scrollTop:0}};"reveal"===this.mdMode&&(this.MdApp.toolbar.revealActive=!0,this.handleRevealMode(e)),"flexible"===this.mdMode&&(this.MdApp.toolbar.revealActive=!0,this.handleFlexibleMode(e)),"fixed-last"===this.mdMode&&(this.MdApp.toolbar.fixedLastActive=!0,this.handleFixedLastMode(e)),"overlap"===this.mdMode&&this.handleOverlapMode(e)}}},function(e,t){var n;n=function(){return this}();try{n=n||Function("return this")()||(0,eval)("this")}catch(r){"object"===typeof window&&(n=window)}e.exports=n},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(1),i=s(r),a=n(36),o=s(a);function s(e){return e&&e.__esModule?e:{default:e}}t.default=new i.default({name:"MdAppInternalDrawer",mixins:[o.default]})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=Object.assign||function(e){for(var t=1;t0||this.filteredAsyncOptions.length>0},hasScopedEmptySlot:function(){return this.$scopedSlots["md-autocomplete-empty"]}},watch:{mdOptions:{deep:!0,immediate:!0,handler:function(){var e=this;this.isPromise(this.mdOptions)&&(this.isPromisePending=!0,this.mdOptions.then((function(t){e.filteredAsyncOptions=t,e.isPromisePending=!1})))}},value:function(e){this.searchTerm=e}},methods:{getOptions:function(){return this.isPromise(this.mdOptions)?this.filteredAsyncOptions:this.filteredStaticOptions},isPromise:function(e){return(0,l.default)(e)},matchText:function(e){var t=e.toLowerCase(),n=this.searchTerm.toLowerCase();return this.mdFuzzySearch?(0,o.default)(n,t):t.includes(n)},filterByString:function(){var e=this;return this.mdOptions.filter((function(t){return e.matchText(t)}))},filterByObject:function(){var e=this;return this.mdOptions.filter((function(t){for(var n=Object.values(t),r=n.length,i=0;i<=r;i++)if("string"===typeof n[i]&&e.matchText(n[i]))return!0}))},openOnFocus:function(){this.mdOpenOnFocus&&this.showOptions()},onInput:function(e){this.$emit("input",e),this.mdOpenOnFocus||this.showOptions(),"inputevent"!==this.searchTerm.constructor.toString().match(/function (\w*)/)[1].toLowerCase()&&this.$emit("md-changed",this.searchTerm)},showOptions:function(){var e=this;if(this.showMenu)return!1;this.showMenu=!0,this.$nextTick((function(){e.triggerPopover=!0,e.$emit("md-opened")}))},hideOptions:function(){var e=this;this.$nextTick((function(){e.triggerPopover=!1,e.$emit("md-closed")}))},selectItem:function(e,t){var n=t.target.textContent.trim();this.searchTerm=n,this.$emit("input",e),this.$emit("md-selected",e),this.hideOptions()}}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(1),i=a(r);function a(e){return e&&e.__esModule?e:{default:e}}t.default=new i.default({name:"MdAvatar"})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=Object.assign||function(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:.6;e.mdTextScrim?e.applyScrimColor(t):e.mdSolid&&e.applySolidColor(t)},n=this.$el.querySelector("img");n&&(this.mdTextScrim||this.mdSolid)&&this.getImageLightness(n,(function(e){var n=256,r=(100*Math.abs(n-e)/n+15)/100;r>=.7&&(r=.7),t(r)}),t)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={name:"MdCardContent"}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={name:"MdCardExpand",inject:["MdCard"]}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=Object.assign||function(e){for(var t=1;t0||this.MdField.hasInvalidValue},valueLength:function(){return this.stringValue?this.stringValue.length:0},fieldClasses:function(){return{"md-inline":this.mdInline,"md-clearable":this.mdClearable,"md-focused":this.MdField.focused,"md-highlight":this.MdField.highlighted,"md-disabled":this.MdField.disabled,"md-required":this.MdField.required,"md-has-value":this.hasValue,"md-has-placeholder":this.MdField.placeholder,"md-has-textarea":this.MdField.textarea,"md-has-password":this.MdField.password,"md-has-file":this.MdField.file,"md-has-select":this.MdField.select,"md-autogrow":this.MdField.autogrow}}},methods:{clearInput:function(){var e=this;this.MdField.clear=!0,this.$emit("md-clear"),this.$nextTick().then((function(){e.MdField.clear=!1}))},togglePassword:function(){this.MdField.togglePassword=!this.MdField.togglePassword},onBlur:function(){this.MdField.highlighted=!1}}})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(72),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(283),s=n(0),l=!1,c=null,d=null,u=null,_=s(i.a,o["a"],l,c,d,u);_.options.__file="src/core/icons/MdClearIcon.vue",t["default"]=_.exports},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(6),i=a(r);function a(e){return e&&e.__esModule?e:{default:e}}t.default={name:"MdClearIcon",components:{MdIcon:i.default}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(1),i=s(r),a=n(279),o=s(a);function s(e){return e&&e.__esModule?e:{default:e}}t.default=new i.default({name:"MdIcon",components:{MdSvgLoader:o.default},props:{mdSrc:String}})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r={};t.default={name:"MdSVGLoader",props:{mdSrc:{type:String,required:!0}},data:function(){return{html:null,error:null}},watch:{mdSrc:function(){this.html=null,this.loadSVG()}},methods:{isSVG:function(e){return"string"===typeof e&&e.indexOf("svg")>=0},setHtml:function(e){var t=this;r[this.mdSrc].then((function(e){return t.html=e,t.$nextTick()})).then((function(){return t.$emit("md-loaded")}))},unexpectedError:function(e){this.error="Something bad happened trying to fetch "+this.mdSrc+".",e(this.error)},loadSVG:function(){var e=this;r.hasOwnProperty(this.mdSrc)?this.setHtml():r[this.mdSrc]=new Promise((function(t,n){var r=new window.XMLHttpRequest;r.open("GET",e.mdSrc,!0),r.onload=function(){var i=r.getResponseHeader("content-type");200===r.status?e.isSVG(i)?(t(r.response),e.setHtml()):(e.error="The file "+e.mdSrc+" is not a valid SVG.",n(e.error)):r.status>=400&&r.status<500?(e.error="The file "+e.mdSrc+" do not exists.",n(e.error)):e.unexpectedError(n)},r.onerror=function(){return e.unexpectedError(n)},r.onabort=function(){return e.unexpectedError(n)},r.send()}))}},mounted:function(){this.loadSVG()}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(6),i=a(r);function a(e){return e&&e.__esModule?e:{default:e}}t.default={name:"MdPasswordOffIcon",components:{MdIcon:i.default}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(6),i=a(r);function a(e){return e&&e.__esModule?e:{default:e}}t.default={name:"MdPasswordOnIcon",components:{MdIcon:i.default}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=Object.assign||function(e){for(var t=1;t=0},isModelTypeDate:function(){return"object"===r(this.value)&&this.value instanceof Date&&(0,f.default)(this.value)},localString:function(){return this.localDate&&(0,d.default)(this.localDate,this.dateFormat)},localNumber:function(){return this.localDate&&Number(this.localDate)},parsedInputDate:function(){var e=(0,_.default)(this.inputDate,this.dateFormat,new Date);return e&&(0,f.default)(e)?e:null},pattern:function(){return this.dateFormat.replace(/yyyy|MM|dd/g,(function(e){switch(e){case"yyyy":return"[0-9]{4}";case"MM":case"dd":return"[0-9]{2}"}}))}},watch:{inputDate:function(e){this.inputDateToLocalDate()},localDate:function(){this.inputDate=this.localString,this.modelType===Date&&this.$emit("input",this.localDate)},localString:function(){this.modelType===String&&this.$emit("input",this.localString)},localNumber:function(){this.modelType===Number&&this.$emit("input",this.localNumber)},value:{immediate:!0,handler:function(){this.valueDateToLocalDate()}},mdModelType:function(e){switch(e){case Date:this.$emit("input",this.localDate);break;case String:this.$emit("input",this.localString);break;case Number:this.$emit("input",this.localNumber);break}},dateFormat:function(){this.localDate&&(this.inputDate=(0,d.default)(this.localDate,this.dateFormat))}},methods:{toggleDialog:function(){!l.default||this.mdOverrideNative?(this.showDialog=!this.showDialog,this.showDialog?this.$emit("md-opened"):this.$emit("md-closed")):this.$refs.input.$el.click()},onFocus:function(){this.mdOpenOnFocus&&this.toggleDialog()},inputDateToLocalDate:function(){this.inputDate?this.parsedInputDate&&(this.localDate=this.parsedInputDate):this.localDate=null},valueDateToLocalDate:function(){if(this.isModelNull)this.localDate=null;else if(this.isModelTypeNumber)this.localDate=new Date(this.value);else if(this.isModelTypeDate)this.localDate=this.value;else if(this.isModelTypeString){var e=(0,_.default)(this.value,this.dateFormat,new Date);(0,f.default)(e)?this.localDate=(0,_.default)(this.value,this.dateFormat,new Date):o.default.util.warn("The datepicker value is not a valid date. Given value: "+this.value+", format: "+this.dateFormat)}else o.default.util.warn("The datepicker value is not a valid date. Given value: "+this.value)},onClear:function(){this.$emit("md-clear")}},created:function(){this.inputDateToLocalDate=(0,C.default)(this.inputDateToLocalDate,this.MdDebounce)}}},function(e,t,n){"use strict";t["a"]=i;var r=6e4;function i(e){var t=new Date(e.getTime()),n=t.getTimezoneOffset();t.setSeconds(0,0);var i=t.getTime()%r;return n*r+i}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t["default"]=i;var r=n(3);function i(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=Object(r["a"])(e);return!isNaN(t)}},function(e,t,n){"use strict";var r={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}};function i(e,t,n){var i;return n=n||{},i="string"===typeof r[e]?r[e]:1===t?r[e].one:r[e].other.replace("{{count}}",t),n.addSuffix?n.comparison>0?"in "+i:i+" ago":i}function a(e){return function(t){var n=t||{},r=n.width?String(n.width):e.defaultWidth,i=e.formats[r]||e.formats[e.defaultWidth];return i}}var o={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},s={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},l={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},c={date:a({formats:o,defaultWidth:"full"}),time:a({formats:s,defaultWidth:"full"}),dateTime:a({formats:l,defaultWidth:"full"})},d=c,u={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"};function _(e,t,n,r){return u[e]}function p(e){return function(t,n){var r,i=n||{},a=i.width?String(i.width):e.defaultWidth,o=i.context?String(i.context):"standalone";r="formatting"===o&&e.formattingValues?e.formattingValues[a]||e.formattingValues[e.defaultFormattingWidth]:e.values[a]||e.values[e.defaultWidth];var s=e.argumentCallback?e.argumentCallback(t):t;return r[s]}}var f={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},m={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},h={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},g={narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},E={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},S={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}};function b(e,t){var n=Number(e),r=n%100;if(r>20||r<10)switch(r%10){case 1:return n+"st";case 2:return n+"nd";case 3:return n+"rd"}return n+"th"}var v={ordinalNumber:b,era:p({values:f,defaultWidth:"wide"}),quarter:p({values:m,defaultWidth:"wide",argumentCallback:function(e){return Number(e)-1}}),month:p({values:h,defaultWidth:"wide"}),day:p({values:g,defaultWidth:"wide"}),dayPeriod:p({values:E,defaultWidth:"wide",formattingValues:S,defaultFormattingWidth:"wide"})},y=v;function T(e){return function(t,n){var r=String(t),i=n||{},a=r.match(e.matchPattern);if(!a)return null;var o=a[0],s=r.match(e.parsePattern);if(!s)return null;var l=e.valueCallback?e.valueCallback(s[0]):s[0];return l=i.valueCallback?i.valueCallback(l):l,{value:l,rest:r.slice(o.length)}}}function C(e){return function(t,n){var r=String(t),i=n||{},a=i.width,o=a&&e.matchPatterns[a]||e.matchPatterns[e.defaultMatchWidth],s=r.match(o);if(!s)return null;var l,c=s[0],d=a&&e.parsePatterns[a]||e.parsePatterns[e.defaultParseWidth];return l="[object Array]"===Object.prototype.toString.call(d)?d.findIndex((function(e){return e.test(r)})):N(d,(function(e){return e.test(r)})),l=e.valueCallback?e.valueCallback(l):l,l=i.valueCallback?i.valueCallback(l):l,{value:l,rest:r.slice(c.length)}}}function N(e,t){for(var n in e)if(e.hasOwnProperty(n)&&t(e[n]))return n}var O=/^(\d+)(th|st|nd|rd)?/i,R=/\d+/i,A={narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},w={any:[/^b/i,/^(a|c)/i]},I={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},M={any:[/1/i,/2/i,/3/i,/4/i]},x={narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},D={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},L={narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},P={narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},k={narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},F={any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},U={ordinalNumber:T({matchPattern:O,parsePattern:R,valueCallback:function(e){return parseInt(e,10)}}),era:C({matchPatterns:A,defaultMatchWidth:"wide",parsePatterns:w,defaultParseWidth:"any"}),quarter:C({matchPatterns:I,defaultMatchWidth:"wide",parsePatterns:M,defaultParseWidth:"any",valueCallback:function(e){return e+1}}),month:C({matchPatterns:x,defaultMatchWidth:"wide",parsePatterns:D,defaultParseWidth:"any"}),day:C({matchPatterns:L,defaultMatchWidth:"wide",parsePatterns:P,defaultParseWidth:"any"}),dayPeriod:C({matchPatterns:k,defaultMatchWidth:"any",parsePatterns:F,defaultParseWidth:"any"})},B=U,G={formatDistance:i,formatLong:d,formatRelative:_,localize:y,match:B,options:{weekStartsOn:0,firstWeekContainsDate:1}};t["a"]=G},function(e,t,n){"use strict";var r=n(3),i=n(19),a=n(86);function o(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=Object(a["a"])(e),n=new Date(0);n.setUTCFullYear(t,0,4),n.setUTCHours(0,0,0,0);var r=Object(i["a"])(n);return r}t["a"]=l;var s=6048e5;function l(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=Object(r["a"])(e),n=Object(i["a"])(t).getTime()-o(t).getTime();return Math.round(n/s)+1}},function(e,t,n){"use strict";t["a"]=a;var r=n(3),i=n(19);function a(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=Object(r["a"])(e),n=t.getUTCFullYear(),a=new Date(0);a.setUTCFullYear(n+1,0,4),a.setUTCHours(0,0,0,0);var o=Object(i["a"])(a),s=new Date(0);s.setUTCFullYear(n,0,4),s.setUTCHours(0,0,0,0);var l=Object(i["a"])(s);return t.getTime()>=o.getTime()?n+1:t.getTime()>=l.getTime()?n:n-1}},function(e,t,n){"use strict";var r=n(3),i=n(20),a=n(5),o=n(25);function s(e,t){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var n=t||{},r=n.locale,s=r&&r.options&&r.options.firstWeekContainsDate,l=null==s?1:Object(a["a"])(s),c=null==n.firstWeekContainsDate?l:Object(a["a"])(n.firstWeekContainsDate),d=Object(o["a"])(e,t),u=new Date(0);u.setUTCFullYear(d,0,c),u.setUTCHours(0,0,0,0);var _=Object(i["a"])(u,t);return _}t["a"]=c;var l=6048e5;function c(e,t){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var n=Object(r["a"])(e),a=Object(i["a"])(n,t).getTime()-s(n,t).getTime();return Math.round(a/l)+1}},function(e,t,n){"use strict";var r=n(5),i=n(3);function a(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=Object(i["a"])(e).getTime(),a=Object(r["a"])(t);return new Date(n+a)}function o(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=Object(r["a"])(t);return a(e,-n)}t["a"]=o},function(e,t,n){"use strict";t["a"]=i,t["b"]=a;var r=["D","DD","YY","YYYY"];function i(e){return-1!==r.indexOf(e)}function a(e){throw new RangeError("`options.awareOfUnicodeTokens` must be set to `true` to use `"+e+"` token; see: https://git.io/fxCyr")}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(21),i=a(r);function a(e){return e&&e.__esModule?e:{default:e}}t.default={name:"MdOverlay",components:{MdPortal:i.default},props:{mdActive:Boolean,mdAttachToParent:Boolean,mdFixed:Boolean},computed:{overlayClasses:function(){return{"md-fixed":this.mdFixed}}}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(92),i=B(r),a=n(305),o=B(a),s=n(306),l=B(s),c=n(307),d=B(c),u=n(308),_=B(u),p=n(27),f=B(p),m=n(309),h=B(m),g=n(310),E=B(g),S=n(311),b=B(S),v=n(312),y=B(v),T=n(313),C=B(T),N=n(314),O=B(N),R=n(315),A=B(R),w=n(1),I=B(w),M=n(28),x=B(M),D=n(318),L=B(D),P=n(320),k=B(P),F=n(12),U=B(F);function B(e){return e&&e.__esModule?e:{default:e}}var G=7,Y=function(e,t){return!(!e||!e.querySelector)&&e.querySelectorAll(t)};t.default=new I.default({name:"MdDatepickerDialog",components:{MdPopover:x.default,MdArrowRightIcon:L.default,MdArrowLeftIcon:k.default,MdDialog:U.default},props:{mdDate:Date,mdDisabledDates:[Array,Function],mdImmediately:{type:Boolean,default:!1}},data:function(){return{currentDate:null,selectedDate:null,showDialog:!1,monthAction:null,currentView:"day",contentStyles:{},availableYears:null}},computed:{firstDayOfAWeek:function(){var e=Number(this.locale.firstDayOfAWeek);return Number.isNaN(e)||!Number.isFinite(e)?0:(e=Math.floor(e)%G,e+=e<0?G:0,e)},locale:function(){return this.$material.locale},popperSettings:function(){return{placement:"bottom-start",modifiers:{keepTogether:{enabled:!0},flip:{enabled:!1}}}},calendarClasses:function(){return"next"===this.monthAction?"md-next":"md-previous"},firstDayOfMonth:function(){return(0,o.default)(this.currentDate).getDay()},prefixEmptyDays:function(){var e=this.firstDayOfMonth-this.firstDayOfAWeek;return e+=e<0?G:0,e},daysInMonth:function(){return(0,f.default)(this.currentDate)},currentDay:function(){return this.selectedDate?(0,d.default)(this.selectedDate):(0,d.default)(this.currentDate)},currentMonth:function(){return(0,h.default)(this.currentDate)},currentMonthName:function(){return this.locale.months[this.currentMonth]},currentYear:function(){return(0,E.default)(this.currentDate)},selectedYear:function(){return this.selectedDate?(0,E.default)(this.selectedDate):(0,E.default)(this.currentDate)},shortDayName:function(){return this.selectedDate?this.locale.shortDays[(0,_.default)(this.selectedDate)]:this.locale.shortDays[(0,_.default)(this.currentDate)]},shortMonthName:function(){return this.selectedDate?this.locale.shortMonths[(0,h.default)(this.selectedDate)]:this.locale.shortMonths[(0,h.default)(this.currentDate)]}},watch:{mdDate:function(){this.currentDate=this.mdDate||new Date,this.selectedDate=this.mdDate},currentDate:function(e,t){var n=this;this.$nextTick().then((function(){t&&n.setContentStyles()}))},currentView:function(){var e=this;this.$nextTick().then((function(){if("year"===e.currentView){var t=Y(e.$el,".md-datepicker-year-button.md-datepicker-selected");t.length&&t[0].scrollIntoView({behavior:"instant",block:"center",inline:"center"})}}))}},methods:{setContentStyles:function(){var e=Y(this.$el,".md-datepicker-month");if(e.length){var t=e[e.length-1];this.contentStyles={height:t.offsetHeight+10+"px"}}},setAvailableYears:function(){var e=this.locale,t=e.startYear,n=e.endYear,r=t,i=[];while(r<=n)i.push(r++);this.availableYears=i},handleDisabledDateByArray:function(e){return this.mdDisabledDates.some((function(t){return(0,y.default)(t,e)}))},isDisabled:function(e){if(this.mdDisabledDates){var t=(0,C.default)(this.currentDate,e);if(Array.isArray(this.mdDisabledDates))return this.handleDisabledDateByArray(t);if("function"===typeof this.mdDisabledDates)return this.mdDisabledDates(t)}},isSelectedDay:function(e){return(0,b.default)(this.selectedDate,(0,C.default)(this.currentDate,e))},isToday:function(e){return(0,y.default)(new Date,(0,C.default)(this.currentDate,e))},previousMonth:function(){this.monthAction="previous",this.currentDate=(0,l.default)(this.currentDate,1)},nextMonth:function(){this.monthAction="next",this.currentDate=(0,i.default)(this.currentDate,1)},switchMonth:function(e){this.currentDate=(0,O.default)(this.currentDate,e),this.currentView="day"},switchYear:function(e){this.currentDate=(0,A.default)(this.currentDate,e),this.currentView="month"},selectDate:function(e){this.currentDate=(0,C.default)(this.currentDate,e),this.selectedDate=this.currentDate,this.mdImmediately&&(this.$emit("update:mdDate",this.selectedDate),this.closeDialog())},closeDialog:function(){this.$emit("md-closed")},onClose:function(){this.closeDialog()},onCancel:function(){this.closeDialog()},onConfirm:function(){this.$emit("update:mdDate",this.selectedDate),this.closeDialog()},resetDate:function(){this.currentDate=this.mdDate||new Date,this.selectedDate=this.mdDate,this.currentView="day"}},created:function(){this.setAvailableYears(),this.resetDate()}})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t["default"]=o;var r=n(5),i=n(3),a=n(27);function o(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=Object(i["a"])(e),o=Object(r["a"])(t),s=n.getMonth()+o,l=new Date(0);l.setFullYear(n.getFullYear(),s,1),l.setHours(0,0,0,0);var c=Object(a["default"])(l);return n.setMonth(s,Math.min(c,n.getDate())),n}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=Object.assign||function(e){for(var t=1;t1)throw new Error;return e[0]}catch(t){i.default.util.warn("MdFocusTrap can only render one, and exactly one child component.",this)}return null}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(6),i=a(r);function a(e){return e&&e.__esModule?e:{default:e}}t.default={name:"MdDateIcon",components:{MdIcon:i.default}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={name:"MdDialogTitle"}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(1),i=a(r);function a(e){return e&&e.__esModule?e:{default:e}}t.default=new i.default({name:"MdDialogContent"})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={name:"MdDialogActions"}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={name:"MdDialogAlert",props:{mdTitle:String,mdContent:String,mdConfirmText:{type:String,default:"Ok"}}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={name:"MdDialogConfirm",props:{mdTitle:String,mdContent:String,mdConfirmText:{type:String,default:"Ok"},mdCancelText:{type:String,default:"Cancel"}},methods:{onCancel:function(){this.$emit("md-cancel"),this.$emit("update:mdActive",!1)},onConfirm:function(){this.$emit("md-confirm"),this.$emit("update:mdActive",!1)}}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={name:"MdDialogPrompt",props:{value:{},mdTitle:String,mdInputName:String,mdInputId:String,mdInputMaxlength:[String,Number],mdInputPlaceholder:[String,Number],mdContent:String,mdConfirmText:{type:String,default:"Ok"},mdCancelText:{type:String,default:"Cancel"}},data:function(){return{inputValue:null}},watch:{value:function(){this.inputValue=this.value}},methods:{onCancel:function(){this.$emit("md-cancel"),this.$emit("update:mdActive",!1)},onConfirm:function(){this.$emit("input",this.inputValue),this.$emit("md-confirm",this.inputValue),this.$emit("update:mdActive",!1)},setInputFocus:function(){var e=this;window.setTimeout((function(){e.$refs.input.$el.focus()}),50)}},created:function(){this.inputValue=this.value}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(1),i=a(r);function a(e){return e&&e.__esModule?e:{default:e}}t.default=new i.default({name:"MdDivider",computed:{insideList:function(){return"md-list"===this.$parent.$options._componentTag}}})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=Object.assign||function(e){for(var t=1;t=this.mdSwipeThreshold&&Math.abs(i)<=this.mdSwipeRestraint?this.swiped=r<0?"left":"right":Math.abs(i)>=this.mdSwipeThreshold&&Math.abs(r)<=this.mdSwipeRestraint&&(this.swiped=i<0?"up":"down"))}},handleTouchEnd:function(){this.touchPosition={startX:0,startY:0},this.swiped=null,this.swipeStart=!1}},mounted:function(){this.mdSwipeable&&(this.getSwipeElement.addEventListener("touchstart",this.handleTouchStart,!1),this.getSwipeElement.addEventListener("touchend",this.handleTouchEnd,!1),this.getSwipeElement.addEventListener("touchmove",this.handleTouchMove,!1))},beforeDestroy:function(){this.mdSwipeable&&(this.getSwipeElement.removeEventListener("touchstart",this.handleTouchStart,!1),this.getSwipeElement.removeEventListener("touchend",this.handleTouchEnd,!1),this.getSwipeElement.removeEventListener("touchmove",this.handleTouchMove,!1))}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(109),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(360),s=!1;function l(e){s||n(359)}var c=n(0),d=!1,u=l,_=null,p=null,f=c(i.a,o["a"],d,u,_,p);f.options.__file="src/components/MdEmptyState/MdEmptyState.vue",t["default"]=f.exports},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(1),i=c(r),a=n(110),o=c(a),s=n(22),l=c(s);function c(e){return e&&e.__esModule?e:{default:e}}t.default=new i.default({name:"MdEmptyState",mixins:[l.default],props:o.default,computed:{emptyStateClasses:function(){return{"md-rounded":this.mdRounded}},emptyStateStyles:function(){if(this.mdRounded){var e=this.mdSize+"px";return{width:e,height:e}}}}})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={mdRounded:Boolean,mdSize:{type:Number,default:420},mdIcon:String,mdLabel:String,mdDescription:String}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(2),i=s(r),a=n(6),o=s(a);function s(e){return e&&e.__esModule?e:{default:e}}t.default=function(e){(0,i.default)(e),e.component(o.default.name,o.default)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=Object.assign||function(e){for(var t=1;te.offsetHeight},scrollToSelectedOption:function(e,t){var n=e.offsetTop,r=e.offsetHeight,i=t.offsetHeight;t.scrollTop=n-(i-r)/2},setOffsets:function(e){if(!this.$isServer){var t=this.$refs.menu.$refs.container;if(t){var n=e||t.querySelector(".md-selected");n?(this.scrollToSelectedOption(n,t),this.offset.y=g.y-n.offsetTop+t.scrollTop+8,this.menuStyles={"transform-origin":"0 "+Math.abs(this.offset.y)+"px"}):(this.offset.y=g.y+1,this.menuStyles={})}}},onMenuEnter:function(){this.didMount&&(this.setOffsets(),this.MdField.focused=!0,this.$emit("md-opened"))},applyHighlight:function(){this.MdField.focused=!1,this.MdField.highlighted=!0,this.$refs.input.$el.focus()},onClose:function(){this.$emit("md-closed"),this.didMount&&this.applyHighlight()},onFocus:function(){this.didMount&&this.applyHighlight()},removeHighlight:function(){this.MdField.highlighted=!1},openSelect:function(){this.disabled||(this.showSelect=!0)},arrayAccessorRemove:function(e,t){var n=e.slice(0,t),r=e.slice(t+1,e.length);return n.concat(r)},toggleArrayValue:function(e){var t=this.localValue.indexOf(e),n=t>-1;this.localValue=n?this.arrayAccessorRemove(this.localValue,t):this.localValue.concat([e])},setValue:function(e){this.model=e,this.setFieldValue(),this.showSelect=!1},setContent:function(e){this.MdSelect.label=e},setContentByValue:function(){var e=this.MdSelect.items[this.localValue];e?this.setContent(e):this.setContent("")},setMultipleValue:function(e){var t=e;this.toggleArrayValue(t),this.setFieldValue()},setMultipleContentByValue:function(){var e=this;this.localValue||this.initialLocalValueByDefault();var t=[];this.localValue.forEach((function(n){var r=e.MdSelect.items[n];r&&t.push(r)})),this.setContent(t.join(", "))},setFieldContent:function(){this.multiple?this.setMultipleContentByValue():this.setContentByValue()},isLocalValueSet:function(){return void 0!==this.localValue&&null!==this.localValue},setLocalValueIfMultiple:function(){this.isLocalValueSet()?this.localValue=[this.localValue]:this.localValue=[]},setLocalValueIfNotMultiple:function(){this.localValue.length>0?this.localValue=this.localValue[0]:this.localValue=null},initialLocalValueByDefault:function(){var e=Array.isArray(this.localValue);this.multiple&&!e?this.setLocalValueIfMultiple():!this.multiple&&e&&this.setLocalValueIfNotMultiple()},emitSelected:function(e){this.$emit("md-selected",e)}},mounted:function(){var e=this;this.showSelect=!1,this.setFieldContent(),this.$nextTick().then((function(){e.didMount=!0}))},updated:function(){this.setFieldContent()}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(6),i=a(r);function a(e){return e&&e.__esModule?e:{default:e}}t.default={name:"MdDropDownIcon",components:{MdIcon:i.default}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(115),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(368),s=!1;function l(e){s||n(367)}var c=n(0),d=!1,u=l,_=null,p=null,f=c(i.a,o["a"],d,u,_,p);f.options.__file="src/components/MdMenu/MdMenu.vue",t["default"]=f.exports},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=Object.assign||function(e){for(var t=1;t=0&&/iP/i.test(navigator.userAgent)&&(e.style.cursor="pointer"),e.addEventListener(t,n,r||!1),{destroy:i}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(120),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(371),s=!1;function l(e){s||n(370)}var c=n(0),d=!1,u=l,_=null,p=null,f=c(i.a,o["a"],d,u,_,p);f.options.__file="src/components/MdList/MdList.vue",t["default"]=f.exports},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(1),i=a(r);function a(e){return e&&e.__esModule?e:{default:e}}t.default=new i.default({name:"MdList",data:function(){return{MdList:{expandable:[],expandATab:this.expandATab,pushExpandable:this.pushExpandable,removeExpandable:this.removeExpandable}}},provide:function(){return{MdList:this.MdList}},props:{mdExpandSingle:{default:!1}},methods:{expandATab:function(e){if(this.mdExpandSingle&&e){var t=this.MdList.expandable.filter((function(t){return t!==e}));t.forEach((function(e){return e.close()}))}},pushExpandable:function(e){var t=this.MdList.expandable;t.find((function(t){return t===e}))||(this.MdList.expandable=t.concat([e]))},removeExpandable:function(e){var t=this.MdList.expandable;t.find((function(t){return t===e}))&&(this.MdList.expandable=t.filter((function(t){return t!==e})))}}})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(7),i=a(r);function a(e){return e&&e.__esModule?e:{default:e}}t.default={name:"MdOption",props:{value:[String,Number,Boolean],disabled:Boolean},inject:{MdSelect:{},MdOptgroup:{default:{}}},data:function(){return{uniqueId:"md-option-"+(0,i.default)(),isSelected:!1,isChecked:!1}},computed:{selectValue:function(){return this.MdSelect.modelValue},isMultiple:function(){return this.MdSelect.multiple},isDisabled:function(){return this.MdOptgroup.disabled||this.disabled},key:function(){var e=this.value||0===this.value||!1===this.value||""===this.value;return e?this.value:this.uniqueId},inputLabel:function(){return this.MdSelect.label},optionClasses:function(){return{"md-selected":this.isSelected||this.isChecked}}},watch:{selectValue:function(){this.setIsSelected()},isChecked:function(e){e!==this.isSelected&&this.setSelection()},isSelected:function(e){this.isChecked=e}},methods:{getTextContent:function(){if(this.$el)return this.$el.textContent.trim();var e=this.$slots.default;return e?e[0].text.trim():""},setIsSelected:function(){this.isMultiple?void 0!==this.selectValue?this.isSelected=this.selectValue.includes(this.value):this.isSelected=!1:this.isSelected=this.selectValue===this.value},setSingleSelection:function(){this.MdSelect.setValue(this.value)},setMultipleSelection:function(){this.MdSelect.setMultipleValue(this.value)},setSelection:function(){this.isDisabled||(this.isMultiple?this.setMultipleSelection():this.setSingleSelection())},setItem:function(){this.$set(this.MdSelect.items,this.key,this.getTextContent())}},updated:function(){this.setItem()},created:function(){this.setItem(),this.setIsSelected()}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={name:"MdOptgroup",props:{label:String,disabled:Boolean},provide:function(){return{MdOptgroup:{disabled:this.disabled}}}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(7),i=c(r),a=n(383),o=c(a),s=n(18),l=c(s);function c(e){return e&&e.__esModule?e:{default:e}}function d(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t1?this.getMultipleName(e):1===e.length?e[0].name:null:t.value.split("\\").pop()},openPicker:function(){this.onFocus(),this.$refs.inputFile.click()},onChange:function(e){this.onFileSelected(e)},onFileSelected:function(e){var t=e.target,n=e.dataTransfer,r=t.files||n.files;this.model=this.getFileName(r,t),this.$emit("md-change",r||t.value)}},created:function(){this.MdField.file=!0},beforeDestroy:function(){this.MdField.file=!1}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(6),i=a(r);function a(e){return e&&e.__esModule?e:{default:e}}t.default={name:"MdFileIcon",components:{MdIcon:i.default}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=Object.assign||function(e){for(var t=1;t=i&&(e.style.height=r+t+"px",i'+t+""}function c(e,t){if(0===t.length)return e;var n=e.toLowerCase().indexOf(t[0].toLowerCase());if(-1===n)return"";for(var r=0,i=1;i1||t[0].tag)throw new Error;var n=u(t[0],this.mdTerm,this.mdFuzzySearch);return e("div",{staticClass:"md-highlight-text",class:this.$mdActiveTheme,domProps:{innerHTML:n}})}catch(r){i.default.util.warn("MdHighlightText can only render text nodes.",this)}return null}})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(1),i=a(r);function a(e){return e&&e.__esModule?e:{default:e}}t.default=new i.default({name:"MdImage",props:{mdSrc:String}})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(129),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=!1;function s(e){o||n(398)}var l=n(0),c=null,d=!1,u=s,_=null,p=null,f=l(i.a,c,d,u,_,p);f.options.__file="src/components/MdList/MdListItem/MdListItem.vue",t["default"]=f.exports},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=Object.assign||function(e){for(var t=1;tt&&this.setStepperAsDone(this.MdSteppers.activeStep)},setActiveStep:function(e){if(this.mdLinear&&!this.isPreviousStepperDone(e))return!1;e===this.MdSteppers.activeStep||!this.isStepperEditable(e)&&this.isStepperDone(e)||(this.setPreviousStepperAsDone(e),this.MdSteppers.activeStep=e,this.$emit("md-changed",e),this.$emit("update:mdActiveStep",e),this.MdSteppers.items[e].error=null)},setActiveButtonEl:function(){this.activeButtonEl=this.$el.querySelector(".md-stepper-header.md-button.md-active")},setActiveStepByIndex:function(e){var t=this.getItemsAndKeys(),n=t.keys;this.hasActiveStep()||(this.MdSteppers.activeStep=n[e])},setupObservers:function(){var e=this.$el.querySelector(".md-steppers-wrapper");"ResizeObserver"in window?(this.resizeObserver=new window.ResizeObserver(this.calculateStepperPos),this.resizeObserver.observe(this.$el)):window.addEventListener("resize",this.calculateStepperPos),e&&(this.resizeObserver=(0,o.default)(this.$el.querySelector(".md-steppers-wrapper"),{childList:!0,characterData:!0,subtree:!0},this.calculateStepperPos))},calculateStepperPos:function(){if(!this.mdVertical){var e=this.$el.querySelector(".md-stepper:nth-child("+(this.activeStepIndex+1)+")");this.contentStyles={height:e.offsetHeight+"px"}}},onActiveStepIndex:function(){var e=this.getItemsAndKeys(),t=(e.items,e.keys);if(this.hasActiveStep()||this.activeStepIndex){this.MdSteppers.activeStep=t[this.activeStepIndex];for(var n=0;n0}))},setHeaderScroll:function(e){var t=this;(0,a.default)((function(){t.MdTable.contentEl.scrollLeft=e.target.scrollLeft}))},getContentEl:function(){return this.$el.querySelector(".md-table-content")},setContentEl:function(){this.MdTable.contentEl=this.getContentEl()},setHeaderPadding:function(){this.setContentEl();var e=this.MdTable.contentEl,t=e.childNodes[0];this.fixedHeaderPadding=e.offsetWidth-t.offsetWidth},getModel:function(){return this.value},getModelItem:function(e){return this.value[e]},manageItemSelection:function(e){this.MdTable.selectedItems.includes(e)?this.MdTable.selectedItems=this.MdTable.selectedItems.filter((function(t){return t!==e})):this.MdTable.selectedItems=this.MdTable.selectedItems.concat([e])},sortTable:function(){Array.isArray(this.value)&&this.$emit("input",this.mdSortFn(this.value))},select:function(e){this.$emit("update:mdSelectedValue",e),this.$emit("md-selected",e)},syncSelectedValue:function(){var e=this;this.$nextTick().then((function(){"single"===e.MdTable.selectingMode?e.MdTable.singleSelection=e.mdSelectedValue:"multiple"===e.MdTable.selectingMode&&(e.MdTable.selectedItems=e.mdSelectedValue||[])}))},setWidth:function(){this.mdFixedHeader&&(this.fixedHeaderTableWidth=this.$refs.contentTable.offsetWidth)}},created:function(){this.mdSort&&this.sortTable(),this.syncSelectedValue()},mounted:function(){this.setContentEl(),this.$nextTick().then(this.setWidth),this.mdFixedHeader&&(this.setHeaderPadding(),this.windowResizeObserver=new T.default(window,this.setWidth))},beforeDestroy:function(){this.windowResizeObserver&&this.windowResizeObserver.destroy()}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=Object.assign||function(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:this.mdItem;"multiple"===this.mdSelectable&&(this.MdTable.selectable=this.MdTable.selectable.filter((function(t){return t!==e})))}},created:function(){var e=this;this.$nextTick((function(){e.addSelectableItem(),e.MdTable.selectingMode=e.mdSelectable}))},beforeDestroy:function(){this.removeSelectableItem()}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(168),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(488),s=!1;function l(e){s||n(487)}var c=n(0),d=!1,u=l,_=null,p=null,f=c(i.a,o["a"],d,u,_,p);f.options.__file="src/components/MdTable/MdTableCellSelection.vue",t["default"]=f.exports},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={name:"MdTableCellSelection",props:{value:Boolean,mdRowId:[Number,String],mdSelectable:Boolean,mdDisabled:Boolean},inject:["MdTable"],data:function(){return{isSelected:!1}},watch:{value:{immediate:!0,handler:function(e){this.isSelected=e}}},methods:{onChange:function(){this.$emit("input",this.isSelected)}}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={name:"MdTableRowGhost",props:{mdIndex:[String,Number],mdId:[String,Number],mdItem:[Array,Object]},render:function(){return this.$slots.default[0].componentOptions.propsData.mdIndex=this.mdIndex,this.$slots.default[0].componentOptions.propsData.mdId=this.mdId,this.$slots.default[0].componentOptions.propsData.mdItem=this.mdItem,this.$slots.default[0]}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(171),i=a(r);function a(e){return e&&e.__esModule?e:{default:e}}t.default={name:"MdTableToolbar",components:{MdToolbar:i.default},inject:["MdTable"]}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(172),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(495),s=!1;function l(e){s||n(494)}var c=n(0),d=!1,u=l,_=null,p=null,f=c(i.a,o["a"],d,u,_,p);f.options.__file="src/components/MdToolbar/MdToolbar.vue",t["default"]=f.exports},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(1),i=a(r);function a(e){return e&&e.__esModule?e:{default:e}}t.default=new i.default({name:"MdToolbar",props:{mdElevation:{type:[String,Number],default:4}}})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(108),i=(o(r),n(110)),a=o(i);function o(e){return e&&e.__esModule?e:{default:e}}t.default={name:"MdTableEmptyState",props:a.default,inject:["MdTable"]}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={name:"MdTableCell",props:{mdId:[String,Number],mdLabel:String,mdNumeric:Boolean,mdTooltip:String,mdSortBy:String},inject:["MdTable"],data:function(){return{index:null,parentNode:null}},computed:{cellClasses:function(){return{"md-numeric":this.mdNumeric}}},watch:{mdSortBy:function(){this.setCellData()},mdNumeric:function(){this.setCellData()},mdLabel:function(){this.setCellData()},mdTooltip:function(){this.setCellData()}},methods:{setCellData:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this;this.$set(this.MdTable.items,e.index,{id:e.mdId,label:e.mdLabel,numeric:e.mdNumeric,tooltip:e.mdTooltip,sortBy:e.mdSortBy})},updateAllCellData:function(){var e=this;this.MdTable.items={};var t=Array.from(this.parentNode.childNodes).filter((function(e){var t=e.tagName,n=e.classList,r=n&&n.contains("md-table-cell-selection"),i=t&&"td"===t.toLowerCase();return i&&!r}));t.forEach((function(t,n){var r=t.__vue__;r.index=n,e.setCellData(r)}))}},mounted:function(){this.parentNode=this.$el.parentNode,this.updateAllCellData()},destroyed:function(){var e=null!==this.$el.parentNode;if(e)return!1;this.updateAllCellData()}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={name:"MdTablePagination",inject:["MdTable"],props:{mdPageSize:{type:[String,Number],default:10},mdPageOptions:{type:Array,default:function(){return[10,25,50,100]}},mdPage:{type:Number,default:1},mdTotal:{type:[String,Number],default:"Many"},mdLabel:{type:String,default:"Rows per page:"},mdSeparator:{type:String,default:"of"}},data:function(){return{currentPageSize:0}},computed:{currentItemCount:function(){return(this.mdPage-1)*this.mdPageSize+1},currentPageCount:function(){return this.mdPage*this.mdPageSize}},watch:{mdPageSize:{immediate:!0,handler:function(e){this.currentPageSize=this.pageSize}}},methods:{setPageSize:function(){this.$emit("update:mdPageSize",this.currentPageSize)},goToPrevious:function(){},goToNext:function(){}},created:function(){this.currentPageSize=this.mdPageSize}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=Object.assign||function(e){for(var t=1;t0&&"left"===e&&this.setSwipeActiveTabByIndex(this.activeTabIndex-1)}},methods:{hasActiveTab:function(){return this.activeTab||this.mdActiveTab},getItemsAndKeys:function(){var e=this.MdTabs.items;return{items:e,keys:Object.keys(e)}},setActiveTab:function(e){this.mdSyncRoute||(this.activeTab=e)},setActiveButtonEl:function(){this.activeButtonEl=this.$refs.navigation.querySelector(".md-tab-nav-button.md-active")},setSwipeActiveTabByIndex:function(e){var t=this.getItemsAndKeys(),n=t.keys;n&&(this.activeTab=n[e])},setActiveTabByIndex:function(e){var t=this.getItemsAndKeys(),n=t.keys;this.hasActiveTab()||(this.activeTab=n[e])},setHasContent:function(){var e=this.getItemsAndKeys(),t=e.items,n=e.keys;this.hasContent=n.some((function(e){return t[e].hasContent}))},setIndicatorStyles:function(){var e=this;(0,a.default)((function(){e.$nextTick().then((function(){if(e.activeButtonEl&&e.$refs.indicator){var t=e.activeButtonEl.offsetWidth,n=e.activeButtonEl.offsetLeft,r=e.$refs.indicator.offsetLeft;e.indicatorClass=r1)for(var n=1;nn)return!1;if(r===n)return e===t;e:for(var i=0,a=0;i-1:e.model},on:{focus:e.onFocus,blur:e.onBlur,change:function(t){var n=e.model,r=t.target,i=!!r.checked;if(Array.isArray(n)){var a=null,o=e._i(n,a);r.checked?o<0&&(e.model=n.concat([a])):o>-1&&(e.model=n.slice(0,o).concat(n.slice(o+1)))}else e.model=i}}},"input",e.attributes,!1),e.listeners)):"radio"===e.attributes.type?n("input",e._g(e._b({directives:[{name:"model",rawName:"v-model",value:e.model,expression:"model"}],staticClass:"md-input",attrs:{type:"radio"},domProps:{checked:e._q(e.model,null)},on:{focus:e.onFocus,blur:e.onBlur,change:function(t){e.model=null}}},"input",e.attributes,!1),e.listeners)):n("input",e._g(e._b({directives:[{name:"model",rawName:"v-model",value:e.model,expression:"model"}],staticClass:"md-input",attrs:{type:e.attributes.type},domProps:{value:e.model},on:{focus:e.onFocus,blur:e.onBlur,input:function(t){t.target.composing||(e.model=t.target.value)}}},"input",e.attributes,!1),e.listeners))},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("md-field",{staticClass:"md-chips",class:[e.$mdActiveTheme,e.chipsClasses]},[e._t("default"),e._v(" "),e._l(e.value,(function(t,r){return n("md-chip",{key:t,attrs:{"md-deletable":!e.mdStatic,"md-clickable":!e.mdStatic,"md-duplicated":e.duplicatedChip===t},on:{keydown:function(n){return!n.type.indexOf("key")&&e._k(n.keyCode,"enter",13,n.key,"Enter")?null:e.$emit("md-click",t,r)},"md-delete":function(n){return n.stopPropagation(),e.removeChip(t)}},nativeOn:{click:function(n){return e.$emit("md-click",t,r)}}},[e.$scopedSlots["md-chip"]?e._t("md-chip",[e._v(e._s(t))],{chip:t}):[e._v(e._s(t))]],2)})),e._v(" "),!e.mdStatic&&e.modelRespectLimit?n("md-input",{ref:"input",attrs:{type:e.mdInputType,id:e.id,placeholder:e.mdPlaceholder},on:{input:e.handleInput,keydown:[function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"enter",13,t.key,"Enter")?null:e.insertChip(t)},function(t){return t.type.indexOf("key")||8===t.keyCode?e.handleBackRemove(t):null}],focusout:e.handleFocusOut},model:{value:e.inputValue,callback:function(t){e.inputValue="string"===typeof t?t.trim():t},expression:"inputValue"}}):e._e()],2)},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(78),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(293),s=!1;function l(e){s||n(292)}var c=n(0),d=!1,u=l,_=null,p=null,f=c(i.a,o["a"],d,u,_,p);f.options.__file="src/components/MdChips/MdChip.vue",t["default"]=f.exports},function(e,t){},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("transition",{attrs:{name:"md-chip",appear:""}},[n("div",e._g({staticClass:"md-chip",class:[e.$mdActiveTheme,e.chipClasses],attrs:{tabindex:"0"}},e.$listeners),[e.mdClickable||!e.mdRipple?n("md-ripple",{attrs:{"md-disabled":e.mdDisabled}},[e._t("default")],2):e._t("default"),e._v(" "),n("transition",{attrs:{name:"md-input-action",appear:""}},[e.mdDeletable?n("md-button",{staticClass:"md-icon-button md-dense md-input-action md-clear",attrs:{tabindex:"-1"},on:{click:function(t){return e.$emit("md-delete",t)}}},[n("md-clear-icon")],1):e._e()],1)],2)])},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(2),i=s(r),a=n(79),o=s(a);function s(e){return e&&e.__esModule?e:{default:e}}t.default=function(e){(0,i.default)(e),e.component(o.default.name,o.default)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(2),i=s(r),a=n(296),o=s(a);function s(e){return e&&e.__esModule?e:{default:e}}t.default=function(e){(0,i.default)(e),e.component(o.default.name,o.default)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(81),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(328),s=!1;function l(e){s||n(297)}var c=n(0),d=!1,u=l,_=null,p=null,f=c(i.a,o["a"],d,u,_,p);f.options.__file="src/components/MdDatepicker/MdDatepicker.vue",t["default"]=f.exports},function(e,t){},function(e,t,n){"use strict";e.exports="undefined"!==typeof navigator&&/^(?!.*Seamonkey)(?=.*Firefox).*/i.test(navigator.userAgent)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(5),i=n(82),a=n(3),o=n(83),s=n(84);function l(e,t){var n=e<0?"-":"",r=Math.abs(e).toString();while(r.length0?n:1-n;return l("yy"===t?r%100:r,t.length)},M:function(e,t){var n=e.getUTCMonth();return"M"===t?String(n+1):l(n+1,2)},d:function(e,t){return l(e.getUTCDate(),t.length)},a:function(e,t){var n=e.getUTCHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":case"aaa":return n.toUpperCase();case"aaaaa":return n[0];case"aaaa":default:return"am"===n?"a.m.":"p.m."}},h:function(e,t){return l(e.getUTCHours()%12||12,t.length)},H:function(e,t){return l(e.getUTCHours(),t.length)},m:function(e,t){return l(e.getUTCMinutes(),t.length)},s:function(e,t){return l(e.getUTCSeconds(),t.length)}},d=c,u=864e5;function _(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=Object(a["a"])(e),n=t.getTime();t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0);var r=t.getTime(),i=n-r;return Math.floor(i/u)+1}var p=n(85),f=n(86),m=n(87),h=n(25),g={am:"am",pm:"pm",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},E={G:function(e,t,n){var r=e.getUTCFullYear()>0?1:0;switch(t){case"G":case"GG":case"GGG":return n.era(r,{width:"abbreviated"});case"GGGGG":return n.era(r,{width:"narrow"});case"GGGG":default:return n.era(r,{width:"wide"})}},y:function(e,t,n){if("yo"===t){var r=e.getUTCFullYear(),i=r>0?r:1-r;return n.ordinalNumber(i,{unit:"year"})}return d.y(e,t)},Y:function(e,t,n,r){var i=Object(h["a"])(e,r),a=i>0?i:1-i;if("YY"===t){var o=a%100;return l(o,2)}return"Yo"===t?n.ordinalNumber(a,{unit:"year"}):l(a,t.length)},R:function(e,t){var n=Object(f["a"])(e);return l(n,t.length)},u:function(e,t){var n=e.getUTCFullYear();return l(n,t.length)},Q:function(e,t,n){var r=Math.ceil((e.getUTCMonth()+1)/3);switch(t){case"Q":return String(r);case"QQ":return l(r,2);case"Qo":return n.ordinalNumber(r,{unit:"quarter"});case"QQQ":return n.quarter(r,{width:"abbreviated",context:"formatting"});case"QQQQQ":return n.quarter(r,{width:"narrow",context:"formatting"});case"QQQQ":default:return n.quarter(r,{width:"wide",context:"formatting"})}},q:function(e,t,n){var r=Math.ceil((e.getUTCMonth()+1)/3);switch(t){case"q":return String(r);case"qq":return l(r,2);case"qo":return n.ordinalNumber(r,{unit:"quarter"});case"qqq":return n.quarter(r,{width:"abbreviated",context:"standalone"});case"qqqqq":return n.quarter(r,{width:"narrow",context:"standalone"});case"qqqq":default:return n.quarter(r,{width:"wide",context:"standalone"})}},M:function(e,t,n){var r=e.getUTCMonth();switch(t){case"M":case"MM":return d.M(e,t);case"Mo":return n.ordinalNumber(r+1,{unit:"month"});case"MMM":return n.month(r,{width:"abbreviated",context:"formatting"});case"MMMMM":return n.month(r,{width:"narrow",context:"formatting"});case"MMMM":default:return n.month(r,{width:"wide",context:"formatting"})}},L:function(e,t,n){var r=e.getUTCMonth();switch(t){case"L":return String(r+1);case"LL":return l(r+1,2);case"Lo":return n.ordinalNumber(r+1,{unit:"month"});case"LLL":return n.month(r,{width:"abbreviated",context:"standalone"});case"LLLLL":return n.month(r,{width:"narrow",context:"standalone"});case"LLLL":default:return n.month(r,{width:"wide",context:"standalone"})}},w:function(e,t,n,r){var i=Object(m["a"])(e,r);return"wo"===t?n.ordinalNumber(i,{unit:"week"}):l(i,t.length)},I:function(e,t,n){var r=Object(p["a"])(e);return"Io"===t?n.ordinalNumber(r,{unit:"week"}):l(r,t.length)},d:function(e,t,n){return"do"===t?n.ordinalNumber(e.getUTCDate(),{unit:"date"}):d.d(e,t)},D:function(e,t,n){var r=_(e);return"Do"===t?n.ordinalNumber(r,{unit:"dayOfYear"}):l(r,t.length)},E:function(e,t,n){var r=e.getUTCDay();switch(t){case"E":case"EE":case"EEE":return n.day(r,{width:"abbreviated",context:"formatting"});case"EEEEE":return n.day(r,{width:"narrow",context:"formatting"});case"EEEEEE":return n.day(r,{width:"short",context:"formatting"});case"EEEE":default:return n.day(r,{width:"wide",context:"formatting"})}},e:function(e,t,n,r){var i=e.getUTCDay(),a=(i-r.weekStartsOn+8)%7||7;switch(t){case"e":return String(a);case"ee":return l(a,2);case"eo":return n.ordinalNumber(a,{unit:"day"});case"eee":return n.day(i,{width:"abbreviated",context:"formatting"});case"eeeee":return n.day(i,{width:"narrow",context:"formatting"});case"eeeeee":return n.day(i,{width:"short",context:"formatting"});case"eeee":default:return n.day(i,{width:"wide",context:"formatting"})}},c:function(e,t,n,r){var i=e.getUTCDay(),a=(i-r.weekStartsOn+8)%7||7;switch(t){case"c":return String(a);case"cc":return l(a,t.length);case"co":return n.ordinalNumber(a,{unit:"day"});case"ccc":return n.day(i,{width:"abbreviated",context:"standalone"});case"ccccc":return n.day(i,{width:"narrow",context:"standalone"});case"cccccc":return n.day(i,{width:"short",context:"standalone"});case"cccc":default:return n.day(i,{width:"wide",context:"standalone"})}},i:function(e,t,n){var r=e.getUTCDay(),i=0===r?7:r;switch(t){case"i":return String(i);case"ii":return l(i,t.length);case"io":return n.ordinalNumber(i,{unit:"day"});case"iii":return n.day(r,{width:"abbreviated",context:"formatting"});case"iiiii":return n.day(r,{width:"narrow",context:"formatting"});case"iiiiii":return n.day(r,{width:"short",context:"formatting"});case"iiii":default:return n.day(r,{width:"wide",context:"formatting"})}},a:function(e,t,n){var r=e.getUTCHours(),i=r/12>=1?"pm":"am";switch(t){case"a":case"aa":case"aaa":return n.dayPeriod(i,{width:"abbreviated",context:"formatting"});case"aaaaa":return n.dayPeriod(i,{width:"narrow",context:"formatting"});case"aaaa":default:return n.dayPeriod(i,{width:"wide",context:"formatting"})}},b:function(e,t,n){var r,i=e.getUTCHours();switch(r=12===i?g.noon:0===i?g.midnight:i/12>=1?"pm":"am",t){case"b":case"bb":case"bbb":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"});case"bbbbb":return n.dayPeriod(r,{width:"narrow",context:"formatting"});case"bbbb":default:return n.dayPeriod(r,{width:"wide",context:"formatting"})}},B:function(e,t,n){var r,i=e.getUTCHours();switch(r=i>=17?g.evening:i>=12?g.afternoon:i>=4?g.morning:g.night,t){case"B":case"BB":case"BBB":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"});case"BBBBB":return n.dayPeriod(r,{width:"narrow",context:"formatting"});case"BBBB":default:return n.dayPeriod(r,{width:"wide",context:"formatting"})}},h:function(e,t,n){if("ho"===t){var r=e.getUTCHours()%12;return 0===r&&(r=12),n.ordinalNumber(r,{unit:"hour"})}return d.h(e,t)},H:function(e,t,n){return"Ho"===t?n.ordinalNumber(e.getUTCHours(),{unit:"hour"}):d.H(e,t)},K:function(e,t,n){var r=e.getUTCHours()%12;return"Ko"===t?n.ordinalNumber(r,{unit:"hour"}):l(r,t.length)},k:function(e,t,n){var r=e.getUTCHours();return 0===r&&(r=24),"ko"===t?n.ordinalNumber(r,{unit:"hour"}):l(r,t.length)},m:function(e,t,n){return"mo"===t?n.ordinalNumber(e.getUTCMinutes(),{unit:"minute"}):d.m(e,t)},s:function(e,t,n){return"so"===t?n.ordinalNumber(e.getUTCSeconds(),{unit:"second"}):d.s(e,t)},S:function(e,t){var n=t.length,r=e.getUTCMilliseconds(),i=Math.floor(r*Math.pow(10,n-3));return l(i,n)},X:function(e,t,n,r){var i=r._originalDate||e,a=i.getTimezoneOffset();if(0===a)return"Z";switch(t){case"X":return b(a);case"XXXX":case"XX":return v(a);case"XXXXX":case"XXX":default:return v(a,":")}},x:function(e,t,n,r){var i=r._originalDate||e,a=i.getTimezoneOffset();switch(t){case"x":return b(a);case"xxxx":case"xx":return v(a);case"xxxxx":case"xxx":default:return v(a,":")}},O:function(e,t,n,r){var i=r._originalDate||e,a=i.getTimezoneOffset();switch(t){case"O":case"OO":case"OOO":return"GMT"+S(a,":");case"OOOO":default:return"GMT"+v(a,":")}},z:function(e,t,n,r){var i=r._originalDate||e,a=i.getTimezoneOffset();switch(t){case"z":case"zz":case"zzz":return"GMT"+S(a,":");case"zzzz":default:return"GMT"+v(a,":")}},t:function(e,t,n,r){var i=r._originalDate||e,a=Math.floor(i.getTime()/1e3);return l(a,t.length)},T:function(e,t,n,r){var i=r._originalDate||e,a=i.getTime();return l(a,t.length)}};function S(e,t){var n=e>0?"-":"+",r=Math.abs(e),i=Math.floor(r/60),a=r%60;if(0===a)return n+String(i);var o=t||"";return n+String(i)+o+l(a,2)}function b(e,t){if(e%60===0){var n=e>0?"-":"+";return n+l(Math.abs(e)/60,2)}return v(e,t)}function v(e,t){var n=t||"",r=e>0?"-":"+",i=Math.abs(e),a=l(Math.floor(i/60),2),o=l(i%60,2);return r+a+n+o}var y=E;function T(e,t){switch(e){case"P":return t.date({width:"short"});case"PP":return t.date({width:"medium"});case"PPP":return t.date({width:"long"});case"PPPP":default:return t.date({width:"full"})}}function C(e,t){switch(e){case"p":return t.time({width:"short"});case"pp":return t.time({width:"medium"});case"ppp":return t.time({width:"long"});case"pppp":default:return t.time({width:"full"})}}function N(e,t){var n,r=e.match(/(P+)(p+)?/),i=r[1],a=r[2];if(!a)return T(e,t);switch(i){case"P":n=t.dateTime({width:"short"});break;case"PP":n=t.dateTime({width:"medium"});break;case"PPP":n=t.dateTime({width:"long"});break;case"PPPP":default:n=t.dateTime({width:"full"});break}return n.replace("{{date}}",T(i,t)).replace("{{time}}",C(a,t))}var O={p:C,P:N},R=O,A=n(88),w=n(89);t["default"]=L;var I=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,M=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,x=/^'(.*?)'?$/,D=/''/g;function L(e,t,n){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var l=String(t),c=n||{},d=c.locale||s["a"],u=d.options&&d.options.firstWeekContainsDate,_=null==u?1:Object(r["a"])(u),p=null==c.firstWeekContainsDate?_:Object(r["a"])(c.firstWeekContainsDate);if(!(p>=1&&p<=7))throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively");var f=d.options&&d.options.weekStartsOn,m=null==f?0:Object(r["a"])(f),h=null==c.weekStartsOn?m:Object(r["a"])(c.weekStartsOn);if(!(h>=0&&h<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");if(!d.localize)throw new RangeError("locale must contain localize property");if(!d.formatLong)throw new RangeError("locale must contain formatLong property");var g=Object(a["a"])(e);if(!Object(o["default"])(g))throw new RangeError("Invalid time value");var E=Object(i["a"])(g),S=Object(A["a"])(g,E),b={firstWeekContainsDate:p,weekStartsOn:h,locale:d,_originalDate:g},v=l.match(M).map((function(e){var t=e[0];if("p"===t||"P"===t){var n=R[t];return n(e,d.formatLong,b)}return e})).join("").match(I).map((function(e){if("''"===e)return"'";var t=e[0];if("'"===t)return P(e);var n=y[t];return n?(!c.awareOfUnicodeTokens&&Object(w["a"])(e)&&Object(w["b"])(e),n(S,e,d.localize,b)):e})).join("");return v}function P(e){return e.match(x)[1].replace(D,"'")}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(5);function i(e,t){if(null==e)throw new TypeError("assign requires that input parameter not be null or undefined");for(var n in t=t||{},t)t.hasOwnProperty(n)&&(e[n]=t[n]);return e}var a=n(82),o=n(3),s=n(88),l=n(84),c=n(25);function d(e,t,n){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var i=n||{},a=i.locale,s=a&&a.options&&a.options.weekStartsOn,l=null==s?0:Object(r["a"])(s),c=null==i.weekStartsOn?l:Object(r["a"])(i.weekStartsOn);if(!(c>=0&&c<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var d=Object(o["a"])(e),u=Object(r["a"])(t),_=d.getUTCDay(),p=u%7,f=(p+7)%7,m=(f0,i=r?t:1-t;if(i<=50)n=e||100;else{var a=i+50,o=100*Math.floor(a/100),s=e>=a%100;n=e+o-(s?100:0)}return r?n:1-n}var I=[31,28,31,30,31,30,31,31,30,31,30,31],M=[31,29,31,30,31,30,31,31,30,31,30,31];function x(e){return e%400===0||e%4===0&&e%100!==0}var D={G:{priority:140,parse:function(e,t,n,r){switch(t){case"G":case"GG":case"GGG":return n.era(e,{width:"abbreviated"})||n.era(e,{width:"narrow"});case"GGGGG":return n.era(e,{width:"narrow"});case"GGGG":default:return n.era(e,{width:"wide"})||n.era(e,{width:"abbreviated"})||n.era(e,{width:"narrow"})}},set:function(e,t,n,r){return e.setUTCFullYear(1===n?10:-9,0,1),e.setUTCHours(0,0,0,0),e}},y:{priority:130,parse:function(e,t,n,r){var i=function(e){return{year:e,isTwoDigitYear:"yy"===t}};switch(t){case"y":return O(4,e,i);case"yo":return n.ordinalNumber(e,{unit:"year",valueCallback:i});default:return O(t.length,e,i)}},validate:function(e,t,n){return t.isTwoDigitYear||t.year>0},set:function(e,t,n,r){var i=Object(c["a"])(e,r);if(n.isTwoDigitYear){var a=w(n.year,i);return e.setUTCFullYear(a,0,1),e.setUTCHours(0,0,0,0),e}var o=i>0?n.year:1-n.year;return e.setUTCFullYear(o,0,1),e.setUTCHours(0,0,0,0),e}},Y:{priority:130,parse:function(e,t,n,r){var i=function(e){return{year:e,isTwoDigitYear:"YY"===t}};switch(t){case"Y":return O(4,e,i);case"Yo":return n.ordinalNumber(e,{unit:"year",valueCallback:i});default:return O(t.length,e,i)}},validate:function(e,t,n){return t.isTwoDigitYear||t.year>0},set:function(e,t,n,r){var i=e.getUTCFullYear();if(n.isTwoDigitYear){var a=w(n.year,i);return e.setUTCFullYear(a,0,r.firstWeekContainsDate),e.setUTCHours(0,0,0,0),Object(p["a"])(e,r)}var o=i>0?n.year:1-n.year;return e.setUTCFullYear(o,0,r.firstWeekContainsDate),e.setUTCHours(0,0,0,0),Object(p["a"])(e,r)}},R:{priority:130,parse:function(e,t,n,r){return R("R"===t?4:t.length,e)},set:function(e,t,n,r){var i=new Date(0);return i.setUTCFullYear(n,0,4),i.setUTCHours(0,0,0,0),Object(g["a"])(i)}},u:{priority:130,parse:function(e,t,n,r){return R("u"===t?4:t.length,e)},set:function(e,t,n,r){return e.setUTCFullYear(n,0,1),e.setUTCHours(0,0,0,0),e}},Q:{priority:120,parse:function(e,t,n,r){switch(t){case"Q":case"QQ":return O(t.length,e);case"Qo":return n.ordinalNumber(e,{unit:"quarter"});case"QQQ":return n.quarter(e,{width:"abbreviated",context:"formatting"})||n.quarter(e,{width:"narrow",context:"formatting"});case"QQQQQ":return n.quarter(e,{width:"narrow",context:"formatting"});case"QQQQ":default:return n.quarter(e,{width:"wide",context:"formatting"})||n.quarter(e,{width:"abbreviated",context:"formatting"})||n.quarter(e,{width:"narrow",context:"formatting"})}},validate:function(e,t,n){return t>=1&&t<=4},set:function(e,t,n,r){return e.setUTCMonth(3*(n-1),1),e.setUTCHours(0,0,0,0),e}},q:{priority:120,parse:function(e,t,n,r){switch(t){case"q":case"qq":return O(t.length,e);case"qo":return n.ordinalNumber(e,{unit:"quarter"});case"qqq":return n.quarter(e,{width:"abbreviated",context:"standalone"})||n.quarter(e,{width:"narrow",context:"standalone"});case"qqqqq":return n.quarter(e,{width:"narrow",context:"standalone"});case"qqqq":default:return n.quarter(e,{width:"wide",context:"standalone"})||n.quarter(e,{width:"abbreviated",context:"standalone"})||n.quarter(e,{width:"narrow",context:"standalone"})}},validate:function(e,t,n){return t>=1&&t<=4},set:function(e,t,n,r){return e.setUTCMonth(3*(n-1),1),e.setUTCHours(0,0,0,0),e}},M:{priority:110,parse:function(e,t,n,r){var i=function(e){return e-1};switch(t){case"M":return T(v.month,e,i);case"MM":return O(2,e,i);case"Mo":return n.ordinalNumber(e,{unit:"month",valueCallback:i});case"MMM":return n.month(e,{width:"abbreviated",context:"formatting"})||n.month(e,{width:"narrow",context:"formatting"});case"MMMMM":return n.month(e,{width:"narrow",context:"formatting"});case"MMMM":default:return n.month(e,{width:"wide",context:"formatting"})||n.month(e,{width:"abbreviated",context:"formatting"})||n.month(e,{width:"narrow",context:"formatting"})}},validate:function(e,t,n){return t>=0&&t<=11},set:function(e,t,n,r){return e.setUTCMonth(n,1),e.setUTCHours(0,0,0,0),e}},L:{priority:110,parse:function(e,t,n,r){var i=function(e){return e-1};switch(t){case"L":return T(v.month,e,i);case"LL":return O(2,e,i);case"Lo":return n.ordinalNumber(e,{unit:"month",valueCallback:i});case"LLL":return n.month(e,{width:"abbreviated",context:"standalone"})||n.month(e,{width:"narrow",context:"standalone"});case"LLLLL":return n.month(e,{width:"narrow",context:"standalone"});case"LLLL":default:return n.month(e,{width:"wide",context:"standalone"})||n.month(e,{width:"abbreviated",context:"standalone"})||n.month(e,{width:"narrow",context:"standalone"})}},validate:function(e,t,n){return t>=0&&t<=11},set:function(e,t,n,r){return e.setUTCMonth(n,1),e.setUTCHours(0,0,0,0),e}},w:{priority:100,parse:function(e,t,n,r){switch(t){case"w":return T(v.week,e);case"wo":return n.ordinalNumber(e,{unit:"week"});default:return O(t.length,e)}},validate:function(e,t,n){return t>=1&&t<=53},set:function(e,t,n,r){return Object(p["a"])(_(e,n,r),r)}},I:{priority:100,parse:function(e,t,n,r){switch(t){case"I":return T(v.week,e);case"Io":return n.ordinalNumber(e,{unit:"week"});default:return O(t.length,e)}},validate:function(e,t,n){return t>=1&&t<=53},set:function(e,t,n,r){return Object(g["a"])(h(e,n,r),r)}},d:{priority:90,parse:function(e,t,n,r){switch(t){case"d":return T(v.date,e);case"do":return n.ordinalNumber(e,{unit:"date"});default:return O(t.length,e)}},validate:function(e,t,n){var r=e.getUTCFullYear(),i=x(r),a=e.getUTCMonth();return i?t>=1&&t<=M[a]:t>=1&&t<=I[a]},set:function(e,t,n,r){return e.setUTCDate(n),e.setUTCHours(0,0,0,0),e}},D:{priority:90,parse:function(e,t,n,r){switch(t){case"D":case"DD":return T(v.dayOfYear,e);case"Do":return n.ordinalNumber(e,{unit:"date"});default:return O(t.length,e)}},validate:function(e,t,n){var r=e.getUTCFullYear(),i=x(r);return i?t>=1&&t<=366:t>=1&&t<=365},set:function(e,t,n,r){return e.setUTCMonth(0,n),e.setUTCHours(0,0,0,0),e}},E:{priority:90,parse:function(e,t,n,r){switch(t){case"E":case"EE":case"EEE":return n.day(e,{width:"abbreviated",context:"formatting"})||n.day(e,{width:"short",context:"formatting"})||n.day(e,{width:"narrow",context:"formatting"});case"EEEEE":return n.day(e,{width:"narrow",context:"formatting"});case"EEEEEE":return n.day(e,{width:"short",context:"formatting"})||n.day(e,{width:"narrow",context:"formatting"});case"EEEE":default:return n.day(e,{width:"wide",context:"formatting"})||n.day(e,{width:"abbreviated",context:"formatting"})||n.day(e,{width:"short",context:"formatting"})||n.day(e,{width:"narrow",context:"formatting"})}},validate:function(e,t,n){return t>=0&&t<=6},set:function(e,t,n,r){return e=d(e,n,r),e.setUTCHours(0,0,0,0),e}},e:{priority:90,parse:function(e,t,n,r){var i=function(e){var t=7*Math.floor((e-1)/7);return(e+r.weekStartsOn+6)%7+t};switch(t){case"e":case"ee":return O(t.length,e,i);case"eo":return n.ordinalNumber(e,{unit:"day",valueCallback:i});case"eee":return n.day(e,{width:"abbreviated",context:"formatting"})||n.day(e,{width:"short",context:"formatting"})||n.day(e,{width:"narrow",context:"formatting"});case"eeeee":return n.day(e,{width:"narrow",context:"formatting"});case"eeeeee":return n.day(e,{width:"short",context:"formatting"})||n.day(e,{width:"narrow",context:"formatting"});case"eeee":default:return n.day(e,{width:"wide",context:"formatting"})||n.day(e,{width:"abbreviated",context:"formatting"})||n.day(e,{width:"short",context:"formatting"})||n.day(e,{width:"narrow",context:"formatting"})}},validate:function(e,t,n){return t>=0&&t<=6},set:function(e,t,n,r){return e=d(e,n,r),e.setUTCHours(0,0,0,0),e}},c:{priority:90,parse:function(e,t,n,r){var i=function(e){var t=7*Math.floor((e-1)/7);return(e+r.weekStartsOn+6)%7+t};switch(t){case"c":case"cc":return O(t.length,e,i);case"co":return n.ordinalNumber(e,{unit:"day",valueCallback:i});case"ccc":return n.day(e,{width:"abbreviated",context:"standalone"})||n.day(e,{width:"short",context:"standalone"})||n.day(e,{width:"narrow",context:"standalone"});case"ccccc":return n.day(e,{width:"narrow",context:"standalone"});case"cccccc":return n.day(e,{width:"short",context:"standalone"})||n.day(e,{width:"narrow",context:"standalone"});case"cccc":default:return n.day(e,{width:"wide",context:"standalone"})||n.day(e,{width:"abbreviated",context:"standalone"})||n.day(e,{width:"short",context:"standalone"})||n.day(e,{width:"narrow",context:"standalone"})}},validate:function(e,t,n){return t>=0&&t<=6},set:function(e,t,n,r){return e=d(e,n,r),e.setUTCHours(0,0,0,0),e}},i:{priority:90,parse:function(e,t,n,r){var i=function(e){return 0===e?7:e};switch(t){case"i":case"ii":return O(t.length,e);case"io":return n.ordinalNumber(e,{unit:"day"});case"iii":return n.day(e,{width:"abbreviated",context:"formatting",valueCallback:i})||n.day(e,{width:"short",context:"formatting",valueCallback:i})||n.day(e,{width:"narrow",context:"formatting",valueCallback:i});case"iiiii":return n.day(e,{width:"narrow",context:"formatting",valueCallback:i});case"iiiiii":return n.day(e,{width:"short",context:"formatting",valueCallback:i})||n.day(e,{width:"narrow",context:"formatting",valueCallback:i});case"iiii":default:return n.day(e,{width:"wide",context:"formatting",valueCallback:i})||n.day(e,{width:"abbreviated",context:"formatting",valueCallback:i})||n.day(e,{width:"short",context:"formatting",valueCallback:i})||n.day(e,{width:"narrow",context:"formatting",valueCallback:i})}},validate:function(e,t,n){return t>=1&&t<=7},set:function(e,t,n,r){return e=f(e,n,r),e.setUTCHours(0,0,0,0),e}},a:{priority:80,parse:function(e,t,n,r){switch(t){case"a":case"aa":case"aaa":return n.dayPeriod(e,{width:"abbreviated",context:"formatting"})||n.dayPeriod(e,{width:"narrow",context:"formatting"});case"aaaaa":return n.dayPeriod(e,{width:"narrow",context:"formatting"});case"aaaa":default:return n.dayPeriod(e,{width:"wide",context:"formatting"})||n.dayPeriod(e,{width:"abbreviated",context:"formatting"})||n.dayPeriod(e,{width:"narrow",context:"formatting"})}},set:function(e,t,n,r){return e.setUTCHours(A(n),0,0,0),e}},b:{priority:80,parse:function(e,t,n,r){switch(t){case"b":case"bb":case"bbb":return n.dayPeriod(e,{width:"abbreviated",context:"formatting"})||n.dayPeriod(e,{width:"narrow",context:"formatting"});case"bbbbb":return n.dayPeriod(e,{width:"narrow",context:"formatting"});case"bbbb":default:return n.dayPeriod(e,{width:"wide",context:"formatting"})||n.dayPeriod(e,{width:"abbreviated",context:"formatting"})||n.dayPeriod(e,{width:"narrow",context:"formatting"})}},set:function(e,t,n,r){return e.setUTCHours(A(n),0,0,0),e}},B:{priority:80,parse:function(e,t,n,r){switch(t){case"B":case"BB":case"BBB":return n.dayPeriod(e,{width:"abbreviated",context:"formatting"})||n.dayPeriod(e,{width:"narrow",context:"formatting"});case"BBBBB":return n.dayPeriod(e,{width:"narrow",context:"formatting"});case"BBBB":default:return n.dayPeriod(e,{width:"wide",context:"formatting"})||n.dayPeriod(e,{width:"abbreviated",context:"formatting"})||n.dayPeriod(e,{width:"narrow",context:"formatting"})}},set:function(e,t,n,r){return e.setUTCHours(A(n),0,0,0),e}},h:{priority:70,parse:function(e,t,n,r){switch(t){case"h":return T(v.hour12h,e);case"ho":return n.ordinalNumber(e,{unit:"hour"});default:return O(t.length,e)}},validate:function(e,t,n){return t>=1&&t<=12},set:function(e,t,n,r){var i=e.getUTCHours()>=12;return i&&n<12?e.setUTCHours(n+12,0,0,0):i||12!==n?e.setUTCHours(n,0,0,0):e.setUTCHours(0,0,0,0),e}},H:{priority:70,parse:function(e,t,n,r){switch(t){case"H":return T(v.hour23h,e);case"Ho":return n.ordinalNumber(e,{unit:"hour"});default:return O(t.length,e)}},validate:function(e,t,n){return t>=0&&t<=23},set:function(e,t,n,r){return e.setUTCHours(n,0,0,0),e}},K:{priority:70,parse:function(e,t,n,r){switch(t){case"K":return T(v.hour11h,e);case"Ko":return n.ordinalNumber(e,{unit:"hour"});default:return O(t.length,e)}},validate:function(e,t,n){return t>=0&&t<=11},set:function(e,t,n,r){var i=e.getUTCHours()>=12;return i&&n<12?e.setUTCHours(n+12,0,0,0):e.setUTCHours(n,0,0,0),e}},k:{priority:70,parse:function(e,t,n,r){switch(t){case"k":return T(v.hour24h,e);case"ko":return n.ordinalNumber(e,{unit:"hour"});default:return O(t.length,e)}},validate:function(e,t,n){return t>=1&&t<=24},set:function(e,t,n,r){var i=n<=24?n%24:n;return e.setUTCHours(i,0,0,0),e}},m:{priority:60,parse:function(e,t,n,r){switch(t){case"m":return T(v.minute,e);case"mo":return n.ordinalNumber(e,{unit:"minute"});default:return O(t.length,e)}},validate:function(e,t,n){return t>=0&&t<=59},set:function(e,t,n,r){return e.setUTCMinutes(n,0,0),e}},s:{priority:50,parse:function(e,t,n,r){switch(t){case"s":return T(v.second,e);case"so":return n.ordinalNumber(e,{unit:"second"});default:return O(t.length,e)}},validate:function(e,t,n){return t>=0&&t<=59},set:function(e,t,n,r){return e.setUTCSeconds(n,0),e}},S:{priority:30,parse:function(e,t,n,r){var i=function(e){return Math.floor(e*Math.pow(10,3-t.length))};return O(t.length,e,i)},set:function(e,t,n,r){return e.setUTCMilliseconds(n),e}},X:{priority:10,parse:function(e,t,n,r){switch(t){case"X":return C(y.basicOptionalMinutes,e);case"XX":return C(y.basic,e);case"XXXX":return C(y.basicOptionalSeconds,e);case"XXXXX":return C(y.extendedOptionalSeconds,e);case"XXX":default:return C(y.extended,e)}},set:function(e,t,n,r){return t.timestampIsSet?e:new Date(e.getTime()-n)}},x:{priority:10,parse:function(e,t,n,r){switch(t){case"x":return C(y.basicOptionalMinutes,e);case"xx":return C(y.basic,e);case"xxxx":return C(y.basicOptionalSeconds,e);case"xxxxx":return C(y.extendedOptionalSeconds,e);case"xxx":default:return C(y.extended,e)}},set:function(e,t,n,r){return t.timestampIsSet?e:new Date(e.getTime()-n)}},t:{priority:40,parse:function(e,t,n,r){return N(e)},set:function(e,t,n,r){return[new Date(1e3*n),{timestampIsSet:!0}]}},T:{priority:20,parse:function(e,t,n,r){return N(e)},set:function(e,t,n,r){return[new Date(n),{timestampIsSet:!0}]}}},L=D,P=n(89);t["default"]=Y;var k=10,F=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,U=/^'(.*?)'?$/,B=/''/g,G=/\S/;function Y(e,t,n,c){if(arguments.length<3)throw new TypeError("3 arguments required, but only "+arguments.length+" present");var d=String(e),u=String(t),_=c||{},p=_.locale||l["a"];if(!p.match)throw new RangeError("locale must contain match property");var f=p.options&&p.options.firstWeekContainsDate,m=null==f?1:Object(r["a"])(f),h=null==_.firstWeekContainsDate?m:Object(r["a"])(_.firstWeekContainsDate);if(!(h>=1&&h<=7))throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively");var g=p.options&&p.options.weekStartsOn,E=null==g?0:Object(r["a"])(g),S=null==_.weekStartsOn?E:Object(r["a"])(_.weekStartsOn);if(!(S>=0&&S<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");if(""===u)return""===d?Object(o["a"])(n):new Date(NaN);var b,v={firstWeekContainsDate:h,weekStartsOn:S,locale:p},y=[{priority:k,set:j,index:0}],T=u.match(F);for(b=0;b0&&G.test(d))return new Date(NaN);var A=y.map((function(e){return e.priority})).sort((function(e,t){return t-e})).filter((function(e,t,n){return n.indexOf(e)===t})).map((function(e){return y.filter((function(t){return t.priority===e})).reverse()})).map((function(e){return e[0]})),w=Object(o["a"])(n);if(isNaN(w))return new Date(NaN);var I=Object(s["a"])(w,Object(a["a"])(w)),M={};for(b=0;b=0)&&e.setAttribute("for",this.id)}}},setFormResetListener:function(){if(this.$el.form){var e=this.$el.form;e.addEventListener("reset",this.onParentFormReset)}},removeFormResetListener:function(){if(this.$el.form){var e=this.$el.form;e.removeEventListener("reset",this.onParentFormReset)}},onParentFormReset:function(){this.clearField()},isInvalidValue:function(){return this.$el.validity.badInput},setFieldValue:function(){this.MdField.value=this.model},setPlaceholder:function(){this.MdField.placeholder=Boolean(this.placeholder)},setDisabled:function(){this.MdField.disabled=Boolean(this.disabled)},setRequired:function(){this.MdField.required=Boolean(this.required)},setMaxlength:function(){this.mdCounter?this.MdField.counter=parseInt(this.mdCounter,10):this.MdField.maxlength=parseInt(this.maxlength,10)},onFocus:function(){this.MdField.focused=!0},onBlur:function(){this.MdField.focused=!1}},created:function(){this.setFieldValue(),this.setPlaceholder(),this.setDisabled(),this.setRequired(),this.setMaxlength()},mounted:function(){this.setLabelFor(),this.setFormResetListener()},beforeDestroy:function(){this.removeFormResetListener()}}},function(e,t,n){"use strict";t["a"]=i;var r=n(3);function i(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=1,n=Object(r["a"])(e),i=n.getUTCDay(),a=(i=0&&l<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var c=Object(i["a"])(e),d=c.getUTCDay(),u=(d=1&&u<=7))throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively");var _=new Date(0);_.setUTCFullYear(o+1,0,u),_.setUTCHours(0,0,0,0);var p=Object(a["a"])(_,t),f=new Date(0);f.setUTCFullYear(o,0,u),f.setUTCHours(0,0,0,0);var m=Object(a["a"])(f,t);return n.getTime()>=p.getTime()?o+1:n.getTime()>=m.getTime()?o:o-1}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(90),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(302),s=!1;function l(e){s||n(301)}var c=n(0),d=!1,u=l,_=null,p=null,f=c(i.a,o["a"],d,u,_,p);f.options.__file="src/components/MdOverlay/MdOverlay.vue",t["default"]=f.exports},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t["default"]=i;var r=n(3);function i(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=Object(r["a"])(e),n=t.getFullYear(),i=t.getMonth(),a=new Date(0);return a.setFullYear(n,i+1,0),a.setHours(0,0,0,0),a.getDate()}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(93),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=!1;function s(e){o||n(316)}var l=n(0),c=null,d=!1,u=s,_=null,p=null,f=l(i.a,c,d,u,_,p);f.options.__file="src/components/MdPopover/MdPopover.vue",t["default"]=f.exports},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(9),i=s(r),a=n(118),o=s(a);function s(e){return e&&e.__esModule?e:{default:e}}t.default=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:window,t=arguments[1],n=(0,o.default)(e,"resize",(function(){(0,i.default)(t)}),{passive:!0});return{destroy:n.destroy}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(161),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(479),s=!1;function l(e){s||n(476)}var c=n(0),d=!1,u=l,_=null,p=null,f=c(i.a,o["a"],d,u,_,p);f.options.__file="src/components/MdTable/MdTableHead.vue",t["default"]=f.exports},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){var t={};return i.default.util.defineReactive(t,"reactive",e),t.reactive};var r=n(8),i=a(r);function a(e){return e&&e.__esModule?e:{default:e}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(8),i=a(r);function a(e){return e&&e.__esModule?e:{default:e}}var o=null,s=null,l=null;t.default=new i.default({data:function(){return{prefix:"md-theme-",theme:"default",enabled:!0,metaColors:!1}},computed:{themeTarget:function(){return!this.$isServer&&document.documentElement},fullThemeName:function(){return this.getThemeName()}},watch:{enabled:{immediate:!0,handler:function(){var e=this.fullThemeName,t=this.themeTarget,n=this.enabled;t&&(n?(t.classList.add(e),this.metaColors&&this.setHtmlMetaColors(e)):(t.classList.remove(e),this.metaColors&&this.setHtmlMetaColors()))}},theme:function(e,t){var n=this.getThemeName,r=this.themeTarget;e=n(e),r.classList.remove(n(t)),r.classList.add(e),this.metaColors&&this.setHtmlMetaColors(e)},metaColors:function(e){e?this.setHtmlMetaColors(this.fullThemeName):this.setHtmlMetaColors()}},methods:{getAncestorTheme:function(e){var t=this;if(e){var n=e.mdTheme,r=function e(r){if(r){var i=r.mdTheme,a=r.$parent;return i&&i!==n?i:e(a)}return t.theme};return r(e.$parent)}return null},getThemeName:function(e){var t=e||this.theme;return this.prefix+t},setMicrosoftColors:function(e){o&&o.setAttribute("content",e)},setThemeColors:function(e){s&&s.setAttribute("content",e)},setMaskColors:function(e){l&&l.setAttribute("color",e)},setHtmlMetaColors:function(e){var t="#fff";if(e){var n=window.getComputedStyle(document.documentElement);t=n.getPropertyValue("--"+e+"-primary")}t&&(this.setMicrosoftColors(t),this.setThemeColors(t),this.setMaskColors(t))}},mounted:function(){var e=this;o=document.querySelector('[name="msapplication-TileColor"]'),s=document.querySelector('[name="theme-color"]'),l=document.querySelector('[rel="mask-icon"]'),this.enabled&&this.metaColors&&window.addEventListener("load",(function(){e.setHtmlMetaColors(e.fullThemeName)}))}})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=Object.assign||function(e){for(var t=1;t-1}));return t.length?t:[]}function S(e){var t=e&&e["md-permanent"];return t&&("clipped"===t||"card"===t)}t.default={name:"MdApp",functional:!0,render:function(e,t){var n=t.children,i=t.props,a=t.data,o=s.default,l=e(o),d=l.context,u=l.functionalContext,_=l.componentOptions,p=v(n,d,u,_,e),f=E(p);f.forEach((function(e){e&&S(e.data.attrs)&&(o=c.default)}));var m={};return a.staticClass&&a.staticClass.split(/\s+/).forEach((function(e){0!==e.length&&(m[e]=!0)})),e(o,{attrs:i,class:r({},m,a.class),style:r({},a.staticStyle,a.style)},p)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(1),i=s(r),a=n(36),o=s(a);function s(e){return e&&e.__esModule?e:{default:e}}t.default=new i.default({name:"MdAppSideDrawer",mixins:[o.default]})},function(e,t,n){(function(t,n){e.exports=n()})(0,(function(){"use strict";var e=function(e){return t(e)&&!n(e)};function t(e){return!!e&&"object"===typeof e}function n(e){var t=Object.prototype.toString.call(e);return"[object RegExp]"===t||"[object Date]"===t||a(e)}var r="function"===typeof Symbol&&Symbol.for,i=r?Symbol.for("react.element"):60103;function a(e){return e.$$typeof===i}function o(e){return Array.isArray(e)?[]:{}}function s(e,t){return!1!==t.clone&&t.isMergeableObject(e)?u(o(e),e,t):e}function l(e,t,n){return e.concat(t).map((function(e){return s(e,n)}))}function c(e,t){if(!t.customMerge)return u;var n=t.customMerge(e);return"function"===typeof n?n:u}function d(e,t,n){var r={};return n.isMergeableObject(e)&&Object.keys(e).forEach((function(t){r[t]=s(e[t],n)})),Object.keys(t).forEach((function(i){n.isMergeableObject(t[i])&&e[i]?r[i]=c(i,n)(e[i],t[i],n):r[i]=s(t[i],n)})),r}function u(t,n,r){r=r||{},r.arrayMerge=r.arrayMerge||l,r.isMergeableObject=r.isMergeableObject||e;var i=Array.isArray(n),a=Array.isArray(t),o=i===a;return o?i?r.arrayMerge(t,n,r):d(t,n,r):s(n,r)}u.all=function(e,t){if(!Array.isArray(e))throw new Error("first argument should be an array");return e.reduce((function(e,n){return u(e,n,t)}),{})};var _=u;return _}))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=Object.assign||function(e){for(var t=1;t=i},handleFlexibleMode:function(e){var t=this.getToolbarConstrants(e),n=t.scrollTop,r=t.initialHeight,i=this.MdApp.toolbar.element,a=i.querySelector(".md-toolbar-row:first-child"),o=a.offsetHeight,s=r-n,l=n=i)||this.revealLastPos>a+r},handleFixedLastMode:function(e){var t=this.getToolbarConstrants(e),n=t.scrollTop,r=t.toolbarHeight,i=t.safeAmount,a=this.MdApp.toolbar.element,o=a.querySelector(".md-toolbar-row:first-child"),s=o.offsetHeight;this.setToolbarTimer(n),this.setToolbarMarginAndHeight(n-s,r),this.MdApp.toolbar.fixedLastHeight=s,this.MdApp.toolbar.fixedLastActive=!(n>=s)||this.revealLastPos>n+i},handleOverlapMode:function(e){var t=this.getToolbarConstrants(e),n=t.toolbarHeight,r=t.scrollTop,i=t.initialHeight,a=this.MdApp.toolbar.element,o=a.querySelector(".md-toolbar-row:first-child"),s=o.offsetHeight,l=i-r-100*r/(i-s-s/1.5);s&&(r=s?(this.MdApp.toolbar.overlapOff=!1,a.style.height=l+"px"):(this.MdApp.toolbar.overlapOff=!0,a.style.height=s+"px")),this.setToolbarMarginAndHeight(r,n)},handleModeScroll:function(e){"reveal"===this.mdMode?this.handleRevealMode(e):"fixed-last"===this.mdMode?this.handleFixedLastMode(e):"overlap"===this.mdMode?this.handleOverlapMode(e):"flexible"===this.mdMode&&this.handleFlexibleMode(e)},handleScroll:function(e){var t=this;this.MdApp.toolbar.element&&(0,a.default)((function(){t.mdWaterfall&&t.handleWaterfallScroll(e),t.mdMode&&t.handleModeScroll(e)}))}},created:function(){this.MdApp.options.mode=this.mdMode,this.MdApp.options.waterfall=this.mdWaterfall,this.setToolbarElevation()},mounted:function(){var e={target:{scrollTop:0}};"reveal"===this.mdMode&&(this.MdApp.toolbar.revealActive=!0,this.handleRevealMode(e)),"flexible"===this.mdMode&&(this.MdApp.toolbar.revealActive=!0,this.handleFlexibleMode(e)),"fixed-last"===this.mdMode&&(this.MdApp.toolbar.fixedLastActive=!0,this.handleFixedLastMode(e)),"overlap"===this.mdMode&&this.handleOverlapMode(e)}}},function(e,t){var n;n=function(){return this}();try{n=n||Function("return this")()||(0,eval)("this")}catch(r){"object"===typeof window&&(n=window)}e.exports=n},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(1),i=s(r),a=n(36),o=s(a);function s(e){return e&&e.__esModule?e:{default:e}}t.default=new i.default({name:"MdAppInternalDrawer",mixins:[o.default]})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=Object.assign||function(e){for(var t=1;t0||this.filteredAsyncOptions.length>0},hasScopedEmptySlot:function(){return this.$scopedSlots["md-autocomplete-empty"]}},watch:{mdOptions:{deep:!0,immediate:!0,handler:function(){var e=this;this.isPromise(this.mdOptions)&&(this.isPromisePending=!0,this.mdOptions.then((function(t){e.filteredAsyncOptions=t,e.isPromisePending=!1})))}},value:function(e){this.searchTerm=e}},methods:{getOptions:function(){return this.isPromise(this.mdOptions)?this.filteredAsyncOptions:this.filteredStaticOptions},isPromise:function(e){return(0,l.default)(e)},matchText:function(e){var t=e.toLowerCase(),n=this.searchTerm.toLowerCase();return this.mdFuzzySearch?(0,o.default)(n,t):t.includes(n)},filterByString:function(){var e=this;return this.mdOptions.filter((function(t){return e.matchText(t)}))},filterByObject:function(){var e=this;return this.mdOptions.filter((function(t){for(var n=Object.values(t),r=n.length,i=0;i<=r;i++)if("string"===typeof n[i]&&e.matchText(n[i]))return!0}))},openOnFocus:function(){this.mdOpenOnFocus&&this.showOptions()},onInput:function(e){this.$emit("input",e),this.mdOpenOnFocus||this.showOptions(),"inputevent"!==this.searchTerm.constructor.toString().match(/function (\w*)/)[1].toLowerCase()&&this.$emit("md-changed",this.searchTerm)},showOptions:function(){var e=this;if(this.showMenu)return!1;this.showMenu=!0,this.$nextTick((function(){e.triggerPopover=!0,e.$emit("md-opened")}))},hideOptions:function(){var e=this;this.$nextTick((function(){e.triggerPopover=!1,e.$emit("md-closed")}))},selectItem:function(e,t){var n=t.target.textContent.trim();this.searchTerm=n,this.$emit("input",e),this.$emit("md-selected",e),this.hideOptions()}}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(1),i=a(r);function a(e){return e&&e.__esModule?e:{default:e}}t.default=new i.default({name:"MdAvatar"})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=Object.assign||function(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:.6;e.mdTextScrim?e.applyScrimColor(t):e.mdSolid&&e.applySolidColor(t)},n=this.$el.querySelector("img");n&&(this.mdTextScrim||this.mdSolid)&&this.getImageLightness(n,(function(e){var n=256,r=(100*Math.abs(n-e)/n+15)/100;r>=.7&&(r=.7),t(r)}),t)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={name:"MdCardContent"}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={name:"MdCardExpand",inject:["MdCard"]}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=Object.assign||function(e){for(var t=1;t0||this.MdField.hasInvalidValue},valueLength:function(){return this.stringValue?this.stringValue.length:0},fieldClasses:function(){return{"md-inline":this.mdInline,"md-clearable":this.mdClearable,"md-focused":this.MdField.focused,"md-highlight":this.MdField.highlighted,"md-disabled":this.MdField.disabled,"md-required":this.MdField.required,"md-has-value":this.hasValue,"md-has-placeholder":this.MdField.placeholder,"md-has-textarea":this.MdField.textarea,"md-has-password":this.MdField.password,"md-has-file":this.MdField.file,"md-has-select":this.MdField.select,"md-autogrow":this.MdField.autogrow}}},methods:{clearInput:function(){var e=this;this.MdField.clear=!0,this.$emit("md-clear"),this.$nextTick().then((function(){e.MdField.clear=!1}))},togglePassword:function(){this.MdField.togglePassword=!this.MdField.togglePassword},onBlur:function(){this.MdField.highlighted=!1}}})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(72),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(283),s=n(0),l=!1,c=null,d=null,u=null,_=s(i.a,o["a"],l,c,d,u);_.options.__file="src/core/icons/MdClearIcon.vue",t["default"]=_.exports},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(6),i=a(r);function a(e){return e&&e.__esModule?e:{default:e}}t.default={name:"MdClearIcon",components:{MdIcon:i.default}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(1),i=s(r),a=n(279),o=s(a);function s(e){return e&&e.__esModule?e:{default:e}}t.default=new i.default({name:"MdIcon",components:{MdSvgLoader:o.default},props:{mdSrc:String}})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r={};t.default={name:"MdSVGLoader",props:{mdSrc:{type:String,required:!0}},data:function(){return{html:null,error:null}},watch:{mdSrc:function(){this.html=null,this.loadSVG()}},methods:{isSVG:function(e){return"string"===typeof e&&e.indexOf("svg")>=0},setHtml:function(e){var t=this;r[this.mdSrc].then((function(e){return t.html=e,t.$nextTick()})).then((function(){return t.$emit("md-loaded")}))},unexpectedError:function(e){this.error="Something bad happened trying to fetch "+this.mdSrc+".",e(this.error)},loadSVG:function(){var e=this;r.hasOwnProperty(this.mdSrc)?this.setHtml():r[this.mdSrc]=new Promise((function(t,n){var r=new window.XMLHttpRequest;r.open("GET",e.mdSrc,!0),r.onload=function(){var i=r.getResponseHeader("content-type");200===r.status?e.isSVG(i)?(t(r.response),e.setHtml()):(e.error="The file "+e.mdSrc+" is not a valid SVG.",n(e.error)):r.status>=400&&r.status<500?(e.error="The file "+e.mdSrc+" do not exists.",n(e.error)):e.unexpectedError(n)},r.onerror=function(){return e.unexpectedError(n)},r.onabort=function(){return e.unexpectedError(n)},r.send()}))}},mounted:function(){this.loadSVG()}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(6),i=a(r);function a(e){return e&&e.__esModule?e:{default:e}}t.default={name:"MdPasswordOffIcon",components:{MdIcon:i.default}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(6),i=a(r);function a(e){return e&&e.__esModule?e:{default:e}}t.default={name:"MdPasswordOnIcon",components:{MdIcon:i.default}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=Object.assign||function(e){for(var t=1;t=0},isModelTypeDate:function(){return"object"===r(this.value)&&this.value instanceof Date&&(0,f.default)(this.value)},localString:function(){return this.localDate&&(0,d.default)(this.localDate,this.dateFormat)},localNumber:function(){return this.localDate&&Number(this.localDate)},parsedInputDate:function(){var e=(0,_.default)(this.inputDate,this.dateFormat,new Date);return e&&(0,f.default)(e)?e:null},pattern:function(){return this.dateFormat.replace(/yyyy|MM|dd/g,(function(e){switch(e){case"yyyy":return"[0-9]{4}";case"MM":case"dd":return"[0-9]{2}"}}))}},watch:{inputDate:function(e){this.inputDateToLocalDate()},localDate:function(){this.inputDate=this.localString,this.modelType===Date&&this.$emit("input",this.localDate)},localString:function(){this.modelType===String&&this.$emit("input",this.localString)},localNumber:function(){this.modelType===Number&&this.$emit("input",this.localNumber)},value:{immediate:!0,handler:function(){this.valueDateToLocalDate()}},mdModelType:function(e){switch(e){case Date:this.$emit("input",this.localDate);break;case String:this.$emit("input",this.localString);break;case Number:this.$emit("input",this.localNumber);break}},dateFormat:function(){this.localDate&&(this.inputDate=(0,d.default)(this.localDate,this.dateFormat))}},methods:{toggleDialog:function(){!l.default||this.mdOverrideNative?(this.showDialog=!this.showDialog,this.showDialog?this.$emit("md-opened"):this.$emit("md-closed")):this.$refs.input.$el.click()},onFocus:function(){this.mdOpenOnFocus&&this.toggleDialog()},inputDateToLocalDate:function(){this.inputDate?this.parsedInputDate&&(this.localDate=this.parsedInputDate):this.localDate=null},valueDateToLocalDate:function(){if(this.isModelNull)this.localDate=null;else if(this.isModelTypeNumber)this.localDate=new Date(this.value);else if(this.isModelTypeDate)this.localDate=this.value;else if(this.isModelTypeString){var e=(0,_.default)(this.value,this.dateFormat,new Date);(0,f.default)(e)?this.localDate=(0,_.default)(this.value,this.dateFormat,new Date):o.default.util.warn("The datepicker value is not a valid date. Given value: "+this.value+", format: "+this.dateFormat)}else o.default.util.warn("The datepicker value is not a valid date. Given value: "+this.value)},onClear:function(){this.$emit("md-clear")}},created:function(){this.inputDateToLocalDate=(0,C.default)(this.inputDateToLocalDate,this.MdDebounce)}}},function(e,t,n){"use strict";t["a"]=i;var r=6e4;function i(e){var t=new Date(e.getTime()),n=t.getTimezoneOffset();t.setSeconds(0,0);var i=t.getTime()%r;return n*r+i}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t["default"]=i;var r=n(3);function i(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=Object(r["a"])(e);return!isNaN(t)}},function(e,t,n){"use strict";var r={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}};function i(e,t,n){var i;return n=n||{},i="string"===typeof r[e]?r[e]:1===t?r[e].one:r[e].other.replace("{{count}}",t),n.addSuffix?n.comparison>0?"in "+i:i+" ago":i}function a(e){return function(t){var n=t||{},r=n.width?String(n.width):e.defaultWidth,i=e.formats[r]||e.formats[e.defaultWidth];return i}}var o={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},s={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},l={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},c={date:a({formats:o,defaultWidth:"full"}),time:a({formats:s,defaultWidth:"full"}),dateTime:a({formats:l,defaultWidth:"full"})},d=c,u={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"};function _(e,t,n,r){return u[e]}function p(e){return function(t,n){var r,i=n||{},a=i.width?String(i.width):e.defaultWidth,o=i.context?String(i.context):"standalone";r="formatting"===o&&e.formattingValues?e.formattingValues[a]||e.formattingValues[e.defaultFormattingWidth]:e.values[a]||e.values[e.defaultWidth];var s=e.argumentCallback?e.argumentCallback(t):t;return r[s]}}var f={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},m={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},h={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},g={narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},b={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},v={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}};function E(e,t){var n=Number(e),r=n%100;if(r>20||r<10)switch(r%10){case 1:return n+"st";case 2:return n+"nd";case 3:return n+"rd"}return n+"th"}var S={ordinalNumber:E,era:p({values:f,defaultWidth:"wide"}),quarter:p({values:m,defaultWidth:"wide",argumentCallback:function(e){return Number(e)-1}}),month:p({values:h,defaultWidth:"wide"}),day:p({values:g,defaultWidth:"wide"}),dayPeriod:p({values:b,defaultWidth:"wide",formattingValues:v,defaultFormattingWidth:"wide"})},y=S;function T(e){return function(t,n){var r=String(t),i=n||{},a=r.match(e.matchPattern);if(!a)return null;var o=a[0],s=r.match(e.parsePattern);if(!s)return null;var l=e.valueCallback?e.valueCallback(s[0]):s[0];return l=i.valueCallback?i.valueCallback(l):l,{value:l,rest:r.slice(o.length)}}}function C(e){return function(t,n){var r=String(t),i=n||{},a=i.width,o=a&&e.matchPatterns[a]||e.matchPatterns[e.defaultMatchWidth],s=r.match(o);if(!s)return null;var l,c=s[0],d=a&&e.parsePatterns[a]||e.parsePatterns[e.defaultParseWidth];return l="[object Array]"===Object.prototype.toString.call(d)?d.findIndex((function(e){return e.test(r)})):N(d,(function(e){return e.test(r)})),l=e.valueCallback?e.valueCallback(l):l,l=i.valueCallback?i.valueCallback(l):l,{value:l,rest:r.slice(c.length)}}}function N(e,t){for(var n in e)if(e.hasOwnProperty(n)&&t(e[n]))return n}var O=/^(\d+)(th|st|nd|rd)?/i,R=/\d+/i,A={narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},w={any:[/^b/i,/^(a|c)/i]},I={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},x={any:[/1/i,/2/i,/3/i,/4/i]},M={narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},D={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},L={narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},P={narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},k={narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},F={any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},U={ordinalNumber:T({matchPattern:O,parsePattern:R,valueCallback:function(e){return parseInt(e,10)}}),era:C({matchPatterns:A,defaultMatchWidth:"wide",parsePatterns:w,defaultParseWidth:"any"}),quarter:C({matchPatterns:I,defaultMatchWidth:"wide",parsePatterns:x,defaultParseWidth:"any",valueCallback:function(e){return e+1}}),month:C({matchPatterns:M,defaultMatchWidth:"wide",parsePatterns:D,defaultParseWidth:"any"}),day:C({matchPatterns:L,defaultMatchWidth:"wide",parsePatterns:P,defaultParseWidth:"any"}),dayPeriod:C({matchPatterns:k,defaultMatchWidth:"any",parsePatterns:F,defaultParseWidth:"any"})},B=U,G={formatDistance:i,formatLong:d,formatRelative:_,localize:y,match:B,options:{weekStartsOn:0,firstWeekContainsDate:1}};t["a"]=G},function(e,t,n){"use strict";var r=n(3),i=n(19),a=n(86);function o(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=Object(a["a"])(e),n=new Date(0);n.setUTCFullYear(t,0,4),n.setUTCHours(0,0,0,0);var r=Object(i["a"])(n);return r}t["a"]=l;var s=6048e5;function l(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=Object(r["a"])(e),n=Object(i["a"])(t).getTime()-o(t).getTime();return Math.round(n/s)+1}},function(e,t,n){"use strict";t["a"]=a;var r=n(3),i=n(19);function a(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=Object(r["a"])(e),n=t.getUTCFullYear(),a=new Date(0);a.setUTCFullYear(n+1,0,4),a.setUTCHours(0,0,0,0);var o=Object(i["a"])(a),s=new Date(0);s.setUTCFullYear(n,0,4),s.setUTCHours(0,0,0,0);var l=Object(i["a"])(s);return t.getTime()>=o.getTime()?n+1:t.getTime()>=l.getTime()?n:n-1}},function(e,t,n){"use strict";var r=n(3),i=n(20),a=n(5),o=n(25);function s(e,t){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var n=t||{},r=n.locale,s=r&&r.options&&r.options.firstWeekContainsDate,l=null==s?1:Object(a["a"])(s),c=null==n.firstWeekContainsDate?l:Object(a["a"])(n.firstWeekContainsDate),d=Object(o["a"])(e,t),u=new Date(0);u.setUTCFullYear(d,0,c),u.setUTCHours(0,0,0,0);var _=Object(i["a"])(u,t);return _}t["a"]=c;var l=6048e5;function c(e,t){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var n=Object(r["a"])(e),a=Object(i["a"])(n,t).getTime()-s(n,t).getTime();return Math.round(a/l)+1}},function(e,t,n){"use strict";var r=n(5),i=n(3);function a(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=Object(i["a"])(e).getTime(),a=Object(r["a"])(t);return new Date(n+a)}function o(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=Object(r["a"])(t);return a(e,-n)}t["a"]=o},function(e,t,n){"use strict";t["a"]=i,t["b"]=a;var r=["D","DD","YY","YYYY"];function i(e){return-1!==r.indexOf(e)}function a(e){throw new RangeError("`options.awareOfUnicodeTokens` must be set to `true` to use `"+e+"` token; see: https://git.io/fxCyr")}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(21),i=a(r);function a(e){return e&&e.__esModule?e:{default:e}}t.default={name:"MdOverlay",components:{MdPortal:i.default},props:{mdActive:Boolean,mdAttachToParent:Boolean,mdFixed:Boolean},computed:{overlayClasses:function(){return{"md-fixed":this.mdFixed}}}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(92),i=B(r),a=n(305),o=B(a),s=n(306),l=B(s),c=n(307),d=B(c),u=n(308),_=B(u),p=n(27),f=B(p),m=n(309),h=B(m),g=n(310),b=B(g),v=n(311),E=B(v),S=n(312),y=B(S),T=n(313),C=B(T),N=n(314),O=B(N),R=n(315),A=B(R),w=n(1),I=B(w),x=n(28),M=B(x),D=n(318),L=B(D),P=n(320),k=B(P),F=n(12),U=B(F);function B(e){return e&&e.__esModule?e:{default:e}}var G=7,Y=function(e,t){return!(!e||!e.querySelector)&&e.querySelectorAll(t)};t.default=new I.default({name:"MdDatepickerDialog",components:{MdPopover:M.default,MdArrowRightIcon:L.default,MdArrowLeftIcon:k.default,MdDialog:U.default},props:{mdDate:Date,mdDisabledDates:[Array,Function],mdImmediately:{type:Boolean,default:!1}},data:function(){return{currentDate:null,selectedDate:null,showDialog:!1,monthAction:null,currentView:"day",contentStyles:{},availableYears:null}},computed:{firstDayOfAWeek:function(){var e=Number(this.locale.firstDayOfAWeek);return Number.isNaN(e)||!Number.isFinite(e)?0:(e=Math.floor(e)%G,e+=e<0?G:0,e)},locale:function(){return this.$material.locale},popperSettings:function(){return{placement:"bottom-start",modifiers:{keepTogether:{enabled:!0},flip:{enabled:!1}}}},calendarClasses:function(){return"next"===this.monthAction?"md-next":"md-previous"},firstDayOfMonth:function(){return(0,o.default)(this.currentDate).getDay()},prefixEmptyDays:function(){var e=this.firstDayOfMonth-this.firstDayOfAWeek;return e+=e<0?G:0,e},daysInMonth:function(){return(0,f.default)(this.currentDate)},currentDay:function(){return this.selectedDate?(0,d.default)(this.selectedDate):(0,d.default)(this.currentDate)},currentMonth:function(){return(0,h.default)(this.currentDate)},currentMonthName:function(){return this.locale.months[this.currentMonth]},currentYear:function(){return(0,b.default)(this.currentDate)},selectedYear:function(){return this.selectedDate?(0,b.default)(this.selectedDate):(0,b.default)(this.currentDate)},shortDayName:function(){return this.selectedDate?this.locale.shortDays[(0,_.default)(this.selectedDate)]:this.locale.shortDays[(0,_.default)(this.currentDate)]},shortMonthName:function(){return this.selectedDate?this.locale.shortMonths[(0,h.default)(this.selectedDate)]:this.locale.shortMonths[(0,h.default)(this.currentDate)]}},watch:{mdDate:function(){this.currentDate=this.mdDate||new Date,this.selectedDate=this.mdDate},currentDate:function(e,t){var n=this;this.$nextTick().then((function(){t&&n.setContentStyles()}))},currentView:function(){var e=this;this.$nextTick().then((function(){if("year"===e.currentView){var t=Y(e.$el,".md-datepicker-year-button.md-datepicker-selected");t.length&&t[0].scrollIntoView({behavior:"instant",block:"center",inline:"center"})}}))}},methods:{setContentStyles:function(){var e=Y(this.$el,".md-datepicker-month");if(e.length){var t=e[e.length-1];this.contentStyles={height:t.offsetHeight+10+"px"}}},setAvailableYears:function(){var e=this.locale,t=e.startYear,n=e.endYear,r=t,i=[];while(r<=n)i.push(r++);this.availableYears=i},handleDisabledDateByArray:function(e){return this.mdDisabledDates.some((function(t){return(0,y.default)(t,e)}))},isDisabled:function(e){if(this.mdDisabledDates){var t=(0,C.default)(this.currentDate,e);if(Array.isArray(this.mdDisabledDates))return this.handleDisabledDateByArray(t);if("function"===typeof this.mdDisabledDates)return this.mdDisabledDates(t)}},isSelectedDay:function(e){return(0,E.default)(this.selectedDate,(0,C.default)(this.currentDate,e))},isToday:function(e){return(0,y.default)(new Date,(0,C.default)(this.currentDate,e))},previousMonth:function(){this.monthAction="previous",this.currentDate=(0,l.default)(this.currentDate,1)},nextMonth:function(){this.monthAction="next",this.currentDate=(0,i.default)(this.currentDate,1)},switchMonth:function(e){this.currentDate=(0,O.default)(this.currentDate,e),this.currentView="day"},switchYear:function(e){this.currentDate=(0,A.default)(this.currentDate,e),this.currentView="month"},selectDate:function(e){this.currentDate=(0,C.default)(this.currentDate,e),this.selectedDate=this.currentDate,this.mdImmediately&&(this.$emit("update:mdDate",this.selectedDate),this.closeDialog())},closeDialog:function(){this.$emit("md-closed")},onClose:function(){this.closeDialog()},onCancel:function(){this.closeDialog()},onConfirm:function(){this.$emit("update:mdDate",this.selectedDate),this.closeDialog()},resetDate:function(){this.currentDate=this.mdDate||new Date,this.selectedDate=this.mdDate,this.currentView="day"}},created:function(){this.setAvailableYears(),this.resetDate()}})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t["default"]=o;var r=n(5),i=n(3),a=n(27);function o(e,t){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var n=Object(i["a"])(e),o=Object(r["a"])(t),s=n.getMonth()+o,l=new Date(0);l.setFullYear(n.getFullYear(),s,1),l.setHours(0,0,0,0);var c=Object(a["default"])(l);return n.setMonth(s,Math.min(c,n.getDate())),n}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=Object.assign||function(e){for(var t=1;t1)throw new Error;return e[0]}catch(t){i.default.util.warn("MdFocusTrap can only render one, and exactly one child component.",this)}return null}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(6),i=a(r);function a(e){return e&&e.__esModule?e:{default:e}}t.default={name:"MdDateIcon",components:{MdIcon:i.default}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={name:"MdDialogTitle"}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(1),i=a(r);function a(e){return e&&e.__esModule?e:{default:e}}t.default=new i.default({name:"MdDialogContent"})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={name:"MdDialogActions"}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={name:"MdDialogAlert",props:{mdTitle:String,mdContent:String,mdConfirmText:{type:String,default:"Ok"}}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={name:"MdDialogConfirm",props:{mdTitle:String,mdContent:String,mdConfirmText:{type:String,default:"Ok"},mdCancelText:{type:String,default:"Cancel"}},methods:{onCancel:function(){this.$emit("md-cancel"),this.$emit("update:mdActive",!1)},onConfirm:function(){this.$emit("md-confirm"),this.$emit("update:mdActive",!1)}}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={name:"MdDialogPrompt",props:{value:{},mdTitle:String,mdInputName:String,mdInputId:String,mdInputMaxlength:[String,Number],mdInputPlaceholder:[String,Number],mdContent:String,mdConfirmText:{type:String,default:"Ok"},mdCancelText:{type:String,default:"Cancel"}},data:function(){return{inputValue:null}},watch:{value:function(){this.inputValue=this.value}},methods:{onCancel:function(){this.$emit("md-cancel"),this.$emit("update:mdActive",!1)},onConfirm:function(){this.$emit("input",this.inputValue),this.$emit("md-confirm",this.inputValue),this.$emit("update:mdActive",!1)},setInputFocus:function(){var e=this;window.setTimeout((function(){e.$refs.input.$el.focus()}),50)}},created:function(){this.inputValue=this.value}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(1),i=a(r);function a(e){return e&&e.__esModule?e:{default:e}}t.default=new i.default({name:"MdDivider",computed:{insideList:function(){return"md-list"===this.$parent.$options._componentTag}}})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=Object.assign||function(e){for(var t=1;t=this.mdSwipeThreshold&&Math.abs(i)<=this.mdSwipeRestraint?this.swiped=r<0?"left":"right":Math.abs(i)>=this.mdSwipeThreshold&&Math.abs(r)<=this.mdSwipeRestraint&&(this.swiped=i<0?"up":"down"))}},handleTouchEnd:function(){this.touchPosition={startX:0,startY:0},this.swiped=null,this.swipeStart=!1}},mounted:function(){this.mdSwipeable&&(this.getSwipeElement.addEventListener("touchstart",this.handleTouchStart,!1),this.getSwipeElement.addEventListener("touchend",this.handleTouchEnd,!1),this.getSwipeElement.addEventListener("touchmove",this.handleTouchMove,!1))},beforeDestroy:function(){this.mdSwipeable&&(this.getSwipeElement.removeEventListener("touchstart",this.handleTouchStart,!1),this.getSwipeElement.removeEventListener("touchend",this.handleTouchEnd,!1),this.getSwipeElement.removeEventListener("touchmove",this.handleTouchMove,!1))}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(109),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(360),s=!1;function l(e){s||n(359)}var c=n(0),d=!1,u=l,_=null,p=null,f=c(i.a,o["a"],d,u,_,p);f.options.__file="src/components/MdEmptyState/MdEmptyState.vue",t["default"]=f.exports},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(1),i=c(r),a=n(110),o=c(a),s=n(22),l=c(s);function c(e){return e&&e.__esModule?e:{default:e}}t.default=new i.default({name:"MdEmptyState",mixins:[l.default],props:o.default,computed:{emptyStateClasses:function(){return{"md-rounded":this.mdRounded}},emptyStateStyles:function(){if(this.mdRounded){var e=this.mdSize+"px";return{width:e,height:e}}}}})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={mdRounded:Boolean,mdSize:{type:Number,default:420},mdIcon:String,mdLabel:String,mdDescription:String}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(2),i=s(r),a=n(6),o=s(a);function s(e){return e&&e.__esModule?e:{default:e}}t.default=function(e){(0,i.default)(e),e.component(o.default.name,o.default)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=Object.assign||function(e){for(var t=1;te.offsetHeight},scrollToSelectedOption:function(e,t){var n=e.offsetTop,r=e.offsetHeight,i=t.offsetHeight;t.scrollTop=n-(i-r)/2},setOffsets:function(e){if(!this.$isServer){var t=this.$refs.menu.$refs.container;if(t){var n=e||t.querySelector(".md-selected");n?(this.scrollToSelectedOption(n,t),this.offset.y=g.y-n.offsetTop+t.scrollTop+8,this.menuStyles={"transform-origin":"0 "+Math.abs(this.offset.y)+"px"}):(this.offset.y=g.y+1,this.menuStyles={})}}},onMenuEnter:function(){this.didMount&&(this.setOffsets(),this.MdField.focused=!0,this.$emit("md-opened"))},applyHighlight:function(){this.MdField.focused=!1,this.MdField.highlighted=!0,this.$refs.input.$el.focus()},onClose:function(){this.$emit("md-closed"),this.didMount&&this.applyHighlight()},onFocus:function(){this.didMount&&this.applyHighlight()},removeHighlight:function(){this.MdField.highlighted=!1},openSelect:function(){this.disabled||(this.showSelect=!0)},arrayAccessorRemove:function(e,t){var n=e.slice(0,t),r=e.slice(t+1,e.length);return n.concat(r)},toggleArrayValue:function(e){var t=this.localValue.indexOf(e),n=t>-1;this.localValue=n?this.arrayAccessorRemove(this.localValue,t):this.localValue.concat([e])},setValue:function(e){this.model=e,this.setFieldValue(),this.showSelect=!1},setContent:function(e){this.MdSelect.label=e},setContentByValue:function(){var e=this.MdSelect.items[this.localValue];e?this.setContent(e):this.setContent("")},setMultipleValue:function(e){var t=e;this.toggleArrayValue(t),this.setFieldValue()},setMultipleContentByValue:function(){var e=this;this.localValue||this.initialLocalValueByDefault();var t=[];this.localValue.forEach((function(n){var r=e.MdSelect.items[n];r&&t.push(r)})),this.setContent(t.join(", "))},setFieldContent:function(){this.multiple?this.setMultipleContentByValue():this.setContentByValue()},isLocalValueSet:function(){return void 0!==this.localValue&&null!==this.localValue},setLocalValueIfMultiple:function(){this.isLocalValueSet()?this.localValue=[this.localValue]:this.localValue=[]},setLocalValueIfNotMultiple:function(){this.localValue.length>0?this.localValue=this.localValue[0]:this.localValue=null},initialLocalValueByDefault:function(){var e=Array.isArray(this.localValue);this.multiple&&!e?this.setLocalValueIfMultiple():!this.multiple&&e&&this.setLocalValueIfNotMultiple()},emitSelected:function(e){this.$emit("md-selected",e)}},mounted:function(){var e=this;this.showSelect=!1,this.setFieldContent(),this.$nextTick().then((function(){e.didMount=!0}))},updated:function(){this.setFieldContent()}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(6),i=a(r);function a(e){return e&&e.__esModule?e:{default:e}}t.default={name:"MdDropDownIcon",components:{MdIcon:i.default}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(115),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(368),s=!1;function l(e){s||n(367)}var c=n(0),d=!1,u=l,_=null,p=null,f=c(i.a,o["a"],d,u,_,p);f.options.__file="src/components/MdMenu/MdMenu.vue",t["default"]=f.exports},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=Object.assign||function(e){for(var t=1;t=0&&/iP/i.test(navigator.userAgent)&&(e.style.cursor="pointer"),e.addEventListener(t,n,r||!1),{destroy:i}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(120),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(371),s=!1;function l(e){s||n(370)}var c=n(0),d=!1,u=l,_=null,p=null,f=c(i.a,o["a"],d,u,_,p);f.options.__file="src/components/MdList/MdList.vue",t["default"]=f.exports},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(1),i=a(r);function a(e){return e&&e.__esModule?e:{default:e}}t.default=new i.default({name:"MdList",data:function(){return{MdList:{expandable:[],expandATab:this.expandATab,pushExpandable:this.pushExpandable,removeExpandable:this.removeExpandable}}},provide:function(){return{MdList:this.MdList}},props:{mdExpandSingle:{default:!1}},methods:{expandATab:function(e){if(this.mdExpandSingle&&e){var t=this.MdList.expandable.filter((function(t){return t!==e}));t.forEach((function(e){return e.close()}))}},pushExpandable:function(e){var t=this.MdList.expandable;t.find((function(t){return t===e}))||(this.MdList.expandable=t.concat([e]))},removeExpandable:function(e){var t=this.MdList.expandable;t.find((function(t){return t===e}))&&(this.MdList.expandable=t.filter((function(t){return t!==e})))}}})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(7),i=a(r);function a(e){return e&&e.__esModule?e:{default:e}}t.default={name:"MdOption",props:{value:[String,Number,Boolean],disabled:Boolean},inject:{MdSelect:{},MdOptgroup:{default:{}}},data:function(){return{uniqueId:"md-option-"+(0,i.default)(),isSelected:!1,isChecked:!1}},computed:{selectValue:function(){return this.MdSelect.modelValue},isMultiple:function(){return this.MdSelect.multiple},isDisabled:function(){return this.MdOptgroup.disabled||this.disabled},key:function(){var e=this.value||0===this.value||!1===this.value||""===this.value;return e?this.value:this.uniqueId},inputLabel:function(){return this.MdSelect.label},optionClasses:function(){return{"md-selected":this.isSelected||this.isChecked}}},watch:{selectValue:function(){this.setIsSelected()},isChecked:function(e){e!==this.isSelected&&this.setSelection()},isSelected:function(e){this.isChecked=e}},methods:{getTextContent:function(){if(this.$el)return this.$el.textContent.trim();var e=this.$slots.default;return e?e[0].text.trim():""},setIsSelected:function(){this.isMultiple?void 0!==this.selectValue?this.isSelected=this.selectValue.includes(this.value):this.isSelected=!1:this.isSelected=this.selectValue===this.value},setSingleSelection:function(){this.MdSelect.setValue(this.value)},setMultipleSelection:function(){this.MdSelect.setMultipleValue(this.value)},setSelection:function(){this.isDisabled||(this.isMultiple?this.setMultipleSelection():this.setSingleSelection())},setItem:function(){this.$set(this.MdSelect.items,this.key,this.getTextContent())}},updated:function(){this.setItem()},created:function(){this.setItem(),this.setIsSelected()}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={name:"MdOptgroup",props:{label:String,disabled:Boolean},provide:function(){return{MdOptgroup:{disabled:this.disabled}}}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(7),i=c(r),a=n(383),o=c(a),s=n(18),l=c(s);function c(e){return e&&e.__esModule?e:{default:e}}function d(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t1?this.getMultipleName(e):1===e.length?e[0].name:null:t.value.split("\\").pop()},openPicker:function(){this.onFocus(),this.$refs.inputFile.click()},onChange:function(e){this.onFileSelected(e)},onFileSelected:function(e){var t=e.target,n=e.dataTransfer,r=t.files||n.files;this.model=this.getFileName(r,t),this.$emit("md-change",r||t.value)}},created:function(){this.MdField.file=!0},beforeDestroy:function(){this.MdField.file=!1}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(6),i=a(r);function a(e){return e&&e.__esModule?e:{default:e}}t.default={name:"MdFileIcon",components:{MdIcon:i.default}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=Object.assign||function(e){for(var t=1;t=i&&(e.style.height=r+t+"px",i'+t+""}function c(e,t){if(0===t.length)return e;var n=e.toLowerCase().indexOf(t[0].toLowerCase());if(-1===n)return"";for(var r=0,i=1;i1||t[0].tag)throw new Error;var n=u(t[0],this.mdTerm,this.mdFuzzySearch);return e("div",{staticClass:"md-highlight-text",class:this.$mdActiveTheme,domProps:{innerHTML:n}})}catch(r){i.default.util.warn("MdHighlightText can only render text nodes.",this)}return null}})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(1),i=a(r);function a(e){return e&&e.__esModule?e:{default:e}}t.default=new i.default({name:"MdImage",props:{mdSrc:String}})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(129),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=!1;function s(e){o||n(398)}var l=n(0),c=null,d=!1,u=s,_=null,p=null,f=l(i.a,c,d,u,_,p);f.options.__file="src/components/MdList/MdListItem/MdListItem.vue",t["default"]=f.exports},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=Object.assign||function(e){for(var t=1;tt&&this.setStepperAsDone(this.MdSteppers.activeStep)},setActiveStep:function(e){if(this.mdLinear&&!this.isPreviousStepperDone(e))return!1;e===this.MdSteppers.activeStep||!this.isStepperEditable(e)&&this.isStepperDone(e)||(this.setPreviousStepperAsDone(e),this.MdSteppers.activeStep=e,this.$emit("md-changed",e),this.$emit("update:mdActiveStep",e),this.MdSteppers.items[e].error=null)},setActiveButtonEl:function(){this.activeButtonEl=this.$el.querySelector(".md-stepper-header.md-button.md-active")},setActiveStepByIndex:function(e){var t=this.getItemsAndKeys(),n=t.keys;this.hasActiveStep()||(this.MdSteppers.activeStep=n[e])},setupObservers:function(){var e=this.$el.querySelector(".md-steppers-wrapper");"ResizeObserver"in window?(this.resizeObserver=new window.ResizeObserver(this.calculateStepperPos),this.resizeObserver.observe(this.$el)):window.addEventListener("resize",this.calculateStepperPos),e&&(this.resizeObserver=(0,o.default)(this.$el.querySelector(".md-steppers-wrapper"),{childList:!0,characterData:!0,subtree:!0},this.calculateStepperPos))},calculateStepperPos:function(){if(!this.mdVertical){var e=this.$el.querySelector(".md-stepper:nth-child("+(this.activeStepIndex+1)+")");this.contentStyles={height:e.offsetHeight+"px"}}},onActiveStepIndex:function(){var e=this.getItemsAndKeys(),t=(e.items,e.keys);if(this.hasActiveStep()||this.activeStepIndex){this.MdSteppers.activeStep=t[this.activeStepIndex];for(var n=0;n0}))},setHeaderScroll:function(e){var t=this;(0,a.default)((function(){t.MdTable.contentEl.scrollLeft=e.target.scrollLeft}))},getContentEl:function(){return this.$el.querySelector(".md-table-content")},setContentEl:function(){this.MdTable.contentEl=this.getContentEl()},setHeaderPadding:function(){this.setContentEl();var e=this.MdTable.contentEl,t=e.childNodes[0];this.fixedHeaderPadding=e.offsetWidth-t.offsetWidth},getModel:function(){return this.value},getModelItem:function(e){return this.value[e]},manageItemSelection:function(e){this.MdTable.selectedItems.includes(e)?this.MdTable.selectedItems=this.MdTable.selectedItems.filter((function(t){return t!==e})):this.MdTable.selectedItems=this.MdTable.selectedItems.concat([e])},sortTable:function(){Array.isArray(this.value)&&this.$emit("input",this.mdSortFn(this.value))},select:function(e){this.$emit("update:mdSelectedValue",e),this.$emit("md-selected",e)},syncSelectedValue:function(){var e=this;this.$nextTick().then((function(){"single"===e.MdTable.selectingMode?e.MdTable.singleSelection=e.mdSelectedValue:"multiple"===e.MdTable.selectingMode&&(e.MdTable.selectedItems=e.mdSelectedValue||[])}))},setWidth:function(){this.mdFixedHeader&&(this.fixedHeaderTableWidth=this.$refs.contentTable.offsetWidth)}},created:function(){this.mdSort&&this.sortTable(),this.syncSelectedValue()},mounted:function(){this.setContentEl(),this.$nextTick().then(this.setWidth),this.mdFixedHeader&&(this.setHeaderPadding(),this.windowResizeObserver=new T.default(window,this.setWidth))},beforeDestroy:function(){this.windowResizeObserver&&this.windowResizeObserver.destroy()}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=Object.assign||function(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:this.mdItem;"multiple"===this.mdSelectable&&(this.MdTable.selectable=this.MdTable.selectable.filter((function(t){return t!==e})))}},created:function(){var e=this;this.$nextTick((function(){e.addSelectableItem(),e.MdTable.selectingMode=e.mdSelectable}))},beforeDestroy:function(){this.removeSelectableItem()}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(168),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(488),s=!1;function l(e){s||n(487)}var c=n(0),d=!1,u=l,_=null,p=null,f=c(i.a,o["a"],d,u,_,p);f.options.__file="src/components/MdTable/MdTableCellSelection.vue",t["default"]=f.exports},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={name:"MdTableCellSelection",props:{value:Boolean,mdRowId:[Number,String],mdSelectable:Boolean,mdDisabled:Boolean},inject:["MdTable"],data:function(){return{isSelected:!1}},watch:{value:{immediate:!0,handler:function(e){this.isSelected=e}}},methods:{onChange:function(){this.$emit("input",this.isSelected)}}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={name:"MdTableRowGhost",props:{mdIndex:[String,Number],mdId:[String,Number],mdItem:[Array,Object]},render:function(){return this.$slots.default[0].componentOptions.propsData.mdIndex=this.mdIndex,this.$slots.default[0].componentOptions.propsData.mdId=this.mdId,this.$slots.default[0].componentOptions.propsData.mdItem=this.mdItem,this.$slots.default[0]}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(171),i=a(r);function a(e){return e&&e.__esModule?e:{default:e}}t.default={name:"MdTableToolbar",components:{MdToolbar:i.default},inject:["MdTable"]}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(172),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(495),s=!1;function l(e){s||n(494)}var c=n(0),d=!1,u=l,_=null,p=null,f=c(i.a,o["a"],d,u,_,p);f.options.__file="src/components/MdToolbar/MdToolbar.vue",t["default"]=f.exports},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(1),i=a(r);function a(e){return e&&e.__esModule?e:{default:e}}t.default=new i.default({name:"MdToolbar",props:{mdElevation:{type:[String,Number],default:4}}})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(108),i=(o(r),n(110)),a=o(i);function o(e){return e&&e.__esModule?e:{default:e}}t.default={name:"MdTableEmptyState",props:a.default,inject:["MdTable"]}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={name:"MdTableCell",props:{mdId:[String,Number],mdLabel:String,mdNumeric:Boolean,mdTooltip:String,mdSortBy:String},inject:["MdTable"],data:function(){return{index:null,parentNode:null}},computed:{cellClasses:function(){return{"md-numeric":this.mdNumeric}}},watch:{mdSortBy:function(){this.setCellData()},mdNumeric:function(){this.setCellData()},mdLabel:function(){this.setCellData()},mdTooltip:function(){this.setCellData()}},methods:{setCellData:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this;this.$set(this.MdTable.items,e.index,{id:e.mdId,label:e.mdLabel,numeric:e.mdNumeric,tooltip:e.mdTooltip,sortBy:e.mdSortBy})},updateAllCellData:function(){var e=this;this.MdTable.items={};var t=Array.from(this.parentNode.childNodes).filter((function(e){var t=e.tagName,n=e.classList,r=n&&n.contains("md-table-cell-selection"),i=t&&"td"===t.toLowerCase();return i&&!r}));t.forEach((function(t,n){var r=t.__vue__;r.index=n,e.setCellData(r)}))}},mounted:function(){this.parentNode=this.$el.parentNode,this.updateAllCellData()},destroyed:function(){var e=null!==this.$el.parentNode;if(e)return!1;this.updateAllCellData()}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={name:"MdTablePagination",inject:["MdTable"],props:{mdPageSize:{type:[String,Number],default:10},mdPageOptions:{type:Array,default:function(){return[10,25,50,100]}},mdPage:{type:Number,default:1},mdTotal:{type:[String,Number],default:"Many"},mdLabel:{type:String,default:"Rows per page:"},mdSeparator:{type:String,default:"of"}},data:function(){return{currentPageSize:0}},computed:{currentItemCount:function(){return(this.mdPage-1)*this.mdPageSize+1},currentPageCount:function(){return this.mdPage*this.mdPageSize}},watch:{mdPageSize:{immediate:!0,handler:function(e){this.currentPageSize=this.pageSize}}},methods:{setPageSize:function(){this.$emit("update:mdPageSize",this.currentPageSize)},goToPrevious:function(){},goToNext:function(){}},created:function(){this.currentPageSize=this.mdPageSize}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=Object.assign||function(e){for(var t=1;t0&&"left"===e&&this.setSwipeActiveTabByIndex(this.activeTabIndex-1)}},methods:{hasActiveTab:function(){return this.activeTab||this.mdActiveTab},getItemsAndKeys:function(){var e=this.MdTabs.items;return{items:e,keys:Object.keys(e)}},setActiveTab:function(e){this.mdSyncRoute||(this.activeTab=e)},setActiveButtonEl:function(){this.activeButtonEl=this.$refs.navigation.querySelector(".md-tab-nav-button.md-active")},setSwipeActiveTabByIndex:function(e){var t=this.getItemsAndKeys(),n=t.keys;n&&(this.activeTab=n[e])},setActiveTabByIndex:function(e){var t=this.getItemsAndKeys(),n=t.keys;this.hasActiveTab()||(this.activeTab=n[e])},setHasContent:function(){var e=this.getItemsAndKeys(),t=e.items,n=e.keys;this.hasContent=n.some((function(e){return t[e].hasContent}))},setIndicatorStyles:function(){var e=this;(0,a.default)((function(){e.$nextTick().then((function(){if(e.activeButtonEl&&e.$refs.indicator){var t=e.activeButtonEl.offsetWidth,n=e.activeButtonEl.offsetLeft,r=e.$refs.indicator.offsetLeft;e.indicatorClass=r1)for(var n=1;nn)return!1;if(r===n)return e===t;e:for(var i=0,a=0;i-1:e.model},on:{focus:e.onFocus,blur:e.onBlur,change:function(t){var n=e.model,r=t.target,i=!!r.checked;if(Array.isArray(n)){var a=null,o=e._i(n,a);r.checked?o<0&&(e.model=n.concat([a])):o>-1&&(e.model=n.slice(0,o).concat(n.slice(o+1)))}else e.model=i}}},"input",e.attributes,!1),e.listeners)):"radio"===e.attributes.type?n("input",e._g(e._b({directives:[{name:"model",rawName:"v-model",value:e.model,expression:"model"}],staticClass:"md-input",attrs:{type:"radio"},domProps:{checked:e._q(e.model,null)},on:{focus:e.onFocus,blur:e.onBlur,change:function(t){e.model=null}}},"input",e.attributes,!1),e.listeners)):n("input",e._g(e._b({directives:[{name:"model",rawName:"v-model",value:e.model,expression:"model"}],staticClass:"md-input",attrs:{type:e.attributes.type},domProps:{value:e.model},on:{focus:e.onFocus,blur:e.onBlur,input:function(t){t.target.composing||(e.model=t.target.value)}}},"input",e.attributes,!1),e.listeners))},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("md-field",{staticClass:"md-chips",class:[e.$mdActiveTheme,e.chipsClasses]},[e._t("default"),e._v(" "),e._l(e.value,(function(t,r){return n("md-chip",{key:t,attrs:{"md-deletable":!e.mdStatic,"md-clickable":!e.mdStatic,"md-duplicated":e.duplicatedChip===t},on:{keydown:function(n){return!n.type.indexOf("key")&&e._k(n.keyCode,"enter",13,n.key,"Enter")?null:e.$emit("md-click",t,r)},"md-delete":function(n){return n.stopPropagation(),e.removeChip(t)}},nativeOn:{click:function(n){return e.$emit("md-click",t,r)}}},[e.$scopedSlots["md-chip"]?e._t("md-chip",[e._v(e._s(t))],{chip:t}):[e._v(e._s(t))]],2)})),e._v(" "),!e.mdStatic&&e.modelRespectLimit?n("md-input",{ref:"input",attrs:{type:e.mdInputType,id:e.id,placeholder:e.mdPlaceholder},on:{input:e.handleInput,keydown:[function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"enter",13,t.key,"Enter")?null:e.insertChip(t)},function(t){return t.type.indexOf("key")||8===t.keyCode?e.handleBackRemove(t):null}],focusout:e.handleFocusOut},model:{value:e.inputValue,callback:function(t){e.inputValue="string"===typeof t?t.trim():t},expression:"inputValue"}}):e._e()],2)},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(78),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(293),s=!1;function l(e){s||n(292)}var c=n(0),d=!1,u=l,_=null,p=null,f=c(i.a,o["a"],d,u,_,p);f.options.__file="src/components/MdChips/MdChip.vue",t["default"]=f.exports},function(e,t){},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("transition",{attrs:{name:"md-chip",appear:""}},[n("div",e._g({staticClass:"md-chip",class:[e.$mdActiveTheme,e.chipClasses],attrs:{tabindex:"0"}},e.$listeners),[e.mdClickable||!e.mdRipple?n("md-ripple",{attrs:{"md-disabled":e.mdDisabled}},[e._t("default")],2):e._t("default"),e._v(" "),n("transition",{attrs:{name:"md-input-action",appear:""}},[e.mdDeletable?n("md-button",{staticClass:"md-icon-button md-dense md-input-action md-clear",attrs:{tabindex:"-1"},on:{click:function(t){return e.$emit("md-delete",t)}}},[n("md-clear-icon")],1):e._e()],1)],2)])},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(2),i=s(r),a=n(79),o=s(a);function s(e){return e&&e.__esModule?e:{default:e}}t.default=function(e){(0,i.default)(e),e.component(o.default.name,o.default)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(2),i=s(r),a=n(296),o=s(a);function s(e){return e&&e.__esModule?e:{default:e}}t.default=function(e){(0,i.default)(e),e.component(o.default.name,o.default)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(81),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(328),s=!1;function l(e){s||n(297)}var c=n(0),d=!1,u=l,_=null,p=null,f=c(i.a,o["a"],d,u,_,p);f.options.__file="src/components/MdDatepicker/MdDatepicker.vue",t["default"]=f.exports},function(e,t){},function(e,t,n){"use strict";e.exports="undefined"!==typeof navigator&&/^(?!.*Seamonkey)(?=.*Firefox).*/i.test(navigator.userAgent)},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(5),i=n(82),a=n(3),o=n(83),s=n(84);function l(e,t){var n=e<0?"-":"",r=Math.abs(e).toString();while(r.length0?n:1-n;return l("yy"===t?r%100:r,t.length)},M:function(e,t){var n=e.getUTCMonth();return"M"===t?String(n+1):l(n+1,2)},d:function(e,t){return l(e.getUTCDate(),t.length)},a:function(e,t){var n=e.getUTCHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":case"aaa":return n.toUpperCase();case"aaaaa":return n[0];case"aaaa":default:return"am"===n?"a.m.":"p.m."}},h:function(e,t){return l(e.getUTCHours()%12||12,t.length)},H:function(e,t){return l(e.getUTCHours(),t.length)},m:function(e,t){return l(e.getUTCMinutes(),t.length)},s:function(e,t){return l(e.getUTCSeconds(),t.length)}},d=c,u=864e5;function _(e){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");var t=Object(a["a"])(e),n=t.getTime();t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0);var r=t.getTime(),i=n-r;return Math.floor(i/u)+1}var p=n(85),f=n(86),m=n(87),h=n(25),g={am:"am",pm:"pm",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},b={G:function(e,t,n){var r=e.getUTCFullYear()>0?1:0;switch(t){case"G":case"GG":case"GGG":return n.era(r,{width:"abbreviated"});case"GGGGG":return n.era(r,{width:"narrow"});case"GGGG":default:return n.era(r,{width:"wide"})}},y:function(e,t,n){if("yo"===t){var r=e.getUTCFullYear(),i=r>0?r:1-r;return n.ordinalNumber(i,{unit:"year"})}return d.y(e,t)},Y:function(e,t,n,r){var i=Object(h["a"])(e,r),a=i>0?i:1-i;if("YY"===t){var o=a%100;return l(o,2)}return"Yo"===t?n.ordinalNumber(a,{unit:"year"}):l(a,t.length)},R:function(e,t){var n=Object(f["a"])(e);return l(n,t.length)},u:function(e,t){var n=e.getUTCFullYear();return l(n,t.length)},Q:function(e,t,n){var r=Math.ceil((e.getUTCMonth()+1)/3);switch(t){case"Q":return String(r);case"QQ":return l(r,2);case"Qo":return n.ordinalNumber(r,{unit:"quarter"});case"QQQ":return n.quarter(r,{width:"abbreviated",context:"formatting"});case"QQQQQ":return n.quarter(r,{width:"narrow",context:"formatting"});case"QQQQ":default:return n.quarter(r,{width:"wide",context:"formatting"})}},q:function(e,t,n){var r=Math.ceil((e.getUTCMonth()+1)/3);switch(t){case"q":return String(r);case"qq":return l(r,2);case"qo":return n.ordinalNumber(r,{unit:"quarter"});case"qqq":return n.quarter(r,{width:"abbreviated",context:"standalone"});case"qqqqq":return n.quarter(r,{width:"narrow",context:"standalone"});case"qqqq":default:return n.quarter(r,{width:"wide",context:"standalone"})}},M:function(e,t,n){var r=e.getUTCMonth();switch(t){case"M":case"MM":return d.M(e,t);case"Mo":return n.ordinalNumber(r+1,{unit:"month"});case"MMM":return n.month(r,{width:"abbreviated",context:"formatting"});case"MMMMM":return n.month(r,{width:"narrow",context:"formatting"});case"MMMM":default:return n.month(r,{width:"wide",context:"formatting"})}},L:function(e,t,n){var r=e.getUTCMonth();switch(t){case"L":return String(r+1);case"LL":return l(r+1,2);case"Lo":return n.ordinalNumber(r+1,{unit:"month"});case"LLL":return n.month(r,{width:"abbreviated",context:"standalone"});case"LLLLL":return n.month(r,{width:"narrow",context:"standalone"});case"LLLL":default:return n.month(r,{width:"wide",context:"standalone"})}},w:function(e,t,n,r){var i=Object(m["a"])(e,r);return"wo"===t?n.ordinalNumber(i,{unit:"week"}):l(i,t.length)},I:function(e,t,n){var r=Object(p["a"])(e);return"Io"===t?n.ordinalNumber(r,{unit:"week"}):l(r,t.length)},d:function(e,t,n){return"do"===t?n.ordinalNumber(e.getUTCDate(),{unit:"date"}):d.d(e,t)},D:function(e,t,n){var r=_(e);return"Do"===t?n.ordinalNumber(r,{unit:"dayOfYear"}):l(r,t.length)},E:function(e,t,n){var r=e.getUTCDay();switch(t){case"E":case"EE":case"EEE":return n.day(r,{width:"abbreviated",context:"formatting"});case"EEEEE":return n.day(r,{width:"narrow",context:"formatting"});case"EEEEEE":return n.day(r,{width:"short",context:"formatting"});case"EEEE":default:return n.day(r,{width:"wide",context:"formatting"})}},e:function(e,t,n,r){var i=e.getUTCDay(),a=(i-r.weekStartsOn+8)%7||7;switch(t){case"e":return String(a);case"ee":return l(a,2);case"eo":return n.ordinalNumber(a,{unit:"day"});case"eee":return n.day(i,{width:"abbreviated",context:"formatting"});case"eeeee":return n.day(i,{width:"narrow",context:"formatting"});case"eeeeee":return n.day(i,{width:"short",context:"formatting"});case"eeee":default:return n.day(i,{width:"wide",context:"formatting"})}},c:function(e,t,n,r){var i=e.getUTCDay(),a=(i-r.weekStartsOn+8)%7||7;switch(t){case"c":return String(a);case"cc":return l(a,t.length);case"co":return n.ordinalNumber(a,{unit:"day"});case"ccc":return n.day(i,{width:"abbreviated",context:"standalone"});case"ccccc":return n.day(i,{width:"narrow",context:"standalone"});case"cccccc":return n.day(i,{width:"short",context:"standalone"});case"cccc":default:return n.day(i,{width:"wide",context:"standalone"})}},i:function(e,t,n){var r=e.getUTCDay(),i=0===r?7:r;switch(t){case"i":return String(i);case"ii":return l(i,t.length);case"io":return n.ordinalNumber(i,{unit:"day"});case"iii":return n.day(r,{width:"abbreviated",context:"formatting"});case"iiiii":return n.day(r,{width:"narrow",context:"formatting"});case"iiiiii":return n.day(r,{width:"short",context:"formatting"});case"iiii":default:return n.day(r,{width:"wide",context:"formatting"})}},a:function(e,t,n){var r=e.getUTCHours(),i=r/12>=1?"pm":"am";switch(t){case"a":case"aa":case"aaa":return n.dayPeriod(i,{width:"abbreviated",context:"formatting"});case"aaaaa":return n.dayPeriod(i,{width:"narrow",context:"formatting"});case"aaaa":default:return n.dayPeriod(i,{width:"wide",context:"formatting"})}},b:function(e,t,n){var r,i=e.getUTCHours();switch(r=12===i?g.noon:0===i?g.midnight:i/12>=1?"pm":"am",t){case"b":case"bb":case"bbb":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"});case"bbbbb":return n.dayPeriod(r,{width:"narrow",context:"formatting"});case"bbbb":default:return n.dayPeriod(r,{width:"wide",context:"formatting"})}},B:function(e,t,n){var r,i=e.getUTCHours();switch(r=i>=17?g.evening:i>=12?g.afternoon:i>=4?g.morning:g.night,t){case"B":case"BB":case"BBB":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"});case"BBBBB":return n.dayPeriod(r,{width:"narrow",context:"formatting"});case"BBBB":default:return n.dayPeriod(r,{width:"wide",context:"formatting"})}},h:function(e,t,n){if("ho"===t){var r=e.getUTCHours()%12;return 0===r&&(r=12),n.ordinalNumber(r,{unit:"hour"})}return d.h(e,t)},H:function(e,t,n){return"Ho"===t?n.ordinalNumber(e.getUTCHours(),{unit:"hour"}):d.H(e,t)},K:function(e,t,n){var r=e.getUTCHours()%12;return"Ko"===t?n.ordinalNumber(r,{unit:"hour"}):l(r,t.length)},k:function(e,t,n){var r=e.getUTCHours();return 0===r&&(r=24),"ko"===t?n.ordinalNumber(r,{unit:"hour"}):l(r,t.length)},m:function(e,t,n){return"mo"===t?n.ordinalNumber(e.getUTCMinutes(),{unit:"minute"}):d.m(e,t)},s:function(e,t,n){return"so"===t?n.ordinalNumber(e.getUTCSeconds(),{unit:"second"}):d.s(e,t)},S:function(e,t){var n=t.length,r=e.getUTCMilliseconds(),i=Math.floor(r*Math.pow(10,n-3));return l(i,n)},X:function(e,t,n,r){var i=r._originalDate||e,a=i.getTimezoneOffset();if(0===a)return"Z";switch(t){case"X":return E(a);case"XXXX":case"XX":return S(a);case"XXXXX":case"XXX":default:return S(a,":")}},x:function(e,t,n,r){var i=r._originalDate||e,a=i.getTimezoneOffset();switch(t){case"x":return E(a);case"xxxx":case"xx":return S(a);case"xxxxx":case"xxx":default:return S(a,":")}},O:function(e,t,n,r){var i=r._originalDate||e,a=i.getTimezoneOffset();switch(t){case"O":case"OO":case"OOO":return"GMT"+v(a,":");case"OOOO":default:return"GMT"+S(a,":")}},z:function(e,t,n,r){var i=r._originalDate||e,a=i.getTimezoneOffset();switch(t){case"z":case"zz":case"zzz":return"GMT"+v(a,":");case"zzzz":default:return"GMT"+S(a,":")}},t:function(e,t,n,r){var i=r._originalDate||e,a=Math.floor(i.getTime()/1e3);return l(a,t.length)},T:function(e,t,n,r){var i=r._originalDate||e,a=i.getTime();return l(a,t.length)}};function v(e,t){var n=e>0?"-":"+",r=Math.abs(e),i=Math.floor(r/60),a=r%60;if(0===a)return n+String(i);var o=t||"";return n+String(i)+o+l(a,2)}function E(e,t){if(e%60===0){var n=e>0?"-":"+";return n+l(Math.abs(e)/60,2)}return S(e,t)}function S(e,t){var n=t||"",r=e>0?"-":"+",i=Math.abs(e),a=l(Math.floor(i/60),2),o=l(i%60,2);return r+a+n+o}var y=b;function T(e,t){switch(e){case"P":return t.date({width:"short"});case"PP":return t.date({width:"medium"});case"PPP":return t.date({width:"long"});case"PPPP":default:return t.date({width:"full"})}}function C(e,t){switch(e){case"p":return t.time({width:"short"});case"pp":return t.time({width:"medium"});case"ppp":return t.time({width:"long"});case"pppp":default:return t.time({width:"full"})}}function N(e,t){var n,r=e.match(/(P+)(p+)?/),i=r[1],a=r[2];if(!a)return T(e,t);switch(i){case"P":n=t.dateTime({width:"short"});break;case"PP":n=t.dateTime({width:"medium"});break;case"PPP":n=t.dateTime({width:"long"});break;case"PPPP":default:n=t.dateTime({width:"full"});break}return n.replace("{{date}}",T(i,t)).replace("{{time}}",C(a,t))}var O={p:C,P:N},R=O,A=n(88),w=n(89);t["default"]=L;var I=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,x=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,M=/^'(.*?)'?$/,D=/''/g;function L(e,t,n){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var l=String(t),c=n||{},d=c.locale||s["a"],u=d.options&&d.options.firstWeekContainsDate,_=null==u?1:Object(r["a"])(u),p=null==c.firstWeekContainsDate?_:Object(r["a"])(c.firstWeekContainsDate);if(!(p>=1&&p<=7))throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively");var f=d.options&&d.options.weekStartsOn,m=null==f?0:Object(r["a"])(f),h=null==c.weekStartsOn?m:Object(r["a"])(c.weekStartsOn);if(!(h>=0&&h<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");if(!d.localize)throw new RangeError("locale must contain localize property");if(!d.formatLong)throw new RangeError("locale must contain formatLong property");var g=Object(a["a"])(e);if(!Object(o["default"])(g))throw new RangeError("Invalid time value");var b=Object(i["a"])(g),v=Object(A["a"])(g,b),E={firstWeekContainsDate:p,weekStartsOn:h,locale:d,_originalDate:g},S=l.match(x).map((function(e){var t=e[0];if("p"===t||"P"===t){var n=R[t];return n(e,d.formatLong,E)}return e})).join("").match(I).map((function(e){if("''"===e)return"'";var t=e[0];if("'"===t)return P(e);var n=y[t];return n?(!c.awareOfUnicodeTokens&&Object(w["a"])(e)&&Object(w["b"])(e),n(v,e,d.localize,E)):e})).join("");return S}function P(e){return e.match(M)[1].replace(D,"'")}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(5);function i(e,t){if(null==e)throw new TypeError("assign requires that input parameter not be null or undefined");for(var n in t=t||{},t)t.hasOwnProperty(n)&&(e[n]=t[n]);return e}var a=n(82),o=n(3),s=n(88),l=n(84),c=n(25);function d(e,t,n){if(arguments.length<2)throw new TypeError("2 arguments required, but only "+arguments.length+" present");var i=n||{},a=i.locale,s=a&&a.options&&a.options.weekStartsOn,l=null==s?0:Object(r["a"])(s),c=null==i.weekStartsOn?l:Object(r["a"])(i.weekStartsOn);if(!(c>=0&&c<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var d=Object(o["a"])(e),u=Object(r["a"])(t),_=d.getUTCDay(),p=u%7,f=(p+7)%7,m=(f0,i=r?t:1-t;if(i<=50)n=e||100;else{var a=i+50,o=100*Math.floor(a/100),s=e>=a%100;n=e+o-(s?100:0)}return r?n:1-n}var I=[31,28,31,30,31,30,31,31,30,31,30,31],x=[31,29,31,30,31,30,31,31,30,31,30,31];function M(e){return e%400===0||e%4===0&&e%100!==0}var D={G:{priority:140,parse:function(e,t,n,r){switch(t){case"G":case"GG":case"GGG":return n.era(e,{width:"abbreviated"})||n.era(e,{width:"narrow"});case"GGGGG":return n.era(e,{width:"narrow"});case"GGGG":default:return n.era(e,{width:"wide"})||n.era(e,{width:"abbreviated"})||n.era(e,{width:"narrow"})}},set:function(e,t,n,r){return e.setUTCFullYear(1===n?10:-9,0,1),e.setUTCHours(0,0,0,0),e}},y:{priority:130,parse:function(e,t,n,r){var i=function(e){return{year:e,isTwoDigitYear:"yy"===t}};switch(t){case"y":return O(4,e,i);case"yo":return n.ordinalNumber(e,{unit:"year",valueCallback:i});default:return O(t.length,e,i)}},validate:function(e,t,n){return t.isTwoDigitYear||t.year>0},set:function(e,t,n,r){var i=Object(c["a"])(e,r);if(n.isTwoDigitYear){var a=w(n.year,i);return e.setUTCFullYear(a,0,1),e.setUTCHours(0,0,0,0),e}var o=i>0?n.year:1-n.year;return e.setUTCFullYear(o,0,1),e.setUTCHours(0,0,0,0),e}},Y:{priority:130,parse:function(e,t,n,r){var i=function(e){return{year:e,isTwoDigitYear:"YY"===t}};switch(t){case"Y":return O(4,e,i);case"Yo":return n.ordinalNumber(e,{unit:"year",valueCallback:i});default:return O(t.length,e,i)}},validate:function(e,t,n){return t.isTwoDigitYear||t.year>0},set:function(e,t,n,r){var i=e.getUTCFullYear();if(n.isTwoDigitYear){var a=w(n.year,i);return e.setUTCFullYear(a,0,r.firstWeekContainsDate),e.setUTCHours(0,0,0,0),Object(p["a"])(e,r)}var o=i>0?n.year:1-n.year;return e.setUTCFullYear(o,0,r.firstWeekContainsDate),e.setUTCHours(0,0,0,0),Object(p["a"])(e,r)}},R:{priority:130,parse:function(e,t,n,r){return R("R"===t?4:t.length,e)},set:function(e,t,n,r){var i=new Date(0);return i.setUTCFullYear(n,0,4),i.setUTCHours(0,0,0,0),Object(g["a"])(i)}},u:{priority:130,parse:function(e,t,n,r){return R("u"===t?4:t.length,e)},set:function(e,t,n,r){return e.setUTCFullYear(n,0,1),e.setUTCHours(0,0,0,0),e}},Q:{priority:120,parse:function(e,t,n,r){switch(t){case"Q":case"QQ":return O(t.length,e);case"Qo":return n.ordinalNumber(e,{unit:"quarter"});case"QQQ":return n.quarter(e,{width:"abbreviated",context:"formatting"})||n.quarter(e,{width:"narrow",context:"formatting"});case"QQQQQ":return n.quarter(e,{width:"narrow",context:"formatting"});case"QQQQ":default:return n.quarter(e,{width:"wide",context:"formatting"})||n.quarter(e,{width:"abbreviated",context:"formatting"})||n.quarter(e,{width:"narrow",context:"formatting"})}},validate:function(e,t,n){return t>=1&&t<=4},set:function(e,t,n,r){return e.setUTCMonth(3*(n-1),1),e.setUTCHours(0,0,0,0),e}},q:{priority:120,parse:function(e,t,n,r){switch(t){case"q":case"qq":return O(t.length,e);case"qo":return n.ordinalNumber(e,{unit:"quarter"});case"qqq":return n.quarter(e,{width:"abbreviated",context:"standalone"})||n.quarter(e,{width:"narrow",context:"standalone"});case"qqqqq":return n.quarter(e,{width:"narrow",context:"standalone"});case"qqqq":default:return n.quarter(e,{width:"wide",context:"standalone"})||n.quarter(e,{width:"abbreviated",context:"standalone"})||n.quarter(e,{width:"narrow",context:"standalone"})}},validate:function(e,t,n){return t>=1&&t<=4},set:function(e,t,n,r){return e.setUTCMonth(3*(n-1),1),e.setUTCHours(0,0,0,0),e}},M:{priority:110,parse:function(e,t,n,r){var i=function(e){return e-1};switch(t){case"M":return T(S.month,e,i);case"MM":return O(2,e,i);case"Mo":return n.ordinalNumber(e,{unit:"month",valueCallback:i});case"MMM":return n.month(e,{width:"abbreviated",context:"formatting"})||n.month(e,{width:"narrow",context:"formatting"});case"MMMMM":return n.month(e,{width:"narrow",context:"formatting"});case"MMMM":default:return n.month(e,{width:"wide",context:"formatting"})||n.month(e,{width:"abbreviated",context:"formatting"})||n.month(e,{width:"narrow",context:"formatting"})}},validate:function(e,t,n){return t>=0&&t<=11},set:function(e,t,n,r){return e.setUTCMonth(n,1),e.setUTCHours(0,0,0,0),e}},L:{priority:110,parse:function(e,t,n,r){var i=function(e){return e-1};switch(t){case"L":return T(S.month,e,i);case"LL":return O(2,e,i);case"Lo":return n.ordinalNumber(e,{unit:"month",valueCallback:i});case"LLL":return n.month(e,{width:"abbreviated",context:"standalone"})||n.month(e,{width:"narrow",context:"standalone"});case"LLLLL":return n.month(e,{width:"narrow",context:"standalone"});case"LLLL":default:return n.month(e,{width:"wide",context:"standalone"})||n.month(e,{width:"abbreviated",context:"standalone"})||n.month(e,{width:"narrow",context:"standalone"})}},validate:function(e,t,n){return t>=0&&t<=11},set:function(e,t,n,r){return e.setUTCMonth(n,1),e.setUTCHours(0,0,0,0),e}},w:{priority:100,parse:function(e,t,n,r){switch(t){case"w":return T(S.week,e);case"wo":return n.ordinalNumber(e,{unit:"week"});default:return O(t.length,e)}},validate:function(e,t,n){return t>=1&&t<=53},set:function(e,t,n,r){return Object(p["a"])(_(e,n,r),r)}},I:{priority:100,parse:function(e,t,n,r){switch(t){case"I":return T(S.week,e);case"Io":return n.ordinalNumber(e,{unit:"week"});default:return O(t.length,e)}},validate:function(e,t,n){return t>=1&&t<=53},set:function(e,t,n,r){return Object(g["a"])(h(e,n,r),r)}},d:{priority:90,parse:function(e,t,n,r){switch(t){case"d":return T(S.date,e);case"do":return n.ordinalNumber(e,{unit:"date"});default:return O(t.length,e)}},validate:function(e,t,n){var r=e.getUTCFullYear(),i=M(r),a=e.getUTCMonth();return i?t>=1&&t<=x[a]:t>=1&&t<=I[a]},set:function(e,t,n,r){return e.setUTCDate(n),e.setUTCHours(0,0,0,0),e}},D:{priority:90,parse:function(e,t,n,r){switch(t){case"D":case"DD":return T(S.dayOfYear,e);case"Do":return n.ordinalNumber(e,{unit:"date"});default:return O(t.length,e)}},validate:function(e,t,n){var r=e.getUTCFullYear(),i=M(r);return i?t>=1&&t<=366:t>=1&&t<=365},set:function(e,t,n,r){return e.setUTCMonth(0,n),e.setUTCHours(0,0,0,0),e}},E:{priority:90,parse:function(e,t,n,r){switch(t){case"E":case"EE":case"EEE":return n.day(e,{width:"abbreviated",context:"formatting"})||n.day(e,{width:"short",context:"formatting"})||n.day(e,{width:"narrow",context:"formatting"});case"EEEEE":return n.day(e,{width:"narrow",context:"formatting"});case"EEEEEE":return n.day(e,{width:"short",context:"formatting"})||n.day(e,{width:"narrow",context:"formatting"});case"EEEE":default:return n.day(e,{width:"wide",context:"formatting"})||n.day(e,{width:"abbreviated",context:"formatting"})||n.day(e,{width:"short",context:"formatting"})||n.day(e,{width:"narrow",context:"formatting"})}},validate:function(e,t,n){return t>=0&&t<=6},set:function(e,t,n,r){return e=d(e,n,r),e.setUTCHours(0,0,0,0),e}},e:{priority:90,parse:function(e,t,n,r){var i=function(e){var t=7*Math.floor((e-1)/7);return(e+r.weekStartsOn+6)%7+t};switch(t){case"e":case"ee":return O(t.length,e,i);case"eo":return n.ordinalNumber(e,{unit:"day",valueCallback:i});case"eee":return n.day(e,{width:"abbreviated",context:"formatting"})||n.day(e,{width:"short",context:"formatting"})||n.day(e,{width:"narrow",context:"formatting"});case"eeeee":return n.day(e,{width:"narrow",context:"formatting"});case"eeeeee":return n.day(e,{width:"short",context:"formatting"})||n.day(e,{width:"narrow",context:"formatting"});case"eeee":default:return n.day(e,{width:"wide",context:"formatting"})||n.day(e,{width:"abbreviated",context:"formatting"})||n.day(e,{width:"short",context:"formatting"})||n.day(e,{width:"narrow",context:"formatting"})}},validate:function(e,t,n){return t>=0&&t<=6},set:function(e,t,n,r){return e=d(e,n,r),e.setUTCHours(0,0,0,0),e}},c:{priority:90,parse:function(e,t,n,r){var i=function(e){var t=7*Math.floor((e-1)/7);return(e+r.weekStartsOn+6)%7+t};switch(t){case"c":case"cc":return O(t.length,e,i);case"co":return n.ordinalNumber(e,{unit:"day",valueCallback:i});case"ccc":return n.day(e,{width:"abbreviated",context:"standalone"})||n.day(e,{width:"short",context:"standalone"})||n.day(e,{width:"narrow",context:"standalone"});case"ccccc":return n.day(e,{width:"narrow",context:"standalone"});case"cccccc":return n.day(e,{width:"short",context:"standalone"})||n.day(e,{width:"narrow",context:"standalone"});case"cccc":default:return n.day(e,{width:"wide",context:"standalone"})||n.day(e,{width:"abbreviated",context:"standalone"})||n.day(e,{width:"short",context:"standalone"})||n.day(e,{width:"narrow",context:"standalone"})}},validate:function(e,t,n){return t>=0&&t<=6},set:function(e,t,n,r){return e=d(e,n,r),e.setUTCHours(0,0,0,0),e}},i:{priority:90,parse:function(e,t,n,r){var i=function(e){return 0===e?7:e};switch(t){case"i":case"ii":return O(t.length,e);case"io":return n.ordinalNumber(e,{unit:"day"});case"iii":return n.day(e,{width:"abbreviated",context:"formatting",valueCallback:i})||n.day(e,{width:"short",context:"formatting",valueCallback:i})||n.day(e,{width:"narrow",context:"formatting",valueCallback:i});case"iiiii":return n.day(e,{width:"narrow",context:"formatting",valueCallback:i});case"iiiiii":return n.day(e,{width:"short",context:"formatting",valueCallback:i})||n.day(e,{width:"narrow",context:"formatting",valueCallback:i});case"iiii":default:return n.day(e,{width:"wide",context:"formatting",valueCallback:i})||n.day(e,{width:"abbreviated",context:"formatting",valueCallback:i})||n.day(e,{width:"short",context:"formatting",valueCallback:i})||n.day(e,{width:"narrow",context:"formatting",valueCallback:i})}},validate:function(e,t,n){return t>=1&&t<=7},set:function(e,t,n,r){return e=f(e,n,r),e.setUTCHours(0,0,0,0),e}},a:{priority:80,parse:function(e,t,n,r){switch(t){case"a":case"aa":case"aaa":return n.dayPeriod(e,{width:"abbreviated",context:"formatting"})||n.dayPeriod(e,{width:"narrow",context:"formatting"});case"aaaaa":return n.dayPeriod(e,{width:"narrow",context:"formatting"});case"aaaa":default:return n.dayPeriod(e,{width:"wide",context:"formatting"})||n.dayPeriod(e,{width:"abbreviated",context:"formatting"})||n.dayPeriod(e,{width:"narrow",context:"formatting"})}},set:function(e,t,n,r){return e.setUTCHours(A(n),0,0,0),e}},b:{priority:80,parse:function(e,t,n,r){switch(t){case"b":case"bb":case"bbb":return n.dayPeriod(e,{width:"abbreviated",context:"formatting"})||n.dayPeriod(e,{width:"narrow",context:"formatting"});case"bbbbb":return n.dayPeriod(e,{width:"narrow",context:"formatting"});case"bbbb":default:return n.dayPeriod(e,{width:"wide",context:"formatting"})||n.dayPeriod(e,{width:"abbreviated",context:"formatting"})||n.dayPeriod(e,{width:"narrow",context:"formatting"})}},set:function(e,t,n,r){return e.setUTCHours(A(n),0,0,0),e}},B:{priority:80,parse:function(e,t,n,r){switch(t){case"B":case"BB":case"BBB":return n.dayPeriod(e,{width:"abbreviated",context:"formatting"})||n.dayPeriod(e,{width:"narrow",context:"formatting"});case"BBBBB":return n.dayPeriod(e,{width:"narrow",context:"formatting"});case"BBBB":default:return n.dayPeriod(e,{width:"wide",context:"formatting"})||n.dayPeriod(e,{width:"abbreviated",context:"formatting"})||n.dayPeriod(e,{width:"narrow",context:"formatting"})}},set:function(e,t,n,r){return e.setUTCHours(A(n),0,0,0),e}},h:{priority:70,parse:function(e,t,n,r){switch(t){case"h":return T(S.hour12h,e);case"ho":return n.ordinalNumber(e,{unit:"hour"});default:return O(t.length,e)}},validate:function(e,t,n){return t>=1&&t<=12},set:function(e,t,n,r){var i=e.getUTCHours()>=12;return i&&n<12?e.setUTCHours(n+12,0,0,0):i||12!==n?e.setUTCHours(n,0,0,0):e.setUTCHours(0,0,0,0),e}},H:{priority:70,parse:function(e,t,n,r){switch(t){case"H":return T(S.hour23h,e);case"Ho":return n.ordinalNumber(e,{unit:"hour"});default:return O(t.length,e)}},validate:function(e,t,n){return t>=0&&t<=23},set:function(e,t,n,r){return e.setUTCHours(n,0,0,0),e}},K:{priority:70,parse:function(e,t,n,r){switch(t){case"K":return T(S.hour11h,e);case"Ko":return n.ordinalNumber(e,{unit:"hour"});default:return O(t.length,e)}},validate:function(e,t,n){return t>=0&&t<=11},set:function(e,t,n,r){var i=e.getUTCHours()>=12;return i&&n<12?e.setUTCHours(n+12,0,0,0):e.setUTCHours(n,0,0,0),e}},k:{priority:70,parse:function(e,t,n,r){switch(t){case"k":return T(S.hour24h,e);case"ko":return n.ordinalNumber(e,{unit:"hour"});default:return O(t.length,e)}},validate:function(e,t,n){return t>=1&&t<=24},set:function(e,t,n,r){var i=n<=24?n%24:n;return e.setUTCHours(i,0,0,0),e}},m:{priority:60,parse:function(e,t,n,r){switch(t){case"m":return T(S.minute,e);case"mo":return n.ordinalNumber(e,{unit:"minute"});default:return O(t.length,e)}},validate:function(e,t,n){return t>=0&&t<=59},set:function(e,t,n,r){return e.setUTCMinutes(n,0,0),e}},s:{priority:50,parse:function(e,t,n,r){switch(t){case"s":return T(S.second,e);case"so":return n.ordinalNumber(e,{unit:"second"});default:return O(t.length,e)}},validate:function(e,t,n){return t>=0&&t<=59},set:function(e,t,n,r){return e.setUTCSeconds(n,0),e}},S:{priority:30,parse:function(e,t,n,r){var i=function(e){return Math.floor(e*Math.pow(10,3-t.length))};return O(t.length,e,i)},set:function(e,t,n,r){return e.setUTCMilliseconds(n),e}},X:{priority:10,parse:function(e,t,n,r){switch(t){case"X":return C(y.basicOptionalMinutes,e);case"XX":return C(y.basic,e);case"XXXX":return C(y.basicOptionalSeconds,e);case"XXXXX":return C(y.extendedOptionalSeconds,e);case"XXX":default:return C(y.extended,e)}},set:function(e,t,n,r){return t.timestampIsSet?e:new Date(e.getTime()-n)}},x:{priority:10,parse:function(e,t,n,r){switch(t){case"x":return C(y.basicOptionalMinutes,e);case"xx":return C(y.basic,e);case"xxxx":return C(y.basicOptionalSeconds,e);case"xxxxx":return C(y.extendedOptionalSeconds,e);case"xxx":default:return C(y.extended,e)}},set:function(e,t,n,r){return t.timestampIsSet?e:new Date(e.getTime()-n)}},t:{priority:40,parse:function(e,t,n,r){return N(e)},set:function(e,t,n,r){return[new Date(1e3*n),{timestampIsSet:!0}]}},T:{priority:20,parse:function(e,t,n,r){return N(e)},set:function(e,t,n,r){return[new Date(n),{timestampIsSet:!0}]}}},L=D,P=n(89);t["default"]=Y;var k=10,F=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,U=/^'(.*?)'?$/,B=/''/g,G=/\S/;function Y(e,t,n,c){if(arguments.length<3)throw new TypeError("3 arguments required, but only "+arguments.length+" present");var d=String(e),u=String(t),_=c||{},p=_.locale||l["a"];if(!p.match)throw new RangeError("locale must contain match property");var f=p.options&&p.options.firstWeekContainsDate,m=null==f?1:Object(r["a"])(f),h=null==_.firstWeekContainsDate?m:Object(r["a"])(_.firstWeekContainsDate);if(!(h>=1&&h<=7))throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively");var g=p.options&&p.options.weekStartsOn,b=null==g?0:Object(r["a"])(g),v=null==_.weekStartsOn?b:Object(r["a"])(_.weekStartsOn);if(!(v>=0&&v<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");if(""===u)return""===d?Object(o["a"])(n):new Date(NaN);var E,S={firstWeekContainsDate:h,weekStartsOn:v,locale:p},y=[{priority:k,set:j,index:0}],T=u.match(F);for(E=0;E0&&G.test(d))return new Date(NaN);var A=y.map((function(e){return e.priority})).sort((function(e,t){return t-e})).filter((function(e,t,n){return n.indexOf(e)===t})).map((function(e){return y.filter((function(t){return t.priority===e})).reverse()})).map((function(e){return e[0]})),w=Object(o["a"])(n);if(isNaN(w))return new Date(NaN);var I=Object(s["a"])(w,Object(a["a"])(w)),x={};for(E=0;E=0){i=1;break}function o(e){var t=!1;return function(){t||(t=!0,window.Promise.resolve().then((function(){t=!1,e()})))}}function s(e){var t=!1;return function(){t||(t=!0,setTimeout((function(){t=!1,e()}),i))}}var l=n&&window.Promise,c=l?o:s;function d(e){var t={};return e&&"[object Function]"===t.toString.call(e)}function u(e,t){if(1!==e.nodeType)return[];var n=e.ownerDocument.defaultView,r=n.getComputedStyle(e,null);return t?r[t]:r}function _(e){return"HTML"===e.nodeName?e:e.parentNode||e.host}function p(e){if(!e)return document.body;switch(e.nodeName){case"HTML":case"BODY":return e.ownerDocument.body;case"#document":return e.body}var t=u(e),n=t.overflow,r=t.overflowX,i=t.overflowY;return/(auto|scroll|overlay)/.test(n+i+r)?e:p(_(e))}var f=n&&!(!window.MSInputMethodContext||!document.documentMode),m=n&&/MSIE 10/.test(navigator.userAgent);function h(e){return 11===e?f:10===e?m:f||m}function g(e){if(!e)return document.documentElement;var t=h(10)?document.body:null,n=e.offsetParent||null;while(n===t&&e.nextElementSibling)n=(e=e.nextElementSibling).offsetParent;var r=n&&n.nodeName;return r&&"BODY"!==r&&"HTML"!==r?-1!==["TH","TD","TABLE"].indexOf(n.nodeName)&&"static"===u(n,"position")?g(n):n:e?e.ownerDocument.documentElement:document.documentElement}function E(e){var t=e.nodeName;return"BODY"!==t&&("HTML"===t||g(e.firstElementChild)===e)}function S(e){return null!==e.parentNode?S(e.parentNode):e}function b(e,t){if(!e||!e.nodeType||!t||!t.nodeType)return document.documentElement;var n=e.compareDocumentPosition(t)&Node.DOCUMENT_POSITION_FOLLOWING,r=n?e:t,i=n?t:e,a=document.createRange();a.setStart(r,0),a.setEnd(i,0);var o=a.commonAncestorContainer;if(e!==o&&t!==o||r.contains(i))return E(o)?o:g(o);var s=S(e);return s.host?b(s.host,t):b(e,S(t).host)}function v(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"top",n="top"===t?"scrollTop":"scrollLeft",r=e.nodeName;if("BODY"===r||"HTML"===r){var i=e.ownerDocument.documentElement,a=e.ownerDocument.scrollingElement||i;return a[n]}return e[n]}function y(e,t){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=v(t,"top"),i=v(t,"left"),a=n?-1:1;return e.top+=r*a,e.bottom+=r*a,e.left+=i*a,e.right+=i*a,e}function T(e,t){var n="x"===t?"Left":"Top",r="Left"===n?"Right":"Bottom";return parseFloat(e["border"+n+"Width"],10)+parseFloat(e["border"+r+"Width"],10)}function C(e,t,n,r){return Math.max(t["offset"+e],t["scroll"+e],n["client"+e],n["offset"+e],n["scroll"+e],h(10)?parseInt(n["offset"+e])+parseInt(r["margin"+("Height"===e?"Top":"Left")])+parseInt(r["margin"+("Height"===e?"Bottom":"Right")]):0)}function N(e){var t=e.body,n=e.documentElement,r=h(10)&&getComputedStyle(n);return{height:C("Height",t,n,r),width:C("Width",t,n,r)}}var O=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")},R=function(){function e(e,t){for(var n=0;n2&&void 0!==arguments[2]&&arguments[2],r=h(10),i="HTML"===t.nodeName,a=M(e),o=M(t),s=p(e),l=u(t),c=parseFloat(l.borderTopWidth,10),d=parseFloat(l.borderLeftWidth,10);n&&i&&(o.top=Math.max(o.top,0),o.left=Math.max(o.left,0));var _=I({top:a.top-o.top-c,left:a.left-o.left-d,width:a.width,height:a.height});if(_.marginTop=0,_.marginLeft=0,!r&&i){var f=parseFloat(l.marginTop,10),m=parseFloat(l.marginLeft,10);_.top-=c-f,_.bottom-=c-f,_.left-=d-m,_.right-=d-m,_.marginTop=f,_.marginLeft=m}return(r&&!n?t.contains(s):t===s&&"BODY"!==s.nodeName)&&(_=y(_,t)),_}function D(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=e.ownerDocument.documentElement,r=x(e,n),i=Math.max(n.clientWidth,window.innerWidth||0),a=Math.max(n.clientHeight,window.innerHeight||0),o=t?0:v(n),s=t?0:v(n,"left"),l={top:o-r.top+r.marginTop,left:s-r.left+r.marginLeft,width:i,height:a};return I(l)}function L(e){var t=e.nodeName;if("BODY"===t||"HTML"===t)return!1;if("fixed"===u(e,"position"))return!0;var n=_(e);return!!n&&L(n)}function P(e){if(!e||!e.parentElement||h())return document.documentElement;var t=e.parentElement;while(t&&"none"===u(t,"transform"))t=t.parentElement;return t||document.documentElement}function k(e,t,n,r){var i=arguments.length>4&&void 0!==arguments[4]&&arguments[4],a={top:0,left:0},o=i?P(e):b(e,t);if("viewport"===r)a=D(o,i);else{var s=void 0;"scrollParent"===r?(s=p(_(t)),"BODY"===s.nodeName&&(s=e.ownerDocument.documentElement)):s="window"===r?e.ownerDocument.documentElement:r;var l=x(s,o,i);if("HTML"!==s.nodeName||L(o))a=l;else{var c=N(e.ownerDocument),d=c.height,u=c.width;a.top+=l.top-l.marginTop,a.bottom=d+l.top,a.left+=l.left-l.marginLeft,a.right=u+l.left}}n=n||0;var f="number"===typeof n;return a.left+=f?n:n.left||0,a.top+=f?n:n.top||0,a.right-=f?n:n.right||0,a.bottom-=f?n:n.bottom||0,a}function F(e){var t=e.width,n=e.height;return t*n}function U(e,t,n,r,i){var a=arguments.length>5&&void 0!==arguments[5]?arguments[5]:0;if(-1===e.indexOf("auto"))return e;var o=k(n,r,a,i),s={top:{width:o.width,height:t.top-o.top},right:{width:o.right-t.right,height:o.height},bottom:{width:o.width,height:o.bottom-t.bottom},left:{width:t.left-o.left,height:o.height}},l=Object.keys(s).map((function(e){return w({key:e},s[e],{area:F(s[e])})})).sort((function(e,t){return t.area-e.area})),c=l.filter((function(e){var t=e.width,r=e.height;return t>=n.clientWidth&&r>=n.clientHeight})),d=c.length>0?c[0].key:l[0].key,u=e.split("-")[1];return d+(u?"-"+u:"")}function B(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,i=r?P(t):b(t,n);return x(n,i,r)}function G(e){var t=e.ownerDocument.defaultView,n=t.getComputedStyle(e),r=parseFloat(n.marginTop||0)+parseFloat(n.marginBottom||0),i=parseFloat(n.marginLeft||0)+parseFloat(n.marginRight||0),a={width:e.offsetWidth+i,height:e.offsetHeight+r};return a}function Y(e){var t={left:"right",right:"left",bottom:"top",top:"bottom"};return e.replace(/left|right|bottom|top/g,(function(e){return t[e]}))}function j(e,t,n){n=n.split("-")[0];var r=G(e),i={width:r.width,height:r.height},a=-1!==["right","left"].indexOf(n),o=a?"top":"left",s=a?"left":"top",l=a?"height":"width",c=a?"width":"height";return i[o]=t[o]+t[l]/2-r[l]/2,i[s]=n===s?t[s]-r[c]:t[Y(s)],i}function q(e,t){return Array.prototype.find?e.find(t):e.filter(t)[0]}function H(e,t,n){if(Array.prototype.findIndex)return e.findIndex((function(e){return e[t]===n}));var r=q(e,(function(e){return e[t]===n}));return e.indexOf(r)}function V(e,t,n){var r=void 0===n?e:e.slice(0,H(e,"name",n));return r.forEach((function(e){e["function"]&&console.warn("`modifier.function` is deprecated, use `modifier.fn`!");var n=e["function"]||e.fn;e.enabled&&d(n)&&(t.offsets.popper=I(t.offsets.popper),t.offsets.reference=I(t.offsets.reference),t=n(t,e))})),t}function $(){if(!this.state.isDestroyed){var e={instance:this,styles:{},arrowStyles:{},attributes:{},flipped:!1,offsets:{}};e.offsets.reference=B(this.state,this.popper,this.reference,this.options.positionFixed),e.placement=U(this.options.placement,e.offsets.reference,this.popper,this.reference,this.options.modifiers.flip.boundariesElement,this.options.modifiers.flip.padding),e.originalPlacement=e.placement,e.positionFixed=this.options.positionFixed,e.offsets.popper=j(this.popper,e.offsets.reference,e.placement),e.offsets.popper.position=this.options.positionFixed?"fixed":"absolute",e=V(this.modifiers,e),this.state.isCreated?this.options.onUpdate(e):(this.state.isCreated=!0,this.options.onCreate(e))}}function z(e,t){return e.some((function(e){var n=e.name,r=e.enabled;return r&&n===t}))}function W(e){for(var t=[!1,"ms","Webkit","Moz","O"],n=e.charAt(0).toUpperCase()+e.slice(1),r=0;ro[f]&&(e.offsets.popper[_]+=s[_]+m-o[f]),e.offsets.popper=I(e.offsets.popper);var h=s[_]+s[c]/2-m/2,g=u(e.instance.popper),E=parseFloat(g["margin"+d],10),S=parseFloat(g["border"+d+"Width"],10),b=h-e.offsets.popper[_]-E-S;return b=Math.max(Math.min(o[c]-m,b),0),e.arrowElement=r,e.offsets.arrow=(n={},A(n,_,Math.round(b)),A(n,p,""),n),e}function _e(e){return"end"===e?"start":"start"===e?"end":e}var pe=["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"],fe=pe.slice(3);function me(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=fe.indexOf(e),r=fe.slice(n+1).concat(fe.slice(0,n));return t?r.reverse():r}var he={FLIP:"flip",CLOCKWISE:"clockwise",COUNTERCLOCKWISE:"counterclockwise"};function ge(e,t){if(z(e.instance.modifiers,"inner"))return e;if(e.flipped&&e.placement===e.originalPlacement)return e;var n=k(e.instance.popper,e.instance.reference,t.padding,t.boundariesElement,e.positionFixed),r=e.placement.split("-")[0],i=Y(r),a=e.placement.split("-")[1]||"",o=[];switch(t.behavior){case he.FLIP:o=[r,i];break;case he.CLOCKWISE:o=me(r);break;case he.COUNTERCLOCKWISE:o=me(r,!0);break;default:o=t.behavior}return o.forEach((function(s,l){if(r!==s||o.length===l+1)return e;r=e.placement.split("-")[0],i=Y(r);var c=e.offsets.popper,d=e.offsets.reference,u=Math.floor,_="left"===r&&u(c.right)>u(d.left)||"right"===r&&u(c.left)u(d.top)||"bottom"===r&&u(c.top)u(n.right),m=u(c.top)u(n.bottom),g="left"===r&&p||"right"===r&&f||"top"===r&&m||"bottom"===r&&h,E=-1!==["top","bottom"].indexOf(r),S=!!t.flipVariations&&(E&&"start"===a&&p||E&&"end"===a&&f||!E&&"start"===a&&m||!E&&"end"===a&&h),b=!!t.flipVariationsByContent&&(E&&"start"===a&&f||E&&"end"===a&&p||!E&&"start"===a&&h||!E&&"end"===a&&m),v=S||b;(_||g||v)&&(e.flipped=!0,(_||g)&&(r=o[l+1]),v&&(a=_e(a)),e.placement=r+(a?"-"+a:""),e.offsets.popper=w({},e.offsets.popper,j(e.instance.popper,e.offsets.reference,e.placement)),e=V(e.instance.modifiers,e,"flip"))})),e}function Ee(e){var t=e.offsets,n=t.popper,r=t.reference,i=e.placement.split("-")[0],a=Math.floor,o=-1!==["top","bottom"].indexOf(i),s=o?"right":"bottom",l=o?"left":"top",c=o?"width":"height";return n[s]a(r[s])&&(e.offsets.popper[l]=a(r[s])),e}function Se(e,t,n,r){var i=e.match(/((?:\-|\+)?\d*\.?\d*)(.*)/),a=+i[1],o=i[2];if(!a)return e;if(0===o.indexOf("%")){var s=void 0;switch(o){case"%p":s=n;break;case"%":case"%r":default:s=r}var l=I(s);return l[t]/100*a}if("vh"===o||"vw"===o){var c=void 0;return c="vh"===o?Math.max(document.documentElement.clientHeight,window.innerHeight||0):Math.max(document.documentElement.clientWidth,window.innerWidth||0),c/100*a}return a}function be(e,t,n,r){var i=[0,0],a=-1!==["right","left"].indexOf(r),o=e.split(/(\+|\-)/).map((function(e){return e.trim()})),s=o.indexOf(q(o,(function(e){return-1!==e.search(/,|\s/)})));o[s]&&-1===o[s].indexOf(",")&&console.warn("Offsets separated by white space(s) are deprecated, use a comma (,) instead.");var l=/\s*,\s*|\s+/,c=-1!==s?[o.slice(0,s).concat([o[s].split(l)[0]]),[o[s].split(l)[1]].concat(o.slice(s+1))]:[o];return c=c.map((function(e,r){var i=(1===r?!a:a)?"height":"width",o=!1;return e.reduce((function(e,t){return""===e[e.length-1]&&-1!==["+","-"].indexOf(t)?(e[e.length-1]=t,o=!0,e):o?(e[e.length-1]+=t,o=!1,e):e.concat(t)}),[]).map((function(e){return Se(e,i,t,n)}))})),c.forEach((function(e,t){e.forEach((function(n,r){ne(n)&&(i[t]+=n*("-"===e[r-1]?-1:1))}))})),i}function ve(e,t){var n=t.offset,r=e.placement,i=e.offsets,a=i.popper,o=i.reference,s=r.split("-")[0],l=void 0;return l=ne(+n)?[+n,0]:be(n,a,o,s),"left"===s?(a.top+=l[0],a.left-=l[1]):"right"===s?(a.top+=l[0],a.left+=l[1]):"top"===s?(a.left+=l[0],a.top-=l[1]):"bottom"===s&&(a.left+=l[0],a.top+=l[1]),e.popper=a,e}function ye(e,t){var n=t.boundariesElement||g(e.instance.popper);e.instance.reference===n&&(n=g(n));var r=W("transform"),i=e.instance.popper.style,a=i.top,o=i.left,s=i[r];i.top="",i.left="",i[r]="";var l=k(e.instance.popper,e.instance.reference,t.padding,n,e.positionFixed);i.top=a,i.left=o,i[r]=s,t.boundaries=l;var c=t.priority,d=e.offsets.popper,u={primary:function(e){var n=d[e];return d[e]l[e]&&!t.escapeWithReference&&(r=Math.min(d[n],l[e]-("right"===e?d.width:d.height))),A({},n,r)}};return c.forEach((function(e){var t=-1!==["left","top"].indexOf(e)?"primary":"secondary";d=w({},d,u[t](e))})),e.offsets.popper=d,e}function Te(e){var t=e.placement,n=t.split("-")[0],r=t.split("-")[1];if(r){var i=e.offsets,a=i.reference,o=i.popper,s=-1!==["bottom","top"].indexOf(n),l=s?"left":"top",c=s?"width":"height",d={start:A({},l,a[l]),end:A({},l,a[l]+a[c]-o[c])};e.offsets.popper=w({},o,d[r])}return e}function Ce(e){if(!de(e.instance.modifiers,"hide","preventOverflow"))return e;var t=e.offsets.reference,n=q(e.instance.modifiers,(function(e){return"preventOverflow"===e.name})).boundaries;if(t.bottomn.right||t.top>n.bottom||t.right2&&void 0!==arguments[2]?arguments[2]:{};O(this,e),this.scheduleUpdate=function(){return requestAnimationFrame(r.update)},this.update=c(this.update.bind(this)),this.options=w({},e.Defaults,i),this.state={isDestroyed:!1,isCreated:!1,scrollParents:[]},this.reference=t&&t.jquery?t[0]:t,this.popper=n&&n.jquery?n[0]:n,this.options.modifiers={},Object.keys(w({},e.Defaults.modifiers,i.modifiers)).forEach((function(t){r.options.modifiers[t]=w({},e.Defaults.modifiers[t]||{},i.modifiers?i.modifiers[t]:{})})),this.modifiers=Object.keys(this.options.modifiers).map((function(e){return w({name:e},r.options.modifiers[e])})).sort((function(e,t){return e.order-t.order})),this.modifiers.forEach((function(e){e.enabled&&d(e.onLoad)&&e.onLoad(r.reference,r.popper,r.options,e,r.state)})),this.update();var a=this.options.eventsEnabled;a&&this.enableEventListeners(),this.state.eventsEnabled=a}return R(e,[{key:"update",value:function(){return $.call(this)}},{key:"destroy",value:function(){return Q.call(this)}},{key:"enableEventListeners",value:function(){return J.call(this)}},{key:"disableEventListeners",value:function(){return te.call(this)}}]),e}();Ae.Utils=("undefined"!==typeof window?window:e).PopperUtils,Ae.placements=pe,Ae.Defaults=Re,t["default"]=Ae}.call(t,n(37))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(94),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(319),s=n(0),l=!1,c=null,d=null,u=null,_=s(i.a,o["a"],l,c,d,u);_.options.__file="src/core/icons/MdArrowRightIcon.vue",t["default"]=_.exports},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement;e._self._c;return e._m(0)},i=[function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("md-icon",{staticClass:"md-icon-image"},[n("svg",{attrs:{height:"24",viewBox:"0 0 24 24",width:"24",xmlns:"http://www.w3.org/2000/svg"}},[n("path",{attrs:{d:"M8.59 16.34l4.58-4.59-4.58-4.59L10 5.75l6 6-6 6z"}}),e._v(" "),n("path",{attrs:{d:"M0-.25h24v24H0z",fill:"none"}})])])}];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(95),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(321),s=n(0),l=!1,c=null,d=null,u=null,_=s(i.a,o["a"],l,c,d,u);_.options.__file="src/core/icons/MdArrowLeftIcon.vue",t["default"]=_.exports},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement;e._self._c;return e._m(0)},i=[function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("md-icon",{staticClass:"md-icon-image"},[n("svg",{attrs:{height:"24",viewBox:"0 0 24 24",width:"24",xmlns:"http://www.w3.org/2000/svg"}},[n("path",{attrs:{d:"M15.41 16.09l-4.58-4.59 4.58-4.59L14 5.5l-6 6 6 6z"}}),e._v(" "),n("path",{attrs:{d:"M0-.5h24v24H0z",fill:"none"}})])])}];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t){},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("md-portal",[n("transition",{attrs:{name:"md-dialog"}},[e.mdActive?n("div",{staticClass:"md-dialog"},[n("md-focus-trap",[n("div",e._g({staticClass:"md-dialog-container",class:[e.dialogContainerClasses,e.$mdActiveTheme],on:{keydown:function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"esc",27,t.key,["Esc","Escape"])?null:e.onEsc(t)}}},e.$listeners),[e._t("default"),e._v(" "),n("keep-alive",[e.mdBackdrop?n("md-overlay",{class:e.mdBackdropClass,attrs:{"md-fixed":"","md-active":e.mdActive},on:{click:e.onClick}}):e._e()],1)],2)])],1):e._e()])],1)},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("md-popover",{attrs:{"md-settings":e.popperSettings,"md-active":""}},[n("transition",{attrs:{name:"md-datepicker-dialog",appear:""},on:{enter:e.setContentStyles,"after-leave":e.resetDate}},[n("div",{staticClass:"md-datepicker-dialog",class:[e.$mdActiveTheme]},[n("div",{staticClass:"md-datepicker-header"},[n("span",{staticClass:"md-datepicker-year-select",class:{"md-selected":"year"===e.currentView},on:{click:function(t){e.currentView="year"}}},[e._v(e._s(e.selectedYear))]),e._v(" "),n("div",{staticClass:"md-datepicker-date-select",class:{"md-selected":"year"!==e.currentView},on:{click:function(t){e.currentView="day"}}},[n("strong",{staticClass:"md-datepicker-dayname"},[e._v(e._s(e.shortDayName)+", ")]),e._v(" "),n("strong",{staticClass:"md-datepicker-monthname"},[e._v(e._s(e.shortMonthName))]),e._v(" "),n("strong",{staticClass:"md-datepicker-day"},[e._v(e._s(e.currentDay))])])]),e._v(" "),n("div",{staticClass:"md-datepicker-body"},[n("transition",{attrs:{name:"md-datepicker-body-header"}},["day"===e.currentView?n("div",{staticClass:"md-datepicker-body-header"},[n("md-button",{staticClass:"md-dense md-icon-button",on:{click:e.previousMonth}},[n("md-arrow-left-icon")],1),e._v(" "),n("md-button",{staticClass:"md-dense md-icon-button",on:{click:e.nextMonth}},[n("md-arrow-right-icon")],1)],1):e._e()]),e._v(" "),n("div",{staticClass:"md-datepicker-body-content",style:e.contentStyles},[n("transition",{attrs:{name:"md-datepicker-view"}},["day"===e.currentView?n("transition-group",{staticClass:"md-datepicker-panel md-datepicker-calendar",class:e.calendarClasses,attrs:{tag:"div",name:"md-datepicker-month"}},e._l([e.currentDate],(function(t){return n("div",{key:t.getMonth(),staticClass:"md-datepicker-panel md-datepicker-month"},[n("md-button",{staticClass:"md-dense md-datepicker-month-trigger",on:{click:function(t){e.currentView="month"}}},[e._v(e._s(e.currentMonthName)+" "+e._s(e.currentYear))]),e._v(" "),n("div",{staticClass:"md-datepicker-week"},[e._l(e.locale.shorterDays,(function(t,r){return r>=e.firstDayOfAWeek?n("span",{key:r},[e._v(e._s(t))]):e._e()})),e._v(" "),e._l(e.locale.shorterDays,(function(t,r){return r-1:e.model},on:{click:e.openPicker,blur:e.onBlur,change:function(t){var n=e.model,r=t.target,i=!!r.checked;if(Array.isArray(n)){var a=null,o=e._i(n,a);r.checked?o<0&&(e.model=n.concat([a])):o>-1&&(e.model=n.slice(0,o).concat(n.slice(o+1)))}else e.model=i}}},"input",{disabled:e.disabled,required:e.required,placeholder:e.placeholder},!1)):"radio"==={disabled:e.disabled,required:e.required,placeholder:e.placeholder}.type?n("input",e._b({directives:[{name:"model",rawName:"v-model",value:e.model,expression:"model"}],staticClass:"md-input",attrs:{readonly:"",type:"radio"},domProps:{checked:e._q(e.model,null)},on:{click:e.openPicker,blur:e.onBlur,change:function(t){e.model=null}}},"input",{disabled:e.disabled,required:e.required,placeholder:e.placeholder},!1)):n("input",e._b({directives:[{name:"model",rawName:"v-model",value:e.model,expression:"model"}],staticClass:"md-input",attrs:{readonly:"",type:{disabled:e.disabled,required:e.required,placeholder:e.placeholder}.type},domProps:{value:e.model},on:{click:e.openPicker,blur:e.onBlur,input:function(t){t.target.composing||(e.model=t.target.value)}}},"input",{disabled:e.disabled,required:e.required,placeholder:e.placeholder},!1)),e._v(" "),n("input",e._g(e._b({ref:"inputFile",attrs:{type:"file"},on:{change:e.onChange}},"input",e.attributes,!1),e.$listeners))],1)},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(125),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(387),s=n(0),l=!1,c=null,d=null,u=null,_=s(i.a,o["a"],l,c,d,u);_.options.__file="src/components/MdField/MdTextarea/MdTextarea.vue",t["default"]=_.exports},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("textarea",e._g(e._b({directives:[{name:"model",rawName:"v-model",value:e.model,expression:"model"}],staticClass:"md-textarea",style:e.textareaStyles,domProps:{value:e.model},on:{focus:e.onFocus,blur:e.onBlur,input:function(t){t.target.composing||(e.model=t.target.value)}}},"textarea",e.attributes,!1),e.listeners))},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(2),i=s(r),a=n(389),o=s(a);function s(e){return e&&e.__esModule?e:{default:e}}t.default=function(e){(0,i.default)(e),e.component(o.default.name,o.default)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(126),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=!1;function s(e){o||n(390)}var l=n(0),c=null,d=!1,u=s,_=null,p=null,f=l(i.a,c,d,u,_,p);f.options.__file="src/components/MdHighlightText/MdHighlightText.vue",t["default"]=f.exports},function(e,t){},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(2),i=s(r),a=n(392),o=s(a);function s(e){return e&&e.__esModule?e:{default:e}}t.default=function(e){(0,i.default)(e),e.component(o.default.name,o.default)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(127),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(394),s=!1;function l(e){s||n(393)}var c=n(0),d=!1,u=l,_=null,p=null,f=c(i.a,o["a"],d,u,_,p);f.options.__file="src/components/MdImage/MdImage.vue",t["default"]=f.exports},function(e,t){},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"md-image",class:[e.$mdActiveTheme]},[e._t("default")],2)},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n(396),t.default=function(e){}},function(e,t){},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(2),i=c(r),a=n(119),o=c(a),s=n(128),l=c(s);function c(e){return e&&e.__esModule?e:{default:e}}t.default=function(e){(0,i.default)(e),e.component(o.default.name,o.default),e.component(l.default.name,l.default)}},function(e,t){},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(131),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(402),s=n(0),l=!1,c=null,d=null,u=null,_=s(i.a,o["a"],l,c,d,u);_.options.__file="src/components/MdList/MdListItem/MdListItemDefault.vue",t["default"]=_.exports},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(132),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(401),s=n(0),l=!1,c=null,d=null,u=null,_=s(i.a,o["a"],l,c,d,u);_.options.__file="src/components/MdList/MdListItem/MdListItemContent.vue",t["default"]=_.exports},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("md-ripple",{staticClass:"md-list-item-content",attrs:{"md-disabled":e.mdDisabled}},[e._t("default")],2)},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"md-list-item-default",on:{click:e.toggleControl}},[n("md-list-item-content",{attrs:{"md-disabled":""}},[e._t("default")],2)],1)},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(133),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(404),s=n(0),l=!1,c=null,d=null,u=null,_=s(i.a,o["a"],l,c,d,u);_.options.__file="src/components/MdList/MdListItem/MdListItemFakeButton.vue",t["default"]=_.exports},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"md-list-item-fake-button",attrs:{disabled:e.disabled}},[n("md-list-item-content",{attrs:{"md-disabled":e.isDisabled}},[e._t("default")],2)],1)},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(134),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(406),s=n(0),l=!1,c=null,d=null,u=null,_=s(i.a,o["a"],l,c,d,u);_.options.__file="src/components/MdList/MdListItem/MdListItemButton.vue",t["default"]=_.exports},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("button",{staticClass:"md-list-item-button",attrs:{type:"button",disabled:e.disabled}},[n("md-list-item-content",{attrs:{"md-disabled":e.isDisabled}},[e._t("default")],2)],1)},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(135),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(408),s=n(0),l=!1,c=null,d=null,u=null,_=s(i.a,o["a"],l,c,d,u);_.options.__file="src/components/MdList/MdListItem/MdListItemLink.vue",t["default"]=_.exports},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("a",e._b({staticClass:"md-list-item-link"},"a",e.$props,!1),[n("md-list-item-content",{attrs:{"md-disabled":e.isDisabled}},[e._t("default")],2)],1)},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(136),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(410),s=n(0),l=!1,c=null,d=null,u=null,_=s(i.a,o["a"],l,c,d,u);_.options.__file="src/components/MdList/MdListItem/MdListItemRouter.vue",t["default"]=_.exports},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("router-link",e._b({staticClass:"md-list-item-router"},"router-link",e.routerProps,!1),[n("md-list-item-content",{attrs:{"md-disabled":e.isDisabled}},[e._t("default")],2)],1)},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(137),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(415),s=!1;function l(e){s||n(412)}var c=n(0),d=!1,u=l,_=null,p=null,f=c(i.a,o["a"],d,u,_,p);f.options.__file="src/components/MdList/MdListItem/MdListItemExpand.vue",t["default"]=f.exports},function(e,t){},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(138),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(414),s=n(0),l=!1,c=null,d=null,u=null,_=s(i.a,o["a"],l,c,d,u);_.options.__file="src/core/icons/MdArrowDownIcon.vue",t["default"]=_.exports},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement;e._self._c;return e._m(0)},i=[function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("md-icon",{staticClass:"md-icon-image"},[n("svg",{attrs:{height:"24",viewBox:"0 0 24 24",width:"24",xmlns:"http://www.w3.org/2000/svg"}},[n("path",{attrs:{d:"M7.41 7.84L12 12.42l4.59-4.58L18 9.25l-6 6-6-6z"}}),e._v(" "),n("path",{attrs:{d:"M0-.75h24v24H0z",fill:"none"}})])])}];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"md-list-item-expand",class:e.expandClasses},[n("md-list-item-content",{attrs:{"md-disabled":e.isDisabled},nativeOn:{click:function(t){return e.toggleExpand(t)}}},[e._t("default"),e._v(" "),n("md-arrow-down-icon",{staticClass:"md-list-expand-icon"})],2),e._v(" "),n("div",{ref:"listExpand",staticClass:"md-list-expand",style:e.expandStyles},[e._t("md-expand")],2)],1)},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(2),i=u(r),a=n(114),o=u(a),s=n(116),l=u(s),c=n(417),d=u(c);function u(e){return e&&e.__esModule?e:{default:e}}t.default=function(e){(0,i.default)(e),e.component(o.default.name,o.default),e.component(l.default.name,l.default),e.component(d.default.name,d.default)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(139),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(418),s=n(0),l=!1,c=null,d=null,u=null,_=s(i.a,o["a"],l,c,d,u);_.options.__file="src/components/MdMenu/MdMenuItem.vue",t["default"]=_.exports},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("md-list-item",e._g(e._b({staticClass:"md-menu-item",class:[e.itemClasses,e.$mdActiveTheme],attrs:{disabled:e.disabled,tabindex:e.highlighted&&-1}},"md-list-item",e.$attrs,!1),e.listeners),[e._t("default")],2)},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(2),i=c(r),a=n(420),o=c(a),s=n(423),l=c(s);function c(e){return e&&e.__esModule?e:{default:e}}t.default=function(e){(0,i.default)(e),e.component(o.default.name,o.default),e.component(l.default.name,l.default)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(140),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(422),s=!1;function l(e){s||n(421)}var c=n(0),d=!1,u=l,_=null,p=null,f=c(i.a,o["a"],d,u,_,p);f.options.__file="src/components/MdProgress/MdProgressBar/MdProgressBar.vue",t["default"]=f.exports},function(e,t){},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("transition",{attrs:{name:"md-progress-bar",appear:""}},[n("div",{staticClass:"md-progress-bar",class:[e.progressClasses,e.$mdActiveTheme]},[n("div",{staticClass:"md-progress-bar-track",style:e.progressTrackStyle}),e._v(" "),n("div",{staticClass:"md-progress-bar-fill",style:e.progressValueStyle}),e._v(" "),n("div",{staticClass:"md-progress-bar-buffer",attrs:{Style:e.progressBufferStyle}})])])},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(141),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(425),s=!1;function l(e){s||n(424)}var c=n(0),d=!1,u=l,_=null,p=null,f=c(i.a,o["a"],d,u,_,p);f.options.__file="src/components/MdProgress/MdProgressSpinner/MdProgressSpinner.vue",t["default"]=f.exports},function(e,t){},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("transition",{attrs:{name:"md-progress-spinner",appear:""}},[n("div",{staticClass:"md-progress-spinner",class:[e.progressClasses,e.$mdActiveTheme]},[n("svg",{ref:"md-progress-spinner-draw",staticClass:"md-progress-spinner-draw",attrs:{preserveAspectRatio:"xMidYMid meet",focusable:"false",viewBox:"0 0 "+e.mdDiameter+" "+e.mdDiameter}},[n("circle",{ref:"md-progress-spinner-circle",staticClass:"md-progress-spinner-circle",attrs:{cx:"50%",cy:"50%",r:e.circleRadius}})])])])},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(2),i=s(r),a=n(427),o=s(a);function s(e){return e&&e.__esModule?e:{default:e}}t.default=function(e){(0,i.default)(e),e.component(o.default.name,o.default)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(142),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(429),s=!1;function l(e){s||n(428)}var c=n(0),d=!1,u=l,_=null,p=null,f=c(i.a,o["a"],d,u,_,p);f.options.__file="src/components/MdRadio/MdRadio.vue",t["default"]=f.exports},function(e,t){},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"md-radio",class:[e.$mdActiveTheme,e.radioClasses]},[n("div",{staticClass:"md-radio-container",on:{click:function(t){return t.stopPropagation(),e.toggleCheck(t)}}},[n("md-ripple",{attrs:{"md-centered":"","md-active":e.rippleActive,"md-disabled":e.disabled},on:{"update:mdActive":function(t){e.rippleActive=t},"update:md-active":function(t){e.rippleActive=t}}},[n("input",e._b({attrs:{type:"radio"}},"input",{id:e.id,name:e.name,disabled:e.disabled,required:e.required,value:e.value,checked:e.isSelected},!1))])],1),e._v(" "),e.$slots.default?n("label",{staticClass:"md-radio-label",attrs:{for:e.id},on:{click:function(t){return t.preventDefault(),e.toggleCheck(t)}}},[e._t("default")],2):e._e()])},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(2),i=c(r),a=n(10),o=c(a),s=n(49),l=c(s);function c(e){return e&&e.__esModule?e:{default:e}}t.default=function(e){(0,i.default)(e),e.component(o.default.name,o.default),e.component(l.default.name,l.default)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(2),i=s(r),a=n(432),o=s(a);function s(e){return e&&e.__esModule?e:{default:e}}t.default=function(e){(0,i.default)(e),e.component(o.default.name,o.default)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(143),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(437),s=!1;function l(e){s||n(433)}var c=n(0),d=!1,u=l,_=null,p=null,f=c(i.a,o["a"],d,u,_,p);f.options.__file="src/components/MdSnackbar/MdSnackbar.vue",t["default"]=f.exports},function(e,t){},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(144),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(435),s=n(0),l=!0,c=null,d=null,u=null,_=s(i.a,o["a"],l,c,d,u);_.options.__file="src/components/MdSnackbar/MdSnackbarContent.vue",t["default"]=_.exports},function(e,t,n){"use strict";var r=function(e,t){var n=t._c;return n("transition",{attrs:{name:"md-snackbar",appear:""}},[n("div",{staticClass:"md-snackbar",class:t.props.mdClasses},[n("div",{staticClass:"md-snackbar-content"},[t._t("default")],2)])])},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=null,i=null;function a(e,t,n){return new Promise((function(a){r={destroy:function(){r=null,a()}},e!==1/0&&(i=window.setTimeout((function(){o(),t||n._vnode.componentInstance.initDestroy(!0)}),e))}))}var o=t.destroySnackbar=function(){return new Promise((function(e){r?(window.clearTimeout(i),r.destroy(),window.setTimeout(e,400)):e()}))};t.createSnackbar=function(e,t,n){return r?o().then((function(){return a(e,t,n)})):a(e,t,n)}},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return e.mdPersistent&&e.mdDuration!==1/0?n("md-portal",[n("keep-alive",[e.mdActive?n("md-snackbar-content",{attrs:{"md-classes":[e.snackbarClasses,e.$mdActiveTheme]}},[e._t("default")],2):e._e()],1)],1):n("md-portal",[e.mdActive?n("md-snackbar-content",{attrs:{"md-classes":[e.snackbarClasses,e.$mdActiveTheme]}},[e._t("default")],2):e._e()],1)},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(2),i=u(r),a=n(439),o=u(a),s=n(442),l=u(s),c=n(445),d=u(c);function u(e){return e&&e.__esModule?e:{default:e}}t.default=function(e){(0,i.default)(e),e.component(o.default.name,o.default),e.component(l.default.name,l.default),e.component(d.default.name,d.default)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(145),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(441),s=!1;function l(e){s||n(440)}var c=n(0),d=!1,u=l,_=null,p=null,f=c(i.a,o["a"],d,u,_,p);f.options.__file="src/components/MdSpeedDial/MdSpeedDial.vue",t["default"]=f.exports},function(e,t){},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"md-speed-dial",class:[e.$mdActiveTheme,e.speedDialClasses]},[e._t("default")],2)},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(146),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(444),s=!1;function l(e){s||n(443)}var c=n(0),d=!1,u=l,_=null,p=null,f=c(i.a,o["a"],d,u,_,p);f.options.__file="src/components/MdSpeedDial/MdSpeedDialTarget.vue",t["default"]=f.exports},function(e,t){},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("md-button",e._g(e._b({staticClass:"md-speed-dial-target md-fab",on:{click:e.handleClick}},"md-button",e.$attrs,!1),e.$listeners),[e._t("default")],2)},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(147),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(447),s=!1;function l(e){s||n(446)}var c=n(0),d=!1,u=l,_=null,p=null,f=c(i.a,o["a"],d,u,_,p);f.options.__file="src/components/MdSpeedDial/MdSpeedDialContent.vue",t["default"]=f.exports},function(e,t){},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"md-speed-dial-content"},[e._t("default")],2)},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(2),i=c(r),a=n(449),o=c(a),s=n(459),l=c(s);function c(e){return e&&e.__esModule?e:{default:e}}t.default=function(e){(0,i.default)(e),e.component(o.default.name,o.default),e.component(l.default.name,l.default)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(148),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(458),s=!1;function l(e){s||n(450)}var c=n(0),d=!1,u=l,_=null,p=null,f=c(i.a,o["a"],d,u,_,p);f.options.__file="src/components/MdSteppers/MdSteppers.vue",t["default"]=f.exports},function(e,t){},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(152),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(452),s=n(0),l=!1,c=null,d=null,u=null,_=s(i.a,o["a"],l,c,d,u);_.options.__file="src/core/icons/MdWarningIcon.vue",t["default"]=_.exports},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement;e._self._c;return e._m(0)},i=[function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("md-icon",{staticClass:"md-icon-image"},[n("svg",{attrs:{height:"24",viewBox:"0 0 24 24",width:"24",xmlns:"http://www.w3.org/2000/svg"}},[n("path",{attrs:{d:"M0 0h24v24H0z",fill:"none"}}),e._v(" "),n("path",{attrs:{d:"M1 21h22L12 2 1 21zm12-3h-2v-2h2v2zm0-4h-2v-4h2v4z"}})])])}];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(153),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(454),s=n(0),l=!1,c=null,d=null,u=null,_=s(i.a,o["a"],l,c,d,u);_.options.__file="src/core/icons/MdCheckIcon.vue",t["default"]=_.exports},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement;e._self._c;return e._m(0)},i=[function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("md-icon",{staticClass:"md-icon-image"},[n("svg",{attrs:{height:"24",viewBox:"0 0 24 24",width:"24",xmlns:"http://www.w3.org/2000/svg"}},[n("path",{attrs:{d:"M0 0h24v24H0z",fill:"none"}}),e._v(" "),n("path",{attrs:{d:"M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"}})])])}];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(154),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(456),s=n(0),l=!1,c=null,d=null,u=null,_=s(i.a,o["a"],l,c,d,u);_.options.__file="src/core/icons/MdEditIcon.vue",t["default"]=_.exports},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement;e._self._c;return e._m(0)},i=[function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("md-icon",{staticClass:"md-icon-image"},[n("svg",{attrs:{height:"24",viewBox:"0 0 24 24",width:"24",xmlns:"http://www.w3.org/2000/svg"}},[n("path",{attrs:{d:"M3 17.25V21h3.75L17.81 9.94l-3.75-3.75L3 17.25zM20.71 7.04c.39-.39.39-1.02 0-1.41l-2.34-2.34c-.39-.39-1.02-.39-1.41 0l-1.83 1.83 3.75 3.75 1.83-1.83z"}}),e._v(" "),n("path",{attrs:{d:"M0 0h24v24H0z",fill:"none"}})])])}];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("md-button",e._g(e._b({staticClass:"md-stepper-header",class:e.classes,attrs:{disabled:e.shouldDisable},nativeOn:{click:function(t){!e.MdSteppers.syncRoute&&e.MdSteppers.setActiveStep(e.index)}}},"md-button",e.data.props,!1),e.data.events),[e.data.error?n("md-warning-icon",{staticClass:"md-stepper-icon"}):n("div",{staticClass:"md-stepper-number"},[e.data.done&&e.data.editable?n("md-edit-icon",{staticClass:"md-stepper-editable"}):e.data.done?n("md-check-icon",{staticClass:"md-stepper-done"}):[e._v(e._s(e.MdSteppers.getStepperNumber(e.index)))]],2),e._v(" "),n("div",{staticClass:"md-stepper-text"},[n("span",{staticClass:"md-stepper-label"},[e._v(e._s(e.data.label))]),e._v(" "),e.data.error?n("span",{staticClass:"md-stepper-error"},[e._v(e._s(e.data.error))]):e.data.description?n("span",{staticClass:"md-stepper-description"},[e._v(e._s(e.data.description))]):e._e()])],1)},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"md-steppers",class:[e.steppersClasses,e.$mdActiveTheme]},[e.mdVertical?e._e():n("div",{staticClass:"md-steppers-navigation"},e._l(e.MdSteppers.items,(function(e,t){return n("md-step-header",{key:t,attrs:{index:t}})})),1),e._v(" "),n("div",{staticClass:"md-steppers-wrapper",style:e.contentStyles},[n("div",{staticClass:"md-steppers-container",style:e.containerStyles},[e._t("default")],2)])])},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(155),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(461),s=!1;function l(e){s||n(460)}var c=n(0),d=!1,u=l,_=null,p=null,f=c(i.a,o["a"],d,u,_,p);f.options.__file="src/components/MdSteppers/MdStep.vue",t["default"]=f.exports},function(e,t){},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"md-stepper"},[e.MdSteppers.isVertical?n("md-step-header",{attrs:{index:e.id}}):e._e(),e._v(" "),n("div",{directives:[{name:"show",rawName:"v-show",value:e.isActive,expression:"isActive"}],class:["md-stepper-content",{"md-active":e.isActive}],attrs:{tabindex:e.tabIndex}},[e._t("default")],2)],1)},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(2),i=s(r),a=n(463),o=s(a);function s(e){return e&&e.__esModule?e:{default:e}}t.default=function(e){(0,i.default)(e),e.component(o.default.name,o.default)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(156),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(465),s=!1;function l(e){s||n(464)}var c=n(0),d=!1,u=l,_=null,p=null,f=c(i.a,o["a"],d,u,_,p);f.options.__file="src/components/MdSubheader/MdSubheader.vue",t["default"]=f.exports},function(e,t){},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return e.insideList?n("li",{staticClass:"md-subheader",class:[e.$mdActiveTheme]},[e._t("default")],2):n("div",{staticClass:"md-subheader",class:[e.$mdActiveTheme]},[e._t("default")],2)},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(2),i=s(r),a=n(467),o=s(a);function s(e){return e&&e.__esModule?e:{default:e}}t.default=function(e){(0,i.default)(e),e.component(o.default.name,o.default)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(157),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(469),s=!1;function l(e){s||n(468)}var c=n(0),d=!1,u=l,_=null,p=null,f=c(i.a,o["a"],d,u,_,p);f.options.__file="src/components/MdSwitch/MdSwitch.vue",t["default"]=f.exports},function(e,t){},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"md-switch",class:[e.$mdActiveTheme,e.checkClasses]},[n("div",{staticClass:"md-switch-container",on:{click:function(t){return t.stopPropagation(),e.toggleCheck(t)}}},[n("div",{staticClass:"md-switch-thumb"},[n("md-ripple",{attrs:{"md-centered":"","md-active":e.rippleActive,"md-disabled":e.disabled},on:{"update:mdActive":function(t){e.rippleActive=t},"update:md-active":function(t){e.rippleActive=t}}},[n("input",e._b({attrs:{id:e.id,type:"checkbox"}},"input",{id:e.id,name:e.name,disabled:e.disabled,required:e.required,value:e.value},!1))])],1)]),e._v(" "),e.$slots.default?n("label",{staticClass:"md-switch-label",attrs:{for:e.id},on:{click:function(t){return t.preventDefault(),e.toggleCheck(t)}}},[e._t("default")],2):e._e()])},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(2),i=S(r),a=n(471),o=S(a),s=n(492),l=S(s),c=n(497),d=S(c),u=n(165),_=S(u),p=n(30),f=S(p),m=n(500),h=S(m),g=n(503),E=S(g);function S(e){return e&&e.__esModule?e:{default:e}}t.default=function(e){(0,i.default)(e),e.component("MdTable",o.default),e.component(l.default.name,l.default),e.component(d.default.name,d.default),e.component(_.default.name,_.default),e.component(f.default.name,f.default),e.component(h.default.name,h.default),e.component(E.default.name,E.default)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=Object.assign||function(e){for(var t=1;td)if(s=l[d++],s!=s)return!0}else for(;c>d;d++)if((e||d in l)&&l[d]===n)return e||d||0;return!e&&-1}};e.exports={includes:o(!0),indexOf:o(!1)}},"4dd1":function(e,t){e.exports=function(e){var t={begin:"<>",end:""},n={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/},r="[A-Za-z$_][0-9A-Za-z$_]*",i={keyword:"in of if for while finally var new function do return void else break catch instanceof with throw case default try this switch continue typeof delete let yield const export super debugger as async await static import from as",literal:"true false null undefined NaN Infinity",built_in:"eval isFinite isNaN parseFloat parseInt decodeURI decodeURIComponent encodeURI encodeURIComponent escape unescape Object Function Boolean Error EvalError InternalError RangeError ReferenceError StopIteration SyntaxError TypeError URIError Number Math Date String RegExp Array Float32Array Float64Array Int16Array Int32Array Int8Array Uint16Array Uint32Array Uint8Array Uint8ClampedArray ArrayBuffer DataView JSON Intl arguments require module console window document Symbol Set Map WeakSet WeakMap Proxy Reflect Promise"},a={className:"number",variants:[{begin:"\\b(0[bB][01]+)n?"},{begin:"\\b(0[oO][0-7]+)n?"},{begin:e.C_NUMBER_RE+"n?"}],relevance:0},o={className:"subst",begin:"\\$\\{",end:"\\}",keywords:i,contains:[]},s={begin:"html`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,o],subLanguage:"xml"}},l={begin:"css`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,o],subLanguage:"css"}},c={className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,o]};o.contains=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,s,l,c,a,e.REGEXP_MODE];var d=o.contains.concat([e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE]);return{aliases:["js","jsx","mjs","cjs"],keywords:i,contains:[{className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},{className:"meta",begin:/^#!/,end:/$/},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,s,l,c,e.C_LINE_COMMENT_MODE,e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+",contains:[{className:"type",begin:"\\{",end:"\\}",relevance:0},{className:"variable",begin:r+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),e.C_BLOCK_COMMENT_MODE,a,{begin:/[{,\n]\s*/,relevance:0,contains:[{begin:r+"\\s*:",returnBegin:!0,relevance:0,contains:[{className:"attr",begin:r,relevance:0}]}]},{begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.REGEXP_MODE,{className:"function",begin:"(\\(.*?\\)|"+r+")\\s*=>",returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:r},{begin:/\(\s*\)/},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:i,contains:d}]}]},{className:"",begin:/\s/,end:/\s*/,skip:!0},{variants:[{begin:t.begin,end:t.end},{begin:n.begin,end:n.end}],subLanguage:"xml",contains:[{begin:n.begin,end:n.end,skip:!0,contains:["self"]}]}],relevance:0},{className:"function",beginKeywords:"function",end:/\{/,excludeEnd:!0,contains:[e.inherit(e.TITLE_MODE,{begin:r}),{className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,contains:d}],illegal:/\[|%/},{begin:/\$[(.]/},e.METHOD_GUARD,{className:"class",beginKeywords:"class",end:/[{;=]/,excludeEnd:!0,illegal:/[:"\[\]]/,contains:[{beginKeywords:"extends"},e.UNDERSCORE_TITLE_MODE]},{beginKeywords:"constructor get set",end:/\{/,excludeEnd:!0}],illegal:/#(?!!)/}}},"4de4":function(e,t,n){"use strict";var r=n("23e7"),i=n("b727").filter,a=n("1dde"),o=n("ae40"),s=a("filter"),l=o("filter");r({target:"Array",proto:!0,forced:!s||!l},{filter:function(e){return i(this,e,arguments.length>1?arguments[1]:void 0)}})},"4f4a":function(e,t){e.exports=function(e){return{case_insensitive:!0,contains:[{className:"meta",begin:"^!!!( (5|1\\.1|Strict|Frameset|Basic|Mobile|RDFa|XML\\b.*))?$",relevance:10},e.COMMENT("^\\s*(!=#|=#|-#|/).*$",!1,{relevance:0}),{begin:"^\\s*(-|=|!=)(?!#)",starts:{end:"\\n",subLanguage:"ruby"}},{className:"tag",begin:"^\\s*%",contains:[{className:"selector-tag",begin:"\\w+"},{className:"selector-id",begin:"#[\\w-]+"},{className:"selector-class",begin:"\\.[\\w-]+"},{begin:"{\\s*",end:"\\s*}",contains:[{begin:":\\w+\\s*=>",end:",\\s+",returnBegin:!0,endsWithParent:!0,contains:[{className:"attr",begin:":\\w+"},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{begin:"\\w+",relevance:0}]}]},{begin:"\\(\\s*",end:"\\s*\\)",excludeEnd:!0,contains:[{begin:"\\w+\\s*=",end:"\\s+",returnBegin:!0,endsWithParent:!0,contains:[{className:"attr",begin:"\\w+",relevance:0},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{begin:"\\w+",relevance:0}]}]}]},{begin:"^\\s*[=~]\\s*"},{begin:"#{",starts:{end:"}",subLanguage:"ruby"}}]}}},5027:function(e,t){e.exports=function(e){var t={keyword:"and case default else elsif false if in import enherits node or true undef unless main settings $string ",literal:"alias audit before loglevel noop require subscribe tag owner ensure group mode name|0 changes context force incl lens load_path onlyif provider returns root show_diff type_check en_address ip_address realname command environment hour monute month monthday special target weekday creates cwd ogoutput refresh refreshonly tries try_sleep umask backup checksum content ctime force ignore links mtime purge recurse recurselimit replace selinux_ignore_defaults selrange selrole seltype seluser source souirce_permissions sourceselect validate_cmd validate_replacement allowdupe attribute_membership auth_membership forcelocal gid ia_load_module members system host_aliases ip allowed_trunk_vlans description device_url duplex encapsulation etherchannel native_vlan speed principals allow_root auth_class auth_type authenticate_user k_of_n mechanisms rule session_owner shared options device fstype enable hasrestart directory present absent link atboot blockdevice device dump pass remounts poller_tag use message withpath adminfile allow_virtual allowcdrom category configfiles flavor install_options instance package_settings platform responsefile status uninstall_options vendor unless_system_user unless_uid binary control flags hasstatus manifest pattern restart running start stop allowdupe auths expiry gid groups home iterations key_membership keys managehome membership password password_max_age password_min_age profile_membership profiles project purge_ssh_keys role_membership roles salt shell uid baseurl cost descr enabled enablegroups exclude failovermethod gpgcheck gpgkey http_caching include includepkgs keepalive metadata_expire metalink mirrorlist priority protect proxy proxy_password proxy_username repo_gpgcheck s3_enabled skip_if_unavailable sslcacert sslclientcert sslclientkey sslverify mounted",built_in:"architecture augeasversion blockdevices boardmanufacturer boardproductname boardserialnumber cfkey dhcp_servers domain ec2_ ec2_userdata facterversion filesystems ldom fqdn gid hardwareisa hardwaremodel hostname id|0 interfaces ipaddress ipaddress_ ipaddress6 ipaddress6_ iphostnumber is_virtual kernel kernelmajversion kernelrelease kernelversion kernelrelease kernelversion lsbdistcodename lsbdistdescription lsbdistid lsbdistrelease lsbmajdistrelease lsbminordistrelease lsbrelease macaddress macaddress_ macosx_buildversion macosx_productname macosx_productversion macosx_productverson_major macosx_productversion_minor manufacturer memoryfree memorysize netmask metmask_ network_ operatingsystem operatingsystemmajrelease operatingsystemrelease osfamily partitions path physicalprocessorcount processor processorcount productname ps puppetversion rubysitedir rubyversion selinux selinux_config_mode selinux_config_policy selinux_current_mode selinux_current_mode selinux_enforced selinux_policyversion serialnumber sp_ sshdsakey sshecdsakey sshrsakey swapencrypted swapfree swapsize timezone type uniqueid uptime uptime_days uptime_hours uptime_seconds uuid virtual vlans xendomains zfs_version zonenae zones zpool_version"},n=e.COMMENT("#","$"),r="([A-Za-z_]|::)(\\w|::)*",i=e.inherit(e.TITLE_MODE,{begin:r}),a={className:"variable",begin:"\\$"+r},o={className:"string",contains:[e.BACKSLASH_ESCAPE,a],variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/}]};return{aliases:["pp"],contains:[n,a,o,{beginKeywords:"class",end:"\\{|;",illegal:/=/,contains:[i,n]},{beginKeywords:"define",end:/\{/,contains:[{className:"section",begin:e.IDENT_RE,endsParent:!0}]},{begin:e.IDENT_RE+"\\s+\\{",returnBegin:!0,end:/\S/,contains:[{className:"keyword",begin:e.IDENT_RE},{begin:/\{/,end:/\}/,keywords:t,relevance:0,contains:[o,n,{begin:"[a-zA-Z_]+\\s*=>",returnBegin:!0,end:"=>",contains:[{className:"attr",begin:e.IDENT_RE}]},{className:"number",begin:"(\\b0[0-7_]+)|(\\b0x[0-9a-fA-F_]+)|(\\b[1-9][0-9_]*(\\.[0-9_]+)?)|[0_]\\b",relevance:0},a]}],relevance:0}]}}},5051:function(e,t){e.exports=function(e){var t={variants:[e.COMMENT("--","$"),e.COMMENT("{-","-}",{contains:["self"]})]},n={className:"type",begin:"\\b[A-Z][\\w']*",relevance:0},r={begin:"\\(",end:"\\)",illegal:'"',contains:[{className:"type",begin:"\\b[A-Z][\\w]*(\\((\\.\\.|,|\\w+)\\))?"},t]},i={begin:"{",end:"}",contains:r.contains},a={className:"string",begin:"'\\\\?.",end:"'",illegal:"."};return{keywords:"let in if then else case of where module import exposing type alias as infix infixl infixr port effect command subscription",contains:[{beginKeywords:"port effect module",end:"exposing",keywords:"port effect module where command subscription exposing",contains:[r,t],illegal:"\\W\\.|;"},{begin:"import",end:"$",keywords:"import as exposing",contains:[r,t],illegal:"\\W\\.|;"},{begin:"type",end:"$",keywords:"type alias",contains:[n,r,i,t]},{beginKeywords:"infix infixl infixr",end:"$",contains:[e.C_NUMBER_MODE,t]},{begin:"port",end:"$",keywords:"port",contains:[t]},a,e.QUOTE_STRING_MODE,e.C_NUMBER_MODE,n,e.inherit(e.TITLE_MODE,{begin:"^[_a-z][\\w']*"}),t,{begin:"->|<-"}],illegal:/;/}}},"508e":function(e,t){e.exports=function(e){var t=["string","char","byte","int","long","bool","decimal","single","double","DateTime","xml","array","hashtable","void"],n="Add|Clear|Close|Copy|Enter|Exit|Find|Format|Get|Hide|Join|Lock|Move|New|Open|Optimize|Pop|Push|Redo|Remove|Rename|Reset|Resize|Search|Select|Set|Show|Skip|Split|Step|Switch|Undo|Unlock|Watch|Backup|Checkpoint|Compare|Compress|Convert|ConvertFrom|ConvertTo|Dismount|Edit|Expand|Export|Group|Import|Initialize|Limit|Merge|New|Out|Publish|Restore|Save|Sync|Unpublish|Update|Approve|Assert|Complete|Confirm|Deny|Disable|Enable|Install|Invoke|Register|Request|Restart|Resume|Start|Stop|Submit|Suspend|Uninstall|Unregister|Wait|Debug|Measure|Ping|Repair|Resolve|Test|Trace|Connect|Disconnect|Read|Receive|Send|Write|Block|Grant|Protect|Revoke|Unblock|Unprotect|Use|ForEach|Sort|Tee|Where",r="-and|-as|-band|-bnot|-bor|-bxor|-casesensitive|-ccontains|-ceq|-cge|-cgt|-cle|-clike|-clt|-cmatch|-cne|-cnotcontains|-cnotlike|-cnotmatch|-contains|-creplace|-csplit|-eq|-exact|-f|-file|-ge|-gt|-icontains|-ieq|-ige|-igt|-ile|-ilike|-ilt|-imatch|-in|-ine|-inotcontains|-inotlike|-inotmatch|-ireplace|-is|-isnot|-isplit|-join|-le|-like|-lt|-match|-ne|-not|-notcontains|-notin|-notlike|-notmatch|-or|-regex|-replace|-shl|-shr|-split|-wildcard|-xor",i={keyword:"if else foreach return do while until elseif begin for trap data dynamicparam end break throw param continue finally in switch exit filter try process catch hidden static parameter"},a=/\w[\w\d]*((-)[\w\d]+)*/,o={begin:"`[\\s\\S]",relevance:0},s={className:"variable",variants:[{begin:/\$\B/},{className:"keyword",begin:/\$this/},{begin:/\$[\w\d][\w\d_:]*/}]},l={className:"literal",begin:/\$(null|true|false)\b/},c={className:"string",variants:[{begin:/"/,end:/"/},{begin:/@"/,end:/^"@/}],contains:[o,s,{className:"variable",begin:/\$[A-z]/,end:/[^A-z]/}]},d={className:"string",variants:[{begin:/'/,end:/'/},{begin:/@'/,end:/^'@/}]},u={className:"doctag",variants:[{begin:/\.(synopsis|description|example|inputs|outputs|notes|link|component|role|functionality)/},{begin:/\.(parameter|forwardhelptargetname|forwardhelpcategory|remotehelprunspace|externalhelp)\s+\S+/}]},_=e.inherit(e.COMMENT(null,null),{variants:[{begin:/#/,end:/$/},{begin:/<#/,end:/#>/}],contains:[u]}),p={className:"built_in",variants:[{begin:"(".concat(n,")+(-)[\\w\\d]+")}]},f={className:"class",beginKeywords:"class enum",end:/\s*[{]/,excludeEnd:!0,relevance:0,contains:[e.TITLE_MODE]},m={className:"function",begin:/function\s+/,end:/\s*\{|$/,excludeEnd:!0,returnBegin:!0,relevance:0,contains:[{begin:"function",relevance:0,className:"keyword"},{className:"title",begin:a,relevance:0},{begin:/\(/,end:/\)/,className:"params",relevance:0,contains:[s]}]},h={begin:/using\s/,end:/$/,returnBegin:!0,contains:[c,d,{className:"keyword",begin:/(using|assembly|command|module|namespace|type)/}]},g={variants:[{className:"operator",begin:"(".concat(r,")\\b")},{className:"literal",begin:/(-)[\w\d]+/,relevance:0}]},E={className:"selector-tag",begin:/\@\B/,relevance:0},S={className:"function",begin:/\[.*\]\s*[\w]+[ ]??\(/,end:/$/,returnBegin:!0,relevance:0,contains:[{className:"keyword",begin:"(".concat(i.keyword.toString().replace(/\s/g,"|"),")\\b"),endsParent:!0,relevance:0},e.inherit(e.TITLE_MODE,{endsParent:!0})]},b=[S,_,o,e.NUMBER_MODE,c,d,p,s,l,E],v={begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0,relevance:0,contains:[].concat("self",b,{begin:"("+t.join("|")+")",className:"built_in",relevance:0},{className:"type",begin:/[\.\w\d]+/,relevance:0})};return S.contains.unshift(v),{aliases:["ps","ps1"],lexemes:/-?[A-z\.\-]+/,case_insensitive:!0,keywords:i,contains:b.concat(f,m,h,g,v)}}},"50c4":function(e,t,n){var r=n("a691"),i=Math.min;e.exports=function(e){return e>0?i(r(e),9007199254740991):0}},5135:function(e,t){var n={}.hasOwnProperty;e.exports=function(e,t){return n.call(e,t)}},"51ab":function(e,t){e.exports=function(e){return{aliases:["clean","icl","dcl"],keywords:{keyword:"if let in with where case of class instance otherwise implementation definition system module from import qualified as special code inline foreign export ccall stdcall generic derive infix infixl infixr",built_in:"Int Real Char Bool",literal:"True False"},contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.C_NUMBER_MODE,{begin:"->|<-[|:]?|#!?|>>=|\\{\\||\\|\\}|:==|=:|<>"}]}}},"51de":function(e,t,n){},5270:function(e,t,n){"use strict";var r=n("c532"),i=n("c401"),a=n("2e67"),o=n("2444");function s(e){e.cancelToken&&e.cancelToken.throwIfRequested()}e.exports=function(e){s(e),e.headers=e.headers||{},e.data=i(e.data,e.headers,e.transformRequest),e.headers=r.merge(e.headers.common||{},e.headers[e.method]||{},e.headers),r.forEach(["delete","get","head","post","put","patch","common"],(function(t){delete e.headers[t]}));var t=e.adapter||o.adapter;return t(e).then((function(t){return s(e),t.data=i(t.data,t.headers,e.transformResponse),t}),(function(t){return a(t)||(s(e),t&&t.response&&(t.response.data=i(t.response.data,t.response.headers,e.transformResponse))),Promise.reject(t)}))}},5692:function(e,t,n){var r=n("c430"),i=n("c6cd");(e.exports=function(e,t){return i[e]||(i[e]=void 0!==t?t:{})})("versions",[]).push({version:"3.6.5",mode:r?"pure":"global",copyright:"© 2020 Denis Pushkarev (zloirock.ru)"})},"56b2":function(e,t){e.exports=function(e){var t="[ \\t\\f]*",n="[ \\t\\f]+",r="("+t+"[:=]"+t+"|"+n+")",i="([^\\\\\\W:= \\t\\f\\n]|\\\\.)+",a="([^\\\\:= \\t\\f\\n]|\\\\.)+",o={end:r,relevance:0,starts:{className:"string",end:/$/,relevance:0,contains:[{begin:"\\\\\\n"}]}};return{case_insensitive:!0,illegal:/\S/,contains:[e.COMMENT("^\\s*[!#]","$"),{begin:i+r,returnBegin:!0,contains:[{className:"attr",begin:i,endsParent:!0,relevance:0}],starts:o},{begin:a+r,returnBegin:!0,relevance:0,contains:[{className:"meta",begin:a,endsParent:!0,relevance:0}],starts:o},{className:"attr",relevance:0,begin:a+t+"$"}]}}},"56ef":function(e,t,n){var r=n("d066"),i=n("241c"),a=n("7418"),o=n("825a");e.exports=r("Reflect","ownKeys")||function(e){var t=i.f(o(e)),n=a.f;return n?t.concat(n(e)):t}},5921:function(e,t){e.exports=function(e){var t={className:"literal",begin:"[\\+\\-]",relevance:0};return{aliases:["bf"],contains:[e.COMMENT("[^\\[\\]\\.,\\+\\-<> \r\n]","[\\[\\]\\.,\\+\\-<> \r\n]",{returnEnd:!0,relevance:0}),{className:"title",begin:"[\\[\\]]",relevance:0},{className:"string",begin:"[\\.,]",relevance:0},{begin:/(?:\+\+|\-\-)/,contains:[t]},t]}}},"5a34":function(e,t,n){var r=n("44e7");e.exports=function(e){if(r(e))throw TypeError("The method doesn't accept regular expressions");return e}},"5a3e":function(e,t){e.exports=function(e){return{aliases:["vbs"],case_insensitive:!0,keywords:{keyword:"call class const dim do loop erase execute executeglobal exit for each next function if then else on error option explicit new private property let get public randomize redim rem select case set stop sub while wend with end to elseif is or xor and not class_initialize class_terminate default preserve in me byval byref step resume goto",built_in:"lcase month vartype instrrev ubound setlocale getobject rgb getref string weekdayname rnd dateadd monthname now day minute isarray cbool round formatcurrency conversions csng timevalue second year space abs clng timeserial fixs len asc isempty maths dateserial atn timer isobject filter weekday datevalue ccur isdate instr datediff formatdatetime replace isnull right sgn array snumeric log cdbl hex chr lbound msgbox ucase getlocale cos cdate cbyte rtrim join hour oct typename trim strcomp int createobject loadpicture tan formatnumber mid scriptenginebuildversion scriptengine split scriptengineminorversion cint sin datepart ltrim sqr scriptenginemajorversion time derived eval date formatpercent exp inputbox left ascw chrw regexp server response request cstr err",literal:"true false null nothing empty"},illegal:"//",contains:[e.inherit(e.QUOTE_STRING_MODE,{contains:[{begin:'""'}]}),e.COMMENT(/'/,/$/,{relevance:0}),e.C_NUMBER_MODE]}}},"5ad2":function(e,t){e.exports=function(e){var t={literal:"true false null"},n=[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE],r=[e.QUOTE_STRING_MODE,e.C_NUMBER_MODE],i={end:",",endsWithParent:!0,excludeEnd:!0,contains:r,keywords:t},a={begin:"{",end:"}",contains:[{className:"attr",begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE],illegal:"\\n"},e.inherit(i,{begin:/:/})].concat(n),illegal:"\\S"},o={begin:"\\[",end:"\\]",contains:[e.inherit(i)],illegal:"\\S"};return r.push(a,o),n.forEach((function(e){r.push(e)})),{contains:r,keywords:t,illegal:"\\S"}}},"5c6c":function(e,t){e.exports=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}}},"5dfb":function(e,t){e.exports=function(e){var t={keyword:"do while select delete by update from",literal:"0b 1b",built_in:"neg not null string reciprocal floor ceiling signum mod xbar xlog and or each scan over prior mmu lsq inv md5 ltime gtime count first var dev med cov cor all any rand sums prds mins maxs fills deltas ratios avgs differ prev next rank reverse iasc idesc asc desc msum mcount mavg mdev xrank mmin mmax xprev rotate distinct group where flip type key til get value attr cut set upsert raze union inter except cross sv vs sublist enlist read0 read1 hopen hclose hdel hsym hcount peach system ltrim rtrim trim lower upper ssr view tables views cols xcols keys xkey xcol xasc xdesc fkeys meta lj aj aj0 ij pj asof uj ww wj wj1 fby xgroup ungroup ej save load rsave rload show csv parse eval min max avg wavg wsum sin cos tan sum",type:"`float `double int `timestamp `timespan `datetime `time `boolean `symbol `char `byte `short `long `real `month `date `minute `second `guid"};return{aliases:["k","kdb"],keywords:t,lexemes:/(`?)[A-Za-z0-9_]+\b/,contains:[e.C_LINE_COMMENT_MODE,e.QUOTE_STRING_MODE,e.C_NUMBER_MODE]}}},"60da":function(e,t,n){"use strict";var r=n("83ab"),i=n("d039"),a=n("df75"),o=n("7418"),s=n("d1e7"),l=n("7b0b"),c=n("44ad"),d=Object.assign,u=Object.defineProperty;e.exports=!d||i((function(){if(r&&1!==d({b:1},d(u({},"a",{enumerable:!0,get:function(){u(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var e={},t={},n=Symbol(),i="abcdefghijklmnopqrst";return e[n]=7,i.split("").forEach((function(e){t[e]=e})),7!=d({},e)[n]||a(d({},t)).join("")!=i}))?function(e,t){var n=l(e),i=arguments.length,d=1,u=o.f,_=s.f;while(i>d){var p,f=c(arguments[d++]),m=u?a(f).concat(u(f)):a(f),h=m.length,g=0;while(h>g)p=m[g++],r&&!_.call(f,p)||(n[p]=f[p])}return n}:d},6113:function(e,t){e.exports=function(e){var t="@[a-z-]+",n="and or not only",r="[a-zA-Z-][a-zA-Z0-9_-]*",i={className:"variable",begin:"(\\$"+r+")\\b"},a={className:"number",begin:"#[0-9A-Fa-f]+"};e.CSS_NUMBER_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,e.C_BLOCK_COMMENT_MODE;return{case_insensitive:!0,illegal:"[=/|']",contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"selector-id",begin:"\\#[A-Za-z0-9_-]+",relevance:0},{className:"selector-class",begin:"\\.[A-Za-z0-9_-]+",relevance:0},{className:"selector-attr",begin:"\\[",end:"\\]",illegal:"$"},{className:"selector-tag",begin:"\\b(a|abbr|acronym|address|area|article|aside|audio|b|base|big|blockquote|body|br|button|canvas|caption|cite|code|col|colgroup|command|datalist|dd|del|details|dfn|div|dl|dt|em|embed|fieldset|figcaption|figure|footer|form|frame|frameset|(h[1-6])|head|header|hgroup|hr|html|i|iframe|img|input|ins|kbd|keygen|label|legend|li|link|map|mark|meta|meter|nav|noframes|noscript|object|ol|optgroup|option|output|p|param|pre|progress|q|rp|rt|ruby|samp|script|section|select|small|span|strike|strong|style|sub|sup|table|tbody|td|textarea|tfoot|th|thead|time|title|tr|tt|ul|var|video)\\b",relevance:0},{className:"selector-pseudo",begin:":(visited|valid|root|right|required|read-write|read-only|out-range|optional|only-of-type|only-child|nth-of-type|nth-last-of-type|nth-last-child|nth-child|not|link|left|last-of-type|last-child|lang|invalid|indeterminate|in-range|hover|focus|first-of-type|first-line|first-letter|first-child|first|enabled|empty|disabled|default|checked|before|after|active)"},{className:"selector-pseudo",begin:"::(after|before|choices|first-letter|first-line|repeat-index|repeat-item|selection|value)"},i,{className:"attribute",begin:"\\b(src|z-index|word-wrap|word-spacing|word-break|width|widows|white-space|visibility|vertical-align|unicode-bidi|transition-timing-function|transition-property|transition-duration|transition-delay|transition|transform-style|transform-origin|transform|top|text-underline-position|text-transform|text-shadow|text-rendering|text-overflow|text-indent|text-decoration-style|text-decoration-line|text-decoration-color|text-decoration|text-align-last|text-align|tab-size|table-layout|right|resize|quotes|position|pointer-events|perspective-origin|perspective|page-break-inside|page-break-before|page-break-after|padding-top|padding-right|padding-left|padding-bottom|padding|overflow-y|overflow-x|overflow-wrap|overflow|outline-width|outline-style|outline-offset|outline-color|outline|orphans|order|opacity|object-position|object-fit|normal|none|nav-up|nav-right|nav-left|nav-index|nav-down|min-width|min-height|max-width|max-height|mask|marks|margin-top|margin-right|margin-left|margin-bottom|margin|list-style-type|list-style-position|list-style-image|list-style|line-height|letter-spacing|left|justify-content|initial|inherit|ime-mode|image-orientation|image-resolution|image-rendering|icon|hyphens|height|font-weight|font-variant-ligatures|font-variant|font-style|font-stretch|font-size-adjust|font-size|font-language-override|font-kerning|font-feature-settings|font-family|font|float|flex-wrap|flex-shrink|flex-grow|flex-flow|flex-direction|flex-basis|flex|filter|empty-cells|display|direction|cursor|counter-reset|counter-increment|content|column-width|column-span|column-rule-width|column-rule-style|column-rule-color|column-rule|column-gap|column-fill|column-count|columns|color|clip-path|clip|clear|caption-side|break-inside|break-before|break-after|box-sizing|box-shadow|box-decoration-break|bottom|border-width|border-top-width|border-top-style|border-top-right-radius|border-top-left-radius|border-top-color|border-top|border-style|border-spacing|border-right-width|border-right-style|border-right-color|border-right|border-radius|border-left-width|border-left-style|border-left-color|border-left|border-image-width|border-image-source|border-image-slice|border-image-repeat|border-image-outset|border-image|border-color|border-collapse|border-bottom-width|border-bottom-style|border-bottom-right-radius|border-bottom-left-radius|border-bottom-color|border-bottom|border|background-size|background-repeat|background-position|background-origin|background-image|background-color|background-clip|background-attachment|background-blend-mode|background|backface-visibility|auto|animation-timing-function|animation-play-state|animation-name|animation-iteration-count|animation-fill-mode|animation-duration|animation-direction|animation-delay|animation|align-self|align-items|align-content)\\b",illegal:"[^\\s]"},{begin:"\\b(whitespace|wait|w-resize|visible|vertical-text|vertical-ideographic|uppercase|upper-roman|upper-alpha|underline|transparent|top|thin|thick|text|text-top|text-bottom|tb-rl|table-header-group|table-footer-group|sw-resize|super|strict|static|square|solid|small-caps|separate|se-resize|scroll|s-resize|rtl|row-resize|ridge|right|repeat|repeat-y|repeat-x|relative|progress|pointer|overline|outside|outset|oblique|nowrap|not-allowed|normal|none|nw-resize|no-repeat|no-drop|newspaper|ne-resize|n-resize|move|middle|medium|ltr|lr-tb|lowercase|lower-roman|lower-alpha|loose|list-item|line|line-through|line-edge|lighter|left|keep-all|justify|italic|inter-word|inter-ideograph|inside|inset|inline|inline-block|inherit|inactive|ideograph-space|ideograph-parenthesis|ideograph-numeric|ideograph-alpha|horizontal|hidden|help|hand|groove|fixed|ellipsis|e-resize|double|dotted|distribute|distribute-space|distribute-letter|distribute-all-lines|disc|disabled|default|decimal|dashed|crosshair|collapse|col-resize|circle|char|center|capitalize|break-word|break-all|bottom|both|bolder|bold|block|bidi-override|below|baseline|auto|always|all-scroll|absolute|table|table-cell)\\b"},{begin:":",end:";",contains:[i,a,e.CSS_NUMBER_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,{className:"meta",begin:"!important"}]},{begin:"@(page|font-face)",lexemes:t,keywords:"@page @font-face"},{begin:"@",end:"[{;]",returnBegin:!0,keywords:n,contains:[{begin:t,className:"keyword"},i,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,a,e.CSS_NUMBER_MODE]}]}}},"612a":function(e,t){e.exports=function(e){var t={keyword:"in of on if for while finally var new function do return void else break catch instanceof with throw case default try this switch continue typeof delete let yield const export super debugger as async await import",literal:"true false null undefined NaN Infinity",built_in:"eval isFinite isNaN parseFloat parseInt decodeURI decodeURIComponent encodeURI encodeURIComponent escape unescape Object Function Boolean Error EvalError InternalError RangeError ReferenceError StopIteration SyntaxError TypeError URIError Number Math Date String RegExp Array Float32Array Float64Array Int16Array Int32Array Int8Array Uint16Array Uint32Array Uint8Array Uint8ClampedArray ArrayBuffer DataView JSON Intl arguments require module console window document Symbol Set Map WeakSet WeakMap Proxy Reflect Behavior bool color coordinate date double enumeration font geocircle georectangle geoshape int list matrix4x4 parent point quaternion real rect size string url variant vector2d vector3d vector4dPromise"},n="[a-zA-Z_][a-zA-Z0-9\\._]*",r={className:"keyword",begin:"\\bproperty\\b",starts:{className:"string",end:"(:|=|;|,|//|/\\*|$)",returnEnd:!0}},i={className:"keyword",begin:"\\bsignal\\b",starts:{className:"string",end:"(\\(|:|=|;|,|//|/\\*|$)",returnEnd:!0}},a={className:"attribute",begin:"\\bid\\s*:",starts:{className:"string",end:n,returnEnd:!1}},o={begin:n+"\\s*:",returnBegin:!0,contains:[{className:"attribute",begin:n,end:"\\s*:",excludeEnd:!0,relevance:0}],relevance:0},s={begin:n+"\\s*{",end:"{",returnBegin:!0,relevance:0,contains:[e.inherit(e.TITLE_MODE,{begin:n})]};return{aliases:["qt"],case_insensitive:!1,keywords:t,contains:[{className:"meta",begin:/^\s*['"]use (strict|asm)['"]/},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,{className:"subst",begin:"\\$\\{",end:"\\}"}]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"number",variants:[{begin:"\\b(0[bB][01]+)"},{begin:"\\b(0[oO][0-7]+)"},{begin:e.C_NUMBER_RE}],relevance:0},{begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.REGEXP_MODE,{begin:/\s*[);\]]/,relevance:0,subLanguage:"xml"}],relevance:0},i,r,{className:"function",beginKeywords:"function",end:/\{/,excludeEnd:!0,contains:[e.inherit(e.TITLE_MODE,{begin:/[A-Za-z$_][0-9A-Za-z$_]*/}),{className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]}],illegal:/\[|%/},{begin:"\\."+e.IDENT_RE,relevance:0},a,o,s],illegal:/#/}}},"65f0":function(e,t,n){var r=n("861d"),i=n("e8b5"),a=n("b622"),o=a("species");e.exports=function(e,t){var n;return i(e)&&(n=e.constructor,"function"!=typeof n||n!==Array&&!i(n.prototype)?r(n)&&(n=n[o],null===n&&(n=void 0)):n=void 0),new(void 0===n?Array:n)(0===t?0:t)}},"66ba":function(e,t){e.exports=function(e){return{subLanguage:"xml",contains:[{className:"meta",begin:"^__(END|DATA)__$"},{begin:"^\\s*%{1,2}={0,2}",end:"$",subLanguage:"perl"},{begin:"<%{1,2}={0,2}",end:"={0,1}%>",subLanguage:"perl",excludeBegin:!0,excludeEnd:!0}]}}},"69f3":function(e,t,n){var r,i,a,o=n("7f9a"),s=n("da84"),l=n("861d"),c=n("9112"),d=n("5135"),u=n("f772"),_=n("d012"),p=s.WeakMap,f=function(e){return a(e)?i(e):r(e,{})},m=function(e){return function(t){var n;if(!l(t)||(n=i(t)).type!==e)throw TypeError("Incompatible receiver, "+e+" required");return n}};if(o){var h=new p,g=h.get,E=h.has,S=h.set;r=function(e,t){return S.call(h,e,t),t},i=function(e){return g.call(h,e)||{}},a=function(e){return E.call(h,e)}}else{var b=u("state");_[b]=!0,r=function(e,t){return c(e,b,t),t},i=function(e){return d(e,b)?e[b]:{}},a=function(e){return d(e,b)}}e.exports={set:r,get:i,has:a,enforce:f,getterFor:m}},"6a51":function(e,t){e.exports=function(e){var t="getpwent getservent quotemeta msgrcv scalar kill dbmclose undef lc ma syswrite tr send umask sysopen shmwrite vec qx utime local oct semctl localtime readpipe do return format read sprintf dbmopen pop getpgrp not getpwnam rewinddir qqfileno qw endprotoent wait sethostent bless s|0 opendir continue each sleep endgrent shutdown dump chomp connect getsockname die socketpair close flock exists index shmgetsub for endpwent redo lstat msgctl setpgrp abs exit select print ref gethostbyaddr unshift fcntl syscall goto getnetbyaddr join gmtime symlink semget splice x|0 getpeername recv log setsockopt cos last reverse gethostbyname getgrnam study formline endhostent times chop length gethostent getnetent pack getprotoent getservbyname rand mkdir pos chmod y|0 substr endnetent printf next open msgsnd readdir use unlink getsockopt getpriority rindex wantarray hex system getservbyport endservent int chr untie rmdir prototype tell listen fork shmread ucfirst setprotoent else sysseek link getgrgid shmctl waitpid unpack getnetbyname reset chdir grep split require caller lcfirst until warn while values shift telldir getpwuid my getprotobynumber delete and sort uc defined srand accept package seekdir getprotobyname semop our rename seek if q|0 chroot sysread setpwent no crypt getc chown sqrt write setnetent setpriority foreach tie sin msgget map stat getlogin unless elsif truncate exec keys glob tied closedirioctl socket readlink eval xor readline binmode setservent eof ord bind alarm pipe atan2 getgrent exp time push setgrent gt lt or ne m|0 break given say state when",n={className:"subst",begin:"[$@]\\{",end:"\\}",keywords:t},r={begin:"->{",end:"}"},i={variants:[{begin:/\$\d/},{begin:/[\$%@](\^\w\b|#\w+(::\w+)*|{\w+}|\w+(::\w*)*)/},{begin:/[\$%@][^\s\w{]/,relevance:0}]},a=[e.BACKSLASH_ESCAPE,n,i],o=[i,e.HASH_COMMENT_MODE,e.COMMENT("^\\=\\w","\\=cut",{endsWithParent:!0}),r,{className:"string",contains:a,variants:[{begin:"q[qwxr]?\\s*\\(",end:"\\)",relevance:5},{begin:"q[qwxr]?\\s*\\[",end:"\\]",relevance:5},{begin:"q[qwxr]?\\s*\\{",end:"\\}",relevance:5},{begin:"q[qwxr]?\\s*\\|",end:"\\|",relevance:5},{begin:"q[qwxr]?\\s*\\<",end:"\\>",relevance:5},{begin:"qw\\s+q",end:"q",relevance:5},{begin:"'",end:"'",contains:[e.BACKSLASH_ESCAPE]},{begin:'"',end:'"'},{begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE]},{begin:"{\\w+}",contains:[],relevance:0},{begin:"-?\\w+\\s*\\=\\>",contains:[],relevance:0}]},{className:"number",begin:"(\\b0[0-7_]+)|(\\b0x[0-9a-fA-F_]+)|(\\b[1-9][0-9_]*(\\.[0-9_]+)?)|[0_]\\b",relevance:0},{begin:"(\\/\\/|"+e.RE_STARTERS_RE+"|\\b(split|return|print|reverse|grep)\\b)\\s*",keywords:"split return print reverse grep",relevance:0,contains:[e.HASH_COMMENT_MODE,{className:"regexp",begin:"(s|tr|y)/(\\\\.|[^/])*/(\\\\.|[^/])*/[a-z]*",relevance:10},{className:"regexp",begin:"(m|qr)?/",end:"/[a-z]*",contains:[e.BACKSLASH_ESCAPE],relevance:0}]},{className:"function",beginKeywords:"sub",end:"(\\s*\\(.*?\\))?[;{]",excludeEnd:!0,relevance:5,contains:[e.TITLE_MODE]},{begin:"-\\w\\b",relevance:0},{begin:"^__DATA__$",end:"^__END__$",subLanguage:"mojolicious",contains:[{begin:"^@@.*",end:"$",className:"comment"}]}];return n.contains=o,r.contains=o,{aliases:["pl","pm"],lexemes:/[\w\.]+/,keywords:t,contains:o}}},"6de8":function(e,t){e.exports=function(e){var t="abstract add and array as asc aspect assembly async begin break block by case class concat const copy constructor continue create default delegate desc distinct div do downto dynamic each else empty end ensure enum equals event except exit extension external false final finalize finalizer finally flags for forward from function future global group has if implementation implements implies in index inherited inline interface into invariants is iterator join locked locking loop matching method mod module namespace nested new nil not notify nullable of old on operator or order out override parallel params partial pinned private procedure property protected public queryable raise read readonly record reintroduce remove repeat require result reverse sealed select self sequence set shl shr skip static step soft take then to true try tuple type union unit unsafe until uses using var virtual raises volatile where while with write xor yield await mapped deprecated stdcall cdecl pascal register safecall overload library platform reference packed strict published autoreleasepool selector strong weak unretained",n=e.COMMENT("{","}",{relevance:0}),r=e.COMMENT("\\(\\*","\\*\\)",{relevance:10}),i={className:"string",begin:"'",end:"'",contains:[{begin:"''"}]},a={className:"string",begin:"(#\\d+)+"},o={className:"function",beginKeywords:"function constructor destructor procedure method",end:"[:;]",keywords:"function constructor|10 destructor|10 procedure|10 method|10",contains:[e.TITLE_MODE,{className:"params",begin:"\\(",end:"\\)",keywords:t,contains:[i,a]},n,r]};return{case_insensitive:!0,lexemes:/\.?\w+/,keywords:t,illegal:'("|\\$[G-Zg-z]|\\/\\*||->)',contains:[n,r,e.C_LINE_COMMENT_MODE,i,a,e.NUMBER_MODE,o,{className:"class",begin:"=\\bclass\\b",end:"end;",keywords:t,contains:[i,a,n,r,e.C_LINE_COMMENT_MODE,o]}]}}},"6eeb":function(e,t,n){var r=n("da84"),i=n("9112"),a=n("5135"),o=n("ce4e"),s=n("8925"),l=n("69f3"),c=l.get,d=l.enforce,u=String(String).split("String");(e.exports=function(e,t,n,s){var l=!!s&&!!s.unsafe,c=!!s&&!!s.enumerable,_=!!s&&!!s.noTargetGet;"function"==typeof n&&("string"!=typeof t||a(n,"name")||i(n,"name",t),d(n).source=u.join("string"==typeof t?t:"")),e!==r?(l?!_&&e[t]&&(c=!0):delete e[t],c?e[t]=n:i(e,t,n)):c?e[t]=n:o(t,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&c(this).source||s(this)}))},7418:function(e,t){t.f=Object.getOwnPropertySymbols},"75da":function(e,t){e.exports=function(e){return{contains:[{className:"attribute",begin://},{begin:/::=/,starts:{end:/$/,contains:[{begin://},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]}}]}}},"767a":function(e,t){e.exports=function(e){var t={className:"variable",begin:/\$[\w\d#@][\w\d_]*/},n={className:"variable",begin:/<(?!\/)/,end:/>/};return{aliases:["pf.conf"],lexemes:/[a-z0-9_<>-]+/,keywords:{built_in:"block match pass load anchor|5 antispoof|10 set table",keyword:"in out log quick on rdomain inet inet6 proto from port os to routeallow-opts divert-packet divert-reply divert-to flags group icmp-typeicmp6-type label once probability recieved-on rtable prio queuetos tag tagged user keep fragment for os dropaf-to|10 binat-to|10 nat-to|10 rdr-to|10 bitmask least-stats random round-robinsource-hash static-portdup-to reply-to route-toparent bandwidth default min max qlimitblock-policy debug fingerprints hostid limit loginterface optimizationreassemble ruleset-optimization basic none profile skip state-defaultsstate-policy timeoutconst counters persistno modulate synproxy state|5 floating if-bound no-sync pflow|10 sloppysource-track global rule max-src-nodes max-src-states max-src-connmax-src-conn-rate overload flushscrub|5 max-mss min-ttl no-df|10 random-id",literal:"all any no-route self urpf-failed egress|5 unknown"},contains:[e.HASH_COMMENT_MODE,e.NUMBER_MODE,e.QUOTE_STRING_MODE,t,n]}}},7727:function(e,t){e.exports=function(e){var t="[a-zA-Z_][a-zA-Z0-9_.]*(\\!|\\?)?",n="[a-zA-Z_]\\w*[!?=]?|[-+~]\\@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?",r="and false then defined module in return redo retry end for true self when next until do begin unless nil break not case cond alias while ensure or include use alias fn quote require import with|0",i={className:"subst",begin:"#\\{",end:"}",lexemes:t,keywords:r},a="[/|([{<\"']",o={className:"string",begin:"~[a-z](?="+a+")",contains:[{endsParent:!0,contains:[{contains:[e.BACKSLASH_ESCAPE,i],variants:[{begin:/"/,end:/"/},{begin:/'/,end:/'/},{begin:/\//,end:/\//},{begin:/\|/,end:/\|/},{begin:/\(/,end:/\)/},{begin:/\[/,end:/\]/},{begin:/\{/,end:/\}/},{begin://}]}]}]},s={className:"string",begin:"~[A-Z](?="+a+")",contains:[{begin:/"/,end:/"/},{begin:/'/,end:/'/},{begin:/\//,end:/\//},{begin:/\|/,end:/\|/},{begin:/\(/,end:/\)/},{begin:/\[/,end:/\]/},{begin:/\{/,end:/\}/},{begin:/\/}]},l={className:"string",contains:[e.BACKSLASH_ESCAPE,i],variants:[{begin:/"""/,end:/"""/},{begin:/'''/,end:/'''/},{begin:/~S"""/,end:/"""/,contains:[]},{begin:/~S"/,end:/"/,contains:[]},{begin:/~S'''/,end:/'''/,contains:[]},{begin:/~S'/,end:/'/,contains:[]},{begin:/'/,end:/'/},{begin:/"/,end:/"/}]},c={className:"function",beginKeywords:"def defp defmacro",end:/\B\b/,contains:[e.inherit(e.TITLE_MODE,{begin:t,endsParent:!0})]},d=e.inherit(c,{className:"class",beginKeywords:"defimpl defmodule defprotocol defrecord",end:/\bdo\b|$|;/}),u=[l,s,o,e.HASH_COMMENT_MODE,d,c,{begin:"::"},{className:"symbol",begin:":(?![\\s:])",contains:[l,{begin:n}],relevance:0},{className:"symbol",begin:t+":(?!:)",relevance:0},{className:"number",begin:"(\\b0o[0-7_]+)|(\\b0b[01_]+)|(\\b0x[0-9a-fA-F_]+)|(-?\\b[1-9][0-9_]*(.[0-9_]+([eE][-+]?[0-9]+)?)?)",relevance:0},{className:"variable",begin:"(\\$\\W)|((\\$|\\@\\@?)(\\w+))"},{begin:"->"},{begin:"("+e.RE_STARTERS_RE+")\\s*",contains:[e.HASH_COMMENT_MODE,{className:"regexp",illegal:"\\n",contains:[e.BACKSLASH_ESCAPE,i],variants:[{begin:"/",end:"/[a-z]*"},{begin:"%r\\[",end:"\\][a-z]*"}]}],relevance:0}];return i.contains=u,{lexemes:t,keywords:r,contains:u}}},7781:function(e,t){e.exports=function(e){var t="div mod in and or not xor asserterror begin case do downto else end exit for if of repeat then to until while with var",n="false true",r=[e.C_LINE_COMMENT_MODE,e.COMMENT(/\{/,/\}/,{relevance:0}),e.COMMENT(/\(\*/,/\*\)/,{relevance:10})],i={className:"string",begin:/'/,end:/'/,contains:[{begin:/''/}]},a={className:"string",begin:/(#\d+)+/},o={className:"number",begin:"\\b\\d+(\\.\\d+)?(DT|D|T)",relevance:0},s={className:"string",begin:'"',end:'"'},l={className:"function",beginKeywords:"procedure",end:/[:;]/,keywords:"procedure|10",contains:[e.TITLE_MODE,{className:"params",begin:/\(/,end:/\)/,keywords:t,contains:[i,a]}].concat(r)},c={className:"class",begin:"OBJECT (Table|Form|Report|Dataport|Codeunit|XMLport|MenuSuite|Page|Query) (\\d+) ([^\\r\\n]+)",returnBegin:!0,contains:[e.TITLE_MODE,l]};return{case_insensitive:!0,keywords:{keyword:t,literal:n},illegal:/\/\*/,contains:[i,a,o,s,e.NUMBER_MODE,c,l]}}},7839:function(e,t){e.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},"79b5":function(e,t){e.exports=function(e){var t="action collection component concat debugger each each-in else get hash if input link-to loc log mut outlet partial query-params render textarea unbound unless with yield view",n={illegal:/\}\}/,begin:/[a-zA-Z0-9_]+=/,returnBegin:!0,relevance:0,contains:[{className:"attr",begin:/[a-zA-Z0-9_]+/}]},r=(e.QUOTE_STRING_MODE,{endsWithParent:!0,relevance:0,keywords:{keyword:"as",built_in:t},contains:[e.QUOTE_STRING_MODE,n,e.NUMBER_MODE]});return{case_insensitive:!0,subLanguage:"xml",contains:[e.COMMENT("{{!(--)?","(--)?}}"),{className:"template-tag",begin:/\{\{[#\/]/,end:/\}\}/,contains:[{className:"name",begin:/[a-zA-Z\.\-]+/,keywords:{"builtin-name":t},starts:r}]},{className:"template-variable",begin:/\{\{[a-zA-Z][a-zA-Z\-]+/,end:/\}\}/,keywords:{keyword:"as",built_in:t},contains:[e.QUOTE_STRING_MODE]}]}}},"7a5e":function(e,t){e.exports=function(e){var t={className:"variable",variants:[{begin:"\\$\\("+e.UNDERSCORE_IDENT_RE+"\\)",contains:[e.BACKSLASH_ESCAPE]},{begin:/\$[@%|=>|\\[\\["}}},"7c30":function(e,t){e.exports=function(e){var t="([-a-zA-Z$._][\\w\\-$.]*)";return{keywords:"begin end true false declare define global constant private linker_private internal available_externally linkonce linkonce_odr weak weak_odr appending dllimport dllexport common default hidden protected extern_weak external thread_local zeroinitializer undef null to tail target triple datalayout volatile nuw nsw nnan ninf nsz arcp fast exact inbounds align addrspace section alias module asm sideeffect gc dbg linker_private_weak attributes blockaddress initialexec localdynamic localexec prefix unnamed_addr ccc fastcc coldcc x86_stdcallcc x86_fastcallcc arm_apcscc arm_aapcscc arm_aapcs_vfpcc ptx_device ptx_kernel intel_ocl_bicc msp430_intrcc spir_func spir_kernel x86_64_sysvcc x86_64_win64cc x86_thiscallcc cc c signext zeroext inreg sret nounwind noreturn noalias nocapture byval nest readnone readonly inlinehint noinline alwaysinline optsize ssp sspreq noredzone noimplicitfloat naked builtin cold nobuiltin noduplicate nonlazybind optnone returns_twice sanitize_address sanitize_memory sanitize_thread sspstrong uwtable returned type opaque eq ne slt sgt sle sge ult ugt ule uge oeq one olt ogt ole oge ord uno ueq une x acq_rel acquire alignstack atomic catch cleanup filter inteldialect max min monotonic nand personality release seq_cst singlethread umax umin unordered xchg add fadd sub fsub mul fmul udiv sdiv fdiv urem srem frem shl lshr ashr and or xor icmp fcmp phi call trunc zext sext fptrunc fpext uitofp sitofp fptoui fptosi inttoptr ptrtoint bitcast addrspacecast select va_arg ret br switch invoke unwind unreachable indirectbr landingpad resume malloc alloca free load store getelementptr extractelement insertelement shufflevector getresult extractvalue insertvalue atomicrmw cmpxchg fence argmemonly double",contains:[{className:"keyword",begin:"i\\d+"},e.COMMENT(";","\\n",{relevance:0}),e.QUOTE_STRING_MODE,{className:"string",variants:[{begin:'"',end:'[^\\\\]"'}],relevance:0},{className:"title",variants:[{begin:"@"+t},{begin:"@\\d+"},{begin:"!"+t},{begin:"!\\d+"+t}]},{className:"symbol",variants:[{begin:"%"+t},{begin:"%\\d+"},{begin:"#\\d+"}]},{className:"number",variants:[{begin:"0[xX][a-fA-F0-9]+"},{begin:"-?\\d+(?:[.]\\d+)?(?:[eE][-+]?\\d+(?:[.]\\d+)?)?"}],relevance:0}]}}},"7c46":function(e,t){e.exports=function(e){var t={className:"subst",variants:[{begin:"\\$[A-Za-z0-9_]+"}]},n={className:"subst",variants:[{begin:"\\${",end:"}"}],keywords:"true false null this is new super"},r={className:"string",variants:[{begin:"r'''",end:"'''"},{begin:'r"""',end:'"""'},{begin:"r'",end:"'",illegal:"\\n"},{begin:'r"',end:'"',illegal:"\\n"},{begin:"'''",end:"'''",contains:[e.BACKSLASH_ESCAPE,t,n]},{begin:'"""',end:'"""',contains:[e.BACKSLASH_ESCAPE,t,n]},{begin:"'",end:"'",illegal:"\\n",contains:[e.BACKSLASH_ESCAPE,t,n]},{begin:'"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE,t,n]}]};n.contains=[e.C_NUMBER_MODE,r];var i={keyword:"abstract as assert async await break case catch class const continue covariant default deferred do dynamic else enum export extends extension external factory false final finally for Function get hide if implements import in inferface is library mixin new null on operator part rethrow return set show static super switch sync this throw true try typedef var void while with yield",built_in:"Comparable DateTime Duration Function Iterable Iterator List Map Match Null Object Pattern RegExp Set Stopwatch String StringBuffer StringSink Symbol Type Uri bool double dynamic int num print Element ElementList document querySelector querySelectorAll window"};return{keywords:i,contains:[r,e.COMMENT("/\\*\\*","\\*/",{subLanguage:"markdown"}),e.COMMENT("///+\\s*","$",{contains:[{subLanguage:"markdown",begin:".",end:"$"}]}),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"class",beginKeywords:"class interface",end:"{",excludeEnd:!0,contains:[{beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE]},e.C_NUMBER_MODE,{className:"meta",begin:"@[A-Za-z]+"},{begin:"=>"}]}}},"7c71":function(e,t){e.exports=function(e){var t="Int Float String Bool Dynamic Void Array ";return{aliases:["hx"],keywords:{keyword:"break case cast catch continue default do dynamic else enum extern for function here if import in inline never new override package private get set public return static super switch this throw trace try typedef untyped using var while "+t,built_in:"trace this",literal:"true false null _"},contains:[{className:"string",begin:"'",end:"'",contains:[e.BACKSLASH_ESCAPE,{className:"subst",begin:"\\$\\{",end:"\\}"},{className:"subst",begin:"\\$",end:"\\W}"}]},e.QUOTE_STRING_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.C_NUMBER_MODE,{className:"meta",begin:"@:",end:"$"},{className:"meta",begin:"#",end:"$",keywords:{"meta-keyword":"if else elseif end error"}},{className:"type",begin:":[ \t]*",end:"[^A-Za-z0-9_ \t\\->]",excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:":[ \t]*",end:"\\W",excludeBegin:!0,excludeEnd:!0},{className:"type",begin:"new *",end:"\\W",excludeBegin:!0,excludeEnd:!0},{className:"class",beginKeywords:"enum",end:"\\{",contains:[e.TITLE_MODE]},{className:"class",beginKeywords:"abstract",end:"[\\{$]",contains:[{className:"type",begin:"\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0},{className:"type",begin:"from +",end:"\\W",excludeBegin:!0,excludeEnd:!0},{className:"type",begin:"to +",end:"\\W",excludeBegin:!0,excludeEnd:!0},e.TITLE_MODE],keywords:{keyword:"abstract from to"}},{className:"class",begin:"\\b(class|interface) +",end:"[\\{$]",excludeEnd:!0,keywords:"class interface",contains:[{className:"keyword",begin:"\\b(extends|implements) +",keywords:"extends implements",contains:[{className:"type",begin:e.IDENT_RE,relevance:0}]},e.TITLE_MODE]},{className:"function",beginKeywords:"function",end:"\\(",excludeEnd:!0,illegal:"\\S",contains:[e.TITLE_MODE]}],illegal:/<\//}}},"7c73":function(e,t,n){var r,i=n("825a"),a=n("37e8"),o=n("7839"),s=n("d012"),l=n("1be4"),c=n("cc12"),d=n("f772"),u=">",_="<",p="prototype",f="script",m=d("IE_PROTO"),h=function(){},g=function(e){return _+f+u+e+_+"/"+f+u},E=function(e){e.write(g("")),e.close();var t=e.parentWindow.Object;return e=null,t},S=function(){var e,t=c("iframe"),n="java"+f+":";return t.style.display="none",l.appendChild(t),t.src=String(n),e=t.contentWindow.document,e.open(),e.write(g("document.F=Object")),e.close(),e.F},b=function(){try{r=document.domain&&new ActiveXObject("htmlfile")}catch(t){}b=r?E(r):S();var e=o.length;while(e--)delete b[p][o[e]];return b()};s[m]=!0,e.exports=Object.create||function(e,t){var n;return null!==e?(h[p]=i(e),n=new h,h[p]=null,n[m]=e):n=b(),void 0===t?n:a(n,t)}},"7cff":function(e,t){e.exports=function(e){var t=e.COMMENT(/^\s*@?rem\b/,/$/,{relevance:10}),n={className:"symbol",begin:"^\\s*[A-Za-z._?][A-Za-z0-9_$#@~.?]*(:|\\s+label)",relevance:0};return{aliases:["bat","cmd"],case_insensitive:!0,illegal:/\/\*/,keywords:{keyword:"if else goto for in do call exit not exist errorlevel defined equ neq lss leq gtr geq",built_in:"prn nul lpt3 lpt2 lpt1 con com4 com3 com2 com1 aux shift cd dir echo setlocal endlocal set pause copy append assoc at attrib break cacls cd chcp chdir chkdsk chkntfs cls cmd color comp compact convert date dir diskcomp diskcopy doskey erase fs find findstr format ftype graftabl help keyb label md mkdir mode more move path pause print popd pushd promt rd recover rem rename replace restore rmdir shiftsort start subst time title tree type ver verify vol ping net ipconfig taskkill xcopy ren del"},contains:[{className:"variable",begin:/%%[^ ]|%[^ ]+?%|![^ ]+?!/},{className:"function",begin:n.begin,end:"goto:eof",contains:[e.inherit(e.TITLE_MODE,{begin:"([_a-zA-Z]\\w*\\.)*([_a-zA-Z]\\w*:)?[_a-zA-Z]\\w*"}),t]},{className:"number",begin:"\\b\\d+",relevance:0},t]}}},"7d9d":function(e,t){e.exports=function(e){var t={keyword:"abort acronym acronyms alias all and assign binary card diag display else eq file files for free ge gt if integer le loop lt maximizing minimizing model models ne negative no not option options or ord positive prod put putpage puttl repeat sameas semicont semiint smax smin solve sos1 sos2 sum system table then until using while xor yes",literal:"eps inf na","built-in":"abs arccos arcsin arctan arctan2 Beta betaReg binomial ceil centropy cos cosh cvPower div div0 eDist entropy errorf execSeed exp fact floor frac gamma gammaReg log logBeta logGamma log10 log2 mapVal max min mod ncpCM ncpF ncpVUpow ncpVUsin normal pi poly power randBinomial randLinear randTriangle round rPower sigmoid sign signPower sin sinh slexp sllog10 slrec sqexp sqlog10 sqr sqrec sqrt tan tanh trunc uniform uniformInt vcPower bool_and bool_eqv bool_imp bool_not bool_or bool_xor ifThen rel_eq rel_ge rel_gt rel_le rel_lt rel_ne gday gdow ghour gleap gmillisec gminute gmonth gsecond gyear jdate jnow jstart jtime errorLevel execError gamsRelease gamsVersion handleCollect handleDelete handleStatus handleSubmit heapFree heapLimit heapSize jobHandle jobKill jobStatus jobTerminate licenseLevel licenseStatus maxExecError sleep timeClose timeComp timeElapsed timeExec timeStart"},n={className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0},r={className:"symbol",variants:[{begin:/\=[lgenxc]=/},{begin:/\$/}]},i={className:"comment",variants:[{begin:"'",end:"'"},{begin:'"',end:'"'}],illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},a={begin:"/",end:"/",keywords:t,contains:[i,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,e.C_NUMBER_MODE]},o={begin:/[a-z][a-z0-9_]*(\([a-z0-9_, ]*\))?[ \t]+/,excludeBegin:!0,end:"$",endsWithParent:!0,contains:[i,a,{className:"comment",begin:/([ ]*[a-z0-9&#*=?@>\\<:\-,()$\[\]_.{}!+%^]+)+/,relevance:0}]};return{aliases:["gms"],case_insensitive:!0,keywords:t,contains:[e.COMMENT(/^\$ontext/,/^\$offtext/),{className:"meta",begin:"^\\$[a-z0-9]+",end:"$",returnBegin:!0,contains:[{className:"meta-keyword",begin:"^\\$[a-z0-9]+"}]},e.COMMENT("^\\*","$"),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,{beginKeywords:"set sets parameter parameters variable variables scalar scalars equation equations",end:";",contains:[e.COMMENT("^\\*","$"),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,a,o]},{beginKeywords:"table",end:";",returnBegin:!0,contains:[{beginKeywords:"table",end:"$",contains:[o]},e.COMMENT("^\\*","$"),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,e.C_NUMBER_MODE]},{className:"function",begin:/^[a-z][a-z0-9_,\-+' ()$]+\.{2}/,returnBegin:!0,contains:[{className:"title",begin:/^[a-z0-9_]+/},n,r]},e.C_NUMBER_MODE,r]}}},"7dd0":function(e,t,n){"use strict";var r=n("23e7"),i=n("9ed3"),a=n("e163"),o=n("d2bb"),s=n("d44e"),l=n("9112"),c=n("6eeb"),d=n("b622"),u=n("c430"),_=n("3f8c"),p=n("ae93"),f=p.IteratorPrototype,m=p.BUGGY_SAFARI_ITERATORS,h=d("iterator"),g="keys",E="values",S="entries",b=function(){return this};e.exports=function(e,t,n,d,p,v,y){i(n,t,d);var T,C,N,O=function(e){if(e===p&&M)return M;if(!m&&e in w)return w[e];switch(e){case g:return function(){return new n(this,e)};case E:return function(){return new n(this,e)};case S:return function(){return new n(this,e)}}return function(){return new n(this)}},R=t+" Iterator",A=!1,w=e.prototype,I=w[h]||w["@@iterator"]||p&&w[p],M=!m&&I||O(p),x="Array"==t&&w.entries||I;if(x&&(T=a(x.call(new e)),f!==Object.prototype&&T.next&&(u||a(T)===f||(o?o(T,f):"function"!=typeof T[h]&&l(T,h,b)),s(T,R,!0,!0),u&&(_[R]=b))),p==E&&I&&I.name!==E&&(A=!0,M=function(){return I.call(this)}),u&&!y||w[h]===M||l(w,h,M),_[t]=M,p)if(C={values:O(E),keys:v?M:O(g),entries:O(S)},y)for(N in C)(m||A||!(N in w))&&c(w,N,C[N]);else r({target:t,proto:!0,forced:m||A},C);return C}},"7f9a":function(e,t,n){var r=n("da84"),i=n("8925"),a=r.WeakMap;e.exports="function"===typeof a&&/native code/.test(i(a))},"80b3":function(e,t){e.exports=function(e){return{keywords:{keyword:"_|0 as at cofix else end exists exists2 fix for forall fun if IF in let match mod Prop return Set then Type using where with Abort About Add Admit Admitted All Arguments Assumptions Axiom Back BackTo Backtrack Bind Blacklist Canonical Cd Check Class Classes Close Coercion Coercions CoFixpoint CoInductive Collection Combined Compute Conjecture Conjectures Constant constr Constraint Constructors Context Corollary CreateHintDb Cut Declare Defined Definition Delimit Dependencies DependentDerive Drop eauto End Equality Eval Example Existential Existentials Existing Export exporting Extern Extract Extraction Fact Field Fields File Fixpoint Focus for From Function Functional Generalizable Global Goal Grab Grammar Graph Guarded Heap Hint HintDb Hints Hypotheses Hypothesis ident Identity If Immediate Implicit Import Include Inductive Infix Info Initial Inline Inspect Instance Instances Intro Intros Inversion Inversion_clear Language Left Lemma Let Libraries Library Load LoadPath Local Locate Ltac ML Mode Module Modules Monomorphic Morphism Next NoInline Notation Obligation Obligations Opaque Open Optimize Options Parameter Parameters Parametric Path Paths pattern Polymorphic Preterm Print Printing Program Projections Proof Proposition Pwd Qed Quit Rec Record Recursive Redirect Relation Remark Remove Require Reserved Reset Resolve Restart Rewrite Right Ring Rings Save Scheme Scope Scopes Script Search SearchAbout SearchHead SearchPattern SearchRewrite Section Separate Set Setoid Show Solve Sorted Step Strategies Strategy Structure SubClass Table Tables Tactic Term Test Theorem Time Timeout Transparent Type Typeclasses Types Undelimit Undo Unfocus Unfocused Unfold Universe Universes Unset Unshelve using Variable Variables Variant Verbose Visibility where with",built_in:"abstract absurd admit after apply as assert assumption at auto autorewrite autounfold before bottom btauto by case case_eq cbn cbv change classical_left classical_right clear clearbody cofix compare compute congruence constr_eq constructor contradict contradiction cut cutrewrite cycle decide decompose dependent destruct destruction dintuition discriminate discrR do double dtauto eapply eassumption eauto ecase econstructor edestruct ediscriminate eelim eexact eexists einduction einjection eleft elim elimtype enough equality erewrite eright esimplify_eq esplit evar exact exactly_once exfalso exists f_equal fail field field_simplify field_simplify_eq first firstorder fix fold fourier functional generalize generalizing gfail give_up has_evar hnf idtac in induction injection instantiate intro intro_pattern intros intuition inversion inversion_clear is_evar is_var lapply lazy left lia lra move native_compute nia nsatz omega once pattern pose progress proof psatz quote record red refine reflexivity remember rename repeat replace revert revgoals rewrite rewrite_strat right ring ring_simplify rtauto set setoid_reflexivity setoid_replace setoid_rewrite setoid_symmetry setoid_transitivity shelve shelve_unifiable simpl simple simplify_eq solve specialize split split_Rabs split_Rmult stepl stepr subst sum swap symmetry tactic tauto time timeout top transitivity trivial try tryif unfold unify until using vm_compute with"},contains:[e.QUOTE_STRING_MODE,e.COMMENT("\\(\\*","\\*\\)"),e.C_NUMBER_MODE,{className:"type",excludeBegin:!0,begin:"\\|\\s*",end:"\\w+"},{begin:/[-=]>/}]}}},"825a":function(e,t,n){var r=n("861d");e.exports=function(e){if(!r(e))throw TypeError(String(e)+" is not an object");return e}},8261:function(e,t){e.exports=function(e){var t={className:"string",variants:[{begin:'"',end:'"',contains:[{begin:'""',relevance:0}]}]},n={className:"number",begin:"\\b(\\d+(\\.\\d*)?|\\.\\d+)",relevance:0},r="property parameter class classmethod clientmethod extends as break catch close continue do d|0 else elseif for goto halt hang h|0 if job j|0 kill k|0 lock l|0 merge new open quit q|0 read r|0 return set s|0 tcommit throw trollback try tstart use view while write w|0 xecute x|0 zkill znspace zn ztrap zwrite zw zzdump zzwrite print zbreak zinsert zload zprint zremove zsave zzprint mv mvcall mvcrt mvdim mvprint zquit zsync ascii";return{case_insensitive:!0,aliases:["cos","cls"],keywords:r,contains:[n,t,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"comment",begin:/;/,end:"$",relevance:0},{className:"built_in",begin:/(?:\$\$?|\.\.)\^?[a-zA-Z]+/},{className:"built_in",begin:/\$\$\$[a-zA-Z]+/},{className:"built_in",begin:/%[a-z]+(?:\.[a-z]+)*/},{className:"symbol",begin:/\^%?[a-zA-Z][\w]*/},{className:"keyword",begin:/##class|##super|#define|#dim/},{begin:/&sql\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,subLanguage:"sql"},{begin:/&(js|jscript|javascript)/,excludeBegin:!0,excludeEnd:!0,subLanguage:"javascript"},{begin:/&html<\s*\s*>/,subLanguage:"xml"}]}}},"82cb":function(e,t){e.exports=function(e){var t="[a-zA-Z_]\\w*[!?=]?|[-+~]\\@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?",n={keyword:"and then defined module in return redo if BEGIN retry end for self when next until do begin unless END rescue else break undef not super class case require yield alias while ensure elsif or include attr_reader attr_writer attr_accessor",literal:"true false nil"},r={className:"doctag",begin:"@[A-Za-z]+"},i={begin:"#<",end:">"},a=[e.COMMENT("#","$",{contains:[r]}),e.COMMENT("^\\=begin","^\\=end",{contains:[r],relevance:10}),e.COMMENT("^__END__","\\n$")],o={className:"subst",begin:"#\\{",end:"}",keywords:n},s={className:"string",contains:[e.BACKSLASH_ESCAPE,o],variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/`/,end:/`/},{begin:"%[qQwWx]?\\(",end:"\\)"},{begin:"%[qQwWx]?\\[",end:"\\]"},{begin:"%[qQwWx]?{",end:"}"},{begin:"%[qQwWx]?<",end:">"},{begin:"%[qQwWx]?/",end:"/"},{begin:"%[qQwWx]?%",end:"%"},{begin:"%[qQwWx]?-",end:"-"},{begin:"%[qQwWx]?\\|",end:"\\|"},{begin:/\B\?(\\\d{1,3}|\\x[A-Fa-f0-9]{1,2}|\\u[A-Fa-f0-9]{4}|\\?\S)\b/},{begin:/<<[-~]?'?(\w+)(?:.|\n)*?\n\s*\1\b/,returnBegin:!0,contains:[{begin:/<<[-~]?'?/},{begin:/\w+/,endSameAsBegin:!0,contains:[e.BACKSLASH_ESCAPE,o]}]}]},l={className:"params",begin:"\\(",end:"\\)",endsParent:!0,keywords:n},c=[s,i,{className:"class",beginKeywords:"class module",end:"$|;",illegal:/=/,contains:[e.inherit(e.TITLE_MODE,{begin:"[A-Za-z_]\\w*(::\\w+)*(\\?|\\!)?"}),{begin:"<\\s*",contains:[{begin:"("+e.IDENT_RE+"::)?"+e.IDENT_RE}]}].concat(a)},{className:"function",beginKeywords:"def",end:"$|;",contains:[e.inherit(e.TITLE_MODE,{begin:t}),l].concat(a)},{begin:e.IDENT_RE+"::"},{className:"symbol",begin:e.UNDERSCORE_IDENT_RE+"(\\!|\\?)?:",relevance:0},{className:"symbol",begin:":(?!\\s)",contains:[s,{begin:t}],relevance:0},{className:"number",begin:"(\\b0[0-7_]+)|(\\b0x[0-9a-fA-F_]+)|(\\b[1-9][0-9_]*(\\.[0-9_]+)?)|[0_]\\b",relevance:0},{begin:"(\\$\\W)|((\\$|\\@\\@?)(\\w+))"},{className:"params",begin:/\|/,end:/\|/,keywords:n},{begin:"("+e.RE_STARTERS_RE+"|unless)\\s*",keywords:"unless",contains:[i,{className:"regexp",contains:[e.BACKSLASH_ESCAPE,o],illegal:/\n/,variants:[{begin:"/",end:"/[a-z]*"},{begin:"%r{",end:"}[a-z]*"},{begin:"%r\\(",end:"\\)[a-z]*"},{begin:"%r!",end:"![a-z]*"},{begin:"%r\\[",end:"\\][a-z]*"}]}].concat(a),relevance:0}].concat(a);o.contains=c,l.contains=c;var d="[>?]>",u="[\\w#]+\\(\\w+\\):\\d+:\\d+>",_="(\\w+-)?\\d+\\.\\d+\\.\\d(p\\d+)?[^>]+>",p=[{begin:/^\s*=>/,starts:{end:"$",contains:c}},{className:"meta",begin:"^("+d+"|"+u+"|"+_+")",starts:{end:"$",contains:c}}];return{aliases:["rb","gemspec","podspec","thor","irb"],keywords:n,illegal:/\/\*/,contains:a.concat(p).concat(c)}}},"83ab":function(e,t,n){var r=n("d039");e.exports=!r((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]}))},"83b9":function(e,t,n){"use strict";var r=n("d925"),i=n("e683");e.exports=function(e,t){return e&&!r(t)?i(e,t):t}},"841c":function(e,t,n){"use strict";var r=n("d784"),i=n("825a"),a=n("1d80"),o=n("129f"),s=n("14c3");r("search",1,(function(e,t,n){return[function(t){var n=a(this),r=void 0==t?void 0:t[e];return void 0!==r?r.call(t,n):new RegExp(t)[e](String(n))},function(e){var r=n(t,e,this);if(r.done)return r.value;var a=i(e),l=String(this),c=a.lastIndex;o(c,0)||(a.lastIndex=0);var d=s(a,l);return o(a.lastIndex,c)||(a.lastIndex=c),null===d?-1:d.index}]}))},"861d":function(e,t){e.exports=function(e){return"object"===typeof e?null!==e:"function"===typeof e}},8667:function(e,t){e.exports=function(e){var t={"builtin-name":"!= % %= & &= * ** **= *= *map + += , --build-class-- --import-- -= . / // //= /= < << <<= <= = > >= >> >>= @ @= ^ ^= abs accumulate all and any ap-compose ap-dotimes ap-each ap-each-while ap-filter ap-first ap-if ap-last ap-map ap-map-when ap-pipe ap-reduce ap-reject apply as-> ascii assert assoc bin break butlast callable calling-module-name car case cdr chain chr coll? combinations compile compress cond cons cons? continue count curry cut cycle dec def default-method defclass defmacro defmacro-alias defmacro/g! defmain defmethod defmulti defn defn-alias defnc defnr defreader defseq del delattr delete-route dict-comp dir disassemble dispatch-reader-macro distinct divmod do doto drop drop-last drop-while empty? end-sequence eval eval-and-compile eval-when-compile even? every? except exec filter first flatten float? fn fnc fnr for for* format fraction genexpr gensym get getattr global globals group-by hasattr hash hex id identity if if* if-not if-python2 import in inc input instance? integer integer-char? integer? interleave interpose is is-coll is-cons is-empty is-even is-every is-float is-instance is-integer is-integer-char is-iterable is-iterator is-keyword is-neg is-none is-not is-numeric is-odd is-pos is-string is-symbol is-zero isinstance islice issubclass iter iterable? iterate iterator? keyword keyword? lambda last len let lif lif-not list* list-comp locals loop macro-error macroexpand macroexpand-1 macroexpand-all map max merge-with method-decorator min multi-decorator multicombinations name neg? next none? nonlocal not not-in not? nth numeric? oct odd? open or ord partition permutations pos? post-route postwalk pow prewalk print product profile/calls profile/cpu put-route quasiquote quote raise range read read-str recursive-replace reduce remove repeat repeatedly repr require rest round route route-with-methods rwm second seq set-comp setattr setv some sorted string string? sum switch symbol? take take-nth take-while tee try unless unquote unquote-splicing vars walk when while with with* with-decorator with-gensyms xi xor yield yield-from zero? zip zip-longest | |= ~"},n="a-zA-Z_\\-!.?+*=<>&#'",r="["+n+"]["+n+"0-9/;:]*",i="[-+]?\\d+(\\.\\d+)?",a={className:"meta",begin:"^#!",end:"$"},o={begin:r,relevance:0},s={className:"number",begin:i,relevance:0},l=e.inherit(e.QUOTE_STRING_MODE,{illegal:null}),c=e.COMMENT(";","$",{relevance:0}),d={className:"literal",begin:/\b([Tt]rue|[Ff]alse|nil|None)\b/},u={begin:"[\\[\\{]",end:"[\\]\\}]"},_={className:"comment",begin:"\\^"+r},p=e.COMMENT("\\^\\{","\\}"),f={className:"symbol",begin:"[:]{1,2}"+r},m={begin:"\\(",end:"\\)"},h={endsWithParent:!0,relevance:0},g={keywords:t,lexemes:r,className:"name",begin:r,starts:h},E=[m,l,_,p,c,f,u,s,d,o];return m.contains=[e.COMMENT("comment",""),g,h],h.contains=E,u.contains=E,{aliases:["hylang"],illegal:/\S/,contains:[a,m,l,_,p,c,f,u,s,d]}}},8925:function(e,t,n){var r=n("c6cd"),i=Function.toString;"function"!=typeof r.inspectSource&&(r.inspectSource=function(e){return i.call(e)}),e.exports=r.inspectSource},8931:function(e,t){e.exports=function(e){var t=["functions","model","data","parameters","quantities","transformed","generated"],n=["for","in","if","else","while","break","continue","return"],r=["print","reject","increment_log_prob|10","integrate_ode|10","integrate_ode_rk45|10","integrate_ode_bdf|10","algebra_solver"],i=["int","real","vector","ordered","positive_ordered","simplex","unit_vector","row_vector","matrix","cholesky_factor_corr|10","cholesky_factor_cov|10","corr_matrix|10","cov_matrix|10","void"],a=["Phi","Phi_approx","abs","acos","acosh","algebra_solver","append_array","append_col","append_row","asin","asinh","atan","atan2","atanh","bernoulli_cdf","bernoulli_lccdf","bernoulli_lcdf","bernoulli_logit_lpmf","bernoulli_logit_rng","bernoulli_lpmf","bernoulli_rng","bessel_first_kind","bessel_second_kind","beta_binomial_cdf","beta_binomial_lccdf","beta_binomial_lcdf","beta_binomial_lpmf","beta_binomial_rng","beta_cdf","beta_lccdf","beta_lcdf","beta_lpdf","beta_rng","binary_log_loss","binomial_cdf","binomial_coefficient_log","binomial_lccdf","binomial_lcdf","binomial_logit_lpmf","binomial_lpmf","binomial_rng","block","categorical_logit_lpmf","categorical_logit_rng","categorical_lpmf","categorical_rng","cauchy_cdf","cauchy_lccdf","cauchy_lcdf","cauchy_lpdf","cauchy_rng","cbrt","ceil","chi_square_cdf","chi_square_lccdf","chi_square_lcdf","chi_square_lpdf","chi_square_rng","cholesky_decompose","choose","col","cols","columns_dot_product","columns_dot_self","cos","cosh","cov_exp_quad","crossprod","csr_extract_u","csr_extract_v","csr_extract_w","csr_matrix_times_vector","csr_to_dense_matrix","cumulative_sum","determinant","diag_matrix","diag_post_multiply","diag_pre_multiply","diagonal","digamma","dims","dirichlet_lpdf","dirichlet_rng","distance","dot_product","dot_self","double_exponential_cdf","double_exponential_lccdf","double_exponential_lcdf","double_exponential_lpdf","double_exponential_rng","e","eigenvalues_sym","eigenvectors_sym","erf","erfc","exp","exp2","exp_mod_normal_cdf","exp_mod_normal_lccdf","exp_mod_normal_lcdf","exp_mod_normal_lpdf","exp_mod_normal_rng","expm1","exponential_cdf","exponential_lccdf","exponential_lcdf","exponential_lpdf","exponential_rng","fabs","falling_factorial","fdim","floor","fma","fmax","fmin","fmod","frechet_cdf","frechet_lccdf","frechet_lcdf","frechet_lpdf","frechet_rng","gamma_cdf","gamma_lccdf","gamma_lcdf","gamma_lpdf","gamma_p","gamma_q","gamma_rng","gaussian_dlm_obs_lpdf","get_lp","gumbel_cdf","gumbel_lccdf","gumbel_lcdf","gumbel_lpdf","gumbel_rng","head","hypergeometric_lpmf","hypergeometric_rng","hypot","inc_beta","int_step","integrate_ode","integrate_ode_bdf","integrate_ode_rk45","inv","inv_Phi","inv_chi_square_cdf","inv_chi_square_lccdf","inv_chi_square_lcdf","inv_chi_square_lpdf","inv_chi_square_rng","inv_cloglog","inv_gamma_cdf","inv_gamma_lccdf","inv_gamma_lcdf","inv_gamma_lpdf","inv_gamma_rng","inv_logit","inv_sqrt","inv_square","inv_wishart_lpdf","inv_wishart_rng","inverse","inverse_spd","is_inf","is_nan","lbeta","lchoose","lgamma","lkj_corr_cholesky_lpdf","lkj_corr_cholesky_rng","lkj_corr_lpdf","lkj_corr_rng","lmgamma","lmultiply","log","log10","log1m","log1m_exp","log1m_inv_logit","log1p","log1p_exp","log2","log_determinant","log_diff_exp","log_falling_factorial","log_inv_logit","log_mix","log_rising_factorial","log_softmax","log_sum_exp","logistic_cdf","logistic_lccdf","logistic_lcdf","logistic_lpdf","logistic_rng","logit","lognormal_cdf","lognormal_lccdf","lognormal_lcdf","lognormal_lpdf","lognormal_rng","machine_precision","matrix_exp","max","mdivide_left_spd","mdivide_left_tri_low","mdivide_right_spd","mdivide_right_tri_low","mean","min","modified_bessel_first_kind","modified_bessel_second_kind","multi_gp_cholesky_lpdf","multi_gp_lpdf","multi_normal_cholesky_lpdf","multi_normal_cholesky_rng","multi_normal_lpdf","multi_normal_prec_lpdf","multi_normal_rng","multi_student_t_lpdf","multi_student_t_rng","multinomial_lpmf","multinomial_rng","multiply_log","multiply_lower_tri_self_transpose","neg_binomial_2_cdf","neg_binomial_2_lccdf","neg_binomial_2_lcdf","neg_binomial_2_log_lpmf","neg_binomial_2_log_rng","neg_binomial_2_lpmf","neg_binomial_2_rng","neg_binomial_cdf","neg_binomial_lccdf","neg_binomial_lcdf","neg_binomial_lpmf","neg_binomial_rng","negative_infinity","normal_cdf","normal_lccdf","normal_lcdf","normal_lpdf","normal_rng","not_a_number","num_elements","ordered_logistic_lpmf","ordered_logistic_rng","owens_t","pareto_cdf","pareto_lccdf","pareto_lcdf","pareto_lpdf","pareto_rng","pareto_type_2_cdf","pareto_type_2_lccdf","pareto_type_2_lcdf","pareto_type_2_lpdf","pareto_type_2_rng","pi","poisson_cdf","poisson_lccdf","poisson_lcdf","poisson_log_lpmf","poisson_log_rng","poisson_lpmf","poisson_rng","positive_infinity","pow","print","prod","qr_Q","qr_R","quad_form","quad_form_diag","quad_form_sym","rank","rayleigh_cdf","rayleigh_lccdf","rayleigh_lcdf","rayleigh_lpdf","rayleigh_rng","reject","rep_array","rep_matrix","rep_row_vector","rep_vector","rising_factorial","round","row","rows","rows_dot_product","rows_dot_self","scaled_inv_chi_square_cdf","scaled_inv_chi_square_lccdf","scaled_inv_chi_square_lcdf","scaled_inv_chi_square_lpdf","scaled_inv_chi_square_rng","sd","segment","sin","singular_values","sinh","size","skew_normal_cdf","skew_normal_lccdf","skew_normal_lcdf","skew_normal_lpdf","skew_normal_rng","softmax","sort_asc","sort_desc","sort_indices_asc","sort_indices_desc","sqrt","sqrt2","square","squared_distance","step","student_t_cdf","student_t_lccdf","student_t_lcdf","student_t_lpdf","student_t_rng","sub_col","sub_row","sum","tail","tan","tanh","target","tcrossprod","tgamma","to_array_1d","to_array_2d","to_matrix","to_row_vector","to_vector","trace","trace_gen_quad_form","trace_quad_form","trigamma","trunc","uniform_cdf","uniform_lccdf","uniform_lcdf","uniform_lpdf","uniform_rng","variance","von_mises_lpdf","von_mises_rng","weibull_cdf","weibull_lccdf","weibull_lcdf","weibull_lpdf","weibull_rng","wiener_lpdf","wishart_lpdf","wishart_rng"],o=["bernoulli","bernoulli_logit","beta","beta_binomial","binomial","binomial_logit","categorical","categorical_logit","cauchy","chi_square","dirichlet","double_exponential","exp_mod_normal","exponential","frechet","gamma","gaussian_dlm_obs","gumbel","hypergeometric","inv_chi_square","inv_gamma","inv_wishart","lkj_corr","lkj_corr_cholesky","logistic","lognormal","multi_gp","multi_gp_cholesky","multi_normal","multi_normal_cholesky","multi_normal_prec","multi_student_t","multinomial","neg_binomial","neg_binomial_2","neg_binomial_2_log","normal","ordered_logistic","pareto","pareto_type_2","poisson","poisson_log","rayleigh","scaled_inv_chi_square","skew_normal","student_t","uniform","von_mises","weibull","wiener","wishart"];return{aliases:["stanfuncs"],keywords:{title:t.join(" "),keyword:n.concat(i).concat(r).join(" "),built_in:a.join(" ")},lexemes:e.IDENT_RE,contains:[e.C_LINE_COMMENT_MODE,e.COMMENT(/#/,/$/,{relevance:0,keywords:{"meta-keyword":"include"}}),e.COMMENT(/\/\*/,/\*\//,{relevance:0,contains:[{className:"doctag",begin:/@(return|param)/}]}),{begin:/<\s*lower\s*=/,keywords:"lower"},{begin:/[<,]*upper\s*=/,keywords:"upper"},{className:"keyword",begin:/\btarget\s*\+=/,relevance:10},{begin:"~\\s*("+e.IDENT_RE+")\\s*\\(",keywords:o.join(" ")},{className:"number",variants:[{begin:/\b\d+(?:\.\d*)?(?:[eE][+-]?\d+)?/},{begin:/\.\d+(?:[eE][+-]?\d+)?\b/}],relevance:0},{className:"string",begin:'"',end:'"',relevance:0}]}}},"89e7":function(e,t){e.exports=function(e){return{aliases:["vb"],case_insensitive:!0,keywords:{keyword:"addhandler addressof alias and andalso aggregate ansi as async assembly auto await binary by byref byval call case catch class compare const continue custom declare default delegate dim distinct do each equals else elseif end enum erase error event exit explicit finally for friend from function get global goto group handles if implements imports in inherits interface into is isfalse isnot istrue iterator join key let lib like loop me mid mod module mustinherit mustoverride mybase myclass nameof namespace narrowing new next not notinheritable notoverridable of off on operator option optional or order orelse overloads overridable overrides paramarray partial preserve private property protected public raiseevent readonly redim rem removehandler resume return select set shadows shared skip static step stop structure strict sub synclock take text then throw to try unicode until using when where while widening with withevents writeonly xor yield",built_in:"boolean byte cbool cbyte cchar cdate cdec cdbl char cint clng cobj csbyte cshort csng cstr ctype date decimal directcast double gettype getxmlnamespace iif integer long object sbyte short single string trycast typeof uinteger ulong ushort",literal:"true false nothing"},illegal:"//|{|}|endif|gosub|variant|wend|^\\$ ",contains:[e.inherit(e.QUOTE_STRING_MODE,{contains:[{begin:'""'}]}),e.COMMENT("'","$",{returnBegin:!0,contains:[{className:"doctag",begin:"'''|\x3c!--|--\x3e",contains:[e.PHRASAL_WORDS_MODE]},{className:"doctag",begin:"",contains:[e.PHRASAL_WORDS_MODE]}]}),e.C_NUMBER_MODE,{className:"meta",begin:"#",end:"$",keywords:{"meta-keyword":"if else elseif end region externalsource"}}]}}},"8a86":function(e,t){e.exports=function(e){return{aliases:["bind","zone"],keywords:{keyword:"IN A AAAA AFSDB APL CAA CDNSKEY CDS CERT CNAME DHCID DLV DNAME DNSKEY DS HIP IPSECKEY KEY KX LOC MX NAPTR NS NSEC NSEC3 NSEC3PARAM PTR RRSIG RP SIG SOA SRV SSHFP TA TKEY TLSA TSIG TXT"},contains:[e.COMMENT(";","$",{relevance:0}),{className:"meta",begin:/^\$(TTL|GENERATE|INCLUDE|ORIGIN)\b/},{className:"number",begin:"((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:)))\\b"},{className:"number",begin:"((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]).){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\b"},e.inherit(e.NUMBER_MODE,{begin:/\b\d+[dhwm]?/})]}}},"8aba":function(e,t){e.exports=function(e){return{keywords:{keyword:"BILL_PERIOD BILL_START BILL_STOP RS_EFFECTIVE_START RS_EFFECTIVE_STOP RS_JURIS_CODE RS_OPCO_CODE INTDADDATTRIBUTE|5 INTDADDVMSG|5 INTDBLOCKOP|5 INTDBLOCKOPNA|5 INTDCLOSE|5 INTDCOUNT|5 INTDCOUNTSTATUSCODE|5 INTDCREATEMASK|5 INTDCREATEDAYMASK|5 INTDCREATEFACTORMASK|5 INTDCREATEHANDLE|5 INTDCREATEOVERRIDEDAYMASK|5 INTDCREATEOVERRIDEMASK|5 INTDCREATESTATUSCODEMASK|5 INTDCREATETOUPERIOD|5 INTDDELETE|5 INTDDIPTEST|5 INTDEXPORT|5 INTDGETERRORCODE|5 INTDGETERRORMESSAGE|5 INTDISEQUAL|5 INTDJOIN|5 INTDLOAD|5 INTDLOADACTUALCUT|5 INTDLOADDATES|5 INTDLOADHIST|5 INTDLOADLIST|5 INTDLOADLISTDATES|5 INTDLOADLISTENERGY|5 INTDLOADLISTHIST|5 INTDLOADRELATEDCHANNEL|5 INTDLOADSP|5 INTDLOADSTAGING|5 INTDLOADUOM|5 INTDLOADUOMDATES|5 INTDLOADUOMHIST|5 INTDLOADVERSION|5 INTDOPEN|5 INTDREADFIRST|5 INTDREADNEXT|5 INTDRECCOUNT|5 INTDRELEASE|5 INTDREPLACE|5 INTDROLLAVG|5 INTDROLLPEAK|5 INTDSCALAROP|5 INTDSCALE|5 INTDSETATTRIBUTE|5 INTDSETDSTPARTICIPANT|5 INTDSETSTRING|5 INTDSETVALUE|5 INTDSETVALUESTATUS|5 INTDSHIFTSTARTTIME|5 INTDSMOOTH|5 INTDSORT|5 INTDSPIKETEST|5 INTDSUBSET|5 INTDTOU|5 INTDTOURELEASE|5 INTDTOUVALUE|5 INTDUPDATESTATS|5 INTDVALUE|5 STDEV INTDDELETEEX|5 INTDLOADEXACTUAL|5 INTDLOADEXCUT|5 INTDLOADEXDATES|5 INTDLOADEX|5 INTDLOADEXRELATEDCHANNEL|5 INTDSAVEEX|5 MVLOAD|5 MVLOADACCT|5 MVLOADACCTDATES|5 MVLOADACCTHIST|5 MVLOADDATES|5 MVLOADHIST|5 MVLOADLIST|5 MVLOADLISTDATES|5 MVLOADLISTHIST|5 IF FOR NEXT DONE SELECT END CALL ABORT CLEAR CHANNEL FACTOR LIST NUMBER OVERRIDE SET WEEK DISTRIBUTIONNODE ELSE WHEN THEN OTHERWISE IENUM CSV INCLUDE LEAVE RIDER SAVE DELETE NOVALUE SECTION WARN SAVE_UPDATE DETERMINANT LABEL REPORT REVENUE EACH IN FROM TOTAL CHARGE BLOCK AND OR CSV_FILE RATE_CODE AUXILIARY_DEMAND UIDACCOUNT RS BILL_PERIOD_SELECT HOURS_PER_MONTH INTD_ERROR_STOP SEASON_SCHEDULE_NAME ACCOUNTFACTOR ARRAYUPPERBOUND CALLSTOREDPROC GETADOCONNECTION GETCONNECT GETDATASOURCE GETQUALIFIER GETUSERID HASVALUE LISTCOUNT LISTOP LISTUPDATE LISTVALUE PRORATEFACTOR RSPRORATE SETBINPATH SETDBMONITOR WQ_OPEN BILLINGHOURS DATE DATEFROMFLOAT DATETIMEFROMSTRING DATETIMETOSTRING DATETOFLOAT DAY DAYDIFF DAYNAME DBDATETIME HOUR MINUTE MONTH MONTHDIFF MONTHHOURS MONTHNAME ROUNDDATE SAMEWEEKDAYLASTYEAR SECOND WEEKDAY WEEKDIFF YEAR YEARDAY YEARSTR COMPSUM HISTCOUNT HISTMAX HISTMIN HISTMINNZ HISTVALUE MAXNRANGE MAXRANGE MINRANGE COMPIKVA COMPKVA COMPKVARFROMKQKW COMPLF IDATTR FLAG LF2KW LF2KWH MAXKW POWERFACTOR READING2USAGE AVGSEASON MAXSEASON MONTHLYMERGE SEASONVALUE SUMSEASON ACCTREADDATES ACCTTABLELOAD CONFIGADD CONFIGGET CREATEOBJECT CREATEREPORT EMAILCLIENT EXPBLKMDMUSAGE EXPMDMUSAGE EXPORT_USAGE FACTORINEFFECT GETUSERSPECIFIEDSTOP INEFFECT ISHOLIDAY RUNRATE SAVE_PROFILE SETREPORTTITLE USEREXIT WATFORRUNRATE TO TABLE ACOS ASIN ATAN ATAN2 BITAND CEIL COS COSECANT COSH COTANGENT DIVQUOT DIVREM EXP FABS FLOOR FMOD FREPM FREXPN LOG LOG10 MAX MAXN MIN MINNZ MODF POW ROUND ROUND2VALUE ROUNDINT SECANT SIN SINH SQROOT TAN TANH FLOAT2STRING FLOAT2STRINGNC INSTR LEFT LEN LTRIM MID RIGHT RTRIM STRING STRINGNC TOLOWER TOUPPER TRIM NUMDAYS READ_DATE STAGING",built_in:"IDENTIFIER OPTIONS XML_ELEMENT XML_OP XML_ELEMENT_OF DOMDOCCREATE DOMDOCLOADFILE DOMDOCLOADXML DOMDOCSAVEFILE DOMDOCGETROOT DOMDOCADDPI DOMNODEGETNAME DOMNODEGETTYPE DOMNODEGETVALUE DOMNODEGETCHILDCT DOMNODEGETFIRSTCHILD DOMNODEGETSIBLING DOMNODECREATECHILDELEMENT DOMNODESETATTRIBUTE DOMNODEGETCHILDELEMENTCT DOMNODEGETFIRSTCHILDELEMENT DOMNODEGETSIBLINGELEMENT DOMNODEGETATTRIBUTECT DOMNODEGETATTRIBUTEI DOMNODEGETATTRIBUTEBYNAME DOMNODEGETBYNAME"},contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.C_NUMBER_MODE,{className:"literal",variants:[{begin:"#\\s+[a-zA-Z\\ \\.]*",relevance:0},{begin:"#[a-zA-Z\\ \\.]+"}]}]}}},"8baf":function(e,t,n){"use strict";(function(e){ +var n="undefined"!==typeof window&&"undefined"!==typeof document,r=["Edge","Trident","Firefox"],i=0,a=0;a=0){i=1;break}function o(e){var t=!1;return function(){t||(t=!0,window.Promise.resolve().then((function(){t=!1,e()})))}}function s(e){var t=!1;return function(){t||(t=!0,setTimeout((function(){t=!1,e()}),i))}}var l=n&&window.Promise,c=l?o:s;function d(e){var t={};return e&&"[object Function]"===t.toString.call(e)}function u(e,t){if(1!==e.nodeType)return[];var n=e.ownerDocument.defaultView,r=n.getComputedStyle(e,null);return t?r[t]:r}function _(e){return"HTML"===e.nodeName?e:e.parentNode||e.host}function p(e){if(!e)return document.body;switch(e.nodeName){case"HTML":case"BODY":return e.ownerDocument.body;case"#document":return e.body}var t=u(e),n=t.overflow,r=t.overflowX,i=t.overflowY;return/(auto|scroll|overlay)/.test(n+i+r)?e:p(_(e))}var f=n&&!(!window.MSInputMethodContext||!document.documentMode),m=n&&/MSIE 10/.test(navigator.userAgent);function h(e){return 11===e?f:10===e?m:f||m}function g(e){if(!e)return document.documentElement;var t=h(10)?document.body:null,n=e.offsetParent||null;while(n===t&&e.nextElementSibling)n=(e=e.nextElementSibling).offsetParent;var r=n&&n.nodeName;return r&&"BODY"!==r&&"HTML"!==r?-1!==["TH","TD","TABLE"].indexOf(n.nodeName)&&"static"===u(n,"position")?g(n):n:e?e.ownerDocument.documentElement:document.documentElement}function b(e){var t=e.nodeName;return"BODY"!==t&&("HTML"===t||g(e.firstElementChild)===e)}function v(e){return null!==e.parentNode?v(e.parentNode):e}function E(e,t){if(!e||!e.nodeType||!t||!t.nodeType)return document.documentElement;var n=e.compareDocumentPosition(t)&Node.DOCUMENT_POSITION_FOLLOWING,r=n?e:t,i=n?t:e,a=document.createRange();a.setStart(r,0),a.setEnd(i,0);var o=a.commonAncestorContainer;if(e!==o&&t!==o||r.contains(i))return b(o)?o:g(o);var s=v(e);return s.host?E(s.host,t):E(e,v(t).host)}function S(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"top",n="top"===t?"scrollTop":"scrollLeft",r=e.nodeName;if("BODY"===r||"HTML"===r){var i=e.ownerDocument.documentElement,a=e.ownerDocument.scrollingElement||i;return a[n]}return e[n]}function y(e,t){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=S(t,"top"),i=S(t,"left"),a=n?-1:1;return e.top+=r*a,e.bottom+=r*a,e.left+=i*a,e.right+=i*a,e}function T(e,t){var n="x"===t?"Left":"Top",r="Left"===n?"Right":"Bottom";return parseFloat(e["border"+n+"Width"],10)+parseFloat(e["border"+r+"Width"],10)}function C(e,t,n,r){return Math.max(t["offset"+e],t["scroll"+e],n["client"+e],n["offset"+e],n["scroll"+e],h(10)?parseInt(n["offset"+e])+parseInt(r["margin"+("Height"===e?"Top":"Left")])+parseInt(r["margin"+("Height"===e?"Bottom":"Right")]):0)}function N(e){var t=e.body,n=e.documentElement,r=h(10)&&getComputedStyle(n);return{height:C("Height",t,n,r),width:C("Width",t,n,r)}}var O=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")},R=function(){function e(e,t){for(var n=0;n2&&void 0!==arguments[2]&&arguments[2],r=h(10),i="HTML"===t.nodeName,a=x(e),o=x(t),s=p(e),l=u(t),c=parseFloat(l.borderTopWidth,10),d=parseFloat(l.borderLeftWidth,10);n&&i&&(o.top=Math.max(o.top,0),o.left=Math.max(o.left,0));var _=I({top:a.top-o.top-c,left:a.left-o.left-d,width:a.width,height:a.height});if(_.marginTop=0,_.marginLeft=0,!r&&i){var f=parseFloat(l.marginTop,10),m=parseFloat(l.marginLeft,10);_.top-=c-f,_.bottom-=c-f,_.left-=d-m,_.right-=d-m,_.marginTop=f,_.marginLeft=m}return(r&&!n?t.contains(s):t===s&&"BODY"!==s.nodeName)&&(_=y(_,t)),_}function D(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=e.ownerDocument.documentElement,r=M(e,n),i=Math.max(n.clientWidth,window.innerWidth||0),a=Math.max(n.clientHeight,window.innerHeight||0),o=t?0:S(n),s=t?0:S(n,"left"),l={top:o-r.top+r.marginTop,left:s-r.left+r.marginLeft,width:i,height:a};return I(l)}function L(e){var t=e.nodeName;if("BODY"===t||"HTML"===t)return!1;if("fixed"===u(e,"position"))return!0;var n=_(e);return!!n&&L(n)}function P(e){if(!e||!e.parentElement||h())return document.documentElement;var t=e.parentElement;while(t&&"none"===u(t,"transform"))t=t.parentElement;return t||document.documentElement}function k(e,t,n,r){var i=arguments.length>4&&void 0!==arguments[4]&&arguments[4],a={top:0,left:0},o=i?P(e):E(e,t);if("viewport"===r)a=D(o,i);else{var s=void 0;"scrollParent"===r?(s=p(_(t)),"BODY"===s.nodeName&&(s=e.ownerDocument.documentElement)):s="window"===r?e.ownerDocument.documentElement:r;var l=M(s,o,i);if("HTML"!==s.nodeName||L(o))a=l;else{var c=N(e.ownerDocument),d=c.height,u=c.width;a.top+=l.top-l.marginTop,a.bottom=d+l.top,a.left+=l.left-l.marginLeft,a.right=u+l.left}}n=n||0;var f="number"===typeof n;return a.left+=f?n:n.left||0,a.top+=f?n:n.top||0,a.right-=f?n:n.right||0,a.bottom-=f?n:n.bottom||0,a}function F(e){var t=e.width,n=e.height;return t*n}function U(e,t,n,r,i){var a=arguments.length>5&&void 0!==arguments[5]?arguments[5]:0;if(-1===e.indexOf("auto"))return e;var o=k(n,r,a,i),s={top:{width:o.width,height:t.top-o.top},right:{width:o.right-t.right,height:o.height},bottom:{width:o.width,height:o.bottom-t.bottom},left:{width:t.left-o.left,height:o.height}},l=Object.keys(s).map((function(e){return w({key:e},s[e],{area:F(s[e])})})).sort((function(e,t){return t.area-e.area})),c=l.filter((function(e){var t=e.width,r=e.height;return t>=n.clientWidth&&r>=n.clientHeight})),d=c.length>0?c[0].key:l[0].key,u=e.split("-")[1];return d+(u?"-"+u:"")}function B(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,i=r?P(t):E(t,n);return M(n,i,r)}function G(e){var t=e.ownerDocument.defaultView,n=t.getComputedStyle(e),r=parseFloat(n.marginTop||0)+parseFloat(n.marginBottom||0),i=parseFloat(n.marginLeft||0)+parseFloat(n.marginRight||0),a={width:e.offsetWidth+i,height:e.offsetHeight+r};return a}function Y(e){var t={left:"right",right:"left",bottom:"top",top:"bottom"};return e.replace(/left|right|bottom|top/g,(function(e){return t[e]}))}function j(e,t,n){n=n.split("-")[0];var r=G(e),i={width:r.width,height:r.height},a=-1!==["right","left"].indexOf(n),o=a?"top":"left",s=a?"left":"top",l=a?"height":"width",c=a?"width":"height";return i[o]=t[o]+t[l]/2-r[l]/2,i[s]=n===s?t[s]-r[c]:t[Y(s)],i}function q(e,t){return Array.prototype.find?e.find(t):e.filter(t)[0]}function H(e,t,n){if(Array.prototype.findIndex)return e.findIndex((function(e){return e[t]===n}));var r=q(e,(function(e){return e[t]===n}));return e.indexOf(r)}function V(e,t,n){var r=void 0===n?e:e.slice(0,H(e,"name",n));return r.forEach((function(e){e["function"]&&console.warn("`modifier.function` is deprecated, use `modifier.fn`!");var n=e["function"]||e.fn;e.enabled&&d(n)&&(t.offsets.popper=I(t.offsets.popper),t.offsets.reference=I(t.offsets.reference),t=n(t,e))})),t}function $(){if(!this.state.isDestroyed){var e={instance:this,styles:{},arrowStyles:{},attributes:{},flipped:!1,offsets:{}};e.offsets.reference=B(this.state,this.popper,this.reference,this.options.positionFixed),e.placement=U(this.options.placement,e.offsets.reference,this.popper,this.reference,this.options.modifiers.flip.boundariesElement,this.options.modifiers.flip.padding),e.originalPlacement=e.placement,e.positionFixed=this.options.positionFixed,e.offsets.popper=j(this.popper,e.offsets.reference,e.placement),e.offsets.popper.position=this.options.positionFixed?"fixed":"absolute",e=V(this.modifiers,e),this.state.isCreated?this.options.onUpdate(e):(this.state.isCreated=!0,this.options.onCreate(e))}}function z(e,t){return e.some((function(e){var n=e.name,r=e.enabled;return r&&n===t}))}function W(e){for(var t=[!1,"ms","Webkit","Moz","O"],n=e.charAt(0).toUpperCase()+e.slice(1),r=0;ro[f]&&(e.offsets.popper[_]+=s[_]+m-o[f]),e.offsets.popper=I(e.offsets.popper);var h=s[_]+s[c]/2-m/2,g=u(e.instance.popper),b=parseFloat(g["margin"+d],10),v=parseFloat(g["border"+d+"Width"],10),E=h-e.offsets.popper[_]-b-v;return E=Math.max(Math.min(o[c]-m,E),0),e.arrowElement=r,e.offsets.arrow=(n={},A(n,_,Math.round(E)),A(n,p,""),n),e}function _e(e){return"end"===e?"start":"start"===e?"end":e}var pe=["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"],fe=pe.slice(3);function me(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=fe.indexOf(e),r=fe.slice(n+1).concat(fe.slice(0,n));return t?r.reverse():r}var he={FLIP:"flip",CLOCKWISE:"clockwise",COUNTERCLOCKWISE:"counterclockwise"};function ge(e,t){if(z(e.instance.modifiers,"inner"))return e;if(e.flipped&&e.placement===e.originalPlacement)return e;var n=k(e.instance.popper,e.instance.reference,t.padding,t.boundariesElement,e.positionFixed),r=e.placement.split("-")[0],i=Y(r),a=e.placement.split("-")[1]||"",o=[];switch(t.behavior){case he.FLIP:o=[r,i];break;case he.CLOCKWISE:o=me(r);break;case he.COUNTERCLOCKWISE:o=me(r,!0);break;default:o=t.behavior}return o.forEach((function(s,l){if(r!==s||o.length===l+1)return e;r=e.placement.split("-")[0],i=Y(r);var c=e.offsets.popper,d=e.offsets.reference,u=Math.floor,_="left"===r&&u(c.right)>u(d.left)||"right"===r&&u(c.left)u(d.top)||"bottom"===r&&u(c.top)u(n.right),m=u(c.top)u(n.bottom),g="left"===r&&p||"right"===r&&f||"top"===r&&m||"bottom"===r&&h,b=-1!==["top","bottom"].indexOf(r),v=!!t.flipVariations&&(b&&"start"===a&&p||b&&"end"===a&&f||!b&&"start"===a&&m||!b&&"end"===a&&h),E=!!t.flipVariationsByContent&&(b&&"start"===a&&f||b&&"end"===a&&p||!b&&"start"===a&&h||!b&&"end"===a&&m),S=v||E;(_||g||S)&&(e.flipped=!0,(_||g)&&(r=o[l+1]),S&&(a=_e(a)),e.placement=r+(a?"-"+a:""),e.offsets.popper=w({},e.offsets.popper,j(e.instance.popper,e.offsets.reference,e.placement)),e=V(e.instance.modifiers,e,"flip"))})),e}function be(e){var t=e.offsets,n=t.popper,r=t.reference,i=e.placement.split("-")[0],a=Math.floor,o=-1!==["top","bottom"].indexOf(i),s=o?"right":"bottom",l=o?"left":"top",c=o?"width":"height";return n[s]a(r[s])&&(e.offsets.popper[l]=a(r[s])),e}function ve(e,t,n,r){var i=e.match(/((?:\-|\+)?\d*\.?\d*)(.*)/),a=+i[1],o=i[2];if(!a)return e;if(0===o.indexOf("%")){var s=void 0;switch(o){case"%p":s=n;break;case"%":case"%r":default:s=r}var l=I(s);return l[t]/100*a}if("vh"===o||"vw"===o){var c=void 0;return c="vh"===o?Math.max(document.documentElement.clientHeight,window.innerHeight||0):Math.max(document.documentElement.clientWidth,window.innerWidth||0),c/100*a}return a}function Ee(e,t,n,r){var i=[0,0],a=-1!==["right","left"].indexOf(r),o=e.split(/(\+|\-)/).map((function(e){return e.trim()})),s=o.indexOf(q(o,(function(e){return-1!==e.search(/,|\s/)})));o[s]&&-1===o[s].indexOf(",")&&console.warn("Offsets separated by white space(s) are deprecated, use a comma (,) instead.");var l=/\s*,\s*|\s+/,c=-1!==s?[o.slice(0,s).concat([o[s].split(l)[0]]),[o[s].split(l)[1]].concat(o.slice(s+1))]:[o];return c=c.map((function(e,r){var i=(1===r?!a:a)?"height":"width",o=!1;return e.reduce((function(e,t){return""===e[e.length-1]&&-1!==["+","-"].indexOf(t)?(e[e.length-1]=t,o=!0,e):o?(e[e.length-1]+=t,o=!1,e):e.concat(t)}),[]).map((function(e){return ve(e,i,t,n)}))})),c.forEach((function(e,t){e.forEach((function(n,r){ne(n)&&(i[t]+=n*("-"===e[r-1]?-1:1))}))})),i}function Se(e,t){var n=t.offset,r=e.placement,i=e.offsets,a=i.popper,o=i.reference,s=r.split("-")[0],l=void 0;return l=ne(+n)?[+n,0]:Ee(n,a,o,s),"left"===s?(a.top+=l[0],a.left-=l[1]):"right"===s?(a.top+=l[0],a.left+=l[1]):"top"===s?(a.left+=l[0],a.top-=l[1]):"bottom"===s&&(a.left+=l[0],a.top+=l[1]),e.popper=a,e}function ye(e,t){var n=t.boundariesElement||g(e.instance.popper);e.instance.reference===n&&(n=g(n));var r=W("transform"),i=e.instance.popper.style,a=i.top,o=i.left,s=i[r];i.top="",i.left="",i[r]="";var l=k(e.instance.popper,e.instance.reference,t.padding,n,e.positionFixed);i.top=a,i.left=o,i[r]=s,t.boundaries=l;var c=t.priority,d=e.offsets.popper,u={primary:function(e){var n=d[e];return d[e]l[e]&&!t.escapeWithReference&&(r=Math.min(d[n],l[e]-("right"===e?d.width:d.height))),A({},n,r)}};return c.forEach((function(e){var t=-1!==["left","top"].indexOf(e)?"primary":"secondary";d=w({},d,u[t](e))})),e.offsets.popper=d,e}function Te(e){var t=e.placement,n=t.split("-")[0],r=t.split("-")[1];if(r){var i=e.offsets,a=i.reference,o=i.popper,s=-1!==["bottom","top"].indexOf(n),l=s?"left":"top",c=s?"width":"height",d={start:A({},l,a[l]),end:A({},l,a[l]+a[c]-o[c])};e.offsets.popper=w({},o,d[r])}return e}function Ce(e){if(!de(e.instance.modifiers,"hide","preventOverflow"))return e;var t=e.offsets.reference,n=q(e.instance.modifiers,(function(e){return"preventOverflow"===e.name})).boundaries;if(t.bottomn.right||t.top>n.bottom||t.right2&&void 0!==arguments[2]?arguments[2]:{};O(this,e),this.scheduleUpdate=function(){return requestAnimationFrame(r.update)},this.update=c(this.update.bind(this)),this.options=w({},e.Defaults,i),this.state={isDestroyed:!1,isCreated:!1,scrollParents:[]},this.reference=t&&t.jquery?t[0]:t,this.popper=n&&n.jquery?n[0]:n,this.options.modifiers={},Object.keys(w({},e.Defaults.modifiers,i.modifiers)).forEach((function(t){r.options.modifiers[t]=w({},e.Defaults.modifiers[t]||{},i.modifiers?i.modifiers[t]:{})})),this.modifiers=Object.keys(this.options.modifiers).map((function(e){return w({name:e},r.options.modifiers[e])})).sort((function(e,t){return e.order-t.order})),this.modifiers.forEach((function(e){e.enabled&&d(e.onLoad)&&e.onLoad(r.reference,r.popper,r.options,e,r.state)})),this.update();var a=this.options.eventsEnabled;a&&this.enableEventListeners(),this.state.eventsEnabled=a}return R(e,[{key:"update",value:function(){return $.call(this)}},{key:"destroy",value:function(){return Q.call(this)}},{key:"enableEventListeners",value:function(){return J.call(this)}},{key:"disableEventListeners",value:function(){return te.call(this)}}]),e}();Ae.Utils=("undefined"!==typeof window?window:e).PopperUtils,Ae.placements=pe,Ae.Defaults=Re,t["default"]=Ae}.call(t,n(37))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(94),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(319),s=n(0),l=!1,c=null,d=null,u=null,_=s(i.a,o["a"],l,c,d,u);_.options.__file="src/core/icons/MdArrowRightIcon.vue",t["default"]=_.exports},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement;e._self._c;return e._m(0)},i=[function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("md-icon",{staticClass:"md-icon-image"},[n("svg",{attrs:{height:"24",viewBox:"0 0 24 24",width:"24",xmlns:"http://www.w3.org/2000/svg"}},[n("path",{attrs:{d:"M8.59 16.34l4.58-4.59-4.58-4.59L10 5.75l6 6-6 6z"}}),e._v(" "),n("path",{attrs:{d:"M0-.25h24v24H0z",fill:"none"}})])])}];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(95),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(321),s=n(0),l=!1,c=null,d=null,u=null,_=s(i.a,o["a"],l,c,d,u);_.options.__file="src/core/icons/MdArrowLeftIcon.vue",t["default"]=_.exports},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement;e._self._c;return e._m(0)},i=[function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("md-icon",{staticClass:"md-icon-image"},[n("svg",{attrs:{height:"24",viewBox:"0 0 24 24",width:"24",xmlns:"http://www.w3.org/2000/svg"}},[n("path",{attrs:{d:"M15.41 16.09l-4.58-4.59 4.58-4.59L14 5.5l-6 6 6 6z"}}),e._v(" "),n("path",{attrs:{d:"M0-.5h24v24H0z",fill:"none"}})])])}];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t){},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("md-portal",[n("transition",{attrs:{name:"md-dialog"}},[e.mdActive?n("div",{staticClass:"md-dialog"},[n("md-focus-trap",[n("div",e._g({staticClass:"md-dialog-container",class:[e.dialogContainerClasses,e.$mdActiveTheme],on:{keydown:function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"esc",27,t.key,["Esc","Escape"])?null:e.onEsc(t)}}},e.$listeners),[e._t("default"),e._v(" "),n("keep-alive",[e.mdBackdrop?n("md-overlay",{class:e.mdBackdropClass,attrs:{"md-fixed":"","md-active":e.mdActive},on:{click:e.onClick}}):e._e()],1)],2)])],1):e._e()])],1)},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("md-popover",{attrs:{"md-settings":e.popperSettings,"md-active":""}},[n("transition",{attrs:{name:"md-datepicker-dialog",appear:""},on:{enter:e.setContentStyles,"after-leave":e.resetDate}},[n("div",{staticClass:"md-datepicker-dialog",class:[e.$mdActiveTheme]},[n("div",{staticClass:"md-datepicker-header"},[n("span",{staticClass:"md-datepicker-year-select",class:{"md-selected":"year"===e.currentView},on:{click:function(t){e.currentView="year"}}},[e._v(e._s(e.selectedYear))]),e._v(" "),n("div",{staticClass:"md-datepicker-date-select",class:{"md-selected":"year"!==e.currentView},on:{click:function(t){e.currentView="day"}}},[n("strong",{staticClass:"md-datepicker-dayname"},[e._v(e._s(e.shortDayName)+", ")]),e._v(" "),n("strong",{staticClass:"md-datepicker-monthname"},[e._v(e._s(e.shortMonthName))]),e._v(" "),n("strong",{staticClass:"md-datepicker-day"},[e._v(e._s(e.currentDay))])])]),e._v(" "),n("div",{staticClass:"md-datepicker-body"},[n("transition",{attrs:{name:"md-datepicker-body-header"}},["day"===e.currentView?n("div",{staticClass:"md-datepicker-body-header"},[n("md-button",{staticClass:"md-dense md-icon-button",on:{click:e.previousMonth}},[n("md-arrow-left-icon")],1),e._v(" "),n("md-button",{staticClass:"md-dense md-icon-button",on:{click:e.nextMonth}},[n("md-arrow-right-icon")],1)],1):e._e()]),e._v(" "),n("div",{staticClass:"md-datepicker-body-content",style:e.contentStyles},[n("transition",{attrs:{name:"md-datepicker-view"}},["day"===e.currentView?n("transition-group",{staticClass:"md-datepicker-panel md-datepicker-calendar",class:e.calendarClasses,attrs:{tag:"div",name:"md-datepicker-month"}},e._l([e.currentDate],(function(t){return n("div",{key:t.getMonth(),staticClass:"md-datepicker-panel md-datepicker-month"},[n("md-button",{staticClass:"md-dense md-datepicker-month-trigger",on:{click:function(t){e.currentView="month"}}},[e._v(e._s(e.currentMonthName)+" "+e._s(e.currentYear))]),e._v(" "),n("div",{staticClass:"md-datepicker-week"},[e._l(e.locale.shorterDays,(function(t,r){return r>=e.firstDayOfAWeek?n("span",{key:r},[e._v(e._s(t))]):e._e()})),e._v(" "),e._l(e.locale.shorterDays,(function(t,r){return r-1:e.model},on:{click:e.openPicker,blur:e.onBlur,change:function(t){var n=e.model,r=t.target,i=!!r.checked;if(Array.isArray(n)){var a=null,o=e._i(n,a);r.checked?o<0&&(e.model=n.concat([a])):o>-1&&(e.model=n.slice(0,o).concat(n.slice(o+1)))}else e.model=i}}},"input",{disabled:e.disabled,required:e.required,placeholder:e.placeholder},!1)):"radio"==={disabled:e.disabled,required:e.required,placeholder:e.placeholder}.type?n("input",e._b({directives:[{name:"model",rawName:"v-model",value:e.model,expression:"model"}],staticClass:"md-input",attrs:{readonly:"",type:"radio"},domProps:{checked:e._q(e.model,null)},on:{click:e.openPicker,blur:e.onBlur,change:function(t){e.model=null}}},"input",{disabled:e.disabled,required:e.required,placeholder:e.placeholder},!1)):n("input",e._b({directives:[{name:"model",rawName:"v-model",value:e.model,expression:"model"}],staticClass:"md-input",attrs:{readonly:"",type:{disabled:e.disabled,required:e.required,placeholder:e.placeholder}.type},domProps:{value:e.model},on:{click:e.openPicker,blur:e.onBlur,input:function(t){t.target.composing||(e.model=t.target.value)}}},"input",{disabled:e.disabled,required:e.required,placeholder:e.placeholder},!1)),e._v(" "),n("input",e._g(e._b({ref:"inputFile",attrs:{type:"file"},on:{change:e.onChange}},"input",e.attributes,!1),e.$listeners))],1)},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(125),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(387),s=n(0),l=!1,c=null,d=null,u=null,_=s(i.a,o["a"],l,c,d,u);_.options.__file="src/components/MdField/MdTextarea/MdTextarea.vue",t["default"]=_.exports},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("textarea",e._g(e._b({directives:[{name:"model",rawName:"v-model",value:e.model,expression:"model"}],staticClass:"md-textarea",style:e.textareaStyles,domProps:{value:e.model},on:{focus:e.onFocus,blur:e.onBlur,input:function(t){t.target.composing||(e.model=t.target.value)}}},"textarea",e.attributes,!1),e.listeners))},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(2),i=s(r),a=n(389),o=s(a);function s(e){return e&&e.__esModule?e:{default:e}}t.default=function(e){(0,i.default)(e),e.component(o.default.name,o.default)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(126),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=!1;function s(e){o||n(390)}var l=n(0),c=null,d=!1,u=s,_=null,p=null,f=l(i.a,c,d,u,_,p);f.options.__file="src/components/MdHighlightText/MdHighlightText.vue",t["default"]=f.exports},function(e,t){},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(2),i=s(r),a=n(392),o=s(a);function s(e){return e&&e.__esModule?e:{default:e}}t.default=function(e){(0,i.default)(e),e.component(o.default.name,o.default)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(127),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(394),s=!1;function l(e){s||n(393)}var c=n(0),d=!1,u=l,_=null,p=null,f=c(i.a,o["a"],d,u,_,p);f.options.__file="src/components/MdImage/MdImage.vue",t["default"]=f.exports},function(e,t){},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"md-image",class:[e.$mdActiveTheme]},[e._t("default")],2)},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n(396),t.default=function(e){}},function(e,t){},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(2),i=c(r),a=n(119),o=c(a),s=n(128),l=c(s);function c(e){return e&&e.__esModule?e:{default:e}}t.default=function(e){(0,i.default)(e),e.component(o.default.name,o.default),e.component(l.default.name,l.default)}},function(e,t){},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(131),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(402),s=n(0),l=!1,c=null,d=null,u=null,_=s(i.a,o["a"],l,c,d,u);_.options.__file="src/components/MdList/MdListItem/MdListItemDefault.vue",t["default"]=_.exports},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(132),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(401),s=n(0),l=!1,c=null,d=null,u=null,_=s(i.a,o["a"],l,c,d,u);_.options.__file="src/components/MdList/MdListItem/MdListItemContent.vue",t["default"]=_.exports},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("md-ripple",{staticClass:"md-list-item-content",attrs:{"md-disabled":e.mdDisabled}},[e._t("default")],2)},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"md-list-item-default",on:{click:e.toggleControl}},[n("md-list-item-content",{attrs:{"md-disabled":""}},[e._t("default")],2)],1)},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(133),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(404),s=n(0),l=!1,c=null,d=null,u=null,_=s(i.a,o["a"],l,c,d,u);_.options.__file="src/components/MdList/MdListItem/MdListItemFakeButton.vue",t["default"]=_.exports},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"md-list-item-fake-button",attrs:{disabled:e.disabled}},[n("md-list-item-content",{attrs:{"md-disabled":e.isDisabled}},[e._t("default")],2)],1)},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(134),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(406),s=n(0),l=!1,c=null,d=null,u=null,_=s(i.a,o["a"],l,c,d,u);_.options.__file="src/components/MdList/MdListItem/MdListItemButton.vue",t["default"]=_.exports},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("button",{staticClass:"md-list-item-button",attrs:{type:"button",disabled:e.disabled}},[n("md-list-item-content",{attrs:{"md-disabled":e.isDisabled}},[e._t("default")],2)],1)},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(135),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(408),s=n(0),l=!1,c=null,d=null,u=null,_=s(i.a,o["a"],l,c,d,u);_.options.__file="src/components/MdList/MdListItem/MdListItemLink.vue",t["default"]=_.exports},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("a",e._b({staticClass:"md-list-item-link"},"a",e.$props,!1),[n("md-list-item-content",{attrs:{"md-disabled":e.isDisabled}},[e._t("default")],2)],1)},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(136),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(410),s=n(0),l=!1,c=null,d=null,u=null,_=s(i.a,o["a"],l,c,d,u);_.options.__file="src/components/MdList/MdListItem/MdListItemRouter.vue",t["default"]=_.exports},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("router-link",e._b({staticClass:"md-list-item-router"},"router-link",e.routerProps,!1),[n("md-list-item-content",{attrs:{"md-disabled":e.isDisabled}},[e._t("default")],2)],1)},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(137),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(415),s=!1;function l(e){s||n(412)}var c=n(0),d=!1,u=l,_=null,p=null,f=c(i.a,o["a"],d,u,_,p);f.options.__file="src/components/MdList/MdListItem/MdListItemExpand.vue",t["default"]=f.exports},function(e,t){},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(138),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(414),s=n(0),l=!1,c=null,d=null,u=null,_=s(i.a,o["a"],l,c,d,u);_.options.__file="src/core/icons/MdArrowDownIcon.vue",t["default"]=_.exports},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement;e._self._c;return e._m(0)},i=[function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("md-icon",{staticClass:"md-icon-image"},[n("svg",{attrs:{height:"24",viewBox:"0 0 24 24",width:"24",xmlns:"http://www.w3.org/2000/svg"}},[n("path",{attrs:{d:"M7.41 7.84L12 12.42l4.59-4.58L18 9.25l-6 6-6-6z"}}),e._v(" "),n("path",{attrs:{d:"M0-.75h24v24H0z",fill:"none"}})])])}];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"md-list-item-expand",class:e.expandClasses},[n("md-list-item-content",{attrs:{"md-disabled":e.isDisabled},nativeOn:{click:function(t){return e.toggleExpand(t)}}},[e._t("default"),e._v(" "),n("md-arrow-down-icon",{staticClass:"md-list-expand-icon"})],2),e._v(" "),n("div",{ref:"listExpand",staticClass:"md-list-expand",style:e.expandStyles},[e._t("md-expand")],2)],1)},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(2),i=u(r),a=n(114),o=u(a),s=n(116),l=u(s),c=n(417),d=u(c);function u(e){return e&&e.__esModule?e:{default:e}}t.default=function(e){(0,i.default)(e),e.component(o.default.name,o.default),e.component(l.default.name,l.default),e.component(d.default.name,d.default)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(139),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(418),s=n(0),l=!1,c=null,d=null,u=null,_=s(i.a,o["a"],l,c,d,u);_.options.__file="src/components/MdMenu/MdMenuItem.vue",t["default"]=_.exports},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("md-list-item",e._g(e._b({staticClass:"md-menu-item",class:[e.itemClasses,e.$mdActiveTheme],attrs:{disabled:e.disabled,tabindex:e.highlighted&&-1}},"md-list-item",e.$attrs,!1),e.listeners),[e._t("default")],2)},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(2),i=c(r),a=n(420),o=c(a),s=n(423),l=c(s);function c(e){return e&&e.__esModule?e:{default:e}}t.default=function(e){(0,i.default)(e),e.component(o.default.name,o.default),e.component(l.default.name,l.default)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(140),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(422),s=!1;function l(e){s||n(421)}var c=n(0),d=!1,u=l,_=null,p=null,f=c(i.a,o["a"],d,u,_,p);f.options.__file="src/components/MdProgress/MdProgressBar/MdProgressBar.vue",t["default"]=f.exports},function(e,t){},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("transition",{attrs:{name:"md-progress-bar",appear:""}},[n("div",{staticClass:"md-progress-bar",class:[e.progressClasses,e.$mdActiveTheme]},[n("div",{staticClass:"md-progress-bar-track",style:e.progressTrackStyle}),e._v(" "),n("div",{staticClass:"md-progress-bar-fill",style:e.progressValueStyle}),e._v(" "),n("div",{staticClass:"md-progress-bar-buffer",attrs:{Style:e.progressBufferStyle}})])])},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(141),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(425),s=!1;function l(e){s||n(424)}var c=n(0),d=!1,u=l,_=null,p=null,f=c(i.a,o["a"],d,u,_,p);f.options.__file="src/components/MdProgress/MdProgressSpinner/MdProgressSpinner.vue",t["default"]=f.exports},function(e,t){},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("transition",{attrs:{name:"md-progress-spinner",appear:""}},[n("div",{staticClass:"md-progress-spinner",class:[e.progressClasses,e.$mdActiveTheme]},[n("svg",{ref:"md-progress-spinner-draw",staticClass:"md-progress-spinner-draw",attrs:{preserveAspectRatio:"xMidYMid meet",focusable:"false",viewBox:"0 0 "+e.mdDiameter+" "+e.mdDiameter}},[n("circle",{ref:"md-progress-spinner-circle",staticClass:"md-progress-spinner-circle",attrs:{cx:"50%",cy:"50%",r:e.circleRadius}})])])])},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(2),i=s(r),a=n(427),o=s(a);function s(e){return e&&e.__esModule?e:{default:e}}t.default=function(e){(0,i.default)(e),e.component(o.default.name,o.default)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(142),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(429),s=!1;function l(e){s||n(428)}var c=n(0),d=!1,u=l,_=null,p=null,f=c(i.a,o["a"],d,u,_,p);f.options.__file="src/components/MdRadio/MdRadio.vue",t["default"]=f.exports},function(e,t){},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"md-radio",class:[e.$mdActiveTheme,e.radioClasses]},[n("div",{staticClass:"md-radio-container",on:{click:function(t){return t.stopPropagation(),e.toggleCheck(t)}}},[n("md-ripple",{attrs:{"md-centered":"","md-active":e.rippleActive,"md-disabled":e.disabled},on:{"update:mdActive":function(t){e.rippleActive=t},"update:md-active":function(t){e.rippleActive=t}}},[n("input",e._b({attrs:{type:"radio"}},"input",{id:e.id,name:e.name,disabled:e.disabled,required:e.required,value:e.value,checked:e.isSelected},!1))])],1),e._v(" "),e.$slots.default?n("label",{staticClass:"md-radio-label",attrs:{for:e.id},on:{click:function(t){return t.preventDefault(),e.toggleCheck(t)}}},[e._t("default")],2):e._e()])},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(2),i=c(r),a=n(10),o=c(a),s=n(49),l=c(s);function c(e){return e&&e.__esModule?e:{default:e}}t.default=function(e){(0,i.default)(e),e.component(o.default.name,o.default),e.component(l.default.name,l.default)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(2),i=s(r),a=n(432),o=s(a);function s(e){return e&&e.__esModule?e:{default:e}}t.default=function(e){(0,i.default)(e),e.component(o.default.name,o.default)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(143),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(437),s=!1;function l(e){s||n(433)}var c=n(0),d=!1,u=l,_=null,p=null,f=c(i.a,o["a"],d,u,_,p);f.options.__file="src/components/MdSnackbar/MdSnackbar.vue",t["default"]=f.exports},function(e,t){},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(144),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(435),s=n(0),l=!0,c=null,d=null,u=null,_=s(i.a,o["a"],l,c,d,u);_.options.__file="src/components/MdSnackbar/MdSnackbarContent.vue",t["default"]=_.exports},function(e,t,n){"use strict";var r=function(e,t){var n=t._c;return n("transition",{attrs:{name:"md-snackbar",appear:""}},[n("div",{staticClass:"md-snackbar",class:t.props.mdClasses},[n("div",{staticClass:"md-snackbar-content"},[t._t("default")],2)])])},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=null,i=null;function a(e,t,n){return new Promise((function(a){r={destroy:function(){r=null,a()}},e!==1/0&&(i=window.setTimeout((function(){o(),t||n._vnode.componentInstance.initDestroy(!0)}),e))}))}var o=t.destroySnackbar=function(){return new Promise((function(e){r?(window.clearTimeout(i),r.destroy(),window.setTimeout(e,400)):e()}))};t.createSnackbar=function(e,t,n){return r?o().then((function(){return a(e,t,n)})):a(e,t,n)}},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return e.mdPersistent&&e.mdDuration!==1/0?n("md-portal",[n("keep-alive",[e.mdActive?n("md-snackbar-content",{attrs:{"md-classes":[e.snackbarClasses,e.$mdActiveTheme]}},[e._t("default")],2):e._e()],1)],1):n("md-portal",[e.mdActive?n("md-snackbar-content",{attrs:{"md-classes":[e.snackbarClasses,e.$mdActiveTheme]}},[e._t("default")],2):e._e()],1)},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(2),i=u(r),a=n(439),o=u(a),s=n(442),l=u(s),c=n(445),d=u(c);function u(e){return e&&e.__esModule?e:{default:e}}t.default=function(e){(0,i.default)(e),e.component(o.default.name,o.default),e.component(l.default.name,l.default),e.component(d.default.name,d.default)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(145),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(441),s=!1;function l(e){s||n(440)}var c=n(0),d=!1,u=l,_=null,p=null,f=c(i.a,o["a"],d,u,_,p);f.options.__file="src/components/MdSpeedDial/MdSpeedDial.vue",t["default"]=f.exports},function(e,t){},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"md-speed-dial",class:[e.$mdActiveTheme,e.speedDialClasses]},[e._t("default")],2)},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(146),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(444),s=!1;function l(e){s||n(443)}var c=n(0),d=!1,u=l,_=null,p=null,f=c(i.a,o["a"],d,u,_,p);f.options.__file="src/components/MdSpeedDial/MdSpeedDialTarget.vue",t["default"]=f.exports},function(e,t){},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("md-button",e._g(e._b({staticClass:"md-speed-dial-target md-fab",on:{click:e.handleClick}},"md-button",e.$attrs,!1),e.$listeners),[e._t("default")],2)},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(147),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(447),s=!1;function l(e){s||n(446)}var c=n(0),d=!1,u=l,_=null,p=null,f=c(i.a,o["a"],d,u,_,p);f.options.__file="src/components/MdSpeedDial/MdSpeedDialContent.vue",t["default"]=f.exports},function(e,t){},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"md-speed-dial-content"},[e._t("default")],2)},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(2),i=c(r),a=n(449),o=c(a),s=n(459),l=c(s);function c(e){return e&&e.__esModule?e:{default:e}}t.default=function(e){(0,i.default)(e),e.component(o.default.name,o.default),e.component(l.default.name,l.default)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(148),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(458),s=!1;function l(e){s||n(450)}var c=n(0),d=!1,u=l,_=null,p=null,f=c(i.a,o["a"],d,u,_,p);f.options.__file="src/components/MdSteppers/MdSteppers.vue",t["default"]=f.exports},function(e,t){},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(152),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(452),s=n(0),l=!1,c=null,d=null,u=null,_=s(i.a,o["a"],l,c,d,u);_.options.__file="src/core/icons/MdWarningIcon.vue",t["default"]=_.exports},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement;e._self._c;return e._m(0)},i=[function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("md-icon",{staticClass:"md-icon-image"},[n("svg",{attrs:{height:"24",viewBox:"0 0 24 24",width:"24",xmlns:"http://www.w3.org/2000/svg"}},[n("path",{attrs:{d:"M0 0h24v24H0z",fill:"none"}}),e._v(" "),n("path",{attrs:{d:"M1 21h22L12 2 1 21zm12-3h-2v-2h2v2zm0-4h-2v-4h2v4z"}})])])}];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(153),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(454),s=n(0),l=!1,c=null,d=null,u=null,_=s(i.a,o["a"],l,c,d,u);_.options.__file="src/core/icons/MdCheckIcon.vue",t["default"]=_.exports},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement;e._self._c;return e._m(0)},i=[function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("md-icon",{staticClass:"md-icon-image"},[n("svg",{attrs:{height:"24",viewBox:"0 0 24 24",width:"24",xmlns:"http://www.w3.org/2000/svg"}},[n("path",{attrs:{d:"M0 0h24v24H0z",fill:"none"}}),e._v(" "),n("path",{attrs:{d:"M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"}})])])}];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(154),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(456),s=n(0),l=!1,c=null,d=null,u=null,_=s(i.a,o["a"],l,c,d,u);_.options.__file="src/core/icons/MdEditIcon.vue",t["default"]=_.exports},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement;e._self._c;return e._m(0)},i=[function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("md-icon",{staticClass:"md-icon-image"},[n("svg",{attrs:{height:"24",viewBox:"0 0 24 24",width:"24",xmlns:"http://www.w3.org/2000/svg"}},[n("path",{attrs:{d:"M3 17.25V21h3.75L17.81 9.94l-3.75-3.75L3 17.25zM20.71 7.04c.39-.39.39-1.02 0-1.41l-2.34-2.34c-.39-.39-1.02-.39-1.41 0l-1.83 1.83 3.75 3.75 1.83-1.83z"}}),e._v(" "),n("path",{attrs:{d:"M0 0h24v24H0z",fill:"none"}})])])}];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("md-button",e._g(e._b({staticClass:"md-stepper-header",class:e.classes,attrs:{disabled:e.shouldDisable},nativeOn:{click:function(t){!e.MdSteppers.syncRoute&&e.MdSteppers.setActiveStep(e.index)}}},"md-button",e.data.props,!1),e.data.events),[e.data.error?n("md-warning-icon",{staticClass:"md-stepper-icon"}):n("div",{staticClass:"md-stepper-number"},[e.data.done&&e.data.editable?n("md-edit-icon",{staticClass:"md-stepper-editable"}):e.data.done?n("md-check-icon",{staticClass:"md-stepper-done"}):[e._v(e._s(e.MdSteppers.getStepperNumber(e.index)))]],2),e._v(" "),n("div",{staticClass:"md-stepper-text"},[n("span",{staticClass:"md-stepper-label"},[e._v(e._s(e.data.label))]),e._v(" "),e.data.error?n("span",{staticClass:"md-stepper-error"},[e._v(e._s(e.data.error))]):e.data.description?n("span",{staticClass:"md-stepper-description"},[e._v(e._s(e.data.description))]):e._e()])],1)},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"md-steppers",class:[e.steppersClasses,e.$mdActiveTheme]},[e.mdVertical?e._e():n("div",{staticClass:"md-steppers-navigation"},e._l(e.MdSteppers.items,(function(e,t){return n("md-step-header",{key:t,attrs:{index:t}})})),1),e._v(" "),n("div",{staticClass:"md-steppers-wrapper",style:e.contentStyles},[n("div",{staticClass:"md-steppers-container",style:e.containerStyles},[e._t("default")],2)])])},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(155),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(461),s=!1;function l(e){s||n(460)}var c=n(0),d=!1,u=l,_=null,p=null,f=c(i.a,o["a"],d,u,_,p);f.options.__file="src/components/MdSteppers/MdStep.vue",t["default"]=f.exports},function(e,t){},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"md-stepper"},[e.MdSteppers.isVertical?n("md-step-header",{attrs:{index:e.id}}):e._e(),e._v(" "),n("div",{directives:[{name:"show",rawName:"v-show",value:e.isActive,expression:"isActive"}],class:["md-stepper-content",{"md-active":e.isActive}],attrs:{tabindex:e.tabIndex}},[e._t("default")],2)],1)},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(2),i=s(r),a=n(463),o=s(a);function s(e){return e&&e.__esModule?e:{default:e}}t.default=function(e){(0,i.default)(e),e.component(o.default.name,o.default)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(156),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(465),s=!1;function l(e){s||n(464)}var c=n(0),d=!1,u=l,_=null,p=null,f=c(i.a,o["a"],d,u,_,p);f.options.__file="src/components/MdSubheader/MdSubheader.vue",t["default"]=f.exports},function(e,t){},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return e.insideList?n("li",{staticClass:"md-subheader",class:[e.$mdActiveTheme]},[e._t("default")],2):n("div",{staticClass:"md-subheader",class:[e.$mdActiveTheme]},[e._t("default")],2)},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(2),i=s(r),a=n(467),o=s(a);function s(e){return e&&e.__esModule?e:{default:e}}t.default=function(e){(0,i.default)(e),e.component(o.default.name,o.default)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(157),i=n.n(r);for(var a in r)"default"!==a&&function(e){n.d(t,e,(function(){return r[e]}))}(a);var o=n(469),s=!1;function l(e){s||n(468)}var c=n(0),d=!1,u=l,_=null,p=null,f=c(i.a,o["a"],d,u,_,p);f.options.__file="src/components/MdSwitch/MdSwitch.vue",t["default"]=f.exports},function(e,t){},function(e,t,n){"use strict";var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"md-switch",class:[e.$mdActiveTheme,e.checkClasses]},[n("div",{staticClass:"md-switch-container",on:{click:function(t){return t.stopPropagation(),e.toggleCheck(t)}}},[n("div",{staticClass:"md-switch-thumb"},[n("md-ripple",{attrs:{"md-centered":"","md-active":e.rippleActive,"md-disabled":e.disabled},on:{"update:mdActive":function(t){e.rippleActive=t},"update:md-active":function(t){e.rippleActive=t}}},[n("input",e._b({attrs:{id:e.id,type:"checkbox"}},"input",{id:e.id,name:e.name,disabled:e.disabled,required:e.required,value:e.value},!1))])],1)]),e._v(" "),e.$slots.default?n("label",{staticClass:"md-switch-label",attrs:{for:e.id},on:{click:function(t){return t.preventDefault(),e.toggleCheck(t)}}},[e._t("default")],2):e._e()])},i=[];r._withStripped=!0;var a={render:r,staticRenderFns:i};t["a"]=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(2),i=v(r),a=n(471),o=v(a),s=n(492),l=v(s),c=n(497),d=v(c),u=n(165),_=v(u),p=n(30),f=v(p),m=n(500),h=v(m),g=n(503),b=v(g);function v(e){return e&&e.__esModule?e:{default:e}}t.default=function(e){(0,i.default)(e),e.component("MdTable",o.default),e.component(l.default.name,l.default),e.component(d.default.name,d.default),e.component(_.default.name,_.default),e.component(f.default.name,f.default),e.component(h.default.name,h.default),e.component(b.default.name,b.default)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=Object.assign||function(e){for(var t=1;t([\\d\\D]*?)<\\/script>[\\d\\D]*","i"),i=n.replace(r,"$1").trim());for(var _=0;_n.parts.length&&(r.parts.length=n.parts.length)}else{var o=[];for(i=0;i.ps__rail-x,.ps--active-y>.ps__rail-y{display:block;background-color:transparent}.ps--focus>.ps__rail-x,.ps--focus>.ps__rail-y,.ps--scrolling-x>.ps__rail-x,.ps--scrolling-y>.ps__rail-y,.ps:hover>.ps__rail-x,.ps:hover>.ps__rail-y{opacity:.6}.ps .ps__rail-x.ps--clicking,.ps .ps__rail-x:focus,.ps .ps__rail-x:hover,.ps .ps__rail-y.ps--clicking,.ps .ps__rail-y:focus,.ps .ps__rail-y:hover{background-color:#eee;opacity:.9}.ps__thumb-x{transition:background-color .2s linear,height .2s ease-in-out;-webkit-transition:background-color .2s linear,height .2s ease-in-out;height:6px;bottom:2px}.ps__thumb-x,.ps__thumb-y{background-color:#aaa;border-radius:6px;position:absolute}.ps__thumb-y{transition:background-color .2s linear,width .2s ease-in-out;-webkit-transition:background-color .2s linear,width .2s ease-in-out;width:6px;right:2px}.ps__rail-x.ps--clicking .ps__thumb-x,.ps__rail-x:focus>.ps__thumb-x,.ps__rail-x:hover>.ps__thumb-x{background-color:#999;height:11px}.ps__rail-y.ps--clicking .ps__thumb-y,.ps__rail-y:focus>.ps__thumb-y,.ps__rail-y:hover>.ps__thumb-y{background-color:#999;width:11px}@supports (-ms-overflow-style:none){.ps{overflow:auto!important}}@media (-ms-high-contrast:none),screen and (-ms-high-contrast:active){.ps{overflow:auto!important}}",""]),e.exports=t},a1a8:function(e,t,n){"use strict";function r(e,t){var n=e[1]||"",r=e[3];if(!r)return n;if(t&&"function"===typeof btoa){var a=i(r),o=r.sources.map((function(e){return"/*# sourceURL=".concat(r.sourceRoot||"").concat(e," */")}));return[n].concat(o).concat([a]).join("\n")}return[n].join("\n")}function i(e){var t=btoa(unescape(encodeURIComponent(JSON.stringify(e)))),n="sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(t);return"/*# ".concat(n," */")}e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var n=r(t,e);return t[2]?"@media ".concat(t[2]," {").concat(n,"}"):n})).join("")},t.i=function(e,n,r){"string"===typeof e&&(e=[[null,e,""]]);var i={};if(r)for(var a=0;ae[a]-e[o]-1&&(e.reach[l]="end"),t&&(u.dispatchEvent(T("ps-scroll-"+l)),t<0?u.dispatchEvent(T("ps-scroll-"+c)):t>0&&u.dispatchEvent(T("ps-scroll-"+d)),r&&v(e,l)),e.reach[l]&&(t||i)&&u.dispatchEvent(T("ps-"+l+"-reach-"+e.reach[l]))}function O(e){return parseInt(e,10)||0}function R(e){return _(e,"input,[contenteditable]")||_(e,"select,[contenteditable]")||_(e,"textarea,[contenteditable]")||_(e,"button,[contenteditable]")}function A(e){var t=l(e);return O(t.width)+O(t.paddingLeft)+O(t.paddingRight)+O(t.borderLeftWidth)+O(t.borderRightWidth)}y.prototype.eventElement=function(e){var t=this.eventElements.filter((function(t){return t.element===e}))[0];return t||(t=new E(e),this.eventElements.push(t)),t},y.prototype.bind=function(e,t,n){this.eventElement(e).bind(t,n)},y.prototype.unbind=function(e,t,n){var r=this.eventElement(e);r.unbind(t,n),r.isEmpty&&this.eventElements.splice(this.eventElements.indexOf(r),1)},y.prototype.unbindAll=function(){this.eventElements.forEach((function(e){return e.unbindAll()})),this.eventElements=[]},y.prototype.once=function(e,t,n){var r=this.eventElement(e),i=function(e){r.unbind(t,i),n(e)};r.bind(t,i)};var w={isWebKit:"undefined"!==typeof document&&"WebkitAppearance"in document.documentElement.style,supportsTouch:"undefined"!==typeof window&&("ontouchstart"in window||"maxTouchPoints"in window.navigator&&window.navigator.maxTouchPoints>0||window.DocumentTouch&&document instanceof window.DocumentTouch),supportsIePointer:"undefined"!==typeof navigator&&navigator.msMaxTouchPoints,isChrome:"undefined"!==typeof navigator&&/Chrome/i.test(navigator&&navigator.userAgent)};function I(e){var t=e.element,n=Math.floor(t.scrollTop),r=t.getBoundingClientRect();e.containerWidth=Math.ceil(r.width),e.containerHeight=Math.ceil(r.height),e.contentWidth=t.scrollWidth,e.contentHeight=t.scrollHeight,t.contains(e.scrollbarXRail)||(f(t,m.element.rail("x")).forEach((function(e){return p(e)})),t.appendChild(e.scrollbarXRail)),t.contains(e.scrollbarYRail)||(f(t,m.element.rail("y")).forEach((function(e){return p(e)})),t.appendChild(e.scrollbarYRail)),!e.settings.suppressScrollX&&e.containerWidth+e.settings.scrollXMarginOffset=e.railXWidth-e.scrollbarXWidth&&(e.scrollbarXLeft=e.railXWidth-e.scrollbarXWidth),e.scrollbarYTop>=e.railYHeight-e.scrollbarYHeight&&(e.scrollbarYTop=e.railYHeight-e.scrollbarYHeight),M(t,e),e.scrollbarXActive?t.classList.add(m.state.active("x")):(t.classList.remove(m.state.active("x")),e.scrollbarXWidth=0,e.scrollbarXLeft=0,t.scrollLeft=!0===e.isRtl?e.contentWidth:0),e.scrollbarYActive?t.classList.add(m.state.active("y")):(t.classList.remove(m.state.active("y")),e.scrollbarYHeight=0,e.scrollbarYTop=0,t.scrollTop=0)}function x(e,t){return e.settings.minScrollbarLength&&(t=Math.max(t,e.settings.minScrollbarLength)),e.settings.maxScrollbarLength&&(t=Math.min(t,e.settings.maxScrollbarLength)),t}function M(e,t){var n={width:t.railXWidth},r=Math.floor(e.scrollTop);t.isRtl?n.left=t.negativeScrollAdjustment+e.scrollLeft+t.containerWidth-t.contentWidth:n.left=e.scrollLeft,t.isScrollbarXUsingBottom?n.bottom=t.scrollbarXBottom-r:n.top=t.scrollbarXTop+r,c(t.scrollbarXRail,n);var i={top:r,height:t.railYHeight};t.isScrollbarYUsingRight?t.isRtl?i.right=t.contentWidth-(t.negativeScrollAdjustment+e.scrollLeft)-t.scrollbarYRight-t.scrollbarYOuterWidth-9:i.right=t.scrollbarYRight-e.scrollLeft:t.isRtl?i.left=t.negativeScrollAdjustment+e.scrollLeft+2*t.containerWidth-t.contentWidth-t.scrollbarYLeft-t.scrollbarYOuterWidth:i.left=t.scrollbarYLeft+e.scrollLeft,c(t.scrollbarYRail,i),c(t.scrollbarX,{left:t.scrollbarXLeft,width:t.scrollbarXWidth-t.railBorderXWidth}),c(t.scrollbarY,{top:t.scrollbarYTop,height:t.scrollbarYHeight-t.railBorderYWidth})}function D(e){e.element,e.event.bind(e.scrollbarY,"mousedown",(function(e){return e.stopPropagation()})),e.event.bind(e.scrollbarYRail,"mousedown",(function(t){var n=t.pageY-window.pageYOffset-e.scrollbarYRail.getBoundingClientRect().top,r=n>e.scrollbarYTop?1:-1;e.element.scrollTop+=r*e.containerHeight,I(e),t.stopPropagation()})),e.event.bind(e.scrollbarX,"mousedown",(function(e){return e.stopPropagation()})),e.event.bind(e.scrollbarXRail,"mousedown",(function(t){var n=t.pageX-window.pageXOffset-e.scrollbarXRail.getBoundingClientRect().left,r=n>e.scrollbarXLeft?1:-1;e.element.scrollLeft+=r*e.containerWidth,I(e),t.stopPropagation()}))}function L(e){P(e,["containerWidth","contentWidth","pageX","railXWidth","scrollbarX","scrollbarXWidth","scrollLeft","x","scrollbarXRail"]),P(e,["containerHeight","contentHeight","pageY","railYHeight","scrollbarY","scrollbarYHeight","scrollTop","y","scrollbarYRail"])}function P(e,t){var n=t[0],r=t[1],i=t[2],a=t[3],o=t[4],s=t[5],l=t[6],c=t[7],d=t[8],u=e.element,_=null,p=null,f=null;function h(t){t.touches&&t.touches[0]&&(t[i]=t.touches[0].pageY),u[l]=_+f*(t[i]-p),g(e,c),I(e),t.stopPropagation(),t.preventDefault()}function v(){b(e,c),e[d].classList.remove(m.state.clicking),e.event.unbind(e.ownerDocument,"mousemove",h)}function E(t,o){_=u[l],o&&t.touches&&(t[i]=t.touches[0].pageY),p=t[i],f=(e[r]-e[n])/(e[a]-e[s]),o?e.event.bind(e.ownerDocument,"touchmove",h):(e.event.bind(e.ownerDocument,"mousemove",h),e.event.once(e.ownerDocument,"mouseup",v),t.preventDefault()),e[d].classList.add(m.state.clicking),t.stopPropagation()}e.event.bind(e[o],"mousedown",(function(e){E(e)})),e.event.bind(e[o],"touchstart",(function(e){E(e,!0)}))}function k(e){var t=e.element,n=function(){return _(t,":hover")},r=function(){return _(e.scrollbarX,":focus")||_(e.scrollbarY,":focus")};function i(n,r){var i=Math.floor(t.scrollTop);if(0===n){if(!e.scrollbarYActive)return!1;if(0===i&&r>0||i>=e.contentHeight-e.containerHeight&&r<0)return!e.settings.wheelPropagation}var a=t.scrollLeft;if(0===r){if(!e.scrollbarXActive)return!1;if(0===a&&n<0||a>=e.contentWidth-e.containerWidth&&n>0)return!e.settings.wheelPropagation}return!0}e.event.bind(e.ownerDocument,"keydown",(function(a){if(!(a.isDefaultPrevented&&a.isDefaultPrevented()||a.defaultPrevented)&&(n()||r())){var o=document.activeElement?document.activeElement:e.ownerDocument.activeElement;if(o){if("IFRAME"===o.tagName)o=o.contentDocument.activeElement;else while(o.shadowRoot)o=o.shadowRoot.activeElement;if(R(o))return}var s=0,l=0;switch(a.which){case 37:s=a.metaKey?-e.contentWidth:a.altKey?-e.containerWidth:-30;break;case 38:l=a.metaKey?e.contentHeight:a.altKey?e.containerHeight:30;break;case 39:s=a.metaKey?e.contentWidth:a.altKey?e.containerWidth:30;break;case 40:l=a.metaKey?-e.contentHeight:a.altKey?-e.containerHeight:-30;break;case 32:l=a.shiftKey?e.containerHeight:-e.containerHeight;break;case 33:l=e.containerHeight;break;case 34:l=-e.containerHeight;break;case 36:l=e.contentHeight;break;case 35:l=-e.contentHeight;break;default:return}e.settings.suppressScrollX&&0!==s||e.settings.suppressScrollY&&0!==l||(t.scrollTop-=l,t.scrollLeft+=s,I(e),i(s,l)&&a.preventDefault())}}))}function F(e){var t=e.element;function n(n,r){var i,a=Math.floor(t.scrollTop),o=0===t.scrollTop,s=a+t.offsetHeight===t.scrollHeight,l=0===t.scrollLeft,c=t.scrollLeft+t.offsetWidth===t.scrollWidth;return i=Math.abs(r)>Math.abs(n)?o||s:l||c,!i||!e.settings.wheelPropagation}function r(e){var t=e.deltaX,n=-1*e.deltaY;return"undefined"!==typeof t&&"undefined"!==typeof n||(t=-1*e.wheelDeltaX/6,n=e.wheelDeltaY/6),e.deltaMode&&1===e.deltaMode&&(t*=10,n*=10),t!==t&&n!==n&&(t=0,n=e.wheelDelta),e.shiftKey?[-n,-t]:[t,n]}function i(e,n,r){if(!w.isWebKit&&t.querySelector("select:focus"))return!0;if(!t.contains(e))return!1;var i=e;while(i&&i!==t){if(i.classList.contains(m.element.consuming))return!0;var a=l(i);if(r&&a.overflowY.match(/(scroll|auto)/)){var o=i.scrollHeight-i.clientHeight;if(o>0&&(i.scrollTop>0&&r<0||i.scrollTop0))return!0}if(n&&a.overflowX.match(/(scroll|auto)/)){var s=i.scrollWidth-i.clientWidth;if(s>0&&(i.scrollLeft>0&&n<0||i.scrollLeft0))return!0}i=i.parentNode}return!1}function a(a){var o=r(a),s=o[0],l=o[1];if(!i(a.target,s,l)){var c=!1;e.settings.useBothWheelAxes?e.scrollbarYActive&&!e.scrollbarXActive?(l?t.scrollTop-=l*e.settings.wheelSpeed:t.scrollTop+=s*e.settings.wheelSpeed,c=!0):e.scrollbarXActive&&!e.scrollbarYActive&&(s?t.scrollLeft+=s*e.settings.wheelSpeed:t.scrollLeft-=l*e.settings.wheelSpeed,c=!0):(t.scrollTop-=l*e.settings.wheelSpeed,t.scrollLeft+=s*e.settings.wheelSpeed),I(e),c=c||n(s,l),c&&!a.ctrlKey&&(a.stopPropagation(),a.preventDefault())}}"undefined"!==typeof window.onwheel?e.event.bind(t,"wheel",a):"undefined"!==typeof window.onmousewheel&&e.event.bind(t,"mousewheel",a)}function U(e){if(w.supportsTouch||w.supportsIePointer){var t=e.element,n={},r=0,i={},a=null;w.supportsTouch?(e.event.bind(t,"touchstart",u),e.event.bind(t,"touchmove",p),e.event.bind(t,"touchend",f)):w.supportsIePointer&&(window.PointerEvent?(e.event.bind(t,"pointerdown",u),e.event.bind(t,"pointermove",p),e.event.bind(t,"pointerup",f)):window.MSPointerEvent&&(e.event.bind(t,"MSPointerDown",u),e.event.bind(t,"MSPointerMove",p),e.event.bind(t,"MSPointerUp",f)))}function o(n,r){var i=Math.floor(t.scrollTop),a=t.scrollLeft,o=Math.abs(n),s=Math.abs(r);if(s>o){if(r<0&&i===e.contentHeight-e.containerHeight||r>0&&0===i)return 0===window.scrollY&&r>0&&w.isChrome}else if(o>s&&(n<0&&a===e.contentWidth-e.containerWidth||n>0&&0===a))return!0;return!0}function s(n,r){t.scrollTop-=r,t.scrollLeft-=n,I(e)}function c(e){return e.targetTouches?e.targetTouches[0]:e}function d(e){return(!e.pointerType||"pen"!==e.pointerType||0!==e.buttons)&&(!(!e.targetTouches||1!==e.targetTouches.length)||!(!e.pointerType||"mouse"===e.pointerType||e.pointerType===e.MSPOINTER_TYPE_MOUSE))}function u(e){if(d(e)){var t=c(e);n.pageX=t.pageX,n.pageY=t.pageY,r=(new Date).getTime(),null!==a&&clearInterval(a)}}function _(e,n,r){if(!t.contains(e))return!1;var i=e;while(i&&i!==t){if(i.classList.contains(m.element.consuming))return!0;var a=l(i);if(r&&a.overflowY.match(/(scroll|auto)/)){var o=i.scrollHeight-i.clientHeight;if(o>0&&(i.scrollTop>0&&r<0||i.scrollTop0))return!0}if(n&&a.overflowX.match(/(scroll|auto)/)){var s=i.scrollWidth-i.clientWidth;if(s>0&&(i.scrollLeft>0&&n<0||i.scrollLeft0))return!0}i=i.parentNode}return!1}function p(e){if(d(e)){var t=c(e),a={pageX:t.pageX,pageY:t.pageY},l=a.pageX-n.pageX,u=a.pageY-n.pageY;if(_(e.target,l,u))return;s(l,u),n=a;var p=(new Date).getTime(),f=p-r;f>0&&(i.x=l/f,i.y=u/f,r=p),o(l,u)&&e.preventDefault()}}function f(){e.settings.swipeEasing&&(clearInterval(a),a=setInterval((function(){e.isInitialized?clearInterval(a):i.x||i.y?Math.abs(i.x)<.01&&Math.abs(i.y)<.01?clearInterval(a):(s(30*i.x,30*i.y),i.x*=.8,i.y*=.8):clearInterval(a)}),10))}}var B=function(){return{handlers:["click-rail","drag-thumb","keyboard","wheel","touch"],maxScrollbarLength:null,minScrollbarLength:null,scrollingThreshold:1e3,scrollXMarginOffset:0,scrollYMarginOffset:0,suppressScrollX:!1,suppressScrollY:!1,swipeEasing:!0,useBothWheelAxes:!1,wheelPropagation:!0,wheelSpeed:1}},G={"click-rail":D,"drag-thumb":L,keyboard:k,wheel:F,touch:U},Y=function(e,t){var n=this;if(void 0===t&&(t={}),"string"===typeof e&&(e=document.querySelector(e)),!e||!e.nodeName)throw new Error("no element is specified to initialize PerfectScrollbar");for(var r in this.element=e,e.classList.add(m.main),this.settings=B(),t)this.settings[r]=t[r];this.containerWidth=null,this.containerHeight=null,this.contentWidth=null,this.contentHeight=null;var i=function(){return e.classList.add(m.state.focus)},a=function(){return e.classList.remove(m.state.focus)};this.isRtl="rtl"===l(e).direction,!0===this.isRtl&&e.classList.add(m.rtl),this.isNegativeScroll=function(){var t=e.scrollLeft,n=null;return e.scrollLeft=-1,n=e.scrollLeft<0,e.scrollLeft=t,n}(),this.negativeScrollAdjustment=this.isNegativeScroll?e.scrollWidth-e.clientWidth:0,this.event=new y,this.ownerDocument=e.ownerDocument||document,this.scrollbarXRail=d(m.element.rail("x")),e.appendChild(this.scrollbarXRail),this.scrollbarX=d(m.element.thumb("x")),this.scrollbarXRail.appendChild(this.scrollbarX),this.scrollbarX.setAttribute("tabindex",0),this.event.bind(this.scrollbarX,"focus",i),this.event.bind(this.scrollbarX,"blur",a),this.scrollbarXActive=null,this.scrollbarXWidth=null,this.scrollbarXLeft=null;var o=l(this.scrollbarXRail);this.scrollbarXBottom=parseInt(o.bottom,10),isNaN(this.scrollbarXBottom)?(this.isScrollbarXUsingBottom=!1,this.scrollbarXTop=O(o.top)):this.isScrollbarXUsingBottom=!0,this.railBorderXWidth=O(o.borderLeftWidth)+O(o.borderRightWidth),c(this.scrollbarXRail,{display:"block"}),this.railXMarginWidth=O(o.marginLeft)+O(o.marginRight),c(this.scrollbarXRail,{display:""}),this.railXWidth=null,this.railXRatio=null,this.scrollbarYRail=d(m.element.rail("y")),e.appendChild(this.scrollbarYRail),this.scrollbarY=d(m.element.thumb("y")),this.scrollbarYRail.appendChild(this.scrollbarY),this.scrollbarY.setAttribute("tabindex",0),this.event.bind(this.scrollbarY,"focus",i),this.event.bind(this.scrollbarY,"blur",a),this.scrollbarYActive=null,this.scrollbarYHeight=null,this.scrollbarYTop=null;var s=l(this.scrollbarYRail);this.scrollbarYRight=parseInt(s.right,10),isNaN(this.scrollbarYRight)?(this.isScrollbarYUsingRight=!1,this.scrollbarYLeft=O(s.left)):this.isScrollbarYUsingRight=!0,this.scrollbarYOuterWidth=this.isRtl?A(this.scrollbarY):null,this.railBorderYWidth=O(s.borderTopWidth)+O(s.borderBottomWidth),c(this.scrollbarYRail,{display:"block"}),this.railYMarginHeight=O(s.marginTop)+O(s.marginBottom),c(this.scrollbarYRail,{display:""}),this.railYHeight=null,this.railYRatio=null,this.reach={x:e.scrollLeft<=0?"start":e.scrollLeft>=this.contentWidth-this.containerWidth?"end":null,y:e.scrollTop<=0?"start":e.scrollTop>=this.contentHeight-this.containerHeight?"end":null},this.isAlive=!0,this.settings.handlers.forEach((function(e){return G[e](n)})),this.lastScrollTop=Math.floor(e.scrollTop),this.lastScrollLeft=e.scrollLeft,this.event.bind(this.element,"scroll",(function(e){return n.onScroll(e)})),I(this)};Y.prototype.update=function(){this.isAlive&&(this.negativeScrollAdjustment=this.isNegativeScroll?this.element.scrollWidth-this.element.clientWidth:0,c(this.scrollbarXRail,{display:"block"}),c(this.scrollbarYRail,{display:"block"}),this.railXMarginWidth=O(l(this.scrollbarXRail).marginLeft)+O(l(this.scrollbarXRail).marginRight),this.railYMarginHeight=O(l(this.scrollbarYRail).marginTop)+O(l(this.scrollbarYRail).marginBottom),c(this.scrollbarXRail,{display:"none"}),c(this.scrollbarYRail,{display:"none"}),I(this),C(this,"top",0,!1,!0),C(this,"left",0,!1,!0),c(this.scrollbarXRail,{display:""}),c(this.scrollbarYRail,{display:""}))},Y.prototype.onScroll=function(e){this.isAlive&&(I(this),C(this,"top",this.element.scrollTop-this.lastScrollTop),C(this,"left",this.element.scrollLeft-this.lastScrollLeft),this.lastScrollTop=Math.floor(this.element.scrollTop),this.lastScrollLeft=this.element.scrollLeft)},Y.prototype.destroy=function(){this.isAlive&&(this.event.unbindAll(),p(this.scrollbarX),p(this.scrollbarY),p(this.scrollbarXRail),p(this.scrollbarYRail),this.removePsClasses(),this.element=null,this.scrollbarX=null,this.scrollbarY=null,this.scrollbarXRail=null,this.scrollbarYRail=null,this.isAlive=!1)},Y.prototype.removePsClasses=function(){this.element.className=this.element.className.split(" ").filter((function(e){return!e.match(/^ps([-_].+|)$/)})).join(" ")};var j=Y,q={name:"vue-custom-scrollbar",props:{settings:{default:null},swicher:{type:Boolean,default:!0},tagname:{type:String,default:"section"}},data:function(){return{ps:null}},methods:{scrollHandle:function(e){this.$emit(e.type,e)},update:function(){this.ps&&this.ps.update()},__init:function(){this.swicher&&(this._ps_inited?this.ps.update():(this._ps_inited=!0,this.ps=new j(this.$el,this.settings)))},__uninit:function(){this.ps&&(this.ps.destroy(),this.ps=null,this._ps_inited=!1)}},watch:{swicher:function(e){e&&!this._ps_inited&&this.__init(),!e&&this._ps_inited&&this.__uninit()},settings:{deep:!0,handler:function(){this.__uninit(),this.__init()}},$route:function(){this.update()}},mounted:function(){this.$isServer||this.__init()},updated:function(){this.$nextTick(this.update)},activated:function(){this.__init()},deactivated:function(){this.__uninit()},beforeDestroy:function(){this.__uninit()}},H=q;function V(e,t,n,r,i,a,o,s){var l,c="function"===typeof e?e.options:e;if(t&&(c.render=t,c.staticRenderFns=n,c._compiled=!0),r&&(c.functional=!0),a&&(c._scopeId="data-v-"+a),o?(l=function(e){e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext,e||"undefined"===typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),i&&i.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(o)},c._ssrRegister=l):i&&(l=s?function(){i.call(this,(c.functional?this.parent:this).$root.$options.shadowRoot)}:i),l)if(c.functional){c._injectStyles=l;var d=c.render;c.render=function(e,t){return l.call(t),d(e,t)}}else{var u=c.beforeCreate;c.beforeCreate=u?[].concat(u,l):[l]}return{exports:e,options:c}}n("3ae1");var $=V(H,o,s,!1,null,null,null),z=$.exports;t["default"]=z}})["default"]}))},"4d64":function(e,t,n){var r=n("fc6a"),i=n("50c4"),a=n("23cb"),o=function(e){return function(t,n,o){var s,l=r(t),c=i(l.length),d=a(o,c);if(e&&n!=n){while(c>d)if(s=l[d++],s!=s)return!0}else for(;c>d;d++)if((e||d in l)&&l[d]===n)return e||d||0;return!e&&-1}};e.exports={includes:o(!0),indexOf:o(!1)}},"4dd1":function(e,t){e.exports=function(e){var t={begin:"<>",end:""},n={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/},r="[A-Za-z$_][0-9A-Za-z$_]*",i={keyword:"in of if for while finally var new function do return void else break catch instanceof with throw case default try this switch continue typeof delete let yield const export super debugger as async await static import from as",literal:"true false null undefined NaN Infinity",built_in:"eval isFinite isNaN parseFloat parseInt decodeURI decodeURIComponent encodeURI encodeURIComponent escape unescape Object Function Boolean Error EvalError InternalError RangeError ReferenceError StopIteration SyntaxError TypeError URIError Number Math Date String RegExp Array Float32Array Float64Array Int16Array Int32Array Int8Array Uint16Array Uint32Array Uint8Array Uint8ClampedArray ArrayBuffer DataView JSON Intl arguments require module console window document Symbol Set Map WeakSet WeakMap Proxy Reflect Promise"},a={className:"number",variants:[{begin:"\\b(0[bB][01]+)n?"},{begin:"\\b(0[oO][0-7]+)n?"},{begin:e.C_NUMBER_RE+"n?"}],relevance:0},o={className:"subst",begin:"\\$\\{",end:"\\}",keywords:i,contains:[]},s={begin:"html`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,o],subLanguage:"xml"}},l={begin:"css`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,o],subLanguage:"css"}},c={className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,o]};o.contains=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,s,l,c,a,e.REGEXP_MODE];var d=o.contains.concat([e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE]);return{aliases:["js","jsx","mjs","cjs"],keywords:i,contains:[{className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},{className:"meta",begin:/^#!/,end:/$/},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,s,l,c,e.C_LINE_COMMENT_MODE,e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+",contains:[{className:"type",begin:"\\{",end:"\\}",relevance:0},{className:"variable",begin:r+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),e.C_BLOCK_COMMENT_MODE,a,{begin:/[{,\n]\s*/,relevance:0,contains:[{begin:r+"\\s*:",returnBegin:!0,relevance:0,contains:[{className:"attr",begin:r,relevance:0}]}]},{begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.REGEXP_MODE,{className:"function",begin:"(\\(.*?\\)|"+r+")\\s*=>",returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:r},{begin:/\(\s*\)/},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:i,contains:d}]}]},{className:"",begin:/\s/,end:/\s*/,skip:!0},{variants:[{begin:t.begin,end:t.end},{begin:n.begin,end:n.end}],subLanguage:"xml",contains:[{begin:n.begin,end:n.end,skip:!0,contains:["self"]}]}],relevance:0},{className:"function",beginKeywords:"function",end:/\{/,excludeEnd:!0,contains:[e.inherit(e.TITLE_MODE,{begin:r}),{className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,contains:d}],illegal:/\[|%/},{begin:/\$[(.]/},e.METHOD_GUARD,{className:"class",beginKeywords:"class",end:/[{;=]/,excludeEnd:!0,illegal:/[:"\[\]]/,contains:[{beginKeywords:"extends"},e.UNDERSCORE_TITLE_MODE]},{beginKeywords:"constructor get set",end:/\{/,excludeEnd:!0}],illegal:/#(?!!)/}}},"4de4":function(e,t,n){"use strict";var r=n("23e7"),i=n("b727").filter,a=n("1dde"),o=n("ae40"),s=a("filter"),l=o("filter");r({target:"Array",proto:!0,forced:!s||!l},{filter:function(e){return i(this,e,arguments.length>1?arguments[1]:void 0)}})},"4f4a":function(e,t){e.exports=function(e){return{case_insensitive:!0,contains:[{className:"meta",begin:"^!!!( (5|1\\.1|Strict|Frameset|Basic|Mobile|RDFa|XML\\b.*))?$",relevance:10},e.COMMENT("^\\s*(!=#|=#|-#|/).*$",!1,{relevance:0}),{begin:"^\\s*(-|=|!=)(?!#)",starts:{end:"\\n",subLanguage:"ruby"}},{className:"tag",begin:"^\\s*%",contains:[{className:"selector-tag",begin:"\\w+"},{className:"selector-id",begin:"#[\\w-]+"},{className:"selector-class",begin:"\\.[\\w-]+"},{begin:"{\\s*",end:"\\s*}",contains:[{begin:":\\w+\\s*=>",end:",\\s+",returnBegin:!0,endsWithParent:!0,contains:[{className:"attr",begin:":\\w+"},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{begin:"\\w+",relevance:0}]}]},{begin:"\\(\\s*",end:"\\s*\\)",excludeEnd:!0,contains:[{begin:"\\w+\\s*=",end:"\\s+",returnBegin:!0,endsWithParent:!0,contains:[{className:"attr",begin:"\\w+",relevance:0},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{begin:"\\w+",relevance:0}]}]}]},{begin:"^\\s*[=~]\\s*"},{begin:"#{",starts:{end:"}",subLanguage:"ruby"}}]}}},5027:function(e,t){e.exports=function(e){var t={keyword:"and case default else elsif false if in import enherits node or true undef unless main settings $string ",literal:"alias audit before loglevel noop require subscribe tag owner ensure group mode name|0 changes context force incl lens load_path onlyif provider returns root show_diff type_check en_address ip_address realname command environment hour monute month monthday special target weekday creates cwd ogoutput refresh refreshonly tries try_sleep umask backup checksum content ctime force ignore links mtime purge recurse recurselimit replace selinux_ignore_defaults selrange selrole seltype seluser source souirce_permissions sourceselect validate_cmd validate_replacement allowdupe attribute_membership auth_membership forcelocal gid ia_load_module members system host_aliases ip allowed_trunk_vlans description device_url duplex encapsulation etherchannel native_vlan speed principals allow_root auth_class auth_type authenticate_user k_of_n mechanisms rule session_owner shared options device fstype enable hasrestart directory present absent link atboot blockdevice device dump pass remounts poller_tag use message withpath adminfile allow_virtual allowcdrom category configfiles flavor install_options instance package_settings platform responsefile status uninstall_options vendor unless_system_user unless_uid binary control flags hasstatus manifest pattern restart running start stop allowdupe auths expiry gid groups home iterations key_membership keys managehome membership password password_max_age password_min_age profile_membership profiles project purge_ssh_keys role_membership roles salt shell uid baseurl cost descr enabled enablegroups exclude failovermethod gpgcheck gpgkey http_caching include includepkgs keepalive metadata_expire metalink mirrorlist priority protect proxy proxy_password proxy_username repo_gpgcheck s3_enabled skip_if_unavailable sslcacert sslclientcert sslclientkey sslverify mounted",built_in:"architecture augeasversion blockdevices boardmanufacturer boardproductname boardserialnumber cfkey dhcp_servers domain ec2_ ec2_userdata facterversion filesystems ldom fqdn gid hardwareisa hardwaremodel hostname id|0 interfaces ipaddress ipaddress_ ipaddress6 ipaddress6_ iphostnumber is_virtual kernel kernelmajversion kernelrelease kernelversion kernelrelease kernelversion lsbdistcodename lsbdistdescription lsbdistid lsbdistrelease lsbmajdistrelease lsbminordistrelease lsbrelease macaddress macaddress_ macosx_buildversion macosx_productname macosx_productversion macosx_productverson_major macosx_productversion_minor manufacturer memoryfree memorysize netmask metmask_ network_ operatingsystem operatingsystemmajrelease operatingsystemrelease osfamily partitions path physicalprocessorcount processor processorcount productname ps puppetversion rubysitedir rubyversion selinux selinux_config_mode selinux_config_policy selinux_current_mode selinux_current_mode selinux_enforced selinux_policyversion serialnumber sp_ sshdsakey sshecdsakey sshrsakey swapencrypted swapfree swapsize timezone type uniqueid uptime uptime_days uptime_hours uptime_seconds uuid virtual vlans xendomains zfs_version zonenae zones zpool_version"},n=e.COMMENT("#","$"),r="([A-Za-z_]|::)(\\w|::)*",i=e.inherit(e.TITLE_MODE,{begin:r}),a={className:"variable",begin:"\\$"+r},o={className:"string",contains:[e.BACKSLASH_ESCAPE,a],variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/}]};return{aliases:["pp"],contains:[n,a,o,{beginKeywords:"class",end:"\\{|;",illegal:/=/,contains:[i,n]},{beginKeywords:"define",end:/\{/,contains:[{className:"section",begin:e.IDENT_RE,endsParent:!0}]},{begin:e.IDENT_RE+"\\s+\\{",returnBegin:!0,end:/\S/,contains:[{className:"keyword",begin:e.IDENT_RE},{begin:/\{/,end:/\}/,keywords:t,relevance:0,contains:[o,n,{begin:"[a-zA-Z_]+\\s*=>",returnBegin:!0,end:"=>",contains:[{className:"attr",begin:e.IDENT_RE}]},{className:"number",begin:"(\\b0[0-7_]+)|(\\b0x[0-9a-fA-F_]+)|(\\b[1-9][0-9_]*(\\.[0-9_]+)?)|[0_]\\b",relevance:0},a]}],relevance:0}]}}},5051:function(e,t){e.exports=function(e){var t={variants:[e.COMMENT("--","$"),e.COMMENT("{-","-}",{contains:["self"]})]},n={className:"type",begin:"\\b[A-Z][\\w']*",relevance:0},r={begin:"\\(",end:"\\)",illegal:'"',contains:[{className:"type",begin:"\\b[A-Z][\\w]*(\\((\\.\\.|,|\\w+)\\))?"},t]},i={begin:"{",end:"}",contains:r.contains},a={className:"string",begin:"'\\\\?.",end:"'",illegal:"."};return{keywords:"let in if then else case of where module import exposing type alias as infix infixl infixr port effect command subscription",contains:[{beginKeywords:"port effect module",end:"exposing",keywords:"port effect module where command subscription exposing",contains:[r,t],illegal:"\\W\\.|;"},{begin:"import",end:"$",keywords:"import as exposing",contains:[r,t],illegal:"\\W\\.|;"},{begin:"type",end:"$",keywords:"type alias",contains:[n,r,i,t]},{beginKeywords:"infix infixl infixr",end:"$",contains:[e.C_NUMBER_MODE,t]},{begin:"port",end:"$",keywords:"port",contains:[t]},a,e.QUOTE_STRING_MODE,e.C_NUMBER_MODE,n,e.inherit(e.TITLE_MODE,{begin:"^[_a-z][\\w']*"}),t,{begin:"->|<-"}],illegal:/;/}}},"508e":function(e,t){e.exports=function(e){var t=["string","char","byte","int","long","bool","decimal","single","double","DateTime","xml","array","hashtable","void"],n="Add|Clear|Close|Copy|Enter|Exit|Find|Format|Get|Hide|Join|Lock|Move|New|Open|Optimize|Pop|Push|Redo|Remove|Rename|Reset|Resize|Search|Select|Set|Show|Skip|Split|Step|Switch|Undo|Unlock|Watch|Backup|Checkpoint|Compare|Compress|Convert|ConvertFrom|ConvertTo|Dismount|Edit|Expand|Export|Group|Import|Initialize|Limit|Merge|New|Out|Publish|Restore|Save|Sync|Unpublish|Update|Approve|Assert|Complete|Confirm|Deny|Disable|Enable|Install|Invoke|Register|Request|Restart|Resume|Start|Stop|Submit|Suspend|Uninstall|Unregister|Wait|Debug|Measure|Ping|Repair|Resolve|Test|Trace|Connect|Disconnect|Read|Receive|Send|Write|Block|Grant|Protect|Revoke|Unblock|Unprotect|Use|ForEach|Sort|Tee|Where",r="-and|-as|-band|-bnot|-bor|-bxor|-casesensitive|-ccontains|-ceq|-cge|-cgt|-cle|-clike|-clt|-cmatch|-cne|-cnotcontains|-cnotlike|-cnotmatch|-contains|-creplace|-csplit|-eq|-exact|-f|-file|-ge|-gt|-icontains|-ieq|-ige|-igt|-ile|-ilike|-ilt|-imatch|-in|-ine|-inotcontains|-inotlike|-inotmatch|-ireplace|-is|-isnot|-isplit|-join|-le|-like|-lt|-match|-ne|-not|-notcontains|-notin|-notlike|-notmatch|-or|-regex|-replace|-shl|-shr|-split|-wildcard|-xor",i={keyword:"if else foreach return do while until elseif begin for trap data dynamicparam end break throw param continue finally in switch exit filter try process catch hidden static parameter"},a=/\w[\w\d]*((-)[\w\d]+)*/,o={begin:"`[\\s\\S]",relevance:0},s={className:"variable",variants:[{begin:/\$\B/},{className:"keyword",begin:/\$this/},{begin:/\$[\w\d][\w\d_:]*/}]},l={className:"literal",begin:/\$(null|true|false)\b/},c={className:"string",variants:[{begin:/"/,end:/"/},{begin:/@"/,end:/^"@/}],contains:[o,s,{className:"variable",begin:/\$[A-z]/,end:/[^A-z]/}]},d={className:"string",variants:[{begin:/'/,end:/'/},{begin:/@'/,end:/^'@/}]},u={className:"doctag",variants:[{begin:/\.(synopsis|description|example|inputs|outputs|notes|link|component|role|functionality)/},{begin:/\.(parameter|forwardhelptargetname|forwardhelpcategory|remotehelprunspace|externalhelp)\s+\S+/}]},_=e.inherit(e.COMMENT(null,null),{variants:[{begin:/#/,end:/$/},{begin:/<#/,end:/#>/}],contains:[u]}),p={className:"built_in",variants:[{begin:"(".concat(n,")+(-)[\\w\\d]+")}]},f={className:"class",beginKeywords:"class enum",end:/\s*[{]/,excludeEnd:!0,relevance:0,contains:[e.TITLE_MODE]},m={className:"function",begin:/function\s+/,end:/\s*\{|$/,excludeEnd:!0,returnBegin:!0,relevance:0,contains:[{begin:"function",relevance:0,className:"keyword"},{className:"title",begin:a,relevance:0},{begin:/\(/,end:/\)/,className:"params",relevance:0,contains:[s]}]},h={begin:/using\s/,end:/$/,returnBegin:!0,contains:[c,d,{className:"keyword",begin:/(using|assembly|command|module|namespace|type)/}]},g={variants:[{className:"operator",begin:"(".concat(r,")\\b")},{className:"literal",begin:/(-)[\w\d]+/,relevance:0}]},b={className:"selector-tag",begin:/\@\B/,relevance:0},v={className:"function",begin:/\[.*\]\s*[\w]+[ ]??\(/,end:/$/,returnBegin:!0,relevance:0,contains:[{className:"keyword",begin:"(".concat(i.keyword.toString().replace(/\s/g,"|"),")\\b"),endsParent:!0,relevance:0},e.inherit(e.TITLE_MODE,{endsParent:!0})]},E=[v,_,o,e.NUMBER_MODE,c,d,p,s,l,b],S={begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0,relevance:0,contains:[].concat("self",E,{begin:"("+t.join("|")+")",className:"built_in",relevance:0},{className:"type",begin:/[\.\w\d]+/,relevance:0})};return v.contains.unshift(S),{aliases:["ps","ps1"],lexemes:/-?[A-z\.\-]+/,case_insensitive:!0,keywords:i,contains:E.concat(f,m,h,g,S)}}},"50c4":function(e,t,n){var r=n("a691"),i=Math.min;e.exports=function(e){return e>0?i(r(e),9007199254740991):0}},5135:function(e,t){var n={}.hasOwnProperty;e.exports=function(e,t){return n.call(e,t)}},"51ab":function(e,t){e.exports=function(e){return{aliases:["clean","icl","dcl"],keywords:{keyword:"if let in with where case of class instance otherwise implementation definition system module from import qualified as special code inline foreign export ccall stdcall generic derive infix infixl infixr",built_in:"Int Real Char Bool",literal:"True False"},contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.C_NUMBER_MODE,{begin:"->|<-[|:]?|#!?|>>=|\\{\\||\\|\\}|:==|=:|<>"}]}}},"51de":function(e,t,n){},5270:function(e,t,n){"use strict";var r=n("c532"),i=n("c401"),a=n("2e67"),o=n("2444");function s(e){e.cancelToken&&e.cancelToken.throwIfRequested()}e.exports=function(e){s(e),e.headers=e.headers||{},e.data=i(e.data,e.headers,e.transformRequest),e.headers=r.merge(e.headers.common||{},e.headers[e.method]||{},e.headers),r.forEach(["delete","get","head","post","put","patch","common"],(function(t){delete e.headers[t]}));var t=e.adapter||o.adapter;return t(e).then((function(t){return s(e),t.data=i(t.data,t.headers,e.transformResponse),t}),(function(t){return a(t)||(s(e),t&&t.response&&(t.response.data=i(t.response.data,t.response.headers,e.transformResponse))),Promise.reject(t)}))}},5692:function(e,t,n){var r=n("c430"),i=n("c6cd");(e.exports=function(e,t){return i[e]||(i[e]=void 0!==t?t:{})})("versions",[]).push({version:"3.6.5",mode:r?"pure":"global",copyright:"© 2020 Denis Pushkarev (zloirock.ru)"})},"56b2":function(e,t){e.exports=function(e){var t="[ \\t\\f]*",n="[ \\t\\f]+",r="("+t+"[:=]"+t+"|"+n+")",i="([^\\\\\\W:= \\t\\f\\n]|\\\\.)+",a="([^\\\\:= \\t\\f\\n]|\\\\.)+",o={end:r,relevance:0,starts:{className:"string",end:/$/,relevance:0,contains:[{begin:"\\\\\\n"}]}};return{case_insensitive:!0,illegal:/\S/,contains:[e.COMMENT("^\\s*[!#]","$"),{begin:i+r,returnBegin:!0,contains:[{className:"attr",begin:i,endsParent:!0,relevance:0}],starts:o},{begin:a+r,returnBegin:!0,relevance:0,contains:[{className:"meta",begin:a,endsParent:!0,relevance:0}],starts:o},{className:"attr",relevance:0,begin:a+t+"$"}]}}},"56ef":function(e,t,n){var r=n("d066"),i=n("241c"),a=n("7418"),o=n("825a");e.exports=r("Reflect","ownKeys")||function(e){var t=i.f(o(e)),n=a.f;return n?t.concat(n(e)):t}},5921:function(e,t){e.exports=function(e){var t={className:"literal",begin:"[\\+\\-]",relevance:0};return{aliases:["bf"],contains:[e.COMMENT("[^\\[\\]\\.,\\+\\-<> \r\n]","[\\[\\]\\.,\\+\\-<> \r\n]",{returnEnd:!0,relevance:0}),{className:"title",begin:"[\\[\\]]",relevance:0},{className:"string",begin:"[\\.,]",relevance:0},{begin:/(?:\+\+|\-\-)/,contains:[t]},t]}}},"5a34":function(e,t,n){var r=n("44e7");e.exports=function(e){if(r(e))throw TypeError("The method doesn't accept regular expressions");return e}},"5a3e":function(e,t){e.exports=function(e){return{aliases:["vbs"],case_insensitive:!0,keywords:{keyword:"call class const dim do loop erase execute executeglobal exit for each next function if then else on error option explicit new private property let get public randomize redim rem select case set stop sub while wend with end to elseif is or xor and not class_initialize class_terminate default preserve in me byval byref step resume goto",built_in:"lcase month vartype instrrev ubound setlocale getobject rgb getref string weekdayname rnd dateadd monthname now day minute isarray cbool round formatcurrency conversions csng timevalue second year space abs clng timeserial fixs len asc isempty maths dateserial atn timer isobject filter weekday datevalue ccur isdate instr datediff formatdatetime replace isnull right sgn array snumeric log cdbl hex chr lbound msgbox ucase getlocale cos cdate cbyte rtrim join hour oct typename trim strcomp int createobject loadpicture tan formatnumber mid scriptenginebuildversion scriptengine split scriptengineminorversion cint sin datepart ltrim sqr scriptenginemajorversion time derived eval date formatpercent exp inputbox left ascw chrw regexp server response request cstr err",literal:"true false null nothing empty"},illegal:"//",contains:[e.inherit(e.QUOTE_STRING_MODE,{contains:[{begin:'""'}]}),e.COMMENT(/'/,/$/,{relevance:0}),e.C_NUMBER_MODE]}}},"5ad2":function(e,t){e.exports=function(e){var t={literal:"true false null"},n=[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE],r=[e.QUOTE_STRING_MODE,e.C_NUMBER_MODE],i={end:",",endsWithParent:!0,excludeEnd:!0,contains:r,keywords:t},a={begin:"{",end:"}",contains:[{className:"attr",begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE],illegal:"\\n"},e.inherit(i,{begin:/:/})].concat(n),illegal:"\\S"},o={begin:"\\[",end:"\\]",contains:[e.inherit(i)],illegal:"\\S"};return r.push(a,o),n.forEach((function(e){r.push(e)})),{contains:r,keywords:t,illegal:"\\S"}}},"5c6c":function(e,t){e.exports=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}}},"5dfb":function(e,t){e.exports=function(e){var t={keyword:"do while select delete by update from",literal:"0b 1b",built_in:"neg not null string reciprocal floor ceiling signum mod xbar xlog and or each scan over prior mmu lsq inv md5 ltime gtime count first var dev med cov cor all any rand sums prds mins maxs fills deltas ratios avgs differ prev next rank reverse iasc idesc asc desc msum mcount mavg mdev xrank mmin mmax xprev rotate distinct group where flip type key til get value attr cut set upsert raze union inter except cross sv vs sublist enlist read0 read1 hopen hclose hdel hsym hcount peach system ltrim rtrim trim lower upper ssr view tables views cols xcols keys xkey xcol xasc xdesc fkeys meta lj aj aj0 ij pj asof uj ww wj wj1 fby xgroup ungroup ej save load rsave rload show csv parse eval min max avg wavg wsum sin cos tan sum",type:"`float `double int `timestamp `timespan `datetime `time `boolean `symbol `char `byte `short `long `real `month `date `minute `second `guid"};return{aliases:["k","kdb"],keywords:t,lexemes:/(`?)[A-Za-z0-9_]+\b/,contains:[e.C_LINE_COMMENT_MODE,e.QUOTE_STRING_MODE,e.C_NUMBER_MODE]}}},"60da":function(e,t,n){"use strict";var r=n("83ab"),i=n("d039"),a=n("df75"),o=n("7418"),s=n("d1e7"),l=n("7b0b"),c=n("44ad"),d=Object.assign,u=Object.defineProperty;e.exports=!d||i((function(){if(r&&1!==d({b:1},d(u({},"a",{enumerable:!0,get:function(){u(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var e={},t={},n=Symbol(),i="abcdefghijklmnopqrst";return e[n]=7,i.split("").forEach((function(e){t[e]=e})),7!=d({},e)[n]||a(d({},t)).join("")!=i}))?function(e,t){var n=l(e),i=arguments.length,d=1,u=o.f,_=s.f;while(i>d){var p,f=c(arguments[d++]),m=u?a(f).concat(u(f)):a(f),h=m.length,g=0;while(h>g)p=m[g++],r&&!_.call(f,p)||(n[p]=f[p])}return n}:d},6113:function(e,t){e.exports=function(e){var t="@[a-z-]+",n="and or not only",r="[a-zA-Z-][a-zA-Z0-9_-]*",i={className:"variable",begin:"(\\$"+r+")\\b"},a={className:"number",begin:"#[0-9A-Fa-f]+"};e.CSS_NUMBER_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,e.C_BLOCK_COMMENT_MODE;return{case_insensitive:!0,illegal:"[=/|']",contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"selector-id",begin:"\\#[A-Za-z0-9_-]+",relevance:0},{className:"selector-class",begin:"\\.[A-Za-z0-9_-]+",relevance:0},{className:"selector-attr",begin:"\\[",end:"\\]",illegal:"$"},{className:"selector-tag",begin:"\\b(a|abbr|acronym|address|area|article|aside|audio|b|base|big|blockquote|body|br|button|canvas|caption|cite|code|col|colgroup|command|datalist|dd|del|details|dfn|div|dl|dt|em|embed|fieldset|figcaption|figure|footer|form|frame|frameset|(h[1-6])|head|header|hgroup|hr|html|i|iframe|img|input|ins|kbd|keygen|label|legend|li|link|map|mark|meta|meter|nav|noframes|noscript|object|ol|optgroup|option|output|p|param|pre|progress|q|rp|rt|ruby|samp|script|section|select|small|span|strike|strong|style|sub|sup|table|tbody|td|textarea|tfoot|th|thead|time|title|tr|tt|ul|var|video)\\b",relevance:0},{className:"selector-pseudo",begin:":(visited|valid|root|right|required|read-write|read-only|out-range|optional|only-of-type|only-child|nth-of-type|nth-last-of-type|nth-last-child|nth-child|not|link|left|last-of-type|last-child|lang|invalid|indeterminate|in-range|hover|focus|first-of-type|first-line|first-letter|first-child|first|enabled|empty|disabled|default|checked|before|after|active)"},{className:"selector-pseudo",begin:"::(after|before|choices|first-letter|first-line|repeat-index|repeat-item|selection|value)"},i,{className:"attribute",begin:"\\b(src|z-index|word-wrap|word-spacing|word-break|width|widows|white-space|visibility|vertical-align|unicode-bidi|transition-timing-function|transition-property|transition-duration|transition-delay|transition|transform-style|transform-origin|transform|top|text-underline-position|text-transform|text-shadow|text-rendering|text-overflow|text-indent|text-decoration-style|text-decoration-line|text-decoration-color|text-decoration|text-align-last|text-align|tab-size|table-layout|right|resize|quotes|position|pointer-events|perspective-origin|perspective|page-break-inside|page-break-before|page-break-after|padding-top|padding-right|padding-left|padding-bottom|padding|overflow-y|overflow-x|overflow-wrap|overflow|outline-width|outline-style|outline-offset|outline-color|outline|orphans|order|opacity|object-position|object-fit|normal|none|nav-up|nav-right|nav-left|nav-index|nav-down|min-width|min-height|max-width|max-height|mask|marks|margin-top|margin-right|margin-left|margin-bottom|margin|list-style-type|list-style-position|list-style-image|list-style|line-height|letter-spacing|left|justify-content|initial|inherit|ime-mode|image-orientation|image-resolution|image-rendering|icon|hyphens|height|font-weight|font-variant-ligatures|font-variant|font-style|font-stretch|font-size-adjust|font-size|font-language-override|font-kerning|font-feature-settings|font-family|font|float|flex-wrap|flex-shrink|flex-grow|flex-flow|flex-direction|flex-basis|flex|filter|empty-cells|display|direction|cursor|counter-reset|counter-increment|content|column-width|column-span|column-rule-width|column-rule-style|column-rule-color|column-rule|column-gap|column-fill|column-count|columns|color|clip-path|clip|clear|caption-side|break-inside|break-before|break-after|box-sizing|box-shadow|box-decoration-break|bottom|border-width|border-top-width|border-top-style|border-top-right-radius|border-top-left-radius|border-top-color|border-top|border-style|border-spacing|border-right-width|border-right-style|border-right-color|border-right|border-radius|border-left-width|border-left-style|border-left-color|border-left|border-image-width|border-image-source|border-image-slice|border-image-repeat|border-image-outset|border-image|border-color|border-collapse|border-bottom-width|border-bottom-style|border-bottom-right-radius|border-bottom-left-radius|border-bottom-color|border-bottom|border|background-size|background-repeat|background-position|background-origin|background-image|background-color|background-clip|background-attachment|background-blend-mode|background|backface-visibility|auto|animation-timing-function|animation-play-state|animation-name|animation-iteration-count|animation-fill-mode|animation-duration|animation-direction|animation-delay|animation|align-self|align-items|align-content)\\b",illegal:"[^\\s]"},{begin:"\\b(whitespace|wait|w-resize|visible|vertical-text|vertical-ideographic|uppercase|upper-roman|upper-alpha|underline|transparent|top|thin|thick|text|text-top|text-bottom|tb-rl|table-header-group|table-footer-group|sw-resize|super|strict|static|square|solid|small-caps|separate|se-resize|scroll|s-resize|rtl|row-resize|ridge|right|repeat|repeat-y|repeat-x|relative|progress|pointer|overline|outside|outset|oblique|nowrap|not-allowed|normal|none|nw-resize|no-repeat|no-drop|newspaper|ne-resize|n-resize|move|middle|medium|ltr|lr-tb|lowercase|lower-roman|lower-alpha|loose|list-item|line|line-through|line-edge|lighter|left|keep-all|justify|italic|inter-word|inter-ideograph|inside|inset|inline|inline-block|inherit|inactive|ideograph-space|ideograph-parenthesis|ideograph-numeric|ideograph-alpha|horizontal|hidden|help|hand|groove|fixed|ellipsis|e-resize|double|dotted|distribute|distribute-space|distribute-letter|distribute-all-lines|disc|disabled|default|decimal|dashed|crosshair|collapse|col-resize|circle|char|center|capitalize|break-word|break-all|bottom|both|bolder|bold|block|bidi-override|below|baseline|auto|always|all-scroll|absolute|table|table-cell)\\b"},{begin:":",end:";",contains:[i,a,e.CSS_NUMBER_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,{className:"meta",begin:"!important"}]},{begin:"@(page|font-face)",lexemes:t,keywords:"@page @font-face"},{begin:"@",end:"[{;]",returnBegin:!0,keywords:n,contains:[{begin:t,className:"keyword"},i,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,a,e.CSS_NUMBER_MODE]}]}}},"612a":function(e,t){e.exports=function(e){var t={keyword:"in of on if for while finally var new function do return void else break catch instanceof with throw case default try this switch continue typeof delete let yield const export super debugger as async await import",literal:"true false null undefined NaN Infinity",built_in:"eval isFinite isNaN parseFloat parseInt decodeURI decodeURIComponent encodeURI encodeURIComponent escape unescape Object Function Boolean Error EvalError InternalError RangeError ReferenceError StopIteration SyntaxError TypeError URIError Number Math Date String RegExp Array Float32Array Float64Array Int16Array Int32Array Int8Array Uint16Array Uint32Array Uint8Array Uint8ClampedArray ArrayBuffer DataView JSON Intl arguments require module console window document Symbol Set Map WeakSet WeakMap Proxy Reflect Behavior bool color coordinate date double enumeration font geocircle georectangle geoshape int list matrix4x4 parent point quaternion real rect size string url variant vector2d vector3d vector4dPromise"},n="[a-zA-Z_][a-zA-Z0-9\\._]*",r={className:"keyword",begin:"\\bproperty\\b",starts:{className:"string",end:"(:|=|;|,|//|/\\*|$)",returnEnd:!0}},i={className:"keyword",begin:"\\bsignal\\b",starts:{className:"string",end:"(\\(|:|=|;|,|//|/\\*|$)",returnEnd:!0}},a={className:"attribute",begin:"\\bid\\s*:",starts:{className:"string",end:n,returnEnd:!1}},o={begin:n+"\\s*:",returnBegin:!0,contains:[{className:"attribute",begin:n,end:"\\s*:",excludeEnd:!0,relevance:0}],relevance:0},s={begin:n+"\\s*{",end:"{",returnBegin:!0,relevance:0,contains:[e.inherit(e.TITLE_MODE,{begin:n})]};return{aliases:["qt"],case_insensitive:!1,keywords:t,contains:[{className:"meta",begin:/^\s*['"]use (strict|asm)['"]/},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,{className:"subst",begin:"\\$\\{",end:"\\}"}]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"number",variants:[{begin:"\\b(0[bB][01]+)"},{begin:"\\b(0[oO][0-7]+)"},{begin:e.C_NUMBER_RE}],relevance:0},{begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.REGEXP_MODE,{begin:/\s*[);\]]/,relevance:0,subLanguage:"xml"}],relevance:0},i,r,{className:"function",beginKeywords:"function",end:/\{/,excludeEnd:!0,contains:[e.inherit(e.TITLE_MODE,{begin:/[A-Za-z$_][0-9A-Za-z$_]*/}),{className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]}],illegal:/\[|%/},{begin:"\\."+e.IDENT_RE,relevance:0},a,o,s],illegal:/#/}}},"65f0":function(e,t,n){var r=n("861d"),i=n("e8b5"),a=n("b622"),o=a("species");e.exports=function(e,t){var n;return i(e)&&(n=e.constructor,"function"!=typeof n||n!==Array&&!i(n.prototype)?r(n)&&(n=n[o],null===n&&(n=void 0)):n=void 0),new(void 0===n?Array:n)(0===t?0:t)}},"66ba":function(e,t){e.exports=function(e){return{subLanguage:"xml",contains:[{className:"meta",begin:"^__(END|DATA)__$"},{begin:"^\\s*%{1,2}={0,2}",end:"$",subLanguage:"perl"},{begin:"<%{1,2}={0,2}",end:"={0,1}%>",subLanguage:"perl",excludeBegin:!0,excludeEnd:!0}]}}},"69f3":function(e,t,n){var r,i,a,o=n("7f9a"),s=n("da84"),l=n("861d"),c=n("9112"),d=n("5135"),u=n("f772"),_=n("d012"),p=s.WeakMap,f=function(e){return a(e)?i(e):r(e,{})},m=function(e){return function(t){var n;if(!l(t)||(n=i(t)).type!==e)throw TypeError("Incompatible receiver, "+e+" required");return n}};if(o){var h=new p,g=h.get,b=h.has,v=h.set;r=function(e,t){return v.call(h,e,t),t},i=function(e){return g.call(h,e)||{}},a=function(e){return b.call(h,e)}}else{var E=u("state");_[E]=!0,r=function(e,t){return c(e,E,t),t},i=function(e){return d(e,E)?e[E]:{}},a=function(e){return d(e,E)}}e.exports={set:r,get:i,has:a,enforce:f,getterFor:m}},"6a51":function(e,t){e.exports=function(e){var t="getpwent getservent quotemeta msgrcv scalar kill dbmclose undef lc ma syswrite tr send umask sysopen shmwrite vec qx utime local oct semctl localtime readpipe do return format read sprintf dbmopen pop getpgrp not getpwnam rewinddir qqfileno qw endprotoent wait sethostent bless s|0 opendir continue each sleep endgrent shutdown dump chomp connect getsockname die socketpair close flock exists index shmgetsub for endpwent redo lstat msgctl setpgrp abs exit select print ref gethostbyaddr unshift fcntl syscall goto getnetbyaddr join gmtime symlink semget splice x|0 getpeername recv log setsockopt cos last reverse gethostbyname getgrnam study formline endhostent times chop length gethostent getnetent pack getprotoent getservbyname rand mkdir pos chmod y|0 substr endnetent printf next open msgsnd readdir use unlink getsockopt getpriority rindex wantarray hex system getservbyport endservent int chr untie rmdir prototype tell listen fork shmread ucfirst setprotoent else sysseek link getgrgid shmctl waitpid unpack getnetbyname reset chdir grep split require caller lcfirst until warn while values shift telldir getpwuid my getprotobynumber delete and sort uc defined srand accept package seekdir getprotobyname semop our rename seek if q|0 chroot sysread setpwent no crypt getc chown sqrt write setnetent setpriority foreach tie sin msgget map stat getlogin unless elsif truncate exec keys glob tied closedirioctl socket readlink eval xor readline binmode setservent eof ord bind alarm pipe atan2 getgrent exp time push setgrent gt lt or ne m|0 break given say state when",n={className:"subst",begin:"[$@]\\{",end:"\\}",keywords:t},r={begin:"->{",end:"}"},i={variants:[{begin:/\$\d/},{begin:/[\$%@](\^\w\b|#\w+(::\w+)*|{\w+}|\w+(::\w*)*)/},{begin:/[\$%@][^\s\w{]/,relevance:0}]},a=[e.BACKSLASH_ESCAPE,n,i],o=[i,e.HASH_COMMENT_MODE,e.COMMENT("^\\=\\w","\\=cut",{endsWithParent:!0}),r,{className:"string",contains:a,variants:[{begin:"q[qwxr]?\\s*\\(",end:"\\)",relevance:5},{begin:"q[qwxr]?\\s*\\[",end:"\\]",relevance:5},{begin:"q[qwxr]?\\s*\\{",end:"\\}",relevance:5},{begin:"q[qwxr]?\\s*\\|",end:"\\|",relevance:5},{begin:"q[qwxr]?\\s*\\<",end:"\\>",relevance:5},{begin:"qw\\s+q",end:"q",relevance:5},{begin:"'",end:"'",contains:[e.BACKSLASH_ESCAPE]},{begin:'"',end:'"'},{begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE]},{begin:"{\\w+}",contains:[],relevance:0},{begin:"-?\\w+\\s*\\=\\>",contains:[],relevance:0}]},{className:"number",begin:"(\\b0[0-7_]+)|(\\b0x[0-9a-fA-F_]+)|(\\b[1-9][0-9_]*(\\.[0-9_]+)?)|[0_]\\b",relevance:0},{begin:"(\\/\\/|"+e.RE_STARTERS_RE+"|\\b(split|return|print|reverse|grep)\\b)\\s*",keywords:"split return print reverse grep",relevance:0,contains:[e.HASH_COMMENT_MODE,{className:"regexp",begin:"(s|tr|y)/(\\\\.|[^/])*/(\\\\.|[^/])*/[a-z]*",relevance:10},{className:"regexp",begin:"(m|qr)?/",end:"/[a-z]*",contains:[e.BACKSLASH_ESCAPE],relevance:0}]},{className:"function",beginKeywords:"sub",end:"(\\s*\\(.*?\\))?[;{]",excludeEnd:!0,relevance:5,contains:[e.TITLE_MODE]},{begin:"-\\w\\b",relevance:0},{begin:"^__DATA__$",end:"^__END__$",subLanguage:"mojolicious",contains:[{begin:"^@@.*",end:"$",className:"comment"}]}];return n.contains=o,r.contains=o,{aliases:["pl","pm"],lexemes:/[\w\.]+/,keywords:t,contains:o}}},"6de8":function(e,t){e.exports=function(e){var t="abstract add and array as asc aspect assembly async begin break block by case class concat const copy constructor continue create default delegate desc distinct div do downto dynamic each else empty end ensure enum equals event except exit extension external false final finalize finalizer finally flags for forward from function future global group has if implementation implements implies in index inherited inline interface into invariants is iterator join locked locking loop matching method mod module namespace nested new nil not notify nullable of old on operator or order out override parallel params partial pinned private procedure property protected public queryable raise read readonly record reintroduce remove repeat require result reverse sealed select self sequence set shl shr skip static step soft take then to true try tuple type union unit unsafe until uses using var virtual raises volatile where while with write xor yield await mapped deprecated stdcall cdecl pascal register safecall overload library platform reference packed strict published autoreleasepool selector strong weak unretained",n=e.COMMENT("{","}",{relevance:0}),r=e.COMMENT("\\(\\*","\\*\\)",{relevance:10}),i={className:"string",begin:"'",end:"'",contains:[{begin:"''"}]},a={className:"string",begin:"(#\\d+)+"},o={className:"function",beginKeywords:"function constructor destructor procedure method",end:"[:;]",keywords:"function constructor|10 destructor|10 procedure|10 method|10",contains:[e.TITLE_MODE,{className:"params",begin:"\\(",end:"\\)",keywords:t,contains:[i,a]},n,r]};return{case_insensitive:!0,lexemes:/\.?\w+/,keywords:t,illegal:'("|\\$[G-Zg-z]|\\/\\*||->)',contains:[n,r,e.C_LINE_COMMENT_MODE,i,a,e.NUMBER_MODE,o,{className:"class",begin:"=\\bclass\\b",end:"end;",keywords:t,contains:[i,a,n,r,e.C_LINE_COMMENT_MODE,o]}]}}},"6eeb":function(e,t,n){var r=n("da84"),i=n("9112"),a=n("5135"),o=n("ce4e"),s=n("8925"),l=n("69f3"),c=l.get,d=l.enforce,u=String(String).split("String");(e.exports=function(e,t,n,s){var l=!!s&&!!s.unsafe,c=!!s&&!!s.enumerable,_=!!s&&!!s.noTargetGet;"function"==typeof n&&("string"!=typeof t||a(n,"name")||i(n,"name",t),d(n).source=u.join("string"==typeof t?t:"")),e!==r?(l?!_&&e[t]&&(c=!0):delete e[t],c?e[t]=n:i(e,t,n)):c?e[t]=n:o(t,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&c(this).source||s(this)}))},7418:function(e,t){t.f=Object.getOwnPropertySymbols},"75da":function(e,t){e.exports=function(e){return{contains:[{className:"attribute",begin://},{begin:/::=/,starts:{end:/$/,contains:[{begin://},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]}}]}}},"767a":function(e,t){e.exports=function(e){var t={className:"variable",begin:/\$[\w\d#@][\w\d_]*/},n={className:"variable",begin:/<(?!\/)/,end:/>/};return{aliases:["pf.conf"],lexemes:/[a-z0-9_<>-]+/,keywords:{built_in:"block match pass load anchor|5 antispoof|10 set table",keyword:"in out log quick on rdomain inet inet6 proto from port os to routeallow-opts divert-packet divert-reply divert-to flags group icmp-typeicmp6-type label once probability recieved-on rtable prio queuetos tag tagged user keep fragment for os dropaf-to|10 binat-to|10 nat-to|10 rdr-to|10 bitmask least-stats random round-robinsource-hash static-portdup-to reply-to route-toparent bandwidth default min max qlimitblock-policy debug fingerprints hostid limit loginterface optimizationreassemble ruleset-optimization basic none profile skip state-defaultsstate-policy timeoutconst counters persistno modulate synproxy state|5 floating if-bound no-sync pflow|10 sloppysource-track global rule max-src-nodes max-src-states max-src-connmax-src-conn-rate overload flushscrub|5 max-mss min-ttl no-df|10 random-id",literal:"all any no-route self urpf-failed egress|5 unknown"},contains:[e.HASH_COMMENT_MODE,e.NUMBER_MODE,e.QUOTE_STRING_MODE,t,n]}}},7727:function(e,t){e.exports=function(e){var t="[a-zA-Z_][a-zA-Z0-9_.]*(\\!|\\?)?",n="[a-zA-Z_]\\w*[!?=]?|[-+~]\\@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?",r="and false then defined module in return redo retry end for true self when next until do begin unless nil break not case cond alias while ensure or include use alias fn quote require import with|0",i={className:"subst",begin:"#\\{",end:"}",lexemes:t,keywords:r},a="[/|([{<\"']",o={className:"string",begin:"~[a-z](?="+a+")",contains:[{endsParent:!0,contains:[{contains:[e.BACKSLASH_ESCAPE,i],variants:[{begin:/"/,end:/"/},{begin:/'/,end:/'/},{begin:/\//,end:/\//},{begin:/\|/,end:/\|/},{begin:/\(/,end:/\)/},{begin:/\[/,end:/\]/},{begin:/\{/,end:/\}/},{begin://}]}]}]},s={className:"string",begin:"~[A-Z](?="+a+")",contains:[{begin:/"/,end:/"/},{begin:/'/,end:/'/},{begin:/\//,end:/\//},{begin:/\|/,end:/\|/},{begin:/\(/,end:/\)/},{begin:/\[/,end:/\]/},{begin:/\{/,end:/\}/},{begin:/\/}]},l={className:"string",contains:[e.BACKSLASH_ESCAPE,i],variants:[{begin:/"""/,end:/"""/},{begin:/'''/,end:/'''/},{begin:/~S"""/,end:/"""/,contains:[]},{begin:/~S"/,end:/"/,contains:[]},{begin:/~S'''/,end:/'''/,contains:[]},{begin:/~S'/,end:/'/,contains:[]},{begin:/'/,end:/'/},{begin:/"/,end:/"/}]},c={className:"function",beginKeywords:"def defp defmacro",end:/\B\b/,contains:[e.inherit(e.TITLE_MODE,{begin:t,endsParent:!0})]},d=e.inherit(c,{className:"class",beginKeywords:"defimpl defmodule defprotocol defrecord",end:/\bdo\b|$|;/}),u=[l,s,o,e.HASH_COMMENT_MODE,d,c,{begin:"::"},{className:"symbol",begin:":(?![\\s:])",contains:[l,{begin:n}],relevance:0},{className:"symbol",begin:t+":(?!:)",relevance:0},{className:"number",begin:"(\\b0o[0-7_]+)|(\\b0b[01_]+)|(\\b0x[0-9a-fA-F_]+)|(-?\\b[1-9][0-9_]*(.[0-9_]+([eE][-+]?[0-9]+)?)?)",relevance:0},{className:"variable",begin:"(\\$\\W)|((\\$|\\@\\@?)(\\w+))"},{begin:"->"},{begin:"("+e.RE_STARTERS_RE+")\\s*",contains:[e.HASH_COMMENT_MODE,{className:"regexp",illegal:"\\n",contains:[e.BACKSLASH_ESCAPE,i],variants:[{begin:"/",end:"/[a-z]*"},{begin:"%r\\[",end:"\\][a-z]*"}]}],relevance:0}];return i.contains=u,{lexemes:t,keywords:r,contains:u}}},7781:function(e,t){e.exports=function(e){var t="div mod in and or not xor asserterror begin case do downto else end exit for if of repeat then to until while with var",n="false true",r=[e.C_LINE_COMMENT_MODE,e.COMMENT(/\{/,/\}/,{relevance:0}),e.COMMENT(/\(\*/,/\*\)/,{relevance:10})],i={className:"string",begin:/'/,end:/'/,contains:[{begin:/''/}]},a={className:"string",begin:/(#\d+)+/},o={className:"number",begin:"\\b\\d+(\\.\\d+)?(DT|D|T)",relevance:0},s={className:"string",begin:'"',end:'"'},l={className:"function",beginKeywords:"procedure",end:/[:;]/,keywords:"procedure|10",contains:[e.TITLE_MODE,{className:"params",begin:/\(/,end:/\)/,keywords:t,contains:[i,a]}].concat(r)},c={className:"class",begin:"OBJECT (Table|Form|Report|Dataport|Codeunit|XMLport|MenuSuite|Page|Query) (\\d+) ([^\\r\\n]+)",returnBegin:!0,contains:[e.TITLE_MODE,l]};return{case_insensitive:!0,keywords:{keyword:t,literal:n},illegal:/\/\*/,contains:[i,a,o,s,e.NUMBER_MODE,c,l]}}},7839:function(e,t){e.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},"79b5":function(e,t){e.exports=function(e){var t="action collection component concat debugger each each-in else get hash if input link-to loc log mut outlet partial query-params render textarea unbound unless with yield view",n={illegal:/\}\}/,begin:/[a-zA-Z0-9_]+=/,returnBegin:!0,relevance:0,contains:[{className:"attr",begin:/[a-zA-Z0-9_]+/}]},r=(e.QUOTE_STRING_MODE,{endsWithParent:!0,relevance:0,keywords:{keyword:"as",built_in:t},contains:[e.QUOTE_STRING_MODE,n,e.NUMBER_MODE]});return{case_insensitive:!0,subLanguage:"xml",contains:[e.COMMENT("{{!(--)?","(--)?}}"),{className:"template-tag",begin:/\{\{[#\/]/,end:/\}\}/,contains:[{className:"name",begin:/[a-zA-Z\.\-]+/,keywords:{"builtin-name":t},starts:r}]},{className:"template-variable",begin:/\{\{[a-zA-Z][a-zA-Z\-]+/,end:/\}\}/,keywords:{keyword:"as",built_in:t},contains:[e.QUOTE_STRING_MODE]}]}}},"7a5e":function(e,t){e.exports=function(e){var t={className:"variable",variants:[{begin:"\\$\\("+e.UNDERSCORE_IDENT_RE+"\\)",contains:[e.BACKSLASH_ESCAPE]},{begin:/\$[@%|=>|\\[\\["}}},"7c30":function(e,t){e.exports=function(e){var t="([-a-zA-Z$._][\\w\\-$.]*)";return{keywords:"begin end true false declare define global constant private linker_private internal available_externally linkonce linkonce_odr weak weak_odr appending dllimport dllexport common default hidden protected extern_weak external thread_local zeroinitializer undef null to tail target triple datalayout volatile nuw nsw nnan ninf nsz arcp fast exact inbounds align addrspace section alias module asm sideeffect gc dbg linker_private_weak attributes blockaddress initialexec localdynamic localexec prefix unnamed_addr ccc fastcc coldcc x86_stdcallcc x86_fastcallcc arm_apcscc arm_aapcscc arm_aapcs_vfpcc ptx_device ptx_kernel intel_ocl_bicc msp430_intrcc spir_func spir_kernel x86_64_sysvcc x86_64_win64cc x86_thiscallcc cc c signext zeroext inreg sret nounwind noreturn noalias nocapture byval nest readnone readonly inlinehint noinline alwaysinline optsize ssp sspreq noredzone noimplicitfloat naked builtin cold nobuiltin noduplicate nonlazybind optnone returns_twice sanitize_address sanitize_memory sanitize_thread sspstrong uwtable returned type opaque eq ne slt sgt sle sge ult ugt ule uge oeq one olt ogt ole oge ord uno ueq une x acq_rel acquire alignstack atomic catch cleanup filter inteldialect max min monotonic nand personality release seq_cst singlethread umax umin unordered xchg add fadd sub fsub mul fmul udiv sdiv fdiv urem srem frem shl lshr ashr and or xor icmp fcmp phi call trunc zext sext fptrunc fpext uitofp sitofp fptoui fptosi inttoptr ptrtoint bitcast addrspacecast select va_arg ret br switch invoke unwind unreachable indirectbr landingpad resume malloc alloca free load store getelementptr extractelement insertelement shufflevector getresult extractvalue insertvalue atomicrmw cmpxchg fence argmemonly double",contains:[{className:"keyword",begin:"i\\d+"},e.COMMENT(";","\\n",{relevance:0}),e.QUOTE_STRING_MODE,{className:"string",variants:[{begin:'"',end:'[^\\\\]"'}],relevance:0},{className:"title",variants:[{begin:"@"+t},{begin:"@\\d+"},{begin:"!"+t},{begin:"!\\d+"+t}]},{className:"symbol",variants:[{begin:"%"+t},{begin:"%\\d+"},{begin:"#\\d+"}]},{className:"number",variants:[{begin:"0[xX][a-fA-F0-9]+"},{begin:"-?\\d+(?:[.]\\d+)?(?:[eE][-+]?\\d+(?:[.]\\d+)?)?"}],relevance:0}]}}},"7c46":function(e,t){e.exports=function(e){var t={className:"subst",variants:[{begin:"\\$[A-Za-z0-9_]+"}]},n={className:"subst",variants:[{begin:"\\${",end:"}"}],keywords:"true false null this is new super"},r={className:"string",variants:[{begin:"r'''",end:"'''"},{begin:'r"""',end:'"""'},{begin:"r'",end:"'",illegal:"\\n"},{begin:'r"',end:'"',illegal:"\\n"},{begin:"'''",end:"'''",contains:[e.BACKSLASH_ESCAPE,t,n]},{begin:'"""',end:'"""',contains:[e.BACKSLASH_ESCAPE,t,n]},{begin:"'",end:"'",illegal:"\\n",contains:[e.BACKSLASH_ESCAPE,t,n]},{begin:'"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE,t,n]}]};n.contains=[e.C_NUMBER_MODE,r];var i={keyword:"abstract as assert async await break case catch class const continue covariant default deferred do dynamic else enum export extends extension external factory false final finally for Function get hide if implements import in inferface is library mixin new null on operator part rethrow return set show static super switch sync this throw true try typedef var void while with yield",built_in:"Comparable DateTime Duration Function Iterable Iterator List Map Match Null Object Pattern RegExp Set Stopwatch String StringBuffer StringSink Symbol Type Uri bool double dynamic int num print Element ElementList document querySelector querySelectorAll window"};return{keywords:i,contains:[r,e.COMMENT("/\\*\\*","\\*/",{subLanguage:"markdown"}),e.COMMENT("///+\\s*","$",{contains:[{subLanguage:"markdown",begin:".",end:"$"}]}),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"class",beginKeywords:"class interface",end:"{",excludeEnd:!0,contains:[{beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE]},e.C_NUMBER_MODE,{className:"meta",begin:"@[A-Za-z]+"},{begin:"=>"}]}}},"7c71":function(e,t){e.exports=function(e){var t="Int Float String Bool Dynamic Void Array ";return{aliases:["hx"],keywords:{keyword:"break case cast catch continue default do dynamic else enum extern for function here if import in inline never new override package private get set public return static super switch this throw trace try typedef untyped using var while "+t,built_in:"trace this",literal:"true false null _"},contains:[{className:"string",begin:"'",end:"'",contains:[e.BACKSLASH_ESCAPE,{className:"subst",begin:"\\$\\{",end:"\\}"},{className:"subst",begin:"\\$",end:"\\W}"}]},e.QUOTE_STRING_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.C_NUMBER_MODE,{className:"meta",begin:"@:",end:"$"},{className:"meta",begin:"#",end:"$",keywords:{"meta-keyword":"if else elseif end error"}},{className:"type",begin:":[ \t]*",end:"[^A-Za-z0-9_ \t\\->]",excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:":[ \t]*",end:"\\W",excludeBegin:!0,excludeEnd:!0},{className:"type",begin:"new *",end:"\\W",excludeBegin:!0,excludeEnd:!0},{className:"class",beginKeywords:"enum",end:"\\{",contains:[e.TITLE_MODE]},{className:"class",beginKeywords:"abstract",end:"[\\{$]",contains:[{className:"type",begin:"\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0},{className:"type",begin:"from +",end:"\\W",excludeBegin:!0,excludeEnd:!0},{className:"type",begin:"to +",end:"\\W",excludeBegin:!0,excludeEnd:!0},e.TITLE_MODE],keywords:{keyword:"abstract from to"}},{className:"class",begin:"\\b(class|interface) +",end:"[\\{$]",excludeEnd:!0,keywords:"class interface",contains:[{className:"keyword",begin:"\\b(extends|implements) +",keywords:"extends implements",contains:[{className:"type",begin:e.IDENT_RE,relevance:0}]},e.TITLE_MODE]},{className:"function",beginKeywords:"function",end:"\\(",excludeEnd:!0,illegal:"\\S",contains:[e.TITLE_MODE]}],illegal:/<\//}}},"7c73":function(e,t,n){var r,i=n("825a"),a=n("37e8"),o=n("7839"),s=n("d012"),l=n("1be4"),c=n("cc12"),d=n("f772"),u=">",_="<",p="prototype",f="script",m=d("IE_PROTO"),h=function(){},g=function(e){return _+f+u+e+_+"/"+f+u},b=function(e){e.write(g("")),e.close();var t=e.parentWindow.Object;return e=null,t},v=function(){var e,t=c("iframe"),n="java"+f+":";return t.style.display="none",l.appendChild(t),t.src=String(n),e=t.contentWindow.document,e.open(),e.write(g("document.F=Object")),e.close(),e.F},E=function(){try{r=document.domain&&new ActiveXObject("htmlfile")}catch(t){}E=r?b(r):v();var e=o.length;while(e--)delete E[p][o[e]];return E()};s[m]=!0,e.exports=Object.create||function(e,t){var n;return null!==e?(h[p]=i(e),n=new h,h[p]=null,n[m]=e):n=E(),void 0===t?n:a(n,t)}},"7cff":function(e,t){e.exports=function(e){var t=e.COMMENT(/^\s*@?rem\b/,/$/,{relevance:10}),n={className:"symbol",begin:"^\\s*[A-Za-z._?][A-Za-z0-9_$#@~.?]*(:|\\s+label)",relevance:0};return{aliases:["bat","cmd"],case_insensitive:!0,illegal:/\/\*/,keywords:{keyword:"if else goto for in do call exit not exist errorlevel defined equ neq lss leq gtr geq",built_in:"prn nul lpt3 lpt2 lpt1 con com4 com3 com2 com1 aux shift cd dir echo setlocal endlocal set pause copy append assoc at attrib break cacls cd chcp chdir chkdsk chkntfs cls cmd color comp compact convert date dir diskcomp diskcopy doskey erase fs find findstr format ftype graftabl help keyb label md mkdir mode more move path pause print popd pushd promt rd recover rem rename replace restore rmdir shiftsort start subst time title tree type ver verify vol ping net ipconfig taskkill xcopy ren del"},contains:[{className:"variable",begin:/%%[^ ]|%[^ ]+?%|![^ ]+?!/},{className:"function",begin:n.begin,end:"goto:eof",contains:[e.inherit(e.TITLE_MODE,{begin:"([_a-zA-Z]\\w*\\.)*([_a-zA-Z]\\w*:)?[_a-zA-Z]\\w*"}),t]},{className:"number",begin:"\\b\\d+",relevance:0},t]}}},"7d9d":function(e,t){e.exports=function(e){var t={keyword:"abort acronym acronyms alias all and assign binary card diag display else eq file files for free ge gt if integer le loop lt maximizing minimizing model models ne negative no not option options or ord positive prod put putpage puttl repeat sameas semicont semiint smax smin solve sos1 sos2 sum system table then until using while xor yes",literal:"eps inf na","built-in":"abs arccos arcsin arctan arctan2 Beta betaReg binomial ceil centropy cos cosh cvPower div div0 eDist entropy errorf execSeed exp fact floor frac gamma gammaReg log logBeta logGamma log10 log2 mapVal max min mod ncpCM ncpF ncpVUpow ncpVUsin normal pi poly power randBinomial randLinear randTriangle round rPower sigmoid sign signPower sin sinh slexp sllog10 slrec sqexp sqlog10 sqr sqrec sqrt tan tanh trunc uniform uniformInt vcPower bool_and bool_eqv bool_imp bool_not bool_or bool_xor ifThen rel_eq rel_ge rel_gt rel_le rel_lt rel_ne gday gdow ghour gleap gmillisec gminute gmonth gsecond gyear jdate jnow jstart jtime errorLevel execError gamsRelease gamsVersion handleCollect handleDelete handleStatus handleSubmit heapFree heapLimit heapSize jobHandle jobKill jobStatus jobTerminate licenseLevel licenseStatus maxExecError sleep timeClose timeComp timeElapsed timeExec timeStart"},n={className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0},r={className:"symbol",variants:[{begin:/\=[lgenxc]=/},{begin:/\$/}]},i={className:"comment",variants:[{begin:"'",end:"'"},{begin:'"',end:'"'}],illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},a={begin:"/",end:"/",keywords:t,contains:[i,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,e.C_NUMBER_MODE]},o={begin:/[a-z][a-z0-9_]*(\([a-z0-9_, ]*\))?[ \t]+/,excludeBegin:!0,end:"$",endsWithParent:!0,contains:[i,a,{className:"comment",begin:/([ ]*[a-z0-9&#*=?@>\\<:\-,()$\[\]_.{}!+%^]+)+/,relevance:0}]};return{aliases:["gms"],case_insensitive:!0,keywords:t,contains:[e.COMMENT(/^\$ontext/,/^\$offtext/),{className:"meta",begin:"^\\$[a-z0-9]+",end:"$",returnBegin:!0,contains:[{className:"meta-keyword",begin:"^\\$[a-z0-9]+"}]},e.COMMENT("^\\*","$"),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,{beginKeywords:"set sets parameter parameters variable variables scalar scalars equation equations",end:";",contains:[e.COMMENT("^\\*","$"),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,a,o]},{beginKeywords:"table",end:";",returnBegin:!0,contains:[{beginKeywords:"table",end:"$",contains:[o]},e.COMMENT("^\\*","$"),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,e.C_NUMBER_MODE]},{className:"function",begin:/^[a-z][a-z0-9_,\-+' ()$]+\.{2}/,returnBegin:!0,contains:[{className:"title",begin:/^[a-z0-9_]+/},n,r]},e.C_NUMBER_MODE,r]}}},"7dd0":function(e,t,n){"use strict";var r=n("23e7"),i=n("9ed3"),a=n("e163"),o=n("d2bb"),s=n("d44e"),l=n("9112"),c=n("6eeb"),d=n("b622"),u=n("c430"),_=n("3f8c"),p=n("ae93"),f=p.IteratorPrototype,m=p.BUGGY_SAFARI_ITERATORS,h=d("iterator"),g="keys",b="values",v="entries",E=function(){return this};e.exports=function(e,t,n,d,p,S,y){i(n,t,d);var T,C,N,O=function(e){if(e===p&&x)return x;if(!m&&e in w)return w[e];switch(e){case g:return function(){return new n(this,e)};case b:return function(){return new n(this,e)};case v:return function(){return new n(this,e)}}return function(){return new n(this)}},R=t+" Iterator",A=!1,w=e.prototype,I=w[h]||w["@@iterator"]||p&&w[p],x=!m&&I||O(p),M="Array"==t&&w.entries||I;if(M&&(T=a(M.call(new e)),f!==Object.prototype&&T.next&&(u||a(T)===f||(o?o(T,f):"function"!=typeof T[h]&&l(T,h,E)),s(T,R,!0,!0),u&&(_[R]=E))),p==b&&I&&I.name!==b&&(A=!0,x=function(){return I.call(this)}),u&&!y||w[h]===x||l(w,h,x),_[t]=x,p)if(C={values:O(b),keys:S?x:O(g),entries:O(v)},y)for(N in C)(m||A||!(N in w))&&c(w,N,C[N]);else r({target:t,proto:!0,forced:m||A},C);return C}},"7f9a":function(e,t,n){var r=n("da84"),i=n("8925"),a=r.WeakMap;e.exports="function"===typeof a&&/native code/.test(i(a))},"80b3":function(e,t){e.exports=function(e){return{keywords:{keyword:"_|0 as at cofix else end exists exists2 fix for forall fun if IF in let match mod Prop return Set then Type using where with Abort About Add Admit Admitted All Arguments Assumptions Axiom Back BackTo Backtrack Bind Blacklist Canonical Cd Check Class Classes Close Coercion Coercions CoFixpoint CoInductive Collection Combined Compute Conjecture Conjectures Constant constr Constraint Constructors Context Corollary CreateHintDb Cut Declare Defined Definition Delimit Dependencies DependentDerive Drop eauto End Equality Eval Example Existential Existentials Existing Export exporting Extern Extract Extraction Fact Field Fields File Fixpoint Focus for From Function Functional Generalizable Global Goal Grab Grammar Graph Guarded Heap Hint HintDb Hints Hypotheses Hypothesis ident Identity If Immediate Implicit Import Include Inductive Infix Info Initial Inline Inspect Instance Instances Intro Intros Inversion Inversion_clear Language Left Lemma Let Libraries Library Load LoadPath Local Locate Ltac ML Mode Module Modules Monomorphic Morphism Next NoInline Notation Obligation Obligations Opaque Open Optimize Options Parameter Parameters Parametric Path Paths pattern Polymorphic Preterm Print Printing Program Projections Proof Proposition Pwd Qed Quit Rec Record Recursive Redirect Relation Remark Remove Require Reserved Reset Resolve Restart Rewrite Right Ring Rings Save Scheme Scope Scopes Script Search SearchAbout SearchHead SearchPattern SearchRewrite Section Separate Set Setoid Show Solve Sorted Step Strategies Strategy Structure SubClass Table Tables Tactic Term Test Theorem Time Timeout Transparent Type Typeclasses Types Undelimit Undo Unfocus Unfocused Unfold Universe Universes Unset Unshelve using Variable Variables Variant Verbose Visibility where with",built_in:"abstract absurd admit after apply as assert assumption at auto autorewrite autounfold before bottom btauto by case case_eq cbn cbv change classical_left classical_right clear clearbody cofix compare compute congruence constr_eq constructor contradict contradiction cut cutrewrite cycle decide decompose dependent destruct destruction dintuition discriminate discrR do double dtauto eapply eassumption eauto ecase econstructor edestruct ediscriminate eelim eexact eexists einduction einjection eleft elim elimtype enough equality erewrite eright esimplify_eq esplit evar exact exactly_once exfalso exists f_equal fail field field_simplify field_simplify_eq first firstorder fix fold fourier functional generalize generalizing gfail give_up has_evar hnf idtac in induction injection instantiate intro intro_pattern intros intuition inversion inversion_clear is_evar is_var lapply lazy left lia lra move native_compute nia nsatz omega once pattern pose progress proof psatz quote record red refine reflexivity remember rename repeat replace revert revgoals rewrite rewrite_strat right ring ring_simplify rtauto set setoid_reflexivity setoid_replace setoid_rewrite setoid_symmetry setoid_transitivity shelve shelve_unifiable simpl simple simplify_eq solve specialize split split_Rabs split_Rmult stepl stepr subst sum swap symmetry tactic tauto time timeout top transitivity trivial try tryif unfold unify until using vm_compute with"},contains:[e.QUOTE_STRING_MODE,e.COMMENT("\\(\\*","\\*\\)"),e.C_NUMBER_MODE,{className:"type",excludeBegin:!0,begin:"\\|\\s*",end:"\\w+"},{begin:/[-=]>/}]}}},"825a":function(e,t,n){var r=n("861d");e.exports=function(e){if(!r(e))throw TypeError(String(e)+" is not an object");return e}},8261:function(e,t){e.exports=function(e){var t={className:"string",variants:[{begin:'"',end:'"',contains:[{begin:'""',relevance:0}]}]},n={className:"number",begin:"\\b(\\d+(\\.\\d*)?|\\.\\d+)",relevance:0},r="property parameter class classmethod clientmethod extends as break catch close continue do d|0 else elseif for goto halt hang h|0 if job j|0 kill k|0 lock l|0 merge new open quit q|0 read r|0 return set s|0 tcommit throw trollback try tstart use view while write w|0 xecute x|0 zkill znspace zn ztrap zwrite zw zzdump zzwrite print zbreak zinsert zload zprint zremove zsave zzprint mv mvcall mvcrt mvdim mvprint zquit zsync ascii";return{case_insensitive:!0,aliases:["cos","cls"],keywords:r,contains:[n,t,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"comment",begin:/;/,end:"$",relevance:0},{className:"built_in",begin:/(?:\$\$?|\.\.)\^?[a-zA-Z]+/},{className:"built_in",begin:/\$\$\$[a-zA-Z]+/},{className:"built_in",begin:/%[a-z]+(?:\.[a-z]+)*/},{className:"symbol",begin:/\^%?[a-zA-Z][\w]*/},{className:"keyword",begin:/##class|##super|#define|#dim/},{begin:/&sql\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,subLanguage:"sql"},{begin:/&(js|jscript|javascript)/,excludeBegin:!0,excludeEnd:!0,subLanguage:"javascript"},{begin:/&html<\s*\s*>/,subLanguage:"xml"}]}}},"82cb":function(e,t){e.exports=function(e){var t="[a-zA-Z_]\\w*[!?=]?|[-+~]\\@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?",n={keyword:"and then defined module in return redo if BEGIN retry end for self when next until do begin unless END rescue else break undef not super class case require yield alias while ensure elsif or include attr_reader attr_writer attr_accessor",literal:"true false nil"},r={className:"doctag",begin:"@[A-Za-z]+"},i={begin:"#<",end:">"},a=[e.COMMENT("#","$",{contains:[r]}),e.COMMENT("^\\=begin","^\\=end",{contains:[r],relevance:10}),e.COMMENT("^__END__","\\n$")],o={className:"subst",begin:"#\\{",end:"}",keywords:n},s={className:"string",contains:[e.BACKSLASH_ESCAPE,o],variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/`/,end:/`/},{begin:"%[qQwWx]?\\(",end:"\\)"},{begin:"%[qQwWx]?\\[",end:"\\]"},{begin:"%[qQwWx]?{",end:"}"},{begin:"%[qQwWx]?<",end:">"},{begin:"%[qQwWx]?/",end:"/"},{begin:"%[qQwWx]?%",end:"%"},{begin:"%[qQwWx]?-",end:"-"},{begin:"%[qQwWx]?\\|",end:"\\|"},{begin:/\B\?(\\\d{1,3}|\\x[A-Fa-f0-9]{1,2}|\\u[A-Fa-f0-9]{4}|\\?\S)\b/},{begin:/<<[-~]?'?(\w+)(?:.|\n)*?\n\s*\1\b/,returnBegin:!0,contains:[{begin:/<<[-~]?'?/},{begin:/\w+/,endSameAsBegin:!0,contains:[e.BACKSLASH_ESCAPE,o]}]}]},l={className:"params",begin:"\\(",end:"\\)",endsParent:!0,keywords:n},c=[s,i,{className:"class",beginKeywords:"class module",end:"$|;",illegal:/=/,contains:[e.inherit(e.TITLE_MODE,{begin:"[A-Za-z_]\\w*(::\\w+)*(\\?|\\!)?"}),{begin:"<\\s*",contains:[{begin:"("+e.IDENT_RE+"::)?"+e.IDENT_RE}]}].concat(a)},{className:"function",beginKeywords:"def",end:"$|;",contains:[e.inherit(e.TITLE_MODE,{begin:t}),l].concat(a)},{begin:e.IDENT_RE+"::"},{className:"symbol",begin:e.UNDERSCORE_IDENT_RE+"(\\!|\\?)?:",relevance:0},{className:"symbol",begin:":(?!\\s)",contains:[s,{begin:t}],relevance:0},{className:"number",begin:"(\\b0[0-7_]+)|(\\b0x[0-9a-fA-F_]+)|(\\b[1-9][0-9_]*(\\.[0-9_]+)?)|[0_]\\b",relevance:0},{begin:"(\\$\\W)|((\\$|\\@\\@?)(\\w+))"},{className:"params",begin:/\|/,end:/\|/,keywords:n},{begin:"("+e.RE_STARTERS_RE+"|unless)\\s*",keywords:"unless",contains:[i,{className:"regexp",contains:[e.BACKSLASH_ESCAPE,o],illegal:/\n/,variants:[{begin:"/",end:"/[a-z]*"},{begin:"%r{",end:"}[a-z]*"},{begin:"%r\\(",end:"\\)[a-z]*"},{begin:"%r!",end:"![a-z]*"},{begin:"%r\\[",end:"\\][a-z]*"}]}].concat(a),relevance:0}].concat(a);o.contains=c,l.contains=c;var d="[>?]>",u="[\\w#]+\\(\\w+\\):\\d+:\\d+>",_="(\\w+-)?\\d+\\.\\d+\\.\\d(p\\d+)?[^>]+>",p=[{begin:/^\s*=>/,starts:{end:"$",contains:c}},{className:"meta",begin:"^("+d+"|"+u+"|"+_+")",starts:{end:"$",contains:c}}];return{aliases:["rb","gemspec","podspec","thor","irb"],keywords:n,illegal:/\/\*/,contains:a.concat(p).concat(c)}}},"83ab":function(e,t,n){var r=n("d039");e.exports=!r((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]}))},"83b9":function(e,t,n){"use strict";var r=n("d925"),i=n("e683");e.exports=function(e,t){return e&&!r(t)?i(e,t):t}},8418:function(e,t,n){"use strict";var r=n("c04e"),i=n("9bf2"),a=n("5c6c");e.exports=function(e,t,n){var o=r(t);o in e?i.f(e,o,a(0,n)):e[o]=n}},"841c":function(e,t,n){"use strict";var r=n("d784"),i=n("825a"),a=n("1d80"),o=n("129f"),s=n("14c3");r("search",1,(function(e,t,n){return[function(t){var n=a(this),r=void 0==t?void 0:t[e];return void 0!==r?r.call(t,n):new RegExp(t)[e](String(n))},function(e){var r=n(t,e,this);if(r.done)return r.value;var a=i(e),l=String(this),c=a.lastIndex;o(c,0)||(a.lastIndex=0);var d=s(a,l);return o(a.lastIndex,c)||(a.lastIndex=c),null===d?-1:d.index}]}))},"861d":function(e,t){e.exports=function(e){return"object"===typeof e?null!==e:"function"===typeof e}},8667:function(e,t){e.exports=function(e){var t={"builtin-name":"!= % %= & &= * ** **= *= *map + += , --build-class-- --import-- -= . / // //= /= < << <<= <= = > >= >> >>= @ @= ^ ^= abs accumulate all and any ap-compose ap-dotimes ap-each ap-each-while ap-filter ap-first ap-if ap-last ap-map ap-map-when ap-pipe ap-reduce ap-reject apply as-> ascii assert assoc bin break butlast callable calling-module-name car case cdr chain chr coll? combinations compile compress cond cons cons? continue count curry cut cycle dec def default-method defclass defmacro defmacro-alias defmacro/g! defmain defmethod defmulti defn defn-alias defnc defnr defreader defseq del delattr delete-route dict-comp dir disassemble dispatch-reader-macro distinct divmod do doto drop drop-last drop-while empty? end-sequence eval eval-and-compile eval-when-compile even? every? except exec filter first flatten float? fn fnc fnr for for* format fraction genexpr gensym get getattr global globals group-by hasattr hash hex id identity if if* if-not if-python2 import in inc input instance? integer integer-char? integer? interleave interpose is is-coll is-cons is-empty is-even is-every is-float is-instance is-integer is-integer-char is-iterable is-iterator is-keyword is-neg is-none is-not is-numeric is-odd is-pos is-string is-symbol is-zero isinstance islice issubclass iter iterable? iterate iterator? keyword keyword? lambda last len let lif lif-not list* list-comp locals loop macro-error macroexpand macroexpand-1 macroexpand-all map max merge-with method-decorator min multi-decorator multicombinations name neg? next none? nonlocal not not-in not? nth numeric? oct odd? open or ord partition permutations pos? post-route postwalk pow prewalk print product profile/calls profile/cpu put-route quasiquote quote raise range read read-str recursive-replace reduce remove repeat repeatedly repr require rest round route route-with-methods rwm second seq set-comp setattr setv some sorted string string? sum switch symbol? take take-nth take-while tee try unless unquote unquote-splicing vars walk when while with with* with-decorator with-gensyms xi xor yield yield-from zero? zip zip-longest | |= ~"},n="a-zA-Z_\\-!.?+*=<>&#'",r="["+n+"]["+n+"0-9/;:]*",i="[-+]?\\d+(\\.\\d+)?",a={className:"meta",begin:"^#!",end:"$"},o={begin:r,relevance:0},s={className:"number",begin:i,relevance:0},l=e.inherit(e.QUOTE_STRING_MODE,{illegal:null}),c=e.COMMENT(";","$",{relevance:0}),d={className:"literal",begin:/\b([Tt]rue|[Ff]alse|nil|None)\b/},u={begin:"[\\[\\{]",end:"[\\]\\}]"},_={className:"comment",begin:"\\^"+r},p=e.COMMENT("\\^\\{","\\}"),f={className:"symbol",begin:"[:]{1,2}"+r},m={begin:"\\(",end:"\\)"},h={endsWithParent:!0,relevance:0},g={keywords:t,lexemes:r,className:"name",begin:r,starts:h},b=[m,l,_,p,c,f,u,s,d,o];return m.contains=[e.COMMENT("comment",""),g,h],h.contains=b,u.contains=b,{aliases:["hylang"],illegal:/\S/,contains:[a,m,l,_,p,c,f,u,s,d]}}},8925:function(e,t,n){var r=n("c6cd"),i=Function.toString;"function"!=typeof r.inspectSource&&(r.inspectSource=function(e){return i.call(e)}),e.exports=r.inspectSource},8931:function(e,t){e.exports=function(e){var t=["functions","model","data","parameters","quantities","transformed","generated"],n=["for","in","if","else","while","break","continue","return"],r=["print","reject","increment_log_prob|10","integrate_ode|10","integrate_ode_rk45|10","integrate_ode_bdf|10","algebra_solver"],i=["int","real","vector","ordered","positive_ordered","simplex","unit_vector","row_vector","matrix","cholesky_factor_corr|10","cholesky_factor_cov|10","corr_matrix|10","cov_matrix|10","void"],a=["Phi","Phi_approx","abs","acos","acosh","algebra_solver","append_array","append_col","append_row","asin","asinh","atan","atan2","atanh","bernoulli_cdf","bernoulli_lccdf","bernoulli_lcdf","bernoulli_logit_lpmf","bernoulli_logit_rng","bernoulli_lpmf","bernoulli_rng","bessel_first_kind","bessel_second_kind","beta_binomial_cdf","beta_binomial_lccdf","beta_binomial_lcdf","beta_binomial_lpmf","beta_binomial_rng","beta_cdf","beta_lccdf","beta_lcdf","beta_lpdf","beta_rng","binary_log_loss","binomial_cdf","binomial_coefficient_log","binomial_lccdf","binomial_lcdf","binomial_logit_lpmf","binomial_lpmf","binomial_rng","block","categorical_logit_lpmf","categorical_logit_rng","categorical_lpmf","categorical_rng","cauchy_cdf","cauchy_lccdf","cauchy_lcdf","cauchy_lpdf","cauchy_rng","cbrt","ceil","chi_square_cdf","chi_square_lccdf","chi_square_lcdf","chi_square_lpdf","chi_square_rng","cholesky_decompose","choose","col","cols","columns_dot_product","columns_dot_self","cos","cosh","cov_exp_quad","crossprod","csr_extract_u","csr_extract_v","csr_extract_w","csr_matrix_times_vector","csr_to_dense_matrix","cumulative_sum","determinant","diag_matrix","diag_post_multiply","diag_pre_multiply","diagonal","digamma","dims","dirichlet_lpdf","dirichlet_rng","distance","dot_product","dot_self","double_exponential_cdf","double_exponential_lccdf","double_exponential_lcdf","double_exponential_lpdf","double_exponential_rng","e","eigenvalues_sym","eigenvectors_sym","erf","erfc","exp","exp2","exp_mod_normal_cdf","exp_mod_normal_lccdf","exp_mod_normal_lcdf","exp_mod_normal_lpdf","exp_mod_normal_rng","expm1","exponential_cdf","exponential_lccdf","exponential_lcdf","exponential_lpdf","exponential_rng","fabs","falling_factorial","fdim","floor","fma","fmax","fmin","fmod","frechet_cdf","frechet_lccdf","frechet_lcdf","frechet_lpdf","frechet_rng","gamma_cdf","gamma_lccdf","gamma_lcdf","gamma_lpdf","gamma_p","gamma_q","gamma_rng","gaussian_dlm_obs_lpdf","get_lp","gumbel_cdf","gumbel_lccdf","gumbel_lcdf","gumbel_lpdf","gumbel_rng","head","hypergeometric_lpmf","hypergeometric_rng","hypot","inc_beta","int_step","integrate_ode","integrate_ode_bdf","integrate_ode_rk45","inv","inv_Phi","inv_chi_square_cdf","inv_chi_square_lccdf","inv_chi_square_lcdf","inv_chi_square_lpdf","inv_chi_square_rng","inv_cloglog","inv_gamma_cdf","inv_gamma_lccdf","inv_gamma_lcdf","inv_gamma_lpdf","inv_gamma_rng","inv_logit","inv_sqrt","inv_square","inv_wishart_lpdf","inv_wishart_rng","inverse","inverse_spd","is_inf","is_nan","lbeta","lchoose","lgamma","lkj_corr_cholesky_lpdf","lkj_corr_cholesky_rng","lkj_corr_lpdf","lkj_corr_rng","lmgamma","lmultiply","log","log10","log1m","log1m_exp","log1m_inv_logit","log1p","log1p_exp","log2","log_determinant","log_diff_exp","log_falling_factorial","log_inv_logit","log_mix","log_rising_factorial","log_softmax","log_sum_exp","logistic_cdf","logistic_lccdf","logistic_lcdf","logistic_lpdf","logistic_rng","logit","lognormal_cdf","lognormal_lccdf","lognormal_lcdf","lognormal_lpdf","lognormal_rng","machine_precision","matrix_exp","max","mdivide_left_spd","mdivide_left_tri_low","mdivide_right_spd","mdivide_right_tri_low","mean","min","modified_bessel_first_kind","modified_bessel_second_kind","multi_gp_cholesky_lpdf","multi_gp_lpdf","multi_normal_cholesky_lpdf","multi_normal_cholesky_rng","multi_normal_lpdf","multi_normal_prec_lpdf","multi_normal_rng","multi_student_t_lpdf","multi_student_t_rng","multinomial_lpmf","multinomial_rng","multiply_log","multiply_lower_tri_self_transpose","neg_binomial_2_cdf","neg_binomial_2_lccdf","neg_binomial_2_lcdf","neg_binomial_2_log_lpmf","neg_binomial_2_log_rng","neg_binomial_2_lpmf","neg_binomial_2_rng","neg_binomial_cdf","neg_binomial_lccdf","neg_binomial_lcdf","neg_binomial_lpmf","neg_binomial_rng","negative_infinity","normal_cdf","normal_lccdf","normal_lcdf","normal_lpdf","normal_rng","not_a_number","num_elements","ordered_logistic_lpmf","ordered_logistic_rng","owens_t","pareto_cdf","pareto_lccdf","pareto_lcdf","pareto_lpdf","pareto_rng","pareto_type_2_cdf","pareto_type_2_lccdf","pareto_type_2_lcdf","pareto_type_2_lpdf","pareto_type_2_rng","pi","poisson_cdf","poisson_lccdf","poisson_lcdf","poisson_log_lpmf","poisson_log_rng","poisson_lpmf","poisson_rng","positive_infinity","pow","print","prod","qr_Q","qr_R","quad_form","quad_form_diag","quad_form_sym","rank","rayleigh_cdf","rayleigh_lccdf","rayleigh_lcdf","rayleigh_lpdf","rayleigh_rng","reject","rep_array","rep_matrix","rep_row_vector","rep_vector","rising_factorial","round","row","rows","rows_dot_product","rows_dot_self","scaled_inv_chi_square_cdf","scaled_inv_chi_square_lccdf","scaled_inv_chi_square_lcdf","scaled_inv_chi_square_lpdf","scaled_inv_chi_square_rng","sd","segment","sin","singular_values","sinh","size","skew_normal_cdf","skew_normal_lccdf","skew_normal_lcdf","skew_normal_lpdf","skew_normal_rng","softmax","sort_asc","sort_desc","sort_indices_asc","sort_indices_desc","sqrt","sqrt2","square","squared_distance","step","student_t_cdf","student_t_lccdf","student_t_lcdf","student_t_lpdf","student_t_rng","sub_col","sub_row","sum","tail","tan","tanh","target","tcrossprod","tgamma","to_array_1d","to_array_2d","to_matrix","to_row_vector","to_vector","trace","trace_gen_quad_form","trace_quad_form","trigamma","trunc","uniform_cdf","uniform_lccdf","uniform_lcdf","uniform_lpdf","uniform_rng","variance","von_mises_lpdf","von_mises_rng","weibull_cdf","weibull_lccdf","weibull_lcdf","weibull_lpdf","weibull_rng","wiener_lpdf","wishart_lpdf","wishart_rng"],o=["bernoulli","bernoulli_logit","beta","beta_binomial","binomial","binomial_logit","categorical","categorical_logit","cauchy","chi_square","dirichlet","double_exponential","exp_mod_normal","exponential","frechet","gamma","gaussian_dlm_obs","gumbel","hypergeometric","inv_chi_square","inv_gamma","inv_wishart","lkj_corr","lkj_corr_cholesky","logistic","lognormal","multi_gp","multi_gp_cholesky","multi_normal","multi_normal_cholesky","multi_normal_prec","multi_student_t","multinomial","neg_binomial","neg_binomial_2","neg_binomial_2_log","normal","ordered_logistic","pareto","pareto_type_2","poisson","poisson_log","rayleigh","scaled_inv_chi_square","skew_normal","student_t","uniform","von_mises","weibull","wiener","wishart"];return{aliases:["stanfuncs"],keywords:{title:t.join(" "),keyword:n.concat(i).concat(r).join(" "),built_in:a.join(" ")},lexemes:e.IDENT_RE,contains:[e.C_LINE_COMMENT_MODE,e.COMMENT(/#/,/$/,{relevance:0,keywords:{"meta-keyword":"include"}}),e.COMMENT(/\/\*/,/\*\//,{relevance:0,contains:[{className:"doctag",begin:/@(return|param)/}]}),{begin:/<\s*lower\s*=/,keywords:"lower"},{begin:/[<,]*upper\s*=/,keywords:"upper"},{className:"keyword",begin:/\btarget\s*\+=/,relevance:10},{begin:"~\\s*("+e.IDENT_RE+")\\s*\\(",keywords:o.join(" ")},{className:"number",variants:[{begin:/\b\d+(?:\.\d*)?(?:[eE][+-]?\d+)?/},{begin:/\.\d+(?:[eE][+-]?\d+)?\b/}],relevance:0},{className:"string",begin:'"',end:'"',relevance:0}]}}},"89e7":function(e,t){e.exports=function(e){return{aliases:["vb"],case_insensitive:!0,keywords:{keyword:"addhandler addressof alias and andalso aggregate ansi as async assembly auto await binary by byref byval call case catch class compare const continue custom declare default delegate dim distinct do each equals else elseif end enum erase error event exit explicit finally for friend from function get global goto group handles if implements imports in inherits interface into is isfalse isnot istrue iterator join key let lib like loop me mid mod module mustinherit mustoverride mybase myclass nameof namespace narrowing new next not notinheritable notoverridable of off on operator option optional or order orelse overloads overridable overrides paramarray partial preserve private property protected public raiseevent readonly redim rem removehandler resume return select set shadows shared skip static step stop structure strict sub synclock take text then throw to try unicode until using when where while widening with withevents writeonly xor yield",built_in:"boolean byte cbool cbyte cchar cdate cdec cdbl char cint clng cobj csbyte cshort csng cstr ctype date decimal directcast double gettype getxmlnamespace iif integer long object sbyte short single string trycast typeof uinteger ulong ushort",literal:"true false nothing"},illegal:"//|{|}|endif|gosub|variant|wend|^\\$ ",contains:[e.inherit(e.QUOTE_STRING_MODE,{contains:[{begin:'""'}]}),e.COMMENT("'","$",{returnBegin:!0,contains:[{className:"doctag",begin:"'''|\x3c!--|--\x3e",contains:[e.PHRASAL_WORDS_MODE]},{className:"doctag",begin:"",contains:[e.PHRASAL_WORDS_MODE]}]}),e.C_NUMBER_MODE,{className:"meta",begin:"#",end:"$",keywords:{"meta-keyword":"if else elseif end region externalsource"}}]}}},"8a86":function(e,t){e.exports=function(e){return{aliases:["bind","zone"],keywords:{keyword:"IN A AAAA AFSDB APL CAA CDNSKEY CDS CERT CNAME DHCID DLV DNAME DNSKEY DS HIP IPSECKEY KEY KX LOC MX NAPTR NS NSEC NSEC3 NSEC3PARAM PTR RRSIG RP SIG SOA SRV SSHFP TA TKEY TLSA TSIG TXT"},contains:[e.COMMENT(";","$",{relevance:0}),{className:"meta",begin:/^\$(TTL|GENERATE|INCLUDE|ORIGIN)\b/},{className:"number",begin:"((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:)))\\b"},{className:"number",begin:"((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]).){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\b"},e.inherit(e.NUMBER_MODE,{begin:/\b\d+[dhwm]?/})]}}},"8aba":function(e,t){e.exports=function(e){return{keywords:{keyword:"BILL_PERIOD BILL_START BILL_STOP RS_EFFECTIVE_START RS_EFFECTIVE_STOP RS_JURIS_CODE RS_OPCO_CODE INTDADDATTRIBUTE|5 INTDADDVMSG|5 INTDBLOCKOP|5 INTDBLOCKOPNA|5 INTDCLOSE|5 INTDCOUNT|5 INTDCOUNTSTATUSCODE|5 INTDCREATEMASK|5 INTDCREATEDAYMASK|5 INTDCREATEFACTORMASK|5 INTDCREATEHANDLE|5 INTDCREATEOVERRIDEDAYMASK|5 INTDCREATEOVERRIDEMASK|5 INTDCREATESTATUSCODEMASK|5 INTDCREATETOUPERIOD|5 INTDDELETE|5 INTDDIPTEST|5 INTDEXPORT|5 INTDGETERRORCODE|5 INTDGETERRORMESSAGE|5 INTDISEQUAL|5 INTDJOIN|5 INTDLOAD|5 INTDLOADACTUALCUT|5 INTDLOADDATES|5 INTDLOADHIST|5 INTDLOADLIST|5 INTDLOADLISTDATES|5 INTDLOADLISTENERGY|5 INTDLOADLISTHIST|5 INTDLOADRELATEDCHANNEL|5 INTDLOADSP|5 INTDLOADSTAGING|5 INTDLOADUOM|5 INTDLOADUOMDATES|5 INTDLOADUOMHIST|5 INTDLOADVERSION|5 INTDOPEN|5 INTDREADFIRST|5 INTDREADNEXT|5 INTDRECCOUNT|5 INTDRELEASE|5 INTDREPLACE|5 INTDROLLAVG|5 INTDROLLPEAK|5 INTDSCALAROP|5 INTDSCALE|5 INTDSETATTRIBUTE|5 INTDSETDSTPARTICIPANT|5 INTDSETSTRING|5 INTDSETVALUE|5 INTDSETVALUESTATUS|5 INTDSHIFTSTARTTIME|5 INTDSMOOTH|5 INTDSORT|5 INTDSPIKETEST|5 INTDSUBSET|5 INTDTOU|5 INTDTOURELEASE|5 INTDTOUVALUE|5 INTDUPDATESTATS|5 INTDVALUE|5 STDEV INTDDELETEEX|5 INTDLOADEXACTUAL|5 INTDLOADEXCUT|5 INTDLOADEXDATES|5 INTDLOADEX|5 INTDLOADEXRELATEDCHANNEL|5 INTDSAVEEX|5 MVLOAD|5 MVLOADACCT|5 MVLOADACCTDATES|5 MVLOADACCTHIST|5 MVLOADDATES|5 MVLOADHIST|5 MVLOADLIST|5 MVLOADLISTDATES|5 MVLOADLISTHIST|5 IF FOR NEXT DONE SELECT END CALL ABORT CLEAR CHANNEL FACTOR LIST NUMBER OVERRIDE SET WEEK DISTRIBUTIONNODE ELSE WHEN THEN OTHERWISE IENUM CSV INCLUDE LEAVE RIDER SAVE DELETE NOVALUE SECTION WARN SAVE_UPDATE DETERMINANT LABEL REPORT REVENUE EACH IN FROM TOTAL CHARGE BLOCK AND OR CSV_FILE RATE_CODE AUXILIARY_DEMAND UIDACCOUNT RS BILL_PERIOD_SELECT HOURS_PER_MONTH INTD_ERROR_STOP SEASON_SCHEDULE_NAME ACCOUNTFACTOR ARRAYUPPERBOUND CALLSTOREDPROC GETADOCONNECTION GETCONNECT GETDATASOURCE GETQUALIFIER GETUSERID HASVALUE LISTCOUNT LISTOP LISTUPDATE LISTVALUE PRORATEFACTOR RSPRORATE SETBINPATH SETDBMONITOR WQ_OPEN BILLINGHOURS DATE DATEFROMFLOAT DATETIMEFROMSTRING DATETIMETOSTRING DATETOFLOAT DAY DAYDIFF DAYNAME DBDATETIME HOUR MINUTE MONTH MONTHDIFF MONTHHOURS MONTHNAME ROUNDDATE SAMEWEEKDAYLASTYEAR SECOND WEEKDAY WEEKDIFF YEAR YEARDAY YEARSTR COMPSUM HISTCOUNT HISTMAX HISTMIN HISTMINNZ HISTVALUE MAXNRANGE MAXRANGE MINRANGE COMPIKVA COMPKVA COMPKVARFROMKQKW COMPLF IDATTR FLAG LF2KW LF2KWH MAXKW POWERFACTOR READING2USAGE AVGSEASON MAXSEASON MONTHLYMERGE SEASONVALUE SUMSEASON ACCTREADDATES ACCTTABLELOAD CONFIGADD CONFIGGET CREATEOBJECT CREATEREPORT EMAILCLIENT EXPBLKMDMUSAGE EXPMDMUSAGE EXPORT_USAGE FACTORINEFFECT GETUSERSPECIFIEDSTOP INEFFECT ISHOLIDAY RUNRATE SAVE_PROFILE SETREPORTTITLE USEREXIT WATFORRUNRATE TO TABLE ACOS ASIN ATAN ATAN2 BITAND CEIL COS COSECANT COSH COTANGENT DIVQUOT DIVREM EXP FABS FLOOR FMOD FREPM FREXPN LOG LOG10 MAX MAXN MIN MINNZ MODF POW ROUND ROUND2VALUE ROUNDINT SECANT SIN SINH SQROOT TAN TANH FLOAT2STRING FLOAT2STRINGNC INSTR LEFT LEN LTRIM MID RIGHT RTRIM STRING STRINGNC TOLOWER TOUPPER TRIM NUMDAYS READ_DATE STAGING",built_in:"IDENTIFIER OPTIONS XML_ELEMENT XML_OP XML_ELEMENT_OF DOMDOCCREATE DOMDOCLOADFILE DOMDOCLOADXML DOMDOCSAVEFILE DOMDOCGETROOT DOMDOCADDPI DOMNODEGETNAME DOMNODEGETTYPE DOMNODEGETVALUE DOMNODEGETCHILDCT DOMNODEGETFIRSTCHILD DOMNODEGETSIBLING DOMNODECREATECHILDELEMENT DOMNODESETATTRIBUTE DOMNODEGETCHILDELEMENTCT DOMNODEGETFIRSTCHILDELEMENT DOMNODEGETSIBLINGELEMENT DOMNODEGETATTRIBUTECT DOMNODEGETATTRIBUTEI DOMNODEGETATTRIBUTEBYNAME DOMNODEGETBYNAME"},contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.C_NUMBER_MODE,{className:"literal",variants:[{begin:"#\\s+[a-zA-Z\\ \\.]*",relevance:0},{begin:"#[a-zA-Z\\ \\.]+"}]}]}}},"8baf":function(e,t,n){"use strict";(function(e){ /** @license * * jsPDF - PDF Document creation from JavaScript @@ -101,7 +106,7 @@ var r=function(){return"undefined"!=typeof window?window:"undefined"!=typeof e?e * @author Stoyan Stefanov * {@link http://www.phpied.com/rgb-color-parser-in-javascript/} * @license Use it if you like it - */function _(e){var t;e=e||"",this.ok=!1,"#"==e.charAt(0)&&(e=e.substr(1,6)),e={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"00ffff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000000",blanchedalmond:"ffebcd",blue:"0000ff",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"00ffff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dodgerblue:"1e90ff",feldspar:"d19275",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"ff00ff",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgrey:"d3d3d3",lightgreen:"90ee90",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslateblue:"8470ff",lightslategray:"778899",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"00ff00",limegreen:"32cd32",linen:"faf0e6",magenta:"ff00ff",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370d8",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"d87093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",red:"ff0000",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",violetred:"d02090",wheat:"f5deb3",white:"ffffff",whitesmoke:"f5f5f5",yellow:"ffff00",yellowgreen:"9acd32"}[e=(e=e.replace(/ /g,"")).toLowerCase()]||e;for(var n=[{re:/^rgb\((\d{1,3}),\s*(\d{1,3}),\s*(\d{1,3})\)$/,example:["rgb(123, 234, 45)","rgb(255,234,245)"],process:function(e){return[parseInt(e[1]),parseInt(e[2]),parseInt(e[3])]}},{re:/^(\w{2})(\w{2})(\w{2})$/,example:["#00ff00","336699"],process:function(e){return[parseInt(e[1],16),parseInt(e[2],16),parseInt(e[3],16)]}},{re:/^(\w{1})(\w{1})(\w{1})$/,example:["#fb0","f0f"],process:function(e){return[parseInt(e[1]+e[1],16),parseInt(e[2]+e[2],16),parseInt(e[3]+e[3],16)]}}],r=0;r255?255:this.r,this.g=this.g<0||isNaN(this.g)?0:this.g>255?255:this.g,this.b=this.b<0||isNaN(this.b)?0:this.b>255?255:this.b,this.toRGB=function(){return"rgb("+this.r+", "+this.g+", "+this.b+")"},this.toHex=function(){var e=this.r.toString(16),t=this.g.toString(16),n=this.b.toString(16);return 1==e.length&&(e="0"+e),1==t.length&&(t="0"+t),1==n.length&&(n="0"+n),"#"+e+t+n}}function p(e){if("object"!=typeof e)throw new Error("Invalid Context passed to initialize PubSub (jsPDF-module)");var t={};this.subscribe=function(e,n,r){if(r=r||!1,"string"!=typeof e||"function"!=typeof n||"boolean"!=typeof r)throw new Error("Invalid arguments passed to PubSub.subscribe (jsPDF-module)");t.hasOwnProperty(e)||(t[e]={});var i=Math.random().toString(35);return t[e][i]=[n,!!r],i},this.unsubscribe=function(e){for(var n in t)if(t[n][e])return delete t[n][e],0===Object.keys(t[n]).length&&delete t[n],!0;return!1},this.publish=function(n){if(t.hasOwnProperty(n)){var i=Array.prototype.slice.call(arguments,1),o=[];for(var s in t[n]){var l=t[n][s];try{l[0].apply(e,i)}catch(e){r.console&&a.error("jsPDF PubSub Error",e.message,e)}l[1]&&o.push(s)}o.length&&o.forEach(this.unsubscribe)}},this.getTopics=function(){return t}}function f(e){if(!(this instanceof f))return new f(e);var t="opacity,stroke-opacity".split(",");for(var n in e)e.hasOwnProperty(n)&&t.indexOf(n)>=0&&(this[n]=e[n]);this.id="",this.objectNumber=-1}function m(e,t){this.gState=e,this.matrix=t,this.id="",this.objectNumber=-1}function h(e,t,n,r,i){if(!(this instanceof h))return new h(e,t,n,r,i);this.type="axial"===e?2:3,this.coords=t,this.colors=n,m.call(this,r,i)}function g(e,t,n,r,i){if(!(this instanceof g))return new g(e,t,n,r,i);this.boundingBox=e,this.xStep=t,this.yStep=n,this.stream="",this.cloneIndex=0,m.call(this,r,i)}function E(e){var t,n="string"==typeof arguments[0]?arguments[0]:"p",i=arguments[1],o=arguments[2],s=arguments[3],l=[],c=1,m=16,S="S";"object"==typeof(e=e||{})&&(n=e.orientation,i=e.unit||i,o=e.format||o,s=e.compress||e.compressPdf||s,c="number"==typeof e.userUnit?Math.abs(e.userUnit):1,void 0!==e.precision&&(t=e.precision),void 0!==e.floatPrecision&&(m=e.floatPrecision),S=e.defaultPathOperation||"S"),l=e.filters||(!0===s?["FlateEncode"]:l),i=i||"mm",n=(""+(n||"P")).toLowerCase();var b=e.putOnlyUsedFonts||!1,v={},y={internal:{},__private__:{}};y.__private__.PubSub=p;var T="1.3",C=y.__private__.getPdfVersion=function(){return T};y.__private__.setPdfVersion=function(e){T=e};var N={a0:[2383.94,3370.39],a1:[1683.78,2383.94],a2:[1190.55,1683.78],a3:[841.89,1190.55],a4:[595.28,841.89],a5:[419.53,595.28],a6:[297.64,419.53],a7:[209.76,297.64],a8:[147.4,209.76],a9:[104.88,147.4],a10:[73.7,104.88],b0:[2834.65,4008.19],b1:[2004.09,2834.65],b2:[1417.32,2004.09],b3:[1000.63,1417.32],b4:[708.66,1000.63],b5:[498.9,708.66],b6:[354.33,498.9],b7:[249.45,354.33],b8:[175.75,249.45],b9:[124.72,175.75],b10:[87.87,124.72],c0:[2599.37,3676.54],c1:[1836.85,2599.37],c2:[1298.27,1836.85],c3:[918.43,1298.27],c4:[649.13,918.43],c5:[459.21,649.13],c6:[323.15,459.21],c7:[229.61,323.15],c8:[161.57,229.61],c9:[113.39,161.57],c10:[79.37,113.39],dl:[311.81,623.62],letter:[612,792],"government-letter":[576,756],legal:[612,1008],"junior-legal":[576,360],ledger:[1224,792],tabloid:[792,1224],"credit-card":[153,243]};y.__private__.getPageFormats=function(){return N};var O=y.__private__.getPageFormat=function(e){return N[e]};o=o||"a4";var R={COMPAT:"compat",ADVANCED:"advanced"},A=R.COMPAT;function w(){this.saveGraphicsState(),oe(new Ge(ve,0,0,-ve,0,Mn()*ve).toString()+" cm"),this.setFontSize(this.getFontSize()/ve),S="n",A=R.ADVANCED}function I(){this.restoreGraphicsState(),S="S",A=R.COMPAT}y.advancedAPI=function(e){var t=A===R.COMPAT;return t&&w.call(this),"function"!=typeof e||(e(this),t&&I.call(this)),this},y.compatAPI=function(e){var t=A===R.ADVANCED;return t&&I.call(this),"function"!=typeof e||(e(this),t&&w.call(this)),this},y.isAdvancedAPI=function(){return A===R.ADVANCED};var M,x=function(e){if(A!==R.ADVANCED)throw new Error(e+" is only available in 'advanced' API mode. You need to call advancedAPI() first.")},D=y.roundToPrecision=y.__private__.roundToPrecision=function(e,n){var r=t||n;if(isNaN(e)||isNaN(r))throw new Error("Invalid argument passed to jsPDF.roundToPrecision");return e.toFixed(r).replace(/0+$/,"")};M=y.hpf=y.__private__.hpf="number"==typeof m?function(e){if(isNaN(e))throw new Error("Invalid argument passed to jsPDF.hpf");return D(e,m)}:"smart"===m?function(e){if(isNaN(e))throw new Error("Invalid argument passed to jsPDF.hpf");return D(e,e>-1&&e<1?16:5)}:function(e){if(isNaN(e))throw new Error("Invalid argument passed to jsPDF.hpf");return D(e,16)};var L=y.f2=y.__private__.f2=function(e){if(isNaN(e))throw new Error("Invalid argument passed to jsPDF.f2");return D(e,2)},P=y.__private__.f3=function(e){if(isNaN(e))throw new Error("Invalid argument passed to jsPDF.f3");return D(e,3)},k=y.scale=y.__private__.scale=function(e){if(isNaN(e))throw new Error("Invalid argument passed to jsPDF.scale");return A===R.COMPAT?e*ve:A===R.ADVANCED?e:void 0},F=function(e){return A===R.COMPAT?Mn()-e:A===R.ADVANCED?e:void 0},U=function(e){return k(F(e))};y.__private__.setPrecision=y.setPrecision=function(e){"number"==typeof parseInt(e,10)&&(t=parseInt(e,10))};var B,G="00000000000000000000000000000000",Y=y.__private__.getFileId=function(){return G},j=y.__private__.setFileId=function(e){return G=void 0!==e&&/^[a-fA-F0-9]{32}$/.test(e)?e.toUpperCase():G.split("").map((function(){return"ABCDEF0123456789".charAt(Math.floor(16*Math.random()))})).join("")};y.setFileId=function(e){return j(e),this},y.getFileId=function(){return Y()};var q=y.__private__.convertDateToPDFDate=function(e){var t=e.getTimezoneOffset(),n=t<0?"+":"-",r=Math.floor(Math.abs(t/60)),i=Math.abs(t%60),a=[n,W(r),"'",W(i),"'"].join("");return["D:",e.getFullYear(),W(e.getMonth()+1),W(e.getDate()),W(e.getHours()),W(e.getMinutes()),W(e.getSeconds()),a].join("")},H=y.__private__.convertPDFDateToDate=function(e){var t=parseInt(e.substr(2,4),10),n=parseInt(e.substr(6,2),10)-1,r=parseInt(e.substr(8,2),10),i=parseInt(e.substr(10,2),10),a=parseInt(e.substr(12,2),10),o=parseInt(e.substr(14,2),10);return new Date(t,n,r,i,a,o,0)},V=y.__private__.setCreationDate=function(e){var t;if(void 0===e&&(e=new Date),e instanceof Date)t=q(e);else{if(!/^D:(20[0-2][0-9]|203[0-7]|19[7-9][0-9])(0[0-9]|1[0-2])([0-2][0-9]|3[0-1])(0[0-9]|1[0-9]|2[0-3])(0[0-9]|[1-5][0-9])(0[0-9]|[1-5][0-9])(\+0[0-9]|\+1[0-4]|-0[0-9]|-1[0-1])'(0[0-9]|[1-5][0-9])'?$/.test(e))throw new Error("Invalid argument passed to jsPDF.setCreationDate");t=e}return B=t},$=y.__private__.getCreationDate=function(e){var t=B;return"jsDate"===e&&(t=H(B)),t};y.setCreationDate=function(e){return V(e),this},y.getCreationDate=function(e){return $(e)};var z,W=y.__private__.padd2=function(e){return("0"+parseInt(e)).slice(-2)},Q=y.__private__.padd2Hex=function(e){return("00"+(e=e.toString())).substr(e.length)},K=0,X=[],Z=[],J=0,ee=[],te=[],ne=!1,re=Z,ie=function(){K=0,J=0,Z=[],X=[],ee=[],We=Ve(),Qe=Ve()};y.__private__.setCustomOutputDestination=function(e){ne=!0,re=e};var ae=function(e){ne||(re=e)};y.__private__.resetCustomOutputDestination=function(){ne=!1,re=Z};var oe=y.__private__.out=function(e){return e=e.toString(),J+=e.length+1,re.push(e),re},se=y.__private__.write=function(e){return oe(1===arguments.length?e.toString():Array.prototype.join.call(arguments," "))},le=y.__private__.getArrayBuffer=function(e){for(var t=e.length,n=new ArrayBuffer(t),r=new Uint8Array(n);t--;)r[t]=e.charCodeAt(t);return n},ce=[["Helvetica","helvetica","normal","WinAnsiEncoding"],["Helvetica-Bold","helvetica","bold","WinAnsiEncoding"],["Helvetica-Oblique","helvetica","italic","WinAnsiEncoding"],["Helvetica-BoldOblique","helvetica","bolditalic","WinAnsiEncoding"],["Courier","courier","normal","WinAnsiEncoding"],["Courier-Bold","courier","bold","WinAnsiEncoding"],["Courier-Oblique","courier","italic","WinAnsiEncoding"],["Courier-BoldOblique","courier","bolditalic","WinAnsiEncoding"],["Times-Roman","times","normal","WinAnsiEncoding"],["Times-Bold","times","bold","WinAnsiEncoding"],["Times-Italic","times","italic","WinAnsiEncoding"],["Times-BoldItalic","times","bolditalic","WinAnsiEncoding"],["ZapfDingbats","zapfdingbats","normal",null],["Symbol","symbol","normal",null]];y.__private__.getStandardFonts=function(){return ce};var de=e.fontSize||16;y.__private__.setFontSize=y.setFontSize=function(e){return de=A===R.ADVANCED?e/ve:e,this};var ue,_e=y.__private__.getFontSize=y.getFontSize=function(){return A===R.COMPAT?de:de*ve},pe=e.R2L||!1;y.__private__.setR2L=y.setR2L=function(e){return pe=e,this},y.__private__.getR2L=y.getR2L=function(){return pe};var fe,me=y.__private__.setZoomMode=function(e){var t=[void 0,null,"fullwidth","fullheight","fullpage","original"];if(/^\d*\.?\d*%$/.test(e))ue=e;else if(isNaN(e)){if(-1===t.indexOf(e))throw new Error('zoom must be Integer (e.g. 2), a percentage Value (e.g. 300%) or fullwidth, fullheight, fullpage, original. "'+e+'" is not recognized.');ue=e}else ue=parseInt(e,10)};y.__private__.getZoomMode=function(){return ue};var he,ge=y.__private__.setPageMode=function(e){if(-1==[void 0,null,"UseNone","UseOutlines","UseThumbs","FullScreen"].indexOf(e))throw new Error('Page mode must be one of UseNone, UseOutlines, UseThumbs, or FullScreen. "'+e+'" is not recognized.');fe=e};y.__private__.getPageMode=function(){return fe};var Ee=y.__private__.setLayoutMode=function(e){if(-1==[void 0,null,"continuous","single","twoleft","tworight","two"].indexOf(e))throw new Error('Layout mode must be one of continuous, single, twoleft, tworight. "'+e+'" is not recognized.');he=e};y.__private__.getLayoutMode=function(){return he},y.__private__.setDisplayMode=y.setDisplayMode=function(e,t,n){return me(e),Ee(t),ge(n),this};var Se={title:"",subject:"",author:"",keywords:"",creator:""};y.__private__.getDocumentProperty=function(e){if(-1===Object.keys(Se).indexOf(e))throw new Error("Invalid argument passed to jsPDF.getDocumentProperty");return Se[e]},y.__private__.getDocumentProperties=function(){return Se},y.__private__.setDocumentProperties=y.setProperties=y.setDocumentProperties=function(e){for(var t in Se)Se.hasOwnProperty(t)&&e[t]&&(Se[t]=e[t]);return this},y.__private__.setDocumentProperty=function(e,t){if(-1===Object.keys(Se).indexOf(e))throw new Error("Invalid arguments passed to jsPDF.setDocumentProperty");return Se[e]=t};var be,ve,ye,Te,Ce,Ne={},Oe={},Re=[],Ae={},we={},Ie={},Me={},xe=null,De=0,Le=[],Pe=new p(y),ke=e.hotfixes||[],Fe={},Ue={},Be=[],Ge=function(e,t,n,r,i,a){if(!(this instanceof Ge))return new Ge(e,t,n,r,i,a);isNaN(e)&&(e=1),isNaN(t)&&(t=0),isNaN(n)&&(n=0),isNaN(r)&&(r=1),isNaN(i)&&(i=0),isNaN(a)&&(a=0),this._matrix=[e,t,n,r,i,a]};Object.defineProperty(Ge.prototype,"sx",{get:function(){return this._matrix[0]},set:function(e){this._matrix[0]=e}}),Object.defineProperty(Ge.prototype,"shy",{get:function(){return this._matrix[1]},set:function(e){this._matrix[1]=e}}),Object.defineProperty(Ge.prototype,"shx",{get:function(){return this._matrix[2]},set:function(e){this._matrix[2]=e}}),Object.defineProperty(Ge.prototype,"sy",{get:function(){return this._matrix[3]},set:function(e){this._matrix[3]=e}}),Object.defineProperty(Ge.prototype,"tx",{get:function(){return this._matrix[4]},set:function(e){this._matrix[4]=e}}),Object.defineProperty(Ge.prototype,"ty",{get:function(){return this._matrix[5]},set:function(e){this._matrix[5]=e}}),Object.defineProperty(Ge.prototype,"a",{get:function(){return this._matrix[0]},set:function(e){this._matrix[0]=e}}),Object.defineProperty(Ge.prototype,"b",{get:function(){return this._matrix[1]},set:function(e){this._matrix[1]=e}}),Object.defineProperty(Ge.prototype,"c",{get:function(){return this._matrix[2]},set:function(e){this._matrix[2]=e}}),Object.defineProperty(Ge.prototype,"d",{get:function(){return this._matrix[3]},set:function(e){this._matrix[3]=e}}),Object.defineProperty(Ge.prototype,"e",{get:function(){return this._matrix[4]},set:function(e){this._matrix[4]=e}}),Object.defineProperty(Ge.prototype,"f",{get:function(){return this._matrix[5]},set:function(e){this._matrix[5]=e}}),Object.defineProperty(Ge.prototype,"rotation",{get:function(){return Math.atan2(this.shx,this.sx)}}),Object.defineProperty(Ge.prototype,"scaleX",{get:function(){return this.decompose().scale.sx}}),Object.defineProperty(Ge.prototype,"scaleY",{get:function(){return this.decompose().scale.sy}}),Object.defineProperty(Ge.prototype,"isIdentity",{get:function(){return 1===this.sx&&0===this.shy&&0===this.shx&&1===this.sy&&0===this.tx&&0===this.ty}}),Ge.prototype.join=function(e){return[this.sx,this.shy,this.shx,this.sy,this.tx,this.ty].map(M).join(e)},Ge.prototype.multiply=function(e){var t=e.sx*this.sx+e.shy*this.shx,n=e.sx*this.shy+e.shy*this.sy,r=e.shx*this.sx+e.sy*this.shx,i=e.shx*this.shy+e.sy*this.sy,a=e.tx*this.sx+e.ty*this.shx+this.tx,o=e.tx*this.shy+e.ty*this.sy+this.ty;return new Ge(t,n,r,i,a,o)},Ge.prototype.decompose=function(){var e=this.sx,t=this.shy,n=this.shx,r=this.sy,i=this.tx,a=this.ty,o=Math.sqrt(e*e+t*t),s=(e/=o)*n+(t/=o)*r;n-=e*s,r-=t*s;var l=Math.sqrt(n*n+r*r);return s/=l,e*(r/=l)>16&255,r=l>>8&255,i=255&l}if(void 0===r||void 0===a&&n===r&&r===i)if("string"==typeof n)t=n+" "+o[0];else switch(e.precision){case 2:t=L(n/255)+" "+o[0];break;case 3:default:t=P(n/255)+" "+o[0]}else if(void 0===a||"object"==typeof a){if(a&&!isNaN(a.a)&&0===a.a)return["1.","1.","1.",o[1]].join(" ");if("string"==typeof n)t=[n,r,i,o[1]].join(" ");else switch(e.precision){case 2:t=[L(n/255),L(r/255),L(i/255),o[1]].join(" ");break;default:case 3:t=[P(n/255),P(r/255),P(i/255),o[1]].join(" ")}}else if("string"==typeof n)t=[n,r,i,a,o[2]].join(" ");else switch(e.precision){case 2:t=[L(n),L(r),L(i),L(a),o[2]].join(" ");break;case 3:default:t=[P(n),P(r),P(i),P(a),o[2]].join(" ")}return t},Ze=y.__private__.getFilters=function(){return l},Je=y.__private__.putStream=function(e){var t=(e=e||{}).data||"",n=e.filters||Ze(),r=e.alreadyAppliedFilters||[],i=e.addLength1||!1,a=t.length,o={};!0===n&&(n=["FlateEncode"]);var s=e.additionalKeyValues||[],l=(o=void 0!==E.API.processDataByFilters?E.API.processDataByFilters(t,n):{data:t,reverseChain:[]}).reverseChain+(Array.isArray(r)?r.join(" "):r.toString());if(0!==o.data.length&&(s.push({key:"Length",value:o.data.length}),!0===i&&s.push({key:"Length1",value:a})),0!=l.length)if(l.split("/").length-1==1)s.push({key:"Filter",value:l});else{s.push({key:"Filter",value:"["+l+"]"});for(var c=0;c>"),0!==o.data.length&&(oe("stream"),oe(o.data),oe("endstream"))},et=y.__private__.putPage=function(e){var t=e.number,n=e.data,r=e.objId,i=e.contentsObjId;$e(r,!0),oe("<>"),oe("endobj");var a=n.join("\n");return A===R.ADVANCED&&(a+="\nQ"),$e(i,!0),Je({data:a,filters:Ze()}),oe("endobj"),r},tt=y.__private__.putPages=function(){var e,t,n=[];for(e=1;e<=De;e++)Le[e].objId=Ve(),Le[e].contentsObjId=Ve();for(e=1;e<=De;e++)n.push(et({number:e,data:te[e],objId:Le[e].objId,contentsObjId:Le[e].contentsObjId,mediaBox:Le[e].mediaBox,cropBox:Le[e].cropBox,bleedBox:Le[e].bleedBox,trimBox:Le[e].trimBox,artBox:Le[e].artBox,userUnit:Le[e].userUnit,rootDictionaryObjId:We,resourceDictionaryObjId:Qe}));$e(We,!0),oe("<>"),oe("endobj"),Pe.publish("postPutPages")},nt=function(e){var t=function(e,t){return-1!==e.indexOf(" ")?"("+Nt(e,t)+")":Nt(e,t)};Pe.publish("putFont",{font:e,out:oe,newObject:He,putStream:Je,pdfEscapeWithNeededParanthesis:t}),!0!==e.isAlreadyPutted&&(e.objectNumber=He(),oe("<<"),oe("/Type /Font"),oe("/BaseFont /"+t(e.postScriptName)),oe("/Subtype /Type1"),"string"==typeof e.encoding&&oe("/Encoding /"+e.encoding),oe("/FirstChar 32"),oe("/LastChar 255"),oe(">>"),oe("endobj"))},rt=function(){for(var e in Ne)Ne.hasOwnProperty(e)&&(!1===b||!0===b&&v.hasOwnProperty(e))&&nt(Ne[e])},it=function(e){e.objectNumber=He();var t=[];t.push({key:"Type",value:"/XObject"}),t.push({key:"Subtype",value:"/Form"}),t.push({key:"BBox",value:"["+[M(e.x),M(e.y),M(e.x+e.width),M(e.y+e.height)].join(" ")+"]"}),t.push({key:"Matrix",value:"["+e.matrix.toString()+"]"});var n=e.pages[1].join("\n");Je({data:n,additionalKeyValues:t}),oe("endobj")},at=function(){for(var e in Fe)Fe.hasOwnProperty(e)&&it(Fe[e])},ot=function(e,t){var n,r=[],i=1/(t-1);for(n=0;n<1;n+=i)r.push(n);if(r.push(1),0!=e[0].offset){var a={offset:0,color:e[0].color};e.unshift(a)}if(1!=e[e.length-1].offset){var o={offset:1,color:e[e.length-1].color};e.push(o)}for(var s="",l=0,c=0;ce[l+1].offset;)l++;var d=e[l].offset,u=(n-d)/(e[l+1].offset-d),_=e[l].color,p=e[l+1].color;s+=Q(Math.round((1-u)*_[0]+u*p[0]).toString(16))+Q(Math.round((1-u)*_[1]+u*p[1]).toString(16))+Q(Math.round((1-u)*_[2]+u*p[2]).toString(16))}return s.trim()},st=function(e,t){t||(t=21);var n=He(),r=ot(e.colors,t),i=[];i.push({key:"FunctionType",value:"0"}),i.push({key:"Domain",value:"[0.0 1.0]"}),i.push({key:"Size",value:"["+t+"]"}),i.push({key:"BitsPerSample",value:"8"}),i.push({key:"Range",value:"[0.0 1.0 0.0 1.0 0.0 1.0]"}),i.push({key:"Decode",value:"[0.0 1.0 0.0 1.0 0.0 1.0]"}),Je({data:r,additionalKeyValues:i,alreadyAppliedFilters:["/ASCIIHexDecode"]}),oe("endobj"),e.objectNumber=He(),oe("<< /ShadingType "+e.type),oe("/ColorSpace /DeviceRGB");var a="/Coords ["+M(parseFloat(e.coords[0]))+" "+M(parseFloat(e.coords[1]))+" ";2===e.type?a+=M(parseFloat(e.coords[2]))+" "+M(parseFloat(e.coords[3])):a+=M(parseFloat(e.coords[2]))+" "+M(parseFloat(e.coords[3]))+" "+M(parseFloat(e.coords[4]))+" "+M(parseFloat(e.coords[5])),oe(a+="]"),e.matrix&&oe("/Matrix ["+e.matrix.toString()+"]"),oe("/Function "+n+" 0 R"),oe("/Extend [true true]"),oe(">>"),oe("endobj")},lt=function(e,t){var n=Ve(),r=He();t.push({resourcesOid:n,objectOid:r}),e.objectNumber=r;var i=[];i.push({key:"Type",value:"/Pattern"}),i.push({key:"PatternType",value:"1"}),i.push({key:"PaintType",value:"1"}),i.push({key:"TilingType",value:"1"}),i.push({key:"BBox",value:"["+e.boundingBox.map(M).join(" ")+"]"}),i.push({key:"XStep",value:M(e.xStep)}),i.push({key:"YStep",value:M(e.yStep)}),i.push({key:"Resources",value:n+" 0 R"}),e.matrix&&i.push({key:"Matrix",value:"["+e.matrix.toString()+"]"}),Je({data:e.stream,additionalKeyValues:i}),oe("endobj")},ct=function(e){var t;for(t in Ae)Ae.hasOwnProperty(t)&&(Ae[t]instanceof h?st(Ae[t]):Ae[t]instanceof g&<(Ae[t],e))},dt=function(e){for(var t in e.objectNumber=He(),oe("<<"),e)switch(t){case"opacity":oe("/ca "+L(e[t]));break;case"stroke-opacity":oe("/CA "+L(e[t]))}oe(">>"),oe("endobj")},ut=function(){var e;for(e in Ie)Ie.hasOwnProperty(e)&&dt(Ie[e])},_t=function(){for(var e in oe("/XObject <<"),Fe)Fe.hasOwnProperty(e)&&Fe[e].objectNumber>=0&&oe("/"+e+" "+Fe[e].objectNumber+" 0 R");Pe.publish("putXobjectDict"),oe(">>")},pt=function(){for(var e in oe("/Font <<"),Ne)Ne.hasOwnProperty(e)&&(!1===b||!0===b&&v.hasOwnProperty(e))&&oe("/"+e+" "+Ne[e].objectNumber+" 0 R");oe(">>")},ft=function(){if(Object.keys(Ae).length>0){for(var e in oe("/Shading <<"),Ae)Ae.hasOwnProperty(e)&&Ae[e]instanceof h&&Ae[e].objectNumber>=0&&oe("/"+e+" "+Ae[e].objectNumber+" 0 R");Pe.publish("putShadingPatternDict"),oe(">>")}},mt=function(e){if(Object.keys(Ae).length>0){for(var t in oe("/Pattern <<"),Ae)Ae.hasOwnProperty(t)&&Ae[t]instanceof y.TilingPattern&&Ae[t].objectNumber>=0&&Ae[t].objectNumber>")}},ht=function(){if(Object.keys(Ie).length>0){var e;for(e in oe("/ExtGState <<"),Ie)Ie.hasOwnProperty(e)&&Ie[e].objectNumber>=0&&oe("/"+e+" "+Ie[e].objectNumber+" 0 R");Pe.publish("putGStateDict"),oe(">>")}},gt=function(e){$e(e.resourcesOid,!0),oe("<<"),oe("/ProcSet [/PDF /Text /ImageB /ImageC /ImageI]"),pt(),ft(),mt(e.objectOid),ht(),_t(),oe(">>"),oe("endobj")},Et=function(){var e=[];rt(),ut(),at(),ct(e),Pe.publish("putResources"),e.forEach(gt),gt({resourcesOid:Qe,objectOid:Number.MAX_SAFE_INTEGER}),Pe.publish("postPutResources")},St=function(){Pe.publish("putAdditionalObjects");for(var e=0;e>8&&(l=!0);e=s.join("")}for(n=e.length;void 0===l&&0!==n;)e.charCodeAt(n-1)>>8&&(l=!0),n--;if(!l)return e;for(s=t.noBOM?[]:[254,255],n=0,r=e.length;n>8)>>8)throw new Error("Character at position "+n+" of string '"+e+"' exceeds 16bits. Cannot be encoded into UCS-2 BE");s.push(d),s.push(c-(d<<8))}return String.fromCharCode.apply(void 0,s)},Nt=y.__private__.pdfEscape=y.pdfEscape=function(e,t){return Ct(e,t).replace(/\\/g,"\\\\").replace(/\(/g,"\\(").replace(/\)/g,"\\)")},Ot=y.__private__.beginPage=function(e){te[++De]=[],Le[De]={objId:0,contentsObjId:0,userUnit:Number(c),artBox:null,bleedBox:null,cropBox:null,trimBox:null,mediaBox:{bottomLeftX:0,bottomLeftY:0,topRightX:Number(e[0]),topRightY:Number(e[1])}},wt(De),ae(te[z])},Rt=function(e,t){var r,i,s;switch(n=t||n,"string"==typeof e&&(r=O(e.toLowerCase()),Array.isArray(r)&&(i=r[0],s=r[1])),Array.isArray(e)&&(i=e[0]*ve,s=e[1]*ve),isNaN(i)&&(i=o[0],s=o[1]),(i>14400||s>14400)&&(a.warn("A page in a PDF can not be wider or taller than 14400 userUnit. jsPDF limits the width/height to 14400"),i=Math.min(14400,i),s=Math.min(14400,s)),o=[i,s],n.substr(0,1)){case"l":s>i&&(o=[s,i]);break;case"p":i>s&&(o=[s,i])}Ot(o),on(an),oe(fn),0!==bn&&oe(bn+" J"),0!==vn&&oe(vn+" j"),Pe.publish("addPage",{pageNumber:De})},At=function(e){e>0&&e<=De&&(te.splice(e,1),Le.splice(e,1),De--,z>De&&(z=De),this.setPage(z))},wt=function(e){e>0&&e<=De&&(z=e)},It=y.__private__.getNumberOfPages=y.getNumberOfPages=function(){return te.length-1},Mt=function(e,t,n){var r,i=void 0;return n=n||{},e=void 0!==e?e:Ne[be].fontName,t=void 0!==t?t:Ne[be].fontStyle,r=e.toLowerCase(),void 0!==Oe[r]&&void 0!==Oe[r][t]?i=Oe[r][t]:void 0!==Oe[e]&&void 0!==Oe[e][t]?i=Oe[e][t]:!1===n.disableWarning&&a.warn("Unable to look up font label for font '"+e+"', '"+t+"'. Refer to getFontList() for available fonts."),i||n.noFallback||null==(i=Oe.times[t])&&(i=Oe.times.normal),i},xt=y.__private__.putInfo=function(){for(var e in He(),oe("<<"),oe("/Producer (jsPDF "+E.version+")"),Se)Se.hasOwnProperty(e)&&Se[e]&&oe("/"+e.substr(0,1).toUpperCase()+e.substr(1)+" ("+Nt(Se[e])+")");oe("/CreationDate ("+B+")"),oe(">>"),oe("endobj")},Dt=y.__private__.putCatalog=function(e){var t=(e=e||{}).rootDictionaryObjId||We;switch(He(),oe("<<"),oe("/Type /Catalog"),oe("/Pages "+t+" 0 R"),ue||(ue="fullwidth"),ue){case"fullwidth":oe("/OpenAction [3 0 R /FitH null]");break;case"fullheight":oe("/OpenAction [3 0 R /FitV null]");break;case"fullpage":oe("/OpenAction [3 0 R /Fit]");break;case"original":oe("/OpenAction [3 0 R /XYZ null null 1]");break;default:var n=""+ue;"%"===n.substr(n.length-1)&&(ue=parseInt(ue)/100),"number"==typeof ue&&oe("/OpenAction [3 0 R /XYZ null null "+L(ue)+"]")}switch(he||(he="continuous"),he){case"continuous":oe("/PageLayout /OneColumn");break;case"single":oe("/PageLayout /SinglePage");break;case"two":case"twoleft":oe("/PageLayout /TwoColumnLeft");break;case"tworight":oe("/PageLayout /TwoColumnRight")}fe&&oe("/PageMode /"+fe),Pe.publish("putCatalog"),oe(">>"),oe("endobj")},Lt=y.__private__.putTrailer=function(){oe("trailer"),oe("<<"),oe("/Size "+(K+1)),oe("/Root "+K+" 0 R"),oe("/Info "+(K-1)+" 0 R"),oe("/ID [ <"+G+"> <"+G+"> ]"),oe(">>")},Pt=y.__private__.putHeader=function(){oe("%PDF-"+T),oe("%ºß¬à")},kt=y.__private__.putXRef=function(){var e="0000000000";oe("xref"),oe("0 "+(K+1)),oe("0000000000 65535 f ");for(var t=1;t<=K;t++)"function"==typeof X[t]?oe((e+X[t]()).slice(-10)+" 00000 n "):void 0!==X[t]?oe((e+X[t]).slice(-10)+" 00000 n "):oe("0000000000 00000 n ")},Ft=y.__private__.buildDocument=function(){ie(),ae(Z),Pe.publish("buildDocument"),Pt(),tt(),St(),Et(),xt(),Dt();var e=J;return kt(),Lt(),oe("startxref"),oe(""+e),oe("%%EOF"),ae(te[z]),Z.join("\n")},Ut=y.__private__.getBlob=function(e){return new Blob([le(e)],{type:"application/pdf"})},Bt=y.output=y.__private__.output=Tt((function(e,t){switch("string"==typeof(t=t||{})?t={filename:t}:t.filename=t.filename||"generated.pdf",e){case void 0:return Ft();case"save":y.save(t.filename);break;case"arraybuffer":return le(Ft());case"blob":return Ut(Ft());case"bloburi":case"bloburl":if(void 0!==r.URL&&"function"==typeof r.URL.createObjectURL)return r.URL&&r.URL.createObjectURL(Ut(Ft()))||void 0;a.warn("bloburl is not supported by your system, because URL.createObjectURL is not supported by your browser.");break;case"datauristring":case"dataurlstring":var n="",i=Ft();try{n=d(i)}catch(r){n=d(unescape(encodeURIComponent(i)))}return"data:application/pdf;filename="+t.filename+";base64,"+n;case"pdfobjectnewwindow":if("[object Window]"===Object.prototype.toString.call(r)){var o='