From 2beb8bdfea578cf931cdda06d85212585f6e4498 Mon Sep 17 00:00:00 2001 From: lowlighter <22963968+lowlighter@users.noreply.github.com> Date: Fri, 6 Nov 2020 22:14:35 +0100 Subject: [PATCH] Increase height when isocalendar is enabled, close path tags --- action/dist/index.js | 2 +- src/templates/classic/image.svg | 13 +++++++------ 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/action/dist/index.js b/action/dist/index.js index 582c49a1..5d01bfe1 100644 --- a/action/dist/index.js +++ b/action/dist/index.js @@ -1,4 +1,4 @@ -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.4.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(`eyJjbGFzc2ljIjp7InF1ZXJ5IjoicXVlcnkgTWV0cmljcyB7XHJcbiAgdXNlcihsb2dpbjogJGxvZ2luKSB7XHJcbiAgICBkYXRhYmFzZUlkXHJcbiAgICBuYW1lXHJcbiAgICBsb2dpblxyXG4gICAgY3JlYXRlZEF0XHJcbiAgICBhdmF0YXJVcmxcclxuICAgIHdlYnNpdGVVcmxcclxuICAgIGdpc3RzIHtcclxuICAgICAgdG90YWxDb3VudFxyXG4gICAgfVxyXG4gICAgcmVwb3NpdG9yaWVzKGxhc3Q6ICRyZXBvc2l0b3JpZXMsIGlzRm9yazogZmFsc2UsIG93bmVyQWZmaWxpYXRpb25zOiBPV05FUikge1xyXG4gICAgICB0b3RhbENvdW50XHJcbiAgICAgIHRvdGFsRGlza1VzYWdlXHJcbiAgICAgIG5vZGVzIHtcclxuICAgICAgICBuYW1lXHJcbiAgICAgICAgd2F0Y2hlcnMge1xyXG4gICAgICAgICAgdG90YWxDb3VudFxyXG4gICAgICAgIH1cclxuICAgICAgICBzdGFyZ2F6ZXJzIHtcclxuICAgICAgICAgIHRvdGFsQ291bnRcclxuICAgICAgICB9XHJcbiAgICAgICAgbGFuZ3VhZ2VzKGZpcnN0OiA0KSB7XHJcbiAgICAgICAgICBlZGdlcyB7XHJcbiAgICAgICAgICAgIHNpemVcclxuICAgICAgICAgICAgbm9kZSB7XHJcbiAgICAgICAgICAgICAgY29sb3JcclxuICAgICAgICAgICAgICBuYW1lXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgaXNzdWVzX29wZW46IGlzc3VlcyhzdGF0ZXM6IE9QRU4pIHtcclxuICAgICAgICAgIHRvdGFsQ291bnRcclxuICAgICAgICB9XHJcbiAgICAgICAgaXNzdWVzX2Nsb3NlZDogaXNzdWVzKHN0YXRlczogQ0xPU0VEKSB7XHJcbiAgICAgICAgICB0b3RhbENvdW50XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHByX29wZW46IHB1bGxSZXF1ZXN0cyhzdGF0ZXM6IE9QRU4pIHtcclxuICAgICAgICAgIHRvdGFsQ291bnRcclxuICAgICAgICB9XHJcbiAgICAgICAgcHJfbWVyZ2VkOiBwdWxsUmVxdWVzdHMoc3RhdGVzOiBNRVJHRUQpIHtcclxuICAgICAgICAgIHRvdGFsQ291bnRcclxuICAgICAgICB9XHJcbiAgICAgICAgcmVsZWFzZXMge1xyXG4gICAgICAgICAgdG90YWxDb3VudFxyXG4gICAgICAgIH1cclxuICAgICAgICBmb3JrQ291bnRcclxuICAgICAgICBsaWNlbnNlSW5mbyB7XHJcbiAgICAgICAgICBzcGR4SWRcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHBhY2thZ2VzIHtcclxuICAgICAgdG90YWxDb3VudFxyXG4gICAgfVxyXG4gICAgc3RhcnJlZFJlcG9zaXRvcmllcyB7XHJcbiAgICAgIHRvdGFsQ291bnRcclxuICAgIH1cclxuICAgIHdhdGNoaW5nIHtcclxuICAgICAgdG90YWxDb3VudFxyXG4gICAgfVxyXG4gICAgc3BvbnNvcnNoaXBzQXNTcG9uc29yIHtcclxuICAgICAgdG90YWxDb3VudFxyXG4gICAgfVxyXG4gICAgc3BvbnNvcnNoaXBzQXNNYWludGFpbmVyIHtcclxuICAgICAgdG90YWxDb3VudFxyXG4gICAgfVxyXG4gICAgY29udHJpYnV0aW9uc0NvbGxlY3Rpb24ge1xyXG4gICAgICB0b3RhbFJlcG9zaXRvcmllc1dpdGhDb250cmlidXRlZENvbW1pdHNcclxuICAgICAgdG90YWxDb21taXRDb250cmlidXRpb25zXHJcbiAgICAgIHJlc3RyaWN0ZWRDb250cmlidXRpb25zQ291bnRcclxuICAgICAgdG90YWxJc3N1ZUNvbnRyaWJ1dGlvbnNcclxuICAgICAgdG90YWxQdWxsUmVxdWVzdENvbnRyaWJ1dGlvbnNcclxuICAgICAgdG90YWxQdWxsUmVxdWVzdFJldmlld0NvbnRyaWJ1dGlvbnNcclxuICAgIH1cclxuICAgIGNhbGVuZGFyOmNvbnRyaWJ1dGlvbnNDb2xsZWN0aW9uKGZyb206ICRjYWxlbmRhci5mcm9tLCB0bzogJGNhbGVuZGFyLnRvKSB7XHJcbiAgICAgIGNvbnRyaWJ1dGlvbkNhbGVuZGFyIHtcclxuICAgICAgICB3ZWVrcyB7XHJcbiAgICAgICAgICBjb250cmlidXRpb25EYXlzIHtcclxuICAgICAgICAgICAgY29sb3JcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJlcG9zaXRvcmllc0NvbnRyaWJ1dGVkVG8ge1xyXG4gICAgICB0b3RhbENvdW50XHJcbiAgICB9XHJcbiAgICBmb2xsb3dlcnMge1xyXG4gICAgICB0b3RhbENvdW50XHJcbiAgICB9XHJcbiAgICBmb2xsb3dpbmcge1xyXG4gICAgICB0b3RhbENvdW50XHJcbiAgICB9XHJcbiAgICBpc3N1ZUNvbW1lbnRzIHtcclxuICAgICAgdG90YWxDb3VudFxyXG4gICAgfVxyXG4gICAgb3JnYW5pemF0aW9ucyB7XHJcbiAgICAgIHRvdGFsQ291bnRcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiaW1hZ2UiOiI8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjQ4MFwiIGhlaWdodD1cIjwlPSAxMlxyXG4gICsgKCEhYmFzZS5oZWFkZXIpKjgwXHJcbiAgKyAoISFiYXNlLm1ldGFkYXRhKSozOFxyXG4gICsgKCghIWJhc2UuYWN0aXZpdHkpfHwoISFiYXNlLmNvbW11bml0eSkpKjEyOFxyXG4gICsgKCEhYmFzZS5yZXBvc2l0b3JpZXMpKjEwOFxyXG4gICsgKCghIWJhc2UucmVwb3NpdG9yaWVzKSooKCEhY29tcHV0ZWQucGx1Z2lucy50cmFmZmljKXx8KCEhY29tcHV0ZWQucGx1Z2lucy5saW5lcykpKSoxNlxyXG4gICsgKCEhY29tcHV0ZWQucGx1Z2lucy5mb2xsb3d1cCkqNjhcclxuICArICghIWNvbXB1dGVkLnBsdWdpbnMucGFnZXNwZWVkKSoxMjZcclxuICArICghIWNvbXB1dGVkLnBsdWdpbnMuaGFiaXRzKSo2OFxyXG4gICsgKCEhY29tcHV0ZWQucGx1Z2lucy5sYW5ndWFnZXMpKjk2XHJcbiAgKyAoISFjb21wdXRlZC5wbHVnaW5zLm11c2ljKSo2NCArIChjb21wdXRlZC5wbHVnaW5zLm11c2ljID8gY29tcHV0ZWQucGx1Z2lucy5tdXNpYy50cmFja3MgPyAxNCtNYXRoLm1heCgwLCBjb21wdXRlZC5wbHVnaW5zLm11c2ljLnRyYWNrcy5sZW5ndGgtMSkqMzYgOiAwIDogMClcclxuICArICghIWNvbXB1dGVkLnBsdWdpbnMucG9zdHMpKjY0ICsgKGNvbXB1dGVkLnBsdWdpbnMucG9zdHMgPyBjb21wdXRlZC5wbHVnaW5zLnBvc3RzLnBvc3RzID8gTWF0aC5tYXgoMCwgY29tcHV0ZWQucGx1Z2lucy5wb3N0cy5wb3N0cy5sZW5ndGgpKjQwIDogMCA6IDApXHJcbiAgKyAoISFjb21wdXRlZC5wbHVnaW5zLmlzb2NhbGVuZGFyKSoxODBcclxuICArICghIWNvbXB1dGVkLnBsdWdpbnMuZ2lzdHMpKjY4XHJcbiAgKyBNYXRoLm1heCgwLCAoKCghIWJhc2UubWV0YWRhdGEpKyghIWJhc2UuaGVhZGVyKSsoKCEhYmFzZS5hY3Rpdml0eSl8fCghIWJhc2UuY29tbXVuaXR5KSkrKCEhYmFzZS5yZXBvc2l0b3JpZXMpKygoISFjb21wdXRlZC5wbHVnaW5zLmhhYml0cykpKyghIWNvbXB1dGVkLnBsdWdpbnMucGFnZXNwZWVkKSsoISFjb21wdXRlZC5wbHVnaW5zLmxhbmd1YWdlcykrKCEhY29tcHV0ZWQucGx1Z2lucy5tdXNpYykrKCEhY29tcHV0ZWQucGx1Z2lucy5wb3N0cykrKCEhY29tcHV0ZWQucGx1Z2lucy5pc29jYWxlbmRhcikrKCEhY29tcHV0ZWQucGx1Z2lucy5naXN0cykpLTEpKSo0XHJcbiU+XCI+XHJcblxyXG4gIDxkZWZzPjxzdHlsZT48JT0gZm9udHMgJT48L3N0eWxlPjwvZGVmcz5cclxuXHJcbiAgPHN0eWxlPlxyXG4gICAgPCU9IHN0eWxlICU+XHJcbiAgPC9zdHlsZT5cclxuXHJcbiAgPGZvcmVpZ25PYmplY3QgeD1cIjBcIiB5PVwiMFwiIHdpZHRoPVwiMTAwJVwiIGhlaWdodD1cIjEwMCVcIj5cclxuICAgIDxkaXYgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sXCIgeG1sbnM6eGxpbms9XCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rXCI+XHJcblxyXG4gICAgICA8JSBpZiAoYmFzZS5oZWFkZXIpIHsgJT5cclxuICAgICAgICA8c2VjdGlvbj5cclxuICAgICAgICAgIDxoMSBjbGFzcz1cImZpZWxkXCI+XHJcbiAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJhdmF0YXJcIiBzcmM9XCJkYXRhOmltYWdlL3BuZztiYXNlNjQsPCU9IGNvbXB1dGVkLmF2YXRhciAlPlwiIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyMFwiIC8+XHJcbiAgICAgICAgICAgIDxzcGFuPjwlPSB1c2VyLm5hbWUgfHwgdXNlci5sb2dpbiAlPjwvc3Bhbj5cclxuICAgICAgICAgIDwvaDE+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgIDxzZWN0aW9uPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZFwiPlxyXG4gICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiPjxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTEuNSA4YTYuNSA2LjUgMCAxMTEzIDAgNi41IDYuNSAwIDAxLTEzIDB6TTggMGE4IDggMCAxMDAgMTZBOCA4IDAgMDA4IDB6bS41IDQuNzVhLjc1Ljc1IDAgMDAtMS41IDB2My41YS43NS43NSAwIDAwLjQ3MS42OTZsMi41IDFhLjc1Ljc1IDAgMDAuNTU3LTEuMzkyTDguNSA3Ljc0MlY0Ljc1elwiPjwvcGF0aD48L3N2Zz5cclxuICAgICAgICAgICAgICAgIEpvaW5lZCBHaXRIdWIgPCU9IGNvbXB1dGVkLnJlZ2lzdHJhdGlvbiAlPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZFwiPlxyXG4gICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiPjxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTUuNSAzLjVhMiAyIDAgMTAwIDQgMiAyIDAgMDAwLTR6TTIgNS41YTMuNSAzLjUgMCAxMTUuODk4IDIuNTQ5IDUuNTA3IDUuNTA3IDAgMDEzLjAzNCA0LjA4NC43NS43NSAwIDExLTEuNDgyLjIzNSA0LjAwMSA0LjAwMSAwIDAwLTcuOSAwIC43NS43NSAwIDAxLTEuNDgyLS4yMzZBNS41MDcgNS41MDcgMCAwMTMuMTAyIDguMDUgMy40OSAzLjQ5IDAgMDEyIDUuNXpNMTEgNGEuNzUuNzUgMCAxMDAgMS41IDEuNSAxLjUgMCAwMS42NjYgMi44NDQuNzUuNzUgMCAwMC0uNDE2LjY3MnYuMzUyYS43NS43NSAwIDAwLjU3NC43M2MxLjIuMjg5IDIuMTYyIDEuMiAyLjUyMiAyLjM3MmEuNzUuNzUgMCAxMDEuNDM0LS40NCA1LjAxIDUuMDEgMCAwMC0yLjU2LTMuMDEyQTMgMyAwIDAwMTEgNHpcIj48L3BhdGg+PC9zdmc+XHJcbiAgICAgICAgICAgICAgICBGb2xsb3dlZCBieSA8JT0gdXNlci5mb2xsb3dlcnMudG90YWxDb3VudCAlPiB1c2VyPCU9IHModXNlci5mb2xsb3dlcnMudG90YWxDb3VudCkgJT5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9zZWN0aW9uPlxyXG4gICAgICAgICAgICA8c2VjdGlvbj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGQgY2FsZW5kYXJcIj5cclxuICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgPCU9IGNvbXB1dGVkLmNhbGVuZGFyLmxlbmd0aCoxNSAlPiAxMVwiIHdpZHRoPVwiPCU9IGNvbXB1dGVkLmNhbGVuZGFyLmxlbmd0aCoxNSAlPlwiIGhlaWdodD1cIjE2XCI+XHJcbiAgICAgICAgICAgICAgICAgIDxnPlxyXG4gICAgICAgICAgICAgICAgICAgIDwlIGZvciAoY29uc3QgW3gsIHtjb2xvcn1dIG9mIE9iamVjdC5lbnRyaWVzKGNvbXB1dGVkLmNhbGVuZGFyKSkgeyAlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPHJlY3QgY2xhc3M9XCJkYXlcIiB4PVwiPCU9IHgqMTUgJT5cIiB5PVwiMFwiIHdpZHRoPVwiMTFcIiBoZWlnaHQ9XCIxMVwiIGZpbGw9XCI8JT0gY29sb3IgJT5cIiByeD1cIjJcIiByeT1cIjJcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgIDwlIH0gJT5cclxuICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkXCI+XHJcbiAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNMSAyLjVBMi41IDIuNSAwIDAxMy41IDBoOC43NWEuNzUuNzUgMCAwMS43NS43NXYzLjVhLjc1Ljc1IDAgMDEtMS41IDBWMS41aC04YTEgMSAwIDAwLTEgMXY2LjcwOEEyLjQ5MiAyLjQ5MiAwIDAxMy41IDloMy4yNWEuNzUuNzUgMCAwMTAgMS41SDMuNWExIDEgMCAxMDAgMmg1Ljc1YS43NS43NSAwIDAxMCAxLjVIMy41QTIuNSAyLjUgMCAwMTEgMTEuNXYtOXptMTMuMjMgNy43OWEuNzUuNzUgMCAwMDEuMDYtMS4wNmwtMi41MDUtMi41MDVhLjc1Ljc1IDAgMDAtMS4wNiAwTDkuMjIgOS4yMjlhLjc1Ljc1IDAgMDAxLjA2IDEuMDYxbDEuMjI1LTEuMjI0djYuMTg0YS43NS43NSAwIDAwMS41IDBWOS4wNjZsMS4yMjQgMS4yMjR6XCI+PC9wYXRoPjwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgQ29udHJpYnV0ZWQgdG8gPCU9IHVzZXIucmVwb3NpdG9yaWVzQ29udHJpYnV0ZWRUby50b3RhbENvdW50ICU+IHJlcG9zaXRvcjwlPSBzKHVzZXIucmVwb3NpdG9yaWVzQ29udHJpYnV0ZWRUby50b3RhbENvdW50LCBcInlcIikgJT5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9zZWN0aW9uPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9zZWN0aW9uPlxyXG4gICAgICA8JSB9ICU+XHJcblxyXG4gICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgPCUgaWYgKGJhc2UuYWN0aXZpdHkpIHsgJT5cclxuICAgICAgICAgIDxzZWN0aW9uPlxyXG4gICAgICAgICAgICA8aDIgY2xhc3M9XCJmaWVsZFwiPlxyXG4gICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk0xLjUgMS43NWEuNzUuNzUgMCAwMC0xLjUgMHYxMi41YzAgLjQxNC4zMzYuNzUuNzUuNzVoMTQuNWEuNzUuNzUgMCAwMDAtMS41SDEuNVYxLjc1em0xNC4yOCAyLjUzYS43NS43NSAwIDAwLTEuMDYtMS4wNkwxMCA3Ljk0IDcuNTMgNS40N2EuNzUuNzUgMCAwMC0xLjA2IDBMMy4yMiA4LjcyYS43NS43NSAwIDAwMS4wNiAxLjA2TDcgNy4wNmwyLjQ3IDIuNDdhLjc1Ljc1IDAgMDAxLjA2IDBsNS4yNS01LjI1elwiPjwvcGF0aD48L3N2Zz5cclxuICAgICAgICAgICAgICBBY3Rpdml0eVxyXG4gICAgICAgICAgICA8L2gyPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNMTAuNSA3Ljc1YTIuNSAyLjUgMCAxMS01IDAgMi41IDIuNSAwIDAxNSAwem0xLjQzLjc1YTQuMDAyIDQuMDAyIDAgMDEtNy44NiAwSC43NWEuNzUuNzUgMCAxMTAtMS41aDMuMzJhNC4wMDEgNC4wMDEgMCAwMTcuODYgMGgzLjMyYS43NS43NSAwIDExMCAxLjVoLTMuMzJ6XCI+PC9wYXRoPjwvc3ZnPlxyXG4gICAgICAgICAgICAgIDwlPSBjb21wdXRlZC5jb21taXRzICU+IENvbW1pdDwlPSBzKGNvbXB1dGVkLmNvbW1pdHMpICU+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNMi41IDEuNzVhLjI1LjI1IDAgMDEuMjUtLjI1aDguNWEuMjUuMjUgMCAwMS4yNS4yNXY3LjczNmEuNzUuNzUgMCAxMDEuNSAwVjEuNzVBMS43NSAxLjc1IDAgMDAxMS4yNSAwaC04LjVBMS43NSAxLjc1IDAgMDAxIDEuNzV2MTEuNWMwIC45NjYuNzg0IDEuNzUgMS43NSAxLjc1aDMuMTdhLjc1Ljc1IDAgMDAwLTEuNUgyLjc1YS4yNS4yNSAwIDAxLS4yNS0uMjVWMS43NXpNNC43NSA0YS43NS43NSAwIDAwMCAxLjVoNC41YS43NS43NSAwIDAwMC0xLjVoLTQuNXpNNCA3Ljc1QS43NS43NSAwIDAxNC43NSA3aDJhLjc1Ljc1IDAgMDEwIDEuNWgtMkEuNzUuNzUgMCAwMTQgNy43NXptMTEuNzc0IDMuNTM3YS43NS43NSAwIDAwLTEuMDQ4LTEuMDc0TDEwLjcgMTQuMTQ1IDkuMjgxIDEyLjcyYS43NS43NSAwIDAwLTEuMDYyIDEuMDU4bDEuOTQzIDEuOTVhLjc1Ljc1IDAgMDAxLjA1NS4wMDhsNC41NTctNC40NXpcIj48L3BhdGg+PC9zdmc+XHJcbiAgICAgICAgICAgICAgPCU9IHVzZXIuY29udHJpYnV0aW9uc0NvbGxlY3Rpb24udG90YWxQdWxsUmVxdWVzdFJldmlld0NvbnRyaWJ1dGlvbnMgJT4gUHVsbCByZXF1ZXN0PCU9IHModXNlci5jb250cmlidXRpb25zQ29sbGVjdGlvbi50b3RhbFB1bGxSZXF1ZXN0UmV2aWV3Q29udHJpYnV0aW9ucykgJT4gcmV2aWV3ZWRcclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZFwiPlxyXG4gICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk03LjE3NyAzLjA3M0w5LjU3My42NzdBLjI1LjI1IDAgMDExMCAuODU0djQuNzkyYS4yNS4yNSAwIDAxLS40MjcuMTc3TDcuMTc3IDMuNDI3YS4yNS4yNSAwIDAxMC0uMzU0ek0zLjc1IDIuNWEuNzUuNzUgMCAxMDAgMS41Ljc1Ljc1IDAgMDAwLTEuNXptLTIuMjUuNzVhMi4yNSAyLjI1IDAgMTEzIDIuMTIydjUuMjU2YTIuMjUxIDIuMjUxIDAgMTEtMS41IDBWNS4zNzJBMi4yNSAyLjI1IDAgMDExLjUgMy4yNXpNMTEgMi41aC0xVjRoMWExIDEgMCAwMTEgMXY1LjYyOGEyLjI1MSAyLjI1MSAwIDEwMS41IDBWNUEyLjUgMi41IDAgMDAxMSAyLjV6bTEgMTAuMjVhLjc1Ljc1IDAgMTExLjUgMCAuNzUuNzUgMCAwMS0xLjUgMHpNMy43NSAxMmEuNzUuNzUgMCAxMDAgMS41Ljc1Ljc1IDAgMDAwLTEuNXpcIj48L3BhdGg+PC9zdmc+XHJcbiAgICAgICAgICAgICAgPCU9IHVzZXIuY29udHJpYnV0aW9uc0NvbGxlY3Rpb24udG90YWxQdWxsUmVxdWVzdENvbnRyaWJ1dGlvbnMgJT4gUHVsbCByZXF1ZXN0PCU9IHModXNlci5jb250cmlidXRpb25zQ29sbGVjdGlvbi50b3RhbFB1bGxSZXF1ZXN0Q29udHJpYnV0aW9ucykgJT4gb3BlbmVkXHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNOCAxLjVhNi41IDYuNSAwIDEwMCAxMyA2LjUgNi41IDAgMDAwLTEzek0wIDhhOCA4IDAgMTExNiAwQTggOCAwIDAxMCA4em05IDNhMSAxIDAgMTEtMiAwIDEgMSAwIDAxMiAwem0tLjI1LTYuMjVhLjc1Ljc1IDAgMDAtMS41IDB2My41YS43NS43NSAwIDAwMS41IDB2LTMuNXpcIj48L3BhdGg+PC9zdmc+XHJcbiAgICAgICAgICAgICAgPCU9IHVzZXIuY29udHJpYnV0aW9uc0NvbGxlY3Rpb24udG90YWxJc3N1ZUNvbnRyaWJ1dGlvbnMgJT4gSXNzdWU8JT0gcyh1c2VyLmNvbnRyaWJ1dGlvbnNDb2xsZWN0aW9uLnRvdGFsSXNzdWVDb250cmlidXRpb25zKSAlPiBvcGVuZWRcclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZFwiPlxyXG4gICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk0yLjc1IDIuNWEuMjUuMjUgMCAwMC0uMjUuMjV2Ny41YzAgLjEzOC4xMTIuMjUuMjUuMjVoMmEuNzUuNzUgMCAwMS43NS43NXYyLjE5bDIuNzItMi43MmEuNzUuNzUgMCAwMS41My0uMjJoNC41YS4yNS4yNSAwIDAwLjI1LS4yNXYtNy41YS4yNS4yNSAwIDAwLS4yNS0uMjVIMi43NXpNMSAyLjc1QzEgMS43ODQgMS43ODQgMSAyLjc1IDFoMTAuNWMuOTY2IDAgMS43NS43ODQgMS43NSAxLjc1djcuNUExLjc1IDEuNzUgMCAwMTEzLjI1IDEySDkuMDZsLTIuNTczIDIuNTczQTEuNDU3IDEuNDU3IDAgMDE0IDEzLjU0M1YxMkgyLjc1QTEuNzUgMS43NSAwIDAxMSAxMC4yNXYtNy41elwiPjwvcGF0aD48L3N2Zz5cclxuICAgICAgICAgICAgICA8JT0gdXNlci5pc3N1ZUNvbW1lbnRzLnRvdGFsQ291bnQgJT4gaXNzdWUgY29tbWVudDwlPSBzKHVzZXIuaXNzdWVDb21tZW50cy50b3RhbENvdW50KSAlPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvc2VjdGlvbj5cclxuICAgICAgICA8JSB9ICU+XHJcbiAgICAgICAgPCUgaWYgKGJhc2UuY29tbXVuaXR5KSB7ICU+XHJcbiAgICAgICAgICA8c2VjdGlvbj5cclxuICAgICAgICAgICAgPGgyIGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNMS43NSAwQTEuNzUgMS43NSAwIDAwMCAxLjc1djEyLjVDMCAxNS4yMTYuNzg0IDE2IDEuNzUgMTZoMTIuNUExLjc1IDEuNzUgMCAwMDE2IDE0LjI1VjEuNzVBMS43NSAxLjc1IDAgMDAxNC4yNSAwSDEuNzV6TTEuNSAxLjc1YS4yNS4yNSAwIDAxLjI1LS4yNWgxMi41YS4yNS4yNSAwIDAxLjI1LjI1djEyLjVhLjI1LjI1IDAgMDEtLjI1LjI1SDEuNzVhLjI1LjI1IDAgMDEtLjI1LS4yNVYxLjc1ek0xMS43NSAzYS43NS43NSAwIDAwLS43NS43NXY3LjVhLjc1Ljc1IDAgMDAxLjUgMHYtNy41YS43NS43NSAwIDAwLS43NS0uNzV6bS04LjI1Ljc1YS43NS43NSAwIDAxMS41IDB2NS41YS43NS43NSAwIDAxLTEuNSAwdi01LjV6TTggM2EuNzUuNzUgMCAwMC0uNzUuNzV2My41YS43NS43NSAwIDAwMS41IDB2LTMuNUEuNzUuNzUgMCAwMDggM3pcIj48L3BhdGg+PC9zdmc+XHJcbiAgICAgICAgICAgICAgQ29tbXVuaXR5IHN0YXRzXHJcbiAgICAgICAgICAgIDwvaDI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZFwiPlxyXG4gICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk0xLjUgMTQuMjVjMCAuMTM4LjExMi4yNS4yNS4yNUg0di0xLjI1YS43NS43NSAwIDAxLjc1LS43NWgyLjVhLjc1Ljc1IDAgMDEuNzUuNzV2MS4yNWgyLjI1YS4yNS4yNSAwIDAwLjI1LS4yNVYxLjc1YS4yNS4yNSAwIDAwLS4yNS0uMjVoLTguNWEuMjUuMjUgMCAwMC0uMjUuMjV2MTIuNXpNMS43NSAxNkExLjc1IDEuNzUgMCAwMTAgMTQuMjVWMS43NUMwIC43ODQuNzg0IDAgMS43NSAwaDguNUMxMS4yMTYgMCAxMiAuNzg0IDEyIDEuNzV2MTIuNWMwIC4wODUtLjAwNi4xNjgtLjAxOC4yNWgyLjI2OGEuMjUuMjUgMCAwMC4yNS0uMjVWOC4yODVhLjI1LjI1IDAgMDAtLjExMS0uMjA4bC0xLjA1NS0uNzAzYS43NS43NSAwIDExLjgzMi0xLjI0OGwxLjA1NS43MDNjLjQ4Ny4zMjUuNzc5Ljg3MS43NzkgMS40NTZ2NS45NjVBMS43NSAxLjc1IDAgMDExNC4yNSAxNmgtMy41YS43NS43NSAwIDAxLS4xOTctLjAyNmMtLjA5OS4wMTctLjIuMDI2LS4zMDMuMDI2aC0zYS43NS43NSAwIDAxLS43NS0uNzVWMTRoLTF2MS4yNWEuNzUuNzUgMCAwMS0uNzUuNzVoLTN6TTMgMy43NUEuNzUuNzUgMCAwMTMuNzUgM2guNWEuNzUuNzUgMCAwMTAgMS41aC0uNUEuNzUuNzUgMCAwMTMgMy43NXpNMy43NSA2YS43NS43NSAwIDAwMCAxLjVoLjVhLjc1Ljc1IDAgMDAwLTEuNWgtLjV6TTMgOS43NUEuNzUuNzUgMCAwMTMuNzUgOWguNWEuNzUuNzUgMCAwMTAgMS41aC0uNUEuNzUuNzUgMCAwMTMgOS43NXpNNy43NSA5YS43NS43NSAwIDAwMCAxLjVoLjVhLjc1Ljc1IDAgMDAwLTEuNWgtLjV6TTcgNi43NUEuNzUuNzUgMCAwMTcuNzUgNmguNWEuNzUuNzUgMCAwMTAgMS41aC0uNUEuNzUuNzUgMCAwMTcgNi43NXpNNy43NSAzYS43NS43NSAwIDAwMCAxLjVoLjVhLjc1Ljc1IDAgMDAwLTEuNWgtLjV6XCI+PC9wYXRoPjwvc3ZnPlxyXG4gICAgICAgICAgICAgIE1lbWJlciBvZiA8JT0gdXNlci5vcmdhbml6YXRpb25zLnRvdGFsQ291bnQgJT4gb3JnYW5pemF0aW9uPCU9IHModXNlci5vcmdhbml6YXRpb25zLnRvdGFsQ291bnQpICU+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNNS41IDMuNWEyIDIgMCAxMDAgNCAyIDIgMCAwMDAtNHpNMiA1LjVhMy41IDMuNSAwIDExNS44OTggMi41NDkgNS41MDcgNS41MDcgMCAwMTMuMDM0IDQuMDg0Ljc1Ljc1IDAgMTEtMS40ODIuMjM1IDQuMDAxIDQuMDAxIDAgMDAtNy45IDAgLjc1Ljc1IDAgMDEtMS40ODItLjIzNkE1LjUwNyA1LjUwNyAwIDAxMy4xMDIgOC4wNSAzLjQ5IDMuNDkgMCAwMTIgNS41ek0xMSA0YS43NS43NSAwIDEwMCAxLjUgMS41IDEuNSAwIDAxLjY2NiAyLjg0NC43NS43NSAwIDAwLS40MTYuNjcydi4zNTJhLjc1Ljc1IDAgMDAuNTc0LjczYzEuMi4yODkgMi4xNjIgMS4yIDIuNTIyIDIuMzcyYS43NS43NSAwIDEwMS40MzQtLjQ0IDUuMDEgNS4wMSAwIDAwLTIuNTYtMy4wMTJBMyAzIDAgMDAxMSA0elwiPjwvcGF0aD48L3N2Zz5cclxuICAgICAgICAgICAgICBGb2xsb3dpbmcgPCU9IHVzZXIuZm9sbG93aW5nLnRvdGFsQ291bnQgJT4gdXNlcjwlPSBzKHVzZXIuZm9sbG93ZXJzLnRvdGFsQ291bnQpICU+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNNC4yNSAyLjVjLTEuMzM2IDAtMi43NSAxLjE2NC0yLjc1IDMgMCAyLjE1IDEuNTggNC4xNDQgMy4zNjUgNS42ODJBMjAuNTY1IDIwLjU2NSAwIDAwOCAxMy4zOTNhMjAuNTYxIDIwLjU2MSAwIDAwMy4xMzUtMi4yMTFDMTIuOTIgOS42NDQgMTQuNSA3LjY1IDE0LjUgNS41YzAtMS44MzYtMS40MTQtMy0yLjc1LTMtMS4zNzMgMC0yLjYwOS45ODYtMy4wMjkgMi40NTZhLjc1Ljc1IDAgMDEtMS40NDIgMEM2Ljg1OSAzLjQ4NiA1LjYyMyAyLjUgNC4yNSAyLjV6TTggMTQuMjVsLS4zNDUuNjY2LS4wMDItLjAwMS0uMDA2LS4wMDMtLjAxOC0uMDFhNy42NDMgNy42NDMgMCAwMS0uMzEtLjE3IDIyLjA3NSAyMi4wNzUgMCAwMS0zLjQzNC0yLjQxNEMyLjA0NSAxMC43MzEgMCA4LjM1IDAgNS41IDAgMi44MzYgMi4wODYgMSA0LjI1IDEgNS43OTcgMSA3LjE1MyAxLjgwMiA4IDMuMDIgOC44NDcgMS44MDIgMTAuMjAzIDEgMTEuNzUgMSAxMy45MTQgMSAxNiAyLjgzNiAxNiA1LjVjMCAyLjg1LTIuMDQ1IDUuMjMxLTMuODg1IDYuODE4YTIyLjA4IDIyLjA4IDAgMDEtMy43NDQgMi41ODRsLS4wMTguMDEtLjAwNi4wMDNoLS4wMDJMOCAxNC4yNXptMCAwbC4zNDUuNjY2YS43NTIuNzUyIDAgMDEtLjY5IDBMOCAxNC4yNXpcIj48L3BhdGg+PC9zdmc+XHJcbiAgICAgICAgICAgICAgU3BvbnNvcmluZyA8JT0gdXNlci5zcG9uc29yc2hpcHNBc1Nwb25zb3IudG90YWxDb3VudCAlPiByZXBvc2l0b3I8JT0gcyh1c2VyLnNwb25zb3JzaGlwc0FzU3BvbnNvci50b3RhbENvdW50LCBcInlcIikgJT5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZFwiPlxyXG4gICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk04IC4yNWEuNzUuNzUgMCAwMS42NzMuNDE4bDEuODgyIDMuODE1IDQuMjEuNjEyYS43NS43NSAwIDAxLjQxNiAxLjI3OWwtMy4wNDYgMi45Ny43MTkgNC4xOTJhLjc1Ljc1IDAgMDEtMS4wODguNzkxTDggMTIuMzQ3bC0zLjc2NiAxLjk4YS43NS43NSAwIDAxLTEuMDg4LS43OWwuNzItNC4xOTRMLjgxOCA2LjM3NGEuNzUuNzUgMCAwMS40MTYtMS4yOGw0LjIxLS42MTFMNy4zMjcuNjY4QS43NS43NSAwIDAxOCAuMjV6bTAgMi40NDVMNi42MTUgNS41YS43NS43NSAwIDAxLS41NjQuNDFsLTMuMDk3LjQ1IDIuMjQgMi4xODRhLjc1Ljc1IDAgMDEuMjE2LjY2NGwtLjUyOCAzLjA4NCAyLjc2OS0xLjQ1NmEuNzUuNzUgMCAwMS42OTggMGwyLjc3IDEuNDU2LS41My0zLjA4NGEuNzUuNzUgMCAwMS4yMTYtLjY2NGwyLjI0LTIuMTgzLTMuMDk2LS40NWEuNzUuNzUgMCAwMS0uNTY0LS40MUw4IDIuNjk0di4wMDF6XCI+PC9wYXRoPjwvc3ZnPlxyXG4gICAgICAgICAgICAgIFN0YXJyZWQgPCU9IHVzZXIuc3RhcnJlZFJlcG9zaXRvcmllcy50b3RhbENvdW50ICU+IHJlcG9zaXRvcjwlPSBzKHVzZXIuc3RhcnJlZFJlcG9zaXRvcmllcy50b3RhbENvdW50LCBcInlcIikgJT5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZFwiPlxyXG4gICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk0xLjY3OSA3LjkzMmMuNDEyLS42MjEgMS4yNDItMS43NSAyLjM2Ni0yLjcxN0M1LjE3NSA0LjI0MiA2LjUyNyAzLjUgOCAzLjVjMS40NzMgMCAyLjgyNC43NDIgMy45NTUgMS43MTUgMS4xMjQuOTY3IDEuOTU0IDIuMDk2IDIuMzY2IDIuNzE3YS4xMTkuMTE5IDAgMDEwIC4xMzZjLS40MTIuNjIxLTEuMjQyIDEuNzUtMi4zNjYgMi43MTdDMTAuODI1IDExLjc1OCA5LjQ3MyAxMi41IDggMTIuNWMtMS40NzMgMC0yLjgyNC0uNzQyLTMuOTU1LTEuNzE1QzIuOTIgOS44MTggMi4wOSA4LjY5IDEuNjc5IDguMDY4YS4xMTkuMTE5IDAgMDEwLS4xMzZ6TTggMmMtMS45ODEgMC0zLjY3Ljk5Mi00LjkzMyAyLjA3OEMxLjc5NyA1LjE2OS44OCA2LjQyMy40MyA3LjFhMS42MTkgMS42MTkgMCAwMDAgMS43OThjLjQ1LjY3OCAxLjM2NyAxLjkzMiAyLjYzNyAzLjAyNEM0LjMyOSAxMy4wMDggNi4wMTkgMTQgOCAxNGMxLjk4MSAwIDMuNjctLjk5MiA0LjkzMy0yLjA3OCAxLjI3LTEuMDkxIDIuMTg3LTIuMzQ1IDIuNjM3LTMuMDIzYTEuNjE5IDEuNjE5IDAgMDAwLTEuNzk4Yy0uNDUtLjY3OC0xLjM2Ny0xLjkzMi0yLjYzNy0zLjAyM0MxMS42NzEgMi45OTIgOS45ODEgMiA4IDJ6bTAgOGEyIDIgMCAxMDAtNCAyIDIgMCAwMDAgNHpcIj48L3BhdGg+PC9zdmc+XHJcbiAgICAgICAgICAgICAgV2F0Y2hpbmcgPCU9IHVzZXIud2F0Y2hpbmcudG90YWxDb3VudCAlPiByZXBvc2l0b3I8JT0gcyh1c2VyLndhdGNoaW5nLnRvdGFsQ291bnQsIFwieVwiKSAlPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvc2VjdGlvbj5cclxuICAgICAgICA8JSB9ICU+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPCUgaWYgKGJhc2UucmVwb3NpdG9yaWVzKSB7ICU+XHJcbiAgICAgICAgPHNlY3Rpb24+XHJcbiAgICAgICAgICA8aDIgY2xhc3M9XCJmaWVsZFwiPlxyXG4gICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNMiAyLjVBMi41IDIuNSAwIDAxNC41IDBoOC43NWEuNzUuNzUgMCAwMS43NS43NXYxMi41YS43NS43NSAwIDAxLS43NS43NWgtMi41YS43NS43NSAwIDExMC0xLjVoMS43NXYtMmgtOGExIDEgMCAwMC0uNzE0IDEuNy43NS43NSAwIDAxLTEuMDcyIDEuMDVBMi40OTUgMi40OTUgMCAwMTIgMTEuNXYtOXptMTAuNS0xVjloLThjLS4zNTYgMC0uNjk0LjA3NC0xIC4yMDhWMi41YTEgMSAwIDAxMS0xaDh6TTUgMTIuMjV2My4yNWEuMjUuMjUgMCAwMC40LjJsMS40NS0xLjA4N2EuMjUuMjUgMCAwMS4zIDBMOC42IDE1LjdhLjI1LjI1IDAgMDAuNC0uMnYtMy4yNWEuMjUuMjUgMCAwMC0uMjUtLjI1aC0zLjVhLjI1LjI1IDAgMDAtLjI1LjI1elwiPjwvcGF0aD48L3N2Zz5cclxuICAgICAgICAgICAgPCU9IHVzZXIucmVwb3NpdG9yaWVzLnRvdGFsQ291bnQgJT4gUmVwb3NpdG9yPCU9IHModXNlci5yZXBvc2l0b3JpZXMudG90YWxDb3VudCwgXCJ5XCIpICU+XHJcbiAgICAgICAgICA8L2gyPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICA8c2VjdGlvbj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk04Ljc1Ljc1YS43NS43NSAwIDAwLTEuNSAwVjJoLS45ODRjLS4zMDUgMC0uNjA0LjA4LS44NjkuMjNsLTEuMjg4LjczN0EuMjUuMjUgMCAwMTMuOTg0IDNIMS43NWEuNzUuNzUgMCAwMDAgMS41aC40MjhMLjA2NiA5LjE5MmEuNzUuNzUgMCAwMC4xNTQuODM4bC41My0uNTMtLjUzLjUzdi4wMDFsLjAwMi4wMDIuMDAyLjAwMi4wMDYuMDA2LjAxNi4wMTUuMDQ1LjA0YTMuNTE0IDMuNTE0IDAgMDAuNjg2LjQ1QTQuNDkyIDQuNDkyIDAgMDAzIDExYy44OCAwIDEuNTU2LS4yMiAyLjAyMy0uNDU0YTMuNTE1IDMuNTE1IDAgMDAuNjg2LS40NWwuMDQ1LS4wNC4wMTYtLjAxNS4wMDYtLjAwNi4wMDItLjAwMi4wMDEtLjAwMkw1LjI1IDkuNWwuNTMuNTNhLjc1Ljc1IDAgMDAuMTU0LS44MzhMMy44MjIgNC41aC4xNjJjLjMwNSAwIC42MDQtLjA4Ljg2OS0uMjNsMS4yODktLjczN2EuMjUuMjUgMCAwMS4xMjQtLjAzM2guOTg0VjEzaC0yLjVhLjc1Ljc1IDAgMDAwIDEuNWg2LjVhLjc1Ljc1IDAgMDAwLTEuNWgtMi41VjMuNWguOTg0YS4yNS4yNSAwIDAxLjEyNC4wMzNsMS4yOS43MzZjLjI2NC4xNTIuNTYzLjIzMS44NjguMjMxaC4xNjJsLTIuMTEyIDQuNjkyYS43NS43NSAwIDAwLjE1NC44MzhsLjUzLS41My0uNTMuNTN2LjAwMWwuMDAyLjAwMi4wMDIuMDAyLjAwNi4wMDYuMDE2LjAxNS4wNDUuMDRhMy41MTcgMy41MTcgMCAwMC42ODYuNDVBNC40OTIgNC40OTIgMCAwMDEzIDExYy44OCAwIDEuNTU2LS4yMiAyLjAyMy0uNDU0YTMuNTEyIDMuNTEyIDAgMDAuNjg2LS40NWwuMDQ1LS4wNC4wMS0uMDEuMDA2LS4wMDUuMDA2LS4wMDYuMDAyLS4wMDIuMDAxLS4wMDItLjUyOS0uNTMxLjUzLjUzYS43NS43NSAwIDAwLjE1NC0uODM4TDEzLjgyMyA0LjVoLjQyN2EuNzUuNzUgMCAwMDAtMS41aC0yLjIzNGEuMjUuMjUgMCAwMS0uMTI0LS4wMzNsLTEuMjktLjczNkExLjc1IDEuNzUgMCAwMDkuNzM1IDJIOC43NVYuNzV6TTEuNjk1IDkuMjI3Yy4yODUuMTM1LjcxOC4yNzMgMS4zMDUuMjczczEuMDItLjEzOCAxLjMwNS0uMjczTDMgNi4zMjdsLTEuMzA1IDIuOXptMTAgMGMuMjg1LjEzNS43MTguMjczIDEuMzA1LjI3M3MxLjAyLS4xMzggMS4zMDUtLjI3M0wxMyA2LjMyN2wtMS4zMDUgMi45elwiPjwvcGF0aD48L3N2Zz5cclxuICAgICAgICAgICAgICAgIDwlIGlmIChjb21wdXRlZC5saWNlbnNlcy5mYXZvcml0ZS5sZW5ndGgpIHsgJT5cclxuICAgICAgICAgICAgICAgICAgUHJlZmVyIDwlPSBjb21wdXRlZC5saWNlbnNlcy5mYXZvcml0ZSAlPiBsaWNlbnNlXHJcbiAgICAgICAgICAgICAgICA8JSB9IGVsc2UgeyAlPlxyXG4gICAgICAgICAgICAgICAgICBObyBsaWNlbnNlIHByZWZlcmVuY2VcclxuICAgICAgICAgICAgICAgIDwlIH0gJT5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk0yLjUgNy43NzVWMi43NWEuMjUuMjUgMCAwMS4yNS0uMjVoNS4wMjVhLjI1LjI1IDAgMDEuMTc3LjA3M2w2LjI1IDYuMjVhLjI1LjI1IDAgMDEwIC4zNTRsLTUuMDI1IDUuMDI1YS4yNS4yNSAwIDAxLS4zNTQgMGwtNi4yNS02LjI1YS4yNS4yNSAwIDAxLS4wNzMtLjE3N3ptLTEuNSAwVjIuNzVDMSAxLjc4NCAxLjc4NCAxIDIuNzUgMWg1LjAyNWMuNDY0IDAgLjkxLjE4NCAxLjIzOC41MTNsNi4yNSA2LjI1YTEuNzUgMS43NSAwIDAxMCAyLjQ3NGwtNS4wMjYgNS4wMjZhMS43NSAxLjc1IDAgMDEtMi40NzQgMGwtNi4yNS02LjI1QTEuNzUgMS43NSAwIDAxMSA3Ljc3NXpNNiA1YTEgMSAwIDEwMCAyIDEgMSAwIDAwMC0yelwiPjwvcGF0aD48L3N2Zz5cclxuICAgICAgICAgICAgICAgIDwlPSBjb21wdXRlZC5yZXBvc2l0b3JpZXMucmVsZWFzZXMgJT4gUmVsZWFzZTwlPSBzKGNvbXB1dGVkLnJlcG9zaXRvcmllcy5yZWxlYXNlcykgJT5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk04Ljg3OC4zOTJhMS43NSAxLjc1IDAgMDAtMS43NTYgMGwtNS4yNSAzLjA0NUExLjc1IDEuNzUgMCAwMDEgNC45NTF2Ni4wOThjMCAuNjI0LjMzMiAxLjIuODcyIDEuNTE0bDUuMjUgMy4wNDVhMS43NSAxLjc1IDAgMDAxLjc1NiAwbDUuMjUtMy4wNDVjLjU0LS4zMTMuODcyLS44OS44NzItMS41MTRWNC45NTFjMC0uNjI0LS4zMzItMS4yLS44NzItMS41MTRMOC44NzguMzkyek03Ljg3NSAxLjY5YS4yNS4yNSAwIDAxLjI1IDBsNC42MyAyLjY4NUw4IDcuMTMzIDMuMjQ1IDQuMzc1bDQuNjMtMi42ODV6TTIuNSA1LjY3N3Y1LjM3MmMwIC4wOS4wNDcuMTcxLjEyNS4yMTZsNC42MjUgMi42ODNWOC40MzJMMi41IDUuNjc3em02LjI1IDguMjcxbDQuNjI1LTIuNjgzYS4yNS4yNSAwIDAwLjEyNS0uMjE2VjUuNjc3TDguNzUgOC40MzJ2NS41MTZ6XCI+PC9wYXRoPjwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgPCU9IHVzZXIucGFja2FnZXMudG90YWxDb3VudCAlPiBQYWNrYWdlPCU9IHModXNlci5wYWNrYWdlcy50b3RhbENvdW50KSAlPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZFwiPlxyXG4gICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiPjxwYXRoIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk0yLjUgMy41YzAtLjEzMy4wNTgtLjMxOC4yODItLjU1LjIyNy0uMjM3LjU5Mi0uNDg0IDEuMS0uNzA4QzQuODk5IDEuNzk1IDYuMzU0IDEuNSA4IDEuNWMxLjY0NyAwIDMuMTAyLjI5NSA0LjExNy43NDIuNTEuMjI0Ljg3NC40NyAxLjEwMS43MDcuMjI0LjIzMy4yODIuNDE4LjI4Mi41NTEgMCAuMTMzLS4wNTguMzE4LS4yODIuNTUtLjIyNy4yMzctLjU5Mi40ODQtMS4xLjcwOEMxMS4xMDEgNS4yMDUgOS42NDYgNS41IDggNS41Yy0xLjY0NyAwLTMuMTAyLS4yOTUtNC4xMTctLjc0Mi0uNTEtLjIyNC0uODc0LS40Ny0xLjEwMS0uNzA3LS4yMjQtLjIzMy0uMjgyLS40MTgtLjI4Mi0uNTUxek0xIDMuNWMwLS42MjYuMjkyLTEuMTY1LjctMS41OS40MDYtLjQyMi45NTYtLjc2NyAxLjU3OS0xLjA0MUM0LjUyNS4zMiA2LjE5NSAwIDggMGMxLjgwNSAwIDMuNDc1LjMyIDQuNzIyLjg2OS42MjIuMjc0IDEuMTcyLjYyIDEuNTc4IDEuMDQuNDA4LjQyNi43Ljk2NS43IDEuNTkxdjljMCAuNjI2LS4yOTIgMS4xNjUtLjcgMS41OS0uNDA2LjQyMi0uOTU2Ljc2Ny0xLjU3OSAxLjA0MUMxMS40NzYgMTUuNjggOS44MDYgMTYgOCAxNmMtMS44MDUgMC0zLjQ3NS0uMzItNC43MjEtLjg2OS0uNjIzLS4yNzQtMS4xNzMtLjYyLTEuNTc5LTEuMDQtLjQwOC0uNDI2LS43LS45NjUtLjctMS41OTF2LTl6TTIuNSA4VjUuNzI0Yy4yNDEuMTUuNTAzLjI4Ni43NzkuNDA3QzQuNTI1IDYuNjggNi4xOTUgNyA4IDdjMS44MDUgMCAzLjQ3NS0uMzIgNC43MjItLjg2OS4yNzUtLjEyMS41MzctLjI1Ny43NzgtLjQwN1Y4YzAgLjEzMy0uMDU4LjMxOC0uMjgyLjU1LS4yMjcuMjM3LS41OTIuNDg0LTEuMS43MDhDMTEuMTAxIDkuNzA1IDkuNjQ2IDEwIDggMTBjLTEuNjQ3IDAtMy4xMDItLjI5NS00LjExNy0uNzQyLS41MS0uMjI0LS44NzQtLjQ3LTEuMTAxLS43MDdDMi41NTggOC4zMTggMi41IDguMTMzIDIuNSA4em0wIDIuMjI1VjEyLjVjMCAuMTMzLjA1OC4zMTguMjgyLjU1LjIyNy4yMzcuNTkyLjQ4NCAxLjEuNzA4IDEuMDE2LjQ0NyAyLjQ3MS43NDIgNC4xMTguNzQyIDEuNjQ3IDAgMy4xMDItLjI5NSA0LjExNy0uNzQyLjUxLS4yMjQuODc0LS40NyAxLjEwMS0uNzA3LjIyNC0uMjMzLjI4Mi0uNDE4LjI4Mi0uNTUxdi0yLjI3NWMtLjI0MS4xNS0uNTAzLjI4NS0uNzc4LjQwNi0xLjI0Ny41NDktMi45MTcuODY5LTQuNzIyLjg2OS0xLjgwNSAwLTMuNDc1LS4zMi00LjcyMS0uODY5YTYuMjM2IDYuMjM2IDAgMDEtLjc3OS0uNDA2elwiLz48L3N2Zz5cclxuICAgICAgICAgICAgICAgIDwlPSBjb21wdXRlZC5kaXNrVXNhZ2UgJT4gdXNlZFxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwlIGlmIChjb21wdXRlZC5wbHVnaW5zLmxpbmVzKSB7ICU+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZCA8JT0gY29tcHV0ZWQucGx1Z2lucy5saW5lcy5lcnJvciA/ICdlcnJvcicgOiAnJyAlPlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiPjxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTIuNzUgMS41YS4yNS4yNSAwIDAwLS4yNS4yNXYxMi41YzAgLjEzOC4xMTIuMjUuMjUuMjVoMTAuNWEuMjUuMjUgMCAwMC4yNS0uMjVWNC42NjRhLjI1LjI1IDAgMDAtLjA3My0uMTc3bC0yLjkxNC0yLjkxNGEuMjUuMjUgMCAwMC0uMTc3LS4wNzNIMi43NXpNMSAxLjc1QzEgLjc4NCAxLjc4NCAwIDIuNzUgMGg3LjU4NmMuNDY0IDAgLjkwOS4xODQgMS4yMzcuNTEzbDIuOTE0IDIuOTE0Yy4zMjkuMzI4LjUxMy43NzMuNTEzIDEuMjM3djkuNTg2QTEuNzUgMS43NSAwIDAxMTMuMjUgMTZIMi43NUExLjc1IDEuNzUgMCAwMTEgMTQuMjVWMS43NXptNyAxLjVhLjc1Ljc1IDAgMDEuNzUuNzV2MS41aDEuNWEuNzUuNzUgMCAwMTAgMS41aC0xLjV2MS41YS43NS43NSAwIDAxLTEuNSAwVjdoLTEuNWEuNzUuNzUgMCAwMTAtMS41aDEuNVY0QS43NS43NSAwIDAxOCAzLjI1em0tMyA4YS43NS43NSAwIDAxLjc1LS43NWg0LjVhLjc1Ljc1IDAgMDEwIDEuNWgtNC41YS43NS43NSAwIDAxLS43NS0uNzV6XCI+PC9wYXRoPjwvc3ZnPiAgICAgICAgICAgICAgICAgICAgPCUgaWYgKGNvbXB1dGVkLnBsdWdpbnMubGluZXMuZXJyb3IpIHsgJT5cclxuICAgICAgICAgICAgICAgICAgICAgIDwlPSBjb21wdXRlZC5wbHVnaW5zLmxpbmVzLmVycm9yLm1lc3NhZ2UgJT5cclxuICAgICAgICAgICAgICAgICAgICA8JSB9IGVsc2UgeyAlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPCU9IGNvbXB1dGVkLnBsdWdpbnMubGluZXMuYWRkZWQgJT4gYWRkZWQsIDwlPSBjb21wdXRlZC5wbHVnaW5zLmxpbmVzLmRlbGV0ZWQgJT4gcmVtb3ZlZFxyXG4gICAgICAgICAgICAgICAgICAgIDwlIH0gJT5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+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+XHJcbiAgICAgICAgICAgICAgICA8JSBpZiAoY29tcHV0ZWQucGx1Z2lucy5wb3N0cy5wb3N0cy5sZW5ndGgpIHsgJT5cclxuICAgICAgICAgICAgICAgICAgPCUgZm9yIChjb25zdCB7dGl0bGUsIGRhdGV9IG9mIGNvbXB1dGVkLnBsdWdpbnMucG9zdHMucG9zdHMpIHsgJT5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGQgcG9zdFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiPjxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTQuNzUgMGEuNzUuNzUgMCAwMS43NS43NVYyaDVWLjc1YS43NS43NSAwIDAxMS41IDBWMmgxLjI1Yy45NjYgMCAxLjc1Ljc4NCAxLjc1IDEuNzV2MTAuNUExLjc1IDEuNzUgMCAwMTEzLjI1IDE2SDIuNzVBMS43NSAxLjc1IDAgMDExIDE0LjI1VjMuNzVDMSAyLjc4NCAxLjc4NCAyIDIuNzUgMkg0Vi43NUEuNzUuNzUgMCAwMTQuNzUgMHptMCAzLjVoOC41YS4yNS4yNSAwIDAxLjI1LjI1VjZoLTExVjMuNzVhLjI1LjI1IDAgMDEuMjUtLjI1aDJ6bS0yLjI1IDR2Ni43NWMwIC4xMzguMTEyLjI1LjI1LjI1aDEwLjVhLjI1LjI1IDAgMDAuMjUtLjI1VjcuNWgtMTF6XCIvPjwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImluZm9zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkYXRlXCI+PCU9IGRhdGUgJT48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRpdGxlXCI+PCU9IHRpdGxlICU+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgPCUgfSAlPlxyXG4gICAgICAgICAgICAgICAgPCUgfSBlbHNlIHsgJT5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiPjxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTEuNzUgMS41YS4yNS4yNSAwIDAwLS4yNS4yNXY5LjVjMCAuMTM4LjExMi4yNS4yNS4yNWgyYS43NS43NSAwIDAxLjc1Ljc1djIuMTlsMi43Mi0yLjcyYS43NS43NSAwIDAxLjUzLS4yMmg2LjVhLjI1LjI1IDAgMDAuMjUtLjI1di05LjVhLjI1LjI1IDAgMDAtLjI1LS4yNUgxLjc1ek0wIDEuNzVDMCAuNzg0Ljc4NCAwIDEuNzUgMGgxMi41QzE1LjIxNiAwIDE2IC43ODQgMTYgMS43NXY5LjVBMS43NSAxLjc1IDAgMDExNC4yNSAxM0g4LjA2bC0yLjU3MyAyLjU3M0ExLjQ1NyAxLjQ1NyAwIDAxMyAxNC41NDNWMTNIMS43NUExLjc1IDEuNzUgMCAwMTAgMTEuMjV2LTkuNXpNOSA5YTEgMSAwIDExLTIgMCAxIDEgMCAwMTIgMHptLS4yNS01LjI1YS43NS43NSAwIDAwLTEuNSAwdjIuNWEuNzUuNzUgMCAwMDEuNSAwdi0yLjV6XCI+PC9wYXRoPjwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgIE5vIHJlY2VudCBwb3N0c1xyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwlIH0gJT5cclxuICAgICAgICAgICAgICA8JSB9ICU+XHJcbiAgICAgICAgICAgIDwvc2VjdGlvbj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvc2VjdGlvbj5cclxuICAgICAgPCUgfSAlPlxyXG5cclxuICAgICAgPCUgaWYgKGNvbXB1dGVkLnBsdWdpbnMuaXNvY2FsZW5kYXIpIHsgJT5cclxuICAgICAgICA8c2VjdGlvbj5cclxuICAgICAgICAgIDxoMiBjbGFzcz1cImZpZWxkXCI+XHJcbiAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk00Ljc1IDBhLjc1Ljc1IDAgMDEuNzUuNzVWMmg1Vi43NWEuNzUuNzUgMCAwMTEuNSAwVjJoMS4yNWMuOTY2IDAgMS43NS43ODQgMS43NSAxLjc1djEwLjVBMS43NSAxLjc1IDAgMDExMy4yNSAxNkgyLjc1QTEuNzUgMS43NSAwIDAxMSAxNC4yNVYzLjc1QzEgMi43ODQgMS43ODQgMiAyLjc1IDJINFYuNzVBLjc1Ljc1IDAgMDE0Ljc1IDB6bTAgMy41aDguNWEuMjUuMjUgMCAwMS4yNS4yNVY2aC0xMVYzLjc1YS4yNS4yNSAwIDAxLjI1LS4yNWgyem0tMi4yNSA0djYuNzVjMCAuMTM4LjExMi4yNS4yNS4yNWgxMC41YS4yNS4yNSAwIDAwLjI1LS4yNVY3LjVoLTExelwiLz48L3N2Zz5cclxuICAgICAgICAgICAgQ29udHJpYnV0aW9ucyBjYWxlbmRhclxyXG4gICAgICAgICAgPC9oMj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgPHNlY3Rpb24+XHJcbiAgICAgICAgICAgICAgPCUgaWYgKGNvbXB1dGVkLnBsdWdpbnMuaXNvY2FsZW5kYXIuZXJyb3IpIHsgJT5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZCBlcnJvclwiPlxyXG4gICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNMi4zNDMgMTMuNjU3QTggOCAwIDExMTMuNjU3IDIuMzQzIDggOCAwIDAxMi4zNDMgMTMuNjU3ek02LjAzIDQuOTdhLjc1Ljc1IDAgMDAtMS4wNiAxLjA2TDYuOTQgOCA0Ljk3IDkuOTdhLjc1Ljc1IDAgMTAxLjA2IDEuMDZMOCA5LjA2bDEuOTcgMS45N2EuNzUuNzUgMCAxMDEuMDYtMS4wNkw5LjA2IDhsMS45Ny0xLjk3YS43NS43NSAwIDEwLTEuMDYtMS4wNkw4IDYuOTQgNi4wMyA0Ljk3elwiPjwvcGF0aD48L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgPCU9IGNvbXB1dGVkLnBsdWdpbnMuaXNvY2FsZW5kYXIuZXJyb3IubWVzc2FnZSAlPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPCUgfSAlPlxyXG4gICAgICAgICAgICA8L3NlY3Rpb24+XHJcbiAgICAgICAgICAgIDwlIGlmICghY29tcHV0ZWQucGx1Z2lucy5pc29jYWxlbmRhci5lcnJvcikgeyAlPlxyXG4gICAgICAgICAgICAgIDxzZWN0aW9uPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk03Ljk5OCAxNC41YzIuODMyIDAgNS0xLjk4IDUtNC41IDAtMS40NjMtLjY4LTIuMTktMS44NzktMy4zODNsLS4wMzYtLjAzN2MtMS4wMTMtMS4wMDgtMi4zLTIuMjktMi44MzQtNC40MzQtLjMyMi4yNTYtLjYzLjU3OS0uODY0Ljk1My0uNDMyLjY5Ni0uNjIxIDEuNTgtLjA0NiAyLjczLjQ3My45NDcuNjcgMi4yODQtLjI3OCAzLjIzMi0uNjEuNjEtMS41NDUuODQtMi40MDMuNjMzYTIuNzg4IDIuNzg4IDAgMDEtMS40MzYtLjg3NEEzLjIxIDMuMjEgMCAwMDMgMTBjMCAyLjUzIDIuMTY0IDQuNSA0Ljk5OCA0LjV6TTkuNTMzLjc1M0M5LjQ5Ni4zNCA5LjE2LjAwOSA4Ljc3LjE0NiA3LjAzNS43NSA0LjM0IDMuMTg3IDUuOTk3IDYuNWMuMzQ0LjY4OS4yODUgMS4yMTguMDAzIDEuNS0uNDE5LjQxOS0xLjU0LjQ4Ny0yLjA0LS44MzItLjE3My0uNDU0LS42NTktLjc2Mi0xLjAzNS0uNDU0QzIuMDM2IDcuNDQgMS41IDguNzAyIDEuNSAxMGMwIDMuNTEyIDIuOTk4IDYgNi40OTggNnM2LjUtMi41IDYuNS02YzAtMi4xMzctMS4xMjgtMy4yNi0yLjMxMi00LjQzOC0xLjE5LTEuMTg0LTIuNDM2LTIuNDI1LTIuNjUzLTQuODF6XCIvPjwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICBDdXJyZW50IHN0cmVhayA8JT0gY29tcHV0ZWQucGx1Z2lucy5pc29jYWxlbmRhci5zdHJlYWsuY3VycmVudCAlPiBkYXk8JT0gcyhjb21wdXRlZC5wbHVnaW5zLmlzb2NhbGVuZGFyLnN0cmVhay5jdXJyZW50KSAlPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+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="")=>1t[`base.${e}`]=!1);for(const e of o.settings.plugins.base.parts)E.base[e]=!(`base.${e}`in t)||!!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(` +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.4.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(`eyJjbGFzc2ljIjp7InF1ZXJ5IjoicXVlcnkgTWV0cmljcyB7XHJcbiAgdXNlcihsb2dpbjogJGxvZ2luKSB7XHJcbiAgICBkYXRhYmFzZUlkXHJcbiAgICBuYW1lXHJcbiAgICBsb2dpblxyXG4gICAgY3JlYXRlZEF0XHJcbiAgICBhdmF0YXJVcmxcclxuICAgIHdlYnNpdGVVcmxcclxuICAgIGdpc3RzIHtcclxuICAgICAgdG90YWxDb3VudFxyXG4gICAgfVxyXG4gICAgcmVwb3NpdG9yaWVzKGxhc3Q6ICRyZXBvc2l0b3JpZXMsIGlzRm9yazogZmFsc2UsIG93bmVyQWZmaWxpYXRpb25zOiBPV05FUikge1xyXG4gICAgICB0b3RhbENvdW50XHJcbiAgICAgIHRvdGFsRGlza1VzYWdlXHJcbiAgICAgIG5vZGVzIHtcclxuICAgICAgICBuYW1lXHJcbiAgICAgICAgd2F0Y2hlcnMge1xyXG4gICAgICAgICAgdG90YWxDb3VudFxyXG4gICAgICAgIH1cclxuICAgICAgICBzdGFyZ2F6ZXJzIHtcclxuICAgICAgICAgIHRvdGFsQ291bnRcclxuICAgICAgICB9XHJcbiAgICAgICAgbGFuZ3VhZ2VzKGZpcnN0OiA0KSB7XHJcbiAgICAgICAgICBlZGdlcyB7XHJcbiAgICAgICAgICAgIHNpemVcclxuICAgICAgICAgICAgbm9kZSB7XHJcbiAgICAgICAgICAgICAgY29sb3JcclxuICAgICAgICAgICAgICBuYW1lXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgaXNzdWVzX29wZW46IGlzc3VlcyhzdGF0ZXM6IE9QRU4pIHtcclxuICAgICAgICAgIHRvdGFsQ291bnRcclxuICAgICAgICB9XHJcbiAgICAgICAgaXNzdWVzX2Nsb3NlZDogaXNzdWVzKHN0YXRlczogQ0xPU0VEKSB7XHJcbiAgICAgICAgICB0b3RhbENvdW50XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHByX29wZW46IHB1bGxSZXF1ZXN0cyhzdGF0ZXM6IE9QRU4pIHtcclxuICAgICAgICAgIHRvdGFsQ291bnRcclxuICAgICAgICB9XHJcbiAgICAgICAgcHJfbWVyZ2VkOiBwdWxsUmVxdWVzdHMoc3RhdGVzOiBNRVJHRUQpIHtcclxuICAgICAgICAgIHRvdGFsQ291bnRcclxuICAgICAgICB9XHJcbiAgICAgICAgcmVsZWFzZXMge1xyXG4gICAgICAgICAgdG90YWxDb3VudFxyXG4gICAgICAgIH1cclxuICAgICAgICBmb3JrQ291bnRcclxuICAgICAgICBsaWNlbnNlSW5mbyB7XHJcbiAgICAgICAgICBzcGR4SWRcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHBhY2thZ2VzIHtcclxuICAgICAgdG90YWxDb3VudFxyXG4gICAgfVxyXG4gICAgc3RhcnJlZFJlcG9zaXRvcmllcyB7XHJcbiAgICAgIHRvdGFsQ291bnRcclxuICAgIH1cclxuICAgIHdhdGNoaW5nIHtcclxuICAgICAgdG90YWxDb3VudFxyXG4gICAgfVxyXG4gICAgc3BvbnNvcnNoaXBzQXNTcG9uc29yIHtcclxuICAgICAgdG90YWxDb3VudFxyXG4gICAgfVxyXG4gICAgc3BvbnNvcnNoaXBzQXNNYWludGFpbmVyIHtcclxuICAgICAgdG90YWxDb3VudFxyXG4gICAgfVxyXG4gICAgY29udHJpYnV0aW9uc0NvbGxlY3Rpb24ge1xyXG4gICAgICB0b3RhbFJlcG9zaXRvcmllc1dpdGhDb250cmlidXRlZENvbW1pdHNcclxuICAgICAgdG90YWxDb21taXRDb250cmlidXRpb25zXHJcbiAgICAgIHJlc3RyaWN0ZWRDb250cmlidXRpb25zQ291bnRcclxuICAgICAgdG90YWxJc3N1ZUNvbnRyaWJ1dGlvbnNcclxuICAgICAgdG90YWxQdWxsUmVxdWVzdENvbnRyaWJ1dGlvbnNcclxuICAgICAgdG90YWxQdWxsUmVxdWVzdFJldmlld0NvbnRyaWJ1dGlvbnNcclxuICAgIH1cclxuICAgIGNhbGVuZGFyOmNvbnRyaWJ1dGlvbnNDb2xsZWN0aW9uKGZyb206ICRjYWxlbmRhci5mcm9tLCB0bzogJGNhbGVuZGFyLnRvKSB7XHJcbiAgICAgIGNvbnRyaWJ1dGlvbkNhbGVuZGFyIHtcclxuICAgICAgICB3ZWVrcyB7XHJcbiAgICAgICAgICBjb250cmlidXRpb25EYXlzIHtcclxuICAgICAgICAgICAgY29sb3JcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJlcG9zaXRvcmllc0NvbnRyaWJ1dGVkVG8ge1xyXG4gICAgICB0b3RhbENvdW50XHJcbiAgICB9XHJcbiAgICBmb2xsb3dlcnMge1xyXG4gICAgICB0b3RhbENvdW50XHJcbiAgICB9XHJcbiAgICBmb2xsb3dpbmcge1xyXG4gICAgICB0b3RhbENvdW50XHJcbiAgICB9XHJcbiAgICBpc3N1ZUNvbW1lbnRzIHtcclxuICAgICAgdG90YWxDb3VudFxyXG4gICAgfVxyXG4gICAgb3JnYW5pemF0aW9ucyB7XHJcbiAgICAgIHRvdGFsQ291bnRcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiaW1hZ2UiOiI8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjQ4MFwiIGhlaWdodD1cIjwlPSAxMlxyXG4gICsgKCEhYmFzZS5oZWFkZXIpKjgwXHJcbiAgKyAoISFiYXNlLm1ldGFkYXRhKSozOFxyXG4gICsgKCghIWJhc2UuYWN0aXZpdHkpfHwoISFiYXNlLmNvbW11bml0eSkpKjEyOFxyXG4gICsgKCEhYmFzZS5yZXBvc2l0b3JpZXMpKjEwOFxyXG4gICsgKCghIWJhc2UucmVwb3NpdG9yaWVzKSooKCEhY29tcHV0ZWQucGx1Z2lucy50cmFmZmljKXx8KCEhY29tcHV0ZWQucGx1Z2lucy5saW5lcykpKSoxNlxyXG4gICsgKCEhY29tcHV0ZWQucGx1Z2lucy5mb2xsb3d1cCkqNjhcclxuICArICghIWNvbXB1dGVkLnBsdWdpbnMucGFnZXNwZWVkKSoxMjZcclxuICArICghIWNvbXB1dGVkLnBsdWdpbnMuaGFiaXRzKSo2OFxyXG4gICsgKCEhY29tcHV0ZWQucGx1Z2lucy5sYW5ndWFnZXMpKjk2XHJcbiAgKyAoISFjb21wdXRlZC5wbHVnaW5zLm11c2ljKSo2NCArIChjb21wdXRlZC5wbHVnaW5zLm11c2ljID8gY29tcHV0ZWQucGx1Z2lucy5tdXNpYy50cmFja3MgPyAxNCtNYXRoLm1heCgwLCBjb21wdXRlZC5wbHVnaW5zLm11c2ljLnRyYWNrcy5sZW5ndGgtMSkqMzYgOiAwIDogMClcclxuICArICghIWNvbXB1dGVkLnBsdWdpbnMucG9zdHMpKjY0ICsgKGNvbXB1dGVkLnBsdWdpbnMucG9zdHMgPyBjb21wdXRlZC5wbHVnaW5zLnBvc3RzLnBvc3RzID8gTWF0aC5tYXgoMCwgY29tcHV0ZWQucGx1Z2lucy5wb3N0cy5wb3N0cy5sZW5ndGgpKjQwIDogMCA6IDApXHJcbiAgKyAoISFjb21wdXRlZC5wbHVnaW5zLmlzb2NhbGVuZGFyKSoxOTJcclxuICArICghIWNvbXB1dGVkLnBsdWdpbnMuZ2lzdHMpKjY4XHJcbiAgKyBNYXRoLm1heCgwLCAoKCghIWJhc2UubWV0YWRhdGEpKyghIWJhc2UuaGVhZGVyKSsoKCEhYmFzZS5hY3Rpdml0eSl8fCghIWJhc2UuY29tbXVuaXR5KSkrKCEhYmFzZS5yZXBvc2l0b3JpZXMpKygoISFjb21wdXRlZC5wbHVnaW5zLmhhYml0cykpKyghIWNvbXB1dGVkLnBsdWdpbnMucGFnZXNwZWVkKSsoISFjb21wdXRlZC5wbHVnaW5zLmxhbmd1YWdlcykrKCEhY29tcHV0ZWQucGx1Z2lucy5tdXNpYykrKCEhY29tcHV0ZWQucGx1Z2lucy5wb3N0cykrKCEhY29tcHV0ZWQucGx1Z2lucy5pc29jYWxlbmRhcikrKCEhY29tcHV0ZWQucGx1Z2lucy5naXN0cykpLTEpKSo0XHJcbiU+XCI+XHJcblxyXG4gIDxkZWZzPjxzdHlsZT48JT0gZm9udHMgJT48L3N0eWxlPjwvZGVmcz5cclxuXHJcbiAgPHN0eWxlPlxyXG4gICAgPCU9IHN0eWxlICU+XHJcbiAgPC9zdHlsZT5cclxuXHJcbiAgPGZvcmVpZ25PYmplY3QgeD1cIjBcIiB5PVwiMFwiIHdpZHRoPVwiMTAwJVwiIGhlaWdodD1cIjEwMCVcIj5cclxuICAgIDxkaXYgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sXCIgeG1sbnM6eGxpbms9XCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rXCI+XHJcblxyXG4gICAgICA8JSBpZiAoYmFzZS5oZWFkZXIpIHsgJT5cclxuICAgICAgICA8c2VjdGlvbj5cclxuICAgICAgICAgIDxoMSBjbGFzcz1cImZpZWxkXCI+XHJcbiAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJhdmF0YXJcIiBzcmM9XCJkYXRhOmltYWdlL3BuZztiYXNlNjQsPCU9IGNvbXB1dGVkLmF2YXRhciAlPlwiIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyMFwiIC8+XHJcbiAgICAgICAgICAgIDxzcGFuPjwlPSB1c2VyLm5hbWUgfHwgdXNlci5sb2dpbiAlPjwvc3Bhbj5cclxuICAgICAgICAgIDwvaDE+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgIDxzZWN0aW9uPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZFwiPlxyXG4gICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiPjxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTEuNSA4YTYuNSA2LjUgMCAxMTEzIDAgNi41IDYuNSAwIDAxLTEzIDB6TTggMGE4IDggMCAxMDAgMTZBOCA4IDAgMDA4IDB6bS41IDQuNzVhLjc1Ljc1IDAgMDAtMS41IDB2My41YS43NS43NSAwIDAwLjQ3MS42OTZsMi41IDFhLjc1Ljc1IDAgMDAuNTU3LTEuMzkyTDguNSA3Ljc0MlY0Ljc1elwiPjwvcGF0aD48L3N2Zz5cclxuICAgICAgICAgICAgICAgIEpvaW5lZCBHaXRIdWIgPCU9IGNvbXB1dGVkLnJlZ2lzdHJhdGlvbiAlPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZFwiPlxyXG4gICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiPjxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTUuNSAzLjVhMiAyIDAgMTAwIDQgMiAyIDAgMDAwLTR6TTIgNS41YTMuNSAzLjUgMCAxMTUuODk4IDIuNTQ5IDUuNTA3IDUuNTA3IDAgMDEzLjAzNCA0LjA4NC43NS43NSAwIDExLTEuNDgyLjIzNSA0LjAwMSA0LjAwMSAwIDAwLTcuOSAwIC43NS43NSAwIDAxLTEuNDgyLS4yMzZBNS41MDcgNS41MDcgMCAwMTMuMTAyIDguMDUgMy40OSAzLjQ5IDAgMDEyIDUuNXpNMTEgNGEuNzUuNzUgMCAxMDAgMS41IDEuNSAxLjUgMCAwMS42NjYgMi44NDQuNzUuNzUgMCAwMC0uNDE2LjY3MnYuMzUyYS43NS43NSAwIDAwLjU3NC43M2MxLjIuMjg5IDIuMTYyIDEuMiAyLjUyMiAyLjM3MmEuNzUuNzUgMCAxMDEuNDM0LS40NCA1LjAxIDUuMDEgMCAwMC0yLjU2LTMuMDEyQTMgMyAwIDAwMTEgNHpcIj48L3BhdGg+PC9zdmc+XHJcbiAgICAgICAgICAgICAgICBGb2xsb3dlZCBieSA8JT0gdXNlci5mb2xsb3dlcnMudG90YWxDb3VudCAlPiB1c2VyPCU9IHModXNlci5mb2xsb3dlcnMudG90YWxDb3VudCkgJT5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9zZWN0aW9uPlxyXG4gICAgICAgICAgICA8c2VjdGlvbj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGQgY2FsZW5kYXJcIj5cclxuICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgPCU9IGNvbXB1dGVkLmNhbGVuZGFyLmxlbmd0aCoxNSAlPiAxMVwiIHdpZHRoPVwiPCU9IGNvbXB1dGVkLmNhbGVuZGFyLmxlbmd0aCoxNSAlPlwiIGhlaWdodD1cIjE2XCI+XHJcbiAgICAgICAgICAgICAgICAgIDxnPlxyXG4gICAgICAgICAgICAgICAgICAgIDwlIGZvciAoY29uc3QgW3gsIHtjb2xvcn1dIG9mIE9iamVjdC5lbnRyaWVzKGNvbXB1dGVkLmNhbGVuZGFyKSkgeyAlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPHJlY3QgY2xhc3M9XCJkYXlcIiB4PVwiPCU9IHgqMTUgJT5cIiB5PVwiMFwiIHdpZHRoPVwiMTFcIiBoZWlnaHQ9XCIxMVwiIGZpbGw9XCI8JT0gY29sb3IgJT5cIiByeD1cIjJcIiByeT1cIjJcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgIDwlIH0gJT5cclxuICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkXCI+XHJcbiAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNMSAyLjVBMi41IDIuNSAwIDAxMy41IDBoOC43NWEuNzUuNzUgMCAwMS43NS43NXYzLjVhLjc1Ljc1IDAgMDEtMS41IDBWMS41aC04YTEgMSAwIDAwLTEgMXY2LjcwOEEyLjQ5MiAyLjQ5MiAwIDAxMy41IDloMy4yNWEuNzUuNzUgMCAwMTAgMS41SDMuNWExIDEgMCAxMDAgMmg1Ljc1YS43NS43NSAwIDAxMCAxLjVIMy41QTIuNSAyLjUgMCAwMTEgMTEuNXYtOXptMTMuMjMgNy43OWEuNzUuNzUgMCAwMDEuMDYtMS4wNmwtMi41MDUtMi41MDVhLjc1Ljc1IDAgMDAtMS4wNiAwTDkuMjIgOS4yMjlhLjc1Ljc1IDAgMDAxLjA2IDEuMDYxbDEuMjI1LTEuMjI0djYuMTg0YS43NS43NSAwIDAwMS41IDBWOS4wNjZsMS4yMjQgMS4yMjR6XCI+PC9wYXRoPjwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgQ29udHJpYnV0ZWQgdG8gPCU9IHVzZXIucmVwb3NpdG9yaWVzQ29udHJpYnV0ZWRUby50b3RhbENvdW50ICU+IHJlcG9zaXRvcjwlPSBzKHVzZXIucmVwb3NpdG9yaWVzQ29udHJpYnV0ZWRUby50b3RhbENvdW50LCBcInlcIikgJT5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9zZWN0aW9uPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9zZWN0aW9uPlxyXG4gICAgICA8JSB9ICU+XHJcblxyXG4gICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgPCUgaWYgKGJhc2UuYWN0aXZpdHkpIHsgJT5cclxuICAgICAgICAgIDxzZWN0aW9uPlxyXG4gICAgICAgICAgICA8aDIgY2xhc3M9XCJmaWVsZFwiPlxyXG4gICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk0xLjUgMS43NWEuNzUuNzUgMCAwMC0xLjUgMHYxMi41YzAgLjQxNC4zMzYuNzUuNzUuNzVoMTQuNWEuNzUuNzUgMCAwMDAtMS41SDEuNVYxLjc1em0xNC4yOCAyLjUzYS43NS43NSAwIDAwLTEuMDYtMS4wNkwxMCA3Ljk0IDcuNTMgNS40N2EuNzUuNzUgMCAwMC0xLjA2IDBMMy4yMiA4LjcyYS43NS43NSAwIDAwMS4wNiAxLjA2TDcgNy4wNmwyLjQ3IDIuNDdhLjc1Ljc1IDAgMDAxLjA2IDBsNS4yNS01LjI1elwiPjwvcGF0aD48L3N2Zz5cclxuICAgICAgICAgICAgICBBY3Rpdml0eVxyXG4gICAgICAgICAgICA8L2gyPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNMTAuNSA3Ljc1YTIuNSAyLjUgMCAxMS01IDAgMi41IDIuNSAwIDAxNSAwem0xLjQzLjc1YTQuMDAyIDQuMDAyIDAgMDEtNy44NiAwSC43NWEuNzUuNzUgMCAxMTAtMS41aDMuMzJhNC4wMDEgNC4wMDEgMCAwMTcuODYgMGgzLjMyYS43NS43NSAwIDExMCAxLjVoLTMuMzJ6XCI+PC9wYXRoPjwvc3ZnPlxyXG4gICAgICAgICAgICAgIDwlPSBjb21wdXRlZC5jb21taXRzICU+IENvbW1pdDwlPSBzKGNvbXB1dGVkLmNvbW1pdHMpICU+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNMi41IDEuNzVhLjI1LjI1IDAgMDEuMjUtLjI1aDguNWEuMjUuMjUgMCAwMS4yNS4yNXY3LjczNmEuNzUuNzUgMCAxMDEuNSAwVjEuNzVBMS43NSAxLjc1IDAgMDAxMS4yNSAwaC04LjVBMS43NSAxLjc1IDAgMDAxIDEuNzV2MTEuNWMwIC45NjYuNzg0IDEuNzUgMS43NSAxLjc1aDMuMTdhLjc1Ljc1IDAgMDAwLTEuNUgyLjc1YS4yNS4yNSAwIDAxLS4yNS0uMjVWMS43NXpNNC43NSA0YS43NS43NSAwIDAwMCAxLjVoNC41YS43NS43NSAwIDAwMC0xLjVoLTQuNXpNNCA3Ljc1QS43NS43NSAwIDAxNC43NSA3aDJhLjc1Ljc1IDAgMDEwIDEuNWgtMkEuNzUuNzUgMCAwMTQgNy43NXptMTEuNzc0IDMuNTM3YS43NS43NSAwIDAwLTEuMDQ4LTEuMDc0TDEwLjcgMTQuMTQ1IDkuMjgxIDEyLjcyYS43NS43NSAwIDAwLTEuMDYyIDEuMDU4bDEuOTQzIDEuOTVhLjc1Ljc1IDAgMDAxLjA1NS4wMDhsNC41NTctNC40NXpcIj48L3BhdGg+PC9zdmc+XHJcbiAgICAgICAgICAgICAgPCU9IHVzZXIuY29udHJpYnV0aW9uc0NvbGxlY3Rpb24udG90YWxQdWxsUmVxdWVzdFJldmlld0NvbnRyaWJ1dGlvbnMgJT4gUHVsbCByZXF1ZXN0PCU9IHModXNlci5jb250cmlidXRpb25zQ29sbGVjdGlvbi50b3RhbFB1bGxSZXF1ZXN0UmV2aWV3Q29udHJpYnV0aW9ucykgJT4gcmV2aWV3ZWRcclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZFwiPlxyXG4gICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk03LjE3NyAzLjA3M0w5LjU3My42NzdBLjI1LjI1IDAgMDExMCAuODU0djQuNzkyYS4yNS4yNSAwIDAxLS40MjcuMTc3TDcuMTc3IDMuNDI3YS4yNS4yNSAwIDAxMC0uMzU0ek0zLjc1IDIuNWEuNzUuNzUgMCAxMDAgMS41Ljc1Ljc1IDAgMDAwLTEuNXptLTIuMjUuNzVhMi4yNSAyLjI1IDAgMTEzIDIuMTIydjUuMjU2YTIuMjUxIDIuMjUxIDAgMTEtMS41IDBWNS4zNzJBMi4yNSAyLjI1IDAgMDExLjUgMy4yNXpNMTEgMi41aC0xVjRoMWExIDEgMCAwMTEgMXY1LjYyOGEyLjI1MSAyLjI1MSAwIDEwMS41IDBWNUEyLjUgMi41IDAgMDAxMSAyLjV6bTEgMTAuMjVhLjc1Ljc1IDAgMTExLjUgMCAuNzUuNzUgMCAwMS0xLjUgMHpNMy43NSAxMmEuNzUuNzUgMCAxMDAgMS41Ljc1Ljc1IDAgMDAwLTEuNXpcIj48L3BhdGg+PC9zdmc+XHJcbiAgICAgICAgICAgICAgPCU9IHVzZXIuY29udHJpYnV0aW9uc0NvbGxlY3Rpb24udG90YWxQdWxsUmVxdWVzdENvbnRyaWJ1dGlvbnMgJT4gUHVsbCByZXF1ZXN0PCU9IHModXNlci5jb250cmlidXRpb25zQ29sbGVjdGlvbi50b3RhbFB1bGxSZXF1ZXN0Q29udHJpYnV0aW9ucykgJT4gb3BlbmVkXHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNOCAxLjVhNi41IDYuNSAwIDEwMCAxMyA2LjUgNi41IDAgMDAwLTEzek0wIDhhOCA4IDAgMTExNiAwQTggOCAwIDAxMCA4em05IDNhMSAxIDAgMTEtMiAwIDEgMSAwIDAxMiAwem0tLjI1LTYuMjVhLjc1Ljc1IDAgMDAtMS41IDB2My41YS43NS43NSAwIDAwMS41IDB2LTMuNXpcIj48L3BhdGg+PC9zdmc+XHJcbiAgICAgICAgICAgICAgPCU9IHVzZXIuY29udHJpYnV0aW9uc0NvbGxlY3Rpb24udG90YWxJc3N1ZUNvbnRyaWJ1dGlvbnMgJT4gSXNzdWU8JT0gcyh1c2VyLmNvbnRyaWJ1dGlvbnNDb2xsZWN0aW9uLnRvdGFsSXNzdWVDb250cmlidXRpb25zKSAlPiBvcGVuZWRcclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZFwiPlxyXG4gICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk0yLjc1IDIuNWEuMjUuMjUgMCAwMC0uMjUuMjV2Ny41YzAgLjEzOC4xMTIuMjUuMjUuMjVoMmEuNzUuNzUgMCAwMS43NS43NXYyLjE5bDIuNzItMi43MmEuNzUuNzUgMCAwMS41My0uMjJoNC41YS4yNS4yNSAwIDAwLjI1LS4yNXYtNy41YS4yNS4yNSAwIDAwLS4yNS0uMjVIMi43NXpNMSAyLjc1QzEgMS43ODQgMS43ODQgMSAyLjc1IDFoMTAuNWMuOTY2IDAgMS43NS43ODQgMS43NSAxLjc1djcuNUExLjc1IDEuNzUgMCAwMTEzLjI1IDEySDkuMDZsLTIuNTczIDIuNTczQTEuNDU3IDEuNDU3IDAgMDE0IDEzLjU0M1YxMkgyLjc1QTEuNzUgMS43NSAwIDAxMSAxMC4yNXYtNy41elwiPjwvcGF0aD48L3N2Zz5cclxuICAgICAgICAgICAgICA8JT0gdXNlci5pc3N1ZUNvbW1lbnRzLnRvdGFsQ291bnQgJT4gaXNzdWUgY29tbWVudDwlPSBzKHVzZXIuaXNzdWVDb21tZW50cy50b3RhbENvdW50KSAlPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvc2VjdGlvbj5cclxuICAgICAgICA8JSB9ICU+XHJcbiAgICAgICAgPCUgaWYgKGJhc2UuY29tbXVuaXR5KSB7ICU+XHJcbiAgICAgICAgICA8c2VjdGlvbj5cclxuICAgICAgICAgICAgPGgyIGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNMS43NSAwQTEuNzUgMS43NSAwIDAwMCAxLjc1djEyLjVDMCAxNS4yMTYuNzg0IDE2IDEuNzUgMTZoMTIuNUExLjc1IDEuNzUgMCAwMDE2IDE0LjI1VjEuNzVBMS43NSAxLjc1IDAgMDAxNC4yNSAwSDEuNzV6TTEuNSAxLjc1YS4yNS4yNSAwIDAxLjI1LS4yNWgxMi41YS4yNS4yNSAwIDAxLjI1LjI1djEyLjVhLjI1LjI1IDAgMDEtLjI1LjI1SDEuNzVhLjI1LjI1IDAgMDEtLjI1LS4yNVYxLjc1ek0xMS43NSAzYS43NS43NSAwIDAwLS43NS43NXY3LjVhLjc1Ljc1IDAgMDAxLjUgMHYtNy41YS43NS43NSAwIDAwLS43NS0uNzV6bS04LjI1Ljc1YS43NS43NSAwIDAxMS41IDB2NS41YS43NS43NSAwIDAxLTEuNSAwdi01LjV6TTggM2EuNzUuNzUgMCAwMC0uNzUuNzV2My41YS43NS43NSAwIDAwMS41IDB2LTMuNUEuNzUuNzUgMCAwMDggM3pcIj48L3BhdGg+PC9zdmc+XHJcbiAgICAgICAgICAgICAgQ29tbXVuaXR5IHN0YXRzXHJcbiAgICAgICAgICAgIDwvaDI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZFwiPlxyXG4gICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk0xLjUgMTQuMjVjMCAuMTM4LjExMi4yNS4yNS4yNUg0di0xLjI1YS43NS43NSAwIDAxLjc1LS43NWgyLjVhLjc1Ljc1IDAgMDEuNzUuNzV2MS4yNWgyLjI1YS4yNS4yNSAwIDAwLjI1LS4yNVYxLjc1YS4yNS4yNSAwIDAwLS4yNS0uMjVoLTguNWEuMjUuMjUgMCAwMC0uMjUuMjV2MTIuNXpNMS43NSAxNkExLjc1IDEuNzUgMCAwMTAgMTQuMjVWMS43NUMwIC43ODQuNzg0IDAgMS43NSAwaDguNUMxMS4yMTYgMCAxMiAuNzg0IDEyIDEuNzV2MTIuNWMwIC4wODUtLjAwNi4xNjgtLjAxOC4yNWgyLjI2OGEuMjUuMjUgMCAwMC4yNS0uMjVWOC4yODVhLjI1LjI1IDAgMDAtLjExMS0uMjA4bC0xLjA1NS0uNzAzYS43NS43NSAwIDExLjgzMi0xLjI0OGwxLjA1NS43MDNjLjQ4Ny4zMjUuNzc5Ljg3MS43NzkgMS40NTZ2NS45NjVBMS43NSAxLjc1IDAgMDExNC4yNSAxNmgtMy41YS43NS43NSAwIDAxLS4xOTctLjAyNmMtLjA5OS4wMTctLjIuMDI2LS4zMDMuMDI2aC0zYS43NS43NSAwIDAxLS43NS0uNzVWMTRoLTF2MS4yNWEuNzUuNzUgMCAwMS0uNzUuNzVoLTN6TTMgMy43NUEuNzUuNzUgMCAwMTMuNzUgM2guNWEuNzUuNzUgMCAwMTAgMS41aC0uNUEuNzUuNzUgMCAwMTMgMy43NXpNMy43NSA2YS43NS43NSAwIDAwMCAxLjVoLjVhLjc1Ljc1IDAgMDAwLTEuNWgtLjV6TTMgOS43NUEuNzUuNzUgMCAwMTMuNzUgOWguNWEuNzUuNzUgMCAwMTAgMS41aC0uNUEuNzUuNzUgMCAwMTMgOS43NXpNNy43NSA5YS43NS43NSAwIDAwMCAxLjVoLjVhLjc1Ljc1IDAgMDAwLTEuNWgtLjV6TTcgNi43NUEuNzUuNzUgMCAwMTcuNzUgNmguNWEuNzUuNzUgMCAwMTAgMS41aC0uNUEuNzUuNzUgMCAwMTcgNi43NXpNNy43NSAzYS43NS43NSAwIDAwMCAxLjVoLjVhLjc1Ljc1IDAgMDAwLTEuNWgtLjV6XCI+PC9wYXRoPjwvc3ZnPlxyXG4gICAgICAgICAgICAgIE1lbWJlciBvZiA8JT0gdXNlci5vcmdhbml6YXRpb25zLnRvdGFsQ291bnQgJT4gb3JnYW5pemF0aW9uPCU9IHModXNlci5vcmdhbml6YXRpb25zLnRvdGFsQ291bnQpICU+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNNS41IDMuNWEyIDIgMCAxMDAgNCAyIDIgMCAwMDAtNHpNMiA1LjVhMy41IDMuNSAwIDExNS44OTggMi41NDkgNS41MDcgNS41MDcgMCAwMTMuMDM0IDQuMDg0Ljc1Ljc1IDAgMTEtMS40ODIuMjM1IDQuMDAxIDQuMDAxIDAgMDAtNy45IDAgLjc1Ljc1IDAgMDEtMS40ODItLjIzNkE1LjUwNyA1LjUwNyAwIDAxMy4xMDIgOC4wNSAzLjQ5IDMuNDkgMCAwMTIgNS41ek0xMSA0YS43NS43NSAwIDEwMCAxLjUgMS41IDEuNSAwIDAxLjY2NiAyLjg0NC43NS43NSAwIDAwLS40MTYuNjcydi4zNTJhLjc1Ljc1IDAgMDAuNTc0LjczYzEuMi4yODkgMi4xNjIgMS4yIDIuNTIyIDIuMzcyYS43NS43NSAwIDEwMS40MzQtLjQ0IDUuMDEgNS4wMSAwIDAwLTIuNTYtMy4wMTJBMyAzIDAgMDAxMSA0elwiPjwvcGF0aD48L3N2Zz5cclxuICAgICAgICAgICAgICBGb2xsb3dpbmcgPCU9IHVzZXIuZm9sbG93aW5nLnRvdGFsQ291bnQgJT4gdXNlcjwlPSBzKHVzZXIuZm9sbG93ZXJzLnRvdGFsQ291bnQpICU+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNNC4yNSAyLjVjLTEuMzM2IDAtMi43NSAxLjE2NC0yLjc1IDMgMCAyLjE1IDEuNTggNC4xNDQgMy4zNjUgNS42ODJBMjAuNTY1IDIwLjU2NSAwIDAwOCAxMy4zOTNhMjAuNTYxIDIwLjU2MSAwIDAwMy4xMzUtMi4yMTFDMTIuOTIgOS42NDQgMTQuNSA3LjY1IDE0LjUgNS41YzAtMS44MzYtMS40MTQtMy0yLjc1LTMtMS4zNzMgMC0yLjYwOS45ODYtMy4wMjkgMi40NTZhLjc1Ljc1IDAgMDEtMS40NDIgMEM2Ljg1OSAzLjQ4NiA1LjYyMyAyLjUgNC4yNSAyLjV6TTggMTQuMjVsLS4zNDUuNjY2LS4wMDItLjAwMS0uMDA2LS4wMDMtLjAxOC0uMDFhNy42NDMgNy42NDMgMCAwMS0uMzEtLjE3IDIyLjA3NSAyMi4wNzUgMCAwMS0zLjQzNC0yLjQxNEMyLjA0NSAxMC43MzEgMCA4LjM1IDAgNS41IDAgMi44MzYgMi4wODYgMSA0LjI1IDEgNS43OTcgMSA3LjE1MyAxLjgwMiA4IDMuMDIgOC44NDcgMS44MDIgMTAuMjAzIDEgMTEuNzUgMSAxMy45MTQgMSAxNiAyLjgzNiAxNiA1LjVjMCAyLjg1LTIuMDQ1IDUuMjMxLTMuODg1IDYuODE4YTIyLjA4IDIyLjA4IDAgMDEtMy43NDQgMi41ODRsLS4wMTguMDEtLjAwNi4wMDNoLS4wMDJMOCAxNC4yNXptMCAwbC4zNDUuNjY2YS43NTIuNzUyIDAgMDEtLjY5IDBMOCAxNC4yNXpcIj48L3BhdGg+PC9zdmc+XHJcbiAgICAgICAgICAgICAgU3BvbnNvcmluZyA8JT0gdXNlci5zcG9uc29yc2hpcHNBc1Nwb25zb3IudG90YWxDb3VudCAlPiByZXBvc2l0b3I8JT0gcyh1c2VyLnNwb25zb3JzaGlwc0FzU3BvbnNvci50b3RhbENvdW50LCBcInlcIikgJT5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZFwiPlxyXG4gICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk04IC4yNWEuNzUuNzUgMCAwMS42NzMuNDE4bDEuODgyIDMuODE1IDQuMjEuNjEyYS43NS43NSAwIDAxLjQxNiAxLjI3OWwtMy4wNDYgMi45Ny43MTkgNC4xOTJhLjc1Ljc1IDAgMDEtMS4wODguNzkxTDggMTIuMzQ3bC0zLjc2NiAxLjk4YS43NS43NSAwIDAxLTEuMDg4LS43OWwuNzItNC4xOTRMLjgxOCA2LjM3NGEuNzUuNzUgMCAwMS40MTYtMS4yOGw0LjIxLS42MTFMNy4zMjcuNjY4QS43NS43NSAwIDAxOCAuMjV6bTAgMi40NDVMNi42MTUgNS41YS43NS43NSAwIDAxLS41NjQuNDFsLTMuMDk3LjQ1IDIuMjQgMi4xODRhLjc1Ljc1IDAgMDEuMjE2LjY2NGwtLjUyOCAzLjA4NCAyLjc2OS0xLjQ1NmEuNzUuNzUgMCAwMS42OTggMGwyLjc3IDEuNDU2LS41My0zLjA4NGEuNzUuNzUgMCAwMS4yMTYtLjY2NGwyLjI0LTIuMTgzLTMuMDk2LS40NWEuNzUuNzUgMCAwMS0uNTY0LS40MUw4IDIuNjk0di4wMDF6XCI+PC9wYXRoPjwvc3ZnPlxyXG4gICAgICAgICAgICAgIFN0YXJyZWQgPCU9IHVzZXIuc3RhcnJlZFJlcG9zaXRvcmllcy50b3RhbENvdW50ICU+IHJlcG9zaXRvcjwlPSBzKHVzZXIuc3RhcnJlZFJlcG9zaXRvcmllcy50b3RhbENvdW50LCBcInlcIikgJT5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZFwiPlxyXG4gICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk0xLjY3OSA3LjkzMmMuNDEyLS42MjEgMS4yNDItMS43NSAyLjM2Ni0yLjcxN0M1LjE3NSA0LjI0MiA2LjUyNyAzLjUgOCAzLjVjMS40NzMgMCAyLjgyNC43NDIgMy45NTUgMS43MTUgMS4xMjQuOTY3IDEuOTU0IDIuMDk2IDIuMzY2IDIuNzE3YS4xMTkuMTE5IDAgMDEwIC4xMzZjLS40MTIuNjIxLTEuMjQyIDEuNzUtMi4zNjYgMi43MTdDMTAuODI1IDExLjc1OCA5LjQ3MyAxMi41IDggMTIuNWMtMS40NzMgMC0yLjgyNC0uNzQyLTMuOTU1LTEuNzE1QzIuOTIgOS44MTggMi4wOSA4LjY5IDEuNjc5IDguMDY4YS4xMTkuMTE5IDAgMDEwLS4xMzZ6TTggMmMtMS45ODEgMC0zLjY3Ljk5Mi00LjkzMyAyLjA3OEMxLjc5NyA1LjE2OS44OCA2LjQyMy40MyA3LjFhMS42MTkgMS42MTkgMCAwMDAgMS43OThjLjQ1LjY3OCAxLjM2NyAxLjkzMiAyLjYzNyAzLjAyNEM0LjMyOSAxMy4wMDggNi4wMTkgMTQgOCAxNGMxLjk4MSAwIDMuNjctLjk5MiA0LjkzMy0yLjA3OCAxLjI3LTEuMDkxIDIuMTg3LTIuMzQ1IDIuNjM3LTMuMDIzYTEuNjE5IDEuNjE5IDAgMDAwLTEuNzk4Yy0uNDUtLjY3OC0xLjM2Ny0xLjkzMi0yLjYzNy0zLjAyM0MxMS42NzEgMi45OTIgOS45ODEgMiA4IDJ6bTAgOGEyIDIgMCAxMDAtNCAyIDIgMCAwMDAgNHpcIj48L3BhdGg+PC9zdmc+XHJcbiAgICAgICAgICAgICAgV2F0Y2hpbmcgPCU9IHVzZXIud2F0Y2hpbmcudG90YWxDb3VudCAlPiByZXBvc2l0b3I8JT0gcyh1c2VyLndhdGNoaW5nLnRvdGFsQ291bnQsIFwieVwiKSAlPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvc2VjdGlvbj5cclxuICAgICAgICA8JSB9ICU+XHJcbiAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPCUgaWYgKGJhc2UucmVwb3NpdG9yaWVzKSB7ICU+XHJcbiAgICAgICAgPHNlY3Rpb24+XHJcbiAgICAgICAgICA8aDIgY2xhc3M9XCJmaWVsZFwiPlxyXG4gICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNMiAyLjVBMi41IDIuNSAwIDAxNC41IDBoOC43NWEuNzUuNzUgMCAwMS43NS43NXYxMi41YS43NS43NSAwIDAxLS43NS43NWgtMi41YS43NS43NSAwIDExMC0xLjVoMS43NXYtMmgtOGExIDEgMCAwMC0uNzE0IDEuNy43NS43NSAwIDAxLTEuMDcyIDEuMDVBMi40OTUgMi40OTUgMCAwMTIgMTEuNXYtOXptMTAuNS0xVjloLThjLS4zNTYgMC0uNjk0LjA3NC0xIC4yMDhWMi41YTEgMSAwIDAxMS0xaDh6TTUgMTIuMjV2My4yNWEuMjUuMjUgMCAwMC40LjJsMS40NS0xLjA4N2EuMjUuMjUgMCAwMS4zIDBMOC42IDE1LjdhLjI1LjI1IDAgMDAuNC0uMnYtMy4yNWEuMjUuMjUgMCAwMC0uMjUtLjI1aC0zLjVhLjI1LjI1IDAgMDAtLjI1LjI1elwiPjwvcGF0aD48L3N2Zz5cclxuICAgICAgICAgICAgPCU9IHVzZXIucmVwb3NpdG9yaWVzLnRvdGFsQ291bnQgJT4gUmVwb3NpdG9yPCU9IHModXNlci5yZXBvc2l0b3JpZXMudG90YWxDb3VudCwgXCJ5XCIpICU+XHJcbiAgICAgICAgICA8L2gyPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICA8c2VjdGlvbj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk04Ljc1Ljc1YS43NS43NSAwIDAwLTEuNSAwVjJoLS45ODRjLS4zMDUgMC0uNjA0LjA4LS44NjkuMjNsLTEuMjg4LjczN0EuMjUuMjUgMCAwMTMuOTg0IDNIMS43NWEuNzUuNzUgMCAwMDAgMS41aC40MjhMLjA2NiA5LjE5MmEuNzUuNzUgMCAwMC4xNTQuODM4bC41My0uNTMtLjUzLjUzdi4wMDFsLjAwMi4wMDIuMDAyLjAwMi4wMDYuMDA2LjAxNi4wMTUuMDQ1LjA0YTMuNTE0IDMuNTE0IDAgMDAuNjg2LjQ1QTQuNDkyIDQuNDkyIDAgMDAzIDExYy44OCAwIDEuNTU2LS4yMiAyLjAyMy0uNDU0YTMuNTE1IDMuNTE1IDAgMDAuNjg2LS40NWwuMDQ1LS4wNC4wMTYtLjAxNS4wMDYtLjAwNi4wMDItLjAwMi4wMDEtLjAwMkw1LjI1IDkuNWwuNTMuNTNhLjc1Ljc1IDAgMDAuMTU0LS44MzhMMy44MjIgNC41aC4xNjJjLjMwNSAwIC42MDQtLjA4Ljg2OS0uMjNsMS4yODktLjczN2EuMjUuMjUgMCAwMS4xMjQtLjAzM2guOTg0VjEzaC0yLjVhLjc1Ljc1IDAgMDAwIDEuNWg2LjVhLjc1Ljc1IDAgMDAwLTEuNWgtMi41VjMuNWguOTg0YS4yNS4yNSAwIDAxLjEyNC4wMzNsMS4yOS43MzZjLjI2NC4xNTIuNTYzLjIzMS44NjguMjMxaC4xNjJsLTIuMTEyIDQuNjkyYS43NS43NSAwIDAwLjE1NC44MzhsLjUzLS41My0uNTMuNTN2LjAwMWwuMDAyLjAwMi4wMDIuMDAyLjAwNi4wMDYuMDE2LjAxNS4wNDUuMDRhMy41MTcgMy41MTcgMCAwMC42ODYuNDVBNC40OTIgNC40OTIgMCAwMDEzIDExYy44OCAwIDEuNTU2LS4yMiAyLjAyMy0uNDU0YTMuNTEyIDMuNTEyIDAgMDAuNjg2LS40NWwuMDQ1LS4wNC4wMS0uMDEuMDA2LS4wMDUuMDA2LS4wMDYuMDAyLS4wMDIuMDAxLS4wMDItLjUyOS0uNTMxLjUzLjUzYS43NS43NSAwIDAwLjE1NC0uODM4TDEzLjgyMyA0LjVoLjQyN2EuNzUuNzUgMCAwMDAtMS41aC0yLjIzNGEuMjUuMjUgMCAwMS0uMTI0LS4wMzNsLTEuMjktLjczNkExLjc1IDEuNzUgMCAwMDkuNzM1IDJIOC43NVYuNzV6TTEuNjk1IDkuMjI3Yy4yODUuMTM1LjcxOC4yNzMgMS4zMDUuMjczczEuMDItLjEzOCAxLjMwNS0uMjczTDMgNi4zMjdsLTEuMzA1IDIuOXptMTAgMGMuMjg1LjEzNS43MTguMjczIDEuMzA1LjI3M3MxLjAyLS4xMzggMS4zMDUtLjI3M0wxMyA2LjMyN2wtMS4zMDUgMi45elwiPjwvcGF0aD48L3N2Zz5cclxuICAgICAgICAgICAgICAgIDwlIGlmIChjb21wdXRlZC5saWNlbnNlcy5mYXZvcml0ZS5sZW5ndGgpIHsgJT5cclxuICAgICAgICAgICAgICAgICAgUHJlZmVyIDwlPSBjb21wdXRlZC5saWNlbnNlcy5mYXZvcml0ZSAlPiBsaWNlbnNlXHJcbiAgICAgICAgICAgICAgICA8JSB9IGVsc2UgeyAlPlxyXG4gICAgICAgICAgICAgICAgICBObyBsaWNlbnNlIHByZWZlcmVuY2VcclxuICAgICAgICAgICAgICAgIDwlIH0gJT5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk0yLjUgNy43NzVWMi43NWEuMjUuMjUgMCAwMS4yNS0uMjVoNS4wMjVhLjI1LjI1IDAgMDEuMTc3LjA3M2w2LjI1IDYuMjVhLjI1LjI1IDAgMDEwIC4zNTRsLTUuMDI1IDUuMDI1YS4yNS4yNSAwIDAxLS4zNTQgMGwtNi4yNS02LjI1YS4yNS4yNSAwIDAxLS4wNzMtLjE3N3ptLTEuNSAwVjIuNzVDMSAxLjc4NCAxLjc4NCAxIDIuNzUgMWg1LjAyNWMuNDY0IDAgLjkxLjE4NCAxLjIzOC41MTNsNi4yNSA2LjI1YTEuNzUgMS43NSAwIDAxMCAyLjQ3NGwtNS4wMjYgNS4wMjZhMS43NSAxLjc1IDAgMDEtMi40NzQgMGwtNi4yNS02LjI1QTEuNzUgMS43NSAwIDAxMSA3Ljc3NXpNNiA1YTEgMSAwIDEwMCAyIDEgMSAwIDAwMC0yelwiPjwvcGF0aD48L3N2Zz5cclxuICAgICAgICAgICAgICAgIDwlPSBjb21wdXRlZC5yZXBvc2l0b3JpZXMucmVsZWFzZXMgJT4gUmVsZWFzZTwlPSBzKGNvbXB1dGVkLnJlcG9zaXRvcmllcy5yZWxlYXNlcykgJT5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk04Ljg3OC4zOTJhMS43NSAxLjc1IDAgMDAtMS43NTYgMGwtNS4yNSAzLjA0NUExLjc1IDEuNzUgMCAwMDEgNC45NTF2Ni4wOThjMCAuNjI0LjMzMiAxLjIuODcyIDEuNTE0bDUuMjUgMy4wNDVhMS43NSAxLjc1IDAgMDAxLjc1NiAwbDUuMjUtMy4wNDVjLjU0LS4zMTMuODcyLS44OS44NzItMS41MTRWNC45NTFjMC0uNjI0LS4zMzItMS4yLS44NzItMS41MTRMOC44NzguMzkyek03Ljg3NSAxLjY5YS4yNS4yNSAwIDAxLjI1IDBsNC42MyAyLjY4NUw4IDcuMTMzIDMuMjQ1IDQuMzc1bDQuNjMtMi42ODV6TTIuNSA1LjY3N3Y1LjM3MmMwIC4wOS4wNDcuMTcxLjEyNS4yMTZsNC42MjUgMi42ODNWOC40MzJMMi41IDUuNjc3em02LjI1IDguMjcxbDQuNjI1LTIuNjgzYS4yNS4yNSAwIDAwLjEyNS0uMjE2VjUuNjc3TDguNzUgOC40MzJ2NS41MTZ6XCI+PC9wYXRoPjwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgPCU9IHVzZXIucGFja2FnZXMudG90YWxDb3VudCAlPiBQYWNrYWdlPCU9IHModXNlci5wYWNrYWdlcy50b3RhbENvdW50KSAlPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZFwiPlxyXG4gICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiPjxwYXRoIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk0yLjUgMy41YzAtLjEzMy4wNTgtLjMxOC4yODItLjU1LjIyNy0uMjM3LjU5Mi0uNDg0IDEuMS0uNzA4QzQuODk5IDEuNzk1IDYuMzU0IDEuNSA4IDEuNWMxLjY0NyAwIDMuMTAyLjI5NSA0LjExNy43NDIuNTEuMjI0Ljg3NC40NyAxLjEwMS43MDcuMjI0LjIzMy4yODIuNDE4LjI4Mi41NTEgMCAuMTMzLS4wNTguMzE4LS4yODIuNTUtLjIyNy4yMzctLjU5Mi40ODQtMS4xLjcwOEMxMS4xMDEgNS4yMDUgOS42NDYgNS41IDggNS41Yy0xLjY0NyAwLTMuMTAyLS4yOTUtNC4xMTctLjc0Mi0uNTEtLjIyNC0uODc0LS40Ny0xLjEwMS0uNzA3LS4yMjQtLjIzMy0uMjgyLS40MTgtLjI4Mi0uNTUxek0xIDMuNWMwLS42MjYuMjkyLTEuMTY1LjctMS41OS40MDYtLjQyMi45NTYtLjc2NyAxLjU3OS0xLjA0MUM0LjUyNS4zMiA2LjE5NSAwIDggMGMxLjgwNSAwIDMuNDc1LjMyIDQuNzIyLjg2OS42MjIuMjc0IDEuMTcyLjYyIDEuNTc4IDEuMDQuNDA4LjQyNi43Ljk2NS43IDEuNTkxdjljMCAuNjI2LS4yOTIgMS4xNjUtLjcgMS41OS0uNDA2LjQyMi0uOTU2Ljc2Ny0xLjU3OSAxLjA0MUMxMS40NzYgMTUuNjggOS44MDYgMTYgOCAxNmMtMS44MDUgMC0zLjQ3NS0uMzItNC43MjEtLjg2OS0uNjIzLS4yNzQtMS4xNzMtLjYyLTEuNTc5LTEuMDQtLjQwOC0uNDI2LS43LS45NjUtLjctMS41OTF2LTl6TTIuNSA4VjUuNzI0Yy4yNDEuMTUuNTAzLjI4Ni43NzkuNDA3QzQuNTI1IDYuNjggNi4xOTUgNyA4IDdjMS44MDUgMCAzLjQ3NS0uMzIgNC43MjItLjg2OS4yNzUtLjEyMS41MzctLjI1Ny43NzgtLjQwN1Y4YzAgLjEzMy0uMDU4LjMxOC0uMjgyLjU1LS4yMjcuMjM3LS41OTIuNDg0LTEuMS43MDhDMTEuMTAxIDkuNzA1IDkuNjQ2IDEwIDggMTBjLTEuNjQ3IDAtMy4xMDItLjI5NS00LjExNy0uNzQyLS41MS0uMjI0LS44NzQtLjQ3LTEuMTAxLS43MDdDMi41NTggOC4zMTggMi41IDguMTMzIDIuNSA4em0wIDIuMjI1VjEyLjVjMCAuMTMzLjA1OC4zMTguMjgyLjU1LjIyNy4yMzcuNTkyLjQ4NCAxLjEuNzA4IDEuMDE2LjQ0NyAyLjQ3MS43NDIgNC4xMTguNzQyIDEuNjQ3IDAgMy4xMDItLjI5NSA0LjExNy0uNzQyLjUxLS4yMjQuODc0LS40NyAxLjEwMS0uNzA3LjIyNC0uMjMzLjI4Mi0uNDE4LjI4Mi0uNTUxdi0yLjI3NWMtLjI0MS4xNS0uNTAzLjI4NS0uNzc4LjQwNi0xLjI0Ny41NDktMi45MTcuODY5LTQuNzIyLjg2OS0xLjgwNSAwLTMuNDc1LS4zMi00LjcyMS0uODY5YTYuMjM2IDYuMjM2IDAgMDEtLjc3OS0uNDA2elwiPjwvcGF0aD48L3N2Zz5cclxuICAgICAgICAgICAgICAgIDwlPSBjb21wdXRlZC5kaXNrVXNhZ2UgJT4gdXNlZFxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwlIGlmIChjb21wdXRlZC5wbHVnaW5zLmxpbmVzKSB7ICU+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZCA8JT0gY29tcHV0ZWQucGx1Z2lucy5saW5lcy5lcnJvciA/ICdlcnJvcicgOiAnJyAlPlwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk0yLjc1IDEuNWEuMjUuMjUgMCAwMC0uMjUuMjV2MTIuNWMwIC4xMzguMTEyLjI1LjI1LjI1aDEwLjVhLjI1LjI1IDAgMDAuMjUtLjI1VjQuNjY0YS4yNS4yNSAwIDAwLS4wNzMtLjE3N2wtMi45MTQtMi45MTRhLjI1LjI1IDAgMDAtLjE3Ny0uMDczSDIuNzV6TTEgMS43NUMxIC43ODQgMS43ODQgMCAyLjc1IDBoNy41ODZjLjQ2NCAwIC45MDkuMTg0IDEuMjM3LjUxM2wyLjkxNCAyLjkxNGMuMzI5LjMyOC41MTMuNzczLjUxMyAxLjIzN3Y5LjU4NkExLjc1IDEuNzUgMCAwMTEzLjI1IDE2SDIuNzVBMS43NSAxLjc1IDAgMDExIDE0LjI1VjEuNzV6bTcgMS41YS43NS43NSAwIDAxLjc1Ljc1djEuNWgxLjVhLjc1Ljc1IDAgMDEwIDEuNWgtMS41djEuNWEuNzUuNzUgMCAwMS0xLjUgMFY3aC0xLjVhLjc1Ljc1IDAgMDEwLTEuNWgxLjVWNEEuNzUuNzUgMCAwMTggMy4yNXptLTMgOGEuNzUuNzUgMCAwMS43NS0uNzVoNC41YS43NS43NSAwIDAxMCAxLjVoLTQuNWEuNzUuNzUgMCAwMS0uNzUtLjc1elwiPjwvcGF0aD48L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICA8JSBpZiAoY29tcHV0ZWQucGx1Z2lucy5saW5lcy5lcnJvcikgeyAlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPCU9IGNvbXB1dGVkLnBsdWdpbnMubGluZXMuZXJyb3IubWVzc2FnZSAlPlxyXG4gICAgICAgICAgICAgICAgICAgIDwlIH0gZWxzZSB7ICU+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8JT0gY29tcHV0ZWQucGx1Z2lucy5saW5lcy5hZGRlZCAlPiBhZGRlZCwgPCU9IGNvbXB1dGVkLnBsdWdpbnMubGluZXMuZGVsZXRlZCAlPiByZW1vdmVkXHJcbiAgICAgICAgICAgICAgICAgICAgPCUgfSAlPlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8JSB9ICU+XHJcbiAgICAgICAgICAgIDwvc2VjdGlvbj5cclxuICAgICAgICAgICAgPHNlY3Rpb24+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkXCI+XHJcbiAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNNC4yNSAyLjVjLTEuMzM2IDAtMi43NSAxLjE2NC0yLjc1IDMgMCAyLjE1IDEuNTggNC4xNDQgMy4zNjUgNS42ODJBMjAuNTY1IDIwLjU2NSAwIDAwOCAxMy4zOTNhMjAuNTYxIDIwLjU2MSAwIDAwMy4xMzUtMi4yMTFDMTIuOTIgOS42NDQgMTQuNSA3LjY1IDE0LjUgNS41YzAtMS44MzYtMS40MTQtMy0yLjc1LTMtMS4zNzMgMC0yLjYwOS45ODYtMy4wMjkgMi40NTZhLjc1Ljc1IDAgMDEtMS40NDIgMEM2Ljg1OSAzLjQ4NiA1LjYyMyAyLjUgNC4yNSAyLjV6TTggMTQuMjVsLS4zNDUuNjY2LS4wMDItLjAwMS0uMDA2LS4wMDMtLjAxOC0uMDFhNy42NDMgNy42NDMgMCAwMS0uMzEtLjE3IDIyLjA3NSAyMi4wNzUgMCAwMS0zLjQzNC0yLjQxNEMyLjA0NSAxMC43MzEgMCA4LjM1IDAgNS41IDAgMi44MzYgMi4wODYgMSA0LjI1IDEgNS43OTcgMSA3LjE1MyAxLjgwMiA4IDMuMDIgOC44NDcgMS44MDIgMTAuMjAzIDEgMTEuNzUgMSAxMy45MTQgMSAxNiAyLjgzNiAxNiA1LjVjMCAyLjg1LTIuMDQ1IDUuMjMxLTMuODg1IDYuODE4YTIyLjA4IDIyLjA4IDAgMDEtMy43NDQgMi41ODRsLS4wMTguMDEtLjAwNi4wMDNoLS4wMDJMOCAxNC4yNXptMCAwbC4zNDUuNjY2YS43NTIuNzUyIDAgMDEtLjY5IDBMOCAxNC4yNXpcIj48L3BhdGg+PC9zdmc+XHJcbiAgICAgICAgICAgICAgICA8JT0gdXNlci5zcG9uc29yc2hpcHNBc01haW50YWluZXIudG90YWxDb3VudCAlPiBTcG9uc29yPCU9IHModXNlci5zcG9uc29yc2hpcHNBc01haW50YWluZXIudG90YWxDb3VudCkgJT5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk04IC4yNWEuNzUuNzUgMCAwMS42NzMuNDE4bDEuODgyIDMuODE1IDQuMjEuNjEyYS43NS43NSAwIDAxLjQxNiAxLjI3OWwtMy4wNDYgMi45Ny43MTkgNC4xOTJhLjc1Ljc1IDAgMDEtMS4wODguNzkxTDggMTIuMzQ3bC0zLjc2NiAxLjk4YS43NS43NSAwIDAxLTEuMDg4LS43OWwuNzItNC4xOTRMLjgxOCA2LjM3NGEuNzUuNzUgMCAwMS40MTYtMS4yOGw0LjIxLS42MTFMNy4zMjcuNjY4QS43NS43NSAwIDAxOCAuMjV6bTAgMi40NDVMNi42MTUgNS41YS43NS43NSAwIDAxLS41NjQuNDFsLTMuMDk3LjQ1IDIuMjQgMi4xODRhLjc1Ljc1IDAgMDEuMjE2LjY2NGwtLjUyOCAzLjA4NCAyLjc2OS0xLjQ1NmEuNzUuNzUgMCAwMS42OTggMGwyLjc3IDEuNDU2LS41My0zLjA4NGEuNzUuNzUgMCAwMS4yMTYtLjY2NGwyLjI0LTIuMTgzLTMuMDk2LS40NWEuNzUuNzUgMCAwMS0uNTY0LS40MUw4IDIuNjk0di4wMDF6XCI+PC9wYXRoPjwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgPCU9IGNvbXB1dGVkLnJlcG9zaXRvcmllcy5zdGFyZ2F6ZXJzICU+IFN0YXJnYXplcjwlPSBzKGNvbXB1dGVkLnJlcG9zaXRvcmllcy5zdGFyZ2F6ZXJzKSAlPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZFwiPlxyXG4gICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiPjxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTUgMy4yNWEuNzUuNzUgMCAxMS0xLjUgMCAuNzUuNzUgMCAwMTEuNSAwem0wIDIuMTIyYTIuMjUgMi4yNSAwIDEwLTEuNSAwdi44NzhBMi4yNSAyLjI1IDAgMDA1Ljc1IDguNWgxLjV2Mi4xMjhhMi4yNTEgMi4yNTEgMCAxMDEuNSAwVjguNWgxLjVhMi4yNSAyLjI1IDAgMDAyLjI1LTIuMjV2LS44NzhhMi4yNSAyLjI1IDAgMTAtMS41IDB2Ljg3OGEuNzUuNzUgMCAwMS0uNzUuNzVoLTQuNUEuNzUuNzUgMCAwMTUgNi4yNXYtLjg3OHptMy43NSA3LjM3OGEuNzUuNzUgMCAxMS0xLjUgMCAuNzUuNzUgMCAwMTEuNSAwem0zLTguNzVhLjc1Ljc1IDAgMTAwLTEuNS43NS43NSAwIDAwMCAxLjV6XCI+PC9wYXRoPjwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgPCU9IGNvbXB1dGVkLnJlcG9zaXRvcmllcy5mb3JrcyAlPiBGb3JrPCU9IHMoY29tcHV0ZWQucmVwb3NpdG9yaWVzLmZvcmtzKSAlPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZFwiPlxyXG4gICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiPjxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTEuNjc5IDcuOTMyYy40MTItLjYyMSAxLjI0Mi0xLjc1IDIuMzY2LTIuNzE3QzUuMTc1IDQuMjQyIDYuNTI3IDMuNSA4IDMuNWMxLjQ3MyAwIDIuODI0Ljc0MiAzLjk1NSAxLjcxNSAxLjEyNC45NjcgMS45NTQgMi4wOTYgMi4zNjYgMi43MTdhLjExOS4xMTkgMCAwMTAgLjEzNmMtLjQxMi42MjEtMS4yNDIgMS43NS0yLjM2NiAyLjcxN0MxMC44MjUgMTEuNzU4IDkuNDczIDEyLjUgOCAxMi41Yy0xLjQ3MyAwLTIuODI0LS43NDItMy45NTUtMS43MTVDMi45MiA5LjgxOCAyLjA5IDguNjkgMS42NzkgOC4wNjhhLjExOS4xMTkgMCAwMTAtLjEzNnpNOCAyYy0xLjk4MSAwLTMuNjcuOTkyLTQuOTMzIDIuMDc4QzEuNzk3IDUuMTY5Ljg4IDYuNDIzLjQzIDcuMWExLjYxOSAxLjYxOSAwIDAwMCAxLjc5OGMuNDUuNjc4IDEuMzY3IDEuOTMyIDIuNjM3IDMuMDI0QzQuMzI5IDEzLjAwOCA2LjAxOSAxNCA4IDE0YzEuOTgxIDAgMy42Ny0uOTkyIDQuOTMzLTIuMDc4IDEuMjctMS4wOTEgMi4xODctMi4zNDUgMi42MzctMy4wMjNhMS42MTkgMS42MTkgMCAwMDAtMS43OThjLS40NS0uNjc4LTEuMzY3LTEuOTMyLTIuNjM3LTMuMDIzQzExLjY3MSAyLjk5MiA5Ljk4MSAyIDggMnptMCA4YTIgMiAwIDEwMC00IDIgMiAwIDAwMCA0elwiPjwvcGF0aD48L3N2Zz5cclxuICAgICAgICAgICAgICAgIDwlPSBjb21wdXRlZC5yZXBvc2l0b3JpZXMud2F0Y2hlcnMgJT4gV2F0Y2hlcjwlPSBzKGNvbXB1dGVkLnJlcG9zaXRvcmllcy53YXRjaGVycykgJT5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8JSBpZiAoY29tcHV0ZWQucGx1Z2lucy50cmFmZmljKSB7ICU+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZCA8JT0gY29tcHV0ZWQucGx1Z2lucy50cmFmZmljLmVycm9yID8gJ2Vycm9yJyA6ICcnICU+XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiPjxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTAgMS43NUEuNzUuNzUgMCAwMS43NSAxaDQuMjUzYzEuMjI3IDAgMi4zMTcuNTkgMyAxLjUwMUEzLjc0NCAzLjc0NCAwIDAxMTEuMDA2IDFoNC4yNDVhLjc1Ljc1IDAgMDEuNzUuNzV2MTAuNWEuNzUuNzUgMCAwMS0uNzUuNzVoLTQuNTA3YTIuMjUgMi4yNSAwIDAwLTEuNTkxLjY1OWwtLjYyMi42MjFhLjc1Ljc1IDAgMDEtMS4wNiAwbC0uNjIyLS42MjFBMi4yNSAyLjI1IDAgMDA1LjI1OCAxM0guNzVhLjc1Ljc1IDAgMDEtLjc1LS43NVYxLjc1em04Ljc1NSAzYTIuMjUgMi4yNSAwIDAxMi4yNS0yLjI1SDE0LjV2OWgtMy43NTdjLS43MSAwLTEuNC4yMDEtMS45OTIuNTcybC4wMDQtNy4zMjJ6bS0xLjUwNCA3LjMyNGwuMDA0LTUuMDczLS4wMDItMi4yNTNBMi4yNSAyLjI1IDAgMDA1LjAwMyAyLjVIMS41djloMy43NTdhMy43NSAzLjc1IDAgMDExLjk5NC41NzR6XCI+PC9wYXRoPjwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgIDwlIGlmIChjb21wdXRlZC5wbHVnaW5zLnRyYWZmaWMuZXJyb3IpIHsgJT5cclxuICAgICAgICAgICAgICAgICAgICAgIDwlPSBjb21wdXRlZC5wbHVnaW5zLnRyYWZmaWMuZXJyb3IubWVzc2FnZSAlPlxyXG4gICAgICAgICAgICAgICAgICAgIDwlIH0gZWxzZSB7ICU+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8JT0gY29tcHV0ZWQucGx1Z2lucy50cmFmZmljLnZpZXdzLmNvdW50ICU+IHZpZXc8JT0gcyhjb21wdXRlZC5wbHVnaW5zLnRyYWZmaWMudmlld3MuY291bnQpICU+IGluIGxhc3QgdHdvIHdlZWtzXHJcbiAgICAgICAgICAgICAgICAgICAgPCUgfSAlPlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8JSB9ICU+XHJcbiAgICAgICAgICAgIDwvc2VjdGlvbj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvc2VjdGlvbj5cclxuICAgICAgPCUgfSAlPlxyXG5cclxuICAgICAgPCUgaWYgKGNvbXB1dGVkLnBsdWdpbnMuZm9sbG93dXApIHsgJT5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcblxyXG4gICAgICAgICAgPHNlY3Rpb24gY2xhc3M9XCJjb2x1bW5cIj5cclxuICAgICAgICAgICAgPGgzPklzc3VlczwvaDM+XHJcbiAgICAgICAgICAgIDwlIGlmIChjb21wdXRlZC5wbHVnaW5zLmZvbGxvd3VwLmVycm9yKSB7ICU+XHJcbiAgICAgICAgICAgICAgPHNlY3Rpb24+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGQgZXJyb3JcIj5cclxuICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiPjxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTIuMzQzIDEzLjY1N0E4IDggMCAxMTEzLjY1NyAyLjM0MyA4IDggMCAwMTIuMzQzIDEzLjY1N3pNNi4wMyA0Ljk3YS43NS43NSAwIDAwLTEuMDYgMS4wNkw2Ljk0IDggNC45NyA5Ljk3YS43NS43NSAwIDEwMS4wNiAxLjA2TDggOS4wNmwxLjk3IDEuOTdhLjc1Ljc1IDAgMTAxLjA2LTEuMDZMOS4wNiA4bDEuOTctMS45N2EuNzUuNzUgMCAxMC0xLjA2LTEuMDZMOCA2Ljk0IDYuMDMgNC45N3pcIj48L3BhdGg+PC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgIDwlPSBjb21wdXRlZC5wbHVnaW5zLmZvbGxvd3VwLmVycm9yLm1lc3NhZ2UgJT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvc2VjdGlvbj5cclxuICAgICAgICAgICAgPCUgfSBlbHNlIHsgJT5cclxuICAgICAgICAgICAgICA8c3ZnIGNsYXNzPVwiYmFyXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjIwXCIgaGVpZ2h0PVwiOFwiPlxyXG4gICAgICAgICAgICAgICAgPG1hc2sgaWQ9XCJpc3N1ZXMtYmFyXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxyZWN0IHg9XCIwXCIgeT1cIjBcIiB3aWR0aD1cIjIyMFwiIGhlaWdodD1cIjhcIiBmaWxsPVwid2hpdGVcIiByeD1cIjVcIi8+XHJcbiAgICAgICAgICAgICAgICA8L21hc2s+XHJcbiAgICAgICAgICAgICAgICA8cmVjdCBtYXNrPVwidXJsKCNpc3N1ZXMtYmFyKVwiIHg9XCIwXCIgeT1cIjBcIiB3aWR0aD1cIjwlPSBjb21wdXRlZC5wbHVnaW5zLmZvbGxvd3VwLmlzc3Vlcy5jb3VudCA/IDAgOiAyMjAgJT5cIiBoZWlnaHQ9XCI4XCIgZmlsbD1cIiNkMWQ1ZGFcIi8+XHJcbiAgICAgICAgICAgICAgICA8cmVjdCBtYXNrPVwidXJsKCNpc3N1ZXMtYmFyKVwiIHg9XCIwXCIgeT1cIjBcIiB3aWR0aD1cIjwlPSAoY29tcHV0ZWQucGx1Z2lucy5mb2xsb3d1cC5pc3N1ZXMuY2xvc2VkL2NvbXB1dGVkLnBsdWdpbnMuZm9sbG93dXAuaXNzdWVzLmNvdW50KSoyMjAgfHwgMCAlPlwiIGhlaWdodD1cIjhcIiBmaWxsPVwiI2Q3M2E0OVwiLz5cclxuICAgICAgICAgICAgICAgIDxyZWN0IG1hc2s9XCJ1cmwoI2lzc3Vlcy1iYXIpXCIgeD1cIjwlPSAoY29tcHV0ZWQucGx1Z2lucy5mb2xsb3d1cC5pc3N1ZXMuY2xvc2VkL2NvbXB1dGVkLnBsdWdpbnMuZm9sbG93dXAuaXNzdWVzLmNvdW50KSoyMjAgfHwgMCAlPlwiIHk9XCIwXCIgd2lkdGg9XCI8JT0gKDEtY29tcHV0ZWQucGx1Z2lucy5mb2xsb3d1cC5pc3N1ZXMuY2xvc2VkL2NvbXB1dGVkLnBsdWdpbnMuZm9sbG93dXAuaXNzdWVzLmNvdW50KSoyMjAgfHwgMCAlPlwiIGhlaWdodD1cIjhcIiBmaWxsPVwiIzI4YTc0NVwiLz5cclxuICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGQgaG9yaXpvbnRhbCBmaWxsLXdpZHRoXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGQgY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsPVwiI2Q3M2E0OVwiIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTEuNSA4YTYuNSA2LjUgMCAwMTEwLjY1LTUuMDAzLjc1Ljc1IDAgMDAuOTU5LTEuMTUzIDggOCAwIDEwMi41OTIgOC4zMy43NS43NSAwIDEwLTEuNDQ0LS40MDdBNi41IDYuNSAwIDAxMS41IDh6TTggMTJhMSAxIDAgMTAwLTIgMSAxIDAgMDAwIDJ6bTAtOGEuNzUuNzUgMCAwMS43NS43NXYzLjVhLjc1Ljc1IDAgMTEtMS41IDB2LTMuNUEuNzUuNzUgMCAwMTggNHptNC43OCA0LjI4bDMtM2EuNzUuNzUgMCAwMC0xLjA2LTEuMDZsLTIuNDcgMi40Ny0uOTctLjk3YS43NDkuNzQ5IDAgMTAtMS4wNiAxLjA2bDEuNSAxLjVhLjc1Ljc1IDAgMDAxLjA2IDB6XCI+PC9wYXRoPjwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm5vLXdyYXBcIj48JT0gY29tcHV0ZWQucGx1Z2lucy5mb2xsb3d1cC5pc3N1ZXMuY2xvc2VkICU+IENsb3NlZDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkIGNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbD1cIiMyOGE3NDVcIiBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk04IDEuNWE2LjUgNi41IDAgMTAwIDEzIDYuNSA2LjUgMCAwMDAtMTN6TTAgOGE4IDggMCAxMTE2IDBBOCA4IDAgMDEwIDh6bTkgM2ExIDEgMCAxMS0yIDAgMSAxIDAgMDEyIDB6bS0uMjUtNi4yNWEuNzUuNzUgMCAwMC0xLjUgMHYzLjVhLjc1Ljc1IDAgMDAxLjUgMHYtMy41elwiPjwvcGF0aD48L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJuby13cmFwXCI+PCU9IGNvbXB1dGVkLnBsdWdpbnMuZm9sbG93dXAuaXNzdWVzLm9wZW4gJT4gT3Blbjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8JSB9ICU+XHJcbiAgICAgICAgICA8L3NlY3Rpb24+XHJcblxyXG4gICAgICAgICAgPHNlY3Rpb24gY2xhc3M9XCJjb2x1bW5cIj5cclxuICAgICAgICAgICAgPGgzPlB1bGwgcmVxdWVzdHM8L2gzPlxyXG4gICAgICAgICAgICA8JSBpZiAoY29tcHV0ZWQucGx1Z2lucy5mb2xsb3d1cC5lcnJvcikgeyAlPlxyXG4gICAgICAgICAgICAgIDxzZWN0aW9uPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkIGVycm9yXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk0yLjM0MyAxMy42NTdBOCA4IDAgMTExMy42NTcgMi4zNDMgOCA4IDAgMDEyLjM0MyAxMy42NTd6TTYuMDMgNC45N2EuNzUuNzUgMCAwMC0xLjA2IDEuMDZMNi45NCA4IDQuOTcgOS45N2EuNzUuNzUgMCAxMDEuMDYgMS4wNkw4IDkuMDZsMS45NyAxLjk3YS43NS43NSAwIDEwMS4wNi0xLjA2TDkuMDYgOGwxLjk3LTEuOTdhLjc1Ljc1IDAgMTAtMS4wNi0xLjA2TDggNi45NCA2LjAzIDQuOTd6XCI+PC9wYXRoPjwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICA8JT0gY29tcHV0ZWQucGx1Z2lucy5mb2xsb3d1cC5lcnJvci5tZXNzYWdlICU+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L3NlY3Rpb24+XHJcbiAgICAgICAgICAgIDwlIH0gZWxzZSB7ICU+XHJcbiAgICAgICAgICAgICAgPHN2ZyBjbGFzcz1cImJhclwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjIyMFwiIGhlaWdodD1cIjhcIj5cclxuICAgICAgICAgICAgICAgIDxtYXNrIGlkPVwicHItYmFyXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxyZWN0IHg9XCIwXCIgeT1cIjBcIiB3aWR0aD1cIjIyMFwiIGhlaWdodD1cIjhcIiBmaWxsPVwid2hpdGVcIiByeD1cIjVcIi8+XHJcbiAgICAgICAgICAgICAgICA8L21hc2s+XHJcbiAgICAgICAgICAgICAgICA8cmVjdCBtYXNrPVwidXJsKCNwci1iYXIpXCIgeD1cIjBcIiB5PVwiMFwiIHdpZHRoPVwiPCU9IGNvbXB1dGVkLnBsdWdpbnMuZm9sbG93dXAucHIuY291bnQgPyAwIDogMjIwICU+XCIgaGVpZ2h0PVwiOFwiIGZpbGw9XCIjZDFkNWRhXCIvPlxyXG4gICAgICAgICAgICAgICAgPHJlY3QgbWFzaz1cInVybCgjcHItYmFyKVwiIHg9XCIwXCIgeT1cIjBcIiB3aWR0aD1cIjwlPSAoY29tcHV0ZWQucGx1Z2lucy5mb2xsb3d1cC5wci5tZXJnZWQvY29tcHV0ZWQucGx1Z2lucy5mb2xsb3d1cC5wci5jb3VudCkqMjIwIHx8IDAgJT5cIiBoZWlnaHQ9XCI4XCIgZmlsbD1cIiM2ZjQyYzFcIi8+XHJcbiAgICAgICAgICAgICAgICA8cmVjdCBtYXNrPVwidXJsKCNwci1iYXIpXCIgeD1cIjwlPSAoY29tcHV0ZWQucGx1Z2lucy5mb2xsb3d1cC5wci5tZXJnZWQvY29tcHV0ZWQucGx1Z2lucy5mb2xsb3d1cC5wci5jb3VudCkqMjIwIHx8IDAgJT5cIiB5PVwiMFwiIHdpZHRoPVwiPCU9ICgxLWNvbXB1dGVkLnBsdWdpbnMuZm9sbG93dXAucHIubWVyZ2VkL2NvbXB1dGVkLnBsdWdpbnMuZm9sbG93dXAucHIuY291bnQpKjIyMCB8fCAwICU+XCIgaGVpZ2h0PVwiOFwiIGZpbGw9XCIjMjhhNzQ1XCIvPlxyXG4gICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZCBob3Jpem9udGFsIGZpbGwtd2lkdGhcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZCBjZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiPjxwYXRoIGZpbGw9XCIjNmY0MmMxXCIgZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNNSAzLjI1NFYzLjI1di4wMDVhLjc1Ljc1IDAgMTEwLS4wMDV2LjAwNHptLjQ1IDEuOWEyLjI1IDIuMjUgMCAxMC0xLjk1LjIxOHY1LjI1NmEyLjI1IDIuMjUgMCAxMDEuNSAwVjcuMTIzQTUuNzM1IDUuNzM1IDAgMDA5LjI1IDloMS4zNzhhMi4yNTEgMi4yNTEgMCAxMDAtMS41SDkuMjVhNC4yNSA0LjI1IDAgMDEtMy44LTIuMzQ2ek0xMi43NSA5YS43NS43NSAwIDEwMC0xLjUuNzUuNzUgMCAwMDAgMS41em0tOC41IDQuNWEuNzUuNzUgMCAxMDAtMS41Ljc1Ljc1IDAgMDAwIDEuNXpcIj48L3BhdGg+PC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibm8td3JhcFwiPjwlPSBjb21wdXRlZC5wbHVnaW5zLmZvbGxvd3VwLnByLm1lcmdlZCAlPiBNZXJnZWQ8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZCBjZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiPjxwYXRoIGZpbGw9XCIjMjhhNzQ1XCIgZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNNy4xNzcgMy4wNzNMOS41NzMuNjc3QS4yNS4yNSAwIDAxMTAgLjg1NHY0Ljc5MmEuMjUuMjUgMCAwMS0uNDI3LjE3N0w3LjE3NyAzLjQyN2EuMjUuMjUgMCAwMTAtLjM1NHpNMy43NSAyLjVhLjc1Ljc1IDAgMTAwIDEuNS43NS43NSAwIDAwMC0xLjV6bS0yLjI1Ljc1YTIuMjUgMi4yNSAwIDExMyAyLjEyMnY1LjI1NmEyLjI1MSAyLjI1MSAwIDExLTEuNSAwVjUuMzcyQTIuMjUgMi4yNSAwIDAxMS41IDMuMjV6TTExIDIuNWgtMVY0aDFhMSAxIDAgMDExIDF2NS42MjhhMi4yNTEgMi4yNTEgMCAxMDEuNSAwVjVBMi41IDIuNSAwIDAwMTEgMi41em0xIDEwLjI1YS43NS43NSAwIDExMS41IDAgLjc1Ljc1IDAgMDEtMS41IDB6TTMuNzUgMTJhLjc1Ljc1IDAgMTAwIDEuNS43NS43NSAwIDAwMC0xLjV6XCI+PC9wYXRoPjwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm5vLXdyYXBcIj48JT0gY29tcHV0ZWQucGx1Z2lucy5mb2xsb3d1cC5wci5vcGVuICU+IE9wZW48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPCUgfSAlPlxyXG4gICAgICAgICAgPC9zZWN0aW9uPlxyXG5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPCUgfSAlPlxyXG5cclxuICAgICAgPCUgaWYgKGNvbXB1dGVkLnBsdWdpbnMubGFuZ3VhZ2VzKSB7ICU+XHJcbiAgICAgICAgPHNlY3Rpb24gY2xhc3M9XCJjb2x1bW5cIj5cclxuICAgICAgICAgIDxoMz5Nb3N0IHVzZWQgbGFuZ3VhZ2VzPC9oMz5cclxuICAgICAgICAgIDwlIGlmIChjb21wdXRlZC5wbHVnaW5zLmxhbmd1YWdlcy5lcnJvcikgeyAlPlxyXG4gICAgICAgICAgICA8c2VjdGlvbj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGQgZXJyb3JcIj5cclxuICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk0yLjM0MyAxMy42NTdBOCA4IDAgMTExMy42NTcgMi4zNDMgOCA4IDAgMDEyLjM0MyAxMy42NTd6TTYuMDMgNC45N2EuNzUuNzUgMCAwMC0xLjA2IDEuMDZMNi45NCA4IDQuOTcgOS45N2EuNzUuNzUgMCAxMDEuMDYgMS4wNkw4IDkuMDZsMS45NyAxLjk3YS43NS43NSAwIDEwMS4wNi0xLjA2TDkuMDYgOGwxLjk3LTEuOTdhLjc1Ljc1IDAgMTAtMS4wNi0xLjA2TDggNi45NCA2LjAzIDQuOTd6XCI+PC9wYXRoPjwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgPCU9IGNvbXB1dGVkLnBsdWdpbnMubGFuZ3VhZ2VzLmVycm9yLm1lc3NhZ2UgJT5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9zZWN0aW9uPlxyXG4gICAgICAgICAgPCUgfSBlbHNlIHsgJT5cclxuICAgICAgICAgICAgPHN2ZyBjbGFzcz1cImJhclwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjQ2MFwiIGhlaWdodD1cIjhcIj5cclxuICAgICAgICAgICAgICA8bWFzayBpZD1cImxhbmd1YWdlcy1iYXJcIj5cclxuICAgICAgICAgICAgICAgIDxyZWN0IHg9XCIwXCIgeT1cIjBcIiB3aWR0aD1cIjQ2MFwiIGhlaWdodD1cIjhcIiBmaWxsPVwid2hpdGVcIiByeD1cIjVcIi8+XHJcbiAgICAgICAgICAgICAgPC9tYXNrPlxyXG4gICAgICAgICAgICAgIDxyZWN0IG1hc2s9XCJ1cmwoI2xhbmd1YWdlcy1iYXIpXCIgeD1cIjBcIiB5PVwiMFwiIHdpZHRoPVwiPCU9IGNvbXB1dGVkLnBsdWdpbnMubGFuZ3VhZ2VzLmZhdm9yaXRlcy5sZW5ndGggPyAwIDogNDYwICU+XCIgaGVpZ2h0PVwiOFwiIGZpbGw9XCIjZDFkNWRhXCIvPlxyXG4gICAgICAgICAgICAgIDwlIGZvciAoY29uc3Qge25hbWUsIHZhbHVlLCBjb2xvciwgeH0gb2YgY29tcHV0ZWQucGx1Z2lucy5sYW5ndWFnZXMuZmF2b3JpdGVzKSB7ICU+XHJcbiAgICAgICAgICAgICAgICA8cmVjdCBtYXNrPVwidXJsKCNsYW5ndWFnZXMtYmFyKVwiIHg9XCI8JT0geCo0NjAgJT5cIiB5PVwiMFwiIHdpZHRoPVwiPCU9IHZhbHVlKjQ2MCAlPlwiIGhlaWdodD1cIjhcIiBmaWxsPVwiPCU9IGNvbG9yICU+XCIvPlxyXG4gICAgICAgICAgICAgIDwlIH0gJT5cclxuICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZCBjZW50ZXIgaG9yaXpvbnRhbC13cmFwIGZpbGwtd2lkdGhcIj5cclxuICAgICAgICAgICAgICA8JSBmb3IgKGNvbnN0IHtuYW1lLCB2YWx1ZSwgY29sb3J9IG9mIGNvbXB1dGVkLnBsdWdpbnMubGFuZ3VhZ2VzLmZhdm9yaXRlcykgeyAlPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkIGNlbnRlciBuby13cmFwIGxhbmd1YWdlXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsPVwiPCU9IGNvbG9yICU+XCIgZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNOCA0YTQgNCAwIDEwMCA4IDQgNCAwIDAwMC04elwiPjwvcGF0aD48L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgPCU9IG5hbWUgJT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwlIH0gJT5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8JSB9ICU+XHJcbiAgICAgICAgPC9zZWN0aW9uPlxyXG4gICAgICA8JSB9ICU+XHJcblxyXG4gICAgICA8JSBpZiAoY29tcHV0ZWQucGx1Z2lucy5naXN0cykgeyAlPlxyXG4gICAgICAgIDxzZWN0aW9uPlxyXG4gICAgICAgICAgPGgyIGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiPjxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTEuNzUgMS41YS4yNS4yNSAwIDAwLS4yNS4yNXYxMi41YzAgLjEzOC4xMTIuMjUuMjUuMjVoMTIuNWEuMjUuMjUgMCAwMC4yNS0uMjVWMS43NWEuMjUuMjUgMCAwMC0uMjUtLjI1SDEuNzV6TTAgMS43NUMwIC43ODQuNzg0IDAgMS43NSAwaDEyLjVDMTUuMjE2IDAgMTYgLjc4NCAxNiAxLjc1djEyLjVBMS43NSAxLjc1IDAgMDExNC4yNSAxNkgxLjc1QTEuNzUgMS43NSAwIDAxMCAxNC4yNVYxLjc1em05LjIyIDMuNzJhLjc1Ljc1IDAgMDAwIDEuMDZMMTAuNjkgOCA5LjIyIDkuNDdhLjc1Ljc1IDAgMTAxLjA2IDEuMDZsMi0yYS43NS43NSAwIDAwMC0xLjA2bC0yLTJhLjc1Ljc1IDAgMDAtMS4wNiAwek02Ljc4IDYuNTNhLjc1Ljc1IDAgMDAtMS4wNi0xLjA2bC0yIDJhLjc1Ljc1IDAgMDAwIDEuMDZsMiAyYS43NS43NSAwIDEwMS4wNi0xLjA2TDUuMzEgOGwxLjQ3LTEuNDd6XCI+PC9wYXRoPjwvc3ZnPlxyXG4gICAgICAgICAgICA8JT0gY29tcHV0ZWQucGx1Z2lucy5naXN0cy50b3RhbENvdW50ICU+IEdpc3Q8JT0gcyhjb21wdXRlZC5wbHVnaW5zLmdpc3RzLnRvdGFsQ291bnQpICU+XHJcbiAgICAgICAgICA8L2gyPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICA8JSBpZiAoY29tcHV0ZWQucGx1Z2lucy5naXN0cy5lcnJvcikgeyAlPlxyXG4gICAgICAgICAgICAgIDxzZWN0aW9uPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkIGVycm9yXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk0yLjM0MyAxMy42NTdBOCA4IDAgMTExMy42NTcgMi4zNDMgOCA4IDAgMDEyLjM0MyAxMy42NTd6TTYuMDMgNC45N2EuNzUuNzUgMCAwMC0xLjA2IDEuMDZMNi45NCA4IDQuOTcgOS45N2EuNzUuNzUgMCAxMDEuMDYgMS4wNkw4IDkuMDZsMS45NyAxLjk3YS43NS43NSAwIDEwMS4wNi0xLjA2TDkuMDYgOGwxLjk3LTEuOTdhLjc1Ljc1IDAgMTAtMS4wNi0xLjA2TDggNi45NCA2LjAzIDQuOTd6XCI+PC9wYXRoPjwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICA8JT0gY29tcHV0ZWQucGx1Z2lucy5naXN0cy5lcnJvci5tZXNzYWdlICU+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L3NlY3Rpb24+XHJcbiAgICAgICAgICAgIDwlIH0gZWxzZSB7ICU+XHJcbiAgICAgICAgICAgICAgPHNlY3Rpb24+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiPjxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTggLjI1YS43NS43NSAwIDAxLjY3My40MThsMS44ODIgMy44MTUgNC4yMS42MTJhLjc1Ljc1IDAgMDEuNDE2IDEuMjc5bC0zLjA0NiAyLjk3LjcxOSA0LjE5MmEuNzUuNzUgMCAwMS0xLjA4OC43OTFMOCAxMi4zNDdsLTMuNzY2IDEuOThhLjc1Ljc1IDAgMDEtMS4wODgtLjc5bC43Mi00LjE5NEwuODE4IDYuMzc0YS43NS43NSAwIDAxLjQxNi0xLjI4bDQuMjEtLjYxMUw3LjMyNy42NjhBLjc1Ljc1IDAgMDE4IC4yNXptMCAyLjQ0NUw2LjYxNSA1LjVhLjc1Ljc1IDAgMDEtLjU2NC40MWwtMy4wOTcuNDUgMi4yNCAyLjE4NGEuNzUuNzUgMCAwMS4yMTYuNjY0bC0uNTI4IDMuMDg0IDIuNzY5LTEuNDU2YS43NS43NSAwIDAxLjY5OCAwbDIuNzcgMS40NTYtLjUzLTMuMDg0YS43NS43NSAwIDAxLjIxNi0uNjY0bDIuMjQtMi4xODMtMy4wOTYtLjQ1YS43NS43NSAwIDAxLS41NjQtLjQxTDggMi42OTR2LjAwMXpcIj48L3BhdGg+PC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgIDwlPSBjb21wdXRlZC5wbHVnaW5zLmdpc3RzLnN0YXJnYXplcnMgJT4gU3RhcmdhemVyPCU9IHMoY29tcHV0ZWQucGx1Z2lucy5naXN0cy5zdGFyZ2F6ZXJzKSAlPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9zZWN0aW9uPlxyXG4gICAgICAgICAgICAgIDxzZWN0aW9uPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk01IDMuMjVhLjc1Ljc1IDAgMTEtMS41IDAgLjc1Ljc1IDAgMDExLjUgMHptMCAyLjEyMmEyLjI1IDIuMjUgMCAxMC0xLjUgMHYuODc4QTIuMjUgMi4yNSAwIDAwNS43NSA4LjVoMS41djIuMTI4YTIuMjUxIDIuMjUxIDAgMTAxLjUgMFY4LjVoMS41YTIuMjUgMi4yNSAwIDAwMi4yNS0yLjI1di0uODc4YTIuMjUgMi4yNSAwIDEwLTEuNSAwdi44NzhhLjc1Ljc1IDAgMDEtLjc1Ljc1aC00LjVBLjc1Ljc1IDAgMDE1IDYuMjV2LS44Nzh6bTMuNzUgNy4zNzhhLjc1Ljc1IDAgMTEtMS41IDAgLjc1Ljc1IDAgMDExLjUgMHptMy04Ljc1YS43NS43NSAwIDEwMC0xLjUuNzUuNzUgMCAwMDAgMS41elwiPjwvcGF0aD48L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgPCU9IGNvbXB1dGVkLnBsdWdpbnMuZ2lzdHMuZm9ya3MgJT4gRm9yazwlPSBzKGNvbXB1dGVkLnBsdWdpbnMuZ2lzdHMuZm9ya3MpICU+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L3NlY3Rpb24+XHJcbiAgICAgICAgICAgIDwlIH0gJT5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvc2VjdGlvbj5cclxuICAgICAgPCUgfSAlPlxyXG5cclxuICAgICAgPCUgaWYgKGNvbXB1dGVkLnBsdWdpbnMucGFnZXNwZWVkKSB7ICU+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgPHNlY3Rpb24+XHJcbiAgICAgICAgICAgIDxoMiBjbGFzcz1cImZpZWxkXCI+XHJcbiAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiPjxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTE0LjA2NCAwYTguNzUgOC43NSAwIDAwLTYuMTg3IDIuNTYzbC0uNDU5LjQ1OGMtLjMxNC4zMTQtLjYxNi42NDEtLjkwNC45NzlIMy4zMWExLjc1IDEuNzUgMCAwMC0xLjQ5LjgzM0wuMTEgNy42MDdhLjc1Ljc1IDAgMDAuNDE4IDEuMTFsMy4xMDIuOTU0Yy4wMzcuMDUxLjA3OS4xLjEyNC4xNDVsMi40MjkgMi40MjhjLjA0Ni4wNDYuMDk0LjA4OC4xNDUuMTI1bC45NTQgMy4xMDJhLjc1Ljc1IDAgMDAxLjExLjQxOGwyLjc3NC0xLjcwN2ExLjc1IDEuNzUgMCAwMC44MzMtMS40OVY5LjQ4NWMuMzM4LS4yODguNjY1LS41OS45NzktLjkwNGwuNDU4LS40NTlBOC43NSA4Ljc1IDAgMDAxNiAxLjkzNlYxLjc1QTEuNzUgMS43NSAwIDAwMTQuMjUgMGgtLjE4NnpNMTAuNSAxMC42MjVjLS4wODguMDYtLjE3Ny4xMTgtLjI2Ni4xNzVsLTIuMzUgMS41MjEuNTQ4IDEuNzgzIDEuOTQ5LTEuMmEuMjUuMjUgMCAwMC4xMTktLjIxM3YtMi4wNjZ6TTMuNjc4IDguMTE2TDUuMiA1Ljc2NmMuMDU4LS4wOS4xMTctLjE3OC4xNzYtLjI2NkgzLjMwOWEuMjUuMjUgMCAwMC0uMjEzLjExOWwtMS4yIDEuOTUgMS43ODIuNTQ3em01LjI2LTQuNDkzQTcuMjUgNy4yNSAwIDAxMTQuMDYzIDEuNWguMTg2YS4yNS4yNSAwIDAxLjI1LjI1di4xODZhNy4yNSA3LjI1IDAgMDEtMi4xMjMgNS4xMjdsLS40NTkuNDU4YTE1LjIxIDE1LjIxIDAgMDEtMi40OTkgMi4wMmwtMi4zMTcgMS41LTIuMTQzLTIuMTQzIDEuNS0yLjMxN2ExNS4yNSAxNS4yNSAwIDAxMi4wMi0yLjVsLjQ1OC0uNDU4aC4wMDJ6TTEyIDVhMSAxIDAgMTEtMiAwIDEgMSAwIDAxMiAwem0tOC40NCA5LjU2YTEuNSAxLjUgMCAxMC0yLjEyLTIuMTJjLS43MzQuNzMtMS4wNDcgMi4zMzItMS4xNSAzLjAwM2EuMjMuMjMgMCAwMC4yNjUuMjY1Yy42NzEtLjEwMyAyLjI3My0uNDE2IDMuMDA1LTEuMTQ4elwiPjwvcGF0aD48L3N2Zz5cclxuICAgICAgICAgICAgICBQYWdlU3BlZWQgSW5zaWdodHNcclxuICAgICAgICAgICAgPC9oMj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkXCI+XHJcbiAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiPjxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTcuNzc1IDMuMjc1YS43NS43NSAwIDAwMS4wNiAxLjA2bDEuMjUtMS4yNWEyIDIgMCAxMTIuODMgMi44M2wtMi41IDIuNWEyIDIgMCAwMS0yLjgzIDAgLjc1Ljc1IDAgMDAtMS4wNiAxLjA2IDMuNSAzLjUgMCAwMDQuOTUgMGwyLjUtMi41YTMuNSAzLjUgMCAwMC00Ljk1LTQuOTVsLTEuMjUgMS4yNXptLTQuNjkgOS42NGEyIDIgMCAwMTAtMi44M2wyLjUtMi41YTIgMiAwIDAxMi44MyAwIC43NS43NSAwIDAwMS4wNi0xLjA2IDMuNSAzLjUgMCAwMC00Ljk1IDBsLTIuNSAyLjVhMy41IDMuNSAwIDAwNC45NSA0Ljk1bDEuMjUtMS4yNWEuNzUuNzUgMCAwMC0xLjA2LTEuMDZsLTEuMjUgMS4yNWEyIDIgMCAwMS0yLjgzIDB6XCI+PC9wYXRoPjwvc3ZnPlxyXG4gICAgICAgICAgICAgIDwlPSB1c2VyLndlYnNpdGVVcmwgJT5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L3NlY3Rpb24+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPCUgaWYgKGNvbXB1dGVkLnBsdWdpbnMucGFnZXNwZWVkLmVycm9yKSB7ICU+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgIDxzZWN0aW9uPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZCBlcnJvclwiPlxyXG4gICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiPjxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTIuMzQzIDEzLjY1N0E4IDggMCAxMTEzLjY1NyAyLjM0MyA4IDggMCAwMTIuMzQzIDEzLjY1N3pNNi4wMyA0Ljk3YS43NS43NSAwIDAwLTEuMDYgMS4wNkw2Ljk0IDggNC45NyA5Ljk3YS43NS43NSAwIDEwMS4wNiAxLjA2TDggOS4wNmwxLjk3IDEuOTdhLjc1Ljc1IDAgMTAxLjA2LTEuMDZMOS4wNiA4bDEuOTctMS45N2EuNzUuNzUgMCAxMC0xLjA2LTEuMDZMOCA2Ljk0IDYuMDMgNC45N3pcIj48L3BhdGg+PC9zdmc+XHJcbiAgICAgICAgICAgICAgICA8JT0gY29tcHV0ZWQucGx1Z2lucy5wYWdlc3BlZWQuZXJyb3IubWVzc2FnZSAlPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L3NlY3Rpb24+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8JSB9IGVsc2UgeyAlPlxyXG4gICAgICAgICAgPHNlY3Rpb24+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3cgZmlsbC13aWR0aFwiPlxyXG4gICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPVwiY2F0ZWdvcmllc1wiPlxyXG4gICAgICAgICAgICAgICAgPCUgZm9yIChjb25zdCB7c2NvcmUsIHRpdGxlfSBvZiBjb21wdXRlZC5wbHVnaW5zLnBhZ2VzcGVlZC5zY29yZXMpIHsgJT5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhdGVnb3JpZSBjb2x1bW5cIj5cclxuICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDEyMCAxMjBcIiB3aWR0aD1cIjUwXCIgaGVpZ2h0PVwiNTBcIiBjbGFzcz1cImdhdWdlIDwlPSAhTnVtYmVyLmlzTmFOKHNjb3JlKSA/IChzY29yZSA+PSAwLjkgPyAnaGlnaCcgOiBzY29yZSA+PSAwLjUgPyAnYXZlcmFnZScgOiAnbG93JykgOiAnJyAlPlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGNpcmNsZSBjbGFzcz1cImdhdWdlLWJhc2VcIiByPVwiNTNcIiBjeD1cIjYwXCIgY3k9XCI2MFwiPjwvY2lyY2xlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPCUgaWYgKCFOdW1iZXIuaXNOYU4oc2NvcmUpKSB7ICU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxjaXJjbGUgY2xhc3M9XCJnYXVnZS1hcmNcIiB0cmFuc2Zvcm09XCJyb3RhdGUoLTkwIDYwIDYwKVwiIHI9XCI1M1wiIGN4PVwiNjBcIiBjeT1cIjYwXCIgc3Ryb2tlLWRhc2hhcnJheT1cIjwlPSBzY29yZSAqIDMyOSAlPiAzMjlcIj48L2NpcmNsZT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRleHQgeD1cIjYwXCIgeT1cIjYwXCIgZG9taW5hbnQtYmFzZWxpbmU9XCJjZW50cmFsXCIgPjwlPSBNYXRoLnJvdW5kKHNjb3JlKjEwMCkgJT48L3RleHQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8JSB9IGVsc2UgeyAlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGV4dCB4PVwiNjBcIiB5PVwiNjBcIiBkb21pbmFudC1iYXNlbGluZT1cImNlbnRyYWxcIiA+LTwvdGV4dD5cclxuICAgICAgICAgICAgICAgICAgICAgIDwlIH0gJT5cclxuICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRpdGxlXCI+PCU9IHRpdGxlICU+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwlIH0gJT5cclxuICAgICAgICAgICAgICA8L3NlY3Rpb24+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9zZWN0aW9uPlxyXG4gICAgICAgIDwlIH0gJT5cclxuICAgICAgPCUgfSAlPlxyXG5cclxuICAgICAgPCUgaWYgKGNvbXB1dGVkLnBsdWdpbnMuaGFiaXRzKSB7ICU+XHJcbiAgICAgICAgPHNlY3Rpb24+XHJcbiAgICAgICAgICA8aDIgY2xhc3M9XCJmaWVsZFwiPlxyXG4gICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNOCAxLjVjLTIuMzYzIDAtNCAxLjY5LTQgMy43NSAwIC45ODQuNDI0IDEuNjI1Ljk4NCAyLjMwNGwuMjE0LjI1M2MuMjIzLjI2NC40Ny41NTYuNjczLjg0OC4yODQuNDExLjUzNy44OTYuNjIxIDEuNDlhLjc1Ljc1IDAgMDEtMS40ODQuMjExYy0uMDQtLjI4Mi0uMTYzLS41NDctLjM3LS44NDdhOC42OTUgOC42OTUgMCAwMC0uNTQyLS42OGMtLjA4NC0uMS0uMTczLS4yMDUtLjI2OC0uMzJDMy4yMDEgNy43NSAyLjUgNi43NjYgMi41IDUuMjUgMi41IDIuMzEgNC44NjMgMCA4IDBzNS41IDIuMzEgNS41IDUuMjVjMCAxLjUxNi0uNzAxIDIuNS0xLjMyOCAzLjI1OS0uMDk1LjExNS0uMTg0LjIyLS4yNjguMzE5LS4yMDcuMjQ1LS4zODMuNDUzLS41NDEuNjgxLS4yMDguMy0uMzMuNTY1LS4zNy44NDdhLjc1Ljc1IDAgMDEtMS40ODUtLjIxMmMuMDg0LS41OTMuMzM3LTEuMDc4LjYyMS0xLjQ4OS4yMDMtLjI5Mi40NS0uNTg0LjY3My0uODQ4LjA3NS0uMDg4LjE0Ny0uMTczLjIxMy0uMjUzLjU2MS0uNjc5Ljk4NS0xLjMyLjk4NS0yLjMwNCAwLTIuMDYtMS42MzctMy43NS00LTMuNzV6TTYgMTUuMjVhLjc1Ljc1IDAgMDEuNzUtLjc1aDIuNWEuNzUuNzUgMCAwMTAgMS41aC0yLjVhLjc1Ljc1IDAgMDEtLjc1LS43NXpNNS43NSAxMmEuNzUuNzUgMCAwMDAgMS41aDQuNWEuNzUuNzUgMCAwMDAtMS41aC00LjV6XCI+PC9wYXRoPjwvc3ZnPlxyXG4gICAgICAgICAgICBDb2RpbmcgaGFiaXRzXHJcbiAgICAgICAgICA8L2gyPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICA8JSBpZiAoY29tcHV0ZWQucGx1Z2lucy5oYWJpdHMuZXJyb3IpIHsgJT5cclxuICAgICAgICAgICAgICA8c2VjdGlvbj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZCBlcnJvclwiPlxyXG4gICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNMi4zNDMgMTMuNjU3QTggOCAwIDExMTMuNjU3IDIuMzQzIDggOCAwIDAxMi4zNDMgMTMuNjU3ek02LjAzIDQuOTdhLjc1Ljc1IDAgMDAtMS4wNiAxLjA2TDYuOTQgOCA0Ljk3IDkuOTdhLjc1Ljc1IDAgMTAxLjA2IDEuMDZMOCA5LjA2bDEuOTcgMS45N2EuNzUuNzUgMCAxMDEuMDYtMS4wNkw5LjA2IDhsMS45Ny0xLjk3YS43NS43NSAwIDEwLTEuMDYtMS4wNkw4IDYuOTQgNi4wMyA0Ljk3elwiPjwvcGF0aD48L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgPCU9IGNvbXB1dGVkLnBsdWdpbnMuaGFiaXRzLmVycm9yLm1lc3NhZ2UgJT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvc2VjdGlvbj5cclxuICAgICAgICAgICAgPCUgfSBlbHNlIHsgJT5cclxuICAgICAgICAgICAgICA8dWwgY2xhc3M9XCJoYWJpdHNcIj5cclxuICAgICAgICAgICAgICAgIDwlIGlmIChjb21wdXRlZC5wbHVnaW5zLmhhYml0cy5pbmRlbnRzLnN0eWxlKSB7ICU+XHJcbiAgICAgICAgICAgICAgICAgIDxsaT5Vc2UgPCU9IGNvbXB1dGVkLnBsdWdpbnMuaGFiaXRzLmluZGVudHMuc3R5bGUgJT4gZm9yIGluZGVudHM8L2xpPlxyXG4gICAgICAgICAgICAgICAgPCUgfSAlPlxyXG4gICAgICAgICAgICAgICAgPCUgaWYgKCFOdW1iZXIuaXNOYU4oY29tcHV0ZWQucGx1Z2lucy5oYWJpdHMuY29tbWl0cy5ob3VyKSkgeyAlPlxyXG4gICAgICAgICAgICAgICAgICA8bGk+TW9zdGx5IHB1c2ggY29kZSBhcm91bmQgPCU9IGNvbXB1dGVkLnBsdWdpbnMuaGFiaXRzLmNvbW1pdHMuaG91ciAlPjowMDwvbGk+XHJcbiAgICAgICAgICAgICAgICA8JSB9ICU+XHJcbiAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgPCUgfSAlPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9zZWN0aW9uPlxyXG4gICAgICA8JSB9ICU+XHJcblxyXG4gICAgICA8JSBpZiAoY29tcHV0ZWQucGx1Z2lucy5tdXNpYykgeyAlPlxyXG4gICAgICAgIDxzZWN0aW9uPlxyXG4gICAgICAgICAgPGgyIGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiPjxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTEuNSA4YTYuNSA2LjUgMCAxMTEzIDAgNi41IDYuNSAwIDAxLTEzIDB6TTggMGE4IDggMCAxMDAgMTZBOCA4IDAgMDA4IDB6TTYuMzc5IDUuMjI3QS4yNS4yNSAwIDAwNiA1LjQ0MnY1LjExN2EuMjUuMjUgMCAwMC4zNzkuMjE0bDQuMjY0LTIuNTU5YS4yNS4yNSAwIDAwMC0uNDI4TDYuMzc5IDUuMjI3elwiPjwvcGF0aD48L3N2Zz5cclxuICAgICAgICAgICAgPCU9IGNvbXB1dGVkLnBsdWdpbnMubXVzaWMubW9kZSAlPlxyXG4gICAgICAgICAgPC9oMj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3cgZmlsbC13aWR0aFwiPlxyXG4gICAgICAgICAgICA8c2VjdGlvbj5cclxuICAgICAgICAgICAgICA8JSBpZiAoY29tcHV0ZWQucGx1Z2lucy5tdXNpYy5wcm92aWRlcikgeyAlPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk0yLjAwMiAyLjcyNWEuNzUuNzUgMCAwMS43OTctLjY5OUM4Ljc5IDIuNDIgMTMuNTggNy4yMSAxMy45NzQgMTMuMjAxYS43NS43NSAwIDExLTEuNDk3LjA5OCAxMC41MDIgMTAuNTAyIDAgMDAtOS43NzYtOS43NzYuNzUuNzUgMCAwMS0uNy0uNzk4ek0yIDEzYTEgMSAwIDExMiAwIDEgMSAwIDAxLTIgMHptLjg0LTUuOTVhLjc1Ljc1IDAgMDAtLjE3OSAxLjQ4OWMyLjUwOS4zIDQuNSAyLjI5MSA0LjggNC44YS43NS43NSAwIDEwMS40OS0uMTc4QTcuMDAzIDcuMDAzIDAgMDAyLjgzOCA3LjA1elwiPjwvcGF0aD48L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgRnJvbSA8JT0gY29tcHV0ZWQucGx1Z2lucy5tdXNpYy5wcm92aWRlciAlPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPCUgfSAlPlxyXG4gICAgICAgICAgICAgIDwlIGlmIChjb21wdXRlZC5wbHVnaW5zLm11c2ljLmVycm9yKSB7ICU+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGQgZXJyb3JcIj5cclxuICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiPjxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTIuMzQzIDEzLjY1N0E4IDggMCAxMTEzLjY1NyAyLjM0MyA4IDggMCAwMTIuMzQzIDEzLjY1N3pNNi4wMyA0Ljk3YS43NS43NSAwIDAwLTEuMDYgMS4wNkw2Ljk0IDggNC45NyA5Ljk3YS43NS43NSAwIDEwMS4wNiAxLjA2TDggOS4wNmwxLjk3IDEuOTdhLjc1Ljc1IDAgMTAxLjA2LTEuMDZMOS4wNiA4bDEuOTctMS45N2EuNzUuNzUgMCAxMC0xLjA2LTEuMDZMOCA2Ljk0IDYuMDMgNC45N3pcIj48L3BhdGg+PC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgIDwlPSBjb21wdXRlZC5wbHVnaW5zLm11c2ljLmVycm9yLm1lc3NhZ2UgJT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwlIH0gZWxzZSB7ICU+XHJcbiAgICAgICAgICAgICAgICA8JSBpZiAoY29tcHV0ZWQucGx1Z2lucy5tdXNpYy50cmFja3MubGVuZ3RoKSB7ICU+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0cmFja2xpc3RcIj5cclxuICAgICAgICAgICAgICAgICAgICA8JSBmb3IgKGNvbnN0IHtuYW1lID0gXCJcIiwgYXJ0aXN0ID0gXCJcIiwgYXJ0d29yayA9IFwiXCJ9IG9mIGNvbXB1dGVkLnBsdWdpbnMubXVzaWMudHJhY2tzKSB7ICU+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidHJhY2tcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCJkYXRhOmltYWdlL3BuZztiYXNlNjQsPCU9IGFydHdvcmsgJT5cIiB3aWR0aD1cIjMyXCIgaGVpZ2h0PVwiMzJcIiBhbHQ9XCJcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbmZvc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJuYW1lXCI+PCU9IG5hbWUgJT48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXJ0aXN0XCI+PCU9IGFydGlzdCAlPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwlIH0gJT5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8JSB9IGVsc2UgeyAlPlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNMS43NSAxLjVhLjI1LjI1IDAgMDAtLjI1LjI1djkuNWMwIC4xMzguMTEyLjI1LjI1LjI1aDJhLjc1Ljc1IDAgMDEuNzUuNzV2Mi4xOWwyLjcyLTIuNzJhLjc1Ljc1IDAgMDEuNTMtLjIyaDYuNWEuMjUuMjUgMCAwMC4yNS0uMjV2LTkuNWEuMjUuMjUgMCAwMC0uMjUtLjI1SDEuNzV6TTAgMS43NUMwIC43ODQuNzg0IDAgMS43NSAwaDEyLjVDMTUuMjE2IDAgMTYgLjc4NCAxNiAxLjc1djkuNUExLjc1IDEuNzUgMCAwMTE0LjI1IDEzSDguMDZsLTIuNTczIDIuNTczQTEuNDU3IDEuNDU3IDAgMDEzIDE0LjU0M1YxM0gxLjc1QTEuNzUgMS43NSAwIDAxMCAxMS4yNXYtOS41ek05IDlhMSAxIDAgMTEtMiAwIDEgMSAwIDAxMiAwem0tLjI1LTUuMjVhLjc1Ljc1IDAgMDAtMS41IDB2Mi41YS43NS43NSAwIDAwMS41IDB2LTIuNXpcIj48L3BhdGg+PC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgTm8gbXVzaWMgcmVjZW50bHkgbGlzdGVuZWRcclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8JSB9ICU+XHJcbiAgICAgICAgICAgICAgPCUgfSAlPlxyXG4gICAgICAgICAgICA8L3NlY3Rpb24+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L3NlY3Rpb24+XHJcbiAgICAgIDwlIH0gJT5cclxuXHJcbiAgICAgIDwlIGlmIChjb21wdXRlZC5wbHVnaW5zLnBvc3RzKSB7ICU+XHJcbiAgICAgICAgPHNlY3Rpb24+XHJcbiAgICAgICAgICA8aDIgY2xhc3M9XCJmaWVsZFwiPlxyXG4gICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNNC40NTYuNzM0YTEuNzUgMS43NSAwIDAxMi44MjYuNTA0bC42MTMgMS4zMjdhMy4wODEgMy4wODEgMCAwMDIuMDg0IDEuNzA3bDIuNDU0LjU4NGMxLjMzMi4zMTcgMS44IDEuOTcyLjgzMiAyLjk0TDExLjA2IDEwbDMuNzIgMy43MmEuNzUuNzUgMCAxMS0xLjA2MSAxLjA2TDEwIDExLjA2bC0yLjIwNCAyLjIwNWMtLjk2OC45NjgtMi42MjMuNS0yLjk0LS44MzJsLS41ODQtMi40NTRhMy4wODEgMy4wODEgMCAwMC0xLjcwNy0yLjA4NGwtMS4zMjctLjYxM2ExLjc1IDEuNzUgMCAwMS0uNTA0LTIuODI2TDQuNDU2LjczNHpNNS45MiAxLjg2NmEuMjUuMjUgMCAwMC0uNDA0LS4wNzJMMS43OTQgNS41MTZhLjI1LjI1IDAgMDAuMDcyLjQwNGwxLjMyOC42MTNBNC41ODIgNC41ODIgMCAwMTUuNzMgOS42M2wuNTg0IDIuNDU0YS4yNS4yNSAwIDAwLjQyLjEybDUuNDctNS40N2EuMjUuMjUgMCAwMC0uMTItLjQyTDkuNjMgNS43M2E0LjU4MSA0LjU4MSAwIDAxLTMuMDk4LTIuNTM3TDUuOTIgMS44NjZ6XCI+PC9wYXRoPjwvc3ZnPlxyXG4gICAgICAgICAgICBSZWNlbnQgYXJ0aWNsZXNcclxuICAgICAgICAgIDwvaDI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93IGZpbGwtd2lkdGhcIj5cclxuICAgICAgICAgICAgPHNlY3Rpb24+XHJcbiAgICAgICAgICAgICAgPCUgaWYgKGNvbXB1dGVkLnBsdWdpbnMucG9zdHMuZXJyb3IpIHsgJT5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZCBlcnJvclwiPlxyXG4gICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNMi4zNDMgMTMuNjU3QTggOCAwIDExMTMuNjU3IDIuMzQzIDggOCAwIDAxMi4zNDMgMTMuNjU3ek02LjAzIDQuOTdhLjc1Ljc1IDAgMDAtMS4wNiAxLjA2TDYuOTQgOCA0Ljk3IDkuOTdhLjc1Ljc1IDAgMTAxLjA2IDEuMDZMOCA5LjA2bDEuOTcgMS45N2EuNzUuNzUgMCAxMDEuMDYtMS4wNkw5LjA2IDhsMS45Ny0xLjk3YS43NS43NSAwIDEwLTEuMDYtMS4wNkw4IDYuOTQgNi4wMyA0Ljk3elwiPjwvcGF0aD48L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgPCU9IGNvbXB1dGVkLnBsdWdpbnMucG9zdHMuZXJyb3IubWVzc2FnZSAlPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPCUgfSBlbHNlIHsgJT5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZFwiPlxyXG4gICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNMi4wMDIgMi43MjVhLjc1Ljc1IDAgMDEuNzk3LS42OTlDOC43OSAyLjQyIDEzLjU4IDcuMjEgMTMuOTc0IDEzLjIwMWEuNzUuNzUgMCAxMS0xLjQ5Ny4wOTggMTAuNTAyIDEwLjUwMiAwIDAwLTkuNzc2LTkuNzc2Ljc1Ljc1IDAgMDEtLjctLjc5OHpNMiAxM2ExIDEgMCAxMTIgMCAxIDEgMCAwMS0yIDB6bS44NC01Ljk1YS43NS43NSAwIDAwLS4xNzkgMS40ODljMi41MDkuMyA0LjUgMi4yOTEgNC44IDQuOGEuNzUuNzUgMCAxMDEuNDktLjE3OEE3LjAwMyA3LjAwMyAwIDAwMi44MzggNy4wNXpcIj48L3BhdGg+PC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgIEZyb20gPCU9IGNvbXB1dGVkLnBsdWdpbnMucG9zdHMuc291cmNlICU+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwlIGlmIChjb21wdXRlZC5wbHVnaW5zLnBvc3RzLnBvc3RzLmxlbmd0aCkgeyAlPlxyXG4gICAgICAgICAgICAgICAgICA8JSBmb3IgKGNvbnN0IHt0aXRsZSwgZGF0ZX0gb2YgY29tcHV0ZWQucGx1Z2lucy5wb3N0cy5wb3N0cykgeyAlPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZCBwb3N0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNNC43NSAwYS43NS43NSAwIDAxLjc1Ljc1VjJoNVYuNzVhLjc1Ljc1IDAgMDExLjUgMFYyaDEuMjVjLjk2NiAwIDEuNzUuNzg0IDEuNzUgMS43NXYxMC41QTEuNzUgMS43NSAwIDAxMTMuMjUgMTZIMi43NUExLjc1IDEuNzUgMCAwMTEgMTQuMjVWMy43NUMxIDIuNzg0IDEuNzg0IDIgMi43NSAySDRWLjc1QS43NS43NSAwIDAxNC43NSAwem0wIDMuNWg4LjVhLjI1LjI1IDAgMDEuMjUuMjVWNmgtMTFWMy43NWEuMjUuMjUgMCAwMS4yNS0uMjVoMnptLTIuMjUgNHY2Ljc1YzAgLjEzOC4xMTIuMjUuMjUuMjVoMTAuNWEuMjUuMjUgMCAwMC4yNS0uMjVWNy41aC0xMXpcIj48L3BhdGg+PC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW5mb3NcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRhdGVcIj48JT0gZGF0ZSAlPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGl0bGVcIj48JT0gdGl0bGUgJT48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICA8JSB9ICU+XHJcbiAgICAgICAgICAgICAgICA8JSB9IGVsc2UgeyAlPlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNMS43NSAxLjVhLjI1LjI1IDAgMDAtLjI1LjI1djkuNWMwIC4xMzguMTEyLjI1LjI1LjI1aDJhLjc1Ljc1IDAgMDEuNzUuNzV2Mi4xOWwyLjcyLTIuNzJhLjc1Ljc1IDAgMDEuNTMtLjIyaDYuNWEuMjUuMjUgMCAwMC4yNS0uMjV2LTkuNWEuMjUuMjUgMCAwMC0uMjUtLjI1SDEuNzV6TTAgMS43NUMwIC43ODQuNzg0IDAgMS43NSAwaDEyLjVDMTUuMjE2IDAgMTYgLjc4NCAxNiAxLjc1djkuNUExLjc1IDEuNzUgMCAwMTE0LjI1IDEzSDguMDZsLTIuNTczIDIuNTczQTEuNDU3IDEuNDU3IDAgMDEzIDE0LjU0M1YxM0gxLjc1QTEuNzUgMS43NSAwIDAxMCAxMS4yNXYtOS41ek05IDlhMSAxIDAgMTEtMiAwIDEgMSAwIDAxMiAwem0tLjI1LTUuMjVhLjc1Ljc1IDAgMDAtMS41IDB2Mi41YS43NS43NSAwIDAwMS41IDB2LTIuNXpcIj48L3BhdGg+PC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgTm8gcmVjZW50IHBvc3RzXHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPCUgfSAlPlxyXG4gICAgICAgICAgICAgIDwlIH0gJT5cclxuICAgICAgICAgICAgPC9zZWN0aW9uPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9zZWN0aW9uPlxyXG4gICAgICA8JSB9ICU+XHJcblxyXG4gICAgICA8JSBpZiAoY29tcHV0ZWQucGx1Z2lucy5pc29jYWxlbmRhcikgeyAlPlxyXG4gICAgICAgIDxzZWN0aW9uPlxyXG4gICAgICAgICAgPGgyIGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiPjxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTQuNzUgMGEuNzUuNzUgMCAwMS43NS43NVYyaDVWLjc1YS43NS43NSAwIDAxMS41IDBWMmgxLjI1Yy45NjYgMCAxLjc1Ljc4NCAxLjc1IDEuNzV2MTAuNUExLjc1IDEuNzUgMCAwMTEzLjI1IDE2SDIuNzVBMS43NSAxLjc1IDAgMDExIDE0LjI1VjMuNzVDMSAyLjc4NCAxLjc4NCAyIDIuNzUgMkg0Vi43NUEuNzUuNzUgMCAwMTQuNzUgMHptMCAzLjVoOC41YS4yNS4yNSAwIDAxLjI1LjI1VjZoLTExVjMuNzVhLjI1LjI1IDAgMDEuMjUtLjI1aDJ6bS0yLjI1IDR2Ni43NWMwIC4xMzguMTEyLjI1LjI1LjI1aDEwLjVhLjI1LjI1IDAgMDAuMjUtLjI1VjcuNWgtMTF6XCI+PC9wYXRoPjwvc3ZnPlxyXG4gICAgICAgICAgICBDb250cmlidXRpb25zIGNhbGVuZGFyXHJcbiAgICAgICAgICA8L2gyPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICA8c2VjdGlvbj5cclxuICAgICAgICAgICAgICA8JSBpZiAoY29tcHV0ZWQucGx1Z2lucy5pc29jYWxlbmRhci5lcnJvcikgeyAlPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkIGVycm9yXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIj48cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk0yLjM0MyAxMy42NTdBOCA4IDAgMTExMy42NTcgMi4zNDMgOCA4IDAgMDEyLjM0MyAxMy42NTd6TTYuMDMgNC45N2EuNzUuNzUgMCAwMC0xLjA2IDEuMDZMNi45NCA4IDQuOTcgOS45N2EuNzUuNzUgMCAxMDEuMDYgMS4wNkw4IDkuMDZsMS45NyAxLjk3YS43NS43NSAwIDEwMS4wNi0xLjA2TDkuMDYgOGwxLjk3LTEuOTdhLjc1Ljc1IDAgMTAtMS4wNi0xLjA2TDggNi45NCA2LjAzIDQuOTd6XCI+PC9wYXRoPjwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICA8JT0gY29tcHV0ZWQucGx1Z2lucy5pc29jYWxlbmRhci5lcnJvci5tZXNzYWdlICU+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8JSB9ICU+XHJcbiAgICAgICAgICAgIDwvc2VjdGlvbj5cclxuICAgICAgICAgICAgPCUgaWYgKCFjb21wdXRlZC5wbHVnaW5zLmlzb2NhbGVuZGFyLmVycm9yKSB7ICU+XHJcbiAgICAgICAgICAgICAgPHNlY3Rpb24+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIj5cclxuICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiPjxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTcuOTk4IDE0LjVjMi44MzIgMCA1LTEuOTggNS00LjUgMC0xLjQ2My0uNjgtMi4xOS0xLjg3OS0zLjM4M2wtLjAzNi0uMDM3Yy0xLjAxMy0xLjAwOC0yLjMtMi4yOS0yLjgzNC00LjQzNC0uMzIyLjI1Ni0uNjMuNTc5LS44NjQuOTUzLS40MzIuNjk2LS42MjEgMS41OC0uMDQ2IDIuNzMuNDczLjk0Ny42NyAyLjI4NC0uMjc4IDMuMjMyLS42MS42MS0xLjU0NS44NC0yLjQwMy42MzNhMi43ODggMi43ODggMCAwMS0xLjQzNi0uODc0QTMuMjEgMy4yMSAwIDAwMyAxMGMwIDIuNTMgMi4xNjQgNC41IDQuOTk4IDQuNXpNOS41MzMuNzUzQzkuNDk2LjM0IDkuMTYuMDA5IDguNzcuMTQ2IDcuMDM1Ljc1IDQuMzQgMy4xODcgNS45OTcgNi41Yy4zNDQuNjg5LjI4NSAxLjIxOC4wMDMgMS41LS40MTkuNDE5LTEuNTQuNDg3LTIuMDQtLjgzMi0uMTczLS40NTQtLjY1OS0uNzYyLTEuMDM1LS40NTRDMi4wMzYgNy40NCAxLjUgOC43MDIgMS41IDEwYzAgMy41MTIgMi45OTggNiA2LjQ5OCA2czYuNS0yLjUgNi41LTZjMC0yLjEzNy0xLjEyOC0zLjI2LTIuMzEyLTQuNDM4LTEuMTktMS4xODQtMi40MzYtMi40MjUtMi42NTMtNC44MXpcIj48L3BhdGg+PC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgIEN1cnJlbnQgc3RyZWFrIDwlPSBjb21wdXRlZC5wbHVnaW5zLmlzb2NhbGVuZGFyLnN0cmVhay5jdXJyZW50ICU+IGRheTwlPSBzKGNvbXB1dGVkLnBsdWdpbnMuaXNvY2FsZW5kYXIuc3RyZWFrLmN1cnJlbnQpICU+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZFwiPlxyXG4gICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNMS41IDEuNzVhLjc1Ljc1IDAgMDAtMS41IDB2MTIuNWMwIC40MTQuMzM2Ljc1Ljc1Ljc1aDE0LjVhLjc1Ljc1IDAgMDAwLTEuNUgxLjVWMS43NXptMTQuMjggMi41M2EuNzUuNzUgMCAwMC0xLjA2LTEuMDZMMTAgNy45NCA3LjUzIDUuNDdhLjc1Ljc1IDAgMDAtMS4wNiAwTDMuMjIgOC43MmEuNzUuNzUgMCAwMDEuMDYgMS4wNkw3IDcuMDZsMi40NyAyLjQ3YS43NS43NSAwIDAwMS4wNiAwbDUuMjUtNS4yNXpcIj48L3BhdGg+PC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgIH48JT0gY29tcHV0ZWQucGx1Z2lucy5pc29jYWxlbmRhci5hdmVyYWdlICU+IGNvbW1pdHMgcGVyIGRheVxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9zZWN0aW9uPlxyXG4gICAgICAgICAgICA8JSB9ICU+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwlIGlmIChjb21wdXRlZC5wbHVnaW5zLmlzb2NhbGVuZGFyLnN2ZykgeyAlPlxyXG4gICAgICAgICAgICA8JS0gY29tcHV0ZWQucGx1Z2lucy5pc29jYWxlbmRhci5zdmcgJT5cclxuICAgICAgICAgIDwlIH0gJT5cclxuICAgICAgICA8L3NlY3Rpb24+XHJcbiAgICAgIDwlIH0gJT5cclxuXHJcbiAgICAgIDwlIGlmIChiYXNlLm1ldGFkYXRhKSB7ICU+XHJcbiAgICAgICAgPGZvb3Rlcj5cclxuICAgICAgICAgIDxzcGFuPlRoZXNlIG1ldHJpY3MgPCU9ICFjb21wdXRlZC50b2tlbi5zY29wZXMuaW5jbHVkZXMoXCJyZXBvXCIpID8gXCJkb2VzIG5vdCBpbmNsdWRlXCIgOiBcImluY2x1ZGVzXCIgJT4gcHJpdmF0ZSBjb250cmlidXRpb25zPC9zcGFuPlxyXG4gICAgICAgICAgPHNwYW4+TGFzdCB1cGRhdGVkIDwlPSBuZXcgRGF0ZSgpICU+PC9zcGFuPlxyXG4gICAgICAgIDwvZm9vdGVyPlxyXG4gICAgICA8JSB9ICU+XHJcblxyXG4gICAgPC9kaXY+XHJcbiAgPC9mb3JlaWduT2JqZWN0PlxyXG48L3N2Zz4iLCJzdHlsZSI6Ii8qIFNWRyBnbG9iYWwgY29udGV4dCAqL1xyXG4gIHN2ZyB7XHJcbiAgICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBTZWdvZSBVSSwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZiwgQXBwbGUgQ29sb3IgRW1vamksIFNlZ29lIFVJIEVtb2ppO1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgY29sb3I6ICM3Nzc3Nzc7XHJcbiAgfVxyXG5cclxuLyogSGVhZGVycyAqL1xyXG4gIGgxLCBoMiwgaDMge1xyXG4gICAgbWFyZ2luOiA4cHggMCAycHg7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgY29sb3I6ICMwMzY2ZDY7XHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gIH1cclxuICBoMSBzdmcsIGgyIHN2ZywgaDMgc3ZnIHtcclxuICAgIGZpbGw6IGN1cnJlbnRDb2xvcjtcclxuICB9XHJcbiAgaDEge1xyXG4gICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgfVxyXG4gIGgyIHtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICB9XHJcbiAgaDMge1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG4gIH1cclxuXHJcbi8qIEZpZWxkcyAqL1xyXG4gIHNlY3Rpb24gPiAuZmllbGQge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcclxuICAgIG1hcmdpbi1yaWdodDogNXB4O1xyXG4gIH1cclxuICAuZmllbGQge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAycHg7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gIH1cclxuICAuZmllbGQgc3ZnIHtcclxuICAgIG1hcmdpbjogMCA4cHg7XHJcbiAgICBmaWxsOiAjOTU5ZGE1O1xyXG4gICAgZmxleC1zaHJpbms6IDA7XHJcbiAgfVxyXG4gIC5maWVsZC5lcnJvciB7XHJcbiAgICBjb2xvcjogI2NiMjQzMTtcclxuICB9XHJcbiAgLmZpZWxkLmVycm9yIHN2ZyB7XHJcbiAgICBmaWxsOiAjY2IyNDMxO1xyXG4gIH1cclxuXHJcbi8qIERpc3BsYXlzICovXHJcbiAgLnJvdyB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gIH1cclxuICAucm93IHNlY3Rpb24ge1xyXG4gICAgZmxleDogMSAxIDA7XHJcbiAgfVxyXG4gIC5jb2x1bW4ge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIH1cclxuICAuY2VudGVyIHtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gIH1cclxuICAuaG9yaXpvbnRhbCB7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcclxuICB9XHJcbiAgLmhvcml6b250YWwtd3JhcCB7XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgfVxyXG4gIC5ob3Jpem9udGFsIC5maWVsZCB7XHJcbiAgICBmbGV4OiAxIDEgMDtcclxuICB9XHJcbiAgLm5vLXdyYXAge1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICB9XHJcbiAgLmZpbGwtd2lkdGgge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG5cclxuLyogVXNlciBhdmF0YXIgKi9cclxuICAuYXZhdGFyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICBtYXJnaW46IDAgNnB4O1xyXG4gIH1cclxuXHJcbi8qIENvbW1pdCBjYWxlbmRhciAqL1xyXG4gIC5jYWxlbmRhci5maWVsZCB7XHJcbiAgICBtYXJnaW46IDRweCAwO1xyXG4gICAgbWFyZ2luLWxlZnQ6IDdweDtcclxuICB9XHJcbiAgLmNhbGVuZGFyIC5kYXkge1xyXG4gICAgb3V0bGluZTogMXB4IHNvbGlkIHJnYmEoMjcsMzEsMzUsLjA0KTtcclxuICAgIG91dGxpbmUtb2Zmc2V0OiAtMXB4O1xyXG4gIH1cclxuXHJcbi8qIFByb2dyZXNzIGJhcnMgKi9cclxuICBzdmcuYmFyIHtcclxuICAgIG1hcmdpbjogNHB4IDA7XHJcbiAgfVxyXG5cclxuLyogTGFuZ3VhZ2UgKi9cclxuICAuZmllbGQubGFuZ3VhZ2Uge1xyXG4gICAgbWFyZ2luOiAwIDhweDtcclxuICAgIGZsZXgtZ3JvdzogMDtcclxuICB9XHJcblxyXG4gIC5maWVsZC5sYW5ndWFnZSBzbWFsbCB7XHJcbiAgICBtYXJnaW4tbGVmdDogNHB4O1xyXG4gICAgb3BhY2l0eTogLjc7XHJcbiAgfVxyXG5cclxuLyogSGFiaXRzICovXHJcbiAgLmhhYml0cyB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDM3cHg7XHJcbiAgfVxyXG5cclxuLyogRm9vdGVyICovXHJcbiAgZm9vdGVyIHtcclxuICAgIG1hcmdpbi10b3A6IDhweDtcclxuICAgIGZvbnQtc2l6ZTogMTBweDtcclxuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcclxuICAgIG9wYWNpdHk6IDAuNTtcclxuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gIH1cclxuXHJcbi8qIFNwZWVkIHRlc3QgY2F0ZWdvcmllcyAqL1xyXG4gIC5jYXRlZ29yaWVzIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XHJcbiAgICBtYXJnaW4tdG9wOiA0cHg7XHJcbiAgfVxyXG4gIC5jYXRlZ29yaWUge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgZmxleDogMSAxIDA7XHJcbiAgfVxyXG5cclxuLyogR2F1Z2VzICovXHJcbiAgLmdhdWdlIHtcclxuICAgIHN0cm9rZS1saW5lY2FwOiByb3VuZDtcclxuICAgIGZpbGw6IG5vbmU7XHJcbiAgfVxyXG4gIC5nYXVnZS5oaWdoIHtcclxuICAgIGNvbG9yOiAjMThiNjYzO1xyXG4gIH1cclxuICAuZ2F1Z2UuYXZlcmFnZSB7XHJcbiAgICBjb2xvcjogI2ZiOGMwMDtcclxuICB9XHJcbiAgLmdhdWdlLmxvdyB7XHJcbiAgICBjb2xvcjogI2U1MzkzNTtcclxuICB9XHJcbiAgLmdhdWdlLWJhc2UsIC5nYXVnZS1hcmMge1xyXG4gICAgc3Ryb2tlOiBjdXJyZW50Q29sb3I7XHJcbiAgICBzdHJva2Utd2lkdGg6IDEwO1xyXG4gIH1cclxuICAuZ2F1Z2UtYmFzZSB7XHJcbiAgICBzdHJva2Utb3BhY2l0eTogLjI7XHJcbiAgfVxyXG4gIC5nYXVnZS1hcmMge1xyXG4gICAgZmlsbDogbm9uZTtcclxuICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAwO1xyXG4gICAgYW5pbWF0aW9uLWRlbGF5OiAyNTBtcztcclxuICAgIGFuaW1hdGlvbjogYW5pbWF0aW9uLWdhdWdlIDFzIGVhc2UgZm9yd2FyZHNcclxuICB9XHJcbiAgLmdhdWdlIHRleHQge1xyXG4gICAgZmlsbDogY3VycmVudENvbG9yO1xyXG4gICAgZm9udC1zaXplOiA0MHB4O1xyXG4gICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZTtcclxuICAgIHRleHQtYW5jaG9yOiBtaWRkbGU7XHJcbiAgICBmb250LXdlaWdodDogNjAwO1xyXG4gIH1cclxuICAuZ2F1Z2UgLnRpdGxlIHtcclxuICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgIGNvbG9yOiAjNzc3Nzc3O1xyXG4gIH1cclxuICBAa2V5ZnJhbWVzIGFuaW1hdGlvbi1nYXVnZSB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgc3Ryb2tlLWRhc2hhcnJheTogMCAzMjk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuLyogTXVzaWMgcGx1Z2luICovXHJcbiAgLnRyYWNrbGlzdCB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgbWFyZ2luLWxlZnQ6IDI4cHg7XHJcbiAgICBtYXJnaW4tdG9wOiA0cHg7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcbiAgLnRyYWNrIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA0cHg7XHJcbiAgfVxyXG4gIC50cmFjayBpbWcge1xyXG4gICAgbWFyZ2luOiAwIDEwcHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiA3cHg7XHJcbiAgfVxyXG4gIC50cmFjayAubmFtZSB7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICBsaW5lLWhlaWdodDogMTRweDtcclxuICB9XHJcbiAgLnRyYWNrIC5hcnRpc3Qge1xyXG4gICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgb3BhY2l0eTogLjc7XHJcbiAgfVxyXG5cclxuLyogUG9zdHMgcGx1Z2luICovXHJcbiAgLnBvc3Qge1xyXG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgfVxyXG4gIC5wb3N0IC5pbmZvcyB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNHB4O1xyXG4gIH1cclxuICAucG9zdCAuaW5mb3MgLnRpdGxlIHtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIHdpZHRoOiA0MDBweDtcclxuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICBtYXgtaGVpZ2h0OiA0MHB4OztcclxuICB9XHJcbiAgLnBvc3QgLmluZm9zIC5kYXRlIHtcclxuICAgIGZsZXgtc2hyaW5rOiAwO1xyXG4gICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgb3BhY2l0eTogLjc7XHJcbiAgICB3aWR0aDogNDBweDtcclxuICAgIHBhZGRpbmctdG9wOiAxcHg7XHJcbiAgfVxyXG5cclxuLyogRmFkZSBhbmltYXRpb24gKi9cclxuICAuYWYge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIGFuaW1hdGlvbjogYW5pbWF0aW9uLWZhZGUgMXMgZWFzZSBmb3J3YXJkcztcclxuICB9XHJcbiAgQGtleWZyYW1lcyBhbmltYXRpb24tZmFkZSB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgb3BhY2l0eTogMDtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuICB9XHJcblxyXG4vKiBDYWxlbmRhciAqL1xyXG4gIDpyb290IHtcclxuICAgIC0tY29sb3ItY2FsZW5kYXItZ3JhcGgtZGF5LWJnOiAjZWJlZGYwO1xyXG4gICAgLS1jb2xvci1jYWxlbmRhci1ncmFwaC1kYXktYm9yZGVyOiByZ2JhKDI3LDMxLDM1LDAuMDYpO1xyXG4gICAgLS1jb2xvci1jYWxlbmRhci1ncmFwaC1kYXktTDEtYmc6ICM5YmU5YTg7XHJcbiAgICAtLWNvbG9yLWNhbGVuZGFyLWdyYXBoLWRheS1MMi1iZzogIzQwYzQ2MztcclxuICAgIC0tY29sb3ItY2FsZW5kYXItZ3JhcGgtZGF5LUwzLWJnOiAjMzBhMTRlO1xyXG4gICAgLS1jb2xvci1jYWxlbmRhci1ncmFwaC1kYXktTDQtYmc6ICMyMTZlMzk7XHJcbiAgICAtLWNvbG9yLWNhbGVuZGFyLWhhbGxvd2Vlbi1ncmFwaC1kYXktTDEtYmc6ICNmZmVlNGE7XHJcbiAgICAtLWNvbG9yLWNhbGVuZGFyLWhhbGxvd2Vlbi1ncmFwaC1kYXktTDItYmc6ICNmZmM1MDE7XHJcbiAgICAtLWNvbG9yLWNhbGVuZGFyLWhhbGxvd2Vlbi1ncmFwaC1kYXktTDMtYmc6ICNmZTk2MDA7XHJcbiAgICAtLWNvbG9yLWNhbGVuZGFyLWhhbGxvd2Vlbi1ncmFwaC1kYXktTDQtYmc6ICMwMzAwMWM7XHJcbiAgICAtLWNvbG9yLWNhbGVuZGFyLWdyYXBoLWRheS1MNC1ib3JkZXI6IHJnYmEoMjcsMzEsMzUsMC4wNik7XHJcbiAgICAtLWNvbG9yLWNhbGVuZGFyLWdyYXBoLWRheS1MMy1ib3JkZXI6IHJnYmEoMjcsMzEsMzUsMC4wNik7XHJcbiAgICAtLWNvbG9yLWNhbGVuZGFyLWdyYXBoLWRheS1MMi1ib3JkZXI6IHJnYmEoMjcsMzEsMzUsMC4wNik7XHJcbiAgICAtLWNvbG9yLWNhbGVuZGFyLWdyYXBoLWRheS1MMS1ib3JkZXI6IHJnYmEoMjcsMzEsMzUsMC4wNik7XHJcbiAgfSIsImZvbnRzIjoiIn0sInRlcm1pbmFsIjp7InF1ZXJ5IjoicXVlcnkgTWV0cmljcyB7XHJcbiAgdXNlcihsb2dpbjogJGxvZ2luKSB7XHJcbiAgICBkYXRhYmFzZUlkXHJcbiAgICBuYW1lXHJcbiAgICBsb2dpblxyXG4gICAgY3JlYXRlZEF0XHJcbiAgICBhdmF0YXJVcmxcclxuICAgIHdlYnNpdGVVcmxcclxuICAgIGdpc3RzIHtcclxuICAgICAgdG90YWxDb3VudFxyXG4gICAgfVxyXG4gICAgcmVwb3NpdG9yaWVzKGxhc3Q6ICRyZXBvc2l0b3JpZXMsIGlzRm9yazogZmFsc2UsIG93bmVyQWZmaWxpYXRpb25zOiBPV05FUikge1xyXG4gICAgICB0b3RhbENvdW50XHJcbiAgICAgIHRvdGFsRGlza1VzYWdlXHJcbiAgICAgIG5vZGVzIHtcclxuICAgICAgICBuYW1lXHJcbiAgICAgICAgd2F0Y2hlcnMge1xyXG4gICAgICAgICAgdG90YWxDb3VudFxyXG4gICAgICAgIH1cclxuICAgICAgICBzdGFyZ2F6ZXJzIHtcclxuICAgICAgICAgIHRvdGFsQ291bnRcclxuICAgICAgICB9XHJcbiAgICAgICAgbGFuZ3VhZ2VzKGZpcnN0OiA0KSB7XHJcbiAgICAgICAgICBlZGdlcyB7XHJcbiAgICAgICAgICAgIHNpemVcclxuICAgICAgICAgICAgbm9kZSB7XHJcbiAgICAgICAgICAgICAgY29sb3JcclxuICAgICAgICAgICAgICBuYW1lXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgaXNzdWVzX29wZW46IGlzc3VlcyhzdGF0ZXM6IE9QRU4pIHtcclxuICAgICAgICAgIHRvdGFsQ291bnRcclxuICAgICAgICB9XHJcbiAgICAgICAgaXNzdWVzX2Nsb3NlZDogaXNzdWVzKHN0YXRlczogQ0xPU0VEKSB7XHJcbiAgICAgICAgICB0b3RhbENvdW50XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHByX29wZW46IHB1bGxSZXF1ZXN0cyhzdGF0ZXM6IE9QRU4pIHtcclxuICAgICAgICAgIHRvdGFsQ291bnRcclxuICAgICAgICB9XHJcbiAgICAgICAgcHJfbWVyZ2VkOiBwdWxsUmVxdWVzdHMoc3RhdGVzOiBNRVJHRUQpIHtcclxuICAgICAgICAgIHRvdGFsQ291bnRcclxuICAgICAgICB9XHJcbiAgICAgICAgcmVsZWFzZXMge1xyXG4gICAgICAgICAgdG90YWxDb3VudFxyXG4gICAgICAgIH1cclxuICAgICAgICBmb3JrQ291bnRcclxuICAgICAgICBsaWNlbnNlSW5mbyB7XHJcbiAgICAgICAgICBzcGR4SWRcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHBhY2thZ2VzIHtcclxuICAgICAgdG90YWxDb3VudFxyXG4gICAgfVxyXG4gICAgc3RhcnJlZFJlcG9zaXRvcmllcyB7XHJcbiAgICAgIHRvdGFsQ291bnRcclxuICAgIH1cclxuICAgIHdhdGNoaW5nIHtcclxuICAgICAgdG90YWxDb3VudFxyXG4gICAgfVxyXG4gICAgc3BvbnNvcnNoaXBzQXNTcG9uc29yIHtcclxuICAgICAgdG90YWxDb3VudFxyXG4gICAgfVxyXG4gICAgc3BvbnNvcnNoaXBzQXNNYWludGFpbmVyIHtcclxuICAgICAgdG90YWxDb3VudFxyXG4gICAgfVxyXG4gICAgY29udHJpYnV0aW9uc0NvbGxlY3Rpb24ge1xyXG4gICAgICB0b3RhbFJlcG9zaXRvcmllc1dpdGhDb250cmlidXRlZENvbW1pdHNcclxuICAgICAgdG90YWxDb21taXRDb250cmlidXRpb25zXHJcbiAgICAgIHJlc3RyaWN0ZWRDb250cmlidXRpb25zQ291bnRcclxuICAgICAgdG90YWxJc3N1ZUNvbnRyaWJ1dGlvbnNcclxuICAgICAgdG90YWxQdWxsUmVxdWVzdENvbnRyaWJ1dGlvbnNcclxuICAgICAgdG90YWxQdWxsUmVxdWVzdFJldmlld0NvbnRyaWJ1dGlvbnNcclxuICAgIH1cclxuICAgIGNhbGVuZGFyOmNvbnRyaWJ1dGlvbnNDb2xsZWN0aW9uKGZyb206ICRjYWxlbmRhci5mcm9tLCB0bzogJGNhbGVuZGFyLnRvKSB7XHJcbiAgICAgIGNvbnRyaWJ1dGlvbkNhbGVuZGFyIHtcclxuICAgICAgICB3ZWVrcyB7XHJcbiAgICAgICAgICBjb250cmlidXRpb25EYXlzIHtcclxuICAgICAgICAgICAgY29sb3JcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJlcG9zaXRvcmllc0NvbnRyaWJ1dGVkVG8ge1xyXG4gICAgICB0b3RhbENvdW50XHJcbiAgICB9XHJcbiAgICBmb2xsb3dlcnMge1xyXG4gICAgICB0b3RhbENvdW50XHJcbiAgICB9XHJcbiAgICBmb2xsb3dpbmcge1xyXG4gICAgICB0b3RhbENvdW50XHJcbiAgICB9XHJcbiAgICBpc3N1ZUNvbW1lbnRzIHtcclxuICAgICAgdG90YWxDb3VudFxyXG4gICAgfVxyXG4gICAgb3JnYW5pemF0aW9ucyB7XHJcbiAgICAgIHRvdGFsQ291bnRcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiaW1hZ2UiOiI8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjQ4MFwiIGhlaWdodD1cIjwlPSA0OFxyXG4gICsgKCEhYmFzZS5oZWFkZXIpKjYyXHJcbiAgKyAoISFiYXNlLm1ldGFkYXRhKSoxMDhcclxuICArICghIWJhc2UuYWN0aXZpdHkpKjEwOFxyXG4gICsgKCEhYmFzZS5jb21tdW5pdHkpKjk0XHJcbiAgKyAoISFiYXNlLnJlcG9zaXRvcmllcykqMTQyXHJcbiAgKyAoKCEhYmFzZS5yZXBvc2l0b3JpZXMpKighIWNvbXB1dGVkLnBsdWdpbnMudHJhZmZpYykpKjE4XHJcbiAgKyAoKCEhYmFzZS5yZXBvc2l0b3JpZXMpKighIWNvbXB1dGVkLnBsdWdpbnMuZm9sbG93dXApKSoxMDJcclxuICArICgoISFiYXNlLnJlcG9zaXRvcmllcykqKCEhY29tcHV0ZWQucGx1Z2lucy5saW5lcykpKjM0XHJcbiAgKyAoISFjb21wdXRlZC5wbHVnaW5zLnBhZ2VzcGVlZCkqMTEwXHJcbiAgKyAoISFjb21wdXRlZC5wbHVnaW5zLmxhbmd1YWdlcykqMTI0XHJcbiAgKyBNYXRoLm1heCgwLCAoKCghIWJhc2UubWV0YWRhdGEpKyghIWJhc2UuaGVhZGVyKSsoKCEhYmFzZS5hY3Rpdml0eSl8fCghIWJhc2UuY29tbXVuaXR5KSkrKCEhYmFzZS5yZXBvc2l0b3JpZXMpKyghIWNvbXB1dGVkLnBsdWdpbnMucGFnZXNwZWVkKSsoISFjb21wdXRlZC5wbHVnaW5zLmxhbmd1YWdlcykpLTEpKSoyMFxyXG4lPlwiPlxyXG4gIDwlXHJcbiAgICBtZXRhLiQgPSBgPHNwYW4gY2xhc3M9XCJwczEtcGF0aFwiPiR7YCR7dXNlci5sb2dpbn1gLnRvTG9jYWxlTG93ZXJDYXNlKCl9QG1ldHJpY3M8L3NwYW4+OjxzcGFuIGNsYXNzPVwicHMxLWxvY2F0aW9uXCI+fjwvc3Bhbj4ke2NvbXB1dGVkLnRva2VuLnNjb3Blcy5pbmNsdWRlcyhcInJlcG9cIikgPyBcIiNcIiA6IFwiJFwifWBcclxuICAgIG1ldGEuYW5pbWF0aW9ucyA9ICFtZXRhLnBsYWNlaG9sZGVyID8ge3N0ZGluOi4xNiwgc3Rkb3V0Oi4yOCwgbGVuZ3RoOigyK09iamVjdC5rZXlzKGJhc2UpLmxlbmd0aCtPYmplY3Qua2V5cyhjb21wdXRlZC5wbHVnaW5zKS5sZW5ndGgpfSA6IHtzdGRpbjowLCBzdGRvdXQ6MCwgbGVuZ3RoOjB9XHJcbiAgJT5cclxuXHJcbiAgPGRlZnM+PHN0eWxlPjwlPSBmb250cyAlPjwvc3R5bGU+PC9kZWZzPlxyXG5cclxuICA8c3R5bGU+XHJcbiAgICA8JT0gc3R5bGUgJT5cclxuICAgICAgLnN0ZGluLCAuc3Rkb3V0IHtcclxuICAgICAgICBhbmltYXRpb24tZHVyYXRpb246IDwlPSBtZXRhLmFuaW1hdGlvbnMuc3RkaW4gJT5zO1xyXG4gICAgICB9XHJcbiAgICAgIC5zdGRvdXQge1xyXG4gICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogPCU9IG1ldGEuYW5pbWF0aW9ucy5zdGRvdXQgJT5zO1xyXG4gICAgICB9XHJcbiAgICAgIDwlIGZvciAobGV0IGkgPSAwLCBkID0gMDsgaSA8IG1ldGEuYW5pbWF0aW9ucy5sZW5ndGg7IGkrKywgZCs9bWV0YS5hbmltYXRpb25zLnN0ZGluK21ldGEuYW5pbWF0aW9ucy5zdGRvdXQpIHsgJT5cclxuICAgICAgICAuc3RkaW46bnRoLW9mLXR5cGUoPCU9IGkrMSAlPikge1xyXG4gICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiA8JT0gZCAlPnM7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5zdGRvdXQ6bnRoLW9mLXR5cGUoPCU9IGkrMiAlPikge1xyXG4gICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiA8JT0gZCttZXRhLmFuaW1hdGlvbnMuc3RkaW4gJT5zO1xyXG4gICAgICAgIH1cclxuICAgICAgICA8JSBpZiAoaSA9PT0gbWV0YS5hbmltYXRpb25zLmxlbmd0aC0xKSB7ICU+XHJcbiAgICAgICAgICBmb290ZXIge1xyXG4gICAgICAgICAgICBhbmltYXRpb24tZGVsYXk6IDwlPSBkICU+cztcclxuICAgICAgICAgIH1cclxuICAgICAgICA8JSB9ICU+XHJcbiAgICAgIDwlIH0gJT5cclxuICA8L3N0eWxlPlxyXG5cclxuICA8Zm9yZWlnbk9iamVjdCB4PVwiMFwiIHk9XCIwXCIgd2lkdGg9XCIxMDAlXCIgaGVpZ2h0PVwiMTAwJVwiPlxyXG4gICAgPGRpdiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWxcIiB4bWxuczp4bGluaz1cImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmtcIj5cclxuXHJcbiAgICAgIDxkaXYgY2xhc3M9XCJoZWFkZXJcIj5cclxuICAgICAgICA8c3BhbiBjbGFzcz1cInRpdGxlXCI+PC9zcGFuPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJidXR0b25zXCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiYnV0dG9uXCI+4pSAPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiYnV0dG9uXCI+4pahPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiYnV0dG9uIGV4aXRcIj7inJU8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcblxyXG48cHJlPjwlIyAtJT5cclxuPCUgaWYgKGJhc2UubWV0YWRhdGEpIHsgJT5cclxuPGRpdiBjbGFzcz1cImJhbm5lclwiPjwlIyAtJT5cclxuR2l0SHViIG1ldHJpY3MgZ2VuZXJhdG9yIDwlPSBtZXRhLnZlcnNpb24gJT5cclxuVGhlc2UgZ2VuZXJhdGVkIG1ldHJpY3MgY29tZXMgd2l0aCBBQlNPTFVURUxZIE5PXHJcbldBUlJBTlRZLCB0byB0aGUgZXh0ZW50IHBlcm1pdHRlZCBieSBhcHBsaWNhYmxlIGxhdy5cclxuXHJcbkxhc3QgZ2VuZXJhdGVkOiA8JT0gbmV3IERhdGUoKS50b0dNVFN0cmluZygpICU+XHJcbjwvZGl2PjwlIH0gLSU+XHJcbjwlIyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0lPlxyXG48JSBpZiAoYmFzZS5oZWFkZXIpIHsgJT5cclxuPGRpdiBjbGFzcz1cInN0ZGluXCI+PCUtIG1ldGEuJCAlPiB3aG9hbWk8L2Rpdj48JSMgLSU+XHJcbjxkaXYgY2xhc3M9XCJzdGRvdXRcIj48JSMgLSU+XHJcbjxiPjwlPSB1c2VyLm5hbWUgfHwgdXNlci5sb2dpbiAlPjwvYj4gcmVnaXN0ZXJlZD08JT0gY29tcHV0ZWQucmVnaXN0cmF0aW9uLm1hdGNoKC9eLis/IFt5bV0vKVswXS5yZXBsYWNlKC8gL2csIFwiXCIpICU+LCB1aWQ9PCU9IGAke3VzZXIuZGF0YWJhc2VJZH1gLnN1YnN0cigtNCkgJT4sIGdpZD08JT0gdXNlci5vcmdhbml6YXRpb25zLnRvdGFsQ291bnQgJT5cclxuICBjb250cmlidXRlZCB0byA8JT0gdXNlci5yZXBvc2l0b3JpZXNDb250cmlidXRlZFRvLnRvdGFsQ291bnQgJT4gcmVwb3NpdG9yPCU9IHModXNlci5yZXBvc2l0b3JpZXNDb250cmlidXRlZFRvLnRvdGFsQ291bnQsIFwieVwiKSAlPiA8Yj48JSBmb3IgKGNvbnN0IFt4LCB7Y29sb3J9XSBvZiBPYmplY3QuZW50cmllcyhjb21wdXRlZC5jYWxlbmRhcikpIHsgLSU+PHNwYW4gc3R5bGU9XCJjb2xvcjo8JT0gY29sb3IgJT5cIj4jPC9zcGFuPjwlIH0gJT48L2I+XHJcbiAgZm9sbG93ZWQgYnkgPGI+PCU9IHVzZXIuZm9sbG93ZXJzLnRvdGFsQ291bnQgJT48L2I+IHVzZXI8JT0gcyh1c2VyLmZvbGxvd2Vycy50b3RhbENvdW50KSAlPlxyXG48L2Rpdj48JSB9IC0lPlxyXG48JSMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtJT5cclxuPCUgaWYgKChiYXNlLmFjdGl2aXR5KXx8KGJhc2UuY29tbXVuaXR5KSkgeyAlPlxyXG48ZGl2IGNsYXNzPVwic3RkaW5cIj48JS0gbWV0YS4kICU+IGdpdCBzdGF0dXM8L2Rpdj48JSMgLSU+XHJcbjxkaXYgY2xhc3M9XCJzdGRvdXRcIj48JSMgLSU+XHJcbjwlIGlmIChiYXNlLmFjdGl2aXR5KSB7IC0lPlxyXG48Yj5SZWNlbnQgYWN0aXZpdHk8L2I+XHJcbiAgPGI+PCU9IGAke2NvbXB1dGVkLmNvbW1pdHN9YC5wYWRTdGFydCg1KSAlPjwvYj4gY29tbWl0PCU9IHMoY29tcHV0ZWQuY29tbWl0cykgJT5cclxuICA8Yj48JT0gYCR7dXNlci5jb250cmlidXRpb25zQ29sbGVjdGlvbi50b3RhbFB1bGxSZXF1ZXN0UmV2aWV3Q29udHJpYnV0aW9uc31gLnBhZFN0YXJ0KDUpICU+PC9iPiBwdWxsIHJlcXVlc3Q8JT0gcyh1c2VyLmNvbnRyaWJ1dGlvbnNDb2xsZWN0aW9uLnRvdGFsUHVsbFJlcXVlc3RSZXZpZXdDb250cmlidXRpb25zKSAlPiByZXZpZXdlZFxyXG4gIDxiPjwlPSBgJHt1c2VyLmNvbnRyaWJ1dGlvbnNDb2xsZWN0aW9uLnRvdGFsUHVsbFJlcXVlc3RDb250cmlidXRpb25zfWAucGFkU3RhcnQoNSkgJT48L2I+IHB1bGwgcmVxdWVzdDwlPSBzKHVzZXIuY29udHJpYnV0aW9uc0NvbGxlY3Rpb24udG90YWxQdWxsUmVxdWVzdENvbnRyaWJ1dGlvbnMpICU+IG9wZW5lZFxyXG4gIDxiPjwlPSBgJHt1c2VyLmNvbnRyaWJ1dGlvbnNDb2xsZWN0aW9uLnRvdGFsSXNzdWVDb250cmlidXRpb25zfWAucGFkU3RhcnQoNSkgJT48L2I+IGlzc3VlPCU9IHModXNlci5jb250cmlidXRpb25zQ29sbGVjdGlvbi50b3RhbElzc3VlQ29udHJpYnV0aW9ucykgJT4gb3BlbmVkXHJcbiAgPGI+PCU9IGAke3VzZXIuaXNzdWVDb21tZW50cy50b3RhbENvdW50fWAucGFkU3RhcnQoNSkgJT48L2I+IGlzc3VlIGNvbW1lbnQ8JT0gcyh1c2VyLmlzc3VlQ29tbWVudHMudG90YWxDb3VudCkgJT5cclxuPCUgfSAtJT5cclxuPCUgaWYgKChiYXNlLmFjdGl2aXR5KSYmKGJhc2UuY29tbXVuaXR5KSkgeyAtJT5cclxuXHJcbjwlIH0gLSU+XHJcbjwlIGlmIChiYXNlLmNvbW11bml0eSkgeyAtJT5cclxuPGI+VHJhY2tlZCBhY3Rpdml0eTwvYj5cclxuICA8Yj48JT0gYCR7dXNlci5mb2xsb3dpbmcudG90YWxDb3VudH1gLnBhZFN0YXJ0KDUpICU+PC9iPiB1c2VyPCU9IHModXNlci5mb2xsb3dlcnMudG90YWxDb3VudCkgJT4gZm9sbG93ZWRcclxuICA8Yj48JT0gYCR7dXNlci5zcG9uc29yc2hpcHNBc1Nwb25zb3IudG90YWxDb3VudH1gLnBhZFN0YXJ0KDUpICU+PC9iPiByZXBvc2l0b3I8JT0gcyh1c2VyLnNwb25zb3JzaGlwc0FzU3BvbnNvci50b3RhbENvdW50LCBcInlcIikgJT4gc3BvbnNvcmVkXHJcbiAgPGI+PCU9IGAke3VzZXIuc3RhcnJlZFJlcG9zaXRvcmllcy50b3RhbENvdW50fWAucGFkU3RhcnQoNSkgJT48L2I+IHJlcG9zaXRvcjwlPSBzKHVzZXIuc3RhcnJlZFJlcG9zaXRvcmllcy50b3RhbENvdW50LCBcInlcIikgJT4gc3RhcnJlZFxyXG4gIDxiPjwlPSBgJHt1c2VyLndhdGNoaW5nLnRvdGFsQ291bnR9YC5wYWRTdGFydCg1KSAlPjwvYj4gcmVwb3NpdG9yPCU9IHModXNlci53YXRjaGluZy50b3RhbENvdW50LCBcInlcIikgJT4gd2F0Y2hlZFxyXG48JSB9IC0lPlxyXG48L2Rpdj48JSB9IC0lPlxyXG48JSMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtJT5cclxuPCUgaWYgKGJhc2UucmVwb3NpdG9yaWVzKSB7ICU+XHJcbjxkaXYgY2xhc3M9XCJzdGRpblwiPjwlLSBtZXRhLiQgJT4gbHMgLWxoIGdpdGh1Yi9yZXBvc2l0b3JpZXM8L2Rpdj48JSMgLSU+XHJcbjxkaXYgY2xhc3M9XCJzdGRvdXRcIj48JSMgLSU+XHJcblRvdGFsIDwlPSB1c2VyLnJlcG9zaXRvcmllcy50b3RhbENvdW50ICU+IHJlcG9zaXRvcjwlPSBzKHVzZXIucmVwb3NpdG9yaWVzLnRvdGFsQ291bnQsIFwieVwiKSAlPiAtIDwlPSBjb21wdXRlZC5kaXNrVXNhZ2UgJT5cclxuPCUgaWYgKGNvbXB1dGVkLnBsdWdpbnMudHJhZmZpYykgeyBpZiAoY29tcHV0ZWQucGx1Z2lucy50cmFmZmljLmVycm9yKSB7IC0lPlxyXG4tLS0tICA8Yj4gICAgIDwvYj4gIHZpZXdzIDxzcGFuIGNsYXNzPVwiZXJyb3JcIj4oPCU9IGNvbXB1dGVkLnBsdWdpbnMudHJhZmZpYy5lcnJvci5tZXNzYWdlICU+KTwvc3Bhbj5cclxuPCUgfSBlbHNlIHsgLSU+XHJcbi1yLS0gIDxiPjwlPSBgJHtjb21wdXRlZC5wbHVnaW5zLnRyYWZmaWMudmlld3MuY291bnR9YC5wYWRTdGFydCg1KSAlPjwvYj4gIHZpZXdzXHJcbjwlIH19IC0lPlxyXG4tci0tICA8Yj48JT0gYCR7Y29tcHV0ZWQucmVwb3NpdG9yaWVzLnN0YXJnYXplcnN9YC5wYWRTdGFydCg1KSAlPjwvYj4gIHN0YXJnYXplcjwlPSBzKGNvbXB1dGVkLnJlcG9zaXRvcmllcy5zdGFyZ2F6ZXJzKSAlPlxyXG4tci0tICA8Yj48JT0gYCR7Y29tcHV0ZWQucmVwb3NpdG9yaWVzLmZvcmtzfWAucGFkU3RhcnQoNSkgJT48L2I+ICBmb3JrPCU9IHMoY29tcHV0ZWQucmVwb3NpdG9yaWVzLmZvcmtzKSAlPlxyXG4tci0tICA8Yj48JT0gYCR7Y29tcHV0ZWQucmVwb3NpdG9yaWVzLndhdGNoZXJzfWAucGFkU3RhcnQoNSkgJT48L2I+ICB3YXRjaGVyPCU9IHMoY29tcHV0ZWQucmVwb3NpdG9yaWVzLndhdGNoZXJzKSAlPlxyXG5kci14ICA8Yj48JT0gYCR7dXNlci5wYWNrYWdlcy50b3RhbENvdW50fWAucGFkU3RhcnQoNSkgJT48L2I+ICBwYWNrYWdlPCU9IHModXNlci5wYWNrYWdlcy50b3RhbENvdW50KSAlPlxyXG5kci14ICA8Yj48JT0gYCR7dXNlci5naXN0cy50b3RhbENvdW50fWAucGFkU3RhcnQoNSkgJT48L2I+ICBnaXN0PCU9IHModXNlci5naXN0cy50b3RhbENvdW50KSAlPlxyXG48JSBpZiAoY29tcHV0ZWQucGx1Z2lucy5mb2xsb3d1cCkgeyBpZiAoY29tcHV0ZWQucGx1Z2lucy5mb2xsb3d1cC5lcnJvcikgeyAtJT5cclxuZC0tLSAgPGI+ICAgICA8L2I+ICBJU1NVRVMgPHNwYW4gY2xhc3M9XCJlcnJvclwiPig8JT0gY29tcHV0ZWQucGx1Z2lucy5mb2xsb3d1cC5lcnJvci5tZXNzYWdlICU+KTwvc3Bhbj5cclxuZC0tLSAgPGI+ICAgICA8L2I+ICBQVUxMX1JFUVVFU1RTIDxzcGFuIGNsYXNzPVwiZXJyb3JcIj4oPCU9IGNvbXB1dGVkLnBsdWdpbnMuZm9sbG93dXAuZXJyb3IubWVzc2FnZSAlPik8L3NwYW4+XHJcbjwlIH0gZWxzZSB7IC0lPlxyXG5kci14ICA8Yj48JT0gYCR7Y29tcHV0ZWQucGx1Z2lucy5mb2xsb3d1cC5pc3N1ZXMuY291bnR9YC5wYWRTdGFydCg1KSAlPjwvYj4gIElTU1VFU1xyXG4tci0tICA8Yj48JT0gYCR7Y29tcHV0ZWQucGx1Z2lucy5mb2xsb3d1cC5pc3N1ZXMub3Blbn1gLnBhZFN0YXJ0KDUpICU+PC9iPiAg4pSc4pSA4pSAIG9wZW5cclxuLXItLSAgPGI+PCU9IGAke2NvbXB1dGVkLnBsdWdpbnMuZm9sbG93dXAuaXNzdWVzLmNsb3NlZH1gLnBhZFN0YXJ0KDUpICU+PC9iPiAg4pSU4pSA4pSAIGNsb3NlZFxyXG5kci14ICA8Yj48JT0gYCR7Y29tcHV0ZWQucGx1Z2lucy5mb2xsb3d1cC5pc3N1ZXMuY291bnR9YC5wYWRTdGFydCg1KSAlPjwvYj4gIFBVTExfUkVRVUVTVFNcclxuLXItLSAgPGI+PCU9IGAke2NvbXB1dGVkLnBsdWdpbnMuZm9sbG93dXAucHIub3Blbn1gLnBhZFN0YXJ0KDUpICU+PC9iPiAg4pSc4pSA4pSAIG9wZW5cclxuLXItLSAgPGI+PCU9IGAke2NvbXB1dGVkLnBsdWdpbnMuZm9sbG93dXAucHIubWVyZ2VkfWAucGFkU3RhcnQoNSkgJT48L2I+ICDilJTilIDilIAgbWVyZ2VkXHJcbjwlIH19IC0lPlxyXG48JSBpZiAoY29tcHV0ZWQubGljZW5zZXMuZmF2b3JpdGUubGVuZ3RoKSB7IC0lPlxyXG5kci14ICAgICAgICAgTElDRU5TRVxyXG4tci0tICAgICAgICAg4pSU4pSA4pSAIDwlPSBjb21wdXRlZC5saWNlbnNlcy5mYXZvcml0ZSAlPlxyXG48JSB9IC0lPlxyXG48JSBpZiAoY29tcHV0ZWQucGx1Z2lucy5saW5lcykgeyBpZiAoY29tcHV0ZWQucGx1Z2lucy5saW5lcy5lcnJvcikgeyAlPlxyXG48c3BhbiBjbGFzcz1cImRpZmYgZXJyb3JcIj5AQCA8JT0gY29tcHV0ZWQucGx1Z2lucy5saW5lcy5lcnJvci5tZXNzYWdlICU+IEBAPC9zcGFuPjwlIH0gZWxzZSB7ICU+XHJcbjxzcGFuIGNsYXNzPVwiZGlmZlwiPkBAIC08JT0gY29tcHV0ZWQucGx1Z2lucy5saW5lcy5kZWxldGVkICU+ICs8JT0gY29tcHV0ZWQucGx1Z2lucy5saW5lcy5hZGRlZCAlPiBAQDwvc3Bhbj5cclxuPCUgfX0gLSU+XHJcbjwvZGl2PjwlIH0gLSU+XHJcbjwlIyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0lPlxyXG48JSBpZiAoY29tcHV0ZWQucGx1Z2lucy5sYW5ndWFnZXMpIHsgJT5cclxuPGRpdiBjbGFzcz1cInN0ZGluXCI+PCUtIG1ldGEuJCAlPiBsb2NhbGU8L2Rpdj48JSMgLSU+XHJcbjxkaXYgY2xhc3M9XCJzdGRvdXRcIj48JSMgLSU+XHJcbjwlIGlmIChjb21wdXRlZC5wbHVnaW5zLmxhbmd1YWdlcy5lcnJvcikgeyAtJT5cclxuPHNwYW4gY2xhc3M9XCJlcnJvclwiPjwlPSBjb21wdXRlZC5wbHVnaW5zLmxhbmd1YWdlcy5lcnJvci5tZXNzYWdlICU+PC9zcGFuPjwlIyAtJT5cclxuPCUgfSBlbHNlIHsgZm9yIChjb25zdCB7bmFtZSwgdmFsdWV9IG9mIGNvbXB1dGVkLnBsdWdpbnMubGFuZ3VhZ2VzLmZhdm9yaXRlcykgeyAtJT5cclxuPGI+PCU9IG5hbWUudG9Mb2NhbGVVcHBlckNhc2UoKS5wYWRFbmQoMTIpICU+PC9iPiBbPCU9IFwiI1wiLnJlcGVhdChNYXRoLmNlaWwoMTAwKnZhbHVlLzUpKS5wYWRFbmQoMjApICU+XSA8JT0gKDEwMCp2YWx1ZSkudG9GaXhlZCgyKS5wYWRFbmQoNSkgJT4lXHJcbjwlIH19IC0lPlxyXG48L2Rpdj48JSB9IC0lPlxyXG48JSMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtJT5cclxuPCUgaWYgKGNvbXB1dGVkLnBsdWdpbnMucGFnZXNwZWVkKSB7ICU+XHJcbjxkaXYgY2xhc3M9XCJzdGRpblwiPjwlLSBtZXRhLiQgJT4gY3VybCAtSSA8JT0gdXNlci53ZWJzaXRlVXJsICU+PC9kaXY+PCUjIC0lPlxyXG48ZGl2IGNsYXNzPVwic3Rkb3V0XCI+PCUjIC0lPlxyXG48JSBpZiAoY29tcHV0ZWQucGx1Z2lucy5wYWdlc3BlZWQuZXJyb3IpIHsgLSU+XHJcbjxzcGFuIGNsYXNzPVwiZXJyb3JcIj48JT0gY29tcHV0ZWQucGx1Z2lucy5wYWdlc3BlZWQuZXJyb3IubWVzc2FnZSAlPjwvc3Bhbj48JSB9IGVsc2UgeyAtJT5cclxuPGI+VXNlci1BZ2VudDwvYj46IEdvb2dsZSBQYWdlU3BlZWQgQVBJXHJcbjxiPkxvY2F0aW9uPC9iPjogPCU9IHVzZXIud2Vic2l0ZVVybCAlPlxyXG48JSBmb3IgKGNvbnN0IHtzY29yZSwgdGl0bGV9IG9mIGNvbXB1dGVkLnBsdWdpbnMucGFnZXNwZWVkLnNjb3JlcykgeyAtJT5cclxuPGI+PCU9IGBYLSR7dGl0bGUucmVwbGFjZSgvIC9nLCBcIi1cIil9YCAlPjwvYj46IDwlPSAhTnVtYmVyLmlzTmFOKHNjb3JlKSA/IE1hdGgucm91bmQoc2NvcmUqMTAwKSA6IFwiLVwiICU+JVxyXG48JSB9fSAtJT5cclxuPC9kaXY+PCUgfSAtJT5cclxuPCUjID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLSU+XHJcbjwlIGlmIChiYXNlLm1ldGFkYXRhKSB7IC0lPlxyXG5cclxuPGZvb3Rlcj5Db25uZWN0aW9uIHJlc2V0IGJ5IDwlPSBNYXRoLmZsb29yKDI1NipNYXRoLnJhbmRvbSgpKSAlPi48JT0gTWF0aC5mbG9vcigyNTYqTWF0aC5yYW5kb20oKSkgJT4uPCU9IE1hdGguZmxvb3IoMjU2Kk1hdGgucmFuZG9tKCkpICU+LjwlPSBNYXRoLmZsb29yKDI1NipNYXRoLnJhbmRvbSgpKSAlPjwvZm9vdGVyPjwlIyAtJT5cclxuPCUgfSAtJT48L3ByZT5cclxuXHJcbiAgICA8L2Rpdj5cclxuICA8L2ZvcmVpZ25PYmplY3Q+XHJcbjwvc3ZnPlxyXG5cclxuIiwic3R5bGUiOiIvKiBTVkcgZ2xvYmFsIGNvbnRleHQgKi9cclxuICBzdmcge1xyXG4gICAgZm9udC1mYW1pbHk6ICdDb3VyaWVyIFByaW1lJztcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIGNvbG9yOiAjNzc3Nzc3O1xyXG4gIH1cclxuXHJcbi8qIFRpdGxlIGJhciAqL1xyXG4gIC5oZWFkZXIge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIHBhZGRpbmc6IDAgOHB4O1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDVweDtcclxuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA1cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoIzUwNGI0NSAwJSwjM2MzYjM3IDEwMCUpO1xyXG4gIH1cclxuXHJcbiAgLnRpdGxlIHtcclxuICAgIGNvbG9yOiAjZDVkMGNlO1xyXG4gICAgZm9udC1zaXplOiAxNnB4O1xyXG4gIH1cclxuXHJcbiAgLmJ1dHRvbnMge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgfVxyXG5cclxuICAuYnV0dG9uIHtcclxuICAgIGNvbG9yOiBibGFjaztcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIG1hcmdpbi1yaWdodDogNXB4O1xyXG4gICAgZm9udC1zaXplOiA4cHg7XHJcbiAgICBoZWlnaHQ6IDEycHg7XHJcbiAgICB3aWR0aDogMTJweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XHJcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoIzdkNzg3MSAwJSwgIzU5NTk1MyAxMDAlKTtcclxuICAgIHRleHQtc2hhZG93OiAwcHggMXB4IDBweCByZ2JhKDI1NSwyNTUsMjU1LDAuMik7XHJcbiAgfVxyXG5cclxuICAuYnV0dG9uLmV4aXQge1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KCNmMzc0NTggMCUsICNkZTRjMTIgMTAwJSk7XHJcbiAgfVxyXG5cclxuLyogVGVybWluYWwgKi9cclxuICBwcmUsIC5iYW5uZXIsIGZvb3RlciB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBmb250LWZhbWlseTogJ0NvdXJpZXIgUHJpbWUnO1xyXG4gICAgY29sb3I6ICNEREREREQ7XHJcbiAgfVxyXG4gIHByZSB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjNDIwOTJCO1xyXG4gICAgcGFkZGluZzogMTJweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcclxuICB9XHJcbiAgLmJhbm5lciwgZm9vdGVyIHtcclxuICAgIGNvbG9yOiAjQUU5REE3O1xyXG4gIH1cclxuXHJcbi8qIFByb21wdCAqL1xyXG4gIC5wczEtcGF0aCB7XHJcbiAgICBjb2xvcjogIzdFREEyOTtcclxuICB9XHJcblxyXG4gIC5wczEtbG9jYXRpb24ge1xyXG4gICAgY29sb3I6ICM0ODc4YzA7XHJcbiAgfVxyXG5cclxuLyogRGlmZiAqL1xyXG4gIC5kaWZmIHtcclxuICAgIGNvbG9yOiAjM0E5NkREO1xyXG4gIH1cclxuXHJcbi8qIEVycm9yICovXHJcbiAgLmVycm9yIHtcclxuICAgIGNvbG9yOiAjY2IyNDMxO1xyXG4gIH1cclxuXHJcbi8qIEFuaW1hdGlvbnMgKi9cclxuICAuc3RkaW4sIGZvb3RlciB7XHJcbiAgICB3aWR0aDogMCU7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBzdGRpbi1hbmltYXRpb247XHJcbiAgICBhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xyXG4gIH1cclxuXHJcbiAgLnN0ZG91dCB7XHJcbiAgICBtYXgtaGVpZ2h0OiAwJTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBhbmltYXRpb24tbmFtZTogc3Rkb3V0LWFuaW1hdGlvbjtcclxuICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XHJcbiAgfVxyXG5cclxuICBAa2V5ZnJhbWVzIHN0ZGluLWFuaW1hdGlvbiB7XHJcbiAgICAwJSB7IHdpZHRoOiAwJTsgfVxyXG4gICAgMTAwJSB7IHdpZHRoOiAxMDAlOyB9XHJcbiAgfVxyXG5cclxuICBAa2V5ZnJhbWVzIHN0ZG91dC1hbmltYXRpb24ge1xyXG4gICAgMCUgeyBtYXgtaGVpZ2h0OiAwOyB9XHJcbiAgICAxMDAlIHsgbWF4LWhlaWdodDogMzYwcHg7IH1cclxuICB9XHJcblxyXG4vKiBDYWxlbmRhciAqL1xyXG4gIDpyb290IHtcclxuICAgIC0tY29sb3ItY2FsZW5kYXItZ3JhcGgtZGF5LWJnOiAjZWJlZGYwO1xyXG4gICAgLS1jb2xvci1jYWxlbmRhci1ncmFwaC1kYXktYm9yZGVyOiByZ2JhKDI3LDMxLDM1LDAuMDYpO1xyXG4gICAgLS1jb2xvci1jYWxlbmRhci1ncmFwaC1kYXktTDEtYmc6ICM5YmU5YTg7XHJcbiAgICAtLWNvbG9yLWNhbGVuZGFyLWdyYXBoLWRheS1MMi1iZzogIzQwYzQ2MztcclxuICAgIC0tY29sb3ItY2FsZW5kYXItZ3JhcGgtZGF5LUwzLWJnOiAjMzBhMTRlO1xyXG4gICAgLS1jb2xvci1jYWxlbmRhci1ncmFwaC1kYXktTDQtYmc6ICMyMTZlMzk7XHJcbiAgICAtLWNvbG9yLWNhbGVuZGFyLWhhbGxvd2Vlbi1ncmFwaC1kYXktTDEtYmc6ICNmZmVlNGE7XHJcbiAgICAtLWNvbG9yLWNhbGVuZGFyLWhhbGxvd2Vlbi1ncmFwaC1kYXktTDItYmc6ICNmZmM1MDE7XHJcbiAgICAtLWNvbG9yLWNhbGVuZGFyLWhhbGxvd2Vlbi1ncmFwaC1kYXktTDMtYmc6ICNmZTk2MDA7XHJcbiAgICAtLWNvbG9yLWNhbGVuZGFyLWhhbGxvd2Vlbi1ncmFwaC1kYXktTDQtYmc6ICMwMzAwMWM7XHJcbiAgICAtLWNvbG9yLWNhbGVuZGFyLWdyYXBoLWRheS1MNC1ib3JkZXI6IHJnYmEoMjcsMzEsMzUsMC4wNik7XHJcbiAgICAtLWNvbG9yLWNhbGVuZGFyLWdyYXBoLWRheS1MMy1ib3JkZXI6IHJnYmEoMjcsMzEsMzUsMC4wNik7XHJcbiAgICAtLWNvbG9yLWNhbGVuZGFyLWdyYXBoLWRheS1MMi1ib3JkZXI6IHJnYmEoMjcsMzEsMzUsMC4wNik7XHJcbiAgICAtLWNvbG9yLWNhbGVuZGFyLWdyYXBoLWRheS1MMS1ib3JkZXI6IHJnYmEoMjcsMzEsMzUsMC4wNik7XHJcbiAgfSIsImZvbnRzIjoiQGZvbnQtZmFjZSB7XHJcbiAgZm9udC1mYW1pbHk6ICdDb3VyaWVyIFByaW1lJztcclxuICBzcmM6IHVybCgnZGF0YTphcHBsaWNhdGlvbi9mb250LXdvZmY7Y2hhcnNldD11dGYtODtiYXNlNjQsZDA5R1JnQUJBQUFBQUQra0FCSUFBQUFBY2JBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUJHUmxSTkFBQS9pQUFBQUJ3QUFBQWNpVHYwTVVkRVJVWUFBRDYwQUFBQUtBQUFBQ29BL3dFMVIxQlBVd0FBUDFRQUFBQXlBQUFBUUJhYktKaEhVMVZDQUFBKzNBQUFBSGdBQUFDaVo0ZHl4VTlUTHpJQUFBSU1BQUFBVHdBQUFHQncxby9XWTIxaGNBQUFBeUFBQUFDdUFBQUJVc1J0V3lKamRuUWdBQUFMYUFBQUFFTUFBQUJzSnVFUWhXWndaMjBBQUFQUUFBQUc4Z0FBRGhXZU5oUE9aMkZ6Y0FBQVBxd0FBQUFJQUFBQUNBQUFBQkJuYkhsbUFBQU1nQUFBTDN3QUFGZFFnK0hFcm1obFlXUUFBQUdVQUFBQU5nQUFBRFlYbVJxc2FHaGxZUUFBQWN3QUFBQWdBQUFBSkFzUEFmbG9iWFI0QUFBQ1hBQUFBTUVBQUFEWUwzUWR3Mnh2WTJFQUFBdXNBQUFBMGdBQUFOSXZCQmwrYldGNGNBQUFBZXdBQUFBZ0FBQUFJQUhSQWdadVlXMWxBQUE3L0FBQUFjUUFBQU9UQVZ5dXBuQnZjM1FBQUQzQUFBQUE3QUFBQVVsa1g4VHljSEpsY0FBQUNzUUFBQUNpQUFBQXZWcXgzenNBQVFBQUFBTUVtMU91d3pSZkR6ejFBQjhJQUFBQUFBRFpuSVBoQUFBQUFObjdTVWYvNVA1bEJPZ0Zod0FBQUFnQUFnQUFBQUFBQUhqYVkyQmtZR0J6K092Q3dNQnk1ditULzA5WVhqQUFSVkFBQ3dDcEZBY1FBQUVBQUFCb0FIQUFCUUF2QUFJQUFnQXNBRm9BalFBQUFLWUJDZ0FDQUFGNDJtTmdZVG5ET0lHQmxZR0IxWmpsREFNRHcwd0l6WFNHb1lsSkM4aG5ZT1ZrZ0FGbUJpUVFHQnJveUhDQVFZRmhBNXZEWHhjR0J2WWNaZ1VGQm9iSllJVnpXQllES1FVR1pnQm4vUXlpQUhqYVl6bkRNSlVCQ0ZqT1FERGpTNGIvRERZTW14bU1HQ1l6UG1YVVpNeG0yTSt3aXJFRWlPOHpIR1BZdzNDSFlUZFFaREtRZFpMaEtjTTVoZ09NOXhrN0dHb1pWakdzWi9nSDFNWEZFTUJRQnNRZ21BVEVKeGlLd1d3NUJqZUdDQ0FOd3ZNWXFvQThydi9mZ09wdEdKWXplakdtTWJ6NC80VFJrcUdkUVpXaEhnZ25BVzJwWi9BRmt2c1luQmsyL3Y4RFpMZUE1U1lEM1ZiSzRNRmdCTlR0QnRTL2lXRWprelRETzRacEROLysvLzcvbTBHRVlSOFRPOE51QUJGVVBra0FBQUI0Mm1OZ1lHQm1nR0FaQmtZR0VQQUI4aGpCZkJZR0F5RE5BWVJNUURxYW9ZNWh3Ly8vUUpZQ1F5eUk5Zi94LzBmL04wSjFnUUVqR3dPY3l3alN3OFNBQ29DU3pDeXNiT3djbkZ6Y1BMeDgvQUtDUXNJaW9tTGlFcEpTMGpLeWN2SUtpa3JLS3FwcTZocWFXdG82dW5yNkJvWkd4aWFtWnVZV2xsYldOcloyRFBZT2prN09McTV1N2g2ZVh0NCt2bjcrQVlGQndTR2hZZUVSa1ZIUk1iRng4UWtNQkVFaUEwMEJBQlZOSDVnQUFIamFyVmRyV3h2SEZaN1ZEWXdCQTVLd20zWGRVY2FpTGp1U1NlczR4Rlljc3N1aU9FcFNnWEc3NnpUdExoTHUvWkwwUnEvcC9hTDhtYk9pZmVwOHkwL0xlMlpXQ2pqZ1BuMmU4a0hublpsMzVsem56RUpDU3hJUG96Q1dzdmRFTE83MnFQTGdVVVMzWExvUko0L2w2R0ZFaFdiNjBheVlGWU9CT25BYkRSSXhpVUJ0ajRVamdzUnZrYU5KSm85YlZOQ3FvUm90S21vNVBDN1c2c0lQcUJySUpQR3pRaTN3czJZeG9FS3dmeVJwWGdFRTZaQksvYU54b1ZEQU1kUTR2TnJnMmZGaTNmR3ZTa0RsajZ0T0ZXdUtSRDg2ak1lclRzRW9MR2txZWxRUEl0WkhxMEdRRTF3NWxQUnhuMHByajhZM25JVWdISVJVQ2FNR0ZadngzanNSeU80b2t0VHZZMm9MYk5wa3RCbkhNck5zV0hRRFUvbEkwZ2F2YnpEejQzNGtFWTFSS21tdUh5V1lrYncyeCtnMm85dUptOFJ4N0NKYU5COE1TT3hGSkhwTWJtRHM5dWdhbzJ1OTlNbVNHRERqU1ZrY3hQRXdqY254NGpqM0lKWkQrS1A4dUVWbExXRkJxWm5DcDVtZ0g5R004bWxXK2NnQXRpUXRxcGh3SXhKeW1NMGMrSklYMlYzWG1zKy9WRXpDQVpYWEcxZ001RWlPb0N2YktEY1JvZDBvNmJ2cFhoeXB1QkZMMm5vUVljM2x1T1NtdEdoRzA0WEFHNHVDVGZNc2hzcFhLQmZscDFRNGVFek9BSWJRekhxTExtakoxaTdDclpJNGtId0NiU1V4VTVKdFkrMmNIbDlZRkVIb3J6ZW1oWE5Sbnk2a2VYdUs0OEdFQUs0bk1oeXBsSk5xZ2kxY1RnaEpGMFpPckVScVZicHRWU3ljczUydVk1ZHdQM1h0NUtaRmJSdzZYcGdYeFJCYVhOV0kxMUhFbDNSV0tJUTBUTGRidEtSQmxaSXVCVy93QVFESUVDM3hhQStqSlpPdlpSeTBaSUlpRVlNQk5OTnlrTWhSSW1rWllXdlJpdTd0UjFscHVCMWZwNFZEZGRTaXF1N3RScjBIZHRKdFlMNXE1bXM2RXl2Qnd5aGJXUW5JU1gxYTl2aktvYlQ4N0JML0xPR0huRlhrb3Rqc1J4bUhELzc2STJRWWFwZldHd3JiSnRpMTY3d0ZONWxuWW5qU2hmMWR6SjVPMWprcHpJU29Lc1FySUhGdjdEaU95VlpkaTB3VXd2MklWcFF2UTFwRStTMG9sQnhLc1lhWkJEYjg1OG9WUnl5THF2QjlueU5SZ3lGWXkycXpIbjNvdWM4amJxdHd0dTYxNkxMT0hKWlhFSGlXbjlOWmtlVnpPaXV4ZEhWV1pubFZaeFdXbjlmWkRNdHJPcHRsK1FXZFhXRHBhVFZKQkZVU2hGekpOam52OHJWcGtUNnh1RHBkZk04dXRrNHNyazBYMzdlTFVndTY1SjNuTVB2NmIrc3JPM3JTdndiOGs3RHJlZmpIVXNFL2x0ZmhIOHNtL0dPNUJ2OVlmaEgrc2J3Qi8xaCtDZjZ4WElkL0xOdGFka3psM3RSUWV5V1I2SDVPRXBqYzRqYTJ1WGczTk4zMDZDWXU1Z3U0RTExNVRscFZ1cW00d3orVDRiTDNYNTdrT2x1c2hGeDY5TUo2Vm5icVlZVHV5RjUrNVVSNHp1UGMwdkpGWS9tTE9NMXl3cy9xeFAwOTB4YWVGNnYvRXZ5M2ZVOXRacmVjT3Z0NkcvR0FBMmZiajF1VGJyYm9KZDIrM0duUjVuK2pvc0lIb0wrTUZJblZwbXpMTHZjR2hQYithTlJWWFRTVENDOGcyaStlcGszSHFkY1E0VHRvWXF0MEdiUVMrbXJUMExKNTRkUEZ3RHNjdFpXVW5SSE92SHVhSnR2MlBLcmdOdVJzU1FrM2w2M2Q2TGdreTlJOUxxMlZuNHQ5YnJsejZON0s3RkE3Q1ZXQ3ArOXR3bTNQUGsrbElCa3FLdU4xeFhJcFNGM2doRnZlMDN0U21JYUhRTzBneHdvYWR2anBtZ3VNRnB4M2hoSmxtMnNGbHhqSktLUGd5cDg1RlNleUVVMDJvb2pmdktWK3FndUYwSm5FUW1LMnZKYkhRblVRcGxlbVN6Um4xbmRVbDVWeUZ1OU5ROGpPMkVpVDJJL2Fzb09YbmEzUEp5WGJsYWVDS2syTTdwLzhpTEZKUEt2YTgyd3BMdmxYVDFnU1ROS1Y4SmZPMHk1UFVyeUYvdEhtS083UTVTRHF1M2hjWlNkdVp4dE9EZmYydFZPcmUyNy8xS3AvNXQ1bjdRZzAzZkdlcFhCYjAxMXZCTnU0eHVEVXVWUWt0RTBiMkJFYWw3aysxMnprVTN5cCtkWjFMbENGNjlQR3piUG43K2hzRG8vT1pNdi9XTkxkLzFjVnMwL2N4em9LcmVwRXZUVGkzTTR1R3ZBZGJ4S1Yxekc2NnpWVUhwZmNtMmtJN2lNRWRYdnQ4Vm1DRzE1dDAyM2M4amZPbWUvaE9LZFdwWmVBMzlUME1zUmJITVVRNFpZN2VJRW4wWHBiYzBIVFc0QmYxV01oZGdENkFBNkRYVDEyek13ZWdKbDV3Snd1d0Q1ekdEeGtEb092TVlmQjEvVXhlbUVBRkFFNUJzWDYyTEZ6ajREczNEdk1jeGg5ZzNrR3ZjczhnNzdKUElPK3hUcERnSVIxTWtoWko0TUQxc2xnd0p6WEFZYk1ZWERJSEFhUG1jUGcyOGF1YmFEdkdMc1lmZGZZeGVoN3hpNUczemQyTWZxQnNZdlJENDFkakg1azdHTDBZOFM0TTAzZ1Q4eUl0Z0Rmcy9BMXdQYzU2R2JrWS9SVHZMVTU1MmNXTXVmbmh1UGtuRjlnOHl2VFUzOXBSbWJIa1lXODQxY1dNdjNYT0Njbi9NWkNKdnpXUWliOER0eDcwL04rYjBhRy9vR0ZUUCtEaFV6L0kzYm1oRDlaeUlRL1c4aUV2NEQ3NnZTOHY1cVJvZi9OUXFiLzNVS20vd003YzhJL0xXVEN5RUltZktqSEY4MG5MbFhjY2FsUURQSGZFOXBnN0hzMGUwakY2LzJqeVdQZCtnVDFvQVA2QUFCNDJtUHczc0Z3SWloaUl5TmpYK1FHeHAwY0RCd015UVViR2RpZHRqQm9Tek16YUlHWTJ3MVlGRGlFMkptNUlEd1RKZzAyU1ZZd2o4dHBENDhEaHdQTEFRWm1CbTRnbjlkcEQ0TURHSUw0TzRFa2c4dEdGY2FPd0lnTkRoMFJJSDZLeTBZTkVIOEhCd05FZ01FbFVucWpPa2hvRjBjREF5T0xRMGR5Q0V3Q0JMWWJNU214aWJBeTgybnRZUHpmdW9HbGR5TVRnOHRtMWhRMkJoY1hBSDJWTGdjQUFIamFZMkFnQUl3Z2tHVW5Bd1B6blAvZi9oVWhXQXp6Z0hBS3d4U1d4UXdNckFyTWN4Z1kvdFd3N1B6L2lqV1llZFAvVi8vU1lIcFp6UmdmQS9GRkFNbUVHWWdBQUFBQWlBQ0lBSWdBaUFEaUFQQUJrQUppQXd3RDZnUWdCR1FFcWdVb0JYQUZuZ1hJQmU0R0xBWjJCc0FIUEFlNENCSUloQWpxQ1VBSnVnb2VDbUFLcGdya0N5b0xhQXZ5REo0TkJnMXNEZGdPSmc3QUQwd1B4aEJDRUlnUTNCRjJFY1lTUkJMQUV3b1RZaFFxRkt3VlFCV1lGZTRXUWhiQ0YwUVhxaGdBR0R3WWVCakFHT29aR0JuZUdwd2JCaHZFSENJY3BoMkVIZ3dlR0I0a0hyZ2ZDQi9PSUhJZ3VpRm1JaElpa2lNbUk0UWtFaVJtSk5ZbFZpVzRKam9td2liMEozb24yaWdvS05ZcDJDcndLendyYUN1b0FBQjQyclY4QjN3YzFiWDN2Vk8zYUZmYTFSWkoyN1JkdmE1NlczZlo2dTZ5YkV0eWw4Rk4ySUJ3RXpiR2dLbTJBWnRnSU5Ra05HT0RRWFQ0Q0NXVUpBOGU1RkZDUGdJRXlFdmd2Y1NFSW8yK2MrL003SzZLYlg3di9UNy9yTm5abVR1ejkvVC91ZWZNSUJiZEtIM0dOZkU1S0JtbG9pcTBLRHEvUE4rZnpna2NidVl4eHdnTUp3enFSRVpnNGY4dURjYUk0VEN6Vm90WmhOaEY4TUdpYnRoRGJSWkxTZ3BDbGlwTFphUWtLK1J4cDZTbXBKcE5jRmREbVY2dzV5S2JsYlVJZnE4dlZKWWFLUy8xc3FsZXRqeFVGcWxJWldGYlhscGlzenR3UFlaUHEwVmtVMkVyK0gxaFBSYjhYSUdMZGZtR1gvZVJEN1lzbnhuSlpBNEYySGZmWlh4V2N6cC81NTE4dXRucVk5NTlsdzFZUTlvNzc5U0crQnhQOElkcFFZOG55RDhUOVB6ZzVRZCsyUCt0eWNBSitCWjhoQldOWnIxT09vbGJkSHF6VVdTbGRkSWFnVE9ZVW5HTGRESVZNZmpMMFcrWlAzT25rUkU1MFlMSGRTekRJb3libTQ3YjJ4ZEg3UWdoM010aGpBTXRQTkRPOUNLRzhUT3RqcWdWRGdJZk1PcExQTjRaTlNjbkk1VHNUSGJZTEhESHBLQ2dJYndRV1NQMiswSmhObFJlZzgwMkZ5YlVodW93TUlKNTFzSVVNNjZNREE4dVlpejJQYmltWnVwVStPTk9wMldNMU5uVDArM00vOGxJRzA1MytXN3h1ZWhtZEJTTk1xK3piM0tuVS94SU41cUJVQXFMZE9oelJQNHhxSGIwSys1NmJnZzFvVGEwT0xwZ1ZpMmoxWGx0RE1zd3pTa0dQYXMxYWhpRXRXaWRLVmxrc2NBeERBdnlUY0k2WFJZbE1adHRiVzVHcUxtdHVhMjFCVzR5WjhhMGFFTjFaVm1wTnhEMFcvMEJiOENzOFJEeFdvUmNMRkw1d1k1TUh4R3ZONzVMUDREZ0NuVW5OU1p3YjN5M0ZGZDRSZTRDb08zRjZOT0V4RS9tY1o1VVp4N1RKUDJnN3QxQmp2ODYraHo1K0xSRFB0aUllWFh2bURRUWxYNk1zcjNlY05oN21teWs1MUpNN2pSV2h6M3h2ZGhKWENFZmt2NGEzNU8ybno1TitNZWlrNk43dVF3K0U4MUM3YWdUM1JOMThDeWpRUmFNTll2YnFxMGNqNnV3bHM4S01ZeVdCeTNKQkMzSjAyTU5ScHBPQVRRQzh3ajNJVjdMOEoxSldBdW13MnFaUHNTeVlxOE9pMktBQmRVcGdUM0VpcDNudW9wY3dQYkNTTGFqTStyczZHaHNSS2lqczZPenNiMnhIV1kzMHgzTThqdURXUWFOQzhUaHdqYTdiRmV5Y29WRFlhdk43c1pXaXhHTFZrWGQ0RmhjOFVySWFic3BGQzdBWlJHUUJybWFFYXdXbXgzdVpDNHZpNFRnSGlabW43ZTd3NWVkN2ZObCs0eTExKzF1YnU5Y2ROK0YzbURRdTJPQmZOaWFwblZ1NmR3emMzWkgxOC9YZUlOM3JjM084cmYvYzJOZWR0NENQdFBqZXlodGRyN2Y3ZlkvNjNkbmJIWDh5K2gwYlZ5eWVGOHpjOExuOGZpZVNWOVFTVTUrNDNlbjJwb1dKbU43aXN1MWR0NmluZEdmK3p6U2dSbTFtVm1HSlAzWEk5M3pwdnJ5ak1rNjZiK0lqSGhVQWpwK0MraDRNdktpWWpRRmRhQVYwVzZ3WlI0ei9DQmlOWUtHRlFZUmg1RElvYjRrTEJxd1ZpTnErL1NZNXpFSUF1T3NGcVRSQ0wxSUVMS0YxcWxUUzBwOFBvU21ka3h0bjlOWU1xVWtXbDNwSy9ZVjVXUTUwczBwOENQR2tKR1lzY3hOdjA5aEdGZGFZaWNhakNtN1FlRnh3QWdqM0tEWTlUQ2lBUHZIWDJGa3hwekcxKzZhTTBmOXp6eGp6MGhMVHh1K3lVWS8yZlVqSlZQRFlmVS9remcwbkhDQ0c1cVRjR2JRNGJEWjdjTXYydUF6emNiV1d4S0hqcnlYT0hSUDRpbmlOdzRCVHpjQVQrdFJJL3A3MC9GaVVPdzBQVWE0RWpPb0ViUE1MTCtWNWRoQ3pITjhzMlB5VXhvNDFTbDd6aXhRYWdhQ3h5RGNtZVVZdGcrY3F0aXJCWlhPYXRGZ2p1TjdCUkNHbjI5MXlEOVZjczd4Q0liVFhWVnNqbWpSV1M1Q3NXc1NKTjBKRGhxaG1kT0J5RHAveEIrb0RvUjB4SHpzY1pjYzh2dUlGRzEyWEY0QkxrdnhiNEpvVjEyZHI1QUluRWkwdkNKRXhVcXNob2kxQWpPZjNtd2xWdEc4b2FJakp6c0hCN015azdLT0VhKzFMRkN5WVQ3WjZTOXlMOXI3VU4vUmpqWExWczQ3c3VxZHVvSzVaUmQyU1Q5eVErdVN3N3VKTVN3cExHZ3RqSFFXU3FjV2I0RElGdlJjMG4wSitmRDJIbGx5YzlmcTI2WnN2YnJ6NFB5UjNQT21SZVlYYmNZaElQb3o1blhtTHhERGtsQzV6UDRrRXJpNkdSSzRFRERLekpCb2hSZVJBNmdYOXNDUlJIVXdKZ25wQWl6UjdYaUVxc0hNWDRRSzF1OTJCZGdLb2ZCdTduU0pWSi9oZEdiZ0Y0bVFjTGIwUzdhWFg0MDh5SE1TN2phSC91QmpjSzh3L05KSitMeXc4MUdiQld0c3VZajRHR0loQXVpOW1lNlJId0dIdzVSRnpPVVZyRkdYNHRLYkRBOSs5ZVZEQnBQZWxhTFRYL0xlbFZmK1lZQmZiVE83MGkzYWZ1bnEwVkhwK242dEpkMWx0Z216LzRIbnZ2b3Fubjk2TnBuSGVUQ1B1NVI1YURHYVRYMHhtVWRPZkI1dUo1Mkh6V3kxTUlKSUJFd050ZHhzU21Ib0hvbENkbWJxSDY2ODhyMUw5UEpzSHZyeXF3ZVYyZkMyMDlJRHI3NHFQZlNQMllJeUk3d1pRZmpGVzlVNUVYK0UwWFA0S3M0QXRsT0c1a2VUaXpEaUNzUCs5R1FXWERzRE1TSUhCSkpLSklBdkI0akZaYlVBYkVDNVJDNVcyT013aC9BZ2tjeGw5Q3dIS01JQWR5MURFWGVnQUFCRUJnVVF3WEtGbTRMSXkwejFneWFLaXU5cHdFR2lrVEk5dkF5eG1NUDVmQUFqdXlrdHFCTjhtZEpYTDZYbnVETnkwdmZ2VDgvSmNPZWt2eWo5WjZaUDBBWFRUSGFNQWpnL2h4c3F5cEcrR05CNVBhbG1aMGdvKzEyNksraTJGcHcrWFdCMUIxM3B2eXNUUWs1enFzZXJHOEJwdk02ZkpkUCtLM1FWNStNWWtFTitOQWVNR2tFUTR6QkFJM0FPZUMyeGNvS09lS1lEUm51UU8rRDNCL3lpeGtFZ2hNbExiY3J2TlZIakt6TjVLVkFvOVpySTlBOTRjQld4R09rVm92M1NLMlFmVjNtQ0hEUHhXSkNPSmZQQlc2WDNtYitCVmFRZ2Q5UUJpZ0ZnRGxIbFJ6SGRENFVZVFJyRk1DSUxQMHl3U2owR3ZmL0FMTDVqbnQ3SUxPY2MxaGR4S0RYWm1DdzVzMHU0SlB4SnFwWFN5akNjajdrS0daQW42a3kwcVc1eXRnMSszNEQwRVdwUU1tRUtQUndQOHh3UnlHeVpINWlyeUh6Skg1M3Z4NEEvLzRiejRNcjBxRTAxVU9SSHJmUnVTVUg1Ym1NZzQwTU5EWTJOOElmelhMNG55RTJma0dsSEwwdkhPSUh2UnlaVWZrclBNREtRSlJBbGlkdzRwMFd4MHFpT2F1TSthaVRVRDVoUVNsaWR0b2hWQkVjQU92dHZFWGFrUi9UYnN5SXNjd2Q4OHYxdXUwYjcvWTBwRnZJcG5KZGlrWEhuMHhBL1VtaE05cUM4YURiQmtqSjBCbDhNVXlGRVphTldralNrZUZMY2FUWWFWMlY0VE0wVGZwSzZoZkZSa3ZuOGhiNis1eSs5OVBtK3ZoY0cyd2FtVHg5b2s3ZmMwRkhweXllZWtMNDZlaFRibm5nQzI0OGUzdlQyd1lOdmI5eEl0cHNJUHo1RUNPenlhWmhSVVRUZkNMQUtkQUUyTElNQkpiQUFlRG5DaUo0WXYwRS93LzVBaE5oY1lJd0FUYXFoVlZBN0JNMWx2eUVpWFU0VjBQQzl5WmhwTjNyd2dNVmljNkhSSzFRQnMwdCtwc3RPcy9uTVh5UzVNb1paS3FPbkFHUitEWHdxUk9jLzVzTWNTMFJrQkJFRkVPeXpITXlNcU5WbW1KOGNJN09JMUpnZU5mRUlKZ3dENzdGcjhuR2RVU044SzBRRmdad3l2NTJhRzhFaWdvaTlDU2pScTBvWndKN2ZGNE9KMUkwd1R6emNzL284NlRnK1FRSWFrRHJINTByR1R5eHR1bWpEeGw1eXlENzdWMHU0b1htM2JWaHovd2JwL2wwa2NyMUlxQTZsNEdlWDcyeGN0cUZ5SXpsMktKeFNWa045NU9oWDdIOVRmTkVVYlN6R0FpOEFHVXd6RWdCUUNCeVF3NUpNaEtBMkZyZ0NhSmdYZXpWeUtJK3JEMndoZEFjQ2tVakFucWNsb1ZzbVN3VmFpbjhISjBnMGlJQllDTmh5OGtHL0pWSUo4YjJVZWVHQjVlMnp1MWIzUG5ucGlsZmIzS2FNekJUejFGdGFkK3paZStGc0l0cUsvZ3N2UEg4ckJjQUc0M1hIdWFHT0cxY3QzQmtNSFZ5ejRkNmwwNnR0VG9zcngxQmN0VzNOMnZPSXZIdVdMdWdOVHlOa2I3QmxhQmRUdXpnRU9nZ3dEUVZSRmlxUGxtWmhKT0JtRVNOZWRwQWFMQWhaTFFENUdiWUhaT2xuZ2Nad0NFWkRwaFh4Qm54YWpUTVhXVTBxK3JDV2xpUW9aZzB1aThtd0ZIdFQyWmwza2xuZmVSbjFtM1BKOXJEazg3bDArRk5iU1VnNkR5L1VjRU90SS92SVhQK2tLaW5zZUkzTXp6M3VrUXI4amV6VG42YXl1Z3RGME16b05CRmdOU1p5WW5tQkJidmhlSmJiQllOQWdId2ZEQmU3aVpoOEJISFJQRGliSVdLS29CSi9LR0FQK1FKVVRQS2tXWkRNNUtKU2pOMG5SMm5pajB1OTdNMkVpZ0xEcWdzdVByNXMzZk83ZWw1czg2UVFDVTA1MHRSeGNVUE5wam5Uenk5TjhlWDRHUXVUbWMzWXVMdG9VSGl1Y3MxajI3WU5yWTlXV04yMmpGeERRZm1VYmExeitxUCtnTTd0eC8vMHUyVi85UnI0cXlUdVNjajY4MUJ0dEVvalU0bUJXazZtaXdXeklrNGlnUzRYdUZsWG5pczM2SWZMSEtGQVFLTkpsMmtUSWNzZ3dYY01kZVpBQlJxWEVyREhJYmhLMzBxZk9DTkhGbTU4WlBXYXB3WTJQRjdaY2doUCtVNDZ2SFZLd3dYTnpmMzFkVnRhdVNkRHBSNEhOdjdybmVsemxqK3crZno3ZTFaMVgvYmJCM0hrVGYzSXRSVzlEVE0zMWxldW5UNWpYUldWMTJkQUN3L3ljcUM1andFd1o0aFBTU0lBSG5ZQkl2ZERJR0M3T2FERzF5TGJrU09hTHA5Q2d4UE9kVkwwNkVEcGZtdVlWK2hMaUFuZWhCelN5MzdoRXFTRjJyQWprTS9qbTZXUTdDdVlPNGtvMGxKKy9MOTJ1eXZOcUdmL2ZKRFl4THNROFZqMEZ1aVdCUGJnQUFoVWc2WkhwMWdFUUFmRU1ZTUlPSWJ2RTJua0VPVEl3WEdxNmVmbE9aMEk1ZFhrVlVkS25Mbk9uSUFQYnBFQlRzQSszZ25JMkh6eW5Jc1pKdy9tclYvMkxKMnpiUFA2SjdkdWZYTDk1cVZ6dW5wK3VhNit0N0p5WlczdHlzckszdnJabXhzYU5zK1d0OXpRb2lOZEhZTlpPVGV0V0h2UDh1WDNyRjF4VTA3V1lFZlhrVVdIOCtkWGxzNHZLcHBmV2prL1grTExlK3ZyVjFSVXJLaXY3eTBudXZiODZKY2NDelFydW1iQ0RBY0VjeUFDamdGNmVUNm1hMHI0QjNySDZsb2dFSloxaldBL2hoTUZZdjRWZWJqaXpPa2w4d3BSTE9tNTd4eWdjbGlIM1hHVmszVnNOdFUzYm9ocWx2VEdtM284WHVjT3l6b202eHZNbG1JVjlsN0FKUTRTNHprVnJRU0pqNGFzQUZNSFpvVFlZM1FZTTZ5cEZNRFFHSyt1T2RDNHc0ejk1bGJnalBySGJJN0RtcEhMeDBBY21NTVYwdnNRQU1rYzNDZ25HcmJMVVoyRnVNNnNqazhJZ3c5eU8yMFdPZ04rd2d6TUU3Q2ZPb2tyRXpGZzRreWtVeFB4NEU2MG5YTnhxU2lkNEVHOWhsaFVNOEYwcUpNdUhNSUkzT0hNcEdCVFdTelFZZ1c3aDdHc3BwaDl6ZVMxSldXUDlEQjNaQ2ZaQUFvUC95dmRaa3RudFZ4cWJwclphNUdlbFo2MWVNMXB1VHE4TXlrelBUMHpDZThrT3ZVclhNMzUyTGxVRm9CdTFQWEl0U0FFa01VaXVpelpUYmpTcHNnajNXcW04RlNZQUUvTlp3YXJ2b1I5ZHE0YU1xVE5DUkFXcUh3WStOQ204c0djek1SQWQyY2NkRHZES3VnVzRrc21XcXdHQWN4VkFkWEQvN0pRYmpCM2pQVEkzR0MxekNDbFd0cXJvL3pBVS9GVW1SL1NYc0lIYWZSYjltWElmY09RTVYwYzFXVmdCaHZBQlRMS0VtNG81dWNnNGlKK0YzRjMxTmdDTGNUd3VGNXdNWDRPSEdKZzNFQVlnNGh1OVNVTzY0eGFzaUR2eVNyTGloVG13MCtHQW5uWjFDNWwzNU9NYVZZV0ttL0E5Y3drY0dQYzB1Kzd4K2JOMkwvQndOYzFzQVltMlRTamZWbis2cVc3RnhNbm1tUzQrV2xUZVhsZEhmeHhwOXV1V2Jad2UxZis5VVZGTDF2U1JLZTN1ckc0YVVtd2t6alYzVmFIcHV2SC8zTDUrdW5xQXJFU0JwV01ydVVPY3VWb0RscU11cUtMTSt5TWp0RmhWa2ZnRnVJaGxBL3FzUVp4akliclEwd1MxckdNcmsrTElXVkRBb3NBZW9raTMwa0JHQko1c2FPcENhR214VTJMNXJiRERXZUhTMExCZ2xBZ1pOQzQ0MHRpb1hDQ0h5cXhLMkVkTE14cXNWRWNSbU83NHAvSzZXbDFPWUJjWkE2VVVzZHNrNTFYeU0vbS8yWFh6TUY1VTViWkk4c2JpanNLRmg1Y3NEREhJNlFtcDFyc1hJdVk1VzlhMlBQSXdCVWY3Vnp5MFBZWis4bzByTlBBcDVYZjNISDc1OXR2eDdZSGF4ZFVCZHpGaXlKWkFhNzh3SGQzYkQyNWNtckR0R25scTJkMi9XYi9xZ2E5S0tZYnBYOXpwT2NVSGhyWTg5emFHeVhwOXNGbjFsaE1UTDVaNTlDbE9mZis4NzRYY2MyajB0TE9BN01LQzdxdW1scFFLbU1HU0pXNEZ5SE81cU5pVkJrdFExcndPMXAyTFJKRlRiY09helMrRm9GaldMTDBBbUFDKzRrVEtpcUUwYmtFeTVrQ0ViK2VNTTFteCtOUVhOZ3JqanNpUjF1d1JwSDFzc3d2aXBOd2J4MEZkYmVSN2Y2NWttUGVBUDErZ213cmNkTlROQlBaRkh3S1gvRWtSRi9mY0VnMTBiLy9QWmFPSENMYkswYit6TGprdGU1Mm9HY20wT01HVlM1RWRkRnFBWXR5WkJJeEo0SXJBVThDNkk1Z0EwRkpjK1ZNcVRBL0p5c2M5RUsraEp6ZVFLMVdOWUZZRUZicE1LbDBzQ29jaDZRZmR2eGU1dnU3NTgySXJ0K3k1SUZMUmw0ams3L2tFa3JDNmM5K2U4R0ZXN2Y5Rm11MzcvdFJBaFRhZmtOdjg3YWc3K1pOZlVmbXhxbVFoSjdGUzVjUGIxamYrNWJzZ3k0RUREUURZbXdKbWhhTkZtQ0FjelFxSUpZaEVJZnZGUUZteUVsU2ZCL1NlV0xZMlJ4QnJDV29PQlQyaDRKQkRZSGNrT1BKaXhKVWRWWFVNRloxbFlTMVJGNTY1MUo4eEhMcmRpMDcvNzVsaSs4OGYrV2pqU2JJa2MyZVpSOXN2ZlhMM1h2K2V2UHlneVcrYkc3STdaZE9FZE9kdm5sYS96dlhYdnQyZjNXRk1leTJ1MjFUcHBKTTluRnN2eVZhVTYzaVZDS2pyU0NqTk9COGJqUkxsb2xBWmNLTmtZbmY2MGlIVVRadm9GeWtVRUZPcXllVGhJd1FjdUVtZjkrNzkrL0hwR3pDK2MyYktmL2YrLzJURngzdjZUbCtFYWpSZGRJL1RwMlMvbmxkbk8wL2Z0YjM1cUZEYjY2WGVVN20xZ3h6cTBFSG00N3J3TnVXSTRBbUROZWZoUFZhRGRiM2c3dlI2Z1V0V0FpQ0pFSFRKODhla2NtVFpYZzE5WFpFSzhtRklpY00waXUxZXMzZ1Q3eTBNMnFEblJwVVhRRmFGZlNiVW9PUU5aVVo1QnFWeVRJSi9TVnhKK3cxS2Vtd0l1ellFUzRIWU96d0hzS1FOV3ZJbGwwUEIwQzZJMTlpeHBPVjVTRi9rc1RrK3JMeFF5RFA5eElOekJPVWlIaWZsSzdwSXAvU2kyVGJKYTM3REVRcTgyd2g4S3djWFNyenJCQXNFVUpQUDhpYTROKzFvTFdjd0hMZ2tESFdkZXV4VHVkcklWbWkyQTEreGkvSzY5NmtURW5YdlgvU0pSQzJnRW5sS0ZKVUFJNG9sYklwS2M0aW1mRFNjYXp3bThiNXBCZ0h1U3FGRjFLTUZWOVFvQ0NSN1dVMCsyU3ZJRG1BOUIyaC9TVnBZQXduZG94MVNMSXVyVkRxbHJWb1RuUldKY1lpUVhZUXNEZ0NhRGgxYlYvRDBCVUJ5RHBqK3d5akx1L0Q0VnBVRXdvR0lqNHdZeDMxdFpPYWNVVlpYQmxvV20yYTFLQTVhdEJUZGkzYWRIOVAxMzBiSDk3eEwyb2hENUp0Wm1EdXU5dHUvWHJ2L3ErUExMK2hXREhyUHhMNmFwZVh5V1pkOWVjWVhqcGRiQ2tzUG9ydGo1L0NhYmZVVkJSVDQ1WjFZUWZvd2pUaXM1QWVjVmpQclUzU2FTQ0VhTHVOQmthcjliV0lQRXZXVXNIazZjb09YRGNOVGFtcnFhNnFMQzhwVk9LS041QWNMOHBPRUp2M2pJSlVxZmZHUmRzTnREVTIwdER5TXRrdWxZeEw0OS9rTTdpYW5zSC92VlQrSmlmZXd4dFVjdkVSYWQxWUVWTW1YSU12b09MRzZGV2dtd082UFNnN0d1SUFLUExkWkFuTDF3S1VZb0phRlVvOXlFVlhRWlQxWXJwVTdDMFp1ektuN3JCdncxeEdFYlpRVFp4S1oyWVpSUlM2M2pSK2hqSEZ3K2dDMEx2TFlTNUJzanBqSjJ1RHpTUnFBSEllVEp3Wklra3BLWCtRb0E2RC9mNUEyQitmR0ZFaHBiNWdVc3lJQXAvWTlMZyttTWhyYjd6VVB4Uk5JVm8xLytEZUM2WDc2ZXdlbFdjM1V2THdveDB6VXpPeGk5cktkMDFiQjVqamNmc2d1bkkzekhNZXNZODVtSU9aTUdUOURBT093MXlmWHRFYVE1S2lOUXpKeUFTc0xDbkJaUjB0VGJOblRZc0NRd05aa2NyaWdER3VNbGpHYStTL0xWYnpJalhrQWh5bXlDMFpuMU9IWW9pRlVsb25MZE9rN0czMUZEbzViMHE0MUVrSW5idDZWcnJQSHJLbnpTN0lhWFc3NlZLVnREZ2g5S3lRMWVxVXJHVFRsZldjOC9DcXJGVk51Z1d1UnZMMVFNbWl1dmxlWDhEdGNrbnZUS0prOC9DRFkzbEc0bE1BbFlDYmhiUUVNUDRnb0hza2RFTU9Jc2dSTkw3dUJ1TjhFRHo4cG9BQ0FSVGppUHZGQ2RRekg4QlUveHQvTFM5OHlCSGpUa29aazZNcUhaNU5CWHJCUko4SFhvQjdDT1lYSmZaZjY3R3pIS0xvaTFTRkJqV1l5Rk92TzRNWGlLTDZxbklpekFDeGtLUzRNRlBIU1VvdnI5MkU5ZU5SWjZ4Qmd6Ymp3Q2Z0d2lqSktJL2IreWJiRzRiY1FDRFg4S1oxVS94b2VYb3grWGc3elNuODhTTjkwZHNUckt0MDVHVkNNbE05L09aWUVhV1lSbTVuZXIyRTlwbUszWldoM2xPNUJsS3NVREkyQitndWtSRDRkMWxFRElON2lXTUEwM05FUFJQUFVsVGdiNUdOc3pOcW9zV3pVb0lESWdGL1FBa0RNUk1ObnpHd1VVYmdVdE1ZUmE0S2hzbzhJOTl6MThUUjk3UVdzdjJUemFIQjczTURpYm82ckhOa1ZyQzNENzg2bG1xamNmZzQ4eWtWTzRNV0E5MWIvei9VU1ZqbTY3MTd2NzcxVnJyZGVGOFhCQ3g1eXczZEluMzUrT1BTbDBkSkFDTG84ckFjbi9yZnZ2YmFkL3BWakxrWVpPRkZPYWdzV2dMUUMyRUJyUlZKNFIzdy8wVFBuSk1WOE1Gb0QvSE9JYTFhWGpEaTNEUDdpVmdDd0ZZOHUzTGxzL3YrK2cxMTFIOUlzQmovWDk4OWNQRFFWZTl5ZHkxL1lNdVdYeTZUM2h2THg1R2JkbTI1Z0lDZXhkSTNsSWRWYURZYWlxYVdZQ1RhQUJJV1lzaSttbldZd1UxTnh3T2dTbUZpU1N3bVdTNUJFZXhxa3FRSnZWcTY1ZzdRU0MyMU9acU9oMkI0RUxBbXdpSmt3R2UrVEFNNm1JTjRscjk4NG1ERThnemJOMlp3WjJmVVhsMk5VUFhzNnNhcFVaaHdaWEV3Mys4UDZhbURVUVFhRnVYaXJwSmYyQkp5WStwKzQxWGVzNHJlbVhacFIxdG1WZTZNY0ZaTHJsYVg3RWt5MmFyWGxtYlVCRFdSR1ZubmJ4TTFYbitHOXRGYkhvYXhtKzd0NnJwM2s3emxobTZRL25uaWhIVDZCbVovcGthYm5PRVIwaXd1VzBaS2JrQWpNbnBkTVZ2Z1N6ZnEzNmpHL3QrZXdFazNIRjcvNnBWWHZ0clhSN2JyWXprS2lVMjFhRHBxaU5hQ2s5S0FIOVBBR1EzVHA2VkFWRWRyQkR6THFCMTFORHVlUHJXaERxNnFKbnFVSGFuWHh5czZ0RHZKbGhpT1FtbzhPcXVTWmNvNkpweGNkdmpTeXFBbnorRk1Wc0pQWSsyOHNDM1RIY3h3ejYrNWdqcHFhV05DM3ZuRFY2OWo0eFU3L3AyN2EvNlIxZjIzdVd6RjJSMDFkVTRhZEJxYTh4cW56ZzdrNUVyN3htbmtGNi8wOU1tKy9EYXc2MnphZDljUmJaMkZzZURGREUvaU14WjZnWTFVNDhCeHhmWkpWWUVGNzVYZGdraUpuTzVTeDA1NzdrcUs4bk5EQVkvTEg5VFNWVE9scTRzR1k5S2RJZ2ZyK1BLTFZhbWdSeEpyWHpLNzFBWXZCZFd5ZndCVUd6SVdQYlJwNDBCTzJMKzhiZUhxNGxWYlZqeDMrYXI3RytTT3J0ems3Sk43QjY5c3FBMHRhWjI3cWJDOWMrVWpXeGJmWFMxajNNLzk3b3l1N2pVTHN5c3RabnV5eVc3SlByUnozYkhGczJlMkVvK1A4L3p1bkswN05uWTF0R1dZckNrcFRtdGcrNnExUnpxbVY5ZkorU3hHbDRDdXpBVmR5VWFSYUxHQWxRNGVzbDZpRnBMaVBwMEc1V3dVOXB0bzJxSlVrbUxkQXBNZzNUZ2J2RndaelZLazAvOUpIYzFCc3YxUDZiUWNxZGtsTkQzWlR5ZGRsZ2dNcGRmcHNRRTFScXR4S3AvMk45RGxIYlliaEVnTEpxU2ZMQVlLODFFdW9NSUkvTVZLWGlvc0xKc0FsK1Ixc2JHeHB2NkRWMS85b0Y0T0tCUVc3VGx3WU0vbXhBQXpzdkgzYjczMWUrYWdPdDJSUFVjdnYvd29zMHZCMVRxWUsxbWZDcE81dWttTnY1bFhaZ3hwT1oyeE90a3dDdnJvWEJPZ2pnSVU4TGk1YXVQUTdoNllTNHQwMUZDYWwxdWFKTjNhVE9kMklkbGVnMHR3MlNyNnZWVUpoaWwrdDhmSGZxUE9kZmhxZHFzOHo5RnZZWjd2MHZwaTcrTzVBUU9MQlJMODArWGd6OEo4T1JMZklmOXFnY1F1Mk1Lb3dkOE5rWW5VVHdmSGpWSUd5TEUvZ2tvQ1JBeGpZei90YjZJTnhxVExhUnlGRHF4MEpNY0lIU0l3NXlvK08ydXVaZWdwNjd4d05yZVBZaDVNOGVyQlZVOGJxelA5d2xQcmRvd0oveWtCMXhSbXhzaFRVOXorQkxvL1pwb0xMWmFSQjFtdmpQd3dLb0c1MzBMenZtaTByam83VGVTSXFIUmFFWWpTZENmcEdYa3BVWVo4L05qRXI2b2lBb0tqL3cxeDBLY2REKzdZOFFlMGVBTFJZNUsrS2RMcmVFbDFIT1ZzR0pWK25FZS8wcTdjZXJ4TWVuVkduQVdkSC8yeGxuNHJVbUI2cStTSjVYOGJwQmdneDMvR3gyUGcvQ1ZjRzh1N2FvRUgxd01QU2xCRk5BSXNZQWtMUkNDYTVGd2cxMG5Td1JKVXBKS2VJTm1KMGVBc2xCS0VPMTI2K3hQcUV1Nmw3Y2JTdlRObHRhVjllajhNVDBra2ErVDMwcTB4VWxZeGhURlMxdUtqY1J4L0g5RGlWM1BJU1JvMDFCd3kzcUNoNUpEV01yOVZ6U0ZGUENIVGlGVmJaWS9HanJoMEkzMk1SZW5JWUh3dUkzTkkwaWxGMXorUkdhY2JoOXV4Z2VZYkQ1T1oycXpzQTk5VGgxYW45QnZOa1U2eWEvaWx5RTV5YjVJUmtmNXZUdTd2NStMOS9URFdqbXlCc2dncEFYTXgvcHBpYkNXcE9EdWI2QWROMnpCVkdta0l6M3FHOUZoN2dvSTNTRnV1ZjdpSThnaXZnZC9kUTM4M0t4b2t2OGNBdEZvYmI4Mkt0VkRaa1JXU01LWHliSm8wMVY4ZC85bFowcEQ4OC94U1QvRDdqK1hmNUs4a1cxazJYK0J2MlU4aExydFExaVBDcXVsUmx4RVNDRWp5Z1d6RTdDTlZzd3RobkFzNXcra2NoTnBIQk1Bd2tBYlFPcFVnNTAxSzE2TFNaOEhzY2V0d1JIRGF6UFpVbC9DM3Z3bXVWTHZaNWhSd1JPZDJja1BtMUpGSGRIcVRReFFOU2ZoUFVtYVNRUlFkSmtqajJsTE5NSi9SVDZVZDNCZWpIREtnVERvZjYzZ1dCQU9NTWc5dWJGM3VJNzArNmNlY0pOaHk3dzVuNU9Sa2tEL0syeXJPeU9ieSs1RUpwZE43R3BIYTNwVm1VVytHbExwak1GWnhZM1BUYkdsR3MzU1Z6ZTMxcFpyeFVtNWphcm9qWGZlQkljTVZ6amFNeXV2UCswbjhZMCtnQWxTTlBtMDY3Z0lubmV6RUdyYWlITkJkQ3N5YWJYYU1PU0xDRWFVTE9CdnhIT2tYR1VRc29HTEVhdm9RNmQ4bGlEQzNSU1IwOXpJeUZIVElkeTQ5OXdWQXJwL3VxazBaam1qeDJhNUNzWXNBOEt2WEVGaGVXSWhRWVhWaFZWa3AwSmJ2RHdRRGtZaGVYZnBQaEoyeG5nSmdHaTNxQ2JGdU1LWDcxMGFXRkFrUUR6MDkxVS9VTVRwbG1YSHVjK2V0L3RuaVQwN2Vmc09HZ2FZN1o1dU1YcHMrT1ArRjN1ZjNyZTU2NVk3cHQ3YXhKMzV4ajlUZlJ0eklsSWJHMWhtWGRkMTJjK21DM3E2Y29MWW9MY1dmbWxjb2NXMExaM2ZjczhGbWwyVVJCRm0wOEpuZ09zclFKNmRTSURVUjFhelpqOVJjTGRCQ09xQnBhcFBiSXREMFVnMmdjak5nL3BtSHlzNVd1UXFwRjVFRzdWd1lqemhnZE45UHVDU2FQZGxvRkJzTVVWMGQyd21pc0lWQ0NJWEtRcEdDUE9JVndmcEQ0T0RsRnRFeEhVT0tSTVltN2VOYmJQQTAxNlZQNzNocDgrYVhkcXk0dDhIbHU1MnVQZEZWL0dkdytvRzJ0Z09kbllQVHBnMTI4cG1BQUl2djJmYkI0Y01mYkZzOHQxMzI3RndLOWZ0Uys1RjE2NDYwTHppeWN1V1JCY1F1ZHdQdlhXQUhaNjB2NVNiVWwzTC8xL1dsY2NEOVgzUTVPcnE3cytmSXdvNURQVXNmbkdVMXU5S1RNOXZmNzcvdWc0c3YrZUNhemhzanZtejJoTG9RWGJjOHN2Q1dudDZqQzZ2S1U3TFQ3WDU3N2ZSZEgxNTExWWU3cHRUV0VqVE9VSm9PeGZUSm1jeWdNK29UZVJLRkpSSWZhN1NUNlZQaTBHNXFlVUtpdVNicUU4dHphMy9DSllvK2pSdU5Zb05CbitLV1BVR2ZmS0ZneEsvcVU2eU5QMVNIeDlTc3o2aFA3R2N1MmtrSGV0Unc3d3Bac1o2K2xLNVlmQys1cUNaMVVxMGkrdlRqQXpKQ2FKKzdXTmFyZS9BQldaOWtUWksxaXZEK0lQQitHdWhUSmtCeHlKblYxVW5FdzBrZTBiNUFycGVzd09TMjBKNEZSSi9OOGtKVTg0YTlvWUFmTHZTRS9UNUlpakpJem13bmtlS01LbVRFb3BlUWd0N2NxQUhra0NmZWRlUFNSNmViakg2Yk5xL2wzOWJmL083bVMvNXdZUHZQMDVtVjFwdjNzQ2UyL1hhL3ozbmowY0t3dHN4cXlyS0ZpN2ErZjlOMUh3N2NzSFBUQlFOS0R5dTNoQStpVW5UUlk0RFJ0R3FiY2JiNlFJWUdNeUpwNzJRaHdHTnRydzVydFFFUUtkRVRKRC8yRVEyclkrRWszRktMKytJWEpZNmtqMnpBTDVVb0RaRittNTdBWHJVSFBneisySVhqa09RTUszdlVnTzY5cklnMUJ2U0czUnQvZzVkUXVIS3YvRW1hVzEyK2wrbmk1c3REOS9IQlVuT1JQcm1LTC82UGpWUjRMNm13ajZINGRmczlRN0kvM2kydDRRNkJEQXRSQTlaRjlVRUdDRWlqeS9LeUVlVWlVRm1lNVFaMUd0Sm8zS3NWR05vc0pZcnFzeWxLYjJFK3RZc0FyYUFtWHFJR01mbjZiblMycTRsVlJkU3JrWWg0VnVUN3pueVhoR3NoZ0k2L0xMYUdSYlZ2NGpYRXpPeEZSUWdWTlJUVlY1YlRWdU9BUFJBb2t5T29YVmxPVlhMZFNWcHo2OVNuYUNacFhMc2g3clpYUDcrLzU2VUZZWTA1ck5lM1B0QjIxZFU3WHBBdHNDM0I4TmdUTWU4OS9OWkY5eS94ZW96aGxMUUt6cG01dC8rMVd6Zjk3dXFyZjdmcGNOczFYVjNYdE0yNXBxZm5tamxFaDhGOWNQdkI5OVdnRFVTSE9WV0hBMGlqMFhiTEdxdTJIK2FPWDM5M1JIMUViVFZJUzdIRzVJTmt6YTFCVmZKQ2RDUVExQ3MxVjZWVGRFTGlFcEdmUGpyaitqVHVkVTI1ZjJYWDVZMXo0NG5aMHJudEN3NHRYaG8vTUpmdW42VFJ6ZGk3dHUzd1Nza1pTMkgrdlhQZGlnZldTNStvQitSb2gwWkhxVTNQNXVlbCtOQmFoRklZdElhRHljUHhaNlUxN0g1NmZEVjkwblFOZXBIaTZta0sveHJRdHFpMkxpL1p5R0ZSNVdFUTFGUG9CcThzQndSTk4vQTAyS0xYY1F4cFUrc216Ny9RcXIrZnRDTnBCTDd2TEtQazJuVURxcSt0amhBSEFJbDloRlE3QW1QVFhkRjY1a1Y5cTJuaWtrWXB0ejdHc2NZZlQ4Mk9OOU5zMmt1Mjc0TlgyVGtybmhqV1NPL2o5dXBZWnovT3VlT3FzVHowQkllL3dPMngvSEJFa3ZNZTlBandxUUg0NUVDelpPYll3Wk56M2VSWm4wQUxFd3Q0QkRWWjRTQXA1Yk5yRTQvTGp3TTVVRHFoWFg0Y3lIckdLaWh6cHd2VEJIYjRHL25aR09scitya3VNVGpGeEU3eWtXR1kzK2ZndzlyUktlcERUalZPWmNCTk5Edm9qZ2FyV042aklROUxhSHRwUVNyWVlrZ1NlWTVoVUxkQWxuVGxOWFRpZ1hMb01GMHZhVUxJYlpHdjZVYVRYeEVOazRWZ2RTeTF1OGxIZ3JOSmc4bTJvN2FtMlRPbk45UVNnd3FTLzBaVkVTZ3NIR2Mva3gyYlREMWM4b1BvOW5MRktMblhnR00zK2x6NUpZWHRoZlFScE91Vkx4R3FKWjlTSzZNbUNLTnlMNTQ1ZlkyNTg1cWFaUlgxaW5vdzdUTm1MUHJaU3VtNVNiOUNGTGxhM2x1NXZIdHA1Mk0xQTR0SFBwRjFoZmlrRzBBV05laHV5czNIS3NrYVFyT0RmSW94U1RoSmg3U21WNmRsaUwyTTZ6aFR4QkFpWStUQVN4SW5HQzliMS9qUjRPN2k0MURNQ01jTjYxUmRXWFZFOVdYVWxmMVBmSmpDYjdia0hGNk1BdmFUUHRmVVI5YXdKODd1eEZSK1hyem1mRGt1WHdiWXFoSDRPS0hHbG51dUd0dlpuOWhsdnY1dzU4NFByN3lTYm5zUHRiY2Y2cFczN0lrZEh4MDQ4TkVPZVh0NHdkRVZLNDR1a0xjMGI0T2N2d1htazQycTBHT25RbHBHNUZTY0RZa09ReDVWMVpLVUlSZ3JTbVhIMTc3Q3NlaGVTTWNtUkhNRkpaM3hzbWplbUVCK2p1RWtwT2ZrSUpSVGxWTlpVZ1NUelNMUzlzbTFLcFV4NFhNSmRueHRLbDBCekEvRXkvMXJFdkQweW9TRURJQ25qSm1sYmVOOUsrRHB3Mk16TWhsLzdlRHVpL0hWUStCWElsOG5nVnpaOGVwQ21FM2s2OW14MXJqTHh2SDFITU1uOHRWSEF0bWtVR2s4YzM4U1NGb1RaKzBEYXVwN0JuejBZMnhaR2g5UU10L0RZek1UNG9mSU0wdHpnYTlGNk1Lb0RsUkV5Q09MWlFwbnZTaWhacVBVczRKamlqWU9BTDZKZFIzNkhGZHVDeDNmamNhUDdveUNIY0pQRmNxK3hhYVZuOGlPdzNzampnUDhTWldPS1dVL241Nmx0UWFURGNXVlMwNXR3eDBVMU5PMStXTzd5ZllObjZ2b2lsdWEyQk5aYVNGeldwWEdzZk4zMjE0Yzd6NStzL2l5UnBuK2srQS9Nb0QrWmxMTGE1eWtscGViVU12TFBVc3RyeGsxelp4ZVd2dy9xZVhGWDlKd3RtTGViK2lMR1hMdjN0VzdJVHZMdTJoRzcwVmw3WjFkRDE5eS90MTFzZGN6Qkg1eDlkWWRlZG4rcnBuTGQ1WFIxelQwL3J4YVhpZ2diMldZTzIxR2ZXYVdRWjhrNmxOVFhSdVhMTmsvcDdZdS9scUduc1h6Wi9yeWpQcGtVV2V6eWk5bnFJN2trL1VEakxZUlA4c05vWHk2N2cxa1k1WVpGT2l6YlN4OXRrMXAwRXRZQmNsSGVRRi9tRHdFckZiejRnOEIyeVkwMkpiRkJFMFdudkUvZlBoblZOZFh0NjJZZG5pRzBlUkxNM2hibjUvM3EyT3ZrOE92SzIxNHRDOUlPdHkvdmp4ZlY1Q1JtbWtwYm5qa09CNmdXcCtuMWlFYlllNFhzN2RDWm5udFk4azB6TXJxblVGV3NqaFM0ZU80WUFzL2JyMkR1SXZBeEJIeU1nUS9aczNDTjJaWXdtS0YvRVMwc2d5WlFwUGJZaG5PeEhneXlTckZHRHlyZE1ySGpyRy9pYTFSUUx4VUU0UmYrbHcwckY1THZuekczdW9KamhRUkpyaURBMnZPaDVDS1A1VVZmK1F2TktCaWQ2dytSZDZ2QWJ3NVV4MHgrTCt0SSs2RUNUVkl6eGdyaW92S2txWG42K1B0WDRQWWhDMkw1TDVDbHBaZVJ1emtWU0hNbDdHYTUxYlpZTlU2SXN5ekhGVkhLL0pEUmxwSW5MUkdHQ3NpeW4ydy9nRE1PVFN4UUtpdTlrOVdJcVNyUk9OS2hHbS8xb1ZEdWNWSlIzK1dWSm9iQ21sZk1OT1poOGgyKy9YM2lTRlBnL0hldzZ2cFFiTktUc0RsOGVFVFVxdlA0d29ra1BVay9wMDFJMHZLWm1iR2FtUXpZZjZYQTMxbnFSTUcvNWQxUXYwNTY0VDJpbkYxd3Zmd2xGSnFoYjhnMjU1dnZtNkx0NGFWNEJuUys3UGlaY0xtZC82OVFxNm55ZFJMcjBnUHhpSVFJMG14L1FXNFF0My8vUE9ZSGtxcnFSNFdrRjZCb0lVMmlRbUtXRlc3SXQxaG9JMzVWTFFGS005SEFXcGlDUjRiR2ZxOFhFVTlVM0VPbmF5WDFrN1o4Yk5OL2xCWno1YnVHZExCaGtURnpNQ0d6a1RGSEg1eTM1RlpIQTRXVG1INThyMEhtTGRpb255TEtZbko4QVJNTmdOb0NLSWI1SDV2djF3ZzdJOC81MDNMZzhFeHozbkx6MjhHNGtQSGxCS0Q1MzRtZk9LNFR2bWg4RW5LamhNZkNSLzdrT2MvWE1ranQrSFBsTEtqalpRZFYwcFZTdG54RGNJTWwybGsrUU0wWkJBT3VKT1p1MjRrMy81RDRjRWowa24yai94U1NDRFdSWFhsa09RYTZMUGZjajdzaUQzeVRSWkFtZFYwQlozTW5yeklJK29scjVSQUhJLzY0c05BNU9UQk11SkZNZE1SeTAyS0MzT3pNOTBaYVFFeDlvUWJZQWNQdGdtaWxVVFhaQ3lYYW14S1RUWFNnT1Zud3VVM2tzRitJYWE3N0FzZzVmVUR4UnpMYjlxOWF3dlc0TDNVaGI3Mk1hTm5McitlN0I2NERQUE1SNi96UzBtaHNYcjdxc2FMajBWMHdlczIydlFEaHZUZFc4blJSeC8xbTdjN2s3WnNJVjkyYmJYbzVyZ05RMlRoRURNTzZSanpDTitQREtqZ3A3MmZJZjRpQ0d0Q2l3dHpuVThPOG55LzIvLzlnNFRqd2p3MXZ2MWRPc2s1S005WFIzVjVjRDhyaGdBZDR6a01ZY2xMcCtRSEo1SDZScDRjVHVVNXJkN0Vod0ZlNjBUeW04NVl3dk5rbWVmbGtVQjJJRnVVVnlYR2NSajJQVGpHN0VRT2sySVpNTDlBTlQ3ODNVY01qeTg3UUhQdHk0SEpIOU1uZ3E3ZEM2emZzbXYzSnA3bGlnZldrMFA4MHFFaGczdU96ckoxRjJIcmxpMUp6dTFtLzZPUGtpOWJkNmNiQnZTMmpkY0ZkWkZqRnpldTJsNHRWNEV4dWdrL3lKVXpINFB1TjlQNjZCUURzRGNUbElsZ09wNDg3emNJSnNTQVRnNlNSeXRRSjJFQXFTZ1NCaENTRVgxOVNSQUZmSUd3ajNaOUszVmkralRCR01neXBtT1BGQWp4aDZ1ajFZM2hCVE5UYkRacnBsaDRSV3YxcXFtVmMwSUpCNWlQYzdKOG1mTlRUV2xPbzc2NUt5Zkw2NDE5SVhuT3Q4eVZiRWpwR2EyZ0ZPUnhwQUxGQXVBaWZZZUk2VlR5V2daMVRKTFcwc21lSTdWZGNtbFQwNlhOelhRYm5oYU8vZWVHWW9kaHV6L3hGTENFRy8xeDFNZjlIblRaaFFwUksrcEFtK2o4Vm5tQXcrMlkwMDdGZ281dHRtb1paZzU1Qzh3K1lEYS9EM0ZhblpiVERaSW5EcEVXbzdWSXk0bmFUc0NnckU2REJWRW45Q0d0Vmx5QlJLMDR0NjJ0cUtpdG82MmpxTFdvWlU2ajN4OUtTOC96KzRySjBnK2xpeml0c2dnZ3hIaWJwTnhGUVRhQk1TL29Jb0l5S3k5U1VKOTdvUnBZb2J5TDBGVHFUMlVaazhVcVRjdkorZFUxeGlSN3NzSCtvOWFRYkxuVGFtR2FqY1ByUmEzZGFqU3lONUhQalJhTHBTdkQ3WFpJTDF2U0JRMnVTL1pZWGZsZGIvQWZNUytsbDBYd0czTkVwelhab3QvTm0wMGp2MDUzMUZ0U05TTy81WndXczFuTEZIUE9FV2VhMDVsK0ZPNWlPZXJOVEU3VjQ0RlVzOE1pWFkxMTByZWdpTURiTE81MWhiZkwwQ2psYkxJSEpEOGRjeUlqYzFWR3JUVng1bXJnbkY3azlPUlJLcDFPdnptQnlVamt0R0lmMGdtQ2JoSFM2WVFlSk9pRWRnWFcxcDdoRnFKZXQrdmM5NGhPVFJTdnFCRTV6U0RTNkVXTmZ0ZFB2Z2twM1JVVkZTMHJXdHBKRXRic2NsblNodit4cENHazBVc3Fnc283VG9TeEx6bWhqaXBaRG9BL1dlb3JNcklsZjFZR3RoWGxUcTBQekhTQkFtU1lpbmZYYmRvOWRlWXIySkRobmx6NG04Y0pmL2dXcTNWbmZtMm0vY3VzNmRuRlZhYmtoVGFyMVhaSm10NGIyTG9pdXI3cW5pbFdLOWdYc2xEN3VnQ2NiUXM2SDIxQzMxRXR5Q2pBQWc4T2dKc0NTVmNLQk01TldHdGNEWXdXd01PbmdqUmIxUmVyYUxENlpoV3RVV2ZVNmdaSmh3WXZpSHc4b0lJRE1US296NFNOMmlSalp6TFdHYkErU2FjbkI0eEpLMUNTTVdtdUl6by85cVlXRFlBTkRRRWI1TGE3SnIydDVpZmV0ak1hYUFYY3RuRkQ2L210NTYzc1hiNjBjOUc4amxrejYrdEliQWtFU2lNQmU0NFprRnpNZ2RIblM0VXp2T2hsOHZlOEVFR2pDZS9xTXlka1daUDRBclkwRlMvZFZMdThvdTZLeStwMkZLZUtSb2VvemVuSmI1cmJOaWN2WURaN1p6Yk9tVEt0a3NxKzZPSWFWa2NWSks0b3h2d3V5eVRlWWZRUFBIOUJTVmYxcXRMVWVmVXJ0emdkT3BzaE5jemEwaXRLS3ZJamFhNmlzdUtTdERJci9GdWFvWFc1UnY3c05JOVJHK2tZY1ErVGVBMXBHZGJKY1ovV2F3QnZaaExNck1jTWZSUmYwUUMxOEJDTUxZUG0wM2ZxWkNLM1AyQVBxc1dGeVJnY2I3NWE3enIycTNuUHQzb05hVDZUY2NiaGFTdmFKQmtXU3dRSkRtODYva2hEc1NVek5hTkFsMSsrdnArTnlya2FJM0p0eksvNWVRQmx3bFNEbGZkbmRTYThreTRCNk1qaGRjelQ4c2V5c2lvcTRJK2Y1d3JzQ2Jqb1JxbEZ6d1o2SFNoTUY3TlZDaE5MS09ldW44U2U1M2xnWFAxa2hIN01qeWZQOFJVanVPdi9BMkEraGZ4NDJvMlNVV3ZiTUJTRmo5eTBZdzhOZzIwdmZaa2UwMEd0cEYyaE5Ld1FBbjFab2Mxb0MzdE1NMkc3SkpFanlRK0YvcW4xUjR5eHQvMmd3WTVVclV2RE9tWmo2N3ZYOXh4ZFN3THdBbDhoY0g5OXh2ZkVBcHZpUStJTXowU1ZlQTF2eEpmRUxid1dQeE92WXpOVGlUZndLaXNTdDdHVjNWRWxXczhaZllzT2dRVzJoRXFjb1MwK0pWN0RrVmdrYnVHdCtKRjRuVDR2RTIrZ2s3MVAzTWE3N0JaREdOUzRnVVdGQWlVOEpIYlJSUS83cEhObU5NZFExY1FhemJmRVdlUlovQmJZNEpvOGllb0JLejExaG5uSHVCTmRQV2R4T0lUaVhWQWJLaHBjSWFmSzBFbGh3ZGd3cnpuT2w2SXhsVUdyVnJyNDA4TTJYVEEwOVkydGl0TEwzVzV2WDU2WFdnNU5ZeXR0NVptdFpwcHZjNjBuWGc0YVh4cnJaS2Ywdm5hSFNoV1ZMNXVyZkdKbWF0RVlyNXQ1SE1aMTdWU3lpQTdiWVpZbkZ3S1BaZ00rTWxld2Rzb2ZzQXgxMFV6SGhEMDJHNWIzQUgyTWNNRm5RSHJxMTNaV2ZmYnlidStnUDdvWURmckx2ZTA4K1A5cnExYThIcS9QZzhObFZEcXFERGRDTG5XTVMyMWRaZVl5ZG9ILzcvcnZyZjQrRi9lbnd2RWtCSU9hT2NjcFF3TlRqdUVjRmZ4K2ltT2NVTVJkNDZhNWlhMXE3M0pYVFhOakMzVjZmSUpmMzJLektIamFaWXJYVHNKZ0FFYlBYMFlSbkF6RkxXNVJzY1ZaVjF3b3VBVW5xS1V4WUM4SU5RVmp2TlZuODdXTXBva3gwWE56dnB4OFNEaDhmdkQyTGNGZlRLZEt1SERqd1l1TWp3YjhCR2lraVdaYWFLV05JQ0hDUkdpbmd5aWRkTkZORDczMDBjOEFNUVlaWXBnUlJobGpuQW5pVERMRk5BbG1VRkJKTXNzYzh5eXd5QklheTZ5d3locnJiTERKRnR2c2tHS1hQZEprMk9lQVE0NDQ1b1JUenNpUzQ1d0xMcm5pbWh2eUZMamxqbnQwaWhpOEMwbTRoRnQ0aEZmSUlhdGEwbXNWbzJicVpldlpUcFJ0NHlINDIrb3ZscE1pZGRNdS9UdktqNVhYSjFQVGZJNVZSZmtaNmhjTlJ6VlFBQUVBQWYvL0FBOTQybU5nWkdCZzRBRmlKU0JtWW1BR3drUUdSb1lraGhRZ0w1VWhIY2htQWNzd0FBQW4xQUkxZU5wallHUmdZT0JpQ0dGSVltQjJjZk1KWVJCSkwwck5abERJU1N6Slk5QmhZQUhLTXZ6L3p3QlNoY3dXWTJCMmRneFJZQkR6OWZjQmtrSCt2a0FTTHN1WVZwU1l6TUFCWW9FeEMxZ3ZJMUNFRVdnbUU5QStCU0RKeHNESGtNekF6Q0RFSUFxeUhVaUxnOVdtd05sTURDSU1ZZ0MxdGhNWmVOcGpZR1JnWU9CaXNHR3dZMkIyY2ZNSllSQkpMMHJOWnBETFNTekpZOUJnWUFIS012ei9EeVN3c1lBQUFGc2FDMnNBQUFBQUFBRUFBQUFBMWFRbkNBQUFBQURabklQaEFBQUFBTm43U1VjPScpIGZvcm1hdCgnd29mZicpO1xyXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gIGZvbnQtZGlzcGxheTogc3dhcDtcclxufVxyXG5cclxuQGZvbnQtZmFjZSB7XHJcbiAgZm9udC1mYW1pbHk6ICdDb3VyaWVyIFByaW1lJztcclxuICBzcmM6IHVybCgnZGF0YTphcHBsaWNhdGlvbi9mb250LXdvZmY7Y2hhcnNldD11dGYtODtiYXNlNjQsZDA5R1JnQUJBQUFBQUVDb0FCSUFBQUFBZFBRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUJHUmxSTkFBQkFqQUFBQUJ3QUFBQWNpVHYwSGtkRVJVWUFBRCs0QUFBQUtBQUFBQ29BL3dFMVIxQlBVd0FBUUZnQUFBQXlBQUFBUUJhYktKaEhVMVZDQUFBLzRBQUFBSGdBQUFDaVo0ZHl4VTlUTHpJQUFBSU1BQUFBVHdBQUFHQnlBcEsyWTIxaGNBQUFBeGdBQUFDdUFBQUJVc1J0V3lKamRuUWdBQUFMWUFBQUFENEFBQUJzSjdFUlZtWndaMjBBQUFQSUFBQUc4Z0FBRGhXZU5oUE9aMkZ6Y0FBQVA3QUFBQUFJQUFBQUNBQUFBQkJuYkhsbUFBQU1kQUFBTUlrQUFGcTRpSzV4T0dobFlXUUFBQUdVQUFBQU5nQUFBRFlYbWhwUWFHaGxZUUFBQWN3QUFBQWdBQUFBSkFzUEFlOW9iWFI0QUFBQ1hBQUFBTG9BQUFEWUt1Y1pQbXh2WTJFQUFBdWdBQUFBMGdBQUFOSllla0pPYldGNGNBQUFBZXdBQUFBZ0FBQUFJQUhIQWhGdVlXMWxBQUE5QUFBQUFjSUFBQU52K3g5cWduQnZjM1FBQUQ3RUFBQUE3QUFBQVVsa2ZjVHljSEpsY0FBQUNyd0FBQUNpQUFBQXZWcXgzenNBQVFBQUFBTUVtd2liaVFoZkR6ejFBQjhJQUFBQUFBRFpuSVBoQUFBQUFObjdTVFQvMnYzL0JQSUZwQUFCQUFnQUFnQUFBQUFBQUhqYVkyQmtZR0J6K092Q3dNQnk1dit0LzdkWVBqRUFSVkFBQ3dDb0dnY0dBQUVBQUFCb0FHNEFCUUF4QUFJQUFnQXNBRm9BalFBQUFKd0JGUUFDQUFGNDJtTmdZVG5EdEllQmxZR0IxWmpsREFNRHcwd0l6WFNHb1lsSkM4aG40T0JrZ0FGbUJpUVFHQnJveUxDQVFZRmhBNXZEWHhjR0J2WWNaZ1VGQm9iSllJVnpXQllES1FVR1pnQjBsd3l5QUhqYUpZNmhpd0p4RUlXL0FaUFpKZ2dLZ2tVRm15QmNFL3d6Vm9OQk9KTmdFeEdMOFdCdDV4b1VZUzJhQkZGazJ3V0RXY3dIQnliRDFwOVBieDd2Rzk3QURKTTQ0Nk5LblA5dFAyeXBzSkE3ZGpLeklrZEM4K1NJZ0RGN1p1em9zMkhPZ1RWVGk2eW5IUExGaGF5THFkT205bFpEVjBKYVlvMmsrS0grc2srVGlvdmRuUXdGSnBhekVwRzdXb3BQMGd6d0dMRVN5MkpBbFcvM0VMdmtOUnZvTjArM0N0cXV2N1paMmgrL0RMbTV1eFFUS0srZU44azlNUUFBZU5wallHQmdab0JnR1FaR0JoRHdBZklZd1h3V0JnTWd6UUdFVEVBNm1xR09ZY1AvLzBDV0FrTXNpUFgvOGY5SC96ZENkWUVCSXhzRG5Nc0kwc1BFZ0FxQWtzd3NyR3pzSEp4YzNEeThmUHdDZ2tMQ0lxSmk0aEtTVXRJeXNuTHlDb3BLeWlxcWF1b2FtbHJhT3JwNitnYUdSc1ltcG1ibUZwWlcxamEyZGd6MkRvNU96aTZ1YnU0ZW5sN2VQcjUrL2dHQlFjRWhvV0hoRVpGUjBUR3hjZkVKREFSQklnTk5BUUFWVFIrWUFBQjQycTFYYTFzYnh4V2UxUTJNQVFPU3NKdDEzVkhHb2k0N2trbnJPTVJXSExMTG9qaEtVb0Z4dStzMDdTNFM3djJTOUVhdjZmMmkvSm16b24zcWZNdFB5M3RtVmdvNDRENTludkpCNTUyWmQrWmM1OHhDUWtzU0Q2TXdsckwzUkN6dTlxank0RkZFdDF5NkVTZVA1ZWhoUklWbSt0R3NtQldEZ1Rwd0d3MFNNWWxBYlkrRkk0TEViNUdqU1NhUFcxVFFxcUVhTFNwcU9Ud3UxdXJDRDZnYXlDVHhzMEl0OExObU1hQkNzSDhrYVY0QkJPbVFTdjJqY2FGUXdESFVPTHphNE5ueFl0M3hyMHBBNVkrclRoVnJpa1EvT296SHEwN0JLQ3hwS25wVUR5TFdSNnRCa0JOY09aVDBjWjlLYTQvR041eUZJQnlFVkFtakJoV2I4ZDQ3RWNqdUtKTFU3Mk5xQzJ6YVpMUVp4ekt6YkZoMEExUDVTTklHcjI4dzgrTitKQkdOVVNwcHJoOGxtSkc4TnNmb05xUGJpWnZFY2V3aVdqUWZERWpzUlNSNlRHNWc3UGJvR3FOcnZmVEpraGd3NDBsWkhNVHhNSTNKOGVJNDl5Q1dRL2lqL0xoRlpTMWhRYW1ad3FlWm9CL1JqUEpwVnZuSUFMWWtMYXFZY0NNU2Nwak5IUGlTRjlsZDE1clB2MVJNd2dHVjF4dFlET1JJanFBcjJ5ZzNFYUhkS09tNzZWNGNxYmdSUzlwNkVHSE41YmprcHJSb1J0T0Z3QnVMZ2szekxJYktWeWdYNWFkVU9IaE16Z0NHME14Nml5NW95ZFl1d3EyU09KQjhBbTBsTVZPU2JXUHRuQjVmV0JSQjZLODNwb1Z6VVo4dXBIbDdpdVBCaEFDdUp6SWNxWlNUYW9JdFhFNElTUmRHVHF4RWFsVzZiVlVzbkxPZHJtT1hjRDkxN2VTbVJXMGNPbDZZRjhVUVdselZpTmRSeEpkMFZpaUVORXkzVzdTa1FaV1NMZ1Z2OEFFQXlCQXQ4V2dQb3lXVHIyVWN0R1NDSWhHREFUVFRjcERJVVNKcEdXRnIwWXJ1N1VkWmFiZ2RYNmVGUTNYVW9xcnU3VWE5QjNiU2JXQythdVpyT2hNcndjTW9XMWtKeUVsOVd2YjR5cUcwL093Uy95emhoNXhWNUtMWTdFY1pody8rK2lOa0dHcVgxaHNLMnliWXRldThCVGVaWjJKNDBvWDlYY3llVHRZNUtjeUVxQ3JFS3lCeGIrdzRqc2xXWFl0TUZNTDlpRmFVTDBOYVJQa3RLSlFjU3JHR21RUTIvT2ZLRlVjc2k2cndmWjhqVVlNaFdNdHFzeDU5NkxuUEkyNnJjTGJ1dGVpeXpoeVdWeEI0bHAvVFdaSGxjem9yc1hSMVZtWjVWV2NWbHAvWDJRekxhenFiWmZrRm5WMWc2V2sxU1FSVkVvUmN5VFk1Ny9LMWFaRStzYmc2WFh6UExyWk9MSzVORjkrM2kxSUx1dVNkNXpENyttL3JLenQ2MHI4Ry9KT3c2M240eDFMQlA1Ylg0Ui9MSnZ4anVRYi9XSDRSL3JHOEFmOVlmZ24rc1Z5SGZ5emJXblpNNWQ3VVVIc2xrZWgrVGhLWTNPSTJ0cmw0TnpUZDlPZ21MdVlMdUJOZGVVNWFWYnFwdU1NL2srR3k5MStlNURwYnJJUmNldlRDZWxaMjZtR0U3c2hlZnVWRWVNN2ozTkx5UldQNWl6ak5jc0xQNnNUOVBkTVduaGVyL3hMOHQzMVBiV2EzbkRyN2VodnhnQU5uMjQ5YmsyNjI2Q1hkdnR4cDBlWi9vNkxDQjZDL2pCU0oxYVpzeXk3M0JvVDIvbWpVVlYwMGt3Z3ZJTm92bnFaTng2blhFT0U3YUdLcmRCbTBFdnBxMDlDeWVlSFR4Y0E3SExXVmxKMFJ6cng3bWliYjlqeXE0RGJrYkVrSk41ZXQzZWk0Sk12U1BTNnRsWitMZlc2NWMramV5dXhRT3dsVmdxZnZiY0p0eno1UHBTQVpLaXJqZGNWeUtVaGQ0SVJiM3RON1VwaUdoMER0SU1jS0duYjQ2Wm9MakJhY2Q0WVNaWnRyQlpjWXlTaWo0TXFmT1JVbnNoRk5OcUtJMzd5bGZxb0xoZENaeEVKaXRyeVd4MEoxRUtaWHBrczBaOVozVkplVmNoYnZUVVBJenRoSWs5aVAycktEbDUydHp5Y2wyNVduZ2lwTmpPNmYvSWl4U1R5cjJ2TnNLUzc1VjA5WUVrelNsZkNYenRNdVQxSzhoZjdSNWlqdTBPVWc2cnQ0WEdVbmJtY2JUZzMzOXJWVHEzdHUvOVNxZitiZVorMElOTjN4bnFWd1c5TmRid1RidU1iZzFMbFVKTFJORzlnUkdwZTVQdGRzNUZOOHFmbldkUzVRaGV2VHhzMno1Ky9vYkE2UHptVEwvMWpTM2Y5WEZiTlAzTWM2Q3EzcVJMMDA0dHpPTGhyd0hXOFNsZGN4dXVzMVZCNlgzSnRwQ080akJIVjc3ZkZaZ2h0ZWJkTnQzUEkzenBudjRUaW5WcVdYZ04vVTlETEVXeHpGRU9HV08zaUJKOUY2VzNOQjAxdUFYOVZqSVhZQStnQU9nMTA5ZHN6TUhvQ1plY0NjTHNBK2N4ZzhaQTZEcnpHSHdkZjFNWHBoQUJRQk9RYkYrdGl4YzQrQTdOdzd6SE1ZZllONUJyM0xQSU8reVR5RHZzVTZRNENFZFRKSVdTZURBOWJKWU1DYzF3R0d6R0Z3eUJ3R2o1bkQ0TnZHcm0yZzd4aTdHSDNYMk1Yb2U4WXVSdDgzZGpINmdiR0wwUStOWFl4K1pPeGk5R1BFdUROTjRFL01pTFlBMzdQd05jRDNPZWhtNUdQMFU3eTFPZWRuRmpMbjU0Ymo1SnhmWVBNcjAxTi9hVVpteDVHRnZPTlhGakw5MXpnbkovekdRaWI4MWtJbS9BN2NlOVB6Zm05R2h2NkJoVXovZzRWTS95TjI1b1EvV2NpRVAxdkloTCtBKytyMHZMK2FrYUgvelVLbS85MUNwdjhETzNQQ1B5MWt3c2hDSm55b3h4Zk5KeTVWM0hHcFVBengzeFBhWU94N05IdEl4ZXY5bzhsajNmb0U5YUFEK2dBQWVOcGo4TjdCY0NJb1lpTWpZMS9rQnNhZEhBd2NETWtGR3huWW5iWXdhRXN6TTJpQm1Oc05XQlE0aE5pWnVTQThFeVlOTmtsV01JL0xhUStQQTRjRHl3RUdaZ1p1SUovWGFRK0RBeGlDK0R1QkpJUExSaFhHanNDSURRNGRFU0IraXN0R0RSQi9Cd2NEUklEQkpWSjZvenBJYUJkSEF3TWppME5IY2doTUFnUzJHekVwc1ltd012TnA3V0Q4MzdxQnBYY2pFNFBMWnRZVU5nWVhGd0I5bFM0SEFBQjQybU5nSUFDTUlKQmxKd01EOHh3R2huODFDQllqRHlNUHcyT0d4eXlMR1JoWUZXQ3kvMSt4QmpOdit2L3FYeHBNTDZzWjQyTWd2Z2dBMWxFVkxnQUFBQUFBaUFDSUFJZ0FpQURjQU9vQmtBSkVBdW9EbmdQYUJEQUVoZ1VJQlZ3RmpBVzhCZUlHSmdacUJyd0hQQWV5Q0JZSWdBam9DVVFKc2dvWUNsb0tvZ3JpQ3pBTGNBdjRESndORWcyVURmb09ZZzhzRDhnUVJCRFlFU2dSZ2hJeUVxUVROaFBDRkFZVWZCVkVGZW9XZWhiV0Z6d1huQmdjR0xRWktobWFHZFlhRWhwYUdvb2F1QnVFSER3Y3BoMVdIYlFlUEI3ZUgzUWZnQitNSUNBZ2VDRWNJYTRoOWlLVUl6SWozQ1JpSk1BbFFDV2dKaDRtc2ljZ0o1UW9KaWhjS080cFpDbXNLb0lya2l5Y0xPZ3RGQzFjQUFCNDJxMThDWHdiMWJYM3ZiTm90Mnh0bGhmSnNtWkdrbVZaOGk3RnV4Sm50UzFudCtQRWllUHNEbGtnSWF3aG1JYWtKUW1VUUtFcEJHaEpnSzlBQTRTR2tCQWVhMXZhUXZlbWZaUUM3OUhTWDdxOTl5andDc1NUNzl3N00xcHNoL0MrNzBHc0djM2NHZDJ6M0hQK1o1bEJMTHBML2lQWHpWZWlmT1JBVGFnL3VTZ2VGWXM1SFlkN2VNd3hPb2JUalpyMGpJNkZmN3NNR0NPR3c4eDZJMllSWXZ0aHc2SWgyRU56bmM2Q0FvU2NUYzRwRFhVVlFWOVpnYVBBWWJmQlhmTWF6VHAzQkJXNldLZE85QXZCUmtkRHZON1BPdnhzUE5qWWtIQ3c4Qm12cnl0MGwrSjJERnVYVTg4NjRGTW5DaUV6MW9sY3pNdDZoZk0vRnNpR2JZd3lZK1hNblJKNzlpd2p1T3pGL0lNUDhzVjJsOENjUGN0S3JxRHh3UWVOUWI3U0YvaTBNK0R6QmZqbkE3NVAvZnkxbjM3NVkxc2VwOFAzNEVPczNtbzNtK1NuY2Nwa3RsdjFyTHhCWHFmajhtd09uSktmZGlBR3YzYmhZNWJqUGtJV1ZJSjZ1cDkwejF1U2RDT0U4QkNITVpaU1BKRE1EQ09HRVpuZTBxUUxEZ0w1R0kxa0h4OUkydlB5RU1vcnlTdDIydUZHSmtsbklDelFzNFFvTmhodndVeWhGeE1TZzIwWXFHZiswOGswOFN0VzhFMk0wLzIrZjg2Y0JRdmdqL3VvcUdSc2EzTXpjN0NrNlB4aXIzQlc4TklQbU0yRkMrZ3A1Z0hPejMxVUlDS1QvQUZDQlN3eVlTc2kvekdvN3NLZnVYdTRVMmdoNmtkTGsvMXpwek5HVTZDRVlSbW14NWF2WjdHT1l4Z1d4R2pCSmxORnltcGdFRElPRmVTWldhTXhRQ2tNczcyTEZpRzBxSDlSZjk5aXVNMkNWUGZzV2RPU2JTMytZRUIwaVVGLzBHN3dSVkFaZGptdE9JTDE5WFhwWFNzR3Fob2JPckNZdFN2RWNHTkRPMjdCaWF4ZFZkejV1RDVyRjBib3VlMGxlWGtsUllmYmJpeWlPNmVTWEtRc09nY25mcS90ckZGT1BOQjZrN0p6cGswNTBmaTJ0ck5LWHQ3Nit6YjJjWHROZFhXTjdaeXkrYmpBVmw2aVkzK2xiVzNrcVAyY3N2bXJjdkJIMmxhT256c0htbjMwd200dXhwZWpHU2lGRnFGcmsrNlVrMmM1akJiMlRIRnhQRjZVcUFoeURNK0NxcFNEcXBUcFFCOHdqL0FJNG1HaHNEd3pnbGhXUDJ6QWVyM0Vnc1pJc0lkWS9jREVjV1FJT3d6bjJQa0RTVmhMOEl2VFBZRUtFZjZNQmkrb2p4Y1h1cFcxb3VoT0tCaHlGYm9WeHV0ZHFqYkJzWXhlMWJuaGloZ09CUW5IRStSYVJ1ZHlrb09vc1lGY3pudzlXRnRWMjVHTVIyb2JuY2tWMTZYbUxlMTdlRWN3a1FnMjFEWW5rL0hxMnJiQ2x2VlRSeUw3bGoyd05waTRwVlp5U1RoYzZRbno1Ujd4Qlh1cGlhamtMd1d2YTdyM0RtdTUvNnJoWlYvcDViNHJlanppNjdZeUF6bjVqci9NMCszOWxxbXNxT2RvMytoTTVvam9rWHNydk9VT00zL2IyRzluK0YwVzNUZUFWajZ0cy9sSVJOV29BM1dqVGNtUlFzeng1ZGhnWkhwZ1pmS1k0VWNSYTlBWldOMG80aERTYzJqRWd2VjUyR2pRRzBmTW1PZnhzQWxXYVVVS0dReTZZYVRUaFhXOXlXUk5qU1FobE94T2RzMmNYdE5SMHo0bExsVkxzY29LVDRtOUFIN09HclNTMWFud1VWUFBlbzZZSkdLTU1PRW00V0FDYzhDOHd2cTZlR05EVUJ3LzNvb3o1L0J0dTdxNnRIL010eDFXc2JpcThQeWRicHRWTElxNjJjMWpzK3JySlFuK21PeUJrbnFRTzlXVmRYU2p1eVRxY1JTZS94ZVh1NlNtMU9abXA3VXB3NlI2dVNCNzRIUGFZVmovbHdFdnJ3ZGVkcUllZEREcHNtQ0VlOXBjWUtDNmd3ekhObUNlNDFUVFZnRmF5SUJSSDRXcldJNWhSeERHK21FanFHSkZ5b0E1amgvV0FWdEZIalMzN2xKRGh4Q01wTHNhNzhFUUl0UTFHK1l4VFl5THdXWXBaQ0thRERxYnRuNUJVU0JjOWVGNGdoaUZ0QjNSNmQwWm95SlVFeWtRVHNjVFZKZXBIZ083RXlIbTM0OFZ1cHFUN2JIWnM2Yk1uTkp3b3RTcEwzSzlwVmlGWmFWbHkxTEs3bU1WNVZOdmVtSGsvcjZsU3hjUFByN2pGZiswUkcvSEs5eXBsUmF2NjN1QzF5T3VrMmEzMUN5UFB6KzF6VmxZVUZWWldXVkxKVmZZeUU2QnYvTzYvbnZYRE4zWmVzM08xWWVYbkIvckREZE5iL3N4Y0FPL3dEekFPc0JYV0ZIYkNTTXdHYXRjdFZDSHdSQ0hnWUJ6ZG9aNENkeFBEcUJoMkVPd3drMHd4b29zRWt1VVQ4OVNXeGtpenJBRnN3NzlITDR5RnF2azUrREtUN21QNnVSeXZ5ajY4YnVjSVVqdWpMSDhDUHNBdng3NTBEVGxCODF3dURJRlowSzR0MVN4Ukdhay9CaXFoRVBFbnNEWEFYTDFNUHcrbmo4d2NNTGxMR2ZJajJ1YXJtTmNUanZkSTVNSnhURFQyR0NQSjFpYjFWM3JsT3l2dmY3NmEzYkpXZXUyV3ZmLzZmYmIvN1NmWHgvd3hjT2xsaHZrNTgrZWxaKy93VklhanZzQ2hybC94NzF2dklGNy96Nlh6alVLYy8xeDdsd3hocmtpRkVLWnVTcnp3cFdJenBWd2F3QmxtRFZ3d3V1cG9ITXR0THVjakU2ZlhwTnhlMk1EUS9lSUMzRXppK2pNckJObXpCZjhYVDcreGh2eThiL1BOYWl6eHAxbnorSk9iZFprQnVoNXZKdkxoM1hUZ2hZbDg2Y3dET0lhdzE0Ym1CWEVnR1JkTUZNSEVTWGVDOUNJcTBpQjMwY1JNbU1YN0hHWVEzaVVpUGhtZXBZRDdRY1FBUGRxcmc1V2gzU0dFZ0tDd01VbDRpckRkZm1ZV205S1RiWGlPUWtwOFE0Y0lycE9TZkpSNncyRys0RU9ydnJwY2tGSVdBM04xVCs3MytWT0JFUGxqZGFGQzYyTjVhRmd3dTI2LzJmVnpRWnJRaERLbjY3bU9wcTRVMjNWdHZ6WE56bXJJcVhPNkJUZWNZc2o2bzZIUFNIaHBaZUVrQ2NjZDBmaEVEOGw2aXlOVkRrM3ZaNXZxMjRqUEhnVTdlTUVqZ0hwUkpPVnNQZ1J3dytBdTJNeFpoQmVUNndCZ1RrOE01OUtNQmlVcEtDa041UlNBMnJ6cTB0VzlOczA0Mmp6YXliU2I2TXI5NjRhRzg1VFZxWDhEOFgxeWg4cTM3RUYvRFRIa0RNZktoNWIvb2Q2Sms4WmlTM3duZXJWc1B3bVc0QlhJUnNxUzVhYTZPS2pldE9mMFp0UWtERVVVYTVUNUVYaEpqRXlqR3pYLzgzWkY0emdOVnlwNng5NGxUMC9QMy9zVHpXZVlpUEhsRGxjVkJjZXhXYzVnVGtKOS9jbFBka0xlSWljSmJvTjZEYk9acm1PREtIc1ozVFNZenBsOHN5bnpFbUZISVVJT3YrWEFHZWE4VGFVaDRxVGhacGxBTi9YQzU5NXlCS2dkODVGaWMvMzl2YjN3eC9lNWhWazRseGxDZ1l4ZWtBK3hFWDVxOEdaZFQ5akFyV2xocWlVR0NKeTQ2ekZKcW5IRU42akhrdWEwbCt2R2xDc0VuR0p5cTlyN284NHYzZzkrNHRsM05nNmU3SnpHY2ZjWTAveVYxY0padU1ueHlKa28xc1FBYmV3Qi96T0xPckRTMUZWTWt5UUpCN21GSThNMHlJRWhsRXZDUlFLU2d0S0NwMzBwM1NaZFEwL1JXMU9qamRsUG5uenlpdmZ2UE5PK3JsaDgrWU41STg3ZFo5ODdydmZsYzhkUG96ZDMvMHVkdC8zM3ZkZWZQSFZWMTk4OFh2QWo5TUljVlhjR1JSQU5jbW9IZUFWNkFaOHNBd0cvTUJXcEhpT0VMMHl6ZThBa3NKaU1FN1dxRFJPbUMzWWxyWTI4VVNBckYyWHJaN2pGUUZMaW9BLy9ybmQ2aER0VG9jVFArenhlcVcvdnFGNERzV1JNQTllYlpKQ1ZWNlh4L3ozZ3ZMeTgvT3B6TzZIT1lLdlI3Vm8wd2tKY3l3UldRR0lSMEt3RHdCemxHcno1VEJmeFFkWEVDa3lLN1hJSTVBMURLelByc25IRFNSSlNGQ0xhcVNxUnRHdExWT25Uby85V1VqU3I3cFdDTUFJdzRVMG1LUW1pUG5kcWFGbHErWC93Q1d4OW1Sem1YaitVeURhWk1YZldkZ3hyNmUvanh5TUREemJ4NTFhZG5UTDJrZUg1RThHUlk5WCtFRHdBUThxS3ZMd2ZmTldOY3hZVkhtQUhQMWIyRjFiaXlqOUowRlhDb0grWnRTZG5CM0ZPb0RCZ0NwNkVPendPZzdJWWttSVFuQWVDOXdCbU13cktEcEhsZUN6R1RWSlVrT0RWQmhXVURMb0xDVlJzYVhFMklLUlZWUUpnQVNSSXFDTStDUjBza1cvdTNYaGN2a1AzejhZdEFtVkJzdlVmVk0zYnVwYnRKNmcyWjZCL2tVTHVuc0pyYlZ6SDF2SW5YcmlvY2U2Z2w4ZWV1NkZsQ05hR2wzRSs0UzVYYlBuUk52Ylk5Tm1UcC9wbmt1SWZTN3FLSmRvUEhZTnlMb0xhSTJpR2hSUDF0ZGdwTU05ZW94NHhhZ2FzRTVYa1lJd2dHRlhnaHhGRnVpcWpzSG9Lbjh3N2crS1JvT0hFR2JMQUNKWGZkMEVQVzFVZG9rVTYzRzlnNjJwZmx6UnpzZHZVN1pqUDFHMmo4b0xZTWVCejViT3FwZnYrMTBCZHlwV05mYXVvckVQWlN2dVE3Q1pXc1IwQ3VMWVhrQXlHRDFKWlhZRThQbk1aS2NlQURrbThtSjVIUXZyaW9Pd2FCY000a0VMUjRCcy9SQVJsNUJDSEVjRDR6QkR4RldOb29Ja3VnT0NwSWtMOUU4ZlYrakp1SFVTdXRScllpS0hpZVVHdzNvR2hDSFB0SzVjdWZPSnBaLzlmdWk1WGtWVzkrd2V2SHpad2hXcktpdVNqWXlmOFFyTVN1NUlyTDA5K2s1ZzdZbXJmdmpUNmtwWGhJZ3B0WEx4L0VHcG9FeGtnbUtaRWl0L0UyaUtjNmNCbjBSUk10a0dDSmMxa1ZBRHZBbFF5Q20wc0xDMGlPSElvcVc4SEtIeWFIbFZSUkF1TFFzR0NnMkdZcUJId1UrTW52aHVMVVFJVW5kdWx3S0kyRFZORzBYMkwxNmVDVC83WDN1YzhiMzlXNCt0MnY3NjZLNlhwNGFqeitFdDJDQnZYMW9YN1cvdTJ6QzhtRHZkTU1YbTZXZU5QYmR2YTIwYWVuVEw1VSt0WHJleTdkamFYK0xheDB4alN5cG14Mks5c1lIdVZEOVpWMmVBbmlrZ296SzA0SVFWZ0F1eEt5YXdLMFd3Q3dCK0d6Z0hkZ2pXR2l1a2xEVlVtaXhXVHFIUkNlY0dLSlF0UXg3UlhjRVQraWhld1NvK0pNcm1WNlRXYUNOWkhjNVdrbWVVaDB5MWdLaWpUVHA4alh3SFdUSStnVG5QSFFITnFuV2ZsOXh1dlNsYVpzbG5MM3VSTEJMY1J3WEJvc2RnM241WUk2WGdsdXJSOU9SVXB3NVFCakhjQmhBRHc0L29xVGZSS2Q2RTR6UVRVRkhoOFNCVVVWOVJGNnZ5aER4Qm9SeHVVVkpsMUJ5elRwOGRxY1VUazhSclRGWmN4N3o3N0txKzFOQmxXMSs3K2ViWHRtNWNtZXBiOWV4MXN4YVJmTXlpV1gyRGczM2tqenUxOU43bGd6ZUk0bTJYYmZsV1g5KzN0bXk2VlJSMkRTNi9kK21icVk2T25wNk9qcFFjV3RMVjFkZlgxYlVFZE96dUMrZkFINTBDUmxZUkhYTmdoak1UanZlQWRXTXd4d0J0UEovV01SVUtBRzArSDBLK0tsOGtBT0VtOGdZS1E2cU9BVVVGc002VXRkTE9KQ2JHb2NTU3g3REkvSklvbEh4UXZxNkU2Tm96djltWW45YTF4YUJhelZUSnVGTlVuZVRUOHVGOHJPcGE5MjA3TkYxN2g2aVdvbVF3VzRwYjJJY0JvMUFmejJuSUpVRHNNanRNZkQ0WU1DdjRIV3VwdGNUbG9HQ0crbmcxSjZINEhDYjNXNzRLYmJRL1prRW0zelYyTkNmM0JYUFlBZGhQb25Qd29jcGtxRWp4OEN6NGVHWnRaa0lZN0kzUEN5aUR6SUNmTUFPcXlybTRVSnZGNHpuNE1Ic3UvemtSS3NLYXV3YWx1R1p1S25BRXNLaVI0S21lOGZGV1dUbkZvbHFzWmNUcE9BdXJ6cGY5ZnA1VGNwVklZeWVaT1ZLSlMzTG1PYzkvV094eUZiTVdicXBVMmVBVEhQSmI4bHNPd2RkUUtabndIWGtWNFRDNDF6dEF2eDVGLzhVSjdHRkFwQ0lLSjRNZ0E4S0sxZW0wWlFEMTJnRjEya1c3djdTSTRsYmRwTGpWZm1ra1d6VHVPM3M0RzluSzhmRTRGOTBCdkZtazhhWWdnOU96NHJ1eWtJYlRkVm5wRmlOT2gzV1k2d0ErblAvUXFYQ0ltVE4yVXVVUWEyRU9VVDdJVzB3S2o3Q0VKWlZIOGhiZ3pjOUFYOStIR0YxQ2RlaTZwQVYwQlZ2QVo0R3lxc0Y2TUczOXdCOGpmaGN4Z25RcFNpbXlMTGxoTURZaVIxSjM0d2JDR0VRMGJ5UjcyRURTR1FpQTh0VUZhcXNxNFVkRktWS2hyRm9hOEZGM1VJMkRIWk5nclhpOVBRZnZzOFZ2ZlAyd2pxbEtKS29ZQytOZlAzdm0zSlNDUWNLbkgycWJQajJWZ2ovdW96T1A3SDhnMGxmc2RoZi92RXJ2dE01cW56NnpqRUt3ZndrN2w1eVBlb1ZqUkhlUHFXc0grUytzNTQ1d2NkU0YrdEdDNU53aUYyTmtJSHhpbVI0VDFpT08wWE1qaURGakk4c1lSd3dZd2o0RXpBTDRwZFB4QXdEQ1NHcUgxODN2N2thb3U3KzdiOEU4dU5HY2FEQVlDNGhCQy9Ib0dhZW5MQzBxUUJXR3dYTEx0azZDNWc0ekliRmVNMlYycVo3SnNtVWlXL3NmdStmdVh6SmptUzExemFKMVMrNVl1Q3pnNTRzY3JwSXlicmFodkRqWUtpNTlkUHVlbis5WWZIVDdWNjR6Nkt4T285NWlhZnpXZ2lQL2NlTVI3SHVxZW1hMVZDYk1pRTdqNGdjK3VmL0dVOE05SGJmdjJyYitwM3UyenpEcTlLNDgrYlZ5bHhSbzM5NXoxZkZWWC8zNHppdWZISzVnUy8ybE5wdWRkM3YzZlBqUWk3amxHVGsxOS9yMjZ2cUJHMkxyRUhQaFk4QjBaOEhQSmlEQ241SnNSRWF3UDBaMlBkTHJEVU1tYkRBSUtSM0hzR1FGQWt6Q0lqRkd6VTB3dXBGZ09sc3dMcG9OWmNTVzQwbWdYTWl2bitTb0kyM2svWHEybm1YK3JjNk1oWDQxa2w2aWJQdWk4dGVpWGVxeFRjcDIwZGdqYWhEOTVwTHJQN21HTytJVHpsK21JRHdGN1IwOG1QMk5OU3JiTitURitERkVmZk5Nb0hVNzBPcERGWUJnZDV6Z3NaNGp1S0lXbGs4NStEQTk1dlRyZVlKZkFmTVI5S0JUQTJVU1g1VW1xOEFhOFR5Qkhqb0F2dHZJQlRxNEFMU0pYYW1NUnpxZE5od1dFRUkxc1VpNGdyaHlIL0w2ZzAxR2JRSHBGYnlZaWMweUxHRTFqQTh3bVc3Wm9SL09uL1BIdDM4NjlvSkMvV1dYcVRiTGVQUzJwVXNXTDcvdHhaZUhWci9JSFhuczBJSWRZdnU3MzM1Q1lRSnJWTFp5S0RtdHMyM012TDlyRnJWajZ3R2ZyQWNmSGtPZHlXUWxCb2hJUFE0c0hBS2IrR0U5d0JVbCtNcnNNd3cxQzJHT0lGOEE5TUdnS0FVQ0JoWE9POVdjcHBvQ2hma3J1RmZOQ0NtUmNCMU4rWE5Wc2JaWjFmWE96V3YzMy82TkEvM2ZYRkZncmZaWlkyZC9mZlRUVy9iKzdlNG5GamNudVZPQWpFY0ZMMUM0NXByWHpweitjWFdOWVdHd3JMNXc0OTNZL2R4cDdMNTdWNGRtQTFwQm5ydEJuaDZJZkpjcVlpeFN4S2VqNHVCeXhDZWx4Y2NoRHNSSHhLYU1JekFzTFRhSTZnT2l6d3MzTFFFVjExT1JLVkg5NTh1THhlZjM3ajMvaEJ4V3hETThyQ3JyYjNadXVQZisrKy9kd0IzWkozOTA1b3o4MGY1Y0FaMXZlT24wNlJlcGJBZzlBUGhSSEgybWdOMllrcXVHdWJJY3gyOGpZdUlaRmdJdGpJMndPbzFHQVd3N3grbFdndUtKT3BJWnNjQlYxVmxYc1R3MytnVXVJNnlyU1NmR3YraDF5VlprQUpoZzJEYmhTajBIS3lNOVgxQXM0MHJsZXBTNWZHQ0E1dFdCMmdaL3NGRzBTWDVId0V6S2NhcE9nZmZ3dTJnOVRRZXJRUTMwNmFsSkJjSEZ5a2orWEw3OFF4THBmb2p2YWVtY1ZnTmgvbUN1UE5qYnVTTmxvdndMa2l3L05FWmlLL21kSDVFdjhqY0ZYNjVrY21SU2p4NVN1QnZTdUt1VUQ5YnJnVHVHSWFOaUt0UDFBMTdqNnZqS3hNWEhnN1Qxd0dyOXR2RlhBUHNNS3lkZUFPd2pVNnhIdGNRVUUrNlpxQ25PY00vbXIxTU16V1J4ZGpicnBpbXN1dzdYRU43SlAvdFhGUjRkVTdZM3FnVk05bWdXNytTZkV1YjlkM2FnbldFY1JuUEF6aHdGTzlPT3VwS3ptb0VzRjJBTUVpa0FxbU00cmVwaVlHZ21CS0xzOUQ3RGFHVVhPTnlPMm9MQllGd0FjNU5OWEk2NVNUUm1LRWxuRm15cUQ4NDFQMWJGL0d6WVNNelAxdFV2YWY1RTJmb2N0dVZ2WDYyWW9pY1hxYWJvLzFCVDFMZUNtS0t5UjdJZGpEeFdKQmxyYWpTemRGVUN6QklHZElhNGUwQmZGaEw3aXN4Z2FjemNlb3ZKd0pMYXREV1BvWXVJWjBrZUdxd1V6VzRCblF2Ui9PNDVzMmZObk43ZW92cFZmekEvdXpSdG0weUNmdHZueXpYRERYKzJ0Sld5ZEZPVDZsNzNLZHRPZVdkbjdoRnRCTDVLSFlGdjd0U08wRGdZbUhBK1J3RndSUDcxWkFxaE11d1RyRmNWaE9UbkVTY0FuMElFNlhPQXBQa2hrdllUVXNBWllBM1NPQk5DQVpvOVNpZjlGSHJxSmtEOGJKdjhKenJMdjJLVUMvTXgrcXZxTzM4eCtmelRDb3pSYWxySFBRTGhhenhaWDB4eXJqMWtQWUlQR2MyZUxRSkpyZ0pkRGhOZ0JJTkRZaUFvanB1c21zUWpxUVV5YlJ1TjBiUHFDYXBBVHYvMjUzKyt0NEFxNkl6aEJRdGtOYzNGdksvTmRleXVGMSs2czBEQTA2bEt5dWVGL21WTWY5cFVxYnIzT3N4NUpacWY3RjBNdnE4S0luU1NBUUtvZ3NFcWN3ejgyMlZXbFRIUG9pb2pRd0plSFZZemRuRDFpaVY5aXhiMHpBRytpK0Y0a3kxb3pkWkVYRWJLUFc0U3ZXZlZPVW13RTRxUmdvOG81R1BYRjlWTG5LV1dYNkxrUnVRSHB3d0s3bUNSWkMyczhaa1VIdXh2V3l5NWkrM0JncEtrVUNYV2IxZjF0Q0lYRWVHdktkdHFQTDFSUGJKSDQ1MzhHSnVvOGMrcTd5b0tWQ2hIdWpzalRjR2U0bEJVcUh2eWMzVDJSWnhNNjRUbUN5Sm90UVlhR1VSeVU2TVFTQ0hkRUVSOU9nVjFhQW5RVWhLV0tVUEFFckNZMjVZOUVtVUdEaVR6RWFuQ2hRblRiVUdLcmJKV3I2WTZGM04rekNlVTNqZnhFTldmak51NzR3NVZpOWFsdFFqaktZb0MxVTEwZUJpWmdNYVhnY1lVc1YrekExNldJMWtBanVnUUhqVmdvamhtMDBXc1dBcDF6NWdHQkVnU1diR1diSzF4VEtJUlppV01ESm54NTBjSldsT1ZuL3N5cFNWdWJjMDFWSU82citmRktpTXg2eUhkOHR3ekxmbHhWUk04cmxMZHlXZDBwUzdzblh6dE0vUGtEYUxYSytLN3hwNmVUQitzTnRtRi8yS3prblVHdHVFWThLZ0REVDlUWDBBS1ZXb01YZ3FMaVlnWGZKbWlDUXlEaDRsQkM1UGl0Vy9pV1hhSWlEK2xHQkRGbjNlZ05nbTRGNGRBbExxOEhETVNER0h4VWtZZlFyRnNhNi93ckttdU5SYTF5ZTNjMXR5Z3FsT3o2SWFLQXZ3QXAyb052anJOb3o2L3Y5akRuQnY3M21ROEtSMmJqOGMwM1dGUUIvRGwxdi90dWhscit2U1dXejQ5ZXBSKzdyLzk5djNranp0MWwzenV1ZWZrYzNjVDkvc2NkdC8xM210bnp2endoMmZPdktiR0JWZUFmQUlRckt6VFZxb09rYmh0dlo0aUtNTUVWME5XS3NmcjlkdzJiU1NFd1B6S2lRTXBhSTJSZkhrQWlSUjVHWW0xVjJEcUpReGZKbGk0K1c5L2UvOXVEV2JkbzJ6dnZGTmRxK0xkVjE5OTdiVlhneEIrK3NvclAzdHFNczZQSFI5Y3VYSVo0Ym44YjVUblRXZ0dlcVg3U1FmUWFxckRTSzhrLzB1VFp2SUY5NWdBVW5ZUEtPY2xwQWNLOVlqMmJQRURMQ2dwS2Z1dkplRytidGhJcWpnR0FsKzlNRGFnamFVWkZGcEdJRTVrL0dDSWpWbGF3UnNsNDFseTc4OFpEc2pWM2R5TVVQT001dW5KZHBqNkZLbkNJWWxCTTQwb1ZWVUk2V2sySlNldm90ZktFR28xSlVUYjhpNnVOTVhPamIyOXZoaytUMHRKYjdjbHJ6Q1M3eENiTmpkSjNmVlRGOGF1MnFvek9DcnpDMjFudm5FTXh1NDdlSEFmK2VOTzNTYWYvODUzNU05dVl6WjZqVHJlV0tHVGZFRmZaVW1sYURaWnpOV3M1QW1KWmJiWDJuRFJLOS9CM0czdlBmUHd3eWRQUHZ6d001bVk5Rm5RUGRLenRQMEVySEdEbG1FUWtBSE9HNWdSd2dVOXhGT2txc1N6RE1tdGNrcHVwUlRDQlozZWFOUnQwOFlpbzFHL2NyS2hOTC9RMHpWek92elNWS0tHNFhpYldhc2NGbjZ1aDc0SW1weE1UWmYvK3ovajVTN1JYWlRuckNoMnFKSFUzRlZocDhjcEZmcDZHcE5xVkNVM2owdE81RDk2MTdwVnE5YmR4UjA1L2RTZldsM2gwcFpvamN2dlYxUTUyUzIyeFRyTEk4RUxhRExkbHZHYzd1NDVvRUIzZ1QzcEFOM3VRcWxrMTB5TWRUN004QVRQWU4yd1FjK1FhaVB3UExOUHFsb3NXTlZ3Q3BIMkRycExIVk1YbWpOOW1oU1FxcVdBTVN0cm9XZ1NpU0xjQ3NlVWxGOG9xeGFrYWlCaGg4SzhrTXFrT3FXSmtmMVZQQUx4bDduNmE4TnpGa3BDMVdVYmJtNys1dkxUWDNua1NxVWRVUXliNDNldldUSVlEcFdudXZzdXIrM3BXL1hVdG5sZnFhc0Z1cnlDL0hmQlcxRFFOYityeFJ1dzJ1eE9VUnIrN1phamcydURKTldKZXdXdnZYRDlodG5KaW9TandGbGdMeXVwMkxOeDQwT0REVFVCa2dIQmFCWG8ya2JRdFNocVNOYnFzQm8ya2p5ZFZyVE0rQmdLN2FJb0lwTFl3aEZRcTVZMmxkS0xPQlZiZGxHc3B5elJsSWljK0sxcXRQcVU3VzlQa0tNK2dkMUxZOE9sL2pLWU9ZQ01ITmQ2UWY1UGV2eGhVaVREYW84a3lUbVMzaHlhWG1TSFFJZzBGME82SDlPQU9vRWFSWkVDQ21NbUtVdDhvZGFWTTJub3B3RHNDUkZQOVpiWER4eDRmVXQxYmxTVDJySml4WmJVK0xobTdBZjdYbDI3OXRWOVRGTTJHaHo3M2ZZcnJ0ak9CREw1Z1FzZkF5MW5hUzBaYUpGb3pZUlhLZExyRklvMFlrak5HTkNkbUl2dVZCQ0VKNkdrTkJzZVAwRm5PRjIreTlyYzF0YVVKeitvemZtNHNoMzR6UjluYVRnNDdiMFhTOTR5a1gwc2g0WjdtYlZaOC84cnpQOWRtUDlVMUp4TXhHTTJGdXRJTlJ5UjJ2NG9nWGlnWXdTeGNKeVFZckJHeWxUVVFVQ2VGSlJ5UVFwclpSUkVwOGdueEU1S2xiSjhjcWc3UldjK1pTMWJXQmViMW1MNTVvT1cxczVZcllzZHJsTnBVZ0hkanNZNzlCWFZkVlc2TytQcko4U2lpNHM5bGpJUi8wWU9pMlVXVC9FNHVwL0ZqN3VMSEM0NXhjek95dStBUWxJc3Q1QlVOR2ZYbHhrNUlrS1RVUStFRzRZc1prWkpnU3RRbDg4TjJHZk5pSU5BNmIrOGJMQnJuRFFaUGxrdTNEaVoyTjJKTE1hTUtJeVJQOFppV3k1MGEvak9ZMEgxeUtpeWJjZWkvRWxyTHNNaWR4d3NVbzlzU2dkRGUrVXJzdGZuaHgvbUJQSDM0SzNaalB2NXo3Tmp6QXJnMTFIZ1Z6dEtKQnVBWFN4aGx4NFlSR0ppMEpOSlF2aDIxS3F4S1VkWkprZExsMXdJTjFCcXF1UkhYMVV0MFM1bCs2cjhlQ3lYOXM3VFp4b25MT3lQNUd4aTBRWEdsQlB2dllXbGRMeTNEMmlkUW5NVWE1UjhyS2gwSzIzTDlEUnBhWUJMOVRSTkhLZjBOSVZRUUN4c0ZBdlRHWU4wUzFOV3NEZEplNEo3N0dXOGxTVHRJTlQ3QmREb1pOcmw0K1E3V09JQ1NtdWI3L3gvdjAwVG13ZG9uRGV0bERYU1JDZGVxZlNNWUN6SVQ3UDM4NFBJVFhJd0pFb2xEMU53eWpNeFhPYVpHQmpyUm9WU1l3TnBuZURVMG9VNkZ6WEJhUE96WHlLWlE0WTZMcGxtRVovSG5adXFwMDJMZVFWZFJQQ1N2YytLbGQrTndlOCtTbiszSWhrZ3Y4ZGdsbG1mYVh0TXR5YTZrY3N2TmZKSzJjU20vaTc1V1p1Mnc5NUsrZ2NaOG9PNFUzNmVibVYrMEN0ODhtdkJHNXMyclpyN0UvbFVkUGNsL0N2T0RIakNpOEpQNmRaTVQ1YTVyYVNDaW51QWJzVHNJYzJSVjhGQUwvSUV3NXloS1BLVURrMG5wUzFhc3RGbERGc28zYURFM0Y1dHhPMThQQ3g0dkdIOWM4L3B3MTZQRUk3enVOMFlpM0NuN0k2eCswMEd0Mmd5NUZ2eFh2azZhNzdCSkxvTkptYVZ3dzYyOTgyeEM5d0g4cnZJaHNycGZGempXYUIwZnRKcFRNaDNjVzliZFRwcjNtZVZlWFRMblpYZnRkWFUxRlRiYk5Xd0liRThkckpqYkFOL0ZPNWZUTzlQWWxlbFJiTEltYjZ4VXFZSkJiUitKWjV0S0N5WExHWjVwS2lpS1dZcndNdTQvY0RWZXQwYmx2SlF2TnQ4UWNHNVc4QnYzTXNlUjNXd3ZQK2d0RC9uKzdDQmJXMEIzT29BQ2xnSVBuS082Tm1lQVNWTURrTm9RUHFzUmttUGtnR3hoaEZTRnFEUlFTU2xKendZWmxSQXJOeTUvdElYQUxraTNkVWFtMHFUdFo5M0ZVcGZCSEdlZGcwSlRPcnJFYXB2cjI5clNnQnR0U0tneG5paldRT05oYm1BT3QyT1F4UE1KQ09kYWVuT2RQZkhFNDBRa1NSZUZjcDlpalc2dkgyb2VPNlR5Njg0MnYvOTQzdnVYclN4NWVBc202VTRWSkFmRzNodHlZTnpablhPK0hMTHpidlk0Ly95bFB4T1JWUXhUUFdKdHM3VVY0Y1AzRlBtN1V4NmkvaEFWWlduM2xaZVB2WkdYVTExYmFJbVdhcklwUlRrY2hsZmppcFJNL3FCd200VEN3R2NEY01hQTVHb1gwZ3VYcFVHR0RVMUlwWlM1REVJR3FkSFVqb2F2YXN1WDVWRDlPSkRGWHV2WG9YVWpFY0VoaUlPeERCeTZkSEErOEpJQkFZMFI1cnFhMkgrRmY1Z1l6QmdVb0pyVzI0akdnMjJKd3RkN0ZvdFhxM040MFBlK3IyOXUxL2RzT0hWM1VPSEc3ekN1eXJxMDhwem5yYzN0TGR2U0xZUDF0WU90dlBsWUV5V05iV052dldWcjd3MU9qQnZrZUJWaThsNzFiRDdpZFlkOCtidGFPMjRzcmYzeWc2eVJtOGtmWGQwSFhRbWs3R0wxRk1qV2ZYVXlMaDZLaWhaTUNRR2d4UHFxZG1kQlptU2FsYVBsRkxVWUQ5UmlocmgrVTJ6TjdXMGJKcWQrbGFQUFQ4cTJDUEwzMWgvNlAwYmR2M3IzZ2M3bTVQc2NUREpMOURFWCtYc1NNZU9WR3BIUjEyVmFXNmtMRnJVMEx6enJRTUhmbi85amppSkt4ZzBERFE5b3VyUWQ1TW1IeXhkRzFZZUhwaE1ZY2pUWGl5UjY4U0ZHLzJjb1VOMDllbHlscXlpTUN6UHJiLzA2SWtLSXdZRGNWRlRtS3pIYm9KdE9KdHRoZTRzaFVIakZJYjkwS3YySXZ4WjhEWWNIbEpVcDNkdnZacWN3YjF5QmRXVkpOVWJvakdmL1ZWUkRxK3dhTjZBb2pwdFRkaXRhWXlpSzRyZUtHdDBOL0IzTHVpTUg5eC9SN0kxblNIbTRTU1BhQjh0TjB3U1ZSR2FJaVpjQ0xPOWdvQ1FFQktDa2dnWGxvY2RBZ1J4Sldwem9PaS9TUDhKa0tqVCt3bGRsck9idmNMWUxzY05LKzg5WWJFVWx1ZVozQ1ZyZnJibTBGdmJyL24zcjUrTTRHZHRXL3ZZNDd2UDNTMTQ1aTFPY0JVMWdaSVNyOUVmM1BtN1d3Kzh0Zk85ZStZby9kNlBBQ1phd3dkUUU3cGNFWEZZSzFjYU1LUEhXc0hTT0V6cXZkSzRDbWRJR3dzbjRWNUdQSks1S0tlMFNRdkRKQzlFRTJ5Q1dFUUx3OHBqSnNyekphTGd4Um4wTVdrNlEybVNwbXZrbmtQRnhTYUxXR1N4M1RoMEUwNVFmUEpEWEt3Q1NEVkhmUElrT1g3eTVERSswR1QwZTBxa3FpQWZlcmlWMW9pbjV5RGtNNlJEZXM3cGw4bGFrZGR4ajRBc2ExRUh1a041Q2lHSWViMjJWaUlJbEpsbnVWR1RnWndhTnVvWTJtT28xL1BEOURrenJSVTNTdFEvbmpOYWMxWEtwVVBvb2hlQzE2cXJBMHZTVWRjK0pVN2E1QU5pa1JoVXZaWmJhUlVmbDBaTzk2UVIvNVN6UE1aMVhtNGxSdlBQQ29QNi8vTG52dGVYMStUbEI0cnp6QzljZWUwbU1LMDN2YnB4NDZzM05XN1pzanc1MHRZMkFuWm1YdmRNeld5TzFiMzZHNzgzUDE0VXE2N2tXdGF1WDVkb3ZmYlhYLzd5cjY5OTc4YnQyMjlNYk83dDNad0FQUUI0eGowRTltWTYybnlDSmM4ZnFVK2hTc2hnVUJvUHBIU3JiR1I4M2FFMEtSQnRNaUFqOWUrVEQxSVVhanFpMVFtYVVOQTZEZFRDeW1TUkNISG9WdXpGbjU4c3c0OTdyM2wwMlMxZHFkektRM1c4bzNsRFIzWHV3WXpYb1o2bTVPUzhPMWZMd3ptcXRhWjMzdkNEZzBkeThtSjd0UURzd2dXNi91YndDd3NFdEI2aEFnYXRzeXJQVVQ4Z3IyUHZwY2ZYMHFlbzE2Rm42WHB0Z3ZFSGdiZFQwUlZKWTBmTWJPSklnSy94VjExeVVzcEFjNUtnWFlHVXlVaFloNFpnb1NxTk13SVlKazRQVHZ6aWd4VCtUa1ZKcVlFV0w2Ukd3bCtwVURYQUlWWi9xWklnaUNJZ3FxQmU3Zm5RTytxNUhSN3kxR09kNS93K3JVTnMxWGhXZ2lIZzZpand2NTk4Vm56eWo3WTNLdHVBZXhWNHhjaTh5UmdKZGpEMnEyQThFUXdtNHNFZnlrOFRQdDBIZk9vQVB2blJMSVU1YnJDNjNCQjVCazVLTVdrUFJGQ05DdzZDaitmWTlkbkhsY2ZrL01oSEtuanFZM0tYcUZNelAvSnFOdWk4K3F3bnRwMVRkNDRxcm1WeVJjQVhQb0Q1SGdDNzA0RU8wd2R1bm1sTk1FU3lnUEJhTWE5TEFQYWdDSTg4aXdPWVhqRW5CajJyMHdWU0hNTW9vdFg4T2VtSDFFNlM0SDJTb1VrZkdUV0V0Q0ZxdzBZa1BXSkFLMSsxZ3hOdURNRC9tWTROK3NTS1RXblp1TmpYekJQMXBMR1oyaWJ5L0xLdzBTdnNGTHpGcGRXSjNCMjFPZUVZaEpZMzlud3RFcnR1Rm52ODdtK01uU0VSS0dOdXJMdmpnUHo0aFAzYk5RVzQvWW9yZjd4bXZibytuZ0ErVGtjako2YVJlRjAxM0I3U3AyOFlOaGtaZ3lFd3ZnZXlOQmtrcHhVblJ5SVFHRHFFSmhtbzJaM091R1o0ekdxaTZQL1o0aWo4QVo4MjczOW1jejRVdkRkL0g2enpGN0U0REtQeDZlRDc0T08yQWw1WkRqektSNzdjdWw1a1FsM1BWMUJXVkppcDY0MS91cHpKd1ZxTS9JZnJyLy9Eb1VQMGMvYkdwcWFOczVWUDlqZ0JwRy90VkQ3ZlV4Q1VocmtaRkpCM2NwZkJmR3BRRXQyY05FVXh4NXN3U3Z0Y3lVVFNsVHp4dFR4UFhhWXl4VXhlS2tUY1JqVWRsdVZrVldONHNTdkF5NUtIdm1xVHRSMFFHOWFnYWlKVHRXaVZpVXhzbDViZFJFYXdIUnJLVkZ0Y1pZUHFjWE93Nklhc1VJVTlyaUZOK1p3aXJQRTJEc0RvZTduUkNzWDJ3THRITXJ3anlDS1FoVmVreVhGS09GTkpDTEVxN3o0Zm9PUmVNWUYzSXVrUXVBaENtWXlEbjZORU9RaWxQNWQvajZTRHY4SXMwTTRlendydHpsK25iSlZQN05haXYvZkc0M2FJOWNCV0VMMkxvMmRvTCtDSmV2THNXMDhwMldKTXJLMkZsa3lKT2FVMXFVQ0s1SlRTWDdLck1hcnRyY3EwVG1ZdXloUzR4bDJUQWRzWlkwd2I2VWkxSjVJemRrQjUrVVljTlNxbXgwMExLSm5INGxWTDQ3K0VWNmJheW43WVhXVzNSNHV0QlZOYVUzdm5ZeldOTWJaSXJWdnZVRjJXWGZCMnY3S0dQVDZsdk1FZmpjWU12bFdQYnh5YTNLNzg2OEg3Rko0ZUJkc1NvL2EzSnprbkNZU1hqYXZ4UmJKcWZKSFBxZkdCa1kySkFhbGFER2l2R2FGOVYycUZUeW53YWNzMDkrVWlSSmxJZlk5VytJTFpvZldQNkF0RldnNnRhZW5zQ3ExWWZuMWkzdExsVCsvYWY3WDJUcEc2dzh1L0dhMHFYcmIyWU11K0ZRK3QvL3FPMmc3MnVQSW1rWTdHU3JIU2JqS2FDd3Y5VncwUDdlK2VsWDZQU0Vmend1SXlFNTluOGZsN2p2Wi9hY1ljay9yOE00bTdGOVBlN0hpeUhsd1JTWXVPNnVqemxTeDl2bEp0a016dHhwYkVDbEdRSksxQWxtNzZ0RG5WdklFYUVxcVZQalVzSXRsYnhsbnZ4TnRwTUhUclRiSHJGeFRtdWFRQ3U4djFrNjhmTy9rU09meFMyeXp1RkZsTzc5TWc2TThQaHdOR3NTTHFLZlNhTjd4OEdvc2tETUlsU3Q4anpQMXI3R0UwQmEwK1ljdnlveVVreDhPUjZoN0hrWmZ5Wk9jSWt0TEVrMHFjejJmSCtWU1JwNkM0RkFEY0hoZTEwbVZ1Z0srYlVBK2srVHBpSnRxeXFnZnNYN3lxMDN5WCtNTU1ic2NnSHVvK3RXYXlJSHNZY09MbEdVY0luaE0vb0dnellIZHJ0dGNrZFJIUzd3cjBYNndPR1BqZnFnUGVvTllCZjVjL2ZlYk1hZm55NzZmbGRyOTFQdlYwUWoweXloNVc0N0JCc2F4TVpJN21WRHBtNFZQajY0QXcvdzVTQjJ5b0txQjFIYVRqRUtkRHVYWEFRRllka0RRclNjUUxpdVByZ0RpVExnLytUOHVBNFRzTWphM05VL0lPM0dhZDB0SmFiL2lxb0JLa1BoMnl1SHVmdVNvY2laaHY2WjJ0WldVeXBKS1NKMTR0M3llV2VhVnhKTy9FQ3ozZW9oTDVZWHh6ZGsyTFBCZXlGMmovbkJwZzRHSTF3Sm0wQmlnV2pxOEI2cjl3RGRBUnVsUU5jTEhTeS9aZm1LM1BMZmhaZCsrMHFVZnVWN1p4K2VPRzNQcDIzdWkxaGVxUlZScVRQcE0veVRiTGUvZm1BRUxEcDlsTTI3MDdYUStya05kU0hVK1Fmb01xTjIxODA2bXFvYTVoUkRyZXlPdFN0UEk5TUVkeWpTdmZZeXVqMTlFWEViUXppUytvOEVuNXBwazNIcmxKQ3BRV3oxMDl2MG4rU1hldTJyY2VPeFlmci9ibi8zbnJuVzBjbnRKVlg4WHdkWnUzTUR0eXRPRm12RFBUOTBocmZVQmJoTlQ2ckJldjlRVytZSzB2TUxIV0YwRmgwUjJmN1AwRk9hMmRjYTNjRjhQVVFkRjZuOVUrOWhHZTBUQ3pPcGF2VnZ5c2RzWXMvNVFlOFFsc0NYc1lhQ21WSEdQbmRvb2VTMG14L0U5YTlZTWpqSHViY2tRc2cwaytKRC9OdnM4UFFxeStLV2x0Z1VBMkg2WWZCZ2VqdmZxck5QMnFBcEtVWk5iU3pEV2hpTDdVeGs5ZXBZSTRIbzFraG9ISXlWT1F4RjVqWm40NkZaQm9ySTVLZ3JjMG9GZGZ3bUdsQ1cwZkEzUzdDUG41V0tjZ09lMlplZExNcFR3cnI2VnE0VnMxRGlxKzJHTXBMVnAxV1lqajhhYnJyOStLalRpMmNXbFJxY1VqZnZZQm00ZXZ2bHl0cld6SEp2YUQ4L3hncEQwV0s0Z3M2eDB1R2JsRk5BbjcxamxOdXkxRm5mTkMrYkZZZTlWVHA3MityeG9LRmkrM3hhcXFvcmJCeFFYR3pXV2VFOGRvZmZLY2ZCL3pIay9lYVJKWGVKTDcvaEh0UlVnREUxNkVsSG5oaVN1cmRZYjVUbnphdENUODhkdTh3aWZmSnAwd3VuNi9Vb05GNzh0UGN5R1F4elEwa3JTQzIrTnE0SjV1REVxVmxnY01ZOGtiMXBRSGc1SDJOcXRLVHBNSHJiQmtoZ0VJSEVES2EveFlJZy9TV1R3TlRXMXREb1NEWVgzNkJUNUtjVXFEUlBETmh3czFPYlNyK0ZwaGZxSXhocWxrWXVsNkYrUC9nRFhoN1JyVHI4WjU3QWVmaVVSRVN6ZkdRRFpicjk4OW91TnhkTU1nRlJFL2VPeUVwMnl6c1dEeG9DMWFWUld6TFY5Y1lQaXF6M3Y2cVNvUVUzNW9YbWVSWmJmSnVXNmZZQXJjZmVXd3lkNDVOMWdBY29wUUh0MkVEM0RkekJndy8zSlN4M3hHc0lKakpRRERvdkNIWmRDQWppZXZQQURFUkJqQlFIVEtJR1krQWN6QUgyRHJLS3hUaHVVQU9DdWo0U2dwRFNxREVSbXIxZU9Eb2hRUzZhdUExUEx2eFBxTDJqZW0xMTdPUWQ1VThkNkthWTFkVXFpdDNGN29EMWZudGV4ZkdoOU94bWVMMlVlWU1WSHdlTXNGUnlBY3NMbjZsMGlDeDVQNXBzUm5iekdON0VxMWh6WkJxN1pWSEtrcUthUkJVTVlNcURFM2crWlAwa3FiWFN5ZTdLVnV6STZ2OWZkci8ySlRwOGJJSDNlcVArdm9MNVdEc2FtdzBBRVhCTG4zK08wUStkZWllZUR5bnFOemNwZ3h3L3JCU3k2b1pIalRkS3czYytxcmVxWUFmOWs5eEJMc1FiekpiT0xOb3pxTzVNa2dRdCtBVEx6Qk5HQzE1TEZtSTlZYnpQb1JaRElaVmlHRHliQ0FQRTJtWEtxRFMzVllsNzZldnB6eVVwY1BKRDN6NTlmVnpWODRmMkhkdkxxNVBWMVRrMkt3cUZnRVdkYVNKMmtvWDdRR0F2VnRPRlI0MnJ0dzRFTlNYeFFVVXQ4VVZPZTJxMjI5MmhOVjlPcUUrb1pQVzcyWTBETitwMXNPRnptYzd2dXV6TXNyYytlVmdudXp1MzJIM0U1bXNmTjh2OFZRNmkxeXN0OG0yOHNoRHVuMlZkWlV5bTg3QkowQng2MFJNUnJ0L2p0L0wvTVR3UjhNK3ZIbHJmcmFVcGNuNzNwOWlYdnNuMExBV09pd2pQMDNINVZneXhqNTZGaXRFQWo0cjNJNW5NNnJwb3I1SUlicjdQYmlRdm5XSC93QXNTQ3JFUGVPS3FzaDdLS1N5dGNrTlJNa1pTQkdwUmlrbEJ6SGFpUG1EUllEYnhuTnd4YXoyWEo1RnN1UmdUY1pScEJacnpmM0k3Tlp2eExwemZwNWFuMXY1Z1NSR1l3RzNqaUtqQmFEMGJMckM5OHRPZXZTTnpKWXpMc3VlU2NJZTR2cTZ1cUc2bFlzVzdwb1FmZWNjRUxWQWV2L2h3Nm9ieGNpQXlkOXRWQ2Q4bEI4dldJWXY3ZytERlRZWGJLK3lvMXROWkdHV0h1Tkx4eXBLSW52bVhydHpYTjdIdnErTDN3eHJXZ1pweFhuanp1ZHQ3bnNpNkwyWDRrSlgwWE0xVVVVNUtEYjZpbTdidTNVallsclFpNEhXY3NmMDdXOERUV2hiclFSYlVidlV3MHBpcElYS1lLV2RPUURvTnM4bXpIa3JjWW1JNi9hMTVucExncERuakhQWUJ3Rno0SEl1NDJvUXdLN05LSW5Rc25EYUtRQTV4bk1lUU5XYkxSZ2s5bG9JZ2Z5ekt1UU9jOE15enVWdnBHZUlWVy95VytvaHh1aUwzQy9nYVRZMDRQUXBzdDZOdmFNckJ3YVhOcS9lUDdjR2ROYlcyalpVR3lvajRadEVGNHBOanp6TXFXc3lwY2E5bWZlcHBRbFdWV3dTRFg2R1lXd3EycHlFYXZBMWlmd1hmdlhOYlo4NDBEYm5ocXYwVlJxWlhYVjY2dDJ4cXBTVHBmTDJiYWhLVDZsdWF4eVFVbmpudW1zaWVwQ1JpZGkwZTdDU1V6RU8zZnovTGF0cTFiWE91YzFqVnhXN016ejI0bzhaWXlqYUxZWUVJSkJvVWNJdW1wZGpvclJFb3U3Wk95UFZDMHk2aUYvaTlpSFNjeUd2T0lIOUoxcjY5aDdBZmNLS0phTXBOOVdwWlUrQXVrRWI1UytwVXBBNVlKVUZOREtHNU54Tk92Qk5uYVg5K1N4dmxQTG9uWjdzTmpxV25COTdDWlpmZE10MDB6QzYvTjdUcjljR3l1TWVpb3JRNFpBK0dIbVhTM1d3T2U0V3NCZ0N3RlNoYWlXZWlaaXJpekFwWWc1NXkxemp6WTF6cHpaMURDVFgrZ1ZqcExVeTFIUm85YXY1d0M5ZmhSS1NsbDBacGR5L3NkMW5GOU5Vc2Y1dGJwenU1SkhtQ3dOaHY0dkVmNXRDZ0FBQUhqYWpaTEJUaHN4RUlaL0x3SFJBNml0ZWtJOVdLZ0hPTEJPb0VnUk9ZVkl1UlFKSWdGcWo3QzFkaGNsOFdKN0Q3eEVINkl2MGh1cStoNTloeDc3MjNGTHFFclZYYTM5ZVR6L3pLekhBSjdqSGdLTDV5TytKUmJZRU84U1oraUlJdkVLWG92UGlUdDRLYjRuWHNWRzlpcnhHbDVrNDhTYjJNbytVU1U2ejdqNkdpTUVGdGdTS25HR2RmRWg4UXI2b2tyY3dSdnhKZkVxL1g4a1hzTjJ0cDE0RTIrejl4akJvTUVkTEdxVXFPQWhzWTh1ZWpna25kT2lPUWV2TnZwb2poSm5rV2R4TDdEQkRibUk2aUU5UFhXR2RzZjFUb3pxbWNYaENJcHZTVzN3YUhHTm5DckRTQXEzWEJ2YU5lZjUwdXFLeXFCVmYxVHhVTU11bzJCa21qdGJsNVdYKzkzZW9UeXZ0QnlaMXRiYXlqTmJ6elJIYzZNTEw0ZXRyNHgxY3FmeXZuRkhTcFcxcjlycnZEQXpkZHNhcjl0NW5LNmF4cWtVSWtiWURWbWVQQWc4eWdZYzAzUEthNEZqTStWNHdCckRxZll4d0FRWC9JYWtwLzVvNzBGK2tIZDcvY0hrWWpJY0xCZXp0d2o3cjhiOER2SDRIQmJDeXlod2REWThiYmxVSHk2MWRiV1p5NWdaLzFQalh3cjcxZk5GeHgyN0hIUU5iWTZaUXQ0cDUzQkhTdTZmWW93VGl0Z1JOc1FWdG02OHkxMDl6WTB0MWVuNEJEOEIrckdvZVFBQWVOcGxpdGRPd21BQVJzOWZSaEdjRE1VdGJsR3h4VmxYWENpNEJTZW9wVEZnTHdnMUJXTzgxVWYxUFl5bWlUSFJjM08rbkh4SU9IeCs4UFl0d1Y5TXAwcTRjT1BCaTR5UEJ2d0VhS1NKWmxwb3BZMGdJY0pFYUtlREtKMTAwVTBQdmZUUnp3QXhCaGxpbUJGR0dXT2NDZUpNTXNVMENXWlFVRWt5eXh6ekxMRElFaHJMckxES0d1dHNzTWtXMit5UVlwYzkwbVRZNTRCRGpqam1oRlBPeUpMam5Bc3V1ZUthRy9JVXVPV09lM1NLR0x3TFNiaUVXM2lFVjhnaHExclNheFdqWnVwbDY5bE9sRzNqSWZqYjZpK1dreUoxMHk3OU84cVBsZGNuVTlOOGpsVkYrUm5xRnpMSE5XNEFBUUFCLy84QUQzamFZMkJrWUdEZ0FXSWxJR1ppWUFiQ1JBWkdoaVNHRkNBdmxTRWR5R1lCeXpBQUFDZlVBalY0Mm1OZ1pHQmc0R0lJWVVoaVlIWng4d2xoRUVrdlNzMW1VTWhKTE1sajBHRmdBY295L1AvUEFGS0Z6QlpqWUhaMkRGRmdFUFAxOXdHU1FmNitRQkl1eTVoV2xKak13QUZpZ1RFTFdDOGpVSVFSYUNZVDBENEZJTW5Hd01lUXpNRE1JTVFnQ3JJZFNJdUQxYWJBMlV3TUlneGlBTFcyRXhsNDJtTmdaR0JnNEdLd1liQmpZSFp4OHdsaEVFa3ZTczFta010SkxNbGowR0JnQWNveS9QOFBKTEN4Z0FBQVd4b0xhd0FBQUFBQUFRQUFBQURWcENjSUFBQUFBTm1jZytFQUFBQUEyZnRKTkE9PScpIGZvcm1hdCgnd29mZicpO1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICBmb250LWRpc3BsYXk6IHN3YXA7XHJcbn1cclxuIn19`,"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="")=>1t[`base.${e}`]=!1);for(const e of o.settings.plugins.base.parts)E.base[e]=!(`base.${e}`in t)||!!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) { diff --git a/src/templates/classic/image.svg b/src/templates/classic/image.svg index 44ced250..df0b82a4 100644 --- a/src/templates/classic/image.svg +++ b/src/templates/classic/image.svg @@ -10,7 +10,7 @@ + (!!computed.plugins.languages)*96 + (!!computed.plugins.music)*64 + (computed.plugins.music ? computed.plugins.music.tracks ? 14+Math.max(0, computed.plugins.music.tracks.length-1)*36 : 0 : 0) + (!!computed.plugins.posts)*64 + (computed.plugins.posts ? computed.plugins.posts.posts ? Math.max(0, computed.plugins.posts.posts.length)*40 : 0 : 0) - + (!!computed.plugins.isocalendar)*180 + + (!!computed.plugins.isocalendar)*192 + (!!computed.plugins.gists)*68 + Math.max(0, (((!!base.metadata)+(!!base.header)+((!!base.activity)||(!!base.community))+(!!base.repositories)+((!!computed.plugins.habits))+(!!computed.plugins.pagespeed)+(!!computed.plugins.languages)+(!!computed.plugins.music)+(!!computed.plugins.posts)+(!!computed.plugins.isocalendar)+(!!computed.plugins.gists))-1))*4 %>"> @@ -144,12 +144,13 @@ <%= user.packages.totalCount %> Package<%= s(user.packages.totalCount) %>
- + <%= computed.diskUsage %> used
<% if (computed.plugins.lines) { %>
- <% if (computed.plugins.lines.error) { %> + + <% if (computed.plugins.lines.error) { %> <%= computed.plugins.lines.error.message %> <% } else { %> <%= computed.plugins.lines.added %> added, <%= computed.plugins.lines.deleted %> removed @@ -460,7 +461,7 @@ <% if (computed.plugins.posts.posts.length) { %> <% for (const {title, date} of computed.plugins.posts.posts) { %>
- +
<%= date %>
<%= title %>
@@ -482,7 +483,7 @@ <% if (computed.plugins.isocalendar) { %>

- + Contributions calendar

@@ -497,7 +498,7 @@ <% if (!computed.plugins.isocalendar.error) { %>
- + Current streak <%= computed.plugins.isocalendar.streak.current %> day<%= s(computed.plugins.isocalendar.streak.current) %>