module.exports=(()=>{var _Mathhypot=Math.hypot,_Mathacos=Math.acos,_Mathtan=Math.tan,_Mathasin=Math.asin,_Mathsin=Math.sin,_Mathcos=Math.cos,_MathPI=Math.PI,_Mathsqrt=Math.sqrt,_NumberisInteger=Number.isInteger,_NumberPOSITIVE_INFINITY=Number.POSITIVE_INFINITY,_NumberNEGATIVE_INFINITY=Number.NEGATIVE_INFINITY,_NumberMAX_SAFE_INTEGER=Number.MAX_SAFE_INTEGER,_Stringprototype=String.prototype,_Mathround=Math.round,_StringfromCharCode=String.fromCharCode,_Mathabs=Math.abs,_Mathpow=Math.pow,_Mathceil=Math.ceil,_Mathfloor=Math.floor,_Mathmax=Math.max,_Mathmin=Math.min;function __webpack_require__(e){if(__webpack_module_cache__[e])return __webpack_module_cache__[e].exports;var t=__webpack_module_cache__[e]={exports:{}},r=!0;try{__webpack_modules__[e].call(t.exports,t,t.exports,__webpack_require__),r=!1}finally{r&&delete __webpack_module_cache__[e]}return t.exports}var __webpack_modules__={27584:(e,t,r)=>{"use strict";async function n({log:e=!0}={}){const t=e?console.debug:()=>null;t(`metrics/setup > setup`);const n="src/templates",a={templates:{},settings:{},statics:r.ab+"html",node_modules:h.resolve("node_modules")};if(t(`metrics/setup > load settings.json`),g.existsSync(r.ab+"settings.json")?(a.settings=JSON.parse(`${await g.promises.readFile(h.resolve("settings.json"))}`),t(`metrics/setup > load settings.json > success`)):t(`metrics/setup > load settings.json > (missing)`),a.settings.templates||(a.settings.templates={default:"classic",enabled:[]}),a.settings.plugins||(a.settings.plugins={}),a.settings.plugins.base={parts:["header","activity","community","repositories","metadata"]},a.settings.debug&&t(a.settings),t(`metrics/setup > load package.json`),g.existsSync(r.ab+"package.json")?(a.package=JSON.parse(`${await g.promises.readFile(h.resolve("package.json"))}`),t(`metrics/setup > load package.json > success`)):(t(`metrics/setup > load package.json > (missing)`),a.package={version:"2.5.0",author:"lowlighter"}),g.existsSync(r.ab+"templates"))for(const e of await g.promises.readdir(n)){if(/.*[.]mjs$/.test(e))continue;t(`metrics/setup > load template [${e}]`);const r=[`${n}/${e}/query.graphql`,`${n}/${e}/image.svg`,`${n}/${e}/style.css`,`${n}/${e}/fonts.css`],[o,i,s,l]=await Promise.all(r.map(async e=>`${await g.promises.readFile(h.resolve(e))}`));a.templates[e]={query:o,image:i,style:s,fonts:l},t(`metrics/setup > load template [${e}] > success`),a.settings.debug&&Object.defineProperty(a.templates,e,{get(){t(`metrics/setup > reload template [${e}]`);const[n,a,o,i]=r.map(e=>`${g.readFileSync(h.resolve(e))}`);return t(`metrics/setup > reload template [${e}] > success`),{query:n,image:a,style:o,fonts:i}}})}else t(`metrics/setup > load templates from build`),a.templates=JSON.parse(Buffer.from(`eyJjbGFzc2ljIjp7InF1ZXJ5IjoicXVlcnkgTWV0cmljcyB7XHJcbiAgdXNlcihsb2dpbjogJGxvZ2luKSB7XHJcbiAgICBkYXRhYmFzZUlkXHJcbiAgICBuYW1lXHJcbiAgICBsb2dpblxyXG4gICAgY3JlYXRlZEF0XHJcbiAgICBhdmF0YXJVcmxcclxuICAgIHdlYnNpdGVVcmxcclxuICAgIGdpc3RzIHtcclxuICAgICAgdG90YWxDb3VudFxyXG4gICAgfVxyXG4gICAgcmVwb3NpdG9yaWVzKGxhc3Q6ICRyZXBvc2l0b3JpZXMsIGlzRm9yazogZmFsc2UsIG93bmVyQWZmaWxpYXRpb25zOiBPV05FUikge1xyXG4gICAgICB0b3RhbENvdW50XHJcbiAgICAgIHRvdGFsRGlza1VzYWdlXHJcbiAgICAgIG5vZGVzIHtcclxuICAgICAgICBuYW1lXHJcbiAgICAgICAgd2F0Y2hlcnMge1xyXG4gICAgICAgICAgdG90YWxDb3VudFxyXG4gICAgICAgIH1cclxuICAgICAgICBzdGFyZ2F6ZXJzIHtcclxuICAgICAgICAgIHRvdGFsQ291bnRcclxuICAgICAgICB9XHJcbiAgICAgICAgbGFuZ3VhZ2VzKGZpcnN0OiA0KSB7XHJcbiAgICAgICAgICBlZGdlcyB7XHJcbiAgICAgICAgICAgIHNpemVcclxuICAgICAgICAgICAgbm9kZSB7XHJcbiAgICAgICAgICAgICAgY29sb3JcclxuICAgICAgICAgICAgICBuYW1lXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgaXNzdWVzX29wZW46IGlzc3VlcyhzdGF0ZXM6IE9QRU4pIHtcclxuICAgICAgICAgIHRvdGFsQ291bnRcclxuICAgICAgICB9XHJcbiAgICAgICAgaXNzdWVzX2Nsb3NlZDogaXNzdWVzKHN0YXRlczogQ0xPU0VEKSB7XHJcbiAgICAgICAgICB0b3RhbENvdW50XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHByX29wZW46IHB1bGxSZXF1ZXN0cyhzdGF0ZXM6IE9QRU4pIHtcclxuICAgICAgICAgIHRvdGFsQ291bnRcclxuICAgICAgICB9XHJcbiAgICAgICAgcHJfbWVyZ2VkOiBwdWxsUmVxdWVzdHMoc3RhdGVzOiBNRVJHRUQpIHtcclxuICAgICAgICAgIHRvdGFsQ291bnRcclxuICAgICAgICB9XHJcbiAgICAgICAgcmVsZWFzZXMge1xyXG4gICAgICAgICAgdG90YWxDb3VudFxyXG4gICAgICAgIH1cclxuICAgICAgICBmb3JrQ291bnRcclxuICAgICAgICBsaWNlbnNlSW5mbyB7XHJcbiAgICAgICAgICBzcGR4SWRcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHBhY2thZ2VzIHtcclxuICAgICAgdG90YWxDb3VudFxyXG4gICAgfVxyXG4gICAgc3RhcnJlZFJlcG9zaXRvcmllcyB7XHJcbiAgICAgIHRvdGFsQ291bnRcclxuICAgIH1cclxuICAgIHdhdGNoaW5nIHtcclxuICAgICAgdG90YWxDb3VudFxyXG4gICAgfVxyXG4gICAgc3BvbnNvcnNoaXBzQXNTcG9uc29yIHtcclxuICAgICAgdG90YWxDb3VudFxyXG4gICAgfVxyXG4gICAgc3BvbnNvcnNoaXBzQXNNYWludGFpbmVyIHtcclxuICAgICAgdG90YWxDb3VudFxyXG4gICAgfVxyXG4gICAgY29udHJpYnV0aW9uc0NvbGxlY3Rpb24ge1xyXG4gICAgICB0b3RhbFJlcG9zaXRvcmllc1dpdGhDb250cmlidXRlZENvbW1pdHNcclxuICAgICAgdG90YWxDb21taXRDb250cmlidXRpb25zXHJcbiAgICAgIHJlc3RyaWN0ZWRDb250cmlidXRpb25zQ291bnRcclxuICAgICAgdG90YWxJc3N1ZUNvbnRyaWJ1dGlvbnNcclxuICAgICAgdG90YWxQdWxsUmVxdWVzdENvbnRyaWJ1dGlvbnNcclxuICAgICAgdG90YWxQdWxsUmVxdWVzdFJldmlld0NvbnRyaWJ1dGlvbnNcclxuICAgIH1cclxuICAgIGNhbGVuZGFyOmNvbnRyaWJ1dGlvbnNDb2xsZWN0aW9uKGZyb206ICRjYWxlbmRhci5mcm9tLCB0bzogJGNhbGVuZGFyLnRvKSB7XHJcbiAgICAgIGNvbnRyaWJ1dGlvbkNhbGVuZGFyIHtcclxuICAgICAgICB3ZWVrcyB7XHJcbiAgICAgICAgICBjb250cmlidXRpb25EYXlzIHtcclxuICAgICAgICAgICAgY29sb3JcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJlcG9zaXRvcmllc0NvbnRyaWJ1dGVkVG8ge1xyXG4gICAgICB0b3RhbENvdW50XHJcbiAgICB9XHJcbiAgICBmb2xsb3dlcnMge1xyXG4gICAgICB0b3RhbENvdW50XHJcbiAgICB9XHJcbiAgICBmb2xsb3dpbmcge1xyXG4gICAgICB0b3RhbENvdW50XHJcbiAgICB9XHJcbiAgICBpc3N1ZUNvbW1lbnRzIHtcclxuICAgICAgdG90YWxDb3VudFxyXG4gICAgfVxyXG4gICAgb3JnYW5pemF0aW9ucyB7XHJcbiAgICAgIHRvdGFsQ291bnRcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiaW1hZ2UiOiI8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjQ4MFwiIGhlaWdodD1cIjwlPSAxMlxyXG4gICsgKCEhYmFzZS5oZWFkZXIpKjgwXHJcbiAgKyAoISFiYXNlLm1ldGFkYXRhKSozOFxyXG4gICsgKCghIWJhc2UuYWN0aXZpdHkpfHwoISFiYXNlLmNvbW11bml0eSkpKjEyOFxyXG4gICsgKCEhYmFzZS5yZXBvc2l0b3JpZXMpKjEwOFxyXG4gICsgKCghIWJhc2UucmVwb3NpdG9yaWVzKSooKCEhY29tcHV0ZWQucGx1Z2lucy50cmFmZmljKXx8KCEhY29tcHV0ZWQucGx1Z2lucy5saW5lcykpKSoxNlxyXG4gICsgKCEhY29tcHV0ZWQucGx1Z2lucy5mb2xsb3d1cCkqNjhcclxuICArICghIWNvbXB1dGVkLnBsdWdpbnMucGFnZXNwZWVkKSoxMjZcclxuICArICghIWNvbXB1dGVkLnBsdWdpbnMuaGFiaXRzKSo2OFxyXG4gICsgKCEhY29tcHV0ZWQucGx1Z2lucy5sYW5ndWFnZXMpKjk2XHJcbiAgKyAoISFjb21wdXRlZC5wbHVnaW5zLm11c2ljKSo2NCArIChjb21wdXRlZC5wbHVnaW5zLm11c2ljID8gY29tcHV0ZWQucGx1Z2lucy5tdXNpYy50cmFja3MgPyAxNCtNYXRoLm1heCgwLCBjb21wdXRlZC5wbHVnaW5zLm11c2ljLnRyYWNrcy5sZW5ndGgtMSkqMzYgOiAwIDogMClcclxuICArICghIWNvbXB1dGVkLnBsdWdpbnMucG9zdHMpKjY0ICsgKGNvbXB1dGVkLnBsdWdpbnMucG9zdHMgPyBjb21wdXRlZC5wbHVnaW5zLnBvc3RzLnBvc3RzID8gTWF0aC5tYXgoMCwgY29tcHV0ZWQucGx1Z2lucy5wb3N0cy5wb3N0cy5sZW5ndGgpKjQwIDogMCA6IDApXHJcbiAgKyAoISFjb21wdXRlZC5wbHVnaW5zLmlzb2NhbGVuZGFyKSoxOTIgKyAoY29tcHV0ZWQucGx1Z2lucy5pc29jYWxlbmRhciA/IGNvbXB1dGVkLnBsdWdpbnMuaXNvY2FsZW5kYXIuZHVyYXRpb24gPT09ICdmdWxsLXllYXInID8gMTAwIDogMCA6IDApXHJcbiAgKyAoISFjb21wdXRlZC5wbHVnaW5zLmdpc3RzKSo2OFxyXG4gICsgTWF0aC5tYXgoMCwgKCgoISFiYXNlLm1ldGFkYXRhKSsoISFiYXNlLmhlYWRlcikrKCghIWJhc2UuYWN0aXZpdHkpfHwoISFiYXNlLmNvbW11bml0eSkpKyghIWJhc2UucmVwb3NpdG9yaWVzKSsoKCEhY29tcHV0ZWQucGx1Z2lucy5oYWJpdHMpKSsoISFjb21wdXRlZC5wbHVnaW5zLnBhZ2VzcGVlZCkrKCEhY29tcHV0ZWQucGx1Z2lucy5sYW5ndWFnZXMpKyghIWNvbXB1dGVkLnBsdWdpbnMubXVzaWMpKyghIWNvbXB1dGVkLnBsdWdpbnMucG9zdHMpKyghIWNvbXB1dGVkLnBsdWdpbnMuaXNvY2FsZW5kYXIpKyghIWNvbXB1dGVkLnBsdWdpbnMuZ2lzdHMpKS0xKSkqNFxyXG4lPlwiPlxyXG5cclxuICA8ZGVmcz48c3R5bGU+PCU9IGZvbnRzICU+PC9zdHlsZT48L2RlZnM+XHJcblxyXG4gIDxzdHlsZT5cclxuICAgIDwlPSBzdHlsZSAlPlxyXG4gIDwvc3R5bGU+XHJcblxyXG4gIDxmb3JlaWduT2JqZWN0IHg9XCIwXCIgeT1cIjBcIiB3aWR0aD1cIjEwMCVcIiBoZWlnaHQ9XCIxMDAlXCI+XHJcbiAgICA8ZGl2IHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbFwiIHhtbG5zOnhsaW5rPVwiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGlua1wiPlxyXG5cclxuICAgICAgPCUgaWYgKGJhc2UuaGVhZGVyKSB7ICU+XHJcbiAgICAgICAgPHNlY3Rpb24+XHJcbiAgICAgICAgICA8aDEgY2xhc3M9XCJmaWVsZFwiPlxyXG4gICAgICAgICAgICA8aW1nIGNsYXNzPVwiYXZhdGFyXCIgc3JjPVwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LDwlPSBjb21wdXRlZC5hdmF0YXIgJT5cIiB3aWR0aD1cIjIwXCIgaGVpZ2h0PVwiMjBcIiAvPlxyXG4gICAgICAgICAgICA8c3Bhbj48JT0gdXNlci5uYW1lIHx8IHVzZXIubG9naW4gJT48L3NwYW4+XHJcbiAgICAgICAgICA8L2gxPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICA8c2VjdGlvbj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk0xLjUgOGE2LjUgNi41IDAgMTExMyAwIDYuNSA2LjUgMCAwMS0xMyAwek04IDBhOCA4IDAgMTAwIDE2QTggOCAwIDAwOCAwem0uNSA0Ljc1YS43NS43NSAwIDAwLTEuNSAwdjMuNWEuNzUuNzUgMCAwMC40NzEuNjk2bDIuNSAxYS43NS43NSAwIDAwLjU1Ny0xLjM5Mkw4LjUgNy43NDJWNC43NXpcIj48L3BhdGg+PC9zdmc+XHJcbiAgICAgICAgICAgICAgICBKb2luZWQgR2l0SHViIDwlPSBjb21wdXRlZC5yZWdpc3RyYXRpb24gJT5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk01LjUgMy41YTIgMiAwIDEwMCA0IDIgMiAwIDAwMC00ek0yIDUuNWEzLjUgMy41IDAgMTE1Ljg5OCAyLjU0OSA1LjUwNyA1LjUwNyAwIDAxMy4wMzQgNC4wODQuNzUuNzUgMCAxMS0xLjQ4Mi4yMzUgNC4wMDEgNC4wMDEgMCAwMC03LjkgMCAuNzUuNzUgMCAwMS0xLjQ4Mi0uMjM2QTUuNTA3IDUuNTA3IDAgMDEzLjEwMiA4LjA1IDMuNDkgMy40OSAwIDAxMiA1LjV6TTExIDRhLjc1Ljc1IDAgMTAwIDEuNSAxLjUgMS41IDAgMDEuNjY2IDIuODQ0Ljc1Ljc1IDAgMDAtLjQxNi42NzJ2LjM1MmEuNzUuNzUgMCAwMC41NzQuNzNjMS4yLjI4OSAyLjE2MiAxLjIgMi41MjIgMi4zNzJhLjc1Ljc1IDAgMTAxLjQzNC0uNDQgNS4wMSA1LjAxIDAgMDAtMi41Ni0zLjAxMkEzIDMgMCAwMDExIDR6XCI+PC9wYXRoPjwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgRm9sbG93ZWQgYnkgPCU9IHVzZXIuZm9sbG93ZXJzLnRvdGFsQ291bnQgJT4gdXNlcjwlPSBzKHVzZXIuZm9sbG93ZXJzLnRvdGFsQ291bnQpICU+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvc2VjdGlvbj5cclxuICAgICAgICAgICAgPHNlY3Rpb24+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkIGNhbGVuZGFyXCI+XHJcbiAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDwlPSBjb21wdXRlZC5jYWxlbmRhci5sZW5ndGgqMTUgJT4gMTFcIiB3aWR0aD1cIjwlPSBjb21wdXRlZC5jYWxlbmRhci5sZW5ndGgqMTUgJT5cIiBoZWlnaHQ9XCIxNlwiPlxyXG4gICAgICAgICAgICAgICAgICA8Zz5cclxuICAgICAgICAgICAgICAgICAgICA8JSBmb3IgKGNvbnN0IFt4LCB7Y29sb3J9XSBvZiBPYmplY3QuZW50cmllcyhjb21wdXRlZC5jYWxlbmRhcikpIHsgJT5cclxuICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IGNsYXNzPVwiZGF5XCIgeD1cIjwlPSB4KjE1ICU+XCIgeT1cIjBcIiB3aWR0aD1cIjExXCIgaGVpZ2h0PVwiMTFcIiBmaWxsPVwiPCU9IGNvbG9yICU+XCIgcng9XCIyXCIgcnk9XCIyXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICA8JSB9ICU+XHJcbiAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZFwiPlxyXG4gICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiPjxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTEgMi41QTIuNSAyLjUgMCAwMTMuNSAwaDguNzVhLjc1Ljc1IDAgMDEuNzUuNzV2My41YS43NS43NSAwIDAxLTEuNSAwVjEuNWgtOGExIDEgMCAwMC0xIDF2Ni43MDhBMi40OTIgMi40OTIgMCAwMTMuNSA5aDMuMjVhLjc1Ljc1IDAgMDEwIDEuNUgzLjVhMSAxIDAgMTAwIDJoNS43NWEuNzUuNzUgMCAwMTAgMS41SDMuNUEyLjUgMi41IDAgMDExIDExLjV2LTl6bTEzLjIzIDcuNzlhLjc1Ljc1IDAgMDAxLjA2LTEuMDZsLTIuNTA1LTIuNTA1YS43NS43NSAwIDAwLTEuMDYgMEw5LjIyIDkuMjI5YS43NS43NSAwIDAwMS4wNiAxLjA2MWwxLjIyNS0xLjIyNHY2LjE4NGEuNzUuNzUgMCAwMDEuNSAwVjkuMDY2bDEuMjI0IDEuMjI0elwiPjwvcGF0aD48L3N2Zz5cclxuICAgICAgICAgICAgICAgIENvbnRyaWJ1dGVkIHRvIDwlPSB1c2VyLnJlcG9zaXRvcmllc0NvbnRyaWJ1dGVkVG8udG90YWxDb3VudCAlPiByZXBvc2l0b3I8JT0gcyh1c2VyLnJlcG9zaXRvcmllc0NvbnRyaWJ1dGVkVG8udG90YWxDb3VudCwgXCJ5XCIpICU+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvc2VjdGlvbj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvc2VjdGlvbj5cclxuICAgICAgPCUgfSAlPlxyXG5cclxuICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgIDwlIGlmIChiYXNlLmFjdGl2aXR5KSB7ICU+XHJcbiAgICAgICAgICA8c2VjdGlvbj5cclxuICAgICAgICAgICAgPGgyIGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNMS41IDEuNzVhLjc1Ljc1IDAgMDAtMS41IDB2MTIuNWMwIC40MTQuMzM2Ljc1Ljc1Ljc1aDE0LjVhLjc1Ljc1IDAgMDAwLTEuNUgxLjVWMS43NXptMTQuMjggMi41M2EuNzUuNzUgMCAwMC0xLjA2LTEuMDZMMTAgNy45NCA3LjUzIDUuNDdhLjc1Ljc1IDAgMDAtMS4wNiAwTDMuMjIgOC43MmEuNzUuNzUgMCAwMDEuMDYgMS4wNkw3IDcuMDZsMi40NyAyLjQ3YS43NS43NSAwIDAwMS4wNiAwbDUuMjUtNS4yNXpcIj48L3BhdGg+PC9zdmc+XHJcbiAgICAgICAgICAgICAgQWN0aXZpdHlcclxuICAgICAgICAgICAgPC9oMj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkXCI+XHJcbiAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiPjxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTEwLjUgNy43NWEyLjUgMi41IDAgMTEtNSAwIDIuNSAyLjUgMCAwMTUgMHptMS40My43NWE0LjAwMiA0LjAwMiAwIDAxLTcuODYgMEguNzVhLjc1Ljc1IDAgMTEwLTEuNWgzLjMyYTQuMDAxIDQuMDAxIDAgMDE3Ljg2IDBoMy4zMmEuNzUuNzUgMCAxMTAgMS41aC0zLjMyelwiPjwvcGF0aD48L3N2Zz5cclxuICAgICAgICAgICAgICA8JT0gY29tcHV0ZWQuY29tbWl0cyAlPiBDb21taXQ8JT0gcyhjb21wdXRlZC5jb21taXRzKSAlPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkXCI+XHJcbiAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiPjxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTIuNSAxLjc1YS4yNS4yNSAwIDAxLjI1LS4yNWg4LjVhLjI1LjI1IDAgMDEuMjUuMjV2Ny43MzZhLjc1Ljc1IDAgMTAxLjUgMFYxLjc1QTEuNzUgMS43NSAwIDAwMTEuMjUgMGgtOC41QTEuNzUgMS43NSAwIDAwMSAxLjc1djExLjVjMCAuOTY2Ljc4NCAxLjc1IDEuNzUgMS43NWgzLjE3YS43NS43NSAwIDAwMC0xLjVIMi43NWEuMjUuMjUgMCAwMS0uMjUtLjI1VjEuNzV6TTQuNzUgNGEuNzUuNzUgMCAwMDAgMS41aDQuNWEuNzUuNzUgMCAwMDAtMS41aC00LjV6TTQgNy43NUEuNzUuNzUgMCAwMTQuNzUgN2gyYS43NS43NSAwIDAxMCAxLjVoLTJBLjc1Ljc1IDAgMDE0IDcuNzV6bTExLjc3NCAzLjUzN2EuNzUuNzUgMCAwMC0xLjA0OC0xLjA3NEwxMC43IDE0LjE0NSA5LjI4MSAxMi43MmEuNzUuNzUgMCAwMC0xLjA2MiAxLjA1OGwxLjk0MyAxLjk1YS43NS43NSAwIDAwMS4wNTUuMDA4bDQuNTU3LTQuNDV6XCI+PC9wYXRoPjwvc3ZnPlxyXG4gICAgICAgICAgICAgIDwlPSB1c2VyLmNvbnRyaWJ1dGlvbnNDb2xsZWN0aW9uLnRvdGFsUHVsbFJlcXVlc3RSZXZpZXdDb250cmlidXRpb25zICU+IFB1bGwgcmVxdWVzdDwlPSBzKHVzZXIuY29udHJpYnV0aW9uc0NvbGxlY3Rpb24udG90YWxQdWxsUmVxdWVzdFJldmlld0NvbnRyaWJ1dGlvbnMpICU+IHJldmlld2VkXHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNNy4xNzcgMy4wNzNMOS41NzMuNjc3QS4yNS4yNSAwIDAxMTAgLjg1NHY0Ljc5MmEuMjUuMjUgMCAwMS0uNDI3LjE3N0w3LjE3NyAzLjQyN2EuMjUuMjUgMCAwMTAtLjM1NHpNMy43NSAyLjVhLjc1Ljc1IDAgMTAwIDEuNS43NS43NSAwIDAwMC0xLjV6bS0yLjI1Ljc1YTIuMjUgMi4yNSAwIDExMyAyLjEyMnY1LjI1NmEyLjI1MSAyLjI1MSAwIDExLTEuNSAwVjUuMzcyQTIuMjUgMi4yNSAwIDAxMS41IDMuMjV6TTExIDIuNWgtMVY0aDFhMSAxIDAgMDExIDF2NS42MjhhMi4yNTEgMi4yNTEgMCAxMDEuNSAwVjVBMi41IDIuNSAwIDAwMTEgMi41em0xIDEwLjI1YS43NS43NSAwIDExMS41IDAgLjc1Ljc1IDAgMDEtMS41IDB6TTMuNzUgMTJhLjc1Ljc1IDAgMTAwIDEuNS43NS43NSAwIDAwMC0xLjV6XCI+PC9wYXRoPjwvc3ZnPlxyXG4gICAgICAgICAgICAgIDwlPSB1c2VyLmNvbnRyaWJ1dGlvbnNDb2xsZWN0aW9uLnRvdGFsUHVsbFJlcXVlc3RDb250cmlidXRpb25zICU+IFB1bGwgcmVxdWVzdDwlPSBzKHVzZXIuY29udHJpYnV0aW9uc0NvbGxlY3Rpb24udG90YWxQdWxsUmVxdWVzdENvbnRyaWJ1dGlvbnMpICU+IG9wZW5lZFxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkXCI+XHJcbiAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiPjxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTggMS41YTYuNSA2LjUgMCAxMDAgMTMgNi41IDYuNSAwIDAwMC0xM3pNMCA4YTggOCAwIDExMTYgMEE4IDggMCAwMTAgOHptOSAzYTEgMSAwIDExLTIgMCAxIDEgMCAwMTIgMHptLS4yNS02LjI1YS43NS43NSAwIDAwLTEuNSAwdjMuNWEuNzUuNzUgMCAwMDEuNSAwdi0zLjV6XCI+PC9wYXRoPjwvc3ZnPlxyXG4gICAgICAgICAgICAgIDwlPSB1c2VyLmNvbnRyaWJ1dGlvbnNDb2xsZWN0aW9uLnRvdGFsSXNzdWVDb250cmlidXRpb25zICU+IElzc3VlPCU9IHModXNlci5jb250cmlidXRpb25zQ29sbGVjdGlvbi50b3RhbElzc3VlQ29udHJpYnV0aW9ucykgJT4gb3BlbmVkXHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNMi43NSAyLjVhLjI1LjI1IDAgMDAtLjI1LjI1djcuNWMwIC4xMzguMTEyLjI1LjI1LjI1aDJhLjc1Ljc1IDAgMDEuNzUuNzV2Mi4xOWwyLjcyLTIuNzJhLjc1Ljc1IDAgMDEuNTMtLjIyaDQuNWEuMjUuMjUgMCAwMC4yNS0uMjV2LTcuNWEuMjUuMjUgMCAwMC0uMjUtLjI1SDIuNzV6TTEgMi43NUMxIDEuNzg0IDEuNzg0IDEgMi43NSAxaDEwLjVjLjk2NiAwIDEuNzUuNzg0IDEuNzUgMS43NXY3LjVBMS43NSAxLjc1IDAgMDExMy4yNSAxMkg5LjA2bC0yLjU3MyAyLjU3M0ExLjQ1NyAxLjQ1NyAwIDAxNCAxMy41NDNWMTJIMi43NUExLjc1IDEuNzUgMCAwMTEgMTAuMjV2LTcuNXpcIj48L3BhdGg+PC9zdmc+XHJcbiAgICAgICAgICAgICAgPCU9IHVzZXIuaXNzdWVDb21tZW50cy50b3RhbENvdW50ICU+IGlzc3VlIGNvbW1lbnQ8JT0gcyh1c2VyLmlzc3VlQ29tbWVudHMudG90YWxDb3VudCkgJT5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L3NlY3Rpb24+XHJcbiAgICAgICAgPCUgfSAlPlxyXG4gICAgICAgIDwlIGlmIChiYXNlLmNvbW11bml0eSkgeyAlPlxyXG4gICAgICAgICAgPHNlY3Rpb24+XHJcbiAgICAgICAgICAgIDxoMiBjbGFzcz1cImZpZWxkXCI+XHJcbiAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiPjxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTEuNzUgMEExLjc1IDEuNzUgMCAwMDAgMS43NXYxMi41QzAgMTUuMjE2Ljc4NCAxNiAxLjc1IDE2aDEyLjVBMS43NSAxLjc1IDAgMDAxNiAxNC4yNVYxLjc1QTEuNzUgMS43NSAwIDAwMTQuMjUgMEgxLjc1ek0xLjUgMS43NWEuMjUuMjUgMCAwMS4yNS0uMjVoMTIuNWEuMjUuMjUgMCAwMS4yNS4yNXYxMi41YS4yNS4yNSAwIDAxLS4yNS4yNUgxLjc1YS4yNS4yNSAwIDAxLS4yNS0uMjVWMS43NXpNMTEuNzUgM2EuNzUuNzUgMCAwMC0uNzUuNzV2Ny41YS43NS43NSAwIDAwMS41IDB2LTcuNWEuNzUuNzUgMCAwMC0uNzUtLjc1em0tOC4yNS43NWEuNzUuNzUgMCAwMTEuNSAwdjUuNWEuNzUuNzUgMCAwMS0xLjUgMHYtNS41ek04IDNhLjc1Ljc1IDAgMDAtLjc1Ljc1djMuNWEuNzUuNzUgMCAwMDEuNSAwdi0zLjVBLjc1Ljc1IDAgMDA4IDN6XCI+PC9wYXRoPjwvc3ZnPlxyXG4gICAgICAgICAgICAgIENvbW11bml0eSBzdGF0c1xyXG4gICAgICAgICAgICA8L2gyPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNMS41IDE0LjI1YzAgLjEzOC4xMTIuMjUuMjUuMjVINHYtMS4yNWEuNzUuNzUgMCAwMS43NS0uNzVoMi41YS43NS43NSAwIDAxLjc1Ljc1djEuMjVoMi4yNWEuMjUuMjUgMCAwMC4yNS0uMjVWMS43NWEuMjUuMjUgMCAwMC0uMjUtLjI1aC04LjVhLjI1LjI1IDAgMDAtLjI1LjI1djEyLjV6TTEuNzUgMTZBMS43NSAxLjc1IDAgMDEwIDE0LjI1VjEuNzVDMCAuNzg0Ljc4NCAwIDEuNzUgMGg4LjVDMTEuMjE2IDAgMTIgLjc4NCAxMiAxLjc1djEyLjVjMCAuMDg1LS4wMDYuMTY4LS4wMTguMjVoMi4yNjhhLjI1LjI1IDAgMDAuMjUtLjI1VjguMjg1YS4yNS4yNSAwIDAwLS4xMTEtLjIwOGwtMS4wNTUtLjcwM2EuNzUuNzUgMCAxMS44MzItMS4yNDhsMS4wNTUuNzAzYy40ODcuMzI1Ljc3OS44NzEuNzc5IDEuNDU2djUuOTY1QTEuNzUgMS43NSAwIDAxMTQuMjUgMTZoLTMuNWEuNzUuNzUgMCAwMS0uMTk3LS4wMjZjLS4wOTkuMDE3LS4yLjAyNi0uMzAzLjAyNmgtM2EuNzUuNzUgMCAwMS0uNzUtLjc1VjE0aC0xdjEuMjVhLjc1Ljc1IDAgMDEtLjc1Ljc1aC0zek0zIDMuNzVBLjc1Ljc1IDAgMDEzLjc1IDNoLjVhLjc1Ljc1IDAgMDEwIDEuNWgtLjVBLjc1Ljc1IDAgMDEzIDMuNzV6TTMuNzUgNmEuNzUuNzUgMCAwMDAgMS41aC41YS43NS43NSAwIDAwMC0xLjVoLS41ek0zIDkuNzVBLjc1Ljc1IDAgMDEzLjc1IDloLjVhLjc1Ljc1IDAgMDEwIDEuNWgtLjVBLjc1Ljc1IDAgMDEzIDkuNzV6TTcuNzUgOWEuNzUuNzUgMCAwMDAgMS41aC41YS43NS43NSAwIDAwMC0xLjVoLS41ek03IDYuNzVBLjc1Ljc1IDAgMDE3Ljc1IDZoLjVhLjc1Ljc1IDAgMDEwIDEuNWgtLjVBLjc1Ljc1IDAgMDE3IDYuNzV6TTcuNzUgM2EuNzUuNzUgMCAwMDAgMS41aC41YS43NS43NSAwIDAwMC0xLjVoLS41elwiPjwvcGF0aD48L3N2Zz5cclxuICAgICAgICAgICAgICBNZW1iZXIgb2YgPCU9IHVzZXIub3JnYW5pemF0aW9ucy50b3RhbENvdW50ICU+IG9yZ2FuaXphdGlvbjwlPSBzKHVzZXIub3JnYW5pemF0aW9ucy50b3RhbENvdW50KSAlPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkXCI+XHJcbiAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiPjxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTUuNSAzLjVhMiAyIDAgMTAwIDQgMiAyIDAgMDAwLTR6TTIgNS41YTMuNSAzLjUgMCAxMTUuODk4IDIuNTQ5IDUuNTA3IDUuNTA3IDAgMDEzLjAzNCA0LjA4NC43NS43NSAwIDExLTEuNDgyLjIzNSA0LjAwMSA0LjAwMSAwIDAwLTcuOSAwIC43NS43NSAwIDAxLTEuNDgyLS4yMzZBNS41MDcgNS41MDcgMCAwMTMuMTAyIDguMDUgMy40OSAzLjQ5IDAgMDEyIDUuNXpNMTEgNGEuNzUuNzUgMCAxMDAgMS41IDEuNSAxLjUgMCAwMS42NjYgMi44NDQuNzUuNzUgMCAwMC0uNDE2LjY3MnYuMzUyYS43NS43NSAwIDAwLjU3NC43M2MxLjIuMjg5IDIuMTYyIDEuMiAyLjUyMiAyLjM3MmEuNzUuNzUgMCAxMDEuNDM0LS40NCA1LjAxIDUuMDEgMCAwMC0yLjU2LTMuMDEyQTMgMyAwIDAwMTEgNHpcIj48L3BhdGg+PC9zdmc+XHJcbiAgICAgICAgICAgICAgRm9sbG93aW5nIDwlPSB1c2VyLmZvbGxvd2luZy50b3RhbENvdW50ICU+IHVzZXI8JT0gcyh1c2VyLmZvbGxvd2Vycy50b3RhbENvdW50KSAlPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkXCI+XHJcbiAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiPjxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTQuMjUgMi41Yy0xLjMzNiAwLTIuNzUgMS4xNjQtMi43NSAzIDAgMi4xNSAxLjU4IDQuMTQ0IDMuMzY1IDUuNjgyQTIwLjU2NSAyMC41NjUgMCAwMDggMTMuMzkzYTIwLjU2MSAyMC41NjEgMCAwMDMuMTM1LTIuMjExQzEyLjkyIDkuNjQ0IDE0LjUgNy42NSAxNC41IDUuNWMwLTEuODM2LTEuNDE0LTMtMi43NS0zLTEuMzczIDAtMi42MDkuOTg2LTMuMDI5IDIuNDU2YS43NS43NSAwIDAxLTEuNDQyIDBDNi44NTkgMy40ODYgNS42MjMgMi41IDQuMjUgMi41ek04IDE0LjI1bC0uMzQ1LjY2Ni0uMDAyLS4wMDEtLjAwNi0uMDAzLS4wMTgtLjAxYTcuNjQzIDcuNjQzIDAgMDEtLjMxLS4xNyAyMi4wNzUgMjIuMDc1IDAgMDEtMy40MzQtMi40MTRDMi4wNDUgMTAuNzMxIDAgOC4zNSAwIDUuNSAwIDIuODM2IDIuMDg2IDEgNC4yNSAxIDUuNzk3IDEgNy4xNTMgMS44MDIgOCAzLjAyIDguODQ3IDEuODAyIDEwLjIwMyAxIDExLjc1IDEgMTMuOTE0IDEgMTYgMi44MzYgMTYgNS41YzAgMi44NS0yLjA0NSA1LjIzMS0zLjg4NSA2LjgxOGEyMi4wOCAyMi4wOCAwIDAxLTMuNzQ0IDIuNTg0bC0uMDE4LjAxLS4wMDYuMDAzaC0uMDAyTDggMTQuMjV6bTAgMGwuMzQ1LjY2NmEuNzUyLjc1MiAwIDAxLS42OSAwTDggMTQuMjV6XCI+PC9wYXRoPjwvc3ZnPlxyXG4gICAgICAgICAgICAgIFNwb25zb3JpbmcgPCU9IHVzZXIuc3BvbnNvcnNoaXBzQXNTcG9uc29yLnRvdGFsQ291bnQgJT4gcmVwb3NpdG9yPCU9IHModXNlci5zcG9uc29yc2hpcHNBc1Nwb25zb3IudG90YWxDb3VudCwgXCJ5XCIpICU+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNOCAuMjVhLjc1Ljc1IDAgMDEuNjczLjQxOGwxLjg4MiAzLjgxNSA0LjIxLjYxMmEuNzUuNzUgMCAwMS40MTYgMS4yNzlsLTMuMDQ2IDIuOTcuNzE5IDQuMTkyYS43NS43NSAwIDAxLTEuMDg4Ljc5MUw4IDEyLjM0N2wtMy43NjYgMS45OGEuNzUuNzUgMCAwMS0xLjA4OC0uNzlsLjcyLTQuMTk0TC44MTggNi4zNzRhLjc1Ljc1IDAgMDEuNDE2LTEuMjhsNC4yMS0uNjExTDcuMzI3LjY2OEEuNzUuNzUgMCAwMTggLjI1em0wIDIuNDQ1TDYuNjE1IDUuNWEuNzUuNzUgMCAwMS0uNTY0LjQxbC0zLjA5Ny40NSAyLjI0IDIuMTg0YS43NS43NSAwIDAxLjIxNi42NjRsLS41MjggMy4wODQgMi43NjktMS40NTZhLjc1Ljc1IDAgMDEuNjk4IDBsMi43NyAxLjQ1Ni0uNTMtMy4wODRhLjc1Ljc1IDAgMDEuMjE2LS42NjRsMi4yNC0yLjE4My0zLjA5Ni0uNDVhLjc1Ljc1IDAgMDEtLjU2NC0uNDFMOCAyLjY5NHYuMDAxelwiPjwvcGF0aD48L3N2Zz5cclxuICAgICAgICAgICAgICBTdGFycmVkIDwlPSB1c2VyLnN0YXJyZWRSZXBvc2l0b3JpZXMudG90YWxDb3VudCAlPiByZXBvc2l0b3I8JT0gcyh1c2VyLnN0YXJyZWRSZXBvc2l0b3JpZXMudG90YWxDb3VudCwgXCJ5XCIpICU+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNMS42NzkgNy45MzJjLjQxMi0uNjIxIDEuMjQyLTEuNzUgMi4zNjYtMi43MTdDNS4xNzUgNC4yNDIgNi41MjcgMy41IDggMy41YzEuNDczIDAgMi44MjQuNzQyIDMuOTU1IDEuNzE1IDEuMTI0Ljk2NyAxLjk1NCAyLjA5NiAyLjM2NiAyLjcxN2EuMTE5LjExOSAwIDAxMCAuMTM2Yy0uNDEyLjYyMS0xLjI0MiAxLjc1LTIuMzY2IDIuNzE3QzEwLjgyNSAxMS43NTggOS40NzMgMTIuNSA4IDEyLjVjLTEuNDczIDAtMi44MjQtLjc0Mi0zLjk1NS0xLjcxNUMyLjkyIDkuODE4IDIuMDkgOC42OSAxLjY3OSA4LjA2OGEuMTE5LjExOSAwIDAxMC0uMTM2ek04IDJjLTEuOTgxIDAtMy42Ny45OTItNC45MzMgMi4wNzhDMS43OTcgNS4xNjkuODggNi40MjMuNDMgNy4xYTEuNjE5IDEuNjE5IDAgMDAwIDEuNzk4Yy40NS42NzggMS4zNjcgMS45MzIgMi42MzcgMy4wMjRDNC4zMjkgMTMuMDA4IDYuMDE5IDE0IDggMTRjMS45ODEgMCAzLjY3LS45OTIgNC45MzMtMi4wNzggMS4yNy0xLjA5MSAyLjE4Ny0yLjM0NSAyLjYzNy0zLjAyM2ExLjYxOSAxLjYxOSAwIDAwMC0xLjc5OGMtLjQ1LS42NzgtMS4zNjctMS45MzItMi42MzctMy4wMjNDMTEuNjcxIDIuOTkyIDkuOTgxIDIgOCAyem0wIDhhMiAyIDAgMTAwLTQgMiAyIDAgMDAwIDR6XCI+PC9wYXRoPjwvc3ZnPlxyXG4gICAgICAgICAgICAgIFdhdGNoaW5nIDwlPSB1c2VyLndhdGNoaW5nLnRvdGFsQ291bnQgJT4gcmVwb3NpdG9yPCU9IHModXNlci53YXRjaGluZy50b3RhbENvdW50LCBcInlcIikgJT5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L3NlY3Rpb24+XHJcbiAgICAgICAgPCUgfSAlPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDwlIGlmIChiYXNlLnJlcG9zaXRvcmllcykgeyAlPlxyXG4gICAgICAgIDxzZWN0aW9uPlxyXG4gICAgICAgICAgPGgyIGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiPjxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTIgMi41QTIuNSAyLjUgMCAwMTQuNSAwaDguNzVhLjc1Ljc1IDAgMDEuNzUuNzV2MTIuNWEuNzUuNzUgMCAwMS0uNzUuNzVoLTIuNWEuNzUuNzUgMCAxMTAtMS41aDEuNzV2LTJoLThhMSAxIDAgMDAtLjcxNCAxLjcuNzUuNzUgMCAwMS0xLjA3MiAxLjA1QTIuNDk1IDIuNDk1IDAgMDEyIDExLjV2LTl6bTEwLjUtMVY5aC04Yy0uMzU2IDAtLjY5NC4wNzQtMSAuMjA4VjIuNWExIDEgMCAwMTEtMWg4ek01IDEyLjI1djMuMjVhLjI1LjI1IDAgMDAuNC4ybDEuNDUtMS4wODdhLjI1LjI1IDAgMDEuMyAwTDguNiAxNS43YS4yNS4yNSAwIDAwLjQtLjJ2LTMuMjVhLjI1LjI1IDAgMDAtLjI1LS4yNWgtMy41YS4yNS4yNSAwIDAwLS4yNS4yNXpcIj48L3BhdGg+PC9zdmc+XHJcbiAgICAgICAgICAgIDwlPSB1c2VyLnJlcG9zaXRvcmllcy50b3RhbENvdW50ICU+IFJlcG9zaXRvcjwlPSBzKHVzZXIucmVwb3NpdG9yaWVzLnRvdGFsQ291bnQsIFwieVwiKSAlPlxyXG4gICAgICAgICAgPC9oMj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgPHNlY3Rpb24+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkXCI+XHJcbiAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNOC43NS43NWEuNzUuNzUgMCAwMC0xLjUgMFYyaC0uOTg0Yy0uMzA1IDAtLjYwNC4wOC0uODY5LjIzbC0xLjI4OC43MzdBLjI1LjI1IDAgMDEzLjk4NCAzSDEuNzVhLjc1Ljc1IDAgMDAwIDEuNWguNDI4TC4wNjYgOS4xOTJhLjc1Ljc1IDAgMDAuMTU0LjgzOGwuNTMtLjUzLS41My41M3YuMDAxbC4wMDIuMDAyLjAwMi4wMDIuMDA2LjAwNi4wMTYuMDE1LjA0NS4wNGEzLjUxNCAzLjUxNCAwIDAwLjY4Ni40NUE0LjQ5MiA0LjQ5MiAwIDAwMyAxMWMuODggMCAxLjU1Ni0uMjIgMi4wMjMtLjQ1NGEzLjUxNSAzLjUxNSAwIDAwLjY4Ni0uNDVsLjA0NS0uMDQuMDE2LS4wMTUuMDA2LS4wMDYuMDAyLS4wMDIuMDAxLS4wMDJMNS4yNSA5LjVsLjUzLjUzYS43NS43NSAwIDAwLjE1NC0uODM4TDMuODIyIDQuNWguMTYyYy4zMDUgMCAuNjA0LS4wOC44NjktLjIzbDEuMjg5LS43MzdhLjI1LjI1IDAgMDEuMTI0LS4wMzNoLjk4NFYxM2gtMi41YS43NS43NSAwIDAwMCAxLjVoNi41YS43NS43NSAwIDAwMC0xLjVoLTIuNVYzLjVoLjk4NGEuMjUuMjUgMCAwMS4xMjQuMDMzbDEuMjkuNzM2Yy4yNjQuMTUyLjU2My4yMzEuODY4LjIzMWguMTYybC0yLjExMiA0LjY5MmEuNzUuNzUgMCAwMC4xNTQuODM4bC41My0uNTMtLjUzLjUzdi4wMDFsLjAwMi4wMDIuMDAyLjAwMi4wMDYuMDA2LjAxNi4wMTUuMDQ1LjA0YTMuNTE3IDMuNTE3IDAgMDAuNjg2LjQ1QTQuNDkyIDQuNDkyIDAgMDAxMyAxMWMuODggMCAxLjU1Ni0uMjIgMi4wMjMtLjQ1NGEzLjUxMiAzLjUxMiAwIDAwLjY4Ni0uNDVsLjA0NS0uMDQuMDEtLjAxLjAwNi0uMDA1LjAwNi0uMDA2LjAwMi0uMDAyLjAwMS0uMDAyLS41MjktLjUzMS41My41M2EuNzUuNzUgMCAwMC4xNTQtLjgzOEwxMy44MjMgNC41aC40MjdhLjc1Ljc1IDAgMDAwLTEuNWgtMi4yMzRhLjI1LjI1IDAgMDEtLjEyNC0uMDMzbC0xLjI5LS43MzZBMS43NSAxLjc1IDAgMDA5LjczNSAySDguNzVWLjc1ek0xLjY5NSA5LjIyN2MuMjg1LjEzNS43MTguMjczIDEuMzA1LjI3M3MxLjAyLS4xMzggMS4zMDUtLjI3M0wzIDYuMzI3bC0xLjMwNSAyLjl6bTEwIDBjLjI4NS4xMzUuNzE4LjI3MyAxLjMwNS4yNzNzMS4wMi0uMTM4IDEuMzA1LS4yNzNMMTMgNi4zMjdsLTEuMzA1IDIuOXpcIj48L3BhdGg+PC9zdmc+XHJcbiAgICAgICAgICAgICAgICA8JSBpZiAoY29tcHV0ZWQubGljZW5zZXMuZmF2b3JpdGUubGVuZ3RoKSB7ICU+XHJcbiAgICAgICAgICAgICAgICAgIFByZWZlciA8JT0gY29tcHV0ZWQubGljZW5zZXMuZmF2b3JpdGUgJT4gbGljZW5zZVxyXG4gICAgICAgICAgICAgICAgPCUgfSBlbHNlIHsgJT5cclxuICAgICAgICAgICAgICAgICAgTm8gbGljZW5zZSBwcmVmZXJlbmNlXHJcbiAgICAgICAgICAgICAgICA8JSB9ICU+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkXCI+XHJcbiAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNMi41IDcuNzc1VjIuNzVhLjI1LjI1IDAgMDEuMjUtLjI1aDUuMDI1YS4yNS4yNSAwIDAxLjE3Ny4wNzNsNi4yNSA2LjI1YS4yNS4yNSAwIDAxMCAuMzU0bC01LjAyNSA1LjAyNWEuMjUuMjUgMCAwMS0uMzU0IDBsLTYuMjUtNi4yNWEuMjUuMjUgMCAwMS0uMDczLS4xNzd6bS0xLjUgMFYyLjc1QzEgMS43ODQgMS43ODQgMSAyLjc1IDFoNS4wMjVjLjQ2NCAwIC45MS4xODQgMS4yMzguNTEzbDYuMjUgNi4yNWExLjc1IDEuNzUgMCAwMTAgMi40NzRsLTUuMDI2IDUuMDI2YTEuNzUgMS43NSAwIDAxLTIuNDc0IDBsLTYuMjUtNi4yNUExLjc1IDEuNzUgMCAwMTEgNy43NzV6TTYgNWExIDEgMCAxMDAgMiAxIDEgMCAwMDAtMnpcIj48L3BhdGg+PC9zdmc+XHJcbiAgICAgICAgICAgICAgICA8JT0gY29tcHV0ZWQucmVwb3NpdG9yaWVzLnJlbGVhc2VzICU+IFJlbGVhc2U8JT0gcyhjb21wdXRlZC5yZXBvc2l0b3JpZXMucmVsZWFzZXMpICU+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkXCI+XHJcbiAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNOC44NzguMzkyYTEuNzUgMS43NSAwIDAwLTEuNzU2IDBsLTUuMjUgMy4wNDVBMS43NSAxLjc1IDAgMDAxIDQuOTUxdjYuMDk4YzAgLjYyNC4zMzIgMS4yLjg3MiAxLjUxNGw1LjI1IDMuMDQ1YTEuNzUgMS43NSAwIDAwMS43NTYgMGw1LjI1LTMuMDQ1Yy41NC0uMzEzLjg3Mi0uODkuODcyLTEuNTE0VjQuOTUxYzAtLjYyNC0uMzMyLTEuMi0uODcyLTEuNTE0TDguODc4LjM5MnpNNy44NzUgMS42OWEuMjUuMjUgMCAwMS4yNSAwbDQuNjMgMi42ODVMOCA3LjEzMyAzLjI0NSA0LjM3NWw0LjYzLTIuNjg1ek0yLjUgNS42Nzd2NS4zNzJjMCAuMDkuMDQ3LjE3MS4xMjUuMjE2bDQuNjI1IDIuNjgzVjguNDMyTDIuNSA1LjY3N3ptNi4yNSA4LjI3MWw0LjYyNS0yLjY4M2EuMjUuMjUgMCAwMC4xMjUtLjIxNlY1LjY3N0w4Ljc1IDguNDMydjUuNTE2elwiPjwvcGF0aD48L3N2Zz5cclxuICAgICAgICAgICAgICAgIDwlPSB1c2VyLnBhY2thZ2VzLnRvdGFsQ291bnQgJT4gUGFja2FnZTwlPSBzKHVzZXIucGFja2FnZXMudG90YWxDb3VudCkgJT5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNMi41IDMuNWMwLS4xMzMuMDU4LS4zMTguMjgyLS41NS4yMjctLjIzNy41OTItLjQ4NCAxLjEtLjcwOEM0Ljg5OSAxLjc5NSA2LjM1NCAxLjUgOCAxLjVjMS42NDcgMCAzLjEwMi4yOTUgNC4xMTcuNzQyLjUxLjIyNC44NzQuNDcgMS4xMDEuNzA3LjIyNC4yMzMuMjgyLjQxOC4yODIuNTUxIDAgLjEzMy0uMDU4LjMxOC0uMjgyLjU1LS4yMjcuMjM3LS41OTIuNDg0LTEuMS43MDhDMTEuMTAxIDUuMjA1IDkuNjQ2IDUuNSA4IDUuNWMtMS42NDcgMC0zLjEwMi0uMjk1LTQuMTE3LS43NDItLjUxLS4yMjQtLjg3NC0uNDctMS4xMDEtLjcwNy0uMjI0LS4yMzMtLjI4Mi0uNDE4LS4yODItLjU1MXpNMSAzLjVjMC0uNjI2LjI5Mi0xLjE2NS43LTEuNTkuNDA2LS40MjIuOTU2LS43NjcgMS41NzktMS4wNDFDNC41MjUuMzIgNi4xOTUgMCA4IDBjMS44MDUgMCAzLjQ3NS4zMiA0LjcyMi44NjkuNjIyLjI3NCAxLjE3Mi42MiAxLjU3OCAxLjA0LjQwOC40MjYuNy45NjUuNyAxLjU5MXY5YzAgLjYyNi0uMjkyIDEuMTY1LS43IDEuNTktLjQwNi40MjItLjk1Ni43NjctMS41NzkgMS4wNDFDMTEuNDc2IDE1LjY4IDkuODA2IDE2IDggMTZjLTEuODA1IDAtMy40NzUtLjMyLTQuNzIxLS44NjktLjYyMy0uMjc0LTEuMTczLS42Mi0xLjU3OS0xLjA0LS40MDgtLjQyNi0uNy0uOTY1LS43LTEuNTkxdi05ek0yLjUgOFY1LjcyNGMuMjQxLjE1LjUwMy4yODYuNzc5LjQwN0M0LjUyNSA2LjY4IDYuMTk1IDcgOCA3YzEuODA1IDAgMy40NzUtLjMyIDQuNzIyLS44NjkuMjc1LS4xMjEuNTM3LS4yNTcuNzc4LS40MDdWOGMwIC4xMzMtLjA1OC4zMTgtLjI4Mi41NS0uMjI3LjIzNy0uNTkyLjQ4NC0xLjEuNzA4QzExLjEwMSA5LjcwNSA5LjY0NiAxMCA4IDEwYy0xLjY0NyAwLTMuMTAyLS4yOTUtNC4xMTctLjc0Mi0uNTEtLjIyNC0uODc0LS40Ny0xLjEwMS0uNzA3QzIuNTU4IDguMzE4IDIuNSA4LjEzMyAyLjUgOHptMCAyLjIyNVYxMi41YzAgLjEzMy4wNTguMzE4LjI4Mi41NS4yMjcuMjM3LjU5Mi40ODQgMS4xLjcwOCAxLjAxNi40NDcgMi40NzEuNzQyIDQuMTE4Ljc0MiAxLjY0NyAwIDMuMTAyLS4yOTUgNC4xMTctLjc0Mi41MS0uMjI0Ljg3NC0uNDcgMS4xMDEtLjcwNy4yMjQtLjIzMy4yODItLjQxOC4yODItLjU1MXYtMi4yNzVjLS4yNDEuMTUtLjUwMy4yODUtLjc3OC40MDYtMS4yNDcuNTQ5LTIuOTE3Ljg2OS00LjcyMi44NjktMS44MDUgMC0zLjQ3NS0uMzItNC43MjEtLjg2OWE2LjIzNiA2LjIzNiAwIDAxLS43NzktLjQwNnpcIj48L3BhdGg+PC9zdmc+XHJcbiAgICAgICAgICAgICAgICA8JT0gY29tcHV0ZWQuZGlza1VzYWdlICU+IHVzZWRcclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8JSBpZiAoY29tcHV0ZWQucGx1Z2lucy5saW5lcykgeyAlPlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGQgPCU9IGNvbXB1dGVkLnBsdWdpbnMubGluZXMuZXJyb3IgPyAnZXJyb3InIDogJycgJT5cIj5cclxuICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNMi43NSAxLjVhLjI1LjI1IDAgMDAtLjI1LjI1djEyLjVjMCAuMTM4LjExMi4yNS4yNS4yNWgxMC41YS4yNS4yNSAwIDAwLjI1LS4yNVY0LjY2NGEuMjUuMjUgMCAwMC0uMDczLS4xNzdsLTIuOTE0LTIuOTE0YS4yNS4yNSAwIDAwLS4xNzctLjA3M0gyLjc1ek0xIDEuNzVDMSAuNzg0IDEuNzg0IDAgMi43NSAwaDcuNTg2Yy40NjQgMCAuOTA5LjE4NCAxLjIzNy41MTNsMi45MTQgMi45MTRjLjMyOS4zMjguNTEzLjc3My41MTMgMS4yMzd2OS41ODZBMS43NSAxLjc1IDAgMDExMy4yNSAxNkgyLjc1QTEuNzUgMS43NSAwIDAxMSAxNC4yNVYxLjc1em03IDEuNWEuNzUuNzUgMCAwMS43NS43NXYxLjVoMS41YS43NS43NSAwIDAxMCAxLjVoLTEuNXYxLjVhLjc1Ljc1IDAgMDEtMS41IDBWN2gtMS41YS43NS43NSAwIDAxMC0xLjVoMS41VjRBLjc1Ljc1IDAgMDE4IDMuMjV6bS0zIDhhLjc1Ljc1IDAgMDEuNzUtLjc1aDQuNWEuNzUuNzUgMCAwMTAgMS41aC00LjVhLjc1Ljc1IDAgMDEtLjc1LS43NXpcIj48L3BhdGg+PC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgPCUgaWYgKGNvbXB1dGVkLnBsdWdpbnMubGluZXMuZXJyb3IpIHsgJT5cclxuICAgICAgICAgICAgICAgICAgICAgIDwlPSBjb21wdXRlZC5wbHVnaW5zLmxpbmVzLmVycm9yLm1lc3NhZ2UgJT5cclxuICAgICAgICAgICAgICAgICAgICA8JSB9IGVsc2UgeyAlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPCU9IGNvbXB1dGVkLnBsdWdpbnMubGluZXMuYWRkZWQgJT4gYWRkZWQsIDwlPSBjb21wdXRlZC5wbHVnaW5zLmxpbmVzLmRlbGV0ZWQgJT4gcmVtb3ZlZFxyXG4gICAgICAgICAgICAgICAgICAgIDwlIH0gJT5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPCUgfSAlPlxyXG4gICAgICAgICAgICA8L3NlY3Rpb24+XHJcbiAgICAgICAgICAgIDxzZWN0aW9uPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZFwiPlxyXG4gICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiPjxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTQuMjUgMi41Yy0xLjMzNiAwLTIuNzUgMS4xNjQtMi43NSAzIDAgMi4xNSAxLjU4IDQuMTQ0IDMuMzY1IDUuNjgyQTIwLjU2NSAyMC41NjUgMCAwMDggMTMuMzkzYTIwLjU2MSAyMC41NjEgMCAwMDMuMTM1LTIuMjExQzEyLjkyIDkuNjQ0IDE0LjUgNy42NSAxNC41IDUuNWMwLTEuODM2LTEuNDE0LTMtMi43NS0zLTEuMzczIDAtMi42MDkuOTg2LTMuMDI5IDIuNDU2YS43NS43NSAwIDAxLTEuNDQyIDBDNi44NTkgMy40ODYgNS42MjMgMi41IDQuMjUgMi41ek04IDE0LjI1bC0uMzQ1LjY2Ni0uMDAyLS4wMDEtLjAwNi0uMDAzLS4wMTgtLjAxYTcuNjQzIDcuNjQzIDAgMDEtLjMxLS4xNyAyMi4wNzUgMjIuMDc1IDAgMDEtMy40MzQtMi40MTRDMi4wNDUgMTAuNzMxIDAgOC4zNSAwIDUuNSAwIDIuODM2IDIuMDg2IDEgNC4yNSAxIDUuNzk3IDEgNy4xNTMgMS44MDIgOCAzLjAyIDguODQ3IDEuODAyIDEwLjIwMyAxIDExLjc1IDEgMTMuOTE0IDEgMTYgMi44MzYgMTYgNS41YzAgMi44NS0yLjA0NSA1LjIzMS0zLjg4NSA2LjgxOGEyMi4wOCAyMi4wOCAwIDAxLTMuNzQ0IDIuNTg0bC0uMDE4LjAxLS4wMDYuMDAzaC0uMDAyTDggMTQuMjV6bTAgMGwuMzQ1LjY2NmEuNzUyLjc1MiAwIDAxLS42OSAwTDggMTQuMjV6XCI+PC9wYXRoPjwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgPCU9IHVzZXIuc3BvbnNvcnNoaXBzQXNNYWludGFpbmVyLnRvdGFsQ291bnQgJT4gU3BvbnNvcjwlPSBzKHVzZXIuc3BvbnNvcnNoaXBzQXNNYWludGFpbmVyLnRvdGFsQ291bnQpICU+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkXCI+XHJcbiAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNOCAuMjVhLjc1Ljc1IDAgMDEuNjczLjQxOGwxLjg4MiAzLjgxNSA0LjIxLjYxMmEuNzUuNzUgMCAwMS40MTYgMS4yNzlsLTMuMDQ2IDIuOTcuNzE5IDQuMTkyYS43NS43NSAwIDAxLTEuMDg4Ljc5MUw4IDEyLjM0N2wtMy43NjYgMS45OGEuNzUuNzUgMCAwMS0xLjA4OC0uNzlsLjcyLTQuMTk0TC44MTggNi4zNzRhLjc1Ljc1IDAgMDEuNDE2LTEuMjhsNC4yMS0uNjExTDcuMzI3LjY2OEEuNzUuNzUgMCAwMTggLjI1em0wIDIuNDQ1TDYuNjE1IDUuNWEuNzUuNzUgMCAwMS0uNTY0LjQxbC0zLjA5Ny40NSAyLjI0IDIuMTg0YS43NS43NSAwIDAxLjIxNi42NjRsLS41MjggMy4wODQgMi43NjktMS40NTZhLjc1Ljc1IDAgMDEuNjk4IDBsMi43NyAxLjQ1Ni0uNTMtMy4wODRhLjc1Ljc1IDAgMDEuMjE2LS42NjRsMi4yNC0yLjE4My0zLjA5Ni0uNDVhLjc1Ljc1IDAgMDEtLjU2NC0uNDFMOCAyLjY5NHYuMDAxelwiPjwvcGF0aD48L3N2Zz5cclxuICAgICAgICAgICAgICAgIDwlPSBjb21wdXRlZC5yZXBvc2l0b3JpZXMuc3RhcmdhemVycyAlPiBTdGFyZ2F6ZXI8JT0gcyhjb21wdXRlZC5yZXBvc2l0b3JpZXMuc3RhcmdhemVycykgJT5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk01IDMuMjVhLjc1Ljc1IDAgMTEtMS41IDAgLjc1Ljc1IDAgMDExLjUgMHptMCAyLjEyMmEyLjI1IDIuMjUgMCAxMC0xLjUgMHYuODc4QTIuMjUgMi4yNSAwIDAwNS43NSA4LjVoMS41djIuMTI4YTIuMjUxIDIuMjUxIDAgMTAxLjUgMFY4LjVoMS41YTIuMjUgMi4yNSAwIDAwMi4yNS0yLjI1di0uODc4YTIuMjUgMi4yNSAwIDEwLTEuNSAwdi44NzhhLjc1Ljc1IDAgMDEtLjc1Ljc1aC00LjVBLjc1Ljc1IDAgMDE1IDYuMjV2LS44Nzh6bTMuNzUgNy4zNzhhLjc1Ljc1IDAgMTEtMS41IDAgLjc1Ljc1IDAgMDExLjUgMHptMy04Ljc1YS43NS43NSAwIDEwMC0xLjUuNzUuNzUgMCAwMDAgMS41elwiPjwvcGF0aD48L3N2Zz5cclxuICAgICAgICAgICAgICAgIDwlPSBjb21wdXRlZC5yZXBvc2l0b3JpZXMuZm9ya3MgJT4gRm9yazwlPSBzKGNvbXB1dGVkLnJlcG9zaXRvcmllcy5mb3JrcykgJT5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk0xLjY3OSA3LjkzMmMuNDEyLS42MjEgMS4yNDItMS43NSAyLjM2Ni0yLjcxN0M1LjE3NSA0LjI0MiA2LjUyNyAzLjUgOCAzLjVjMS40NzMgMCAyLjgyNC43NDIgMy45NTUgMS43MTUgMS4xMjQuOTY3IDEuOTU0IDIuMDk2IDIuMzY2IDIuNzE3YS4xMTkuMTE5IDAgMDEwIC4xMzZjLS40MTIuNjIxLTEuMjQyIDEuNzUtMi4zNjYgMi43MTdDMTAuODI1IDExLjc1OCA5LjQ3MyAxMi41IDggMTIuNWMtMS40NzMgMC0yLjgyNC0uNzQyLTMuOTU1LTEuNzE1QzIuOTIgOS44MTggMi4wOSA4LjY5IDEuNjc5IDguMDY4YS4xMTkuMTE5IDAgMDEwLS4xMzZ6TTggMmMtMS45ODEgMC0zLjY3Ljk5Mi00LjkzMyAyLjA3OEMxLjc5NyA1LjE2OS44OCA2LjQyMy40MyA3LjFhMS42MTkgMS42MTkgMCAwMDAgMS43OThjLjQ1LjY3OCAxLjM2NyAxLjkzMiAyLjYzNyAzLjAyNEM0LjMyOSAxMy4wMDggNi4wMTkgMTQgOCAxNGMxLjk4MSAwIDMuNjctLjk5MiA0LjkzMy0yLjA3OCAxLjI3LTEuMDkxIDIuMTg3LTIuMzQ1IDIuNjM3LTMuMDIzYTEuNjE5IDEuNjE5IDAgMDAwLTEuNzk4Yy0uNDUtLjY3OC0xLjM2Ny0xLjkzMi0yLjYzNy0zLjAyM0MxMS42NzEgMi45OTIgOS45ODEgMiA4IDJ6bTAgOGEyIDIgMCAxMDAtNCAyIDIgMCAwMDAgNHpcIj48L3BhdGg+PC9zdmc+XHJcbiAgICAgICAgICAgICAgICA8JT0gY29tcHV0ZWQucmVwb3NpdG9yaWVzLndhdGNoZXJzICU+IFdhdGNoZXI8JT0gcyhjb21wdXRlZC5yZXBvc2l0b3JpZXMud2F0Y2hlcnMpICU+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPCUgaWYgKGNvbXB1dGVkLnBsdWdpbnMudHJhZmZpYykgeyAlPlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGQgPCU9IGNvbXB1dGVkLnBsdWdpbnMudHJhZmZpYy5lcnJvciA/ICdlcnJvcicgOiAnJyAlPlwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk0wIDEuNzVBLjc1Ljc1IDAgMDEuNzUgMWg0LjI1M2MxLjIyNyAwIDIuMzE3LjU5IDMgMS41MDFBMy43NDQgMy43NDQgMCAwMTExLjAwNiAxaDQuMjQ1YS43NS43NSAwIDAxLjc1Ljc1djEwLjVhLjc1Ljc1IDAgMDEtLjc1Ljc1aC00LjUwN2EyLjI1IDIuMjUgMCAwMC0xLjU5MS42NTlsLS42MjIuNjIxYS43NS43NSAwIDAxLTEuMDYgMGwtLjYyMi0uNjIxQTIuMjUgMi4yNSAwIDAwNS4yNTggMTNILjc1YS43NS43NSAwIDAxLS43NS0uNzVWMS43NXptOC43NTUgM2EyLjI1IDIuMjUgMCAwMTIuMjUtMi4yNUgxNC41djloLTMuNzU3Yy0uNzEgMC0xLjQuMjAxLTEuOTkyLjU3MmwuMDA0LTcuMzIyem0tMS41MDQgNy4zMjRsLjAwNC01LjA3My0uMDAyLTIuMjUzQTIuMjUgMi4yNSAwIDAwNS4wMDMgMi41SDEuNXY5aDMuNzU3YTMuNzUgMy43NSAwIDAxMS45OTQuNTc0elwiPjwvcGF0aD48L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICA8JSBpZiAoY29tcHV0ZWQucGx1Z2lucy50cmFmZmljLmVycm9yKSB7ICU+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8JT0gY29tcHV0ZWQucGx1Z2lucy50cmFmZmljLmVycm9yLm1lc3NhZ2UgJT5cclxuICAgICAgICAgICAgICAgICAgICA8JSB9IGVsc2UgeyAlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPCU9IGNvbXB1dGVkLnBsdWdpbnMudHJhZmZpYy52aWV3cy5jb3VudCAlPiB2aWV3PCU9IHMoY29tcHV0ZWQucGx1Z2lucy50cmFmZmljLnZpZXdzLmNvdW50KSAlPiBpbiBsYXN0IHR3byB3ZWVrc1xyXG4gICAgICAgICAgICAgICAgICAgIDwlIH0gJT5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPCUgfSAlPlxyXG4gICAgICAgICAgICA8L3NlY3Rpb24+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L3NlY3Rpb24+XHJcbiAgICAgIDwlIH0gJT5cclxuXHJcbiAgICAgIDwlIGlmIChjb21wdXRlZC5wbHVnaW5zLmZvbGxvd3VwKSB7ICU+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG5cclxuICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPVwiY29sdW1uXCI+XHJcbiAgICAgICAgICAgIDxoMz5Jc3N1ZXM8L2gzPlxyXG4gICAgICAgICAgICA8JSBpZiAoY29tcHV0ZWQucGx1Z2lucy5mb2xsb3d1cC5lcnJvcikgeyAlPlxyXG4gICAgICAgICAgICAgIDxzZWN0aW9uPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkIGVycm9yXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk0yLjM0MyAxMy42NTdBOCA4IDAgMTExMy42NTcgMi4zNDMgOCA4IDAgMDEyLjM0MyAxMy42NTd6TTYuMDMgNC45N2EuNzUuNzUgMCAwMC0xLjA2IDEuMDZMNi45NCA4IDQuOTcgOS45N2EuNzUuNzUgMCAxMDEuMDYgMS4wNkw4IDkuMDZsMS45NyAxLjk3YS43NS43NSAwIDEwMS4wNi0xLjA2TDkuMDYgOGwxLjk3LTEuOTdhLjc1Ljc1IDAgMTAtMS4wNi0xLjA2TDggNi45NCA2LjAzIDQuOTd6XCI+PC9wYXRoPjwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICA8JT0gY29tcHV0ZWQucGx1Z2lucy5mb2xsb3d1cC5lcnJvci5tZXNzYWdlICU+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L3NlY3Rpb24+XHJcbiAgICAgICAgICAgIDwlIH0gZWxzZSB7ICU+XHJcbiAgICAgICAgICAgICAgPHN2ZyBjbGFzcz1cImJhclwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjIyMFwiIGhlaWdodD1cIjhcIj5cclxuICAgICAgICAgICAgICAgIDxtYXNrIGlkPVwiaXNzdWVzLWJhclwiPlxyXG4gICAgICAgICAgICAgICAgICA8cmVjdCB4PVwiMFwiIHk9XCIwXCIgd2lkdGg9XCIyMjBcIiBoZWlnaHQ9XCI4XCIgZmlsbD1cIndoaXRlXCIgcng9XCI1XCIvPlxyXG4gICAgICAgICAgICAgICAgPC9tYXNrPlxyXG4gICAgICAgICAgICAgICAgPHJlY3QgbWFzaz1cInVybCgjaXNzdWVzLWJhcilcIiB4PVwiMFwiIHk9XCIwXCIgd2lkdGg9XCI8JT0gY29tcHV0ZWQucGx1Z2lucy5mb2xsb3d1cC5pc3N1ZXMuY291bnQgPyAwIDogMjIwICU+XCIgaGVpZ2h0PVwiOFwiIGZpbGw9XCIjZDFkNWRhXCIvPlxyXG4gICAgICAgICAgICAgICAgPHJlY3QgbWFzaz1cInVybCgjaXNzdWVzLWJhcilcIiB4PVwiMFwiIHk9XCIwXCIgd2lkdGg9XCI8JT0gKGNvbXB1dGVkLnBsdWdpbnMuZm9sbG93dXAuaXNzdWVzLmNsb3NlZC9jb21wdXRlZC5wbHVnaW5zLmZvbGxvd3VwLmlzc3Vlcy5jb3VudCkqMjIwIHx8IDAgJT5cIiBoZWlnaHQ9XCI4XCIgZmlsbD1cIiNkNzNhNDlcIi8+XHJcbiAgICAgICAgICAgICAgICA8cmVjdCBtYXNrPVwidXJsKCNpc3N1ZXMtYmFyKVwiIHg9XCI8JT0gKGNvbXB1dGVkLnBsdWdpbnMuZm9sbG93dXAuaXNzdWVzLmNsb3NlZC9jb21wdXRlZC5wbHVnaW5zLmZvbGxvd3VwLmlzc3Vlcy5jb3VudCkqMjIwIHx8IDAgJT5cIiB5PVwiMFwiIHdpZHRoPVwiPCU9ICgxLWNvbXB1dGVkLnBsdWdpbnMuZm9sbG93dXAuaXNzdWVzLmNsb3NlZC9jb21wdXRlZC5wbHVnaW5zLmZvbGxvd3VwLmlzc3Vlcy5jb3VudCkqMjIwIHx8IDAgJT5cIiBoZWlnaHQ9XCI4XCIgZmlsbD1cIiMyOGE3NDVcIi8+XHJcbiAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkIGhvcml6b250YWwgZmlsbC13aWR0aFwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkIGNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbD1cIiNkNzNhNDlcIiBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk0xLjUgOGE2LjUgNi41IDAgMDExMC42NS01LjAwMy43NS43NSAwIDAwLjk1OS0xLjE1MyA4IDggMCAxMDIuNTkyIDguMzMuNzUuNzUgMCAxMC0xLjQ0NC0uNDA3QTYuNSA2LjUgMCAwMTEuNSA4ek04IDEyYTEgMSAwIDEwMC0yIDEgMSAwIDAwMCAyem0wLThhLjc1Ljc1IDAgMDEuNzUuNzV2My41YS43NS43NSAwIDExLTEuNSAwdi0zLjVBLjc1Ljc1IDAgMDE4IDR6bTQuNzggNC4yOGwzLTNhLjc1Ljc1IDAgMDAtMS4wNi0xLjA2bC0yLjQ3IDIuNDctLjk3LS45N2EuNzQ5Ljc0OSAwIDEwLTEuMDYgMS4wNmwxLjUgMS41YS43NS43NSAwIDAwMS4wNiAwelwiPjwvcGF0aD48L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJuby13cmFwXCI+PCU9IGNvbXB1dGVkLnBsdWdpbnMuZm9sbG93dXAuaXNzdWVzLmNsb3NlZCAlPiBDbG9zZWQ8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZCBjZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiPjxwYXRoIGZpbGw9XCIjMjhhNzQ1XCIgZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNOCAxLjVhNi41IDYuNSAwIDEwMCAxMyA2LjUgNi41IDAgMDAwLTEzek0wIDhhOCA4IDAgMTExNiAwQTggOCAwIDAxMCA4em05IDNhMSAxIDAgMTEtMiAwIDEgMSAwIDAxMiAwem0tLjI1LTYuMjVhLjc1Ljc1IDAgMDAtMS41IDB2My41YS43NS43NSAwIDAwMS41IDB2LTMuNXpcIj48L3BhdGg+PC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibm8td3JhcFwiPjwlPSBjb21wdXRlZC5wbHVnaW5zLmZvbGxvd3VwLmlzc3Vlcy5vcGVuICU+IE9wZW48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPCUgfSAlPlxyXG4gICAgICAgICAgPC9zZWN0aW9uPlxyXG5cclxuICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPVwiY29sdW1uXCI+XHJcbiAgICAgICAgICAgIDxoMz5QdWxsIHJlcXVlc3RzPC9oMz5cclxuICAgICAgICAgICAgPCUgaWYgKGNvbXB1dGVkLnBsdWdpbnMuZm9sbG93dXAuZXJyb3IpIHsgJT5cclxuICAgICAgICAgICAgICA8c2VjdGlvbj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZCBlcnJvclwiPlxyXG4gICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNMi4zNDMgMTMuNjU3QTggOCAwIDExMTMuNjU3IDIuMzQzIDggOCAwIDAxMi4zNDMgMTMuNjU3ek02LjAzIDQuOTdhLjc1Ljc1IDAgMDAtMS4wNiAxLjA2TDYuOTQgOCA0Ljk3IDkuOTdhLjc1Ljc1IDAgMTAxLjA2IDEuMDZMOCA5LjA2bDEuOTcgMS45N2EuNzUuNzUgMCAxMDEuMDYtMS4wNkw5LjA2IDhsMS45Ny0xLjk3YS43NS43NSAwIDEwLTEuMDYtMS4wNkw4IDYuOTQgNi4wMyA0Ljk3elwiPjwvcGF0aD48L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgPCU9IGNvbXB1dGVkLnBsdWdpbnMuZm9sbG93dXAuZXJyb3IubWVzc2FnZSAlPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9zZWN0aW9uPlxyXG4gICAgICAgICAgICA8JSB9IGVsc2UgeyAlPlxyXG4gICAgICAgICAgICAgIDxzdmcgY2xhc3M9XCJiYXJcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyMjBcIiBoZWlnaHQ9XCI4XCI+XHJcbiAgICAgICAgICAgICAgICA8bWFzayBpZD1cInByLWJhclwiPlxyXG4gICAgICAgICAgICAgICAgICA8cmVjdCB4PVwiMFwiIHk9XCIwXCIgd2lkdGg9XCIyMjBcIiBoZWlnaHQ9XCI4XCIgZmlsbD1cIndoaXRlXCIgcng9XCI1XCIvPlxyXG4gICAgICAgICAgICAgICAgPC9tYXNrPlxyXG4gICAgICAgICAgICAgICAgPHJlY3QgbWFzaz1cInVybCgjcHItYmFyKVwiIHg9XCIwXCIgeT1cIjBcIiB3aWR0aD1cIjwlPSBjb21wdXRlZC5wbHVnaW5zLmZvbGxvd3VwLnByLmNvdW50ID8gMCA6IDIyMCAlPlwiIGhlaWdodD1cIjhcIiBmaWxsPVwiI2QxZDVkYVwiLz5cclxuICAgICAgICAgICAgICAgIDxyZWN0IG1hc2s9XCJ1cmwoI3ByLWJhcilcIiB4PVwiMFwiIHk9XCIwXCIgd2lkdGg9XCI8JT0gKGNvbXB1dGVkLnBsdWdpbnMuZm9sbG93dXAucHIubWVyZ2VkL2NvbXB1dGVkLnBsdWdpbnMuZm9sbG93dXAucHIuY291bnQpKjIyMCB8fCAwICU+XCIgaGVpZ2h0PVwiOFwiIGZpbGw9XCIjNmY0MmMxXCIvPlxyXG4gICAgICAgICAgICAgICAgPHJlY3QgbWFzaz1cInVybCgjcHItYmFyKVwiIHg9XCI8JT0gKGNvbXB1dGVkLnBsdWdpbnMuZm9sbG93dXAucHIubWVyZ2VkL2NvbXB1dGVkLnBsdWdpbnMuZm9sbG93dXAucHIuY291bnQpKjIyMCB8fCAwICU+XCIgeT1cIjBcIiB3aWR0aD1cIjwlPSAoMS1jb21wdXRlZC5wbHVnaW5zLmZvbGxvd3VwLnByLm1lcmdlZC9jb21wdXRlZC5wbHVnaW5zLmZvbGxvd3VwLnByLmNvdW50KSoyMjAgfHwgMCAlPlwiIGhlaWdodD1cIjhcIiBmaWxsPVwiIzI4YTc0NVwiLz5cclxuICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGQgaG9yaXpvbnRhbCBmaWxsLXdpZHRoXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGQgY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsPVwiIzZmNDJjMVwiIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTUgMy4yNTRWMy4yNXYuMDA1YS43NS43NSAwIDExMC0uMDA1di4wMDR6bS40NSAxLjlhMi4yNSAyLjI1IDAgMTAtMS45NS4yMTh2NS4yNTZhMi4yNSAyLjI1IDAgMTAxLjUgMFY3LjEyM0E1LjczNSA1LjczNSAwIDAwOS4yNSA5aDEuMzc4YTIuMjUxIDIuMjUxIDAgMTAwLTEuNUg5LjI1YTQuMjUgNC4yNSAwIDAxLTMuOC0yLjM0NnpNMTIuNzUgOWEuNzUuNzUgMCAxMDAtMS41Ljc1Ljc1IDAgMDAwIDEuNXptLTguNSA0LjVhLjc1Ljc1IDAgMTAwLTEuNS43NS43NSAwIDAwMCAxLjV6XCI+PC9wYXRoPjwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm5vLXdyYXBcIj48JT0gY29tcHV0ZWQucGx1Z2lucy5mb2xsb3d1cC5wci5tZXJnZWQgJT4gTWVyZ2VkPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGQgY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsPVwiIzI4YTc0NVwiIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTcuMTc3IDMuMDczTDkuNTczLjY3N0EuMjUuMjUgMCAwMTEwIC44NTR2NC43OTJhLjI1LjI1IDAgMDEtLjQyNy4xNzdMNy4xNzcgMy40MjdhLjI1LjI1IDAgMDEwLS4zNTR6TTMuNzUgMi41YS43NS43NSAwIDEwMCAxLjUuNzUuNzUgMCAwMDAtMS41em0tMi4yNS43NWEyLjI1IDIuMjUgMCAxMTMgMi4xMjJ2NS4yNTZhMi4yNTEgMi4yNTEgMCAxMS0xLjUgMFY1LjM3MkEyLjI1IDIuMjUgMCAwMTEuNSAzLjI1ek0xMSAyLjVoLTFWNGgxYTEgMSAwIDAxMSAxdjUuNjI4YTIuMjUxIDIuMjUxIDAgMTAxLjUgMFY1QTIuNSAyLjUgMCAwMDExIDIuNXptMSAxMC4yNWEuNzUuNzUgMCAxMTEuNSAwIC43NS43NSAwIDAxLTEuNSAwek0zLjc1IDEyYS43NS43NSAwIDEwMCAxLjUuNzUuNzUgMCAwMDAtMS41elwiPjwvcGF0aD48L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJuby13cmFwXCI+PCU9IGNvbXB1dGVkLnBsdWdpbnMuZm9sbG93dXAucHIub3BlbiAlPiBPcGVuPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwlIH0gJT5cclxuICAgICAgICAgIDwvc2VjdGlvbj5cclxuXHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwlIH0gJT5cclxuXHJcbiAgICAgIDwlIGlmIChjb21wdXRlZC5wbHVnaW5zLmxhbmd1YWdlcykgeyAlPlxyXG4gICAgICAgIDxzZWN0aW9uIGNsYXNzPVwiY29sdW1uXCI+XHJcbiAgICAgICAgICA8aDM+TW9zdCB1c2VkIGxhbmd1YWdlczwvaDM+XHJcbiAgICAgICAgICA8JSBpZiAoY29tcHV0ZWQucGx1Z2lucy5sYW5ndWFnZXMuZXJyb3IpIHsgJT5cclxuICAgICAgICAgICAgPHNlY3Rpb24+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkIGVycm9yXCI+XHJcbiAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNMi4zNDMgMTMuNjU3QTggOCAwIDExMTMuNjU3IDIuMzQzIDggOCAwIDAxMi4zNDMgMTMuNjU3ek02LjAzIDQuOTdhLjc1Ljc1IDAgMDAtMS4wNiAxLjA2TDYuOTQgOCA0Ljk3IDkuOTdhLjc1Ljc1IDAgMTAxLjA2IDEuMDZMOCA5LjA2bDEuOTcgMS45N2EuNzUuNzUgMCAxMDEuMDYtMS4wNkw5LjA2IDhsMS45Ny0xLjk3YS43NS43NSAwIDEwLTEuMDYtMS4wNkw4IDYuOTQgNi4wMyA0Ljk3elwiPjwvcGF0aD48L3N2Zz5cclxuICAgICAgICAgICAgICAgIDwlPSBjb21wdXRlZC5wbHVnaW5zLmxhbmd1YWdlcy5lcnJvci5tZXNzYWdlICU+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvc2VjdGlvbj5cclxuICAgICAgICAgIDwlIH0gZWxzZSB7ICU+XHJcbiAgICAgICAgICAgIDxzdmcgY2xhc3M9XCJiYXJcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCI0NjBcIiBoZWlnaHQ9XCI4XCI+XHJcbiAgICAgICAgICAgICAgPG1hc2sgaWQ9XCJsYW5ndWFnZXMtYmFyXCI+XHJcbiAgICAgICAgICAgICAgICA8cmVjdCB4PVwiMFwiIHk9XCIwXCIgd2lkdGg9XCI0NjBcIiBoZWlnaHQ9XCI4XCIgZmlsbD1cIndoaXRlXCIgcng9XCI1XCIvPlxyXG4gICAgICAgICAgICAgIDwvbWFzaz5cclxuICAgICAgICAgICAgICA8cmVjdCBtYXNrPVwidXJsKCNsYW5ndWFnZXMtYmFyKVwiIHg9XCIwXCIgeT1cIjBcIiB3aWR0aD1cIjwlPSBjb21wdXRlZC5wbHVnaW5zLmxhbmd1YWdlcy5mYXZvcml0ZXMubGVuZ3RoID8gMCA6IDQ2MCAlPlwiIGhlaWdodD1cIjhcIiBmaWxsPVwiI2QxZDVkYVwiLz5cclxuICAgICAgICAgICAgICA8JSBmb3IgKGNvbnN0IHtuYW1lLCB2YWx1ZSwgY29sb3IsIHh9IG9mIGNvbXB1dGVkLnBsdWdpbnMubGFuZ3VhZ2VzLmZhdm9yaXRlcykgeyAlPlxyXG4gICAgICAgICAgICAgICAgPHJlY3QgbWFzaz1cInVybCgjbGFuZ3VhZ2VzLWJhcilcIiB4PVwiPCU9IHgqNDYwICU+XCIgeT1cIjBcIiB3aWR0aD1cIjwlPSB2YWx1ZSo0NjAgJT5cIiBoZWlnaHQ9XCI4XCIgZmlsbD1cIjwlPSBjb2xvciAlPlwiLz5cclxuICAgICAgICAgICAgICA8JSB9ICU+XHJcbiAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGQgY2VudGVyIGhvcml6b250YWwtd3JhcCBmaWxsLXdpZHRoXCI+XHJcbiAgICAgICAgICAgICAgPCUgZm9yIChjb25zdCB7bmFtZSwgdmFsdWUsIGNvbG9yfSBvZiBjb21wdXRlZC5wbHVnaW5zLmxhbmd1YWdlcy5mYXZvcml0ZXMpIHsgJT5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZCBjZW50ZXIgbm8td3JhcCBsYW5ndWFnZVwiPlxyXG4gICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbD1cIjwlPSBjb2xvciAlPlwiIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTggNGE0IDQgMCAxMDAgOCA0IDQgMCAwMDAtOHpcIj48L3BhdGg+PC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgIDwlPSBuYW1lICU+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8JSB9ICU+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPCUgfSAlPlxyXG4gICAgICAgIDwvc2VjdGlvbj5cclxuICAgICAgPCUgfSAlPlxyXG5cclxuICAgICAgPCUgaWYgKGNvbXB1dGVkLnBsdWdpbnMuZ2lzdHMpIHsgJT5cclxuICAgICAgICA8c2VjdGlvbj5cclxuICAgICAgICAgIDxoMiBjbGFzcz1cImZpZWxkXCI+XHJcbiAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk0xLjc1IDEuNWEuMjUuMjUgMCAwMC0uMjUuMjV2MTIuNWMwIC4xMzguMTEyLjI1LjI1LjI1aDEyLjVhLjI1LjI1IDAgMDAuMjUtLjI1VjEuNzVhLjI1LjI1IDAgMDAtLjI1LS4yNUgxLjc1ek0wIDEuNzVDMCAuNzg0Ljc4NCAwIDEuNzUgMGgxMi41QzE1LjIxNiAwIDE2IC43ODQgMTYgMS43NXYxMi41QTEuNzUgMS43NSAwIDAxMTQuMjUgMTZIMS43NUExLjc1IDEuNzUgMCAwMTAgMTQuMjVWMS43NXptOS4yMiAzLjcyYS43NS43NSAwIDAwMCAxLjA2TDEwLjY5IDggOS4yMiA5LjQ3YS43NS43NSAwIDEwMS4wNiAxLjA2bDItMmEuNzUuNzUgMCAwMDAtMS4wNmwtMi0yYS43NS43NSAwIDAwLTEuMDYgMHpNNi43OCA2LjUzYS43NS43NSAwIDAwLTEuMDYtMS4wNmwtMiAyYS43NS43NSAwIDAwMCAxLjA2bDIgMmEuNzUuNzUgMCAxMDEuMDYtMS4wNkw1LjMxIDhsMS40Ny0xLjQ3elwiPjwvcGF0aD48L3N2Zz5cclxuICAgICAgICAgICAgPCU9IGNvbXB1dGVkLnBsdWdpbnMuZ2lzdHMudG90YWxDb3VudCAlPiBHaXN0PCU9IHMoY29tcHV0ZWQucGx1Z2lucy5naXN0cy50b3RhbENvdW50KSAlPlxyXG4gICAgICAgICAgPC9oMj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgPCUgaWYgKGNvbXB1dGVkLnBsdWdpbnMuZ2lzdHMuZXJyb3IpIHsgJT5cclxuICAgICAgICAgICAgICA8c2VjdGlvbj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZCBlcnJvclwiPlxyXG4gICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNMi4zNDMgMTMuNjU3QTggOCAwIDExMTMuNjU3IDIuMzQzIDggOCAwIDAxMi4zNDMgMTMuNjU3ek02LjAzIDQuOTdhLjc1Ljc1IDAgMDAtMS4wNiAxLjA2TDYuOTQgOCA0Ljk3IDkuOTdhLjc1Ljc1IDAgMTAxLjA2IDEuMDZMOCA5LjA2bDEuOTcgMS45N2EuNzUuNzUgMCAxMDEuMDYtMS4wNkw5LjA2IDhsMS45Ny0xLjk3YS43NS43NSAwIDEwLTEuMDYtMS4wNkw4IDYuOTQgNi4wMyA0Ljk3elwiPjwvcGF0aD48L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgPCU9IGNvbXB1dGVkLnBsdWdpbnMuZ2lzdHMuZXJyb3IubWVzc2FnZSAlPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9zZWN0aW9uPlxyXG4gICAgICAgICAgICA8JSB9IGVsc2UgeyAlPlxyXG4gICAgICAgICAgICAgIDxzZWN0aW9uPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk04IC4yNWEuNzUuNzUgMCAwMS42NzMuNDE4bDEuODgyIDMuODE1IDQuMjEuNjEyYS43NS43NSAwIDAxLjQxNiAxLjI3OWwtMy4wNDYgMi45Ny43MTkgNC4xOTJhLjc1Ljc1IDAgMDEtMS4wODguNzkxTDggMTIuMzQ3bC0zLjc2NiAxLjk4YS43NS43NSAwIDAxLTEuMDg4LS43OWwuNzItNC4xOTRMLjgxOCA2LjM3NGEuNzUuNzUgMCAwMS40MTYtMS4yOGw0LjIxLS42MTFMNy4zMjcuNjY4QS43NS43NSAwIDAxOCAuMjV6bTAgMi40NDVMNi42MTUgNS41YS43NS43NSAwIDAxLS41NjQuNDFsLTMuMDk3LjQ1IDIuMjQgMi4xODRhLjc1Ljc1IDAgMDEuMjE2LjY2NGwtLjUyOCAzLjA4NCAyLjc2OS0xLjQ1NmEuNzUuNzUgMCAwMS42OTggMGwyLjc3IDEuNDU2LS41My0zLjA4NGEuNzUuNzUgMCAwMS4yMTYtLjY2NGwyLjI0LTIuMTgzLTMuMDk2LS40NWEuNzUuNzUgMCAwMS0uNTY0LS40MUw4IDIuNjk0di4wMDF6XCI+PC9wYXRoPjwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICA8JT0gY29tcHV0ZWQucGx1Z2lucy5naXN0cy5zdGFyZ2F6ZXJzICU+IFN0YXJnYXplcjwlPSBzKGNvbXB1dGVkLnBsdWdpbnMuZ2lzdHMuc3RhcmdhemVycykgJT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvc2VjdGlvbj5cclxuICAgICAgICAgICAgICA8c2VjdGlvbj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZFwiPlxyXG4gICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNNSAzLjI1YS43NS43NSAwIDExLTEuNSAwIC43NS43NSAwIDAxMS41IDB6bTAgMi4xMjJhMi4yNSAyLjI1IDAgMTAtMS41IDB2Ljg3OEEyLjI1IDIuMjUgMCAwMDUuNzUgOC41aDEuNXYyLjEyOGEyLjI1MSAyLjI1MSAwIDEwMS41IDBWOC41aDEuNWEyLjI1IDIuMjUgMCAwMDIuMjUtMi4yNXYtLjg3OGEyLjI1IDIuMjUgMCAxMC0xLjUgMHYuODc4YS43NS43NSAwIDAxLS43NS43NWgtNC41QS43NS43NSAwIDAxNSA2LjI1di0uODc4em0zLjc1IDcuMzc4YS43NS43NSAwIDExLTEuNSAwIC43NS43NSAwIDAxMS41IDB6bTMtOC43NWEuNzUuNzUgMCAxMDAtMS41Ljc1Ljc1IDAgMDAwIDEuNXpcIj48L3BhdGg+PC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgIDwlPSBjb21wdXRlZC5wbHVnaW5zLmdpc3RzLmZvcmtzICU+IEZvcms8JT0gcyhjb21wdXRlZC5wbHVnaW5zLmdpc3RzLmZvcmtzKSAlPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9zZWN0aW9uPlxyXG4gICAgICAgICAgICA8JSB9ICU+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L3NlY3Rpb24+XHJcbiAgICAgIDwlIH0gJT5cclxuXHJcbiAgICAgIDwlIGlmIChjb21wdXRlZC5wbHVnaW5zLnBhZ2VzcGVlZCkgeyAlPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgIDxzZWN0aW9uPlxyXG4gICAgICAgICAgICA8aDIgY2xhc3M9XCJmaWVsZFwiPlxyXG4gICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk0xNC4wNjQgMGE4Ljc1IDguNzUgMCAwMC02LjE4NyAyLjU2M2wtLjQ1OS40NThjLS4zMTQuMzE0LS42MTYuNjQxLS45MDQuOTc5SDMuMzFhMS43NSAxLjc1IDAgMDAtMS40OS44MzNMLjExIDcuNjA3YS43NS43NSAwIDAwLjQxOCAxLjExbDMuMTAyLjk1NGMuMDM3LjA1MS4wNzkuMS4xMjQuMTQ1bDIuNDI5IDIuNDI4Yy4wNDYuMDQ2LjA5NC4wODguMTQ1LjEyNWwuOTU0IDMuMTAyYS43NS43NSAwIDAwMS4xMS40MThsMi43NzQtMS43MDdhMS43NSAxLjc1IDAgMDAuODMzLTEuNDlWOS40ODVjLjMzOC0uMjg4LjY2NS0uNTkuOTc5LS45MDRsLjQ1OC0uNDU5QTguNzUgOC43NSAwIDAwMTYgMS45MzZWMS43NUExLjc1IDEuNzUgMCAwMDE0LjI1IDBoLS4xODZ6TTEwLjUgMTAuNjI1Yy0uMDg4LjA2LS4xNzcuMTE4LS4yNjYuMTc1bC0yLjM1IDEuNTIxLjU0OCAxLjc4MyAxLjk0OS0xLjJhLjI1LjI1IDAgMDAuMTE5LS4yMTN2LTIuMDY2ek0zLjY3OCA4LjExNkw1LjIgNS43NjZjLjA1OC0uMDkuMTE3LS4xNzguMTc2LS4yNjZIMy4zMDlhLjI1LjI1IDAgMDAtLjIxMy4xMTlsLTEuMiAxLjk1IDEuNzgyLjU0N3ptNS4yNi00LjQ5M0E3LjI1IDcuMjUgMCAwMTE0LjA2MyAxLjVoLjE4NmEuMjUuMjUgMCAwMS4yNS4yNXYuMTg2YTcuMjUgNy4yNSAwIDAxLTIuMTIzIDUuMTI3bC0uNDU5LjQ1OGExNS4yMSAxNS4yMSAwIDAxLTIuNDk5IDIuMDJsLTIuMzE3IDEuNS0yLjE0My0yLjE0MyAxLjUtMi4zMTdhMTUuMjUgMTUuMjUgMCAwMTIuMDItMi41bC40NTgtLjQ1OGguMDAyek0xMiA1YTEgMSAwIDExLTIgMCAxIDEgMCAwMTIgMHptLTguNDQgOS41NmExLjUgMS41IDAgMTAtMi4xMi0yLjEyYy0uNzM0LjczLTEuMDQ3IDIuMzMyLTEuMTUgMy4wMDNhLjIzLjIzIDAgMDAuMjY1LjI2NWMuNjcxLS4xMDMgMi4yNzMtLjQxNiAzLjAwNS0xLjE0OHpcIj48L3BhdGg+PC9zdmc+XHJcbiAgICAgICAgICAgICAgUGFnZVNwZWVkIEluc2lnaHRzXHJcbiAgICAgICAgICAgIDwvaDI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZFwiPlxyXG4gICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk03Ljc3NSAzLjI3NWEuNzUuNzUgMCAwMDEuMDYgMS4wNmwxLjI1LTEuMjVhMiAyIDAgMTEyLjgzIDIuODNsLTIuNSAyLjVhMiAyIDAgMDEtMi44MyAwIC43NS43NSAwIDAwLTEuMDYgMS4wNiAzLjUgMy41IDAgMDA0Ljk1IDBsMi41LTIuNWEzLjUgMy41IDAgMDAtNC45NS00Ljk1bC0xLjI1IDEuMjV6bS00LjY5IDkuNjRhMiAyIDAgMDEwLTIuODNsMi41LTIuNWEyIDIgMCAwMTIuODMgMCAuNzUuNzUgMCAwMDEuMDYtMS4wNiAzLjUgMy41IDAgMDAtNC45NSAwbC0yLjUgMi41YTMuNSAzLjUgMCAwMDQuOTUgNC45NWwxLjI1LTEuMjVhLjc1Ljc1IDAgMDAtMS4wNi0xLjA2bC0xLjI1IDEuMjVhMiAyIDAgMDEtMi44MyAwelwiPjwvcGF0aD48L3N2Zz5cclxuICAgICAgICAgICAgICA8JT0gdXNlci53ZWJzaXRlVXJsICU+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9zZWN0aW9uPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwlIGlmIChjb21wdXRlZC5wbHVnaW5zLnBhZ2VzcGVlZC5lcnJvcikgeyAlPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICA8c2VjdGlvbj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGQgZXJyb3JcIj5cclxuICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk0yLjM0MyAxMy42NTdBOCA4IDAgMTExMy42NTcgMi4zNDMgOCA4IDAgMDEyLjM0MyAxMy42NTd6TTYuMDMgNC45N2EuNzUuNzUgMCAwMC0xLjA2IDEuMDZMNi45NCA4IDQuOTcgOS45N2EuNzUuNzUgMCAxMDEuMDYgMS4wNkw4IDkuMDZsMS45NyAxLjk3YS43NS43NSAwIDEwMS4wNi0xLjA2TDkuMDYgOGwxLjk3LTEuOTdhLjc1Ljc1IDAgMTAtMS4wNi0xLjA2TDggNi45NCA2LjAzIDQuOTd6XCI+PC9wYXRoPjwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgPCU9IGNvbXB1dGVkLnBsdWdpbnMucGFnZXNwZWVkLmVycm9yLm1lc3NhZ2UgJT5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9zZWN0aW9uPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPCUgfSBlbHNlIHsgJT5cclxuICAgICAgICAgIDxzZWN0aW9uPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93IGZpbGwtd2lkdGhcIj5cclxuICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz1cImNhdGVnb3JpZXNcIj5cclxuICAgICAgICAgICAgICAgIDwlIGZvciAoY29uc3Qge3Njb3JlLCB0aXRsZX0gb2YgY29tcHV0ZWQucGx1Z2lucy5wYWdlc3BlZWQuc2NvcmVzKSB7ICU+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXRlZ29yaWUgY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxMjAgMTIwXCIgd2lkdGg9XCI1MFwiIGhlaWdodD1cIjUwXCIgY2xhc3M9XCJnYXVnZSA8JT0gIU51bWJlci5pc05hTihzY29yZSkgPyAoc2NvcmUgPj0gMC45ID8gJ2hpZ2gnIDogc2NvcmUgPj0gMC41ID8gJ2F2ZXJhZ2UnIDogJ2xvdycpIDogJycgJT5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxjaXJjbGUgY2xhc3M9XCJnYXVnZS1iYXNlXCIgcj1cIjUzXCIgY3g9XCI2MFwiIGN5PVwiNjBcIj48L2NpcmNsZT5cclxuICAgICAgICAgICAgICAgICAgICAgIDwlIGlmICghTnVtYmVyLmlzTmFOKHNjb3JlKSkgeyAlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8Y2lyY2xlIGNsYXNzPVwiZ2F1Z2UtYXJjXCIgdHJhbnNmb3JtPVwicm90YXRlKC05MCA2MCA2MClcIiByPVwiNTNcIiBjeD1cIjYwXCIgY3k9XCI2MFwiIHN0cm9rZS1kYXNoYXJyYXk9XCI8JT0gc2NvcmUgKiAzMjkgJT4gMzI5XCI+PC9jaXJjbGU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZXh0IHg9XCI2MFwiIHk9XCI2MFwiIGRvbWluYW50LWJhc2VsaW5lPVwiY2VudHJhbFwiID48JT0gTWF0aC5yb3VuZChzY29yZSoxMDApICU+PC90ZXh0PlxyXG4gICAgICAgICAgICAgICAgICAgICAgPCUgfSBlbHNlIHsgJT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRleHQgeD1cIjYwXCIgeT1cIjYwXCIgZG9taW5hbnQtYmFzZWxpbmU9XCJjZW50cmFsXCIgPi08L3RleHQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8JSB9ICU+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0aXRsZVwiPjwlPSB0aXRsZSAlPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8JSB9ICU+XHJcbiAgICAgICAgICAgICAgPC9zZWN0aW9uPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvc2VjdGlvbj5cclxuICAgICAgICA8JSB9ICU+XHJcbiAgICAgIDwlIH0gJT5cclxuXHJcbiAgICAgIDwlIGlmIChjb21wdXRlZC5wbHVnaW5zLmhhYml0cykgeyAlPlxyXG4gICAgICAgIDxzZWN0aW9uPlxyXG4gICAgICAgICAgPGgyIGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiPjxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTggMS41Yy0yLjM2MyAwLTQgMS42OS00IDMuNzUgMCAuOTg0LjQyNCAxLjYyNS45ODQgMi4zMDRsLjIxNC4yNTNjLjIyMy4yNjQuNDcuNTU2LjY3My44NDguMjg0LjQxMS41MzcuODk2LjYyMSAxLjQ5YS43NS43NSAwIDAxLTEuNDg0LjIxMWMtLjA0LS4yODItLjE2My0uNTQ3LS4zNy0uODQ3YTguNjk1IDguNjk1IDAgMDAtLjU0Mi0uNjhjLS4wODQtLjEtLjE3My0uMjA1LS4yNjgtLjMyQzMuMjAxIDcuNzUgMi41IDYuNzY2IDIuNSA1LjI1IDIuNSAyLjMxIDQuODYzIDAgOCAwczUuNSAyLjMxIDUuNSA1LjI1YzAgMS41MTYtLjcwMSAyLjUtMS4zMjggMy4yNTktLjA5NS4xMTUtLjE4NC4yMi0uMjY4LjMxOS0uMjA3LjI0NS0uMzgzLjQ1My0uNTQxLjY4MS0uMjA4LjMtLjMzLjU2NS0uMzcuODQ3YS43NS43NSAwIDAxLTEuNDg1LS4yMTJjLjA4NC0uNTkzLjMzNy0xLjA3OC42MjEtMS40ODkuMjAzLS4yOTIuNDUtLjU4NC42NzMtLjg0OC4wNzUtLjA4OC4xNDctLjE3My4yMTMtLjI1My41NjEtLjY3OS45ODUtMS4zMi45ODUtMi4zMDQgMC0yLjA2LTEuNjM3LTMuNzUtNC0zLjc1ek02IDE1LjI1YS43NS43NSAwIDAxLjc1LS43NWgyLjVhLjc1Ljc1IDAgMDEwIDEuNWgtMi41YS43NS43NSAwIDAxLS43NS0uNzV6TTUuNzUgMTJhLjc1Ljc1IDAgMDAwIDEuNWg0LjVhLjc1Ljc1IDAgMDAwLTEuNWgtNC41elwiPjwvcGF0aD48L3N2Zz5cclxuICAgICAgICAgICAgQ29kaW5nIGhhYml0c1xyXG4gICAgICAgICAgPC9oMj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgPCUgaWYgKGNvbXB1dGVkLnBsdWdpbnMuaGFiaXRzLmVycm9yKSB7ICU+XHJcbiAgICAgICAgICAgICAgPHNlY3Rpb24+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGQgZXJyb3JcIj5cclxuICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiPjxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTIuMzQzIDEzLjY1N0E4IDggMCAxMTEzLjY1NyAyLjM0MyA4IDggMCAwMTIuMzQzIDEzLjY1N3pNNi4wMyA0Ljk3YS43NS43NSAwIDAwLTEuMDYgMS4wNkw2Ljk0IDggNC45NyA5Ljk3YS43NS43NSAwIDEwMS4wNiAxLjA2TDggOS4wNmwxLjk3IDEuOTdhLjc1Ljc1IDAgMTAxLjA2LTEuMDZMOS4wNiA4bDEuOTctMS45N2EuNzUuNzUgMCAxMC0xLjA2LTEuMDZMOCA2Ljk0IDYuMDMgNC45N3pcIj48L3BhdGg+PC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgIDwlPSBjb21wdXRlZC5wbHVnaW5zLmhhYml0cy5lcnJvci5tZXNzYWdlICU+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L3NlY3Rpb24+XHJcbiAgICAgICAgICAgIDwlIH0gZWxzZSB7ICU+XHJcbiAgICAgICAgICAgICAgPHVsIGNsYXNzPVwiaGFiaXRzXCI+XHJcbiAgICAgICAgICAgICAgICA8JSBpZiAoY29tcHV0ZWQucGx1Z2lucy5oYWJpdHMuaW5kZW50cy5zdHlsZSkgeyAlPlxyXG4gICAgICAgICAgICAgICAgICA8bGk+VXNlIDwlPSBjb21wdXRlZC5wbHVnaW5zLmhhYml0cy5pbmRlbnRzLnN0eWxlICU+IGZvciBpbmRlbnRzPC9saT5cclxuICAgICAgICAgICAgICAgIDwlIH0gJT5cclxuICAgICAgICAgICAgICAgIDwlIGlmICghTnVtYmVyLmlzTmFOKGNvbXB1dGVkLnBsdWdpbnMuaGFiaXRzLmNvbW1pdHMuaG91cikpIHsgJT5cclxuICAgICAgICAgICAgICAgICAgPGxpPk1vc3RseSBwdXNoIGNvZGUgYXJvdW5kIDwlPSBjb21wdXRlZC5wbHVnaW5zLmhhYml0cy5jb21taXRzLmhvdXIgJT46MDA8L2xpPlxyXG4gICAgICAgICAgICAgICAgPCUgfSAlPlxyXG4gICAgICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgICAgIDwlIH0gJT5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvc2VjdGlvbj5cclxuICAgICAgPCUgfSAlPlxyXG5cclxuICAgICAgPCUgaWYgKGNvbXB1dGVkLnBsdWdpbnMubXVzaWMpIHsgJT5cclxuICAgICAgICA8c2VjdGlvbj5cclxuICAgICAgICAgIDxoMiBjbGFzcz1cImZpZWxkXCI+XHJcbiAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk0xLjUgOGE2LjUgNi41IDAgMTExMyAwIDYuNSA2LjUgMCAwMS0xMyAwek04IDBhOCA4IDAgMTAwIDE2QTggOCAwIDAwOCAwek02LjM3OSA1LjIyN0EuMjUuMjUgMCAwMDYgNS40NDJ2NS4xMTdhLjI1LjI1IDAgMDAuMzc5LjIxNGw0LjI2NC0yLjU1OWEuMjUuMjUgMCAwMDAtLjQyOEw2LjM3OSA1LjIyN3pcIj48L3BhdGg+PC9zdmc+XHJcbiAgICAgICAgICAgIDwlPSBjb21wdXRlZC5wbHVnaW5zLm11c2ljLm1vZGUgJT5cclxuICAgICAgICAgIDwvaDI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93IGZpbGwtd2lkdGhcIj5cclxuICAgICAgICAgICAgPHNlY3Rpb24+XHJcbiAgICAgICAgICAgICAgPCUgaWYgKGNvbXB1dGVkLnBsdWdpbnMubXVzaWMucHJvdmlkZXIpIHsgJT5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZFwiPlxyXG4gICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNMi4wMDIgMi43MjVhLjc1Ljc1IDAgMDEuNzk3LS42OTlDOC43OSAyLjQyIDEzLjU4IDcuMjEgMTMuOTc0IDEzLjIwMWEuNzUuNzUgMCAxMS0xLjQ5Ny4wOTggMTAuNTAyIDEwLjUwMiAwIDAwLTkuNzc2LTkuNzc2Ljc1Ljc1IDAgMDEtLjctLjc5OHpNMiAxM2ExIDEgMCAxMTIgMCAxIDEgMCAwMS0yIDB6bS44NC01Ljk1YS43NS43NSAwIDAwLS4xNzkgMS40ODljMi41MDkuMyA0LjUgMi4yOTEgNC44IDQuOGEuNzUuNzUgMCAxMDEuNDktLjE3OEE3LjAwMyA3LjAwMyAwIDAwMi44MzggNy4wNXpcIj48L3BhdGg+PC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgIEZyb20gPCU9IGNvbXB1dGVkLnBsdWdpbnMubXVzaWMucHJvdmlkZXIgJT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwlIH0gJT5cclxuICAgICAgICAgICAgICA8JSBpZiAoY29tcHV0ZWQucGx1Z2lucy5tdXNpYy5lcnJvcikgeyAlPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkIGVycm9yXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk0yLjM0MyAxMy42NTdBOCA4IDAgMTExMy42NTcgMi4zNDMgOCA4IDAgMDEyLjM0MyAxMy42NTd6TTYuMDMgNC45N2EuNzUuNzUgMCAwMC0xLjA2IDEuMDZMNi45NCA4IDQuOTcgOS45N2EuNzUuNzUgMCAxMDEuMDYgMS4wNkw4IDkuMDZsMS45NyAxLjk3YS43NS43NSAwIDEwMS4wNi0xLjA2TDkuMDYgOGwxLjk3LTEuOTdhLjc1Ljc1IDAgMTAtMS4wNi0xLjA2TDggNi45NCA2LjAzIDQuOTd6XCI+PC9wYXRoPjwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICA8JT0gY29tcHV0ZWQucGx1Z2lucy5tdXNpYy5lcnJvci5tZXNzYWdlICU+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8JSB9IGVsc2UgeyAlPlxyXG4gICAgICAgICAgICAgICAgPCUgaWYgKGNvbXB1dGVkLnBsdWdpbnMubXVzaWMudHJhY2tzLmxlbmd0aCkgeyAlPlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidHJhY2tsaXN0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPCUgZm9yIChjb25zdCB7bmFtZSA9IFwiXCIsIGFydGlzdCA9IFwiXCIsIGFydHdvcmsgPSBcIlwifSBvZiBjb21wdXRlZC5wbHVnaW5zLm11c2ljLnRyYWNrcykgeyAlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRyYWNrXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LDwlPSBhcnR3b3JrICU+XCIgd2lkdGg9XCIzMlwiIGhlaWdodD1cIjMyXCIgYWx0PVwiXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW5mb3NcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibmFtZVwiPjwlPSBuYW1lICU+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFydGlzdFwiPjwlPSBhcnRpc3QgJT48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8JSB9ICU+XHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPCUgfSBlbHNlIHsgJT5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiPjxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTEuNzUgMS41YS4yNS4yNSAwIDAwLS4yNS4yNXY5LjVjMCAuMTM4LjExMi4yNS4yNS4yNWgyYS43NS43NSAwIDAxLjc1Ljc1djIuMTlsMi43Mi0yLjcyYS43NS43NSAwIDAxLjUzLS4yMmg2LjVhLjI1LjI1IDAgMDAuMjUtLjI1di05LjVhLjI1LjI1IDAgMDAtLjI1LS4yNUgxLjc1ek0wIDEuNzVDMCAuNzg0Ljc4NCAwIDEuNzUgMGgxMi41QzE1LjIxNiAwIDE2IC43ODQgMTYgMS43NXY5LjVBMS43NSAxLjc1IDAgMDExNC4yNSAxM0g4LjA2bC0yLjU3MyAyLjU3M0ExLjQ1NyAxLjQ1NyAwIDAxMyAxNC41NDNWMTNIMS43NUExLjc1IDEuNzUgMCAwMTAgMTEuMjV2LTkuNXpNOSA5YTEgMSAwIDExLTIgMCAxIDEgMCAwMTIgMHptLS4yNS01LjI1YS43NS43NSAwIDAwLTEuNSAwdjIuNWEuNzUuNzUgMCAwMDEuNSAwdi0yLjV6XCI+PC9wYXRoPjwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgIE5vIG11c2ljIHJlY2VudGx5IGxpc3RlbmVkXHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPCUgfSAlPlxyXG4gICAgICAgICAgICAgIDwlIH0gJT5cclxuICAgICAgICAgICAgPC9zZWN0aW9uPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9zZWN0aW9uPlxyXG4gICAgICA8JSB9ICU+XHJcblxyXG4gICAgICA8JSBpZiAoY29tcHV0ZWQucGx1Z2lucy5wb3N0cykgeyAlPlxyXG4gICAgICAgIDxzZWN0aW9uPlxyXG4gICAgICAgICAgPGgyIGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiPjxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTQuNDU2LjczNGExLjc1IDEuNzUgMCAwMTIuODI2LjUwNGwuNjEzIDEuMzI3YTMuMDgxIDMuMDgxIDAgMDAyLjA4NCAxLjcwN2wyLjQ1NC41ODRjMS4zMzIuMzE3IDEuOCAxLjk3Mi44MzIgMi45NEwxMS4wNiAxMGwzLjcyIDMuNzJhLjc1Ljc1IDAgMTEtMS4wNjEgMS4wNkwxMCAxMS4wNmwtMi4yMDQgMi4yMDVjLS45NjguOTY4LTIuNjIzLjUtMi45NC0uODMybC0uNTg0LTIuNDU0YTMuMDgxIDMuMDgxIDAgMDAtMS43MDctMi4wODRsLTEuMzI3LS42MTNhMS43NSAxLjc1IDAgMDEtLjUwNC0yLjgyNkw0LjQ1Ni43MzR6TTUuOTIgMS44NjZhLjI1LjI1IDAgMDAtLjQwNC0uMDcyTDEuNzk0IDUuNTE2YS4yNS4yNSAwIDAwLjA3Mi40MDRsMS4zMjguNjEzQTQuNTgyIDQuNTgyIDAgMDE1LjczIDkuNjNsLjU4NCAyLjQ1NGEuMjUuMjUgMCAwMC40Mi4xMmw1LjQ3LTUuNDdhLjI1LjI1IDAgMDAtLjEyLS40Mkw5LjYzIDUuNzNhNC41ODEgNC41ODEgMCAwMS0zLjA5OC0yLjUzN0w1LjkyIDEuODY2elwiPjwvcGF0aD48L3N2Zz5cclxuICAgICAgICAgICAgUmVjZW50IGFydGljbGVzXHJcbiAgICAgICAgICA8L2gyPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBmaWxsLXdpZHRoXCI+XHJcbiAgICAgICAgICAgIDxzZWN0aW9uPlxyXG4gICAgICAgICAgICAgIDwlIGlmIChjb21wdXRlZC5wbHVnaW5zLnBvc3RzLmVycm9yKSB7ICU+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGQgZXJyb3JcIj5cclxuICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiPjxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTIuMzQzIDEzLjY1N0E4IDggMCAxMTEzLjY1NyAyLjM0MyA4IDggMCAwMTIuMzQzIDEzLjY1N3pNNi4wMyA0Ljk3YS43NS43NSAwIDAwLTEuMDYgMS4wNkw2Ljk0IDggNC45NyA5Ljk3YS43NS43NSAwIDEwMS4wNiAxLjA2TDggOS4wNmwxLjk3IDEuOTdhLjc1Ljc1IDAgMTAxLjA2LTEuMDZMOS4wNiA4bDEuOTctMS45N2EuNzUuNzUgMCAxMC0xLjA2LTEuMDZMOCA2Ljk0IDYuMDMgNC45N3pcIj48L3BhdGg+PC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgIDwlPSBjb21wdXRlZC5wbHVnaW5zLnBvc3RzLmVycm9yLm1lc3NhZ2UgJT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwlIH0gZWxzZSB7ICU+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiPjxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTIuMDAyIDIuNzI1YS43NS43NSAwIDAxLjc5Ny0uNjk5QzguNzkgMi40MiAxMy41OCA3LjIxIDEzLjk3NCAxMy4yMDFhLjc1Ljc1IDAgMTEtMS40OTcuMDk4IDEwLjUwMiAxMC41MDIgMCAwMC05Ljc3Ni05Ljc3Ni43NS43NSAwIDAxLS43LS43OTh6TTIgMTNhMSAxIDAgMTEyIDAgMSAxIDAgMDEtMiAwem0uODQtNS45NWEuNzUuNzUgMCAwMC0uMTc5IDEuNDg5YzIuNTA5LjMgNC41IDIuMjkxIDQuOCA0LjhhLjc1Ljc1IDAgMTAxLjQ5LS4xNzhBNy4wMDMgNy4wMDMgMCAwMDIuODM4IDcuMDV6XCI+PC9wYXRoPjwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICBGcm9tIDwlPSBjb21wdXRlZC5wbHVnaW5zLnBvc3RzLnNvdXJjZSAlPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8JSBpZiAoY29tcHV0ZWQucGx1Z2lucy5wb3N0cy5wb3N0cy5sZW5ndGgpIHsgJT5cclxuICAgICAgICAgICAgICAgICAgPCUgZm9yIChjb25zdCB7dGl0bGUsIGRhdGV9IG9mIGNvbXB1dGVkLnBsdWdpbnMucG9zdHMucG9zdHMpIHsgJT5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGQgcG9zdFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiPjxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTQuNzUgMGEuNzUuNzUgMCAwMS43NS43NVYyaDVWLjc1YS43NS43NSAwIDAxMS41IDBWMmgxLjI1Yy45NjYgMCAxLjc1Ljc4NCAxLjc1IDEuNzV2MTAuNUExLjc1IDEuNzUgMCAwMTEzLjI1IDE2SDIuNzVBMS43NSAxLjc1IDAgMDExIDE0LjI1VjMuNzVDMSAyLjc4NCAxLjc4NCAyIDIuNzUgMkg0Vi43NUEuNzUuNzUgMCAwMTQuNzUgMHptMCAzLjVoOC41YS4yNS4yNSAwIDAxLjI1LjI1VjZoLTExVjMuNzVhLjI1LjI1IDAgMDEuMjUtLjI1aDJ6bS0yLjI1IDR2Ni43NWMwIC4xMzguMTEyLjI1LjI1LjI1aDEwLjVhLjI1LjI1IDAgMDAuMjUtLjI1VjcuNWgtMTF6XCI+PC9wYXRoPjwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImluZm9zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkYXRlXCI+PCU9IGRhdGUgJT48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRpdGxlXCI+PCU9IHRpdGxlICU+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgPCUgfSAlPlxyXG4gICAgICAgICAgICAgICAgPCUgfSBlbHNlIHsgJT5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiPjxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTEuNzUgMS41YS4yNS4yNSAwIDAwLS4yNS4yNXY5LjVjMCAuMTM4LjExMi4yNS4yNS4yNWgyYS43NS43NSAwIDAxLjc1Ljc1djIuMTlsMi43Mi0yLjcyYS43NS43NSAwIDAxLjUzLS4yMmg2LjVhLjI1LjI1IDAgMDAuMjUtLjI1di05LjVhLjI1LjI1IDAgMDAtLjI1LS4yNUgxLjc1ek0wIDEuNzVDMCAuNzg0Ljc4NCAwIDEuNzUgMGgxMi41QzE1LjIxNiAwIDE2IC43ODQgMTYgMS43NXY5LjVBMS43NSAxLjc1IDAgMDExNC4yNSAxM0g4LjA2bC0yLjU3MyAyLjU3M0ExLjQ1NyAxLjQ1NyAwIDAxMyAxNC41NDNWMTNIMS43NUExLjc1IDEuNzUgMCAwMTAgMTEuMjV2LTkuNXpNOSA5YTEgMSAwIDExLTIgMCAxIDEgMCAwMTIgMHptLS4yNS01LjI1YS43NS43NSAwIDAwLTEuNSAwdjIuNWEuNzUuNzUgMCAwMDEuNSAwdi0yLjV6XCI+PC9wYXRoPjwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgIE5vIHJlY2VudCBwb3N0c1xyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwlIH0gJT5cclxuICAgICAgICAgICAgICA8JSB9ICU+XHJcbiAgICAgICAgICAgIDwvc2VjdGlvbj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvc2VjdGlvbj5cclxuICAgICAgPCUgfSAlPlxyXG5cclxuICAgICAgPCUgaWYgKGNvbXB1dGVkLnBsdWdpbnMuaXNvY2FsZW5kYXIpIHsgJT5cclxuICAgICAgICA8c2VjdGlvbj5cclxuICAgICAgICAgIDxoMiBjbGFzcz1cImZpZWxkXCI+XHJcbiAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk00Ljc1IDBhLjc1Ljc1IDAgMDEuNzUuNzVWMmg1Vi43NWEuNzUuNzUgMCAwMTEuNSAwVjJoMS4yNWMuOTY2IDAgMS43NS43ODQgMS43NSAxLjc1djEwLjVBMS43NSAxLjc1IDAgMDExMy4yNSAxNkgyLjc1QTEuNzUgMS43NSAwIDAxMSAxNC4yNVYzLjc1QzEgMi43ODQgMS43ODQgMiAyLjc1IDJINFYuNzVBLjc1Ljc1IDAgMDE0Ljc1IDB6bTAgMy41aDguNWEuMjUuMjUgMCAwMS4yNS4yNVY2aC0xMVYzLjc1YS4yNS4yNSAwIDAxLjI1LS4yNWgyem0tMi4yNSA0djYuNzVjMCAuMTM4LjExMi4yNS4yNS4yNWgxMC41YS4yNS4yNSAwIDAwLjI1LS4yNVY3LjVoLTExelwiPjwvcGF0aD48L3N2Zz5cclxuICAgICAgICAgICAgQ29udHJpYnV0aW9ucyBjYWxlbmRhclxyXG4gICAgICAgICAgPC9oMj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgPHNlY3Rpb24+XHJcbiAgICAgICAgICAgICAgPCUgaWYgKGNvbXB1dGVkLnBsdWdpbnMuaXNvY2FsZW5kYXIuZXJyb3IpIHsgJT5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZCBlcnJvclwiPlxyXG4gICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNMi4zNDMgMTMuNjU3QTggOCAwIDExMTMuNjU3IDIuMzQzIDggOCAwIDAxMi4zNDMgMTMuNjU3ek02LjAzIDQuOTdhLjc1Ljc1IDAgMDAtMS4wNiAxLjA2TDYuOTQgOCA0Ljk3IDkuOTdhLjc1Ljc1IDAgMTAxLjA2IDEuMDZMOCA5LjA2bDEuOTcgMS45N2EuNzUuNzUgMCAxMDEuMDYtMS4wNkw5LjA2IDhsMS45Ny0xLjk3YS43NS43NSAwIDEwLTEuMDYtMS4wNkw4IDYuOTQgNi4wMyA0Ljk3elwiPjwvcGF0aD48L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgPCU9IGNvbXB1dGVkLnBsdWdpbnMuaXNvY2FsZW5kYXIuZXJyb3IubWVzc2FnZSAlPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPCUgfSAlPlxyXG4gICAgICAgICAgICA8L3NlY3Rpb24+XHJcbiAgICAgICAgICAgIDwlIGlmICghY29tcHV0ZWQucGx1Z2lucy5pc29jYWxlbmRhci5lcnJvcikgeyAlPlxyXG4gICAgICAgICAgICAgIDxzZWN0aW9uPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk03Ljk5OCAxNC41YzIuODMyIDAgNS0xLjk4IDUtNC41IDAtMS40NjMtLjY4LTIuMTktMS44NzktMy4zODNsLS4wMzYtLjAzN2MtMS4wMTMtMS4wMDgtMi4zLTIuMjktMi44MzQtNC40MzQtLjMyMi4yNTYtLjYzLjU3OS0uODY0Ljk1My0uNDMyLjY5Ni0uNjIxIDEuNTgtLjA0NiAyLjczLjQ3My45NDcuNjcgMi4yODQtLjI3OCAzLjIzMi0uNjEuNjEtMS41NDUuODQtMi40MDMuNjMzYTIuNzg4IDIuNzg4IDAgMDEtMS40MzYtLjg3NEEzLjIxIDMuMjEgMCAwMDMgMTBjMCAyLjUzIDIuMTY0IDQuNSA0Ljk5OCA0LjV6TTkuNTMzLjc1M0M5LjQ5Ni4zNCA5LjE2LjAwOSA4Ljc3LjE0NiA3LjAzNS43NSA0LjM0IDMuMTg3IDUuOTk3IDYuNWMuMzQ0LjY4OS4yODUgMS4yMTguMDAzIDEuNS0uNDE5LjQxOS0xLjU0LjQ4Ny0yLjA0LS44MzItLjE3My0uNDU0LS42NTktLjc2Mi0xLjAzNS0uNDU0QzIuMDM2IDcuNDQgMS41IDguNzAyIDEuNSAxMGMwIDMuNTEyIDIuOTk4IDYgNi40OTggNnM2LjUtMi41IDYuNS02YzAtMi4xMzctMS4xMjgtMy4yNi0yLjMxMi00LjQzOC0xLjE5LTEuMTg0LTIuNDM2LTIuNDI1LTIuNjUzLTQuODF6XCI+PC9wYXRoPjwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICBDdXJyZW50IHN0cmVhayA8JT0gY29tcHV0ZWQucGx1Z2lucy5pc29jYWxlbmRhci5zdHJlYWsuY3VycmVudCAlPiBkYXk8JT0gcyhjb21wdXRlZC5wbHVnaW5zLmlzb2NhbGVuZGFyLnN0cmVhay5jdXJyZW50KSAlPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiPjxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTEuNSAxLjc1YS43NS43NSAwIDAwLTEuNSAwdjEyLjVjMCAuNDE0LjMzNi43NS43NS43NWgxNC41YS43NS43NSAwIDAwMC0xLjVIMS41VjEuNzV6bTE0LjI4IDIuNTNhLjc1Ljc1IDAgMDAtMS4wNi0xLjA2TDEwIDcuOTQgNy41MyA1LjQ3YS43NS43NSAwIDAwLTEuMDYgMEwzLjIyIDguNzJhLjc1Ljc1IDAgMDAxLjA2IDEuMDZMNyA3LjA2bDIuNDcgMi40N2EuNzUuNzUgMCAwMDEuMDYgMGw1LjI1LTUuMjV6XCI+PC9wYXRoPjwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICB+PCU9IGNvbXB1dGVkLnBsdWdpbnMuaXNvY2FsZW5kYXIuYXZlcmFnZSAlPiBjb21taXRzIHBlciBkYXlcclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvc2VjdGlvbj5cclxuICAgICAgICAgICAgPCUgfSAlPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8JSBpZiAoY29tcHV0ZWQucGx1Z2lucy5pc29jYWxlbmRhci5zdmcpIHsgJT5cclxuICAgICAgICAgICAgPCUtIGNvbXB1dGVkLnBsdWdpbnMuaXNvY2FsZW5kYXIuc3ZnICU+XHJcbiAgICAgICAgICA8JSB9ICU+XHJcbiAgICAgICAgPC9zZWN0aW9uPlxyXG4gICAgICA8JSB9ICU+XHJcblxyXG4gICAgICA8JSBpZiAoYmFzZS5tZXRhZGF0YSkgeyAlPlxyXG4gICAgICAgIDxmb290ZXI+XHJcbiAgICAgICAgICA8c3Bhbj5UaGVzZSBtZXRyaWNzIDwlPSAhY29tcHV0ZWQudG9rZW4uc2NvcGVzLmluY2x1ZGVzKFwicmVwb1wiKSA/IFwiZG9lcyBub3QgaW5jbHVkZVwiIDogXCJpbmNsdWRlc1wiICU+IHByaXZhdGUgY29udHJpYnV0aW9uczwvc3Bhbj5cclxuICAgICAgICAgIDxzcGFuPkxhc3QgdXBkYXRlZCA8JT0gbmV3IERhdGUoKSAlPjwvc3Bhbj5cclxuICAgICAgICA8L2Zvb3Rlcj5cclxuICAgICAgPCUgfSAlPlxyXG5cclxuICAgIDwvZGl2PlxyXG4gIDwvZm9yZWlnbk9iamVjdD5cclxuPC9zdmc+Iiwic3R5bGUiOiIvKiBTVkcgZ2xvYmFsIGNvbnRleHQgKi9cclxuICBzdmcge1xyXG4gICAgZm9udC1mYW1pbHk6IC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgU2Vnb2UgVUksIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWYsIEFwcGxlIENvbG9yIEVtb2ppLCBTZWdvZSBVSSBFbW9qaTtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIGNvbG9yOiAjNzc3Nzc3O1xyXG4gIH1cclxuXHJcbi8qIEhlYWRlcnMgKi9cclxuICBoMSwgaDIsIGgzIHtcclxuICAgIG1hcmdpbjogOHB4IDAgMnB4O1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIGNvbG9yOiAjMDM2NmQ2O1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICB9XHJcbiAgaDEgc3ZnLCBoMiBzdmcsIGgzIHN2ZyB7XHJcbiAgICBmaWxsOiBjdXJyZW50Q29sb3I7XHJcbiAgfVxyXG4gIGgxIHtcclxuICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gIH1cclxuICBoMiB7XHJcbiAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgfVxyXG4gIGgzIHtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICB9XHJcblxyXG4vKiBGaWVsZHMgKi9cclxuICBzZWN0aW9uID4gLmZpZWxkIHtcclxuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDVweDtcclxuICB9XHJcbiAgLmZpZWxkIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMnB4O1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICB9XHJcbiAgLmZpZWxkIHN2ZyB7XHJcbiAgICBtYXJnaW46IDAgOHB4O1xyXG4gICAgZmlsbDogIzk1OWRhNTtcclxuICAgIGZsZXgtc2hyaW5rOiAwO1xyXG4gIH1cclxuICAuZmllbGQuZXJyb3Ige1xyXG4gICAgY29sb3I6ICNjYjI0MzE7XHJcbiAgfVxyXG4gIC5maWVsZC5lcnJvciBzdmcge1xyXG4gICAgZmlsbDogI2NiMjQzMTtcclxuICB9XHJcblxyXG4vKiBEaXNwbGF5cyAqL1xyXG4gIC5yb3cge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICB9XHJcbiAgLnJvdyBzZWN0aW9uIHtcclxuICAgIGZsZXg6IDEgMSAwO1xyXG4gIH1cclxuICAuY29sdW1uIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICB9XHJcbiAgLmNlbnRlciB7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICB9XHJcbiAgLmhvcml6b250YWwge1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XHJcbiAgfVxyXG4gIC5ob3Jpem9udGFsLXdyYXAge1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gIH1cclxuICAuaG9yaXpvbnRhbCAuZmllbGQge1xyXG4gICAgZmxleDogMSAxIDA7XHJcbiAgfVxyXG4gIC5uby13cmFwIHtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgfVxyXG4gIC5maWxsLXdpZHRoIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxuXHJcbi8qIFVzZXIgYXZhdGFyICovXHJcbiAgLmF2YXRhciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgbWFyZ2luOiAwIDZweDtcclxuICB9XHJcblxyXG4vKiBDb21taXQgY2FsZW5kYXIgKi9cclxuICAuY2FsZW5kYXIuZmllbGQge1xyXG4gICAgbWFyZ2luOiA0cHggMDtcclxuICAgIG1hcmdpbi1sZWZ0OiA3cHg7XHJcbiAgfVxyXG4gIC5jYWxlbmRhciAuZGF5IHtcclxuICAgIG91dGxpbmU6IDFweCBzb2xpZCByZ2JhKDI3LDMxLDM1LC4wNCk7XHJcbiAgICBvdXRsaW5lLW9mZnNldDogLTFweDtcclxuICB9XHJcblxyXG4vKiBQcm9ncmVzcyBiYXJzICovXHJcbiAgc3ZnLmJhciB7XHJcbiAgICBtYXJnaW46IDRweCAwO1xyXG4gIH1cclxuXHJcbi8qIExhbmd1YWdlICovXHJcbiAgLmZpZWxkLmxhbmd1YWdlIHtcclxuICAgIG1hcmdpbjogMCA4cHg7XHJcbiAgICBmbGV4LWdyb3c6IDA7XHJcbiAgfVxyXG5cclxuICAuZmllbGQubGFuZ3VhZ2Ugc21hbGwge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDRweDtcclxuICAgIG9wYWNpdHk6IC43O1xyXG4gIH1cclxuXHJcbi8qIEhhYml0cyAqL1xyXG4gIC5oYWJpdHMge1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xyXG4gICAgcGFkZGluZy1sZWZ0OiAzN3B4O1xyXG4gIH1cclxuXHJcbi8qIEZvb3RlciAqL1xyXG4gIGZvb3RlciB7XHJcbiAgICBtYXJnaW4tdG9wOiA4cHg7XHJcbiAgICBmb250LXNpemU6IDEwcHg7XHJcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XHJcbiAgICBvcGFjaXR5OiAwLjU7XHJcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuICB9XHJcblxyXG4vKiBTcGVlZCB0ZXN0IGNhdGVnb3JpZXMgKi9cclxuICAuY2F0ZWdvcmllcyB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xyXG4gICAgbWFyZ2luLXRvcDogNHB4O1xyXG4gIH1cclxuICAuY2F0ZWdvcmllIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGZsZXg6IDEgMSAwO1xyXG4gIH1cclxuXHJcbi8qIEdhdWdlcyAqL1xyXG4gIC5nYXVnZSB7XHJcbiAgICBzdHJva2UtbGluZWNhcDogcm91bmQ7XHJcbiAgICBmaWxsOiBub25lO1xyXG4gIH1cclxuICAuZ2F1Z2UuaGlnaCB7XHJcbiAgICBjb2xvcjogIzE4YjY2MztcclxuICB9XHJcbiAgLmdhdWdlLmF2ZXJhZ2Uge1xyXG4gICAgY29sb3I6ICNmYjhjMDA7XHJcbiAgfVxyXG4gIC5nYXVnZS5sb3cge1xyXG4gICAgY29sb3I6ICNlNTM5MzU7XHJcbiAgfVxyXG4gIC5nYXVnZS1iYXNlLCAuZ2F1Z2UtYXJjIHtcclxuICAgIHN0cm9rZTogY3VycmVudENvbG9yO1xyXG4gICAgc3Ryb2tlLXdpZHRoOiAxMDtcclxuICB9XHJcbiAgLmdhdWdlLWJhc2Uge1xyXG4gICAgc3Ryb2tlLW9wYWNpdHk6IC4yO1xyXG4gIH1cclxuICAuZ2F1Z2UtYXJjIHtcclxuICAgIGZpbGw6IG5vbmU7XHJcbiAgICBzdHJva2UtZGFzaG9mZnNldDogMDtcclxuICAgIGFuaW1hdGlvbi1kZWxheTogMjUwbXM7XHJcbiAgICBhbmltYXRpb246IGFuaW1hdGlvbi1nYXVnZSAxcyBlYXNlIGZvcndhcmRzXHJcbiAgfVxyXG4gIC5nYXVnZSB0ZXh0IHtcclxuICAgIGZpbGw6IGN1cnJlbnRDb2xvcjtcclxuICAgIGZvbnQtc2l6ZTogNDBweDtcclxuICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2U7XHJcbiAgICB0ZXh0LWFuY2hvcjogbWlkZGxlO1xyXG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICB9XHJcbiAgLmdhdWdlIC50aXRsZSB7XHJcbiAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICBjb2xvcjogIzc3Nzc3NztcclxuICB9XHJcbiAgQGtleWZyYW1lcyBhbmltYXRpb24tZ2F1Z2Uge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgIHN0cm9rZS1kYXNoYXJyYXk6IDAgMzI5O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbi8qIE11c2ljIHBsdWdpbiAqL1xyXG4gIC50cmFja2xpc3Qge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgIG1hcmdpbi1sZWZ0OiAyOHB4O1xyXG4gICAgbWFyZ2luLXRvcDogNHB4O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG4gIC50cmFjayB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNHB4O1xyXG4gIH1cclxuICAudHJhY2sgaW1nIHtcclxuICAgIG1hcmdpbjogMCAxMHB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogN3B4O1xyXG4gIH1cclxuICAudHJhY2sgLm5hbWUge1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDE0cHg7XHJcbiAgfVxyXG4gIC50cmFjayAuYXJ0aXN0IHtcclxuICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgIG9wYWNpdHk6IC43O1xyXG4gIH1cclxuXHJcbi8qIFBvc3RzIHBsdWdpbiAqL1xyXG4gIC5wb3N0IHtcclxuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gIH1cclxuICAucG9zdCAuaW5mb3Mge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIG1hcmdpbi1ib3R0b206IDRweDtcclxuICB9XHJcbiAgLnBvc3QgLmluZm9zIC50aXRsZSB7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICB3aWR0aDogNDAwcHg7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gICAgbWF4LWhlaWdodDogNDBweDs7XHJcbiAgfVxyXG4gIC5wb3N0IC5pbmZvcyAuZGF0ZSB7XHJcbiAgICBmbGV4LXNocmluazogMDtcclxuICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgIG9wYWNpdHk6IC43O1xyXG4gICAgd2lkdGg6IDQwcHg7XHJcbiAgICBwYWRkaW5nLXRvcDogMXB4O1xyXG4gIH1cclxuXHJcbi8qIEZhZGUgYW5pbWF0aW9uICovXHJcbiAgLmFmIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICBhbmltYXRpb246IGFuaW1hdGlvbi1mYWRlIDFzIGVhc2UgZm9yd2FyZHM7XHJcbiAgfVxyXG4gIEBrZXlmcmFtZXMgYW5pbWF0aW9uLWZhZGUge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuLyogQ2FsZW5kYXIgKi9cclxuICA6cm9vdCB7XHJcbiAgICAtLWNvbG9yLWNhbGVuZGFyLWdyYXBoLWRheS1iZzogI2ViZWRmMDtcclxuICAgIC0tY29sb3ItY2FsZW5kYXItZ3JhcGgtZGF5LWJvcmRlcjogcmdiYSgyNywzMSwzNSwwLjA2KTtcclxuICAgIC0tY29sb3ItY2FsZW5kYXItZ3JhcGgtZGF5LUwxLWJnOiAjOWJlOWE4O1xyXG4gICAgLS1jb2xvci1jYWxlbmRhci1ncmFwaC1kYXktTDItYmc6ICM0MGM0NjM7XHJcbiAgICAtLWNvbG9yLWNhbGVuZGFyLWdyYXBoLWRheS1MMy1iZzogIzMwYTE0ZTtcclxuICAgIC0tY29sb3ItY2FsZW5kYXItZ3JhcGgtZGF5LUw0LWJnOiAjMjE2ZTM5O1xyXG4gICAgLS1jb2xvci1jYWxlbmRhci1oYWxsb3dlZW4tZ3JhcGgtZGF5LUwxLWJnOiAjZmZlZTRhO1xyXG4gICAgLS1jb2xvci1jYWxlbmRhci1oYWxsb3dlZW4tZ3JhcGgtZGF5LUwyLWJnOiAjZmZjNTAxO1xyXG4gICAgLS1jb2xvci1jYWxlbmRhci1oYWxsb3dlZW4tZ3JhcGgtZGF5LUwzLWJnOiAjZmU5NjAwO1xyXG4gICAgLS1jb2xvci1jYWxlbmRhci1oYWxsb3dlZW4tZ3JhcGgtZGF5LUw0LWJnOiAjMDMwMDFjO1xyXG4gICAgLS1jb2xvci1jYWxlbmRhci1ncmFwaC1kYXktTDQtYm9yZGVyOiByZ2JhKDI3LDMxLDM1LDAuMDYpO1xyXG4gICAgLS1jb2xvci1jYWxlbmRhci1ncmFwaC1kYXktTDMtYm9yZGVyOiByZ2JhKDI3LDMxLDM1LDAuMDYpO1xyXG4gICAgLS1jb2xvci1jYWxlbmRhci1ncmFwaC1kYXktTDItYm9yZGVyOiByZ2JhKDI3LDMxLDM1LDAuMDYpO1xyXG4gICAgLS1jb2xvci1jYWxlbmRhci1ncmFwaC1kYXktTDEtYm9yZGVyOiByZ2JhKDI3LDMxLDM1LDAuMDYpO1xyXG4gIH0iLCJmb250cyI6IiJ9LCJ0ZXJtaW5hbCI6eyJxdWVyeSI6InF1ZXJ5IE1ldHJpY3Mge1xyXG4gIHVzZXIobG9naW46ICRsb2dpbikge1xyXG4gICAgZGF0YWJhc2VJZFxyXG4gICAgbmFtZVxyXG4gICAgbG9naW5cclxuICAgIGNyZWF0ZWRBdFxyXG4gICAgYXZhdGFyVXJsXHJcbiAgICB3ZWJzaXRlVXJsXHJcbiAgICBnaXN0cyB7XHJcbiAgICAgIHRvdGFsQ291bnRcclxuICAgIH1cclxuICAgIHJlcG9zaXRvcmllcyhsYXN0OiAkcmVwb3NpdG9yaWVzLCBpc0Zvcms6IGZhbHNlLCBvd25lckFmZmlsaWF0aW9uczogT1dORVIpIHtcclxuICAgICAgdG90YWxDb3VudFxyXG4gICAgICB0b3RhbERpc2tVc2FnZVxyXG4gICAgICBub2RlcyB7XHJcbiAgICAgICAgbmFtZVxyXG4gICAgICAgIHdhdGNoZXJzIHtcclxuICAgICAgICAgIHRvdGFsQ291bnRcclxuICAgICAgICB9XHJcbiAgICAgICAgc3RhcmdhemVycyB7XHJcbiAgICAgICAgICB0b3RhbENvdW50XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGxhbmd1YWdlcyhmaXJzdDogNCkge1xyXG4gICAgICAgICAgZWRnZXMge1xyXG4gICAgICAgICAgICBzaXplXHJcbiAgICAgICAgICAgIG5vZGUge1xyXG4gICAgICAgICAgICAgIGNvbG9yXHJcbiAgICAgICAgICAgICAgbmFtZVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlzc3Vlc19vcGVuOiBpc3N1ZXMoc3RhdGVzOiBPUEVOKSB7XHJcbiAgICAgICAgICB0b3RhbENvdW50XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlzc3Vlc19jbG9zZWQ6IGlzc3VlcyhzdGF0ZXM6IENMT1NFRCkge1xyXG4gICAgICAgICAgdG90YWxDb3VudFxyXG4gICAgICAgIH1cclxuICAgICAgICBwcl9vcGVuOiBwdWxsUmVxdWVzdHMoc3RhdGVzOiBPUEVOKSB7XHJcbiAgICAgICAgICB0b3RhbENvdW50XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHByX21lcmdlZDogcHVsbFJlcXVlc3RzKHN0YXRlczogTUVSR0VEKSB7XHJcbiAgICAgICAgICB0b3RhbENvdW50XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJlbGVhc2VzIHtcclxuICAgICAgICAgIHRvdGFsQ291bnRcclxuICAgICAgICB9XHJcbiAgICAgICAgZm9ya0NvdW50XHJcbiAgICAgICAgbGljZW5zZUluZm8ge1xyXG4gICAgICAgICAgc3BkeElkXHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBwYWNrYWdlcyB7XHJcbiAgICAgIHRvdGFsQ291bnRcclxuICAgIH1cclxuICAgIHN0YXJyZWRSZXBvc2l0b3JpZXMge1xyXG4gICAgICB0b3RhbENvdW50XHJcbiAgICB9XHJcbiAgICB3YXRjaGluZyB7XHJcbiAgICAgIHRvdGFsQ291bnRcclxuICAgIH1cclxuICAgIHNwb25zb3JzaGlwc0FzU3BvbnNvciB7XHJcbiAgICAgIHRvdGFsQ291bnRcclxuICAgIH1cclxuICAgIHNwb25zb3JzaGlwc0FzTWFpbnRhaW5lciB7XHJcbiAgICAgIHRvdGFsQ291bnRcclxuICAgIH1cclxuICAgIGNvbnRyaWJ1dGlvbnNDb2xsZWN0aW9uIHtcclxuICAgICAgdG90YWxSZXBvc2l0b3JpZXNXaXRoQ29udHJpYnV0ZWRDb21taXRzXHJcbiAgICAgIHRvdGFsQ29tbWl0Q29udHJpYnV0aW9uc1xyXG4gICAgICByZXN0cmljdGVkQ29udHJpYnV0aW9uc0NvdW50XHJcbiAgICAgIHRvdGFsSXNzdWVDb250cmlidXRpb25zXHJcbiAgICAgIHRvdGFsUHVsbFJlcXVlc3RDb250cmlidXRpb25zXHJcbiAgICAgIHRvdGFsUHVsbFJlcXVlc3RSZXZpZXdDb250cmlidXRpb25zXHJcbiAgICB9XHJcbiAgICBjYWxlbmRhcjpjb250cmlidXRpb25zQ29sbGVjdGlvbihmcm9tOiAkY2FsZW5kYXIuZnJvbSwgdG86ICRjYWxlbmRhci50bykge1xyXG4gICAgICBjb250cmlidXRpb25DYWxlbmRhciB7XHJcbiAgICAgICAgd2Vla3Mge1xyXG4gICAgICAgICAgY29udHJpYnV0aW9uRGF5cyB7XHJcbiAgICAgICAgICAgIGNvbG9yXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXBvc2l0b3JpZXNDb250cmlidXRlZFRvIHtcclxuICAgICAgdG90YWxDb3VudFxyXG4gICAgfVxyXG4gICAgZm9sbG93ZXJzIHtcclxuICAgICAgdG90YWxDb3VudFxyXG4gICAgfVxyXG4gICAgZm9sbG93aW5nIHtcclxuICAgICAgdG90YWxDb3VudFxyXG4gICAgfVxyXG4gICAgaXNzdWVDb21tZW50cyB7XHJcbiAgICAgIHRvdGFsQ291bnRcclxuICAgIH1cclxuICAgIG9yZ2FuaXphdGlvbnMge1xyXG4gICAgICB0b3RhbENvdW50XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsImltYWdlIjoiPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCI0ODBcIiBoZWlnaHQ9XCI8JT0gNDhcclxuICArICghIWJhc2UuaGVhZGVyKSo2MlxyXG4gICsgKCEhYmFzZS5tZXRhZGF0YSkqMTA4XHJcbiAgKyAoISFiYXNlLmFjdGl2aXR5KSoxMDhcclxuICArICghIWJhc2UuY29tbXVuaXR5KSo5NFxyXG4gICsgKCEhYmFzZS5yZXBvc2l0b3JpZXMpKjE0MlxyXG4gICsgKCghIWJhc2UucmVwb3NpdG9yaWVzKSooISFjb21wdXRlZC5wbHVnaW5zLnRyYWZmaWMpKSoxOFxyXG4gICsgKCghIWJhc2UucmVwb3NpdG9yaWVzKSooISFjb21wdXRlZC5wbHVnaW5zLmZvbGxvd3VwKSkqMTAyXHJcbiAgKyAoKCEhYmFzZS5yZXBvc2l0b3JpZXMpKighIWNvbXB1dGVkLnBsdWdpbnMubGluZXMpKSozNFxyXG4gICsgKCEhY29tcHV0ZWQucGx1Z2lucy5wYWdlc3BlZWQpKjExMFxyXG4gICsgKCEhY29tcHV0ZWQucGx1Z2lucy5sYW5ndWFnZXMpKjEyNFxyXG4gICsgTWF0aC5tYXgoMCwgKCgoISFiYXNlLm1ldGFkYXRhKSsoISFiYXNlLmhlYWRlcikrKCghIWJhc2UuYWN0aXZpdHkpfHwoISFiYXNlLmNvbW11bml0eSkpKyghIWJhc2UucmVwb3NpdG9yaWVzKSsoISFjb21wdXRlZC5wbHVnaW5zLnBhZ2VzcGVlZCkrKCEhY29tcHV0ZWQucGx1Z2lucy5sYW5ndWFnZXMpKS0xKSkqMjBcclxuJT5cIj5cclxuICA8JVxyXG4gICAgbWV0YS4kID0gYDxzcGFuIGNsYXNzPVwicHMxLXBhdGhcIj4ke2Ake3VzZXIubG9naW59YC50b0xvY2FsZUxvd2VyQ2FzZSgpfUBtZXRyaWNzPC9zcGFuPjo8c3BhbiBjbGFzcz1cInBzMS1sb2NhdGlvblwiPn48L3NwYW4+JHtjb21wdXRlZC50b2tlbi5zY29wZXMuaW5jbHVkZXMoXCJyZXBvXCIpID8gXCIjXCIgOiBcIiRcIn1gXHJcbiAgICBtZXRhLmFuaW1hdGlvbnMgPSAhbWV0YS5wbGFjZWhvbGRlciA/IHtzdGRpbjouMTYsIHN0ZG91dDouMjgsIGxlbmd0aDooMitPYmplY3Qua2V5cyhiYXNlKS5sZW5ndGgrT2JqZWN0LmtleXMoY29tcHV0ZWQucGx1Z2lucykubGVuZ3RoKX0gOiB7c3RkaW46MCwgc3Rkb3V0OjAsIGxlbmd0aDowfVxyXG4gICU+XHJcblxyXG4gIDxkZWZzPjxzdHlsZT48JT0gZm9udHMgJT48L3N0eWxlPjwvZGVmcz5cclxuXHJcbiAgPHN0eWxlPlxyXG4gICAgPCU9IHN0eWxlICU+XHJcbiAgICAgIC5zdGRpbiwgLnN0ZG91dCB7XHJcbiAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiA8JT0gbWV0YS5hbmltYXRpb25zLnN0ZGluICU+cztcclxuICAgICAgfVxyXG4gICAgICAuc3Rkb3V0IHtcclxuICAgICAgICBhbmltYXRpb24tZHVyYXRpb246IDwlPSBtZXRhLmFuaW1hdGlvbnMuc3Rkb3V0ICU+cztcclxuICAgICAgfVxyXG4gICAgICA8JSBmb3IgKGxldCBpID0gMCwgZCA9IDA7IGkgPCBtZXRhLmFuaW1hdGlvbnMubGVuZ3RoOyBpKyssIGQrPW1ldGEuYW5pbWF0aW9ucy5zdGRpbittZXRhLmFuaW1hdGlvbnMuc3Rkb3V0KSB7ICU+XHJcbiAgICAgICAgLnN0ZGluOm50aC1vZi10eXBlKDwlPSBpKzEgJT4pIHtcclxuICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogPCU9IGQgJT5zO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuc3Rkb3V0Om50aC1vZi10eXBlKDwlPSBpKzIgJT4pIHtcclxuICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogPCU9IGQrbWV0YS5hbmltYXRpb25zLnN0ZGluICU+cztcclxuICAgICAgICB9XHJcbiAgICAgICAgPCUgaWYgKGkgPT09IG1ldGEuYW5pbWF0aW9ucy5sZW5ndGgtMSkgeyAlPlxyXG4gICAgICAgICAgZm9vdGVyIHtcclxuICAgICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiA8JT0gZCAlPnM7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgPCUgfSAlPlxyXG4gICAgICA8JSB9ICU+XHJcbiAgPC9zdHlsZT5cclxuXHJcbiAgPGZvcmVpZ25PYmplY3QgeD1cIjBcIiB5PVwiMFwiIHdpZHRoPVwiMTAwJVwiIGhlaWdodD1cIjEwMCVcIj5cclxuICAgIDxkaXYgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sXCIgeG1sbnM6eGxpbms9XCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rXCI+XHJcblxyXG4gICAgICA8ZGl2IGNsYXNzPVwiaGVhZGVyXCI+XHJcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJ0aXRsZVwiPjwvc3Bhbj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiYnV0dG9uc1wiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImJ1dHRvblwiPuKUgDwvZGl2PlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImJ1dHRvblwiPuKWoTwvZGl2PlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImJ1dHRvbiBleGl0XCI+4pyVPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuPHByZT48JSMgLSU+XHJcbjwlIGlmIChiYXNlLm1ldGFkYXRhKSB7ICU+XHJcbjxkaXYgY2xhc3M9XCJiYW5uZXJcIj48JSMgLSU+XHJcbkdpdEh1YiBtZXRyaWNzIGdlbmVyYXRvciA8JT0gbWV0YS52ZXJzaW9uICU+XHJcblRoZXNlIGdlbmVyYXRlZCBtZXRyaWNzIGNvbWVzIHdpdGggQUJTT0xVVEVMWSBOT1xyXG5XQVJSQU5UWSwgdG8gdGhlIGV4dGVudCBwZXJtaXR0ZWQgYnkgYXBwbGljYWJsZSBsYXcuXHJcblxyXG5MYXN0IGdlbmVyYXRlZDogPCU9IG5ldyBEYXRlKCkudG9HTVRTdHJpbmcoKSAlPlxyXG48L2Rpdj48JSB9IC0lPlxyXG48JSMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtJT5cclxuPCUgaWYgKGJhc2UuaGVhZGVyKSB7ICU+XHJcbjxkaXYgY2xhc3M9XCJzdGRpblwiPjwlLSBtZXRhLiQgJT4gd2hvYW1pPC9kaXY+PCUjIC0lPlxyXG48ZGl2IGNsYXNzPVwic3Rkb3V0XCI+PCUjIC0lPlxyXG48Yj48JT0gdXNlci5uYW1lIHx8IHVzZXIubG9naW4gJT48L2I+IHJlZ2lzdGVyZWQ9PCU9IGNvbXB1dGVkLnJlZ2lzdHJhdGlvbi5tYXRjaCgvXi4rPyBbeW1dLylbMF0ucmVwbGFjZSgvIC9nLCBcIlwiKSAlPiwgdWlkPTwlPSBgJHt1c2VyLmRhdGFiYXNlSWR9YC5zdWJzdHIoLTQpICU+LCBnaWQ9PCU9IHVzZXIub3JnYW5pemF0aW9ucy50b3RhbENvdW50ICU+XHJcbiAgY29udHJpYnV0ZWQgdG8gPCU9IHVzZXIucmVwb3NpdG9yaWVzQ29udHJpYnV0ZWRUby50b3RhbENvdW50ICU+IHJlcG9zaXRvcjwlPSBzKHVzZXIucmVwb3NpdG9yaWVzQ29udHJpYnV0ZWRUby50b3RhbENvdW50LCBcInlcIikgJT4gPGI+PCUgZm9yIChjb25zdCBbeCwge2NvbG9yfV0gb2YgT2JqZWN0LmVudHJpZXMoY29tcHV0ZWQuY2FsZW5kYXIpKSB7IC0lPjxzcGFuIHN0eWxlPVwiY29sb3I6PCU9IGNvbG9yICU+XCI+Izwvc3Bhbj48JSB9ICU+PC9iPlxyXG4gIGZvbGxvd2VkIGJ5IDxiPjwlPSB1c2VyLmZvbGxvd2Vycy50b3RhbENvdW50ICU+PC9iPiB1c2VyPCU9IHModXNlci5mb2xsb3dlcnMudG90YWxDb3VudCkgJT5cclxuPC9kaXY+PCUgfSAtJT5cclxuPCUjID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLSU+XHJcbjwlIGlmICgoYmFzZS5hY3Rpdml0eSl8fChiYXNlLmNvbW11bml0eSkpIHsgJT5cclxuPGRpdiBjbGFzcz1cInN0ZGluXCI+PCUtIG1ldGEuJCAlPiBnaXQgc3RhdHVzPC9kaXY+PCUjIC0lPlxyXG48ZGl2IGNsYXNzPVwic3Rkb3V0XCI+PCUjIC0lPlxyXG48JSBpZiAoYmFzZS5hY3Rpdml0eSkgeyAtJT5cclxuPGI+UmVjZW50IGFjdGl2aXR5PC9iPlxyXG4gIDxiPjwlPSBgJHtjb21wdXRlZC5jb21taXRzfWAucGFkU3RhcnQoNSkgJT48L2I+IGNvbW1pdDwlPSBzKGNvbXB1dGVkLmNvbW1pdHMpICU+XHJcbiAgPGI+PCU9IGAke3VzZXIuY29udHJpYnV0aW9uc0NvbGxlY3Rpb24udG90YWxQdWxsUmVxdWVzdFJldmlld0NvbnRyaWJ1dGlvbnN9YC5wYWRTdGFydCg1KSAlPjwvYj4gcHVsbCByZXF1ZXN0PCU9IHModXNlci5jb250cmlidXRpb25zQ29sbGVjdGlvbi50b3RhbFB1bGxSZXF1ZXN0UmV2aWV3Q29udHJpYnV0aW9ucykgJT4gcmV2aWV3ZWRcclxuICA8Yj48JT0gYCR7dXNlci5jb250cmlidXRpb25zQ29sbGVjdGlvbi50b3RhbFB1bGxSZXF1ZXN0Q29udHJpYnV0aW9uc31gLnBhZFN0YXJ0KDUpICU+PC9iPiBwdWxsIHJlcXVlc3Q8JT0gcyh1c2VyLmNvbnRyaWJ1dGlvbnNDb2xsZWN0aW9uLnRvdGFsUHVsbFJlcXVlc3RDb250cmlidXRpb25zKSAlPiBvcGVuZWRcclxuICA8Yj48JT0gYCR7dXNlci5jb250cmlidXRpb25zQ29sbGVjdGlvbi50b3RhbElzc3VlQ29udHJpYnV0aW9uc31gLnBhZFN0YXJ0KDUpICU+PC9iPiBpc3N1ZTwlPSBzKHVzZXIuY29udHJpYnV0aW9uc0NvbGxlY3Rpb24udG90YWxJc3N1ZUNvbnRyaWJ1dGlvbnMpICU+IG9wZW5lZFxyXG4gIDxiPjwlPSBgJHt1c2VyLmlzc3VlQ29tbWVudHMudG90YWxDb3VudH1gLnBhZFN0YXJ0KDUpICU+PC9iPiBpc3N1ZSBjb21tZW50PCU9IHModXNlci5pc3N1ZUNvbW1lbnRzLnRvdGFsQ291bnQpICU+XHJcbjwlIH0gLSU+XHJcbjwlIGlmICgoYmFzZS5hY3Rpdml0eSkmJihiYXNlLmNvbW11bml0eSkpIHsgLSU+XHJcblxyXG48JSB9IC0lPlxyXG48JSBpZiAoYmFzZS5jb21tdW5pdHkpIHsgLSU+XHJcbjxiPlRyYWNrZWQgYWN0aXZpdHk8L2I+XHJcbiAgPGI+PCU9IGAke3VzZXIuZm9sbG93aW5nLnRvdGFsQ291bnR9YC5wYWRTdGFydCg1KSAlPjwvYj4gdXNlcjwlPSBzKHVzZXIuZm9sbG93ZXJzLnRvdGFsQ291bnQpICU+IGZvbGxvd2VkXHJcbiAgPGI+PCU9IGAke3VzZXIuc3BvbnNvcnNoaXBzQXNTcG9uc29yLnRvdGFsQ291bnR9YC5wYWRTdGFydCg1KSAlPjwvYj4gcmVwb3NpdG9yPCU9IHModXNlci5zcG9uc29yc2hpcHNBc1Nwb25zb3IudG90YWxDb3VudCwgXCJ5XCIpICU+IHNwb25zb3JlZFxyXG4gIDxiPjwlPSBgJHt1c2VyLnN0YXJyZWRSZXBvc2l0b3JpZXMudG90YWxDb3VudH1gLnBhZFN0YXJ0KDUpICU+PC9iPiByZXBvc2l0b3I8JT0gcyh1c2VyLnN0YXJyZWRSZXBvc2l0b3JpZXMudG90YWxDb3VudCwgXCJ5XCIpICU+IHN0YXJyZWRcclxuICA8Yj48JT0gYCR7dXNlci53YXRjaGluZy50b3RhbENvdW50fWAucGFkU3RhcnQoNSkgJT48L2I+IHJlcG9zaXRvcjwlPSBzKHVzZXIud2F0Y2hpbmcudG90YWxDb3VudCwgXCJ5XCIpICU+IHdhdGNoZWRcclxuPCUgfSAtJT5cclxuPC9kaXY+PCUgfSAtJT5cclxuPCUjID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLSU+XHJcbjwlIGlmIChiYXNlLnJlcG9zaXRvcmllcykgeyAlPlxyXG48ZGl2IGNsYXNzPVwic3RkaW5cIj48JS0gbWV0YS4kICU+IGxzIC1saCBnaXRodWIvcmVwb3NpdG9yaWVzPC9kaXY+PCUjIC0lPlxyXG48ZGl2IGNsYXNzPVwic3Rkb3V0XCI+PCUjIC0lPlxyXG5Ub3RhbCA8JT0gdXNlci5yZXBvc2l0b3JpZXMudG90YWxDb3VudCAlPiByZXBvc2l0b3I8JT0gcyh1c2VyLnJlcG9zaXRvcmllcy50b3RhbENvdW50LCBcInlcIikgJT4gLSA8JT0gY29tcHV0ZWQuZGlza1VzYWdlICU+XHJcbjwlIGlmIChjb21wdXRlZC5wbHVnaW5zLnRyYWZmaWMpIHsgaWYgKGNvbXB1dGVkLnBsdWdpbnMudHJhZmZpYy5lcnJvcikgeyAtJT5cclxuLS0tLSAgPGI+ICAgICA8L2I+ICB2aWV3cyA8c3BhbiBjbGFzcz1cImVycm9yXCI+KDwlPSBjb21wdXRlZC5wbHVnaW5zLnRyYWZmaWMuZXJyb3IubWVzc2FnZSAlPik8L3NwYW4+XHJcbjwlIH0gZWxzZSB7IC0lPlxyXG4tci0tICA8Yj48JT0gYCR7Y29tcHV0ZWQucGx1Z2lucy50cmFmZmljLnZpZXdzLmNvdW50fWAucGFkU3RhcnQoNSkgJT48L2I+ICB2aWV3c1xyXG48JSB9fSAtJT5cclxuLXItLSAgPGI+PCU9IGAke2NvbXB1dGVkLnJlcG9zaXRvcmllcy5zdGFyZ2F6ZXJzfWAucGFkU3RhcnQoNSkgJT48L2I+ICBzdGFyZ2F6ZXI8JT0gcyhjb21wdXRlZC5yZXBvc2l0b3JpZXMuc3RhcmdhemVycykgJT5cclxuLXItLSAgPGI+PCU9IGAke2NvbXB1dGVkLnJlcG9zaXRvcmllcy5mb3Jrc31gLnBhZFN0YXJ0KDUpICU+PC9iPiAgZm9yazwlPSBzKGNvbXB1dGVkLnJlcG9zaXRvcmllcy5mb3JrcykgJT5cclxuLXItLSAgPGI+PCU9IGAke2NvbXB1dGVkLnJlcG9zaXRvcmllcy53YXRjaGVyc31gLnBhZFN0YXJ0KDUpICU+PC9iPiAgd2F0Y2hlcjwlPSBzKGNvbXB1dGVkLnJlcG9zaXRvcmllcy53YXRjaGVycykgJT5cclxuZHIteCAgPGI+PCU9IGAke3VzZXIucGFja2FnZXMudG90YWxDb3VudH1gLnBhZFN0YXJ0KDUpICU+PC9iPiAgcGFja2FnZTwlPSBzKHVzZXIucGFja2FnZXMudG90YWxDb3VudCkgJT5cclxuZHIteCAgPGI+PCU9IGAke3VzZXIuZ2lzdHMudG90YWxDb3VudH1gLnBhZFN0YXJ0KDUpICU+PC9iPiAgZ2lzdDwlPSBzKHVzZXIuZ2lzdHMudG90YWxDb3VudCkgJT5cclxuPCUgaWYgKGNvbXB1dGVkLnBsdWdpbnMuZm9sbG93dXApIHsgaWYgKGNvbXB1dGVkLnBsdWdpbnMuZm9sbG93dXAuZXJyb3IpIHsgLSU+XHJcbmQtLS0gIDxiPiAgICAgPC9iPiAgSVNTVUVTIDxzcGFuIGNsYXNzPVwiZXJyb3JcIj4oPCU9IGNvbXB1dGVkLnBsdWdpbnMuZm9sbG93dXAuZXJyb3IubWVzc2FnZSAlPik8L3NwYW4+XHJcbmQtLS0gIDxiPiAgICAgPC9iPiAgUFVMTF9SRVFVRVNUUyA8c3BhbiBjbGFzcz1cImVycm9yXCI+KDwlPSBjb21wdXRlZC5wbHVnaW5zLmZvbGxvd3VwLmVycm9yLm1lc3NhZ2UgJT4pPC9zcGFuPlxyXG48JSB9IGVsc2UgeyAtJT5cclxuZHIteCAgPGI+PCU9IGAke2NvbXB1dGVkLnBsdWdpbnMuZm9sbG93dXAuaXNzdWVzLmNvdW50fWAucGFkU3RhcnQoNSkgJT48L2I+ICBJU1NVRVNcclxuLXItLSAgPGI+PCU9IGAke2NvbXB1dGVkLnBsdWdpbnMuZm9sbG93dXAuaXNzdWVzLm9wZW59YC5wYWRTdGFydCg1KSAlPjwvYj4gIOKUnOKUgOKUgCBvcGVuXHJcbi1yLS0gIDxiPjwlPSBgJHtjb21wdXRlZC5wbHVnaW5zLmZvbGxvd3VwLmlzc3Vlcy5jbG9zZWR9YC5wYWRTdGFydCg1KSAlPjwvYj4gIOKUlOKUgOKUgCBjbG9zZWRcclxuZHIteCAgPGI+PCU9IGAke2NvbXB1dGVkLnBsdWdpbnMuZm9sbG93dXAuaXNzdWVzLmNvdW50fWAucGFkU3RhcnQoNSkgJT48L2I+ICBQVUxMX1JFUVVFU1RTXHJcbi1yLS0gIDxiPjwlPSBgJHtjb21wdXRlZC5wbHVnaW5zLmZvbGxvd3VwLnByLm9wZW59YC5wYWRTdGFydCg1KSAlPjwvYj4gIOKUnOKUgOKUgCBvcGVuXHJcbi1yLS0gIDxiPjwlPSBgJHtjb21wdXRlZC5wbHVnaW5zLmZvbGxvd3VwLnByLm1lcmdlZH1gLnBhZFN0YXJ0KDUpICU+PC9iPiAg4pSU4pSA4pSAIG1lcmdlZFxyXG48JSB9fSAtJT5cclxuPCUgaWYgKGNvbXB1dGVkLmxpY2Vuc2VzLmZhdm9yaXRlLmxlbmd0aCkgeyAtJT5cclxuZHIteCAgICAgICAgIExJQ0VOU0VcclxuLXItLSAgICAgICAgIOKUlOKUgOKUgCA8JT0gY29tcHV0ZWQubGljZW5zZXMuZmF2b3JpdGUgJT5cclxuPCUgfSAtJT5cclxuPCUgaWYgKGNvbXB1dGVkLnBsdWdpbnMubGluZXMpIHsgaWYgKGNvbXB1dGVkLnBsdWdpbnMubGluZXMuZXJyb3IpIHsgJT5cclxuPHNwYW4gY2xhc3M9XCJkaWZmIGVycm9yXCI+QEAgPCU9IGNvbXB1dGVkLnBsdWdpbnMubGluZXMuZXJyb3IubWVzc2FnZSAlPiBAQDwvc3Bhbj48JSB9IGVsc2UgeyAlPlxyXG48c3BhbiBjbGFzcz1cImRpZmZcIj5AQCAtPCU9IGNvbXB1dGVkLnBsdWdpbnMubGluZXMuZGVsZXRlZCAlPiArPCU9IGNvbXB1dGVkLnBsdWdpbnMubGluZXMuYWRkZWQgJT4gQEA8L3NwYW4+XHJcbjwlIH19IC0lPlxyXG48L2Rpdj48JSB9IC0lPlxyXG48JSMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtJT5cclxuPCUgaWYgKGNvbXB1dGVkLnBsdWdpbnMubGFuZ3VhZ2VzKSB7ICU+XHJcbjxkaXYgY2xhc3M9XCJzdGRpblwiPjwlLSBtZXRhLiQgJT4gbG9jYWxlPC9kaXY+PCUjIC0lPlxyXG48ZGl2IGNsYXNzPVwic3Rkb3V0XCI+PCUjIC0lPlxyXG48JSBpZiAoY29tcHV0ZWQucGx1Z2lucy5sYW5ndWFnZXMuZXJyb3IpIHsgLSU+XHJcbjxzcGFuIGNsYXNzPVwiZXJyb3JcIj48JT0gY29tcHV0ZWQucGx1Z2lucy5sYW5ndWFnZXMuZXJyb3IubWVzc2FnZSAlPjwvc3Bhbj48JSMgLSU+XHJcbjwlIH0gZWxzZSB7IGZvciAoY29uc3Qge25hbWUsIHZhbHVlfSBvZiBjb21wdXRlZC5wbHVnaW5zLmxhbmd1YWdlcy5mYXZvcml0ZXMpIHsgLSU+XHJcbjxiPjwlPSBuYW1lLnRvTG9jYWxlVXBwZXJDYXNlKCkucGFkRW5kKDEyKSAlPjwvYj4gWzwlPSBcIiNcIi5yZXBlYXQoTWF0aC5jZWlsKDEwMCp2YWx1ZS81KSkucGFkRW5kKDIwKSAlPl0gPCU9ICgxMDAqdmFsdWUpLnRvRml4ZWQoMikucGFkRW5kKDUpICU+JVxyXG48JSB9fSAtJT5cclxuPC9kaXY+PCUgfSAtJT5cclxuPCUjID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLSU+XHJcbjwlIGlmIChjb21wdXRlZC5wbHVnaW5zLnBhZ2VzcGVlZCkgeyAlPlxyXG48ZGl2IGNsYXNzPVwic3RkaW5cIj48JS0gbWV0YS4kICU+IGN1cmwgLUkgPCU9IHVzZXIud2Vic2l0ZVVybCAlPjwvZGl2PjwlIyAtJT5cclxuPGRpdiBjbGFzcz1cInN0ZG91dFwiPjwlIyAtJT5cclxuPCUgaWYgKGNvbXB1dGVkLnBsdWdpbnMucGFnZXNwZWVkLmVycm9yKSB7IC0lPlxyXG48c3BhbiBjbGFzcz1cImVycm9yXCI+PCU9IGNvbXB1dGVkLnBsdWdpbnMucGFnZXNwZWVkLmVycm9yLm1lc3NhZ2UgJT48L3NwYW4+PCUgfSBlbHNlIHsgLSU+XHJcbjxiPlVzZXItQWdlbnQ8L2I+OiBHb29nbGUgUGFnZVNwZWVkIEFQSVxyXG48Yj5Mb2NhdGlvbjwvYj46IDwlPSB1c2VyLndlYnNpdGVVcmwgJT5cclxuPCUgZm9yIChjb25zdCB7c2NvcmUsIHRpdGxlfSBvZiBjb21wdXRlZC5wbHVnaW5zLnBhZ2VzcGVlZC5zY29yZXMpIHsgLSU+XHJcbjxiPjwlPSBgWC0ke3RpdGxlLnJlcGxhY2UoLyAvZywgXCItXCIpfWAgJT48L2I+OiA8JT0gIU51bWJlci5pc05hTihzY29yZSkgPyBNYXRoLnJvdW5kKHNjb3JlKjEwMCkgOiBcIi1cIiAlPiVcclxuPCUgfX0gLSU+XHJcbjwvZGl2PjwlIH0gLSU+XHJcbjwlIyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0lPlxyXG48JSBpZiAoYmFzZS5tZXRhZGF0YSkgeyAtJT5cclxuXHJcbjxmb290ZXI+Q29ubmVjdGlvbiByZXNldCBieSA8JT0gTWF0aC5mbG9vcigyNTYqTWF0aC5yYW5kb20oKSkgJT4uPCU9IE1hdGguZmxvb3IoMjU2Kk1hdGgucmFuZG9tKCkpICU+LjwlPSBNYXRoLmZsb29yKDI1NipNYXRoLnJhbmRvbSgpKSAlPi48JT0gTWF0aC5mbG9vcigyNTYqTWF0aC5yYW5kb20oKSkgJT48L2Zvb3Rlcj48JSMgLSU+XHJcbjwlIH0gLSU+PC9wcmU+XHJcblxyXG4gICAgPC9kaXY+XHJcbiAgPC9mb3JlaWduT2JqZWN0PlxyXG48L3N2Zz5cclxuXHJcbiIsInN0eWxlIjoiLyogU1ZHIGdsb2JhbCBjb250ZXh0ICovXHJcbiAgc3ZnIHtcclxuICAgIGZvbnQtZmFtaWx5OiAnQ291cmllciBQcmltZSc7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICBjb2xvcjogIzc3Nzc3NztcclxuICB9XHJcblxyXG4vKiBUaXRsZSBiYXIgKi9cclxuICAuaGVhZGVyIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMjBweDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBwYWRkaW5nOiAwIDhweDtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA1cHg7XHJcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogNXB4O1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KCM1MDRiNDUgMCUsIzNjM2IzNyAxMDAlKTtcclxuICB9XHJcblxyXG4gIC50aXRsZSB7XHJcbiAgICBjb2xvcjogI2Q1ZDBjZTtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICB9XHJcblxyXG4gIC5idXR0b25zIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIH1cclxuXHJcbiAgLmJ1dHRvbiB7XHJcbiAgICBjb2xvcjogYmxhY2s7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDVweDtcclxuICAgIGZvbnQtc2l6ZTogOHB4O1xyXG4gICAgaGVpZ2h0OiAxMnB4O1xyXG4gICAgd2lkdGg6IDEycHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KCM3ZDc4NzEgMCUsICM1OTU5NTMgMTAwJSk7XHJcbiAgICB0ZXh0LXNoYWRvdzogMHB4IDFweCAwcHggcmdiYSgyNTUsMjU1LDI1NSwwLjIpO1xyXG4gIH1cclxuXHJcbiAgLmJ1dHRvbi5leGl0IHtcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgjZjM3NDU4IDAlLCAjZGU0YzEyIDEwMCUpO1xyXG4gIH1cclxuXHJcbi8qIFRlcm1pbmFsICovXHJcbiAgcHJlLCAuYmFubmVyLCBmb290ZXIge1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgZm9udC1mYW1pbHk6ICdDb3VyaWVyIFByaW1lJztcclxuICAgIGNvbG9yOiAjREREREREO1xyXG4gIH1cclxuICBwcmUge1xyXG4gICAgYmFja2dyb3VuZDogIzQyMDkyQjtcclxuICAgIHBhZGRpbmc6IDEycHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XHJcbiAgfVxyXG4gIC5iYW5uZXIsIGZvb3RlciB7XHJcbiAgICBjb2xvcjogI0FFOURBNztcclxuICB9XHJcblxyXG4vKiBQcm9tcHQgKi9cclxuICAucHMxLXBhdGgge1xyXG4gICAgY29sb3I6ICM3RURBMjk7XHJcbiAgfVxyXG5cclxuICAucHMxLWxvY2F0aW9uIHtcclxuICAgIGNvbG9yOiAjNDg3OGMwO1xyXG4gIH1cclxuXHJcbi8qIERpZmYgKi9cclxuICAuZGlmZiB7XHJcbiAgICBjb2xvcjogIzNBOTZERDtcclxuICB9XHJcblxyXG4vKiBFcnJvciAqL1xyXG4gIC5lcnJvciB7XHJcbiAgICBjb2xvcjogI2NiMjQzMTtcclxuICB9XHJcblxyXG4vKiBBbmltYXRpb25zICovXHJcbiAgLnN0ZGluLCBmb290ZXIge1xyXG4gICAgd2lkdGg6IDAlO1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBhbmltYXRpb24tbmFtZTogc3RkaW4tYW5pbWF0aW9uO1xyXG4gICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcclxuICB9XHJcblxyXG4gIC5zdGRvdXQge1xyXG4gICAgbWF4LWhlaWdodDogMCU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IHN0ZG91dC1hbmltYXRpb247XHJcbiAgICBhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xyXG4gIH1cclxuXHJcbiAgQGtleWZyYW1lcyBzdGRpbi1hbmltYXRpb24ge1xyXG4gICAgMCUgeyB3aWR0aDogMCU7IH1cclxuICAgIDEwMCUgeyB3aWR0aDogMTAwJTsgfVxyXG4gIH1cclxuXHJcbiAgQGtleWZyYW1lcyBzdGRvdXQtYW5pbWF0aW9uIHtcclxuICAgIDAlIHsgbWF4LWhlaWdodDogMDsgfVxyXG4gICAgMTAwJSB7IG1heC1oZWlnaHQ6IDM2MHB4OyB9XHJcbiAgfVxyXG5cclxuLyogQ2FsZW5kYXIgKi9cclxuICA6cm9vdCB7XHJcbiAgICAtLWNvbG9yLWNhbGVuZGFyLWdyYXBoLWRheS1iZzogI2ViZWRmMDtcclxuICAgIC0tY29sb3ItY2FsZW5kYXItZ3JhcGgtZGF5LWJvcmRlcjogcmdiYSgyNywzMSwzNSwwLjA2KTtcclxuICAgIC0tY29sb3ItY2FsZW5kYXItZ3JhcGgtZGF5LUwxLWJnOiAjOWJlOWE4O1xyXG4gICAgLS1jb2xvci1jYWxlbmRhci1ncmFwaC1kYXktTDItYmc6ICM0MGM0NjM7XHJcbiAgICAtLWNvbG9yLWNhbGVuZGFyLWdyYXBoLWRheS1MMy1iZzogIzMwYTE0ZTtcclxuICAgIC0tY29sb3ItY2FsZW5kYXItZ3JhcGgtZGF5LUw0LWJnOiAjMjE2ZTM5O1xyXG4gICAgLS1jb2xvci1jYWxlbmRhci1oYWxsb3dlZW4tZ3JhcGgtZGF5LUwxLWJnOiAjZmZlZTRhO1xyXG4gICAgLS1jb2xvci1jYWxlbmRhci1oYWxsb3dlZW4tZ3JhcGgtZGF5LUwyLWJnOiAjZmZjNTAxO1xyXG4gICAgLS1jb2xvci1jYWxlbmRhci1oYWxsb3dlZW4tZ3JhcGgtZGF5LUwzLWJnOiAjZmU5NjAwO1xyXG4gICAgLS1jb2xvci1jYWxlbmRhci1oYWxsb3dlZW4tZ3JhcGgtZGF5LUw0LWJnOiAjMDMwMDFjO1xyXG4gICAgLS1jb2xvci1jYWxlbmRhci1ncmFwaC1kYXktTDQtYm9yZGVyOiByZ2JhKDI3LDMxLDM1LDAuMDYpO1xyXG4gICAgLS1jb2xvci1jYWxlbmRhci1ncmFwaC1kYXktTDMtYm9yZGVyOiByZ2JhKDI3LDMxLDM1LDAuMDYpO1xyXG4gICAgLS1jb2xvci1jYWxlbmRhci1ncmFwaC1kYXktTDItYm9yZGVyOiByZ2JhKDI3LDMxLDM1LDAuMDYpO1xyXG4gICAgLS1jb2xvci1jYWxlbmRhci1ncmFwaC1kYXktTDEtYm9yZGVyOiByZ2JhKDI3LDMxLDM1LDAuMDYpO1xyXG4gIH0iLCJmb250cyI6IkBmb250LWZhY2Uge1xyXG4gIGZvbnQtZmFtaWx5OiAnQ291cmllciBQcmltZSc7XHJcbiAgc3JjOiB1cmwoJ2RhdGE6YXBwbGljYXRpb24vZm9udC13b2ZmO2NoYXJzZXQ9dXRmLTg7YmFzZTY0LGQwOUdSZ0FCQUFBQUFEK2tBQklBQUFBQWNiQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCR1JsUk5BQUEvaUFBQUFCd0FBQUFjaVR2ME1VZEVSVVlBQUQ2MEFBQUFLQUFBQUNvQS93RTFSMUJQVXdBQVAxUUFBQUF5QUFBQVFCYWJLSmhIVTFWQ0FBQSszQUFBQUhnQUFBQ2laNGR5eFU5VEx6SUFBQUlNQUFBQVR3QUFBR0J3MW8vV1kyMWhjQUFBQXlBQUFBQ3VBQUFCVXNSdFd5SmpkblFnQUFBTGFBQUFBRU1BQUFCc0p1RVFoV1p3WjIwQUFBUFFBQUFHOGdBQURoV2VOaFBPWjJGemNBQUFQcXdBQUFBSUFBQUFDQUFBQUJCbmJIbG1BQUFNZ0FBQUwzd0FBRmRRZytIRXJtaGxZV1FBQUFHVUFBQUFOZ0FBQURZWG1ScXNhR2hsWVFBQUFjd0FBQUFnQUFBQUpBc1BBZmxvYlhSNEFBQUNYQUFBQU1FQUFBRFlMM1FkdzJ4dlkyRUFBQXVzQUFBQTBnQUFBTkl2QkJsK2JXRjRjQUFBQWV3QUFBQWdBQUFBSUFIUkFnWnVZVzFsQUFBNy9BQUFBY1FBQUFPVEFWeXVwbkJ2YzNRQUFEM0FBQUFBN0FBQUFVbGtYOFR5Y0hKbGNBQUFDc1FBQUFDaUFBQUF2VnF4M3pzQUFRQUFBQU1FbTFPdXd6UmZEenoxQUI4SUFBQUFBQURabklQaEFBQUFBTm43U1VmLzVQNWxCT2dGaHdBQUFBZ0FBZ0FBQUFBQUFIamFZMkJrWUdCeitPdkN3TUJ5NXYrVC8wOVlYakFBUlZBQUN3Q3BGQWNRQUFFQUFBQm9BSEFBQlFBdkFBSUFBZ0FzQUZvQWpRQUFBS1lCQ2dBQ0FBRjQybU5nWVRuRE9JR0JsWUdCMVpqbERBTUR3MHdJelhTR29ZbEpDOGhuWU9Wa2dBRm1CaVFRR0Jyb3lIQ0FRWUZoQTV2RFh4Y0dCdlljWmdVRkJvYkpZSVZ6V0JZREtRVUdaZ0JuL1F5aUFIamFZem5ETUpVQkNGak9RRERqUzRiL0REWU1teG1NR0NZelBtWFVaTXhtMk0rd2lyRUVpTzh6SEdQWXczQ0hZVGRRWkRLUWRaTGhLY001aGdPTTl4azdHR29aVmpHc1ovZ0gxTVhGRU1CUUJzUWdtQVRFSnhpS3dXdzVCamVHQ0NBTnd2TVlxb0E4cnYvZmdPcHRHSll6ZWpHbU1iejQvNFRSa3FHZFFaV2hIZ2duQVcycFovQUZrdnNZbkJrMi92OERaTGVBNVNZRDNWYks0TUZnQk5UdEJ0Uy9pV0Vqa3pURE80WnBETi8rLy83L20wR0VZUjhUTzhOdUFCRlVQa2tBQUFCNDJtTmdZR0JtZ0dBWkJrWUdFUEFCOGhqQmZCWUdBeUROQVlSTVFEcWFvWTVody8vL1FKWUNReXlJOWYveC8wZi9OMEoxZ1FFakd3T2N5d2pTdzhTQUNvQ1N6Q3lzYk93Y25GemNQTHg4L0FLQ1FzSWlvbUxpRXBKUzBqS3ljdklLaWtyS0txcHE2aHFhV3RvNnVucjZCb1pHeGlhbVp1WVdsbGJXTnJaMkRQWU9qazdPTHE1dTdoNmVYdDQrdm43K0FZRkJ3U0doWWVFUmtWSFJNYkZ4OFFrTUJFRWlBMDBCQUJWTkg1Z0FBSGphclZkcld4dkhGWjdWRFl3QkE1S3dtM1hkVWNhaUxqdVNTZXM0eEZZY3NzdWlPRXBTZ1hHNzZ6VHRMaEx1L1pMMFJxL3AvYUw4bWJPaWZlcDh5MC9MZTJaV0NqamdQbjJlOGtIbm5abDM1bHpuekVKQ1N4SVBvekNXc3ZkRUxPNzJxUExnVVVTM1hMb1JKNC9sNkdGRWhXYjYwYXlZRllPQk9uQWJEUkl4aVVCdGo0VWpnc1J2a2FOSkpvOWJWTkNxb1JvdEttbzVQQzdXNnNJUHFCcklKUEd6UWkzd3MyWXhvRUt3ZnlScFhnRUU2WkJLL2FOeG9WREFNZFE0dk5yZzJmRmkzZkd2U2tEbGo2dE9GV3VLUkQ4NmpNZXJUc0VvTEdrcWVsUVBJdFpIcTBHUUUxdzVsUFJ4bjBwcmo4WTNuSVVnSElSVUNhTUdGWnZ4M2pzUnlPNG9rdFR2WTJvTGJOcGt0Qm5ITXJOc1dIUURVL2xJMGdhdmJ6RHo0MzRrRVkxUkttbXVIeVdZa2J3MngrZzJvOXVKbThSeDdDSmFOQjhNU094RkpIcE1ibURzOXVnYW8ydTk5TW1TR0REalNWa2N4UEV3amNueDRqajNJSlpEK0tQOHVFVmxMV0ZCcVpuQ3A1bWdIOUdNOG1sVytjZ0F0aVF0cXBod0l4SnltTTBjK0pJWDJWM1htcysvVkV6Q0FaWFhHMWdNNUVpT29DdmJLRGNSb2QwbzZidnBYaHlwdUJGTDJub1FZYzNsdU9TbXRHaEcwNFhBRzR1Q1RmTXNoc3BYS0JmbHAxUTRlRXpPQUliUXpIcUxMbWpKMWk3Q3JaSTRrSHdDYlNVeFU1SnRZKzJjSGw5WUZFSG9yemVtaFhOUm55NmtlWHVLNDhHRUFLNG5NaHlwbEpOcWdpMWNUZ2hKRjBaT3JFUnFWYnB0VlN5Y3M1MnVZNWR3UDNYdDVLWkZiUnc2WHBnWHhSQmFYTldJMTFIRWwzUldLSVEwVExkYnRLUkJsWkl1Qlcvd0FRRElFQzN4YUErakpaT3ZaUnkwWklJaUVZTUJOTk55a01oUklta1pZV3ZSaXU3dFIxbHB1QjFmcDRWRGRkU2lxdTd0UnIwSGR0SnRZTDVxNW1zNkV5dkJ3eWhiV1FuSVNYMWE5dmpLb2JUODdCTC9MT0dIbkZYa290anNSeG1IRC83NkkyUVlhcGZXR3dyYkp0aTE2N3dGTjVsbllualNoZjFkeko1TzFqa3B6SVNvS3NRcklIRnY3RGlPeVZaZGkwd1V3djJJVnBRdlExcEUrUzBvbEJ4S3NZYVpCRGI4NThvVlJ5eUxxdkI5bnlOUmd5Rll5MnF6SG4zb3VjOGpicXR3dHU2MTZMTE9ISlpYRUhpV245TlprZVZ6T2l1eGRIVldabmxWWnhXV245ZlpETXRyT3B0bCtRV2RYV0RwYVRWSkJGVVNoRnpKTmpudjhyVnBrVDZ4dURwZGZNOHV0azRzcmswWDM3ZUxVZ3U2NUozbk1QdjZiK3NyTzNyU3Z3YjhrN0RyZWZqSFVzRS9sdGZoSDhzbS9HTzVCdjlZZmhIK3Nid0IvMWgrQ2Y2eFhJZC9MTnRhZGt6bDN0UlFleVdSNkg1T0VwamM0amEydVhnM05OMzA2Q1l1NWd1NEUxMTVUbHBWdXFtNHd6K1Q0YkwzWDU3a09sdXNoRng2OU1KNlZuYnFZWVR1eUY1KzVVUjR6dVBjMHZKRlkvbUxPTTF5d3MvcXhQMDkweGFlRjZ2L0V2eTNmVTl0WnJlY092dDZHL0dBQTJmYmoxdVRicmJvSmQyKzNHblI1bitqb3NJSG9MK01GSW5WcG16TEx2Y0doUGIrYU5SVlhUU1RDQzhnMmkrZXBrM0hxZGNRNFR0b1lxdDBHYlFTK21yVDBMSjU0ZFBGd0RzY3RaV1VuUkhPdkh1YUp0djJQS3JnTnVSc1NRazNsNjNkNkxna3k5STlMcTJWbjR0OWJybHo2TjdLN0ZBN0NWV0NwKzl0d20zUFBrK2xJQmtxS3VOMXhYSXBTRjNnaEZ2ZTAzdFNtSWFIUU8wZ3h3b2FkdmpwbWd1TUZweDNoaEpsbTJzRmx4akpLS1BneXA4NUZTZXlFVTAyb29qZnZLVitxZ3VGMEpuRVFtSzJ2SmJIUW5VUXBsZW1TelJuMW5kVWw1VnlGdTlOUThqTzJFaVQySS9hc29PWG5hM1BKeVhibGFlQ0trMk03cC84aUxGSlBLdmE4MndwTHZsWFQxZ1NUTktWOEpmTzB5NVBVcnlGL3RIbUtPN1E1U0RxdTNoY1pTZHVaeHRPRGZmMnRWT3JlMjcvMUtwLzV0NW43UWcwM2ZHZXBYQmIwMTF2Qk51NHh1RFV1VlFrdEUwYjJCRWFsN2srMTJ6a1UzeXArZFoxTGxDRjY5UEd6YlBuNytoc0RvL09aTXYvV05MZC8xY1ZzMC9jeHpvS3JlcEV2VFRpM000dUd2QWRieEtWMXpHNjZ6VlVIcGZjbTJrSTdpTUVkWHZ0OFZtQ0cxNXQwMjNjOGpmT21lL2hPS2RXcFplQTM5VDBNc1JiSE1VUTRaWTdlSUVuMFhwYmMwSFRXNEJmMVdNaGRnRDZBQTZEWFQxMnpNd2VnSmw1d0p3dXdENXpHRHhrRG9Pdk1ZZkIxL1V4ZW1FQUZBRTVCc1g2MkxGemo0RHMzRHZNY3hoOWcza0d2Y3M4Zzc3SlBJTyt4VHBEZ0lSMU1raFpKNE1EMXNsZ3dKelhBWWJNWVhESUhBYVBtY1BnMjhhdWJhRHZHTHNZZmRmWXhlaDd4aTVHM3pkMk1mcUJzWXZSRDQxZGpINWs3R0wwWThTNE0wM2dUOHlJdGdEZnMvQTF3UGM1Nkdia1kvUlR2TFU1NTJjV011Zm5odVBrbkY5Zzh5dlRVMzlwUm1iSGtZVzg0MWNXTXYzWE9DY24vTVpDSnZ6V1FpYjhEdHg3MC9OK2IwYUcvb0dGVFArRGhVei9JM2JtaEQ5WnlJUS9XOGlFdjRENzZ2Uzh2NXFSb2YvTlFxYi8zVUttL3dNN2M4SS9MV1RDeUVJbWZLakhGODBuTGxYY2NhbFFEUEhmRTlwZzdIczBlMGpGNi8yanlXUGQrZ1Qxb0FQNkFBQjQybVB3M3NGd0lpaGlJeU5qWCtRR3hwMGNEQndNeVFVYkdkaWR0akJvU3pNemFJR1kydzFZRkRpRTJKbTVJRHdUSmcwMlNWWXdqOHRwRDQ4RGh3UExBUVptQm00Z245ZHBENE1ER0lMNE80RWtnOHRHRmNhT3dJZ05EaDBSSUg2S3kwWU5FSDhIQndORWdNRWxVbnFqT2tob0YwY0RBeU9MUTBkeUNFd0NCTFliTVNteGliQXk4Mm50WVB6ZnVvR2xkeU1UZzh0bTFoUTJCaGNYQUgyVkxnY0FBSGphWTJBZ0FJd2drR1VuQXdQem5QL2YvaFVoV0F6emdIQUt3eFNXeFF3TXJBck1jeGdZL3RXdzdQei9paldZZWRQL1YvL1NZSHBaelJnZkEvRkZBTW1FR1lnQUFBQUFpQUNJQUlnQWlBRGlBUEFCa0FKaUF3d0Q2Z1FnQkdRRXFnVW9CWEFGbmdYSUJlNEdMQVoyQnNBSFBBZTRDQklJaEFqcUNVQUp1Z29lQ21BS3BncmtDeW9MYUF2eURKNE5CZzFzRGRnT0pnN0FEMHdQeGhCQ0VJZ1EzQkYyRWNZU1JCTEFFd29UWWhRcUZLd1ZRQldZRmU0V1FoYkNGMFFYcWhnQUdEd1llQmpBR09vWkdCbmVHcHdiQmh2RUhDSWNwaDJFSGd3ZUdCNGtIcmdmQ0IvT0lISWd1aUZtSWhJaWtpTW1JNFFrRWlSbUpOWWxWaVc0SmpvbXdpYjBKM29uMmlnb0tOWXAyQ3J3S3p3cmFDdW9BQUI0MnJWOEIzd2MxYlgzdlZPM2FGZmExUlpKMjdSZHZhNTZXM2ZaNnU2eWJFdHlsOEZOMklCd0V6YkdnS20yQVp0Z0lOUWtOR09EUVhUNENDV1VKQThlNUZGQ1BnSUV5RXZndmNTRUlvMitjKy9NN0s2S2JYN3YvVDcvck5uWm1UdXo5L1QvdWVmTUlCYmRLSDNHTmZFNUtCbWxvaXEwS0RxL1BOK2Z6Z2tjYnVZeHh3Z01Kd3pxUkVaZzRmOHVEY2FJNFRDelZvdFpoTmhGOE1HaWJ0aERiUlpMU2dwQ2xpcExaYVFrSytSeHA2U21wSnBOY0ZkRG1WNnc1eUtibGJVSWZxOHZWSllhS1MvMXNxbGV0anhVRnFsSVpXRmJYbHBpc3p0d1BZWlBxMFZrVTJFcitIMWhQUmI4WElHTGRmbUdYL2VSRDdZc254bkpaQTRGMkhmZlpYeFdjenAvNTUxOHV0bnFZOTU5bHcxWVE5bzc3OVNHK0J4UDhJZHBRWThueUQ4VDlQemc1UWQrMlArdHljQUorQlo4aEJXTlpyMU9Pb2xiZEhxelVXU2xkZElhZ1RPWVVuR0xkRElWTWZqTDBXK1pQM09ua1JFNTBZTEhkU3pESW95Ym00N2IyeGRIN1FnaDNNdGhqQU10UE5ETzlDS0c4VE90anFnVkRnSWZNT3BMUE40Wk5TY25JNVRzVEhiWUxIREhwS0NnSWJ3UVdTUDIrMEpoTmxSZWc4MDJGeWJVaHVvd01JSjUxc0lVTTY2TURBOHVZaXoyUGJpbVp1cFUrT05PcDJXTTFOblQwKzNNLzhsSUcwNTMrVzd4dWVobWRCU05NcSt6YjNLblUveElONXFCVUFxTGRPaHpSUDR4cUhiMEsrNTZiZ2cxb1RhME9McGdWaTJqMVhsdERNc3d6U2tHUGFzMWFoaUV0V2lkS1Zsa3NjQXhEQXZ5VGNJNlhSWWxNWnR0Ylc1R3FMbXR1YTIxQlc0eVo4YTBhRU4xWlZtcE54RDBXLzBCYjhDczhSRHhXb1JjTEZMNXdZNU1IeEd2Tjc1TFA0RGdDblVuTlNad2IzeTNGRmQ0UmU0Q29PM0Y2Tk9FeEUvbWNaNVVaeDdUSlAyZzd0MUJqdjg2K2h6NStMUkRQdGlJZVhYdm1EUVFsWDZNc3IzZWNOaDdtbXlrNTFKTTdqUldoejN4dmRoSlhDRWZrdjRhMzVPMm56NU4rTWVpazZON3VRdytFODFDN2FnVDNSTjE4Q3lqUVJhTU5ZdmJxcTBjajZ1d2xzOEtNWXlXQnkzSkJDM0owMk1OUnBwT0FUUUM4d2ozSVY3TDhKMUpXQXVtdzJxWlBzU3lZcThPaTJLQUJkVXBnVDNFaXAzbnVvcGN3UGJDU0xhak0rcnM2R2hzUktpanM2T3pzYjJ4SFdZMzB4M004anVEV1FhTkM4VGh3amE3YkZleWNvVkRZYXZON3NaV2l4R0xWa1hkNEZoYzhVcklhYnNwRkM3QVpSR1FCcm1hRWF3V214M3VaQzR2aTRUZ0hpWm1uN2U3dzVlZDdmTmwrNHkxMSsxdWJ1OWNkTitGM21EUXUyT0JmTmlhcG5WdTZkd3pjM1pIMTgvWGVJTjNyYzNPOHJmL2MyTmVkdDRDUHRQamV5aHRkcjdmN2ZZLzYzZG5iSFg4eStoMGJWeXllRjh6YzhMbjhmaWVTVjlRU1U1KzQzZW4ycG9XSm1ON2lzdTFkdDZpbmRHZit6elNnUm0xbVZtR0pQM1hJOTN6cHZyeWpNazY2YitJakhoVUFqcCtDK2g0TXZLaVlqUUZkYUFWMFc2d1pSNHovQ0JpTllLR0ZRWVJoNURJb2I0a0xCcXdWaU5xKy9TWTV6RUlBdU9zRnFUUkNMMUlFTEtGMXFsVFMwcDhQb1NtZGt4dG45TllNcVVrV2wzcEsvWVY1V1E1MHMwcDhDUEdrSkdZc2N4TnYwOWhHRmRhWWljYWpDbTdRZUZ4d0FnajNLRFk5VENpQVB2SFgyRmt4cHpHMSs2YU0wZjl6enhqejBoTFR4dSt5VVkvMmZVakpWUERZZlUva3pnMG5IQ0NHNXFUY0diUTRiRFo3Y012MnVBenpjYldXeEtIanJ5WE9IUlA0aW5pTnc0QlR6Y0FUK3RSSS9wNzAvRmlVT3cwUFVhNEVqT29FYlBNTEwrVjVkaEN6SE44czJQeVV4bzQxU2w3eml4UWFnYUN4eURjbWVVWXRnK2NxdGlyQlpYT2F0RmdqdU43QlJDR24yOTF5RDlWY3M3eENJYlRYVlZzam1qUldTNUNzV3NTSk4wSkRocWhtZE9CeURwL3hCK29Eb1IweEh6c2NaY2M4dnVJRkcxMlhGNEJMa3Z4YjRKb1YxMmRyNUFJbkVpMHZDSkV4VXFzaG9pMUFqT2YzbXdsVnRHOG9hSWpKenNIQjdNeWs3S09FYSsxTEZDeVlUN1o2Uzl5TDlyN1VOL1JqalhMVnM0N3N1cWR1b0s1WlJkMlNUOXlRK3VTdzd1Sk1Td3BMR2d0akhRV1NxY1diNERJRnZSYzBuMEorZkQySGxseWM5ZnEyNlpzdmJyejRQeVIzUE9tUmVZWGJjWWhJUG96NW5YbUx4RERrbEM1elA0a0VyaTZHUks0RURES3pKQm9oUmVSQTZnWDlzQ1JSSFV3SmducEFpelI3WGlFcXNITVg0UUsxdTkyQmRnS29mQnU3blNKVkovaGRHYmdGNG1RY0xiMFM3YVhYNDA4eUhNUzdqYUgvdUJqY0s4dy9OSkorTHl3ODFHYkJXdHN1WWo0R0dJaEF1aTltZTZSSHdHSHc1UkZ6T1VWckZHWDR0S2JEQTkrOWVWREJwUGVsYUxUWC9MZWxWZitZWUJmYlRPNzBpM2FmdW5xMFZIcCtuNnRKZDFsdGdtei80SG52dm9xbm45Nk5wbkhlVENQdTVSNWFER2FUWDB4bVVkT2ZCNXVKNTJIeld5MU1JSklCRXdOdGR4c1NtSG9Ib2xDZG1icUg2Njg4cjFMOVBKc0h2cnlxd2VWMmZDMjA5SURyNzRxUGZTUDJZSXlJN3daUWZqRlc5VTVFWCtFMFhQNEtzNEF0bE9HNWtlVGl6RGlDc1ArOUdRV1hEc0RNU0lIQkpKS0pJQXZCNGpGWmJVQWJFQzVSQzVXMk9Nd2gvQWdrY3hsOUN3SEtNSUFkeTFERVhlZ0FBQkVCZ1VRd1hLRm00TEl5MHoxZ3lhS2l1OXB3RUdpa1RJOXZBeXhtTVA1ZkFBanV5a3RxQk44bWRKWEw2WG51RE55MHZmdlQ4L0pjT2VrdnlqOVo2WlAwQVhUVEhhTUFqZy9oeHNxeXBHK0dOQjVQYWxtWjBnbysxMjZLK2kyRnB3K1hXQjFCMTNwdnlzVFFrNXpxc2VyRzhCcHZNNmZKZFArSzNRVjUrTVlrRU4rTkFlTUdrRVE0ekJBSTNBT2VDMnhjb0tPZUtZRFJudVFPK0QzQi95aXhrRWdoTWxMYmNydk5WSGpLek41S1ZBbzlackk5QTk0Y0JXeEdPa1ZvdjNTSzJRZlYzbUNIRFB4V0pDT0pmUEJXNlgzbWIrQlZhUWdkOVFCaWdGZ0RsSGxSekhkRDRVWVRSckZNQ0lMUDB5d1NqMEd2Zi9BTEw1am50N0lMT2NjMWhkeEtEWFptQ3c1czB1NEpQeEpxcFhTeWpDY2o3a0tHWkFuNmt5MHFXNXl0ZzErMzREMEVXcFFNbUVLUFJ3UDh4d1J5R3laSDVpcnlIekpINTN2eDRBLy80Yno0TXIwcUUwMVVPUkhyZlJ1U1VINWJtTWc0ME1ORFkyTjhJZnpYTDRueUUyZmtHbEhMMHZIT0lIdlJ5WlVma3JQTURLUUpSQWxpZHc0cDBXeDBxaU9hdU0rYWlUVUQ1aFFTbGlkdG9oVkJFY0FPdnR2RVhha1IvVGJzeUlzY3dkODh2MXV1MGI3L1kwcEZ2SXBuSmRpa1hIbjB4QS9VbWhNOXFDOGFEYkJrakowQmw4TVV5RkVaYU5Xa2pTa2VGTGNhVFlhVjJWNFRNMFRmcEs2aGZGUmt2bjhoYjYrNXkrOTlQbSt2aGNHMndhbVR4OW9rN2ZjMEZIcHl5ZWVrTDQ2ZWhUYm5uZ0MyNDhlM3ZUMndZTnZiOXhJdHBzSVB6NUVDT3p5YVpoUlVUVGZDTEFLZEFFMkxJTUJKYkFBZURuQ2lKNFl2MEUvdy81QWhOaGNZSXdBVGFxaFZWQTdCTTFsdnlFaVhVNFYwUEM5eVpocE4zcndnTVZpYzZIUksxUUJzMHQrcHN0T3Mvbk1YeVM1TW9aWktxT25BR1IrRFh3cVJPYy81c01jUzBSa0JCRUZFT3l6SE15TXFOVm1tSjhjSTdPSTFKZ2VOZkVJSmd3RDc3RnI4bkdkVVNOOEswUUZnWnd5djUyYUc4RWlnb2k5Q1NqUnEwb1p3SjdmRjRPSjFJMHdUenpjcy9vODZUZytRUUlha0RySDUwckdUeXh0dW1qRHhsNXl5RDc3VjB1NG9YbTNiVmh6L3dicC9sMGtjcjFJcUE2bDRHZVg3MnhjdHFGeUl6bDJLSnhTVmtOOTVPaFg3SDlUZk5FVWJTekdBaThBR1V3ekVnQlFDQnlRdzVKTWhLQTJGcmdDYUpnWGV6VnlLSStyRDJ3aGRBY0NrVWpBbnFjbG9Wc21Td1ZhaW44SEowZzBpSUJZQ05oeThrRy9KVklKOGIyVWVlR0I1ZTJ6dTFiM1BubnBpbGZiM0thTXpCVHoxRnRhZCt6WmUrRnNJdHFLL2dzdlBIOHJCY0FHNDNYSHVhR09HMWN0M0JrTUhWeXo0ZDZsMDZ0dFRvc3J4MUJjdFczTjJ2T0l2SHVXTHVnTlR5TmtiN0JsYUJkVHV6Z0VPZ2d3RFFWUkZpcVBsbVpoSk9CbUVTTmVkcEFhTEFoWkxRRDVHYllIWk9sbmdjWndDRVpEcGhYeEJueGFqVE1YV1UwcStyQ1dsaVFvWmcwdWk4bXdGSHRUMlpsM2tsbmZlUm4xbTNQSjlyRGs4N2wwK0ZOYlNVZzZEeS9VY0VPdEkvdklYUCtrS2luc2VJM016ejN1a1FyOGplelRuNmF5dWd0RjBNem9OQkZnTlNaeVlubUJCYnZoZUpiYkJZTkFnSHdmREJlN2laaDhCSEhSUERpYklXS0tvQkovS0dBUCtRSlVUUEtrV1pETTVLSlNqTjBuUjJuaWowdTk3TTJFaWdMRHFnc3VQcjVzM2ZPN2VsNXM4NlFRQ1UwNTB0UnhjVVBOcGpuVHp5OU44ZVg0R1F1VG1jM1l1THRvVUhpdWNzMWoyN1lOclk5V1dOMjJqRnhEUWZtVWJhMXorcVArZ003dHgvLzB1MlYvOVJyNHF5VHVTY2o2ODFCdHRFb2pVNG1CV2s2bWl3V3pJazRpZ1M0WHVGbFhuaXMzNklmTEhLRkFRS05KbDJrVEljc2d3WGNNZGVaQUJScVhFckRISWJoSzMwcWZPQ05IRm01OFpQV2Fwd1kyUEY3WmNnaFArVTQ2dkhWS3d3WE56ZjMxZFZ0YXVTZERwUjRITnY3cm5lbHpsait3K2Z6N2UxWjFYL2JiQjNIa1RmM0l0Ulc5RFRNMzFsZXVuVDVqWFJXVjEyZEFDdy95Y3FDNWp3RXdaNGhQU1NJQUhuWUJJdmRESUdDN09hREcxeUxia1NPYUxwOUNneFBPZFZMMDZFRHBmbXVZVitoTGlBbmVoQnpTeTM3aEVxU0YyckFqa00vam02V1E3Q3VZTzRrbzBsSisvTDkydXl2TnFHZi9mSkRZeExzUThWajBGdWlXQlBiZ0FBaFVnNlpIcDFnRVFBZkVNWU1JT0lidkUybmtFT1RJd1hHcTZlZmxPWjBJNWRYa1ZVZEtuTG5PbklBUGJwRUJUc0ErM2duSTJIenluSXNaSncvbXJWLzJMSjJ6YlBQNko3ZHVmWEw5NXFWenVucCt1YTYrdDdKeVpXM3R5c3JLM3ZyWm14c2FOcytXdDl6UW9pTmRIWU5aT1RldFdIdlA4dVgzckYxeFUwN1dZRWZYa1VXSDgrZFhsczR2S3BwZldqay9YK0xMZSt2clYxUlVyS2l2N3kwbnV2Yjg2SmNjQ3pRcnVtYkNEQWNFY3lBQ2pnRjZlVDZtYTByNEIzckg2bG9nRUpaMWpXQS9oaE1GWXY0VmViaml6T2tsOHdwUkxPbTU3eHlnY2xpSDNYR1ZrM1ZzTnRVM2JvaHFsdlRHbTNvOFh1Y095em9tNnh2TWxtSVY5bDdBSlE0UzR6a1ZyUVNKajRhc0FGTUhab1RZWTNRWU02eXBGTURRR0srdU9kQzR3NHo5NWxiZ2pQckhiSTdEbXBITHgwQWNtTU1WMHZzUUFNa2MzQ2duR3JiTFVaMkZ1TTZzams4SWd3OXlPMjBXT2dOK3dnek1FN0NmT29rckV6Rmc0a3lrVXhQeDRFNjBuWE54cVNpZDRFRzlobGhVTThGMHFKTXVITUlJM09ITXBHQlRXU3pRWWdXN2g3R3NwcGg5emVTMUpXV1A5REIzWkNmWkFBb1AveXZkWmt0bnRWeHFicHJaYTVHZWxaNjFlTTFwdVRxOE15a3pQVDB6Q2U4a092VXJYTTM1MkxsVUZvQnUxUFhJdFNBRWtNVWl1aXpaVGJqU3BzZ2ozV3FtOEZTWUFFL05ad2Fydm9SOWRxNGFNcVROQ1JBV3FId1krTkNtOHNHY3pNUkFkMmNjZER2REt1Z1c0a3NtV3F3R0FjeFZBZFhELzdKUWJqQjNqUFRJM0dDMXpDQ2xXdHFyby96QVUvRlVtUi9TWHNJSGFmUmI5bVhJZmNPUU1WMGMxV1ZnQmh2QUJUTEtFbTRvNXVjZzRpSitGM0YzMU5nQ0xjVHd1RjV3TVg0T0hHSmczRUFZZzRodTlTVU82NHhhc2lEdnlTckxpaFRtdzArR0FubloxQzVsMzVPTWFWWVdLbS9BOWN3a2NHUGMwdSs3eCtiTjJML0J3TmMxc0FZbTJUU2pmVm4rNnFXN0Z4TW5tbVM0K1dsVGVYbGRIZnh4cDl1dVdiWndlMWYrOVVWRkwxdlNSS2UzdXJHNGFVbXdrempWM1ZhSHB1dkgvM0w1K3VucUFyRVNCcFdNcnVVT2N1Vm9EbHFNdXFLTE0reU1qdEZoVmtmZ0Z1SWhsQS9xc1FaeGpJYnJRMHdTMXJHTXJrK0xJV1ZEQW9zQWVva2kzMGtCR0JKNXNhT3BDYUdteFUyTDVyYkREV2VIUzBMQmdsQWdaTkM0NDB0aW9YQ0NIeXF4SzJFZExNeHFzVkVjUm1PNzRwL0s2V2wxT1lCY1pBNlVVc2RzazUxWHlNL20vMlhYek1GNVU1YlpJOHNiaWpzS0ZoNWNzRERISTZRbXAxcnNYSXVZNVc5YTJQUEl3QlVmN1Z6eTBQWVorOG8wck5QQXA1WGYzSEg3NTl0dng3WUhheGRVQmR6Rml5SlpBYTc4d0hkM2JEMjVjbXJEdEdubHEyZDIvV2IvcWdhOUtLWWJwWDl6cE9jVUhoclk4OXphR3lYcDlzRm4xbGhNVEw1WjU5Q2xPZmYrODc0WGNjMmowdExPQTdNS0M3cXVtbHBRS21NR1NKVzRGeUhPNXFOaVZCa3RRMXJ3TzFwMkxSSkZUYmNPYXpTK0ZvRmpXTEwwQW1BQys0a1RLaXFFMGJrRXk1a0NFYitlTU0xbXgrTlFYTmdyampzaVIxdXdScEgxc3N3dmlwTndieDBGZGJlUjdmNjVrbVBlQVAxK2dtd3JjZE5UTkJQWkZId0tYL0VrUkYvZmNFZzEwYi8vUFphT0hDTGJLMGIrekxqa3RlNTJvR2NtME9NR1ZTNUVkZEZxQVl0eVpCSXhKNElyQVU4QzZJNWdBMEZKYytWTXFUQS9KeXNjOUVLK2hKemVRSzFXTllGWUVGYnBNS2wwc0NvY2g2UWZkdnhlNXZ1NzU4MklydCt5NUlGTFJsNGprNy9rRWtyQzZjOStlOEdGVzdmOUZtdTM3L3RSQWhUYWZrTnY4N2FnNytaTmZVZm14cW1RaEo3RlM1Y1BiMWpmKzVic2d5NEVERFFEWW13Sm1oYU5GbUNBY3pRcUlKWWhFSWZ2RlFGbXlFbFNmQi9TZVdMWTJSeEJyQ1dvT0JUMmg0SkJEWUhja09QSml4SlVkVlhVTUZaMWxZUzFSRjU2NTFKOHhITHJkaTA3Lzc1bGkrODhmK1dqalNiSWtjMmVaUjlzdmZYTDNYditldlB5Z3lXK2JHN0k3WmRPRWRPZHZubGEvenZYWHZ0MmYzV0ZNZXkydTIxVHBwSk05bkZzdnlWYVU2M2lWQ0tqclNDak5PQjhialJMbG9sQVpjS05rWW5mNjBpSFVUWnZvRnlrVUVGT3F5ZVRoSXdRY3VFbWY5Kzc5Ky9IcEd6QytjMmJLZi9mKy8yVEZ4M3Y2VGwrRWFqUmRkSS9UcDJTL25sZG5PMC9mdGIzNXFGRGI2NlhlVTdtMWd4enEwRUhtNDdyd051V0k0QW1ETmVmaFBWYURkYjNnN3ZSNmdVdFdBaUNKRUhUSjg4ZWtjbVRaWGcxOVhaRUs4bUZJaWNNMGl1MWVzM2dUN3kwTTJxRG5ScFVYUUZhRmZTYlVvT1FOWlVaNUJxVnlUSUovU1Z4Sit3MUtlbXdJdXpZRVM0SFlPendIc0tRTld2SWxsMFBCMEM2STE5aXhwT1Y1U0Yva3NUaytyTHhReURQOXhJTnpCT1VpSGlmbEs3cElwL1NpMlRiSmEzN0RFUXE4MndoOEt3Y1hTcnpyQkFzRVVKUFA4aWE0Tisxb0xXY3dITGdrREhXZGV1eFR1ZHJJVm1pMkExK3hpL0s2OTZrVEVuWHZYL1NKUkMyZ0VubEtGSlVBSTRvbGJJcEtjNGltZkRTY2F6d204YjVwQmdIdVNxRkYxS01GVjlRb0NDUjdXVTArMlN2SURtQTlCMmgvU1ZwWUF3bmRveDFTTEl1clZEcWxyVm9UblJXSmNZaVFYWVFzRGdDYURoMWJWL0QwQlVCeURwait3eWpMdS9ENFZwVUV3b0dJajR3WXgzMXRaT2FjVVZaWEJsb1dtMmExS0E1YXRCVGRpM2FkSDlQMTMwYkg5N3hMMm9oRDVKdFptRHV1OXR1L1hydi9xK1BMTCtoV0RIclB4TDZhcGVYeVdaZDllY1lYanBkYkNrc1BvcnRqNS9DYWJmVVZCUlQ0NVoxWVFmb3dqVGlzNUFlY1ZqUHJVM1NhU0NFYUx1TkJrYXI5YldJUEV2V1VzSGs2Y29PWERjTlRhbXJxYTZxTEM4cFZPS0tONUFjTDhwT0VKdjNqSUpVcWZmR1Jkc050RFUyMHREeU10a3VsWXhMNDkva003aWFuc0gvdlZUK0ppZmV3eHRVY3ZFUmFkMVlFVk1tWElNdm9PTEc2RldnbXdPNlBTZzdHdUlBS1BMZFpBbkwxd0tVWW9KYUZVbzl5RVZYUVpUMVlycFU3QzBadXpLbjdyQnZ3MXhHRWJaUVRaeEtaMllaUlJTNjNqUitoakhGdytnQzBMdkxZUzVCc2pwakoydUR6U1JxQUhJZVRKd1pJa2twS1grUW9BNkQvZjVBMkIrZkdGRWhwYjVnVXN5SUFwL1k5TGcrbU1ocmI3elVQeFJOSVZvMS8rRGVDNlg3NmV3ZWxXYzNVdkx3b3gwelV6T3hpOXJLZDAxYkI1ampjZnNndW5JM3pITWVzWTg1bUlPWk1HVDlEQU9PdzF5Zlh0RWFRNUtpTlF6SnlBU3NMQ25CWlIwdFRiTm5UWXNDUXdOWmtjcmlnREd1TWxqR2ErUy9MVmJ6SWpYa0FoeW15QzBabjFPSFlvaUZVbG9uTGRPazdHMzFGRG81YjBxNDFFa0luYnQ2VnJyUEhyS256UzdJYVhXNzZWS1Z0RGdoOUt5UTFlcVVyR1RUbGZXYzgvQ3FyRlZOdWdXdVJ2TDFRTW1pdXZsZVg4RHRja252VEtKazgvQ0RZM2xHNGxNQWxZQ2JoYlFFTVA0Z29Ic2tkRU1PSXNnUk5MN3VCdU44RUR6OHBvQUNBUlRqaVB2RkNkUXpIOEJVL3h0L0xTOTh5QkhqVGtvWms2TXFIWjVOQlhyQlJKOEhYb0I3Q09ZWEpmWmY2N0d6SEtMb2kxU0ZCaldZeUZPdk80TVhpS0w2cW5JaXpBQ3hrS1M0TUZQSFNVb3ZyOTJFOWVOUlo2eEJnemJqd0NmdHdpakpLSS9iK3liYkc0YmNRQ0RYOEtaMVUveG9lWG94K1hnN3pTbjg4U045MGRzVHJLdDA1R1ZDTWxNOS9PWllFYVdZUm01bmVyMkU5cG1LM1pXaDNsTzVCbEtzVURJMkIrZ3VrUkQ0ZDFsRURJTjdpV01BMDNORVBSUFBVbFRnYjVHTnN6TnFvc1d6VW9JRElnRi9RQWtETVJNTm56R3dVVWJnVXRNWVJhNEtoc284STk5ejE4VFI5N1FXc3YyVHphSEI3M01EaWJvNnJITmtWckMzRDc4NmxtcWpjZmc0OHlrVk80TVdBOTFiL3ovVVNWam02NzE3djc3MVZycmRlRjhYQkN4NXl3M2RJbjM1K09QU2wwZEpBQ0xvOHJBY24vcmZ2dmJhZC9wVmpMa1laT0ZGT2Fnc1dnTFFDMkVCclJWSjRSM3cvMFRQbkpNVjhNRm9EL0hPSWExYVhqRGkzRFA3aVZnQ3dGWTh1M0xscy92KytnMTExSDlJc0JqL1g5ODljUERRVmU5eWR5MS9ZTXVXWHk2VDNodkx4NUdiZG0yNWdJQ2V4ZEkzbElkVmFEWWFpcWFXWUNUYUFCSVdZc2krbW5XWXdVMU54d09nU21GaVNTd21XUzVCRWV4cWtxUUp2VnE2NWc3UVNDMjFPWnFPaDJCNEVMQW13aUprd0dlK1RBTTZtSU40bHI5ODRtREU4Z3piTjJad1oyZlVYbDJOVVBYczZzYXBVWmh3WlhFdzMrOFA2YW1EVVFRYUZ1WGlycEpmMkJKeVkrcCs0MVhlczRyZW1YWnBSMXRtVmU2TWNGWkxybGFYN0VreTJhclhsbWJVQkRXUkdWbm5ieE0xWG4rRzl0RmJIb2F4bSs3dDZycDNrN3psaG02US9ubmloSFQ2Qm1aL3BrYWJuT0VSMGl3dVcwWktia0FqTW5wZE1WdmdTemZxMzZqRy90K2V3RWszSEY3LzZwVlh2dHJYUjdicll6a0tpVTIxYURwcWlOYUNrOUtBSDlQQUdRM1RwNlZBVkVkckJEekxxQjExTkR1ZVByV2hEcTZxSm5xVUhhblh4eXM2dER2SmxoaU9RbW84T3F1U1pjbzZKcHhjZHZqU3lxQW56K0ZNVnNKUFkrMjhzQzNUSGN4d3o2KzVnanBxYVdOQzN2bkRWNjlqNHhVNy9wMjdhLzZSMWYyM3VXekYyUjAxZFU0YWRCcWE4eHFuemc3azVFcjd4bW5rRjYvMDlNbSsvRGF3NjJ6YWQ5Y1JiWjJGc2VERkRFL2lNeFo2Z1kxVTQ4Qnh4ZlpKVllFRjc1WGRna2lKbk81U3gwNTc3a3FLOG5OREFZL0xIOVRTVlRPbHE0c0dZOUtkSWdmcitQS0xWYW1nUnhKclh6SzcxQVl2QmRXeWZ3QlVHeklXUGJScDQwQk8yTCs4YmVIcTRsVmJWangzK2FyN0crU09ydHprN0pON0I2OXNxQTB0YVoyN3FiQzljK1VqV3hiZlhTMWozTS85N295dTdqVUxzeXN0Wm51eXlXN0pQclJ6M2JIRnMyZTJFbytQOC96dW5LMDdOblkxdEdXWXJDa3BUbXRnKzZxMVJ6cW1WOWZKK1N4R2w0Q3V6QVZkeVVhUmFMR0FsUTRlc2w2aUZwTGlQcDBHNVd3VTlwdG8ycUpVa21MZEFwTWczVGdidkZ3WnpWS2swLzlKSGMxQnN2MVA2YlFjcWRrbE5EM1pUeWRkbGdnTXBkZnBzUUUxUnF0eEtwLzJOOURsSGJZYmhFZ0xKcVNmTEFZSzgxRXVvTUlJL01WS1hpb3NMSnNBbCtSMXNiR3hwdjZEVjEvOW9GNE9LQlFXN1Rsd1lNL214QUF6c3ZIM2I3MzFlK2FnT3QyUlBVY3Z2L3dvczB2QjFUcVlLMW1mQ3BPNXVrbU52NWxYWmd4cE9aMnhPdGt3Q3Zyb1hCT2dqZ0lVOExpNWF1UFE3aDZZUzR0MDFGQ2FsMXVhSk4zYVRPZDJJZGxlZzB0dzJTcjZ2VlVKaGlsK3Q4ZkhmcVBPZGZocWRxczh6OUZ2WVo3djB2cGk3K081QVFPTEJSTDgwK1hnejhKOE9STGZJZjlxZ2NRdTJNS293ZDhOa1luVVR3ZkhqVklHeUxFL2drb0NSQXhqWXovdGI2SU54cVRMYVJ5RkRxeDBKTWNJSFNJdzV5bytPMnV1WmVncDY3eHdOcmVQWWg1TThlckJWVThicXpQOXdsUHJkb3dKL3lrQjF4Um14c2hUVTl6K0JMby9acG9MTFphUkIxbXZqUHd3S29HNTMwTHp2bWkwcmpvN1RlU0lxSFJhRVlqU2RDZnBHWGtwVVlaOC9OakVyNm9pQW9Lai93MXgwS2NkRCs3WThRZTBlQUxSWTVLK0tkTHJlRWwxSE9Wc0dKVituRWUvMHE3Y2VyeE1lblZHbkFXZEgvMnhsbjRyVW1CNnErU0o1WDhicEJnZ3gzL0d4MlBnL0NWY0c4dTdhb0VIMXdNUFNsQkZOQUlzWUFrTFJDQ2E1RndnMTBuU3dSSlVwSktlSU5tSjBlQXNsQktFTzEyNit4UHFFdTZsN2NiU3ZUTmx0YVY5ZWo4TVQwa2thK1QzMHEweFVsWXhoVEZTMXVLamNSeC9IOURpVjNQSVNSbzAxQnd5M3FDaDVKRFdNcjlWelNGRlBDSFRpRlZiWlkvR2pyaDBJMzJNUmVuSVlId3VJM05JMGlsRjF6K1JHYWNiaDl1eGdlWWJENU9aMnF6c0E5OVRoMWFuOUJ2TmtVNnlhL2lseUU1eWI1SVJrZjV2VHU3djUrTDkvVERXam15QnNnZ3BBWE14L3BwaWJDV3BPRHViNkFkTjJ6QlZHbWtJejNxRzlGaDdnb0kzU0Z1dWY3aUk4Z2l2Z2QvZFEzODNLeG9rdjhjQXRGb2JiODJLdFZEWmtSV1NNS1h5YkpvMDFWOGQvOWxaMHBEODgveFNUL0Q3aitYZjVLOGtXMWsyWCtCdjJVOGhMcnRRMWlQQ3F1bFJseEVTQ0VqeWdXekU3Q05Wc3d0aG5BczV3K2tjaE5wSEJNQXdrQWJRT3BVZzUwMUsxNkxTWjhIc2NldHdSSERhelBaVWwvQzN2d211Vkx2WjVoUndST2QyY2tQbTFKRkhkSHFUUXhRTlNmaFBVbWFTUVJRZEpramoybExOTUovUlQ2VWQzQmVqSERLZ1REb2Y2M2dXQkFPTU1nOXViRjN1STcwKzZjZWNKTmh5N3c1bjVPUmtrRC9LMnlyT3lPYnkrNUVKcGRON0dwSGEzcFZtVVcrR2xMcGpNRlp4WTNQVGJHbEdzM1NWemUzMXBacnhVbTVqYXJvalhmZUJJY01WemphTXl1dlArMG44WTArZ0FsU05QbTA2N2dJbm5lekVHcmFpSE5CZENzeWFiWGFNT1NMQ0VhVUxPQnZ4SE9rWEdVUXNvR0xFYXZvUTZkOGxpREMzUlNSMDl6SXlGSFRJZHk0OTl3VkFycC91cWswWmptangyYTVDc1lzQThLdlhFRmhlV0loUVlYVmhWVmtwMEpidkR3UURrWWhlWGZwUGhKMnhuZ0pnR2kzcUNiRnVNS1g3MTBhV0ZBa1FEejA5MVUvVU1UcGxtWEh1YytldC90bmlUMDdlZnNPR2dhWTdaNXVNWHBzK09QK0YzdWYzcmU1NjVZN3B0N2F4SjM1eGo5VGZSdHpJbEliRzFobVhkZDEyYyttQzNxNmNvTFlvTGNXZm1sY29jVzBMWjNmY3M4Rm1sMlVSQkZtMDhKbmdPc3JRSjZkU0lEVVIxYXpaajlSY0xkQkNPcUJwYXBQYkl0RDBVZzJnY2pOZy9wbUh5czVXdVFxcEY1RUc3VndZanpoZ2ROOVB1Q1NhUGRsb0ZCc01VVjBkMndtaXNJVkNDSVhLUXBHQ1BPSVZ3ZnBENE9EbEZ0RXhIVU9LUk1ZbTdlTmJiUEEwMTZWUDczaHA4K2FYZHF5NHQ4SGx1NTJ1UGRGVi9HZHcrb0cydGdPZG5ZUFRwZzEyOHBtQUFJdnYyZmJCNGNNZmJGczh0MTMyN0Z3SzlmdFMrNUYxNjQ2MEx6aXljdVdSQmNRdWR3UHZYV0FIWjYwdjVTYlVsM0wvMS9XbGNjRDlYM1E1T3JxN3MrZkl3bzVEUFVzZm5HVTF1OUtUTTl2Zjc3L3VnNHN2K2VDYXpoc2p2bXoyaExvUVhiYzhzdkNXbnQ2akM2dktVN0xUN1g1NzdmUmRIMTUxMVllN3B0VFdFalRPVUpvT3hmVEptY3lnTStvVGVSS0ZKUklmYTdTVDZWUGkwRzVxZVVLaXVTYnFFOHR6YTMvQ0pZbytqUnVOWW9OQm4rS1dQVUdmZktGZ3hLL3FVNnlOUDFTSHg5U3N6NmhQN0djdTJra0hldFJ3N3dwWnNaNitsSzVZZkMrNXFDWjFVcTBpK3ZUakF6SkNhSis3V05hcmUvQUJXWjlrVFpLMWl2RCtJUEIrR3VoVEprQnh5Sm5WMVVuRXcwa2UwYjVBcnBlc3dPUzIwSjRGUkovTjhrSlU4NGE5b1lBZkx2U0UvVDVJaWpKSXptd25rZUtNS21URW9wZVFndDdjcUFIa2tDZmVkZVBTUjZlYmpINmJOcS9sMzliZi9PN21TLzV3WVB2UDA1bVYxcHYzc0NlMi9YYS96M25qMGNLd3RzeHF5cktGaTdhK2Y5TjFIdzdjc0hQVEJRTktEeXUzaEEraVVuVFJZNERSdEdxYmNiYjZRSVlHTXlKcDcyUWh3R050cnc1cnRRRVFLZEVUSkQvMkVRMnJZK0VrM0ZLTCsrSVhKWTZrajJ6QUw1VW9EWkYrbTU3QVhyVUhQZ3orMklYamtPUU1LM3ZVZ082OXJJZzFCdlNHM1J0L2c1ZFF1SEt2L0VtYVcxMitsK25pNXN0RDkvSEJVbk9SUHJtS0wvNlBqVlI0TDZtd2o2SDRkZnM5UTdJLzNpMnQ0UTZCREF0UkE5WkY5VUVHQ0VpankvS3lFZVVpVUZtZTVRWjFHdEpvM0tzVkdOb3NKWXJxc3lsS2IyRSt0WXNBcmFBbVhxSUdNZm42Ym5TMnE0bFZSZFNya1loNFZ1VDd6bnlYaEdzaGdJNi9MTGFHUmJWdjRqWEV6T3hGUlFnVk5SVFZWNWJUVnVPQVBSQW9reU9vWFZsT1ZYTGRTVnB6NjlTbmFDWnBYTHNoN3JaWFA3Ky81NlVGWVkwNXJOZTNQdEIyMWRVN1hwQXRzQzNCOE5nVE1lODkvTlpGOXkveGVvemhsTFFLenBtNXQvKzFXemY5N3VxcmY3ZnBjTnMxWFYzWHRNMjVwcWZubWpsRWg4RjljUHZCOTlXZ0RVU0hPVldIQTBpajBYYkxHcXUySCthT1gzOTNSSDFFYlRWSVM3SEc1SU5remExQlZmSkNkQ1FRMUNzMVY2VlRkRUxpRXBHZlBqcmoralR1ZFUyNWYyWFg1WTF6NDRuWjBybnRDdzR0WGhvL01KZnVuNlRSemRpN3R1M3dTc2taUzJIK3ZYUGRpZ2ZXUzUrb0IrUm9oMFpIcVUzUDV1ZWwrTkJhaEZJWXRJYUR5Y1B4WjZVMTdINTZmRFY5MG5RTmVwSGk2bWtLL3hyUXRxaTJMaS9aeUdGUjVXRVExRlBvQnE4c0J3Uk5OL0EwMktMWGNReHBVK3NtejcvUXFyK2Z0Q05wQkw3dkxLUGsyblVEcXErdGpoQUhBSWw5aEZRN0FtUFRYZEY2NWtWOXEybmlra1lwdHo3R3NjWWZUODJPTjlOczJrdTI3NE5YMlRrcm5oaldTTy9qOXVwWVp6L091ZU9xc1R6MEJJZS93TzJ4L0hCRWt2TWU5QWp3cVFINDVFQ3paT2JZd1pOejNlUlpuMEFMRXd0NEJEVlo0U0FwNWJOckU0L0xqd001VURxaFhYNGN5SHJHS2loenB3dlRCSGI0Ry9uWkdPbHIrcmt1TVRqRnhFN3lrV0dZMytmZ3c5clJLZXBEVGpWT1pjQk5ORHZvamdhcldONmpJUTlMYUh0cFFTcllZa2dTZVk1aFVMZEFsblRsTlhUaWdYTG9NRjB2YVVMSWJaR3Y2VWFUWHhFTms0VmdkU3kxdThsSGdyTkpnOG0ybzdhbTJUT25OOVFTZ3dxUy8wWlZFU2dzSEdjL2t4MmJURDFjOG9QbzluTEZLTG5YZ0dNMytsejVKWVh0aGZRUnBPdVZMeEdxSlo5U0s2TW1DS055TDU0NWZZMjU4NXFhWlJYMWlub3c3VE5tTFByWlN1bTVTYjlDRkxsYTNsdTV2SHRwNTJNMUE0dEhQcEYxaGZpa0cwQVdOZWh1eXMzSEtza2FRck9EZklveFNUaEpoN1NtVjZkbGlMMk02emhUeEJBaVkrVEFTeEluR0M5YjEvalI0TzdpNDFETUNNY042MVJkV1hWRTlXWFVsZjFQZkpqQ2I3YmtIRjZNQXZhVFB0ZlVSOWF3Sjg3dXhGUitYcnptZkRrdVh3YllxaEg0T0tIR2xudXVHdHZabjlobHZ2NXc1ODRQcjd5U2Juc1B0YmNmNnBXMzdJa2RIeDA0OE5FT2VYdDR3ZEVWSzQ0dWtMYzBiNE9jdndYbWs0MnEwR09uUWxwRzVGU2NEWWtPUXg1VjFaS1VJUmdyU21YSDE3N0NzZWhlU01jbVJITUZKWjN4c21qZW1FQitqdUVrcE9ma0lKUlRsVk5aVWdTVHpTTFM5c20xS3BVeDRYTUpkbnh0S2wwQnpBL0V5LzFyRXZEMHlvU0VESUNuakptbGJlTjlLK0RwdzJNek1obC83ZUR1aS9IVlErQlhJbDhuZ1Z6WjhlcENtRTNrNjlteDFyakx4dkgxSE1Nbjh0VkhBdG1rVUdrOGMzOFNTRm9UWiswRGF1cDdCbnowWTJ4WkdoOVFNdC9EWXpNVDRvZklNMHR6Z2E5RjZNS29EbFJFeUNPTFpRcG52U2loWnFQVXM0SmppallPQUw2SmRSMzZIRmR1Q3gzZmpjYVA3b3lDSGNKUEZjcSt4YWFWbjhpT3czc2pqZ1A4U1pXT0tXVS9uNTZsdFFhVERjV1ZTMDV0d3gwVTFOTzErV083eWZZTm42dm9pbHVhMkJOWmFTRnpXcFhHc2ZOMzIxNGM3ejUrcy9peVJwbitrK0EvTW9EK1psTExhNXlrbHBlYlVNdkxQVXN0cnhrMXpaeGVXdncvcWVYRlg5Snd0bUxlYitpTEdYTHYzdFc3SVR2THUyaEc3MFZsN1oxZEQxOXkvdDExc2RjekJINXg5ZFlkZWRuK3JwbkxkNVhSMXpUMC9yeGFYaWdnYjJXWU8yMUdmV2FXUVo4azZsTlRYUnVYTE5rL3A3WXUvbHFHbnNYelovcnlqUHBrVVdlenlpOW5xSTdray9VRGpMWVJQOHNOb1h5NjdnMWtZNVlaRk9pemJTeDl0azFwMEV0WUJjbEhlUUYvbUR3RXJGYno0ZzhCMnlZMDJKYkZCRTBXbnZFL2ZQaG5WTmRYdDYyWWRuaUcwZVJMTTNoYm41LzNxMk92azhPdksyMTR0QzlJT3R5L3ZqeGZWNUNSbW1rcGJuamtPQjZnV3ArbjFpRWJZZTRYczdkQ1pubnRZOGswek1ycW5VRldzamhTNGVPNFlBcy9icjJEdUl2QXhCSHlNZ1EvWnMzQ04yWll3bUtGL0VTMHNneVpRcFBiWWhuT3hIZ3l5U3JGR0R5cmRNckhqckcvaWExUlFMeFVFNFJmK2x3MHJGNUx2bnpHM3VvSmpoUVJKcmlEQTJ2T2g1Q0tQNVVWZitRdk5LQmlkNncrUmQ2dkFidzVVeDB4K0wrdEkrNkVDVFZJenhncmlvdktrcVhuNitQdFg0UFloQzJMNUw1Q2xwWmVSdXprVlNITWw3R2E1MWJaWU5VNklzeXpIRlZISy9KRFJscEluTFJHR0NzaXluMncvZ0RNT1RTeFFLaXU5azlXSXFTclJPTktoR20vMW9WRHVjVkpSMytXVkpvYkNtbGZNTk9aaDhoMisvWDNpU0ZQZy9IZXc2dnBRYk5LVHNEbDhlRVRVcXZQNHdva2tQVWsvcDAxSTB2S1ptYkdhbVF6WWY2WEEzMW5xUk1HLzVkMVF2MDU2NFQyaW5GMXd2ZndsRkpxaGI4ZzI1NXZ2bTZMdDRhVjRCblMrN1BpWmNMbWQvNjlRcTZueWRSTHIwZ1B4aUlRSTBteC9RVzRRdDMvL1BPWUhrcXJxUjRXa0Y2Qm9JVTJpUW1LV0ZXN0l0MWhvSTM1VkxRRktNOUhBV3BpQ1I0YkdmcThYRVU5VTNFT25heVgxazdaOGJOTi9sQlp6NWJ1R2RMQmhrVEZ6TUNHemtURkhINXkzNUZaSEE0V1RtSDU4cjBIbUxkaW9ueUxLWW5KOEFSTU5nTm9DS0liNUg1dnYxd2c3STgvNTAzTGc4RXh6M25MejI4RzRrUEhsQktENTM0bWZPSzRUdm1oOEVuS2poTWZDUi83a09jL1hNa2p0K0hQbExLampaUWRWMHBWU3RueERjSU1sMmxrK1FNMFpCQU91Sk9adTI0azMvNUQ0Y0VqMGtuMmoveFNTQ0RXUlhYbGtPUWE2TFBmY2o3c2lEM3lUUlpBbWRWMEJaM01ucnpJSStvbHI1UkFISS82NHNOQTVPVEJNdUpGTWRNUnkwMktDM096TTkwWmFRRXg5b1FiWUFjUHRnbWlsVVRYWkN5WGFteEtUVFhTZ09Wbnd1VTNrc0YrSWFhNzdBc2c1ZlVEeFJ6TGI5cTlhd3ZXNEwzVWhiNzJNYU5uTHIrZTdCNjREUFBNUjYvelMwbWhzWHI3cXNhTGowVjB3ZXMyMnZRRGh2VGRXOG5SUngvMW03YzdrN1pzSVY5MmJiWG81cmdOUTJUaEVETU82Ump6Q04rUERLamdwNzJmSWY0aUNHdENpd3R6blU4TzhueS8yLy85ZzRUandqdzF2djFkT3NrNUtNOVhSM1Y1Y0Q4cmhnQWQ0emtNWWNsTHArUUhKNUg2UnA0Y1R1VTVyZDdFaHdGZTYwVHltODVZd3ZOa21lZmxrVUIySUZ1VVZ5WEdjUmoyUFRqRzdFUU9rMklaTUw5QU5UNzgzVWNNank4N1FIUHR5NEhKSDlNbmdxN2RDNnpmc212M0pwN2xpZ2ZXazBQODBxRWhnM3VPenJKMUYySHJsaTFKenUxbS82T1BraTliZDZjYkJ2UzJqZGNGZFpGakZ6ZXUybDR0VjRFeHVnay95SlV6SDRQdU45UDY2QlFEc0RjVGxJbGdPcDQ4N3pjSUpzU0FUZzZTUnl0UUoyRUFxU2dTQmhDU0VYMTlTUkFGZklHd2ozWjlLM1ZpK2pUQkdNZ3lwbU9QRkFqeGg2dWoxWTNoQlROVGJEWnJwbGg0Uld2MXFxbVZjMElKQjVpUGM3SjhtZk5UVFdsT283NjVLeWZMNjQxOUlYbk90OHlWYkVqcEdhMmdGT1J4cEFMRkF1QWlmWWVJNlZUeVdnWjFUSkxXMHNtZUk3VmRjbWxUMDZYTnpYUWJuaGFPL2VlR1lvZGh1ei94RkxDRUcvMXgxTWY5SG5UWmhRcFJLK3BBbStqOFZubUF3KzJZMDA3RmdvNXR0bW9aWmc1NUM4dytZRGEvRDNGYW5aYlREWkluRHBFV283Vkl5NG5hVHNDZ3JFNkRCVkVuOUNHdFZseUJSSzA0dDYydHFLaXRvNjJqcUxXb1pVNmozeDlLUzgveis0ckowZytsaXppdHNnZ2d4SGlicE54RlFUYUJNUy9vSW9JeUt5OVNVSjk3b1JwWW9ieUwwRlRxVDJVWms4VXFUY3ZKK2RVMXhpUjdzc0grbzlhUWJMblRhbUdhamNQclJhM2RhalN5TjVIUGpSYUxwU3ZEN1haSUwxdlNCUTJ1Uy9aWVhmbGRiL0FmTVMrbGwwWHdHM05FcHpYWm90L05tMDBqdjA1MzFGdFNOU08vNVp3V3MxbkxGSFBPRVdlYTA1bCtGTzVpT2VyTlRFN1Y0NEZVczhNaVhZMTEwcmVnaU1EYkxPNTFoYmZMMENqbGJMSUhKRDhkY3lJamMxVkdyVFZ4NW1yZ25GN2s5T1JSS3AxT3Z6bUJ5VWprdEdJZjBnbUNiaEhTNllRZUpPaUVkZ1hXMXA3aEZxSmV0K3ZjOTRoT1RSU3ZxQkU1elNEUzZFV05mdGRQdmdrcDNSVVZGUzByV3RwSkV0YnNjbG5TaHYreHBDR2swVXNxZ3NvN1RvU3hMem1oamlwWkRvQS9XZW9yTXJJbGYxWUd0aFhsVHEwUHpIU0JBbVNZaW5mWGJkbzlkZVlyMkpEaG5sejRtOGNKZi9nV3EzVm5mbTJtL2N1czZkbkZWYWJraFRhcjFYWkptdDRiMkxvaXVyN3FuaWxXSzlnWHNsRDd1Z0NjYlFzNkgyMUMzMUV0eUNqQUFnOE9nSnNDU1ZjS0JNNU5XR3RjRFl3V3dNT25nalJiMVJlcmFMRDZaaFd0VVdmVTZnWkpod1l2aUh3OG9JSURNVEtvejRTTjJpUmpaekxXR2JBK1NhY25CNHhKSzFDU01XbXVJem8vOXFZV0RZQU5EUUViNUxhN0pyMnQ1aWZldGpNYWFBWGN0bkZENi9tdDU2M3NYYjYwYzlHOGpsa3o2K3RJYkFrRVNpTUJlNDRaa0Z6TWdkSG5TNFV6dk9obDh2ZThFRUdqQ2UvcU15ZGtXWlA0QXJZMEZTL2RWTHU4b3U2S3krcDJGS2VLUm9lb3plbkpiNXJiTmljdllEWjdaemJPbVRLdGtzcSs2T0lhVmtjVkpLNG94dnd1eXlUZVlmUVBQSDlCU1ZmMXF0TFVlZlVydHpnZE9wc2hOY3phMGl0S0t2SWphYTZpc3VLU3RESXIvRnVhb1hXNVJ2N3NOSTlSRytrWWNRK1RlQTFwR2RiSmNaL1dhd0J2WmhMTXJNY01mUlJmMFFDMThCQ01MWVBtMDNmcVpDSzNQMkFQcXNXRnlSZ2NiNzVhN3pyMnEzblB0M29OYVQ2VGNjYmhhU3ZhSkJrV1N3UUpEbTg2L2toRHNTVXpOYU5BbDErK3ZwK055cmthSTNKdHpLLzVlUUJsd2xTRGxmZG5kU2E4a3k0QjZNamhkY3pUOHNleXNpb3E0SStmNXdyc0Niam9ScWxGendaNkhTaE1GN05WQ2hOTEtPZXVuOFNlNTNsZ1hQMWtoSDdNanlmUDhSVWp1T3YvQTJBK2hmeDQybzJTVVd2Yk1CU0ZqOXkwWXc4TmcyMHZmWmtlMDBHdHBGMmhOS3dRQW4xWm9jMW9DM3RNTTJHN0pKRWp5UStGL3FuMVI0eXh0LzJnd1k1VXJVdkRPbVpqNjd2WDl4eGRTd0x3QWw4aGNIOTl4dmZFQXB2aVErSU16MFNWZUExdnhKZkVMYndXUHhPdll6TlRpVGZ3S2lzU3Q3R1YzVkVsV3M4WmZZc09nUVcyaEVxY29TMCtKVjdEa1Zna2J1R3QrSkY0blQ0dkUyK2drNzFQM01hNzdCWkRHTlM0Z1VXRkFpVThKSGJSUlEvN3BITm1OTWRRMWNRYXpiZkVXZVJaL0JiWTRKbzhpZW9CS3oxMWhubkh1Qk5kUFdkeE9JVGlYVkFiS2hwY0lhZkswRWxod2Rnd3J6bk9sNkl4bFVHclZycjQwOE0yWFRBMDlZMnRpdExMM1c1dlg1NlhXZzVOWXl0dDVabXRacHB2YzYwblhnNGFYeHJyWktmMHZuYUhTaFdWTDV1cmZHSm1hdEVZcjV0NUhNWjE3VlN5aUE3YllaWW5Gd0tQWmdNK01sZXdkc29mc0F4MTBVekhoRDAyRzViM0FIMk1jTUZuUUhycTEzWldmZmJ5YnUrZ1A3b1lEZnJMdmUwOCtQOXJxMWE4SHEvUGc4TmxWRHFxRERkQ0xuV01TMjFkWmVZeWRvSC83L3J2cmY0K0YvZW53dkVrQklPYU9jY3BRd05UanVFY0ZmeCtpbU9jVU1SZDQ2YTVpYTFxNzNKWFRYTmpDM1Y2ZklKZjMyS3pLSGphWllyWFRzSmdBRWJQWDBZUm5BekZMVzVSc2NWWlYxd291QVVucUtVeFlDOElOUVZqdk5Wbjg3V01wb2t4MFhOenZweDhTRGg4ZnZEMkxjRmZUS2RLdUhEandZdU1qd2I4Qkdpa2lXWmFhS1dOSUNIQ1JHaW5neWlkZE5GTkQ3MzAwYzhBTVFZWllwZ1JSaGxqbkFuaVRETEZOQWxtVUZCSk1zc2M4eXl3eUJJYXk2eXd5aHJyYkxESkZ0dnNrR0tYUGRKazJPZUFRNDQ0NW9SVHpzaVM0NXdMTHJuaW1odnlGTGpsam50MGloaThDMG00aEZ0NGhGZklJYXRhMG1zVm8yYnFaZXZaVHBSdDR5SDQyK292bHBNaWRkTXUvVHZLajVYWEoxUFRmSTVWUmZrWjZoY05SelZRQUFFQUFmLy9BQTk0Mm1OZ1pHQmc0QUZpSlNCbVltQUd3a1FHUm9Za2hoUWdMNVVoSGNobUFjc3dBQUFuMUFJMWVOcGpZR1JnWU9CaUNHRklZbUIyY2ZNSllSQkpMMHJOWmxESVNTekpZOUJoWUFIS012ei96d0JTaGN3V1kyQjJkZ3hSWUJEejlmY0Jra0grdmtBU0xzdVlWcFNZek1BQllvRXhDMWd2STFDRUVXZ21FOUErQlNESnhzREhrTXpBekNERUlBcXlIVWlMZzlXbXdObE1EQ0lNWWdDMXRoTVplTnBqWUdSZ1lPQmlzR0d3WTJCMmNmTUpZUkJKTDByTlpwRExTU3pKWTlCZ1lBSEtNdnovRHlTd3NZQUFBRnNhQzJzQUFBQUFBQUVBQUFBQTFhUW5DQUFBQUFEWm5JUGhBQUFBQU5uN1NVYz0nKSBmb3JtYXQoJ3dvZmYnKTtcclxuICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICBmb250LWRpc3BsYXk6IHN3YXA7XHJcbn1cclxuXHJcbkBmb250LWZhY2Uge1xyXG4gIGZvbnQtZmFtaWx5OiAnQ291cmllciBQcmltZSc7XHJcbiAgc3JjOiB1cmwoJ2RhdGE6YXBwbGljYXRpb24vZm9udC13b2ZmO2NoYXJzZXQ9dXRmLTg7YmFzZTY0LGQwOUdSZ0FCQUFBQUFFQ29BQklBQUFBQWRQUUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCR1JsUk5BQUJBakFBQUFCd0FBQUFjaVR2MEhrZEVSVVlBQUQrNEFBQUFLQUFBQUNvQS93RTFSMUJQVXdBQVFGZ0FBQUF5QUFBQVFCYWJLSmhIVTFWQ0FBQS80QUFBQUhnQUFBQ2laNGR5eFU5VEx6SUFBQUlNQUFBQVR3QUFBR0J5QXBLMlkyMWhjQUFBQXhnQUFBQ3VBQUFCVXNSdFd5SmpkblFnQUFBTFlBQUFBRDRBQUFCc0o3RVJWbVp3WjIwQUFBUElBQUFHOGdBQURoV2VOaFBPWjJGemNBQUFQN0FBQUFBSUFBQUFDQUFBQUJCbmJIbG1BQUFNZEFBQU1Ja0FBRnE0aUs1eE9HaGxZV1FBQUFHVUFBQUFOZ0FBQURZWG1ocFFhR2hsWVFBQUFjd0FBQUFnQUFBQUpBc1BBZTlvYlhSNEFBQUNYQUFBQUxvQUFBRFlLdWNaUG14dlkyRUFBQXVnQUFBQTBnQUFBTkpZZWtKT2JXRjRjQUFBQWV3QUFBQWdBQUFBSUFISEFoRnVZVzFsQUFBOUFBQUFBY0lBQUFOdit4OXFnbkJ2YzNRQUFEN0VBQUFBN0FBQUFVbGtmY1R5Y0hKbGNBQUFDcndBQUFDaUFBQUF2VnF4M3pzQUFRQUFBQU1FbXdpYmlRaGZEenoxQUI4SUFBQUFBQURabklQaEFBQUFBTm43U1RULzJ2My9CUElGcEFBQkFBZ0FBZ0FBQUFBQUFIamFZMkJrWUdCeitPdkN3TUJ5NXYrdC83ZFlQakVBUlZBQUN3Q29HZ2NHQUFFQUFBQm9BRzRBQlFBeEFBSUFBZ0FzQUZvQWpRQUFBSndCRlFBQ0FBRjQybU5nWVRuRHRJZUJsWUdCMVpqbERBTUR3MHdJelhTR29ZbEpDOGhuNE9Ca2dBRm1CaVFRR0Jyb3lMQ0FRWUZoQTV2RFh4Y0dCdlljWmdVRkJvYkpZSVZ6V0JZREtRVUdaZ0IwbHd5eUFIamFKWTZoaXdKeEVJVy9BWlBaSmdnS2drVUZteUJjRS93elZvTkJPSk5nRXhHTDhXQnQ1eG9VWVMyYUJGRmsyd1dEV2N3SEJ5YkQxcDlQYng3dkc5N0FESk00NDZOS25QOXRQMnlwc0pBN2RqS3pJa2RDOCtTSWdERjdadXpvczJIT2dUVlRpNnluSFBMRmhheUxxZE9tOWxaRFYwSmFZbzJrK0tIK3NrK1Rpb3ZkblF3RkpwYXpFcEc3V29wUDBnendHTEVTeTJKQWxXLzNFTHZrTlJ2b04wKzNDdHF1djdaWjJoKy9ETG01dXhRVEtLK2VOOGs5TVFBQWVOcGpZR0JnWm9CZ0dRWkdCaER3QWZJWXdYd1dCZ01nelFHRVRFQTZtcUdPWWNQLy8wQ1dBa01zaVBYLzhmOUgvemRDZFlFQkl4c0RuTXNJMHNQRWdBcUFrc3dzckd6c0hKeGMzRHk4ZlB3Q2drTENJcUppNGhLU1V0SXlzbkx5Q29wS3lpcXFhdW9hbWxyYU9ycDYrZ2FHUnNZbXBtYm1GcFpXMWphMmRnejJEbzVPemk2dWJ1NGVubDdlUHI1Ky9nR0JRY0Vob1dIaEVaRlIwVEd4Y2ZFSkRBUkJJZ05OQVFBVlRSK1lBQUI0MnExWGExc2J4eFdlMVEyTUFRT1NzSnQxM1ZIR29pNDdra25yT01SV0hMTExvamhLVW9GeHUrczA3UzRTN3YyUzlFYXY2ZjJpL0ptem9uM3FmTXRQeTN0bVZnbzQ0RDU5bnZKQjU1MlpkK1pjNTh4Q1Frc1NENk13bHJMM1JDenU5cWp5NEZGRXQxeTZFU2VQNWVoaFJJVm0rdEdzbUJXRGdUcHdHdzBTTVlsQWJZK0ZJNExFYjVHalNTYVBXMVRRcXFFYUxTcHFPVHd1MXVyQ0Q2Z2F5Q1R4czBJdDhMTm1NYUJDc0g4a2FWNEJCT21RU3YyamNhRlF3REhVT0x6YTRObnhZdDN4cjBwQTVZK3JUaFZyaWtRL09vekhxMDdCS0N4cEtucFVEeUxXUjZ0QmtCTmNPWlQwY1o5S2E0L0dONXlGSUJ5RVZBbWpCaFdiOGQ0N0VjanVLSkxVNzJOcUMyemFaTFFaeHpLemJGaDBBMVA1U05JR3IyOHc4K04rSkJHTlVTcHByaDhsbUpHOE5zZm9OcVBiaVp2RWNld2lXalFmREVqc1JTUjZURzVnN1Bib0dxTnJ2ZlRKa2hndzQwbFpITVR4TUkzSjhlSTQ5eUNXUS9pai9MaEZaUzFoUWFtWndxZVpvQi9SalBKcFZ2bklBTFlrTGFxWWNDTVNjcGpOSFBpU0Y5bGQxNXJQdjFSTXdnR1YxeHRZRE9SSWpxQXIyeWczRWFIZEtPbTc2VjRjcWJnUlM5cDZFR0hONWJqa3ByUm9SdE9Gd0J1TGdrM3pMSWJLVnlnWDVhZFVPSGhNemdDRzBNeDZpeTVveWRZdXdxMlNPSkI4QW0wbE1WT1NiV1B0bkI1ZldCUkI2SzgzcG9WelVaOHVwSGw3aXVQQmhBQ3VKekljcVpTVGFvSXRYRTRJU1JkR1RxeEVhbFc2YlZVc25MT2RybU9YY0Q5MTdlU21SVzBjT2w2WUY4VVFXbHpWaU5kUnhKZDBWaWlFTkV5M1c3U2tRWldTTGdWdjhBRUF5QkF0OFdnUG95V1RyMlVjdEdTQ0loR0RBVFRUY3BESVVTSnBHV0ZyMFlydTdVZFphYmdkWDZlRlEzWFVvcXJ1N1VhOUIzYlNiV0MrYXVack9oTXJ3Y01vVzFrSnlFbDlXdmI0eXFHMC9Pd1MveXpoaDV4VjVLTFk3RWNaaHcvKytpTmtHR3FYMWhzSzJ5Yll0ZXU4QlRlWloySjQwb1g5WGN5ZVR0WTVLY3lFcUNyRUt5QnhiK3c0anNsV1hZdE1GTUw5aUZhVUwwTmFSUGt0S0pRY1NyR0dtUVEyL09mS0ZVY3NpNnJ3Zlo4alVZTWhXTXRxc3g1OTZMblBJMjZyY0xidXRlaXl6aHlXVnhCNGxwL1RXWkhsY3pvcnNYUjFWbVo1VldjVmxwL1gyUXpMYXpxYlpma0ZuVjFnNldrMVNRUlZFb1JjeVRZNTcvSzFhWkUrc2JnNlhYelBMclpPTEs1TkY5KzNpMUlMdXVTZDV6RDcrbS9yS3p0NjByOEcvSk93NjNuNHgxTEJQNWJYNFIvTEp2eGp1UWIvV0g0Ui9yRzhBZjlZZmduK3NWeUhmeXpiV25aTTVkN1VVSHNsa2VoK1RoS1kzT0kydHJsNE56VGQ5T2dtTHVZTHVCTmRlVTVhVmJxcHVNTS9rK0d5OTErZTVEcGJySVJjZXZUQ2VsWjI2bUdFN3NoZWZ1VkVlTTdqM05MeVJXUDVpempOY3NMUDZzVDlQZE1Xbmhlci94TDh0MzFQYldhM25EcjdlaHZ4Z0FObjI0OWJrMjYyNkNYZHZ0eHAwZVovbzZMQ0I2Qy9qQlNKMWFac3l5NzNCb1QyL21qVVZWMDBrd2d2SU5vdm5xWk54Nm5YRU9FN2FHS3JkQm0wRXZwcTA5Q3llZUhUeGNBN0hMV1ZsSjBSenJ4N21pYmI5anlxNERia2JFa0pONWV0M2VpNEpNdlNQUzZ0bForTGZXNjVjK2pleXV4UU93bFZncWZ2YmNKdHp6NVBwU0FaS2lyamRjVnlLVWhkNElSYjN0TjdVcGlHaDBEdElNY0tHbmI0NlpvTGpCYWNkNFlTWlp0ckJaY1l5U2lqNE1xZk9SVW5zaEZOTnFLSTM3eWxmcW9MaGRDWnhFSml0cnlXeDBKMUVLWlhwa3MwWjlaM1ZKZVZjaGJ2VFVQSXp0aElrOWlQMnJLRGw1MnR6eWNsMjVXbmdpcE5qTzZmL0lpeFNUeXIydk5zS1M3NVYwOVlFa3pTbGZDWHp0TXVUMUs4aGY3UjVpanUwT1VnNnJ0NFhHVW5ibWNiVGczMzlyVlRxM3R1LzlTcWYrYmVaKzBJTk4zeG5xVndXOU5kYndUYnVNYmcxTGxVSkxSTkc5Z1JHcGU1UHRkczVGTjhxZm5XZFM1UWhldlR4czJ6NSsvb2JBNlB6bVRMLzFqUzNmOVhGYk5QM01jNkNxM3FSTDAwNHR6T0xocndIVzhTbGRjeHV1czFWQjZYM0p0cENPNGpCSFY3N2ZGWmdodGViZE50M1BJM3pwbnY0VGluVnFXWGdOL1U5RExFV3h6RkVPR1dPM2lCSjlGNlczTkIwMXVBWDlWaklYWUErZ0FPZzEwOWRzek1Ib0NaZWNDY0xzQStjeGc4WkE2RHJ6R0h3ZGYxTVhwaEFCUUJPUWJGK3RpeGM0K0E3Tnc3ekhNWWZZTjVCcjNMUElPK3lUeUR2c1U2UTRDRWRUSklXU2VEQTliSllNQ2Mxd0dHekdGd3lCd0dqNW5ENE52R3JtMmc3eGk3R0gzWDJNWG9lOFl1UnQ4M2RqSDZnYkdMMFErTlhZeCtaT3hpOUdQRXVETk40RS9NaUxZQTM3UHdOY0QzT2VobTVHUDBVN3kxT2VkbkZqTG41NGJqNUp4ZllQTXIwMU4vYVVabXg1R0Z2T05YRmpMOTF6Z25KL3pHUWliODFrSW0vQTdjZTlQemZtOUdodjZCaFV6L2c0Vk0veU4yNW9RL1djaUVQMXZJaEwrQSsrcjB2TCtha2FIL3pVS20vOTFDcHY4RE8zUENQeTFrd3NoQ0pueW94eGZOSnk1VjNIR3BVQXp4M3hQYVlPeDdOSHRJeGV2OW84bGozZm9FOWFBRCtnQUFlTnBqOE43QmNDSW9ZaU1qWTEva0JzYWRIQXdjRE1rRkd4blluYll3YUVzek0yaUJtTnNOV0JRNGhOaVp1U0E4RXlZTk5rbFdNSS9MYVErUEE0Y0R5d0VHWmdadUlKL1hhUStEQXhpQytEdUJKSVBMUmhYR2pzQ0lEUTRkRVNCK2lzdEdEUkIvQndjRFJJREJKVko2b3pwSWFCZEhBd01qaTBOSGNnaE1BZ1MyR3pFcHNZbXdNdk5wN1dEODM3cUJwWGNqRTRQTFp0WVVOZ1lYRndCOWxTNEhBQUI0Mm1OZ0lBQ01JSkJsSndNRDh4d0dobjgxQ0JZakR5TVB3Mk9HeHl5TEdSaFlGV0N5LzEreEJqTnYrdi9xWHhwTUw2c1o0Mk1ndmdnQTFsRVZMZ0FBQUFBQWlBQ0lBSWdBaUFEY0FPb0JrQUpFQXVvRG5nUGFCREFFaGdVSUJWd0ZqQVc4QmVJR0pnWnFCcndIUEFleUNCWUlnQWpvQ1VRSnNnb1lDbG9Lb2dyaUN6QUxjQXY0REp3TkVnMlVEZm9PWWc4c0Q4Z1FSQkRZRVNnUmdoSXlFcVFUTmhQQ0ZBWVVmQlZFRmVvV2VoYldGendYbkJnY0dMUVpLaG1hR2RZYUVocGFHb29hdUJ1RUhEd2NwaDFXSGJRZVBCN2VIM1FmZ0IrTUlDQWdlQ0VjSWE0aDlpS1VJeklqM0NSaUpNQWxRQ1dnSmg0bXNpY2dKNVFvSmloY0tPNHBaQ21zS29JcmtpeWNMT2d0RkMxY0FBQjQycTE4Q1h3YjFiWDN2Yk5vdDJ4dGxoZkpzbVpHa21WWjhpN0Z1eEpudFMxbnQrUEVpZVBzRGxrZ0lhd2htSWFrSlFtVVFLRXBCR2hKZ0s5QUE0U0drQkFlYTF2YVF2ZW1mWlFDNzlIU1g3cTk5eWp3Q3NTVDc5dzdNMXBzaC9DKzcwR3NHYzNjR2QyejNIUCtaNWxCTExwTC9pUFh6VmVpZk9SQVRhZy91U2dlRllzNUhZZDdlTXd4T29iVGpacjBqSTZGZjdzTUdDT0d3OHg2STJZUll2dGh3NkloMkVOem5jNkNBb1NjVGM0cERYVVZRVjlaZ2FQQVliZkJYZk1helRwM0JCVzZXS2RPOUF2QlJrZER2TjdQT3Z4c1BOallrSEN3OEJtdnJ5dDBsK0oyREZ1WFU4ODY0Rk1uQ2lFejFvbGN6TXQ2aGZNL0ZzaUdiWXd5WStYTW5SSjc5aXdqdU96Ri9JTVA4c1YybDhDY1BjdEtycUR4d1FlTlFiN1NGL2kwTStEekJmam5BNzVQL2Z5MW4zNzVZMXNlcDhQMzRFT3MzbW8zbStTbmNjcGt0bHYxckx4QlhxZmo4bXdPbkpLZmRpQUd2M2JoWTVialBrSVdWSUo2dXA5MHoxdVNkQ09FOEJDSE1aWlNQSkRNRENPR0VabmUwcVFMRGdMNUdJMWtIeDlJMnZQeUVNb3J5U3QyMnVGR0prbG5JQ3pRczRRb05oaHZ3VXloRnhNU2cyMFlxR2YrMDhrMDhTdFc4RTJNMC8yK2Y4NmNCUXZnai91b3FHUnNhM016YzdDazZQeGlyM0JXOE5JUG1NMkZDK2dwNWdIT3ozMVVJQ0tUL0FGQ0JTd3lZU3NpL3pHbzdzS2Z1WHU0VTJnaDZrZExrLzF6cHpOR1U2Q0VZUm1teDVhdlo3R09ZeGdXeEdqQkpsTkZ5bXBnRURJT0ZlU1pXYU14UUNrTXM3MkxGaUcwcUg5UmY5OWl1TTJDVlBmc1dkT1NiUzMrWUVCMGlVRi8wRzd3UlZBWmRqbXRPSUwxOVhYcFhTc0dxaG9iT3JDWXRTdkVjR05ETzI3QmlheGRWZHo1dUQ1ckYwYm91ZTBsZVhrbFJZZmJiaXlpTzZlU1hLUXNPZ2NuZnEvdHJGRk9QTkI2azdKenBrMDUwZmkydHJOS1h0NzYremIyY1h0TmRYV043Wnl5K2JqQVZsNmlZMytsYlcza3FQMmNzdm1yY3ZCSDJsYU9uenNIbW4zMHdtNHV4cGVqR1NpRkZxRnJrKzZVazJjNWpCYjJUSEZ4UEY2VXFBaHlETStDcXBTRHFwVHBRQjh3ai9BSTRtR2hzRHd6Z2xoV1AyekFlcjNFZ3NaSXNJZFkvY0RFY1dRSU93em4yUGtEU1ZoTDhJdlRQWUVLRWY2TUJpK29qeGNYdXBXMW91aE9LQmh5RmJvVnh1dGRxamJCc1l4ZTFibmhpaGdPQlFuSEUrUmFSdWR5a29Pb3NZRmN6bnc5V0Z0VjI1R01SMm9ibmNrVjE2WG1MZTE3ZUVjd2tRZzIxRFluay9IcTJyYkNsdlZUUnlMN2xqMndOcGk0cFZaeVNUaGM2UW56NVI3eEJYdXBpYWprTHdXdmE3cjNEbXU1LzZyaFpWL3A1YjRyZWp6aTY3WXlBem41anIvTTArMzlscW1zcU9kbzMraE01b2pva1hzcnZPVU9NMy9iMkc5bitGMFczVGVBVmo2dHMvbElSTldvQTNXalRjbVJRc3p4NWRoZ1pIcGdaZktZNFVjUmE5QVpXTjBvNGhEU2MyakVndlY1MkdqUUcwZk1tT2Z4c0FsV2FVVUtHUXk2WWFUVGhYVzl5V1JOalNRaGxPeE9kczJjWHROUjB6NGxMbFZMc2NvS1Q0bTlBSDdPR3JTUzFhbndVVlBQZW82WUpHS01NT0VtNFdBQ2M4Qzh3dnE2ZUdORFVCdy8zb296NS9CdHU3cTZ0SC9NdHgxV3NiaXE4UHlkYnB0VkxJcTYyYzFqcytyckpRbittT3lCa25xUU85V1ZkWFNqdXlUcWNSU2UveGVYdTZTbTFPWm1wN1VwdzZSNnVTQjc0SFBhWVZqL2x3RXZyd2RlZHFJZWRERHBzbUNFZTlwY1lLQzZnd3pITm1DZTQxVFRWZ0ZheUlCUkg0V3JXSTVoUnhERyttRWpxR0pGeW9BNWpoL1dBVnRGSGpTMzdsSkRoeENNcExzYTc4RVFJdFExRytZeFRZeUx3V1lwWkNLYUREcWJ0bjVCVVNCYzllRjRnaGlGdEIzUjZkMFpveUpVRXlrUVRzY1RWSmVwSGdPN0V5SG0zNDhWdXBxVDdiSFpzNmJNbk5Kd290U3BMM0s5cFZpRlphVmx5MUxLN21NVjVWTnZlbUhrL3I2bFN4Y1BQcjdqRmYrMFJHL0hLOXlwbFJhdjYzdUMxeU91azJhMzFDeVBQeisxelZsWVVGVlpXV1ZMSlZmWXlFNkJ2L082L252WEROM1plczNPMVllWG5CL3JERGROYi9zeGNBTy93RHpBT3NCWFdGSGJDU013R2F0Y3RWQ0h3UkNIZ1lCemRvWjRDZHhQRHFCaDJFT3d3azB3eG9vc0VrdVVUODlTV3hraXpyQUZzdzc5SEw0eUZxdms1K0RLVDdtUDZ1Unl2eWo2OGJ1Y0lVanVqTEg4Q1BzQXZ4NzUwRFRsQjgxd3VESUZaMEs0dDFTeFJHYWsvQmlxaEVQRW5zRFhBWEwxTVB3K25qOHdjTUxsTEdmSWoydWFybU5jVGp2ZEk1TUp4VERUMkdDUEoxaWIxVjNybE95dnZmNzZhM2JKV2V1Mld2Zi82ZmJiLzdTZlh4L3d4Y09sbGh2azU4K2VsWisvd1ZJYWp2c0NocmwveDcxdnZJRjcvejZYempVS2MvMXg3bHd4aHJraUZFS1p1U3J6d3BXSXpwVndhd0JsbURWd3d1dXBvSE10dEx1Y2pFNmZYcE54ZTJNRFEvZUlDM0V6aStqTXJCTm16QmY4WFQ3K3hodnk4Yi9QTmFpenhwMW56K0pPYmRaa0J1aDV2SnZMaDNYVGdoWWw4NmN3RE9JYXcxNGJtQlhFZ0dSZE1GTUhFU1hlQzlDSXEwaUIzMGNSTW1NWDdIR1lRM2lVaVBobWVwWUQ3UWNRQVBkcXJnNVdoM1NHRWdLQ3dNVWw0aXJEZGZtWVdtOUtUYlhpT1FrcDhRNGNJcnBPU2ZKUjZ3MkcrNEVPcnZycGNrRklXQTNOMVQrNzMrVk9CRVBsamRhRkM2Mk41YUZnd3UyNi8yZlZ6UVpyUWhES242N21PcHE0VTIzVnR2elhOem1ySXFYTzZCVGVjWXNqNm82SFBTSGhwWmVFa0NjY2QwZmhFRDhsNml5TlZEazN2WjV2cTI0alBIZ1U3ZU1FamdIcFJKT1ZzUGdSd3crQXUyTXhaaEJlVDZ3QmdUazhNNTlLTUJpVXBLQ2tONVJTQTJyenEwdFc5TnMwNDJqemF5YlNiNk1yOTY0YUc4NVRWcVg4RDhYMXloOHEzN0VGL0RUSGtETWZLaDViL29kNkprOFppUzN3bmVyVnNQd21XNEJYSVJzcVM1YWE2T0tqZXRPZjBadFFrREVVVWE1VDVFWGhKakV5akd6WC84M1pGNHpnTlZ5cDZ4OTRsVDAvUDMvc1R6V2VZaVBIbERsY1ZCY2V4V2M1Z1RrSjkvY2xQZGtMZUlpY0pib042RGJPWnJtT0RLSHNaM1RTWXpwbDhzeW56RW1GSElVSU92K1hBR2VhOFRhVWg0cVRoWnBsQU4vWEM1OTV5QktnZDg1RmljLzM5dmIzd3gvZTVoVms0bHhsQ2dZeGVrQSt4RVg1cThHWmRUOWpBcldsaHFpVUdDSnk0NnpGSnFuSEVONmpIa3VhMGwrdkdsQ3NFbkdKeXE5cjdvODR2M2c5KzR0bDNOZzZlN0p6R2NmY1kwL3lWMWNKWnVNbnh5SmtvMXNRQWJld0Ivek9MT3JEUzFGVk1reVFKQjdtRkk4TTB5SUVobEV2Q1JRS1NndEtDcDMwcDNTWmRRMC9SVzFPampkbFBubnp5aXZmdlBOTytybGg4K1lONUk4N2RaOTg3cnZmbGM4ZFBvemQzLzB1ZHQvMzN2ZGVmUEhWVjE5ODhYdkFqOU1JY1ZYY0dSUkFOY21vSGVBVjZBWjhzQXdHL01CV3BIaU9FTDB5emU4QWtzSmlNRTdXcURST21DM1lsclkyOFVTQXJGMlhyWjdqRlFGTGlvQS8vcm5kNmhEdFRvY1RQK3p4ZXFXL3ZxRjREc1dSTUE5ZWJaSkNWVjZYeC96M2d2THk4L09wek82SE9ZS3ZSN1ZvMHdrSmN5d1JXUUdJUjBLd0R3QnpsR3J6NVRCZnhRZFhFQ2t5SzdYSUk1QTFES3pQcnNuSERTUkpTRkNMYXFTcVJ0R3RMVk9uVG8vOVdValNyN3BXQ01BSXc0VTBtS1FtaVBuZHFhRmxxK1gvd0NXeDltUnptWGorVXlEYVpNWGZXZGd4cjZlL2p4eU1ERHpieDUxYWRuVEwya2VINUU4R1JZOVgrRUR3QVE4cUt2THdmZk5XTmN4WVZIbUFIUDFiMkYxYml5ajlKMEZYQ29IK1p0U2RuQjNGT29EQmdDcDZFT3p3T2c3SVlrbUlRbkFlQzl3Qm1Nd3JLRHBIbGVDekdUVkpVa09EVkJoV1VETG9MQ1ZSc2FYRTJJS1JWVlFKZ0FTUklxQ00rQ1Iwc2tXL3UzWGhjdmtQM3o4WXRBbVZCc3ZVZlZNM2J1cGJ0SjZnMlo2Qi9rVUx1bnNKcmJWekgxdkluWHJpb2NlNmdsOGVldTZGbENOYUdsM0UrNFM1WGJQblJOdmJZOU5tVHAvcG5rdUlmUzdxS0pkb1BIWU55TG9MYUkyaUdoUlAxdGRncE1NOWVveDR4YWdhc0U1WGtZSXdnR0ZYZ2h4RkZ1aXFqc0hvS244dzdnK0tSb09IRUdiTEFDSlhmZDBFUFcxVWRva1U2M0c5ZzYycGZselJ6c2R2VTdaalAxRzJqOG9MWU1lQno1Yk9xcGZ2KzEwQmR5cFdOZmF1b3JFUFpTdnVRN0NaV3NSMEN1TFlYa0F5R0QxSlpYWUU4UG5NWktjZUFEa204bUo1SFF2cmlvT3dhQmNNNGtFTFI0QnMvUkFSbDVCQ0hFY0Q0ekJEeEZXTm9vSWt1Z09DcElrTDlFOGZWK2pKdUhVU3V0UnJZaUtIaWVVR3czb0doQ0hQdEs1Y3VmT0pwWi85ZnVpNVhrVlc5K3dldkh6WndoV3JLaXVTall5ZjhRck1TdTVJckwwOStrNWc3WW1yZnZqVDZrcFhoSWdwdFhMeC9FR3BvRXhrZ21LWkVpdC9FMmlLYzZjQm4wUlJNdGtHQ0pjMWtWQUR2QWxReUNtMHNMQzBpT0hJb3FXOEhLSHlhSGxWUlJBdUxRc0dDZzJHWXFCSHdVK01udmh1TFVRSVVuZHVsd0tJMkRWTkcwWDJMMTZlQ1QvN1gzdWM4YjM5VzQrdDJ2NzY2SzZYcDRhanorRXQyQ0J2WDFvWDdXL3UyekM4bUR2ZE1NWG02V2VOUGJkdmEyMGFlblRMNVUrdFhyZXk3ZGphWCtMYXgweGpTeXBteDJLOXNZSHVWRDlaVjJlQW5pa2dvekswNElRVmdBdXhLeWF3SzBXd0N3QitHemdIZGdqV0dpdWtsRFZVbWl4V1RxSFJDZWNHS0pRdFF4N1JYY0VUK2loZXdTbytKTXJtVjZUV2FDTlpIYzVXa21lVWgweTFnS2lqVFRwOGpYd0hXVEkrZ1RuUEhRSE5xbldmbDl4dXZTbGFac2xuTDN1UkxCTGNSd1hCb3NkZzNuNVlJNlhnbHVyUjlPUlVwdzVRQmpIY0JoQUR3NC9vcVRmUktkNkU0elFUVUZIaDhTQlVVVjlSRjZ2eWhEeEJvUnh1VVZKbDFCeXpUcDhkcWNVVGs4UnJURlpjeDd6NzdLcSsxTkJsVzErNytlYlh0bTVjbWVwYjlleDFzeGFSZk15aVdYMkRnMzNranp1MTlON2xnemVJNG0yWGJmbFdYOSszdG15NlZSUjJEUzYvZCttYnFZNk9ucDZPanBRY1d0TFYxZGZYMWJVRWRPenVDK2ZBSDUwQ1JsWVJIWE5naGpNVGp2ZUFkV013eHdCdFBKL1dNUlVLQUcwK0gwSytLbDhrQU9FbThnWUtRNnFPQVVVRnNNNlV0ZExPSkNiR29jU1N4N0RJL0pJb2xIeFF2cTZFNk5venY5bVluOWExeGFCYXpWVEp1Rk5VbmVUVDh1RjhyT3BhOTIwN05GMTdoNmlXb21Rd1c0cGIySWNCbzFBZnoybklKVURzTWp0TWZENFlNQ3Y0SFd1cHRjVGxvR0NHK25nMUo2SDRIQ2IzVzc0S2JiUS9aa0VtM3pWMk5DZjNCWFBZQWRoUG9uUHdvY3BrcUVqeDhDejRlR1p0WmtJWTdJM1BDeWlEeklDZk1BT3F5cm00VUp2RjR6bjRNSHN1L3prUktzS2F1d2FsdUdadUtuQUVzS2lSNEttZThmRldXVG5Gb2xxc1pjVHBPQXVyenBmOWZwNVRjcFZJWXllWk9WS0pTM0xtT2M5L1dPeHlGYk1XYnFwVTJlQVRIUEpiOGxzT3dkZFFLWm53SFhrVjRUQzQxenRBdng1Ri84VUo3R0ZBcENJS0o0TWdBOEtLMWVtMFpRRDEyZ0YxMmtXN3Y3U0k0bGJkcExqVmZta2tXelR1TzNzNEc5bks4ZkU0RjkwQnZGbWs4YVlnZzlPejRydXlrSWJUZFZucEZpTk9oM1dZNndBK25QL1FxWENJbVROMlV1VVFhMkVPVVQ3SVcwd0tqN0NFSlpWSDhoYmd6YzlBWDkrSEdGMUNkZWk2cEFWMEJWdkFaNEd5cXNGNk1HMzl3QjhqZmhjeGduUXBTaW15TExsaE1EWWlSMUozNHdiQ0dFUTBieVI3MkVEU0dRaUE4dFVGYXFzcTRVZEZLVktockZvYThGRjNVSTJESFpOZ3JYaTlQUWZ2czhWdmZQMndqcWxLSktvWUMrTmZQM3ZtM0pTQ1FjS25IMnFiUGoyVmdqL3Vvek9QN0g4ZzBsZnNkaGYvdkVydnRNNXFuejZ6akVLd2Z3azdsNXlQZW9WalJIZVBxV3NIK1MrczU0NXdjZFNGK3RHQzVOd2lGMk5rSUh4aW1SNFQxaU9PMFhNamlERmpJOHNZUnd3WXdqNEV6QUw0cGRQeEF3RENTR3FIMTgzdjdrYW91Nys3YjhFOHVOR2NhREFZQzRoQkMvSG9HYWVuTEMwcVFCV0d3WExMdGs2QzVnNHpJYkZlTTJWMnFaN0pzbVVpVy9zZnUrZnVYekpqbVMxMXphSjFTKzVZdUN6ZzU0c2NycEl5YnJhaHZEallLaTU5ZFB1ZW4rOVlmSFQ3VjY0ejZLeE9vOTVpYWZ6V2dpUC9jZU1SN0h1cWVtYTFWQ2JNaUU3ajRnYyt1Zi9HVThNOUhiZnYycmIrcDN1Mnp6RHE5SzQ4K2JWeWx4Um8zOTV6MWZGVlgvMzR6aXVmSEs1Z1MvMmxOcHVkZDN2M2ZQalFpN2psR1RrMTkvcjI2dnFCRzJMckVIUGhZOEIwWjhIUEppRENuNUpzUkVhd1AwWjJQZExyRFVNbWJEQUlLUjNIc0dRRkFrekNJakZHelUwd3VwRmdPbHN3THBvTlpjU1c0MG1nWE1pdm4rU29JMjNrL1hxMm5tWCtyYzZNaFg0MWtsNmliUHVpOHRlaVhlcXhUY3AyMGRnamFoRDk1cExyUDdtR08rSVR6bCttSUR3RjdSMDhtUDJOTlNyYk4rVEYrREZFZmZOTW9IVTcwT3BERllCZ2Q1emdzWjRqdUtJV2xrODUrREE5NXZUcmVZSmZBZk1SOUtCVEEyVVNYNVVtcThBYThUeUJIam9BdnR2SUJUcTRBTFNKWGFtTVJ6cWROaHdXRUVJMXNVaTRncmh5SC9MNmcwMUdiUUhwRmJ5WWljMHlMR0UxakE4d21XN1pvUi9Pbi9QSHQzODY5b0pDL1dXWHFUYkxlUFMycFVzV0w3L3R4WmVIVnIvSUhYbnMwSUlkWXZ1NzMzNUNZUUpyVkxaeUtEbXRzMjNNdkw5ckZyVmo2d0dmckFjZkhrT2R5V1FsQm9oSVBRNHNIQUtiK0dFOXdCVWwrTXJzTXd3MUMyR09JRjhBOU1HZ0tBVUNCaFhPTzlXY3Bwb0NoZmtydUZmTkNDbVJjQjFOK1hOVnNiWloxZlhPeld2MzMvNk5BLzNmWEZGZ3JmWlpZMmQvZmZUVFcvYis3ZTRuRmpjbnVWT0FqRWNGTDFDNDVwclh6cHorY1hXTllXR3dyTDV3NDkzWS9keHA3TDU3VjRkbUExcEJucnRCbmg2SWZKY3FZaXhTeEtlajR1Qnl4Q2VseGNjaERzUkh4S2FNSXpBc0xUYUk2Z09pendzM0xRRVYxMU9SS1ZIOTU4dUx4ZWYzN2ozL2hCeFd4RE04ckNycmIzWnV1UGYrKysvZHdCM1pKMzkwNW96ODBmNWNBWjF2ZU9uMDZSZXBiQWc5QVBoUkhIMm1nTjJZa3F1R3ViSWN4MjhqWXVJWkZnSXRqSTJ3T28xR0FXdzd4K2xXZ3VLSk9wSVpzY0JWMVZsWHNUdzMrZ1V1STZ5clNTZkd2K2gxeVZaa0FKaGcyRGJoU2owSEt5TTlYMUFzNDBybGVwUzVmR0NBNXRXQjJnWi9zRkcwU1g1SHdFektjYXBPZ2Zmd3UyZzlUUWVyUVEzMDZhbEpCY0hGeWtqK1hMNzhReExwZm9qdmFlbWNWZ05oL21DdVBOamJ1U05sb3Z3TGtpdy9ORVppSy9tZEg1RXY4amNGWDY1a2NtUlNqeDVTdUJ2U3VLdVVEOWJyZ1R1R0lhTmlLdFAxQTE3ajZ2akt4TVhIZzdUMXdHcjl0dkZYQVBzTUt5ZGVBT3dqVTZ4SHRjUVVFKzZacUNuT2NNL21yMU1NeldSeGRqYnJwaW1zdXc3WEVON0pQL3RYRlI0ZFU3WTNxZ1ZNOW1nVzcrU2ZFdWI5ZDNhZ25XRWNSblBBemh3Rk85T091cEt6bW9Fc0YyQU1FaWtBcW1NNHJlcGlZR2dtQktMczlEN0RhR1VYT055TzJvTEJZRndBYzVOTlhJNjVTVFJtS0VsbkZteXFEODQxUDFiRi9HellTTXpQMXRVdmFmNUUyZm9jdHVWdlg2MllvaWNYcWFiby8xQlQxTGVDbUtLeVI3SWRqRHhXSkJscmFqU3pkRlVDekJJR2RJYTRlMEJmRmhMN2lzeGdhY3pjZW92SndKTGF0RFdQb1l1SVowa2VHcXdVelc0Qm5RdlIvTzQ1czJmTm5ON2VvdnBWZnpBL3V6UnRtMHlDZnR2bnl6WEREWCsydEpXeWRGT1Q2bDczS2R0T2VXZG43aEZ0Qkw1S0hZRnY3dFNPMERnWW1IQStSd0Z3UlA3MVpBcWhNdXdUckZjVmhPVG5FU2NBbjBJRTZYT0FwUGtoa3ZZVFVzQVpZQTNTT0JOQ0FabzlTaWY5RkhycUprRDhiSnY4SnpyTHYyS1VDL014K3F2cU8zOHgrZnpUQ296UmFsckhQUUxoYXp4WlgweHlyajFrUFlJUEdjMmVMUUpKcmdKZERoTmdCSU5EWWlBb2pwdXNtc1FqcVFVeWJSdU4wYlBxQ2FwQVR2LzI1MysrdDRBcTZJemhCUXRrTmMzRnZLL05kZXl1RjErNnMwREEwNmxLeXVlRi9tVk1mOXBVcWJyM09zeDVKWnFmN0YwTXZxOEtJblNTQVFLb2dzRXFjd3o4MjJWV2xUSFBvaW9qUXdKZUhWWXpkbkQxaWlWOWl4YjB6QUcraStGNGt5MW96ZFpFWEViS1BXNFN2V2ZWT1Vtd0U0cVJnbzhvNUdQWEY5VkxuS1dXWDZMa1J1UUhwd3dLN21DUlpDMnM4WmtVSHV4dld5eTVpKzNCZ3BLa1VDWFdiMWYxdENJWEVlR3ZLZHRxUEwxUlBiSkg0NTM4R0p1bzhjK3E3eW9LVkNoSHVqc2pUY0dlNGxCVXFIdnljM1QyUlp4TTY0VG1DeUpvdFFZYUdVUnlVNk1RU0NIZEVFUjlPZ1YxYUFuUVVoS1dLVVBBRXJDWTI1WTlFbVVHRGlUekVhbkNoUW5UYlVHS3JiSldyNlk2RjNOK3pDZVUzamZ4RU5XZmpOdTc0dzVWaTlhbHRRampLWW9DMVUxMGVCaVpnTWFYZ2NZVXNWK3pBMTZXSTFrQWp1Z1FIalZnb2pobTAwV3NXQXAxejVnR0JFZ1NXYkdXYksxeFRLSVJaaVdNREpueDUwY0pXbE9Wbi9zeXBTVnViYzAxVklPNnIrZkZLaU14NnlIZDh0d3pMZmx4VlJNOHJsTGR5V2QwcFM3c25YenRNL1BrRGFMWEsrSzd4cDZlVEIrc050bUYvMkt6a25VR3R1RVk4S2dERFQ5VFgwQUtWV29NWGdxTGlZZ1hmSm1pQ1F5RGg0bEJDNVBpdFcvaVdYYUlpRCtsR0JERm4zZWdOZ200RjRkQWxMcThIRE1TREdIeFVrWWZRckZzYTYvd3JLbXVOUmExeWUzYzF0eWdxbE96NklhS0F2d0FwMm9OdmpyTm96Ni92OWpEbkJ2NzNtUThLUjJiajhjMDNXRlFCL0RsMXYvdHVobHIrdlNXV3o0OWVwUis3ci85OXYza2p6dDFsM3p1dWVma2MzY1Q5L3NjZHQvMTNtdG56dnp3aDJmT3ZLYkdCVmVBZkFJUXJLelRWcW9Pa2JodHZaNGlLTU1FVjBOV0tzZnI5ZHcyYlNTRXdQektpUU1wYUkyUmZIa0FpUlI1R1ltMVYyRHFKUXhmSmxpNCtXOS9lLzl1RFdiZG8yenZ2Rk5kcStMZFYxOTk3YlZYZ3hCKytzb3JQM3RxTXM2UEhSOWN1WElaNGJuOGI1VG5UV2dHZXFYN1NRZlFhcXJEU0s4ay8wdVRadklGOTVnQVVuWVBLT2NscEFjSzlZajJiUEVETENncEtmdXZKZUcrYnRoSXFqZ0dBbCs5TURhZ2phVVpGRnBHSUU1ay9HQ0lqVmxhd1JzbDQxbHk3ODhaRHNqVjNkeU1VUE9NNXVuSmRwajZGS25DSVlsQk00MG9WVlVJNldrMkpTZXZvdGZLRUdvMUpVVGI4aTZ1Tk1YT2piMjl2aGsrVDB0SmI3Y2xyekNTN3hDYk5qZEozZlZURjhhdTJxb3pPQ3J6QzIxbnZuRU14dTQ3ZUhBZitlTk8zU2FmLzg1MzVNOXVZelo2alRyZVdLR1RmRUZmWlVtbGFEWlp6TldzNUFtSlpiYlgybkRSSzkvQjNHM3ZQZlB3d3lkUFB2endNNW1ZOUZuUVBkS3p0UDBFckhHRGxtRVFrQUhPRzVnUndnVTl4Rk9rcXNTekRNbXRja3B1cFJUQ0JaM2VhTlJ0MDhZaW8xRy9jcktoTkwvUTB6VnpPdnpTVktLRzRYaWJXYXNjRm42dWg3NEltcHhNVFpmLyt6L2o1UzdSWFpUbnJDaDJxSkhVM0ZWaHA4Y3BGZnA2R3BOcVZDVTNqMHRPNUQ5NjE3cFZxOWJkeFIwNS9kU2ZXbDNoMHBab2pjdnZWMVE1MlMyMnhUckxJOEVMYURMZGx2R2M3dTQ1b0VCM2dUM3BBTjN1UXFsazEweU1kVDdNOEFUUFlOMndRYytRYWlQd1BMTlBxbG9zV05Wd0NwSDJEcnBMSFZNWG1qTjltaFNRcXFXQU1TdHJvV2dTaVNMY0NzZVVsRjhvcXhha2FpQmhoOEs4a01xa09xV0prZjFWUEFMeGw3bjZhOE56RmtwQzFXVWJibTcrNXZMVFgzbmtTcVVkVVF5YjQzZXZXVElZRHBXbnV2c3VyKzNwVy9YVXRubGZxYXNGdXJ5Qy9IZkJXMURRTmIrcnhSdXcydXhPVVJyKzdaYWpnMnVESk5XSmV3V3Z2WEQ5aHRuSmlvU2p3RmxnTHl1cDJMTng0ME9ERFRVQmtnSEJhQlhvMmtiUXRTaHFTTmJxc0JvMmtqeWRWclRNK0JnSzdhSW9JcExZd2hGUXE1WTJsZEtMT0JWYmRsR3NweXpSbElpYytLMXF0UHFVN1c5UGtLTStnZDFMWThPbC9qS1lPWUNNSE5kNlFmNVBldnhoVWlURGFvOGt5VG1TM2h5YVhtU0hRSWcwRjBPNkg5T0FPb0VhUlpFQ0NtTW1LVXQ4b2RhVk0ybm9wd0RzQ1JGUDlaYlhEeHg0ZlV0MWJsU1QyckppeFpiVStMaG03QWY3WGwyNzl0VjlURk0yR2h6NzNmWXJydGpPQkRMNWdRc2ZBeTFuYVMwWmFKRm96WVJYS2RMckZJbzBZa2pOR05DZG1JdnVWQkNFSjZHa05Cc2VQMEZuT0YyK3k5cmMxdGFVSnorb3pmbTRzaDM0elI5bmFUZzQ3YjBYUzk0eWtYMHNoNFo3bWJWWjgvOHJ6UDlkbVA5VTFKeE14R00yRnV0SU5SeVIydjRvZ1hpZ1l3U3hjSnlRWXJCR3lsVFVRVUNlRkpSeVFRcHJaUlJFcDhnbnhFNUtsYko4Y3FnN1JXYytaUzFiV0JlYjFtTDU1b09XMXM1WXJZc2RybE5wVWdIZGpzWTc5QlhWZFZXNk8rUHJKOFNpaTRzOWxqSVIvMFlPaTJVV1QvRTR1cC9Gajd1TEhDNDV4Y3pPeXUrQVFsSXN0NUJVTkdmWGx4azVJa0tUVVErRUc0WXNaa1pKZ1N0UWw4OE4yR2ZOaUlOQTZiKzhiTEJybkRRWlBsa3UzRGlaMk4ySkxNYU1LSXlSUDhaaVd5NTBhL2pPWTBIMXlLaXliY2VpL0VsckxzTWlkeHdzVW85c1NnZERlK1Vyc3Rmbmh4L21CUEgzNEszWmpQdjV6N05qekFyZzExSGdWenRLSkJ1QVhTeGhseDRZUkdKaTBKTkpRdmgyMUtxeEtVZFpKa2RMbDF3SU4xQnFxdVJIWDFVdDBTNWwrNnI4ZUN5WDlzN1RaeG9uTE95UDVHeGkwUVhHbEJQdnZZV2xkTHkzRDJpZFFuTVVhNVI4cktoMEsyM0w5RFJwYVlCTDlUUk5IS2YwTklWUVFDeHNGQXZUR1lOMFMxTldzRGRKZTRKNzdHVzhsU1R0SU5UN0JkRG9aTnJsNCtRN1dPSUNTbXViNy94L3YwMFRtd2RvbkRldGxEWFNSQ2RlcWZTTVlDeklUN1AzODRQSVRYSXdKRW9sRDFOd3lqTXhYT2FaR0JqclJvVlNZd05wbmVEVTBvVTZGelhCYVBPelh5S1pRNFk2THBsbUVaL0huWnVxcDAyTGVRVmRSUENTdmMrS2xkK053ZTgrU24rM0loa2d2OGRnbGxtZmFYdE10eWE2a2Nzdk5mSksyY1NtL2k3NVdadTJ3OTVLK2djWjhvTzRVMzZlYm1WKzBDdDg4bXZCRzVzMnJacjdFL2xVZFBjbC9Ddk9ESGpDaThKUDZkWk1UNWE1cmFTQ2ludUFic1RzSWMyUlY4RkFML0lFdzV5aEtQS1VEazBucFMxYXN0RmxERnNvM2FERTNGNXR4TzE4UEN4NHZHSDljOC9wdzE2UEVJN3p1TjBZaTNDbjdJNngrMDBHdDJneTVGdnhYdms2YTc3QkpMb05KbWFWd3c2Mjk4MnhDOXdIOHJ2SWhzcnBmRnpqV2FCMGZ0SnBUTWgzY1c5YmRUcHIzbWVWZVhUTG5aWGZ0ZFhVMUZUYmJOV3dJYkU4ZHJKamJBTi9GTzVmVE85UFlsZWxSYkxJbWI2eFVxWUpCYlIrSlo1dEtDeVhMR1o1cEtpaUtXWXJ3TXU0L2NEVmV0MGJsdkpRdk50OFFjRzVXOEJ2M01zZVIzV3d2UCtndEQvbis3Q0JiVzBCM09vQUNsZ0lQbktPNk5tZUFTVk1Ea05vUVBxc1JrbVBrZ0d4aGhGU0ZxRFJRU1NsSnp3WVpsUkFyTnk1L3RJWEFMa2kzZFVhbTBxVHRaOTNGVXBmQkhHZWRnMEpUT3JyRWFwdnIyOXJTZ0J0dFNLZ3huaWpXUU9OaGJtQU90Mk9ReFBNSkNPZGFlbk9kUGZIRTQwUWtTUmVGY3A5aWpXNnZIMm9lTzZUeTY4NDJ2Lzk0M3Z1WHJTeDVlQXNtNlU0VkpBZkczaHR5WU56Wm5YTytITEx6YnZZNC8veWxQeE9SVlF4VFBXSnRzN1VWNGNQM0ZQbTdVeDZpL2hBVlpXbjNsWmVQdlpHWFUxMWJhSW1XYXJJcFJUa2NobGZqaXBSTS9xQndtNFRDd0djRGNNYUE1R29YMGd1WHBVR0dEVTFJcFpTNURFSUdxZEhVam9hdmFzdVg1VkQ5T0pERlh1dlhvWFVqRWNFaGlJT3hEQnk2ZEhBKzhKSUJBWTBSNXJxYTJIK0ZmNWdZekJnVW9KclcyNGpHZzIySnd0ZDdGb3RYcTNONDBQZStyMjl1MS9kc09IVjNVT0hHN3pDdXlycTA4cHpucmMzdExkdlNMWVAxdFlPdHZQbFlFeVdOYldOdnZXVnI3dzFPakJ2a2VCVmk4bDcxYkQ3aWRZZDgrYnRhTzI0c3JmM3lnNnlSbThrZlhkMEhYUW1rN0dMMUZNaldmWFV5TGg2S2loWk1DUUdneFBxcWRtZEJabVNhbGFQbEZMVVlEOVJpaHJoK1Uyek43VzBiSnFkK2xhUFBUOHEyQ1BMMzFoLzZQMGJkdjNyM2djN201UHNjVERKTDlERVgrWHNTTWVPVkdwSFIxMlZhVzZrTEZyVTBMenpyUU1IZm4vOWpqaUpLeGcwRERROW91clFkNU1tSHl4ZEcxWWVIcGhNWWNqVFhpeVI2OFNGRy8yY29VTjA5ZWx5bHF5aU1DelByYi8wNklrS0l3WURjVkZUbUt6SGJvSnRPSnR0aGU0c2hVSGpGSWI5MEt2Mkl2eFo4RFljSGxKVXAzZHZ2WnFjd2IxeUJkV1ZKTlVib2pHZi9WVlJEcSt3YU42QW9qcHRUZGl0YVl5aUs0cmVLR3QwTi9CM0x1aU1IOXgvUjdJMW5TSG00U1NQYUI4dE4wd1NWUkdhSWlaY0NMTzlnb0NRRUJLQ2tnZ1hsb2NkQWdSeEpXcHpvT2kvU1A4SmtLalQrd2xkbHJPYnZjTFlMc2NOSys4OVliRVVsdWVaM0NWcmZyYm0wRnZici9uM3I1K000R2R0Vy92WTQ3dlAzUzE0NWkxT2NCVTFnWklTcjlFZjNQbTdXdys4dGZPOWUrWW8vZDZQQUNaYXd3ZFFFN3BjRVhGWUsxY2FNS1BIV3NIU09FenF2ZEs0Q21kSUd3c240VjVHUEpLNUtLZTBTUXZESkM5RUUyeUNXRVFMdzhwakpzcnpKYUxneFJuME1XazZRMm1TcG12a25rUEZ4U2FMV0dTeDNUaDBFMDVRZlBKRFhLd0NTRFZIZlBJa09YN3k1REUrMEdUMGUwcWtxaUFmZXJpVjFvaW41eURrTTZSRGVzN3BsOGxha2RkeGo0QXNhMUVIdWtONUNpR0llYjIyVmlJSWxKbG51VkdUZ1p3YU51b1kybU9vMS9QRDlEa3pyUlUzU3RRL25qTmFjMVhLcFVQb29oZUMxNnFyQTB2U1VkYytKVTdhNUFOaWtSaFV2WlpiYVJVZmwwWk85NlFSLzVTelBNWjFYbTRsUnZQUENvUDYvL0xudnRlWDErVGxCNHJ6ekM5Y2VlMG1NSzAzdmJweDQ2czNOVzdac2p3NTB0WTJBblptWHZkTXpXeU8xYjM2Rzc4M1AxNFVxNjdrV3RhdVg1ZG92ZmJYWC83eXI2OTk3OGJ0MjI5TWJPN3QzWndBUFFCNHhqMEU5bVk2Mm55Q0pjOGZxVStoU3NoZ1VCb1BwSFNyYkdSODNhRTBLUkJ0TWlBajllK1REMUlVYWpxaTFRbWFVTkE2RGRUQ3ltU1JDSEhvVnV6Rm41OHN3NDk3cjNsMDJTMWRxZHpLUTNXOG8zbERSM1h1d1l6WG9aNm01T1M4TzFmTHd6bXF0YVozM3ZDRGcwZHk4bUo3dFFEc3dnVzYvdWJ3Q3dzRXRCNmhBZ2F0c3lyUFVUOGdyMlB2cGNmWDBxZW8xNkZuNlhwdGd2RUhnYmRUMFJWSlkwZk1iT0pJZ0sveFYxMXlVc3BBYzVLZ1hZR1V5VWhZaDRaZ29TcU5Nd0lZSms0UFR2emlneFQrVGtWSnFZRVdMNlJHd2wrcFVEWEFJVlovcVpJZ2lDSWdxcUJlN2ZuUU8rcTVIUjd5MUdPZDUvdytyVU5zMVhoV2dpSGc2aWp3djU5OFZuenlqN1kzS3R1QWV4VjR4Y2k4eVJnSmRqRDJxMkE4RVF3bTRzRWZ5azhUUHQwSGZPb0FQdm5STElVNWJyQzYzQkI1Qms1S01Xa1BSRkNOQ3c2Q2orZlk5ZG5IbGNmay9NaEhLbmpxWTNLWHFGTXpQL0pxTnVpOCtxd250cDFUZDQ0cXJtVnlSY0FYUG9ENUhnQzcwNEVPMHdkdW5tbE5NRVN5Z1BCYU1hOUxBUGFnQ0k4OGl3T1lYakVuQmoycjB3VlNITU1vb3RYOE9lbUgxRTZTNEgyU29Va2ZHVFdFdENGcXcwWWtQV0pBSzErMWd4TnVETUQvbVk0TitzU0tUV25adU5qWHpCUDFwTEdaMmlieS9MS3cwU3ZzRkx6RnBkV0ozQjIxT2VFWWhKWTM5bnd0RXJ0dUZudjg3bStNblNFUktHTnVyTHZqZ1B6NGhQM2JOUVc0L1lvcmY3eG12Ym8rbmdBK1RrY2pKNmFSZUYwMTNCN1NwMjhZTmhrWmd5RXd2Z2V5TkJra3B4VW5SeUlRR0RxRUpobW8yWjNPdUdaNHpHcWk2UC9aNGlqOEFaODI3MzltY3o0VXZEZC9INnp6RjdFNERLUHg2ZUQ3NE9PMkFsNVpEanpLUjc3Y3VsNWtRbDNQVjFCV1ZKaXA2NDEvdXB6SndWcU0vSWZyci8vRG9VUDBjL2JHcHFhTnM1VlA5amdCcEcvdFZEN2ZVeENVaHJrWkZKQjNjcGZCZkdwUUV0MmNORVV4eDVzd1N2dGN5VVRTbFR6eHRUeFBYYVl5eFV4ZUtrVGNSalVkbHVWa1ZXTjRzU3ZBeTVLSHZtcVR0UjBRRzlhZ2FpSlR0V2lWaVV4c2w1YmRSRWF3SFJyS1ZGdGNaWVBxY1hPdzZJYXNVSVU5cmlGTitad2lyUEUyRHNEb2U3blJDc1gyd0x0SE1yd2p5Q0tRaFZla3lYRktPRk5KQ0xFcTd6NGZvT1JlTVlGM0l1a1F1QWhDbVl5RG42TkVPUWlsUDVkL2o2U0R2OElzME00ZXp3cnR6bCtuYkpWUDdOYWl2L2ZHNDNhSTljQldFTDJMbzJkb0wrQ0pldkxzVzA4cDJXSk1ySzJGbGt5Sk9hVTFxVUNLNUpUU1g3S3JNYXJ0cmNxMFRtWXV5aFM0eGwyVEFkc1pZMHdiNlVpMUo1SXpka0I1K1VZY05TcW14MDBMS0puSDRsVkw0NytFVjZiYXluN1lYV1czUjR1dEJWTmFVM3ZuWXpXTk1iWklyVnZ2VUYyV1hmQjJ2N0tHUFQ2bHZNRWZqY1lNdmxXUGJ4eWEzSzc4NjhIN0ZKNGVCZHNTby9hM0p6a25DWVNYamF2eFJiSnFmSkhQcWZHQmtZMkpBYWxhREdpdkdhRjlWMnFGVHlud2FjczA5K1VpUkpsSWZZOVcrSUxab2ZXUDZBdEZXZzZ0YWVuc0NxMVlmbjFpM3RMbFQrL2FmN1gyVHBHNnc4dS9HYTBxWHJiMllNdStGUSt0Ly9xTzJnNzJ1UElta1k3R1NySFNiakthQ3d2OVZ3MFA3ZStlbFg2UFNFZnp3dUl5RTU5bjhmbDdqdlovYWNZY2svcjhNNG03RjlQZTdIaXlIbHdSU1l1TzZ1anpsU3g5dmxKdGtNenR4cGJFQ2xHUUpLMUFsbTc2dERuVnZJRWFFcXFWUGpVc0l0bGJ4bG52eE50cE1IVHJUYkhyRnhUbXVhUUN1OHYxazY4Zk8va1NPZnhTMnl6dUZGbE83OU1nNk04UGh3TkdzU0xxS2ZTYU43eDhHb3NrRE1JbFN0OGp6UDFyN0dFMEJhMCtZY3Z5b3lVa3g4T1I2aDdIa1pmeVpPY0lrdExFazBxY3oyZkgrVlNScDZDNEZBRGNIaGUxMG1WdWdLK2JVQStrK1RwaUp0cXlxZ2ZzWDd5cTAzeVgrTU1NYnNjZ0h1byt0V2F5SUhzWWNPTGxHVWNJbmhNL29HZ3pZSGRydHRja2RSSFM3d3IwWDZ3T0dQamZxZ1Blb05ZQmY1Yy9mZWJNYWZueTc2ZmxkcjkxUHZWMFFqMHl5aDVXNDdCQnNheE1aSTdtVkRwbTRWUGo2NEF3L3c1U0IyeW9LcUIxSGFUakVLZER1WFhBUUZZZGtEUXJTY1FMaXVQcmdEaVRMZy8rVDh1QTRUc01qYTNOVS9JTzNHYWQwdEphYi9pcW9CS2tQaDJ5dUh1ZnVTb2NpWmh2NloydFpXVXlwSktTSjE0dDN5ZVdlYVZ4Sk8vRUN6M2VvaEw1WVh4emRrMkxQQmV5RjJqL25CcGc0R0kxd0ptMEJpZ1dqcThCNnI5d0RkQVJ1bFFOY0xIU3kvWmZtSzNQTGZoWmQrKzBxVWZ1VjdaeCtlT0czUHAyM3VpMWhlcVJWUnFUUHBNL3lUYkxlL2ZtQUVMRHA5bE0yNzA3WFErcmtOZFNIVStRZm9NcU4yMTgwNm1xb2E1aFJEcmV5T3RTdFBJOU1FZHlqU3ZmWXl1ajE5RVhFYlF6aVMrbzhFbjVwcGszSHJsSkNwUVd6MTA5djBuK1NYZXUycmNlT3hZZnIvYm4vM25yblcwY250SlZYOFh3ZFp1M01EdHl0T0ZtdkRQVDkwaHJmVUJiaE5UNnJCZXY5UVcrWUswdk1MSFdGMEZoMFIyZjdQMEZPYTJkY2EzY0Y4UFVRZEY2bjlVKzloR2UwVEN6T3BhdlZ2eXNkc1lzLzVRZThRbHNDWHNZYUNtVkhHUG5kb29lUzBteC9FOWE5WU1qakh1YmNrUXNnMGsrSkQvTnZzOFBRcXkrS1dsdGdVQTJINllmQmdlanZmcXJOUDJxQXBLVVpOYlN6RFdoaUw3VXhrOWVwWUk0SG8xa2hvSEl5Vk9ReEY1alpuNDZGWkJvckk1S2dyYzBvRmRmd21HbENXMGZBM1M3Q1BuNVdLY2dPZTJaZWRMTXBUd3JyNlZxNFZzMURpcSsyR01wTFZwMVdZamo4YWJycjkrS2pUaTJjV2xScWNVamZ2WUJtNGV2dmx5dHJXekhKdmFEOC94Z3BEMFdLNGdzNngwdUdibEZOQW43MWpsTnV5MUZuZk5DK2JGWWU5VlRwNzIrcnhvS0ZpKzN4YXFxb3JiQnhRWEd6V1dlRThkb2ZmS2NmQi96SGsvZWFSSlhlSkw3L2hIdFJVZ0RFMTZFbEhuaGlTdXJkWWI1VG56YXRDVDg4ZHU4d2lmZkpwMHd1bjYvVW9ORjc4dFBjeUdReHpRMGtyU0MyK05xNEo1dURFcVZsZ2NNWThrYjFwUUhnNUgyTnF0S1RwTUhyYkJraGdFSUhFREthL3hZSWcvU1dUd05UVzF0RG9TRFlYMzZCVDVLY1VxRFJQRE5od3MxT2JTcitGcGhmcUl4aHFsa1l1bDZGK1AvZ0RYaDdSclRyOFo1N0FlZmlVUkVTemZHUURaYnI5ODlvdU54ZE1NZ0ZSRS9lT3lFcDJ5enNXRHhvQzFhVlJXekxWOWNZUGlxejN2NnFTb1FVMzVvWG1lUlpiZkp1VzZmWUFyY2ZlV3d5ZDQ1TjFnQWNvcFFIdDJFRDNEZHpCZ3cvM0pTeDN4R3NJSmpKUUREb3ZDSFpkQ0FqaWV2UEFERVJCakJRSFRLSUdZK0FjekFIMkRyS0t4VGh1VUFPQ3VqNFNncERTcURFUm1yMWVPRG9oUVM2YXVBMVBMdnhQcUwyamVtMTE3T1FkNVU4ZDZLYVkxZFVxaXQzRjdvRDFmbnRleGZHaDlPeG1lTDJVZVlNVkh3ZU1zRlJ5QWNzTG42bDBpQ3g1UDVwc1JuYnpHTjdFcTFoelpCcTdaVkhLa3FLYVJCVU1ZTXFERTNnK1pQMGtxYlhTeWU3S1Z1ekk2djlmZHIvMkpUcDhiSUgzZXFQK3ZvTDVXRHNhbXcwQUVYQkxuMytPMFErZGVpZWVEeW5xTnpjcGd4dy9yQlN5Nm9aSGpUZEt3M2MrcXJlcVlBZjlrOXhCTHNRYnpKYk9MTm96cU81TWtnUXQrQVRMekJOR0MxNUxGbUk5WWJ6UG9SWkRJWlZpR0R5YkNBUEUybVhLcURTM1ZZbDc2ZXZwenlVcGNQSkQzejU5ZlZ6Vjg0ZjJIZHZMcTVQVjFUazJLd3FGZ0VXZGFTSjJrb1g3UUdBdlZ0T0ZSNDJydHc0RU5TWHhRVVV0OFVWT2UycTIyOTJoTlY5T3FFK29aUFc3MlkwRE4rcDFzT0Z6bWM3dnV1ek1zcmMrZVZnbnV6dTMySDNFNW1zZk44djhWUTZpMXlzdDhtMjhzaER1bjJWZFpVeW04N0JKMEJ4NjBSTVJydC9qdC9ML01Ud1I4TSt2SGxyZnJhVXBjbjczcDlpWHZzbjBMQVdPaXdqUDAzSDVWZ3l4ajU2Rml0RUFqNHIzSTVuTTZycG9yNUlJYnI3UGJpUXZuV0gvd0FzU0NyRVBlT0txc2g3S0tTeXRja05STWtaU0JHcFJpa2xCekhhaVBtRFJZRGJ4bk53eGF6MlhKNUZzdVJnVGNaUnBCWnJ6ZjNJN05adnhMcHpmcDVhbjF2NWdTUkdZd0czamlLakJhRDBiTHJDOTh0T2V2U056Sll6THN1ZVNjSWU0dnE2dXFHNmxZc1c3cG9RZmVjY0VMVkFldi9odzZvYnhjaUF5ZDl0VkNkOGxCOHZXSVl2N2crREZUWVhiSyt5bzF0TlpHR1dIdU5MeHlwS0ludm1YcnR6WE43SHZxK0wzd3hyV2dacHhYbmp6dWR0N25zaTZMMlg0a0pYMFhNMVVVVTVLRGI2aW03YnUzVWpZbHJRaTRIV2NzZjA3VzhEVFdoYnJRUmJVYnZVdzBwaXBJWEtZS1dkT1FEb05zOG16SGtyY1ltSTYvYTE1bnBMZ3BEbmpIUFlCd0Z6NEhJdTQyb1F3SzdOS0luUXNuRGFLUUE1eG5NZVFOV2JMUmdrOWxvSWdmeXpLdVFPYzhNeXp1VnZwR2VJVlcveVcrb2h4dWlMM0MvZ2FUWTA0UFFwc3Q2TnZhTXJCd2FYTnEvZVA3Y0dkTmJXMmpaVUd5b2o0WnRFRjRwTmp6ek1xV3N5cGNhOW1mZXBwUWxXVld3U0RYNkdZV3dxMnB5RWF2QTFpZndYZnZYTmJaODQwRGJuaHF2MFZScVpYWFY2NnQyeHFwU1RwZkwyYmFoS1Q2bHVheHlRVW5qbnVtc2llcENSaWRpMGU3Q1NVekVPM2Z6L0xhdHExYlhPdWMxalZ4VzdNenoyNG84Wll5amFMWVlFSUpCb1VjSXVtcGRqb3JSRW91N1pPeVBWQzB5NmlGL2k5aUhTY3lHdk9JSDlKMXI2OWg3QWZjS0tKYU1wTjlXcFpVK0F1a0ViNVMrcFVwQTVZSlVGTkRLRzVOeE5PdkJObmFYOStTeHZsUExvblo3c05qcVduQjk3Q1paZmRNdDAwekM2L043VHI5Y0d5dU1laW9yUTRaQStHSG1YUzNXd09lNFdzQmdDd0ZTaGFpV2VpWmlyaXpBcFlnNTV5MXpqelkxenB6WjFEQ1RYK2dWanBMVXkxSFJvOWF2NXdDOWZoUktTbGwwWnBkeS9zZDFuRjlOVXNmNXRicHp1NUpIbUN3Tmh2NHZFZjV0Q2dBQUFIamFqWkxCVGhzeEVJWi9Md0hSQTZpdGVrSTlXS2dIT0xCT29FZ1JPWVZJdVJRSklnRnFqN0MxZGhjbDhXSjdEN3hFSDZJdjBodXEraDU5aHg3NzIzRkxxRXJWWGEzOWVUei96S3pIQUo3akhnS0w1eU8rSlJiWUVPOFNaK2lJSXZFS1hvdlBpVHQ0S2I0blhzVkc5aXJ4R2w1azQ4U2IyTW8rVVNVNno3ajZHaU1FRnRnU0tuR0dkZkVoOFFyNm9rcmN3UnZ4SmZFcS9YOGtYc04ydHAxNEUyK3o5eGpCb01FZExHcVVxT0Foc1k4dWVqZ2tuZE9pT1Fldk52cG9qaEpua1dkeEw3REJEYm1JNmlFOVBYV0dkc2YxVG96cW1jWGhDSXB2U1czd2FIR05uQ3JEU0FxM1hCdmFOZWY1MHVxS3lxQlZmMVR4VU1NdW8yQmttanRibDVXWCs5M2VvVHl2dEJ5WjF0YmF5ak5ienpSSGM2TUxMNGV0cjR4MWNxZnl2bkZIU3BXMXI5cnJ2REF6ZGRzYXI5dDVuSzZheHFrVUlrYllEVm1lUEFnOHlnWWMwM1BLYTRGak0rVjR3QnJEcWZZeHdBUVgvSWFrcC81bzcwRitrSGQ3L2NIa1lqSWNMQmV6dHdqN3I4YjhEdkg0SEJiQ3l5aHdkRFk4YmJsVUh5NjFkYldaeTVnWi8xUGpYd3I3MWZORnh4MjdISFFOYlk2WlF0NHA1M0JIU3U2Zllvd1RpdGdSTnNRVnRtNjh5MTA5elkwdDFlbjRCRDhCK3JHb2VRQUFlTnBsaXRkT3dtQUFSczlmUmhHY0RNVXRibEd4eFZsWFhDaTRCU2VvcFRGZ0x3ZzFCV084MVVmMVBZeW1pVEhSYzNPK25IeElPSHgrOFBZdHdWOU1wMHE0Y09QQmk0eVBCdndFYUtTSlpscG9wWTBnSWNKRWFLZURLSjEwMFUwUHZmVFJ6d0F4QmhsaW1CRkdHV09jQ2VKTU1zVTBDV1pRVUVreXl4enpMTERJRWhyTHJMREtHdXRzc01rVzIreVFZcGM5MG1UWTU0QkRqamptaEZQT3lKTGpuQXN1dWVLYUcvSVV1T1dPZTNTS0dMd0xTYmlFVzNpRVY4Z2hxMXJTYXhXalp1cGw2OWxPbEczaklmamI2aStXa3lKMTB5NzlPOHFQbGRjblU5TjhqbFZGK1JucUZ6TEhOVzRBQVFBQi8vOEFEM2phWTJCa1lHRGdBV0lsSUdaaVlBYkNSQVpHaGlTR0ZDQXZsU0VkeUdZQnl6QUFBQ2ZVQWpWNDJtTmdaR0JnNEdJSVlVaGlZSFp4OHdsaEVFa3ZTczFtVU1oSkxNbGowR0ZnQWNveS9QL1BBRktGekJaallIWjJERkZnRVBQMTl3R1NRZjYrUUJJdXk1aFdsSmpNd0FGaWdURUxXQzhqVUlRUmFDWVQwRDRGSU1uR3dNZVF6TURNSU1RZ0NySWRTSXVEMWFiQTJVd01JZ3hpQUxXMkV4bDQybU5nWkdCZzRHS3dZYkJqWUhaeDh3bGhFRWt2U3MxbWtNdEpMTWxqMEdCZ0Fjb3kvUDhQSkxDeGdBQUFXeG9MYXdBQUFBQUFBUUFBQUFEVnBDY0lBQUFBQU5tY2crRUFBQUFBMmZ0Sk5BPT0nKSBmb3JtYXQoJ3dvZmYnKTtcclxuICBmb250LXdlaWdodDogYm9sZDtcclxuICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xyXG59XHJcbiJ9fQ==`,"base64").toString("utf8"));return t(`metrics/setup > setup > success`),a}async function a({login:e,imports:t,q:r},{enabled:n=!1,token:a=""}={}){try{if(!n||!r.music)return null;const o={get provider(){return x[s]?.name??""},get mode(){return v[l]??"Unconfigured music plugin"}};let i=null,{"music.provider":s="","music.mode":l="","music.playlist":d=null,"music.limit":p=4}=r;if(d&&!l&&(l="playlist"),d&&!s)for(const[e,{embed:t}]of Object.entries(x))t.test(d)&&(s=e);if(l||(l="recent"),!(s in x))throw{error:{message:s?`Unsupported provider "${s}"`:`Missing provider`},...o};if(!(l in v))throw{error:{message:`Unsupported mode "${l}"`},...o};if("playlist"===l){if(!d)throw{error:{message:`Missing playlist url`},...o};if(!x[s].embed.test(d))throw{error:{message:`Unsupported playlist url format`},...o}}switch(p=_Mathmax(1,_Mathmin(100,+p)),l){case"playlist":{console.debug(`metrics/compute/${e}/plugins > music > starting browser`);const r=await t.puppeteer.launch({headless:!0,executablePath:process.env.PUPPETEER_BROWSER_PATH,args:["--no-sandbox","--disable-extensions","--disable-setuid-sandbox","--disable-dev-shm-usage"]});console.debug(`metrics/compute/${e}/plugins > music > loaded ${await r.version()}`);const n=await r.newPage();console.debug(`metrics/compute/${e}/plugins > music > loading page`),await n.goto(d);const a=n.mainFrame();switch(s){case"apple":{await a.waitForSelector(".tracklist.playlist"),i=[...(await a.evaluate(()=>[...document.querySelectorAll(".tracklist li")].map(e=>({name:e.querySelector(".tracklist__track__name").innerText,artist:e.querySelector(".tracklist__track__sub").innerText,artwork:e.querySelector(".tracklist__track__artwork img").src}))))];break}case"spotify":{await a.waitForSelector("table"),i=[...(await a.evaluate(()=>[...document.querySelectorAll("table tr")].map(e=>({name:e.querySelector("td:nth-child(2) div:nth-child(1)").innerText,artist:e.querySelector("td:nth-child(2) div:nth-child(2)").innerText,artwork:window.getComputedStyle(document.querySelector("button[title=Play]").parentNode,null).backgroundImage.match(/^url\("(https:...+)"\)$/)[1]}))))];break}default:throw{error:{message:`Unsupported mode "${l}" for provider "${s}"`},...o};}console.debug(`metrics/compute/${e}/plugins > music > closing browser`),await r.close(),Array.isArray(i)&&(console.debug(`metrics/compute/${e}/plugins > music > found ${i.length} tracks`),console.debug(JSON.stringify(i)),i=t.shuffle(i));break}case"recent":{const r=Date.now()-86400000;switch(s){case"spotify":{const[n,s,l]=a.split(",").map(e=>e.trim());if(!n||!s||!l)throw{error:`Spotify token must contain client id/secret and refresh token`};try{console.debug(`metrics/compute/${e}/plugins > music > requesting access token with refresh token for spotify`);const{data:{access_token:a}}=await t.axios.post("https://accounts.spotify.com/api/token",`${new t.url.URLSearchParams({grant_type:"refresh_token",refresh_token:l,client_id:n,client_secret:s})}`,{headers:{"Content-Type":"application/x-www-form-urlencoded"}});console.log(a),console.debug(`metrics/compute/${e}/plugins > music > got new access token`),i=(await t.axios(`https://api.spotify.com/v1/me/player/recently-played?limit=${p}&after=${r}`,{headers:{Accept:"application/json","Content-Type":"application/json",Authorization:`Bearer ${a}`}})).data.items.map(({track:e})=>({name:e.name,artist:e.artists[0].name,artwork:e.album.images[0].url}))}catch(e){if(e.response?.status)throw{error:{message:`API returned ${e.response.status}`},...o};throw e}break}default:throw{error:{message:`Unsupported mode "${l}" for provider "${s}"`},...o};}break}default:throw{error:{message:`Unsupported mode "${l}"`},...o};}if(Array.isArray(i)){0 music > keeping only ${p} tracks`),i=i.slice(0,p)),console.debug(`metrics/compute/${e}/plugins > music > loading artworks`);for(const r of i)console.debug(`metrics/compute/${e}/plugins > music > processing ${r.name}`),r.artwork=await t.imgb64(r.artwork);return console.debug(`metrics/compute/${e}/plugins > music > success`),{...o,tracks:i}}throw{error:{message:`An error occured (could not retrieve tracks)`}}}catch(e){if(e.error?.message)throw e;throw console.debug(e),{error:{message:`An error occured`}}}}async function o({login:e,q:t},{conf:r,data:n,rest:a,graphql:o,plugins:i},{s:l,pending:s,imports:d}){const p=n.computed={commits:0,sponsorships:0,licenses:{favorite:"",used:{}},token:{},repositories:{watchers:0,stargazers:0,issues_open:0,issues_closed:0,pr_open:0,pr_merged:0,forks:0,releases:0},plugins:{}},c=d.imgb64(n.user.avatarUrl);for(const c of Object.keys(d.plugins))s.push((async()=>{try{p.plugins[c]=await d.plugins[c]({login:e,q:t,imports:d,data:n,computed:p,rest:a,graphql:o},i[c])}catch(e){p.plugins[c]=e}finally{return{name:c,result:p.plugins[c]}}})());for(const c of n.user.repositories.nodes){for(const e of["watchers","stargazers","issues_open","issues_closed","pr_open","pr_merged","releases"])p.repositories[e]+=c[e].totalCount;p.repositories.forks+=c.forkCount,c.licenseInfo&&(p.licenses.used[c.licenseInfo.spdxId]=(p.licenses.used[c.licenseInfo.spdxId]||0)+1)}p.diskUsage=`${d.bytes(1e3*n.user.repositories.totalDiskUsage)}`,p.licenses.favorite=Object.entries(p.licenses.used).sort(([e,t],[r,n])=>n-t).slice(0,1).map(([e,t])=>e)||"",p.commits+=n.user.contributionsCollection.totalCommitContributions+n.user.contributionsCollection.restrictedContributionsCount;const u=(Date.now()-new Date(n.user.createdAt).getTime())/31536000000,m=_Mathfloor(u),g=_Mathceil(12*(u-m));p.registration=m?`${m} year${l(m)} ago`:`${g} month${l(g)} ago`,p.calendar=n.user.calendar.contributionCalendar.weeks.flatMap(({contributionDays:e})=>e).slice(0,14).reverse(),p.avatar=(await c)||"iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mNk+M9QDwADhgGAWjR9awAAAABJRU5ErkJggg==",p.token.scopes=(await a.request("HEAD /")).headers["x-oauth-scopes"].split(", "),n.meta={version:r.package.version,author:r.package.author}}async function i({login:e,q:t},{graphql:r,rest:n,plugins:a,conf:o,die:i=!1}){try{console.debug(`metrics/compute/${e} > start`),console.debug(JSON.stringify(t));const u=t.template||o.settings.templates.default,m=_Mathmax(0,+t.repositories)||o.settings.repositories||100,g=[],h=(e,t="")=>1!(`base.${e}`in t)&&(t[`base.${e}`]=!1));for(const e of o.settings.plugins.base.parts)E.base[e]=!!t[`base.${e}`];if("placeholder"===e)c({data:E,conf:o,q:t});else{console.debug(`metrics/compute/${e} > graphql query`),Object.assign(E,await r(s.replace(/[$]login/,`"${e}"`).replace(/[$]repositories/,`${m}`).replace(/[$]calendar.to/,`"${new Date().toISOString()}"`).replace(/[$]calendar.from/,`"${new Date(Date.now()-1209600000).toISOString()}"`))),console.debug(`metrics/compute/${e} > compute`);const c=C[u].default||C[u];await c({login:e,q:t},{conf:o,data:E,rest:n,graphql:r,plugins:a},{s:h,pending:g,imports:{plugins:k,url:_,imgb64:b,axios:S,puppeteer:w,format:l,bytes:d,shuffle:p}});const f=await Promise.all(g);if(o.settings.debug)for(const{name:e,result:t=null}of f)console.debug(`plugin ${e} ${t?t.error?"failed":"success":"ignored"} : ${JSON.stringify(t).replace(/^(.{888}).+/,"$1...")}`);if(i){const e=f.filter(({result:e=null})=>!!e?.error).length;if(e)throw new Error(`${e} error${h(e)} found...`)}}console.debug(`metrics/compute/${e} > render`);let A=await f.render(x,{...E,s:h,style:v,fonts:T},{async:!0});if(o.optimize&&!t.raw){console.debug(`metrics/compute/${e} > optimize`);const t=new y({full:!0,plugins:[{cleanupAttrs:!0},{inlineStyles:!1}]}),{data:r}=await t.optimize(A);A=r}return console.debug(`metrics/compute/${e} > success`),A}catch(e){if(Array.isArray(e.errors)&&"NOT_FOUND"===e.errors[0].type)throw new Error("user not found");throw e}}function l(e){for(const{u:t,v:r}of[{u:"b",v:1000000000},{u:"m",v:1000000},{u:"k",v:1000}])if(1<=e/r)return`${(e/r).toFixed(2).substr(0,4).replace(/[.]0*$/,"")}${t}`;return e}function d(e){for(const{u:t,v:r}of[{u:"E",v:1000000000000000000},{u:"P",v:1000000000000000},{u:"T",v:1000000000000},{u:"G",v:1000000000},{u:"M",v:1000000},{u:"k",v:1000}])if(1<=e/r)return`${(e/r).toFixed(2).substr(0,4).replace(/[.]0*$/,"")} ${t}B`;return`${e} byte${1"object"==typeof e?new Proxy(e,{get(e,t){return t===Symbol.toPrimitive?()=>"##":t===Symbol.iterator?Reflect.get(e,t):/^plugins$/.test(t)?Reflect.get(e,t):/^error/.test(t)?void 0:n(t in e?Reflect.get(e,t):{})}}):e,a=Object.entries(t.settings.plugins).filter(([e,t])=>t.enabled).map(([e])=>e).filter(e=>e in r&&r[e]);Object.assign(e,{s(e,t){return"y"===t?"ies":"s"},meta:{version:t.package.version,author:t.package.author,placeholder:!0},user:n({name:`############`,websiteUrl:`########################`}),computed:n({avatar:"iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mOcOnfpfwAGfgLYttYINwAAAABJRU5ErkJggg==",registration:"## years ago",calendar:Array(14).fill({color:"#ebedf0"}),licenses:{favorite:`########`},plugins:Object.fromEntries(a.map(e=>[e,n({posts:{source:"########",posts:Array("posts.limit"in r?_Mathmax(+r["posts.limit"]||0,0):2).fill({title:"###### ###### ####### ######",date:"####"})},music:{provider:"########",tracks:Array("music.limit"in r?_Mathmax(+r["music.limit"]||0,0):4).fill({name:"##########",artist:"######",artwork:"iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mOcOnfpfwAGfgLYttYINwAAAABJRU5ErkJggg=="})},pagespeed:{scores:["Performance","Accessibility","Best Practices","SEO"].map(e=>({title:e,score:NaN}))},followup:{issues:{count:0},pr:{count:0}},habits:{indents:{style:`########`}},languages:{favorites:Array(7).fill(null).map((e,t)=>({x:t,name:`######`,color:"#ebedf0",value:1/(t+1)}))}}[e]??{})])),token:{scopes:[]}})})}r.r(t);var u={};r.r(u),r.d(u,{default:()=>n});var m={};r.r(m),r.d(m,{default:()=>i});var g=r(35747),h=r(85622),f=r(58509),y=r(20485),b=r(67192),S=r(2390);const x={apple:{name:"Apple Music",embed:/^https:..embed.music.apple.com.\w+.playlist/},spotify:{name:"Spotify",embed:/^https:..open.spotify.com.embed.playlist/}},v={playlist:"Suggested tracks",recent:"Recently played"},k={followup:async function({computed:e,q:t},{enabled:r=!1}={}){try{if(!r||!t.followup)return null;const n={issues:{get count(){return this.open+this.closed},get open(){return e.repositories.issues_open},get closed(){return e.repositories.issues_closed}},pr:{get count(){return this.open+this.merged},get open(){return e.repositories.pr_open},get merged(){return e.repositories.pr_merged}}};return n}catch(e){throw console.debug(e),{error:{message:`An error occured`}}}},gists:async function({login:e,graphql:t,q:r},{enabled:n=!1}={}){try{if(!n||!r.gists)return null;const{user:{gists:a}}=await t(` query Gists { user(login: "${e}") { gists(last: 100) { totalCount nodes { stargazerCount isFork forks { totalCount } comments { totalCount } } } } } `);let o=0,i=0,s=0;for(const e of a.nodes)e.isFork||(o+=e.stargazerCount,i+=e.forks.totalCount,s+=e.comments.totalCount);return{totalCount:a.totalCount,stargazers:o,forks:i,comments:s}}catch(e){throw console.debug(e),{error:{message:`An error occured`}}}},habits:async function({login:e,rest:t,q:r},{enabled:n=!1,from:a=100}={}){try{if(!n||!r.habits)return null;let{"habits.from":o=a.from??100}=r;o=_Mathmax(1,_Mathmin(100,+o));const i={commits:{hour:NaN,hours:{}},indents:{style:"",spaces:0,tabs:0}},s=await t.activity.listEventsForAuthenticatedUser({username:e,per_page:o}),l=s.data.filter(({type:e})=>"PushEvent"===e).filter(({actor:t})=>t.login===e);{const e=l.map(({created_at:e})=>new Date(e).getHours());for(const t of e)i.commits.hours[t]=(i.commits.hours[t]??0)+1;i.commits.hour=e.length?`${Object.entries(i.commits.hours).sort(([e,t],[r,n])=>n-t).map(([e,t])=>e)[0]}`.padStart(2,"0"):NaN}{const e=await Promise.allSettled(l.flatMap(({payload:e})=>e.commits).map(e=>e.url).map(async e=>(await t.request(e)).data.files));e.filter(({status:e})=>"fulfilled"===e).map(({value:e})=>e).flatMap(e=>e.flatMap(e=>(e.patch??"").match(/(?<=^[+])((?:\t)|(?: )) /gm)??[])).forEach(e=>i.indents[/^\t/.test(e)?"tabs":"spaces"]++),i.indents.style=i.indents.spaces>i.indents.tabs?"spaces":i.indents.tabs>i.indents.spaces?"tabs":""}return i}catch(e){throw console.debug(e),{error:{message:`An error occured`}}}},isocalendar:async function({login:e,graphql:t,q:r},{enabled:n=!1}={}){try{if(!n||!r.isocalendar)return null;let{"isocalendar.duration":a="half-year"}=r;const o=29===new Date(new Date().getYear(),1,29).getDate(),s={"half-year":180,"full-year":365+o}[a]??180,l=new Date(Date.now()-1e3*(60*(60*(24*s))));l.setHours(-168);const{user:{calendar:{contributionCalendar:d}}}=await t(` query Calendar { user(login: "${e}") { calendar:contributionsCollection(from: "${l.toISOString()}", to: "${new Date().toISOString()}") { contributionCalendar { weeks { contributionDays { contributionCount color date } } } } } } `);d.weeks.shift();let p=0,c={max:0,current:0},u=[],m=0;for(const e of d.weeks)for(const t of e.contributionDays)u.push(t.contributionCount),p=_Mathmax(p,t.contributionCount),c.current=t.contributionCount?c.current+1:0,c.max=_Mathmax(c.max,c.current);m=(u.reduce((e,t)=>e+t,0)/u.length).toFixed(2).replace(/[.]0+$/,"");const g=6;let h=0,i=0,f=` ${[1,2].map(e=>` ${[..."RGB"].map(t=>``).join("")} `).join("")} `;for(const e of d.weeks){f+=``,i=0;for(const t of e.contributionDays){const e=t.contributionCount/p;f+=` `,i++}f+=``,h++}return f+=``,{streak:c,max:p,average:m,svg:f,duration:a}}catch(e){throw console.debug(e),{error:{message:`An error occured`}}}},languages:async function({data:e,q:t},{enabled:r=!1}={}){try{if(!r||!t.languages)return null;const n={colors:{},total:0,stats:{}};for(const t of e.user.repositories.nodes)for(const{size:e,node:{color:r,name:a}}of Object.values(t.languages.edges))n.stats[a]=(n.stats[a]??0)+e,n.colors[a]=r??"#ededed",n.total+=e;Object.keys(n.stats).map(e=>n.stats[e]/=n.total),n.favorites=Object.entries(n.stats).sort(([e,t],[r,n])=>n-t).slice(0,8).map(([e,t])=>({name:e,value:t,color:n.colors[e],x:0}));for(let e=1;ee)??[],s={added:0,deleted:0},l=await Promise.all(i.map(async t=>await n.repos.getContributorsStats({owner:e,repo:t})));return l.map(({data:t})=>{if(Array.isArray(t)){const[r]=t.filter(({author:t})=>t.login===e);r&&r.weeks.forEach(({a:e,d:t})=>(s.added+=e,s.deleted+=t))}}),s.added=r.format(s.added),s.deleted=r.format(s.deleted),s}catch(e){throw console.debug(e),{error:{message:`An error occured`}}}},music:a,pagespeed:async function({imports:e,data:t,q:r},{enabled:n=!1,token:a=null}={}){try{if(!n||!r.pagespeed||!t.user.websiteUrl)return null;let o=t.user.websiteUrl;/^https?:[/][/]/.test(o)||(o=`https://${o}`);const i=new Map;return await Promise.all(["performance","accessibility","best-practices","seo"].map(async t=>{const{score:r,title:n}=(await e.axios.get(`https://www.googleapis.com/pagespeedonline/v5/runPagespeed?category=${t}&url=${o}&key=${a}`)).data.lighthouseResult.categories[t];i.set(t,{score:r,title:n})})),{url:o,scores:[i.get("performance"),i.get("accessibility"),i.get("best-practices"),i.get("seo")]}}catch(e){if(e.response?.status)throw{error:{message:`PageSpeed token error (code ${e.response.status})`},url};throw{error:{message:`An error occured`}}}},posts:async function({imports:e,data:t,q:r},{enabled:n=!1}={}){try{if(!n||!r.posts)return null;const a=t.user.login;let{"posts.source":o="","posts.limit":i=4}=r;i=_Mathmax(1,_Mathmin(30,+i));let s=null;switch(o){case"dev.to":{s=(await e.axios.get(`https://dev.to/api/articles?username=${a}&state=fresh`)).data.map(({title:e,readable_publish_date:t})=>({title:e,date:t}));break}default:throw{error:{message:`Unsupported source "${o}"`}};}if(Array.isArray(s))return 0 posts > keeping only ${i} posts`),s=s.slice(0,i)),{source:o,posts:s};throw{error:{message:`An error occured (could not retrieve posts)`}}}catch(e){throw console.debug(e),{error:{message:`An error occured`}}}},selfskip:async function({login:e,rest:t,computed:r,q:n},{enabled:a=!1}={}){try{if(!a||!n.selfskip)return null;let o=0;for(let r=0;;r++){const{data:n}=await t.repos.listCommits({owner:e,repo:e,author:e,per_page:100,page:r});if(o+=n.filter(({commit:e})=>/\[Skip GitHub Action\]/.test(e.message)).length,!n.length)break}return r.commits-=o,{commits:o}}catch(e){throw console.debug(e),{error:{message:`An error occured`}}}},traffic:async function({login:e,imports:t,data:r,rest:n,q:a},{enabled:o=!1}={}){try{if(!o||!a.traffic)return null;const i=r.user.repositories.nodes.map(({name:e})=>e)??[],s={count:0,uniques:0},l=await Promise.all(i.map(async t=>await n.repos.getViews({owner:e,repo:t})));return l.filter(({data:e})=>e).map(({data:{count:e,uniques:t}})=>(s.count+=e,s.uniques+=t)),s.count=t.format(s.count),s.uniques=t.format(s.uniques),{views:s}}catch(e){if(403===e.status)throw{error:{message:`Insufficient token rights`}};throw console.debug(e),{error:{message:`An error occured`}}}}},C={classic:async function({login:e,q:t},{conf:r,data:n,rest:a,graphql:i,plugins:l},{s:d,pending:s,imports:p}){await o(...arguments)},terminal:async function({login:e,q:t},{conf:r,data:n,rest:a,graphql:i,plugins:l},{s:d,pending:s,imports:p}){await o(...arguments),t.raw=!0}};var w=r(34651),_=r(78835),T=r(3584),E=r.t(T),A=r(32882),O=r.t(A),P=r(29483),L=r.t(P);(async function(){const[e,t,n,a,o]=[O,L,E,u,m].map(e=>e&&e.default?e.default:e),i=(e,t=!1)=>"string"==typeof e?/^(?:[Tt]rue|[Oo]n|[Yy]es)$/.test(e):t;try{console.log(`GitHub metrics as SVG image`),console.log(`========================================================`),console.log(`Version | 2.5.0`),process.on("unhandledRejection",e=>{throw e}),"push"===t.context.eventName&&t.context.payload&&t.context.payload.head_commit&&/\[Skip GitHub Action\]/.test(t.context.payload.head_commit.message)&&(console.log(`Skipped because [Skip GitHub Action] is in commit message`),process.exit(0));const s=await a({log:!1});console.log(`Configuration | loaded`);const l=e.getInput("template")||"classic";console.log(`Template to use | ${l}`);const d=e.getInput("token");if(console.log(`Github token | ${d?"provided":"missing"}`),!d)throw new Error("You must provide a valid GitHub token to gather your metrics");const p=n.graphql.defaults({headers:{authorization:`token ${d}`}});console.log(`Github GraphQL API | ok`);const c=t.getOctokit(d);console.log(`Github REST API | ok`);const u=e.getInput("filename")||"github-metrics.svg";console.log(`SVG output file | ${u}`);const m=i(e.getInput("optimize"),!0);s.optimize=m,console.log(`SVG optimization | ${m}`);const g=e.getInput("user")||(await c.users.getAuthenticated()).data.login;console.log(`GitHub user | ${g}`);const h=i(e.getInput("debug"));h||(console.debug=()=>null),console.log(`Debug mode | ${h}`);const f={};let y=(e.getInput("base")||"").split(",").map(e=>e.trim());for(const e of s.settings.plugins.base.parts)f[`base.${e}`]=y.includes(e);console.log(`Base parts | ${y.join(", ")||"(none)"}`);const b={lines:{enabled:i(e.getInput("plugin_lines"))},traffic:{enabled:i(e.getInput("plugin_traffic"))},pagespeed:{enabled:i(e.getInput("plugin_pagespeed"))},habits:{enabled:i(e.getInput("plugin_habits")),from:+e.getInput("plugin_habits_from")||100},selfskip:{enabled:i(e.getInput("plugin_selfskip"))},languages:{enabled:i(e.getInput("plugin_languages"))},followup:{enabled:i(e.getInput("plugin_followup"))},music:{enabled:i(e.getInput("plugin_music"))},posts:{enabled:i(e.getInput("plugin_posts"))},isocalendar:{enabled:i(e.getInput("plugin_isocalendar"))},gists:{enabled:i(e.getInput("plugin_gists"))}};let S=Object.fromEntries(Object.entries(b).filter(([e,t])=>t.enabled).map(([e])=>[e,!0]));if(console.log(`Plugins enabled | ${Object.entries(b).filter(([e,t])=>t.enabled).map(([e])=>e).join(", ")}`),b.pagespeed.enabled&&(b.pagespeed.token=e.getInput("plugin_pagespeed_token"),console.log(`Pagespeed token | ${b.pagespeed.token?"provided":"missing"}`)),b.music.enabled){for(const t of["provider","mode","playlist","limit"])S[`music.${t}`]=e.getInput(`plugin_music_${t}`)||null;console.log(`Music provider | ${S["music.provider"]}`),console.log(`Music plugin mode | ${S["music.mode"]}`),console.log(`Music playlist | ${S["music.playlist"]}`),console.log(`Music tracks limit | ${S["music.limit"]}`),b.music.token=e.getInput("plugin_music_token")||"",console.log(`Music token | ${b.music.token?"provided":"missing"}`)}if(b.posts.enabled){for(const t of["source","limit"])S[`posts.${t}`]=e.getInput(`plugin_posts_${t}`)||null;console.log(`Posts provider | ${S["posts.provider"]}`),console.log(`Posts limit | ${S["posts.limit"]}`)}b.isocalendar.enabled&&(S["isocalendar.duration"]=e.getInput("plugin_isocalendar_duration")??"half-year",console.log(`Isocalendar duration| ${S["isocalendar.duration"]}`));const x=+e.getInput("repositories")||100;console.log(`Repositories to use | ${x}`);const v=i(e.getInput("plugins_errors_fatal"));console.log(`Plugin errors | ${v?"die":"ignore"}`),S={...S,...f,repositories:x,template:l};const k=await o({login:g,q:S},{graphql:p,rest:c,plugins:b,conf:s,die:v});console.log(`Render | complete`);const C=i(e.getInput("verify"));if(console.log(`Verify SVG | ${C}`),C){const[e]=[await r.e(344).then(r.t.bind(r,53344,1))].map(e=>e&&e.default?e.default:e),t=e.parseXml(k);if(t.errors.length)throw new Error(`Malformed SVG : \n${t.errors.join("\n")}`);console.log(`SVG valid | yes`)}const w=i(e.getInput("dryrun"));if(w)console.log(`Dry-run | complete`);else{console.log(`Repository | ${t.context.repo.owner}/${t.context.repo.repo}`);const r=e.getInput("committer_token")||e.getInput("token");if(console.log(`Committer token | ${r?"provided":"missing"}`),!r)throw new Error("You must provide a valid GitHub token to commit your metrics");const n=t.getOctokit(r);console.log(`Committer REST API | ok`),console.log(`Committer | ${(await n.users.getAuthenticated()).data.login}`);let a=null;try{const{data:e}=await n.repos.getContent({...t.context.repo,path:u});a=e.sha}catch(e){console.debug(e)}console.log(`Previous render sha | ${a||"none"}`),await n.repos.createOrUpdateFileContents({...t.context.repo,path:u,message:`Update ${u} - [Skip GitHub Action]`,content:Buffer.from(k).toString("base64"),...(a?{sha:a}:{})}),console.log(`Commit to repo | ok`)}console.log(`Success !`),process.exit(0)}catch(t){console.error(t),e.setFailed(t.message),process.exit(1)}})().catch(()=>process.exit(1))},12541:function(e,t,r){"use strict";function n(e,t,r){const n=new p(e,t,r);process.stdout.write(n.toString()+s.EOL)}function a(e){return l.toCommandValue(e).replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A")}function o(e){return l.toCommandValue(e).replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A").replace(/:/g,"%3A").replace(/,/g,"%2C")}var i=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t["default"]=e,t};Object.defineProperty(t,"__esModule",{value:!0});const s=i(r(12087)),l=r(74332);t.issueCommand=n,t.issue=function(e,t=""){n(e,{},t)};const d="::";class p{constructor(e,t,r){e||(e="missing.command"),this.command=e,this.properties=t,this.message=r}toString(){let e=d+this.command;if(this.properties&&0{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.toCommandValue=function(e){return null===e||void 0===e?"":"string"==typeof e||e instanceof String?e:JSON.stringify(e)}},84873:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Context=void 0;const n=r(35747),a=r(12087);class o{constructor(){if(this.payload={},process.env.GITHUB_EVENT_PATH)if(n.existsSync(process.env.GITHUB_EVENT_PATH))this.payload=JSON.parse(n.readFileSync(process.env.GITHUB_EVENT_PATH,{encoding:"utf8"}));else{const e=process.env.GITHUB_EVENT_PATH;process.stdout.write(`GITHUB_EVENT_PATH ${e} does not exist${a.EOL}`)}this.eventName=process.env.GITHUB_EVENT_NAME,this.sha=process.env.GITHUB_SHA,this.ref=process.env.GITHUB_REF,this.workflow=process.env.GITHUB_WORKFLOW,this.action=process.env.GITHUB_ACTION,this.actor=process.env.GITHUB_ACTOR,this.job=process.env.GITHUB_JOB,this.runNumber=parseInt(process.env.GITHUB_RUN_NUMBER,10),this.runId=parseInt(process.env.GITHUB_RUN_ID,10)}get issue(){const e=this.payload;return Object.assign(Object.assign({},this.repo),{number:(e.issue||e.pull_request||e).number})}get repo(){if(process.env.GITHUB_REPOSITORY){const[e,t]=process.env.GITHUB_REPOSITORY.split("/");return{owner:e,repo:t}}if(this.payload.repository)return{owner:this.payload.repository.owner.login,repo:this.payload.repository.name};throw new Error("context.repo requires a GITHUB_REPOSITORY environment variable like 'owner/repo'")}}t.Context=o},29483:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),a=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e["default"]=t}),o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&n(t,e,r);return a(t,e),t};Object.defineProperty(t,"__esModule",{value:!0}),t.getOctokit=t.context=void 0;const i=o(r(84873)),s=r(24864);t.context=new i.Context,t.getOctokit=function(e,t){return new s.GitHub(s.getOctokitOptions(e,t))}},18145:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),a=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e["default"]=t}),o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&n(t,e,r);return a(t,e),t};Object.defineProperty(t,"__esModule",{value:!0}),t.getApiBaseUrl=t.getProxyAgent=t.getAuthString=void 0;const i=o(r(66305));t.getAuthString=function(e,t){if(!e&&!t.auth)throw new Error("Parameter token or opts.auth is required");else if(e&&t.auth)throw new Error("Parameters token and opts.auth may not both be specified");return"string"==typeof t.auth?t.auth:`token ${e}`},t.getProxyAgent=function(e){const t=new i.HttpClient;return t.getAgent(e)},t.getApiBaseUrl=function(){return process.env.GITHUB_API_URL||"https://api.github.com"}},24864:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),a=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e["default"]=t}),o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&n(t,e,r);return a(t,e),t};Object.defineProperty(t,"__esModule",{value:!0}),t.getOctokitOptions=t.GitHub=t.context=void 0;const i=o(r(84873)),s=o(r(18145)),l=r(40812),d=r(5462),p=r(19227);t.context=new i.Context;const c=s.getApiBaseUrl(),u={baseUrl:c,request:{agent:s.getProxyAgent(c)}};t.GitHub=l.Octokit.plugin(d.restEndpointMethods,p.paginateRest).defaults(u),t.getOctokitOptions=function(e,t){const r=Object.assign({},t||{}),n=s.getAuthString(e,r);return n&&(r.auth=n),r}},66305:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n=r(98605),a=r(57211),o=r(92901);let i;var s;(function(e){e[e.OK=200]="OK",e[e.MultipleChoices=300]="MultipleChoices",e[e.MovedPermanently=301]="MovedPermanently",e[e.ResourceMoved=302]="ResourceMoved",e[e.SeeOther=303]="SeeOther",e[e.NotModified=304]="NotModified",e[e.UseProxy=305]="UseProxy",e[e.SwitchProxy=306]="SwitchProxy",e[e.TemporaryRedirect=307]="TemporaryRedirect",e[e.PermanentRedirect=308]="PermanentRedirect",e[e.BadRequest=400]="BadRequest",e[e.Unauthorized=401]="Unauthorized",e[e.PaymentRequired=402]="PaymentRequired",e[e.Forbidden=403]="Forbidden",e[e.NotFound=404]="NotFound",e[e.MethodNotAllowed=405]="MethodNotAllowed",e[e.NotAcceptable=406]="NotAcceptable",e[e.ProxyAuthenticationRequired=407]="ProxyAuthenticationRequired",e[e.RequestTimeout=408]="RequestTimeout",e[e.Conflict=409]="Conflict",e[e.Gone=410]="Gone",e[e.TooManyRequests=429]="TooManyRequests",e[e.InternalServerError=500]="InternalServerError",e[e.NotImplemented=501]="NotImplemented",e[e.BadGateway=502]="BadGateway",e[e.ServiceUnavailable=503]="ServiceUnavailable",e[e.GatewayTimeout=504]="GatewayTimeout"})(s=t.HttpCodes||(t.HttpCodes={}));var l;(function(e){e.Accept="accept",e.ContentType="content-type"})(l=t.Headers||(t.Headers={}));var d;(function(e){e.ApplicationJson="application/json"})(d=t.MediaTypes||(t.MediaTypes={})),t.getProxyUrl=function(e){let t=o.getProxyUrl(new URL(e));return t?t.href:""};const p=[s.MovedPermanently,s.ResourceMoved,s.SeeOther,s.TemporaryRedirect,s.PermanentRedirect],c=[s.BadGateway,s.ServiceUnavailable,s.GatewayTimeout],u=["OPTIONS","GET","DELETE","HEAD"];class m extends Error{constructor(e,t){super(e),this.name="HttpClientError",this.statusCode=t,Object.setPrototypeOf(this,m.prototype)}}t.HttpClientError=m;class g{constructor(e){this.message=e}readBody(){return new Promise(async e=>{let t=Buffer.alloc(0);this.message.on("data",e=>{t=Buffer.concat([t,e])}),this.message.on("end",()=>{e(t.toString())})})}}t.HttpClientResponse=g,t.isHttps=function(e){let t=new URL(e);return"https:"===t.protocol};class h{constructor(e,t,r){this._ignoreSslError=!1,this._allowRedirects=!0,this._allowRedirectDowngrade=!1,this._maxRedirects=50,this._allowRetries=!1,this._maxRetries=1,this._keepAlive=!1,this._disposed=!1,this.userAgent=e,this.handlers=t||[],this.requestOptions=r,r&&(null!=r.ignoreSslError&&(this._ignoreSslError=r.ignoreSslError),this._socketTimeout=r.socketTimeout,null!=r.allowRedirects&&(this._allowRedirects=r.allowRedirects),null!=r.allowRedirectDowngrade&&(this._allowRedirectDowngrade=r.allowRedirectDowngrade),null!=r.maxRedirects&&(this._maxRedirects=_Mathmax(r.maxRedirects,0)),null!=r.keepAlive&&(this._keepAlive=r.keepAlive),null!=r.allowRetries&&(this._allowRetries=r.allowRetries),null!=r.maxRetries&&(this._maxRetries=r.maxRetries))}options(e,t){return this.request("OPTIONS",e,null,t||{})}get(e,t){return this.request("GET",e,null,t||{})}del(e,t){return this.request("DELETE",e,null,t||{})}post(e,t,r){return this.request("POST",e,t,r||{})}patch(e,t,r){return this.request("PATCH",e,t,r||{})}put(e,t,r){return this.request("PUT",e,t,r||{})}head(e,t){return this.request("HEAD",e,null,t||{})}sendStream(e,t,r,n){return this.request(e,t,r,n)}async getJson(e,t={}){t[l.Accept]=this._getExistingOrDefaultHeader(t,l.Accept,d.ApplicationJson);let r=await this.get(e,t);return this._processResponse(r,this.requestOptions)}async postJson(e,t,r={}){let n=JSON.stringify(t,null,2);r[l.Accept]=this._getExistingOrDefaultHeader(r,l.Accept,d.ApplicationJson),r[l.ContentType]=this._getExistingOrDefaultHeader(r,l.ContentType,d.ApplicationJson);let a=await this.post(e,n,r);return this._processResponse(a,this.requestOptions)}async putJson(e,t,r={}){let n=JSON.stringify(t,null,2);r[l.Accept]=this._getExistingOrDefaultHeader(r,l.Accept,d.ApplicationJson),r[l.ContentType]=this._getExistingOrDefaultHeader(r,l.ContentType,d.ApplicationJson);let a=await this.put(e,n,r);return this._processResponse(a,this.requestOptions)}async patchJson(e,t,r={}){let n=JSON.stringify(t,null,2);r[l.Accept]=this._getExistingOrDefaultHeader(r,l.Accept,d.ApplicationJson),r[l.ContentType]=this._getExistingOrDefaultHeader(r,l.ContentType,d.ApplicationJson);let a=await this.patch(e,n,r);return this._processResponse(a,this.requestOptions)}async request(e,t,r,n){if(this._disposed)throw new Error("Client has already been disposed.");let a=new URL(t),o=this._prepareRequest(e,a,n),i=this._allowRetries&&-1!=u.indexOf(e)?this._maxRetries+1:1,l=0,d;for(;l{this.requestRawWithCallback(e,t,function(e,t){e&&n(e),r(t)})})}requestRawWithCallback(e,t,r){let n;"string"==typeof t&&(e.options.headers["Content-Length"]=Buffer.byteLength(t,"utf8"));let a=!1,o=(e,t)=>{a||(a=!0,r(e,t))},i=e.httpModule.request(e.options,e=>{let t=new g(e);o(null,t)});i.on("socket",e=>{n=e}),i.setTimeout(this._socketTimeout||180000,()=>{n&&n.end(),o(new Error("Request timeout: "+e.options.path),null)}),i.on("error",function(e){o(e,null)}),t&&"string"==typeof t&&i.write(t,"utf8"),t&&"string"!=typeof t?(t.on("close",function(){i.end()}),t.pipe(i)):i.end()}getAgent(e){let t=new URL(e);return this._getAgent(t)}_prepareRequest(e,t,r){const o={parsedUrl:t},i="https:"===o.parsedUrl.protocol;o.httpModule=i?a:n;const s=i?443:80;return o.options={},o.options.host=o.parsedUrl.hostname,o.options.port=o.parsedUrl.port?parseInt(o.parsedUrl.port):s,o.options.path=(o.parsedUrl.pathname||"")+(o.parsedUrl.search||""),o.options.method=e,o.options.headers=this._mergeHeaders(r),null!=this.userAgent&&(o.options.headers["user-agent"]=this.userAgent),o.options.agent=this._getAgent(o.parsedUrl),this.handlers&&this.handlers.forEach(e=>{e.prepareRequest(o.options)}),o}_mergeHeaders(e){const t=e=>Object.keys(e).reduce((t,r)=>(t[r.toLowerCase()]=e[r],t),{});return this.requestOptions&&this.requestOptions.headers?Object.assign({},t(this.requestOptions.headers),t(e)):t(e||{})}_getExistingOrDefaultHeader(e,t,r){let n;return this.requestOptions&&this.requestOptions.headers&&(n=(e=>Object.keys(e).reduce((t,r)=>(t[r.toLowerCase()]=e[r],t),{}))(this.requestOptions.headers)[t]),e[t]||n||r}_getAgent(e){let t=o.getProxyUrl(e),s=t&&t.hostname,l;if(this._keepAlive&&s&&(l=this._proxyAgent),this._keepAlive&&!s&&(l=this._agent),!!l)return l;const d="https:"===e.protocol;let p=100;if(!this.requestOptions||(p=this.requestOptions.maxSockets||n.globalAgent.maxSockets),s){i||(i=r(34603));const e={maxSockets:p,keepAlive:this._keepAlive,proxy:{proxyAuth:`${t.username}:${t.password}`,host:t.hostname,port:t.port}};let n;const a="https:"===t.protocol;n=d?a?i.httpsOverHttps:i.httpsOverHttp:a?i.httpOverHttps:i.httpOverHttp,l=n(e),this._proxyAgent=l}if(this._keepAlive&&!l){const e={keepAlive:this._keepAlive,maxSockets:p};l=d?new a.Agent(e):new n.Agent(e),this._agent=l}return l||(l=d?a.globalAgent:n.globalAgent),d&&this._ignoreSslError&&(l.options=Object.assign(l.options||{},{rejectUnauthorized:!1})),l}_performExponentialBackoff(e){e=_Mathmin(10,e);const t=5*_Mathpow(2,e);return new Promise(e=>setTimeout(()=>e(),t))}static dateTimeDeserializer(e,t){if("string"==typeof t){let e=new Date(t);if(!isNaN(e.valueOf()))return e}return t}async _processResponse(e,t){return new Promise(async(r,n)=>{const a=e.message.statusCode,o={statusCode:a,result:null,headers:{}};a==s.NotFound&&r(o);let i,l;try{l=await e.readBody(),l&&0{"use strict";function r(e){if(!e.hostname)return!1;let t=process.env.no_proxy||process.env.NO_PROXY||"";if(!t)return!1;let r;e.port?r=+e.port:"http:"===e.protocol?r=80:"https:"===e.protocol&&(r=443);let n=[e.hostname.toUpperCase()];"number"==typeof r&&n.push(`${n[0]}:${r}`);for(let r of t.split(",").map(e=>e.trim().toUpperCase()).filter(e=>e))if(n.some(e=>e===r))return!0;return!1}Object.defineProperty(t,"__esModule",{value:!0}),t.getProxyUrl=function(e){let t="https:"===e.protocol,n;if(r(e))return n;let a;return a=t?process.env.https_proxy||process.env.HTTPS_PROXY:process.env.http_proxy||process.env.HTTP_PROXY,a&&(n=new URL(a)),n},t.checkBypass=r},22899:(e,t)=>{"use strict";async function r(e){const t=3===e.split(/\./).length?"app":/^v\d+\./.test(e)?"installation":"oauth";return{type:"token",token:e,tokenType:t}}function n(e){return 3===e.split(/\./).length?`bearer ${e}`:`token ${e}`}async function a(e,t,r,a){const o=t.endpoint.merge(r,a);return o.headers.authorization=n(e),t(o)}Object.defineProperty(t,"__esModule",{value:!0});t.createTokenAuth=function(e){if(!e)throw new Error("[@octokit/auth-token] No token passed to createTokenAuth");if("string"!=typeof e)throw new Error("[@octokit/auth-token] Token passed to createTokenAuth is not a string");return e=e.replace(/^(token|bearer) +/i,""),Object.assign(r.bind(null,e),{hook:a.bind(null,e)})}},40812:(e,t,r)=>{"use strict";function n(e,t){if(null==e)return{};var r={},n=Object.keys(e),a,o;for(o=0;o{},info:()=>{},warn:console.warn.bind(console),error:console.error.bind(console)},e.log),this.hook=t,!!e.authStrategy){const{authStrategy:r}=e,n=a(e,["authStrategy"]),o=r(Object.assign({request:this.request,log:this.log,octokit:this,octokitOptions:n},e.auth));t.wrap("request",o.hook),this.auth=o}else if(!e.auth)this.auth=async()=>({type:"unauthenticated"});else{const r=d.createTokenAuth(e.auth);t.wrap("request",r.hook),this.auth=r}const n=this.constructor;n.plugins.forEach(t=>{Object.assign(this,t(this,e))})}static defaults(e){const t=class extends this{constructor(...t){const r=t[0]||{};return"function"==typeof e?void super(e(r)):void super(Object.assign({},e,r,r.userAgent&&e.userAgent?{userAgent:`${r.userAgent} ${e.userAgent}`}:null))}};return t}static plugin(...e){var t;const r=this.plugins,n=(t=class extends this{},t.plugins=r.concat(e.filter(e=>!r.includes(e))),t);return n}}p.VERSION="3.2.1",p.plugins=[],t.Octokit=p},70412:(e,t,r)=>{"use strict";function n(e){return e?Object.keys(e).reduce((t,r)=>(t[r.toLowerCase()]=e[r],t),{}):{}}function a(e,t){const r=Object.assign({},e);return Object.keys(t).forEach(n=>{k.isPlainObject(t[n])?n in e?r[n]=a(e[n],t[n]):Object.assign(r,{[n]:t[n]}):Object.assign(r,{[n]:t[n]})}),r}function o(e){for(const t in e)void 0===e[t]&&delete e[t];return e}function i(e,t,r){if("string"==typeof t){let[e,n]=t.split(" ");r=Object.assign(n?{method:e,url:n}:{url:e},r)}else r=Object.assign({},t);r.headers=n(r.headers),o(r),o(r.headers);const i=a(e||{},r);return e&&e.mediaType.previews.length&&(i.mediaType.previews=e.mediaType.previews.filter(e=>!i.mediaType.previews.includes(e)).concat(i.mediaType.previews)),i.mediaType.previews=i.mediaType.previews.map(e=>e.replace(/-preview/,"")),i}function s(e,t){const r=/\?/.test(e)?"&":"?",n=Object.keys(t);return 0===n.length?e:e+r+n.map(e=>"q"===e?"q="+t.q.split("+").map(encodeURIComponent).join("+"):`${e}=${encodeURIComponent(t[e])}`).join("&")}function l(e){return e.replace(/^\W+|\W+$/g,"").split(/,/)}function d(e){const t=e.match(w);return t?t.map(l).reduce((e,t)=>e.concat(t),[]):[]}function p(e,t){return Object.keys(e).filter(e=>!t.includes(e)).reduce((t,r)=>(t[r]=e[r],t),{})}function c(e){return e.split(/(%[0-9A-Fa-f]{2})/g).map(function(e){return /%[0-9A-Fa-f]/.test(e)||(e=encodeURI(e).replace(/%5B/g,"[").replace(/%5D/g,"]")),e}).join("")}function u(e){return encodeURIComponent(e).replace(/[!'()*]/g,function(e){return"%"+e.charCodeAt(0).toString(16).toUpperCase()})}function m(e,t,r){return t="+"===e||"#"===e?c(t):u(t),r?u(r)+"="+t:t}function g(e){return void 0!==e&&null!==e}function h(e){return";"===e||"&"===e||"?"===e}function f(e,t,r,n){var a=e[r],o=[];if(!(g(a)&&""!==a))";"===t?g(a)&&o.push(u(r)):""===a&&("&"===t||"?"===t)?o.push(u(r)+"="):""===a&&o.push("");else if("string"==typeof a||"number"==typeof a||"boolean"==typeof a)a=a.toString(),n&&"*"!==n&&(a=a.substring(0,parseInt(n,10))),o.push(m(t,a,h(t)?r:""));else if("*"===n)Array.isArray(a)?a.filter(g).forEach(function(e){o.push(m(t,e,h(t)?r:""))}):Object.keys(a).forEach(function(e){g(a[e])&&o.push(m(t,a[e],e))});else{const e=[];Array.isArray(a)?a.filter(g).forEach(function(r){e.push(m(t,r))}):Object.keys(a).forEach(function(r){g(a[r])&&(e.push(u(r)),e.push(m(t,a[r].toString())))}),h(t)?o.push(u(r)+"="+e.join(",")):0!==e.length&&o.push(e.join(","))}return o}function y(e){return{expand:b.bind(null,e)}}function b(e,t){var r=["+","#",".","/",";","?","&"];return e.replace(/\{([^\{\}]+)\}|([^\{\}]+)/g,function(e,n,a){if(n){let e="";const a=[];if(-1!==r.indexOf(n.charAt(0))&&(e=n.charAt(0),n=n.substr(1)),n.split(/,/g).forEach(function(r){var n=/([^:\*]*)(?::(\d+)|(\*))?/.exec(r);a.push(f(t,e,n[1],n[2]||n[3]))}),e&&"+"!==e){var o=",";return"?"===e?o="&":"#"!==e&&(o=e),(0===a.length?"":e)+a.join(o)}return a.join(",")}return c(a)})}function S(e){let t=e.method.toUpperCase(),r=(e.url||"/").replace(/:([a-z]\w+)/g,"{$1}"),n=Object.assign({},e.headers),a=p(e,["method","baseUrl","url","headers","request","mediaType"]),o;const i=d(r);r=y(r).expand(a),/^http/.test(r)||(r=e.baseUrl+r);const l=Object.keys(e).filter(e=>i.includes(e)).concat("baseUrl"),c=p(a,l),u=/application\/octet-stream/i.test(n.accept);if(!u&&(e.mediaType.format&&(n.accept=n.accept.split(/,/).map(t=>t.replace(/application\/vnd(\.\w+)(\.v3)?(\.\w+)?(\+json)?$/,`application/vnd$1$2.${e.mediaType.format}`)).join(",")),e.mediaType.previews.length)){const t=n.accept.match(/[\w-]+(?=-preview)/g)||[];n.accept=t.concat(e.mediaType.previews).map(t=>{const r=e.mediaType.format?`.${e.mediaType.format}`:"+json";return`application/vnd.github.${t}-preview${r}`}).join(",")}return["GET","HEAD"].includes(t)?r=s(r,c):"data"in c?o=c.data:Object.keys(c).length?o=c:n["content-length"]=0,n["content-type"]||"undefined"==typeof o||(n["content-type"]="application/json; charset=utf-8"),["PATCH","PUT"].includes(t)&&"undefined"==typeof o&&(o=""),Object.assign({method:t,url:r,headers:n},"undefined"==typeof o?null:{body:o},e.request?{request:e.request}:null)}function x(e,t,r){return S(i(e,t,r))}function v(e,t){const r=i(e,t),n=x.bind(null,r);return Object.assign(n,{DEFAULTS:r,defaults:v.bind(null,r),merge:i.bind(null,r),parse:S})}Object.defineProperty(t,"__esModule",{value:!0});var k=r(80641),C=r(1857);const w=/\{[^}]+\}/g,_=`octokit-endpoint.js/${"6.0.9"} ${C.getUserAgent()}`,T=v(null,{method:"GET",baseUrl:"https://api.github.com",headers:{accept:"application/vnd.github.v3+json","user-agent":_},mediaType:{format:"",previews:[]}});t.endpoint=T},3584:(e,t,r)=>{"use strict";function n(e,t,r){if("string"==typeof t&&r&&"query"in r)return Promise.reject(new Error(`[@octokit/graphql] "query" cannot be used as variable name`));const n="string"==typeof t?Object.assign({query:t},r):t,a=Object.keys(n).reduce((e,t)=>l.includes(t)?(e[t]=n[t],e):(e.variables||(e.variables={}),e.variables[t]=n[t],e),{}),o=n.baseUrl||e.endpoint.DEFAULTS.baseUrl;return d.test(o)&&(a.url=o.replace(d,"/api/graphql")),e(a).then(e=>{if(e.data.errors){const t={};for(const r of Object.keys(e.headers))t[r]=e.headers[r];throw new s(a,{headers:t,data:e.data})}return e.data.data})}function a(e,t){const r=e.defaults(t);return Object.assign((e,t)=>n(r,e,t),{defaults:a.bind(null,r),endpoint:o.request.endpoint})}Object.defineProperty(t,"__esModule",{value:!0});var o=r(48826),i=r(1857);class s extends Error{constructor(e,t){const r=t.data.errors[0].message;super(r),Object.assign(this,t.data),Object.assign(this,{headers:t.headers}),this.name="GraphqlError",this.request=e,Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}}const l=["method","baseUrl","url","headers","request","query","mediaType"],d=/\/api\/v3\/?$/,p=a(o.request,{headers:{"user-agent":`octokit-graphql.js/${"4.5.7"} ${i.getUserAgent()}`},method:"POST",url:"/graphql"});t.graphql=p,t.withCustomRequest=function(e){return a(e,{method:"POST",url:"/graphql"})}},19227:(e,t)=>{"use strict";function r(e){const t="total_count"in e.data&&!("url"in e.data);if(!t)return e;const r=e.data.incomplete_results,n=e.data.repository_selection,a=e.data.total_count;delete e.data.incomplete_results,delete e.data.repository_selection,delete e.data.total_count;const o=Object.keys(e.data)[0],i=e.data[o];return e.data=i,"undefined"!=typeof r&&(e.data.incomplete_results=r),"undefined"!=typeof n&&(e.data.repository_selection=n),e.data.total_count=a,e}function n(e,t,n){const a="function"==typeof t?t.endpoint(n):e.request.endpoint(t,n),o="function"==typeof t?t:e.request,i=a.method,s=a.headers;let l=a.url;return{[Symbol.asyncIterator]:()=>({async next(){if(!l)return{done:!0};const e=await o({method:i,url:l,headers:s}),t=r(e);return l=((t.headers.link||"").match(/<([^>]+)>;\s*rel="next"/)||[])[1],{value:t}}})}}function a(e,t,r,a){return"function"==typeof r&&(a=r,r=void 0),o(e,[],n(e,t,r)[Symbol.asyncIterator](),a)}function o(e,t,r,n){return r.next().then(a=>{if(a.done)return t;let i=!1;return t=t.concat(n?n(a.value,function(){i=!0}):a.value.data),i?t:o(e,t,r,n)})}function i(e){return{paginate:Object.assign(a.bind(null,e),{iterator:n.bind(null,e)})}}Object.defineProperty(t,"__esModule",{value:!0});const s=Object.assign(a,{iterator:n});i.VERSION="2.6.0",t.composePaginateRest=s,t.paginateRest=i},5462:(e,t)=>{"use strict";function r(e,t){const r={};for(const[a,o]of Object.entries(t))for(const[t,i]of Object.entries(o)){const[o,s,l]=i,[d,p]=o.split(/ /),c=Object.assign({method:d,url:p},s);r[a]||(r[a]={});const u=r[a];if(l){u[t]=n(e,a,t,c,l);continue}u[t]=e.request.defaults(c)}return r}function n(e,t,r,n,a){function o(...n){let o=i.endpoint.merge(...n);if(a.mapToData)return o=Object.assign({},o,{data:o[a.mapToData],[a.mapToData]:void 0}),i(o);if(a.renamed){const[n,o]=a.renamed;e.log.warn(`octokit.${t}.${r}() has been renamed to octokit.${n}.${o}()`)}if(a.deprecated&&e.log.warn(a.deprecated),a.renamedParameters){const o=i.endpoint.merge(...n);for(const[n,i]of Object.entries(a.renamedParameters))n in o&&(e.log.warn(`"${n}" parameter is deprecated for "octokit.${t}.${r}()". Use "${i}" instead`),i in o||(o[i]=o[n]),delete o[n]);return i(o)}return i(...n)}const i=e.request.defaults(n);return Object.assign(o,i)}function a(e){return r(e,o)}Object.defineProperty(t,"__esModule",{value:!0});const o={actions:{addSelectedRepoToOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],cancelWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/cancel"],createOrUpdateOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/actions/secrets/{secret_name}"],createRegistrationTokenForOrg:["POST /orgs/{org}/actions/runners/registration-token"],createRegistrationTokenForRepo:["POST /repos/{owner}/{repo}/actions/runners/registration-token"],createRemoveTokenForOrg:["POST /orgs/{org}/actions/runners/remove-token"],createRemoveTokenForRepo:["POST /repos/{owner}/{repo}/actions/runners/remove-token"],createWorkflowDispatch:["POST /repos/{owner}/{repo}/actions/workflows/{workflow_id}/dispatches"],deleteArtifact:["DELETE /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],deleteOrgSecret:["DELETE /orgs/{org}/actions/secrets/{secret_name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/actions/secrets/{secret_name}"],deleteSelfHostedRunnerFromOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}"],deleteSelfHostedRunnerFromRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}"],deleteWorkflowRun:["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}"],deleteWorkflowRunLogs:["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}/logs"],downloadArtifact:["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}/{archive_format}"],downloadJobLogsForWorkflowRun:["GET /repos/{owner}/{repo}/actions/jobs/{job_id}/logs"],downloadWorkflowRunLogs:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/logs"],getArtifact:["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],getJobForWorkflowRun:["GET /repos/{owner}/{repo}/actions/jobs/{job_id}"],getOrgPublicKey:["GET /orgs/{org}/actions/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/actions/secrets/{secret_name}"],getRepoPublicKey:["GET /repos/{owner}/{repo}/actions/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/actions/secrets/{secret_name}"],getSelfHostedRunnerForOrg:["GET /orgs/{org}/actions/runners/{runner_id}"],getSelfHostedRunnerForRepo:["GET /repos/{owner}/{repo}/actions/runners/{runner_id}"],getWorkflow:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}"],getWorkflowRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}"],getWorkflowRunUsage:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/timing"],getWorkflowUsage:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/timing"],listArtifactsForRepo:["GET /repos/{owner}/{repo}/actions/artifacts"],listJobsForWorkflowRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs"],listOrgSecrets:["GET /orgs/{org}/actions/secrets"],listRepoSecrets:["GET /repos/{owner}/{repo}/actions/secrets"],listRepoWorkflows:["GET /repos/{owner}/{repo}/actions/workflows"],listRunnerApplicationsForOrg:["GET /orgs/{org}/actions/runners/downloads"],listRunnerApplicationsForRepo:["GET /repos/{owner}/{repo}/actions/runners/downloads"],listSelectedReposForOrgSecret:["GET /orgs/{org}/actions/secrets/{secret_name}/repositories"],listSelfHostedRunnersForOrg:["GET /orgs/{org}/actions/runners"],listSelfHostedRunnersForRepo:["GET /repos/{owner}/{repo}/actions/runners"],listWorkflowRunArtifacts:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts"],listWorkflowRuns:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs"],listWorkflowRunsForRepo:["GET /repos/{owner}/{repo}/actions/runs"],reRunWorkflow:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories"]},activity:{checkRepoIsStarredByAuthenticatedUser:["GET /user/starred/{owner}/{repo}"],deleteRepoSubscription:["DELETE /repos/{owner}/{repo}/subscription"],deleteThreadSubscription:["DELETE /notifications/threads/{thread_id}/subscription"],getFeeds:["GET /feeds"],getRepoSubscription:["GET /repos/{owner}/{repo}/subscription"],getThread:["GET /notifications/threads/{thread_id}"],getThreadSubscriptionForAuthenticatedUser:["GET /notifications/threads/{thread_id}/subscription"],listEventsForAuthenticatedUser:["GET /users/{username}/events"],listNotificationsForAuthenticatedUser:["GET /notifications"],listOrgEventsForAuthenticatedUser:["GET /users/{username}/events/orgs/{org}"],listPublicEvents:["GET /events"],listPublicEventsForRepoNetwork:["GET /networks/{owner}/{repo}/events"],listPublicEventsForUser:["GET /users/{username}/events/public"],listPublicOrgEvents:["GET /orgs/{org}/events"],listReceivedEventsForUser:["GET /users/{username}/received_events"],listReceivedPublicEventsForUser:["GET /users/{username}/received_events/public"],listRepoEvents:["GET /repos/{owner}/{repo}/events"],listRepoNotificationsForAuthenticatedUser:["GET /repos/{owner}/{repo}/notifications"],listReposStarredByAuthenticatedUser:["GET /user/starred"],listReposStarredByUser:["GET /users/{username}/starred"],listReposWatchedByUser:["GET /users/{username}/subscriptions"],listStargazersForRepo:["GET /repos/{owner}/{repo}/stargazers"],listWatchedReposForAuthenticatedUser:["GET /user/subscriptions"],listWatchersForRepo:["GET /repos/{owner}/{repo}/subscribers"],markNotificationsAsRead:["PUT /notifications"],markRepoNotificationsAsRead:["PUT /repos/{owner}/{repo}/notifications"],markThreadAsRead:["PATCH /notifications/threads/{thread_id}"],setRepoSubscription:["PUT /repos/{owner}/{repo}/subscription"],setThreadSubscription:["PUT /notifications/threads/{thread_id}/subscription"],starRepoForAuthenticatedUser:["PUT /user/starred/{owner}/{repo}"],unstarRepoForAuthenticatedUser:["DELETE /user/starred/{owner}/{repo}"]},apps:{addRepoToInstallation:["PUT /user/installations/{installation_id}/repositories/{repository_id}"],checkToken:["POST /applications/{client_id}/token"],createContentAttachment:["POST /content_references/{content_reference_id}/attachments",{mediaType:{previews:["corsair"]}}],createFromManifest:["POST /app-manifests/{code}/conversions"],createInstallationAccessToken:["POST /app/installations/{installation_id}/access_tokens"],deleteAuthorization:["DELETE /applications/{client_id}/grant"],deleteInstallation:["DELETE /app/installations/{installation_id}"],deleteToken:["DELETE /applications/{client_id}/token"],getAuthenticated:["GET /app"],getBySlug:["GET /apps/{app_slug}"],getInstallation:["GET /app/installations/{installation_id}"],getOrgInstallation:["GET /orgs/{org}/installation"],getRepoInstallation:["GET /repos/{owner}/{repo}/installation"],getSubscriptionPlanForAccount:["GET /marketplace_listing/accounts/{account_id}"],getSubscriptionPlanForAccountStubbed:["GET /marketplace_listing/stubbed/accounts/{account_id}"],getUserInstallation:["GET /users/{username}/installation"],listAccountsForPlan:["GET /marketplace_listing/plans/{plan_id}/accounts"],listAccountsForPlanStubbed:["GET /marketplace_listing/stubbed/plans/{plan_id}/accounts"],listInstallationReposForAuthenticatedUser:["GET /user/installations/{installation_id}/repositories"],listInstallations:["GET /app/installations"],listInstallationsForAuthenticatedUser:["GET /user/installations"],listPlans:["GET /marketplace_listing/plans"],listPlansStubbed:["GET /marketplace_listing/stubbed/plans"],listReposAccessibleToInstallation:["GET /installation/repositories"],listSubscriptionsForAuthenticatedUser:["GET /user/marketplace_purchases"],listSubscriptionsForAuthenticatedUserStubbed:["GET /user/marketplace_purchases/stubbed"],removeRepoFromInstallation:["DELETE /user/installations/{installation_id}/repositories/{repository_id}"],resetToken:["PATCH /applications/{client_id}/token"],revokeInstallationAccessToken:["DELETE /installation/token"],suspendInstallation:["PUT /app/installations/{installation_id}/suspended"],unsuspendInstallation:["DELETE /app/installations/{installation_id}/suspended"]},billing:{getGithubActionsBillingOrg:["GET /orgs/{org}/settings/billing/actions"],getGithubActionsBillingUser:["GET /users/{username}/settings/billing/actions"],getGithubPackagesBillingOrg:["GET /orgs/{org}/settings/billing/packages"],getGithubPackagesBillingUser:["GET /users/{username}/settings/billing/packages"],getSharedStorageBillingOrg:["GET /orgs/{org}/settings/billing/shared-storage"],getSharedStorageBillingUser:["GET /users/{username}/settings/billing/shared-storage"]},checks:{create:["POST /repos/{owner}/{repo}/check-runs",{mediaType:{previews:["antiope"]}}],createSuite:["POST /repos/{owner}/{repo}/check-suites",{mediaType:{previews:["antiope"]}}],get:["GET /repos/{owner}/{repo}/check-runs/{check_run_id}",{mediaType:{previews:["antiope"]}}],getSuite:["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}",{mediaType:{previews:["antiope"]}}],listAnnotations:["GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations",{mediaType:{previews:["antiope"]}}],listForRef:["GET /repos/{owner}/{repo}/commits/{ref}/check-runs",{mediaType:{previews:["antiope"]}}],listForSuite:["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs",{mediaType:{previews:["antiope"]}}],listSuitesForRef:["GET /repos/{owner}/{repo}/commits/{ref}/check-suites",{mediaType:{previews:["antiope"]}}],rerequestSuite:["POST /repos/{owner}/{repo}/check-suites/{check_suite_id}/rerequest",{mediaType:{previews:["antiope"]}}],setSuitesPreferences:["PATCH /repos/{owner}/{repo}/check-suites/preferences",{mediaType:{previews:["antiope"]}}],update:["PATCH /repos/{owner}/{repo}/check-runs/{check_run_id}",{mediaType:{previews:["antiope"]}}]},codeScanning:{getAlert:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}",{},{renamedParameters:{alert_id:"alert_number"}}],listAlertsForRepo:["GET /repos/{owner}/{repo}/code-scanning/alerts"],listRecentAnalyses:["GET /repos/{owner}/{repo}/code-scanning/analyses"],updateAlert:["PATCH /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}"],uploadSarif:["POST /repos/{owner}/{repo}/code-scanning/sarifs"]},codesOfConduct:{getAllCodesOfConduct:["GET /codes_of_conduct",{mediaType:{previews:["scarlet-witch"]}}],getConductCode:["GET /codes_of_conduct/{key}",{mediaType:{previews:["scarlet-witch"]}}],getForRepo:["GET /repos/{owner}/{repo}/community/code_of_conduct",{mediaType:{previews:["scarlet-witch"]}}]},emojis:{get:["GET /emojis"]},gists:{checkIsStarred:["GET /gists/{gist_id}/star"],create:["POST /gists"],createComment:["POST /gists/{gist_id}/comments"],delete:["DELETE /gists/{gist_id}"],deleteComment:["DELETE /gists/{gist_id}/comments/{comment_id}"],fork:["POST /gists/{gist_id}/forks"],get:["GET /gists/{gist_id}"],getComment:["GET /gists/{gist_id}/comments/{comment_id}"],getRevision:["GET /gists/{gist_id}/{sha}"],list:["GET /gists"],listComments:["GET /gists/{gist_id}/comments"],listCommits:["GET /gists/{gist_id}/commits"],listForUser:["GET /users/{username}/gists"],listForks:["GET /gists/{gist_id}/forks"],listPublic:["GET /gists/public"],listStarred:["GET /gists/starred"],star:["PUT /gists/{gist_id}/star"],unstar:["DELETE /gists/{gist_id}/star"],update:["PATCH /gists/{gist_id}"],updateComment:["PATCH /gists/{gist_id}/comments/{comment_id}"]},git:{createBlob:["POST /repos/{owner}/{repo}/git/blobs"],createCommit:["POST /repos/{owner}/{repo}/git/commits"],createRef:["POST /repos/{owner}/{repo}/git/refs"],createTag:["POST /repos/{owner}/{repo}/git/tags"],createTree:["POST /repos/{owner}/{repo}/git/trees"],deleteRef:["DELETE /repos/{owner}/{repo}/git/refs/{ref}"],getBlob:["GET /repos/{owner}/{repo}/git/blobs/{file_sha}"],getCommit:["GET /repos/{owner}/{repo}/git/commits/{commit_sha}"],getRef:["GET /repos/{owner}/{repo}/git/ref/{ref}"],getTag:["GET /repos/{owner}/{repo}/git/tags/{tag_sha}"],getTree:["GET /repos/{owner}/{repo}/git/trees/{tree_sha}"],listMatchingRefs:["GET /repos/{owner}/{repo}/git/matching-refs/{ref}"],updateRef:["PATCH /repos/{owner}/{repo}/git/refs/{ref}"]},gitignore:{getAllTemplates:["GET /gitignore/templates"],getTemplate:["GET /gitignore/templates/{name}"]},interactions:{getRestrictionsForOrg:["GET /orgs/{org}/interaction-limits",{mediaType:{previews:["sombra"]}}],getRestrictionsForRepo:["GET /repos/{owner}/{repo}/interaction-limits",{mediaType:{previews:["sombra"]}}],removeRestrictionsForOrg:["DELETE /orgs/{org}/interaction-limits",{mediaType:{previews:["sombra"]}}],removeRestrictionsForRepo:["DELETE /repos/{owner}/{repo}/interaction-limits",{mediaType:{previews:["sombra"]}}],setRestrictionsForOrg:["PUT /orgs/{org}/interaction-limits",{mediaType:{previews:["sombra"]}}],setRestrictionsForRepo:["PUT /repos/{owner}/{repo}/interaction-limits",{mediaType:{previews:["sombra"]}}]},issues:{addAssignees:["POST /repos/{owner}/{repo}/issues/{issue_number}/assignees"],addLabels:["POST /repos/{owner}/{repo}/issues/{issue_number}/labels"],checkUserCanBeAssigned:["GET /repos/{owner}/{repo}/assignees/{assignee}"],create:["POST /repos/{owner}/{repo}/issues"],createComment:["POST /repos/{owner}/{repo}/issues/{issue_number}/comments"],createLabel:["POST /repos/{owner}/{repo}/labels"],createMilestone:["POST /repos/{owner}/{repo}/milestones"],deleteComment:["DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}"],deleteLabel:["DELETE /repos/{owner}/{repo}/labels/{name}"],deleteMilestone:["DELETE /repos/{owner}/{repo}/milestones/{milestone_number}"],get:["GET /repos/{owner}/{repo}/issues/{issue_number}"],getComment:["GET /repos/{owner}/{repo}/issues/comments/{comment_id}"],getEvent:["GET /repos/{owner}/{repo}/issues/events/{event_id}"],getLabel:["GET /repos/{owner}/{repo}/labels/{name}"],getMilestone:["GET /repos/{owner}/{repo}/milestones/{milestone_number}"],list:["GET /issues"],listAssignees:["GET /repos/{owner}/{repo}/assignees"],listComments:["GET /repos/{owner}/{repo}/issues/{issue_number}/comments"],listCommentsForRepo:["GET /repos/{owner}/{repo}/issues/comments"],listEvents:["GET /repos/{owner}/{repo}/issues/{issue_number}/events"],listEventsForRepo:["GET /repos/{owner}/{repo}/issues/events"],listEventsForTimeline:["GET /repos/{owner}/{repo}/issues/{issue_number}/timeline",{mediaType:{previews:["mockingbird"]}}],listForAuthenticatedUser:["GET /user/issues"],listForOrg:["GET /orgs/{org}/issues"],listForRepo:["GET /repos/{owner}/{repo}/issues"],listLabelsForMilestone:["GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels"],listLabelsForRepo:["GET /repos/{owner}/{repo}/labels"],listLabelsOnIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/labels"],listMilestones:["GET /repos/{owner}/{repo}/milestones"],lock:["PUT /repos/{owner}/{repo}/issues/{issue_number}/lock"],removeAllLabels:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels"],removeAssignees:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/assignees"],removeLabel:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels/{name}"],setLabels:["PUT /repos/{owner}/{repo}/issues/{issue_number}/labels"],unlock:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/lock"],update:["PATCH /repos/{owner}/{repo}/issues/{issue_number}"],updateComment:["PATCH /repos/{owner}/{repo}/issues/comments/{comment_id}"],updateLabel:["PATCH /repos/{owner}/{repo}/labels/{name}"],updateMilestone:["PATCH /repos/{owner}/{repo}/milestones/{milestone_number}"]},licenses:{get:["GET /licenses/{license}"],getAllCommonlyUsed:["GET /licenses"],getForRepo:["GET /repos/{owner}/{repo}/license"]},markdown:{render:["POST /markdown"],renderRaw:["POST /markdown/raw",{headers:{"content-type":"text/plain; charset=utf-8"}}]},meta:{get:["GET /meta"]},migrations:{cancelImport:["DELETE /repos/{owner}/{repo}/import"],deleteArchiveForAuthenticatedUser:["DELETE /user/migrations/{migration_id}/archive",{mediaType:{previews:["wyandotte"]}}],deleteArchiveForOrg:["DELETE /orgs/{org}/migrations/{migration_id}/archive",{mediaType:{previews:["wyandotte"]}}],downloadArchiveForOrg:["GET /orgs/{org}/migrations/{migration_id}/archive",{mediaType:{previews:["wyandotte"]}}],getArchiveForAuthenticatedUser:["GET /user/migrations/{migration_id}/archive",{mediaType:{previews:["wyandotte"]}}],getCommitAuthors:["GET /repos/{owner}/{repo}/import/authors"],getImportStatus:["GET /repos/{owner}/{repo}/import"],getLargeFiles:["GET /repos/{owner}/{repo}/import/large_files"],getStatusForAuthenticatedUser:["GET /user/migrations/{migration_id}",{mediaType:{previews:["wyandotte"]}}],getStatusForOrg:["GET /orgs/{org}/migrations/{migration_id}",{mediaType:{previews:["wyandotte"]}}],listForAuthenticatedUser:["GET /user/migrations",{mediaType:{previews:["wyandotte"]}}],listForOrg:["GET /orgs/{org}/migrations",{mediaType:{previews:["wyandotte"]}}],listReposForOrg:["GET /orgs/{org}/migrations/{migration_id}/repositories",{mediaType:{previews:["wyandotte"]}}],listReposForUser:["GET /user/migrations/{migration_id}/repositories",{mediaType:{previews:["wyandotte"]}}],mapCommitAuthor:["PATCH /repos/{owner}/{repo}/import/authors/{author_id}"],setLfsPreference:["PATCH /repos/{owner}/{repo}/import/lfs"],startForAuthenticatedUser:["POST /user/migrations"],startForOrg:["POST /orgs/{org}/migrations"],startImport:["PUT /repos/{owner}/{repo}/import"],unlockRepoForAuthenticatedUser:["DELETE /user/migrations/{migration_id}/repos/{repo_name}/lock",{mediaType:{previews:["wyandotte"]}}],unlockRepoForOrg:["DELETE /orgs/{org}/migrations/{migration_id}/repos/{repo_name}/lock",{mediaType:{previews:["wyandotte"]}}],updateImport:["PATCH /repos/{owner}/{repo}/import"]},orgs:{blockUser:["PUT /orgs/{org}/blocks/{username}"],checkBlockedUser:["GET /orgs/{org}/blocks/{username}"],checkMembershipForUser:["GET /orgs/{org}/members/{username}"],checkPublicMembershipForUser:["GET /orgs/{org}/public_members/{username}"],convertMemberToOutsideCollaborator:["PUT /orgs/{org}/outside_collaborators/{username}"],createInvitation:["POST /orgs/{org}/invitations"],createWebhook:["POST /orgs/{org}/hooks"],deleteWebhook:["DELETE /orgs/{org}/hooks/{hook_id}"],get:["GET /orgs/{org}"],getMembershipForAuthenticatedUser:["GET /user/memberships/orgs/{org}"],getMembershipForUser:["GET /orgs/{org}/memberships/{username}"],getWebhook:["GET /orgs/{org}/hooks/{hook_id}"],list:["GET /organizations"],listAppInstallations:["GET /orgs/{org}/installations"],listBlockedUsers:["GET /orgs/{org}/blocks"],listForAuthenticatedUser:["GET /user/orgs"],listForUser:["GET /users/{username}/orgs"],listInvitationTeams:["GET /orgs/{org}/invitations/{invitation_id}/teams"],listMembers:["GET /orgs/{org}/members"],listMembershipsForAuthenticatedUser:["GET /user/memberships/orgs"],listOutsideCollaborators:["GET /orgs/{org}/outside_collaborators"],listPendingInvitations:["GET /orgs/{org}/invitations"],listPublicMembers:["GET /orgs/{org}/public_members"],listWebhooks:["GET /orgs/{org}/hooks"],pingWebhook:["POST /orgs/{org}/hooks/{hook_id}/pings"],removeMember:["DELETE /orgs/{org}/members/{username}"],removeMembershipForUser:["DELETE /orgs/{org}/memberships/{username}"],removeOutsideCollaborator:["DELETE /orgs/{org}/outside_collaborators/{username}"],removePublicMembershipForAuthenticatedUser:["DELETE /orgs/{org}/public_members/{username}"],setMembershipForUser:["PUT /orgs/{org}/memberships/{username}"],setPublicMembershipForAuthenticatedUser:["PUT /orgs/{org}/public_members/{username}"],unblockUser:["DELETE /orgs/{org}/blocks/{username}"],update:["PATCH /orgs/{org}"],updateMembershipForAuthenticatedUser:["PATCH /user/memberships/orgs/{org}"],updateWebhook:["PATCH /orgs/{org}/hooks/{hook_id}"]},projects:{addCollaborator:["PUT /projects/{project_id}/collaborators/{username}",{mediaType:{previews:["inertia"]}}],createCard:["POST /projects/columns/{column_id}/cards",{mediaType:{previews:["inertia"]}}],createColumn:["POST /projects/{project_id}/columns",{mediaType:{previews:["inertia"]}}],createForAuthenticatedUser:["POST /user/projects",{mediaType:{previews:["inertia"]}}],createForOrg:["POST /orgs/{org}/projects",{mediaType:{previews:["inertia"]}}],createForRepo:["POST /repos/{owner}/{repo}/projects",{mediaType:{previews:["inertia"]}}],delete:["DELETE /projects/{project_id}",{mediaType:{previews:["inertia"]}}],deleteCard:["DELETE /projects/columns/cards/{card_id}",{mediaType:{previews:["inertia"]}}],deleteColumn:["DELETE /projects/columns/{column_id}",{mediaType:{previews:["inertia"]}}],get:["GET /projects/{project_id}",{mediaType:{previews:["inertia"]}}],getCard:["GET /projects/columns/cards/{card_id}",{mediaType:{previews:["inertia"]}}],getColumn:["GET /projects/columns/{column_id}",{mediaType:{previews:["inertia"]}}],getPermissionForUser:["GET /projects/{project_id}/collaborators/{username}/permission",{mediaType:{previews:["inertia"]}}],listCards:["GET /projects/columns/{column_id}/cards",{mediaType:{previews:["inertia"]}}],listCollaborators:["GET /projects/{project_id}/collaborators",{mediaType:{previews:["inertia"]}}],listColumns:["GET /projects/{project_id}/columns",{mediaType:{previews:["inertia"]}}],listForOrg:["GET /orgs/{org}/projects",{mediaType:{previews:["inertia"]}}],listForRepo:["GET /repos/{owner}/{repo}/projects",{mediaType:{previews:["inertia"]}}],listForUser:["GET /users/{username}/projects",{mediaType:{previews:["inertia"]}}],moveCard:["POST /projects/columns/cards/{card_id}/moves",{mediaType:{previews:["inertia"]}}],moveColumn:["POST /projects/columns/{column_id}/moves",{mediaType:{previews:["inertia"]}}],removeCollaborator:["DELETE /projects/{project_id}/collaborators/{username}",{mediaType:{previews:["inertia"]}}],update:["PATCH /projects/{project_id}",{mediaType:{previews:["inertia"]}}],updateCard:["PATCH /projects/columns/cards/{card_id}",{mediaType:{previews:["inertia"]}}],updateColumn:["PATCH /projects/columns/{column_id}",{mediaType:{previews:["inertia"]}}]},pulls:{checkIfMerged:["GET /repos/{owner}/{repo}/pulls/{pull_number}/merge"],create:["POST /repos/{owner}/{repo}/pulls"],createReplyForReviewComment:["POST /repos/{owner}/{repo}/pulls/{pull_number}/comments/{comment_id}/replies"],createReview:["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews"],createReviewComment:["POST /repos/{owner}/{repo}/pulls/{pull_number}/comments"],deletePendingReview:["DELETE /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],deleteReviewComment:["DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}"],dismissReview:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/dismissals"],get:["GET /repos/{owner}/{repo}/pulls/{pull_number}"],getReview:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],getReviewComment:["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}"],list:["GET /repos/{owner}/{repo}/pulls"],listCommentsForReview:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments"],listCommits:["GET /repos/{owner}/{repo}/pulls/{pull_number}/commits"],listFiles:["GET /repos/{owner}/{repo}/pulls/{pull_number}/files"],listRequestedReviewers:["GET /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],listReviewComments:["GET /repos/{owner}/{repo}/pulls/{pull_number}/comments"],listReviewCommentsForRepo:["GET /repos/{owner}/{repo}/pulls/comments"],listReviews:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews"],merge:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/merge"],removeRequestedReviewers:["DELETE /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],requestReviewers:["POST /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],submitReview:["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/events"],update:["PATCH /repos/{owner}/{repo}/pulls/{pull_number}"],updateBranch:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/update-branch",{mediaType:{previews:["lydian"]}}],updateReview:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],updateReviewComment:["PATCH /repos/{owner}/{repo}/pulls/comments/{comment_id}"]},rateLimit:{get:["GET /rate_limit"]},reactions:{createForCommitComment:["POST /repos/{owner}/{repo}/comments/{comment_id}/reactions",{mediaType:{previews:["squirrel-girl"]}}],createForIssue:["POST /repos/{owner}/{repo}/issues/{issue_number}/reactions",{mediaType:{previews:["squirrel-girl"]}}],createForIssueComment:["POST /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions",{mediaType:{previews:["squirrel-girl"]}}],createForPullRequestReviewComment:["POST /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions",{mediaType:{previews:["squirrel-girl"]}}],createForTeamDiscussionCommentInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions",{mediaType:{previews:["squirrel-girl"]}}],createForTeamDiscussionInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions",{mediaType:{previews:["squirrel-girl"]}}],deleteForCommitComment:["DELETE /repos/{owner}/{repo}/comments/{comment_id}/reactions/{reaction_id}",{mediaType:{previews:["squirrel-girl"]}}],deleteForIssue:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/reactions/{reaction_id}",{mediaType:{previews:["squirrel-girl"]}}],deleteForIssueComment:["DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions/{reaction_id}",{mediaType:{previews:["squirrel-girl"]}}],deleteForPullRequestComment:["DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions/{reaction_id}",{mediaType:{previews:["squirrel-girl"]}}],deleteForTeamDiscussion:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions/{reaction_id}",{mediaType:{previews:["squirrel-girl"]}}],deleteForTeamDiscussionComment:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions/{reaction_id}",{mediaType:{previews:["squirrel-girl"]}}],deleteLegacy:["DELETE /reactions/{reaction_id}",{mediaType:{previews:["squirrel-girl"]}},{deprecated:"octokit.reactions.deleteLegacy() is deprecated, see https://developer.github.com/v3/reactions/#delete-a-reaction-legacy"}],listForCommitComment:["GET /repos/{owner}/{repo}/comments/{comment_id}/reactions",{mediaType:{previews:["squirrel-girl"]}}],listForIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/reactions",{mediaType:{previews:["squirrel-girl"]}}],listForIssueComment:["GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions",{mediaType:{previews:["squirrel-girl"]}}],listForPullRequestReviewComment:["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions",{mediaType:{previews:["squirrel-girl"]}}],listForTeamDiscussionCommentInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions",{mediaType:{previews:["squirrel-girl"]}}],listForTeamDiscussionInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions",{mediaType:{previews:["squirrel-girl"]}}]},repos:{acceptInvitation:["PATCH /user/repository_invitations/{invitation_id}"],addAppAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],addCollaborator:["PUT /repos/{owner}/{repo}/collaborators/{username}"],addStatusCheckContexts:["POST /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],addTeamAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],addUserAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],checkCollaborator:["GET /repos/{owner}/{repo}/collaborators/{username}"],checkVulnerabilityAlerts:["GET /repos/{owner}/{repo}/vulnerability-alerts",{mediaType:{previews:["dorian"]}}],compareCommits:["GET /repos/{owner}/{repo}/compare/{base}...{head}"],createCommitComment:["POST /repos/{owner}/{repo}/commits/{commit_sha}/comments"],createCommitSignatureProtection:["POST /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures",{mediaType:{previews:["zzzax"]}}],createCommitStatus:["POST /repos/{owner}/{repo}/statuses/{sha}"],createDeployKey:["POST /repos/{owner}/{repo}/keys"],createDeployment:["POST /repos/{owner}/{repo}/deployments"],createDeploymentStatus:["POST /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],createDispatchEvent:["POST /repos/{owner}/{repo}/dispatches"],createForAuthenticatedUser:["POST /user/repos"],createFork:["POST /repos/{owner}/{repo}/forks"],createInOrg:["POST /orgs/{org}/repos"],createOrUpdateFileContents:["PUT /repos/{owner}/{repo}/contents/{path}"],createPagesSite:["POST /repos/{owner}/{repo}/pages",{mediaType:{previews:["switcheroo"]}}],createRelease:["POST /repos/{owner}/{repo}/releases"],createUsingTemplate:["POST /repos/{template_owner}/{template_repo}/generate",{mediaType:{previews:["baptiste"]}}],createWebhook:["POST /repos/{owner}/{repo}/hooks"],declineInvitation:["DELETE /user/repository_invitations/{invitation_id}"],delete:["DELETE /repos/{owner}/{repo}"],deleteAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],deleteAdminBranchProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],deleteBranchProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection"],deleteCommitComment:["DELETE /repos/{owner}/{repo}/comments/{comment_id}"],deleteCommitSignatureProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures",{mediaType:{previews:["zzzax"]}}],deleteDeployKey:["DELETE /repos/{owner}/{repo}/keys/{key_id}"],deleteDeployment:["DELETE /repos/{owner}/{repo}/deployments/{deployment_id}"],deleteFile:["DELETE /repos/{owner}/{repo}/contents/{path}"],deleteInvitation:["DELETE /repos/{owner}/{repo}/invitations/{invitation_id}"],deletePagesSite:["DELETE /repos/{owner}/{repo}/pages",{mediaType:{previews:["switcheroo"]}}],deletePullRequestReviewProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],deleteRelease:["DELETE /repos/{owner}/{repo}/releases/{release_id}"],deleteReleaseAsset:["DELETE /repos/{owner}/{repo}/releases/assets/{asset_id}"],deleteWebhook:["DELETE /repos/{owner}/{repo}/hooks/{hook_id}"],disableAutomatedSecurityFixes:["DELETE /repos/{owner}/{repo}/automated-security-fixes",{mediaType:{previews:["london"]}}],disableVulnerabilityAlerts:["DELETE /repos/{owner}/{repo}/vulnerability-alerts",{mediaType:{previews:["dorian"]}}],downloadArchive:["GET /repos/{owner}/{repo}/{archive_format}/{ref}"],enableAutomatedSecurityFixes:["PUT /repos/{owner}/{repo}/automated-security-fixes",{mediaType:{previews:["london"]}}],enableVulnerabilityAlerts:["PUT /repos/{owner}/{repo}/vulnerability-alerts",{mediaType:{previews:["dorian"]}}],get:["GET /repos/{owner}/{repo}"],getAccessRestrictions:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],getAdminBranchProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],getAllStatusCheckContexts:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts"],getAllTopics:["GET /repos/{owner}/{repo}/topics",{mediaType:{previews:["mercy"]}}],getAppsWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps"],getBranch:["GET /repos/{owner}/{repo}/branches/{branch}"],getBranchProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection"],getClones:["GET /repos/{owner}/{repo}/traffic/clones"],getCodeFrequencyStats:["GET /repos/{owner}/{repo}/stats/code_frequency"],getCollaboratorPermissionLevel:["GET /repos/{owner}/{repo}/collaborators/{username}/permission"],getCombinedStatusForRef:["GET /repos/{owner}/{repo}/commits/{ref}/status"],getCommit:["GET /repos/{owner}/{repo}/commits/{ref}"],getCommitActivityStats:["GET /repos/{owner}/{repo}/stats/commit_activity"],getCommitComment:["GET /repos/{owner}/{repo}/comments/{comment_id}"],getCommitSignatureProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures",{mediaType:{previews:["zzzax"]}}],getCommunityProfileMetrics:["GET /repos/{owner}/{repo}/community/profile",{mediaType:{previews:["black-panther"]}}],getContent:["GET /repos/{owner}/{repo}/contents/{path}"],getContributorsStats:["GET /repos/{owner}/{repo}/stats/contributors"],getDeployKey:["GET /repos/{owner}/{repo}/keys/{key_id}"],getDeployment:["GET /repos/{owner}/{repo}/deployments/{deployment_id}"],getDeploymentStatus:["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses/{status_id}"],getLatestPagesBuild:["GET /repos/{owner}/{repo}/pages/builds/latest"],getLatestRelease:["GET /repos/{owner}/{repo}/releases/latest"],getPages:["GET /repos/{owner}/{repo}/pages"],getPagesBuild:["GET /repos/{owner}/{repo}/pages/builds/{build_id}"],getParticipationStats:["GET /repos/{owner}/{repo}/stats/participation"],getPullRequestReviewProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],getPunchCardStats:["GET /repos/{owner}/{repo}/stats/punch_card"],getReadme:["GET /repos/{owner}/{repo}/readme"],getRelease:["GET /repos/{owner}/{repo}/releases/{release_id}"],getReleaseAsset:["GET /repos/{owner}/{repo}/releases/assets/{asset_id}"],getReleaseByTag:["GET /repos/{owner}/{repo}/releases/tags/{tag}"],getStatusChecksProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],getTeamsWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams"],getTopPaths:["GET /repos/{owner}/{repo}/traffic/popular/paths"],getTopReferrers:["GET /repos/{owner}/{repo}/traffic/popular/referrers"],getUsersWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users"],getViews:["GET /repos/{owner}/{repo}/traffic/views"],getWebhook:["GET /repos/{owner}/{repo}/hooks/{hook_id}"],listBranches:["GET /repos/{owner}/{repo}/branches"],listBranchesForHeadCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/branches-where-head",{mediaType:{previews:["groot"]}}],listCollaborators:["GET /repos/{owner}/{repo}/collaborators"],listCommentsForCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/comments"],listCommitCommentsForRepo:["GET /repos/{owner}/{repo}/comments"],listCommitStatusesForRef:["GET /repos/{owner}/{repo}/commits/{ref}/statuses"],listCommits:["GET /repos/{owner}/{repo}/commits"],listContributors:["GET /repos/{owner}/{repo}/contributors"],listDeployKeys:["GET /repos/{owner}/{repo}/keys"],listDeploymentStatuses:["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],listDeployments:["GET /repos/{owner}/{repo}/deployments"],listForAuthenticatedUser:["GET /user/repos"],listForOrg:["GET /orgs/{org}/repos"],listForUser:["GET /users/{username}/repos"],listForks:["GET /repos/{owner}/{repo}/forks"],listInvitations:["GET /repos/{owner}/{repo}/invitations"],listInvitationsForAuthenticatedUser:["GET /user/repository_invitations"],listLanguages:["GET /repos/{owner}/{repo}/languages"],listPagesBuilds:["GET /repos/{owner}/{repo}/pages/builds"],listPublic:["GET /repositories"],listPullRequestsAssociatedWithCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls",{mediaType:{previews:["groot"]}}],listReleaseAssets:["GET /repos/{owner}/{repo}/releases/{release_id}/assets"],listReleases:["GET /repos/{owner}/{repo}/releases"],listTags:["GET /repos/{owner}/{repo}/tags"],listTeams:["GET /repos/{owner}/{repo}/teams"],listWebhooks:["GET /repos/{owner}/{repo}/hooks"],merge:["POST /repos/{owner}/{repo}/merges"],pingWebhook:["POST /repos/{owner}/{repo}/hooks/{hook_id}/pings"],removeAppAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],removeCollaborator:["DELETE /repos/{owner}/{repo}/collaborators/{username}"],removeStatusCheckContexts:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],removeStatusCheckProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],removeTeamAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],removeUserAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],replaceAllTopics:["PUT /repos/{owner}/{repo}/topics",{mediaType:{previews:["mercy"]}}],requestPagesBuild:["POST /repos/{owner}/{repo}/pages/builds"],setAdminBranchProtection:["POST /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],setAppAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],setStatusCheckContexts:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],setTeamAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],setUserAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],testPushWebhook:["POST /repos/{owner}/{repo}/hooks/{hook_id}/tests"],transfer:["POST /repos/{owner}/{repo}/transfer"],update:["PATCH /repos/{owner}/{repo}"],updateBranchProtection:["PUT /repos/{owner}/{repo}/branches/{branch}/protection"],updateCommitComment:["PATCH /repos/{owner}/{repo}/comments/{comment_id}"],updateInformationAboutPagesSite:["PUT /repos/{owner}/{repo}/pages"],updateInvitation:["PATCH /repos/{owner}/{repo}/invitations/{invitation_id}"],updatePullRequestReviewProtection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],updateRelease:["PATCH /repos/{owner}/{repo}/releases/{release_id}"],updateReleaseAsset:["PATCH /repos/{owner}/{repo}/releases/assets/{asset_id}"],updateStatusCheckPotection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],updateWebhook:["PATCH /repos/{owner}/{repo}/hooks/{hook_id}"],uploadReleaseAsset:["POST /repos/{owner}/{repo}/releases/{release_id}/assets{?name,label}",{baseUrl:"https://uploads.github.com"}]},search:{code:["GET /search/code"],commits:["GET /search/commits",{mediaType:{previews:["cloak"]}}],issuesAndPullRequests:["GET /search/issues"],labels:["GET /search/labels"],repos:["GET /search/repositories"],topics:["GET /search/topics",{mediaType:{previews:["mercy"]}}],users:["GET /search/users"]},teams:{addOrUpdateMembershipForUserInOrg:["PUT /orgs/{org}/teams/{team_slug}/memberships/{username}"],addOrUpdateProjectPermissionsInOrg:["PUT /orgs/{org}/teams/{team_slug}/projects/{project_id}",{mediaType:{previews:["inertia"]}}],addOrUpdateRepoPermissionsInOrg:["PUT /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],checkPermissionsForProjectInOrg:["GET /orgs/{org}/teams/{team_slug}/projects/{project_id}",{mediaType:{previews:["inertia"]}}],checkPermissionsForRepoInOrg:["GET /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],create:["POST /orgs/{org}/teams"],createDiscussionCommentInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"],createDiscussionInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions"],deleteDiscussionCommentInOrg:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],deleteDiscussionInOrg:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],deleteInOrg:["DELETE /orgs/{org}/teams/{team_slug}"],getByName:["GET /orgs/{org}/teams/{team_slug}"],getDiscussionCommentInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],getDiscussionInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],getMembershipForUserInOrg:["GET /orgs/{org}/teams/{team_slug}/memberships/{username}"],list:["GET /orgs/{org}/teams"],listChildInOrg:["GET /orgs/{org}/teams/{team_slug}/teams"],listDiscussionCommentsInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"],listDiscussionsInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions"],listForAuthenticatedUser:["GET /user/teams"],listMembersInOrg:["GET /orgs/{org}/teams/{team_slug}/members"],listPendingInvitationsInOrg:["GET /orgs/{org}/teams/{team_slug}/invitations"],listProjectsInOrg:["GET /orgs/{org}/teams/{team_slug}/projects",{mediaType:{previews:["inertia"]}}],listReposInOrg:["GET /orgs/{org}/teams/{team_slug}/repos"],removeMembershipForUserInOrg:["DELETE /orgs/{org}/teams/{team_slug}/memberships/{username}"],removeProjectInOrg:["DELETE /orgs/{org}/teams/{team_slug}/projects/{project_id}"],removeRepoInOrg:["DELETE /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],updateDiscussionCommentInOrg:["PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],updateDiscussionInOrg:["PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],updateInOrg:["PATCH /orgs/{org}/teams/{team_slug}"]},users:{addEmailForAuthenticated:["POST /user/emails"],block:["PUT /user/blocks/{username}"],checkBlocked:["GET /user/blocks/{username}"],checkFollowingForUser:["GET /users/{username}/following/{target_user}"],checkPersonIsFollowedByAuthenticated:["GET /user/following/{username}"],createGpgKeyForAuthenticated:["POST /user/gpg_keys"],createPublicSshKeyForAuthenticated:["POST /user/keys"],deleteEmailForAuthenticated:["DELETE /user/emails"],deleteGpgKeyForAuthenticated:["DELETE /user/gpg_keys/{gpg_key_id}"],deletePublicSshKeyForAuthenticated:["DELETE /user/keys/{key_id}"],follow:["PUT /user/following/{username}"],getAuthenticated:["GET /user"],getByUsername:["GET /users/{username}"],getContextForUser:["GET /users/{username}/hovercard"],getGpgKeyForAuthenticated:["GET /user/gpg_keys/{gpg_key_id}"],getPublicSshKeyForAuthenticated:["GET /user/keys/{key_id}"],list:["GET /users"],listBlockedByAuthenticated:["GET /user/blocks"],listEmailsForAuthenticated:["GET /user/emails"],listFollowedByAuthenticated:["GET /user/following"],listFollowersForAuthenticatedUser:["GET /user/followers"],listFollowersForUser:["GET /users/{username}/followers"],listFollowingForUser:["GET /users/{username}/following"],listGpgKeysForAuthenticated:["GET /user/gpg_keys"],listGpgKeysForUser:["GET /users/{username}/gpg_keys"],listPublicEmailsForAuthenticated:["GET /user/public_emails"],listPublicKeysForUser:["GET /users/{username}/keys"],listPublicSshKeysForAuthenticated:["GET /user/keys"],setPrimaryEmailVisibilityForAuthenticated:["PATCH /user/email/visibility"],unblock:["DELETE /user/blocks/{username}"],unfollow:["DELETE /user/following/{username}"],updateAuthenticated:["PATCH /user"]}};a.VERSION="4.2.1",t.restEndpointMethods=a},48364:(e,t,r)=>{"use strict";function n(e){return e&&"object"==typeof e&&"default"in e?e["default"]:e}Object.defineProperty(t,"__esModule",{value:!0});var a=r(86649),o=n(r(86343));const i=o(e=>console.warn(e));class s extends Error{constructor(e,t,r){super(e),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor),this.name="HttpError",this.status=t,Object.defineProperty(this,"code",{get(){return i(new a.Deprecation("[@octokit/request-error] `error.code` is deprecated, use `error.status`.")),t}}),this.headers=r.headers||{};const n=Object.assign({},r.request);r.request.headers.authorization&&(n.headers=Object.assign({},r.request.headers,{authorization:r.request.headers.authorization.replace(/ .*$/," [REDACTED]")})),n.url=n.url.replace(/\bclient_secret=\w+/g,"client_secret=[REDACTED]").replace(/\baccess_token=\w+/g,"access_token=[REDACTED]"),this.request=n}}t.RequestError=s},48826:(e,t,r)=>{"use strict";function n(e){return e&&"object"==typeof e&&"default"in e?e["default"]:e}function a(e){return e.arrayBuffer()}function o(e){(d.isPlainObject(e.body)||Array.isArray(e.body))&&(e.body=JSON.stringify(e.body));let t={},r,n;const o=e.request&&e.request.fetch||p;return o(e.url,Object.assign({method:e.method,body:e.body,headers:e.headers,redirect:e.redirect},e.request)).then(o=>{n=o.url,r=o.status;for(const e of o.headers)t[e[0]]=e[1];if(204!==r&&205!==r){if("HEAD"===e.method){if(400>r)return;throw new c.RequestError(o.statusText,r,{headers:t,request:e})}if(304===r)throw new c.RequestError("Not modified",r,{headers:t,request:e});if(400<=r)return o.text().then(n=>{const a=new c.RequestError(n,r,{headers:t,request:e});try{let e=JSON.parse(a.message);Object.assign(a,e);let t=e.errors;a.message=a.message+": "+t.map(JSON.stringify).join(", ")}catch(t){}throw a});const n=o.headers.get("content-type");return /application\/json/.test(n)?o.json():!n||/^text\/|charset=utf-8$/.test(n)?o.text():a(o)}}).then(e=>({status:r,url:n,headers:t,data:e})).catch(r=>{if(r instanceof c.RequestError)throw r;throw new c.RequestError(r.message,500,{headers:t,request:e})})}function i(e,t){const r=e.defaults(t);return Object.assign(function(e,t){const n=r.merge(e,t);if(!n.request||!n.request.hook)return o(r.parse(n));const a=(e,t)=>o(r.parse(r.merge(e,t)));return Object.assign(a,{endpoint:r,defaults:i.bind(null,r)}),n.request.hook(a,n)},{endpoint:r,defaults:i.bind(null,r)})}Object.defineProperty(t,"__esModule",{value:!0});var s=r(70412),l=r(1857),d=r(80641),p=n(r(22434)),c=r(48364);const u=i(s.endpoint,{headers:{"user-agent":`octokit-request.js/${"5.4.10"} ${l.getUserAgent()}`}});t.request=u},67208:function(e,t,r){"use strict";function n(e){return!!e&&"function"==typeof e.addRequest}function a(e){return!!e&&"function"==typeof e.addRequest}function o(){const{stack:e}=new Error;return"string"==typeof e&&e.split("\n").some(e=>-1!==e.indexOf("(https.js:"))}function i(e,t){return new i.Agent(e,t)}var s=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};const l=r(28614),d=s(r(2929));(function(e){class t extends l.EventEmitter{constructor(e,t){super(),this.promisifiedCallback=void 0;let r=t;"function"==typeof e?this.callback=e:e&&(r=e),this.timeout=null,r&&"number"==typeof r.timeout&&(this.timeout=r.timeout),this.options=r||{},this.maxFreeSockets=1,this.maxSockets=1,this.sockets=[],this.requests=[]}get defaultPort(){return"number"==typeof this.explicitDefaultPort?this.explicitDefaultPort:o()?443:80}set defaultPort(e){this.explicitDefaultPort=e}get protocol(){return"string"==typeof this.explicitProtocol?this.explicitProtocol:o()?"https:":"http:"}set protocol(e){this.explicitProtocol=e}callback(){throw new Error("\"agent-base\" has no default implementation, you must subclass and override `callback()`")}addRequest(e,t){function r(t){e._hadError||(e.emit("error",t),e._hadError=!0)}function i(e){c||(null!==u&&(clearTimeout(u),u=null),r(e))}function s(t){function o(){g(i,p)}let i;if(!c){if(null!=u&&(clearTimeout(u),u=null),n(t)||a(t))return void t.addRequest(e,p);if(t)return i=t,i.on("free",o),void e.onSocket(i);const s=new Error(`no Duplex stream was returned to agent-base for \`${e.method} ${e.path}\``);r(s)}}const l=Object.assign({},t);"boolean"!=typeof l.secureEndpoint&&(l.secureEndpoint=o()),null==l.host&&(l.host="localhost"),null==l.port&&(l.port=l.secureEndpoint?443:80);const p=Object.assign(Object.assign({},this.options),l);p.host&&p.path&&delete p.path,delete p.agent,delete p.hostname,delete p._defaultAgent,delete p.defaultPort,delete p.createConnection,e._last=!0,e.shouldKeepAlive=!1;let c=!1,u=null;const m=this.timeout,g=this.freeSocket;if("function"!=typeof this.callback)return void r(new Error("`callback` is not defined"));this.promisifiedCallback||(3<=this.callback.length?this.promisifiedCallback=d.default(this.callback):this.promisifiedCallback=this.callback),"number"==typeof m&&0{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return function(t,r){return new Promise((n,a)=>{e.call(this,t,r,(e,t)=>{e?a(e):n(t)})})}}},2390:(e,t,r)=>{e.exports=r(64579)},38007:(e,t,r)=>{"use strict";var n=r(19520),a=r(29801),o=r(92074),i=r(87481),s=r(98605),l=r(57211),d=r(75955).http,p=r(75955).https,c=r(78835),u=r(78761),m=r(35131),g=r(3034),h=r(95261),f=/https:?/;e.exports=function(e){return new Promise(function(t,r){var y=function(e){t(e)},b=function(e){r(e)},S=e.data,x=e.headers;if(x["User-Agent"]||x["user-agent"]||(x["User-Agent"]="axios/"+m.version),S&&!n.isStream(S)){if(Buffer.isBuffer(S));else if(n.isArrayBuffer(S))S=Buffer.from(new Uint8Array(S));else if(n.isString(S))S=Buffer.from(S,"utf-8");else return b(g("Data after transformation must be a string, an ArrayBuffer, a Buffer, or a Stream",e));x["Content-Length"]=S.length}var v;if(e.auth){var k=e.auth.username||"",C=e.auth.password||"";v=k+":"+C}var w=o(e.baseURL,e.url),_=c.parse(w),T=_.protocol||"http:";if(!v&&_.auth){var E=_.auth.split(":"),A=E[0]||"",O=E[1]||"";v=A+":"+O}v&&delete x.Authorization;var P=f.test(T),L=P?e.httpsAgent:e.httpAgent,z={path:i(_.path,e.params,e.paramsSerializer).replace(/^\?/,""),method:e.method.toUpperCase(),headers:x,agent:L,agents:{http:e.httpAgent,https:e.httpsAgent},auth:v};e.socketPath?z.socketPath=e.socketPath:(z.hostname=_.hostname,z.port=_.port);var R=e.proxy;if(!R&&!1!==R){var M=T.slice(0,-1)+"_proxy",I=process.env[M]||process.env[M.toUpperCase()];if(I){var W=c.parse(I),q=process.env.no_proxy||process.env.NO_PROXY,B=!0;if(q){var N=q.split(",").map(function(e){return e.trim()});B=!N.some(function(e){return!!e&&("*"===e||"."===e[0]&&_.hostname.substr(_.hostname.length-e.length)===e||_.hostname===e)})}if(B&&(R={host:W.hostname,port:W.port},W.auth)){var D=W.auth.split(":");R.auth={username:D[0],password:D[1]}}}}if(R&&(z.hostname=R.host,z.host=R.host,z.headers.host=_.hostname+(_.port?":"+_.port:""),z.port=R.port,z.path=T+"//"+_.hostname+(_.port?":"+_.port:"")+z.path,R.auth)){var F=Buffer.from(R.auth.username+":"+R.auth.password,"utf8").toString("base64");z.headers["Proxy-Authorization"]="Basic "+F}var G=P&&(!R||f.test(R.protocol)),U;e.transport?U=e.transport:0===e.maxRedirects?U=G?l:s:(e.maxRedirects&&(z.maxRedirects=e.maxRedirects),U=G?p:d),-1e.maxContentLength&&(r.destroy(),b(g("maxContentLength size of "+e.maxContentLength+" exceeded",e,null,o)))}),r.on("error",function(t){j.aborted||b(h(t,e,null,o))}),r.on("end",function(){var t=Buffer.concat(s);"arraybuffer"!==e.responseType&&(t=t.toString(e.responseEncoding),(!e.responseEncoding||"utf8"===e.responseEncoding)&&(t=n.stripBOM(t))),i.data=t,a(y,b,i)})}}});j.on("error",function(t){j.aborted&&"ERR_FR_TOO_MANY_REDIRECTS"!==t.code||b(h(t,e,null,j))}),e.timeout&&j.setTimeout(e.timeout,function(){j.abort(),b(g("timeout of "+e.timeout+"ms exceeded",e,"ECONNABORTED",j))}),e.cancelToken&&e.cancelToken.promise.then(function(e){j.aborted||(j.abort(),b(e))}),n.isStream(S)?S.on("error",function(t){b(h(t,e,null,j))}).pipe(j):j.end(S)})}},63500:(e,t,r)=>{"use strict";var n=r(19520),a=r(29801),o=r(47536),i=r(87481),s=r(92074),l=r(77912),d=r(11682),p=r(3034);e.exports=function(t){return new Promise(function(e,r){var c=t.data,u=t.headers;n.isFormData(c)&&delete u["Content-Type"];var m=new XMLHttpRequest;if(t.auth){var g=t.auth.username||"",h=t.auth.password?unescape(encodeURIComponent(t.auth.password)):"";u.Authorization="Basic "+btoa(g+":"+h)}var f=s(t.baseURL,t.url);if(m.open(t.method.toUpperCase(),i(f,t.params,t.paramsSerializer),!0),m.timeout=t.timeout,m.onreadystatechange=function(){if(m&&4===m.readyState&&(0!==m.status||m.responseURL&&0===m.responseURL.indexOf("file:"))){var n="getAllResponseHeaders"in m?l(m.getAllResponseHeaders()):null,o=t.responseType&&"text"!==t.responseType?m.response:m.responseText,i={data:o,status:m.status,statusText:m.statusText,headers:n,config:t,request:m};a(e,r,i),m=null}},m.onabort=function(){m&&(r(p("Request aborted",t,"ECONNABORTED",m)),m=null)},m.onerror=function(){r(p("Network Error",t,null,m)),m=null},m.ontimeout=function(){var e="timeout of "+t.timeout+"ms exceeded";t.timeoutErrorMessage&&(e=t.timeoutErrorMessage),r(p(e,t,"ECONNABORTED",m)),m=null},n.isStandardBrowserEnv()){var y=(t.withCredentials||d(f))&&t.xsrfCookieName?o.read(t.xsrfCookieName):void 0;y&&(u[t.xsrfHeaderName]=y)}if("setRequestHeader"in m&&n.forEach(u,function(e,t){"undefined"==typeof c&&"content-type"===t.toLowerCase()?delete u[t]:m.setRequestHeader(t,e)}),n.isUndefined(t.withCredentials)||(m.withCredentials=!!t.withCredentials),t.responseType)try{m.responseType=t.responseType}catch(r){if("json"!==t.responseType)throw r}"function"==typeof t.onDownloadProgress&&m.addEventListener("progress",t.onDownloadProgress),"function"==typeof t.onUploadProgress&&m.upload&&m.upload.addEventListener("progress",t.onUploadProgress),t.cancelToken&&t.cancelToken.promise.then(function(e){m&&(m.abort(),r(e),m=null)}),c||(c=null),m.send(c)})}},64579:(e,t,r)=>{"use strict";function n(e){var t=new i(e),r=o(i.prototype.request,t);return a.extend(r,i.prototype,t),a.extend(r,t),r}var a=r(19520),o=r(69339),i=r(10353),s=r(59807),l=r(6769),d=n(l);d.Axios=i,d.create=function(e){return n(s(d.defaults,e))},d.Cancel=r(56305),d.CancelToken=r(99576),d.isCancel=r(57822),d.all=function(e){return Promise.all(e)},d.spread=r(83202),e.exports=d,e.exports.default=d},56305:e=>{"use strict";function t(e){this.message=e}t.prototype.toString=function(){return"Cancel"+(this.message?": "+this.message:"")},t.prototype.__CANCEL__=!0,e.exports=t},99576:(e,t,r)=>{"use strict";function n(e){if("function"!=typeof e)throw new TypeError("executor must be a function.");var t;this.promise=new Promise(function(e){t=e});var r=this;e(function(e){r.reason||(r.reason=new a(e),t(r.reason))})}var a=r(56305);n.prototype.throwIfRequested=function(){if(this.reason)throw this.reason},n.source=function(){var e=new n(function(e){t=e}),t;return{token:e,cancel:t}},e.exports=n},57822:e=>{"use strict";e.exports=function(e){return!!(e&&e.__CANCEL__)}},10353:(e,t,r)=>{"use strict";function n(e){this.defaults=e,this.interceptors={request:new i,response:new i}}var a=r(19520),o=r(87481),i=r(88030),s=r(18944),l=r(59807);n.prototype.request=function(e){"string"==typeof e?(e=arguments[1]||{},e.url=arguments[0]):e=e||{},e=l(this.defaults,e),e.method=e.method?e.method.toLowerCase():this.defaults.method?this.defaults.method.toLowerCase():"get";var t=[s,void 0],r=Promise.resolve(e);for(this.interceptors.request.forEach(function(e){t.unshift(e.fulfilled,e.rejected)}),this.interceptors.response.forEach(function(e){t.push(e.fulfilled,e.rejected)});t.length;)r=r.then(t.shift(),t.shift());return r},n.prototype.getUri=function(e){return e=l(this.defaults,e),o(e.url,e.params,e.paramsSerializer).replace(/^\?/,"")},a.forEach(["delete","get","head","options"],function(e){n.prototype[e]=function(t,r){return this.request(l(r||{},{method:e,url:t,data:(r||{}).data}))}}),a.forEach(["post","put","patch"],function(e){n.prototype[e]=function(t,r,n){return this.request(l(n||{},{method:e,url:t,data:r}))}}),e.exports=n},88030:(e,t,r)=>{"use strict";function n(){this.handlers=[]}var a=r(19520);n.prototype.use=function(e,t){return this.handlers.push({fulfilled:e,rejected:t}),this.handlers.length-1},n.prototype.eject=function(e){this.handlers[e]&&(this.handlers[e]=null)},n.prototype.forEach=function(e){a.forEach(this.handlers,function(t){null!==t&&e(t)})},e.exports=n},92074:(e,t,r)=>{"use strict";var n=r(55470),a=r(65824);e.exports=function(e,t){return e&&!n(t)?a(e,t):t}},3034:(e,t,r)=>{"use strict";var n=r(95261);e.exports=function(e,t,r,a,o){var i=new Error(e);return n(i,t,r,a,o)}},18944:(e,t,r)=>{"use strict";function n(e){e.cancelToken&&e.cancelToken.throwIfRequested()}var a=r(19520),o=r(62479),i=r(57822),s=r(6769);e.exports=function(e){n(e),e.headers=e.headers||{},e.data=o(e.data,e.headers,e.transformRequest),e.headers=a.merge(e.headers.common||{},e.headers[e.method]||{},e.headers),a.forEach(["delete","get","head","post","put","patch","common"],function(t){delete e.headers[t]});var t=e.adapter||s.adapter;return t(e).then(function(t){return n(e),t.data=o(t.data,t.headers,e.transformResponse),t},function(t){return i(t)||(n(e),t&&t.response&&(t.response.data=o(t.response.data,t.response.headers,e.transformResponse))),Promise.reject(t)})}},95261:e=>{"use strict";e.exports=function(e,t,r,n,a){return e.config=t,r&&(e.code=r),e.request=n,e.response=a,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}},59807:(e,t,r)=>{"use strict";var n=r(19520);e.exports=function(e,t){function r(e,t){return n.isPlainObject(e)&&n.isPlainObject(t)?n.merge(e,t):n.isPlainObject(t)?n.merge({},t):n.isArray(t)?t.slice():t}function a(a){n.isUndefined(t[a])?!n.isUndefined(e[a])&&(o[a]=r(void 0,e[a])):o[a]=r(e[a],t[a])}t=t||{};var o={},i=["url","method","data"],s=["headers","auth","proxy","params"],l=["baseURL","transformRequest","transformResponse","paramsSerializer","timeout","timeoutMessage","withCredentials","adapter","responseType","xsrfCookieName","xsrfHeaderName","onUploadProgress","onDownloadProgress","decompress","maxContentLength","maxBodyLength","maxRedirects","transport","httpAgent","httpsAgent","cancelToken","socketPath","responseEncoding"],d=["validateStatus"];n.forEach(i,function(e){n.isUndefined(t[e])||(o[e]=r(void 0,t[e]))}),n.forEach(s,a),n.forEach(l,function(a){n.isUndefined(t[a])?!n.isUndefined(e[a])&&(o[a]=r(void 0,e[a])):o[a]=r(void 0,t[a])}),n.forEach(d,function(n){n in t?o[n]=r(e[n],t[n]):n in e&&(o[n]=r(void 0,e[n]))});var p=i.concat(s).concat(l).concat(d),c=Object.keys(e).concat(Object.keys(t)).filter(function(e){return-1===p.indexOf(e)});return n.forEach(c,a),o}},29801:(e,t,r)=>{"use strict";var n=r(3034);e.exports=function(e,t,r){var a=r.config.validateStatus;r.status&&a&&!a(r.status)?t(n("Request failed with status code "+r.status,r.config,null,r.request,r)):e(r)}},62479:(e,t,r)=>{"use strict";var n=r(19520);e.exports=function(e,t,r){return n.forEach(r,function(r){e=r(e,t)}),e}},6769:(e,t,r)=>{"use strict";function n(e,t){!a.isUndefined(e)&&a.isUndefined(e["Content-Type"])&&(e["Content-Type"]=t)}var a=r(19520),o=r(53293),i={"Content-Type":"application/x-www-form-urlencoded"},s={adapter:function(){var e;return"undefined"==typeof XMLHttpRequest?"undefined"!=typeof process&&"[object process]"===Object.prototype.toString.call(process)&&(e=r(38007)):e=r(63500),e}(),transformRequest:[function(e,t){return o(t,"Accept"),o(t,"Content-Type"),a.isFormData(e)||a.isArrayBuffer(e)||a.isBuffer(e)||a.isStream(e)||a.isFile(e)||a.isBlob(e)?e:a.isArrayBufferView(e)?e.buffer:a.isURLSearchParams(e)?(n(t,"application/x-www-form-urlencoded;charset=utf-8"),e.toString()):a.isObject(e)?(n(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 200<=e&&300>e}};s.headers={common:{Accept:"application/json, text/plain, */*"}},a.forEach(["delete","get","head"],function(e){s.headers[e]={}}),a.forEach(["post","put","patch"],function(e){s.headers[e]=a.merge(i)}),e.exports=s},69339:e=>{"use strict";e.exports=function(e,t){return function(){for(var r=Array(arguments.length),n=0;n{"use strict";function n(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}var a=r(19520);e.exports=function(e,t,r){if(!t)return e;var o;if(r)o=r(t);else if(a.isURLSearchParams(t))o=t.toString();else{var i=[];a.forEach(t,function(e,t){null===e||"undefined"==typeof e||(a.isArray(e)?t+="[]":e=[e],a.forEach(e,function(e){a.isDate(e)?e=e.toISOString():a.isObject(e)&&(e=JSON.stringify(e)),i.push(n(t)+"="+n(e))}))}),o=i.join("&")}if(o){var s=e.indexOf("#");-1!==s&&(e=e.slice(0,s)),e+=(-1===e.indexOf("?")?"?":"&")+o}return e}},65824:e=>{"use strict";e.exports=function(e,t){return t?e.replace(/\/+$/,"")+"/"+t.replace(/^\/+/,""):e}},47536:(e,t,r)=>{"use strict";var n=r(19520);e.exports=n.isStandardBrowserEnv()?function(){return{write:function(e,t,r,a,o,i){var s=[];s.push(e+"="+encodeURIComponent(t)),n.isNumber(r)&&s.push("expires="+new Date(r).toGMTString()),n.isString(a)&&s.push("path="+a),n.isString(o)&&s.push("domain="+o),!0===i&&s.push("secure"),document.cookie=s.join("; ")},read:function(e){var t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove:function(e){this.write(e,"",Date.now()-864e5)}}}():function(){return{write:function(){},read:function(){return null},remove:function(){}}}()},55470:e=>{"use strict";e.exports=function(e){return /^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(e)}},11682:(e,t,r)=>{"use strict";var n=r(19520);e.exports=n.isStandardBrowserEnv()?function(){function e(e){var n=e;return t&&(r.setAttribute("href",n),n=r.href),r.setAttribute("href",n),{href:r.href,protocol:r.protocol?r.protocol.replace(/:$/,""):"",host:r.host,search:r.search?r.search.replace(/^\?/,""):"",hash:r.hash?r.hash.replace(/^#/,""):"",hostname:r.hostname,port:r.port,pathname:"/"===r.pathname.charAt(0)?r.pathname:"/"+r.pathname}}var t=/(msie|trident)/i.test(navigator.userAgent),r=document.createElement("a"),a;return a=e(window.location.href),function(t){var r=n.isString(t)?e(t):t;return r.protocol===a.protocol&&r.host===a.host}}():function(){return function(){return!0}}()},53293:(e,t,r)=>{"use strict";var n=r(19520);e.exports=function(e,t){n.forEach(e,function(r,n){n!==t&&n.toUpperCase()===t.toUpperCase()&&(e[t]=r,delete e[n])})}},77912:(e,t,r)=>{"use strict";var n=r(19520),a=["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"];e.exports=function(e){var t={},r,o,s;return e?(n.forEach(e.split("\n"),function(e){if(s=e.indexOf(":"),r=n.trim(e.substr(0,s)).toLowerCase(),o=n.trim(e.substr(s+1)),r){if(t[r]&&0<=a.indexOf(r))return;t[r]="set-cookie"===r?(t[r]?t[r]:[]).concat([o]):t[r]?t[r]+", "+o:o}}),t):t}},83202:e=>{"use strict";e.exports=function(e){return function(t){return e.apply(null,t)}}},19520:(e,t,r)=>{"use strict";function n(e){return"[object Array]"===u.call(e)}function a(e){return"undefined"==typeof e}function o(e){return null!==e&&"object"==typeof e}function i(e){if("[object Object]"!==u.call(e))return!1;var t=Object.getPrototypeOf(e);return null===t||t===Object.prototype}function s(e){return"[object Function]"===u.call(e)}function d(e,t){if(null!==e&&"undefined"!=typeof e)if("object"!=typeof e&&(e=[e]),n(e))for(var r=0,a=e.length;r{"use strict";function t(e,t,i){e instanceof RegExp&&(e=n(e,i)),t instanceof RegExp&&(t=n(t,i));var s=o(e,t,i);return s&&{start:s[0],end:s[1],pre:i.slice(0,s[0]),body:i.slice(s[0]+e.length,s[1]),post:i.slice(s[1]+t.length)}}function n(e,t){var r=t.match(e);return r?r[0]:null}function o(e,t,r){var n=r.indexOf(e),a=r.indexOf(t,n+1),o=n,s,l,d,p,c;if(0<=n&&0{function n(e,t,r){var n=p(l,null).apply(null,r?[t,r]:[t]);e.api={remove:n},e.remove=n,["before","error","after","wrap"].forEach(function(n){var a=r?[t,n,r]:[t,n];e[n]=e.api[n]=p(s,null).apply(null,a)})}function a(){var e={registry:{}},t=i.bind(null,e);return n(t,e),t}function o(){return c||(console.warn("[before-after-hook]: \"Hook()\" repurposing warning, use \"Hook.Collection()\". Read more: https://git.io/upgrade-before-after-hook-to-1.4"),c=!0),a()}var i=r(27798),s=r(82446),l=r(16436),d=Function.bind,p=d.bind(d),c=!1;o.Singular=function(){var e={registry:{}},t=i.bind(null,e,"h");return n(t,e,"h"),t}.bind(),o.Collection=a.bind(),e.exports=o,e.exports.Hook=o,e.exports.Singular=o.Singular,e.exports.Collection=o.Collection},82446:e=>{e.exports=function(e,t,r,n){var a=n;e.registry[r]||(e.registry[r]=[]),"before"===t&&(n=function(e,t){return Promise.resolve().then(a.bind(null,t)).then(e.bind(null,t))}),"after"===t&&(n=function(e,t){var r;return Promise.resolve().then(e.bind(null,t)).then(function(e){return r=e,a(r,t)}).then(function(){return r})}),"error"===t&&(n=function(e,t){return Promise.resolve().then(e.bind(null,t)).catch(function(e){return a(e,t)})}),e.registry[r].push({hook:n,orig:a})}},27798:e=>{function t(e,r,n,a){if("function"!=typeof n)throw new Error("method for before hook must be a function");return a||(a={}),Array.isArray(r)?r.reverse().reduce(function(r,n){return t.bind(null,e,n,r,a)},n)():Promise.resolve().then(function(){return e.registry[r]?e.registry[r].reduce(function(e,t){return t.hook.bind(null,e,a)},n)():n(a)})}e.exports=t},16436:e=>{e.exports=function(e,t,r){if(e.registry[t]){var n=e.registry[t].map(function(e){return e.orig}).indexOf(r);-1===n||e.registry[t].splice(n,1)}}},66616:(e,t,r)=>{"use strict";function n(e){return this instanceof n?void n._init.call(this,e):new n(e)}const{Buffer:a}=r(64293),o=Symbol.for("BufferList");n._init=function(e){Object.defineProperty(this,o,{value:!0}),this._bufs=[],this.length=0,e&&this.append(e)},n.prototype._new=function(e){return new n(e)},n.prototype._offset=function(e){if(0===e)return[0,0];let t=0;for(let r=0;rthis.length||0>e)){const t=this._offset(e);return this._bufs[t[0]][t[1]]}},n.prototype.slice=function(e,t){return"number"==typeof e&&0>e&&(e+=this.length),"number"==typeof t&&0>t&&(t+=this.length),this.copy(null,0,e,t)},n.prototype.copy=function e(t,r,n,o){if(("number"!=typeof n||0>n)&&(n=0),("number"!=typeof o||o>this.length)&&(o=this.length),n>=this.length)return t||a.alloc(0);if(0>=o)return t||a.alloc(0);const e=!!t,s=this._offset(n),l=o-n;let d=l,p=e&&r||0,c=s[1];if(0===n&&o===this.length){if(!e)return 1===this._bufs.length?this._bufs[0]:a.concat(this._bufs,this.length);for(let e=0;er)this._bufs[e].copy(t,p,c),p+=r;else{this._bufs[e].copy(t,p,c,c+d),p+=r;break}d-=r,c&&(c=0)}return t.length>p?t.slice(0,p):t},n.prototype.shallowSlice=function(e,t){if(e=e||0,t="number"==typeof t?t:this.length,0>e&&(e+=this.length),0>t&&(t+=this.length),e===t)return this._new();const r=this._offset(e),n=this._offset(t),a=this._bufs.slice(r[0],n[0]+1);return 0===n[1]?a.pop():a[a.length-1]=a[a.length-1].slice(0,n[1]),0!==r[1]&&(a[0]=a[0].slice(r[1])),this._new(a)},n.prototype.toString=function(e,t,r){return this.slice(t,r).toString(e)},n.prototype.consume=function(e){var t=Number.isNaN,r=Math.trunc;if(e=r(e),t(e)||0>=e)return this;for(;this._bufs.length;)if(e>=this._bufs[0].length)e-=this._bufs[0].length,this.length-=this._bufs[0].length,this._bufs.shift();else{this._bufs[0]=this._bufs[0].slice(e),this.length-=e;break}return this},n.prototype.duplicate=function(){const e=this._new();for(let t=0;tt&&(t=this.length+t),0>t&&(t=0),0===e.length)return t>this.length?this.length:t;const n=this._offset(t);let o=n[0],i=n[1];for(;o=e.length){const r=t.indexOf(e,i);if(-1!==r)return this._reverseOffset([o,r]);i=t.length-e.length+1}else{const t=this._reverseOffset([o,i]);if(this._match(t,e))return t;i++}}i=0}return-1},n.prototype._match=function(e,t){if(this.length-e{"use strict";function n(e){if(!(this instanceof n))return new n(e);if("function"==typeof e){this._callback=e;const t=function(e){this._callback&&(this._callback(e),this._callback=null)}.bind(this);this.on("pipe",function(e){e.on("error",t)}),this.on("unpipe",function(e){e.removeListener("error",t)}),e=null}i._init.call(this,e),a.call(this)}const a=r(30009).Duplex,o=r(94835),i=r(66616);o(n,a),Object.assign(n.prototype,i.prototype),n.prototype._new=function(e){return new n(e)},n.prototype._write=function(e,t,r){this._appendBuffer(e),"function"==typeof r&&r()},n.prototype._read=function(e){return this.length?void(e=_Mathmin(e,this.length),this.push(this.slice(0,e)),this.consume(e)):this.push(null)},n.prototype.end=function(e){a.prototype.end.call(this,e),this._callback&&(this._callback(null,this.slice()),this._callback=null)},n.prototype._destroy=function(e,t){this._bufs.length=0,this.length=0,t(e)},n.prototype._isBufferList=function(e){return e instanceof n||e instanceof i||n.isBufferList(e)},n.isBufferList=i.isBufferList,e.exports=n,e.exports.BufferListStream=n,e.exports.BufferList=i},94835:(t,r,n)=>{try{var a=n(31669);if("function"!=typeof a.inherits)throw"";t.exports=a.inherits}catch(r){t.exports=n(72739)}},72739:e=>{e.exports="function"==typeof Object.create?function(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:function(e,t){if(t){e.super_=t;var r=function(){};r.prototype=t.prototype,e.prototype=new r,e.prototype.constructor=e}}},71947:e=>{"use strict";function t(e,t,r){function n(e,r,n){return"string"==typeof t?t:t(e,r,n)}r||(r=Error);class a extends r{constructor(e,t,r){super(n(e,t,r))}}a.prototype.name=r.name,a.prototype.code=e,i[e]=a}function r(e,t){if(Array.isArray(e)){const r=e.length;return e=e.map(e=>e+""),2r?0:+r,t.length)===t}function a(e,t,r){return(void 0===r||r>e.length)&&(r=e.length),e.substring(r-t.length,r)===t}function o(e,t,r){return"number"!=typeof r&&(r=0),!(r+t.length>e.length)&&-1!==e.indexOf(t,r)}const i={};t("ERR_INVALID_OPT_VALUE",function(e,t){return"The value \""+t+"\" is invalid for option \""+e+"\""},TypeError),t("ERR_INVALID_ARG_TYPE",function(e,t,i){let s;"string"==typeof t&&n(t,"not ")?(s="must not be",t=t.replace(/^not /,"")):s="must be";let l;if(a(e," argument"))l=`The ${e} ${s} ${r(t,"type")}`;else{const n=o(e,".")?"property":"argument";l=`The "${e}" ${n} ${s} ${r(t,"type")}`}return l+=`. Received type ${typeof i}`,l},TypeError),t("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),t("ERR_METHOD_NOT_IMPLEMENTED",function(e){return"The "+e+" method is not implemented"}),t("ERR_STREAM_PREMATURE_CLOSE","Premature close"),t("ERR_STREAM_DESTROYED",function(e){return"Cannot call "+e+" after a stream was destroyed"}),t("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),t("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),t("ERR_STREAM_WRITE_AFTER_END","write after end"),t("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),t("ERR_UNKNOWN_ENCODING",function(e){return"Unknown encoding: "+e},TypeError),t("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),e.exports.q=i},18084:(e,t,r)=>{"use strict";function n(e){return this instanceof n?void(s.call(this,e),l.call(this,e),this.allowHalfOpen=!0,e&&(!1===e.readable&&(this.readable=!1),!1===e.writable&&(this.writable=!1),!1===e.allowHalfOpen&&(this.allowHalfOpen=!1,this.once("end",a)))):new n(e)}function a(){this._writableState.ended||process.nextTick(o,this)}function o(e){e.end()}var i=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};e.exports=n;var s=r(11864),l=r(92042);r(94835)(n,s);for(var d=i(l.prototype),p=0,c;p{"use strict";function n(e){return this instanceof n?void a.call(this,e):new n(e)}e.exports=n;var a=r(57173);r(94835)(n,a),n.prototype._transform=function(e,t,r){r(null,e)}},11864:(e,t,r)=>{"use strict";function n(e){return z.from(e)}function a(e){return z.isBuffer(e)||e instanceof R}function o(e,t,r){return"function"==typeof e.prependListener?e.prependListener(t,r):void(e._events&&e._events[t]?Array.isArray(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]:e.on(t,r))}function i(e,t,n){A=A||r(18084),e=e||{},"boolean"!=typeof n&&(n=t instanceof A),this.objectMode=!!e.objectMode,n&&(this.objectMode=this.objectMode||!!e.readableObjectMode),this.highWaterMark=N(this,e,"readableHighWaterMark",n),this.buffer=new W,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.paused=!0,this.emitClose=!1!==e.emitClose,this.autoDestroy=!!e.autoDestroy,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(!H&&(H=r(84882).s),this.decoder=new H(e.encoding),this.encoding=e.encoding)}function s(e){if(A=A||r(18084),!(this instanceof s))return new s(e);var t=this instanceof A;this._readableState=new i(e,this,t),this.readable=!0,e&&("function"==typeof e.read&&(this._read=e.read),"function"==typeof e.destroy&&(this._destroy=e.destroy)),L.call(this)}function l(e,t,r,a,o){I("readableAddChunk",t);var i=e._readableState;if(null===t)i.reading=!1,m(e,i);else{var s;if(o||(s=p(i,t)),s)Y(e,s);else if(!(i.objectMode||t&&0>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}function u(e,t){return 0>=e||0===t.length&&t.ended?0:t.objectMode?1:e===e?(e>t.highWaterMark&&(t.highWaterMark=c(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0)):t.flowing&&t.length?t.buffer.head.data.length:t.length}function m(e,t){if(I("onEofChunk"),!t.ended){if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,t.sync?g(e):(t.needReadable=!1,!t.emittedReadable&&(t.emittedReadable=!0,h(e)))}}function g(e){var t=e._readableState;I("emitReadable",t.needReadable,t.emittedReadable),t.needReadable=!1,t.emittedReadable||(I("emitReadable",t.flowing),t.emittedReadable=!0,process.nextTick(h,e))}function h(e){var t=e._readableState;I("emitReadable_",t.destroyed,t.length,t.ended),!t.destroyed&&(t.length||t.ended)&&(e.emit("readable"),t.emittedReadable=!1),t.needReadable=!t.flowing&&!t.ended&&t.length<=t.highWaterMark,C(e)}function f(e,t){t.readingMore||(t.readingMore=!0,process.nextTick(y,e,t))}function y(e,t){for(;!t.reading&&!t.ended&&(t.length=t.length?(r=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.first():t.buffer.concat(t.length),t.buffer.clear()):r=t.buffer.consume(e,t.decoder),r}function _(e){var t=e._readableState;I("endReadable",t.endEmitted),t.endEmitted||(t.ended=!0,process.nextTick(T,t,e))}function T(e,t){if(I("endReadableNT",e.endEmitted,e.length),!e.endEmitted&&0===e.length&&(e.endEmitted=!0,t.readable=!1,t.emit("end"),e.autoDestroy)){var r=t._writableState;(!r||r.autoDestroy&&r.finished)&&t.destroy()}}function E(e,t){for(var r=0,n=e.length;r=t.highWaterMark)||t.ended))return I("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?_(this):g(this),null;if(e=u(e,t),0===e&&t.ended)return 0===t.length&&_(this),null;var a=t.needReadable;I("need readable",a),(0===t.length||t.length-e{"use strict";function n(e,t){var r=this._transformState;r.transforming=!1;var n=r.writecb;if(null===n)return this.emit("error",new d);r.writechunk=null,r.writecb=null,null!=t&&this.push(t),n(e);var a=this._readableState;a.reading=!1,(a.needReadable||a.length{"use strict";function n(e){var t=this;this.next=null,this.entry=null,this.finish=function(){_(t,e)}}function a(e){return O.from(e)}function o(e){return O.isBuffer(e)||e instanceof P}function i(){}function s(e,t,a){T=T||r(18084),e=e||{},"boolean"!=typeof a&&(a=t instanceof T),this.objectMode=!!e.objectMode,a&&(this.objectMode=this.objectMode||!!e.writableObjectMode),this.highWaterMark=R(this,e,"writableHighWaterMark",a),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var o=!1===e.decodeStrings;this.decodeStrings=!o,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){f(t,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=!1!==e.emitClose,this.autoDestroy=!!e.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new n(this)}function l(e){T=T||r(18084);var t=this instanceof T;return t||j.call(l,this)?void(this._writableState=new s(e,this,t),this.writable=!0,e&&("function"==typeof e.write&&(this._write=e.write),"function"==typeof e.writev&&(this._writev=e.writev),"function"==typeof e.destroy&&(this._destroy=e.destroy),"function"==typeof e.final&&(this._final=e.final)),A.call(this)):new l(e)}function d(e,t){var r=new F;U(e,r),process.nextTick(t,r)}function p(e,t,r,n){var a;return null===r?a=new D:"string"!=typeof r&&!t.objectMode&&(a=new I("chunk",["string","Buffer"],r)),!a||(U(e,a),process.nextTick(n,a),!1)}function c(e,t,r){return e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=O.from(t,r)),t}function u(e,t,r,n,a,o){if(!r){var i=c(t,n,a);n!==i&&(r=!0,a="buffer",n=i)}var s=t.objectMode?1:n.length;t.length+=s;var l=t.length{"use strict";function n(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){return{value:e,done:t}}function o(e){var t=e[d];if(null!==t){var r=e[h].read();null!==r&&(e[m]=null,e[d]=null,e[p]=null,t(a(r,!1)))}}function i(e){process.nextTick(o,e)}function s(e,t){return function(r,n){e.then(function(){return t[u]?void r(a(void 0,!0)):void t[g](r,n)},n)}}var l=r(26052),d=Symbol("lastResolve"),p=Symbol("lastReject"),c=Symbol("error"),u=Symbol("ended"),m=Symbol("lastPromise"),g=Symbol("handlePromise"),h=Symbol("stream"),f=Object.getPrototypeOf(function(){}),y=Object.setPrototypeOf((b={get stream(){return this[h]},next:function(){var e=this,t=this[c];if(null!==t)return Promise.reject(t);if(this[u])return Promise.resolve(a(void 0,!0));if(this[h].destroyed)return new Promise(function(t,r){process.nextTick(function(){e[c]?r(e[c]):t(a(void 0,!0))})});var r=this[m],n;if(r)n=new Promise(s(r,this));else{var o=this[h].read();if(null!==o)return Promise.resolve(a(o,!1));n=new Promise(this[g])}return this[m]=n,n}},n(b,Symbol.asyncIterator,function(){return this}),n(b,"return",function(){var e=this;return new Promise(function(t,r){e[h].destroy(null,function(e){return e?void r(e):void t(a(void 0,!0))})})}),b),f),b;e.exports=function(e){var t=Object.create(y,(r={},n(r,h,{value:e,writable:!0}),n(r,d,{value:null,writable:!0}),n(r,p,{value:null,writable:!0}),n(r,c,{value:null,writable:!0}),n(r,u,{value:e._readableState.endEmitted,writable:!0}),n(r,g,{value:function(e,r){var n=t[h].read();n?(t[m]=null,t[d]=null,t[p]=null,e(a(n,!1))):(t[d]=e,t[p]=r)},writable:!0}),r)),r;return t[m]=null,l(e,function(e){if(e&&"ERR_STREAM_PREMATURE_CLOSE"!==e.code){var r=t[p];return null!==r&&(t[m]=null,t[d]=null,t[p]=null,r(e)),void(t[c]=e)}var n=t[d];null!==n&&(t[m]=null,t[d]=null,t[p]=null,n(a(void 0,!0))),t[u]=!0}),e.on("readable",i.bind(null,t)),t}},38568:(e,t,r)=>{"use strict";function n(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function a(e){for(var t=1,r;t>>0),r=this.head,n=0;r;)d(r.data,t,n),n+=r.data.length,r=r.next;return t}},{key:"consume",value:function(e,t){var r;return eo.length?o.length:e;if(a+=i===o.length?o:o.slice(0,e),e-=i,0===e){i===o.length?(++r,this.head=t.next?t.next:this.tail=null):(this.head=t,t.data=o.slice(i));break}++r}return this.length-=r,a}},{key:"_getBuffer",value:function(e){var t=u.allocUnsafe(e),r=this.head,a=1;for(r.data.copy(t),e-=r.data.length;r=r.next;){var o=r.data,i=e>o.length?o.length:e;if(o.copy(t,t.length-e,0,i),e-=i,0===e){i===o.length?(++a,this.head=r.next?r.next:this.tail=null):(this.head=r,r.data=o.slice(i));break}++a}return this.length-=a,t}},{key:h,value:function(e,t){return g(this,a({},t,{depth:0,customInspect:!1}))}}]),e}()},22126:e=>{"use strict";function t(e,t){n(e,t),r(e)}function r(e){e._writableState&&!e._writableState.emitClose||e._readableState&&!e._readableState.emitClose||e.emit("close")}function n(e,t){e.emit("error",t)}e.exports={destroy:function(e,a){var o=this,i=this._readableState&&this._readableState.destroyed,s=this._writableState&&this._writableState.destroyed;return i||s?(a?a(e):e&&(this._writableState?!this._writableState.errorEmitted&&(this._writableState.errorEmitted=!0,process.nextTick(n,this,e)):process.nextTick(n,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,function(e){!a&&e?o._writableState?o._writableState.errorEmitted?process.nextTick(r,o):(o._writableState.errorEmitted=!0,process.nextTick(t,o,e)):process.nextTick(t,o,e):a?(process.nextTick(r,o),a(e)):process.nextTick(r,o)}),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)},errorOrDestroy:function(e,t){var r=e._readableState,n=e._writableState;r&&r.autoDestroy||n&&n.autoDestroy?e.destroy(t):e.emit("error",t)}}},26052:(e,t,r)=>{"use strict";function n(e){var t=!1;return function(){if(!t){t=!0;for(var r=arguments.length,n=Array(r),a=0;a{"use strict";function n(e,t,r,n,a,o,i){try{var s=e[o](i),l=s.value}catch(e){return void r(e)}s.done?t(l):Promise.resolve(l).then(n,a)}function a(e){return function(){var t=this,r=arguments;return new Promise(function(a,o){function i(e){n(l,a,o,i,s,"next",e)}function s(e){n(l,a,o,i,s,"throw",e)}var l=e.apply(t,r);i(void 0)})}}function o(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function i(e){for(var t=1,r;t{"use strict";function n(e){var t=!1;return function(){t||(t=!0,e.apply(void 0,arguments))}}function a(e){if(e)throw e}function o(e){return e.setHeader&&"function"==typeof e.abort}function s(e,t,a,i){i=n(i);var s=!1;e.on("close",function(){s=!0}),void 0===g&&(g=r(26052)),g(e,{readable:t,writable:a},function(e){return e?i(e):void(s=!0,i())});var l=!1;return function(t){if(!s)return l?void 0:(l=!0,o(e)?e.abort():"function"==typeof e.destroy?e.destroy():void i(t||new m("pipe")))}}function l(e){e()}function d(e,t){return e.pipe(t)}function p(e){return e.length?"function"==typeof e[e.length-1]?e.pop():a:a}var c=r(71947).q,u=c.ERR_MISSING_ARGS,m=c.ERR_STREAM_DESTROYED,g;e.exports=function(){for(var e=arguments.length,t=Array(e),r=0;rt.length)throw new u("streams");var a=t.map(function(e,r){var i=r{"use strict";function n(e,t,r){return null==e.highWaterMark?t?e[r]:null:e.highWaterMark}var a=r(71947).q.ERR_INVALID_OPT_VALUE;e.exports={getHighWaterMark:function(e,t,r,o){var i=n(t,o,r);if(null!=i){if(!(isFinite(i)&&_Mathfloor(i)===i)||0>i){var s=o?r:"highWaterMark";throw new a(s,i)}return _Mathfloor(i)}return e.objectMode?16:16384}}},47640:(e,t,r)=>{e.exports=r(92413)},30009:(e,t,r)=>{var n=r(92413);"disable"===process.env.READABLE_STREAM&&n?(e.exports=n.Readable,Object.assign(e.exports,n),e.exports.Stream=n):(t=e.exports=r(11864),t.Stream=n||t,t.Readable=t,t.Writable=r(92042),t.Duplex=r(18084),t.Transform=r(57173),t.PassThrough=r(11798),t.finished=r(26052),t.pipeline=r(14705))},27510:e=>{e.exports={trueFunc:function(){return!0},falseFunc:function(){return!1}}},63726:(e,t,r)=>{function a(e){return parseInt(e,10)==e?parseInt(e,10):e.charCodeAt(0)}function o(e){return e.split("\\\\").join(y).split("\\{").join(b).split("\\}").join(S).split("\\,").join(x).split("\\.").join(v)}function i(e){return e.split(y).join("\\").split(b).join("{").split(S).join("}").split(x).join(",").split(v).join(".")}function s(e){if(!e)return[""];var t=[],r=f("{","}",e);if(!r)return e.split(",");var n=r.pre,a=r.body,o=r.post,i=n.split(",");i[i.length-1]+="{"+a+"}";var l=s(o);return o.length&&(i[i.length-1]+=l.shift(),i.push.apply(i,l)),t.push.apply(t,i),t}function l(e){return"{"+e+"}"}function d(e){return /^-?0\d/.test(e)}function p(e,t){return e<=t}function u(e,t){return e>=t}function g(e,t){var r=[],o=f("{","}",e);if(!o||/\$$/.test(o.pre))return[e];var m=/^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(o.body),b=/^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(o.body),v=m||b,C=0<=o.body.indexOf(",");if(!v&&!C)return o.post.match(/,.*\}/)?(e=o.pre+"{"+o.body+S+o.post,g(e)):[e];var w;if(v)w=o.body.split(/\.\./);else if(w=s(o.body),1===w.length&&(w=g(w[0],!1).map(l),1===w.length)){var _=o.post.length?g(o.post,!1):[""];return _.map(function(e){return o.pre+w[0]+e})}var T=o.pre,_=o.post.length?g(o.post,!1):[""],E;if(v){var A=a(w[0]),x=a(w[1]),y=_Mathmax(w[0].length,w[1].length),O=3==w.length?_Mathabs(a(w[2])):1,P=p;xR?"-"+W+M.slice(1):W+M}}E.push(M)}}else E=h(w,function(e){return g(e,!1)});for(var z=0;z{function a(e){if(l.isBuffer(e))return e;var t="function"==typeof l.alloc&&"function"==typeof l.from;if("number"==typeof e)return t?l.alloc(e):new l(e);if("string"==typeof e)return t?l.from(e):new l(e);throw new Error("input must be buffer, number, or string, received "+typeof e)}function o(e){var t=a(4);return t.writeInt32BE(e,0),t}function i(e,t){e=a(e),l.isBuffer(t)&&(t=t.readUInt32BE(0));for(var r=-1^~~t,o=0;o>>8;return-1^r}function s(){return o(i.apply(null,arguments))}var l=r(64293).Buffer,d=[0,1996959894,3993919788,2567524794,124634137,1886057615,3915621685,2657392035,249268274,2044508324,3772115230,2547177864,162941995,2125561021,3887607047,2428444049,498536548,1789927666,4089016648,2227061214,450548861,1843258603,4107580753,2211677639,325883990,1684777152,4251122042,2321926636,335633487,1661365465,4195302755,2366115317,997073096,1281953886,3579855332,2724688242,1006888145,1258607687,3524101629,2768942443,901097722,1119000684,3686517206,2898065728,853044451,1172266101,3705015759,2882616665,651767980,1373503546,3369554304,3218104598,565507253,1454621731,3485111705,3099436303,671266974,1594198024,3322730930,2970347812,795835527,1483230225,3244367275,3060149565,1994146192,31158534,2563907772,4023717930,1907459465,112637215,2680153253,3904427059,2013776290,251722036,2517215374,3775830040,2137656763,141376813,2439277719,3865271297,1802195444,476864866,2238001368,4066508878,1812370925,453092731,2181625025,4111451223,1706088902,314042704,2344532202,4240017532,1658658271,366619977,2362670323,4224994405,1303535960,984961486,2747007092,3569037538,1256170817,1037604311,2765210733,3554079995,1131014506,879679996,2909243462,3663771856,1141124467,855842277,2852801631,3708648649,1342533948,654459306,3188396048,3373015174,1466479909,544179635,3110523913,3462522015,1591671054,702138776,2966460450,3352799412,1504918807,783551873,3082640443,3233442989,3988292384,2596254646,62317068,1957810842,3939845945,2647816111,81470997,1943803523,3814918930,2489596804,225274430,2053790376,3826175755,2466906013,167816743,2097651377,4027552580,2265490386,503444072,1762050814,4150417245,2154129355,426522225,1852507879,4275313526,2312317920,282753626,1742555852,4189708143,2394877945,397917763,1622183637,3604390888,2714866558,953729732,1340076626,3518719985,2797360999,1068828381,1219638859,3624741850,2936675148,906185462,1090812512,3747672003,2825379669,829329135,1181335161,3412177804,3160834842,628085408,1382605366,3423369109,3138078467,570562233,1426400815,3317316542,2998733608,733239954,1555261956,3268935591,3050360625,752459403,1541320221,2607071920,3965973030,1969922972,40735498,2617837225,3943577151,1913087877,83908371,2512341634,3803740692,2075208622,213261112,2463272603,3855990285,2094854071,198958881,2262029012,4057260610,1759359992,534414190,2176718541,4139329115,1873836001,414664567,2282248934,4279200368,1711684554,285281116,2405801727,4167216745,1634467795,376229701,2685067896,3608007406,1308918612,956543938,2808555105,3495958263,1231636301,1047427035,2932959818,3654703836,1088359270,936918e3,2847714899,3736837829,1202900863,817233897,3183342108,3401237130,1404277552,615818150,3134207493,3453421203,1423857449,601450431,3009837614,3294710456,1567103746,711928724,3020668471,3272380065,1510334235,755167117];"undefined"!=typeof Int32Array&&(d=new Int32Array(d)),s.signed=function(){return i.apply(null,arguments)},s.unsigned=function(){return i.apply(null,arguments)>>>0},e.exports=s},28729:(e,t,r)=>{"use strict";const n=r(35747),a=r(85622),o=n.lchown?"lchown":"chown",i=n.lchownSync?"lchownSync":"chownSync",s=n.lchown&&!process.version.match(/v1[1-9]+\./)&&!process.version.match(/v10\.[6-9]/),l=(e,t,r)=>{try{return n[i](e,t,r)}catch(e){if("ENOENT"!==e.code)throw e}},d=(e,t,r)=>{try{return n.chownSync(e,t,r)}catch(e){if("ENOENT"!==e.code)throw e}},p=s?(e,t,r,a)=>o=>{o&&"EISDIR"===o.code?n.chown(e,t,r,a):a(o)}:(e,t,r,n)=>n,c=s?(e,t,r)=>{try{return l(e,t,r)}catch(n){if("EISDIR"!==n.code)throw n;d(e,t,r)}}:(e,t,r)=>l(e,t,r),u=process.version;let m=(e,t,r)=>n.readdir(e,t,r),g=(e,t)=>n.readdirSync(e,t);/^v4\./.test(u)&&(m=(e,t,r)=>n.readdir(e,r));const h=(e,t,r,a)=>{n[o](e,t,r,p(e,t,r,e=>{a(e&&"ENOENT"!==e.code?e:null)}))},f=(e,t,r,o,i)=>{if("string"==typeof t)return n.lstat(a.resolve(e,t),(n,a)=>n?i("ENOENT"===n.code?null:n):void(a.name=t,f(e,a,r,o,i)));if(t.isDirectory())y(a.resolve(e,t.name),r,o,n=>{if(n)return i(n);const s=a.resolve(e,t.name);h(s,r,o,i)});else{const n=a.resolve(e,t.name);h(n,r,o,i)}},y=(e,t,r,n)=>{m(e,{withFileTypes:!0},(a,o)=>{if(a){if("ENOENT"===a.code)return n();if("ENOTDIR"!==a.code&&"ENOTSUP"!==a.code)return n(a)}if(a||!o.length)return h(e,t,r,n);let i=o.length,s=null;const l=a=>s?void 0:a?n(s=a):0==--i?h(e,t,r,n):void 0;o.forEach(n=>f(e,n,t,r,l))})},b=(e,t,r,o)=>{if("string"==typeof t)try{const r=n.lstatSync(a.resolve(e,t));r.name=t,t=r}catch(e){if("ENOENT"===e.code)return;throw e}t.isDirectory()&&S(a.resolve(e,t.name),r,o),c(a.resolve(e,t.name),r,o)},S=(e,t,r)=>{let n;try{n=g(e,{withFileTypes:!0})}catch(n){if("ENOENT"===n.code)return;if("ENOTDIR"===n.code||"ENOTSUP"===n.code)return c(e,t,r);throw n}return n&&n.length&&n.forEach(n=>b(e,n,t,r)),c(e,t,r)};e.exports=y,y.sync=S},16755:e=>{e.exports=function(e,r){for(var n=[],a=0,o;a{"use strict";function t(e){if(!e)throw new TypeError("Expected implementation");var t=l.filter(function(t){return"function"!=typeof e[t]});if(t.length){var r="("+t.join(", ")+")";throw new Error("Expected functions "+r+" to be implemented")}}function r(e,t){for(var r=t.length,n,a,o;-1<--r;){for(n=a=t[r],t[r]=null,o=!0;a;){if(-1{"use strict";function n(e){return function(t,r,n){return r=r||{},r.adapter=r.adapter||l,e(t,r,n)}}function a(e){return function(t,r,n){return n=n||{},n.adapter=n.adapter||l,"function"!=typeof t&&(t=u(t,n,r)),t.shouldTestNextSiblings&&(r=i(n&&n.context||r,n.adapter)),r=Array.isArray(r)?n.adapter.removeSubsets(r):n.adapter.getChildren(r),e(t,r,n)}}function o(e,t){var r=t.getSiblings(e);if(!Array.isArray(r))return[];for(r=r.slice(0);r.shift()!==e;);return r}function i(e,t){Array.isArray(e)||(e=[e]);for(var r=e.slice(0),n=0,a=e.length,s;n{var n=r(27510).falseFunc,a=/[-[\]{}()*+?.,\\^$|#\s]/g,o={__proto__:null,equals:function(e,t,r){var n=t.name,a=t.value,o=r.adapter;return t.ignoreCase?(a=a.toLowerCase(),function(t){var r=o.getAttributeValue(t,n);return null!=r&&r.toLowerCase()===a&&e(t)}):function(t){return o.getAttributeValue(t,n)===a&&e(t)}},hyphen:function(e,t,r){var n=t.name,a=t.value,o=a.length,i=r.adapter;return t.ignoreCase?(a=a.toLowerCase(),function(t){var r=i.getAttributeValue(t,n);return null!=r&&(r.length===o||"-"===r.charAt(o))&&r.substr(0,o).toLowerCase()===a&&e(t)}):function(t){var r=i.getAttributeValue(t,n);return null!=r&&r.substr(0,o)===a&&(r.length===o||"-"===r.charAt(o))&&e(t)}},element:function(e,t,r){var o=t.name,i=t.value,s=r.adapter;if(/\s/.test(i))return n;i=i.replace(a,"\\$&");var l="(?:^|\\s)"+i+"(?:$|\\s)",d=t.ignoreCase?"i":"",p=new RegExp(l,d);return function(t){var r=s.getAttributeValue(t,o);return null!=r&&p.test(r)&&e(t)}},exists:function(e,t,r){var n=t.name,a=r.adapter;return function(t){return a.hasAttrib(t,n)&&e(t)}},start:function(e,t,r){var a=t.name,o=t.value,i=o.length,s=r.adapter;return 0===i?n:t.ignoreCase?(o=o.toLowerCase(),function(t){var r=s.getAttributeValue(t,a);return null!=r&&r.substr(0,i).toLowerCase()===o&&e(t)}):function(t){var r=s.getAttributeValue(t,a);return null!=r&&r.substr(0,i)===o&&e(t)}},end:function(e,t,r){var a=t.name,o=t.value,i=-o.length,s=r.adapter;return 0===i?n:t.ignoreCase?(o=o.toLowerCase(),function(t){var r=s.getAttributeValue(t,a);return null!=r&&r.substr(i).toLowerCase()===o&&e(t)}):function(t){var r=s.getAttributeValue(t,a);return null!=r&&r.substr(i)===o&&e(t)}},any:function(e,t,r){var o=t.name,i=t.value,s=r.adapter;if(""===i)return n;if(t.ignoreCase){var l=new RegExp(i.replace(a,"\\$&"),"i");return function(t){var r=s.getAttributeValue(t,o);return null!=r&&l.test(r)&&e(t)}}return function(t){var r=s.getAttributeValue(t,o);return null!=r&&0<=r.indexOf(i)&&e(t)}},not:function(e,t,r){var n=t.name,a=t.value,o=r.adapter;return""===a?function(t){return!!o.getAttributeValue(t,n)&&e(t)}:t.ignoreCase?(a=a.toLowerCase(),function(t){var r=o.getAttributeValue(t,n);return null!=r&&r.toLowerCase()!==a&&e(t)}):function(t){return o.getAttributeValue(t,n)!==a&&e(t)}}};e.exports={compile:function(e,t,r){if(r&&r.strict&&(t.ignoreCase||"not"===t.action))throw new Error("Unsupported attribute selector");return o[t.action](e,t,r)},rules:o}},22365:(e,t,r)=>{function n(e,t,r){var n=o(e,t,r);return a(n,t)}function a(e,t){var r=t.adapter;return function(t){return r.isTag(t)&&e(t)}}function o(e,t,r){var n=m(e,t);return l(n,t,r)}function i(e){return"pseudo"===e.type&&("scope"===e.name||Array.isArray(e.data)&&e.data.some(function(e){return e.some(i)}))}function s(e,t,r){var n=t.adapter,a=!!r&&!!r.length&&r.every(function(t){return t===_||!!n.getParent(t)});e.forEach(function(e){if(0f[e.type]}function p(e,t,r){return e.reduce(function(e,n){if(e===x)return e;if(!(n.type in y))throw new Error("Rule type "+n.type+" is not supported by css-select");return y[n.type](e,n,t,r)},t&&t.rootFunc||S)}function c(e,t){return t===x||e===S?e:e===x||t===S?t:function(r){return e(r)||t(r)}}function u(e){return e.some(d)}e.exports=n;var m=r(17525).parse,g=r(27510),h=r(65426),f=r(86721),y=r(35890),b=r(65582),S=g.trueFunc,x=g.falseFunc,v=b.filters,k={type:"descendant"},C={type:"_flexibleDescendant"},w={type:"pseudo",name:"scope"},_={};v.not=function(e,t,r,n){var a={xmlMode:!!(r&&r.xmlMode),strict:!!(r&&r.strict),adapter:r.adapter};if(a.strict&&(1{var n=r(91221),a=r(65582);e.exports={__proto__:null,attribute:n.compile,pseudo:a.compile,tag:function(e,t,r){var n=t.name,a=r.adapter;return function(t){return a.getName(t)===n&&e(t)}},descendant:function(e,t,r){var n="undefined"==typeof WeakSet?null:new WeakSet,a=r.adapter;return function(t){for(var r=!1;!r&&(t=a.getParent(t));)n&&n.has(t)||(r=e(t),!r&&n&&n.add(t));return r}},_flexibleDescendant:function(e,t,r){var n=r.adapter;return function(t){for(var r=e(t);!r&&(t=n.getParent(t));)r=e(t);return r}},parent:function(e,t,r){function n(t){return a.isTag(t)&&e(t)}if(r&&r.strict)throw new Error("Parent selector isn't part of CSS3");var a=r.adapter;return function(e){return a.getChildren(e).some(n)}},child:function(e,t,r){var n=r.adapter;return function(t){var r=n.getParent(t);return!!r&&e(r)}},sibling:function(e,t,r){var n=r.adapter;return function(t){for(var r=n.getSiblings(t),a=0;a{function n(e,t){var r={name:e,value:t};return function(e,t,n){return m(e,r,n)}}function a(e,t){return function(r){return!!t.getParent(r)&&e(r)}}function o(e,t){for(var r=0;e&&r{function n(e){var t=a[e.type];if(t===a.attribute)t=o[e.action],t===o.equals&&"id"===e.name&&(t=9),e.ignoreCase&&(t>>=1);else if(t===a.pseudo)if(!e.data)t=3;else if("has"===e.name||"contains"===e.name)t=0;else if("matches"===e.name||"not"===e.name){t=0;for(var r=0;rt&&(t=s)}1a))for(var o=r-1,s;0<=o&&a{function n(e,t){var r={};for(var n in e)r[n]=e[n].syntax;for(var n in t)n in e?t[n].syntax?r[n]=t[n].syntax:delete r[n]:t[n].syntax&&(r[n]=t[n].syntax);return r}var a=r(81515),o=r(58933),i=r(74291);e.exports={properties:n(a,i.properties),types:n(o,i.syntaxes)}},5355:e=>{function t(e){return{prev:null,next:null,data:e}}function r(e,t,r){var n;return null===a?n={prev:t,next:r,cursor:e.cursor}:(n=a,a=a.cursor,n.prev=t,n.next=r,n.cursor=e.cursor),e.cursor=n,n}function n(e){var t=e.cursor;e.cursor=t.cursor,t.prev=null,t.next=null,t.cursor=a,a=t}var a=null,o=function(){this.cursor=null,this.head=null,this.tail=null};o.createItem=t,o.prototype.createItem=t,o.prototype.updateCursors=function(e,t,r,n){for(var a=this.cursor;null!==a;)a.prev===e&&(a.prev=t),a.next===r&&(a.next=n),a=a.cursor},o.prototype.getSize=function(){for(var e=0,t=this.head;t;)e++,t=t.next;return e},o.prototype.fromArray=function(e){var r=null;this.head=null;for(var n=0,a;n{function n(e,t){for(var r=t.length,n=a(e.lines,r),s=e.startLine,l=a(e.columns,r),d=e.startColumn,p=0{function n(e,t){function r(e,t){return n.slice(e,t).map(function(t,r){for(var n=e+r+1+"";n.lengthp?"\u2026":"")+n[c].substr(p,98)+(n[c].length>p+100-1?"\u2026":""));return[r(s,a),Array(o+d+2).join("-")+"^",r(a,l)].filter(Boolean).join("\n")}var a=r(41187);e.exports=function(e,t,r,o,i){var s=a("SyntaxError",e);return s.source=t,s.offset=r,s.line=o,s.column=i,s.sourceFragment=function(e){return n(s,isNaN(e)?0:e)},Object.defineProperty(s,"formattedMessage",{get:function(){return"Parse error: "+s.message+"\n"+n(s,2)}}),s.parseError={offset:r,line:o,column:i},s}},83058:(e,t,r)=>{var n=r(21713),a=n.TYPE,o=n.NAME,i=r(86716),s=i.cmpStr,l=a.EOF,d=a.WhiteSpace,p=a.Comment,c=16777215,u=24,m=function(){this.offsetAndType=null,this.balance=null,this.reset()};m.prototype={reset:function(){this.eof=!1,this.tokenIndex=-1,this.tokenType=0,this.tokenStart=this.firstCharOffset,this.tokenEnd=this.firstCharOffset},lookupType:function(e){return e+=this.tokenIndex,e>u:l},lookupOffset:function(e){return e+=this.tokenIndex,e>u,t(o,this.source,n)){case 1:break loop;case 2:r++;break loop;default:n=this.offsetAndType[r]&c,this.balance[a]===r&&(r=a);}}return r-this.tokenIndex},isBalanceEdge:function(e){return this.balance[this.tokenIndex]>u===d;e++,t++);0>u,this.tokenEnd=t&c):(this.tokenIndex=this.tokenCount,this.next())},next:function(){var e=this.tokenIndex+1;e>u,this.tokenEnd=e&c):(this.tokenIndex=this.tokenCount,this.eof=!0,this.tokenType=l,this.tokenStart=this.tokenEnd=this.source.length)},dump:function(){var e=this.firstCharOffset;return Array.prototype.slice.call(this.offsetAndType,0,this.tokenCount).map(function(t,r){var n=e,a=t&c;return e=a,{idx:r,type:o[t>>u],chunk:this.source.substring(n,a),balance:this.balance[r]}},this)}},e.exports=m},58248:e=>{var t="undefined"==typeof Uint32Array?Array:Uint32Array;e.exports=function(e,r){return null===e||e.length{var n=r(5355);e.exports=function(e){return{fromPlainObject:function(t){return e(t,{enter:function(e){e.children&&!1==e.children instanceof n&&(e.children=new n().fromArray(e.children))}}),t},toPlainObject:function(t){return e(t,{leave:function(e){e.children&&e.children instanceof n&&(e.children=e.children.toArray())}}),t}}}},59437:(e,t,r)=>{var n=r(41187);e.exports=function(e,t,r){var a=n("SyntaxError",e);return a.input=t,a.offset=r,a.rawMessage=e,a.message=a.rawMessage+"\n "+a.input+"\n--"+Array((a.offset||a.input.length)+1).join("-")+"^",a}},95561:e=>{function t(e){return e}function r(e){return 0===e.min&&0===e.max?"*":0===e.min&&1===e.max?"?":1===e.min&&0===e.max?e.comma?"#":"+":1===e.min&&1===e.max?"":(e.comma?"#":"")+(e.min===e.max?"{"+e.min+"}":"{"+e.min+","+(0===e.max?"":e.max)+"}")}function n(e){switch(e.type){case"Range":return" ["+(null===e.min?"-\u221E":e.min)+","+(null===e.max?"\u221E":e.max)+"]";default:throw new Error("Unknown node type `"+e.type+"`");}}function a(e,t,r,n){var a=" "===e.combinator||n?e.combinator:" "+e.combinator+" ",i=e.terms.map(function(e){return o(e,t,r,n)}).join(a);return(e.explicit||r)&&(i=(n||","===i[0]?"[":"[ ")+i+(n?"]":" ]")),i}function o(e,t,i,s){var l;switch(e.type){case"Group":l=a(e,t,i,s)+(e.disallowEmpty?"!":"");break;case"Multiplier":return o(e.term,t,i,s)+t(r(e),e);case"Type":l="<"+e.name+(e.opts?t(n(e.opts),e.opts):"")+">";break;case"Property":l="<'"+e.name+"'>";break;case"Keyword":l=e.name;break;case"AtKeyword":l="@"+e.name;break;case"Function":l=e.name+"(";break;case"String":case"Token":l=e.value;break;case"Comma":l=",";break;default:throw new Error("Unknown node type `"+e.type+"`");}return t(l,e)}e.exports=function(e,r){var n=t,a=!1,i=!1;return"function"==typeof r?n=r:r&&(a=!!r.forceBraces,i=!!r.compact,"function"==typeof r.decorate&&(n=r.decorate)),o(e,n,a,i)}},98333:(e,t,r)=>{e.exports={SyntaxError:r(59437),parse:r(81550),generate:r(95561),walk:r(55872)}},81550:(e,t,r)=>{function n(e){return e.substringToPos(e.findWsEnd(e.pos))}function a(e){for(var t=e.pos,r;tr||57t&&1===v[t])return g(e);switch(t){case 93:break;case 91:return d(e,y(e));case 60:return 39===e.nextCharCode()?c(e):m(e);case 124:return{type:"Combinator",value:e.substringToPos(124===e.nextCharCode()?e.pos+2:e.pos+1)};case 38:return e.pos++,e.eat(38),{type:"Combinator",value:"&&"};case 44:return e.pos++,{type:"Comma"};case 39:return d(e,{type:"String",value:i(e)});case 32:case 9:case 10:case 13:case 12:return{type:"Spaces",value:n(e)};case 64:return t=e.nextCharCode(),128>t&&1===v[t]?(e.pos++,{type:"AtKeyword",name:a(e)}):p(e);case 42:case 43:case 63:case 35:case 33:break;case 123:if(t=e.nextCharCode(),48>t||57r;r++)t[r]=e(_StringfromCharCode(r))?1:0;return t}(function(e){return /[a-zA-Z0-9\-]/.test(e)}),k={" ":1,"&&":2,"||":3,"|":4};S("[a&&#|<'c'>*||e() f{2} /,(% g#{1,2} h{2,})]!"),e.exports=S},22059:(e,t,r)=>{var n=r(59437),a=function(e){this.str=e,this.pos=0};a.prototype={charCodeAt:function(e){return e{function t(e){return"function"==typeof e?e:r}var r=function(){};e.exports=function(e,n,a){function o(e){switch(i.call(a,e),e.type){case"Group":e.terms.forEach(o);break;case"Multiplier":o(e.term);break;case"Type":case"Property":case"Keyword":case"AtKeyword":case"Function":case"String":case"Token":case"Comma":break;default:throw new Error("Unknown type: "+e.type);}s.call(a,e)}var i=r,s=r;if("function"==typeof n?i=n:n&&(i=t(n.enter),s=t(n.leave)),i===r&&s===r)throw new Error("Neither `enter` nor `leave` walker handler is set or both aren't a function");o(e,a)}},31010:(e,t,r)=>{function n(e,t){var r=e.children,n=null;"function"==typeof t?r.forEach(function(e){null!==n&&t.call(this,n),this.node(e),n=e},this):r.forEach(this.node,this)}var a=r(95137),o=Object.prototype.hasOwnProperty;e.exports=function(e){function t(e){if(o.call(r,e.type))r[e.type].call(this,e);else throw new Error("Unknown node type: "+e.type)}var r={};if(e.node)for(var i in e.node)r[i]=e.node[i].generate;return function(e,r){var o="",i={children:n,node:t,chunk:function(e){o+=e},result:function(){return o}};return r&&("function"==typeof r.decorator&&(i=r.decorator(i)),r.sourceMap&&(i=a(i))),i.node(e),i.result()}}},95137:(e,t,r)=>{var n=r(52234).h,a={Atrule:!0,Selector:!0,Declaration:!0};e.exports=function(e){var t=new n,r=1,o=0,i={line:1,column:0},s={line:0,column:0},l=!1,d={line:1,column:0},p={generated:d},c=e.node;e.node=function(e){if(e.loc&&e.loc.start&&a.hasOwnProperty(e.type)){var n=e.loc.start.line,u=e.loc.start.column-1;(s.line!==n||s.column!==u)&&(s.line=n,s.column=u,i.line=r,i.column=o,l&&(l=!1,(i.line!==d.line||i.column!==d.column)&&t.addMapping(p)),l=!0,t.addMapping({source:e.loc.source,original:s,generated:i}))}c.call(this,e),l&&a.hasOwnProperty(e.type)&&(d.line=r,d.column=o)};var u=e.chunk;e.chunk=function(e){for(var t=0;t{e.exports=r(30826)},42164:(e,t,r)=>{function n(e,t,r){var n={};for(var a in e)e[a].syntax&&(n[a]=r?e[a].syntax:u(e[a].syntax,{compact:t}));return n}function a(e){for(var t=0;t"),k=function(e,t,r){if(this.valueCommonSyntax=x,this.syntax=t,this.generic=!1,this.properties={},this.types={},this.structure=r||S(e),e){if(e.types)for(var n in e.types)this.addType_(n,e.types[n]);if(e.generic)for(var n in this.generic=!0,p)this.addType_(n,p[n]);if(e.properties)for(var n in e.properties)this.addProperty_(n,e.properties[n])}};k.prototype={structure:{},checkStructure:function(e){function t(e,t){n.push({node:e,message:t})}var r=this.structure,n=[];return this.syntax.walk(e,function(e){r.hasOwnProperty(e.type)?r[e.type].check(e,t):t(e,"Unknown node type `"+e.type+"`")}),!!n.length&&n},createDescriptor:function(e,t,r){var n={type:t,name:r},a={type:t,name:r,syntax:null,match:null};return"function"==typeof e?a.match=h(e,n):("string"==typeof e?Object.defineProperty(a,"syntax",{get:function(){return Object.defineProperty(a,"syntax",{value:c(e)}),a.syntax}}):a.syntax=e,Object.defineProperty(a,"match",{get:function(){return Object.defineProperty(a,"match",{value:h(a.syntax,n)}),a.match}})),a},addProperty_:function(e,t){this.properties[e]=this.createDescriptor(t,"Property",e)},addType_:function(e,t){this.types[e]=this.createDescriptor(t,"Type",e),t===p["-ms-legacy-expression"]&&(this.valueCommonSyntax=v)},matchDeclaration:function(e){return"Declaration"===e.type?this.matchProperty(e.property,e.value):o(null,new Error("Not a Declaration node"))},matchProperty:function(e,t){var r=d.property(e);if(r.custom)return o(null,new Error("Lexer matching doesn't applicable for custom properties"));var n=r.vendor?this.getProperty(r.name)||this.getProperty(r.basename):this.getProperty(r.name);return n?i(this,n,t,!0):o(null,new s("Unknown property",e))},matchType:function(e,t){var r=this.getType(e);return r?i(this,r,t,!1):o(null,new s("Unknown type",e))},match:function(e,t){return"string"==typeof e||e&&e.type?("string"!=typeof e&&e.match||(e=this.createDescriptor(e,"Type","anonymous")),i(this,e,t,!1)):o(null,new s("Bad syntax"))},findValueFragments:function(e,t,r,n){return b.matchFragments(this,t,this.matchProperty(e,t),r,n)},findDeclarationValueFragments:function(e,t,r){return b.matchFragments(this,e.value,this.matchDeclaration(e),t,r)},findAllFragments:function(e,t,r){var n=[];return this.syntax.walk(e,{visit:"Declaration",enter:function(e){n.push.apply(n,this.findDeclarationValueFragments(e,t,r))}.bind(this)}),n},getProperty:function(e){return this.properties.hasOwnProperty(e)?this.properties[e]:null},getType:function(e){return this.types.hasOwnProperty(e)?this.types[e]:null},validate:function(){function e(n,a,o,i){return o.hasOwnProperty(a)?o[a]:void(o[a]=!1,null!==i.syntax&&m(i.syntax,function(i){if("Type"===i.type||"Property"===i.type){var s="Type"===i.type?n.types:n.properties,l="Type"===i.type?t:r;(!s.hasOwnProperty(i.name)||e(n,i.name,l,s[i.name]))&&(o[a]=!0)}},this))}var t={},r={};for(var n in this.types)e(this,n,t,this.types[n]);for(var n in this.properties)e(this,n,r,this.properties[n]);return t=Object.keys(t).filter(function(e){return t[e]}),r=Object.keys(r).filter(function(e){return r[e]}),t.length||r.length?{types:t,properties:r}:null},dump:function(e,t){return{generic:this.generic,types:n(this.types,!t,e),properties:n(this.properties,!t,e)}},toString:function(){return JSON.stringify(this.dump())}},e.exports=k},16044:(e,t,r)=>{function n(e){for(var t=e.tokens,r=e.longestMatch,n=r",l.css=g,l.mismatchOffset=p,l.loc={source:c&&c.loc&&c.loc.source||"",start:m,end:u},l.line=m?m.line:void 0,l.column=m?m.column:void 0,l.offset=m?m.offset:void 0,l.message=e+"\n syntax: "+l.syntax+"\n value: "+(l.css||"")+"\n --------"+Array(l.mismatchOffset+1).join("-")+"^",l}}},23479:(e,t,r)=>{function n(e,t){return null!==e&&e.type===c&&e.value.charCodeAt(0)===t}function a(e,t,r){for(;null!==e&&(e.type===u||e.type===m);)e=r(++t);return t}function o(e,t,r,n){if(!e)return 0;var a=e.value.charCodeAt(t);if(43===a||45===a){if(r)return 0;t++}for(;t{function n(e,t){return null!==e&&e.type===c&&e.value.charCodeAt(0)===t}function a(e,t){return e.value.charCodeAt(0)===t}function o(e,t,r){for(var n=t,a=0,i;n{function n(e,t){return te.max)return!0}return!1}function l(e,t){var r=e.index,n=0;do if(n++,e.balance<=r)break;while(e=t(n));return n}function d(e){return function(t,r,n){return null===t?0:t.type===S.Function&&o(t.value,C)?l(t,r):e(t,r,n)}}function p(e){return function(t){return null===t||t.type!==e?0:1}}function c(e){return function(t,r,n){if(null===t||t.type!==S.Dimension)return 0;var a=b(t.value,0);if(null!==e){var o=t.value.indexOf("\\",a),l=-1!==o&&i(t.value,o)?t.value.substring(a,o):t.value.substr(a);if(!1===e.hasOwnProperty(l.toLowerCase()))return 0}return s(n,t.value,a)?0:1}}function u(e){return"function"!=typeof e&&(e=function(){return 0}),function(t,r,n){return null!==t&&t.type===S.Number&&0===+t.value?1:e(t,r,n)}}var m=r(61063),g=m.isIdentifierStart,h=m.isHexDigit,f=m.isDigit,y=m.cmpStr,b=m.consumeNumber,S=m.TYPE,x=r(23479),v=r(77088),k=["unset","initial","inherit"],C=["calc(","-moz-calc(","-webkit-calc("];e.exports={"ident-token":p(S.Ident),"function-token":p(S.Function),"at-keyword-token":p(S.AtKeyword),"hash-token":p(S.Hash),"string-token":p(S.String),"bad-string-token":p(S.BadString),"url-token":p(S.Url),"bad-url-token":p(S.BadUrl),"delim-token":p(S.Delim),"number-token":p(S.Number),"percentage-token":p(S.Percentage),"dimension-token":p(S.Dimension),"whitespace-token":p(S.WhiteSpace),"CDO-token":p(S.CDO),"CDC-token":p(S.CDC),"colon-token":p(S.Colon),"semicolon-token":p(S.Semicolon),"comma-token":p(S.Comma),"[-token":p(S.LeftSquareBracket),"]-token":p(S.RightSquareBracket),"(-token":p(S.LeftParenthesis),")-token":p(S.RightParenthesis),"{-token":p(S.LeftCurlyBracket),"}-token":p(S.RightCurlyBracket),string:p(S.String),ident:p(S.Ident),"custom-ident":function(e){if(null===e||e.type!==S.Ident)return 0;var t=e.value.toLowerCase();return o(t,k)?0:a(t,"default")?0:1},"custom-property-name":function(e){return null===e||e.type!==S.Ident?0:45!==n(e.value,0)||45!==n(e.value,1)?0:1},"hex-color":function(e){if(null===e||e.type!==S.Hash)return 0;var t=e.value.length;if(4!==t&&5!==t&&7!==t&&9!==t)return 0;for(var r=1;re.index||e.balancee.index||e.balance{function n(e,t,r){return t===c&&r===u?e:e===c&&t===c&&r===c?e:("If"===e.type&&e.else===u&&t===c&&(t=e.then,e=e.match),{type:"If",match:e,then:t,else:r})}function a(e){return 2{function n(e){for(var t=null,r=null,n=e;null!==n;)r=n.prev,n.prev=t,t=n,n=r;return t}function a(e,t){if(e.length!==t.length)return!1;for(var r=0;r=n&&(n|=32),n!==a)return!1}return!0}function o(e){return null===e||e.type===m.Comma||e.type===m.Function||e.type===m.LeftParenthesis||e.type===m.LeftSquareBracket||e.type===m.LeftCurlyBracket||e.type===m.Delim}function i(e){return null===e||e.type===m.RightParenthesis||e.type===m.RightSquareBracket||e.type===m.RightCurlyBracket||e.type===m.Delim}function s(e,t,r){function n(){do E++,T=EA&&(A=E)}function b(){x={syntax:t.syntax,opts:t.syntax.opts||null!==x&&x.opts||null,prev:x},O={type:2,syntax:t.syntax,token:O.token,prev:O}}function S(){O=2===O.type?O.prev:{type:3,syntax:x.syntax,token:O.token,prev:O},x=x.prev}var x=null,v=null,k=null,C=null,w=0,_=null,T=null,E=-1,A=0,O={type:0,syntax:null,token:null,prev:null};for(n();null===_&&15000>++w;)switch(t.type){case"Match":if(null===v){if(null!==T&&(E!==e.length-1||"\\0"!==T.value&&"\\9"!==T.value)){t=c;break}_="Match";break}if(t=v.nextState,t===u)if(v.matchStack===O){t=c;break}else t=p;for(;v.syntaxStack!==x;)S();v=v.prev;break;case"Mismatch":if(null!==C&&!1!==C)(null===k||E>k.tokenIndex)&&(k=C,C=!1);else if(null===k){_="Mismatch";break}t=k.nextState,v=k.thenStack,x=k.syntaxStack,O=k.matchStack,E=k.tokenIndex,T=EE){for(;E":"<'"+t.name+"'>"));if(!1!==C&&null!==T&&"Type"===t.type){var q="custom-ident"===t.name&&T.type===m.Ident||"length"===t.name&&"0"===T.value;if(q){null===C&&(C=d(t,k)),t=c;break}}b(),t=W.match;break;case"Keyword":var z=t.name;if(null!==T){var B=T.value;if(-1!==B.indexOf("\\")&&(B=B.replace(/\\[09].*$/,"")),a(B,z)){y(),t=p;break}}t=c;break;case"AtKeyword":case"Function":if(null!==T&&a(T.value,t.name)){y(),t=p;break}t=c;break;case"Token":if(null!==T&&T.value===t.value){y(),t=p;break}t=c;break;case"Comma":null!==T&&T.type===m.Comma?o(O.token)?t=c:(y(),t=i(T)?c:p):t=o(O.token)||i(T)?p:c;break;case"String":for(var N="",M=E;M{function n(e,t){var r=[],n=0,o=0,s=t?t[o].node:null;for(a(e,i);!i.eof;){if(t)for(;o{function n(e){return"node"in e?e.node:n(e.match[0])}function a(e){return"node"in e?e.node:a(e.match[e.match.length-1])}var o=r(5355);e.exports={matchFragments:function(e,t,r,i,s){function l(r){if(null!==r.syntax&&r.syntax.type===i&&r.syntax.name===s){var p=n(r),c=a(r);e.syntax.walk(t,function(e,t,r){if(e===p){var n=new o;do{if(n.appendData(t.data),t.data===c)break;t=t.next}while(null!==t);d.push({parent:r,nodes:n})}})}Array.isArray(r.match)&&r.match.forEach(l)}var d=[];return null!==r.matched&&l(r.matched),d}}},25791:(e,t,r)=>{function n(e){return"number"==typeof e&&isFinite(e)&&_Mathfloor(e)===e&&0<=e}function a(e){return!!e&&n(e.offset)&&n(e.line)&&n(e.column)}function o(e,t){return function(r,n){if(!r||r.constructor!==Object)return n(r,"Type of node should be an Object");for(var o in r){var d=!0;if(!1!==l.call(r,o)){if("type"==o)r.type!==e&&n(r,"Wrong node type `"+r.type+"`, expected `"+e+"`");else if("loc"===o){if(null===r.loc)continue;else if(r.loc&&r.loc.constructor===Object)if("string"!=typeof r.loc.source)o+=".source";else if(!a(r.loc.start))o+=".start";else if(!a(r.loc.end))o+=".end";else continue;d=!1}else if(t.hasOwnProperty(o))for(var p=0,d=!1,c;!d&&p");else if(Array.isArray(u))d.push("List");else throw new Error("Wrong value `"+u+"` in `"+e+"."+s+"` structure definition");a[s]=d.join(" | ")}return{docs:a,check:o(e,n)}}var s=r(5355),l=Object.prototype.hasOwnProperty;e.exports={getStructureFromConfig:function(e){var t={};if(e.node)for(var r in e.node)if(l.call(e.node,r)){var n=e.node[r];if(n.structure)t[r]=i(r,n);else throw new Error("Missed `structure` field in `"+r+"` node type definition")}return t}}},29833:e=>{function t(e){function t(e){return null!==e&&("Type"===e.type||"Property"===e.type||"Keyword"===e.type)}function r(a){if(Array.isArray(a.match)){for(var o=0;o{function n(e){return function(){return this[e]()}}function a(e){var t={context:{},scope:{},atrule:{},pseudo:{}};if(e.parseContext)for(var r in e.parseContext)switch(typeof e.parseContext[r]){case"function":t.context[r]=e.parseContext[r];break;case"string":t.context[r]=n(e.parseContext[r]);}if(e.scope)for(var r in e.scope)t.scope[r]=e.scope[r];if(e.atrule)for(var r in e.atrule){var a=e.atrule[r];a.parse&&(t.atrule[r]=a.parse)}if(e.pseudo)for(var r in e.pseudo){var o=e.pseudo[r];o.parse&&(t.pseudo[r]=o.parse)}if(e.node)for(var r in e.node)t[r]=e.node[r].parse;return t}var o=r(70404),i=r(51708),s=r(83058),l=r(5355),d=r(61063),p=r(21713),c=r(86716).findWhiteSpaceStart,u=r(27190),m=function(){},g=p.TYPE,h=p.NAME,f=g.WhiteSpace,y=g.Ident,b=g.Function,S=g.Url,x=g.Hash,v=g.Percentage,k=g.Number,C=0;e.exports=function(e){var t={scanner:new s,locationMap:new o,filename:"",needPositions:!1,onParseError:m,onParseErrorThrow:!1,parseAtrulePrelude:!0,parseRulePrelude:!0,parseValue:!0,parseCustomProperty:!1,readSequence:u,createList:function(){return new l},createSingleNodeList:function(e){return new l().appendData(e)},getFirstListNode:function(e){return e&&e.first()},getLastListNode:function(e){return e.last()},parseWithFallback:function(e,t){var r=this.scanner.tokenIndex;try{return e.call(this)}catch(a){if(this.onParseErrorThrow)throw a;var n=t.call(this,r);return this.onParseErrorThrow=!0,this.onParseError(a,n),this.onParseErrorThrow=!1,n}},lookupNonWSType:function(e){do{var t=this.scanner.lookupType(e++);if(t!==f)return t}while(t!==C);return C},eat:function(e){if(this.scanner.tokenType!==e){var t=this.scanner.tokenStart,r=h[e]+" is expected";e===y?this.scanner.tokenType===b||this.scanner.tokenType===S?(t=this.scanner.tokenEnd-1,r="Identifier is expected but function found"):r="Identifier is expected":e===x?this.scanner.isDelim(35)&&(this.scanner.next(),t++,r="Name is expected"):e===v?this.scanner.tokenType===k&&(t=this.scanner.tokenEnd,r="Percent sign is expected"):this.scanner.source.charCodeAt(this.scanner.tokenStart)===e&&++t,this.error(r,t)}this.scanner.next()},consume:function(e){var t=this.scanner.getTokenValue();return this.eat(e),t},consumeFunctionName:function(){var e=this.scanner.source.substring(this.scanner.tokenStart,this.scanner.tokenEnd-1);return this.eat(b),e},getLocation:function(e,t){return this.needPositions?this.locationMap.getLocationRange(e,t,this.filename):null},getLocationFromList:function(e){if(this.needPositions){var t=this.getFirstListNode(e),r=this.getLastListNode(e);return this.locationMap.getLocationRange(null===t?this.scanner.tokenStart:t.loc.start.offset-this.locationMap.startOffset,null===r?this.scanner.tokenStart:r.loc.end.offset-this.locationMap.startOffset,this.filename)}return null},error:function(e,t){var r="undefined"!=typeof t&&t",t.needPositions=!!r.positions,t.onParseError="function"==typeof r.onParseError?r.onParseError:m,t.onParseErrorThrow=!1,t.parseAtrulePrelude=!("parseAtrulePrelude"in r)||!!r.parseAtrulePrelude,t.parseRulePrelude=!("parseRulePrelude"in r)||!!r.parseRulePrelude,t.parseValue=!("parseValue"in r)||!!r.parseValue,t.parseCustomProperty=!!("parseCustomProperty"in r)&&!!r.parseCustomProperty,!t.context.hasOwnProperty(n))throw new Error("Unknown context `"+n+"`");return a=t.context[n].call(t,r),t.scanner.eof||t.error(),a}}},27190:(e,t,r)=>{var n=r(61063).TYPE,a=n.WhiteSpace,o=n.Comment;e.exports=function(e){var t=this.createList(),r=null,n={recognizer:e,space:null,ignoreWS:!1,ignoreWSAfter:!1};for(this.scanner.skipSC();!this.scanner.eof;){switch(this.scanner.tokenType){case o:this.scanner.next();continue;case a:n.ignoreWS?this.scanner.next():n.space=this.WhiteSpace();continue;}if(r=e.getNode.call(this,n),void 0===r)break;null!==n.space&&(t.push(n.space),n.space=null),t.push(r),n.ignoreWSAfter?(n.ignoreWSAfter=!1,n.ignoreWS=!0):n.ignoreWS=!1}return t}},91849:e=>{e.exports={parse:{prelude:null,block:function(){return this.Block(!0)}}}},29864:(e,t,r)=>{var n=r(61063).TYPE,a=n.String,o=n.Ident,i=n.Url,s=n.Function,l=n.LeftParenthesis;e.exports={parse:{prelude:function(){var e=this.createList();switch(this.scanner.skipSC(),this.scanner.tokenType){case a:e.push(this.String());break;case i:case s:e.push(this.Url());break;default:this.error("String or url() is expected");}return(this.lookupNonWSType(0)===o||this.lookupNonWSType(0)===l)&&(e.push(this.WhiteSpace()),e.push(this.MediaQueryList())),e},block:null}}},20264:(e,t,r)=>{e.exports={"font-face":r(91849),import:r(29864),media:r(16258),page:r(46661),supports:r(19901)}},16258:e=>{e.exports={parse:{prelude:function(){return this.createSingleNodeList(this.MediaQueryList())},block:function(){return this.Block(!1)}}}},46661:e=>{e.exports={parse:{prelude:function(){return this.createSingleNodeList(this.SelectorList())},block:function(){return this.Block(!0)}}}},19901:(e,t,r)=>{function n(){return this.createSingleNodeList(this.Raw(this.scanner.tokenIndex,null,!1))}function a(){return this.scanner.skipSC(),this.scanner.tokenType===d&&this.lookupNonWSType(1)===c?this.createSingleNodeList(this.Declaration()):o.call(this)}function o(){var e=this.createList(),t=null,r;this.scanner.skipSC();scan:for(;!this.scanner.eof;){switch(this.scanner.tokenType){case s:t=this.WhiteSpace();continue;case l:this.scanner.next();continue;case p:r=this.Function(n,this.scope.AtrulePrelude);break;case d:r=this.Identifier();break;case u:r=this.Parentheses(a,this.scope.AtrulePrelude);break;default:break scan;}null!==t&&(e.push(t),t=null),e.push(r)}return e}var i=r(61063).TYPE,s=i.WhiteSpace,l=i.Comment,d=i.Ident,p=i.Function,c=i.Colon,u=i.LeftParenthesis;e.exports={parse:{prelude:function(){var e=o.call(this);return null===this.getFirstListNode(e)&&this.error("Condition is expected"),e},block:function(){return this.Block(!1)}}}},87526:(e,t,r)=>{var n=r(26577);e.exports={generic:!0,types:n.types,properties:n.properties,node:r(85369)}},88845:e=>{function t(e){return e&&e.constructor===Object}function r(e){if(t(e)){var r={};for(var n in e)o.call(e,n)&&(r[n]=e[n]);return r}return e}function n(e,a){for(var i in a)o.call(a,i)&&(t(e[i])?n(e[i],r(a[i])):e[i]=r(a[i]))}function a(e,i,s){for(var l in s)if(!1!==o.call(s,l))if(!0===s[l])l in i&&o.call(i,l)&&(e[l]=r(i[l]));else if(s[l])if(t(s[l])){var d={};n(d,e[l]),n(d,i[l]),e[l]=d}else if(Array.isArray(s[l])){var d={},p=s[l].reduce(function(e,t){return e[t]=!0,e},{});for(var c in e[l])o.call(e[l],c)&&(d[c]={},e[l]&&e[l][c]&&a(d[c],e[l][c],p));for(var c in i[l])o.call(i[l],c)&&(d[c]||(d[c]={}),i[l]&&i[l][c]&&a(d[c],i[l][c],p));e[l]=d}return e}var o=Object.prototype.hasOwnProperty,i={generic:!0,types:{},properties:{},parseContext:{},scope:{},atrule:["parse"],pseudo:["parse"],node:["name","structure","parse","generate","walkContext"]};e.exports=function(e,t){return a(e,t,i)}},46808:(e,t,r)=>{e.exports={parseContext:{default:"StyleSheet",stylesheet:"StyleSheet",atrule:"Atrule",atrulePrelude:function(e){return this.AtrulePrelude(e.atrule?e.atrule+"":null)},mediaQueryList:"MediaQueryList",mediaQuery:"MediaQuery",rule:"Rule",selectorList:"SelectorList",selector:"Selector",block:function(){return this.Block(!0)},declarationList:"DeclarationList",declaration:"Declaration",value:"Value"},scope:r(38141),atrule:r(20264),pseudo:r(69302),node:r(85369)}},50997:(e,t,r)=>{e.exports={node:r(85369)}},66330:(e,t,r)=>{function n(e,t){for(var r in t)e[r]=t[r];return e}function a(e){var t=c(e),r=g(e),b=u(e),S=m(r),x={List:o,SyntaxError:i,TokenStream:s,Lexer:l,vendorPrefix:f.vendorPrefix,keyword:f.keyword,property:f.property,isCustomProperty:f.isCustomProperty,definitionSyntax:d,lexer:null,createLexer:function(e){return new l(e,x,x.lexer.structure)},tokenize:p,parse:t,walk:r,generate:b,find:r.find,findLast:r.findLast,findAll:r.findAll,clone:h,fromPlainObject:S.fromPlainObject,toPlainObject:S.toPlainObject,createSyntax:function(e){return a(y({},e))},fork:function(t){var r=y({},e);return a("function"==typeof t?t(r,n):y(r,t))}};return x.lexer=new l({generic:!0,types:e.types,properties:e.properties,node:e.node},x),x}var o=r(5355),i=r(51708),s=r(83058),l=r(42164),d=r(98333),p=r(61063),c=r(40283),u=r(31010),m=r(57208),g=r(87760),h=r(55933),f=r(87453),y=r(88845);t.create=function(e){return a(y({},e))}},59537:e=>{e.exports=function(){this.scanner.skipSC();var e=this.createSingleNodeList(this.IdSelector());return this.scanner.skipSC(),e}},21264:e=>{e.exports=function(){return this.createSingleNodeList(this.Raw(this.scanner.tokenIndex,null,!1))}},88036:(e,t,r)=>{var n=r(61063).TYPE,a=r(18204).mode,o=n.Comma;e.exports=function(){var e=this.createList();return this.scanner.skipSC(),e.push(this.Identifier()),this.scanner.skipSC(),this.scanner.tokenType===o&&(e.push(this.Operator()),e.push(this.parseCustomProperty?this.Value(null):this.Raw(this.scanner.tokenIndex,a.exclamationMarkOrSemicolon,!1))),e}},30826:(e,t,r)=>{e.exports=r(66330).create(function(){for(var e={},t=0,r;t{function n(e,t){var r=this.scanner.tokenStart+e,n=this.scanner.source.charCodeAt(r);for((43===n||45===n)&&(t&&this.error("Number sign is not allowed"),r++);r{function n(e){return this.Raw(e,i.leftCurlyBracketOrSemicolon,!0)}function a(){for(var e=1,t;t=this.scanner.lookupType(e);e++){if(t===p)return!0;if(t===d||t===s)return!1}return!1}var o=r(61063).TYPE,i=r(18204).mode,s=o.AtKeyword,l=o.Semicolon,d=o.LeftCurlyBracket,p=o.RightCurlyBracket;e.exports={name:"Atrule",structure:{name:String,prelude:["AtrulePrelude","Raw",null],block:["Block",null]},parse:function(){var e=this.scanner.tokenStart,t=null,r=null,o,i;switch(this.eat(s),o=this.scanner.substrToCursor(e+1),i=o.toLowerCase(),this.scanner.skipSC(),!1===this.scanner.eof&&this.scanner.tokenType!==d&&this.scanner.tokenType!==l&&(this.parseAtrulePrelude?(t=this.parseWithFallback(this.AtrulePrelude.bind(this,o),n),"AtrulePrelude"===t.type&&null===t.children.head&&(t=null)):t=n.call(this,this.scanner.tokenIndex),this.scanner.skipSC()),this.scanner.tokenType){case l:this.scanner.next();break;case d:r=this.atrule.hasOwnProperty(i)&&"function"==typeof this.atrule[i].block?this.atrule[i].block.call(this):this.Block(a.call(this));}return{type:"Atrule",loc:this.getLocation(e,this.scanner.tokenStart),name:o,prelude:t,block:r}},generate:function(e){this.chunk("@"),this.chunk(e.name),null!==e.prelude&&(this.chunk(" "),this.node(e.prelude)),e.block?this.node(e.block):this.chunk(";")},walkContext:"atrule"}},24272:(e,t,r)=>{var n=r(61063).TYPE,a=n.Semicolon,o=n.LeftCurlyBracket;e.exports={name:"AtrulePrelude",structure:{children:[[]]},parse:function(e){var t=null;return null!==e&&(e=e.toLowerCase()),this.scanner.skipSC(),t=this.atrule.hasOwnProperty(e)&&"function"==typeof this.atrule[e].prelude?this.atrule[e].prelude.call(this):this.readSequence(this.scope.AtrulePrelude),this.scanner.skipSC(),!0!==this.scanner.eof&&this.scanner.tokenType!==o&&this.scanner.tokenType!==a&&this.error("Semicolon or block is expected"),null===t&&(t=this.createList()),{type:"AtrulePrelude",loc:this.getLocationFromList(t),children:t}},generate:function(e){this.children(e)},walkContext:"atrulePrelude"}},33434:(e,t,r)=>{function n(){this.scanner.eof&&this.error("Unexpected end of input");var e=this.scanner.tokenStart,t=!1,r=!0;return this.scanner.isDelim(42)?(t=!0,r=!1,this.scanner.next()):!this.scanner.isDelim(124)&&this.eat(i),this.scanner.isDelim(124)?61===this.scanner.source.charCodeAt(this.scanner.tokenStart+1)?t&&this.error("Identifier is expected",this.scanner.tokenEnd):(this.scanner.next(),this.eat(i)):t&&this.error("Vertical line is expected"),r&&this.scanner.tokenType===l&&(this.scanner.next(),this.eat(i)),{type:"Identifier",loc:this.getLocation(e,this.scanner.tokenStart),name:this.scanner.substrToCursor(e)}}function a(){var e=this.scanner.tokenStart,t=this.scanner.source.charCodeAt(e);return 61!==t&&126!==t&&94!==t&&36!==t&&42!==t&&124!==t&&this.error("Attribute selector (=, ~=, ^=, $=, *=, |=) is expected"),this.scanner.next(),61!==t&&(!this.scanner.isDelim(61)&&this.error("Equal sign is expected"),this.scanner.next()),this.scanner.substrToCursor(e)}var o=r(61063).TYPE,i=o.Ident,s=o.String,l=o.Colon,d=o.LeftSquareBracket,p=o.RightSquareBracket;e.exports={name:"AttributeSelector",structure:{name:"Identifier",matcher:[String,null],value:["String","Identifier",null],flags:[String,null]},parse:function(){var e=this.scanner.tokenStart,t=null,r=null,o=null,l;return this.eat(d),this.scanner.skipSC(),l=n.call(this),this.scanner.skipSC(),this.scanner.tokenType!==p&&(this.scanner.tokenType!==i&&(t=a.call(this),this.scanner.skipSC(),r=this.scanner.tokenType===s?this.String():this.Identifier(),this.scanner.skipSC()),this.scanner.tokenType===i&&(o=this.scanner.getTokenValue(),this.scanner.next(),this.scanner.skipSC())),this.eat(p),{type:"AttributeSelector",loc:this.getLocation(e,this.scanner.tokenStart),name:l,matcher:t,value:r,flags:o}},generate:function(e){var t=" ";this.chunk("["),this.node(e.name),null!==e.matcher&&(this.chunk(e.matcher),null!==e.value&&(this.node(e.value),"String"===e.value.type&&(t=""))),null!==e.flags&&(this.chunk(t),this.chunk(e.flags)),this.chunk("]")}}},5163:(e,t,r)=>{function n(e){return this.Raw(e,null,!0)}function a(){return this.parseWithFallback(this.Rule,n)}function o(e){return this.Raw(e,l.semicolonIncluded,!0)}function i(){if(this.scanner.tokenType===c)return o.call(this,this.scanner.tokenIndex);var e=this.parseWithFallback(this.Declaration,o);return this.scanner.tokenType===c&&this.scanner.next(),e}var s=r(61063).TYPE,l=r(18204).mode,d=s.WhiteSpace,p=s.Comment,c=s.Semicolon,u=s.AtKeyword,m=s.LeftCurlyBracket,g=s.RightCurlyBracket;e.exports={name:"Block",structure:{children:[["Atrule","Rule","Declaration"]]},parse:function(e){var t=e?i:a,r=this.scanner.tokenStart,o=this.createList();this.eat(m);scan:for(;!this.scanner.eof;)switch(this.scanner.tokenType){case g:break scan;case d:case p:this.scanner.next();break;case u:o.push(this.parseWithFallback(this.Atrule,n));break;default:o.push(t.call(this));}return this.scanner.eof||this.eat(g),{type:"Block",loc:this.getLocation(r,this.scanner.tokenStart),children:o}},generate:function(e){this.chunk("{"),this.children(e,function(e){"Declaration"===e.type&&this.chunk(";")}),this.chunk("}")},walkContext:"block"}},96809:(e,t,r)=>{var n=r(61063).TYPE,a=n.LeftSquareBracket,o=n.RightSquareBracket;e.exports={name:"Brackets",structure:{children:[[]]},parse:function(e,t){var r=this.scanner.tokenStart,n=null;return this.eat(a),n=e.call(this,t),this.scanner.eof||this.eat(o),{type:"Brackets",loc:this.getLocation(r,this.scanner.tokenStart),children:n}},generate:function(e){this.chunk("["),this.children(e),this.chunk("]")}}},4351:(e,t,r)=>{var n=r(61063).TYPE.CDC;e.exports={name:"CDC",structure:[],parse:function(){var e=this.scanner.tokenStart;return this.eat(n),{type:"CDC",loc:this.getLocation(e,this.scanner.tokenStart)}},generate:function(){this.chunk("-->")}}},37691:(e,t,r)=>{var n=r(61063).TYPE.CDO;e.exports={name:"CDO",structure:[],parse:function(){var e=this.scanner.tokenStart;return this.eat(n),{type:"CDO",loc:this.getLocation(e,this.scanner.tokenStart)}},generate:function(){this.chunk("")}}},58368:(e,t,r)=>{var n=r(22802).TYPE.CDO;e.exports={name:"CDO",structure:[],parse:function(){var e=this.scanner.tokenStart;return this.eat(n),{type:"CDO",loc:this.getLocation(e,this.scanner.tokenStart)}},generate:function(){this.chunk(""}var p=r(43402),c=r(83982),u=r(53958);u.elementNames.__proto__=null,u.attributeNames.__proto__=null;var m={__proto__:null,style:!0,script:!0,xmp:!0,iframe:!0,noembed:!0,noframes:!0,plaintext:!0,noscript:!0},g={__proto__:null,area:!0,base:!0,basefont:!0,br:!0,col:!0,command:!0,embed:!0,frame:!0,hr:!0,img:!0,input:!0,isindex:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0},h=e.exports=function(e,t){Array.isArray(e)||e.cheerio||(e=[e]),t=t||{};for(var r="",n=0,c;n{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Doctype=t.CDATA=t.Tag=t.Style=t.Script=t.Comment=t.Directive=t.Text=t.isTag=void 0,t.isTag=function(e){return"tag"===e.type||"script"===e.type||"style"===e.type},t.Text="text",t.Directive="directive",t.Comment="comment",t.Script="script",t.Style="style",t.Tag="tag",t.CDATA="cdata",t.Doctype="doctype"},42515:e=>{e.exports={Text:"text",Directive:"directive",Comment:"comment",Script:"script",Style:"style",Tag:"tag",CDATA:"cdata",Doctype:"doctype",isTag:function(e){return"tag"===e.type||"script"===e.type||"style"===e.type}}},43370:(e,t,r)=>{var n=e.exports;[r(64144),r(86755),r(69009),r(87431),r(75718),r(4614)].forEach(function(e){Object.keys(e).forEach(function(t){n[t]=e[t].bind(n)})})},4614:(e,t)=>{t.removeSubsets=function(e){for(var t=e.length,r,n,a;-1<--t;){for(r=n=e[t],e[t]=null,a=!0;n;){if(-1s.indexOf(d)?i===t?r.FOLLOWING|r.CONTAINED_BY:r.FOLLOWING:i===e?r.PRECEDING|r.CONTAINS:r.PRECEDING)};t.uniqueSort=function(e){var t=e.length,a,o;for(e=e.slice();-1<--t;)a=e[t],o=e.indexOf(a),-1{function n(e,t){return"function"==typeof t?function(r){return r.attribs&&t(r.attribs[e])}:function(r){return r.attribs&&r.attribs[e]===t}}function a(e,t){return function(r){return e(r)||t(r)}}var o=r(42515),i=t.isTag=o.isTag;t.testElement=function(e,t){for(var r in e)if(!e.hasOwnProperty(r));else if("tag_name"===r){if(!i(t)||!e.tag_name(t.name))return!1;}else if("tag_type"===r){if(!e.tag_type(t.type))return!1;}else if("tag_contains"===r){if(i(t)||!e.tag_contains(t.data))return!1;}else if(!t.attribs||!e[r](t.attribs[r]))return!1;return!0};var s={tag_name:function(e){return"function"==typeof e?function(t){return i(t)&&e(t.name)}:"*"===e?i:function(t){return i(t)&&t.name===e}},tag_type:function(e){return"function"==typeof e?function(t){return e(t.type)}:function(t){return t.type===e}},tag_contains:function(e){return"function"==typeof e?function(t){return!i(t)&&e(t.data)}:function(t){return!i(t)&&t.data===e}}};t.getElements=function(e,t,r,o){var i=Object.keys(e).map(function(t){var r=e[t];return t in s?s[t](r):n(t,r)});return 0===i.length?[]:this.filter(i.reduce(a),t,r,o)},t.getElementById=function(e,t,r){return Array.isArray(t)||(t=[t]),this.findOne(n("id",e),t,!1!==r)},t.getElementsByTagName=function(e,t,r,n){return this.filter(s.tag_name(e),t,r,n)},t.getElementsByTagType=function(e,t,r,n){return this.filter(s.tag_type(e),t,r,n)}},69009:(e,t)=>{t.removeElement=function(e){if(e.prev&&(e.prev.next=e.next),e.next&&(e.next.prev=e.prev),e.parent){var t=e.parent.children;t.splice(t.lastIndexOf(e),1)}},t.replaceElement=function(e,t){var r=t.prev=e.prev;r&&(r.next=t);var n=t.next=e.next;n&&(n.prev=t);var a=t.parent=e.parent;if(a){var o=a.children;o[o.lastIndexOf(e)]=t}},t.appendChild=function(e,t){if(t.parent=e,1!==e.children.push(t)){var r=e.children[e.children.length-2];r.next=t,t.prev=r,t.next=null}},t.append=function(e,t){var r=e.parent,n=e.next;if(t.next=n,t.prev=e,e.next=t,t.parent=r,!n)r&&r.children.push(t);else if(n.prev=t,r){var a=r.children;a.splice(a.lastIndexOf(n),0,t)}},t.prepend=function(e,t){var r=e.parent;if(r){var n=r.children;n.splice(n.lastIndexOf(e),0,t)}e.prev&&(e.prev.next=t),t.parent=r,t.prev=e.prev,t.next=e,e.prev=t}},87431:(e,t,r)=>{function n(e,t,r,a){for(var o=[],s=0,l=t.length,d;s=--a))&&(d=t[s].children,!(r&&d&&0=a)));s++);return o}function a(e,t){for(var r=null,n=0,o=t.length;n{function n(e){return Array.isArray(e)?e.map(n).join(""):i(e)?"br"===e.name?"\n":n(e.children):e.type===a.CDATA?n(e.children):e.type===a.Text?e.data:""}var a=r(42515),o=r(1702),i=a.isTag;e.exports={getInnerHTML:function(e,t){return e.children?e.children.map(function(e){return o(e,t)}).join(""):""},getOuterHTML:o,getText:n}},86755:(e,t)=>{var r=t.getChildren=function(e){return e.children},n=t.getParent=function(e){return e.parent};t.getSiblings=function(e){var t=n(e);return t?r(t):[e]},t.getAttributeValue=function(e,t){return e.attribs&&e.attribs[t]},t.hasAttrib=function(e,t){return!!e.attribs&&hasOwnProperty.call(e.attribs,t)},t.getName=function(e){return e.name}},58509:(e,t,r)=>{"use strict";/** * @file Embedded JavaScript templating engine. {@link http://ejs.co} * @author Matthew Eernisse * @author Tiancheng "Timothy" Gu * @project EJS * @license {@link http://www.apache.org/licenses/LICENSE-2.0 Apache License, Version 2.0} */function n(e,r){var n;if(r.some(function(r){return n=t.resolveInclude(e,r,!0),g.existsSync(n)}))return n}function a(e,r){var a=r.views,o=/^[A-Za-z]+:\\|^\//.exec(e),i,s;if(o&&o.length)e=e.replace(/^\/*/,""),i=Array.isArray(r.root)?n(e,r.root):t.resolveInclude(e,r.root||"/",!0);else if(r.filename&&(s=t.resolveInclude(e,r.filename),g.existsSync(s)&&(i=s)),!i&&Array.isArray(a)&&(i=n(e,a)),!i&&"function"!=typeof r.includer)throw new Error("Could not find the include file \""+r.escapeFunction(e)+"\"");return i}function i(e,r){var n=e.filename,a=1> ":" ")+r+"| "+e}).join("\n");throw e.path=d,e.message=(d||"ejs")+":"+n+"\n"+p+"\n\n"+e.message,e}function u(e){return e.replace(/;(\s*$)/,"$1")}function m(e,r){r=r||{};var n={};this.templateText=e,this.mode=null,this.truncate=!1,this.currentLine=1,this.source="",n.client=r.client||!1,n.escapeFunction=r.escape||r.escapeFunction||h.escapeXML,n.compileDebug=!1!==r.compileDebug,n.debug=!!r.debug,n.filename=r.filename,n.openDelimiter=r.openDelimiter||t.openDelimiter||"<",n.closeDelimiter=r.closeDelimiter||t.closeDelimiter||">",n.delimiter=r.delimiter||t.delimiter||"%",n.strict=r.strict||!1,n.context=r.context,n.cache=r.cache||!1,n.rmWhitespace=r.rmWhitespace,n.root=r.root,n.includer=r.includer,n.outputFunctionName=r.outputFunctionName,n.localsName=r.localsName||t.localsName||"locals",n.views=r.views,n.async=r.async,n.destructuredLocals=r.destructuredLocals,n.legacyInclude="undefined"==typeof r.legacyInclude||!!r.legacyInclude,n._with=!n.strict&&("undefined"==typeof r._with||r._with),this.opts=n,this.regex=this.createRegex()}var g=r(35747),o=r(85622),h=r(74998),f=!1,y=r(52021).i8,b=["delimiter","scope","context","debug","compileDebug","client","_with","rmWhitespace","strict","filename","async"],S=b.concat("cache"),x=/^\uFEFF/;t.cache=h.cache,t.fileLoader=g.readFileSync,t.localsName="locals",t.promiseImpl=new Function("return this;")().Promise,t.resolveInclude=function(e,t,r){var n=o.dirname,a=o.extname,i=o.resolve,s=i(r?t:n(t),e),l=a(e);return l||(s+=".ejs"),s},t.compile=function(e,t){var r;return t&&t.scope&&(!f&&(console.warn("`scope` option is deprecated and will be removed in EJS 3"),f=!0),!t.context&&(t.context=t.scope),delete t.scope),r=new m(e,t),r.compile()},t.render=function(e,t,r){var n=t||{},a=r||{};return 2==arguments.length&&h.shallowCopyFromList(a,n,b),i(a,e)(n)},t.renderFile=function(){var e=Array.prototype.slice.call(arguments),t=e.shift(),r={filename:t},n,a,o;return"function"==typeof arguments[arguments.length-1]&&(n=e.pop()),e.length?(a=e.shift(),e.length?h.shallowCopy(r,e.pop()):(a.settings&&(a.settings.views&&(r.views=a.settings.views),a.settings["view cache"]&&(r.cache=!0),o=a.settings["view options"],o&&h.shallowCopy(r,o)),h.shallowCopyFromList(r,a,S)),r.filename=t):a={},s(r,a,n)},t.Template=m,t.clearCache=function(){t.cache.reset()},m.modes={EVAL:"eval",ESCAPED:"escaped",RAW:"raw",COMMENT:"comment",LITERAL:"literal"},m.prototype={createRegex:function(){var e="(<%%|%%>|<%=|<%-|<%_|<%#|<%|%>|-%>|_%>)",t=h.escapeRegExpChars(this.opts.delimiter),r=h.escapeRegExpChars(this.opts.openDelimiter),n=h.escapeRegExpChars(this.opts.closeDelimiter);return e=e.replace(/%/g,t).replace(//g,n),new RegExp(e)},compile:function(){var t=this.opts,r="",n="",a=t.escapeFunction,s,l,e;if(!this.source){if(this.generateSource(),r+=" var __output = \"\";\n function __append(s) { if (s !== undefined && s !== null) __output += s }\n",t.outputFunctionName&&(r+=" var "+t.outputFunctionName+" = __append;\n"),t.destructuredLocals&&t.destructuredLocals.length){for(var d=" var __locals = ("+t.localsName+" || {}),\n",u=0,m;u[ \t]*/gm,"_%>");var t=this,r=this.parseTemplateText(),n=this.opts.delimiter,a=this.opts.openDelimiter,o=this.opts.closeDelimiter;r&&r.length&&r.forEach(function(e,i){var s;if(0===e.indexOf(a+n)&&0!==e.indexOf(a+n+n)&&(s=r[i+2],s!=n+o&&s!="-"+n+o&&s!="_"+n+o))throw new Error("Could not find matching close tag for \""+e+"\".");t.scanLine(e)})},parseTemplateText:function(){for(var e=this.templateText,t=this.regex,r=t.exec(e),n=[],a;r;)a=r.index,0!==a&&(n.push(e.substring(0,a)),e=e.slice(a)),n.push(r[0]),e=e.slice(r[0].length),r=t.exec(e);return e&&n.push(e),n},_addOutput:function(e){return this.truncate&&(e=e.replace(/^(?:\r\n|\r|\n)/,""),this.truncate=!1),e?void(e=e.replace(/\\/g,"\\\\"),e=e.replace(/\n/g,"\\n"),e=e.replace(/\r/g,"\\r"),e=e.replace(/"/g,"\\\""),this.source+=" ; __append(\""+e+"\")\n"):e},scanLine:function(e){var t=this,r=this.opts.delimiter,n=this.opts.openDelimiter,a=this.opts.closeDelimiter,o=0;switch(o=e.split("\n").length-1,e){case n+r:case n+r+"_":this.mode=m.modes.EVAL;break;case n+r+"=":this.mode=m.modes.ESCAPED;break;case n+r+"-":this.mode=m.modes.RAW;break;case n+r+"#":this.mode=m.modes.COMMENT;break;case n+r+r:this.mode=m.modes.LITERAL,this.source+=" ; __append(\""+e.replace(n+r+r,n+r)+"\")\n";break;case r+r+a:this.mode=m.modes.LITERAL,this.source+=" ; __append(\""+e.replace(r+r+a,r+a)+"\")\n";break;case r+a:case"-"+r+a:case"_"+r+a:this.mode==m.modes.LITERAL&&this._addOutput(e),this.mode=null,this.truncate=0===e.indexOf("-")||0===e.indexOf("_");break;default:if(this.mode){switch(this.mode){case m.modes.EVAL:case m.modes.ESCAPED:case m.modes.RAW:e.lastIndexOf("//")>e.lastIndexOf("\n")&&(e+="\n");}switch(this.mode){case m.modes.EVAL:this.source+=" ; "+e+"\n";break;case m.modes.ESCAPED:this.source+=" ; __append(escapeFn("+u(e)+"))\n";break;case m.modes.RAW:this.source+=" ; __append("+u(e)+")\n";break;case m.modes.COMMENT:break;case m.modes.LITERAL:this._addOutput(e);}}else this._addOutput(e);}t.opts.compileDebug&&o&&(this.currentLine+=o,this.source+=" ; __line = "+this.currentLine+"\n")}},t.escapeXML=h.escapeXML,t.__express=t.renderFile,t.VERSION=y,t.name="ejs","undefined"!=typeof window&&(window.ejs=t)},74998:(e,t)=>{"use strict";function r(e){return n[e]||e}t.escapeRegExpChars=function(e){return e?(e+"").replace(/[|\\{}()[\]^$+*?.]/g,"\\$&"):""};var n={"&":"&","<":"<",">":">",'"':""","'":"'"};t.escapeXML=function(e){return null==e?"":(e+"").replace(/[&<>'"]/g,r)},t.escapeXML.toString=function(){return Function.prototype.toString.call(this)+";\n"+"var _ENCODE_HTML_RULES = {\n \"&\": \"&\"\n , \"<\": \"<\"\n , \">\": \">\"\n , '\"': \""\"\n , \"'\": \"'\"\n }\n , _MATCH_HTML = /[&<>'\"]/g;\nfunction encode_char(c) {\n return _ENCODE_HTML_RULES[c] || c;\n};\n"},t.shallowCopy=function(e,t){for(var r in t=t||{},t)e[r]=t[r];return e},t.shallowCopyFromList=function(e,t,r){for(var n=0,a;n{var n=r(86343),a=function(){},o=function(e){return e.setHeader&&"function"==typeof e.abort},i=function(e){return e.stdio&&Array.isArray(e.stdio)&&3===e.stdio.length},s=function(e,t,r){if("function"==typeof t)return s(e,null,t);t||(t={}),r=n(r||a);var l=e._writableState,d=e._readableState,p=t.readable||!1!==t.readable&&e.readable,c=t.writable||!1!==t.writable&&e.writable,u=!1,m=function(){e.writable||g()},g=function(){c=!1,p||r.call(e)},h=function(){p=!1,c||r.call(e)},f=function(t){r.call(e,t?new Error("exited with error code: "+t):null)},y=function(t){r.call(e,t)},b=function(){process.nextTick(S)},S=function(){return u?void 0:p&&!(d&&d.ended&&!d.destroyed)?r.call(e,new Error("premature close")):c&&!(l&&l.ended&&!l.destroyed)?r.call(e,new Error("premature close")):void 0},x=function(){e.req.on("finish",g)};return o(e)?(e.on("complete",g),e.on("abort",b),e.req?x():e.on("request",x)):c&&!l&&(e.on("end",m),e.on("close",m)),i(e)&&e.on("exit",f),e.on("end",h),e.on("finish",g),!1!==t.error&&e.on("error",y),e.on("close",b),function(){u=!0,e.removeListener("complete",g),e.removeListener("abort",b),e.removeListener("request",x),e.req&&e.req.removeListener("finish",g),e.removeListener("end",m),e.removeListener("close",m),e.removeListener("finish",g),e.removeListener("exit",f),e.removeListener("end",h),e.removeListener("error",y),e.removeListener("close",b)}};e.exports=s},27235:function(e,t,r){"use strict";function n(e){var t=Object.keys(e).join("|"),r=a(e);t+="|#[xX][\\da-fA-F]+|#\\d+";var n=new RegExp("&(?:"+t+");","g");return function(e){return(e+"").replace(n,r)}}function a(e){return function(t){if("#"===t.charAt(1)){var r=t.charAt(2);return"X"===r||"x"===r?p.default(parseInt(t.substr(3),16)):p.default(parseInt(t.substr(2),10))}return e[t.slice(1,-1)]}}var o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.decodeHTML=t.decodeHTMLStrict=t.decodeXML=void 0;var s=o(r(20933)),l=o(r(19151)),d=o(r(44816)),p=o(r(62190));t.decodeXML=n(d.default),t.decodeHTMLStrict=n(s.default);var c=function(e,t){return e=e||1114111>>10),e=56320|1023&e),t+=_StringfromCharCode(e),t}var a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=a(r(93879));t.default=n},4414:function(e,t,r){"use strict";function n(e){return Object.keys(e).sort().reduce(function(t,r){return t[e[r]]="&"+r+";",t},{})}function a(e){for(var t=[],r=[],n=0,a=Object.keys(e),o;nl||t.splice(i,l,t[i]+"-"+t[s])}return r.unshift("["+t.join("")+"]"),new RegExp(r.join("|"),"g")}function o(e){return"&#x"+e.codePointAt(0).toString(16).toUpperCase()+";"}function i(e,t){return function(r){return r.replace(t,function(t){return e[t]}).replace(g,o)}}var s=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.escape=t.encodeHTML=t.encodeXML=void 0;var l=s(r(44816)),d=n(l.default),p=a(d);t.encodeXML=i(d,p);var c=s(r(20933)),u=n(c.default),m=a(u);t.encodeHTML=i(u,m);var g=/(?:[\x80-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])/g,h=a(d);t.escape=function(e){return e.replace(h,o).replace(g,o)}},83982:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.decodeXMLStrict=t.decodeHTML5Strict=t.decodeHTML4Strict=t.decodeHTML5=t.decodeHTML4=t.decodeHTMLStrict=t.decodeHTML=t.decodeXML=t.encodeHTML5=t.encodeHTML4=t.escape=t.encodeHTML=t.encodeXML=t.encode=t.decodeStrict=t.decode=void 0;var n=r(27235),a=r(4414);t.decode=function(e,t){return(!t||0>=t?n.decodeXML:n.decodeHTML)(e)},t.decodeStrict=function(e,t){return(!t||0>=t?n.decodeXML:n.decodeHTMLStrict)(e)},t.encode=function(e,t){return(!t||0>=t?a.encodeXML:a.encodeHTML)(e)};var o=r(4414);Object.defineProperty(t,"encodeXML",{enumerable:!0,get:function(){return o.encodeXML}}),Object.defineProperty(t,"encodeHTML",{enumerable:!0,get:function(){return o.encodeHTML}}),Object.defineProperty(t,"escape",{enumerable:!0,get:function(){return o.escape}}),Object.defineProperty(t,"encodeHTML4",{enumerable:!0,get:function(){return o.encodeHTML}}),Object.defineProperty(t,"encodeHTML5",{enumerable:!0,get:function(){return o.encodeHTML}});var i=r(27235);Object.defineProperty(t,"decodeXML",{enumerable:!0,get:function(){return i.decodeXML}}),Object.defineProperty(t,"decodeHTML",{enumerable:!0,get:function(){return i.decodeHTML}}),Object.defineProperty(t,"decodeHTMLStrict",{enumerable:!0,get:function(){return i.decodeHTMLStrict}}),Object.defineProperty(t,"decodeHTML4",{enumerable:!0,get:function(){return i.decodeHTML}}),Object.defineProperty(t,"decodeHTML5",{enumerable:!0,get:function(){return i.decodeHTML}}),Object.defineProperty(t,"decodeHTML4Strict",{enumerable:!0,get:function(){return i.decodeHTMLStrict}}),Object.defineProperty(t,"decodeHTML5Strict",{enumerable:!0,get:function(){return i.decodeHTMLStrict}}),Object.defineProperty(t,"decodeXMLStrict",{enumerable:!0,get:function(){return i.decodeXML}})},61421:(e,t,r)=>{"use strict";e.exports=r(93008)},93008:(e,t,r)=>{"use strict";var n=r(32260),a=n("%TypeError%");e.exports=function(e,t){if(null==e)throw new a(t||"Cannot call method on "+e);return e}},32260:(e,t,r)=>{"use strict";var n=Number.prototype,a=TypeError,o=Object.getOwnPropertyDescriptor;if(o)try{o({},"")}catch(t){o=null}var i=function(){throw new a},s=o?function(){try{return arguments.callee,i}catch(e){try{return o(arguments,"callee").get}catch(e){return i}}}():i,l=r(41869)(),d=Object.getPrototypeOf||function(e){return e.__proto__},p=x?d(x):void 0,c=v?v.constructor:void 0,u=k?d(k):void 0,m=k?k():void 0,g="undefined"==typeof Uint8Array?void 0:d(Uint8Array),h={"%Array%":Array,"%ArrayBuffer%":"undefined"==typeof ArrayBuffer?void 0:ArrayBuffer,"%ArrayBufferPrototype%":"undefined"==typeof ArrayBuffer?void 0:ArrayBuffer.prototype,"%ArrayIteratorPrototype%":l?d([][Symbol.iterator]()):void 0,"%ArrayPrototype%":Array.prototype,"%ArrayProto_entries%":Array.prototype.entries,"%ArrayProto_forEach%":Array.prototype.forEach,"%ArrayProto_keys%":Array.prototype.keys,"%ArrayProto_values%":Array.prototype.values,"%AsyncFromSyncIteratorPrototype%":void 0,"%AsyncFunction%":c,"%AsyncFunctionPrototype%":c?c.prototype:void 0,"%AsyncGenerator%":k?d(m):void 0,"%AsyncGeneratorFunction%":u,"%AsyncGeneratorPrototype%":u?u.prototype:void 0,"%AsyncIteratorPrototype%":m&&l&&Symbol.asyncIterator?m[Symbol.asyncIterator]():void 0,"%Atomics%":"undefined"==typeof Atomics?void 0:Atomics,"%Boolean%":Boolean,"%BooleanPrototype%":Boolean.prototype,"%DataView%":"undefined"==typeof DataView?void 0:DataView,"%DataViewPrototype%":"undefined"==typeof DataView?void 0:DataView.prototype,"%Date%":Date,"%DatePrototype%":Date.prototype,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":Error,"%ErrorPrototype%":Error.prototype,"%eval%":eval,"%EvalError%":EvalError,"%EvalErrorPrototype%":EvalError.prototype,"%Float32Array%":"undefined"==typeof Float32Array?void 0:Float32Array,"%Float32ArrayPrototype%":"undefined"==typeof Float32Array?void 0:Float32Array.prototype,"%Float64Array%":"undefined"==typeof Float64Array?void 0:Float64Array,"%Float64ArrayPrototype%":"undefined"==typeof Float64Array?void 0:Float64Array.prototype,"%Function%":Function,"%FunctionPrototype%":Function.prototype,"%Generator%":x?d(x()):void 0,"%GeneratorFunction%":p,"%GeneratorPrototype%":p?p.prototype:void 0,"%Int8Array%":"undefined"==typeof Int8Array?void 0:Int8Array,"%Int8ArrayPrototype%":"undefined"==typeof Int8Array?void 0:Int8Array.prototype,"%Int16Array%":"undefined"==typeof Int16Array?void 0:Int16Array,"%Int16ArrayPrototype%":"undefined"==typeof Int16Array?void 0:Int8Array.prototype,"%Int32Array%":"undefined"==typeof Int32Array?void 0:Int32Array,"%Int32ArrayPrototype%":"undefined"==typeof Int32Array?void 0:Int32Array.prototype,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":l?d(d([][Symbol.iterator]())):void 0,"%JSON%":"object"==typeof JSON?JSON:void 0,"%JSONParse%":"object"==typeof JSON?JSON.parse:void 0,"%Map%":"undefined"==typeof Map?void 0:Map,"%MapIteratorPrototype%":"undefined"!=typeof Map&&l?d(new Map()[Symbol.iterator]()):void 0,"%MapPrototype%":"undefined"==typeof Map?void 0:Map.prototype,"%Math%":Math,"%Number%":Number,"%NumberPrototype%":n,"%Object%":Object,"%ObjectPrototype%":Object.prototype,"%ObjProto_toString%":Object.prototype.toString,"%ObjProto_valueOf%":Object.prototype.valueOf,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":"undefined"==typeof Promise?void 0:Promise,"%PromisePrototype%":"undefined"==typeof Promise?void 0:Promise.prototype,"%PromiseProto_then%":"undefined"==typeof Promise?void 0:Promise.prototype.then,"%Promise_all%":"undefined"==typeof Promise?void 0:Promise.all,"%Promise_reject%":"undefined"==typeof Promise?void 0:Promise.reject,"%Promise_resolve%":"undefined"==typeof Promise?void 0:Promise.resolve,"%Proxy%":"undefined"==typeof Proxy?void 0:Proxy,"%RangeError%":RangeError,"%RangeErrorPrototype%":RangeError.prototype,"%ReferenceError%":ReferenceError,"%ReferenceErrorPrototype%":ReferenceError.prototype,"%Reflect%":"undefined"==typeof Reflect?void 0:Reflect,"%RegExp%":RegExp,"%RegExpPrototype%":RegExp.prototype,"%Set%":"undefined"==typeof Set?void 0:Set,"%SetIteratorPrototype%":"undefined"!=typeof Set&&l?d(new Set()[Symbol.iterator]()):void 0,"%SetPrototype%":"undefined"==typeof Set?void 0:Set.prototype,"%SharedArrayBuffer%":"undefined"==typeof SharedArrayBuffer?void 0:SharedArrayBuffer,"%SharedArrayBufferPrototype%":"undefined"==typeof SharedArrayBuffer?void 0:SharedArrayBuffer.prototype,"%String%":String,"%StringIteratorPrototype%":l?d(""[Symbol.iterator]()):void 0,"%StringPrototype%":_Stringprototype,"%Symbol%":l?Symbol:void 0,"%SymbolPrototype%":l?Symbol.prototype:void 0,"%SyntaxError%":SyntaxError,"%SyntaxErrorPrototype%":SyntaxError.prototype,"%ThrowTypeError%":s,"%TypedArray%":g,"%TypedArrayPrototype%":g?g.prototype:void 0,"%TypeError%":a,"%TypeErrorPrototype%":a.prototype,"%Uint8Array%":"undefined"==typeof Uint8Array?void 0:Uint8Array,"%Uint8ArrayPrototype%":"undefined"==typeof Uint8Array?void 0:Uint8Array.prototype,"%Uint8ClampedArray%":"undefined"==typeof Uint8ClampedArray?void 0:Uint8ClampedArray,"%Uint8ClampedArrayPrototype%":"undefined"==typeof Uint8ClampedArray?void 0:Uint8ClampedArray.prototype,"%Uint16Array%":"undefined"==typeof Uint16Array?void 0:Uint16Array,"%Uint16ArrayPrototype%":"undefined"==typeof Uint16Array?void 0:Uint16Array.prototype,"%Uint32Array%":"undefined"==typeof Uint32Array?void 0:Uint32Array,"%Uint32ArrayPrototype%":"undefined"==typeof Uint32Array?void 0:Uint32Array.prototype,"%URIError%":URIError,"%URIErrorPrototype%":URIError.prototype,"%WeakMap%":"undefined"==typeof WeakMap?void 0:WeakMap,"%WeakMapPrototype%":"undefined"==typeof WeakMap?void 0:WeakMap.prototype,"%WeakSet%":"undefined"==typeof WeakSet?void 0:WeakSet,"%WeakSetPrototype%":"undefined"==typeof WeakSet?void 0:WeakSet.prototype},f=r(10373),y=f.call(Function.call,_Stringprototype.replace),b=function(e){var t=[];return y(e,/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,function(e,r,n,a){t[t.length]=n?y(a,/\\(\\)?/g,"$1"):r||e}),t},S=function(e,t){if(!(e in h))throw new SyntaxError("intrinsic "+e+" does not exist!");if("undefined"==typeof h[e]&&!t)throw new a("intrinsic "+e+" exists, but is not available. Please file an issue!");return h[e]},x,v,k;e.exports=function(e,t){if("string"!=typeof e||0===e.length)throw new TypeError("intrinsic name must be a non-empty string");if(1=r.length){var l=o(n,r[s]);if(!t&&!(r[s]in n))throw new a("base intrinsic for "+e+" exists, but the property is not available.");n=l&&"get"in l&&!("originalValue"in l.get)?l.get:n[r[s]]}else n=n[r[s]];return n}},69334:(e,t,r)=>{"use strict";var n=r(10373),a=r(32260),o=a("%Function.prototype.apply%"),i=a("%Function.prototype.call%"),s=a("%Reflect.apply%",!0)||n.call(i,o),l=a("%Object.defineProperty%",!0);if(l)try{l({},"a",{value:1})}catch(t){l=null}e.exports=function(){return s(n,i,arguments)};var d=function(){return s(n,o,arguments)};l?l(e.exports,"apply",{value:d}):e.exports.apply=d},38790:(e,t,r)=>{"use strict";var n=r(32260),a=r(69334),o=a(n("String.prototype.indexOf"));e.exports=function(e,t){var r=n(e,!!t);return"function"==typeof r&&o(e,".prototype.")?a(r):r}},46909:(e,t,r)=>{const n=r(35304)("extract-zip"),{createWriteStream:a,promises:o}=r(35747),i=r(74205),s=r(85622),{promisify:l}=r(31669),d=r(92413),p=r(11790),c=l(p.open),u=l(d.pipeline);class m{constructor(e,t){this.zipPath=e,this.opts=t}async extract(){return n("opening",this.zipPath,"with opts",this.opts),this.zipfile=await c(this.zipPath,{lazyEntries:!0}),this.canceled=!1,new Promise((e,t)=>{this.zipfile.on("error",e=>{this.canceled=!0,t(e)}),this.zipfile.readEntry(),this.zipfile.on("close",()=>{this.canceled||(n("zip extraction complete"),e())}),this.zipfile.on("entry",async e=>{if(this.canceled)return void n("skipping entry",e.fileName,{cancelled:this.canceled});if(n("zipfile entry",e.fileName),e.fileName.startsWith("__MACOSX/"))return void this.zipfile.readEntry();const r=s.dirname(s.join(this.opts.dir,e.fileName));try{await o.mkdir(r,{recursive:!0});const t=await o.realpath(r),a=s.relative(this.opts.dir,t);if(a.split(s.sep).includes(".."))throw new Error(`Out of bound path "${t}" found while processing file ${e.fileName}`);await this.extractEntry(e),n("finished processing",e.fileName),this.zipfile.readEntry()}catch(e){this.canceled=!0,this.zipfile.close(),t(e)}})})}async extractEntry(e){if(this.canceled)return void n("skipping entry extraction",e.fileName,{cancelled:this.canceled});this.opts.onEntry&&this.opts.onEntry(e,this.zipfile);const t=s.join(this.opts.dir,e.fileName),r=65535&e.externalFileAttributes>>16,d=61440,p=(r&d)===40960;let c=(r&d)===16384;!c&&e.fileName.endsWith("/")&&(c=!0);const m=e.versionMadeBy>>8;c||(c=0===m&&16===e.externalFileAttributes),n("extracting entry",{filename:e.fileName,isDir:c,isSymlink:p});const g=511&this.getExtractedMode(r,c),h=c?t:s.dirname(t),f={recursive:!0};if(c&&(f.mode=g),n("mkdir",{dir:h,...f}),await o.mkdir(h,f),!c){n("opening read stream",t);const r=await l(this.zipfile.openReadStream.bind(this.zipfile))(e);if(p){const e=await i(r);n("creating symlink",e,t),await o.symlink(e,t)}else await u(r,a(t,{mode:g}))}}getExtractedMode(e,t){let r=e;return 0===r&&(t?(this.opts.defaultDirMode&&(r=parseInt(this.opts.defaultDirMode,10)),!r&&(r=493)):(this.opts.defaultFileMode&&(r=parseInt(this.opts.defaultFileMode,10)),!r&&(r=420))),r}}e.exports=async function(e,t){if(n("creating target directory",t.dir),!s.isAbsolute(t.dir))throw new Error("Target directory is expected to be absolute");return await o.mkdir(t.dir,{recursive:!0}),t.dir=await o.realpath(t.dir),new m(e,t).extract()}},84203:(e,t,r)=>{function n(e,t){t=t||{},g.call(this),this.fd=e,this.pend=new m,this.pend.max=1,this.refCount=0,this.autoClose=!!t.autoClose}function a(e,t){t=t||{},p.call(this,t),this.context=e,this.context.ref(),this.start=t.start||0,this.endOffset=t.end,this.pos=this.start,this.destroyed=!1}function o(e,t){t=t||{},c.call(this,t),this.context=e,this.context.ref(),this.start=t.start||0,this.endOffset=null==t.end?1/0:+t.end,this.bytesWritten=0,this.pos=this.start,this.destroyed=!1,this.on("finish",this.destroy.bind(this))}function i(e,t){g.call(this),t=t||{},this.refCount=0,this.buffer=e,this.maxChunkSize=t.maxChunkSize||_NumberMAX_SAFE_INTEGER}var s=r(35747),l=r(31669),d=r(92413),p=d.Readable,c=d.Writable,u=d.PassThrough,m=r(1520),g=r(28614).EventEmitter;t.createFromBuffer=function(e,t){return new i(e,t)},t.createFromFd=function(e,t){return new n(e,t)},t.BufferSlicer=i,t.FdSlicer=n,l.inherits(n,g),n.prototype.read=function(e,t,r,n,a){var o=this;o.pend.go(function(i){s.read(o.fd,e,t,r,n,function(e,t,r){i(),a(e,t,r)})})},n.prototype.write=function(e,t,r,n,a){var o=this;o.pend.go(function(i){s.write(o.fd,e,t,r,n,function(e,t,r){i(),a(e,t,r)})})},n.prototype.createReadStream=function(e){return new a(this,e)},n.prototype.createWriteStream=function(e){return new o(this,e)},n.prototype.ref=function(){this.refCount+=1},n.prototype.unref=function(){function e(e){e?t.emit("error",e):t.emit("close")}var t=this;if(t.refCount-=1,!(0t.refCount)throw new Error("invalid unref");t.autoClose&&s.close(t.fd,e)}},l.inherits(a,p),a.prototype._read=function(e){var t=this;if(!t.destroyed){var r=_Mathmin(t._readableState.highWaterMark,e);return null!=t.endOffset&&(r=_Mathmin(r,t.endOffset-t.pos)),0>=r?(t.destroyed=!0,t.push(null),void t.context.unref()):void t.context.pend.go(function(e){if(t.destroyed)return e();var n=new Buffer(r);s.read(t.context.fd,n,0,r,t.pos,function(r,a){r?t.destroy(r):0===a?(t.destroyed=!0,t.push(null),t.context.unref()):(t.pos+=a,t.push(n.slice(0,a))),e()})})}},a.prototype.destroy=function(e){this.destroyed||(e=e||new Error("stream destroyed"),this.destroyed=!0,this.emit("error",e),this.context.unref())},l.inherits(o,c),o.prototype._write=function(e,t,r){var n=this;if(!n.destroyed){if(n.pos+e.length>n.endOffset){var a=new Error("maximum file length exceeded");return a.code="ETOOBIG",n.destroy(),void r(a)}n.context.pend.go(function(t){return n.destroyed?t():void s.write(n.context.fd,e,0,e.length,n.pos,function(e,a){e?(n.destroy(),t(),r(e)):(n.bytesWritten+=a,n.pos+=a,n.emit("progress"),t(),r())})})}},o.prototype.destroy=function(){this.destroyed||(this.destroyed=!0,this.context.unref())},l.inherits(i,g),i.prototype.read=function(e,t,r,n,a){var o=n+r,i=o-this.buffer.length,s=0=r.length){nr.endOffset){var i=new Error("maximum file length exceeded");return i.code="ETOOBIG",r.destroyed=!0,void a(i)}e.copy(t.buffer,r.pos,0,e.length),r.bytesWritten+=e.length,r.pos=o,r.emit("progress"),a()}},r.destroy=function(){r.destroyed=!0},r},i.prototype.ref=function(){this.refCount+=1},i.prototype.unref=function(){if(this.refCount-=1,0>this.refCount)throw new Error("invalid unref")}},20138:(e,t,r)=>{"use strict";const n=r(85622),a=r(90031),o=r(68719),i=Symbol("findUp.stop");e.exports=async(e,t={})=>{let r=n.resolve(t.cwd||"");const{root:o}=n.parse(r),s=[].concat(e),l=async t=>{if("function"!=typeof e)return a(s,t);const r=await e(t.cwd);return"string"==typeof r?a([r],t):r};for(;;){const e=await l({...t,cwd:r});if(e===i)return;if(e)return n.resolve(r,e);if(r===o)return;r=n.dirname(r)}},e.exports.sync=(e,t={})=>{let r=n.resolve(t.cwd||"");const{root:o}=n.parse(r),s=[].concat(e),l=t=>{if("function"!=typeof e)return a.sync(s,t);const r=e(t.cwd);return"string"==typeof r?a.sync([r],t):r};for(;;){const e=l({...t,cwd:r});if(e===i)return;if(e)return n.resolve(r,e);if(r===o)return;r=n.dirname(r)}},e.exports.exists=o,e.exports.sync.exists=o.sync,e.exports.stop=i},39597:(e,t,r)=>{var n;try{n=r(35304)("follow-redirects")}catch(e){n=function(){}}e.exports=n},75955:(e,t,r)=>{function n(e,t){h.call(this),this._sanitizeOptions(e),this._options=e,this._ended=!1,this._ending=!1,this._redirectCount=0,this._redirects=[],this._requestBodyLength=0,this._requestBodyBuffers=[],t&&this.on("response",t);var r=this;this._onNativeResponse=function(e){r._processResponse(e)},this._performRequest()}function a(e,t){clearTimeout(e._timeout),e._timeout=setTimeout(function(){e.emit("timeout")},t)}function o(){clearTimeout(this._timeout)}function i(e){var t={maxRedirects:21,maxBodyLength:10485760},r={};return Object.keys(e).forEach(function(a){var o=a+":",i=r[o]=e[a],s=t[a]=Object.create(i);s.request=function(e,a,i){if("string"==typeof e){var s=e;try{e=l(new u(s))}catch(t){e=c.parse(s)}}else u&&e instanceof u?e=l(e):(i=a,a=e,e={protocol:o});return"function"==typeof a&&(i=a,a=null),a=Object.assign({maxRedirects:t.maxRedirects,maxBodyLength:t.maxBodyLength},e,a),a.nativeProtocols=r,f.equal(a.protocol,o,"protocol mismatch"),y("options",a),new n(a,i)},s.get=function(e,t,r){var n=s.request(e,t,r);return n.end(),n}}),t}function s(){}function l(e){var t={protocol:e.protocol,hostname:e.hostname.startsWith("[")?e.hostname.slice(1,-1):e.hostname,hash:e.hash,search:e.search,pathname:e.pathname,path:e.pathname+e.search,href:e.href};return""!==e.port&&(t.port=+e.port),t}function d(e,t){var r;for(var n in t)e.test(n)&&(r=t[n],delete t[n]);return r}function p(e,t){function r(e){Error.captureStackTrace(this,this.constructor),this.message=e||t}return r.prototype=new Error,r.prototype.constructor=r,r.prototype.name="Error ["+e+"]",r.prototype.code=e,r}var c=r(78835),u=c.URL,m=r(98605),g=r(57211),h=r(92413).Writable,f=r(42357),y=r(39597),b=Object.create(null);["abort","aborted","connect","error","socket","timeout"].forEach(function(e){b[e]=function(t,r,n){this._redirectable.emit(e,t,r,n)}});var S=p("ERR_FR_REDIRECTION_FAILURE",""),x=p("ERR_FR_TOO_MANY_REDIRECTS","Maximum number of redirects exceeded"),v=p("ERR_FR_MAX_BODY_LENGTH_EXCEEDED","Request body larger than maxBodyLength limit"),k=p("ERR_STREAM_WRITE_AFTER_END","write after end");n.prototype=Object.create(h.prototype),n.prototype.write=function(e,t,r){if(this._ending)throw new k;if(!("string"==typeof e||"object"==typeof e&&"length"in e))throw new TypeError("data should be a string, Buffer or Uint8Array");return"function"==typeof t&&(r=t,t=null),0===e.length?void(r&&r()):void(this._requestBodyLength+e.length<=this._options.maxBodyLength?(this._requestBodyLength+=e.length,this._requestBodyBuffers.push({data:e,encoding:t}),this._currentRequest.write(e,t,r)):(this.emit("error",new v),this.abort()))},n.prototype.end=function(e,t,r){if("function"==typeof e?(r=e,e=t=null):"function"==typeof t&&(r=t,t=null),!e)this._ended=this._ending=!0,this._currentRequest.end(null,null,r);else{var n=this,a=this._currentRequest;this.write(e,t,function(){n._ended=!0,a.end(null,null,r)}),this._ending=!0}},n.prototype.setHeader=function(e,t){this._options.headers[e]=t,this._currentRequest.setHeader(e,t)},n.prototype.removeHeader=function(e){delete this._options.headers[e],this._currentRequest.removeHeader(e)},n.prototype.setTimeout=function(e,t){if(t&&this.once("timeout",t),this.socket)a(this,e);else{var r=this;this._currentRequest.once("socket",function(){a(r,e)})}return this.once("response",o),this.once("error",o),this},["abort","flushHeaders","getHeader","setNoDelay","setSocketKeepAlive"].forEach(function(e){n.prototype[e]=function(t,r){return this._currentRequest[e](t,r)}}),["aborted","connection","socket"].forEach(function(e){Object.defineProperty(n.prototype,e,{get:function(){return this._currentRequest[e]}})}),n.prototype._sanitizeOptions=function(e){if(e.headers||(e.headers={}),e.host&&(!e.hostname&&(e.hostname=e.host),delete e.host),!e.pathname&&e.path){var t=e.path.indexOf("?");0>t?e.pathname=e.path:(e.pathname=e.path.substring(0,t),e.search=e.path.substring(t))}},n.prototype._performRequest=function(){var e=this._options.protocol,t=this._options.nativeProtocols[e];if(!t)return void this.emit("error",new TypeError("Unsupported protocol "+e));if(this._options.agents){var r=e.substr(0,e.length-1);this._options.agent=this._options.agents[r]}var n=this._currentRequest=t.request(this._options,this._onNativeResponse);for(var a in this._currentUrl=c.format(this._options),n._redirectable=this,b)a&&n.on(a,b[a]);if(this._isRedirect){var o=0,s=this,l=this._requestBodyBuffers;(function e(t){if(n===s._currentRequest)if(t)s.emit("error",t);else if(ot){if(this._currentRequest.removeAllListeners(),this._currentRequest.on("error",s),this._currentRequest.abort(),e.destroy(),++this._redirectCount>this._options.maxRedirects)return void this.emit("error",new x);(301!==t&&302!==t||"POST"!==this._options.method)&&(303!==t||/^(?:GET|HEAD)$/.test(this._options.method))||(this._options.method="GET",this._requestBodyBuffers=[],d(/^content-/i,this._options.headers));var n=d(/^host$/i,this._options.headers)||c.parse(this._currentUrl).hostname,a=c.resolve(this._currentUrl,r);y("redirecting to",a),this._isRedirect=!0;var o=c.parse(a);if(Object.assign(this._options,o),o.hostname!==n&&d(/^authorization$/i,this._options.headers),"function"==typeof this._options.beforeRedirect){var i={headers:e.headers};try{this._options.beforeRedirect.call(null,this._options,i)}catch(e){return void this.emit("error",e)}this._sanitizeOptions(this._options)}try{this._performRequest()}catch(e){var l=new S("Redirected request failed: "+e.message);l.cause=e,this.emit("error",l)}}else e.responseUrl=this._currentUrl,e.redirects=this._redirects,this.emit("response",e),this._requestBodyBuffers=[]},e.exports=i({http:m,https:g}),e.exports.wrap=i},21760:(e,t,r)=>{e.exports=r(35747).constants||r(27619)},52755:(e,t,r)=>{function n(e){return e&&"realpath"===e.syscall&&("ELOOP"===e.code||"ENOMEM"===e.code||"ENAMETOOLONG"===e.code)}function a(e,t,r){return c?s(e,t,r):void("function"==typeof t&&(r=t,t=null),s(e,t,function(a,o){n(a)?u.realpath(e,t,r):r(a,o)}))}function o(e,t){if(c)return l(e,t);try{return l(e,t)}catch(r){if(n(r))return u.realpathSync(e,t);throw r}}e.exports=a,a.realpath=a,a.sync=o,a.realpathSync=o,a.monkeypatch=function(){i.realpath=a,i.realpathSync=o},a.unmonkeypatch=function(){i.realpath=s,i.realpathSync=l};var i=r(35747),s=i.realpath,l=i.realpathSync,d=process.version,c=/^v[0-5]\./.test(d),u=r(21846)},21846:(e,t,r)=>{function n(){function e(e){e&&(n.message=e.message,e=n,t(e))}function t(e){if(e)if(process.throwDeprecation)throw e;else if(!process.noDeprecation){var t="fs: missing callback "+(e.stack||e.message);process.traceDeprecation?console.trace(t):console.error(t)}}var r;if(l){var n=new Error;r=e}else r=t;return r}function a(e){return"function"==typeof e?e:n()}var o=r(85622),i="win32"===process.platform,s=r(35747),l=process.env.NODE_DEBUG&&/fs/.test(process.env.NODE_DEBUG),d=o.normalize;if(i)var c=/(.*?)(?:[\/\\]+|$)/g;else var c=/(.*?)(?:[\/]+|$)/g;if(i)var u=/^(?:[a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/][^\\\/]+)?[\\\/]*/;else var u=/^[\/]*/;t.realpathSync=function(e,t){function r(){var t=u.exec(e);d=t[0].length,g=t[0],h=t[0],f="",i&&!l[h]&&(s.lstatSync(h),l[h]=!0)}if(e=o.resolve(e),t&&Object.prototype.hasOwnProperty.call(t,e))return t[e];var n=e,a={},l={},d,g,h,f;for(r();d=e.length)return t&&(t[h]=e),r(null,e);c.lastIndex=b;var n=c.exec(e);return v=S,S+=n[0],x=v+n[1],b=c.lastIndex,y[x]||t&&t[x]===x?process.nextTick(l):t&&Object.prototype.hasOwnProperty.call(t,x)?g(t[x]):s.lstat(x,d)}function d(e,n){if(e)return r(e);if(!n.isSymbolicLink())return y[x]=!0,t&&(t[x]=x),process.nextTick(l);if(!i){var a=n.dev.toString(32)+":"+n.ino.toString(32);if(f.hasOwnProperty(a))return m(null,f[a],x)}s.stat(x,function(e){return e?r(e):void s.readlink(x,function(e,t){i||(f[a]=t),m(e,t)})})}function m(e,n,a){if(e)return r(e);var i=o.resolve(v,n);t&&(t[a]=i),g(i)}function g(t){e=o.resolve(t,e.slice(b)),n()}if("function"!=typeof r&&(r=a(t),t=null),e=o.resolve(e),t&&Object.prototype.hasOwnProperty.call(t,e))return process.nextTick(r.bind(null,null,t[e]));var h=e,f={},y={},b,S,x,v;n()}},66431:e=>{"use strict";var t=Array.prototype.slice,r=Object.prototype.toString;e.exports=function(e){var n=this;if("function"!=typeof n||r.call(n)!=="[object Function]")throw new TypeError("Function.prototype.bind called on incompatible "+n);for(var a=t.call(arguments,1),o=function(){if(this instanceof p){var r=n.apply(this,a.concat(t.call(arguments)));return Object(r)===r?r:this}return n.apply(e,a.concat(t.call(arguments)))},s=_Mathmax(0,n.length-a.length),l=[],d=0,p;d{"use strict";var n=r(66431);e.exports=Function.prototype.bind||n},15459:(e,t,r)=>{"use strict";const{PassThrough:n}=r(92413);e.exports=e=>{e={...e};const{array:t}=e;let{encoding:r}=e;const a="buffer"===r;let o=!1;t?o=!(r||a):r=r||"utf8",a&&(r=null);const i=new n({objectMode:o});r&&i.setEncoding(r);let s=0;const l=[];return i.on("data",e=>{l.push(e),o?s=l.length:s+=e.length}),i.getBufferedValue=()=>t?l:a?Buffer.concat(l,s):l.join(""),i.getBufferedLength=()=>s,i}},74205:(e,t,r)=>{"use strict";async function n(e,t){if(!e)return Promise.reject(new Error("Expected a stream"));t={maxBuffer:1/0,...t};const{maxBuffer:r}=t;let n;return await new Promise((l,d)=>{const p=e=>{e&&n.getBufferedLength()<=a.MAX_LENGTH&&(e.bufferedData=n.getBufferedValue()),d(e)};n=o(e,i(t),e=>e?void p(e):void l()),n.on("data",()=>{n.getBufferedLength()>r&&p(new s)})}),n.getBufferedValue()}const{constants:a}=r(64293),o=r(537),i=r(15459);class s extends Error{constructor(){super("maxBuffer exceeded"),this.name="MaxBufferError"}}e.exports=n,e.exports.default=n,e.exports.buffer=(e,t)=>n(e,{...t,encoding:"buffer"}),e.exports.array=(e,t)=>n(e,{...t,array:!0}),e.exports.MaxBufferError=s},3589:(e,t,r)=>{function n(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function a(e,t){return e.toLowerCase().localeCompare(t.toLowerCase())}function o(e,t){return e.localeCompare(t)}function i(e,t){e.ignore=t.ignore||[],Array.isArray(e.ignore)||(e.ignore=[e.ignore]),e.ignore.length&&(e.ignore=e.ignore.map(s))}function s(e){var t=null;if("/**"===e.slice(-3)){var r=e.replace(/(\/\*\*)+$/,"");t=new m(r,{dot:!0})}return{matcher:new m(e,{dot:!0}),gmatcher:t}}function l(e,t){var r=t;return r="/"===t.charAt(0)?p.join(e.root,t):u(t)||""===t?t:e.changedCwd?p.resolve(e.cwd,t):p.resolve(t),"win32"===process.platform&&(r=r.replace(/\\/g,"/")),r}function d(e,t){return!!e.ignore.length&&e.ignore.some(function(e){return e.matcher.match(t)||!!(e.gmatcher&&e.gmatcher.match(t))})}t.alphasort=o,t.alphasorti=a,t.setopts=function(e,t,r){if(r||(r={}),r.matchBase&&-1===t.indexOf("/")){if(r.noglobstar)throw new Error("base matching requires globstar");t="**/"+t}e.silent=!!r.silent,e.pattern=t,e.strict=!1!==r.strict,e.realpath=!!r.realpath,e.realpathCache=r.realpathCache||Object.create(null),e.follow=!!r.follow,e.dot=!!r.dot,e.mark=!!r.mark,e.nodir=!!r.nodir,e.nodir&&(e.mark=!0),e.sync=!!r.sync,e.nounique=!!r.nounique,e.nonull=!!r.nonull,e.nosort=!!r.nosort,e.nocase=!!r.nocase,e.stat=!!r.stat,e.noprocess=!!r.noprocess,e.absolute=!!r.absolute,e.maxLength=r.maxLength||1/0,e.cache=r.cache||Object.create(null),e.statCache=r.statCache||Object.create(null),e.symlinks=r.symlinks||Object.create(null),i(e,r),e.changedCwd=!1;var a=process.cwd();n(r,"cwd")?(e.cwd=p.resolve(r.cwd),e.changedCwd=e.cwd!==a):e.cwd=a,e.root=r.root||p.resolve(e.cwd,"/"),e.root=p.resolve(e.root),"win32"===process.platform&&(e.root=e.root.replace(/\\/g,"/")),e.cwdAbs=u(e.cwd)?e.cwd:l(e,e.cwd),"win32"===process.platform&&(e.cwdAbs=e.cwdAbs.replace(/\\/g,"/")),e.nomount=!!r.nomount,r.nonegate=!0,r.nocomment=!0,e.minimatch=new m(t,r),e.options=e.minimatch.options},t.ownProp=n,t.makeAbs=l,t.finish=function(t){for(var r=t.nounique,n=r?[]:Object.create(null),s=0,e=t.matches.length,p;s{function n(e,t,r){if("function"==typeof t&&(r=t,t={}),t||(t={}),t.sync){if(r)throw new TypeError("callback provided to sync glob");return f(e,t)}return new o(e,t,r)}function a(e,t){if(null===t||"object"!=typeof t)return e;for(var r=Object.keys(t),n=r.length;n--;)e[r[n]]=t[r[n]];return e}function o(e,t,r){function a(){--n._processing,0>=n._processing&&(l?process.nextTick(function(){n._finish()}):n._finish())}if("function"==typeof t&&(r=t,t=null),t&&t.sync){if(r)throw new TypeError("callback provided to sync glob");return new E(e,t)}if(!(this instanceof o))return new o(e,t,r);x(this,e,t),this._didRealPath=!1;var s=this.minimatch.set.length;this.matches=Array(s),"function"==typeof r&&(r=T(r),this.on("error",r),this.on("end",function(e){r(null,e)}));var n=this;if(this._processing=0,this._emitQueue=[],this._processQueue=[],this.paused=!1,this.noprocess)return this;if(0===s)return a();for(var l=!0,d=0;dthis.maxLength)return t();if(!this.stat&&v(this.cache,r)){var a=this.cache[r];if(Array.isArray(a)&&(a="DIR"),!n||"DIR"===a)return t(null,a);if(n&&"FILE"===a)return t()}var o=this.statCache[r];if(void 0!==o){if(!1===o)return t(null,o);var i=o.isDirectory()?"DIR":"FILE";return n&&"FILE"===i?t():t(null,i,o)}var l=this,d=k("stat\0"+r,function(n,a){return a&&a.isSymbolicLink()?s.stat(r,function(n,o){n?l._stat2(e,r,null,a,t):l._stat2(e,r,n,o,t)}):void l._stat2(e,r,n,a,t)});d&&s.lstat(r,d)},o.prototype._stat2=function(e,t,r,n,a){if(r&&("ENOENT"===r.code||"ENOTDIR"===r.code))return this.statCache[t]=!1,a();var o="/"===e.slice(-1);if(this.statCache[t]=n,"/"===t.slice(-1)&&n&&!n.isDirectory())return a(null,!1,n);var i=!0;return n&&(i=n.isDirectory()?"DIR":"FILE"),this.cache[t]=this.cache[t]||i,o&&"FILE"===i?a():a(null,i,n)}},6587:(e,t,r)=>{function n(e,t){if("function"==typeof t||3===arguments.length)throw new TypeError("callback provided to sync glob\nSee: https://github.com/isaacs/node-glob/issues/167");return new a(e,t).found}function a(e,t){if(!e)throw new Error("must provide pattern");if("function"==typeof t||3===arguments.length)throw new TypeError("callback provided to sync glob\nSee: https://github.com/isaacs/node-glob/issues/167");if(!(this instanceof a))return new a(e,t);if(y(this,e,t),this.noprocess)return this;var r=this.minimatch.set.length;this.matches=Array(r);for(var n=0;nthis.maxLength)return!1;if(!this.stat&&b(this.cache,t)){var n=this.cache[t];if(Array.isArray(n)&&(n="DIR"),!r||"DIR"===n)return n;if(r&&"FILE"===n)return!1}var a=this.statCache[t];if(!a){var i;try{i=o.lstatSync(t)}catch(e){if(e&&("ENOENT"===e.code||"ENOTDIR"===e.code))return this.statCache[t]=!1,!1}if(i&&i.isSymbolicLink())try{a=o.statSync(t)}catch(e){a=i}else a=i}this.statCache[t]=a;var n=!0;return a&&(n=a.isDirectory()?"DIR":"FILE"),this.cache[t]=this.cache[t]||n,!(r&&"FILE"===n)&&n},a.prototype._mark=function(e){return g.mark(this,e)},a.prototype._makeAbs=function(e){return g.makeAbs(this,e)}},15542:e=>{"use strict";e.exports=(e,t)=>{t=t||process.argv;const r=e.startsWith("-")?"":1===e.length?"-":"--",n=t.indexOf(r+e),a=t.indexOf("--");return-1!==n&&(-1===a||n{"use strict";var n=global.Symbol,a=r(3448);e.exports=function(){return"function"==typeof n&&"function"==typeof Symbol&&"symbol"==typeof n("foo")&&"symbol"==typeof Symbol("bar")&&a()}},3448:e=>{"use strict";e.exports=function(){if("function"!=typeof Symbol||"function"!=typeof Object.getOwnPropertySymbols)return!1;if("symbol"==typeof Symbol.iterator)return!0;var e={},t=Symbol("test"),r=Object(t);if("string"==typeof t)return!1;if("[object Symbol]"!==Object.prototype.toString.call(t))return!1;if("[object Symbol]"!==Object.prototype.toString.call(r))return!1;for(t in e[t]=42,e)return!1;if("function"==typeof Object.keys&&0!==Object.keys(e).length)return!1;if("function"==typeof Object.getOwnPropertyNames&&0!==Object.getOwnPropertyNames(e).length)return!1;var n=Object.getOwnPropertySymbols(e);if(1!==n.length||n[0]!==t)return!1;if(!Object.prototype.propertyIsEnumerable.call(e,t))return!1;if("function"==typeof Object.getOwnPropertyDescriptor){var a=Object.getOwnPropertyDescriptor(e,t);if(42!==a.value||!0!==a.enumerable)return!1}return!0}},98496:(e,t,r)=>{"use strict";var n=r(10373);e.exports=n.call(Function.call,Object.prototype.hasOwnProperty)},75782:(e,t,r)=>{function n(e){if(!(this instanceof n))return new n(e);if("string"==typeof e&&(e=l.parse(e)),!e)throw new Error("an HTTP(S) proxy server `host` and `port` must be specified!");u("creating new HttpsProxyAgent instance: %o",e),p.call(this,e);var t=Object.assign({},e);this.secureProxy=!!t.protocol&&/^https:?$/i.test(t.protocol),t.host=t.hostname||t.host,t.port=+t.port||(this.secureProxy?443:80),this.secureProxy&&!("ALPNProtocols"in t)&&(t.ALPNProtocols=["http 1.1"]),t.host&&t.path&&(delete t.path,delete t.pathname),this.proxy=t}function a(e){e.resume()}function o(e,t){return!t&&80===e||t&&443===e}var i=r(11631),s=r(4016),l=r(78835),d=r(42357),p=r(67208),c=r(31669).inherits,u=r(35304)("https-proxy-agent");e.exports=n,c(n,p),n.prototype.callback=function(e,t,r){function n(){var e=y.read();e?g(e):y.once("readable",n)}function l(){y.removeListener("end",c),y.removeListener("error",m),y.removeListener("close",p),y.removeListener("readable",n)}function p(e){u("onclose had error %o",e)}function c(){u("onend")}function m(e){l(),r(e)}function g(o){S.push(o),x+=o.length;var d=Buffer.concat(S,x),p=d.toString("ascii");if(!~p.indexOf("\r\n\r\n"))return u("have not received end of HTTP headers yet..."),void n();var c=p.substring(0,p.indexOf("\r\n")),m=+c.split(" ")[1];if(u("got proxy server response: %o",c),200==m){var g=y;S=d=null,t.secureEndpoint&&(u("upgrading proxy-connected socket to TLS connection: %o",t.host),t.socket=y,t.servername=t.servername||t.host,t.host=null,t.hostname=null,t.port=null,g=s.connect(t)),l(),e.once("socket",a),r(null,g)}else l(),y.destroy(),y=new i.Socket,y.readable=!0,S=d,e.once("socket",h),r(null,y)}function h(e){u("replaying proxy buffer for failed request"),d(0{"use strict";function a(t){return /http(s)?:\/\/(\w+:?\w*@)?(\S+)(:\d+)?((?<=\.)\w+)+(\/([\w#!:.?+=&%@!\-/])*)?/gi.test(t)}function o(t){return /(?<=\S+)\.(jpg|png|jpeg)/gi.test(t)}function i(t){return t.toString("base64")}function s(a){var e=n(35747),r=n(85622);return e.statSync(a).isFile()?i(e.readFileSync(r.resolve(a)).toString("base64")):null}function l(t){return o(t)?Promise.resolve(s(t)):Promise.reject("[*] Occurent some error... [validTypeImage] == false")}e.exports=function(t){return a(t)?n(22434)(t).then(function(t){return t.buffer()}).then(i):l(t)}},13121:(e,t,r)=>{function n(e){return l(function t(){var r=s[e],n=r.length,o=a(arguments);try{for(var l=0;ln?(r.splice(0,n),process.nextTick(function(){t.apply(null,o)})):delete s[e]}})}function a(e){for(var t=e.length,r=[],n=0;n{try{var a=n(31669);if("function"!=typeof a.inherits)throw"";t.exports=a.inherits}catch(r){t.exports=n(99494)}},99494:e=>{e.exports="function"==typeof Object.create?function(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})}:function(e,t){e.super_=t;var r=function(){};r.prototype=t.prototype,e.prototype=new r,e.prototype.constructor=e}},80641:(e,t)=>{"use strict";/*! * is-plain-object * * Copyright (c) 2014-2017, Jon Schlinkert. * Released under the MIT License. */function r(e){return"[object Object]"===Object.prototype.toString.call(e)}Object.defineProperty(t,"__esModule",{value:!0}),t.isPlainObject=function(e){var t,n;return!1!==r(e)&&((t=e.constructor,void 0===t)||(n=t.prototype,!1!==r(n)&&!1!==n.hasOwnProperty("isPrototypeOf")))}},31894:(e,t,r)=>{"use strict";var n=r(7158);e.exports=n},7158:(e,t,r)=>{"use strict";function n(e){return function(){throw new Error("Function "+e+" is deprecated and cannot be used.")}}var a=r(3434),o=r(86156);e.exports.Type=r(78099),e.exports.Schema=r(58126),e.exports.FAILSAFE_SCHEMA=r(21712),e.exports.JSON_SCHEMA=r(75698),e.exports.CORE_SCHEMA=r(11277),e.exports.DEFAULT_SAFE_SCHEMA=r(23713),e.exports.DEFAULT_FULL_SCHEMA=r(17028),e.exports.load=a.load,e.exports.loadAll=a.loadAll,e.exports.safeLoad=a.safeLoad,e.exports.safeLoadAll=a.safeLoadAll,e.exports.dump=o.dump,e.exports.safeDump=o.safeDump,e.exports.YAMLException=r(41030),e.exports.MINIMAL_SCHEMA=r(21712),e.exports.SAFE_SCHEMA=r(23713),e.exports.DEFAULT_SCHEMA=r(17028),e.exports.scan=n("scan"),e.exports.parse=n("parse"),e.exports.compose=n("compose"),e.exports.addConstructor=n("addConstructor")},39990:e=>{"use strict";function t(e){return"undefined"==typeof e||null===e}e.exports.isNothing=t,e.exports.isObject=function(e){return"object"==typeof e&&null!==e},e.exports.toArray=function(e){return Array.isArray(e)?e:t(e)?[]:[e]},e.exports.repeat=function(e,t){var r="",n;for(n=0;n{"use strict";function n(e,t){var r,n,a,o,i,s,l;if(null===t)return{};for(r={},n=Object.keys(t),(a=0,o=n.length);a=e)r="x",n=2;else if(65535>=e)r="u",n=4;else if(4294967295>=e)r="U",n=8;else throw new R("code point within a string may not be greater than 0xFFFFFFFF");return"\\"+r+z.repeat("0",n-t.length)+t}function o(e){this.schema=e.schema||M,this.indent=_Mathmax(1,e.indent||2),this.noArrayIndent=e.noArrayIndent||!1,this.skipInvalid=e.skipInvalid||!1,this.flowLevel=z.isNothing(e.flowLevel)?-1:e.flowLevel,this.styleMap=n(this.schema,e.styles||null),this.sortKeys=e.sortKeys||!1,this.lineWidth=e.lineWidth||80,this.noRefs=e.noRefs||!1,this.noCompatMode=e.noCompatMode||!1,this.condenseFlow=e.condenseFlow||!1,this.implicitTypes=this.schema.compiledImplicit,this.explicitTypes=this.schema.compiledExplicit,this.tag=null,this.result="",this.duplicates=[],this.usedDuplicates=null}function i(e,t){for(var r=z.repeat(" ",t),n=0,a=-1,o="",i=e.length,s;n=e||161<=e&&55295>=e&&8232!==e&&8233!==e||57344<=e&&65533>=e&&65279!==e||65536<=e&&1114111>=e}function u(e){return p(e)&&!d(e)&&65279!==e&&13!==e&&10!==e}function m(e,t){return p(e)&&65279!==e&&44!==e&&91!==e&&93!==e&&123!==e&&125!==e&&58!==e&&(35!==e||t&&u(t))}function g(e){return p(e)&&65279!==e&&!d(e)&&45!==e&&63!==e&&58!==e&&44!==e&&91!==e&&93!==e&&123!==e&&125!==e&&35!==e&&38!==e&&42!==e&&33!==e&&124!==e&&61!==e&&62!==e&&39!==e&&34!==e&&37!==e&&64!==e&&96!==e}function h(e){return /^\n* /.test(e)}function f(e,t,r,n,a){var o=!1,s=!1,l=-1!==n,c=-1,u=g(e.charCodeAt(0))&&!d(e.charCodeAt(e.length-1)),f,y,b;if(t)for(f=0;fn&&" "!==e[c+1],c=f);else if(!p(y))return 5;b=0n&&" "!==e[c+1]}return o||s?9=e.flowLevel;switch(f(t,d,e.indent,s,a)){case 1:return t;case 2:return"'"+t.replace(/'/g,"''")+"'";case 3:return"|"+b(t,e.indent)+S(i(t,o));case 4:return">"+b(t,e.indent)+S(i(x(t,s),o));case 5:return"\""+k(t,s)+"\"";default:throw new R("impossible error: invalid scalar style");}}()}function b(e,t){var r=h(e)?t+"":"",n="\n"===e[e.length-1],a=n&&("\n"===e[e.length-2]||"\n"===e),o=a?"+":n?"":"-";return r+o+"\n"}function S(e){return"\n"===e[e.length-1]?e.slice(0,-1):e}function x(e,t){for(var r=/(\n+)([^\n]*)/g,n=function(){var n=e.indexOf("\n");return n=-1===n?e.length:n,r.lastIndex=n,v(e.slice(0,n),t)}(),a="\n"===e[0]||" "===e[0],o,i;i=r.exec(e);){var s=i[1],l=i[2];o=" "===l[0],n+=s+(a||o||""===l?"":"\n")+v(l,t),a=o}return n}function v(e,t){if(""===e||" "===e[0])return e;for(var r=0,n=0,a=0,o="",i,s;i=/ [^ ]/g.exec(e);)a=i.index,a-r>t&&(s=n>r?n:a,o+="\n"+e.slice(r,s),r=s+1),n=a;return o+="\n",o+=e.length-r>t&&n>r?e.slice(r,n)+"\n"+e.slice(n+1):e.slice(r),o.slice(1)}function k(e){for(var t="",r=0,n,o,s;r=n&&(o=e.charCodeAt(r+1),56320<=o&&57343>=o)){t+=a(1024*(n-55296)+o-56320+65536),r++;continue}s=B[n],t+=!s&&p(n)?e[r]:s||a(n)}return t}function C(e,t,r){var n="",a=e.tag,o,i;for(o=0,i=r.length;o tag resolver accepts not \""+l+"\" style");e.dump=n}return!0}return!1}function A(e,t,r,n,a,o){e.tag=null,e.dump=r,E(e,r,!1)||E(e,r,!0);var i=W.call(e.dump);n&&(n=0>e.flowLevel||e.flowLevel>t);var s="[object Object]"===i||"[object Array]"===i,l,d;if(s&&(l=e.duplicates.indexOf(r),d=-1!==l),(null!==e.tag&&"?"!==e.tag||d||2!==e.indent&&0 "+e.dump)}return!0}function O(e,t){var r=[],n=[],a,o;for(P(e,r,n),a=0,o=n.length;a{"use strict";function t(e,t){Error.call(this),this.name="YAMLException",this.reason=e,this.mark=t,this.message=(this.reason||"(unknown reason)")+(this.mark?" "+this.mark.toString():""),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}t.prototype=Object.create(Error.prototype),t.prototype.constructor=t,t.prototype.toString=function(e){var t=this.name+": ";return t+=this.reason||"(unknown reason)",!e&&this.mark&&(t+=" "+this.mark.toString()),t},e.exports=t},3434:(e,t,r)=>{"use strict";function n(e){return Object.prototype.toString.call(e)}function a(e){return 10===e||13===e}function o(e){return 9===e||32===e}function s(e){return 9===e||32===e||10===e||13===e}function l(e){return 44===e||91===e||93===e||123===e||125===e}function d(e){var t;return 48<=e&&57>=e?e-48:(t=32|e,97<=t&&102>=t?t-97+10:-1)}function p(e){return 120===e?2:117===e?4:85===e?8:0}function c(e){return 48<=e&&57>=e?e-48:-1}function u(e){return 48===e?"\0":97===e?"\x07":98===e?"\b":116===e?"\t":9===e?"\t":110===e?"\n":118===e?"\x0B":102===e?"\f":114===e?"\r":101===e?"\x1B":32===e?" ":34===e?"\"":47===e?"/":92===e?"\\":78===e?"\x85":95===e?"\xA0":76===e?"\u2028":80===e?"\u2029":""}function m(e){return 65535>=e?_StringfromCharCode(e):_StringfromCharCode((e-65536>>10)+55296,(1023&e-65536)+56320)}function g(e,t){this.input=e,this.filename=t.filename||null,this.schema=t.schema||j,this.onWarning=t.onWarning||null,this.legacy=t.legacy||!1,this.json=t.json||!1,this.listener=t.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=e.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.documents=[]}function h(e,t){return new F(t,new G(e.filename,e.input,e.position,e.line,e.position-e.lineStart))}function f(e,t){throw h(e,t)}function y(e,t){e.onWarning&&e.onWarning.call(null,h(e,t))}function b(e,t,r,n){var a,o,i,s;if(t=i||f(e,"expected valid JSON character");else V.test(s)&&f(e,"the stream contains non-printable characters");e.result+=s}}function S(e,t,r,n){var a,o,i,s;for(D.isObject(r)||f(e,"cannot merge mappings; the provided source object is unacceptable"),a=Object.keys(r),(i=0,s=a.length);i=t){m=!0,y=e.input.charCodeAt(e.position);continue}else{e.position=u,e.line=g,e.lineStart=h,e.lineIndent=f;break}m&&(b(e,c,u,!1),w(e,e.line-g),c=u=e.position,m=!1),o(y)||(u=e.position+1),y=e.input.charCodeAt(++e.position)}return(b(e,c,u,!1),!!e.result)||(e.kind=n,e.result=i,!1)}function T(e,t){var r,n,o;if(r=e.input.charCodeAt(e.position),39!==r)return!1;for(e.kind="scalar",e.result="",e.position++,n=o=e.position;0!==(r=e.input.charCodeAt(e.position));)if(39!==r)a(r)?(b(e,n,o,!0),w(e,k(e,!1,t)),n=o=e.position):e.position===e.lineStart&&C(e)?f(e,"unexpected end of the document within a single quoted scalar"):(e.position++,o=e.position);else if(b(e,n,e.position,!0),r=e.input.charCodeAt(++e.position),39===r)n=e.position,e.position++,o=e.position;else return!0;f(e,"unexpected end of the stream within a single quoted scalar")}function E(e,t){var r,n,o,i,s,l;if(l=e.input.charCodeAt(e.position),34!==l)return!1;for(e.kind="scalar",e.result="",e.position++,r=n=e.position;0!==(l=e.input.charCodeAt(e.position));){if(34===l)return b(e,r,e.position,!0),e.position++,!0;if(92===l){if(b(e,r,e.position,!0),l=e.input.charCodeAt(++e.position),a(l))k(e,!1,t);else if(256>l&&$[l])e.result+=J[l],e.position++;else if(0<(s=p(l))){for(o=s,i=0;0s&&(s=e.lineIndent),a(g)){l++;continue}if(e.lineIndentt)&&0!==d)f(e,"bad indentation of a sequence entry");else if(e.lineIndentt)&&(I(e,t,4,!0,h)&&(u?p=e.result:c=e.result),!u&&(x(e,i,l,d,p,c,y,b),d=p=c=null),k(e,!0,-1),S=e.input.charCodeAt(e.position)),e.lineIndent>t&&0!==S)f(e,"bad indentation of a mapping entry");else if(e.lineIndentt?o=1:e.lineIndent===t?o=0:e.lineIndentt?o=1:e.lineIndent===t?o=0:e.lineIndent tag; it should be \"scalar\", not \""+e.kind+"\""),c=0,u=e.implicitTypes.length;c tag; it should be \""+m.kind+"\", not \""+e.kind+"\""),m.resolve(e.result)?(e.result=m.construct(e.result),null!==e.anchor&&(e.anchorMap[e.anchor]=e.result)):f(e,"cannot resolve a node with !<"+e.tag+"> explicit tag")):f(e,"unknown tag !<"+e.tag+">");return null!==e.listener&&e.listener("close",e),null!==e.tag||null!==e.anchor||s}function W(e){var t=e.position,r=!1,n,i,l,d;for(e.version=null,e.checkLineBreaks=e.legacy,e.tagMap={},e.anchorMap={};0!==(d=e.input.charCodeAt(e.position))&&(k(e,!0,-1),d=e.input.charCodeAt(e.position),!(0i.length&&f(e,"directive name must not be less than one character in length");0!==d;){for(;o(d);)d=e.input.charCodeAt(++e.position);if(35===d){do d=e.input.charCodeAt(++e.position);while(0!==d&&!a(d));break}if(a(d))break;for(n=e.position;0!==d&&!s(d);)d=e.input.charCodeAt(++e.position);l.push(e.input.slice(n,e.position))}0!==d&&v(e),H.call(ee,i)?ee[i](e,i,l):y(e,"unknown document directive \""+i+"\"")}return k(e,!0,-1),0===e.lineIndent&&45===e.input.charCodeAt(e.position)&&45===e.input.charCodeAt(e.position+1)&&45===e.input.charCodeAt(e.position+2)?(e.position+=3,k(e,!0,-1)):r&&f(e,"directives end mark is expected"),I(e,e.lineIndent-1,4,!1,!0),k(e,!0,-1),e.checkLineBreaks&&K.test(e.input.slice(t,e.position))&&y(e,"non-ASCII line breaks are interpreted as content"),e.documents.push(e.result),e.position===e.lineStart&&C(e)?void(46===e.input.charCodeAt(e.position)&&(e.position+=3,k(e,!0,-1))):void(e.positionZ;Z++)$[Z]=u(Z)?1:0,J[Z]=u(Z);var ee={YAML:function(e,t,r){var n,a,o;null!==e.version&&f(e,"duplication of %YAML directive"),1!==r.length&&f(e,"YAML directive accepts exactly one argument"),n=/^([0-9]+)\.([0-9]+)$/.exec(r[0]),null===n&&f(e,"ill-formed argument of the YAML directive"),a=parseInt(n[1],10),o=parseInt(n[2],10),1!==a&&f(e,"unacceptable YAML version of the document"),e.version=r[0],e.checkLineBreaks=2>o,1!==o&&2!==o&&y(e,"unsupported YAML version of the document")},TAG:function(e,t,r){var n,a;2!==r.length&&f(e,"TAG directive accepts exactly two arguments"),n=r[0],a=r[1],X.test(n)||f(e,"ill-formed tag handle (first argument) of the TAG directive"),H.call(e.tagMap,n)&&f(e,"there is a previously declared suffix for \""+n+"\" tag handle"),Q.test(a)||f(e,"ill-formed tag prefix (second argument) of the TAG directive"),e.tagMap[n]=a}};e.exports.loadAll=B,e.exports.load=N,e.exports.safeLoadAll=function(e,t,r){return"object"==typeof t&&null!==t&&"undefined"==typeof r&&(r=t,t=null),B(e,t,D.extend({schema:U},r))},e.exports.safeLoad=function(e,t){return N(e,D.extend({schema:U},t))}},79989:(e,t,r)=>{"use strict";function n(e,t,r,n,a){this.name=e,this.buffer=t,this.position=r,this.line=n,this.column=a}var a=r(39990);n.prototype.getSnippet=function(e,t){var r,n,o,i,s;if(!this.buffer)return null;for(e=e||4,t=t||75,r="",n=this.position;0t/2-1){r=" ... ",n+=5;break}for(o="",i=this.position;it/2-1){o=" ... ",i-=5;break}return s=this.buffer.slice(n,i),a.repeat(" ",e)+r+s+o+"\n"+a.repeat(" ",e+this.position-n+r.length)+"^"},n.prototype.toString=function(e){var t="",r;return this.name&&(t+="in \""+this.name+"\" "),t+="at line "+(this.line+1)+", column "+(this.column+1),e||(r=this.getSnippet(),r&&(t+=":\n"+r)),t},e.exports=n},58126:(e,t,r)=>{"use strict";function n(e,t,r){var a=[];return e.include.forEach(function(e){r=n(e,t,r)}),e[t].forEach(function(e){r.forEach(function(t,r){t.tag===e.tag&&t.kind===e.kind&&a.push(r)}),r.push(e)}),r.filter(function(e,t){return-1===a.indexOf(t)})}function a(){function e(e){t[e.kind][e.tag]=t.fallback[e.tag]=e}var t={scalar:{},sequence:{},mapping:{},fallback:{}},r,n;for(r=0,n=arguments.length;r{"use strict";var n=r(58126);e.exports=new n({include:[r(75698)]})},17028:(e,t,r)=>{"use strict";var n=r(58126);e.exports=n.DEFAULT=new n({include:[r(23713)],explicit:[r(7988),r(19817),r(42939)]})},23713:(e,t,r)=>{"use strict";var n=r(58126);e.exports=new n({include:[r(11277)],implicit:[r(21136),r(37255)],explicit:[r(58212),r(82769),r(8234),r(31745)]})},21712:(e,t,r)=>{"use strict";var n=r(58126);e.exports=new n({explicit:[r(51497),r(506),r(58865)]})},75698:(e,t,r)=>{"use strict";var n=r(58126);e.exports=new n({include:[r(21712)],implicit:[r(30421),r(79193),r(76048),r(44514)]})},78099:(e,t,r)=>{"use strict";function n(e){var t={};return null!==e&&Object.keys(e).forEach(function(r){e[r].forEach(function(e){t[e+""]=r})}),t}var a=r(41030),o=["kind","resolve","construct","instanceOf","predicate","represent","defaultStyle","styleAliases"],i=["scalar","sequence","mapping"];e.exports=function(e,t){if(t=t||{},Object.keys(t).forEach(function(t){if(-1===o.indexOf(t))throw new a("Unknown option \""+t+"\" is met in definition of \""+e+"\" YAML type.")}),this.tag=e,this.kind=t.kind||null,this.resolve=t.resolve||function(){return!0},this.construct=t.construct||function(e){return e},this.instanceOf=t.instanceOf||null,this.predicate=t.predicate||null,this.represent=t.represent||null,this.defaultStyle=t.defaultStyle||null,this.styleAliases=n(t.styleAliases||null),-1===i.indexOf(this.kind))throw new a("Unknown kind \""+this.kind+"\" is specified for \""+e+"\" YAML type.")}},58212:(e,t,r)=>{"use strict";function n(e){var t=e.replace(/[\r\n=]/g,""),r=t.length,n=0,a=[],i,s;for(i=0;i>16),a.push(255&n>>8),a.push(255&n)),n=n<<6|"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r".indexOf(t.charAt(i));return s=6*(r%4),0===s?(a.push(255&n>>16),a.push(255&n>>8),a.push(255&n)):18===s?(a.push(255&n>>10),a.push(255&n>>2)):12==s&&a.push(255&n>>4),o?o.from?o.from(a):new o(a):a}function a(e){return o&&o.isBuffer(e)}var o;try{var i=require;o=i("buffer").Buffer}catch(e){}var s=r(78099);e.exports=new s("tag:yaml.org,2002:binary",{kind:"scalar",resolve:function(e){if(null===e)return!1;var t=0,r=e.length,n,a;for(a=0;an)return!1;t+=6}return 0==t%8},construct:n,predicate:a,represent:function(e){var t="",r=0,n=e.length,a,o;for(a=0;a>18],t+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r"[63&r>>12],t+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r"[63&r>>6],t+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r"[63&r]),r=(r<<8)+e[a];return o=n%3,0===o?(t+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r"[63&r>>18],t+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r"[63&r>>12],t+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r"[63&r>>6],t+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r"[63&r]):2===o?(t+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r"[63&r>>10],t+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r"[63&r>>4],t+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r"[63&r<<2],t+="="):1==o&&(t+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r"[63&r>>2],t+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r"[63&r<<4],t+="=",t+="="),t}})},79193:(e,t,r)=>{"use strict";var n=r(78099);e.exports=new n("tag:yaml.org,2002:bool",{kind:"scalar",resolve:function(e){if(null===e)return!1;var t=e.length;return 4===t&&("true"===e||"True"===e||"TRUE"===e)||5===t&&("false"===e||"False"===e||"FALSE"===e)},construct:function(e){return"true"===e||"True"===e||"TRUE"===e},predicate:function(e){return"[object Boolean]"===Object.prototype.toString.call(e)},represent:{lowercase:function(e){return e?"true":"false"},uppercase:function(e){return e?"TRUE":"FALSE"},camelcase:function(e){return e?"True":"False"}},defaultStyle:"lowercase"})},44514:(e,t,r)=>{"use strict";var n=r(39990),a=r(78099);e.exports=new a("tag:yaml.org,2002:float",{kind:"scalar",resolve:function(e){return null!==e&&!!(/^(?:[-+]?(?:0|[1-9][0-9_]*)(?:\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*|[-+]?\.(?:inf|Inf|INF)|\.(?:nan|NaN|NAN))$/.test(e)&&"_"!==e[e.length-1])},construct:function(e){var t,r,n,a;return(t=e.replace(/_/g,"").toLowerCase(),r="-"===t[0]?-1:1,a=[],0<="+-".indexOf(t[0])&&(t=t.slice(1)),".inf"===t)?1===r?_NumberPOSITIVE_INFINITY:_NumberNEGATIVE_INFINITY:".nan"===t?NaN:0<=t.indexOf(":")?(t.split(":").forEach(function(e){a.unshift(parseFloat(e,10))}),t=0,n=1,a.forEach(function(e){t+=e*n,n*=60}),r*t):r*parseFloat(t,10)},predicate:function(e){return"[object Number]"===Object.prototype.toString.call(e)&&(0!=e%1||n.isNegativeZero(e))},represent:function(e,t){var r;if(isNaN(e))switch(t){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN";}else if(_NumberPOSITIVE_INFINITY===e)switch(t){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf";}else if(_NumberNEGATIVE_INFINITY===e)switch(t){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf";}else if(n.isNegativeZero(e))return"-0.0";return r=e.toString(10),/^[-+]?[0-9]+e/.test(r)?r.replace("e",".e"):r},defaultStyle:"lowercase"})},76048:(e,t,r)=>{"use strict";function n(e){return 48<=e&&57>=e||65<=e&&70>=e||97<=e&&102>=e}function a(e){return 48<=e&&55>=e}function o(e){return 48<=e&&57>=e}var i=r(39990),s=r(78099);e.exports=new s("tag:yaml.org,2002:int",{kind:"scalar",resolve:function(e){if(null===e)return!1;var t=e.length,r=0,i=!1,s;if(!t)return!1;if(s=e[r],("-"===s||"+"===s)&&(s=e[++r]),"0"===s){if(r+1===t)return!0;if(s=e[++r],"b"===s){for(r++;r{"use strict";function n(e){if(null===e)return!1;try{var t=o.parse("("+e+")",{range:!0});return"Program"===t.type&&1===t.body.length&&"ExpressionStatement"===t.body[0].type&&("ArrowFunctionExpression"===t.body[0].expression.type||"FunctionExpression"===t.body[0].expression.type)}catch(e){return!1}}function a(e){var t="("+e+")",r=o.parse(t,{range:!0}),n=[],a;if("Program"!==r.type||1!==r.body.length||"ExpressionStatement"!==r.body[0].type||"ArrowFunctionExpression"!==r.body[0].expression.type&&"FunctionExpression"!==r.body[0].expression.type)throw new Error("Failed to resolve function");return r.body[0].expression.params.forEach(function(e){n.push(e.name)}),a=r.body[0].expression.body.range,"BlockStatement"===r.body[0].expression.body.type?new Function(n,t.slice(a[0]+1,a[1]-1)):new Function(n,"return "+t.slice(a[0],a[1]))}var o;try{var i=require;o=i("esprima")}catch(e){"undefined"!=typeof window&&(o=window.esprima)}var s=r(78099);e.exports=new s("tag:yaml.org,2002:js/function",{kind:"scalar",resolve:n,construct:a,predicate:function(e){return"[object Function]"===Object.prototype.toString.call(e)},represent:function(e){return e.toString()}})},19817:(e,t,r)=>{"use strict";var n=r(78099);e.exports=new n("tag:yaml.org,2002:js/regexp",{kind:"scalar",resolve:function(e){if(null===e)return!1;if(0===e.length)return!1;var t=e,r=/\/([gim]*)$/.exec(e),n="";if("/"===t[0]){if(r&&(n=r[1]),3{"use strict";var n=r(78099);e.exports=new n("tag:yaml.org,2002:js/undefined",{kind:"scalar",resolve:function(){return!0},construct:function(){},predicate:function(e){return"undefined"==typeof e},represent:function(){return""}})},58865:(e,t,r)=>{"use strict";var n=r(78099);e.exports=new n("tag:yaml.org,2002:map",{kind:"mapping",construct:function(e){return null===e?{}:e}})},37255:(e,t,r)=>{"use strict";var n=r(78099);e.exports=new n("tag:yaml.org,2002:merge",{kind:"scalar",resolve:function(e){return"<<"===e||null===e}})},30421:(e,t,r)=>{"use strict";var n=r(78099);e.exports=new n("tag:yaml.org,2002:null",{kind:"scalar",resolve:function(e){if(null===e)return!0;var t=e.length;return 1===t&&"~"===e||4===t&&("null"===e||"Null"===e||"NULL"===e)},construct:function(){return null},predicate:function(e){return null===e},represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"}},defaultStyle:"lowercase"})},82769:(e,t,r)=>{"use strict";var n=r(78099),a=Object.prototype.hasOwnProperty,o=Object.prototype.toString;e.exports=new n("tag:yaml.org,2002:omap",{kind:"sequence",resolve:function(e){if(null===e)return!0;var t=[],r=e,n,i,s,l,d;for(n=0,i=r.length;n{"use strict";var n=r(78099),a=Object.prototype.toString;e.exports=new n("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:function(e){if(null===e)return!0;var t=e,r,n,o,i,s;for(s=Array(t.length),r=0,n=t.length;r{"use strict";var n=r(78099);e.exports=new n("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(e){return null===e?[]:e}})},31745:(e,t,r)=>{"use strict";var n=r(78099),a=Object.prototype.hasOwnProperty;e.exports=new n("tag:yaml.org,2002:set",{kind:"mapping",resolve:function(e){if(null===e)return!0;var t=e,r;for(r in t)if(a.call(t,r)&&null!==t[r])return!1;return!0},construct:function(e){return null===e?{}:e}})},51497:(e,t,r)=>{"use strict";var n=r(78099);e.exports=new n("tag:yaml.org,2002:str",{kind:"scalar",construct:function(e){return null===e?"":e}})},21136:(e,t,r)=>{"use strict";var n=r(78099),a=/^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$/,o=/^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\.([0-9]*))?(?:[ \t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$/;e.exports=new n("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:function(e){return null!==e&&(null!==a.exec(e)||null!==o.exec(e))},construct:function(e){var t=0,r=null,n,i,s,l,d,p,c,u,m,g;if(n=a.exec(e),null===n&&(n=o.exec(e)),null===n)throw new Error("Date resolve error");if(i=+n[1],s=+n[2]-1,l=+n[3],!n[4])return new Date(Date.UTC(i,s,l));if(d=+n[4],p=+n[5],c=+n[6],n[7]){for(t=n[7].slice(0,3);3>t.length;)t+="0";t=+t}return n[9]&&(u=+n[10],m=+(n[11]||0),r=6e4*(60*u+m),"-"===n[9]&&(r=-r)),g=new Date(Date.UTC(i,s,l,d,p,c,t)),r&&g.setTime(g.getTime()-r),g},instanceOf:Date,represent:function(e){return e.toISOString()}})},90031:(e,t,r)=>{"use strict";function n({type:e}){if(!(e in p))throw new Error(`Invalid type specified: ${e}`)}const a=r(85622),o=r(35747),{promisify:i}=r(31669),s=r(96902),l=i(o.stat),d=i(o.lstat),p={directory:"isDirectory",file:"isFile"},c=(e,t)=>void 0===e||t[p[e]]();e.exports=async(e,t)=>{t={cwd:process.cwd(),type:"file",allowSymlinks:!0,...t},n(t);const r=t.allowSymlinks?l:d;return s(e,async e=>{try{const n=await r(a.resolve(t.cwd,e));return c(t.type,n)}catch(e){return!1}},t)},e.exports.sync=(e,t)=>{t={cwd:process.cwd(),allowSymlinks:!0,type:"file",...t},n(t);const r=t.allowSymlinks?o.statSync:o.lstatSync;for(const n of e)try{const e=r(a.resolve(t.cwd,n));if(c(t.type,e))return n}catch(e){}}},51993:(e,t,r)=>{function n(e,r){e=e||{},r=r||{};var n={};return Object.keys(r).forEach(function(e){n[e]=r[e]}),Object.keys(e).forEach(function(t){n[t]=e[t]}),n}function a(e,t,r){if("string"!=typeof t)throw new TypeError("glob pattern string required");return r||(r={}),!!(r.nocomment||"#"!==t.charAt(0))&&(""===t.trim()?""===e:new o(t,r).match(e))}function o(e,t){if(!(this instanceof o))return new o(e,t);if("string"!=typeof e)throw new TypeError("glob pattern string required");t||(t={}),e=e.trim(),"/"!==p.sep&&(e=e.split(p.sep).join("/")),this.options=t,this.set=[],this.pattern=e,this.regexp=null,this.negate=!1,this.comment=!1,this.empty=!1,this.make()}function i(e,t){if(t||(this instanceof o?t=this.options:t={}),e="undefined"==typeof e?this.pattern:e,"undefined"==typeof e)throw new TypeError("undefined pattern");return t.nobrace||!e.match(/\{.*\}/)?[e]:m(e)}function s(e,t){if(this.debug("match",e,this.pattern),this.comment)return!1;if(this.empty)return""===e;if("/"===e&&t)return!0;var r=this.options;"/"!==p.sep&&(e=e.split(p.sep).join("/")),e=e.split(y),this.debug(this.pattern,"split",e);var n=this.set;this.debug(this.pattern,"set",n);var a,o;for(o=e.length-1;0<=o&&(a=e[o],!a);o--);for(o=0;o>> no match, partial?",e,p,t,c),p===i))}var g;if("string"==typeof l?(g=n.nocase?d.toLowerCase()===l.toLowerCase():d===l,this.debug("string match",l,d,g)):(g=d.match(l),this.debug("pattern match",l,d,g)),!g)return!1}if(a===i&&o===s)return!0;if(a===i)return r;if(o===s){var h=a===i-1&&""===e[a];return h}throw new Error("wtf?")}},23607:(e,t,r)=>{function n(e,t,r,s){"function"==typeof t?(r=t,t={}):(!t||"object"!=typeof t)&&(t={mode:t});var l=t.mode,d=t.fs||o;void 0===l&&(l=i&~process.umask()),s||(s=null);var c=r||function(){};e=a.resolve(e),d.mkdir(e,l,function(r){if(!r)return s=s||e,c(null,s);switch(r.code){case"ENOENT":n(a.dirname(e),t,function(r,a){r?c(r,a):n(e,t,c,a)});break;default:d.stat(e,function(e,t){e||!t.isDirectory()?c(r,s):c(null,s)});}})}var a=r(85622),o=r(35747),i=parseInt("0777",8);e.exports=n.mkdirp=n.mkdirP=n,n.sync=function e(t,r,n){r&&"object"==typeof r||(r={mode:r});var s=r.mode,l=r.fs||o;void 0===s&&(s=i&~process.umask()),n||(n=null),t=a.resolve(t);try{l.mkdirSync(t,s),n=n||t}catch(o){switch(o.code){case"ENOENT":n=e(a.dirname(t),r,n),e(t,r,n);break;default:var d;try{d=l.statSync(t)}catch(e){throw o}if(!d.isDirectory())throw o;}}return n}},64994:e=>{function t(e){if(e+="",!(100=1.5*r?"s":"")}var o=24*(60*60000);e.exports=function(e,a){a=a||{};var o=typeof e;if("string"==o&&0e.size?(i=!0,void s(new a(`content size at ${e.url} over limit: ${e.size}`,"max-size"))):void(n+=t.length,r.push(t))}),t.on("end",function(){if(!i){clearTimeout(l);try{o(Buffer.concat(r,n))}catch(t){s(new a(`Could not create Buffer from response body for ${e.url}: ${t.message}`,"system",t))}}})})}function s(e,t){if("function"!=typeof I)throw new Error("The package `encoding` must be installed to use the textConverted() function");const r=t.get("content-type");let n="utf-8",a,o;return r&&(a=/charset=([^;]*)/i.exec(r)),o=e.slice(0,1024).toString(),!a&&o&&(a=/=i.follow)return n(new a(`maximum redirect reached at: ${i.url}`,"max-redirect")),void o();const s={headers:new F(i.headers),follow:i.follow,counter:i.counter+1,agent:i.agent,compress:i.compress,method:i.method,body:i.body,signal:i.signal,timeout:i.timeout,size:i.size};return 303!==e.statusCode&&i.body&&null===u(i)?(n(new a("Cannot follow redirect with body being a readable stream","unsupported-redirect")),void o()):((303===e.statusCode||(301===e.statusCode||302===e.statusCode)&&"POST"===i.method)&&(s.method="GET",s.body=void 0,s.headers.delete("content-length")),r(_(new $(l,s))),void o());}}e.once("end",function(){d&&d.removeEventListener("abort",g)});let s=e.pipe(new J);const l={url:i.url,status:e.statusCode,statusText:e.statusMessage,headers:t,size:i.size,timeout:i.timeout,counter:i.counter},c=t.get("Content-Encoding");if(!i.compress||"HEAD"===i.method||null===c||204===e.statusCode||304===e.statusCode)return p=new V(s,l),void r(p);const m={flush:P.Z_SYNC_FLUSH,finishFlush:P.Z_SYNC_FLUSH};if("gzip"==c||"x-gzip"==c)return s=s.pipe(P.createGunzip(m)),p=new V(s,l),void r(p);if("deflate"==c||"x-deflate"==c){const t=e.pipe(new J);return void t.once("data",function(e){s=8==(15&e[0])?s.pipe(P.createInflate()):s.pipe(P.createInflateRaw()),p=new V(s,l),r(p)})}return"br"==c&&"function"==typeof P.createBrotliDecompress?(s=s.pipe(P.createBrotliDecompress()),p=new V(s,l),void r(p)):void(p=new V(s,l),r(p))}),m(h,i)})}Object.defineProperty(t,"__esModule",{value:!0});var T=n(r(92413)),E=n(r(98605)),A=n(r(78835)),O=n(r(57211)),P=n(r(78761));const L=T.Readable,z=Symbol("buffer"),R=Symbol("type");class M{constructor(){this[R]="";const e=arguments[0],t=arguments[1],r=[];let n=0;if(e){const t=e,a=+t.length;for(let e=0;et?_Mathmax(e+t,0):_Mathmin(t,e),a=void 0===r?e:0>r?_Mathmax(e+r,0):_Mathmin(r,e);const o=_Mathmax(a-n,0),i=this[z],s=i.slice(n,n+o),l=new M([],{type:arguments[2]});return l[z]=s,l}}Object.defineProperties(M.prototype,{size:{enumerable:!0},type:{enumerable:!0},slice:{enumerable:!0}}),Object.defineProperty(M.prototype,Symbol.toStringTag,{value:"Blob",writable:!1,enumerable:!1,configurable:!0}),a.prototype=Object.create(Error.prototype),a.prototype.constructor=a,a.prototype.name="FetchError";let I;try{I=r(40142).convert}catch(t){}const W=Symbol("Body internals"),q=T.PassThrough;o.prototype={get body(){return this[W].body},get bodyUsed(){return this[W].disturbed},arrayBuffer(){return i.call(this).then(function(e){return e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength)})},blob(){let e=this.headers&&this.headers.get("content-type")||"";return i.call(this).then(function(t){return Object.assign(new M([],{type:e.toLowerCase()}),{[z]:t})})},json(){var e=this;return i.call(this).then(function(t){try{return JSON.parse(t.toString())}catch(t){return o.Promise.reject(new a(`invalid json response body at ${e.url} reason: ${t.message}`,"invalid-json"))}})},text(){return i.call(this).then(function(e){return e.toString()})},buffer(){return i.call(this)},textConverted(){var e=this;return i.call(this).then(function(t){return s(t,e.headers)})}},Object.defineProperties(o.prototype,{body:{enumerable:!0},bodyUsed:{enumerable:!0},arrayBuffer:{enumerable:!0},blob:{enumerable:!0},json:{enumerable:!0},text:{enumerable:!0}}),o.mixIn=function(e){for(const t of Object.getOwnPropertyNames(o.prototype))if(!(t in e)){const r=Object.getOwnPropertyDescriptor(o.prototype,t);Object.defineProperty(e,t,r)}},o.Promise=global.Promise;const B=/[^\^_`a-zA-Z\-0-9!#$%&'*+.|~]/,N=/[^\t\x20-\x7e\x80-\xff]/,D=Symbol("map");class F{constructor(){let e=0=o?{value:void 0,done:!0}:(this[G].index=n+1,{value:a[n],done:!1})}},Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]())));Object.defineProperty(U,Symbol.toStringTag,{value:"HeadersIterator",writable:!1,enumerable:!1,configurable:!0});const j=Symbol("Response internals"),H=E.STATUS_CODES;class V{constructor(){let e=0this[j].status}get redirected(){return 0{e.exports=function(e){var t=e[0],r=e[1]-1;if(0>r&&0>=t)return i;if(-1===t)return function(e){return e<=r};if(0===t)return function(e){return e===r};if(1===t)return 0>r?o:function(e){return e>=r};var n=r%t;return(0>n&&(n+=t),1=r&&e%t===n}:(t*=-1,function(e){return e<=r&&e%t===n})};var n=r(27510),o=n.trueFunc,i=n.falseFunc},88970:(e,t,r)=>{var n=r(30151),a=r(50880);e.exports=function(e){return a(n(e))},e.exports.parse=n,e.exports.compile=a},30151:e=>{e.exports=function(e){if(e=e.trim().toLowerCase(),"even"===e)return[2,0];if("odd"===e)return[2,1];var r=e.match(t);if(!r)throw new SyntaxError("n-th rule couldn't be parsed ('"+e+"')");var n;return r[1]?(n=parseInt(r[1],10),isNaN(n)&&("-"===r[1].charAt(0)?n=-1:n=1)):n=0,[n,r[3]?parseInt((r[2]||"")+r[3],10):0]};var t=/^([+\-]?\d*n)?\s*(?:([+\-]?)\s*(\d+))?$/},47905:(e,t,r)=>{"use strict";var n;if(!Object.keys){var a=Object.prototype.hasOwnProperty,o=Object.prototype.toString,s=r(7595),l=Object.prototype.propertyIsEnumerable,d=!l.call({toString:null},"toString"),p=l.call(function(){},"prototype"),c=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],u=function(e){var t=e.constructor;return t&&t.prototype===e},m={$applicationCache:!0,$console:!0,$external:!0,$frame:!0,$frameElement:!0,$frames:!0,$innerHeight:!0,$innerWidth:!0,$onmozfullscreenchange:!0,$onmozfullscreenerror:!0,$outerHeight:!0,$outerWidth:!0,$pageXOffset:!0,$pageYOffset:!0,$parent:!0,$scrollLeft:!0,$scrollTop:!0,$scrollX:!0,$scrollY:!0,$self:!0,$webkitIndexedDB:!0,$webkitStorageInfo:!0,$window:!0},g=function(){if("undefined"==typeof window)return!1;for(var e in window)try{if(!m["$"+e]&&a.call(window,e)&&null!==window[e]&&"object"==typeof window[e])try{u(window[e])}catch(t){return!0}}catch(t){return!0}return!1}(),h=function(e){if("undefined"==typeof window||!g)return u(e);try{return u(e)}catch(t){return!1}};n=function(e){var t=null!==e&&"object"==typeof e,r="[object Function]"===o.call(e),n=s(e),l=t&&"[object String]"===o.call(e),u=[];if(!t&&!r&&!n)throw new TypeError("Object.keys called on a non-object");if(l&&0{"use strict";var n=Array.prototype.slice,a=r(7595),i=Object.keys,s=i?function(e){return i(e)}:r(47905),l=Object.keys;s.shim=function(){if(Object.keys){var e=function(){var e=Object.keys(arguments);return e&&e.length===arguments.length}(1,2);e||(Object.keys=function(e){return a(e)?l(n.call(e)):l(e)})}else Object.keys=s;return Object.keys||s},e.exports=s},7595:e=>{"use strict";var t=Object.prototype.toString;e.exports=function(e){var r=t.call(e),n="[object Arguments]"===r;return n||(n="[object Array]"!==r&&null!==e&&"object"==typeof e&&"number"==typeof e.length&&0<=e.length&&"[object Function]"===t.call(e.callee)),n}},81699:(e,t,r)=>{"use strict";var n=r(98496),a=r(61421),o=r(38790),i=o("Object.prototype.propertyIsEnumerable");e.exports=function(e){var t=a(e),r=[];for(var o in t)n(t,o)&&i(t,o)&&r.push(t[o]);return r}},67670:(e,t,r)=>{"use strict";var n=r(3087),a=r(81699),o=r(64450),i=r(51454),s=o();n(s,{getPolyfill:o,implementation:a,shim:i}),e.exports=s},64450:(e,t,r)=>{"use strict";var n=r(81699);e.exports=function(){return"function"==typeof Object.values?Object.values:n}},51454:(e,t,r)=>{"use strict";var n=r(64450),a=r(3087);e.exports=function(){var e=n();return a(Object,{values:e},{values:function(){return Object.values!==e}}),e}},86343:(e,t,r)=>{function n(e){var t=function(){return t.called?t.value:(t.called=!0,t.value=e.apply(this,arguments))};return t.called=!1,t}function a(e){var t=function(){if(t.called)throw new Error(t.onceError);return t.called=!0,t.value=e.apply(this,arguments)},r=e.name||"Function wrapped with `once`";return t.onceError=r+" shouldn't be called more than once",t.called=!1,t}var o=r(42884);e.exports=o(n),e.exports.strict=o(a),n.proto=n(function(){Object.defineProperty(Function.prototype,"once",{value:function(){return n(this)},configurable:!0}),Object.defineProperty(Function.prototype,"onceStrict",{value:function(){return a(this)},configurable:!0})})},19821:(e,t,r)=>{"use strict";const n=r(19840),a=e=>{if(!((_NumberisInteger(e)||e===1/0)&&0{r--,0{r++;const i=n(e,...o);t(i),i.then(a,a)},i=(n,a,...i)=>{rnew Promise(r=>i(e,r,...t));return Object.defineProperties(s,{activeCount:{get:()=>r},pendingCount:{get:()=>t.length},clearQueue:{value:()=>{t.length=0}}}),s};e.exports=a,e.exports.default=a},96902:(e,t,r)=>{"use strict";const n=r(19821);class a extends Error{constructor(e){super(),this.value=e}}const o=async(e,t)=>t(await e),i=async e=>{const t=await Promise.all(e);if(!0===t[1])throw new a(t[0]);return!1},s=async(e,t,r)=>{r={concurrency:1/0,preserveOrder:!0,...r};const s=n(r.concurrency),l=[...e].map(e=>[e,s(o,e,t)]),d=n(r.preserveOrder?1:1/0);try{await Promise.all(l.map(e=>d(i,e)))}catch(e){if(e instanceof a)return e.value;throw e}};e.exports=s,e.exports.default=s},19840:e=>{"use strict";const t=(e,...t)=>new Promise(r=>{r(e(...t))});e.exports=t,e.exports.default=t},68719:(e,t,r)=>{"use strict";const n=r(35747),{promisify:a}=r(31669),o=a(n.access);e.exports=async e=>{try{return await o(e),!0}catch(e){return!1}},e.exports.sync=e=>{try{return n.accessSync(e),!0}catch(e){return!1}}},61056:e=>{"use strict";function t(e){return"/"===e.charAt(0)}function r(e){var t=/^([a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?([\\\/])?([\s\S]*?)$/.exec(e),r=t[1]||"",n=!!(r&&":"!==r.charAt(1));return!!(t[2]||n)}e.exports="win32"===process.platform?r:t,e.exports.posix=t,e.exports.win32=r},1520:e=>{function t(){this.pending=0,this.max=1/0,this.listeners=[],this.waiting=[],this.error=null}function r(e){function t(t){if(a)throw new Error("callback called twice");if(a=!0,e.error=e.error||t,e.pending-=1,0{"use strict";const n=r(85622),a=r(20138),o=async e=>{const t=await a("package.json",{cwd:e});return t&&n.dirname(t)};e.exports=o,e.exports.default=o,e.exports.sync=e=>{const t=a.sync("package.json",{cwd:e});return t&&n.dirname(t)}},10208:(e,t,r)=>{"use strict";function n(e,t){var r=(a("npm_config_no_proxy")||a("no_proxy")).toLowerCase();return!r||"*"!==r&&r.split(/[,\s]/).every(function(r){if(!r)return!0;var n=r.match(/^(.+):(\d+)$/),a=n?n[1]:r,o=n?parseInt(n[2]):0;return!!(o&&o!==t)||(/^[.*]/.test(a)?("*"===a.charAt(0)&&(a=a.slice(1)),!s.call(e,a)):e!==a)})}function a(e){return process.env[e.toLowerCase()]||process.env[e.toUpperCase()]||""}var o=r(78835).parse,i={ftp:21,gopher:70,http:80,https:443,ws:80,wss:443},s=_Stringprototype.endsWith||function(e){return e.length<=this.length&&-1!==this.indexOf(e,this.length-e.length)};t.getProxyForUrl=function(e){var t="string"==typeof e?o(e):e||{},r=t.protocol,s=t.host,l=t.port;if("string"!=typeof s||!s||"string"!=typeof r)return"";if(r=r.split(":",1)[0],s=s.replace(/:\d*$/,""),l=parseInt(l)||i[r]||0,!n(s,l))return"";var d=a("npm_config_"+r+"_proxy")||a(r+"_proxy")||a("npm_config_proxy")||a("all_proxy");return d&&-1===d.indexOf("://")&&(d=r+"://"+d),d}},537:(e,t,r)=>{var n=r(86343),a=r(10852),o=r(35747),i=function(){},s=/^v?\.0/.test(process.version),l=function(e){return"function"==typeof e},d=function(e){return!!s&&!!o&&(e instanceof(o.ReadStream||i)||e instanceof(o.WriteStream||i))&&l(e.close)},p=function(e){return e.setHeader&&l(e.abort)},c=function(e,t,r,o){o=n(o);var s=!1;e.on("close",function(){s=!0}),a(e,{readable:t,writable:r},function(e){return e?o(e):void(s=!0,o())});var c=!1;return function(t){if(!s)return c?void 0:(c=!0,d(e)?e.close(i):p(e)?e.abort():l(e.destroy)?e.destroy():void o(t||new Error("stream was destroyed")))}},u=function(e){e()},m=function(e,t){return e.pipe(t)};e.exports=function(){var e=Array.prototype.slice.call(arguments),t=l(e[e.length-1]||i)&&e.pop()||i;if(Array.isArray(e[0])&&(e=e[0]),2>e.length)throw new Error("pump requires two streams per minimum");var r=e.map(function(a,o){var i=o{const n=r(90176);e.exports=n.default},77601:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Accessibility=void 0;t.Accessibility=class e{constructor(e){this._client=e}async snapshot(e={}){const{interestingOnly:t=!0,root:n=null}=e,{nodes:a}=await this._client.send("Accessibility.getFullAXTree");let o=null;if(n){const{node:e}=await this._client.send("DOM.describeNode",{objectId:n._remoteObject.objectId});o=e.backendNodeId}const i=r.createTree(a);let s=i;if(o&&(s=i.find(e=>e.payload.backendDOMNodeId===o),!s))return null;if(!t)return this.serializeTree(s)[0];const l=new Set;return this.collectInterestingNodes(l,i,!1),l.has(s)?this.serializeTree(s,l)[0]:null}serializeTree(e,t){const r=[];for(const n of e.children)r.push(...this.serializeTree(n,t));if(t&&!t.has(e))return r;const n=e.serialize();return r.length&&(n.children=r),[n]}collectInterestingNodes(e,t,r){if(t.isInteresting(r)&&e.add(t),!t.isLeafNode()){r=r||t.isControl();for(const n of t.children)this.collectInterestingNodes(e,n,r)}}};class r{constructor(e){this.children=[],this._richlyEditable=!1,this._editable=!1,this._focusable=!1,this._hidden=!1,this.payload=e,this._name=this.payload.name?this.payload.name.value:"",this._role=this.payload.role?this.payload.role.value:"Unknown",this._ignored=this.payload.ignored;for(const t of this.payload.properties||[])"editable"===t.name&&(this._richlyEditable="richtext"===t.value.value,this._editable=!0),"focusable"===t.name&&(this._focusable=t.value.value),"hidden"===t.name&&(this._hidden=t.value.value)}_isPlainTextField(){return!this._richlyEditable&&(!!this._editable||"textbox"===this._role||"searchbox"===this._role)}_isTextOnlyObject(){const e=this._role;return"LineBreak"===e||"text"===e||"InlineTextBox"===e}_hasFocusableChild(){if(void 0===this._cachedHasFocusableChild){this._cachedHasFocusableChild=!1;for(const e of this.children)if(e._focusable||e._hasFocusableChild()){this._cachedHasFocusableChild=!0;break}}return this._cachedHasFocusableChild}find(e){if(e(this))return this;for(const t of this.children){const r=t.find(e);if(r)return r}return null}isLeafNode(){if(!this.children.length)return!0;if(this._isPlainTextField()||this._isTextOnlyObject())return!0;switch(this._role){case"doc-cover":case"graphics-symbol":case"img":case"Meter":case"scrollbar":case"slider":case"separator":case"progressbar":return!0;default:}return!this._hasFocusableChild()&&(!!(this._focusable&&this._name)||!!("heading"===this._role&&this._name))}isControl(){switch(this._role){case"button":case"checkbox":case"ColorWell":case"combobox":case"DisclosureTriangle":case"listbox":case"menu":case"menubar":case"menuitem":case"menuitemcheckbox":case"menuitemradio":case"radio":case"scrollbar":case"searchbox":case"slider":case"spinbutton":case"switch":case"tab":case"textbox":case"tree":case"treeitem":return!0;default:return!1;}}isInteresting(e){const t=this._role;return!("Ignored"===t||this._hidden||this._ignored)&&(!!(this._focusable||this._richlyEditable)||!!this.isControl()||!e&&this.isLeafNode()&&!!this._name)}serialize(){const e=new Map;for(const t of this.payload.properties||[])e.set(t.name.toLowerCase(),t.value.value);this.payload.name&&e.set("name",this.payload.name.value),this.payload.value&&e.set("value",this.payload.value.value),this.payload.description&&e.set("description",this.payload.description.value);const t={role:this._role},r=["name","value","description","keyshortcuts","roledescription","valuetext"],n=t=>e.get(t);for(const a of r)e.has(a)&&(t[a]=n(a));const a=["disabled","expanded","focused","modal","multiline","multiselectable","readonly","required","selected"],o=t=>e.get(t);for(const e of a){if("focused"===e&&"WebArea"===this._role)continue;const r=o(e);r&&(t[e]=o(e))}const i=["checked","pressed"];for(const r of i){if(!e.has(r))continue;const n=e.get(r);t[r]="mixed"===n?"mixed":"true"===n}const s=["level","valuemax","valuemin"],l=t=>e.get(t);for(const r of s)e.has(r)&&(t[r]=l(r));const d=["autocomplete","haspopup","invalid","orientation"],p=t=>e.get(t);for(const e of d){const r=p(e);r&&"false"!==r&&(t[e]=p(e))}return t}static createTree(e){const t=new Map;for(const n of e)t.set(n.nodeId,new r(n));for(const r of t.values())for(const e of r.payload.childIds||[])r.children.push(t.get(e));return t.values().next().value}}},79867:(e,t)=>{"use strict";async function r(e,t,r,n){const{nodes:a}=await e.send("Accessibility.queryAXTree",{objectId:t._remoteObject.objectId,accessibleName:r,role:n}),o=a.filter(e=>"text"!==e.role.value);return o}function n(e){const t=e=>e.replace(/ +/g," ").trim(),r=new Set(["name","role"]),n={},a=e.replace(/\[\s*(?\w+)\s*=\s*"(?\\.|[^"\\]*)"\s*\]/,(e,a,o)=>{if(a=a.trim(),!r.has(a))throw new Error("Unkown aria attribute \"${groups.attribute}\" in selector");return n[a]=t(o),""});return a&&!n.name&&(n.name=t(a)),n}async function a(e){await e.addBinding("ariaQuerySelector",async t=>{const r=await e._document(),n=await o(r,t);return n})}Object.defineProperty(t,"__esModule",{value:!0}),t.ariaHandler=void 0;const o=async(e,t)=>{const a=e.executionContext(),{name:o,role:i}=n(t),s=await r(a._client,e,o,i);return 1>s.length?null:a._adoptBackendNodeId(s[0].backendDOMNodeId)},i=async(e,t)=>{const a=e.executionContext(),{name:o,role:i}=n(t),s=await r(a._client,e,o,i);return Promise.all(s.map(e=>a._adoptBackendNodeId(e.backendDOMNodeId)))};t.ariaHandler={queryOne:o,waitFor:async(e,t,r)=>(await a(e),e.waitForSelectorInPage((e,t)=>globalThis.ariaQuerySelector(t),t,r)),queryAll:i,queryAllArray:async(e,t)=>{const r=await i(e,t),n=e.executionContext(),a=n.evaluateHandle((...e)=>e,...r);return a}}},10487:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BrowserContext=t.Browser=void 0;const n=r(85668),a=r(47674),o=r(69668),i=r(2680),s=r(58602);class l extends i.EventEmitter{constructor(e,t,r,n,a,o){super(),this._ignoreHTTPSErrors=r,this._defaultViewport=n,this._process=a,this._connection=e,this._closeCallback=o||function(){},this._defaultContext=new d(this._connection,this,null),this._contexts=new Map;for(const i of t)this._contexts.set(i,new d(this._connection,this,i));this._targets=new Map,this._connection.on(s.ConnectionEmittedEvents.Disconnected,()=>this.emit("disconnected")),this._connection.on("Target.targetCreated",this._targetCreated.bind(this)),this._connection.on("Target.targetDestroyed",this._targetDestroyed.bind(this)),this._connection.on("Target.targetInfoChanged",this._targetInfoChanged.bind(this))}static async create(e,t,r,n,a,o){const i=new l(e,t,r,n,a,o);return await e.send("Target.setDiscoverTargets",{discover:!0}),i}process(){return this._process}async createIncognitoBrowserContext(){const{browserContextId:e}=await this._connection.send("Target.createBrowserContext"),t=new d(this._connection,this,e);return this._contexts.set(e,t),t}browserContexts(){return[this._defaultContext,...Array.from(this._contexts.values())]}defaultBrowserContext(){return this._defaultContext}async _disposeContext(e){await this._connection.send("Target.disposeBrowserContext",{browserContextId:e||void 0}),this._contexts.delete(e)}async _targetCreated(e){const t=e.targetInfo,{browserContextId:r}=t,a=r&&this._contexts.has(r)?this._contexts.get(r):this._defaultContext,i=new o.Target(t,a,()=>this._connection.createSession(t),this._ignoreHTTPSErrors,this._defaultViewport);n.assert(!this._targets.has(e.targetInfo.targetId),"Target should not exist before targetCreated"),this._targets.set(e.targetInfo.targetId,i),(await i._initializedPromise)&&(this.emit("targetcreated",i),a.emit("targetcreated",i))}async _targetDestroyed(e){const t=this._targets.get(e.targetId);t._initializedCallback(!1),this._targets.delete(e.targetId),t._closedCallback(),(await t._initializedPromise)&&(this.emit("targetdestroyed",t),t.browserContext().emit("targetdestroyed",t))}_targetInfoChanged(e){const t=this._targets.get(e.targetInfo.targetId);n.assert(t,"target should exist before targetInfoChanged");const r=t.url(),a=t._isInitialized;t._targetInfoChanged(e.targetInfo),a&&r!==t.url()&&(this.emit("targetchanged",t),t.browserContext().emit("targetchanged",t))}wsEndpoint(){return this._connection.url()}async newPage(){return this._defaultContext.newPage()}async _createPageInContext(e){const{targetId:t}=await this._connection.send("Target.createTarget",{url:"about:blank",browserContextId:e||void 0}),r=await this._targets.get(t);n.assert(await r._initializedPromise,"Failed to create target for page");const a=await r.page();return a}targets(){return Array.from(this._targets.values()).filter(e=>e._isInitialized)}target(){return this.targets().find(e=>"browser"===e.type())}async waitForTarget(e,t={}){function r(t){e(t)&&i(t)}const{timeout:n=3e4}=t,o=this.targets().find(e);if(o)return o;let i;const s=new Promise(e=>i=e);this.on("targetcreated",r),this.on("targetchanged",r);try{return n?await a.helper.waitWithTimeout(s,"target",n):await s}finally{this.removeListener("targetcreated",r),this.removeListener("targetchanged",r)}}async pages(){const e=await Promise.all(this.browserContexts().map(e=>e.pages()));return e.reduce((e,t)=>e.concat(t),[])}async version(){const e=await this._getVersion();return e.product}async userAgent(){const e=await this._getVersion();return e.userAgent}async close(){await this._closeCallback.call(null),this.disconnect()}disconnect(){this._connection.dispose()}isConnected(){return!this._connection._closed}_getVersion(){return this._connection.send("Browser.getVersion")}}t.Browser=l;class d extends i.EventEmitter{constructor(e,t,r){super(),this._connection=e,this._browser=t,this._id=r}targets(){return this._browser.targets().filter(e=>e.browserContext()===this)}waitForTarget(e,t={}){return this._browser.waitForTarget(t=>t.browserContext()===this&&e(t),t)}async pages(){const e=await Promise.all(this.targets().filter(e=>"page"===e.type()).map(e=>e.page()));return e.filter(e=>!!e)}isIncognito(){return!!this._id}async overridePermissions(e,t){const r=new Map([["geolocation","geolocation"],["midi","midi"],["notifications","notifications"],["camera","videoCapture"],["microphone","audioCapture"],["background-sync","backgroundSync"],["ambient-light-sensor","sensors"],["accelerometer","sensors"],["gyroscope","sensors"],["magnetometer","sensors"],["accessibility-events","accessibilityEvents"],["clipboard-read","clipboardReadWrite"],["clipboard-write","clipboardReadWrite"],["payment-handler","paymentHandler"],["idle-detection","idleDetection"],["midi-sysex","midiSysex"]]),n=t.map(e=>{const t=r.get(e);if(!t)throw new Error("Unknown permission: "+e);return t});await this._connection.send("Browser.grantPermissions",{origin:e,browserContextId:this._id||void 0,permissions:n})}async clearPermissionOverrides(){await this._connection.send("Browser.resetPermissions",{browserContextId:this._id||void 0})}newPage(){return this._browser._createPageInContext(this._id)}browser(){return this._browser}async close(){n.assert(this._id,"Non-incognito profiles cannot be closed!"),await this._browser._disposeContext(this._id)}}t.BrowserContext=d},10714:function(e,t,r){"use strict";async function n(e){const t=new URL("/json/version",e),r=await c.getFetch();try{const e=await r(t.toString(),{method:"GET"});if(!e.ok)throw new Error(`HTTP ${e.statusText}`);const n=await e.json();return n.webSocketDebuggerUrl}catch(e){throw e.message=`Failed to fetch browser webSocket URL from ${t}: `+e.message,e}}var a=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),o=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e["default"]=t}),i=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!=r&&Object.hasOwnProperty.call(e,r)&&a(t,e,r);return o(t,e),t};Object.defineProperty(t,"__esModule",{value:!0}),t.connectToBrowser=void 0;const s=r(10487),l=r(85668),d=r(47674),p=r(58602),c=r(84763),u=r(23222),m=async()=>u.isNode?(await Promise.resolve().then(()=>i(r(17662)))).NodeWebSocketTransport:(await Promise.resolve().then(()=>i(r(96937)))).BrowserWebSocketTransport;t.connectToBrowser=async e=>{const{browserWSEndpoint:t,browserURL:r,ignoreHTTPSErrors:o=!1,defaultViewport:i={width:800,height:600},transport:a,slowMo:c=0}=e;l.assert(1===+!!t+ +!!r+ +!!a,"Exactly one of browserWSEndpoint, browserURL or transport must be passed to puppeteer.connect");let u=null;if(a)u=new p.Connection("",a,c);else if(t){const e=await m(),r=await e.create(t);u=new p.Connection(t,r,c)}else if(r){const e=await n(r),t=await m(),a=await t.create(e);u=new p.Connection(e,a,c)}const{browserContextIds:g}=await u.send("Target.getBrowserContexts");return s.Browser.create(u,g,o,i,null,()=>u.send("Browser.close").catch(d.debugError))}},96937:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BrowserWebSocketTransport=void 0;class r{constructor(e){this._ws=e,this._ws.addEventListener("message",e=>{this.onmessage&&this.onmessage.call(null,e.data)}),this._ws.addEventListener("close",()=>{this.onclose&&this.onclose.call(null)}),this._ws.addEventListener("error",()=>{}),this.onmessage=null,this.onclose=null}static create(e){return new Promise((t,n)=>{const a=new WebSocket(e);a.addEventListener("open",()=>t(new r(a))),a.addEventListener("error",n)})}send(e){this._ws.send(e)}close(){this._ws.close()}}t.BrowserWebSocketTransport=r},58602:(e,t,r)=>{"use strict";function n(e,t,r){let n=`Protocol error (${t}): ${r.error.message}`;return"data"in r.error&&(n+=` ${r.error.data}`),a(e,n)}function a(e,t){return e.message=t,e}Object.defineProperty(t,"__esModule",{value:!0}),t.CDPSession=t.CDPSessionEmittedEvents=t.Connection=t.ConnectionEmittedEvents=void 0;const o=r(85668),i=r(49259),s=i.debug("puppeteer:protocol:SEND \u25BA"),l=i.debug("puppeteer:protocol:RECV \u25C0"),d=r(2680);t.ConnectionEmittedEvents={Disconnected:Symbol("Connection.Disconnected")};class p extends d.EventEmitter{constructor(e,t,r=0){super(),this._lastId=0,this._sessions=new Map,this._closed=!1,this._callbacks=new Map,this._url=e,this._delay=r,this._transport=t,this._transport.onmessage=this._onMessage.bind(this),this._transport.onclose=this._onClose.bind(this)}static fromSession(e){return e._connection}session(e){return this._sessions.get(e)||null}url(){return this._url}send(e,...t){const r=t.length?t[0]:void 0,n=this._rawSend({method:e,params:r});return new Promise((t,r)=>{this._callbacks.set(n,{resolve:t,reject:r,error:new Error,method:e})})}_rawSend(e){const t=++this._lastId,r=JSON.stringify(Object.assign({},e,{id:t}));return s(r),this._transport.send(r),t}async _onMessage(e){this._delay&&(await new Promise(e=>setTimeout(e,this._delay))),l(e);const t=JSON.parse(e);if("Target.attachedToTarget"===t.method){const e=t.params.sessionId,r=new c(this,t.params.targetInfo.type,e);this._sessions.set(e,r)}else if("Target.detachedFromTarget"===t.method){const e=this._sessions.get(t.params.sessionId);e&&(e._onClosed(),this._sessions.delete(t.params.sessionId))}if(t.sessionId){const e=this._sessions.get(t.sessionId);e&&e._onMessage(t)}else if(t.id){const e=this._callbacks.get(t.id);e&&(this._callbacks.delete(t.id),t.error?e.reject(n(e.error,e.method,t)):e.resolve(t.result))}else this.emit(t.method,t.params)}_onClose(){if(!this._closed){this._closed=!0,this._transport.onmessage=null,this._transport.onclose=null;for(const e of this._callbacks.values())e.reject(a(e.error,`Protocol error (${e.method}): Target closed.`));this._callbacks.clear();for(const e of this._sessions.values())e._onClosed();this._sessions.clear(),this.emit(t.ConnectionEmittedEvents.Disconnected)}}dispose(){this._onClose(),this._transport.close()}async createSession(e){const{sessionId:t}=await this.send("Target.attachToTarget",{targetId:e.targetId,flatten:!0});return this._sessions.get(t)}}t.Connection=p,t.CDPSessionEmittedEvents={Disconnected:Symbol("CDPSession.Disconnected")};class c extends d.EventEmitter{constructor(e,t,r){super(),this._callbacks=new Map,this._connection=e,this._targetType=t,this._sessionId=r}send(e,...t){if(!this._connection)return Promise.reject(new Error(`Protocol error (${e}): Session closed. Most likely the ${this._targetType} has been closed.`));const r=t.length?t[0]:void 0,n=this._connection._rawSend({sessionId:this._sessionId,method:e,params:r||{}});return new Promise((t,r)=>{this._callbacks.set(n,{resolve:t,reject:r,error:new Error,method:e})})}_onMessage(e){if(e.id&&this._callbacks.has(e.id)){const t=this._callbacks.get(e.id);this._callbacks.delete(e.id),e.error?t.reject(n(t.error,t.method,e)):t.resolve(e.result)}else o.assert(!e.id),this.emit(e.method,e.params)}async detach(){if(!this._connection)throw new Error(`Session already detached. Most likely the ${this._targetType} has been closed.`);await this._connection.send("Target.detachFromTarget",{sessionId:this._sessionId})}_onClosed(){for(const e of this._callbacks.values())e.reject(a(e.error,`Protocol error (${e.method}): Target closed.`));this._callbacks.clear(),this._connection=null,this.emit(t.CDPSessionEmittedEvents.Disconnected)}}t.CDPSession=c},16051:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ConsoleMessage=void 0;t.ConsoleMessage=class e{constructor(e,t,r,n){this._type=e,this._text=t,this._args=r,this._stackTraceLocations=n}type(){return this._type}text(){return this._text}args(){return this._args}location(){return this._stackTraceLocations.length?this._stackTraceLocations[0]:{}}stackTrace(){return this._stackTraceLocations}}},35204:(e,t,r)=>{"use strict";function n(e){const t=[];for(const r of e)t.push({offset:r.startOffset,type:0,range:r}),t.push({offset:r.endOffset,type:1,range:r});t.sort((e,t)=>{if(e.offset!==t.offset)return e.offset-t.offset;if(e.type!==t.type)return t.type-e.type;const r=e.range.endOffset-e.range.startOffset,n=t.range.endOffset-t.range.startOffset;return 0===e.type?n-r:r-n});const r=[],n=[];let a=0;for(const o of t){if(r.length&&a1{"use strict";async function n(e,t,r,...n){async function a(e){async function t(){if(i)return void r();const a=await o(...n);a?r(a):setTimeout(t,e)}let r;const a=new Promise(e=>r=e);return await t(),a}const o=new Function("...args",e);let i=!1;return r&&setTimeout(()=>i=!0,r),"raf"===t?await async function(){async function e(){if(i)return void t();const r=await o(...n);r?t(r):requestAnimationFrame(e)}let t;const r=new Promise(e=>t=e);return await e(),r}():"mutation"===t?await async function(){const e=await o(...n);if(e)return Promise.resolve(e);let t;const r=new Promise(e=>t=e),a=new MutationObserver(async()=>{i&&(a.disconnect(),t());const e=await o(...n);e&&(a.disconnect(),t(e))});return a.observe(document,{childList:!0,subtree:!0,attributes:!0}),r}():"number"==typeof t?await a(t):void 0}Object.defineProperty(t,"__esModule",{value:!0}),t.WaitTask=t.DOMWorld=void 0;const a=r(85668),o=r(47674),i=r(54954),s=r(29554),l=r(90419),d=r(23222);t.DOMWorld=class e{constructor(e,t,r){this._documentPromise=null,this._contextPromise=null,this._contextResolveCallback=null,this._detached=!1,this._waitTasks=new Set,this._boundFunctions=new Map,this._ctxBindings=new Set,this._settingUpBinding=null,this._frameManager=e,this._frame=t,this._timeoutSettings=r,this._setContext(null),e._client.on("Runtime.bindingCalled",e=>this._onBindingCalled(e))}frame(){return this._frame}async _setContext(e){if(e){this._contextResolveCallback.call(null,e),this._contextResolveCallback=null,this._ctxBindings.clear();for(const e of this._boundFunctions.keys())await this.addBindingToContext(e);for(const e of this._waitTasks)e.rerun()}else this._documentPromise=null,this._contextPromise=new Promise(e=>{this._contextResolveCallback=e})}_hasContext(){return!this._contextResolveCallback}_detach(){this._detached=!0;for(const e of this._waitTasks)e.terminate(new Error("waitForFunction failed: frame got detached."))}executionContext(){if(this._detached)throw new Error(`Execution context is not available in detached frame "${this._frame.url()}" (are you trying to evaluate?)`);return this._contextPromise}async evaluateHandle(e,...t){const r=await this.executionContext();return r.evaluateHandle(e,...t)}async evaluate(e,...t){const r=await this.executionContext();return r.evaluate(e,...t)}async $(e){const t=await this._document(),r=await t.$(e);return r}async _document(){return this._documentPromise?this._documentPromise:(this._documentPromise=this.executionContext().then(async e=>{const t=await e.evaluateHandle("document");return t.asElement()}),this._documentPromise)}async $x(e){const t=await this._document(),r=await t.$x(e);return r}async $eval(e,t,...r){const n=await this._document();return n.$eval(e,t,...r)}async $$eval(e,t,...r){const n=await this._document(),a=await n.$$eval(e,t,...r);return a}async $$(e){const t=await this._document(),r=await t.$$(e);return r}async content(){return await this.evaluate(()=>{let e="";return document.doctype&&(e=new XMLSerializer().serializeToString(document.doctype)),document.documentElement&&(e+=document.documentElement.outerHTML),e})}async setContent(e,t={}){const{waitUntil:r=["load"],timeout:n=this._timeoutSettings.navigationTimeout()}=t;await this.evaluate(e=>{document.open(),document.write(e),document.close()},e);const a=new i.LifecycleWatcher(this._frameManager,this._frame,r,n),o=await Promise.race([a.timeoutOrTerminationPromise(),a.lifecyclePromise()]);if(a.dispose(),o)throw o}async addScriptTag(e){async function t(e,t){const r=document.createElement("script");r.src=e,t&&(r.type=t);const n=new Promise((e,t)=>{r.onload=e,r.onerror=t});return document.head.appendChild(r),await n,r}function r(e,t="text/javascript"){const r=document.createElement("script");r.type=t,r.text=e;let n=null;if(r.onerror=t=>n=t,document.head.appendChild(r),n)throw n;return r}const{url:n=null,path:a=null,content:i=null,type:s=""}=e;if(null!==n)try{const e=await this.executionContext();return(await e.evaluateHandle(t,n,s)).asElement()}catch(e){throw new Error(`Loading script from ${n} failed`)}if(null!==a){if(!d.isNode)throw new Error("Cannot pass a filepath to addScriptTag in the browser environment.");const e=await o.helper.importFSModule();let t=await e.promises.readFile(a,"utf8");t+="//# sourceURL="+a.replace(/\n/g,"");const n=await this.executionContext();return(await n.evaluateHandle(r,t,s)).asElement()}if(null!==i){const e=await this.executionContext();return(await e.evaluateHandle(r,i,s)).asElement()}throw new Error("Provide an object with a `url`, `path` or `content` property")}async addStyleTag(e){async function t(e){const t=document.createElement("link");t.rel="stylesheet",t.href=e;const r=new Promise((e,r)=>{t.onload=e,t.onerror=r});return document.head.appendChild(t),await r,t}async function r(e){const t=document.createElement("style");t.type="text/css",t.appendChild(document.createTextNode(e));const r=new Promise((e,r)=>{t.onload=e,t.onerror=r});return document.head.appendChild(t),await r,t}const{url:n=null,path:a=null,content:i=null}=e;if(null!==n)try{const e=await this.executionContext();return(await e.evaluateHandle(t,n)).asElement()}catch(e){throw new Error(`Loading style from ${n} failed`)}if(null!==a){if(!d.isNode)throw new Error("Cannot pass a filepath to addStyleTag in the browser environment.");const e=await o.helper.importFSModule();let t=await e.promises.readFile(a,"utf8");t+="/*# sourceURL="+a.replace(/\n/g,"")+"*/";const n=await this.executionContext();return(await n.evaluateHandle(r,t)).asElement()}if(null!==i){const e=await this.executionContext();return(await e.evaluateHandle(r,i)).asElement()}throw new Error("Provide an object with a `url`, `path` or `content` property")}async click(e,t){const r=await this.$(e);a.assert(r,"No node found for selector: "+e),await r.click(t),await r.dispose()}async focus(e){const t=await this.$(e);a.assert(t,"No node found for selector: "+e),await t.focus(),await t.dispose()}async hover(e){const t=await this.$(e);a.assert(t,"No node found for selector: "+e),await t.hover(),await t.dispose()}async select(e,...t){const r=await this.$(e);a.assert(r,"No node found for selector: "+e);const n=await r.select(...t);return await r.dispose(),n}async tap(e){const t=await this.$(e);await t.tap(),await t.dispose()}async type(e,t,r){const n=await this.$(e);a.assert(n,"No node found for selector: "+e),await n.type(t,r),await n.dispose()}async waitForSelector(e,t){const{updatedSelector:r,queryHandler:n}=l.getQueryHandlerAndSelector(e);return n.waitFor(this,r,t)}async addBindingToContext(e){if(this._ctxBindings.has(e))return;if(this._settingUpBinding)return await this._settingUpBinding,this.addBindingToContext(e);const t=async e=>{const r=o.helper.pageBindingInitString("internal",e);try{const t=await this.executionContext();await t._client.send("Runtime.addBinding",{name:e,executionContextId:t._contextId}),await t.evaluate(r)}catch(r){const n=r.message.includes("Execution context was destroyed"),a=r.message.includes("Cannot find context with specified id");if(n||a)await t(e);else return void o.debugError(r)}this._ctxBindings.add(e)};this._settingUpBinding=t(e),await this._settingUpBinding,this._settingUpBinding=null}async addBinding(e,t){this._boundFunctions.set(e,t),await this.addBindingToContext(e)}async _onBindingCalled(e){function t(e,t,r){globalThis[e].callbacks.get(t).resolve(r),globalThis[e].callbacks.delete(t)}let r;try{r=JSON.parse(e.payload)}catch{return}const{type:n,name:a,seq:i,args:s}=r;if("internal"===n&&this._ctxBindings.has(a)&&this._hasContext()){const r=await this.executionContext();if(r._contextId===e.executionContextId)try{const e=await this._boundFunctions.get(a)(...s);await r.evaluate(t,a,i,e)}catch(e){if(e.message.includes("Protocol error"))return;o.debugError(e)}}}async waitForSelectorInPage(e,t,r){const{visible:n=!1,hidden:a=!1,timeout:i=this._timeoutSettings.timeout()}=r,s=n||a?"raf":"mutation",l=`selector \`${t}\`${a?" to be hidden":""}`,d=new p(this,o.helper.makePredicateString(async function(e,t,r){const n=predicateQueryHandler?await predicateQueryHandler(document,e):document.querySelector(e);return checkWaitForOptions(n,t,r)},e),l,s,i,t,n,a),c=await d.promise,u=c.asElement();return u?u:(await c.dispose(),null)}async waitForXPath(e,t){const{visible:r=!1,hidden:n=!1,timeout:a=this._timeoutSettings.timeout()}=t,i=r||n?"raf":"mutation",s=`XPath \`${e}\`${n?" to be hidden":""}`,l=new p(this,o.helper.makePredicateString(function(e,t,r){const n=document.evaluate(e,document,null,XPathResult.FIRST_ORDERED_NODE_TYPE,null).singleNodeValue;return checkWaitForOptions(n,t,r)}),s,i,a,e,r,n),d=await l.promise,c=d.asElement();return c?c:(await d.dispose(),null)}waitForFunction(e,t={},...r){const{polling:n="raf",timeout:a=this._timeoutSettings.timeout()}=t;return new p(this,e,"function",n,a,...r).promise}async title(){return this.evaluate(()=>document.title)}};class p{constructor(e,t,r,n,i,...l){if(this._runCount=0,this._terminated=!1,o.helper.isString(n))a.assert("raf"===n||"mutation"===n,"Unknown polling option: "+n);else if(o.helper.isNumber(n))a.assert(0{this._resolve=e,this._reject=t}),i){const e=new s.TimeoutError(`waiting for ${r} failed: timeout ${i}ms exceeded`);this._timeoutTimer=setTimeout(()=>this.terminate(e),i)}this.rerun()}terminate(e){this._terminated=!0,this._reject(e),this._cleanup()}async rerun(){const e=++this._runCount;let t=null,r=null;try{t=await(await this._domWorld.executionContext()).evaluateHandle(n,this._predicateBody,this._polling,this._timeout,...this._args)}catch(e){r=e}if(this._terminated||e!==this._runCount)return void(t&&(await t.dispose()));if(!r&&(await this._domWorld.evaluate(e=>!e,t).catch(()=>!0)))return void(await t.dispose());if(r){if(r.message.includes("Execution context is not available in detached frame"))return void this.terminate(new Error("waitForFunction failed: frame got detached."));if(r.message.includes("Execution context was destroyed"))return;if(r.message.includes("Cannot find context with specified id"))return;this._reject(r)}else this._resolve(t);this._cleanup()}_cleanup(){clearTimeout(this._timeoutTimer),this._domWorld._waitTasks.delete(this)}}t.WaitTask=p},49259:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.debug=void 0;const n=r(23222);t.debug=e=>n.isNode?r(35304)(e):(...t)=>{const r=globalThis.__PUPPETEER_DEBUG;if(!r)return;const n="*"===r||(r.endsWith("*")?e.startsWith(r):e===r);n&&console.log(`${e}:`,...t)}},34906:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.devicesMap=void 0;const r=[{name:"Blackberry PlayBook",userAgent:"Mozilla/5.0 (PlayBook; U; RIM Tablet OS 2.1.0; en-US) AppleWebKit/536.2+ (KHTML like Gecko) Version/7.2.1.0 Safari/536.2+",viewport:{width:600,height:1024,deviceScaleFactor:1,isMobile:!0,hasTouch:!0,isLandscape:!1}},{name:"Blackberry PlayBook landscape",userAgent:"Mozilla/5.0 (PlayBook; U; RIM Tablet OS 2.1.0; en-US) AppleWebKit/536.2+ (KHTML like Gecko) Version/7.2.1.0 Safari/536.2+",viewport:{width:1024,height:600,deviceScaleFactor:1,isMobile:!0,hasTouch:!0,isLandscape:!0}},{name:"BlackBerry Z30",userAgent:"Mozilla/5.0 (BB10; Touch) AppleWebKit/537.10+ (KHTML, like Gecko) Version/10.0.9.2372 Mobile Safari/537.10+",viewport:{width:360,height:640,deviceScaleFactor:2,isMobile:!0,hasTouch:!0,isLandscape:!1}},{name:"BlackBerry Z30 landscape",userAgent:"Mozilla/5.0 (BB10; Touch) AppleWebKit/537.10+ (KHTML, like Gecko) Version/10.0.9.2372 Mobile Safari/537.10+",viewport:{width:640,height:360,deviceScaleFactor:2,isMobile:!0,hasTouch:!0,isLandscape:!0}},{name:"Galaxy Note 3",userAgent:"Mozilla/5.0 (Linux; U; Android 4.3; en-us; SM-N900T Build/JSS15J) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30",viewport:{width:360,height:640,deviceScaleFactor:3,isMobile:!0,hasTouch:!0,isLandscape:!1}},{name:"Galaxy Note 3 landscape",userAgent:"Mozilla/5.0 (Linux; U; Android 4.3; en-us; SM-N900T Build/JSS15J) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30",viewport:{width:640,height:360,deviceScaleFactor:3,isMobile:!0,hasTouch:!0,isLandscape:!0}},{name:"Galaxy Note II",userAgent:"Mozilla/5.0 (Linux; U; Android 4.1; en-us; GT-N7100 Build/JRO03C) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30",viewport:{width:360,height:640,deviceScaleFactor:2,isMobile:!0,hasTouch:!0,isLandscape:!1}},{name:"Galaxy Note II landscape",userAgent:"Mozilla/5.0 (Linux; U; Android 4.1; en-us; GT-N7100 Build/JRO03C) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30",viewport:{width:640,height:360,deviceScaleFactor:2,isMobile:!0,hasTouch:!0,isLandscape:!0}},{name:"Galaxy S III",userAgent:"Mozilla/5.0 (Linux; U; Android 4.0; en-us; GT-I9300 Build/IMM76D) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30",viewport:{width:360,height:640,deviceScaleFactor:2,isMobile:!0,hasTouch:!0,isLandscape:!1}},{name:"Galaxy S III landscape",userAgent:"Mozilla/5.0 (Linux; U; Android 4.0; en-us; GT-I9300 Build/IMM76D) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30",viewport:{width:640,height:360,deviceScaleFactor:2,isMobile:!0,hasTouch:!0,isLandscape:!0}},{name:"Galaxy S5",userAgent:"Mozilla/5.0 (Linux; Android 5.0; SM-G900P Build/LRX21T) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3765.0 Mobile Safari/537.36",viewport:{width:360,height:640,deviceScaleFactor:3,isMobile:!0,hasTouch:!0,isLandscape:!1}},{name:"Galaxy S5 landscape",userAgent:"Mozilla/5.0 (Linux; Android 5.0; SM-G900P Build/LRX21T) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3765.0 Mobile Safari/537.36",viewport:{width:640,height:360,deviceScaleFactor:3,isMobile:!0,hasTouch:!0,isLandscape:!0}},{name:"iPad",userAgent:"Mozilla/5.0 (iPad; CPU OS 11_0 like Mac OS X) AppleWebKit/604.1.34 (KHTML, like Gecko) Version/11.0 Mobile/15A5341f Safari/604.1",viewport:{width:768,height:1024,deviceScaleFactor:2,isMobile:!0,hasTouch:!0,isLandscape:!1}},{name:"iPad landscape",userAgent:"Mozilla/5.0 (iPad; CPU OS 11_0 like Mac OS X) AppleWebKit/604.1.34 (KHTML, like Gecko) Version/11.0 Mobile/15A5341f Safari/604.1",viewport:{width:1024,height:768,deviceScaleFactor:2,isMobile:!0,hasTouch:!0,isLandscape:!0}},{name:"iPad Mini",userAgent:"Mozilla/5.0 (iPad; CPU OS 11_0 like Mac OS X) AppleWebKit/604.1.34 (KHTML, like Gecko) Version/11.0 Mobile/15A5341f Safari/604.1",viewport:{width:768,height:1024,deviceScaleFactor:2,isMobile:!0,hasTouch:!0,isLandscape:!1}},{name:"iPad Mini landscape",userAgent:"Mozilla/5.0 (iPad; CPU OS 11_0 like Mac OS X) AppleWebKit/604.1.34 (KHTML, like Gecko) Version/11.0 Mobile/15A5341f Safari/604.1",viewport:{width:1024,height:768,deviceScaleFactor:2,isMobile:!0,hasTouch:!0,isLandscape:!0}},{name:"iPad Pro",userAgent:"Mozilla/5.0 (iPad; CPU OS 11_0 like Mac OS X) AppleWebKit/604.1.34 (KHTML, like Gecko) Version/11.0 Mobile/15A5341f Safari/604.1",viewport:{width:1024,height:1366,deviceScaleFactor:2,isMobile:!0,hasTouch:!0,isLandscape:!1}},{name:"iPad Pro landscape",userAgent:"Mozilla/5.0 (iPad; CPU OS 11_0 like Mac OS X) AppleWebKit/604.1.34 (KHTML, like Gecko) Version/11.0 Mobile/15A5341f Safari/604.1",viewport:{width:1366,height:1024,deviceScaleFactor:2,isMobile:!0,hasTouch:!0,isLandscape:!0}},{name:"iPhone 4",userAgent:"Mozilla/5.0 (iPhone; CPU iPhone OS 7_1_2 like Mac OS X) AppleWebKit/537.51.2 (KHTML, like Gecko) Version/7.0 Mobile/11D257 Safari/9537.53",viewport:{width:320,height:480,deviceScaleFactor:2,isMobile:!0,hasTouch:!0,isLandscape:!1}},{name:"iPhone 4 landscape",userAgent:"Mozilla/5.0 (iPhone; CPU iPhone OS 7_1_2 like Mac OS X) AppleWebKit/537.51.2 (KHTML, like Gecko) Version/7.0 Mobile/11D257 Safari/9537.53",viewport:{width:480,height:320,deviceScaleFactor:2,isMobile:!0,hasTouch:!0,isLandscape:!0}},{name:"iPhone 5",userAgent:"Mozilla/5.0 (iPhone; CPU iPhone OS 10_3_1 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/10.0 Mobile/14E304 Safari/602.1",viewport:{width:320,height:568,deviceScaleFactor:2,isMobile:!0,hasTouch:!0,isLandscape:!1}},{name:"iPhone 5 landscape",userAgent:"Mozilla/5.0 (iPhone; CPU iPhone OS 10_3_1 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/10.0 Mobile/14E304 Safari/602.1",viewport:{width:568,height:320,deviceScaleFactor:2,isMobile:!0,hasTouch:!0,isLandscape:!0}},{name:"iPhone 6",userAgent:"Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1",viewport:{width:375,height:667,deviceScaleFactor:2,isMobile:!0,hasTouch:!0,isLandscape:!1}},{name:"iPhone 6 landscape",userAgent:"Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1",viewport:{width:667,height:375,deviceScaleFactor:2,isMobile:!0,hasTouch:!0,isLandscape:!0}},{name:"iPhone 6 Plus",userAgent:"Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1",viewport:{width:414,height:736,deviceScaleFactor:3,isMobile:!0,hasTouch:!0,isLandscape:!1}},{name:"iPhone 6 Plus landscape",userAgent:"Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1",viewport:{width:736,height:414,deviceScaleFactor:3,isMobile:!0,hasTouch:!0,isLandscape:!0}},{name:"iPhone 7",userAgent:"Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1",viewport:{width:375,height:667,deviceScaleFactor:2,isMobile:!0,hasTouch:!0,isLandscape:!1}},{name:"iPhone 7 landscape",userAgent:"Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1",viewport:{width:667,height:375,deviceScaleFactor:2,isMobile:!0,hasTouch:!0,isLandscape:!0}},{name:"iPhone 7 Plus",userAgent:"Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1",viewport:{width:414,height:736,deviceScaleFactor:3,isMobile:!0,hasTouch:!0,isLandscape:!1}},{name:"iPhone 7 Plus landscape",userAgent:"Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1",viewport:{width:736,height:414,deviceScaleFactor:3,isMobile:!0,hasTouch:!0,isLandscape:!0}},{name:"iPhone 8",userAgent:"Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1",viewport:{width:375,height:667,deviceScaleFactor:2,isMobile:!0,hasTouch:!0,isLandscape:!1}},{name:"iPhone 8 landscape",userAgent:"Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1",viewport:{width:667,height:375,deviceScaleFactor:2,isMobile:!0,hasTouch:!0,isLandscape:!0}},{name:"iPhone 8 Plus",userAgent:"Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1",viewport:{width:414,height:736,deviceScaleFactor:3,isMobile:!0,hasTouch:!0,isLandscape:!1}},{name:"iPhone 8 Plus landscape",userAgent:"Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1",viewport:{width:736,height:414,deviceScaleFactor:3,isMobile:!0,hasTouch:!0,isLandscape:!0}},{name:"iPhone SE",userAgent:"Mozilla/5.0 (iPhone; CPU iPhone OS 10_3_1 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/10.0 Mobile/14E304 Safari/602.1",viewport:{width:320,height:568,deviceScaleFactor:2,isMobile:!0,hasTouch:!0,isLandscape:!1}},{name:"iPhone SE landscape",userAgent:"Mozilla/5.0 (iPhone; CPU iPhone OS 10_3_1 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/10.0 Mobile/14E304 Safari/602.1",viewport:{width:568,height:320,deviceScaleFactor:2,isMobile:!0,hasTouch:!0,isLandscape:!0}},{name:"iPhone X",userAgent:"Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1",viewport:{width:375,height:812,deviceScaleFactor:3,isMobile:!0,hasTouch:!0,isLandscape:!1}},{name:"iPhone X landscape",userAgent:"Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1",viewport:{width:812,height:375,deviceScaleFactor:3,isMobile:!0,hasTouch:!0,isLandscape:!0}},{name:"iPhone XR",userAgent:"Mozilla/5.0 (iPhone; CPU iPhone OS 12_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.0 Mobile/15E148 Safari/604.1",viewport:{width:414,height:896,deviceScaleFactor:3,isMobile:!0,hasTouch:!0,isLandscape:!1}},{name:"iPhone XR landscape",userAgent:"Mozilla/5.0 (iPhone; CPU iPhone OS 12_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.0 Mobile/15E148 Safari/604.1",viewport:{width:896,height:414,deviceScaleFactor:3,isMobile:!0,hasTouch:!0,isLandscape:!0}},{name:"JioPhone 2",userAgent:"Mozilla/5.0 (Mobile; LYF/F300B/LYF-F300B-001-01-15-130718-i;Android; rv:48.0) Gecko/48.0 Firefox/48.0 KAIOS/2.5",viewport:{width:240,height:320,deviceScaleFactor:1,isMobile:!0,hasTouch:!0,isLandscape:!1}},{name:"JioPhone 2 landscape",userAgent:"Mozilla/5.0 (Mobile; LYF/F300B/LYF-F300B-001-01-15-130718-i;Android; rv:48.0) Gecko/48.0 Firefox/48.0 KAIOS/2.5",viewport:{width:320,height:240,deviceScaleFactor:1,isMobile:!0,hasTouch:!0,isLandscape:!0}},{name:"Kindle Fire HDX",userAgent:"Mozilla/5.0 (Linux; U; en-us; KFAPWI Build/JDQ39) AppleWebKit/535.19 (KHTML, like Gecko) Silk/3.13 Safari/535.19 Silk-Accelerated=true",viewport:{width:800,height:1280,deviceScaleFactor:2,isMobile:!0,hasTouch:!0,isLandscape:!1}},{name:"Kindle Fire HDX landscape",userAgent:"Mozilla/5.0 (Linux; U; en-us; KFAPWI Build/JDQ39) AppleWebKit/535.19 (KHTML, like Gecko) Silk/3.13 Safari/535.19 Silk-Accelerated=true",viewport:{width:1280,height:800,deviceScaleFactor:2,isMobile:!0,hasTouch:!0,isLandscape:!0}},{name:"LG Optimus L70",userAgent:"Mozilla/5.0 (Linux; U; Android 4.4.2; en-us; LGMS323 Build/KOT49I.MS32310c) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/75.0.3765.0 Mobile Safari/537.36",viewport:{width:384,height:640,deviceScaleFactor:1.25,isMobile:!0,hasTouch:!0,isLandscape:!1}},{name:"LG Optimus L70 landscape",userAgent:"Mozilla/5.0 (Linux; U; Android 4.4.2; en-us; LGMS323 Build/KOT49I.MS32310c) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/75.0.3765.0 Mobile Safari/537.36",viewport:{width:640,height:384,deviceScaleFactor:1.25,isMobile:!0,hasTouch:!0,isLandscape:!0}},{name:"Microsoft Lumia 550",userAgent:"Mozilla/5.0 (Windows Phone 10.0; Android 4.2.1; Microsoft; Lumia 550) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2486.0 Mobile Safari/537.36 Edge/14.14263",viewport:{width:640,height:360,deviceScaleFactor:2,isMobile:!0,hasTouch:!0,isLandscape:!1}},{name:"Microsoft Lumia 950",userAgent:"Mozilla/5.0 (Windows Phone 10.0; Android 4.2.1; Microsoft; Lumia 950) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2486.0 Mobile Safari/537.36 Edge/14.14263",viewport:{width:360,height:640,deviceScaleFactor:4,isMobile:!0,hasTouch:!0,isLandscape:!1}},{name:"Microsoft Lumia 950 landscape",userAgent:"Mozilla/5.0 (Windows Phone 10.0; Android 4.2.1; Microsoft; Lumia 950) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2486.0 Mobile Safari/537.36 Edge/14.14263",viewport:{width:640,height:360,deviceScaleFactor:4,isMobile:!0,hasTouch:!0,isLandscape:!0}},{name:"Nexus 10",userAgent:"Mozilla/5.0 (Linux; Android 6.0.1; Nexus 10 Build/MOB31T) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3765.0 Safari/537.36",viewport:{width:800,height:1280,deviceScaleFactor:2,isMobile:!0,hasTouch:!0,isLandscape:!1}},{name:"Nexus 10 landscape",userAgent:"Mozilla/5.0 (Linux; Android 6.0.1; Nexus 10 Build/MOB31T) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3765.0 Safari/537.36",viewport:{width:1280,height:800,deviceScaleFactor:2,isMobile:!0,hasTouch:!0,isLandscape:!0}},{name:"Nexus 4",userAgent:"Mozilla/5.0 (Linux; Android 4.4.2; Nexus 4 Build/KOT49H) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3765.0 Mobile Safari/537.36",viewport:{width:384,height:640,deviceScaleFactor:2,isMobile:!0,hasTouch:!0,isLandscape:!1}},{name:"Nexus 4 landscape",userAgent:"Mozilla/5.0 (Linux; Android 4.4.2; Nexus 4 Build/KOT49H) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3765.0 Mobile Safari/537.36",viewport:{width:640,height:384,deviceScaleFactor:2,isMobile:!0,hasTouch:!0,isLandscape:!0}},{name:"Nexus 5",userAgent:"Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3765.0 Mobile Safari/537.36",viewport:{width:360,height:640,deviceScaleFactor:3,isMobile:!0,hasTouch:!0,isLandscape:!1}},{name:"Nexus 5 landscape",userAgent:"Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3765.0 Mobile Safari/537.36",viewport:{width:640,height:360,deviceScaleFactor:3,isMobile:!0,hasTouch:!0,isLandscape:!0}},{name:"Nexus 5X",userAgent:"Mozilla/5.0 (Linux; Android 8.0.0; Nexus 5X Build/OPR4.170623.006) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3765.0 Mobile Safari/537.36",viewport:{width:412,height:732,deviceScaleFactor:2.625,isMobile:!0,hasTouch:!0,isLandscape:!1}},{name:"Nexus 5X landscape",userAgent:"Mozilla/5.0 (Linux; Android 8.0.0; Nexus 5X Build/OPR4.170623.006) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3765.0 Mobile Safari/537.36",viewport:{width:732,height:412,deviceScaleFactor:2.625,isMobile:!0,hasTouch:!0,isLandscape:!0}},{name:"Nexus 6",userAgent:"Mozilla/5.0 (Linux; Android 7.1.1; Nexus 6 Build/N6F26U) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3765.0 Mobile Safari/537.36",viewport:{width:412,height:732,deviceScaleFactor:3.5,isMobile:!0,hasTouch:!0,isLandscape:!1}},{name:"Nexus 6 landscape",userAgent:"Mozilla/5.0 (Linux; Android 7.1.1; Nexus 6 Build/N6F26U) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3765.0 Mobile Safari/537.36",viewport:{width:732,height:412,deviceScaleFactor:3.5,isMobile:!0,hasTouch:!0,isLandscape:!0}},{name:"Nexus 6P",userAgent:"Mozilla/5.0 (Linux; Android 8.0.0; Nexus 6P Build/OPP3.170518.006) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3765.0 Mobile Safari/537.36",viewport:{width:412,height:732,deviceScaleFactor:3.5,isMobile:!0,hasTouch:!0,isLandscape:!1}},{name:"Nexus 6P landscape",userAgent:"Mozilla/5.0 (Linux; Android 8.0.0; Nexus 6P Build/OPP3.170518.006) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3765.0 Mobile Safari/537.36",viewport:{width:732,height:412,deviceScaleFactor:3.5,isMobile:!0,hasTouch:!0,isLandscape:!0}},{name:"Nexus 7",userAgent:"Mozilla/5.0 (Linux; Android 6.0.1; Nexus 7 Build/MOB30X) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3765.0 Safari/537.36",viewport:{width:600,height:960,deviceScaleFactor:2,isMobile:!0,hasTouch:!0,isLandscape:!1}},{name:"Nexus 7 landscape",userAgent:"Mozilla/5.0 (Linux; Android 6.0.1; Nexus 7 Build/MOB30X) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3765.0 Safari/537.36",viewport:{width:960,height:600,deviceScaleFactor:2,isMobile:!0,hasTouch:!0,isLandscape:!0}},{name:"Nokia Lumia 520",userAgent:"Mozilla/5.0 (compatible; MSIE 10.0; Windows Phone 8.0; Trident/6.0; IEMobile/10.0; ARM; Touch; NOKIA; Lumia 520)",viewport:{width:320,height:533,deviceScaleFactor:1.5,isMobile:!0,hasTouch:!0,isLandscape:!1}},{name:"Nokia Lumia 520 landscape",userAgent:"Mozilla/5.0 (compatible; MSIE 10.0; Windows Phone 8.0; Trident/6.0; IEMobile/10.0; ARM; Touch; NOKIA; Lumia 520)",viewport:{width:533,height:320,deviceScaleFactor:1.5,isMobile:!0,hasTouch:!0,isLandscape:!0}},{name:"Nokia N9",userAgent:"Mozilla/5.0 (MeeGo; NokiaN9) AppleWebKit/534.13 (KHTML, like Gecko) NokiaBrowser/8.5.0 Mobile Safari/534.13",viewport:{width:480,height:854,deviceScaleFactor:1,isMobile:!0,hasTouch:!0,isLandscape:!1}},{name:"Nokia N9 landscape",userAgent:"Mozilla/5.0 (MeeGo; NokiaN9) AppleWebKit/534.13 (KHTML, like Gecko) NokiaBrowser/8.5.0 Mobile Safari/534.13",viewport:{width:854,height:480,deviceScaleFactor:1,isMobile:!0,hasTouch:!0,isLandscape:!0}},{name:"Pixel 2",userAgent:"Mozilla/5.0 (Linux; Android 8.0; Pixel 2 Build/OPD3.170816.012) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3765.0 Mobile Safari/537.36",viewport:{width:411,height:731,deviceScaleFactor:2.625,isMobile:!0,hasTouch:!0,isLandscape:!1}},{name:"Pixel 2 landscape",userAgent:"Mozilla/5.0 (Linux; Android 8.0; Pixel 2 Build/OPD3.170816.012) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3765.0 Mobile Safari/537.36",viewport:{width:731,height:411,deviceScaleFactor:2.625,isMobile:!0,hasTouch:!0,isLandscape:!0}},{name:"Pixel 2 XL",userAgent:"Mozilla/5.0 (Linux; Android 8.0.0; Pixel 2 XL Build/OPD1.170816.004) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3765.0 Mobile Safari/537.36",viewport:{width:411,height:823,deviceScaleFactor:3.5,isMobile:!0,hasTouch:!0,isLandscape:!1}},{name:"Pixel 2 XL landscape",userAgent:"Mozilla/5.0 (Linux; Android 8.0.0; Pixel 2 XL Build/OPD1.170816.004) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3765.0 Mobile Safari/537.36",viewport:{width:823,height:411,deviceScaleFactor:3.5,isMobile:!0,hasTouch:!0,isLandscape:!0}}],n={};t.devicesMap=n;for(const a of r)n[a.name]=a},2915:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Dialog=void 0;const n=r(85668);t.Dialog=class e{constructor(e,t,r,n=""){this._handled=!1,this._client=e,this._type=t,this._message=r,this._defaultValue=n}type(){return this._type}message(){return this._message}defaultValue(){return this._defaultValue}async accept(e){n.assert(!this._handled,"Cannot accept dialog which is already handled!"),this._handled=!0,await this._client.send("Page.handleJavaScriptDialog",{accept:!0,promptText:e})}async dismiss(){n.assert(!this._handled,"Cannot dismiss dialog which is already handled!"),this._handled=!0,await this._client.send("Page.handleJavaScriptDialog",{accept:!1})}}},3449:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.EmulationManager=void 0;t.EmulationManager=class e{constructor(e){this._emulatingMobile=!1,this._hasTouch=!1,this._client=e}async emulateViewport(e){const t=e.isMobile||!1,r=e.width,n=e.height,a=e.deviceScaleFactor||1,o=e.isLandscape?{angle:90,type:"landscapePrimary"}:{angle:0,type:"portraitPrimary"},i=e.hasTouch||!1;await Promise.all([this._client.send("Emulation.setDeviceMetricsOverride",{mobile:t,width:r,height:n,deviceScaleFactor:a,screenOrientation:o}),this._client.send("Emulation.setTouchEmulationEnabled",{enabled:i})]);const s=this._emulatingMobile!==t||this._hasTouch!==i;return this._emulatingMobile=t,this._hasTouch=i,s}}},29554:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.puppeteerErrors=t.TimeoutError=void 0;class r extends Error{constructor(e){super(e),this.name=this.constructor.name,Error.captureStackTrace(this,this.constructor)}}class n extends r{}t.TimeoutError=n,t.puppeteerErrors={TimeoutError:n}},2680:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.EventEmitter=void 0;const a=n(r(78229));t.EventEmitter=class e{constructor(){this.eventsMap=new Map,this.emitter=a.default(this.eventsMap)}on(e,t){return this.emitter.on(e,t),this}off(e,t){return this.emitter.off(e,t),this}removeListener(e,t){return this.off(e,t),this}addListener(e,t){return this.on(e,t),this}emit(e,t){return this.emitter.emit(e,t),0{t(n),this.off(e,r)};return this.on(e,r)}listenerCount(e){return this.eventListenersCount(e)}removeAllListeners(e){return e?this.eventsMap.delete(e):this.eventsMap.clear(),this}eventListenersCount(e){return this.eventsMap.has(e)?this.eventsMap.get(e).length:0}}},59574:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ExecutionContext=t.EVALUATION_SCRIPT_URL=void 0;const n=r(85668),a=r(47674),o=r(79272);t.EVALUATION_SCRIPT_URL="__puppeteer_evaluation_script__";t.ExecutionContext=class e{constructor(e,t,r){this._client=e,this._world=r,this._contextId=t.id}frame(){return this._world?this._world.frame():null}async evaluate(e,...t){return await this._evaluateInternal(!0,e,...t)}async evaluateHandle(e,...t){return this._evaluateInternal(!1,e,...t)}async _evaluateInternal(e,r,...n){function i(e){if("bigint"==typeof e)return{unserializableValue:`${e.toString()}n`};if(Object.is(e,-0))return{unserializableValue:"-0"};if(Object.is(e,1/0))return{unserializableValue:"Infinity"};if(Object.is(e,-Infinity))return{unserializableValue:"-Infinity"};if(Object.is(e,NaN))return{unserializableValue:"NaN"};const t=e&&e instanceof o.JSHandle?e:null;if(t){if(t._context!==this)throw new Error("JSHandles can be evaluated only in the context they were created!");if(t._disposed)throw new Error("JSHandle is disposed!");return t._remoteObject.unserializableValue?{unserializableValue:t._remoteObject.unserializableValue}:t._remoteObject.objectId?{objectId:t._remoteObject.objectId}:{value:t._remoteObject.value}}return{value:e}}function s(e){if(e.message.includes("Object reference chain is too long"))return{result:{type:"undefined"}};if(e.message.includes("Object couldn't be returned by value"))return{result:{type:"undefined"}};if(e.message.endsWith("Cannot find context with specified id")||e.message.endsWith("Inspected target navigated or closed"))throw new Error("Execution context was destroyed, most likely because of a navigation.");throw e}const l=`//# sourceURL=${t.EVALUATION_SCRIPT_URL}`;if(a.helper.isString(r)){const t=this._contextId,n=r,i=/^[\040\t]*\/\/[@#] sourceURL=\s*(\S*?)\s*$/m.test(n)?n:n+"\n"+l,{exceptionDetails:d,result:p}=await this._client.send("Runtime.evaluate",{expression:i,contextId:t,returnByValue:e,awaitPromise:!0,userGesture:!0}).catch(s);if(d)throw new Error("Evaluation failed: "+a.helper.getExceptionMessage(d));return e?a.helper.valueFromRemoteObject(p):o.createJSHandle(this,p)}if("function"!=typeof r)throw new Error(`Expected to get |string| or |function| as the first argument, but got "${r}" instead.`);let d=r.toString();try{new Function("("+d+")")}catch(e){d=d.startsWith("async ")?"async function "+d.substring(6):"function "+d;try{new Function("("+d+")")}catch(e){throw new Error("Passed function is not well-serializable!")}}let p;try{p=this._client.send("Runtime.callFunctionOn",{functionDeclaration:d+"\n"+l+"\n",executionContextId:this._contextId,arguments:n.map(i.bind(this)),returnByValue:e,awaitPromise:!0,userGesture:!0})}catch(e){throw e instanceof TypeError&&e.message.startsWith("Converting circular structure to JSON")&&(e.message+=" Are you passing a nested JSHandle?"),e}const{exceptionDetails:c,result:u}=await p.catch(s);if(c)throw new Error("Evaluation failed: "+a.helper.getExceptionMessage(c));return e?a.helper.valueFromRemoteObject(u):o.createJSHandle(this,u)}async queryObjects(e){n.assert(!e._disposed,"Prototype JSHandle is disposed!"),n.assert(e._remoteObject.objectId,"Prototype JSHandle must not be referencing primitive value");const t=await this._client.send("Runtime.queryObjects",{prototypeObjectId:e._remoteObject.objectId});return o.createJSHandle(this,t.objects)}async _adoptBackendNodeId(e){const{object:t}=await this._client.send("DOM.resolveNode",{backendNodeId:e,executionContextId:this._contextId});return o.createJSHandle(this,t)}async _adoptElementHandle(e){n.assert(e.executionContext()!==this,"Cannot adopt handle that already belongs to this execution context"),n.assert(this._world,"Cannot adopt handle without DOMWorld");const t=await this._client.send("DOM.describeNode",{objectId:e._remoteObject.objectId});return this._adoptBackendNodeId(t.node.backendNodeId)}}},23254:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FileChooser=void 0;const n=r(85668);t.FileChooser=class e{constructor(e,t){this._handled=!1,this._element=e,this._multiple="selectSingle"!==t.mode}isMultiple(){return this._multiple}async accept(e){n.assert(!this._handled,"Cannot accept FileChooser which is already handled!"),this._handled=!0,await this._element.uploadFile(...e)}async cancel(){n.assert(!this._handled,"Cannot cancel FileChooser which is already handled!"),this._handled=!0}}},71886:(e,t,r)=>{"use strict";function n(e){i.assert(void 0===e.networkIdleTimeout,"ERROR: networkIdleTimeout option is no longer supported."),i.assert(void 0===e.networkIdleInflight,"ERROR: networkIdleInflight option is no longer supported."),i.assert("networkidle"!==e.waitUntil,"ERROR: \"networkidle\" option is no longer supported. Use \"networkidle2\" instead")}Object.defineProperty(t,"__esModule",{value:!0}),t.Frame=t.FrameManager=t.FrameManagerEmittedEvents=void 0;const a=r(49259),o=r(2680),i=r(85668),s=r(47674),l=r(59574),d=r(54954),p=r(5295),c=r(97966),u="__puppeteer_utility_world__";t.FrameManagerEmittedEvents={FrameAttached:Symbol("FrameManager.FrameAttached"),FrameNavigated:Symbol("FrameManager.FrameNavigated"),FrameDetached:Symbol("FrameManager.FrameDetached"),LifecycleEvent:Symbol("FrameManager.LifecycleEvent"),FrameNavigatedWithinDocument:Symbol("FrameManager.FrameNavigatedWithinDocument"),ExecutionContextCreated:Symbol("FrameManager.ExecutionContextCreated"),ExecutionContextDestroyed:Symbol("FrameManager.ExecutionContextDestroyed")};class m extends o.EventEmitter{constructor(e,t,r,n){super(),this._frames=new Map,this._contextIdToContext=new Map,this._isolatedWorlds=new Set,this._client=e,this._page=t,this._networkManager=new c.NetworkManager(e,r,this),this._timeoutSettings=n,this._client.on("Page.frameAttached",e=>this._onFrameAttached(e.frameId,e.parentFrameId)),this._client.on("Page.frameNavigated",e=>this._onFrameNavigated(e.frame)),this._client.on("Page.navigatedWithinDocument",e=>this._onFrameNavigatedWithinDocument(e.frameId,e.url)),this._client.on("Page.frameDetached",e=>this._onFrameDetached(e.frameId)),this._client.on("Page.frameStoppedLoading",e=>this._onFrameStoppedLoading(e.frameId)),this._client.on("Runtime.executionContextCreated",e=>this._onExecutionContextCreated(e.context)),this._client.on("Runtime.executionContextDestroyed",e=>this._onExecutionContextDestroyed(e.executionContextId)),this._client.on("Runtime.executionContextsCleared",()=>this._onExecutionContextsCleared()),this._client.on("Page.lifecycleEvent",e=>this._onLifecycleEvent(e)),this._client.on("Target.attachedToTarget",async e=>this._onFrameMoved(e))}async initialize(){const e=await Promise.all([this._client.send("Page.enable"),this._client.send("Page.getFrameTree")]),{frameTree:t}=e[1];this._handleFrameTree(t),await Promise.all([this._client.send("Page.setLifecycleEventsEnabled",{enabled:!0}),this._client.send("Runtime.enable").then(()=>this._ensureIsolatedWorld(u)),this._networkManager.initialize()])}networkManager(){return this._networkManager}async navigateFrame(e,t,r={}){async function a(e,t,r,n){try{const a=await e.send("Page.navigate",{url:t,referrer:r,frameId:n});return p=!!a.loaderId,a.errorText?new Error(`${a.errorText} at ${t}`):null}catch(e){return e}}n(r);const{referer:o=this._networkManager.extraHTTPHeaders().referer,waitUntil:i=["load"],timeout:s=this._timeoutSettings.navigationTimeout()}=r,l=new d.LifecycleWatcher(this,e,i,s);let p=!1,c=await Promise.race([a(this._client,t,o,e._id),l.timeoutOrTerminationPromise()]);if(c||(c=await Promise.race([l.timeoutOrTerminationPromise(),p?l.newDocumentNavigationPromise():l.sameDocumentNavigationPromise()])),l.dispose(),c)throw c;return l.navigationResponse()}async waitForFrameNavigation(e,t={}){n(t);const{waitUntil:r=["load"],timeout:a=this._timeoutSettings.navigationTimeout()}=t,o=new d.LifecycleWatcher(this,e,r,a),i=await Promise.race([o.timeoutOrTerminationPromise(),o.sameDocumentNavigationPromise(),o.newDocumentNavigationPromise()]);if(o.dispose(),i)throw i;return o.navigationResponse()}async _onFrameMoved(e){"iframe"!==e.targetInfo.type||a.debug("puppeteer:frame")(`The frame '${e.targetInfo.targetId}' moved to another session. `+`Out-of-process iframes (OOPIF) are not supported by Puppeteer yet. `+`https://github.com/puppeteer/puppeteer/issues/2548`)}_onLifecycleEvent(e){const r=this._frames.get(e.frameId);r&&(r._onLifecycleEvent(e.loaderId,e.name),this.emit(t.FrameManagerEmittedEvents.LifecycleEvent,r))}_onFrameStoppedLoading(e){const r=this._frames.get(e);r&&(r._onLoadingStopped(),this.emit(t.FrameManagerEmittedEvents.LifecycleEvent,r))}_handleFrameTree(e){if(e.frame.parentId&&this._onFrameAttached(e.frame.id,e.frame.parentId),this._onFrameNavigated(e.frame),!!e.childFrames)for(const t of e.childFrames)this._handleFrameTree(t)}page(){return this._page}mainFrame(){return this._mainFrame}frames(){return Array.from(this._frames.values())}frame(e){return this._frames.get(e)||null}_onFrameAttached(e,r){if(this._frames.has(e))return;i.assert(r);const n=this._frames.get(r),a=new g(this,n,e);this._frames.set(a._id,a),this.emit(t.FrameManagerEmittedEvents.FrameAttached,a)}_onFrameNavigated(e){const r=!e.parentId;let n=r?this._mainFrame:this._frames.get(e.id);if(i.assert(r||n,"We either navigate top level or have old version of the navigated frame"),n)for(const e of n.childFrames())this._removeFramesRecursively(e);r&&(n?(this._frames.delete(n._id),n._id=e.id):n=new g(this,null,e.id),this._frames.set(e.id,n),this._mainFrame=n),n._navigated(e),this.emit(t.FrameManagerEmittedEvents.FrameNavigated,n)}async _ensureIsolatedWorld(e){this._isolatedWorlds.has(e)||(this._isolatedWorlds.add(e),await this._client.send("Page.addScriptToEvaluateOnNewDocument",{source:`//# sourceURL=${l.EVALUATION_SCRIPT_URL}`,worldName:e}),await Promise.all(this.frames().map(t=>this._client.send("Page.createIsolatedWorld",{frameId:t._id,grantUniveralAccess:!0,worldName:e}).catch(s.debugError))))}_onFrameNavigatedWithinDocument(e,r){const n=this._frames.get(e);n&&(n._navigatedWithinDocument(r),this.emit(t.FrameManagerEmittedEvents.FrameNavigatedWithinDocument,n),this.emit(t.FrameManagerEmittedEvents.FrameNavigated,n))}_onFrameDetached(e){const t=this._frames.get(e);t&&this._removeFramesRecursively(t)}_onExecutionContextCreated(e){const t=e.auxData,r=t?t.frameId:null,n=this._frames.get(r)||null;let a=null;n&&(e.auxData&&!!e.auxData.isDefault?a=n._mainWorld:e.name===u&&!n._secondaryWorld._hasContext()&&(a=n._secondaryWorld)),e.auxData&&"isolated"===e.auxData.type&&this._isolatedWorlds.add(e.name);const o=new l.ExecutionContext(this._client,e,a);a&&a._setContext(o),this._contextIdToContext.set(e.id,o)}_onExecutionContextDestroyed(e){const t=this._contextIdToContext.get(e);t&&(this._contextIdToContext.delete(e),t._world&&t._world._setContext(null))}_onExecutionContextsCleared(){for(const e of this._contextIdToContext.values())e._world&&e._world._setContext(null);this._contextIdToContext.clear()}executionContextById(e){const t=this._contextIdToContext.get(e);return i.assert(t,"INTERNAL ERROR: missing context with id = "+e),t}_removeFramesRecursively(e){for(const t of e.childFrames())this._removeFramesRecursively(t);e._detach(),this._frames.delete(e._id),this.emit(t.FrameManagerEmittedEvents.FrameDetached,e)}}t.FrameManager=m;class g{constructor(e,t,r){this._url="",this._detached=!1,this._loaderId="",this._lifecycleEvents=new Set,this._frameManager=e,this._parentFrame=t,this._url="",this._id=r,this._detached=!1,this._loaderId="",this._mainWorld=new p.DOMWorld(e,this,e._timeoutSettings),this._secondaryWorld=new p.DOMWorld(e,this,e._timeoutSettings),this._childFrames=new Set,this._parentFrame&&this._parentFrame._childFrames.add(this)}async goto(e,t={}){return await this._frameManager.navigateFrame(this,e,t)}async waitForNavigation(e={}){return await this._frameManager.waitForFrameNavigation(this,e)}executionContext(){return this._mainWorld.executionContext()}async evaluateHandle(e,...t){return this._mainWorld.evaluateHandle(e,...t)}async evaluate(e,...t){return this._mainWorld.evaluate(e,...t)}async $(e){return this._mainWorld.$(e)}async $x(e){return this._mainWorld.$x(e)}async $eval(e,t,...r){return this._mainWorld.$eval(e,t,...r)}async $$eval(e,t,...r){return this._mainWorld.$$eval(e,t,...r)}async $$(e){return this._mainWorld.$$(e)}async content(){return this._secondaryWorld.content()}async setContent(e,t={}){return this._secondaryWorld.setContent(e,t)}name(){return this._name||""}url(){return this._url}parentFrame(){return this._parentFrame}childFrames(){return Array.from(this._childFrames)}isDetached(){return this._detached}async addScriptTag(e){return this._mainWorld.addScriptTag(e)}async addStyleTag(e){return this._mainWorld.addStyleTag(e)}async click(e,t={}){return this._secondaryWorld.click(e,t)}async focus(e){return this._secondaryWorld.focus(e)}async hover(e){return this._secondaryWorld.hover(e)}select(e,...t){return this._secondaryWorld.select(e,...t)}async tap(e){return this._secondaryWorld.tap(e)}async type(e,t,r){return this._mainWorld.type(e,t,r)}waitFor(e,t={},...r){if(console.warn("waitFor is deprecated and will be removed in a future release. See https://github.com/puppeteer/puppeteer/issues/6214 for details and how to migrate your code."),s.helper.isString(e)){const r=e;return r.startsWith("//")?this.waitForXPath(r,t):this.waitForSelector(r,t)}return s.helper.isNumber(e)?new Promise(t=>setTimeout(t,e)):"function"==typeof e?this.waitForFunction(e,t,...r):Promise.reject(new Error("Unsupported target type: "+typeof e))}waitForTimeout(e){return new Promise(t=>{setTimeout(t,e)})}async waitForSelector(e,t={}){const r=await this._secondaryWorld.waitForSelector(e,t);if(!r)return null;const n=await this._mainWorld.executionContext(),a=await n._adoptElementHandle(r);return await r.dispose(),a}async waitForXPath(e,t={}){const r=await this._secondaryWorld.waitForXPath(e,t);if(!r)return null;const n=await this._mainWorld.executionContext(),a=await n._adoptElementHandle(r);return await r.dispose(),a}waitForFunction(e,t={},...r){return this._mainWorld.waitForFunction(e,t,...r)}async title(){return this._secondaryWorld.title()}_navigated(e){this._name=e.name,this._url=`${e.url}${e.urlFragment||""}`}_navigatedWithinDocument(e){this._url=e}_onLifecycleEvent(e,t){"init"===t&&(this._loaderId=e,this._lifecycleEvents.clear()),this._lifecycleEvents.add(t)}_onLoadingStopped(){this._lifecycleEvents.add("DOMContentLoaded"),this._lifecycleEvents.add("load")}_detach(){this._detached=!0,this._mainWorld._detach(),this._secondaryWorld._detach(),this._parentFrame&&this._parentFrame._childFrames.delete(this),this._parentFrame=null}}t.Frame=g},68610:(e,t,r)=>{"use strict";function n(e){const t=[];for(const r in e)Object.is(e[r],void 0)||t.push({name:r,value:e[r]+""});return t}Object.defineProperty(t,"__esModule",{value:!0}),t.HTTPRequest=void 0;const a=r(85668),o=r(47674);t.HTTPRequest=class e{constructor(e,t,r,n,a,o){this._failureText=null,this._response=null,this._fromMemoryCache=!1,this._interceptionHandled=!1,this._headers={},this._client=e,this._requestId=a.requestId,this._isNavigationRequest=a.requestId===a.loaderId&&"Document"===a.type,this._interceptionId=r,this._allowInterception=n,this._url=a.request.url,this._resourceType=a.type.toLowerCase(),this._method=a.request.method,this._postData=a.request.postData,this._frame=t,this._redirectChain=o;for(const i of Object.keys(a.request.headers))this._headers[i.toLowerCase()]=a.request.headers[i]}url(){return this._url}resourceType(){return this._resourceType}method(){return this._method}postData(){return this._postData}headers(){return this._headers}response(){return this._response}frame(){return this._frame}isNavigationRequest(){return this._isNavigationRequest}redirectChain(){return this._redirectChain.slice()}failure(){return this._failureText?{errorText:this._failureText}:null}async continue(e={}){if(!this._url.startsWith("data:")){a.assert(this._allowInterception,"Request Interception is not enabled!"),a.assert(!this._interceptionHandled,"Request is already handled!");const{url:t,method:r,postData:i,headers:s}=e;this._interceptionHandled=!0;const l=i?Buffer.from(i).toString("base64"):void 0;await this._client.send("Fetch.continueRequest",{requestId:this._interceptionId,url:t,method:r,postData:l,headers:s?n(s):void 0}).catch(e=>{o.debugError(e)})}}async respond(e){if(this._url.startsWith("data:"))return;a.assert(this._allowInterception,"Request Interception is not enabled!"),a.assert(!this._interceptionHandled,"Request is already handled!"),this._interceptionHandled=!0;const t=e.body&&o.helper.isString(e.body)?Buffer.from(e.body):e.body||null,r={};if(e.headers)for(const t of Object.keys(e.headers))r[t.toLowerCase()]=e.headers[t];e.contentType&&(r["content-type"]=e.contentType),t&&!("content-length"in r)&&(r["content-length"]=Buffer.byteLength(t)+""),await this._client.send("Fetch.fulfillRequest",{requestId:this._interceptionId,responseCode:e.status||200,responsePhrase:s[e.status||200],responseHeaders:n(r),body:t?t.toString("base64"):void 0}).catch(e=>{o.debugError(e)})}async abort(e="failed"){if(!this._url.startsWith("data:")){const t=i[e];a.assert(t,"Unknown error code: "+e),a.assert(this._allowInterception,"Request Interception is not enabled!"),a.assert(!this._interceptionHandled,"Request is already handled!"),this._interceptionHandled=!0,await this._client.send("Fetch.failRequest",{requestId:this._interceptionId,errorReason:t}).catch(e=>{o.debugError(e)})}}};const i={aborted:"Aborted",accessdenied:"AccessDenied",addressunreachable:"AddressUnreachable",blockedbyclient:"BlockedByClient",blockedbyresponse:"BlockedByResponse",connectionaborted:"ConnectionAborted",connectionclosed:"ConnectionClosed",connectionfailed:"ConnectionFailed",connectionrefused:"ConnectionRefused",connectionreset:"ConnectionReset",internetdisconnected:"InternetDisconnected",namenotresolved:"NameNotResolved",timedout:"TimedOut",failed:"Failed"},s={100:"Continue",101:"Switching Protocols",102:"Processing",103:"Early Hints",200:"OK",201:"Created",202:"Accepted",203:"Non-Authoritative Information",204:"No Content",205:"Reset Content",206:"Partial Content",207:"Multi-Status",208:"Already Reported",226:"IM Used",300:"Multiple Choices",301:"Moved Permanently",302:"Found",303:"See Other",304:"Not Modified",305:"Use Proxy",306:"Switch Proxy",307:"Temporary Redirect",308:"Permanent Redirect",400:"Bad Request",401:"Unauthorized",402:"Payment Required",403:"Forbidden",404:"Not Found",405:"Method Not Allowed",406:"Not Acceptable",407:"Proxy Authentication Required",408:"Request Timeout",409:"Conflict",410:"Gone",411:"Length Required",412:"Precondition Failed",413:"Payload Too Large",414:"URI Too Long",415:"Unsupported Media Type",416:"Range Not Satisfiable",417:"Expectation Failed",418:"I'm a teapot",421:"Misdirected Request",422:"Unprocessable Entity",423:"Locked",424:"Failed Dependency",425:"Too Early",426:"Upgrade Required",428:"Precondition Required",429:"Too Many Requests",431:"Request Header Fields Too Large",451:"Unavailable For Legal Reasons",500:"Internal Server Error",501:"Not Implemented",502:"Bad Gateway",503:"Service Unavailable",504:"Gateway Timeout",505:"HTTP Version Not Supported",506:"Variant Also Negotiates",507:"Insufficient Storage",508:"Loop Detected",510:"Not Extended",511:"Network Authentication Required"}},59206:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.HTTPResponse=void 0;const n=r(55468);t.HTTPResponse=class e{constructor(e,t,r){this._contentPromise=null,this._headers={},this._client=e,this._request=t,this._bodyLoadedPromise=new Promise(e=>{this._bodyLoadedPromiseFulfill=e}),this._remoteAddress={ip:r.remoteIPAddress,port:r.remotePort},this._status=r.status,this._statusText=r.statusText,this._url=t.url(),this._fromDiskCache=!!r.fromDiskCache,this._fromServiceWorker=!!r.fromServiceWorker;for(const n of Object.keys(r.headers))this._headers[n.toLowerCase()]=r.headers[n];this._securityDetails=r.securityDetails?new n.SecurityDetails(r.securityDetails):null}_resolveBody(e){return this._bodyLoadedPromiseFulfill(e)}remoteAddress(){return this._remoteAddress}url(){return this._url}ok(){return 0===this._status||200<=this._status&&299>=this._status}status(){return this._status}statusText(){return this._statusText}headers(){return this._headers}securityDetails(){return this._securityDetails}buffer(){return this._contentPromise||(this._contentPromise=this._bodyLoadedPromise.then(async e=>{if(e)throw e;const t=await this._client.send("Network.getResponseBody",{requestId:this._request._requestId});return Buffer.from(t.body,t.base64Encoded?"base64":"utf8")})),this._contentPromise}async text(){const e=await this.buffer();return e.toString("utf8")}async json(){const e=await this.text();return JSON.parse(e)}request(){return this._request}fromCache(){return this._fromDiskCache||this._request._fromMemoryCache}fromServiceWorker(){return this._fromServiceWorker}frame(){return this._request.frame()}}},80771:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Touchscreen=t.Mouse=t.Keyboard=void 0;const n=r(85668),a=r(85654);t.Keyboard=class e{constructor(e){this._modifiers=0,this._pressedKeys=new Set,this._client=e}async down(e,t={text:void 0}){const r=this._keyDescriptionForString(e),n=this._pressedKeys.has(r.code);this._pressedKeys.add(r.code),this._modifiers|=this._modifierBit(r.key);const a=void 0===t.text?r.text:t.text;await this._client.send("Input.dispatchKeyEvent",{type:a?"keyDown":"rawKeyDown",modifiers:this._modifiers,windowsVirtualKeyCode:r.keyCode,code:r.code,key:r.key,text:a,unmodifiedText:a,autoRepeat:n,location:r.location,isKeypad:3===r.location})}_modifierBit(e){return"Alt"===e?1:"Control"===e?2:"Meta"===e?4:"Shift"===e?8:0}_keyDescriptionForString(e){const t=8&this._modifiers,r={key:"",keyCode:0,code:"",text:"",location:0},o=a.keyDefinitions[e];return n.assert(o,`Unknown key: "${e}"`),o.key&&(r.key=o.key),t&&o.shiftKey&&(r.key=o.shiftKey),o.keyCode&&(r.keyCode=o.keyCode),t&&o.shiftKeyCode&&(r.keyCode=o.shiftKeyCode),o.code&&(r.code=o.code),o.location&&(r.location=o.location),1===r.key.length&&(r.text=r.key),o.text&&(r.text=o.text),t&&o.shiftText&&(r.text=o.shiftText),-9&this._modifiers&&(r.text=""),r}async up(e){const t=this._keyDescriptionForString(e);this._modifiers&=~this._modifierBit(t.key),this._pressedKeys.delete(t.code),await this._client.send("Input.dispatchKeyEvent",{type:"keyUp",modifiers:this._modifiers,key:t.key,windowsVirtualKeyCode:t.keyCode,code:t.code,location:t.location})}async sendCharacter(e){await this._client.send("Input.insertText",{text:e})}charIsKey(e){return!!a.keyDefinitions[e]}async type(e,t={}){const r=t.delay||null;for(const n of e)this.charIsKey(n)?await this.press(n,{delay:r}):(r&&(await new Promise(e=>setTimeout(e,r))),await this.sendCharacter(n))}async press(e,t={}){const{delay:r=null}=t;await this.down(e,t),r&&(await new Promise(e=>setTimeout(e,t.delay))),await this.up(e)}};t.Mouse=class e{constructor(e,t){this._x=0,this._y=0,this._button="none",this._client=e,this._keyboard=t}async move(e,t,r={}){const{steps:n=1}=r,a=this._x,o=this._y;this._x=e,this._y=t;for(let s=1;s<=n;s++)await this._client.send("Input.dispatchMouseEvent",{type:"mouseMoved",button:this._button,x:a+(this._x-a)*(s/n),y:o+(this._y-o)*(s/n),modifiers:this._keyboard._modifiers})}async click(e,t,r={}){const{delay:n=null}=r;null===n?await Promise.all([this.move(e,t),this.down(r),this.up(r)]):(await Promise.all([this.move(e,t),this.down(r)]),await new Promise(e=>setTimeout(e,n)),await this.up(r))}async down(e={}){const{button:t="left",clickCount:r=1}=e;this._button=t,await this._client.send("Input.dispatchMouseEvent",{type:"mousePressed",button:t,x:this._x,y:this._y,modifiers:this._keyboard._modifiers,clickCount:r})}async up(e={}){const{button:t="left",clickCount:r=1}=e;this._button="none",await this._client.send("Input.dispatchMouseEvent",{type:"mouseReleased",button:t,x:this._x,y:this._y,modifiers:this._keyboard._modifiers,clickCount:r})}async wheel(e={}){const{deltaX:t=0,deltaY:r=0}=e;await this._client.send("Input.dispatchMouseEvent",{type:"mouseWheel",x:this._x,y:this._y,deltaX:t,deltaY:r,modifiers:this._keyboard._modifiers,pointerType:"mouse"})}};t.Touchscreen=class e{constructor(e,t){this._client=e,this._keyboard=t}async tap(e,t){await this._client.send("Runtime.evaluate",{expression:"new Promise(x => requestAnimationFrame(() => requestAnimationFrame(x)))",awaitPromise:!0});const r=[{x:_Mathround(e),y:_Mathround(t)}];await this._client.send("Input.dispatchTouchEvent",{type:"touchStart",touchPoints:r,modifiers:this._keyboard._modifiers}),await this._client.send("Input.dispatchTouchEvent",{type:"touchEnd",touchPoints:[],modifiers:this._keyboard._modifiers})}}},79272:function(e,t,r){"use strict";function n(e,t){const r=e.frame();if("node"===t.subtype&&r){const n=r._frameManager;return new m(e,e._client,t,n.page(),n)}return new u(e,e._client,t)}function a(e){let t=0;for(let r=0;r{const r={__proto__:null};return r[t]=e[t],r},e),r=await t.getProperties(),n=r.get(e)||null;return await t.dispose(),n}async getProperties(){const e=await this._client.send("Runtime.getProperties",{objectId:this._remoteObject.objectId,ownProperties:!0}),t=new Map;for(const r of e.result)r.enumerable&&t.set(r.name,n(this._context,r.value));return t}async jsonValue(){if(this._remoteObject.objectId){const e=await this._client.send("Runtime.callFunctionOn",{functionDeclaration:"function() { return this; }",objectId:this._remoteObject.objectId,returnByValue:!0,awaitPromise:!0});return d.helper.valueFromRemoteObject(e.result)}return d.helper.valueFromRemoteObject(this._remoteObject)}asElement(){return null}async dispose(){this._disposed||(this._disposed=!0,await d.helper.releaseObject(this._client,this._remoteObject))}toString(){if(this._remoteObject.objectId){const e=this._remoteObject.subtype||this._remoteObject.type;return"JSHandle@"+e}return"JSHandle:"+d.helper.valueFromRemoteObject(this._remoteObject)}}t.JSHandle=u;class m extends u{constructor(e,t,r,n,a){super(e,t,r),this._client=t,this._remoteObject=r,this._page=n,this._frameManager=a}asElement(){return this}async contentFrame(){const e=await this._client.send("DOM.describeNode",{objectId:this._remoteObject.objectId});return"string"==typeof e.node.frameId?this._frameManager.frame(e.node.frameId):null}async _scrollIntoViewIfNeeded(){const e=await this.evaluate(async(e,t)=>{if(!e.isConnected)return"Node is detached from document";if(e.nodeType!==Node.ELEMENT_NODE)return"Node is not of type HTMLElement";if(!t)return e.scrollIntoView({block:"center",inline:"center",behavior:"instant"}),!1;const r=await new Promise(t=>{const r=new IntersectionObserver(e=>{t(e[0].intersectionRatio),r.disconnect()});r.observe(e)});return 1!==r&&e.scrollIntoView({block:"center",inline:"center",behavior:"instant"}),!1},this._page.isJavaScriptEnabled());if(e)throw new Error(e)}async _clickablePoint(){const[e,t]=await Promise.all([this._client.send("DOM.getContentQuads",{objectId:this._remoteObject.objectId}).catch(d.debugError),this._client.send("Page.getLayoutMetrics")]);if(!e||!e.quads.length)throw new Error("Node is either not visible or not an HTMLElement");const{clientWidth:r,clientHeight:n}=t.layoutViewport,o=e.quads.map(e=>this._fromProtocolQuad(e)).map(e=>this._intersectQuadWithViewport(e,r,n)).filter(e=>1d.debugError(e))}_fromProtocolQuad(e){return[{x:e[0],y:e[1]},{x:e[2],y:e[3]},{x:e[4],y:e[5]},{x:e[6],y:e[7]}]}_intersectQuadWithViewport(e,t,r){return e.map(e=>({x:_Mathmin(_Mathmax(e.x,0),t),y:_Mathmin(_Mathmax(e.y,0),r)}))}async hover(){await this._scrollIntoViewIfNeeded();const{x:e,y:t}=await this._clickablePoint();await this._page.mouse.move(e,t)}async click(e={}){await this._scrollIntoViewIfNeeded();const{x:t,y:r}=await this._clickablePoint();await this._page.mouse.click(t,r,e)}async select(...e){for(const t of e)l.assert(d.helper.isString(t),"Values must be strings. Found value \""+t+"\" of type \""+typeof t+"\"");return this.evaluate((e,t)=>{if("select"!==e.nodeName.toLowerCase())throw new Error("Element is not a "),!c.isNode)throw new Error(`JSHandle#uploadFile can only be used in Node environments.`);const n=await Promise.resolve().then(()=>s(r(85622))),a=await d.helper.importFSModule(),o=await Promise.all(e.map(async e=>{const t=n.resolve(e);try{await a.promises.access(t,a.constants.R_OK)}catch(t){if("ENOENT"===t.code)throw new Error(`${e} does not exist or is not readable`)}return t})),{objectId:i}=this._remoteObject,{node:p}=await this._client.send("DOM.describeNode",{objectId:i}),{backendNodeId:u}=p;0===o.length?await this.evaluate(e=>{e.files=new DataTransfer().files,e.dispatchEvent(new Event("input",{bubbles:!0})),e.dispatchEvent(new Event("change",{bubbles:!0}))}):await this._client.send("DOM.setFileInputFiles",{objectId:i,files:o,backendNodeId:u})}async tap(){await this._scrollIntoViewIfNeeded();const{x:e,y:t}=await this._clickablePoint();await this._page.touchscreen.tap(e,t)}async focus(){await this.evaluate(e=>e.focus())}async type(e,t){await this.focus(),await this._page.keyboard.type(e,t)}async press(e,t){await this.focus(),await this._page.keyboard.press(e,t)}async boundingBox(){const e=await this._getBoxModel();if(!e)return null;const t=e.model.border,r=_Mathmin(t[0],t[2],t[4],t[6]),n=_Mathmin(t[1],t[3],t[5],t[7]),a=_Mathmax(t[0],t[2],t[4],t[6])-r,o=_Mathmax(t[1],t[3],t[5],t[7])-n;return{x:r,y:n,width:a,height:o}}async boxModel(){const e=await this._getBoxModel();if(!e)return null;const{content:t,padding:r,border:n,margin:a,width:o,height:i}=e.model;return{content:this._fromProtocolQuad(t),padding:this._fromProtocolQuad(r),border:this._fromProtocolQuad(n),margin:this._fromProtocolQuad(a),width:o,height:i}}async screenshot(e={}){let t=!1,r=await this.boundingBox();l.assert(r,"Node is either not visible or not an HTMLElement");const n=this._page.viewport();if(n&&(r.width>n.width||r.height>n.height)){const e={width:_Mathmax(n.width,_Mathceil(r.width)),height:_Mathmax(n.height,_Mathceil(r.height))};await this._page.setViewport(Object.assign({},n,e)),t=!0}await this._scrollIntoViewIfNeeded(),r=await this.boundingBox(),l.assert(r,"Node is either not visible or not an HTMLElement"),l.assert(0!==r.width,"Node has 0 width."),l.assert(0!==r.height,"Node has 0 height.");const{layoutViewport:{pageX:a,pageY:o}}=await this._client.send("Page.getLayoutMetrics"),i=Object.assign({},r);i.x+=a,i.y+=o;const s=await this._page.screenshot(Object.assign({},{clip:i},e));return t&&(await this._page.setViewport(n)),s}async $(e){const{updatedSelector:t,queryHandler:r}=p.getQueryHandlerAndSelector(e);return r.queryOne(this,t)}async $$(e){const{updatedSelector:t,queryHandler:r}=p.getQueryHandlerAndSelector(e);return r.queryAll(this,t)}async $eval(e,t,...r){const n=await this.$(e);if(!n)throw new Error(`Error: failed to find element matching selector "${e}"`);const a=await n.evaluate(t,...r);return await n.dispose(),a}async $$eval(e,t,...r){const{updatedSelector:n,queryHandler:a}=p.getQueryHandlerAndSelector(e),o=await a.queryAllArray(this,n),i=await o.evaluate(t,...r);return await o.dispose(),i}async $x(e){const t=await this.evaluateHandle((e,t)=>{const r=e.ownerDocument||e,n=r.evaluate(t,e,null,XPathResult.ORDERED_NODE_ITERATOR_TYPE),a=[];for(let r;r=n.iterateNext();)a.push(r);return a},e),r=await t.getProperties();await t.dispose();const n=[];for(const t of r.values()){const e=t.asElement();e&&n.push(e)}return n}async isIntersectingViewport(){return await this.evaluate(async e=>{const t=await new Promise(t=>{const r=new IntersectionObserver(e=>{t(e[0].intersectionRatio),r.disconnect()});r.observe(e)});return 0{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LifecycleWatcher=void 0;const n=r(85668),a=r(47674),o=r(29554),i=r(71886),s=r(97966),l=r(58602),d=new Map([["load","load"],["domcontentloaded","DOMContentLoaded"],["networkidle0","networkIdle"],["networkidle2","networkAlmostIdle"]]);t.LifecycleWatcher=class e{constructor(e,t,r,o){Array.isArray(r)?r=r.slice():"string"==typeof r&&(r=[r]),this._expectedLifecycle=r.map(e=>{const t=d.get(e);return n.assert(t,"Unknown value for options.waitUntil: "+e),t}),this._frameManager=e,this._frame=t,this._initialLoaderId=t._loaderId,this._timeout=o,this._navigationRequest=null,this._eventListeners=[a.helper.addEventListener(e._client,l.CDPSessionEmittedEvents.Disconnected,()=>this._terminate(new Error("Navigation failed because browser has disconnected!"))),a.helper.addEventListener(this._frameManager,i.FrameManagerEmittedEvents.LifecycleEvent,this._checkLifecycleComplete.bind(this)),a.helper.addEventListener(this._frameManager,i.FrameManagerEmittedEvents.FrameNavigatedWithinDocument,this._navigatedWithinDocument.bind(this)),a.helper.addEventListener(this._frameManager,i.FrameManagerEmittedEvents.FrameDetached,this._onFrameDetached.bind(this)),a.helper.addEventListener(this._frameManager.networkManager(),s.NetworkManagerEmittedEvents.Request,this._onRequest.bind(this))],this._sameDocumentNavigationPromise=new Promise(e=>{this._sameDocumentNavigationCompleteCallback=e}),this._lifecyclePromise=new Promise(e=>{this._lifecycleCallback=e}),this._newDocumentNavigationPromise=new Promise(e=>{this._newDocumentNavigationCompleteCallback=e}),this._timeoutPromise=this._createTimeoutPromise(),this._terminationPromise=new Promise(e=>{this._terminationCallback=e}),this._checkLifecycleComplete()}_onRequest(e){e.frame()===this._frame&&e.isNavigationRequest()&&(this._navigationRequest=e)}_onFrameDetached(e){return this._frame===e?void this._terminationCallback.call(null,new Error("Navigating frame was detached")):void this._checkLifecycleComplete()}navigationResponse(){return this._navigationRequest?this._navigationRequest.response():null}_terminate(e){this._terminationCallback.call(null,e)}sameDocumentNavigationPromise(){return this._sameDocumentNavigationPromise}newDocumentNavigationPromise(){return this._newDocumentNavigationPromise}lifecyclePromise(){return this._lifecyclePromise}timeoutOrTerminationPromise(){return Promise.race([this._timeoutPromise,this._terminationPromise])}_createTimeoutPromise(){if(!this._timeout)return new Promise(()=>{});const e="Navigation timeout of "+this._timeout+" ms exceeded";return new Promise(e=>this._maximumTimer=setTimeout(e,this._timeout)).then(()=>new o.TimeoutError(e))}_navigatedWithinDocument(e){e!==this._frame||(this._hasSameDocumentNavigation=!0,this._checkLifecycleComplete())}_checkLifecycleComplete(){function e(t,r){for(const e of r)if(!t._lifecycleEvents.has(e))return!1;for(const n of t.childFrames())if(!e(n,r))return!1;return!0}e(this._frame,this._expectedLifecycle)&&(this._lifecycleCallback(),(this._frame._loaderId!==this._initialLoaderId||this._hasSameDocumentNavigation)&&(this._hasSameDocumentNavigation&&this._sameDocumentNavigationCompleteCallback(),this._frame._loaderId!==this._initialLoaderId&&this._newDocumentNavigationCompleteCallback()))}dispose(){a.helper.removeEventListeners(this._eventListeners),clearTimeout(this._maximumTimer)}}},97966:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NetworkManager=t.NetworkManagerEmittedEvents=void 0;const n=r(2680),a=r(85668),o=r(47674),i=r(68610),s=r(59206);t.NetworkManagerEmittedEvents={Request:Symbol("NetworkManager.Request"),Response:Symbol("NetworkManager.Response"),RequestFailed:Symbol("NetworkManager.RequestFailed"),RequestFinished:Symbol("NetworkManager.RequestFinished")};class l extends n.EventEmitter{constructor(e,t,r){super(),this._requestIdToRequest=new Map,this._requestIdToRequestWillBeSentEvent=new Map,this._extraHTTPHeaders={},this._offline=!1,this._credentials=null,this._attemptedAuthentications=new Set,this._userRequestInterceptionEnabled=!1,this._protocolRequestInterceptionEnabled=!1,this._userCacheDisabled=!1,this._requestIdToInterceptionId=new Map,this._client=e,this._ignoreHTTPSErrors=t,this._frameManager=r,this._client.on("Fetch.requestPaused",this._onRequestPaused.bind(this)),this._client.on("Fetch.authRequired",this._onAuthRequired.bind(this)),this._client.on("Network.requestWillBeSent",this._onRequestWillBeSent.bind(this)),this._client.on("Network.requestServedFromCache",this._onRequestServedFromCache.bind(this)),this._client.on("Network.responseReceived",this._onResponseReceived.bind(this)),this._client.on("Network.loadingFinished",this._onLoadingFinished.bind(this)),this._client.on("Network.loadingFailed",this._onLoadingFailed.bind(this))}async initialize(){await this._client.send("Network.enable"),this._ignoreHTTPSErrors&&(await this._client.send("Security.setIgnoreCertificateErrors",{ignore:!0}))}async authenticate(e){this._credentials=e,await this._updateProtocolRequestInterception()}async setExtraHTTPHeaders(e){this._extraHTTPHeaders={};for(const t of Object.keys(e)){const r=e[t];a.assert(o.helper.isString(r),`Expected value of header "${t}" to be String, but "${typeof r}" is found.`),this._extraHTTPHeaders[t.toLowerCase()]=r}await this._client.send("Network.setExtraHTTPHeaders",{headers:this._extraHTTPHeaders})}extraHTTPHeaders(){return Object.assign({},this._extraHTTPHeaders)}async setOfflineMode(e){this._offline===e||(this._offline=e,await this._client.send("Network.emulateNetworkConditions",{offline:this._offline,latency:0,downloadThroughput:-1,uploadThroughput:-1}))}async setUserAgent(e){await this._client.send("Network.setUserAgentOverride",{userAgent:e})}async setCacheEnabled(e){this._userCacheDisabled=!e,await this._updateProtocolCacheDisabled()}async setRequestInterception(e){this._userRequestInterceptionEnabled=e,await this._updateProtocolRequestInterception()}async _updateProtocolRequestInterception(){const e=this._userRequestInterceptionEnabled||!!this._credentials;e===this._protocolRequestInterceptionEnabled||(this._protocolRequestInterceptionEnabled=e,e?await Promise.all([this._updateProtocolCacheDisabled(),this._client.send("Fetch.enable",{handleAuthRequests:!0,patterns:[{urlPattern:"*"}]})]):await Promise.all([this._updateProtocolCacheDisabled(),this._client.send("Fetch.disable")]))}async _updateProtocolCacheDisabled(){await this._client.send("Network.setCacheDisabled",{cacheDisabled:this._userCacheDisabled||this._protocolRequestInterceptionEnabled})}_onRequestWillBeSent(e){if(this._protocolRequestInterceptionEnabled&&!e.request.url.startsWith("data:")){const t=e.requestId,r=this._requestIdToInterceptionId.get(t);return void(r?(this._onRequest(e,r),this._requestIdToInterceptionId.delete(t)):this._requestIdToRequestWillBeSentEvent.set(e.requestId,e))}this._onRequest(e,null)}_onAuthRequired(e){let t="Default";this._attemptedAuthentications.has(e.requestId)?t="CancelAuth":this._credentials&&(t="ProvideCredentials",this._attemptedAuthentications.add(e.requestId));const{username:r,password:n}=this._credentials||{username:void 0,password:void 0};this._client.send("Fetch.continueWithAuth",{requestId:e.requestId,authChallengeResponse:{response:t,username:r,password:n}}).catch(o.debugError)}_onRequestPaused(e){!this._userRequestInterceptionEnabled&&this._protocolRequestInterceptionEnabled&&this._client.send("Fetch.continueRequest",{requestId:e.requestId}).catch(o.debugError);const t=e.networkId,r=e.requestId;if(t&&this._requestIdToRequestWillBeSentEvent.has(t)){const e=this._requestIdToRequestWillBeSentEvent.get(t);this._onRequest(e,r),this._requestIdToRequestWillBeSentEvent.delete(t)}else this._requestIdToInterceptionId.set(t,r)}_onRequest(e,r){let n=[];if(e.redirectResponse){const t=this._requestIdToRequest.get(e.requestId);t&&(this._handleRequestRedirect(t,e.redirectResponse),n=t._redirectChain)}const a=e.frameId?this._frameManager.frame(e.frameId):null,o=new i.HTTPRequest(this._client,a,r,this._userRequestInterceptionEnabled,e,n);this._requestIdToRequest.set(e.requestId,o),this.emit(t.NetworkManagerEmittedEvents.Request,o)}_onRequestServedFromCache(e){const t=this._requestIdToRequest.get(e.requestId);t&&(t._fromMemoryCache=!0)}_handleRequestRedirect(e,r){const n=new s.HTTPResponse(this._client,e,r);e._response=n,e._redirectChain.push(e),n._resolveBody(new Error("Response body is unavailable for redirect responses")),this._requestIdToRequest.delete(e._requestId),this._attemptedAuthentications.delete(e._interceptionId),this.emit(t.NetworkManagerEmittedEvents.Response,n),this.emit(t.NetworkManagerEmittedEvents.RequestFinished,e)}_onResponseReceived(e){const r=this._requestIdToRequest.get(e.requestId);if(r){const n=new s.HTTPResponse(this._client,r,e.response);r._response=n,this.emit(t.NetworkManagerEmittedEvents.Response,n)}}_onLoadingFinished(e){const r=this._requestIdToRequest.get(e.requestId);r&&(r.response()&&r.response()._resolveBody(null),this._requestIdToRequest.delete(r._requestId),this._attemptedAuthentications.delete(r._interceptionId),this.emit(t.NetworkManagerEmittedEvents.RequestFinished,r))}_onLoadingFailed(e){const r=this._requestIdToRequest.get(e.requestId);if(r){r._failureText=e.errorText;const n=r.response();n&&n._resolveBody(null),this._requestIdToRequest.delete(r._requestId),this._attemptedAuthentications.delete(r._interceptionId),this.emit(t.NetworkManagerEmittedEvents.RequestFailed,r)}}}t.NetworkManager=l},95320:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.paperFormats=void 0,t.paperFormats={letter:{width:8.5,height:11},legal:{width:8.5,height:14},tabloid:{width:11,height:17},ledger:{width:17,height:11},a0:{width:33.1,height:46.8},a1:{width:23.4,height:33.1},a2:{width:16.54,height:23.4},a3:{width:11.7,height:16.54},a4:{width:8.27,height:11.7},a5:{width:5.83,height:8.27},a6:{width:4.13,height:5.83}}},4258:(e,t,r)=>{"use strict";function n(e){if("undefined"==typeof e)return;let t;if(u.helper.isNumber(e))t=e;else if(u.helper.isString(e)){const r=e;let n=r.substring(r.length-2).toLowerCase(),a="";T.hasOwnProperty(n)?a=r.substring(0,r.length-2):(n="px",a=r);const o=+a;c.assert(!isNaN(o),"Failed to parse parameter value: "+r),t=o*T[n]}else throw new Error("page.pdf() Cannot handle parameter type: "+typeof e);return t/96}Object.defineProperty(t,"__esModule",{value:!0}),t.Page=void 0;const a=r(2680),o=r(58602),i=r(2915),s=r(3449),l=r(71886),d=r(80771),p=r(64189),c=r(85668),u=r(47674),m=r(35204),g=r(41418),h=r(79272),f=r(97966),y=r(77601),b=r(44261),S=r(23254),x=r(16051),v=r(95320),k=r(23222);class C{constructor(){this._chain=Promise.resolve(void 0)}postTask(e){const t=this._chain.then(e);return this._chain=t.catch(()=>{}),t}}class w extends a.EventEmitter{constructor(e,t,r){super(),this._closed=!1,this._timeoutSettings=new b.TimeoutSettings,this._pageBindings=new Map,this._javascriptEnabled=!0,this._workers=new Map,this._fileChooserInterceptors=new Set,this._client=e,this._target=t,this._keyboard=new d.Keyboard(e),this._mouse=new d.Mouse(e,this._keyboard),this._touchscreen=new d.Touchscreen(e,this._keyboard),this._accessibility=new y.Accessibility(e),this._frameManager=new l.FrameManager(e,this,r,this._timeoutSettings),this._emulationManager=new s.EmulationManager(e),this._tracing=new p.Tracing(e),this._coverage=new m.Coverage(e),this._screenshotTaskQueue=new C,this._viewport=null,e.on("Target.attachedToTarget",t=>{if("worker"!==t.targetInfo.type)return void e.send("Target.detachFromTarget",{sessionId:t.sessionId}).catch(u.debugError);const r=o.Connection.fromSession(e).session(t.sessionId),n=new g.WebWorker(r,t.targetInfo.url,this._addConsoleMessage.bind(this),this._handleException.bind(this));this._workers.set(t.sessionId,n),this.emit("workercreated",n)}),e.on("Target.detachedFromTarget",e=>{const t=this._workers.get(e.sessionId);t&&(this.emit("workerdestroyed",t),this._workers.delete(e.sessionId))}),this._frameManager.on(l.FrameManagerEmittedEvents.FrameAttached,e=>this.emit("frameattached",e)),this._frameManager.on(l.FrameManagerEmittedEvents.FrameDetached,e=>this.emit("framedetached",e)),this._frameManager.on(l.FrameManagerEmittedEvents.FrameNavigated,e=>this.emit("framenavigated",e));const n=this._frameManager.networkManager();n.on(f.NetworkManagerEmittedEvents.Request,e=>this.emit("request",e)),n.on(f.NetworkManagerEmittedEvents.Response,e=>this.emit("response",e)),n.on(f.NetworkManagerEmittedEvents.RequestFailed,e=>this.emit("requestfailed",e)),n.on(f.NetworkManagerEmittedEvents.RequestFinished,e=>this.emit("requestfinished",e)),this._fileChooserInterceptors=new Set,e.on("Page.domContentEventFired",()=>this.emit("domcontentloaded")),e.on("Page.loadEventFired",()=>this.emit("load")),e.on("Runtime.consoleAPICalled",e=>this._onConsoleAPI(e)),e.on("Runtime.bindingCalled",e=>this._onBindingCalled(e)),e.on("Page.javascriptDialogOpening",e=>this._onDialog(e)),e.on("Runtime.exceptionThrown",e=>this._handleException(e.exceptionDetails)),e.on("Inspector.targetCrashed",()=>this._onTargetCrashed()),e.on("Performance.metrics",e=>this._emitMetrics(e)),e.on("Log.entryAdded",e=>this._onLogEntryAdded(e)),e.on("Page.fileChooserOpened",e=>this._onFileChooser(e)),this._target._isClosedPromise.then(()=>{this.emit("close"),this._closed=!0})}static async create(e,t,r,n){const a=new w(e,t,r);return await a._initialize(),n&&(await a.setViewport(n)),a}async _initialize(){await Promise.all([this._frameManager.initialize(),this._client.send("Target.setAutoAttach",{autoAttach:!0,waitForDebuggerOnStart:!1,flatten:!0}),this._client.send("Performance.enable"),this._client.send("Log.enable")])}async _onFileChooser(e){if(!this._fileChooserInterceptors.size)return;const t=this._frameManager.frame(e.frameId),r=await t.executionContext(),n=await r._adoptBackendNodeId(e.backendNodeId),a=Array.from(this._fileChooserInterceptors);this._fileChooserInterceptors.clear();const o=new S.FileChooser(n,e);for(const t of a)t.call(null,o)}isJavaScriptEnabled(){return this._javascriptEnabled}async waitForFileChooser(e={}){this._fileChooserInterceptors.size||(await this._client.send("Page.setInterceptFileChooserDialog",{enabled:!0}));const{timeout:t=this._timeoutSettings.timeout()}=e;let r;const n=new Promise(e=>r=e);return this._fileChooserInterceptors.add(r),u.helper.waitWithTimeout(n,"waiting for file chooser",t).catch(e=>{throw this._fileChooserInterceptors.delete(r),e})}async setGeolocation(e){const{longitude:t,latitude:r,accuracy:n=0}=e;if(-180>t||180r||90n)throw new Error(`Invalid accuracy "${n}": precondition 0 <= ACCURACY failed.`);await this._client.send("Emulation.setGeolocationOverride",{longitude:t,latitude:r,accuracy:n})}target(){return this._target}browser(){return this._target.browser()}browserContext(){return this._target.browserContext()}_onTargetCrashed(){this.emit("error",new Error("Page crashed!"))}_onLogEntryAdded(e){const{level:t,text:r,args:n,source:a,url:o,lineNumber:i}=e.entry;n&&n.map(e=>u.helper.releaseObject(this._client,e)),"worker"!==a&&this.emit("console",new x.ConsoleMessage(t,r,[],[{url:o,lineNumber:i}]))}mainFrame(){return this._frameManager.mainFrame()}get keyboard(){return this._keyboard}get touchscreen(){return this._touchscreen}get coverage(){return this._coverage}get tracing(){return this._tracing}get accessibility(){return this._accessibility}frames(){return this._frameManager.frames()}workers(){return Array.from(this._workers.values())}async setRequestInterception(e){return this._frameManager.networkManager().setRequestInterception(e)}setOfflineMode(e){return this._frameManager.networkManager().setOfflineMode(e)}setDefaultNavigationTimeout(e){this._timeoutSettings.setDefaultNavigationTimeout(e)}setDefaultTimeout(e){this._timeoutSettings.setDefaultTimeout(e)}async $(e){return this.mainFrame().$(e)}async evaluateHandle(e,...t){const r=await this.mainFrame().executionContext();return r.evaluateHandle(e,...t)}async queryObjects(e){const t=await this.mainFrame().executionContext();return t.queryObjects(e)}async $eval(e,t,...r){return this.mainFrame().$eval(e,t,...r)}async $$eval(e,t,...r){return this.mainFrame().$$eval(e,t,...r)}async $$(e){return this.mainFrame().$$(e)}async $x(e){return this.mainFrame().$x(e)}async cookies(...e){const t=(await this._client.send("Network.getCookies",{urls:e.length?e:[this.url()]})).cookies,r=["priority"];return t.map(e=>{for(const t of r)delete e[t];return e})}async deleteCookie(...e){const t=this.url();for(const r of e){const e=Object.assign({},r);!r.url&&t.startsWith("http")&&(e.url=t),await this._client.send("Network.deleteCookies",e)}}async setCookie(...e){const t=this.url(),r=t.startsWith("http"),n=e.map(e=>{const n=Object.assign({},e);return!n.url&&r&&(n.url=t),c.assert("about:blank"!==n.url,`Blank page can not have cookie "${n.name}"`),c.assert(!_Stringprototype.startsWith.call(n.url||"","data:"),`Data URL page can not have cookie "${n.name}"`),n});await this.deleteCookie(...n),n.length&&(await this._client.send("Network.setCookies",{cookies:n}))}async addScriptTag(e){return this.mainFrame().addScriptTag(e)}async addStyleTag(e){return this.mainFrame().addStyleTag(e)}async exposeFunction(e,t){if(this._pageBindings.has(e))throw new Error(`Failed to add page binding with name ${e}: window['${e}'] already exists!`);this._pageBindings.set(e,t);const r=u.helper.pageBindingInitString("exposedFun",e);await this._client.send("Runtime.addBinding",{name:e}),await this._client.send("Page.addScriptToEvaluateOnNewDocument",{source:r}),await Promise.all(this.frames().map(e=>e.evaluate(r).catch(u.debugError)))}async authenticate(e){return this._frameManager.networkManager().authenticate(e)}async setExtraHTTPHeaders(e){return this._frameManager.networkManager().setExtraHTTPHeaders(e)}async setUserAgent(e){return this._frameManager.networkManager().setUserAgent(e)}async metrics(){const e=await this._client.send("Performance.getMetrics");return this._buildMetricsObject(e.metrics)}_emitMetrics(e){this.emit("metrics",{title:e.title,metrics:this._buildMetricsObject(e.metrics)})}_buildMetricsObject(e){const t={};for(const r of e||[])_.has(r.name)&&(t[r.name]=r.value);return t}_handleException(e){const t=u.helper.getExceptionMessage(e),r=new Error(t);r.stack="",this.emit("pageerror",r)}async _onConsoleAPI(e){if(0===e.executionContextId)return;const t=this._frameManager.executionContextById(e.executionContextId),r=e.args.map(e=>h.createJSHandle(t,e));this._addConsoleMessage(e.type,r,e.stackTrace)}async _onBindingCalled(e){let t;try{t=JSON.parse(e.payload)}catch{return}const{type:r,name:n,seq:a,args:o}=t;if("exposedFun"!==r||!this._pageBindings.has(n))return;let i=null;try{const e=await this._pageBindings.get(n)(...o);i=u.helper.pageBindingDeliverResultString(n,a,e)}catch(e){i=e instanceof Error?u.helper.pageBindingDeliverErrorString(n,a,e.message,e.stack):u.helper.pageBindingDeliverErrorValueString(n,a,e)}this._client.send("Runtime.evaluate",{expression:i,contextId:e.executionContextId}).catch(u.debugError)}_addConsoleMessage(e,t,r){if(!this.listenerCount("console"))return void t.forEach(e=>e.dispose());const n=[];for(const a of t){const e=a._remoteObject;e.objectId?n.push(a.toString()):n.push(u.helper.valueFromRemoteObject(e))}const a=[];if(r)for(const e of r.callFrames)a.push({url:e.url,lineNumber:e.lineNumber,columnNumber:e.columnNumber});const o=new x.ConsoleMessage(e,n.join(" "),t,a);this.emit("console",o)}_onDialog(e){let t=null;const r=new Set(["alert","confirm","prompt","beforeunload"]);r.has(e.type)&&(t=e.type),c.assert(t,"Unknown javascript dialog type: "+e.type);const n=new i.Dialog(this._client,t,e.message,e.defaultPrompt);this.emit("dialog",n)}url(){return this.mainFrame().url()}async content(){return await this._frameManager.mainFrame().content()}async setContent(e,t={}){await this._frameManager.mainFrame().setContent(e,t)}async goto(e,t={}){return await this._frameManager.mainFrame().goto(e,t)}async reload(e){const t=await Promise.all([this.waitForNavigation(e),this._client.send("Page.reload")]);return t[0]}async waitForNavigation(e={}){return await this._frameManager.mainFrame().waitForNavigation(e)}_sessionClosePromise(){return this._disconnectPromise||(this._disconnectPromise=new Promise(e=>this._client.once(o.CDPSessionEmittedEvents.Disconnected,()=>e(new Error("Target closed"))))),this._disconnectPromise}async waitForRequest(e,t={}){const{timeout:r=this._timeoutSettings.timeout()}=t;return u.helper.waitForEvent(this._frameManager.networkManager(),f.NetworkManagerEmittedEvents.Request,t=>u.helper.isString(e)?e===t.url():"function"==typeof e&&!!e(t),r,this._sessionClosePromise())}async waitForResponse(e,t={}){const{timeout:r=this._timeoutSettings.timeout()}=t;return u.helper.waitForEvent(this._frameManager.networkManager(),f.NetworkManagerEmittedEvents.Response,t=>u.helper.isString(e)?e===t.url():"function"==typeof e&&!!e(t),r,this._sessionClosePromise())}async goBack(e={}){return this._go(-1,e)}async goForward(e={}){return this._go(1,e)}async _go(e,t){const r=await this._client.send("Page.getNavigationHistory"),n=r.entries[r.currentIndex+e];if(!n)return null;const a=await Promise.all([this.waitForNavigation(t),this._client.send("Page.navigateToHistoryEntry",{entryId:n.id})]);return a[0]}async bringToFront(){await this._client.send("Page.bringToFront")}async emulate(e){await Promise.all([this.setViewport(e.viewport),this.setUserAgent(e.userAgent)])}async setJavaScriptEnabled(e){this._javascriptEnabled===e||(this._javascriptEnabled=e,await this._client.send("Emulation.setScriptExecutionDisabled",{value:!e}))}async setBypassCSP(e){await this._client.send("Page.setBypassCSP",{enabled:e})}async emulateMediaType(e){c.assert("screen"===e||"print"===e||null===e,"Unsupported media type: "+e),await this._client.send("Emulation.setEmulatedMedia",{media:e||""})}async emulateMediaFeatures(e){null===e&&(await this._client.send("Emulation.setEmulatedMedia",{features:null})),Array.isArray(e)&&(e.every(e=>{const t=e.name;return c.assert(/^prefers-(?:color-scheme|reduced-motion)$/.test(t),"Unsupported media feature: "+t),!0}),await this._client.send("Emulation.setEmulatedMedia",{features:e}))}async emulateTimezone(e){try{await this._client.send("Emulation.setTimezoneOverride",{timezoneId:e||""})}catch(t){if(t.message.includes("Invalid timezone"))throw new Error(`Invalid timezone ID: ${e}`);throw t}}async emulateIdleState(e){e?await this._client.send("Emulation.setIdleOverride",{isUserActive:e.isUserActive,isScreenUnlocked:e.isScreenUnlocked}):await this._client.send("Emulation.clearIdleOverride")}async emulateVisionDeficiency(e){const t=new Set(["none","achromatopsia","blurredVision","deuteranopia","protanopia","tritanopia"]);try{c.assert(!e||t.has(e),`Unsupported vision deficiency: ${e}`),await this._client.send("Emulation.setEmulatedVisionDeficiency",{type:e||"none"})}catch(e){throw e}}async setViewport(e){const t=await this._emulationManager.emulateViewport(e);this._viewport=e,t&&(await this.reload())}viewport(){return this._viewport}async evaluate(e,...t){return this._frameManager.mainFrame().evaluate(e,...t)}async evaluateOnNewDocument(e,...t){const r=u.helper.evaluationString(e,...t);await this._client.send("Page.addScriptToEvaluateOnNewDocument",{source:r})}async setCacheEnabled(e=!0){await this._frameManager.networkManager().setCacheEnabled(e)}async screenshot(e={}){let t=null;if(e.type)c.assert("png"===e.type||"jpeg"===e.type,"Unknown options.type value: "+e.type),t=e.type;else if(e.path){const r=e.path,n=r.slice(r.lastIndexOf(".")+1).toLowerCase();"png"===n?t="png":("jpg"===n||"jpeg"===n)&&(t="jpeg"),c.assert(t,`Unsupported screenshot type for extension \`.${n}\``)}return t||(t="png"),e.quality&&(c.assert("jpeg"===t,"options.quality is unsupported for the "+t+" screenshots"),c.assert("number"==typeof e.quality,"Expected options.quality to be a number but found "+typeof e.quality),c.assert(_NumberisInteger(e.quality),"Expected options.quality to be an integer"),c.assert(0<=e.quality&&100>=e.quality,"Expected options.quality to be between 0 and 100 (inclusive), got "+e.quality)),c.assert(!e.clip||!e.fullPage,"options.clip and options.fullPage are exclusive"),e.clip&&(c.assert("number"==typeof e.clip.x,"Expected options.clip.x to be a number but found "+typeof e.clip.x),c.assert("number"==typeof e.clip.y,"Expected options.clip.y to be a number but found "+typeof e.clip.y),c.assert("number"==typeof e.clip.width,"Expected options.clip.width to be a number but found "+typeof e.clip.width),c.assert("number"==typeof e.clip.height,"Expected options.clip.height to be a number but found "+typeof e.clip.height),c.assert(0!==e.clip.width,"Expected options.clip.width not to be 0."),c.assert(0!==e.clip.height,"Expected options.clip.height not to be 0.")),this._screenshotTaskQueue.postTask(()=>this._screenshotTask(t,e))}async _screenshotTask(e,t){function r(e){const t=_Mathround(e.x),r=_Mathround(e.y),n=_Mathround(e.width+e.x-t),a=_Mathround(e.height+e.y-r);return{x:t,y:r,width:n,height:a,scale:1}}await this._client.send("Target.activateTarget",{targetId:this._target._targetId});let n=t.clip?r(t.clip):void 0;if(t.fullPage){const e=await this._client.send("Page.getLayoutMetrics"),t=_Mathceil(e.contentSize.width),r=_Mathceil(e.contentSize.height);n={x:0,y:0,width:t,height:r,scale:1};const{isMobile:a=!1,deviceScaleFactor:o=1,isLandscape:i=!1}=this._viewport||{},s=i?{angle:90,type:"landscapePrimary"}:{angle:0,type:"portraitPrimary"};await this._client.send("Emulation.setDeviceMetricsOverride",{mobile:a,width:t,height:r,deviceScaleFactor:o,screenOrientation:s})}const a=t.omitBackground&&"png"===e;a&&(await this._client.send("Emulation.setDefaultBackgroundColorOverride",{color:{r:0,g:0,b:0,a:0}}));const o=await this._client.send("Page.captureScreenshot",{format:e,quality:t.quality,clip:n});a&&(await this._client.send("Emulation.setDefaultBackgroundColorOverride")),t.fullPage&&this._viewport&&(await this.setViewport(this._viewport));const i="base64"===t.encoding?o.data:Buffer.from(o.data,"base64");if(!k.isNode&&t.path)throw new Error("Screenshots can only be written to a file path in a Node environment.");const s=await u.helper.importFSModule();return t.path&&(await s.promises.writeFile(t.path,i)),i}async pdf(e={}){const{scale:t=1,displayHeaderFooter:r=!1,headerTemplate:a="",footerTemplate:o="",printBackground:i=!1,landscape:s=!1,pageRanges:l="",preferCSSPageSize:d=!1,margin:p={},path:m=null}=e;let g=8.5,h=11;if(e.format){const t=v.paperFormats[e.format.toLowerCase()];c.assert(t,"Unknown paper format: "+e.format),g=t.width,h=t.height}else g=n(e.width)||g,h=n(e.height)||h;const f=n(p.top)||0,y=n(p.left)||0,b=n(p.bottom)||0,S=n(p.right)||0,x=await this._client.send("Page.printToPDF",{transferMode:"ReturnAsStream",landscape:s,displayHeaderFooter:r,headerTemplate:a,footerTemplate:o,printBackground:i,scale:t,paperWidth:g,paperHeight:h,marginTop:f,marginBottom:b,marginLeft:y,marginRight:S,pageRanges:l,preferCSSPageSize:d});return await u.helper.readProtocolStream(this._client,x.stream,m)}async title(){return this.mainFrame().title()}async close(e={runBeforeUnload:void 0}){c.assert(!!this._client._connection,"Protocol error: Connection closed. Most likely the page has been closed.");const t=!!e.runBeforeUnload;t?await this._client.send("Page.close"):(await this._client._connection.send("Target.closeTarget",{targetId:this._target._targetId}),await this._target._isClosedPromise)}isClosed(){return this._closed}get mouse(){return this._mouse}click(e,t={}){return this.mainFrame().click(e,t)}focus(e){return this.mainFrame().focus(e)}hover(e){return this.mainFrame().hover(e)}select(e,...t){return this.mainFrame().select(e,...t)}tap(e){return this.mainFrame().tap(e)}type(e,t,r){return this.mainFrame().type(e,t,r)}waitFor(e,t={},...r){return this.mainFrame().waitFor(e,t,...r)}waitForTimeout(e){return this.mainFrame().waitForTimeout(e)}waitForSelector(e,t={}){return this.mainFrame().waitForSelector(e,t)}waitForXPath(e,t={}){return this.mainFrame().waitForXPath(e,t)}waitForFunction(e,t={},...r){return this.mainFrame().waitForFunction(e,t,...r)}}t.Page=w;const _=new Set(["Timestamp","Documents","Frames","JSEventListeners","Nodes","LayoutCount","RecalcStyleCount","LayoutDuration","RecalcStyleDuration","ScriptDuration","TaskDuration","JSHeapUsedSize","JSHeapTotalSize"]),T={px:1,in:96,cm:37.8,mm:3.78}},39006:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Puppeteer=void 0;const n=r(29554),a=r(34906),o=r(90419),i=r(10714);class s{constructor(e){this._changedProduct=!1,this._isPuppeteerCore=e.isPuppeteerCore}connect(e){return i.connectToBrowser(e)}get devices(){return a.devicesMap}get errors(){return n.puppeteerErrors}registerCustomQueryHandler(e,t){o.registerCustomQueryHandler(e,t)}unregisterCustomQueryHandler(e){o.unregisterCustomQueryHandler(e)}customQueryHandlerNames(){return o.customQueryHandlerNames()}clearCustomQueryHandlers(){o.clearCustomQueryHandlers()}}t.Puppeteer=s},90419:(e,t,r)=>{"use strict";function n(e){const t={};return e.queryOne&&(t.queryOne=async(t,r)=>{const n=await t.evaluateHandle(e.queryOne,r),a=n.asElement();return a?a:(await n.dispose(),null)},t.waitFor=(t,r,n)=>t.waitForSelectorInPage(e.queryOne,r,n)),e.queryAll&&(t.queryAll=async(t,r)=>{const n=await t.evaluateHandle(e.queryAll,r),a=await n.getProperties();await n.dispose();const o=[];for(const e of a.values()){const t=e.asElement();t&&o.push(t)}return o},t.queryAllArray=async(t,r)=>{const n=await t.evaluateHandle(e.queryAll,r),a=await n.evaluateHandle(e=>Array.from(e));return a}),t}function a(e){p.has(e)&&!d.has(e)&&p.delete(e)}function o(){return[...p.keys()].filter(e=>!d.has(e))}Object.defineProperty(t,"__esModule",{value:!0}),t.getQueryHandlerAndSelector=t.clearCustomQueryHandlers=t.customQueryHandlerNames=t.unregisterCustomQueryHandler=t.registerCustomQueryHandler=void 0;const i=r(79867),s=n({queryOne:(e,t)=>e.querySelector(t),queryAll:(e,t)=>e.querySelectorAll(t)}),l=n({queryOne:(e,t)=>{let r=null;const n=e=>{const a=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT);do{const e=a.currentNode;if(e.shadowRoot&&n(e.shadowRoot),e instanceof ShadowRoot)continue;!r&&e.matches(t)&&(r=e)}while(!r&&a.nextNode())};return e instanceof Document&&(e=e.documentElement),n(e),r},queryAll:(e,t)=>{const r=[],n=e=>{const a=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT);do{const e=a.currentNode;if(e.shadowRoot&&n(e.shadowRoot),e instanceof ShadowRoot)continue;e.matches(t)&&r.push(e)}while(a.nextNode())};return e instanceof Document&&(e=e.documentElement),n(e),r}}),d=new Map([["aria",i.ariaHandler],["pierce",l]]),p=new Map(d);t.registerCustomQueryHandler=function(e,t){if(p.get(e))throw new Error(`A custom query handler named "${e}" already exists`);const r=/^[a-zA-Z]+$/.test(e);if(!r)throw new Error(`Custom query handler names may only contain [a-zA-Z]`);const a=n(t);p.set(e,a)},t.unregisterCustomQueryHandler=a,t.customQueryHandlerNames=o,t.clearCustomQueryHandlers=function(){o().forEach(a)},t.getQueryHandlerAndSelector=function(e){const t=/^[a-zA-Z]+\//.test(e);if(!t)return{updatedSelector:e,queryHandler:s};const r=e.indexOf("/"),n=e.slice(0,r),a=e.slice(r+1),o=p.get(n);if(!o)throw new Error(`Query set to use "${n}", but no query handler of that name was found`);return{updatedSelector:a,queryHandler:o}}},55468:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SecurityDetails=void 0;t.SecurityDetails=class e{constructor(e){this._subjectName=e.subjectName,this._issuer=e.issuer,this._validFrom=e.validFrom,this._validTo=e.validTo,this._protocol=e.protocol,this._sanList=e.sanList}issuer(){return this._issuer}validFrom(){return this._validFrom}validTo(){return this._validTo}protocol(){return this._protocol}subjectName(){return this._subjectName}subjectAlternativeNames(){return this._sanList}}},69668:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Target=void 0;const n=r(4258),a=r(41418);t.Target=class e{constructor(e,t,r,n,a){this._targetInfo=e,this._browserContext=t,this._targetId=e.targetId,this._sessionFactory=r,this._ignoreHTTPSErrors=n,this._defaultViewport=a,this._pagePromise=null,this._workerPromise=null,this._initializedPromise=new Promise(e=>this._initializedCallback=e).then(async e=>{if(!e)return!1;const t=this.opener();if(!t||!t._pagePromise||"page"!==this.type())return!0;const r=await t._pagePromise;if(!r.listenerCount("popup"))return!0;const n=await this.page();return r.emit("popup",n),!0}),this._isClosedPromise=new Promise(e=>this._closedCallback=e),this._isInitialized="page"!==this._targetInfo.type||""!==this._targetInfo.url,this._isInitialized&&this._initializedCallback(!0)}createCDPSession(){return this._sessionFactory()}async page(){return"page"!==this._targetInfo.type&&"background_page"!==this._targetInfo.type&&"webview"!==this._targetInfo.type||this._pagePromise||(this._pagePromise=this._sessionFactory().then(e=>n.Page.create(e,this,this._ignoreHTTPSErrors,this._defaultViewport))),this._pagePromise}async worker(){return"service_worker"!==this._targetInfo.type&&"shared_worker"!==this._targetInfo.type?null:(this._workerPromise||(this._workerPromise=this._sessionFactory().then(e=>new a.WebWorker(e,this._targetInfo.url,()=>{},()=>{}))),this._workerPromise)}url(){return this._targetInfo.url}type(){const e=this._targetInfo.type;return"page"===e||"background_page"===e||"service_worker"===e||"shared_worker"===e||"browser"===e||"webview"===e?e:"other"}browser(){return this._browserContext.browser()}browserContext(){return this._browserContext}opener(){const{openerId:e}=this._targetInfo;return e?this.browser()._targets.get(e):null}_targetInfoChanged(e){if(this._targetInfo=e,!this._isInitialized&&("page"!==this._targetInfo.type||""!==this._targetInfo.url))return this._isInitialized=!0,void this._initializedCallback(!0)}}},44261:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TimeoutSettings=void 0;t.TimeoutSettings=class e{constructor(){this._defaultTimeout=null,this._defaultNavigationTimeout=null}setDefaultTimeout(e){this._defaultTimeout=e}setDefaultNavigationTimeout(e){this._defaultNavigationTimeout=e}navigationTimeout(){return null===this._defaultNavigationTimeout?null===this._defaultTimeout?30000:this._defaultTimeout:this._defaultNavigationTimeout}timeout(){return null===this._defaultTimeout?30000:this._defaultTimeout}}},64189:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Tracing=void 0;const n=r(85668),a=r(47674);t.Tracing=class e{constructor(e){this._recording=!1,this._path="",this._client=e}async start(e={}){n.assert(!this._recording,"Cannot start recording trace while already recording trace.");const{path:t=null,screenshots:r=!1,categories:a=["-*","devtools.timeline","v8.execute","disabled-by-default-devtools.timeline","disabled-by-default-devtools.timeline.frame","toplevel","blink.console","blink.user_timing","latencyInfo","disabled-by-default-devtools.timeline.stack","disabled-by-default-v8.cpu_profiler","disabled-by-default-v8.cpu_profiler.hires"]}=e;r&&a.push("disabled-by-default-devtools.screenshot"),this._path=t,this._recording=!0,await this._client.send("Tracing.start",{transferMode:"ReturnAsStream",categories:a.join(",")})}async stop(){let e,t;const r=new Promise((r,n)=>{e=r,t=n});return this._client.once("Tracing.tracingComplete",r=>{a.helper.readProtocolStream(this._client,r.stream,this._path).then(e,t)}),await this._client.send("Tracing.end"),this._recording=!1,r}}},85654:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.keyDefinitions=void 0,t.keyDefinitions={0:{keyCode:48,key:"0",code:"Digit0"},1:{keyCode:49,key:"1",code:"Digit1"},2:{keyCode:50,key:"2",code:"Digit2"},3:{keyCode:51,key:"3",code:"Digit3"},4:{keyCode:52,key:"4",code:"Digit4"},5:{keyCode:53,key:"5",code:"Digit5"},6:{keyCode:54,key:"6",code:"Digit6"},7:{keyCode:55,key:"7",code:"Digit7"},8:{keyCode:56,key:"8",code:"Digit8"},9:{keyCode:57,key:"9",code:"Digit9"},Power:{key:"Power",code:"Power"},Eject:{key:"Eject",code:"Eject"},Abort:{keyCode:3,code:"Abort",key:"Cancel"},Help:{keyCode:6,code:"Help",key:"Help"},Backspace:{keyCode:8,code:"Backspace",key:"Backspace"},Tab:{keyCode:9,code:"Tab",key:"Tab"},Numpad5:{keyCode:12,shiftKeyCode:101,key:"Clear",code:"Numpad5",shiftKey:"5",location:3},NumpadEnter:{keyCode:13,code:"NumpadEnter",key:"Enter",text:"\r",location:3},Enter:{keyCode:13,code:"Enter",key:"Enter",text:"\r"},"\r":{keyCode:13,code:"Enter",key:"Enter",text:"\r"},"\n":{keyCode:13,code:"Enter",key:"Enter",text:"\r"},ShiftLeft:{keyCode:16,code:"ShiftLeft",key:"Shift",location:1},ShiftRight:{keyCode:16,code:"ShiftRight",key:"Shift",location:2},ControlLeft:{keyCode:17,code:"ControlLeft",key:"Control",location:1},ControlRight:{keyCode:17,code:"ControlRight",key:"Control",location:2},AltLeft:{keyCode:18,code:"AltLeft",key:"Alt",location:1},AltRight:{keyCode:18,code:"AltRight",key:"Alt",location:2},Pause:{keyCode:19,code:"Pause",key:"Pause"},CapsLock:{keyCode:20,code:"CapsLock",key:"CapsLock"},Escape:{keyCode:27,code:"Escape",key:"Escape"},Convert:{keyCode:28,code:"Convert",key:"Convert"},NonConvert:{keyCode:29,code:"NonConvert",key:"NonConvert"},Space:{keyCode:32,code:"Space",key:" "},Numpad9:{keyCode:33,shiftKeyCode:105,key:"PageUp",code:"Numpad9",shiftKey:"9",location:3},PageUp:{keyCode:33,code:"PageUp",key:"PageUp"},Numpad3:{keyCode:34,shiftKeyCode:99,key:"PageDown",code:"Numpad3",shiftKey:"3",location:3},PageDown:{keyCode:34,code:"PageDown",key:"PageDown"},End:{keyCode:35,code:"End",key:"End"},Numpad1:{keyCode:35,shiftKeyCode:97,key:"End",code:"Numpad1",shiftKey:"1",location:3},Home:{keyCode:36,code:"Home",key:"Home"},Numpad7:{keyCode:36,shiftKeyCode:103,key:"Home",code:"Numpad7",shiftKey:"7",location:3},ArrowLeft:{keyCode:37,code:"ArrowLeft",key:"ArrowLeft"},Numpad4:{keyCode:37,shiftKeyCode:100,key:"ArrowLeft",code:"Numpad4",shiftKey:"4",location:3},Numpad8:{keyCode:38,shiftKeyCode:104,key:"ArrowUp",code:"Numpad8",shiftKey:"8",location:3},ArrowUp:{keyCode:38,code:"ArrowUp",key:"ArrowUp"},ArrowRight:{keyCode:39,code:"ArrowRight",key:"ArrowRight"},Numpad6:{keyCode:39,shiftKeyCode:102,key:"ArrowRight",code:"Numpad6",shiftKey:"6",location:3},Numpad2:{keyCode:40,shiftKeyCode:98,key:"ArrowDown",code:"Numpad2",shiftKey:"2",location:3},ArrowDown:{keyCode:40,code:"ArrowDown",key:"ArrowDown"},Select:{keyCode:41,code:"Select",key:"Select"},Open:{keyCode:43,code:"Open",key:"Execute"},PrintScreen:{keyCode:44,code:"PrintScreen",key:"PrintScreen"},Insert:{keyCode:45,code:"Insert",key:"Insert"},Numpad0:{keyCode:45,shiftKeyCode:96,key:"Insert",code:"Numpad0",shiftKey:"0",location:3},Delete:{keyCode:46,code:"Delete",key:"Delete"},NumpadDecimal:{keyCode:46,shiftKeyCode:110,code:"NumpadDecimal",key:"\0",shiftKey:".",location:3},Digit0:{keyCode:48,code:"Digit0",shiftKey:")",key:"0"},Digit1:{keyCode:49,code:"Digit1",shiftKey:"!",key:"1"},Digit2:{keyCode:50,code:"Digit2",shiftKey:"@",key:"2"},Digit3:{keyCode:51,code:"Digit3",shiftKey:"#",key:"3"},Digit4:{keyCode:52,code:"Digit4",shiftKey:"$",key:"4"},Digit5:{keyCode:53,code:"Digit5",shiftKey:"%",key:"5"},Digit6:{keyCode:54,code:"Digit6",shiftKey:"^",key:"6"},Digit7:{keyCode:55,code:"Digit7",shiftKey:"&",key:"7"},Digit8:{keyCode:56,code:"Digit8",shiftKey:"*",key:"8"},Digit9:{keyCode:57,code:"Digit9",shiftKey:"(",key:"9"},KeyA:{keyCode:65,code:"KeyA",shiftKey:"A",key:"a"},KeyB:{keyCode:66,code:"KeyB",shiftKey:"B",key:"b"},KeyC:{keyCode:67,code:"KeyC",shiftKey:"C",key:"c"},KeyD:{keyCode:68,code:"KeyD",shiftKey:"D",key:"d"},KeyE:{keyCode:69,code:"KeyE",shiftKey:"E",key:"e"},KeyF:{keyCode:70,code:"KeyF",shiftKey:"F",key:"f"},KeyG:{keyCode:71,code:"KeyG",shiftKey:"G",key:"g"},KeyH:{keyCode:72,code:"KeyH",shiftKey:"H",key:"h"},KeyI:{keyCode:73,code:"KeyI",shiftKey:"I",key:"i"},KeyJ:{keyCode:74,code:"KeyJ",shiftKey:"J",key:"j"},KeyK:{keyCode:75,code:"KeyK",shiftKey:"K",key:"k"},KeyL:{keyCode:76,code:"KeyL",shiftKey:"L",key:"l"},KeyM:{keyCode:77,code:"KeyM",shiftKey:"M",key:"m"},KeyN:{keyCode:78,code:"KeyN",shiftKey:"N",key:"n"},KeyO:{keyCode:79,code:"KeyO",shiftKey:"O",key:"o"},KeyP:{keyCode:80,code:"KeyP",shiftKey:"P",key:"p"},KeyQ:{keyCode:81,code:"KeyQ",shiftKey:"Q",key:"q"},KeyR:{keyCode:82,code:"KeyR",shiftKey:"R",key:"r"},KeyS:{keyCode:83,code:"KeyS",shiftKey:"S",key:"s"},KeyT:{keyCode:84,code:"KeyT",shiftKey:"T",key:"t"},KeyU:{keyCode:85,code:"KeyU",shiftKey:"U",key:"u"},KeyV:{keyCode:86,code:"KeyV",shiftKey:"V",key:"v"},KeyW:{keyCode:87,code:"KeyW",shiftKey:"W",key:"w"},KeyX:{keyCode:88,code:"KeyX",shiftKey:"X",key:"x"},KeyY:{keyCode:89,code:"KeyY",shiftKey:"Y",key:"y"},KeyZ:{keyCode:90,code:"KeyZ",shiftKey:"Z",key:"z"},MetaLeft:{keyCode:91,code:"MetaLeft",key:"Meta",location:1},MetaRight:{keyCode:92,code:"MetaRight",key:"Meta",location:2},ContextMenu:{keyCode:93,code:"ContextMenu",key:"ContextMenu"},NumpadMultiply:{keyCode:106,code:"NumpadMultiply",key:"*",location:3},NumpadAdd:{keyCode:107,code:"NumpadAdd",key:"+",location:3},NumpadSubtract:{keyCode:109,code:"NumpadSubtract",key:"-",location:3},NumpadDivide:{keyCode:111,code:"NumpadDivide",key:"/",location:3},F1:{keyCode:112,code:"F1",key:"F1"},F2:{keyCode:113,code:"F2",key:"F2"},F3:{keyCode:114,code:"F3",key:"F3"},F4:{keyCode:115,code:"F4",key:"F4"},F5:{keyCode:116,code:"F5",key:"F5"},F6:{keyCode:117,code:"F6",key:"F6"},F7:{keyCode:118,code:"F7",key:"F7"},F8:{keyCode:119,code:"F8",key:"F8"},F9:{keyCode:120,code:"F9",key:"F9"},F10:{keyCode:121,code:"F10",key:"F10"},F11:{keyCode:122,code:"F11",key:"F11"},F12:{keyCode:123,code:"F12",key:"F12"},F13:{keyCode:124,code:"F13",key:"F13"},F14:{keyCode:125,code:"F14",key:"F14"},F15:{keyCode:126,code:"F15",key:"F15"},F16:{keyCode:127,code:"F16",key:"F16"},F17:{keyCode:128,code:"F17",key:"F17"},F18:{keyCode:129,code:"F18",key:"F18"},F19:{keyCode:130,code:"F19",key:"F19"},F20:{keyCode:131,code:"F20",key:"F20"},F21:{keyCode:132,code:"F21",key:"F21"},F22:{keyCode:133,code:"F22",key:"F22"},F23:{keyCode:134,code:"F23",key:"F23"},F24:{keyCode:135,code:"F24",key:"F24"},NumLock:{keyCode:144,code:"NumLock",key:"NumLock"},ScrollLock:{keyCode:145,code:"ScrollLock",key:"ScrollLock"},AudioVolumeMute:{keyCode:173,code:"AudioVolumeMute",key:"AudioVolumeMute"},AudioVolumeDown:{keyCode:174,code:"AudioVolumeDown",key:"AudioVolumeDown"},AudioVolumeUp:{keyCode:175,code:"AudioVolumeUp",key:"AudioVolumeUp"},MediaTrackNext:{keyCode:176,code:"MediaTrackNext",key:"MediaTrackNext"},MediaTrackPrevious:{keyCode:177,code:"MediaTrackPrevious",key:"MediaTrackPrevious"},MediaStop:{keyCode:178,code:"MediaStop",key:"MediaStop"},MediaPlayPause:{keyCode:179,code:"MediaPlayPause",key:"MediaPlayPause"},Semicolon:{keyCode:186,code:"Semicolon",shiftKey:":",key:";"},Equal:{keyCode:187,code:"Equal",shiftKey:"+",key:"="},NumpadEqual:{keyCode:187,code:"NumpadEqual",key:"=",location:3},Comma:{keyCode:188,code:"Comma",shiftKey:"<",key:","},Minus:{keyCode:189,code:"Minus",shiftKey:"_",key:"-"},Period:{keyCode:190,code:"Period",shiftKey:">",key:"."},Slash:{keyCode:191,code:"Slash",shiftKey:"?",key:"/"},Backquote:{keyCode:192,code:"Backquote",shiftKey:"~",key:"`"},BracketLeft:{keyCode:219,code:"BracketLeft",shiftKey:"{",key:"["},Backslash:{keyCode:220,code:"Backslash",shiftKey:"|",key:"\\"},BracketRight:{keyCode:221,code:"BracketRight",shiftKey:"}",key:"]"},Quote:{keyCode:222,code:"Quote",shiftKey:"\"",key:"'"},AltGraph:{keyCode:225,code:"AltGraph",key:"AltGraph"},Props:{keyCode:247,code:"Props",key:"CrSel"},Cancel:{keyCode:3,key:"Cancel",code:"Abort"},Clear:{keyCode:12,key:"Clear",code:"Numpad5",location:3},Shift:{keyCode:16,key:"Shift",code:"ShiftLeft",location:1},Control:{keyCode:17,key:"Control",code:"ControlLeft",location:1},Alt:{keyCode:18,key:"Alt",code:"AltLeft",location:1},Accept:{keyCode:30,key:"Accept"},ModeChange:{keyCode:31,key:"ModeChange"}," ":{keyCode:32,key:" ",code:"Space"},Print:{keyCode:42,key:"Print"},Execute:{keyCode:43,key:"Execute",code:"Open"},"":{keyCode:46,key:"\0",code:"NumpadDecimal",location:3},a:{keyCode:65,key:"a",code:"KeyA"},b:{keyCode:66,key:"b",code:"KeyB"},c:{keyCode:67,key:"c",code:"KeyC"},d:{keyCode:68,key:"d",code:"KeyD"},e:{keyCode:69,key:"e",code:"KeyE"},f:{keyCode:70,key:"f",code:"KeyF"},g:{keyCode:71,key:"g",code:"KeyG"},h:{keyCode:72,key:"h",code:"KeyH"},i:{keyCode:73,key:"i",code:"KeyI"},j:{keyCode:74,key:"j",code:"KeyJ"},k:{keyCode:75,key:"k",code:"KeyK"},l:{keyCode:76,key:"l",code:"KeyL"},m:{keyCode:77,key:"m",code:"KeyM"},n:{keyCode:78,key:"n",code:"KeyN"},o:{keyCode:79,key:"o",code:"KeyO"},p:{keyCode:80,key:"p",code:"KeyP"},q:{keyCode:81,key:"q",code:"KeyQ"},r:{keyCode:82,key:"r",code:"KeyR"},s:{keyCode:83,key:"s",code:"KeyS"},t:{keyCode:84,key:"t",code:"KeyT"},u:{keyCode:85,key:"u",code:"KeyU"},v:{keyCode:86,key:"v",code:"KeyV"},w:{keyCode:87,key:"w",code:"KeyW"},x:{keyCode:88,key:"x",code:"KeyX"},y:{keyCode:89,key:"y",code:"KeyY"},z:{keyCode:90,key:"z",code:"KeyZ"},Meta:{keyCode:91,key:"Meta",code:"MetaLeft",location:1},"*":{keyCode:106,key:"*",code:"NumpadMultiply",location:3},"+":{keyCode:107,key:"+",code:"NumpadAdd",location:3},"-":{keyCode:109,key:"-",code:"NumpadSubtract",location:3},"/":{keyCode:111,key:"/",code:"NumpadDivide",location:3},";":{keyCode:186,key:";",code:"Semicolon"},"=":{keyCode:187,key:"=",code:"Equal"},",":{keyCode:188,key:",",code:"Comma"},".":{keyCode:190,key:".",code:"Period"},"`":{keyCode:192,key:"`",code:"Backquote"},"[":{keyCode:219,key:"[",code:"BracketLeft"},"\\":{keyCode:220,key:"\\",code:"Backslash"},"]":{keyCode:221,key:"]",code:"BracketRight"},"'":{keyCode:222,key:"'",code:"Quote"},Attn:{keyCode:246,key:"Attn"},CrSel:{keyCode:247,key:"CrSel",code:"Props"},ExSel:{keyCode:248,key:"ExSel"},EraseEof:{keyCode:249,key:"EraseEof"},Play:{keyCode:250,key:"Play"},ZoomOut:{keyCode:251,key:"ZoomOut"},")":{keyCode:48,key:")",code:"Digit0"},"!":{keyCode:49,key:"!",code:"Digit1"},"@":{keyCode:50,key:"@",code:"Digit2"},"#":{keyCode:51,key:"#",code:"Digit3"},$:{keyCode:52,key:"$",code:"Digit4"},"%":{keyCode:53,key:"%",code:"Digit5"},"^":{keyCode:54,key:"^",code:"Digit6"},"&":{keyCode:55,key:"&",code:"Digit7"},"(":{keyCode:57,key:"(",code:"Digit9"},A:{keyCode:65,key:"A",code:"KeyA"},B:{keyCode:66,key:"B",code:"KeyB"},C:{keyCode:67,key:"C",code:"KeyC"},D:{keyCode:68,key:"D",code:"KeyD"},E:{keyCode:69,key:"E",code:"KeyE"},F:{keyCode:70,key:"F",code:"KeyF"},G:{keyCode:71,key:"G",code:"KeyG"},H:{keyCode:72,key:"H",code:"KeyH"},I:{keyCode:73,key:"I",code:"KeyI"},J:{keyCode:74,key:"J",code:"KeyJ"},K:{keyCode:75,key:"K",code:"KeyK"},L:{keyCode:76,key:"L",code:"KeyL"},M:{keyCode:77,key:"M",code:"KeyM"},N:{keyCode:78,key:"N",code:"KeyN"},O:{keyCode:79,key:"O",code:"KeyO"},P:{keyCode:80,key:"P",code:"KeyP"},Q:{keyCode:81,key:"Q",code:"KeyQ"},R:{keyCode:82,key:"R",code:"KeyR"},S:{keyCode:83,key:"S",code:"KeyS"},T:{keyCode:84,key:"T",code:"KeyT"},U:{keyCode:85,key:"U",code:"KeyU"},V:{keyCode:86,key:"V",code:"KeyV"},W:{keyCode:87,key:"W",code:"KeyW"},X:{keyCode:88,key:"X",code:"KeyX"},Y:{keyCode:89,key:"Y",code:"KeyY"},Z:{keyCode:90,key:"Z",code:"KeyZ"},":":{keyCode:186,key:":",code:"Semicolon"},"<":{keyCode:188,key:"<",code:"Comma"},_:{keyCode:189,key:"_",code:"Minus"},">":{keyCode:190,key:">",code:"Period"},"?":{keyCode:191,key:"?",code:"Slash"},"~":{keyCode:192,key:"~",code:"Backquote"},"{":{keyCode:219,key:"{",code:"BracketLeft"},"|":{keyCode:220,key:"|",code:"Backslash"},"}":{keyCode:221,key:"}",code:"BracketRight"},'"':{keyCode:222,key:"\"",code:"Quote"},SoftLeft:{key:"SoftLeft",code:"SoftLeft",location:4},SoftRight:{key:"SoftRight",code:"SoftRight",location:4},Camera:{keyCode:44,key:"Camera",code:"Camera",location:4},Call:{key:"Call",code:"Call",location:4},EndCall:{keyCode:95,key:"EndCall",code:"EndCall",location:4},VolumeDown:{keyCode:182,key:"VolumeDown",code:"VolumeDown",location:4},VolumeUp:{keyCode:183,key:"VolumeUp",code:"VolumeUp",location:4}}},41418:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WebWorker=void 0;const n=r(2680),a=r(47674),o=r(59574),i=r(79272);class s extends n.EventEmitter{constructor(e,t,r,n){super(),this._client=e,this._url=t,this._executionContextPromise=new Promise(e=>this._executionContextCallback=e);let s;this._client.once("Runtime.executionContextCreated",async t=>{s=t=>new i.JSHandle(r,e,t);const r=new o.ExecutionContext(e,t.context,null);this._executionContextCallback(r)}),this._client.send("Runtime.enable").catch(a.debugError),this._client.on("Runtime.consoleAPICalled",e=>r(e.type,e.args.map(s),e.stackTrace)),this._client.on("Runtime.exceptionThrown",e=>n(e.exceptionDetails))}url(){return this._url}async executionContext(){return this._executionContextPromise}async evaluate(e,...t){return(await this._executionContextPromise).evaluate(e,...t)}async evaluateHandle(e,...t){return(await this._executionContextPromise).evaluateHandle(e,...t)}}t.WebWorker=s},85668:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.assert=void 0,t.assert=(e,t)=>{if(!e)throw new Error(t)}},84763:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),a=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e["default"]=t}),o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!=r&&Object.hasOwnProperty.call(e,r)&&n(t,e,r);return a(t,e),t};Object.defineProperty(t,"__esModule",{value:!0}),t.getFetch=void 0;const i=r(23222);t.getFetch=async()=>i.isNode?await Promise.resolve().then(()=>o(r(22434))):globalThis.fetch},47674:function(e,t,r){"use strict";function n(e,t,r){return e.on(t,r),{emitter:e,eventName:t,handler:r}}function a(e){for(const t of e)t.emitter.removeListener(t.eventName,t.handler);e.length=0}function o(e){return"string"==typeof e||e instanceof String}function i(e,...t){return o(e)?(m.assert(0===t.length,"Cannot evaluate a string with arguments"),e):`(${e})(${t.map(function(e){return Object.is(e,void 0)?"undefined":JSON.stringify(e)}).join(",")})`}async function s(){if(!g.isNode)throw new Error("Cannot load the fs module API outside of Node.");const e=await Promise.resolve().then(()=>p(r(35747)));return e.promises?e:e.default}var l=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),d=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e["default"]=t}),p=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!=r&&Object.hasOwnProperty.call(e,r)&&l(t,e,r);return d(t,e),t};Object.defineProperty(t,"__esModule",{value:!0}),t.helper=t.debugError=void 0;const c=r(29554),u=r(49259),m=r(85668),g=r(23222);t.debugError=u.debug("puppeteer:error"),t.helper={evaluationString:i,pageBindingInitString:function(e,t){return i(function(e,t){const r=window,n=r[t];r[t]=(...r)=>{const a=window[t];let o=a.callbacks;o||(o=new Map,a.callbacks=o);const i=(a.lastSeq||0)+1;a.lastSeq=i;const s=new Promise((e,t)=>o.set(i,{resolve:e,reject:t}));return n(JSON.stringify({type:e,name:t,seq:i,args:r})),s}},e,t)},pageBindingDeliverResultString:function(e,t,r){return i(function(e,t,r){window[e].callbacks.get(t).resolve(r),window[e].callbacks.delete(t)},e,t,r)},pageBindingDeliverErrorString:function(e,t,r,n){return i(function(e,t,r,n){const a=new Error(r);a.stack=n,window[e].callbacks.get(t).reject(a),window[e].callbacks.delete(t)},e,t,r,n)},pageBindingDeliverErrorValueString:function(e,t,r){return i(function(e,t,r){window[e].callbacks.get(t).reject(r),window[e].callbacks.delete(t)},e,t,r)},makePredicateString:function(e,t){const r=t?`const predicateQueryHandler = ${t};`:"";return` (() => { ${r} const checkWaitForOptions = ${function(e,t,r){if(!e)return r;if(!t&&!r)return e;const n=e.nodeType===Node.TEXT_NODE?e.parentElement:e,a=window.getComputedStyle(n),o=a&&"hidden"!==a.visibility&&function(){const e=n.getBoundingClientRect();return!!(e.top||e.bottom||e.width||e.height)}();return t===o||r===!o?e:null}}; return (${e})(...args) })() `},readProtocolStream:async function(e,t,r){if(!g.isNode&&r)throw new Error("Cannot write to a path outside of Node.js environment.");const n=g.isNode?await s():null;let a=!1,o;r&&n&&(o=await n.promises.open(r,"w"));const i=[];for(;!a;){const s=await e.send("IO.read",{handle:t});a=s.eof;const l=Buffer.from(s.data,s.base64Encoded?"base64":void 0);i.push(l),r&&n&&(await n.promises.writeFile(o,l))}r&&(await o.close()),await e.send("IO.close",{handle:t});let l=null;try{l=Buffer.concat(i)}finally{return l}},waitWithTimeout:async function(e,t,r){let n;const a=new c.TimeoutError(`waiting for ${t} failed: timeout ${r}ms exceeded`),o=new Promise((e,t)=>n=t);let i=null;r&&(i=setTimeout(()=>n(a),r));try{return await Promise.race([e,o])}finally{i&&clearTimeout(i)}},waitForEvent:async function(e,t,r,o,i){function s(){a([m]),clearTimeout(l)}let l,d,p;const u=new Promise((e,t)=>{d=e,p=t}),m=n(e,t,e=>{r(e)&&d(e)});o&&(l=setTimeout(()=>{p(new c.TimeoutError("Timeout exceeded while waiting for event"))},o));const g=await Promise.race([u,i]).then(e=>(s(),e),e=>{throw s(),e});if(g instanceof Error)throw g;return g},isString:o,isNumber:function(e){return"number"==typeof e||e instanceof Number},importFSModule:s,addEventListener:n,removeEventListeners:a,valueFromRemoteObject:function(e){if(m.assert(!e.objectId,"Cannot extract value when objectId is given"),e.unserializableValue){if("bigint"===e.type&&"undefined"!=typeof BigInt)return BigInt(e.unserializableValue.replace("n",""));switch(e.unserializableValue){case"-0":return-0;case"NaN":return NaN;case"Infinity":return 1/0;case"-Infinity":return-Infinity;default:throw new Error("Unsupported unserializable value: "+e.unserializableValue);}}return e.value},getExceptionMessage:function(e){if(e.exception)return e.exception.description||e.exception.value;let t=e.text;if(e.stackTrace)for(const r of e.stackTrace.callFrames){const e=r.url+":"+r.lineNumber+":"+r.columnNumber,n=r.functionName||"";t+=`\n at ${n} (${e})`}return t},releaseObject:async function(e,r){r.objectId&&(await e.send("Runtime.releaseObject",{objectId:r.objectId}).catch(e=>{t.debugError(e)}))}}},23222:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isNode=void 0,t.isNode=!!("undefined"!=typeof process&&process.versions&&process.versions.node)},80527:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.initializePuppeteerNode=void 0;const a=r(9323),o=r(14148),i=n(r(10837));t.initializePuppeteerNode=e=>{const t=i.default.sync(__dirname);let r=o.PUPPETEER_REVISIONS.chromium;const n="puppeteer-core"===e,s=n?void 0:process.env.PUPPETEER_PRODUCT||process.env.npm_config_puppeteer_product||process.env.npm_package_config_puppeteer_product;return n||"firefox"!==s||(r=o.PUPPETEER_REVISIONS.firefox),new a.PuppeteerNode({projectRoot:t,preferredRevision:r,isPuppeteerCore:n,productName:s})}},90176:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n=r(80527),a=r(23222);if(!a.isNode)throw new Error("Trying to run Puppeteer-Node in a web environment.");t.default=n.initializePuppeteerNode("puppeteer")},77463:function(e,t,r){"use strict";function n(e,t,r){if("chrome"===e){if("linux"===t)return"chrome-linux";if("mac"===t)return"chrome-mac";if("win32"===t||"win64"===t)return 591479{b.access(e,e=>t(!e))})}function s(e,t){const r=S.basename(t),n=r.split("-");if(2!==n.length)return null;const[a,o]=n;return R[e][a]?{product:e,platform:a,revision:o}:null}function l(e,t,r){function n(e){a+=e.length,r(a,o)}z(`Downloading binary from ${e}`);let a=0,o=0,i,s;const l=new Promise((e,t)=>{i=e,s=t}),d=u(e,"GET",a=>{if(200!==a.statusCode){const t=new Error(`Download failed: server returned code ${a.statusCode}. URL: ${e}`);return a.resume(),void s(t)}const l=b.createWriteStream(t);l.on("finish",()=>i()),l.on("error",e=>s(e)),a.pipe(l),o=parseInt(a.headers["content-length"],10),r&&a.on("data",n)});return d.on("error",e=>s(e)),l}function d(e,t){if(z(`Installing ${e} to ${t}`),e.endsWith(".zip"))return w.default(e,{dir:t});if(e.endsWith(".tar.bz2"))return p(e,t);if(e.endsWith(".dmg"))return W(t).then(()=>c(e,t));throw new Error(`Unsupported archive format: ${e}`)}function p(e,t){const n=r(16974),a=r(1650);return new Promise((r,o)=>{const i=n.extract(t);i.on("error",o),i.on("finish",r);const s=b.createReadStream(e);s.pipe(a()).pipe(i)})}function c(e,t){function r(){if(n){const e=`hdiutil detach "${n}" -quiet`;z(`Unmounting ${n}`),v.exec(e,e=>{e&&console.error(`Error unmounting dmg: ${e}`)})}}let n;return new Promise(function(r,a){v.exec(`hdiutil attach -nobrowse -noautoopen "${e}"`,(e,o)=>{if(e)return a(e);const i=o.match(/\/Volumes\/(.*)/m);return i?void(n=i[0],I(n).then(e=>{const o=e.filter(e=>"string"==typeof e&&e.endsWith(".app"))[0];if(!o)return a(new Error(`Cannot find app in ${n}`));const i=S.join(n,o);z(`Copying ${i} to ${t}`),v.exec(`cp -R "${i}" "${t}"`,e=>{e?a(e):r()})}).catch(a)):a(new Error(`Could not find volume path in ${o}`))})}).catch(e=>{console.error(e)}).finally(r)}function u(e,t,r){const n=A.parse(e);let a={...n,method:t};const o=P.getProxyForUrl(e);if(o)if(e.startsWith("http:")){const e=A.parse(o);a={path:a.href,host:e.hostname,port:e.port}}else{const e=A.parse(o),t={...e,secureProxy:"https:"===e.protocol};a.agent=new O.default(t),a.rejectUnauthorized=!1}const i=e=>{300<=e.statusCode&&400>e.statusCode&&e.headers.location?u(e.headers.location,t,r):r(e)},s="https:"===a.protocol?k.request(a,i):C.request(a,i);return s.end(),s}var m=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),g=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e["default"]=t}),h=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!=r&&Object.hasOwnProperty.call(e,r)&&m(t,e,r);return g(t,e),t},f=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.BrowserFetcher=void 0;const y=h(r(12087)),b=h(r(35747)),S=h(r(85622)),x=h(r(31669)),v=h(r(63129)),k=h(r(57211)),C=h(r(98605)),w=f(r(46909)),_=r(49259),T=r(31669),E=f(r(41238)),A=h(r(78835)),O=f(r(75782)),P=r(10208),L=r(85668),z=_.debug(`puppeteer:fetcher`),R={chrome:{linux:"%s/chromium-browser-snapshots/Linux_x64/%d/%s.zip",mac:"%s/chromium-browser-snapshots/Mac/%d/%s.zip",win32:"%s/chromium-browser-snapshots/Win/%d/%s.zip",win64:"%s/chromium-browser-snapshots/Win_x64/%d/%s.zip"},firefox:{linux:"%s/firefox-%s.en-US.%s-x86_64.tar.bz2",mac:"%s/firefox-%s.en-US.%s.dmg",win32:"%s/firefox-%s.en-US.%s.zip",win64:"%s/firefox-%s.en-US.%s.zip"}},M={chrome:{host:"https://storage.googleapis.com",destination:".local-chromium"},firefox:{host:"https://archive.mozilla.org/pub/firefox/nightly/latest-mozilla-central",destination:".local-firefox"}},I=T.promisify(b.readdir.bind(b)),W=T.promisify(b.mkdir.bind(b)),q=T.promisify(b.unlink.bind(b)),B=T.promisify(b.chmod.bind(b));t.BrowserFetcher=class e{constructor(e,t={}){this._product=(t.product||"chrome").toLowerCase(),L.assert("chrome"===this._product||"firefox"===this._product,`Unknown product: "${t.product}"`),this._downloadsFolder=t.path||S.join(e,M[this._product].destination),this._downloadHost=t.host||M[this._product].host,this.setPlatform(t.platform),L.assert(R[this._product][this._platform],"Unsupported platform: "+this._platform)}setPlatform(e){if(e)return void(this._platform=e);const t=y.platform();"darwin"===t?this._platform="mac":"linux"===t?this._platform="linux":"win32"===t?this._platform="x64"===y.arch()?"win64":"win32":L.assert(this._platform,"Unsupported platform: "+y.platform())}platform(){return this._platform}product(){return this._product}host(){return this._downloadHost}canDownload(e){const t=a(this._product,this._platform,this._downloadHost,e);return new Promise(e=>{const r=u(t,"HEAD",t=>{e(200===t.statusCode)});r.on("error",t=>{console.error(t),e(!1)})})}async download(e,t=()=>{}){const r=a(this._product,this._platform,this._downloadHost,e),n=r.split("/").pop(),s=S.join(this._downloadsFolder,n),p=this._getFolderPath(e);if(await i(p))return this.revisionInfo(e);if((await i(this._downloadsFolder))||(await W(this._downloadsFolder)),"arm64"===y.arch())return void o();try{await l(r,s,t),await d(s,p)}finally{(await i(s))&&(await q(s))}const c=this.revisionInfo(e);return c&&(await B(c.executablePath,493)),c}async localRevisions(){if(!(await i(this._downloadsFolder)))return[];const e=await I(this._downloadsFolder);return e.map(e=>s(this._product,e)).filter(e=>e&&e.platform===this._platform).map(e=>e.revision)}async remove(e){const t=this._getFolderPath(e);L.assert(await i(t),`Failed to remove: revision ${e} is not downloaded`),await new Promise(e=>E.default(t,e))}revisionInfo(e){const t=this._getFolderPath(e);let r="";if("chrome"===this._product){if("mac"===this._platform)r=S.join(t,n(this._product,this._platform,e),"Chromium.app","Contents","MacOS","Chromium");else if("linux"===this._platform)r=S.join(t,n(this._product,this._platform,e),"chrome");else if("win32"===this._platform||"win64"===this._platform)r=S.join(t,n(this._product,this._platform,e),"chrome.exe");else throw new Error("Unsupported platform: "+this._platform);}else if("firefox"!==this._product)throw new Error("Unsupported product: "+this._product);else if("mac"===this._platform)r=S.join(t,"Firefox Nightly.app","Contents","MacOS","firefox");else if("linux"===this._platform)r=S.join(t,"firefox","firefox");else if("win32"===this._platform||"win64"===this._platform)r=S.join(t,"firefox","firefox.exe");else throw new Error("Unsupported platform: "+this._platform);const o=a(this._product,this._platform,this._downloadHost,e),i=b.existsSync(t);return z({revision:e,executablePath:r,folderPath:t,local:i,url:o,product:this._product}),{revision:e,executablePath:r,folderPath:t,local:i,url:o,product:this._product}}_getFolderPath(e){return S.join(this._downloadsFolder,this._platform+"-"+e)}}},15228:function(e,t,r){"use strict";function n(e,t,r){return new Promise((n,a)=>{function o(e){i(),a(new Error(["Failed to launch the browser process!"+(e?" "+e.message:""),l,"","TROUBLESHOOTING: https://github.com/puppeteer/puppeteer/blob/main/docs/troubleshooting.md",""].join("\n")))}function i(){p&&clearTimeout(p),u.helper.removeEventListeners(d)}const s=f.createInterface({input:e.stderr});let l="";const d=[u.helper.addEventListener(s,"line",function(e){l+=e+"\n";const t=e.match(/^DevTools listening on (ws:\/\/.*)$/);t&&(i(),n(t[1]))}),u.helper.addEventListener(s,"close",()=>o()),u.helper.addEventListener(e,"exit",()=>o()),u.helper.addEventListener(e,"error",e=>o(e))],p=t?setTimeout(function(){i(),a(new y.TimeoutError(`Timed out after ${t} ms while trying to connect to the browser! Only Chrome at revision r${r} is guaranteed to work.`))},t):0})}var a=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),o=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e["default"]=t}),i=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!=r&&Object.hasOwnProperty.call(e,r)&&a(t,e,r);return o(t,e),t},s=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.BrowserRunner=void 0;const l=r(49259),d=s(r(41238)),p=i(r(63129)),c=r(85668),u=r(47674),m=r(58602),g=r(17662),h=r(81385),f=i(r(51058)),y=r(29554),b=r(31669),S=b.promisify(d.default),x=l.debug("puppeteer:launcher");t.BrowserRunner=class e{constructor(e,t,r){this.proc=null,this.connection=null,this._closed=!0,this._listeners=[],this._executablePath=e,this._processArguments=t,this._tempDirectory=r}start(e){const{handleSIGINT:t,handleSIGTERM:r,handleSIGHUP:n,dumpio:a,env:o,pipe:i}=e;let s=["pipe","pipe","pipe"];i&&(a?s=["ignore","pipe","pipe","pipe","pipe"]:s=["ignore","ignore","ignore","pipe","pipe"]),c.assert(!this.proc,"This process has previously been started."),x(`Calling ${this._executablePath} ${this._processArguments.join(" ")}`),this.proc=p.spawn(this._executablePath,this._processArguments,{detached:"win32"!==process.platform,env:o,stdio:s}),a&&(this.proc.stderr.pipe(process.stderr),this.proc.stdout.pipe(process.stdout)),this._closed=!1,this._processClosing=new Promise(e=>{this.proc.once("exit",()=>{this._closed=!0,this._tempDirectory?S(this._tempDirectory).then(()=>e()).catch(e=>console.error(e)):e()})}),this._listeners=[u.helper.addEventListener(process,"exit",this.kill.bind(this))],t&&this._listeners.push(u.helper.addEventListener(process,"SIGINT",()=>{this.kill(),process.exit(130)})),r&&this._listeners.push(u.helper.addEventListener(process,"SIGTERM",this.close.bind(this))),n&&this._listeners.push(u.helper.addEventListener(process,"SIGHUP",this.close.bind(this)))}close(){return this._closed?Promise.resolve():(this._tempDirectory?this.kill():this.connection&&this.connection.send("Browser.close").catch(e=>{u.debugError(e),this.kill()}),u.helper.removeEventListeners(this._listeners),this._processClosing)}kill(){try{d.default.sync(this._tempDirectory)}catch(e){}if(this.proc&&this.proc.pid&&!this.proc.killed)try{this.proc.kill("SIGKILL")}catch(e){throw new Error(`${`Puppeteer was unable to kill the process which ran the browser binary. This means that, on future Puppeteer launches, Puppeteer might not be able to launch the browser. Please check your open processes and ensure that the browser processes that Puppeteer launched have been killed. If you think this is a bug, please report it on the Puppeteer issue tracker.`}\nError cause: ${e.stack}`)}u.helper.removeEventListeners(this._listeners)}async setupConnection(e){const{usePipe:t,timeout:r,slowMo:a,preferredRevision:o}=e;if(!t){const e=await n(this.proc,r,o),t=await g.NodeWebSocketTransport.create(e);this.connection=new m.Connection(e,t,a)}else{const{3:e,4:t}=this.proc.stdio,r=new h.PipeTransport(e,t);this.connection=new m.Connection("",r,a)}return this.connection}}},93935:function(e,t,r){"use strict";function n(e){let t;if(!e._isPuppeteerCore){const e=process.env.PUPPETEER_EXECUTABLE_PATH||process.env.npm_config_puppeteer_executable_path||process.env.npm_package_config_puppeteer_executable_path;if(e){const t=d.existsSync(e)?null:"Tried to use PUPPETEER_EXECUTABLE_PATH env variable to launch browser but did not find any executable at: "+e;return{executablePath:e,missingText:t}}t=process.env.PUPPETEER_DOWNLOAD_PATH||process.env.npm_config_puppeteer_download_path||process.env.npm_package_config_puppeteer_download_path}const r=new p.BrowserFetcher(e._projectRoot,{product:e.product,path:t});if(!e._isPuppeteerCore&&"chrome"===e.product){const e=process.env.PUPPETEER_CHROMIUM_REVISION;if(e){const t=r.revisionInfo(e),n=t.local?null:"Tried to use PUPPETEER_CHROMIUM_REVISION env variable to launch browser but did not find executable at: "+t.executablePath;return{executablePath:t.executablePath,missingText:n}}}const n=r.revisionInfo(e._preferredRevision),a=n.local?null:`Could not find browser revision ${e._preferredRevision}. Run "PUPPETEER_PRODUCT=firefox npm install" or "PUPPETEER_PRODUCT=firefox yarn install" to download a supported Firefox browser binary.`;return{executablePath:n.executablePath,missingText:a}}var a=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),o=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e["default"]=t}),i=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!=r&&Object.hasOwnProperty.call(e,r)&&a(t,e,r);return o(t,e),t};Object.defineProperty(t,"__esModule",{value:!0});const s=i(r(12087)),l=i(r(85622)),d=i(r(35747)),p=r(77463),c=r(10487),u=r(15228),m=r(31669),g=m.promisify(d.mkdtemp),h=m.promisify(d.writeFile);class f{constructor(e,t,r){this._projectRoot=e,this._preferredRevision=t,this._isPuppeteerCore=r}async launch(e={}){const{ignoreDefaultArgs:t=!1,args:r=[],dumpio:a=!1,executablePath:o=null,pipe:i=!1,env:d=process.env,handleSIGINT:p=!0,handleSIGTERM:m=!0,handleSIGHUP:h=!0,ignoreHTTPSErrors:f=!1,defaultViewport:y={width:800,height:600},slowMo:b=0,timeout:S=3e4}=e,x=l.join(s.tmpdir(),"puppeteer_dev_chrome_profile-"),v=[];t?Array.isArray(t)?v.push(...this.defaultArgs(e).filter(e=>!t.includes(e))):v.push(...r):v.push(...this.defaultArgs(e));let k=null;v.some(e=>e.startsWith("--remote-debugging-"))||v.push(i?"--remote-debugging-pipe":"--remote-debugging-port=0"),v.some(e=>e.startsWith("--user-data-dir"))||(k=await g(x),v.push(`--user-data-dir=${k}`));let C=o;if("arm64"===s.arch())C="/usr/bin/chromium-browser";else if(!o){const{missingText:e,executablePath:t}=n(this);if(e)throw new Error(e);C=t}const w=v.includes("--remote-debugging-pipe"),_=new u.BrowserRunner(C,v,k);_.start({handleSIGHUP:h,handleSIGTERM:m,handleSIGINT:p,dumpio:a,env:d,pipe:w});try{const e=await _.setupConnection({usePipe:w,timeout:S,slowMo:b,preferredRevision:this._preferredRevision}),t=await c.Browser.create(e,[],f,y,_.proc,_.close.bind(_));return await t.waitForTarget(e=>"page"===e.type()),t}catch(e){throw _.kill(),e}}defaultArgs(e={}){const t=["--disable-background-networking","--enable-features=NetworkService,NetworkServiceInProcess","--disable-background-timer-throttling","--disable-backgrounding-occluded-windows","--disable-breakpad","--disable-client-side-phishing-detection","--disable-component-extensions-with-background-pages","--disable-default-apps","--disable-dev-shm-usage","--disable-extensions","--disable-features=TranslateUI","--disable-hang-monitor","--disable-ipc-flooding-protection","--disable-popup-blocking","--disable-prompt-on-repost","--disable-renderer-backgrounding","--disable-sync","--force-color-profile=srgb","--metrics-recording-only","--no-first-run","--enable-automation","--password-store=basic","--use-mock-keychain","--enable-blink-features=IdleDetection"],{devtools:r=!1,headless:n=!r,args:a=[],userDataDir:o=null}=e;return o&&t.push(`--user-data-dir=${l.resolve(o)}`),r&&t.push("--auto-open-devtools-for-tabs"),n&&t.push("--headless","--hide-scrollbars","--mute-audio"),a.every(e=>e.startsWith("-"))&&t.push("about:blank"),t.push(...a),t}executablePath(){return n(this).executablePath}get product(){return"chrome"}}class y{constructor(e,t,r){this._projectRoot=e,this._preferredRevision=t,this._isPuppeteerCore=r}async launch(e={}){const{ignoreDefaultArgs:t=!1,args:r=[],dumpio:a=!1,executablePath:o=null,pipe:i=!1,env:s=process.env,handleSIGINT:l=!0,handleSIGTERM:d=!0,handleSIGHUP:p=!0,ignoreHTTPSErrors:m=!1,defaultViewport:g={width:800,height:600},slowMo:h=0,timeout:f=3e4,extraPrefsFirefox:y={}}=e,b=[];t?Array.isArray(t)?b.push(...this.defaultArgs(e).filter(e=>!t.includes(e))):b.push(...r):b.push(...this.defaultArgs(e)),b.some(e=>e.startsWith("--remote-debugging-"))||b.push("--remote-debugging-port=0");let S=null;b.includes("-profile")||b.includes("--profile")||(S=await this._createProfile(y),b.push("--profile"),b.push(S)),await this._updateRevision();let x=o;if(!o){const{missingText:e,executablePath:t}=n(this);if(e)throw new Error(e);x=t}const v=new u.BrowserRunner(x,b,S);v.start({handleSIGHUP:p,handleSIGTERM:d,handleSIGINT:l,dumpio:a,env:s,pipe:i});try{const e=await v.setupConnection({usePipe:i,timeout:f,slowMo:h,preferredRevision:this._preferredRevision}),t=await c.Browser.create(e,[],m,g,v.proc,v.close.bind(v));return await t.waitForTarget(e=>"page"===e.type()),t}catch(e){throw v.kill(),e}}executablePath(){return n(this).executablePath}async _updateRevision(){if("latest"===this._preferredRevision){const e=new p.BrowserFetcher(this._projectRoot,{product:this.product}),t=await e.localRevisions();t[0]&&(this._preferredRevision=t[0])}}get product(){return"firefox"}defaultArgs(e={}){const t=["--no-remote","--foreground"];s.platform().startsWith("win")&&t.push("--wait-for-browser");const{devtools:r=!1,headless:n=!r,args:a=[],userDataDir:o=null}=e;return o&&(t.push("--profile"),t.push(o)),n&&t.push("--headless"),r&&t.push("--devtools"),a.every(e=>e.startsWith("-"))&&t.push("about:blank"),t.push(...a),t}async _createProfile(e){const t=await g(l.join(s.tmpdir(),"puppeteer_dev_firefox_profile-")),r=[],n="dummy.test",a={"app.normandy.api_url":"","app.update.checkInstallTime":!1,"app.update.disabledForTesting":!0,"apz.content_response_timeout":6e4,"browser.contentblocking.features.standard":"-tp,tpPrivate,cookieBehavior0,-cm,-fp","browser.dom.window.dump.enabled":!0,"browser.newtabpage.activity-stream.feeds.system.topstories":!1,"browser.newtabpage.enabled":!1,"browser.pagethumbnails.capturing_disabled":!0,"browser.safebrowsing.blockedURIs.enabled":!1,"browser.safebrowsing.downloads.enabled":!1,"browser.safebrowsing.malware.enabled":!1,"browser.safebrowsing.passwords.enabled":!1,"browser.safebrowsing.phishing.enabled":!1,"browser.search.update":!1,"browser.sessionstore.resume_from_crash":!1,"browser.shell.checkDefaultBrowser":!1,"browser.startup.homepage":"about:blank","browser.startup.homepage_override.mstone":"ignore","browser.startup.page":0,"browser.tabs.disableBackgroundZombification":!1,"browser.tabs.warnOnCloseOtherTabs":!1,"browser.tabs.warnOnOpen":!1,"browser.uitour.enabled":!1,"browser.urlbar.suggest.searches":!1,"browser.usedOnWindows10.introURL":"","browser.warnOnQuit":!1,"datareporting.healthreport.documentServerURI":`http://${n}/dummy/healthreport/`,"datareporting.healthreport.logging.consoleEnabled":!1,"datareporting.healthreport.service.enabled":!1,"datareporting.healthreport.service.firstRun":!1,"datareporting.healthreport.uploadEnabled":!1,"datareporting.policy.dataSubmissionEnabled":!1,"datareporting.policy.dataSubmissionPolicyBypassNotification":!0,"devtools.jsonview.enabled":!1,"dom.disable_open_during_load":!1,"dom.file.createInChild":!0,"dom.ipc.reportProcessHangs":!1,"dom.max_chrome_script_run_time":0,"dom.max_script_run_time":0,"extensions.autoDisableScopes":0,"extensions.enabledScopes":5,"extensions.getAddons.cache.enabled":!1,"extensions.installDistroAddons":!1,"extensions.screenshots.disabled":!0,"extensions.update.enabled":!1,"extensions.update.notifyUser":!1,"extensions.webservice.discoverURL":`http://${n}/dummy/discoveryURL`,"focusmanager.testmode":!0,"general.useragent.updates.enabled":!1,"geo.provider.testing":!0,"geo.wifi.scan":!1,"hangmonitor.timeout":0,"javascript.options.showInConsole":!0,"media.gmp-manager.updateEnabled":!1,"network.cookie.cookieBehavior":0,"network.http.prompt-temp-redirect":!1,"network.http.speculative-parallel-limit":0,"network.manage-offline-status":!1,"network.sntp.pools":n,"plugin.state.flash":0,"privacy.trackingprotection.enabled":!1,"remote.enabled":!0,"security.certerrors.mitm.priming.enabled":!1,"security.fileuri.strict_origin_policy":!1,"security.notification_enable_delay":0,"services.settings.server":`http://${n}/dummy/blocklist/`,"signon.autofillForms":!1,"signon.rememberSignons":!1,"startup.homepage_welcome_url":"about:blank","startup.homepage_welcome_url.additional":"","toolkit.cosmeticAnimations.enabled":!1,"toolkit.startup.max_resumed_crashes":-1};Object.assign(a,e);for(const[t,n]of Object.entries(a))r.push(`user_pref(${JSON.stringify(t)}, ${JSON.stringify(n)});`);return await h(l.join(t,"user.js"),r.join("\n")),await h(l.join(t,"prefs.js"),[].join("\n")),t}}t.default=function(e,t,r,n){switch(n||r||(n=process.env.PUPPETEER_PRODUCT||process.env.npm_config_puppeteer_product||process.env.npm_package_config_puppeteer_product),n){case"firefox":return new y(e,t,r);case"chrome":default:return"undefined"!=typeof n&&"chrome"!==n&&console.warn(`Warning: unknown product name ${n}. Falling back to chrome.`),new f(e,t,r);}}},17662:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.NodeWebSocketTransport=void 0;const a=n(r(89013));class o{constructor(e){this._ws=e,this._ws.addEventListener("message",e=>{this.onmessage&&this.onmessage.call(null,e.data)}),this._ws.addEventListener("close",()=>{this.onclose&&this.onclose.call(null)}),this._ws.addEventListener("error",()=>{}),this.onmessage=null,this.onclose=null}static create(e){return new Promise((t,r)=>{const n=new a.default(e,[],{perMessageDeflate:!1,maxPayload:268435456});n.addEventListener("open",()=>t(new o(n))),n.addEventListener("error",r)})}send(e){this._ws.send(e)}close(){this._ws.close()}}t.NodeWebSocketTransport=o},81385:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PipeTransport=void 0;const n=r(47674);t.PipeTransport=class e{constructor(e,t){this._pipeWrite=e,this._pendingMessage="",this._eventListeners=[n.helper.addEventListener(t,"data",e=>this._dispatch(e)),n.helper.addEventListener(t,"close",()=>{this.onclose&&this.onclose.call(null)}),n.helper.addEventListener(t,"error",n.debugError),n.helper.addEventListener(e,"error",n.debugError)],this.onmessage=null,this.onclose=null}send(e){this._pipeWrite.write(e),this._pipeWrite.write("\0")}_dispatch(e){let t=e.indexOf("\0");if(-1===t)return void(this._pendingMessage+=e.toString());const r=this._pendingMessage+e.toString(void 0,0,t);this.onmessage&&this.onmessage.call(null,r);let n=t+1;for(t=e.indexOf("\0",n);-1!==t;)this.onmessage&&this.onmessage.call(null,e.toString(void 0,n,t)),n=t+1,t=e.indexOf("\0",n);this._pendingMessage=e.toString(void 0,n)}close(){this._pipeWrite=null,n.helper.removeEventListeners(this._eventListeners)}}},9323:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.PuppeteerNode=void 0;const a=r(39006),o=r(77463),i=n(r(93935)),s=r(14148);class l extends a.Puppeteer{constructor(e){const{projectRoot:t,preferredRevision:r,productName:n,...a}=e;super(a),this._projectRoot=t,this.__productName=n,this._preferredRevision=r}connect(e){return e.product&&(this._productName=e.product),super.connect(e)}get _productName(){return this.__productName}set _productName(e){this.__productName!==e&&(this._changedProduct=!0),this.__productName=e}launch(e={}){return e.product&&(this._productName=e.product),this._launcher.launch(e)}executablePath(){return this._launcher.executablePath()}get _launcher(){if(!this._lazyLauncher||this._lazyLauncher.product!==this._productName||this._changedProduct){switch(this._productName){case"firefox":this._preferredRevision=s.PUPPETEER_REVISIONS.firefox;break;case"chrome":default:this._preferredRevision=s.PUPPETEER_REVISIONS.chromium;}this._changedProduct=!1,this._lazyLauncher=i.default(this._projectRoot,this._preferredRevision,this._isPuppeteerCore,this._productName)}return this._lazyLauncher}get product(){return this._launcher.product}defaultArgs(e={}){return this._launcher.defaultArgs(e)}createBrowserFetcher(e){return new o.BrowserFetcher(this._projectRoot,e)}}t.PuppeteerNode=l},14148:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PUPPETEER_REVISIONS=void 0,t.PUPPETEER_REVISIONS={chromium:"809590",firefox:"latest"}},78229:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return e=e||new Map,{all:e,on(t,r){const n=e.get(t),a=n&&n.push(r);a||e.set(t,[r])},off(t,r){const n=e.get(t);n&&n.splice(n.indexOf(r)>>>0,1)},emit(t,r){(e.get(t)||[]).slice().map(e=>{e(r)}),(e.get("*")||[]).slice().map(e=>{e(t,r)})}}}},41238:(e,t,r)=>{const a=r(42357),o=r(85622),i=r(35747);let s;try{s=r(88825)}catch(e){}const l={nosort:!0,silent:!0};let d=0;const c="win32"===process.platform,u=e=>{if(["unlink","chmod","stat","lstat","rmdir","readdir"].forEach(t=>{e[t]=e[t]||i[t],t+="Sync",e[t]=e[t]||i[t]}),e.maxBusyTries=e.maxBusyTries||3,e.emfileWait=e.emfileWait||1e3,!1===e.glob&&(e.disableGlob=!0),!0!==e.disableGlob&&void 0===s)throw Error("glob dependency not found, set `options.disableGlob = true` if intentional");e.disableGlob=e.disableGlob||!1,e.glob=e.glob||l},m=(e,t,r)=>{"function"==typeof t&&(r=t,t={}),a(e,"rimraf: missing path"),a.equal(typeof e,"string","rimraf: path should be a string"),a.equal(typeof r,"function","rimraf: callback function required"),a(t,"rimraf: invalid options argument provided"),a.equal(typeof t,"object","rimraf: options should be object"),u(t);let o=0,i=null,l=0;const c=e=>{i=i||e,0==--l&&r(i)},m=(e,n)=>e?r(e):(l=n.length,0===l?r():void n.forEach(e=>{const r=n=>{if(n){if(("EBUSY"===n.code||"ENOTEMPTY"===n.code||"EPERM"===n.code)&&og(e,t,r),100*o);if("EMFILE"===n.code&&dg(e,t,r),d++);"ENOENT"===n.code&&(n=null)}d=0,c(n)};g(e,t,r)}));return t.disableGlob||!s.hasMagic(e)?m(null,[e]):void t.lstat(e,r=>r?void s(e,t.glob,m):m(null,[e]))},g=(e,t,r)=>{a(e),a(t),a("function"==typeof r),t.lstat(e,(n,a)=>n&&"ENOENT"===n.code?r(null):(n&&"EPERM"===n.code&&c&&h(e,t,n,r),a&&a.isDirectory()?y(e,t,n,r):void t.unlink(e,n=>{if(n){if("ENOENT"===n.code)return r(null);if("EPERM"===n.code)return c?h(e,t,n,r):y(e,t,n,r);if("EISDIR"===n.code)return y(e,t,n,r)}return r(n)})))},h=(e,t,r,n)=>{a(e),a(t),a("function"==typeof n),t.chmod(e,438,a=>{a?n("ENOENT"===a.code?null:r):t.stat(e,(a,o)=>{a?n("ENOENT"===a.code?null:r):o.isDirectory()?y(e,t,r,n):t.unlink(e,n)})})},f=(e,t,r)=>{a(e),a(t);try{t.chmodSync(e,438)}catch(e){if("ENOENT"===e.code)return;throw r}let n;try{n=t.statSync(e)}catch(e){if("ENOENT"===e.code)return;throw r}n.isDirectory()?x(e,t,r):t.unlinkSync(e)},y=(e,t,r,n)=>{a(e),a(t),a("function"==typeof n),t.rmdir(e,a=>{a&&("ENOTEMPTY"===a.code||"EEXIST"===a.code||"EPERM"===a.code)?b(e,t,n):a&&"ENOTDIR"===a.code?n(r):n(a)})},b=(e,t,r)=>{a(e),a(t),a("function"==typeof r),t.readdir(e,(a,i)=>{if(a)return r(a);let s=i.length;if(0===s)return t.rmdir(e,r);let l;i.forEach(n=>{m(o.join(e,n),t,n=>l?void 0:n?r(l=n):void(0==--s&&t.rmdir(e,r)))})})},S=(e,t)=>{t=t||{},u(t),a(e,"rimraf: missing path"),a.equal(typeof e,"string","rimraf: path should be a string"),a(t,"rimraf: missing options"),a.equal(typeof t,"object","rimraf: options should be object");let r;if(t.disableGlob||!s.hasMagic(e))r=[e];else try{t.lstatSync(e),r=[e]}catch(n){r=s.sync(e,t.glob)}if(r.length)for(let e=0;e{a(e),a(t);try{t.rmdirSync(e)}catch(n){if("ENOENT"===n.code)return;if("ENOTDIR"===n.code)throw r;("ENOTEMPTY"===n.code||"EEXIST"===n.code||"EPERM"===n.code)&&v(e,t)}},v=(e,t)=>{a(e),a(t),t.readdirSync(e).forEach(r=>S(o.join(e,r),t));const r=c?100:1;let n=0;do{let a=!0;try{const r=t.rmdirSync(e,t);return a=!1,r}finally{if(++n{function n(e,t){for(var r in e)t[r]=e[r]}function a(e,t,r){return i(e,t,r)}var o=r(64293),i=o.Buffer;i.from&&i.alloc&&i.allocUnsafe&&i.allocUnsafeSlow?e.exports=o:(n(o,t),t.Buffer=a),n(i,a),a.from=function(e,t,r){if("number"==typeof e)throw new TypeError("Argument must not be a number");return i(e,t,r)},a.alloc=function(e,t,r){if("number"!=typeof e)throw new TypeError("Argument must be a number");var n=i(e);return void 0===t?n.fill(0):"string"==typeof r?n.fill(t,r):n.fill(t),n},a.allocUnsafe=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return i(e)},a.allocUnsafeSlow=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return o.SlowBuffer(e)}},25510:(e,t,r)=>{(function(t){var z=String.fromCodePoint;function n(e,r){if(!(this instanceof n))return new n(e,r);var a=this;o(a),a.q=a.c="",a.bufferCheckPosition=t.MAX_BUFFER_LENGTH,a.opt=r||{},a.opt.lowercase=a.opt.lowercase||a.opt.lowercasetags,a.looseCase=a.opt.lowercase?"toLowerCase":"toUpperCase",a.tags=[],a.closed=a.closedRoot=a.sawRoot=!1,a.tag=a.error=null,a.strict=!!e,a.noscript=!!(e||a.opt.noscript),a.state=F.BEGIN,a.strictEntities=a.opt.strictEntities,a.ENTITIES=a.strictEntities?Object.create(t.XML_ENTITIES):Object.create(t.ENTITIES),a.attribList=[],a.opt.xmlns&&(a.ns=Object.create(W)),a.trackPosition=!1!==a.opt.position,a.trackPosition&&(a.position=a.line=a.column=0),h(a,"onready")}function a(e){for(var r=_Mathmax(t.MAX_BUFFER_LENGTH,10),n=0,a=0,o=R.length,s;ar)switch(R[a]){case"textNode":y(e);break;case"cdata":f(e,"oncdata",e.cdata),e.cdata="";break;case"script":f(e,"onscript",e.script),e.script="";break;default:x(e,"Max buffer length exceeded: "+R[a]);}n=_Mathmax(n,s)}var l=t.MAX_BUFFER_LENGTH-n;e.bufferCheckPosition=l+e.position}function o(e){for(var t=0,r=R.length;t"===e||d(e)}function m(e,t){return e.test(t)}function g(e,t){return!m(e,t)}function h(e,t,r){e[t]&&e[t](r)}function f(e,t,r){e.textNode&&y(e),h(e,t,r)}function y(e){e.textNode=b(e.opt,e.textNode),e.textNode&&h(e,"ontext",e.textNode),e.textNode=""}function b(e,t){return e.trim&&(t=t.trim()),e.normalize&&(t=t.replace(/\s+/g," ")),t}function x(e,t){return y(e),e.trackPosition&&(t+="\nLine: "+e.line+"\nColumn: "+e.column+"\nChar: "+e.c),t=new Error(t),e.error=t,h(e,"onerror",t),e}function v(e){return e.sawRoot&&!e.closedRoot&&k(e,"Unclosed root tag"),e.state!==F.BEGIN&&e.state!==F.BEGIN_WHITESPACE&&e.state!==F.TEXT&&x(e,"Unexpected end"),y(e),e.c="",e.closed=!0,h(e,"onend"),n.call(e,e.strict,e.opt),e}function k(e,t){if("object"!=typeof e||!(e instanceof n))throw new Error("bad call to strictFail");e.strict&&x(e,t)}function C(e){e.strict||(e.tagName=e.tagName[e.looseCase]());var t=e.tags[e.tags.length-1]||e,r=e.tag={name:e.tagName,attributes:{}};e.opt.xmlns&&(r.ns=t.ns),e.attribList.length=0,f(e,"onopentagstart",r)}function w(e,t){var r=e.indexOf(":"),n=0>r?["",e]:e.split(":"),a=n[0],o=n[1];return t&&"xmlns"===e&&(a="xmlns",o=""),{prefix:a,local:o}}function _(e){if(e.strict||(e.attribName=e.attribName[e.looseCase]()),-1!==e.attribList.indexOf(e.attribName)||e.tag.attributes.hasOwnProperty(e.attribName))return void(e.attribName=e.attribValue="");if(e.opt.xmlns){var t=w(e.attribName,!0),r=t.prefix,n=t.local;if("xmlns"===r)if("xml"===n&&"http://www.w3.org/XML/1998/namespace"!==e.attribValue)k(e,"xml: prefix must be bound to http://www.w3.org/XML/1998/namespace\nActual: "+e.attribValue);else if("xmlns"===n&&"http://www.w3.org/2000/xmlns/"!==e.attribValue)k(e,"xmlns: prefix must be bound to http://www.w3.org/2000/xmlns/\nActual: "+e.attribValue);else{var a=e.tag,o=e.tags[e.tags.length-1]||e;a.ns===o.ns&&(a.ns=Object.create(o.ns)),a.ns[n]=e.attribValue}e.attribList.push([e.attribName,e.attribValue])}else e.tag.attributes[e.attribName]=e.attribValue,f(e,"onattribute",{name:e.attribName,value:e.attribValue});e.attribName=e.attribValue=""}function T(e,t){if(e.opt.xmlns){var r=e.tag,n=w(e.tagName);r.prefix=n.prefix,r.local=n.local,r.uri=r.ns[n.prefix]||"",r.prefix&&!r.uri&&(k(e,"Unbound namespace prefix: "+JSON.stringify(e.tagName)),r.uri=n.prefix);var o=e.tags[e.tags.length-1]||e;r.ns&&o.ns!==r.ns&&Object.keys(r.ns).forEach(function(t){f(e,"onopennamespace",{prefix:t,uri:r.ns[t]})});for(var s=0,d=e.attribList.length;s",e.tagName="",void(e.state=F.SCRIPT);f(e,"onscript",e.script),e.script=""}var r=e.tags.length,n=e.tagName;e.strict||(n=n[e.looseCase]());for(var a=n,o;r--&&(o=e.tags[r],o.name!==a);)k(e,"Unexpected close tag");if(0>r)return k(e,"Unmatched closing tag: "+e.tagName),e.textNode+="",void(e.state=F.TEXT);e.tagName=n;for(var l=e.tags.length,d;l-->r;){d=e.tag=e.tags.pop(),e.tagName=e.tag.name,f(e,"onclosetag",e.tagName);var p={};for(var c in d.ns)p[c]=d.ns[c];var i=e.tags[e.tags.length-1]||e;e.opt.xmlns&&d.ns!==i.ns&&Object.keys(d.ns).forEach(function(t){var r=d.ns[t];f(e,"onclosenamespace",{prefix:t,uri:r})})}0===r&&(e.closedRoot=!0),e.tagName=e.attribValue=e.attribName="",e.attribList.length=0,e.state=F.TEXT}function A(e){var t=e.entity,r=t.toLowerCase(),n="",a;return e.ENTITIES[t]?e.ENTITIES[t]:e.ENTITIES[r]?e.ENTITIES[r]:(t=r,"#"===t.charAt(0)&&("x"===t.charAt(1)?(t=t.slice(2),a=parseInt(t,16),n=a.toString(16)):(t=t.slice(1),a=parseInt(t,10),n=a.toString(10))),t=t.replace(/^0+/,""),isNaN(a)||n.toLowerCase()!==t?(k(e,"Invalid character entity"),"&"+e.entity+";"):z(a))}function O(e,t){"<"===t?(e.state=F.OPEN_WAKA,e.startTagPosition=e.position):!d(t)&&(k(e,"Non-whitespace before first tag."),e.textNode=t,e.state=F.TEXT)}function P(e,t){var r="";return t"===n?(f(t,"onsgmldeclaration",t.sgmlDecl),t.sgmlDecl="",t.state=F.TEXT):p(n)?(t.state=F.SGML_DECL_QUOTED,t.sgmlDecl+=n):t.sgmlDecl+=n;continue;case F.SGML_DECL_QUOTED:n===t.q&&(t.state=F.SGML_DECL,t.q=""),t.sgmlDecl+=n;continue;case F.DOCTYPE:">"===n?(t.state=F.TEXT,f(t,"ondoctype",t.doctype),t.doctype=!0):(t.doctype+=n,"["===n?t.state=F.DOCTYPE_DTD:p(n)&&(t.state=F.DOCTYPE_QUOTED,t.q=n));continue;case F.DOCTYPE_QUOTED:t.doctype+=n,n===t.q&&(t.q="",t.state=F.DOCTYPE);continue;case F.DOCTYPE_DTD:t.doctype+=n,"]"===n?t.state=F.DOCTYPE:p(n)&&(t.state=F.DOCTYPE_DTD_QUOTED,t.q=n);continue;case F.DOCTYPE_DTD_QUOTED:t.doctype+=n,n===t.q&&(t.state=F.DOCTYPE_DTD,t.q="");continue;case F.COMMENT:"-"===n?t.state=F.COMMENT_ENDING:t.comment+=n;continue;case F.COMMENT_ENDING:"-"===n?(t.state=F.COMMENT_ENDED,t.comment=b(t.opt,t.comment),t.comment&&f(t,"oncomment",t.comment),t.comment=""):(t.comment+="-"+n,t.state=F.COMMENT);continue;case F.COMMENT_ENDED:">"===n?t.state=F.TEXT:(k(t,"Malformed comment"),t.comment+="--"+n,t.state=F.COMMENT);continue;case F.CDATA:"]"===n?t.state=F.CDATA_ENDING:t.cdata+=n;continue;case F.CDATA_ENDING:"]"===n?t.state=F.CDATA_ENDING_2:(t.cdata+="]"+n,t.state=F.CDATA);continue;case F.CDATA_ENDING_2:">"===n?(t.cdata&&f(t,"oncdata",t.cdata),f(t,"onclosecdata"),t.cdata="",t.state=F.TEXT):"]"===n?t.cdata+="]":(t.cdata+="]]"+n,t.state=F.CDATA);continue;case F.PROC_INST:"?"===n?t.state=F.PROC_INST_ENDING:d(n)?t.state=F.PROC_INST_BODY:t.procInstName+=n;continue;case F.PROC_INST_BODY:if(!t.procInstBody&&d(n))continue;else"?"===n?t.state=F.PROC_INST_ENDING:t.procInstBody+=n;continue;case F.PROC_INST_ENDING:">"===n?(f(t,"onprocessinginstruction",{name:t.procInstName,body:t.procInstBody}),t.procInstName=t.procInstBody="",t.state=F.TEXT):(t.procInstBody+="?"+n,t.state=F.PROC_INST_BODY);continue;case F.OPEN_TAG:m(B,n)?t.tagName+=n:(C(t),">"===n?T(t):"/"===n?t.state=F.OPEN_TAG_SLASH:(!d(n)&&k(t,"Invalid character in tag name"),t.state=F.ATTRIB));continue;case F.OPEN_TAG_SLASH:">"===n?(T(t,!0),E(t)):(k(t,"Forward-slash in opening tag not followed by >"),t.state=F.ATTRIB);continue;case F.ATTRIB:if(d(n))continue;else">"===n?T(t):"/"===n?t.state=F.OPEN_TAG_SLASH:m(q,n)?(t.attribName=n,t.attribValue="",t.state=F.ATTRIB_NAME):k(t,"Invalid attribute name");continue;case F.ATTRIB_NAME:"="===n?t.state=F.ATTRIB_VALUE:">"===n?(k(t,"Attribute without value"),t.attribValue=t.attribName,_(t),T(t)):d(n)?t.state=F.ATTRIB_NAME_SAW_WHITE:m(B,n)?t.attribName+=n:k(t,"Invalid attribute name");continue;case F.ATTRIB_NAME_SAW_WHITE:if("="===n)t.state=F.ATTRIB_VALUE;else if(d(n))continue;else k(t,"Attribute without value"),t.tag.attributes[t.attribName]="",t.attribValue="",f(t,"onattribute",{name:t.attribName,value:""}),t.attribName="",">"===n?T(t):m(q,n)?(t.attribName=n,t.state=F.ATTRIB_NAME):(k(t,"Invalid attribute name"),t.state=F.ATTRIB);continue;case F.ATTRIB_VALUE:if(d(n))continue;else p(n)?(t.q=n,t.state=F.ATTRIB_VALUE_QUOTED):(k(t,"Unquoted attribute value"),t.state=F.ATTRIB_VALUE_UNQUOTED,t.attribValue=n);continue;case F.ATTRIB_VALUE_QUOTED:if(n!==t.q){"&"===n?t.state=F.ATTRIB_VALUE_ENTITY_Q:t.attribValue+=n;continue}_(t),t.q="",t.state=F.ATTRIB_VALUE_CLOSED;continue;case F.ATTRIB_VALUE_CLOSED:d(n)?t.state=F.ATTRIB:">"===n?T(t):"/"===n?t.state=F.OPEN_TAG_SLASH:m(q,n)?(k(t,"No whitespace between attributes"),t.attribName=n,t.attribValue="",t.state=F.ATTRIB_NAME):k(t,"Invalid attribute name");continue;case F.ATTRIB_VALUE_UNQUOTED:if(!u(n)){"&"===n?t.state=F.ATTRIB_VALUE_ENTITY_U:t.attribValue+=n;continue}_(t),">"===n?T(t):t.state=F.ATTRIB;continue;case F.CLOSE_TAG:if(!!t.tagName)">"===n?E(t):m(B,n)?t.tagName+=n:t.script?(t.script+=""===n?E(t):k(t,"Invalid characters in closing tag");continue;case F.TEXT_ENTITY:case F.ATTRIB_VALUE_ENTITY_Q:case F.ATTRIB_VALUE_ENTITY_U:var l,h;switch(t.state){case F.TEXT_ENTITY:l=F.TEXT,h="textNode";break;case F.ATTRIB_VALUE_ENTITY_Q:l=F.ATTRIB_VALUE_QUOTED,h="attribValue";break;case F.ATTRIB_VALUE_ENTITY_U:l=F.ATTRIB_VALUE_UNQUOTED,h="attribValue";}";"===n?(t[h]+=A(t),t.entity="",t.state=l):m(t.entity.length?D:N,n)?t.entity+=n:(k(t,"Invalid character in entity name"),t[h]+="&"+t.entity+n,t.entity="",t.state=l);continue;default:throw new Error(t,"Unknown state: "+t.state);}return t.position>=t.bufferCheckPosition&&a(t),t}/*! http://mths.be/fromcodepoint v0.1.0 by @mathias */t.parser=function(e,t){return new n(e,t)},t.SAXParser=n,t.SAXStream=l,t.createStream=function(e,t){return new l(e,t)},t.MAX_BUFFER_LENGTH=65536;var R=["comment","sgmlDecl","textNode","tagName","doctype","procInstName","procInstBody","entity","attribName","attribValue","cdata","script"];t.EVENTS=["text","processinginstruction","sgmldeclaration","doctype","comment","opentagstart","attribute","opentag","closetag","opencdata","cdata","closecdata","error","end","ready","script","opennamespace","closenamespace"],Object.create||(Object.create=function(e){function t(){}t.prototype=e;var r=new t;return r}),Object.keys||(Object.keys=function(e){var t=[];for(var r in e)e.hasOwnProperty(r)&&t.push(r);return t}),n.prototype={end:function(){v(this)},write:L,resume:function(){return this.error=null,this},close:function(){return this.write(null)},flush:function(){i(this)}};var M;try{M=r(92413).Stream}catch(e){M=function(){}}var I=t.EVENTS.filter(function(e){return"error"!==e&&"end"!==e});l.prototype=Object.create(M.prototype,{constructor:{value:l}}),l.prototype.write=function(e){if("function"==typeof Buffer&&"function"==typeof Buffer.isBuffer&&Buffer.isBuffer(e)){if(!this._decoder){var t=r(24304).StringDecoder;this._decoder=new t("utf8")}e=this._decoder.write(e)}return this._parser.write(e.toString()),this.emit("data",e),!0},l.prototype.end=function(e){return e&&e.length&&this.write(e),this._parser.end(),!0},l.prototype.on=function(e,t){var r=this;return r._parser["on"+e]||-1===I.indexOf(e)||(r._parser["on"+e]=function(){var t=1===arguments.length?[arguments[0]]:Array.apply(null,arguments);t.splice(0,0,e),r.emit.apply(r,t)}),M.prototype.on.call(r,e,t)};var W={xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"},q=/[:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]/,B=/[:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\u00B7\u0300-\u036F\u203F-\u2040.\d-]/,N=/[#:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]/,D=/[#:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\u00B7\u0300-\u036F\u203F-\u2040.\d-]/,F=0;for(var e in t.STATE={BEGIN:F++,BEGIN_WHITESPACE:F++,TEXT:F++,TEXT_ENTITY:F++,OPEN_WAKA:F++,SGML_DECL:F++,SGML_DECL_QUOTED:F++,DOCTYPE:F++,DOCTYPE_QUOTED:F++,DOCTYPE_DTD:F++,DOCTYPE_DTD_QUOTED:F++,COMMENT_STARTING:F++,COMMENT:F++,COMMENT_ENDING:F++,COMMENT_ENDED:F++,CDATA:F++,CDATA_ENDING:F++,CDATA_ENDING_2:F++,PROC_INST:F++,PROC_INST_BODY:F++,PROC_INST_ENDING:F++,OPEN_TAG:F++,OPEN_TAG_SLASH:F++,ATTRIB:F++,ATTRIB_NAME:F++,ATTRIB_NAME_SAW_WHITE:F++,ATTRIB_VALUE:F++,ATTRIB_VALUE_QUOTED:F++,ATTRIB_VALUE_CLOSED:F++,ATTRIB_VALUE_UNQUOTED:F++,ATTRIB_VALUE_ENTITY_Q:F++,ATTRIB_VALUE_ENTITY_U:F++,CLOSE_TAG:F++,CLOSE_TAG_SAW_WHITE:F++,SCRIPT:F++,SCRIPT_ENDING:F++},t.XML_ENTITIES={amp:"&",gt:">",lt:"<",quot:"\"",apos:"'"},t.ENTITIES={amp:"&",gt:">",lt:"<",quot:"\"",apos:"'",AElig:198,Aacute:193,Acirc:194,Agrave:192,Aring:197,Atilde:195,Auml:196,Ccedil:199,ETH:208,Eacute:201,Ecirc:202,Egrave:200,Euml:203,Iacute:205,Icirc:206,Igrave:204,Iuml:207,Ntilde:209,Oacute:211,Ocirc:212,Ograve:210,Oslash:216,Otilde:213,Ouml:214,THORN:222,Uacute:218,Ucirc:219,Ugrave:217,Uuml:220,Yacute:221,aacute:225,acirc:226,aelig:230,agrave:224,aring:229,atilde:227,auml:228,ccedil:231,eacute:233,ecirc:234,egrave:232,eth:240,euml:235,iacute:237,icirc:238,igrave:236,iuml:239,ntilde:241,oacute:243,ocirc:244,ograve:242,oslash:248,otilde:245,ouml:246,szlig:223,thorn:254,uacute:250,ucirc:251,ugrave:249,uuml:252,yacute:253,yuml:255,copy:169,reg:174,nbsp:160,iexcl:161,cent:162,pound:163,curren:164,yen:165,brvbar:166,sect:167,uml:168,ordf:170,laquo:171,not:172,shy:173,macr:175,deg:176,plusmn:177,sup1:185,sup2:178,sup3:179,acute:180,micro:181,para:182,middot:183,cedil:184,ordm:186,raquo:187,frac14:188,frac12:189,frac34:190,iquest:191,times:215,divide:247,OElig:338,oelig:339,Scaron:352,scaron:353,Yuml:376,fnof:402,circ:710,tilde:732,Alpha:913,Beta:914,Gamma:915,Delta:916,Epsilon:917,Zeta:918,Eta:919,Theta:920,Iota:921,Kappa:922,Lambda:923,Mu:924,Nu:925,Xi:926,Omicron:927,Pi:928,Rho:929,Sigma:931,Tau:932,Upsilon:933,Phi:934,Chi:935,Psi:936,Omega:937,alpha:945,beta:946,gamma:947,delta:948,epsilon:949,zeta:950,eta:951,theta:952,iota:953,kappa:954,lambda:955,mu:956,nu:957,xi:958,omicron:959,pi:960,rho:961,sigmaf:962,sigma:963,tau:964,upsilon:965,phi:966,chi:967,psi:968,omega:969,thetasym:977,upsih:978,piv:982,ensp:8194,emsp:8195,thinsp:8201,zwnj:8204,zwj:8205,lrm:8206,rlm:8207,ndash:8211,mdash:8212,lsquo:8216,rsquo:8217,sbquo:8218,ldquo:8220,rdquo:8221,bdquo:8222,dagger:8224,Dagger:8225,bull:8226,hellip:8230,permil:8240,prime:8242,Prime:8243,lsaquo:8249,rsaquo:8250,oline:8254,frasl:8260,euro:8364,image:8465,weierp:8472,real:8476,trade:8482,alefsym:8501,larr:8592,uarr:8593,rarr:8594,darr:8595,harr:8596,crarr:8629,lArr:8656,uArr:8657,rArr:8658,dArr:8659,hArr:8660,forall:8704,part:8706,exist:8707,empty:8709,nabla:8711,isin:8712,notin:8713,ni:8715,prod:8719,sum:8721,minus:8722,lowast:8727,radic:8730,prop:8733,infin:8734,ang:8736,and:8743,or:8744,cap:8745,cup:8746,int:8747,there4:8756,sim:8764,cong:8773,asymp:8776,ne:8800,equiv:8801,le:8804,ge:8805,sub:8834,sup:8835,nsub:8836,sube:8838,supe:8839,oplus:8853,otimes:8855,perp:8869,sdot:8901,lceil:8968,rceil:8969,lfloor:8970,rfloor:8971,lang:9001,rang:9002,loz:9674,spades:9824,clubs:9827,hearts:9829,diams:9830},Object.keys(t.ENTITIES).forEach(function(r){var n=t.ENTITIES[r],e="number"==typeof n?_StringfromCharCode(n):n;t.ENTITIES[r]=e}),t.STATE)t.STATE[t.STATE[e]]=e;F=t.STATE,z||function(){var e=function(){var e=[],t=-1,r=arguments.length,n,a;if(!r)return"";for(var o="",i;++ti||1114111=i?e.push(i):(i-=65536,n=(i>>10)+55296,a=i%1024+56320,e.push(n,a)),(t+1===r||16384=n)return e;for(var a=Array(n),o=1;os&&(c=s),u>s&&(u=s),m=p,g=c;;)if(m=n(t[m],t[g])?t[m++]:t[g++];else if(m{"use strict";function n(e){if(!e)return"utf8";for(var t;;)switch(e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:if(t)return;e=(""+e).toLowerCase(),t=!0;}}function a(e){var t=n(e);if("string"!=typeof t&&(y.isEncoding===b||!b(e)))throw new Error("Unknown encoding: "+e);return t||e}function o(e){this.encoding=a(e);var t;switch(this.encoding){case"utf16le":this.text=c,this.end=u,t=4;break;case"utf8":this.fillLast=p,t=4;break;case"base64":this.text=m,this.end=g,t=3;break;default:return this.write=h,void(this.end=f);}this.lastNeed=0,this.lastTotal=0,this.lastChar=y.allocUnsafe(t)}function s(e){return 127>=e?0:6==e>>5?2:14==e>>4?3:30==e>>3?4:2==e>>6?-1:-2}function l(e,t,r){var n=t.length-1;if(n=r)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],n.slice(0,-1)}return n}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function u(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,r)}return t}function m(e,t){var r=(e.length-t)%3;return 0==r?e.toString("base64",t):(this.lastNeed=3-r,this.lastTotal=3,1==r?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-r))}function g(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function h(e){return e.toString(this.encoding)}function f(e){return e&&e.length?this.write(e):""}var y=r(38151).Buffer,b=y.isEncoding||function(e){switch(e=""+e,e&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1;}};t.s=o,o.prototype.write=function(e){if(0===e.length)return"";var t,n;if(this.lastNeed){if(t=this.fillLast(e),void 0===t)return"";n=this.lastNeed,this.lastNeed=0}else n=0;return n{"use strict";function n(e){return 0!==e&&{level:e,hasBasic:!0,has256:2<=e,has16m:3<=e}}function a(e){if(!1===d)return 0;if(s("color=16m")||s("color=full")||s("color=truecolor"))return 3;if(s("color=256"))return 2;if(e&&!e.isTTY&&!0!==d)return 0;const t=d?1:0;if("win32"===process.platform){const e=i.release().split(".");return 8<=+process.versions.node.split(".")[0]&&10<=+e[0]&&10586<=+e[2]?14931<=+e[2]?3:2:1}if("CI"in l)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI"].some(e=>e in l)||"codeship"===l.CI_NAME?1:t;if("TEAMCITY_VERSION"in l)return /^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(l.TEAMCITY_VERSION)?1:0;if("truecolor"===l.COLORTERM)return 3;if("TERM_PROGRAM"in l){const e=parseInt((l.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(l.TERM_PROGRAM){case"iTerm.app":return 3<=e?3:2;case"Apple_Terminal":return 2;}}return /-256(color)?$/i.test(l.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(l.TERM)?1:"COLORTERM"in l?1:"dumb"===l.TERM?t:t}function o(e){const t=a(e);return n(t)}const i=r(12087),s=r(15542),l=process.env;let d;s("no-color")||s("no-colors")||s("color=false")?d=!1:(s("color")||s("colors")||s("color=true")||s("color=always"))&&(d=!0),"FORCE_COLOR"in l&&(d=0===l.FORCE_COLOR.length||0!==parseInt(l.FORCE_COLOR,10)),e.exports={supportsColor:o,stdout:o(process.stdout),stderr:o(process.stderr)}},27604:(e,t,r)=>{"use strict";function n(e,t){for(var r=0;4>r;r+=1){if(e[r]t[r])return 1}return 0}function a(e,t){var r=d(e),a=d(t);return n(r,a)}function o(e,t){return a(e.item.data,t.item.data)}var i=r(29701),s=i.List,l=r(49652),d=r(77755);e.exports.flattenToSelectors=function(e){var t=[];return i.walk(e,{visit:"Rule",enter:function(e){if("Rule"===e.type){var r=this.atrule;e.prelude.children.each(function(n,a){var o={item:a,atrule:r,rule:e,pseudos:[]};n.children.each(function(e,t,r){("PseudoClassSelector"===e.type||"PseudoElementSelector"===e.type)&&o.pseudos.push({item:t,list:r})}),t.push(o)})}}}),t},e.exports.filterByMqs=function(e,t){return e.filter(function(e){if(null===e.atrule)return~t.indexOf("");var r=e.atrule.name,n=r;if(e.atrule.expression&&"MediaQueryList"===e.atrule.expression.children.first().type){var a=i.generate(e.atrule.expression);n=[r,a].join(" ")}return~t.indexOf(n)})},e.exports.filterByPseudos=function(e,t){return e.filter(function(e){var r=i.generate({type:"Selector",children:new s().fromArray(e.pseudos.map(function(e){return e.item.data}))});return~t.indexOf(r)})},e.exports.cleanPseudos=function(e){e.forEach(function(e){e.pseudos.forEach(function(e){e.list.remove(e.item)})})},e.exports.compareSpecificity=n,e.exports.compareSimpleSelectorNode=a,e.exports.sortSelectors=function(e){return l(e,o)},e.exports.csstreeToStyleDeclaration=function(e){var t=e.property,r=i.generate(e.value),n=e.important?"important":"";return{name:t,value:r,priority:n}},e.exports.getCssStr=function(e){return e.content[0].text||e.content[0].cdata||[]},e.exports.setCssStr=function(e,t){return e.content[0].cdata?(e.content[0].cdata=t,e.content[0].cdata):(e.content[0].text=t,e.content[0].text)}},20485:(e,t,r)=>{"use strict";/** * SVGO is a Nodejs-based tool for optimizing SVG vector graphics files. * * @see https://github.com/svg/svgo * * @author Kir Belevich (https://github.com/deepsweet) * @copyright © 2012 Kir Belevich * @license MIT https://raw.githubusercontent.com/svg/svgo/master/LICENSE */var n=r(42342),a=r(3717),o=r(65994),i=r(71921),s=r(79736).By,l=r(58529),d=function(e){this.config=n(e)};d.prototype.optimize=function(e,t){return t=t||{},new Promise((r,n)=>{if(this.config.error)return void n(this.config.error);var a=this.config,o=a.multipass?10:1,i=0,l=_NumberPOSITIVE_INFINITY,d=e=>e.error?void n(e.error):void(t.multipassCount=i,++i{function n(e){return"_collections.js"===e||"_collections"===e?r(76344):"_path.js"===e||"_path"===e?r(54870):"_transforms.js"===e||"_transforms"===e?r(22527):"addAttributesToSVGElement.js"===e||"addAttributesToSVGElement"===e?r(5519):"addClassesToSVGElement.js"===e||"addClassesToSVGElement"===e?r(75118):"cleanupAttrs.js"===e||"cleanupAttrs"===e?r(4106):"cleanupEnableBackground.js"===e||"cleanupEnableBackground"===e?r(26483):"cleanupIDs.js"===e||"cleanupIDs"===e?r(37762):"cleanupListOfValues.js"===e||"cleanupListOfValues"===e?r(92331):"cleanupNumericValues.js"===e||"cleanupNumericValues"===e?r(36296):"collapseGroups.js"===e||"collapseGroups"===e?r(59616):"convertColors.js"===e||"convertColors"===e?r(83254):"convertEllipseToCircle.js"===e||"convertEllipseToCircle"===e?r(56061):"convertPathData.js"===e||"convertPathData"===e?r(76307):"convertShapeToPath.js"===e||"convertShapeToPath"===e?r(24199):"convertStyleToAttrs.js"===e||"convertStyleToAttrs"===e?r(72446):"convertTransform.js"===e||"convertTransform"===e?r(72234):"inlineStyles.js"===e||"inlineStyles"===e?r(81862):"mergePaths.js"===e||"mergePaths"===e?r(46123):"minifyStyles.js"===e||"minifyStyles"===e?r(77686):"moveElemsAttrsToGroup.js"===e||"moveElemsAttrsToGroup"===e?r(42778):"moveGroupAttrsToElems.js"===e||"moveGroupAttrsToElems"===e?r(69078):"prefixIds.js"===e||"prefixIds"===e?r(33099):"removeAttributesBySelector.js"===e||"removeAttributesBySelector"===e?r(65731):"removeAttrs.js"===e||"removeAttrs"===e?r(91585):"removeComments.js"===e||"removeComments"===e?r(13383):"removeDesc.js"===e||"removeDesc"===e?r(81668):"removeDimensions.js"===e||"removeDimensions"===e?r(41690):"removeDoctype.js"===e||"removeDoctype"===e?r(42114):"removeEditorsNSData.js"===e||"removeEditorsNSData"===e?r(70325):"removeElementsByAttr.js"===e||"removeElementsByAttr"===e?r(70535):"removeEmptyAttrs.js"===e||"removeEmptyAttrs"===e?r(63151):"removeEmptyContainers.js"===e||"removeEmptyContainers"===e?r(41059):"removeEmptyText.js"===e||"removeEmptyText"===e?r(14156):"removeHiddenElems.js"===e||"removeHiddenElems"===e?r(1378):"removeMetadata.js"===e||"removeMetadata"===e?r(28873):"removeNonInheritableGroupAttrs.js"===e||"removeNonInheritableGroupAttrs"===e?r(67662):"removeOffCanvasPaths.js"===e||"removeOffCanvasPaths"===e?r(58267):"removeRasterImages.js"===e||"removeRasterImages"===e?r(99062):"removeScriptElement.js"===e||"removeScriptElement"===e?r(64186):"removeStyleElement.js"===e||"removeStyleElement"===e?r(99681):"removeTitle.js"===e||"removeTitle"===e?r(76087):"removeUnknownsAndDefaults.js"===e||"removeUnknownsAndDefaults"===e?r(8316):"removeUnusedNS.js"===e||"removeUnusedNS"===e?r(77926):"removeUselessDefs.js"===e||"removeUselessDefs"===e?r(1820):"removeUselessStrokeAndFill.js"===e||"removeUselessStrokeAndFill"===e?r(7519):"removeViewBox.js"===e||"removeViewBox"===e?r(81306):"removeXMLNS.js"===e||"removeXMLNS"===e?r(44987):"removeXMLProcInst.js"===e||"removeXMLProcInst"===e?r(97427):"reusePaths.js"===e||"reusePaths"===e?r(86607):"sortAttrs.js"===e||"sortAttrs"===e?r(17549):"sortDefsChildren.js"===e||"sortDefsChildren"===e?r(5681):void 0}function a(e,t){var r,n;return t.map(function(t){return"object"==typeof t?(n=Object.keys(t)[0],"object"==typeof t[n]&&t[n].fn&&"function"==typeof t[n].fn?r=i(n,t[n]):(r=l(d(e,n,t[n].path),t,n),r.name=n)):(r=d(e,t),r.name=t,"object"==typeof r.params&&(r.params=Object.assign({},r.params))),r})}function o(e,t){var r;return t.plugins&&t.plugins.forEach(function(n){"object"==typeof n&&(r=Object.keys(n)[0],null==n[r]&&console.error(`Error: '${r}' plugin is misconfigured! Have you padded its content in YML properly?\n`),"object"==typeof n[r]&&n[r].fn&&"function"==typeof n[r].fn?e.plugins.push(i(r,n[r])):"object"==typeof n[r]&&n[r].path?e.plugins.push(l(d(t,void 0,n[r].path),n,r)):e.plugins.forEach(function(e){e.name===r&&(e=l(e,n,r))}))}),e.multipass=t.multipass,t.svg2js&&(e.svg2js=t.svg2js),t.js2svg&&(e.js2svg=t.js2svg),e}function i(e,t){return t.active=!0,t.params=Object.assign({},t.params||{}),t.name=e,t}function s(e){var t;return e.reduce(function(e,r){return t&&r.type==t[0].type?t.push(r):e.push(t=[r]),e},[])}function l(e,t,r){return"object"==typeof t[r]?(e.params=Object.assign({},e.params||{},t[r]),e.active=!0):!1===t[r]?e.active=!1:!0===t[r]&&(e.active=!0),e}function d(e,t,r){var a;return a=r?require(c.resolve(e.__DIR,r)):n(t),Object.assign({},a)}var p=r(35747),c=r(85622),u=r(31894);e.exports=function(e){var t;return(e="object"==typeof e&&e||{},e.plugins&&!Array.isArray(e.plugins))?{error:"Error: Invalid plugins list. Provided 'plugins' in config should be an array."}:(e.full?(t=e,Array.isArray(t.plugins)&&(t.plugins=a(e,t.plugins))):(t=Object.assign({},u.safeLoad(p.readFileSync(r.ab+".svgo.yml","utf8"))),t.plugins=a(e,t.plugins||[]),t=o(t,e)),"floatPrecision"in e&&Array.isArray(t.plugins)&&t.plugins.forEach(function(t){t.params&&"floatPrecision"in t.params&&(t.params=Object.assign({},t.params,{floatPrecision:e.floatPrecision}))}),"datauri"in e&&(t.datauri=e.datauri),Array.isArray(t.plugins)&&(t.plugins=s(t.plugins)),t)}},57403:(e,t,r)=>{"use strict";var n=r(67670);Object.values||n.shim();var a=function(e){this.parentNode=e,this.classNames=new Set,this.classAttr=null};a.prototype.clone=function(e){var t=this,r={};Object.keys(t).forEach(function(e){"parentNode"!==e&&(r[e]=t[e])}),r=JSON.parse(JSON.stringify(r));var n=new a(e);return Object.assign(n,r),n},a.prototype.hasClass=function(){this.classAttr={name:"class",value:null},this.addClassHandler()},a.prototype.addClassHandler=function(){Object.defineProperty(this.parentNode.attrs,"class",{get:this.getClassAttr.bind(this),set:this.setClassAttr.bind(this),enumerable:!0,configurable:!0}),this.addClassValueHandler()},a.prototype.addClassValueHandler=function(){Object.defineProperty(this.classAttr,"value",{get:this.getClassValue.bind(this),set:this.setClassValue.bind(this),enumerable:!0,configurable:!0})},a.prototype.getClassAttr=function(){return this.classAttr},a.prototype.setClassAttr=function(e){this.setClassValue(e.value),this.classAttr=e,this.addClassValueHandler()},a.prototype.getClassValue=function(){var e=Array.from(this.classNames);return e.join(" ")},a.prototype.setClassValue=function(e){if("undefined"==typeof e)return void this.classNames.clear();var t=e.split(" ");this.classNames=new Set(t)},a.prototype.add=function(){this.hasClass(),Object.values(arguments).forEach(this._addSingle.bind(this))},a.prototype._addSingle=function(e){this.classNames.add(e)},a.prototype.remove=function(){this.hasClass(),Object.values(arguments).forEach(this._removeSingle.bind(this))},a.prototype._removeSingle=function(e){this.classNames.delete(e)},a.prototype.item=function(e){var t=Array.from(this.classNames);return t[e]},a.prototype.toggle=function(e,t){(this.contains(e)||!1===t)&&this.classNames.delete(e),this.classNames.add(e)},a.prototype.contains=function(e){return this.classNames.has(e)},e.exports=a},20889:(e,t,r)=>{"use strict";var n=r(89072),a=n({isTag:function(e){return e.isElem()},getParent:function(e){return e.parentNode||null},getChildren:function(e){return e.content||[]},getName:function(e){return e.elem},getText:function(e){return e.content[0].text||e.content[0].cdata||""},getAttributeValue:function(e,t){return e.hasAttr(t)?e.attr(t).value:null}});e.exports=a},36395:(e,t,r)=>{"use strict";var n=r(29701),a=r(27604),o=function(e){this.parentNode=e,this.properties=new Map,this.hasSynced=!1,this.styleAttr=null,this.styleValue=null,this.parseError=!1};o.prototype.clone=function(e){var t=this,r={};Object.keys(t).forEach(function(e){"parentNode"!==e&&(r[e]=t[e])}),r=JSON.parse(JSON.stringify(r));var n=new o(e);return Object.assign(n,r),n},o.prototype.hasStyle=function(){this.addStyleHandler()},o.prototype.addStyleHandler=function(){this.styleAttr={name:"style",value:null},Object.defineProperty(this.parentNode.attrs,"style",{get:this.getStyleAttr.bind(this),set:this.setStyleAttr.bind(this),enumerable:!0,configurable:!0}),this.addStyleValueHandler()},o.prototype.addStyleValueHandler=function(){Object.defineProperty(this.styleAttr,"value",{get:this.getStyleValue.bind(this),set:this.setStyleValue.bind(this),enumerable:!0,configurable:!0})},o.prototype.getStyleAttr=function(){return this.styleAttr},o.prototype.setStyleAttr=function(e){this.setStyleValue(e.value),this.styleAttr=e,this.addStyleValueHandler(),this.hasSynced=!1},o.prototype.getStyleValue=function(){return this.getCssText()},o.prototype.setStyleValue=function(e){this.properties.clear(),this.styleValue=e,this.hasSynced=!1},o.prototype._loadCssText=function(){if(!this.hasSynced&&(this.hasSynced=!0,this.styleValue&&0!==this.styleValue.length)){var e=this.styleValue,t={};try{t=n.parse(e,{context:"declarationList",parseValue:!1})}catch(e){return void(this.parseError=e)}this.parseError=!1;var r=this;t.children.each(function(e){try{var t=a.csstreeToStyleDeclaration(e);r.setProperty(t.name,t.value,t.priority)}catch(e){"Unknown node type: undefined"!==e.message&&(r.parseError=e)}})}},o.prototype.getCssText=function(){var e=this.getProperties();if(this.parseError)return this.styleValue;var t=[];return e.forEach(function(e,r){var n="important"===e.priority?"!important":"";t.push(r.trim()+":"+e.value.trim()+n)}),t.join(";")},o.prototype._handleParseError=function(){this.parseError&&console.warn("Warning: Parse error when parsing inline styles, style properties of this element cannot be used. The raw styles can still be get/set using .attr('style').value. Error details: "+this.parseError)},o.prototype._getProperty=function(e){if("undefined"==typeof e)throw Error("1 argument required, but only 0 present.");var t=this.getProperties();this._handleParseError();var r=t.get(e.trim());return r},o.prototype.getPropertyPriority=function(e){var t=this._getProperty(e);return t?t.priority:""},o.prototype.getPropertyValue=function(e){var t=this._getProperty(e);return t?t.value:null},o.prototype.item=function(e){if("undefined"==typeof e)throw Error("1 argument required, but only 0 present.");var t=this.getProperties();return this._handleParseError(),Array.from(t.keys())[e]},o.prototype.getProperties=function(){return this._loadCssText(),this.properties},o.prototype.removeProperty=function(e){if("undefined"==typeof e)throw Error("1 argument required, but only 0 present.");this.hasStyle();var t=this.getProperties();this._handleParseError();var r=this.getPropertyValue(e);return t.delete(e.trim()),r},o.prototype.setProperty=function(e,t,r){if("undefined"==typeof e)throw Error("propertyName argument required, but only not present.");this.hasStyle();var n=this.getProperties();this._handleParseError();var a={value:t.trim(),priority:r.trim()};return n.set(e.trim(),a),a},e.exports=o},58529:(e,t,r)=>{"use strict";function n(e){this.config=e?Object.assign({},i,e):Object.assign({},i);var t=this.config.indent;"number"!=typeof t||isNaN(t)?"string"!=typeof t&&(this.config.indent=" "):this.config.indent=0>t?"\t":" ".repeat(t),this.config.pretty&&(this.config.doctypeEnd+=a,this.config.procInstEnd+=a,this.config.commentEnd+=a,this.config.cdataEnd+=a,this.config.tagShortEnd+=a,this.config.tagOpenEnd+=a,this.config.tagCloseEnd+=a,this.config.textEnd+=a),this.indentLevel=0,this.textContext=null}var a=r(12087).EOL,o=r(76344).elemsGroups.textContent.concat("title"),i={doctypeStart:"",procInstStart:"",tagOpenStart:"<",tagOpenEnd:">",tagCloseStart:"",tagShortStart:"<",tagShortEnd:"/>",attrStart:"=\"",attrEnd:"\"",commentStart:"",cdataStart:"",textStart:"",textEnd:"",indent:4,regEntities:/[&'"<>]/g,regValEntities:/[&"<>]/g,encodeEntity:function(e){return s[e]},pretty:!1,useShortTags:!0},s={"&":"&","'":"'",'"':""",">":">","<":"<"};e.exports=function(e,t){return new n(t).convert(e)},n.prototype.convert=function(e){var t="";return e.content&&(this.indentLevel++,e.content.forEach(function(e){e.elem?t+=this.createElem(e):e.text?t+=this.createText(e.text):e.doctype?t+=this.createDoctype(e.doctype):e.processinginstruction?t+=this.createProcInst(e.processinginstruction):e.comment?t+=this.createComment(e.comment):e.cdata&&(t+=this.createCDATA(e.cdata))},this)),this.indentLevel--,{data:t,info:{width:this.width,height:this.height}}},n.prototype.createIndent=function(){var e="";return this.config.pretty&&!this.textContext&&(e=this.config.indent.repeat(this.indentLevel-1)),e},n.prototype.createDoctype=function(e){return this.config.doctypeStart+e+this.config.doctypeEnd},n.prototype.createProcInst=function(e){return this.config.procInstStart+e.name+" "+e.body+this.config.procInstEnd},n.prototype.createComment=function(e){return this.config.commentStart+e+this.config.commentEnd},n.prototype.createCDATA=function(e){return this.createIndent()+this.config.cdataStart+e+this.config.cdataEnd},n.prototype.createElem=function(e){if(e.isElem("svg")&&e.hasAttr("width")&&e.hasAttr("height")&&(this.width=e.attr("width").value,this.height=e.attr("height").value),e.isEmpty())return this.config.useShortTags?this.createIndent()+this.config.tagShortStart+e.elem+this.createAttrs(e)+this.config.tagShortEnd:this.createIndent()+this.config.tagShortStart+e.elem+this.createAttrs(e)+this.config.tagOpenEnd+this.config.tagCloseStart+e.elem+this.config.tagCloseEnd;var t=this.config.tagOpenStart,r=this.config.tagOpenEnd,n=this.config.tagCloseStart,s=this.config.tagCloseEnd,l=this.createIndent(),d="",p="",c="";return this.textContext?(t=i.tagOpenStart,r=i.tagOpenEnd,n=i.tagCloseStart,s=i.tagCloseEnd,l=""):e.isElem(o)&&(this.config.pretty&&(d+=l+this.config.indent),this.textContext=e),p+=this.convert(e).data,this.textContext==e&&(this.textContext=null,this.config.pretty&&(c=a)),l+t+e.elem+this.createAttrs(e)+r+d+p+c+this.createIndent()+n+e.elem+s},n.prototype.createAttrs=function(e){var t="";return e.eachAttr(function(e){t+=void 0===e.value?" "+e.name:" "+e.name+this.config.attrStart+(e.value+"").replace(this.config.regValEntities,this.config.encodeEntity)+this.config.attrEnd},this),t},n.prototype.createText=function(e){return this.createIndent()+this.config.textStart+e.replace(this.config.regEntities,this.config.encodeEntity)+(this.textContext?"":this.config.textEnd)}},71921:(e,t,r)=>{"use strict";var n=r(32825),a=r(20889),o={xmlMode:!0,adapter:a},i=e.exports=function(e,t){Object.assign(this,e),t&&Object.defineProperty(this,"parentNode",{writable:!0,value:t})};i.prototype.clone=function(){var e=this,t={};Object.keys(e).forEach(function(r){"class"!==r&&"style"!==r&&"content"!==r&&(t[r]=e[r])}),t=JSON.parse(JSON.stringify(t));var r=new i(t,!!e.parentNode);return e.class&&(r.class=e.class.clone(r)),e.style&&(r.style=e.style.clone(r)),e.content&&(r.content=e.content.map(function(e){var t=e.clone();return t.parentNode=r,t})),r},i.prototype.isElem=function(e){return e?Array.isArray(e)?!!this.elem&&-1arguments.length?[]:(Array.isArray(r)||(r=Array.apply(null,arguments).slice(2)),r.forEach(function(e){e.parentNode=this},this),this.content.splice.apply(this.content,[e,t].concat(r)))},i.prototype.hasAttr=function(e,t){return!!(this.attrs&&Object.keys(this.attrs).length)&&(arguments.length?void 0===t?!!this.attrs[e]:!!this.attrs[e]&&this.attrs[e].value===t.toString():!!this.attrs)},i.prototype.hasAttrLocal=function(e,t){function r(t){return t.local===e}function n(r){return r.local===e&&t==r.value}function a(r){return r.local===e&&t.test(r.value)}function o(r){return r.local===e&&t(r.value)}if(!this.attrs||!Object.keys(this.attrs).length)return!1;if(!arguments.length)return!!this.attrs;var i;switch(null!=t&&t.constructor&&t.constructor.name){case"Number":case"String":i=n;break;case"RegExp":i=a;break;case"Function":i=o;break;default:i=r;}return this.someAttr(i)},i.prototype.attr=function(e,t){return this.hasAttr()&&arguments.length?void 0===t?this.attrs[e]:this.hasAttr(e,t)?this.attrs[e]:void 0:void 0},i.prototype.computedAttr=function(e,t){if(arguments.length){for(var r=this;r&&(!r.hasAttr(e)||!r.attr(e).value);r=r.parentNode);return null==t?r&&r.hasAttr(e)?r.attrs[e].value:void 0:!!r&&r.hasAttr(e,t)}},i.prototype.removeAttr=function(e,t,r){return!!arguments.length&&(Array.isArray(e)?(e.forEach(this.removeAttr,this),!1):!!this.hasAttr(e)&&(r||!t||this.attrs[e].value===t)&&(delete this.attrs[e],Object.keys(this.attrs).length||delete this.attrs,!0))},i.prototype.addAttr=function(e){return(e=e||{},void 0!==e.name&&void 0!==e.prefix&&void 0!==e.local)&&(this.attrs=this.attrs||{},this.attrs[e.name]=e,"class"===e.name&&this.class.hasClass(),"style"===e.name&&this.style.hasStyle(),this.attrs[e.name])},i.prototype.eachAttr=function(e,t){if(!this.hasAttr())return!1;for(var r in this.attrs)e.call(t,this.attrs[r]);return!0},i.prototype.someAttr=function(e,t){if(!this.hasAttr())return!1;for(var r in this.attrs)if(e.call(t,this.attrs[r]))return!0;return!1},i.prototype.querySelectorAll=function(e){var t=n(e,this,o);return 0{"use strict";function t(e,t,r,n){function a(e){return e.content=e.content.filter(function(e){n&&e.content&&a(e);for(var o=!0,s=0,l;o&&s{"use strict";var n=r(25510),a=r(71921),o=r(57403),i=r(36395),s=//g,l={strict:!0,trim:!1,normalize:!0,lowercase:!0,xmlns:!0,position:!0};e.exports=function(e,t){function r(e){return e=new a(e,u),(u.content=u.content||[]).push(e),e}function d(e){if(!e.content)return e;for(var t=e.content[0],r=e.content[e.content.length-1];t&&t.content&&!t.text;)t=t.content[0];for(t&&t.text&&(t.text=t.text.replace(/^\s+/,""));r&&r.content&&!r.text;)r=r.content[r.content.length-1];return r&&r.text&&(r.text=r.text.replace(/\s+$/,"")),e}var p=n.parser(l.strict,l),c=new a({elem:"#document",content:[]}),u=c,m=[c],g=null,h=!1;p.ondoctype=function(t){r({doctype:t});var n=t.indexOf("["),a;if(0<=n)for(s.lastIndex=n;null!=(a=s.exec(e));)p.ENTITIES[a[1]]=a[2]||a[3]},p.onprocessinginstruction=function(e){r({processinginstruction:e})},p.oncomment=function(e){r({comment:e.trim()})},p.oncdata=function(e){r({cdata:e})},p.onopentag=function(e){var t={elem:e.name,prefix:e.prefix,local:e.local,attrs:{}};if(t.class=new o(t),t.style=new i(t),Object.keys(e.attributes).length)for(var n in e.attributes)"class"==n&&t.class.hasClass(),"style"==n&&t.style.hasStyle(),t.attrs[n]={name:n,value:e.attributes[n].value,prefix:e.attributes[n].prefix,local:e.attributes[n].local};t=r(t),u=t,"text"!=e.name||e.prefix||(g=u),m.push(t)},p.ontext=function(e){(/\S/.test(e)||g)&&(!g&&(e=e.trim()),r({text:e}))},p.onclosetag=function(){var e=m.pop();e==g&&(d(g),g=null),u=m[m.length-1]},p.onerror=function(t){if(t.message="Error in parsing SVG: "+t.message,0>t.message.indexOf("Unexpected end"))throw t},p.onend=function(){this.error?t({error:this.error.message}):t(c)};try{p.write(e)}catch(r){t({error:r.message}),h=!0}h||p.close()}},79736:(e,t,r)=>{"use strict";var n=r(35747),a;t.By=function(e,t){var r="data:image/svg+xml";return t&&"base64"!==t?"enc"===t?e=r+","+encodeURIComponent(e):"unenc"==t&&(e=r+","+e):(r+=";base64,",e=Buffer.from?r+Buffer.from(e).toString("base64"):r+new Buffer(e).toString("base64")),e},a=function(e){var t=/data:image\/svg\+xml(;charset=[^;,]*)?(;base64)?,(.*)/.exec(e);if(!t)return e;var r=t[3];return t[2]?e=new Buffer(r,"base64").toString("utf8"):"%"===r.charAt(0)?e=decodeURIComponent(r):"<"===r.charAt(0)&&(e=r),e},a=function(e,t){return e.filter(function(e){return-1e||46==(e+"").charCodeAt(0)&&0!=s%1)&&(a=""),s=e,n+=a+e}),n};var o=t.RM=function(e){var t=e.toString();return 0e&&48==t.charCodeAt(0)?t=t.slice(1):-1e&&48==t.charCodeAt(1)&&(t=t.charAt(0)+t.slice(2)),t};a=function(e){try{return n.lstatSync(e).isDirectory()}catch(t){return!1}}},76344:(e,t)=>{"use strict";t.elemsGroups={animation:["animate","animateColor","animateMotion","animateTransform","set"],descriptive:["desc","metadata","title"],shape:["circle","ellipse","line","path","polygon","polyline","rect"],structural:["defs","g","svg","symbol","use"],paintServer:["solidColor","linearGradient","radialGradient","meshGradient","pattern","hatch"],nonRendering:["linearGradient","radialGradient","pattern","clipPath","mask","marker","symbol","filter","solidColor"],container:["a","defs","g","marker","mask","missing-glyph","pattern","svg","switch","symbol","foreignObject"],textContent:["altGlyph","altGlyphDef","altGlyphItem","glyph","glyphRef","textPath","text","tref","tspan"],textContentChild:["altGlyph","textPath","tref","tspan"],lightSource:["feDiffuseLighting","feSpecularLighting","feDistantLight","fePointLight","feSpotLight"],filterPrimitive:["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feFlood","feGaussianBlur","feImage","feMerge","feMorphology","feOffset","feSpecularLighting","feTile","feTurbulence"]},t.pathElems=["path","glyph","missing-glyph"],t.attrsGroups={animationAddition:["additive","accumulate"],animationAttributeTarget:["attributeType","attributeName"],animationEvent:["onbegin","onend","onrepeat","onload"],animationTiming:["begin","dur","end","min","max","restart","repeatCount","repeatDur","fill"],animationValue:["calcMode","values","keyTimes","keySplines","from","to","by"],conditionalProcessing:["requiredFeatures","requiredExtensions","systemLanguage"],core:["id","tabindex","xml:base","xml:lang","xml:space"],graphicalEvent:["onfocusin","onfocusout","onactivate","onclick","onmousedown","onmouseup","onmouseover","onmousemove","onmouseout","onload"],presentation:["alignment-baseline","baseline-shift","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cursor","direction","display","dominant-baseline","enable-background","fill","fill-opacity","fill-rule","filter","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","glyph-orientation-horizontal","glyph-orientation-vertical","image-rendering","letter-spacing","lighting-color","marker-end","marker-mid","marker-start","mask","opacity","overflow","paint-order","pointer-events","shape-rendering","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","text-anchor","text-decoration","text-overflow","text-rendering","transform","unicode-bidi","vector-effect","visibility","word-spacing","writing-mode"],xlink:["xlink:href","xlink:show","xlink:actuate","xlink:type","xlink:role","xlink:arcrole","xlink:title"],documentEvent:["onunload","onabort","onerror","onresize","onscroll","onzoom"],filterPrimitive:["x","y","width","height","result"],transferFunction:["type","tableValues","slope","intercept","amplitude","exponent","offset"]},t.attrsGroupsDefaults={core:{"xml:space":"preserve"},filterPrimitive:{x:"0",y:"0",width:"100%",height:"100%"},presentation:{clip:"auto","clip-path":"none","clip-rule":"nonzero",mask:"none",opacity:"1","stop-color":"#000","stop-opacity":"1","fill-opacity":"1","fill-rule":"nonzero",fill:"#000",stroke:"none","stroke-width":"1","stroke-linecap":"butt","stroke-linejoin":"miter","stroke-miterlimit":"4","stroke-dasharray":"none","stroke-dashoffset":"0","stroke-opacity":"1","paint-order":"normal","vector-effect":"none",display:"inline",visibility:"visible","marker-start":"none","marker-mid":"none","marker-end":"none","color-interpolation":"sRGB","color-interpolation-filters":"linearRGB","color-rendering":"auto","shape-rendering":"auto","text-rendering":"auto","image-rendering":"auto","font-style":"normal","font-variant":"normal","font-weight":"normal","font-stretch":"normal","font-size":"medium","font-size-adjust":"none",kerning:"auto","letter-spacing":"normal","word-spacing":"normal","text-decoration":"none","text-anchor":"start","text-overflow":"clip","writing-mode":"lr-tb","glyph-orientation-vertical":"auto","glyph-orientation-horizontal":"0deg",direction:"ltr","unicode-bidi":"normal","dominant-baseline":"auto","alignment-baseline":"baseline","baseline-shift":"baseline"},transferFunction:{slope:"1",intercept:"0",amplitude:"1",exponent:"1",offset:"0"}},t.elems={a:{attrsGroups:["conditionalProcessing","core","graphicalEvent","presentation","xlink"],attrs:["class","style","externalResourcesRequired","transform","target"],defaults:{target:"_self"},contentGroups:["animation","descriptive","shape","structural","paintServer"],content:["a","altGlyphDef","clipPath","color-profile","cursor","filter","font","font-face","foreignObject","image","marker","mask","pattern","script","style","switch","text","view"]},altGlyph:{attrsGroups:["conditionalProcessing","core","graphicalEvent","presentation","xlink"],attrs:["class","style","externalResourcesRequired","x","y","dx","dy","glyphRef","format","rotate"]},altGlyphDef:{attrsGroups:["core"],content:["glyphRef"]},altGlyphItem:{attrsGroups:["core"],content:["glyphRef","altGlyphItem"]},animate:{attrsGroups:["conditionalProcessing","core","animationAddition","animationAttributeTarget","animationEvent","animationTiming","animationValue","presentation","xlink"],attrs:["externalResourcesRequired"],contentGroups:["descriptive"]},animateColor:{attrsGroups:["conditionalProcessing","core","animationEvent","xlink","animationAttributeTarget","animationTiming","animationValue","animationAddition","presentation"],attrs:["externalResourcesRequired"],contentGroups:["descriptive"]},animateMotion:{attrsGroups:["conditionalProcessing","core","animationEvent","xlink","animationTiming","animationValue","animationAddition"],attrs:["externalResourcesRequired","path","keyPoints","rotate","origin"],defaults:{rotate:"0"},contentGroups:["descriptive"],content:["mpath"]},animateTransform:{attrsGroups:["conditionalProcessing","core","animationEvent","xlink","animationAttributeTarget","animationTiming","animationValue","animationAddition"],attrs:["externalResourcesRequired","type"],contentGroups:["descriptive"]},circle:{attrsGroups:["conditionalProcessing","core","graphicalEvent","presentation"],attrs:["class","style","externalResourcesRequired","transform","cx","cy","r"],defaults:{cx:"0",cy:"0"},contentGroups:["animation","descriptive"]},clipPath:{attrsGroups:["conditionalProcessing","core","presentation"],attrs:["class","style","externalResourcesRequired","transform","clipPathUnits"],defaults:{clipPathUnits:"userSpaceOnUse"},contentGroups:["animation","descriptive","shape"],content:["text","use"]},"color-profile":{attrsGroups:["core","xlink"],attrs:["local","name","rendering-intent"],defaults:{name:"sRGB","rendering-intent":"auto"},contentGroups:["descriptive"]},cursor:{attrsGroups:["core","conditionalProcessing","xlink"],attrs:["externalResourcesRequired","x","y"],defaults:{x:"0",y:"0"},contentGroups:["descriptive"]},defs:{attrsGroups:["conditionalProcessing","core","graphicalEvent","presentation"],attrs:["class","style","externalResourcesRequired","transform"],contentGroups:["animation","descriptive","shape","structural","paintServer"],content:["a","altGlyphDef","clipPath","color-profile","cursor","filter","font","font-face","foreignObject","image","marker","mask","pattern","script","style","switch","text","view"]},desc:{attrsGroups:["core"],attrs:["class","style"]},ellipse:{attrsGroups:["conditionalProcessing","core","graphicalEvent","presentation"],attrs:["class","style","externalResourcesRequired","transform","cx","cy","rx","ry"],defaults:{cx:"0",cy:"0"},contentGroups:["animation","descriptive"]},feBlend:{attrsGroups:["core","presentation","filterPrimitive"],attrs:["class","style","in","in2","mode"],defaults:{mode:"normal"},content:["animate","set"]},feColorMatrix:{attrsGroups:["core","presentation","filterPrimitive"],attrs:["class","style","in","type","values"],defaults:{type:"matrix"},content:["animate","set"]},feComponentTransfer:{attrsGroups:["core","presentation","filterPrimitive"],attrs:["class","style","in"],content:["feFuncA","feFuncB","feFuncG","feFuncR"]},feComposite:{attrsGroups:["core","presentation","filterPrimitive"],attrs:["class","style","in","in2","operator","k1","k2","k3","k4"],defaults:{operator:"over",k1:"0",k2:"0",k3:"0",k4:"0"},content:["animate","set"]},feConvolveMatrix:{attrsGroups:["core","presentation","filterPrimitive"],attrs:["class","style","in","order","kernelMatrix","divisor","bias","targetX","targetY","edgeMode","kernelUnitLength","preserveAlpha"],defaults:{order:"3",bias:"0",edgeMode:"duplicate",preserveAlpha:"false"},content:["animate","set"]},feDiffuseLighting:{attrsGroups:["core","presentation","filterPrimitive"],attrs:["class","style","in","surfaceScale","diffuseConstant","kernelUnitLength"],defaults:{surfaceScale:"1",diffuseConstant:"1"},contentGroups:["descriptive"],content:["feDistantLight","fePointLight","feSpotLight"]},feDisplacementMap:{attrsGroups:["core","presentation","filterPrimitive"],attrs:["class","style","in","in2","scale","xChannelSelector","yChannelSelector"],defaults:{scale:"0",xChannelSelector:"A",yChannelSelector:"A"},content:["animate","set"]},feDistantLight:{attrsGroups:["core"],attrs:["azimuth","elevation"],defaults:{azimuth:"0",elevation:"0"},content:["animate","set"]},feFlood:{attrsGroups:["core","presentation","filterPrimitive"],attrs:["class","style"],content:["animate","animateColor","set"]},feFuncA:{attrsGroups:["core","transferFunction"],content:["set","animate"]},feFuncB:{attrsGroups:["core","transferFunction"],content:["set","animate"]},feFuncG:{attrsGroups:["core","transferFunction"],content:["set","animate"]},feFuncR:{attrsGroups:["core","transferFunction"],content:["set","animate"]},feGaussianBlur:{attrsGroups:["core","presentation","filterPrimitive"],attrs:["class","style","in","stdDeviation"],defaults:{stdDeviation:"0"},content:["set","animate"]},feImage:{attrsGroups:["core","presentation","filterPrimitive","xlink"],attrs:["class","style","externalResourcesRequired","preserveAspectRatio","href","xlink:href"],defaults:{preserveAspectRatio:"xMidYMid meet"},content:["animate","animateTransform","set"]},feMerge:{attrsGroups:["core","presentation","filterPrimitive"],attrs:["class","style"],content:["feMergeNode"]},feMergeNode:{attrsGroups:["core"],attrs:["in"],content:["animate","set"]},feMorphology:{attrsGroups:["core","presentation","filterPrimitive"],attrs:["class","style","in","operator","radius"],defaults:{operator:"erode",radius:"0"},content:["animate","set"]},feOffset:{attrsGroups:["core","presentation","filterPrimitive"],attrs:["class","style","in","dx","dy"],defaults:{dx:"0",dy:"0"},content:["animate","set"]},fePointLight:{attrsGroups:["core"],attrs:["x","y","z"],defaults:{x:"0",y:"0",z:"0"},content:["animate","set"]},feSpecularLighting:{attrsGroups:["core","presentation","filterPrimitive"],attrs:["class","style","in","surfaceScale","specularConstant","specularExponent","kernelUnitLength"],defaults:{surfaceScale:"1",specularConstant:"1",specularExponent:"1"},contentGroups:["descriptive","lightSource"]},feSpotLight:{attrsGroups:["core"],attrs:["x","y","z","pointsAtX","pointsAtY","pointsAtZ","specularExponent","limitingConeAngle"],defaults:{x:"0",y:"0",z:"0",pointsAtX:"0",pointsAtY:"0",pointsAtZ:"0",specularExponent:"1"},content:["animate","set"]},feTile:{attrsGroups:["core","presentation","filterPrimitive"],attrs:["class","style","in"],content:["animate","set"]},feTurbulence:{attrsGroups:["core","presentation","filterPrimitive"],attrs:["class","style","baseFrequency","numOctaves","seed","stitchTiles","type"],defaults:{baseFrequency:"0",numOctaves:"1",seed:"0",stitchTiles:"noStitch",type:"turbulence"},content:["animate","set"]},filter:{attrsGroups:["core","presentation","xlink"],attrs:["class","style","externalResourcesRequired","x","y","width","height","filterRes","filterUnits","primitiveUnits","href","xlink:href"],defaults:{primitiveUnits:"userSpaceOnUse",x:"-10%",y:"-10%",width:"120%",height:"120%"},contentGroups:["descriptive","filterPrimitive"],content:["animate","set"]},font:{attrsGroups:["core","presentation"],attrs:["class","style","externalResourcesRequired","horiz-origin-x","horiz-origin-y","horiz-adv-x","vert-origin-x","vert-origin-y","vert-adv-y"],defaults:{"horiz-origin-x":"0","horiz-origin-y":"0"},contentGroups:["descriptive"],content:["font-face","glyph","hkern","missing-glyph","vkern"]},"font-face":{attrsGroups:["core"],attrs:["font-family","font-style","font-variant","font-weight","font-stretch","font-size","unicode-range","units-per-em","panose-1","stemv","stemh","slope","cap-height","x-height","accent-height","ascent","descent","widths","bbox","ideographic","alphabetic","mathematical","hanging","v-ideographic","v-alphabetic","v-mathematical","v-hanging","underline-position","underline-thickness","strikethrough-position","strikethrough-thickness","overline-position","overline-thickness"],defaults:{"font-style":"all","font-variant":"normal","font-weight":"all","font-stretch":"normal","unicode-range":"U+0-10FFFF","units-per-em":"1000","panose-1":"0 0 0 0 0 0 0 0 0 0",slope:"0"},contentGroups:["descriptive"],content:["font-face-src"]},"font-face-format":{attrsGroups:["core"],attrs:["string"]},"font-face-name":{attrsGroups:["core"],attrs:["name"]},"font-face-src":{attrsGroups:["core"],content:["font-face-name","font-face-uri"]},"font-face-uri":{attrsGroups:["core","xlink"],attrs:["href","xlink:href"],content:["font-face-format"]},foreignObject:{attrsGroups:["core","conditionalProcessing","graphicalEvent","presentation"],attrs:["class","style","externalResourcesRequired","transform","x","y","width","height"],defaults:{x:0,y:0}},g:{attrsGroups:["conditionalProcessing","core","graphicalEvent","presentation"],attrs:["class","style","externalResourcesRequired","transform"],contentGroups:["animation","descriptive","shape","structural","paintServer"],content:["a","altGlyphDef","clipPath","color-profile","cursor","filter","font","font-face","foreignObject","image","marker","mask","pattern","script","style","switch","text","view"]},glyph:{attrsGroups:["core","presentation"],attrs:["class","style","d","horiz-adv-x","vert-origin-x","vert-origin-y","vert-adv-y","unicode","glyph-name","orientation","arabic-form","lang"],defaults:{"arabic-form":"initial"},contentGroups:["animation","descriptive","shape","structural","paintServer"],content:["a","altGlyphDef","clipPath","color-profile","cursor","filter","font","font-face","foreignObject","image","marker","mask","pattern","script","style","switch","text","view"]},glyphRef:{attrsGroups:["core","presentation"],attrs:["class","style","d","horiz-adv-x","vert-origin-x","vert-origin-y","vert-adv-y"],contentGroups:["animation","descriptive","shape","structural","paintServer"],content:["a","altGlyphDef","clipPath","color-profile","cursor","filter","font","font-face","foreignObject","image","marker","mask","pattern","script","style","switch","text","view"]},hatch:{attrsGroups:["core","presentation","xlink"],attrs:["class","style","x","y","pitch","rotate","hatchUnits","hatchContentUnits","transform"],defaults:{hatchUnits:"objectBoundingBox",hatchContentUnits:"userSpaceOnUse",x:"0",y:"0",pitch:"0",rotate:"0"},contentGroups:["animation","descriptive"],content:["hatchPath"]},hatchPath:{attrsGroups:["core","presentation","xlink"],attrs:["class","style","d","offset"],defaults:{offset:"0"},contentGroups:["animation","descriptive"]},hkern:{attrsGroups:["core"],attrs:["u1","g1","u2","g2","k"]},image:{attrsGroups:["core","conditionalProcessing","graphicalEvent","xlink","presentation"],attrs:["class","style","externalResourcesRequired","preserveAspectRatio","transform","x","y","width","height","href","xlink:href"],defaults:{x:"0",y:"0",preserveAspectRatio:"xMidYMid meet"},contentGroups:["animation","descriptive"]},line:{attrsGroups:["conditionalProcessing","core","graphicalEvent","presentation"],attrs:["class","style","externalResourcesRequired","transform","x1","y1","x2","y2"],defaults:{x1:"0",y1:"0",x2:"0",y2:"0"},contentGroups:["animation","descriptive"]},linearGradient:{attrsGroups:["core","presentation","xlink"],attrs:["class","style","externalResourcesRequired","x1","y1","x2","y2","gradientUnits","gradientTransform","spreadMethod","href","xlink:href"],defaults:{x1:"0",y1:"0",x2:"100%",y2:"0",spreadMethod:"pad"},contentGroups:["descriptive"],content:["animate","animateTransform","set","stop"]},marker:{attrsGroups:["core","presentation"],attrs:["class","style","externalResourcesRequired","viewBox","preserveAspectRatio","refX","refY","markerUnits","markerWidth","markerHeight","orient"],defaults:{markerUnits:"strokeWidth",refX:"0",refY:"0",markerWidth:"3",markerHeight:"3"},contentGroups:["animation","descriptive","shape","structural","paintServer"],content:["a","altGlyphDef","clipPath","color-profile","cursor","filter","font","font-face","foreignObject","image","marker","mask","pattern","script","style","switch","text","view"]},mask:{attrsGroups:["conditionalProcessing","core","presentation"],attrs:["class","style","externalResourcesRequired","x","y","width","height","maskUnits","maskContentUnits"],defaults:{maskUnits:"objectBoundingBox",maskContentUnits:"userSpaceOnUse",x:"-10%",y:"-10%",width:"120%",height:"120%"},contentGroups:["animation","descriptive","shape","structural","paintServer"],content:["a","altGlyphDef","clipPath","color-profile","cursor","filter","font","font-face","foreignObject","image","marker","mask","pattern","script","style","switch","text","view"]},metadata:{attrsGroups:["core"]},"missing-glyph":{attrsGroups:["core","presentation"],attrs:["class","style","d","horiz-adv-x","vert-origin-x","vert-origin-y","vert-adv-y"],contentGroups:["animation","descriptive","shape","structural","paintServer"],content:["a","altGlyphDef","clipPath","color-profile","cursor","filter","font","font-face","foreignObject","image","marker","mask","pattern","script","style","switch","text","view"]},mpath:{attrsGroups:["core","xlink"],attrs:["externalResourcesRequired","href","xlink:href"],contentGroups:["descriptive"]},path:{attrsGroups:["conditionalProcessing","core","graphicalEvent","presentation"],attrs:["class","style","externalResourcesRequired","transform","d","pathLength"],contentGroups:["animation","descriptive"]},pattern:{attrsGroups:["conditionalProcessing","core","presentation","xlink"],attrs:["class","style","externalResourcesRequired","viewBox","preserveAspectRatio","x","y","width","height","patternUnits","patternContentUnits","patternTransform","href","xlink:href"],defaults:{patternUnits:"objectBoundingBox",patternContentUnits:"userSpaceOnUse",x:"0",y:"0",width:"0",height:"0",preserveAspectRatio:"xMidYMid meet"},contentGroups:["animation","descriptive","paintServer","shape","structural"],content:["a","altGlyphDef","clipPath","color-profile","cursor","filter","font","font-face","foreignObject","image","marker","mask","pattern","script","style","switch","text","view"]},polygon:{attrsGroups:["conditionalProcessing","core","graphicalEvent","presentation"],attrs:["class","style","externalResourcesRequired","transform","points"],contentGroups:["animation","descriptive"]},polyline:{attrsGroups:["conditionalProcessing","core","graphicalEvent","presentation"],attrs:["class","style","externalResourcesRequired","transform","points"],contentGroups:["animation","descriptive"]},radialGradient:{attrsGroups:["core","presentation","xlink"],attrs:["class","style","externalResourcesRequired","cx","cy","r","fx","fy","fr","gradientUnits","gradientTransform","spreadMethod","href","xlink:href"],defaults:{gradientUnits:"objectBoundingBox",cx:"50%",cy:"50%",r:"50%"},contentGroups:["descriptive"],content:["animate","animateTransform","set","stop"]},meshGradient:{attrsGroups:["core","presentation","xlink"],attrs:["class","style","x","y","gradientUnits","transform"],contentGroups:["descriptive","paintServer","animation"],content:["meshRow"]},meshRow:{attrsGroups:["core","presentation"],attrs:["class","style"],contentGroups:["descriptive"],content:["meshPatch"]},meshPatch:{attrsGroups:["core","presentation"],attrs:["class","style"],contentGroups:["descriptive"],content:["stop"]},rect:{attrsGroups:["conditionalProcessing","core","graphicalEvent","presentation"],attrs:["class","style","externalResourcesRequired","transform","x","y","width","height","rx","ry"],defaults:{x:"0",y:"0"},contentGroups:["animation","descriptive"]},script:{attrsGroups:["core","xlink"],attrs:["externalResourcesRequired","type","href","xlink:href"]},set:{attrsGroups:["conditionalProcessing","core","animation","xlink","animationAttributeTarget","animationTiming"],attrs:["externalResourcesRequired","to"],contentGroups:["descriptive"]},solidColor:{attrsGroups:["core","presentation"],attrs:["class","style"],contentGroups:["paintServer"]},stop:{attrsGroups:["core","presentation"],attrs:["class","style","offset","path"],content:["animate","animateColor","set"]},style:{attrsGroups:["core"],attrs:["type","media","title"],defaults:{type:"text/css"}},svg:{attrsGroups:["conditionalProcessing","core","documentEvent","graphicalEvent","presentation"],attrs:["class","style","x","y","width","height","viewBox","preserveAspectRatio","zoomAndPan","version","baseProfile","contentScriptType","contentStyleType"],defaults:{x:"0",y:"0",width:"100%",height:"100%",preserveAspectRatio:"xMidYMid meet",zoomAndPan:"magnify",version:"1.1",baseProfile:"none",contentScriptType:"application/ecmascript",contentStyleType:"text/css"},contentGroups:["animation","descriptive","shape","structural","paintServer"],content:["a","altGlyphDef","clipPath","color-profile","cursor","filter","font","font-face","foreignObject","image","marker","mask","pattern","script","style","switch","text","view"]},switch:{attrsGroups:["conditionalProcessing","core","graphicalEvent","presentation"],attrs:["class","style","externalResourcesRequired","transform"],contentGroups:["animation","descriptive","shape"],content:["a","foreignObject","g","image","svg","switch","text","use"]},symbol:{attrsGroups:["core","graphicalEvent","presentation"],attrs:["class","style","externalResourcesRequired","preserveAspectRatio","viewBox","refX","refY"],defaults:{refX:0,refY:0},contentGroups:["animation","descriptive","shape","structural","paintServer"],content:["a","altGlyphDef","clipPath","color-profile","cursor","filter","font","font-face","foreignObject","image","marker","mask","pattern","script","style","switch","text","view"]},text:{attrsGroups:["conditionalProcessing","core","graphicalEvent","presentation"],attrs:["class","style","externalResourcesRequired","transform","lengthAdjust","x","y","dx","dy","rotate","textLength"],defaults:{x:"0",y:"0",lengthAdjust:"spacing"},contentGroups:["animation","descriptive","textContentChild"],content:["a"]},textPath:{attrsGroups:["conditionalProcessing","core","graphicalEvent","presentation","xlink"],attrs:["class","style","externalResourcesRequired","href","xlink:href","startOffset","method","spacing","d"],defaults:{startOffset:"0",method:"align",spacing:"exact"},contentGroups:["descriptive"],content:["a","altGlyph","animate","animateColor","set","tref","tspan"]},title:{attrsGroups:["core"],attrs:["class","style"]},tref:{attrsGroups:["conditionalProcessing","core","graphicalEvent","presentation","xlink"],attrs:["class","style","externalResourcesRequired","href","xlink:href"],contentGroups:["descriptive"],content:["animate","animateColor","set"]},tspan:{attrsGroups:["conditionalProcessing","core","graphicalEvent","presentation"],attrs:["class","style","externalResourcesRequired","x","y","dx","dy","rotate","textLength","lengthAdjust"],contentGroups:["descriptive"],content:["a","altGlyph","animate","animateColor","set","tref","tspan"]},use:{attrsGroups:["core","conditionalProcessing","graphicalEvent","presentation","xlink"],attrs:["class","style","externalResourcesRequired","transform","x","y","width","height","href","xlink:href"],defaults:{x:"0",y:"0"},contentGroups:["animation","descriptive"]},view:{attrsGroups:["core"],attrs:["externalResourcesRequired","viewBox","preserveAspectRatio","zoomAndPan","viewTarget"],contentGroups:["descriptive"]},vkern:{attrsGroups:["core"],attrs:["u1","g1","u2","g2","k"]}},t.editorNamespaces=["http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd","http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd","http://www.inkscape.org/namespaces/inkscape","http://www.bohemiancoding.com/sketch/ns","http://ns.adobe.com/AdobeIllustrator/10.0/","http://ns.adobe.com/Graphs/1.0/","http://ns.adobe.com/AdobeSVGViewerExtensions/3.0/","http://ns.adobe.com/Variables/1.0/","http://ns.adobe.com/SaveForWeb/1.0/","http://ns.adobe.com/Extensibility/1.0/","http://ns.adobe.com/Flows/1.0/","http://ns.adobe.com/ImageReplacement/1.0/","http://ns.adobe.com/GenericCustomNamespace/1.0/","http://ns.adobe.com/XPath/1.0/","http://schemas.microsoft.com/visio/2003/SVGExtensions/","http://taptrix.com/vectorillustrator/svg_extensions","http://www.figma.com/figma/ns","http://purl.org/dc/elements/1.1/","http://creativecommons.org/ns#","http://www.w3.org/1999/02/22-rdf-syntax-ns#","http://www.serif.com/","http://www.vector.evaxdesign.sk"],t.referencesProps=["clip-path","color-profile","fill","filter","marker-start","marker-mid","marker-end","mask","stroke","style"],t.inheritableAttrs=["clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cursor","direction","dominant-baseline","fill","fill-opacity","fill-rule","font","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","glyph-orientation-horizontal","glyph-orientation-vertical","image-rendering","letter-spacing","marker","marker-end","marker-mid","marker-start","paint-order","pointer-events","shape-rendering","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","text-anchor","text-rendering","transform","visibility","word-spacing","writing-mode"],t.presentationNonInheritableGroupAttrs=["display","clip-path","filter","mask","opacity","text-decoration","transform","unicode-bidi","visibility"],t.colorsNames={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#0ff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000",blanchedalmond:"#ffebcd",blue:"#00f",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#0ff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#f0f",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",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",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#789",lightslategrey:"#789",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#0f0",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#f0f",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",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:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",rebeccapurple:"#639",red:"#f00",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#fff",whitesmoke:"#f5f5f5",yellow:"#ff0",yellowgreen:"#9acd32"},t.colorsShortNames={"#f0ffff":"azure","#f5f5dc":"beige","#ffe4c4":"bisque","#a52a2a":"brown","#ff7f50":"coral","#ffd700":"gold","#808080":"gray","#008000":"green","#4b0082":"indigo","#fffff0":"ivory","#f0e68c":"khaki","#faf0e6":"linen","#800000":"maroon","#000080":"navy","#808000":"olive","#ffa500":"orange","#da70d6":"orchid","#cd853f":"peru","#ffc0cb":"pink","#dda0dd":"plum","#800080":"purple","#f00":"red","#ff0000":"red","#fa8072":"salmon","#a0522d":"sienna","#c0c0c0":"silver","#fffafa":"snow","#d2b48c":"tan","#008080":"teal","#ff6347":"tomato","#ee82ee":"violet","#f5deb3":"wheat"},t.colorsProps=["color","fill","stroke","stop-color","flood-color","lighting-color"]},54870:(e,t,r)=>{"use strict";function n(e,t,r){return[e[0]*t+e[2]*r+e[4],e[1]*t+e[3]*r+e[5]]}function a(e,t,r,n,a){var o=1-e;return o*o*o*t+3*o*o*e*r+3*o*e*e*n+e*e*e*a}function o(e,t,r,n){var a=[-1,-1],o=-e+2*t-r,i=-_Mathsqrt(-e*(r-n)+t*t-t*(r+n)+r*r),s=-e+3*t-3*r+n;return 0!==s&&(a[0]=(o+i)/s,a[1]=(o-i)/s),a}function i(e,t,r,n){var a=1-e;return a*a*t+2*a*e*r+e*e*n}function s(e,r,n){var a=-1,o=e-2*r+n;return 0!==o&&(a=(e-r)/o),a}function l(e){var t,r;return e=e.reduce(function(e,n){return t&&n.data&&n.instruction==t.instruction?"M"==n.instruction?(t.data=n.data,t.coords=n.coords):t=e[r]={instruction:t.instruction,data:t.data.concat(n.data),coords:n.coords,base:t.base}:(e.push(n),t=n,r=e.length-1),e},[]),e}function d(e,t){return e[0]=t[t.length-2],e[1]=t[t.length-1],e}function p(e,t){if(2==e.length){var r=e[1],n=e[0],o=u(e[1]),i=m(n,r);0g(r,u(t))?u(r):r}function f(e,t,r,n){function a(e,t){return e+l[t%2]}function o(t,r){(!t.length||r[1]>t[t.maxY][1])&&(t.maxY=t.length,e.maxY=e.length?_Mathmax(r[1],e.maxY):r[1]),(!t.length||r[0]>t[t.maxX][0])&&(t.maxX=t.length,e.maxX=e.length?_Mathmax(r[0],e.maxX):r[0]),(!t.length||r[1]=b(t[t.length-2],t[t.length-1],e[a]);)t.pop();e[a][1]=b(o[o.length-2],o[o.length-1],e[a]);)o.pop();e[a][1]>e[s][1]&&(s=a,l=o.length),o.push(e[a])}o.pop(),t.pop();var d=t.concat(o);return d.minX=0,d.maxX=t.length,d.minY=n,d.maxY=(t.length+l)%d.length,d}function b(e,t,r){return(t[0]-e[0])*(r[1]-e[1])-(t[1]-e[1])*(r[0]-e[0])}function S(e,r,a,o,s,l,d,p,c,u){var g=120*_MathPI/180,f=_MathPI/180*(+s||0),b=[],v=function(e,t,r){return e*_Mathcos(r)-t*_Mathsin(r)},C=function(e,t,r){return e*_Mathsin(r)+t*_Mathcos(r)};if(!u){e=v(e,r,-f),r=C(e,r,-f),p=v(p,c,-f),c=C(p,c,-f);var w=(e-p)/2,x=(r-c)/2,y=w*w/(a*a)+x*x/(o*o);1O&&(O=2*_MathPI+O),0>P&&(P=2*_MathPI+P),d&&O>P&&(O-=2*_MathPI),!d&&P>O&&(P-=2*_MathPI)}else O=u[0],P=u[1],k=u[2],A=u[3];var L=P-O;if(_Mathabs(L)>g){var z=P,R=p,M=c;P=O+g*(d&&P>O?1:-1),p=k+a*_Mathcos(P),c=A+o*_Mathsin(P),b=S(p,c,a,o,s,0,d,R,M,[P,z,k,A])}L=P-O;var I=_Mathcos(O),W=_Mathsin(O),q=_Mathcos(P),B=_Mathsin(P),N=_Mathtan(L/4),t=4/3*a*N,D=4/3*o*N,F=[-t*W,D*I,p+t*B-e,c-D*q-r,p-e,c-r];if(u)return F.concat(b);b=F.concat(b);for(var m=[],G=0,U=b.length;Gg&&(g=e),pg&&(g=p),f=o(e,n,l,p),k=0;k=b&&(S=a(b,e,n,l,p),Sg&&(g=S));for(rh&&(h=r),ch&&(h=c),f=o(r,s,d,c),k=0;k=b&&(v=a(b,r,s,d,c),vh&&(h=v));return{minx:u,miny:m,maxx:g,maxy:h}},t.computeQuadraticBoundingBox=function(e,r,n,a,o,l){var d=_NumberPOSITIVE_INFINITY,p=_NumberPOSITIVE_INFINITY,c=_NumberNEGATIVE_INFINITY,u=_NumberNEGATIVE_INFINITY,m,g,h;return ec&&(c=e),oc&&(c=o),m=s(e,n,o),0<=m&&1>=m&&(g=i(m,e,n,o),gc&&(c=g)),ru&&(u=r),lu&&(u=l),m=s(r,a,l),0<=m&&1>=m&&(h=i(m,r,a,l),hu&&(u=h)),{minx:d,miny:p,maxx:c,maxy:u}},t.js2path=function(e,t,r){e.pathJS=t,r.collapseRepeated&&(t=l(t)),e.attr("d").value=t.reduce(function(e,t){var n="";return t.data&&(n=O(t.data,r,t.instruction)),e+=t.instruction+n},"")},t.intersects=function(e,t){function r(e,t,r){return m(n(e,r),n(t,u(r)))}function n(e,t){for(var r=0<=t[1]?0>t[0]?e.maxY:e.maxX:0>t[0]?e.minX:e.minY,n=-Infinity,a;(a=g(e[r],t))>n;)n=a,r=++r%e.length;return e[(r||e.length)-1]}if(3>e.length||3>t.length)return!1;var a=z(e).reduce(f,[]),o=z(t).reduce(f,[]);if(a.maxX<=o.minX||o.maxX<=a.minX||a.maxY<=o.minY||o.maxY<=a.minY||a.every(function(e){return o.every(function(t){return e[e.maxX][0]<=t[t.minX][0]||t[t.maxX][0]<=e[e.minX][0]||e[e.maxY][1]<=t[t.minY][1]||t[t.maxY][1]<=e[e.minY][1]})}))return!1;var i=a.map(y),s=o.map(y);return i.some(function(e){return!(3>e.length)&&s.some(function(t){if(3>t.length)return!1;for(var n=[r(e,t,[1,0])],a=u(n[0]),o=1e4;;){if(0==o--)return console.error("Error: infinite loop while processing mergePaths plugin."),!0;if(n.push(r(e,t,a)),0>=g(a,n[n.length-1]))return!1;if(p(n,a))return!0}})})}},22527:(e,t)=>{"use strict";function r(e){if("matrix"===e.name)return e.data;var t;switch(e.name){case"translate":t=[1,0,0,1,e.data[0],e.data[1]||0];break;case"scale":t=[e.data[0],0,0,e.data[1]||e.data[0],0,0];break;case"rotate":var r=a.cos(e.data[0]),n=a.sin(e.data[0]),o=e.data[1]||0,i=e.data[2]||0;t=[r,n,-n,r,(1-r)*o+n*i,(1-r)*i-n*o];break;case"skewX":t=[1,0,a.tan(e.data[0]),1,0,0];break;case"skewY":t=[1,a.tan(e.data[0]),0,1,0,0];}return t}function n(e,t){return[e[0]*t[0]+e[2]*t[1],e[1]*t[0]+e[3]*t[1],e[0]*t[2]+e[2]*t[3],e[1]*t[2]+e[3]*t[3],e[0]*t[4]+e[2]*t[5]+e[4],e[1]*t[4]+e[3]*t[5]+e[5]]}t.transform2js=function(e){var t=[],r;return e.split(/\s*(matrix|translate|scale|rotate|skewX|skewY)\s*\(\s*(.+?)\s*\)[\s,]*/).forEach(function(e){var n;if(e)if(/matrix|translate|scale|rotate|skewX|skewY/.test(e))t.push(r={name:e});else for(;n=/[-+]?(?:\d*\.\d+|\d+\.?)(?:[eE][-+]?\d+)?/g.exec(e);)n=+n,r.data?r.data.push(n):r.data=[n]}),r&&r.data?t:[]},t.transformsMultiply=function(e){return e=e.map(function(e){return"matrix"===e.name?e.data:r(e)}),e={name:"matrix",data:0n[0]?-1:1)*_Mathhypot(n[0],n[2]),s=(0>n[3]?-1:1)*_Mathhypot(n[1],n[3]),o.push({name:"scale",data:[i,s]}));var c=_Mathmin(_Mathmax(-1,n[0]/i),1),u=[a.acos(c,r)*(0>(p?1:s)*n[1]?-1:1)];if(u[0]&&o.push({name:"rotate",data:u}),d&&l&&o.push({name:"skewX",data:[a.atan(l/(i*i),r)]}),u[0]&&(n[4]||n[5])){o.shift();var m=n[0]/i,g=n[1]/(p?i:s),h=n[4]*(p||s),f=n[5]*(p||i),y=(_Mathpow(1-m,2)+_Mathpow(g,2))*(p||i*s);u.push(((1-m)*h-g*f)/y),u.push(((1-m)*f+g*h)/y)}}else if(n[1]||n[2])return e;return(p&&(1!=i||1!=s)||!o.length)&&o.push({name:"scale",data:i==s?[i]:[i,s]}),o},t.transformArc=function(e,t){var r=e[0],o=e[1],i=e[2]*_MathPI/180,s=_Mathcos(i),l=_Mathsin(i),d=_Mathpow(e[5]*s+e[6]*l,2)/(4*r*r)+_Mathpow(e[6]*s-e[5]*l,2)/(4*o*o);1C:0t[0]!=0>t[3]&&(e[4]=1-e[4]),e}},5519:(e,t)=>{"use strict";t.type="full",t.active=!1,t.description="adds attributes to an outer element";t.fn=function(e,t){if(!t||!(Array.isArray(t.attributes)||t.attribute))return console.error("Error in plugin \"addAttributesToSVGElement\": absent parameters.\nIt should have a list of \"attributes\" or one \"attribute\".\nConfig example:\n\nplugins:\n- addAttributesToSVGElement:\n attribute: \"mySvg\"\n\nplugins:\n- addAttributesToSVGElement:\n attributes: [\"mySvg\", \"size-big\"]\n\nplugins:\n- addAttributesToSVGElement:\n attributes:\n - focusable: false\n - data-image: icon"),e;var r=t.attributes||[t.attribute],n=e.content[0];return n.isElem("svg")&&r.forEach(function(e){"string"==typeof e?!n.hasAttr(e)&&n.addAttr({name:e,prefix:"",local:e}):"object"==typeof e&&Object.keys(e).forEach(function(t){n.hasAttr(t)||n.addAttr({name:t,value:e[t],prefix:"",local:t})})}),e}},75118:(e,t)=>{"use strict";t.type="full",t.active=!1,t.description="adds classnames to an outer element";t.fn=function(e,t){if(!t||!(Array.isArray(t.classNames)&&t.classNames.some(String)||t.className))return console.error("Error in plugin \"addClassesToSVGElement\": absent parameters.\nIt should have a list of classes in \"classNames\" or one \"className\".\nConfig example:\n\nplugins:\n- addClassesToSVGElement:\n className: \"mySvg\"\n\nplugins:\n- addClassesToSVGElement:\n classNames: [\"mySvg\", \"size-big\"]\n"),e;var r=t.classNames||[t.className],n=e.content[0];return n.isElem("svg")&&n.class.add.apply(n.class,r),e}},4106:(e,t)=>{"use strict";t.type="perItem",t.active=!0,t.description="cleanups attributes from newlines, trailing and repeating spaces",t.params={newlines:!0,trim:!0,spaces:!0};t.fn=function(e,t){e.isElem()&&e.eachAttr(function(e){t.newlines&&(e.value=e.value.replace(/(\S)\r?\n(\S)/g,function(e,t,r){return t+" "+r}),e.value=e.value.replace(/\r?\n/g,"")),t.trim&&(e.value=e.value.trim()),t.spaces&&(e.value=e.value.replace(/\s{2,}/g," "))})}},26483:(e,t)=>{"use strict";t.type="full",t.active=!0,t.description="remove or cleanup enable-background attribute when possible",t.fn=function(e){function t(e){if(e.isElem(i)&&e.hasAttr("enable-background")&&e.hasAttr("width")&&e.hasAttr("height")){var t=e.attr("enable-background").value.match(a);t&&e.attr("width").value===t[1]&&e.attr("height").value===t[3]&&(e.isElem("svg")?e.removeAttr("enable-background"):e.attr("enable-background").value="new")}}function r(e){e.isElem("filter")&&(o=!0)}function n(e,t){return e.content.forEach(function(e){t(e),e.content&&n(e,t)}),e}var a=/^new\s0\s0\s([\-+]?\d*\.?\d+([eE][\-+]?\d+)?)\s([\-+]?\d*\.?\d+([eE][\-+]?\d+)?)$/,o=!1,i=["svg","mask","pattern"],s=n(e,function(e){t(e),o||r(e)});return o?s:n(s,function(e){e.removeAttr("enable-background")})}},37762:(e,t,r)=>{"use strict";function n(e,t){if(!t)return!1;for(var r of e)if(t.startsWith(r))return!0;return!1}function a(e){if(!e)return[0];e[e.length-1]++;for(var t=e.length-1;0d&&(e[t]=0,void 0!==e[t-1]&&e[t-1]++);return e[0]>d&&(e[0]=0,e.unshift(0)),e}function o(e,t){var r=t.prefix;return r+e.map(e=>l[e]).join("")}t.type="full",t.active=!0,t.description="removes unused IDs and minifies used",t.params={remove:!0,minify:!0,prefix:"",preserve:[],preservePrefixes:[],force:!1};var i=new Set(r(76344).referencesProps),s=["style","script"],l=["a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"],d=l.length-1;t.fn=function(e,t){function r(e){for(var n=0,a;nc.has(e)||n(u,e);for(var f of d){var y=f[0];if(l.has(y)){if(t.minify&&!h(y)){do g=o(m=a(m),t);while(h(g));l.get(y).attr("id").value=g;for(var b of f[1])b.value=b.value.includes("#")?b.value.replace("#"+y,"#"+g):b.value.replace(y+".",g+".")}l.delete(y)}}if(t.remove)for(var S of l)h(S[0])||S[1].removeAttr("id");return e}},92331:(e,t,r)=>{"use strict";t.type="perItem",t.active=!1,t.description="rounds list of values to the fixed precision",t.params={floatPrecision:3,leadingZero:!0,defaultPx:!0,convertToPx:!0};var n=r(79736).RM,a={cm:96/2.54,mm:96/25.4,in:96,pt:4/3,pc:16};t.fn=function(e,t){function r(e){var r=e.value,o=r.split(/\s+,?\s*|,\s*/),i=[],s,l,d,p,c;o.forEach(function(e){if(d=e.match(/^([\-+]?\d*\.?\d+([eE][\-+]?\d+)?)(px|pt|pc|mm|cm|m|in|ft|em|ex|%)?$/),p=e.match(/new/),d){if(s=+(+d[1]).toFixed(t.floatPrecision),l=d[3]||"",t.convertToPx&&l&&l in a){var r=+(a[l]*d[1]).toFixed(t.floatPrecision);(r+"").length{"use strict";t.type="perItem",t.active=!0,t.description="rounds numeric values to the fixed precision, removes default \u2018px\u2019 units",t.params={floatPrecision:3,leadingZero:!0,defaultPx:!0,convertToPx:!0};var n=r(79736).RM,a={cm:96/2.54,mm:96/25.4,in:96,pt:4/3,pc:16};t.fn=function(e,t){if(e.isElem()){var r=t.floatPrecision;if(e.hasAttr("viewBox")){var o=e.attr("viewBox").value.split(/\s,?\s*|,\s*/g);e.attr("viewBox").value=o.map(function(e){var t=+e;return isNaN(t)?e:+t.toFixed(r)}).join(" ")}e.eachAttr(function(e){if("version"!==e.name){var o=e.value.match(/^([\-+]?\d*\.?\d+([eE][\-+]?\d+)?)(px|pt|pc|mm|cm|m|in|ft|em|ex|%)?$/);if(o){var i=+(+o[1]).toFixed(r),s=o[3]||"";if(t.convertToPx&&s&&s in a){var l=+(a[s]*o[1]).toFixed(r);(l+"").length{"use strict";function n(e){return e.isElem(i)&&e.hasAttr("attributeName",this)||!e.isEmpty()&&e.content.some(n,this)}t.type="perItemReverse",t.active=!0,t.description="collapses useless groups";var a=r(76344),o=a.inheritableAttrs,i=a.elemsGroups.animation;t.fn=function(e){!e.isElem()||e.isElem("switch")||e.isEmpty()||e.content.forEach(function(t,r){if(t.isElem("g")&&!t.isEmpty()){if(t.hasAttr()&&1===t.content.length){var a=t.content[0];!a.isElem()||a.hasAttr("id")||t.hasAttr("filter")||t.hasAttr("class")&&a.hasAttr("class")||(t.hasAttr("clip-path")||t.hasAttr("mask"))&&(!a.isElem("g")||t.hasAttr("transform")||a.hasAttr("transform"))||t.eachAttr(function(e){if(!t.content.some(n,e.name)){if(!a.hasAttr(e.name))a.addAttr(e);else if("transform"==e.name)a.attr(e.name).value=e.value+" "+a.attr(e.name).value;else if(a.hasAttr(e.name,"inherit"))a.attr(e.name).value=e.value;else if(0>o.indexOf(e.name)&&!a.hasAttr(e.name,e.value))return;t.removeAttr(e.name)}})}t.hasAttr()||t.content.some(function(e){return e.isElem(i)})||e.spliceContent(r,1,t.content)}})}},83254:(e,t,r)=>{"use strict";function n(e){return"#"+("00000"+(e[0]<<16|e[1]<<8|e[2]).toString(16)).slice(-6).toUpperCase()}t.type="perItem",t.active=!0,t.description="converts colors: rgb() to #rrggbb and #rrggbb to #rgb",t.params={currentColor:!1,names2hex:!0,rgb2hex:!0,shorthex:!0,shortname:!0};var a=r(76344);t.fn=function(e,t){e.elem&&e.eachAttr(function(e){if(-1{"use strict";t.type="perItem",t.active=!0,t.description="converts non-eccentric s to s",t.fn=function(e){if(e.isElem("ellipse")){var t=e.attr("rx").value||0,r=e.attr("ry").value||0;if(t===r||"auto"===t||"auto"===r){var n="auto"===t?r:t;e.renameElem("circle"),e.removeAttr(["rx","ry"]),e.addAttr({name:"r",value:n,prefix:"",local:"r"})}}}},76307:(e,t,r)=>{"use strict";function n(e){var t=[0,0],r=[0,0],n;return e.forEach(function(a,o){var i=a.instruction,s=a.data;s?(-1<"mcslqta".indexOf(i)?(t[0]+=s[s.length-2],t[1]+=s[s.length-1],"m"===i&&(r[0]=t[0],r[1]=t[1],n=a)):"h"===i?t[0]+=s[0]:"v"===i&&(t[1]+=s[0]),"M"===i?(0_MathPI&&(A.data[3]=1),I=1}for(var D=d,F;(S=p[++D])&&~"cs".indexOf(S.instruction)&&(F=S.data,"s"==S.instruction&&(q=u({instruction:"s",data:S.data.slice()},p[D-1].data),F=q.data,q.data=F.slice(0,2),W=n([q])),s(F)&&f(F,R))&&(r+=b(F,R),!(1e-3_MathPI&&(A.data[3]=1),M.push(S),1e-3<2*_MathPI-r)A.coords=S.coords,A.data[5]=A.coords[0]-A.base[0],A.data[6]=A.coords[1]-A.base[1];else{A.data[5]=2*(R.center[0]-F[4]),A.data[6]=2*(R.center[1]-F[5]),A.coords=[A.base[0]+A.data[5],A.base[1]+A.data[6]],A={instruction:"a",data:[w,w,0,0,E,S.coords[0]-A.coords[0],S.coords[1]-A.coords[1]],coords:S.coords,base:A.coords},O.push(A),D++;break}z[0]-=F[4],z[1]-=F[5]}if((n(O)+W).lengtho[0]||/^0\./.test(o[0])&&r.data[r.data.length-1]%1)))&&(e.instruction=a.toUpperCase(),e.data=s),r=e,!0}),e}function s(e){var t=l([0,0,e[2],e[3],e[0],e[1],e[4],e[5]]);return t&&e[2]t[0]&&e[3]t[1]&&e[4]=E?+e[t].toFixed(T):r}return e}function p(e){for(var t=e.length;0=t||!isFinite(a))return!1;for(;0<=(t-=2);)if(_Mathsqrt(_Mathpow(r*e[t]+n*e[t+1],2)*a)>E)return!1;return!0}function u(e,t){switch(e.instruction){case"s":e.instruction="c";break;case"t":e.instruction="q";}return e.data.unshift(t[t.length-2]-t[t.length-4],t[t.length-1]-t[t.length-3]),e}function m(e,t){return _Mathhypot(e[0]-t[0],e[1]-t[1])}function g(e,r){var t=r*r,n=t*r,a=1-r,o=a*a;return[3*o*r*e[0]+3*a*t*e[2]+n*e[4],3*o*r*e[1]+3*a*t*e[3]+n*e[5]]}function h(e){var t=g(e,1/2),r=[t[0]/2,t[1]/2],n=[(t[0]+e[4])/2,(t[1]+e[5])/2],a=l([r[0],r[1],r[0]+r[1],r[1]-r[0],n[0],n[1],n[0]+(n[1]-t[1]),n[1]-(n[0]-t[0])]),o=a&&m([0,0],a),i=_Mathmin(A*E,O*o/100);if(a&&1e15>o&&[1/4,3/4].every(function(t){return _Mathabs(m(g(e,t),a)-o)<=i}))return{center:a,radius:o}}function f(e,t){var r=_Mathmin(A*E,O*t.radius/100);return[0,1/4,1/2,3/4,1].every(function(n){return _Mathabs(m(g(e,n),t.center)-t.radius)<=r})}function y(e,t){return f(e,{center:[t.center[0]+e[4],t.center[1]+e[5]],radius:t.radius})}function b(e,t){var r=-t.center[0],n=-t.center[1],a=e[4]-t.center[0],o=e[5]-t.center[1];return _Mathacos((r*a+n*o)/_Mathsqrt((r*r+n*n)*(a*a+o*o)))}function S(e,t){return t.reduce(function(t,r){var n="";return r.data&&(n=w(_(r.data.slice()),e)),t+r.instruction+n},"")}t.type="perItem",t.active=!0,t.description="optimizes path data: writes in shorter form, applies transformations",t.params={applyTransforms:!0,applyTransformsStroked:!0,makeArcs:{threshold:2.5,tolerance:.5},straightCurves:!0,lineShorthands:!0,curveSmoothShorthands:!0,floatPrecision:3,transformPrecision:5,removeUseless:!0,collapseRepeated:!0,utilizeAbsolute:!0,leadingZero:!0,negativeExtraSpace:!0,noSpaceAfterFlags:!0,forceAbsolutePath:!1};var x=r(76344).pathElems,v=r(54870).path2js,k=r(54870).js2path,C=r(54870).applyTransforms,w=r(79736).Kr,_,T,E,A,O,P,L;t.fn=function(e,t){if(e.isElem(x)&&e.hasAttr("d")){T=t.floatPrecision,E=!1===T?.01:+_Mathpow(.1,T).toFixed(T),_=0T?d:p,t.makeArcs&&(A=t.makeArcs.threshold,O=t.makeArcs.tolerance),P=e.hasAttr("marker-mid");var r=e.computedAttr("stroke"),i=e.computedAttr("stroke");L=r&&"none"!=r&&i&&"butt"!=i;var s=v(e);s.length&&(n(s),t.applyTransforms&&(s=C(e,s,t)),s=a(s,t),t.utilizeAbsolute&&(s=o(s,t)),k(e,s,t))}}},24199:(e,t)=>{"use strict";t.type="perItem",t.active=!0,t.description="converts basic shapes to more compact path form",t.params={convertArcs:!1};var n={value:0};t.fn=function(e,t){var a=t&&t.convertArcs;if(e.isElem("rect")&&e.hasAttr("width")&&e.hasAttr("height")&&!e.hasAttr("rx")&&!e.hasAttr("ry")){var o=+(e.attr("x")||n).value,i=+(e.attr("y")||n).value,s=+e.attr("width").value,l=+e.attr("height").value;if(isNaN(o-i+s-l))return;e.addAttr({name:"d",value:"M"+o+" "+i+"H"+(o+s)+"V"+(i+l)+"H"+o+"z",prefix:"",local:"d"}),e.renameElem("path").removeAttr(["x","y","width","height"])}else if(e.isElem("line")){var d=+(e.attr("x1")||n).value,p=+(e.attr("y1")||n).value,c=+(e.attr("x2")||n).value,u=+(e.attr("y2")||n).value;if(isNaN(d-p+c-u))return;e.addAttr({name:"d",value:"M"+d+" "+p+"L"+c+" "+u,prefix:"",local:"d"}),e.renameElem("path").removeAttr(["x1","y1","x2","y2"])}else if((e.isElem("polyline")||e.isElem("polygon"))&&e.hasAttr("points")){var m=(e.attr("points").value.match(/[-+]?(?:\d*\.\d+|\d+\.?)(?:[eE][-+]?\d+)?/g)||[]).map(Number);if(4>m.length)return!1;e.addAttr({name:"d",value:"M"+m.slice(0,2).join(" ")+"L"+m.slice(2).join(" ")+(e.isElem("polygon")?"z":""),prefix:"",local:"d"}),e.renameElem("path").removeAttr("points")}else if(e.isElem("circle")&&a){var g=+(e.attr("cx")||n).value,h=+(e.attr("cy")||n).value,f=+(e.attr("r")||n).value;if(isNaN(g-h+f))return;e.addAttr({name:"d",value:"M"+g+" "+(h-f)+"A"+f+" "+f+" 0 1 0 "+g+" "+(h+f)+"A"+f+" "+f+" 0 1 0 "+g+" "+(h-f)+"Z",prefix:"",local:"d"}),e.renameElem("path").removeAttr(["cx","cy","r"])}else if(e.isElem("ellipse")&&a){var r=+(e.attr("cx")||n).value,y=+(e.attr("cy")||n).value,b=+(e.attr("rx")||n).value,S=+(e.attr("ry")||n).value;if(isNaN(r-y+b-S))return;e.addAttr({name:"d",value:"M"+r+" "+(y-S)+"A"+b+" "+S+" 0 1 0 "+r+" "+(y+S)+"A"+b+" "+S+" 0 1 0 "+r+" "+(y-S)+"Z",prefix:"",local:"d"}),e.renameElem("path").removeAttr(["cx","cy","rx","ry"])}}},72446:(e,t,r)=>{"use strict";function n(){return"(?:"+Array.prototype.join.call(arguments,"|")+")"}t.type="perItem",t.active=!0,t.description="converts style to attributes",t.params={keepImportant:!1};var a=r(76344).attrsGroups.presentation,o="\\s*("+n("[^:;\\\\]","\\\\(?:[0-9a-f]{1,6}\\s?|\\r\\n|.)")+"*?)\\s*",i=new RegExp("^"+n("'(?:[^'\\n\\r\\\\]|\\\\(?:[0-9a-f]{1,6}\\s?|\\r\\n|.))*?(?:'|$)","\"(?:[^\"\\n\\r\\\\]|\\\\(?:[0-9a-f]{1,6}\\s?|\\r\\n|.))*?(?:\"|$)")+"$"),s="\\("+n("[^'\"()\\\\]+","\\\\(?:[0-9a-f]{1,6}\\s?|\\r\\n|.)","'(?:[^'\\n\\r\\\\]|\\\\(?:[0-9a-f]{1,6}\\s?|\\r\\n|.))*?(?:'|$)","\"(?:[^\"\\n\\r\\\\]|\\\\(?:[0-9a-f]{1,6}\\s?|\\r\\n|.))*?(?:\"|$)")+"*?\\)",l="\\s*("+n("[^!'\"();\\\\]+?","\\\\(?:[0-9a-f]{1,6}\\s?|\\r\\n|.)","'(?:[^'\\n\\r\\\\]|\\\\(?:[0-9a-f]{1,6}\\s?|\\r\\n|.))*?(?:'|$)","\"(?:[^\"\\n\\r\\\\]|\\\\(?:[0-9a-f]{1,6}\\s?|\\r\\n|.))*?(?:\"|$)",s,"[^;]*?")+"*?)",d=new RegExp(o+":"+l+"(\\s*!important(?![-(w]))?\\s*(?:;\\s*|$)","ig"),p=new RegExp(n("\\\\(?:[0-9a-f]{1,6}\\s?|\\r\\n|.)","'(?:[^'\\n\\r\\\\]|\\\\(?:[0-9a-f]{1,6}\\s?|\\r\\n|.))*?(?:'|$)","\"(?:[^\"\\n\\r\\\\]|\\\\(?:[0-9a-f]{1,6}\\s?|\\r\\n|.))*?(?:\"|$)","/\\*[^]*?\\*/"),"ig");t.fn=function(e,t){if(e.elem&&e.hasAttr("style")){var r=e.attr("style").value,n=[],o={};r=r.replace(p,function(e){return"/"==e[0]?"":"\\"==e[0]&&/[-g-z]/i.test(e[1])?e[1]:e}),d.lastIndex=0;for(var s;s=d.exec(r);)t.keepImportant&&s[3]||n.push([s[1],s[2]]);n.length&&(n=n.filter(function(e){if(e[0]){var t=e[0].toLowerCase(),r=e[1];if(i.test(r)&&(r=r.slice(1,-1)),-1{"use strict";function n(e,t,r){var n=g(e.attr(t).value);r=a(n,r),r.collapseIntoOne&&1t.floatPrecision?u.bind(this,t.floatPrecision):c,y=1<=t.degPrecision&&20>t.floatPrecision?u.bind(this,t.degPrecision):c,S=1<=t.transformPrecision&&20>t.floatPrecision?u.bind(this,t.transformPrecision):c,t}function o(e,t){return"matrix"==t.name?e.concat(t.data.slice(0,4)):e}function i(e){return(e+="").slice(e.indexOf(".")).length-1}function s(e,t){for(var r=0,n;re.data.length)&&1!=e.data[1])&&("matrix"!=e.name||1!=e.data[0]||1!=e.data[3]||e.data[1]||e.data[2]||e.data[4]||e.data[5]))})}function d(e,t){var r="";return e.forEach(function(e){p(e),r+=(r&&" ")+e.name+"("+m(e.data,t)+")"}),r}function p(e){switch(e.name){case"translate":e.data=b(e.data);break;case"rotate":e.data=y(e.data.slice(0,1)).concat(b(e.data.slice(1)));break;case"skewX":case"skewY":e.data=y(e.data);break;case"scale":e.data=S(e.data);break;case"matrix":e.data=S(e.data.slice(0,4)).concat(b(e.data.slice(4)));}return e}function c(e){return e.map(Math.round)}function u(e,t){for(var r=t.length,n=+_Mathpow(.1,e).toFixed(e);r--;)if(t[r].toFixed(e)!=t[r]){var a=+t[r].toFixed(e-1);t[r]=+_Mathabs(a-t[r]).toFixed(e+1)>=n?+t[r].toFixed(e):a}return t}t.type="perItem",t.active=!0,t.description="collapses multiple transformations and optimizes it",t.params={convertToShorts:!0,floatPrecision:3,transformPrecision:5,matrixToTransform:!0,shortTranslate:!0,shortScale:!0,shortRotate:!0,removeUseless:!0,collapseIntoOne:!0,leadingZero:!0,negativeExtraSpace:!1};var m=r(79736).Kr,g=r(22527).transform2js,h=r(22527).transformsMultiply,f=r(22527).matrixToTransform,y,b,S;t.fn=function(e,t){e.elem&&(e.hasAttr("transform")&&n(e,"transform",t),e.hasAttr("gradientTransform")&&n(e,"gradientTransform",t),e.hasAttr("patternTransform")&&n(e,"patternTransform",t))}},81862:(e,t,r)=>{"use strict";t.type="full",t.active=!0,t.params={onlyMatchedOnce:!0,removeMatchedSelectors:!0,useMqs:["","screen"],usePseudos:[""]},t.description="inline styles (additional options)";var n=r(29701),a=r(27604);t.fn=function(e,t){var r=e.querySelectorAll("style");if(null===r)return e;var o=[],i=[];for(var s of r)if(!(s.isEmpty()||s.closestElem("foreignObject"))){var l=a.getCssStr(s),d={};try{d=n.parse(l,{parseValue:!1,parseCustomProperty:!1})}catch(e){continue}o.push({styleEl:s,cssAst:d}),i=i.concat(a.flattenToSelectors(d))}var p=a.filterByMqs(i,t.useMqs),c=a.filterByPseudos(p,t.usePseudos);a.cleanPseudos(c);var u=a.sortSelectors(c).reverse(),m,g;for(m of u){var h=n.generate(m.item.data),f=null;try{f=e.querySelectorAll(h)}catch(e){if(e.constructor===SyntaxError)continue;throw e}null!==f&&(m.selectedEls=f)}for(m of u)if(m.selectedEls&&!(t.onlyMatchedOnce&&null!==m.selectedEls&&1=t.priority||g.style.setProperty(t.name,t.value,t.priority)}});t.removeMatchedSelectors&&null!==m.selectedEls&&0{"use strict";t.type="perItem",t.active=!0,t.description="merges multiple paths in one if possible",t.params={collapseRepeated:!0,force:!1,leadingZero:!0,negativeExtraSpace:!0,noSpaceAfterFlags:!0};var n=r(54870).path2js,a=r(54870).js2path,o=r(54870).intersects;t.fn=function(e,t){if(e.isElem()&&!e.isEmpty()){var r=null,i=null;e.content=e.content.filter(function(e){if(r&&r.isElem("path")&&r.isEmpty()&&r.hasAttr("d")&&e.isElem("path")&&e.isEmpty()&&e.hasAttr("d")){i||(i=Object.keys(r.attrs));var s=Object.keys(e.attrs),l=i.length==s.length&&s.every(function(t){return"d"==t||r.hasAttr(t)&&r.attr(t).value==e.attr(t).value}),d=n(r),p=n(e);if(l&&(t.force||!o(d,p)))return a(r,d.concat(p),t),!1}return r=e,i=null,!0})}}},77686:(e,t,r)=>{"use strict";function n(e){var t={};for(var r in e)t[r]=e[r];return t}function a(e){function t(e,r){for(var n=0,a;n")||0<=t.indexOf("<")?"cdata":"text";e.content[0][n]=s.minify(t,r).css}else{var a=e.attr("style").value;e.attr("style").value=s.minifyBlock(a,o).css}}),e}},42778:(e,t,r)=>{"use strict";function n(e,t){var r={};for(var a in e)t.hasOwnProperty(a)&&-1{"use strict";t.type="perItem",t.active=!0,t.description="moves some group attributes to the content elements";var n=r(76344),a=n.pathElems.concat(["g","text"]),o=n.referencesProps;t.fn=function(e){e.isElem("g")&&e.hasAttr("transform")&&!e.isEmpty()&&!e.someAttr(function(e){return~o.indexOf(e.name)&&~e.value.indexOf("url(")})&&e.content.every(function(e){return e.isElem(a)&&!e.hasAttr("id")})&&(e.content.forEach(function(t){var r=e.attr("transform");t.hasAttr("transform")?t.attr("transform").value=r.value+" "+t.attr("transform").value:t.addAttr({name:r.name,local:r.local,prefix:r.prefix,value:r.value})}),e.removeAttr("transform"))}},33099:(e,t,r)=>{"use strict";t.type="perItem",t.active=!1,t.params={delim:"__",prefixIds:!0,prefixClassNames:!0},t.description="prefix IDs";var n=r(85622),a=r(29701),o=r(47937),i=r(76344),s=i.referencesProps,l=null,d=function(e){return e.replace(/[\. ]/g,"_")},p=function(e){var t=e.match(/^#(.*)$/);return null!==t&&t[1]},c=function(e){var t=/url\((.*?)\)/gi.exec(e);return null!==t&&t[1]},u=function(e){return e&&e.value&&0 element, skipped. Error details: "+t),e}var b="";return a.walk(u,function(e){if((t.prefixIds&&"IdSelector"===e.type||t.prefixClassNames&&"ClassSelector"===e.type)&&e.name)return void(e.name=l(e.name));if("Url"===e.type&&e.value.value&&0{"use strict";t.type="perItem",t.active=!1,t.description="removes attributes of elements that match a css selector",t.fn=function(e,t){var r=Array.isArray(t.selectors)?t.selectors:[t];r.map(function(t){e.matches(t.selector)&&e.removeAttr(t.attributes)})}},91585:(e,t)=>{"use strict";t.type="perItem",t.active=!1,t.description="removes specified attributes",t.params={elemSeparator:":",preserveCurrentColor:!1,attrs:[]},t.fn=function(e,t){if(Array.isArray(t.attrs)||(t.attrs=[t.attrs]),e.isElem()){var r="string"==typeof t.elemSeparator?t.elemSeparator:":",n="boolean"==typeof t.preserveCurrentColor&&t.preserveCurrentColor,a=t.attrs.map(function(e){return-1===e.indexOf(r)?e=[".*",r,e,r,".*"].join(""):3>e.split(r).length&&(e=[e,r,".*"].join("")),e.split(r).map(function(e){return"*"===e&&(e=".*"),new RegExp(["^",e,"$"].join(""),"i")})});a.forEach(function(t){t[0].test(e.elem)&&e.eachAttr(function(r){var a=r.name,o=r.value;!(n&&"fill"==a&&"currentColor"==o||n&&"stroke"==a&&"currentColor"==o)&&t[1].test(a)&&t[2].test(r.value)&&e.removeAttr(a)})})}}},13383:(e,t)=>{"use strict";t.type="perItem",t.active=!0,t.description="removes comments",t.fn=function(e){if(e.comment&&"!"!==e.comment.charAt(0))return!1}},81668:(e,t)=>{"use strict";t.type="perItem",t.active=!0,t.params={removeAny:!0},t.description="removes ";t.fn=function(e,t){return!e.isElem("desc")||!(t.removeAny||e.isEmpty()||/^(Created with|Created using)/.test(e.content[0].text))}},41690:(e,t)=>{"use strict";t.type="perItem",t.active=!1,t.description="removes width and height in presence of viewBox (opposite to removeViewBox, disable it first)",t.fn=function(e){e.isElem("svg")&&(e.hasAttr("viewBox")?(e.removeAttr("width"),e.removeAttr("height")):e.hasAttr("width")&&e.hasAttr("height")&&!isNaN(+e.attr("width").value)&&!isNaN(+e.attr("height").value)&&(e.addAttr({name:"viewBox",value:"0 0 "+ +e.attr("width").value+" "+ +e.attr("height").value,prefix:"",local:"viewBox"}),e.removeAttr("width"),e.removeAttr("height")))}},42114:(e,t)=>{"use strict";t.type="perItem",t.active=!0,t.description="removes doctype declaration",t.fn=function(e){if(e.doctype)return!1}},70325:(e,t,r)=>{"use strict";t.type="perItem",t.active=!0,t.description="removes editors namespaces, elements and attributes";var n=r(76344).editorNamespaces,a=[];t.params={additionalNamespaces:[]},t.fn=function(e,t){if(Array.isArray(t.additionalNamespaces)&&(n=n.concat(t.additionalNamespaces)),e.elem&&(e.isElem("svg")&&e.eachAttr(function(t){"xmlns"===t.prefix&&-1{"use strict";t.type="perItem",t.active=!1,t.description="removes arbitrary elements by ID or className (disabled by default)",t.params={id:[],class:[]},t.fn=function(e,t){var r,n;if(["id","class"].forEach(function(e){Array.isArray(t[e])||(t[e]=[t[e]])}),!!e.isElem()){if(r=e.attr("id"),r)return-1===t.id.indexOf(r.value);if(n=e.attr("class"),n){var a=new RegExp(t.class.join("|"));return!a.test(n.value)}}}},63151:(e,t)=>{"use strict";t.type="perItem",t.active=!0,t.description="removes empty attributes",t.fn=function(e){e.elem&&e.eachAttr(function(t){""===t.value&&e.removeAttr(t.name)})}},41059:(e,t,r)=>{"use strict";t.type="perItemReverse",t.active=!0,t.description="removes empty container elements";var n=r(76344).elemsGroups.container;t.fn=function(e){return!e.isElem(n)||e.isElem("svg")||!e.isEmpty()||e.isElem("pattern")&&e.hasAttrLocal("href")}},14156:(e,t)=>{"use strict";t.type="perItem",t.active=!0,t.description="removes empty elements",t.params={text:!0,tspan:!0,tref:!0},t.fn=function(e,t){return!(t.text&&e.isElem("text")&&e.isEmpty())&&!(t.tspan&&e.isElem("tspan")&&e.isEmpty())&&!(t.tref&&e.isElem("tref")&&!e.hasAttrLocal("href"))&&void 0}},1378:(e,t)=>{"use strict";t.type="perItem",t.active=!0,t.description="removes hidden elements (zero sized, with absent attributes)",t.params={isHidden:!0,displayNone:!0,opacity0:!0,circleR0:!0,ellipseRX0:!0,ellipseRY0:!0,rectWidth0:!0,rectHeight0:!0,patternWidth0:!0,patternHeight0:!0,imageWidth0:!0,imageHeight0:!0,pathEmptyD:!0,polylineEmptyPoints:!0,polygonEmptyPoints:!0};t.fn=function(e,t){if(e.elem){if(t.isHidden&&e.hasAttr("visibility","hidden"))return!1;if(t.displayNone&&e.hasAttr("display","none"))return!1;if(t.opacity0&&e.hasAttr("opacity","0"))return!1;if(t.circleR0&&e.isElem("circle")&&e.isEmpty()&&e.hasAttr("r","0"))return!1;if(t.ellipseRX0&&e.isElem("ellipse")&&e.isEmpty()&&e.hasAttr("rx","0"))return!1;if(t.ellipseRY0&&e.isElem("ellipse")&&e.isEmpty()&&e.hasAttr("ry","0"))return!1;if(t.rectWidth0&&e.isElem("rect")&&e.isEmpty()&&e.hasAttr("width","0"))return!1;if(t.rectHeight0&&t.rectWidth0&&e.isElem("rect")&&e.isEmpty()&&e.hasAttr("height","0"))return!1;if(t.patternWidth0&&e.isElem("pattern")&&e.hasAttr("width","0"))return!1;if(t.patternHeight0&&e.isElem("pattern")&&e.hasAttr("height","0"))return!1;if(t.imageWidth0&&e.isElem("image")&&e.hasAttr("width","0"))return!1;if(t.imageHeight0&&e.isElem("image")&&e.hasAttr("height","0"))return!1;if(t.pathEmptyD&&e.isElem("path")&&(!e.hasAttr("d")||!/M\s*(?:[-+]?(?:\d*\.\d+|\d+(?:\.|(?!\.)))([eE][-+]?\d+)?(?!\d)\s*,?\s*){2}\D*\d/i.test(e.attr("d").value)))return!1;if(t.polylineEmptyPoints&&e.isElem("polyline")&&!e.hasAttr("points"))return!1;if(t.polygonEmptyPoints&&e.isElem("polygon")&&!e.hasAttr("points"))return!1}}},28873:(e,t)=>{"use strict";t.type="perItem",t.active=!0,t.description="removes ",t.fn=function(e){return!e.isElem("metadata")}},67662:(e,t,r)=>{"use strict";t.type="perItem",t.active=!0,t.description="removes non-inheritable group\u2019s presentational attributes";var n=r(76344).inheritableAttrs,a=r(76344).attrsGroups,o=r(76344).presentationNonInheritableGroupAttrs;t.fn=function(e){e.isElem("g")&&e.eachAttr(function(t){!~a.presentation.indexOf(t.name)||~n.indexOf(t.name)||~o.indexOf(t.name)||e.removeAttr(t.name)})}},58267:(e,t,r)=>{"use strict";function n(e){return e.hasAttr("transform")||e.parentNode&&n(e.parentNode)}function a(e){var t="";e.hasAttr("viewBox")?t=e.attr("viewBox").value:e.hasAttr("height")&&e.hasAttr("width")&&(t="0 0 "+e.attr("width").value+" "+e.attr("height").value),t=t.replace(/[,+]|px/g," ").replace(/\s+/g," ").replace(/^\s*|\s*$/g,"");var r=/^(-?\d*\.?\d+) (-?\d*\.?\d+) (\d*\.?\d+) (\d*\.?\d+)$/.exec(t);if(r){p={left:parseFloat(r[1]),top:parseFloat(r[2]),right:parseFloat(r[1])+parseFloat(r[3]),bottom:parseFloat(r[2])+parseFloat(r[4])};var n=new i().createContentItem({elem:"path",prefix:"",local:"path"});n.addAttr({name:"d",prefix:"",local:"d",value:"M"+r[1]+" "+r[2]+"h"+r[3]+"v"+r[4]+"H"+r[1]+"z"}),c=d(n)}}function o(e){for(var t;null!==(t=/M\s*(-?\d*\.?\d+)(?!\d)\s*(-?\d*\.?\d+)/g.exec(e));)if(t[1]>=p.left&&t[1]<=p.right&&t[2]>=p.top&&t[2]<=p.bottom)return!0;return!1}t.type="perItem",t.active=!1,t.description="removes elements that are drawn outside of the viewbox (disabled by default)";var i=r(20485),s=r(54870),l=s.intersects,d=s.path2js,p,c;t.fn=function(e){if(e.isElem("path")&&e.hasAttr("d")&&"undefined"!=typeof p){if(n(e)||o(e.attr("d").value))return!0;var t=d(e);return 2===t.length&&(t=JSON.parse(JSON.stringify(t)),t.push({instruction:"z"})),l(c,t)}return e.isElem("svg")&&a(e),!0}},99062:(e,t)=>{"use strict";t.type="perItem",t.active=!1,t.description="removes raster images (disabled by default)",t.fn=function(e){if(e.isElem("image")&&e.hasAttrLocal("href",/(\.|image\/)(jpg|png|gif)/))return!1}},64186:(e,t)=>{"use strict";t.type="perItem",t.active=!1,t.description="removes