@datagrok/eda 1.1.2 → 1.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,2 +1,2 @@
1
- var eda_test;(()=>{"use strict";var t={d:(e,n)=>{for(var o in n)t.o(n,o)&&!t.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:n[o]})},o:(t,e)=>Object.prototype.hasOwnProperty.call(t,e),r:t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})}},e={};t.r(e),t.d(e,{_package:()=>v,test:()=>g,tests:()=>i});const n=DG,o=grok;var s=function(t,e,n,o){return new(n||(n=Promise))((function(s,i){function r(t){try{l(o.next(t))}catch(t){i(t)}}function c(t){try{l(o.throw(t))}catch(t){i(t)}}function l(t){var e;t.done?s(t.value):(e=t.value,e instanceof n?e:new n((function(t){t(e)}))).then(r,c)}l((o=o.apply(t,e||[])).next())}))};const i={},r="Auto Tests",c={};var l;!function(t){t.notNull=function(t,e){if(null==t)throw new Error(`${null==e?"Value":e} not defined`)}}(l||(l={}));class a{constructor(t,e){this.catchUnhandled=!0,this.report=!1,void 0!==t&&(this.catchUnhandled=t),void 0!==e&&(this.report=e)}}class u{constructor(t,e,n,o){var i;this.category=t,this.name=e,null!=o||(o={}),null!==(i=o.timeout)&&void 0!==i||(o.timeout=3e4),this.options=o,this.test=()=>s(this,void 0,void 0,(function*(){return new Promise(((t,e)=>s(this,void 0,void 0,(function*(){let o="";try{o=yield n()}catch(t){e(t)}t(o)}))))}))}}function d(t,e){return t.replace(new RegExp(e.name,"gi"),e.nqName)}function f(t){var e,l,f,h,v;return s(this,void 0,void 0,(function*(){const g=null===(l=null===(e=o.functions.getCurrentCall())||void 0===e?void 0:e.func)||void 0===l?void 0:l.package;yield function(t,e){return s(this,void 0,void 0,(function*(){if(c[t])return;const e=i;if(void 0!==e[r])return void(c[t]=!0);const n=[],l=yield o.dapi.functions.filter(`package.id = "${t}"`).list(),a=new RegExp(/.*\/\/\s*skip[:\s]*(.*)$/);for(const t of l){const e=t.options.test;if(e&&Array.isArray(e)&&e.length)for(let i=0;i<e.length;i++){const c=e[i].match(a);let l;c&&(null==c?void 0:c.length)>1&&(l=c[1]),n.push(new u(r,1===e.length?t.name:`${t.name} ${i+1}`,(()=>s(this,void 0,void 0,(function*(){if(!0!==(yield o.functions.eval(d(e[i],t))))throw`Failed: ${e[i]}`}))),{skipReason:l}))}}c[t]=!0,n.length&&(e[r]={tests:n})}))}(g.id);const y=[];console.log("Running tests"),null!=t||(t={}),null!==(f=(v=t).testContext)&&void 0!==f||(v.testContext=new a),o.shell.lastError="";for(const[e,n]of Object.entries(i)){if(null!=(null==t?void 0:t.category)&&!e.toLowerCase().startsWith(null==t?void 0:t.category.toLowerCase()))continue;console.log(`Started ${e} category`);try{n.before&&(yield n.before())}catch(t){n.beforeStatus=t.toString()}const o=null!==(h=n.tests)&&void 0!==h?h:[],s=[];for(let e=0;e<o.length;e++)s.push(yield p(o[e],null==t?void 0:t.test));const i=(yield Promise.all(s)).filter((t=>"skipped"!=t.result));try{n.after&&(yield n.after())}catch(t){n.afterStatus=t.toString()}n.afterStatus&&i.push({category:e,name:"init",result:n.afterStatus,success:!1,ms:0,skipped:!1}),n.beforeStatus&&i.push({category:e,name:"init",result:n.beforeStatus,success:!1,ms:0,skipped:!1}),y.push(...i)}if(t.testContext.catchUnhandled&&(yield function(t){return s(this,void 0,void 0,(function*(){yield new Promise((e=>setTimeout(e,t)))}))}(1e3),o.shell.lastError.length>0&&y.push({category:"Unhandled exceptions",name:"exceptions",result:o.shell.lastError,success:!1,ms:0,skipped:!1})),t.testContext.report){const t=new n.Logger,e=y.filter((t=>t.success)).length,o=y.filter((t=>t.skipped)).length,s=y.filter((t=>!t.success)),i="Package @package tested: @successful successful, @skipped skipped, @failed failed tests",r={successful:e,skipped:o,failed:s.length,package:g};for(const t of s)Object.assign(r,{[`${t.category} | ${t.name}`]:t.result});t.log(i,r,"package-tested")}return y}))}function p(t,e){var n,o,i;return s(this,void 0,void 0,(function*(){let s;const r=null!=e&&!t.name.toLowerCase().startsWith(e.toLowerCase()),c=(null===(n=t.options)||void 0===n?void 0:n.skipReason)||r,l=r?"skipped":null===(o=t.options)||void 0===o?void 0:o.skipReason;c||console.log(`Started ${t.category} ${t.name}`);const a=new Date;try{s=c?{success:!0,result:l,ms:0,skipped:!0}:{success:!0,result:null!==(i=yield t.test())&&void 0!==i?i:"OK",ms:0,skipped:!1}}catch(t){s={success:!1,result:t.toString(),ms:0,skipped:!1}}const u=new Date;return s.ms=u-a,c||console.log(`Finished ${t.category} ${t.name} for ${s.ms} ms`),s.category=t.category,s.name=t.name,s}))}var h=function(t,e,n,o){return new(n||(n=Promise))((function(s,i){function r(t){try{l(o.next(t))}catch(t){i(t)}}function c(t){try{l(o.throw(t))}catch(t){i(t)}}function l(t){var e;t.done?s(t.value):(e=t.value,e instanceof n?e:new n((function(t){t(e)}))).then(r,c)}l((o=o.apply(t,e||[])).next())}))};let v=new n.Package;function g(t,e,o){return h(this,void 0,void 0,(function*(){const s=yield f({category:t,test:e,testContext:o});return n.DataFrame.fromObjects(s)}))}eda_test=e})();
2
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,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LEdBQVMsQ0FBRSxNQUFPYyxHQUFLSixFQUFPSSxFQUFJLENBQUUsQ0FDMUYsU0FBU0MsRUFBU2YsR0FBUyxJQUFNWSxFQUFLTCxFQUFpQixNQUFFUCxHQUFTLENBQUUsTUFBT2MsR0FBS0osRUFBT0ksRUFBSSxDQUFFLENBQzdGLFNBQVNGLEVBQUtJLEdBSmxCLElBQWVoQixFQUlhZ0IsRUFBT0MsS0FBT1IsRUFBUU8sRUFBT2hCLFFBSjFDQSxFQUl5RGdCLEVBQU9oQixNQUpoREEsYUFBaUJNLEVBQUlOLEVBQVEsSUFBSU0sR0FBRSxTQUFVRyxHQUFXQSxFQUFRVCxFQUFRLEtBSWpCa0IsS0FBS1AsRUFBV0ksRUFBVyxDQUM3R0gsR0FBTUwsRUFBWUEsRUFBVVksTUFBTWYsRUFBU0MsR0FBYyxLQUFLUSxPQUNsRSxHQUNKLEVBR08sSUFBSThGLEVBQVcsSUFBSSxVQU9uQixTQUFTLEVBQUt6RSxFQUFVQyxFQUFNc0MsR0FDakMsT0FBTyxFQUFVMUMsVUFBTSxPQUFRLEdBQVEsWUFDbkMsTUFBTXFELFFBQWF2QyxFQUFTLENBQUVYLFdBQVVDLE9BQU1zQyxnQkFDOUMsT0FBTyx3QkFBeUJXLEVBQ3BDLEdBQ0osQyIsInNvdXJjZXMiOlsid2VicGFjazovL2VkYS93ZWJwYWNrL2Jvb3RzdHJhcCIsIndlYnBhY2s6Ly9lZGEvd2VicGFjay9ydW50aW1lL2RlZmluZSBwcm9wZXJ0eSBnZXR0ZXJzIiwid2VicGFjazovL2VkYS93ZWJwYWNrL3J1bnRpbWUvaGFzT3duUHJvcGVydHkgc2hvcnRoYW5kIiwid2VicGFjazovL2VkYS93ZWJwYWNrL3J1bnRpbWUvbWFrZSBuYW1lc3BhY2Ugb2JqZWN0Iiwid2VicGFjazovL2VkYS9leHRlcm5hbCB2YXIgXCJER1wiIiwid2VicGFjazovL2VkYS9leHRlcm5hbCB2YXIgXCJncm9rXCIiLCJ3ZWJwYWNrOi8vZWRhLy4vbm9kZV9tb2R1bGVzL0BkYXRhZ3Jvay1saWJyYXJpZXMvdXRpbHMvc3JjL3Rlc3QuanMiLCJ3ZWJwYWNrOi8vZWRhLy4vc3JjL3BhY2thZ2UtdGVzdC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBUaGUgcmVxdWlyZSBzY29wZVxudmFyIF9fd2VicGFja19yZXF1aXJlX18gPSB7fTtcblxuIiwiLy8gZGVmaW5lIGdldHRlciBmdW5jdGlvbnMgZm9yIGhhcm1vbnkgZXhwb3J0c1xuX193ZWJwYWNrX3JlcXVpcmVfXy5kID0gKGV4cG9ydHMsIGRlZmluaXRpb24pID0+IHtcblx0Zm9yKHZhciBrZXkgaW4gZGVmaW5pdGlvbikge1xuXHRcdGlmKF9fd2VicGFja19yZXF1aXJlX18ubyhkZWZpbml0aW9uLCBrZXkpICYmICFfX3dlYnBhY2tfcmVxdWlyZV9fLm8oZXhwb3J0cywga2V5KSkge1xuXHRcdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIGtleSwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGRlZmluaXRpb25ba2V5XSB9KTtcblx0XHR9XG5cdH1cbn07IiwiX193ZWJwYWNrX3JlcXVpcmVfXy5vID0gKG9iaiwgcHJvcCkgPT4gKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvYmosIHByb3ApKSIsIi8vIGRlZmluZSBfX2VzTW9kdWxlIG9uIGV4cG9ydHNcbl9fd2VicGFja19yZXF1aXJlX18uciA9IChleHBvcnRzKSA9PiB7XG5cdGlmKHR5cGVvZiBTeW1ib2wgIT09ICd1bmRlZmluZWQnICYmIFN5bWJvbC50b1N0cmluZ1RhZykge1xuXHRcdE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuXHR9XG5cdE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCAnX19lc01vZHVsZScsIHsgdmFsdWU6IHRydWUgfSk7XG59OyIsImNvbnN0IF9fV0VCUEFDS19OQU1FU1BBQ0VfT0JKRUNUX18gPSBERzsiLCJjb25zdCBfX1dFQlBBQ0tfTkFNRVNQQUNFX09CSkVDVF9fID0gZ3JvazsiLCJ2YXIgX19hd2FpdGVyID0gKHRoaXMgJiYgdGhpcy5fX2F3YWl0ZXIpIHx8IGZ1bmN0aW9uICh0aGlzQXJnLCBfYXJndW1lbnRzLCBQLCBnZW5lcmF0b3IpIHtcbiAgICBmdW5jdGlvbiBhZG9wdCh2YWx1ZSkgeyByZXR1cm4gdmFsdWUgaW5zdGFuY2VvZiBQID8gdmFsdWUgOiBuZXcgUChmdW5jdGlvbiAocmVzb2x2ZSkgeyByZXNvbHZlKHZhbHVlKTsgfSk7IH1cbiAgICByZXR1cm4gbmV3IChQIHx8IChQID0gUHJvbWlzZSkpKGZ1bmN0aW9uIChyZXNvbHZlLCByZWplY3QpIHtcbiAgICAgICAgZnVuY3Rpb24gZnVsZmlsbGVkKHZhbHVlKSB7IHRyeSB7IHN0ZXAoZ2VuZXJhdG9yLm5leHQodmFsdWUpKTsgfSBjYXRjaCAoZSkgeyByZWplY3QoZSk7IH0gfVxuICAgICAgICBmdW5jdGlvbiByZWplY3RlZCh2YWx1ZSkgeyB0cnkgeyBzdGVwKGdlbmVyYXRvcltcInRocm93XCJdKHZhbHVlKSk7IH0gY2F0Y2ggKGUpIHsgcmVqZWN0KGUpOyB9IH1cbiAgICAgICAgZnVuY3Rpb24gc3RlcChyZXN1bHQpIHsgcmVzdWx0LmRvbmUgPyByZXNvbHZlKHJlc3VsdC52YWx1ZSkgOiBhZG9wdChyZXN1bHQudmFsdWUpLnRoZW4oZnVsZmlsbGVkLCByZWplY3RlZCk7IH1cbiAgICAgICAgc3RlcCgoZ2VuZXJhdG9yID0gZ2VuZXJhdG9yLmFwcGx5KHRoaXNBcmcsIF9hcmd1bWVudHMgfHwgW10pKS5uZXh0KCkpO1xuICAgIH0pO1xufTtcbmltcG9ydCAqIGFzIGdyb2sgZnJvbSAnZGF0YWdyb2stYXBpL2dyb2snO1xuaW1wb3J0ICogYXMgREcgZnJvbSAnZGF0YWdyb2stYXBpL2RnJztcbmV4cG9ydCBjb25zdCB0ZXN0cyA9IHt9O1xuY29uc3QgYXV0b1Rlc3RzQ2F0TmFtZSA9ICdBdXRvIFRlc3RzJztcbmNvbnN0IHdhc1JlZ2lzdGVyZWQgPSB7fTtcbmV4cG9ydCBsZXQgY3VycmVudENhdGVnb3J5O1xuZXhwb3J0IHZhciBhc3N1cmU7XG4oZnVuY3Rpb24gKGFzc3VyZSkge1xuICAgIGZ1bmN0aW9uIG5vdE51bGwodmFsdWUsIG5hbWUpIHtcbiAgICAgICAgaWYgKHZhbHVlID09IG51bGwpXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYCR7bmFtZSA9PSBudWxsID8gJ1ZhbHVlJyA6IG5hbWV9IG5vdCBkZWZpbmVkYCk7XG4gICAgfVxuICAgIGFzc3VyZS5ub3ROdWxsID0gbm90TnVsbDtcbn0pKGFzc3VyZSB8fCAoYXNzdXJlID0ge30pKTtcbmV4cG9ydCBjbGFzcyBUZXN0Q29udGV4dCB7XG4gICAgY29uc3RydWN0b3IoY2F0Y2hVbmhhbmRsZWQsIHJlcG9ydCkge1xuICAgICAgICB0aGlzLmNhdGNoVW5oYW5kbGVkID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5yZXBvcnQgPSBmYWxzZTtcbiAgICAgICAgaWYgKGNhdGNoVW5oYW5kbGVkICE9PSB1bmRlZmluZWQpXG4gICAgICAgICAgICB0aGlzLmNhdGNoVW5oYW5kbGVkID0gY2F0Y2hVbmhhbmRsZWQ7XG4gICAgICAgIGlmIChyZXBvcnQgIT09IHVuZGVmaW5lZClcbiAgICAgICAgICAgIHRoaXMucmVwb3J0ID0gcmVwb3J0O1xuICAgIH1cbiAgICA7XG59XG5leHBvcnQgY2xhc3MgVGVzdCB7XG4gICAgY29uc3RydWN0b3IoY2F0ZWdvcnksIG5hbWUsIHRlc3QsIG9wdGlvbnMpIHtcbiAgICAgICAgdmFyIF9hO1xuICAgICAgICB0aGlzLmNhdGVnb3J5ID0gY2F0ZWdvcnk7XG4gICAgICAgIHRoaXMubmFtZSA9IG5hbWU7XG4gICAgICAgIG9wdGlvbnMgIT09IG51bGwgJiYgb3B0aW9ucyAhPT0gdm9pZCAwID8gb3B0aW9ucyA6IChvcHRpb25zID0ge30pO1xuICAgICAgICAoX2EgPSBvcHRpb25zLnRpbWVvdXQpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IChvcHRpb25zLnRpbWVvdXQgPSAzMDAwMCk7XG4gICAgICAgIHRoaXMub3B0aW9ucyA9IG9wdGlvbnM7XG4gICAgICAgIHRoaXMudGVzdCA9ICgpID0+IF9fYXdhaXRlcih0aGlzLCB2b2lkIDAsIHZvaWQgMCwgZnVuY3Rpb24qICgpIHtcbiAgICAgICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiBfX2F3YWl0ZXIodGhpcywgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKiAoKSB7XG4gICAgICAgICAgICAgICAgbGV0IHJlc3VsdCA9ICcnO1xuICAgICAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgICAgIHJlc3VsdCA9IHlpZWxkIHRlc3QoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgICAgICAgICAgcmVqZWN0KGUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZXNvbHZlKHJlc3VsdCk7XG4gICAgICAgICAgICB9KSk7XG4gICAgICAgIH0pO1xuICAgIH1cbn1cbmV4cG9ydCBmdW5jdGlvbiB0ZXN0RXZlbnQoZXZlbnQsIGhhbmRsZXIsIHRyaWdnZXIsIG1zID0gMCkge1xuICAgIHJldHVybiBfX2F3YWl0ZXIodGhpcywgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKiAoKSB7XG4gICAgICAgIGxldCBzdWI7XG4gICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICAgICAgICBzdWIgPSBldmVudC5zdWJzY3JpYmUoKGFyZ3MpID0+IHtcbiAgICAgICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgICAgICBoYW5kbGVyKGFyZ3MpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBjYXRjaCAoZSkge1xuICAgICAgICAgICAgICAgICAgICByZWplY3QoZSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHN1Yi51bnN1YnNjcmliZSgpO1xuICAgICAgICAgICAgICAgIHJlc29sdmUoJ09LJyk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHN1Yi51bnN1YnNjcmliZSgpO1xuICAgICAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBwcmVmZXItcHJvbWlzZS1yZWplY3QtZXJyb3JzXG4gICAgICAgICAgICAgICAgcmVqZWN0KCd0aW1lb3V0Jyk7XG4gICAgICAgICAgICB9LCBtcyk7XG4gICAgICAgICAgICB0cmlnZ2VyKCk7XG4gICAgICAgIH0pO1xuICAgIH0pO1xufVxuZXhwb3J0IGZ1bmN0aW9uIHRlc3QobmFtZSwgdGVzdCwgb3B0aW9ucykge1xuICAgIGlmICh0ZXN0c1tjdXJyZW50Q2F0ZWdvcnldID09IHVuZGVmaW5lZClcbiAgICAgICAgdGVzdHNbY3VycmVudENhdGVnb3J5XSA9IHt9O1xuICAgIGlmICh0ZXN0c1tjdXJyZW50Q2F0ZWdvcnldLnRlc3RzID09IHVuZGVmaW5lZClcbiAgICAgICAgdGVzdHNbY3VycmVudENhdGVnb3J5XS50ZXN0cyA9IFtdO1xuICAgIHRlc3RzW2N1cnJlbnRDYXRlZ29yeV0udGVzdHMucHVzaChuZXcgVGVzdChjdXJyZW50Q2F0ZWdvcnksIG5hbWUsIHRlc3QsIG9wdGlvbnMpKTtcbn1cbi8qIFRlc3RzIHR3byBvYmplY3RzIGZvciBlcXVhbGl0eSwgdGhyb3dzIGFuIGV4Y2VwdGlvbiBpZiB0aGV5IGFyZSBub3QgZXF1YWwuICovXG5leHBvcnQgZnVuY3Rpb24gZXhwZWN0KGFjdHVhbCwgZXhwZWN0ZWQgPSB0cnVlLCBlcnJvcikge1xuICAgIGlmIChlcnJvcilcbiAgICAgICAgZXJyb3IgPSBgJHtlcnJvcn0sIGA7XG4gICAgZWxzZVxuICAgICAgICBlcnJvciA9ICcnO1xuICAgIGlmIChhY3R1YWwgIT09IGV4cGVjdGVkKVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYCR7ZXJyb3J9RXhwZWN0ZWQgXCIke2V4cGVjdGVkfVwiLCBnb3QgXCIke2FjdHVhbH1cImApO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGV4cGVjdEZsb2F0KGFjdHVhbCwgZXhwZWN0ZWQsIHRvbGVyYW5jZSA9IDAuMDAxLCBlcnJvcikge1xuICAgIGlmICgoYWN0dWFsID09PSBOdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFkgJiYgZXhwZWN0ZWQgPT09IE51bWJlci5QT1NJVElWRV9JTkZJTklUWSkgfHxcbiAgICAgICAgKGFjdHVhbCA9PT0gTnVtYmVyLk5FR0FUSVZFX0lORklOSVRZICYmIGV4cGVjdGVkID09PSBOdW1iZXIuTkVHQVRJVkVfSU5GSU5JVFkpIHx8XG4gICAgICAgIChhY3R1YWwgPT09IE51bWJlci5OYU4gJiYgZXhwZWN0ZWQgPT09IE51bWJlci5OYU4pIHx8IChpc05hTihhY3R1YWwpICYmIGlzTmFOKGV4cGVjdGVkKSkpXG4gICAgICAgIHJldHVybjtcbiAgICBjb25zdCBhcmVFcXVhbCA9IE1hdGguYWJzKGFjdHVhbCAtIGV4cGVjdGVkKSA8IHRvbGVyYW5jZTtcbiAgICBleHBlY3QoYXJlRXF1YWwsIHRydWUsIGAke2Vycm9yICE9PSBudWxsICYmIGVycm9yICE9PSB2b2lkIDAgPyBlcnJvciA6ICcnfSAodG9sZXJhbmNlID0gJHt0b2xlcmFuY2V9KWApO1xuICAgIGlmICghYXJlRXF1YWwpXG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgRXhwZWN0ZWQgJHtleHBlY3RlZH0sIGdvdCAke2FjdHVhbH0gKHRvbGVyYW5jZSA9ICR7dG9sZXJhbmNlfSlgKTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBleHBlY3RUYWJsZShhY3R1YWwsIGV4cGVjdGVkLCBlcnJvcikge1xuICAgIGNvbnN0IGV4cGVjdGVkUm93Q291bnQgPSBleHBlY3RlZC5yb3dDb3VudDtcbiAgICBjb25zdCBhY3R1YWxSb3dDb3VudCA9IGFjdHVhbC5yb3dDb3VudDtcbiAgICBleHBlY3QoYWN0dWFsUm93Q291bnQsIGV4cGVjdGVkUm93Q291bnQsIGAke2Vycm9yICE9PSBudWxsICYmIGVycm9yICE9PSB2b2lkIDAgPyBlcnJvciA6ICcnfSwgcm93IGNvdW50YCk7XG4gICAgZm9yIChjb25zdCBjb2x1bW4gb2YgZXhwZWN0ZWQuY29sdW1ucykge1xuICAgICAgICBjb25zdCBhY3R1YWxDb2x1bW4gPSBhY3R1YWwuY29sdW1ucy5ieU5hbWUoY29sdW1uLm5hbWUpO1xuICAgICAgICBpZiAoYWN0dWFsQ29sdW1uID09IG51bGwpXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYENvbHVtbiAke2NvbHVtbi5uYW1lfSBub3QgZm91bmRgKTtcbiAgICAgICAgaWYgKGFjdHVhbENvbHVtbi50eXBlICE9IGNvbHVtbi50eXBlKVxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBDb2x1bW4gJHtjb2x1bW4ubmFtZX0gdHlwZSBleHBlY3RlZCAke2NvbHVtbi50eXBlfSBnb3QgJHthY3R1YWxDb2x1bW4udHlwZX1gKTtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBleHBlY3RlZFJvd0NvdW50OyBpKyspIHtcbiAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gY29sdW1uLmdldChpKTtcbiAgICAgICAgICAgIGNvbnN0IGFjdHVhbFZhbHVlID0gYWN0dWFsQ29sdW1uLmdldChpKTtcbiAgICAgICAgICAgIGlmIChjb2x1bW4udHlwZSA9PSBERy5UWVBFLkZMT0FUKVxuICAgICAgICAgICAgICAgIGV4cGVjdEZsb2F0KGFjdHVhbFZhbHVlLCB2YWx1ZSwgMC4wMDAxLCBlcnJvcik7XG4gICAgICAgICAgICBlbHNlIGlmIChjb2x1bW4udHlwZSA9PSBERy5UWVBFLkRBVEVfVElNRSlcbiAgICAgICAgICAgICAgICBleHBlY3QoYWN0dWFsVmFsdWUuaXNTYW1lKHZhbHVlKSwgdHJ1ZSwgZXJyb3IpO1xuICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgIGV4cGVjdChhY3R1YWxWYWx1ZSwgdmFsdWUsIGVycm9yKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbmV4cG9ydCBmdW5jdGlvbiBleHBlY3RPYmplY3QoYWN0dWFsLCBleHBlY3RlZCkge1xuICAgIGZvciAoY29uc3QgW2V4cGVjdGVkS2V5LCBleHBlY3RlZFZhbHVlXSBvZiBPYmplY3QuZW50cmllcyhleHBlY3RlZCkpIHtcbiAgICAgICAgaWYgKCFhY3R1YWwuaGFzT3duUHJvcGVydHkoZXhwZWN0ZWRLZXkpKVxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBFeHBlY3RlZCBwcm9wZXJ0eSBcIiR7ZXhwZWN0ZWRLZXl9XCIgbm90IGZvdW5kYCk7XG4gICAgICAgIGNvbnN0IGFjdHVhbFZhbHVlID0gYWN0dWFsW2V4cGVjdGVkS2V5XTtcbiAgICAgICAgaWYgKGFjdHVhbFZhbHVlIGluc3RhbmNlb2YgQXJyYXkgJiYgZXhwZWN0ZWRWYWx1ZSBpbnN0YW5jZW9mIEFycmF5KVxuICAgICAgICAgICAgZXhwZWN0QXJyYXkoYWN0dWFsVmFsdWUsIGV4cGVjdGVkVmFsdWUpO1xuICAgICAgICBlbHNlIGlmIChhY3R1YWxWYWx1ZSBpbnN0YW5jZW9mIE9iamVjdCAmJiBleHBlY3RlZFZhbHVlIGluc3RhbmNlb2YgT2JqZWN0KVxuICAgICAgICAgICAgZXhwZWN0T2JqZWN0KGFjdHVhbFZhbHVlLCBleHBlY3RlZFZhbHVlKTtcbiAgICAgICAgZWxzZSBpZiAoTnVtYmVyLmlzRmluaXRlKGFjdHVhbFZhbHVlKSAmJiBOdW1iZXIuaXNGaW5pdGUoZXhwZWN0ZWRWYWx1ZSkpXG4gICAgICAgICAgICBleHBlY3RGbG9hdChhY3R1YWxWYWx1ZSwgZXhwZWN0ZWRWYWx1ZSk7XG4gICAgICAgIGVsc2UgaWYgKGFjdHVhbFZhbHVlICE9IGV4cGVjdGVkVmFsdWUpXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEV4cGVjdGVkICgke2V4cGVjdGVkVmFsdWV9KSBmb3Iga2V5ICcke2V4cGVjdGVkS2V5fScsIGdvdCAoJHthY3R1YWxWYWx1ZX0pYCk7XG4gICAgfVxufVxuZXhwb3J0IGZ1bmN0aW9uIGV4cGVjdEFycmF5KGFjdHVhbCwgZXhwZWN0ZWQpIHtcbiAgICBjb25zdCBhY3R1YWxMZW5ndGggPSBhY3R1YWwubGVuZ3RoO1xuICAgIGNvbnN0IGV4cGVjdGVkTGVuZ3RoID0gZXhwZWN0ZWQubGVuZ3RoO1xuICAgIGlmIChhY3R1YWxMZW5ndGggIT0gZXhwZWN0ZWRMZW5ndGgpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBBcnJheXMgYXJlIG9mIGRpZmZlcmVudCBsZW5ndGg6IGFjdHVhbCBhcnJheSBsZW5ndGggaXMgJHthY3R1YWxMZW5ndGh9IGAgK1xuICAgICAgICAgICAgYGFuZCBleHBlY3RlZCBhcnJheSBsZW5ndGggaXMgJHtleHBlY3RlZExlbmd0aH1gKTtcbiAgICB9XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBhY3R1YWxMZW5ndGg7IGkrKykge1xuICAgICAgICBpZiAoYWN0dWFsW2ldIGluc3RhbmNlb2YgQXJyYXkgJiYgZXhwZWN0ZWRbaV0gaW5zdGFuY2VvZiBBcnJheSlcbiAgICAgICAgICAgIGV4cGVjdEFycmF5KGFjdHVhbFtpXSwgZXhwZWN0ZWRbaV0pO1xuICAgICAgICBlbHNlIGlmIChhY3R1YWxbaV0gaW5zdGFuY2VvZiBPYmplY3QgJiYgZXhwZWN0ZWRbaV0gaW5zdGFuY2VvZiBPYmplY3QpXG4gICAgICAgICAgICBleHBlY3RPYmplY3QoYWN0dWFsW2ldLCBleHBlY3RlZFtpXSk7XG4gICAgICAgIGVsc2UgaWYgKGFjdHVhbFtpXSAhPSBleHBlY3RlZFtpXSlcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgRXhwZWN0ZWQgJHtleHBlY3RlZFtpXX0gYXQgcG9zaXRpb24gJHtpfSwgZ290ICR7YWN0dWFsW2ldfWApO1xuICAgIH1cbn1cbi8qIERlZmluZXMgYSB0ZXN0IHN1aXRlLiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNhdGVnb3J5KGNhdGVnb3J5LCB0ZXN0cykge1xuICAgIGN1cnJlbnRDYXRlZ29yeSA9IGNhdGVnb3J5O1xuICAgIHRlc3RzKCk7XG59XG4vKiBEZWZpbmVzIGEgZnVuY3Rpb24gdG8gYmUgZXhlY3V0ZWQgYmVmb3JlIHRoZSB0ZXN0cyBpbiB0aGlzIGNhdGVnb3J5IGFyZSBleGVjdXRlZC4gKi9cbmV4cG9ydCBmdW5jdGlvbiBiZWZvcmUoYmVmb3JlKSB7XG4gICAgaWYgKHRlc3RzW2N1cnJlbnRDYXRlZ29yeV0gPT0gdW5kZWZpbmVkKVxuICAgICAgICB0ZXN0c1tjdXJyZW50Q2F0ZWdvcnldID0ge307XG4gICAgdGVzdHNbY3VycmVudENhdGVnb3J5XS5iZWZvcmUgPSBiZWZvcmU7XG59XG4vKiBEZWZpbmVzIGEgZnVuY3Rpb24gdG8gYmUgZXhlY3V0ZWQgYWZ0ZXIgdGhlIHRlc3RzIGluIHRoaXMgY2F0ZWdvcnkgYXJlIGV4ZWN1dGVkLiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFmdGVyKGFmdGVyKSB7XG4gICAgaWYgKHRlc3RzW2N1cnJlbnRDYXRlZ29yeV0gPT0gdW5kZWZpbmVkKVxuICAgICAgICB0ZXN0c1tjdXJyZW50Q2F0ZWdvcnldID0ge307XG4gICAgdGVzdHNbY3VycmVudENhdGVnb3J5XS5hZnRlciA9IGFmdGVyO1xufVxuZnVuY3Rpb24gYWRkTmFtZXNwYWNlKHMsIGYpIHtcbiAgICByZXR1cm4gcy5yZXBsYWNlKG5ldyBSZWdFeHAoZi5uYW1lLCAnZ2knKSwgZi5ucU5hbWUpO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGluaXRBdXRvVGVzdHMocGFja2FnZUlkLCBtb2R1bGUpIHtcbiAgICByZXR1cm4gX19hd2FpdGVyKHRoaXMsIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbiogKCkge1xuICAgICAgICBpZiAod2FzUmVnaXN0ZXJlZFtwYWNrYWdlSWRdKVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICBjb25zdCBtb2R1bGVUZXN0cyA9IG1vZHVsZSA/IG1vZHVsZS50ZXN0cyA6IHRlc3RzO1xuICAgICAgICBpZiAobW9kdWxlVGVzdHNbYXV0b1Rlc3RzQ2F0TmFtZV0gIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgd2FzUmVnaXN0ZXJlZFtwYWNrYWdlSWRdID0gdHJ1ZTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBtb2R1bGVBdXRvVGVzdHMgPSBbXTtcbiAgICAgICAgY29uc3QgcGFja0Z1bmN0aW9ucyA9IHlpZWxkIGdyb2suZGFwaS5mdW5jdGlvbnMuZmlsdGVyKGBwYWNrYWdlLmlkID0gXCIke3BhY2thZ2VJZH1cImApLmxpc3QoKTtcbiAgICAgICAgY29uc3QgcmVnID0gbmV3IFJlZ0V4cCgvLipcXC9cXC9cXHMqc2tpcFs6XFxzXSooLiopJC8pO1xuICAgICAgICBmb3IgKGNvbnN0IGYgb2YgcGFja0Z1bmN0aW9ucykge1xuICAgICAgICAgICAgY29uc3QgdGVzdHMgPSBmLm9wdGlvbnNbJ3Rlc3QnXTtcbiAgICAgICAgICAgIGlmICghKHRlc3RzICYmIEFycmF5LmlzQXJyYXkodGVzdHMpICYmIHRlc3RzLmxlbmd0aCkpXG4gICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRlc3RzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgY29uc3Qgc2tpcFJlYXNvbnMgPSB0ZXN0c1tpXS5tYXRjaChyZWcpO1xuICAgICAgICAgICAgICAgIGxldCBza2lwUmVhc29uO1xuICAgICAgICAgICAgICAgIGlmIChza2lwUmVhc29ucyAmJiAoc2tpcFJlYXNvbnMgPT09IG51bGwgfHwgc2tpcFJlYXNvbnMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNraXBSZWFzb25zLmxlbmd0aCkgPiAxKVxuICAgICAgICAgICAgICAgICAgICBza2lwUmVhc29uID0gc2tpcFJlYXNvbnNbMV07XG4gICAgICAgICAgICAgICAgbW9kdWxlQXV0b1Rlc3RzLnB1c2gobmV3IFRlc3QoYXV0b1Rlc3RzQ2F0TmFtZSwgdGVzdHMubGVuZ3RoID09PSAxID8gZi5uYW1lIDogYCR7Zi5uYW1lfSAke2kgKyAxfWAsICgpID0+IF9fYXdhaXRlcih0aGlzLCB2b2lkIDAsIHZvaWQgMCwgZnVuY3Rpb24qICgpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgcmVzID0geWllbGQgZ3Jvay5mdW5jdGlvbnMuZXZhbChhZGROYW1lc3BhY2UodGVzdHNbaV0sIGYpKTtcbiAgICAgICAgICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXRocm93LWxpdGVyYWxcbiAgICAgICAgICAgICAgICAgICAgaWYgKHJlcyAhPT0gdHJ1ZSlcbiAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IGBGYWlsZWQ6ICR7dGVzdHNbaV19YDtcbiAgICAgICAgICAgICAgICB9KSwgeyBza2lwUmVhc29uOiBza2lwUmVhc29uIH0pKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB3YXNSZWdpc3RlcmVkW3BhY2thZ2VJZF0gPSB0cnVlO1xuICAgICAgICBpZiAoIW1vZHVsZUF1dG9UZXN0cy5sZW5ndGgpXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIG1vZHVsZVRlc3RzW2F1dG9UZXN0c0NhdE5hbWVdID0geyB0ZXN0czogbW9kdWxlQXV0b1Rlc3RzIH07XG4gICAgfSk7XG59XG5leHBvcnQgZnVuY3Rpb24gcnVuVGVzdHMob3B0aW9ucykge1xuICAgIHZhciBfYSwgX2IsIF9jLCBfZDtcbiAgICB2YXIgX2U7XG4gICAgcmV0dXJuIF9fYXdhaXRlcih0aGlzLCB2b2lkIDAsIHZvaWQgMCwgZnVuY3Rpb24qICgpIHtcbiAgICAgICAgY29uc3QgcGFja2FnZV8gPSAoX2IgPSAoX2EgPSBncm9rLmZ1bmN0aW9ucy5nZXRDdXJyZW50Q2FsbCgpKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuZnVuYykgPT09IG51bGwgfHwgX2IgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9iLnBhY2thZ2U7XG4gICAgICAgIHlpZWxkIGluaXRBdXRvVGVzdHMocGFja2FnZV8uaWQpO1xuICAgICAgICBjb25zdCByZXN1bHRzID0gW107XG4gICAgICAgIGNvbnNvbGUubG9nKGBSdW5uaW5nIHRlc3RzYCk7XG4gICAgICAgIG9wdGlvbnMgIT09IG51bGwgJiYgb3B0aW9ucyAhPT0gdm9pZCAwID8gb3B0aW9ucyA6IChvcHRpb25zID0ge30pO1xuICAgICAgICAoX2MgPSAoX2UgPSBvcHRpb25zKS50ZXN0Q29udGV4dCkgIT09IG51bGwgJiYgX2MgIT09IHZvaWQgMCA/IF9jIDogKF9lLnRlc3RDb250ZXh0ID0gbmV3IFRlc3RDb250ZXh0KCkpO1xuICAgICAgICBncm9rLnNoZWxsLmxhc3RFcnJvciA9ICcnO1xuICAgICAgICBmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiBPYmplY3QuZW50cmllcyh0ZXN0cykpIHtcbiAgICAgICAgICAgIGlmICgob3B0aW9ucyA9PT0gbnVsbCB8fCBvcHRpb25zID09PSB2b2lkIDAgPyB2b2lkIDAgOiBvcHRpb25zLmNhdGVnb3J5KSAhPSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICBpZiAoIWtleS50b0xvd2VyQ2FzZSgpLnN0YXJ0c1dpdGgob3B0aW9ucyA9PT0gbnVsbCB8fCBvcHRpb25zID09PSB2b2lkIDAgPyB2b2lkIDAgOiBvcHRpb25zLmNhdGVnb3J5LnRvTG93ZXJDYXNlKCkpKVxuICAgICAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnNvbGUubG9nKGBTdGFydGVkICR7a2V5fSBjYXRlZ29yeWApO1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBpZiAodmFsdWUuYmVmb3JlKVxuICAgICAgICAgICAgICAgICAgICB5aWVsZCB2YWx1ZS5iZWZvcmUoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNhdGNoICh4KSB7XG4gICAgICAgICAgICAgICAgdmFsdWUuYmVmb3JlU3RhdHVzID0geC50b1N0cmluZygpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgdCA9IChfZCA9IHZhbHVlLnRlc3RzKSAhPT0gbnVsbCAmJiBfZCAhPT0gdm9pZCAwID8gX2QgOiBbXTtcbiAgICAgICAgICAgIGNvbnN0IHJlcyA9IFtdO1xuICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0Lmxlbmd0aDsgaSsrKVxuICAgICAgICAgICAgICAgIHJlcy5wdXNoKHlpZWxkIGV4ZWNUZXN0KHRbaV0sIG9wdGlvbnMgPT09IG51bGwgfHwgb3B0aW9ucyA9PT0gdm9pZCAwID8gdm9pZCAwIDogb3B0aW9ucy50ZXN0KSk7XG4gICAgICAgICAgICBjb25zdCBkYXRhID0gKHlpZWxkIFByb21pc2UuYWxsKHJlcykpLmZpbHRlcigoZCkgPT4gZC5yZXN1bHQgIT0gJ3NraXBwZWQnKTtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgaWYgKHZhbHVlLmFmdGVyKVxuICAgICAgICAgICAgICAgICAgICB5aWVsZCB2YWx1ZS5hZnRlcigpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY2F0Y2ggKHgpIHtcbiAgICAgICAgICAgICAgICB2YWx1ZS5hZnRlclN0YXR1cyA9IHgudG9TdHJpbmcoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICh2YWx1ZS5hZnRlclN0YXR1cylcbiAgICAgICAgICAgICAgICBkYXRhLnB1c2goeyBjYXRlZ29yeToga2V5LCBuYW1lOiAnaW5pdCcsIHJlc3VsdDogdmFsdWUuYWZ0ZXJTdGF0dXMsIHN1Y2Nlc3M6IGZhbHNlLCBtczogMCwgc2tpcHBlZDogZmFsc2UgfSk7XG4gICAgICAgICAgICBpZiAodmFsdWUuYmVmb3JlU3RhdHVzKVxuICAgICAgICAgICAgICAgIGRhdGEucHVzaCh7IGNhdGVnb3J5OiBrZXksIG5hbWU6ICdpbml0JywgcmVzdWx0OiB2YWx1ZS5iZWZvcmVTdGF0dXMsIHN1Y2Nlc3M6IGZhbHNlLCBtczogMCwgc2tpcHBlZDogZmFsc2UgfSk7XG4gICAgICAgICAgICByZXN1bHRzLnB1c2goLi4uZGF0YSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKG9wdGlvbnMudGVzdENvbnRleHQuY2F0Y2hVbmhhbmRsZWQpIHtcbiAgICAgICAgICAgIHlpZWxkIGRlbGF5KDEwMDApO1xuICAgICAgICAgICAgaWYgKGdyb2suc2hlbGwubGFzdEVycm9yLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgICAgICByZXN1bHRzLnB1c2goe1xuICAgICAgICAgICAgICAgICAgICBjYXRlZ29yeTogJ1VuaGFuZGxlZCBleGNlcHRpb25zJyxcbiAgICAgICAgICAgICAgICAgICAgbmFtZTogJ2V4Y2VwdGlvbnMnLFxuICAgICAgICAgICAgICAgICAgICByZXN1bHQ6IGdyb2suc2hlbGwubGFzdEVycm9yLCBzdWNjZXNzOiBmYWxzZSwgbXM6IDAsIHNraXBwZWQ6IGZhbHNlXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKG9wdGlvbnMudGVzdENvbnRleHQucmVwb3J0KSB7XG4gICAgICAgICAgICBjb25zdCBsb2dnZXIgPSBuZXcgREcuTG9nZ2VyKCk7XG4gICAgICAgICAgICBjb25zdCBzdWNjZXNzZnVsID0gcmVzdWx0cy5maWx0ZXIoKHIpID0+IHIuc3VjY2VzcykubGVuZ3RoO1xuICAgICAgICAgICAgY29uc3Qgc2tpcHBlZCA9IHJlc3VsdHMuZmlsdGVyKChyKSA9PiByLnNraXBwZWQpLmxlbmd0aDtcbiAgICAgICAgICAgIGNvbnN0IGZhaWxlZCA9IHJlc3VsdHMuZmlsdGVyKChyKSA9PiAhci5zdWNjZXNzKTtcbiAgICAgICAgICAgIGNvbnN0IGRlc2NyaXB0aW9uID0gJ1BhY2thZ2UgQHBhY2thZ2UgdGVzdGVkOiBAc3VjY2Vzc2Z1bCBzdWNjZXNzZnVsLCBAc2tpcHBlZCBza2lwcGVkLCBAZmFpbGVkIGZhaWxlZCB0ZXN0cyc7XG4gICAgICAgICAgICBjb25zdCBwYXJhbXMgPSB7XG4gICAgICAgICAgICAgICAgc3VjY2Vzc2Z1bDogc3VjY2Vzc2Z1bCxcbiAgICAgICAgICAgICAgICBza2lwcGVkOiBza2lwcGVkLFxuICAgICAgICAgICAgICAgIGZhaWxlZDogZmFpbGVkLmxlbmd0aCxcbiAgICAgICAgICAgICAgICBwYWNrYWdlOiBwYWNrYWdlX1xuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIGZvciAoY29uc3QgciBvZiBmYWlsZWQpXG4gICAgICAgICAgICAgICAgT2JqZWN0LmFzc2lnbihwYXJhbXMsIHsgW2Ake3IuY2F0ZWdvcnl9IHwgJHtyLm5hbWV9YF06IHIucmVzdWx0IH0pO1xuICAgICAgICAgICAgbG9nZ2VyLmxvZyhkZXNjcmlwdGlvbiwgcGFyYW1zLCAncGFja2FnZS10ZXN0ZWQnKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcmVzdWx0cztcbiAgICB9KTtcbn1cbmZ1bmN0aW9uIGV4ZWNUZXN0KHQsIHByZWRpY2F0ZSkge1xuICAgIHZhciBfYSwgX2IsIF9jO1xuICAgIHJldHVybiBfX2F3YWl0ZXIodGhpcywgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKiAoKSB7XG4gICAgICAgIGxldCByO1xuICAgICAgICBjb25zdCBmaWx0ZXIgPSBwcmVkaWNhdGUgIT0gdW5kZWZpbmVkICYmICghdC5uYW1lLnRvTG93ZXJDYXNlKCkuc3RhcnRzV2l0aChwcmVkaWNhdGUudG9Mb3dlckNhc2UoKSkpO1xuICAgICAgICBjb25zdCBza2lwID0gKChfYSA9IHQub3B0aW9ucykgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLnNraXBSZWFzb24pIHx8IGZpbHRlcjtcbiAgICAgICAgY29uc3Qgc2tpcFJlYXNvbiA9IGZpbHRlciA/ICdza2lwcGVkJyA6IChfYiA9IHQub3B0aW9ucykgPT09IG51bGwgfHwgX2IgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9iLnNraXBSZWFzb247XG4gICAgICAgIGlmICghc2tpcClcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKGBTdGFydGVkICR7dC5jYXRlZ29yeX0gJHt0Lm5hbWV9YCk7XG4gICAgICAgIGNvbnN0IHN0YXJ0ID0gbmV3IERhdGUoKTtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGlmIChza2lwKVxuICAgICAgICAgICAgICAgIHIgPSB7IHN1Y2Nlc3M6IHRydWUsIHJlc3VsdDogc2tpcFJlYXNvbiwgbXM6IDAsIHNraXBwZWQ6IHRydWUgfTtcbiAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICByID0geyBzdWNjZXNzOiB0cnVlLCByZXN1bHQ6IChfYyA9IHlpZWxkIHQudGVzdCgpKSAhPT0gbnVsbCAmJiBfYyAhPT0gdm9pZCAwID8gX2MgOiAnT0snLCBtczogMCwgc2tpcHBlZDogZmFsc2UgfTtcbiAgICAgICAgfVxuICAgICAgICBjYXRjaCAoeCkge1xuICAgICAgICAgICAgciA9IHsgc3VjY2VzczogZmFsc2UsIHJlc3VsdDogeC50b1N0cmluZygpLCBtczogMCwgc2tpcHBlZDogZmFsc2UgfTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBzdG9wID0gbmV3IERhdGUoKTtcbiAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICByLm1zID0gc3RvcCAtIHN0YXJ0O1xuICAgICAgICBpZiAoIXNraXApXG4gICAgICAgICAgICBjb25zb2xlLmxvZyhgRmluaXNoZWQgJHt0LmNhdGVnb3J5fSAke3QubmFtZX0gZm9yICR7ci5tc30gbXNgKTtcbiAgICAgICAgci5jYXRlZ29yeSA9IHQuY2F0ZWdvcnk7XG4gICAgICAgIHIubmFtZSA9IHQubmFtZTtcbiAgICAgICAgcmV0dXJuIHI7XG4gICAgfSk7XG59XG4vKiBXYWl0cyBbbXNdIG1pbGxpc2Vjb25kcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIGRlbGF5KG1zKSB7XG4gICAgcmV0dXJuIF9fYXdhaXRlcih0aGlzLCB2b2lkIDAsIHZvaWQgMCwgZnVuY3Rpb24qICgpIHtcbiAgICAgICAgeWllbGQgbmV3IFByb21pc2UoKHIpID0+IHNldFRpbWVvdXQociwgbXMpKTtcbiAgICB9KTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBhd2FpdENoZWNrKGNoZWNrSGFuZGxlciwgZXJyb3IgPSAnVGltZW91dCBleGNlZWRlZCcsIHdhaXQgPSA1MDAsIGludGVydmFsID0gNTApIHtcbiAgICByZXR1cm4gX19hd2FpdGVyKHRoaXMsIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbiogKCkge1xuICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgY2xlYXJJbnRlcnZhbChpbnRlcnZhbElkKTtcbiAgICAgICAgICAgICAgICByZWplY3QobmV3IEVycm9yKGVycm9yKSk7XG4gICAgICAgICAgICB9LCB3YWl0KTtcbiAgICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICAgIGNvbnN0IGludGVydmFsSWQgPSBzZXRJbnRlcnZhbCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKGNoZWNrSGFuZGxlcigpKSB7XG4gICAgICAgICAgICAgICAgICAgIGNsZWFySW50ZXJ2YWwoaW50ZXJ2YWxJZCk7XG4gICAgICAgICAgICAgICAgICAgIHJlc29sdmUoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9LCBpbnRlcnZhbCk7XG4gICAgICAgIH0pO1xuICAgIH0pO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGlzRGlhbG9nUHJlc2VudChkaWFsb2dUaXRsZSkge1xuICAgIGNvbnN0IGRpYWxvZ3MgPSBERy5EaWFsb2cuZ2V0T3BlbkRpYWxvZ3MoKTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGRpYWxvZ3MubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgaWYgKGRpYWxvZ3NbaV0udGl0bGUgPT0gZGlhbG9nVGl0bGUpXG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgcmV0dXJuIGZhbHNlO1xufVxuZXhwb3J0IGZ1bmN0aW9uIHRlc3RWaWV3ZXIodiwgZGYsIGRldGVjdFNlbWFudGljVHlwZXMgPSBmYWxzZSkge1xuICAgIHJldHVybiBfX2F3YWl0ZXIodGhpcywgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKiAoKSB7XG4gICAgICAgIGlmIChkZXRlY3RTZW1hbnRpY1R5cGVzKVxuICAgICAgICAgICAgeWllbGQgZ3Jvay5kYXRhLmRldGVjdFNlbWFudGljVHlwZXMoZGYpO1xuICAgICAgICBjb25zdCB0diA9IGdyb2suc2hlbGwuYWRkVGFibGVWaWV3KGRmKTtcbiAgICAgICAgY29uc3Qgdmlld2VyTmFtZSA9IGBbbmFtZT12aWV3ZXItJHt2LnJlcGxhY2UoL1xccysvZywgJy0nKX0gaV1gO1xuICAgICAgICBjb25zdCBzZWxlY3RvciA9IGAke3ZpZXdlck5hbWV9IGNhbnZhcywke3ZpZXdlck5hbWV9IHN2Zywke3ZpZXdlck5hbWV9IGltZyxcbiAgICAke3ZpZXdlck5hbWV9IGlucHV0LCR7dmlld2VyTmFtZX0gaDEsJHt2aWV3ZXJOYW1lfSBhYDtcbiAgICAgICAgY29uc3QgcmVzID0gW107XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBsZXQgdmlld2VyID0gdHYuYWRkVmlld2VyKHYpO1xuICAgICAgICAgICAgeWllbGQgYXdhaXRDaGVjaygoKSA9PiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKHNlbGVjdG9yKSAhPT0gbnVsbCwgJ2Nhbm5vdCBsb2FkIHZpZXdlcicsIDMwMDApO1xuICAgICAgICAgICAgcmVzLnB1c2goQXJyYXkuZnJvbSh0di52aWV3ZXJzKS5sZW5ndGgpO1xuICAgICAgICAgICAgQXJyYXkuZnJvbShkZi5yb3coMCkuY2VsbHMpLmZvckVhY2goKGMpID0+IGMudmFsdWUgPSBudWxsKTtcbiAgICAgICAgICAgIGRmLnJvd3Muc2VsZWN0KChyb3cpID0+IHJvdy5pZHggPiAxICYmIHJvdy5pZHggPCA3KTtcbiAgICAgICAgICAgIGZvciAobGV0IGkgPSA3OyBpIDwgMTI7IGkrKylcbiAgICAgICAgICAgICAgICBkZi5maWx0ZXIuc2V0KGksIGZhbHNlKTtcbiAgICAgICAgICAgIGRmLmN1cnJlbnRSb3dJZHggPSAxO1xuICAgICAgICAgICAgY29uc3QgcHJvcHMgPSB2aWV3ZXIuZ2V0T3B0aW9ucyh0cnVlKS5sb29rO1xuICAgICAgICAgICAgY29uc3QgbmV3UHJvcHMgPSB7fTtcbiAgICAgICAgICAgIE9iamVjdC5rZXlzKHByb3BzKS5maWx0ZXIoKGspID0+IHR5cGVvZiBwcm9wc1trXSA9PT0gJ2Jvb2xlYW4nKS5mb3JFYWNoKChrKSA9PiBuZXdQcm9wc1trXSA9ICFwcm9wc1trXSk7XG4gICAgICAgICAgICB2aWV3ZXIuc2V0T3B0aW9ucyhuZXdQcm9wcyk7XG4gICAgICAgICAgICB5aWVsZCBkZWxheSgyNTApO1xuICAgICAgICAgICAgY29uc3QgbGF5b3V0ID0gdHYuc2F2ZUxheW91dCgpO1xuICAgICAgICAgICAgY29uc3Qgb2xkUHJvcHMgPSB2aWV3ZXIuZ2V0T3B0aW9ucygpLmxvb2s7XG4gICAgICAgICAgICB0di5yZXNldExheW91dCgpO1xuICAgICAgICAgICAgcmVzLnB1c2goQXJyYXkuZnJvbSh0di52aWV3ZXJzKS5sZW5ndGgpO1xuICAgICAgICAgICAgdHYubG9hZExheW91dChsYXlvdXQpO1xuICAgICAgICAgICAgeWllbGQgYXdhaXRDaGVjaygoKSA9PiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKHNlbGVjdG9yKSAhPT0gbnVsbCwgJ2Nhbm5vdCBsb2FkIHZpZXdlciBmcm9tIGxheW91dCcsIDMwMDApO1xuICAgICAgICAgICAgeWllbGQgZGVsYXkoMjUwKTtcbiAgICAgICAgICAgIHJlcy5wdXNoKEFycmF5LmZyb20odHYudmlld2VycykubGVuZ3RoKTtcbiAgICAgICAgICAgIHZpZXdlciA9IEFycmF5LmZyb20odHYudmlld2VycykuZmluZCgodikgPT4gdi50eXBlICE9PSAnR3JpZCcpO1xuICAgICAgICAgICAgZXhwZWN0QXJyYXkocmVzLCBbMiwgMSwgMl0pO1xuICAgICAgICAgICAgZXhwZWN0KEpTT04uc3RyaW5naWZ5KHZpZXdlci5nZXRPcHRpb25zKCkubG9vayksIEpTT04uc3RyaW5naWZ5KG9sZFByb3BzKSk7XG4gICAgICAgIH1cbiAgICAgICAgZmluYWxseSB7XG4gICAgICAgICAgICB0di5jbG9zZSgpO1xuICAgICAgICAgICAgZ3Jvay5zaGVsbC5jbG9zZVRhYmxlKGRmKTtcbiAgICAgICAgfVxuICAgIH0pO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZGF0YTphcHBsaWNhdGlvbi9qc29uO2Jhc2U2NCxleUoyWlhKemFXOXVJam96TENKbWFXeGxJam9pZEdWemRDNXFjeUlzSW5OdmRYSmpaVkp2YjNRaU9pSWlMQ0p6YjNWeVkyVnpJanBiSW5SbGMzUXVkSE1pWFN3aWJtRnRaWE1pT2x0ZExDSnRZWEJ3YVc1bmN5STZJanM3T3pzN096czdPMEZCUVVFc1QwRkJUeXhMUVVGTExFbEJRVWtzVFVGQlRTeHRRa0ZCYlVJc1EwRkJRenRCUVVNeFF5eFBRVUZQTEV0QlFVc3NSVUZCUlN4TlFVRk5MR2xDUVVGcFFpeERRVUZETzBGQlMzUkRMRTFCUVUwc1EwRkJReXhOUVVGTkxFdEJRVXNzUjBGTFpDeEZRVUZGTEVOQlFVTTdRVUZGVUN4TlFVRk5MR2RDUVVGblFpeEhRVUZITEZsQlFWa3NRMEZCUXp0QlFVTjBReXhOUVVGTkxHRkJRV0VzUjBGQk5rSXNSVUZCUlN4RFFVRkRPMEZCUTI1RUxFMUJRVTBzUTBGQlF5eEpRVUZKTEdWQlFYVkNMRU5CUVVNN1FVRkZia01zVFVGQlRTeExRVUZYTEUxQlFVMHNRMEZMZEVJN1FVRk1SQ3hYUVVGcFFpeE5RVUZOTzBsQlEzSkNMRk5CUVdkQ0xFOUJRVThzUTBGQlF5eExRVUZWTEVWQlFVVXNTVUZCWVR0UlFVTXZReXhKUVVGSkxFdEJRVXNzU1VGQlNTeEpRVUZKTzFsQlEyWXNUVUZCVFN4SlFVRkpMRXRCUVVzc1EwRkJReXhIUVVGSExFbEJRVWtzU1VGQlNTeEpRVUZKTEVOQlFVTXNRMEZCUXl4RFFVRkRMRTlCUVU4c1EwRkJReXhEUVVGRExFTkJRVU1zU1VGQlNTeGpRVUZqTEVOQlFVTXNRMEZCUXp0SlFVTndSU3hEUVVGRE8wbEJTR1VzWTBGQlR5eFZRVWQwUWl4RFFVRkJPMEZCUTBnc1EwRkJReXhGUVV4blFpeE5RVUZOTEV0QlFVNHNUVUZCVFN4UlFVdDBRanRCUVZGRUxFMUJRVTBzVDBGQlR5eFhRVUZYTzBsQlNYUkNMRmxCUVZrc1kwRkJkMElzUlVGQlJTeE5RVUZuUWp0UlFVaDBSQ3h0UWtGQll5eEhRVUZITEVsQlFVa3NRMEZCUXp0UlFVTjBRaXhYUVVGTkxFZEJRVWNzUzBGQlN5eERRVUZETzFGQlIySXNTVUZCU1N4alFVRmpMRXRCUVVzc1UwRkJVenRaUVVGRkxFbEJRVWtzUTBGQlF5eGpRVUZqTEVkQlFVY3NZMEZCWXl4RFFVRkRPMUZCUTNaRkxFbEJRVWtzVFVGQlRTeExRVUZMTEZOQlFWTTdXVUZCUlN4SlFVRkpMRU5CUVVNc1RVRkJUU3hIUVVGSExFMUJRVTBzUTBGQlF6dEpRVU5xUkN4RFFVRkRPMGxCUVVFc1EwRkJRenREUVVOSU8wRkJSVVFzVFVGQlRTeFBRVUZQTEVsQlFVazdTVUZOWml4WlFVRlpMRkZCUVdkQ0xFVkJRVVVzU1VGQldTeEZRVUZGTEVsQlFYZENMRVZCUVVVc1QwRkJjVUk3TzFGQlEzcEdMRWxCUVVrc1EwRkJReXhSUVVGUkxFZEJRVWNzVVVGQlVTeERRVUZETzFGQlEzcENMRWxCUVVrc1EwRkJReXhKUVVGSkxFZEJRVWNzU1VGQlNTeERRVUZETzFGQlEycENMRTlCUVU4c1lVRkJVQ3hQUVVGUExHTkJRVkFzVDBGQlR5eEpRVUZRTEU5QlFVOHNSMEZCU3l4RlFVRkZMRVZCUVVNN1VVRkRaaXhOUVVGQkxFOUJRVThzUTBGQlF5eFBRVUZQTEc5RFFVRm1MRTlCUVU4c1EwRkJReXhQUVVGUExFZEJRVXNzUzBGQlN5eEZRVUZETzFGQlF6RkNMRWxCUVVrc1EwRkJReXhQUVVGUExFZEJRVWNzVDBGQlR5eERRVUZETzFGQlEzWkNMRWxCUVVrc1EwRkJReXhKUVVGSkxFZEJRVWNzUjBGQmRVSXNSVUZCUlR0WlFVTnVReXhQUVVGUExFbEJRVWtzVDBGQlR5eERRVUZETEVOQlFVOHNUMEZCVHl4RlFVRkZMRTFCUVUwc1JVRkJSU3hGUVVGRk8yZENRVU16UXl4SlFVRkpMRTFCUVUwc1IwRkJSeXhGUVVGRkxFTkJRVU03WjBKQlEyaENMRWxCUVVrN2IwSkJRMFlzVFVGQlRTeEhRVUZITEUxQlFVMHNTVUZCU1N4RlFVRkZMRU5CUVVNN2FVSkJRM1pDTzJkQ1FVRkRMRTlCUVU4c1EwRkJUU3hGUVVGRk8yOUNRVU5tTEUxQlFVMHNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRwUWtGRFdEdG5Ra0ZEUkN4UFFVRlBMRU5CUVVNc1RVRkJUU3hEUVVGRExFTkJRVU03V1VGRGJFSXNRMEZCUXl4RFFVRkJMRU5CUVVNc1EwRkJRenRSUVVOTUxFTkJRVU1zUTBGQlFTeERRVUZETzBsQlEwb3NRMEZCUXp0RFFVTkdPMEZCUlVRc1RVRkJUU3hWUVVGblFpeFRRVUZUTEVOQlFVa3NTMEZCYjBJc1JVRkRja1FzVDBGQk1FSXNSVUZCUlN4UFFVRnRRaXhGUVVGRkxFdEJRV0VzUTBGQlF6czdVVUZETDBRc1NVRkJTU3hIUVVGcFFpeERRVUZETzFGQlEzUkNMRTlCUVU4c1NVRkJTU3hQUVVGUExFTkJRVU1zUTBGQlF5eFBRVUZQTEVWQlFVVXNUVUZCVFN4RlFVRkZMRVZCUVVVN1dVRkRja01zUjBGQlJ5eEhRVUZITEV0QlFVc3NRMEZCUXl4VFFVRlRMRU5CUVVNc1EwRkJReXhKUVVGSkxFVkJRVVVzUlVGQlJUdG5Ra0ZETjBJc1NVRkJTVHR2UWtGRFJpeFBRVUZQTEVOQlFVTXNTVUZCU1N4RFFVRkRMRU5CUVVNN2FVSkJRMlk3WjBKQlFVTXNUMEZCVHl4RFFVRkRMRVZCUVVVN2IwSkJRMVlzVFVGQlRTeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRPMmxDUVVOWU8yZENRVU5FTEVkQlFVY3NRMEZCUXl4WFFVRlhMRVZCUVVVc1EwRkJRenRuUWtGRGJFSXNUMEZCVHl4RFFVRkRMRWxCUVVrc1EwRkJReXhEUVVGRE8xbEJRMmhDTEVOQlFVTXNRMEZCUXl4RFFVRkRPMWxCUTBnc1ZVRkJWU3hEUVVGRExFZEJRVWNzUlVGQlJUdG5Ra0ZEWkN4SFFVRkhMRU5CUVVNc1YwRkJWeXhGUVVGRkxFTkJRVU03WjBKQlEyeENMSGRFUVVGM1JEdG5Ra0ZEZUVRc1RVRkJUU3hEUVVGRExGTkJRVk1zUTBGQlF5eERRVUZETzFsQlEzQkNMRU5CUVVNc1JVRkJSU3hGUVVGRkxFTkJRVU1zUTBGQlF6dFpRVU5RTEU5QlFVOHNSVUZCUlN4RFFVRkRPMUZCUTFvc1EwRkJReXhEUVVGRExFTkJRVU03U1VGRFRDeERRVUZETzBOQlFVRTdRVUZGUkN4TlFVRk5MRlZCUVZVc1NVRkJTU3hEUVVGRExFbEJRVmtzUlVGQlJTeEpRVUYzUWl4RlFVRkZMRTlCUVhGQ08wbEJRMmhHTEVsQlFVa3NTMEZCU3l4RFFVRkRMR1ZCUVdVc1EwRkJReXhKUVVGSkxGTkJRVk03VVVGRGNrTXNTMEZCU3l4RFFVRkRMR1ZCUVdVc1EwRkJReXhIUVVGSExFVkJRVVVzUTBGQlF6dEpRVU01UWl4SlFVRkpMRXRCUVVzc1EwRkJReXhsUVVGbExFTkJRVU1zUTBGQlF5eExRVUZMTEVsQlFVa3NVMEZCVXp0UlFVTXpReXhMUVVGTExFTkJRVU1zWlVGQlpTeERRVUZETEVOQlFVTXNTMEZCU3l4SFFVRkhMRVZCUVVVc1EwRkJRenRKUVVOd1F5eExRVUZMTEVOQlFVTXNaVUZCWlN4RFFVRkRMRU5CUVVNc1MwRkJUU3hEUVVGRExFbEJRVWtzUTBGQlF5eEpRVUZKTEVsQlFVa3NRMEZCUXl4bFFVRmxMRVZCUVVVc1NVRkJTU3hGUVVGRkxFbEJRVWtzUlVGQlJTeFBRVUZQTEVOQlFVTXNRMEZCUXl4RFFVRkRPMEZCUTNKR0xFTkJRVU03UVVGRlJDeG5Sa0ZCWjBZN1FVRkRhRVlzVFVGQlRTeFZRVUZWTEUxQlFVMHNRMEZCUXl4TlFVRlhMRVZCUVVVc1YwRkJaMElzU1VGQlNTeEZRVUZGTEV0QlFXTTdTVUZEZEVVc1NVRkJTU3hMUVVGTE8xRkJRMUFzUzBGQlN5eEhRVUZITEVkQlFVY3NTMEZCU3l4SlFVRkpMRU5CUVVNN08xRkJRMnhDTEV0QlFVc3NSMEZCUnl4RlFVRkZMRU5CUVVNN1NVRkRhRUlzU1VGQlNTeE5RVUZOTEV0QlFVc3NVVUZCVVR0UlFVTnlRaXhOUVVGTkxFbEJRVWtzUzBGQlN5eERRVUZETEVkQlFVY3NTMEZCU3l4aFFVRmhMRkZCUVZFc1YwRkJWeXhOUVVGTkxFZEJRVWNzUTBGQlF5eERRVUZETzBGQlEzWkZMRU5CUVVNN1FVRkZSQ3hOUVVGTkxGVkJRVlVzVjBGQlZ5eERRVUZETEUxQlFXTXNSVUZCUlN4UlFVRm5RaXhGUVVGRkxGTkJRVk1zUjBGQlJ5eExRVUZMTEVWQlFVVXNTMEZCWXp0SlFVTTNSaXhKUVVGSkxFTkJRVU1zVFVGQlRTeExRVUZMTEUxQlFVMHNRMEZCUXl4cFFrRkJhVUlzU1VGQlNTeFJRVUZSTEV0QlFVc3NUVUZCVFN4RFFVRkRMR2xDUVVGcFFpeERRVUZETzFGQlF6bEZMRU5CUVVNc1RVRkJUU3hMUVVGTExFMUJRVTBzUTBGQlF5eHBRa0ZCYVVJc1NVRkJTU3hSUVVGUkxFdEJRVXNzVFVGQlRTeERRVUZETEdsQ1FVRnBRaXhEUVVGRE8xRkJRemxGTEVOQlFVTXNUVUZCVFN4TFFVRkxMRTFCUVUwc1EwRkJReXhIUVVGSExFbEJRVWtzVVVGQlVTeExRVUZMTEUxQlFVMHNRMEZCUXl4SFFVRkhMRU5CUVVNc1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eE5RVUZOTEVOQlFVTXNTVUZCU1N4TFFVRkxMRU5CUVVNc1VVRkJVU3hEUVVGRExFTkJRVU03VVVGRE1VWXNUMEZCVHp0SlFVTlVMRTFCUVUwc1VVRkJVU3hIUVVGSExFbEJRVWtzUTBGQlF5eEhRVUZITEVOQlFVTXNUVUZCVFN4SFFVRkhMRkZCUVZFc1EwRkJReXhIUVVGSExGTkJRVk1zUTBGQlF6dEpRVU42UkN4TlFVRk5MRU5CUVVNc1VVRkJVU3hGUVVGRkxFbEJRVWtzUlVGQlJTeEhRVUZITEV0QlFVc3NZVUZCVEN4TFFVRkxMR05CUVV3c1MwRkJTeXhIUVVGSkxFVkJRVVVzYVVKQlFXbENMRk5CUVZNc1IwRkJSeXhEUVVGRExFTkJRVU03U1VGRGNFVXNTVUZCU1N4RFFVRkRMRkZCUVZFN1VVRkRXQ3hOUVVGTkxFbEJRVWtzUzBGQlN5eERRVUZETEZsQlFWa3NVVUZCVVN4VFFVRlRMRTFCUVUwc2FVSkJRV2xDTEZOQlFWTXNSMEZCUnl4RFFVRkRMRU5CUVVNN1FVRkRkRVlzUTBGQlF6dEJRVVZFTEUxQlFVMHNWVUZCVlN4WFFVRlhMRU5CUVVNc1RVRkJhVUlzUlVGQlJTeFJRVUZ0UWl4RlFVRkZMRXRCUVdNN1NVRkRhRVlzVFVGQlRTeG5Ra0ZCWjBJc1IwRkJSeXhSUVVGUkxFTkJRVU1zVVVGQlVTeERRVUZETzBsQlF6TkRMRTFCUVUwc1kwRkJZeXhIUVVGSExFMUJRVTBzUTBGQlF5eFJRVUZSTEVOQlFVTTdTVUZEZGtNc1RVRkJUU3hEUVVGRExHTkJRV01zUlVGQlJTeG5Ra0ZCWjBJc1JVRkJSU3hIUVVGSExFdEJRVXNzWVVGQlRDeExRVUZMTEdOQlFVd3NTMEZCU3l4SFFVRkpMRVZCUVVVc1lVRkJZU3hEUVVGRExFTkJRVU03U1VGRmRFVXNTMEZCU3l4TlFVRk5MRTFCUVUwc1NVRkJTU3hSUVVGUkxFTkJRVU1zVDBGQlR5eEZRVUZGTzFGQlEzSkRMRTFCUVUwc1dVRkJXU3hIUVVGSExFMUJRVTBzUTBGQlF5eFBRVUZQTEVOQlFVTXNUVUZCVFN4RFFVRkRMRTFCUVUwc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF6dFJRVU40UkN4SlFVRkpMRmxCUVZrc1NVRkJTU3hKUVVGSk8xbEJRM1JDTEUxQlFVMHNTVUZCU1N4TFFVRkxMRU5CUVVNc1ZVRkJWU3hOUVVGTkxFTkJRVU1zU1VGQlNTeFpRVUZaTEVOQlFVTXNRMEZCUXp0UlFVTnlSQ3hKUVVGSkxGbEJRVmtzUTBGQlF5eEpRVUZKTEVsQlFVa3NUVUZCVFN4RFFVRkRMRWxCUVVrN1dVRkRiRU1zVFVGQlRTeEpRVUZKTEV0QlFVc3NRMEZCUXl4VlFVRlZMRTFCUVUwc1EwRkJReXhKUVVGSkxHdENRVUZyUWl4TlFVRk5MRU5CUVVNc1NVRkJTU3hSUVVGUkxGbEJRVmtzUTBGQlF5eEpRVUZKTEVWQlFVVXNRMEZCUXl4RFFVRkRPMUZCUTJwSExFdEJRVXNzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4RlFVRkZMRU5CUVVNc1IwRkJSeXhuUWtGQlowSXNSVUZCUlN4RFFVRkRMRVZCUVVVc1JVRkJSVHRaUVVONlF5eE5RVUZOTEV0QlFVc3NSMEZCUnl4TlFVRk5MRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETzFsQlF6VkNMRTFCUVUwc1YwRkJWeXhIUVVGSExGbEJRVmtzUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNN1dVRkRlRU1zU1VGQlNTeE5RVUZOTEVOQlFVTXNTVUZCU1N4SlFVRkpMRVZCUVVVc1EwRkJReXhKUVVGSkxFTkJRVU1zUzBGQlN6dG5Ra0ZET1VJc1YwRkJWeXhEUVVGRExGZEJRVmNzUlVGQlJTeExRVUZMTEVWQlFVVXNUVUZCVFN4RlFVRkZMRXRCUVVzc1EwRkJReXhEUVVGRE8ybENRVU0xUXl4SlFVRkpMRTFCUVUwc1EwRkJReXhKUVVGSkxFbEJRVWtzUlVGQlJTeERRVUZETEVsQlFVa3NRMEZCUXl4VFFVRlRPMmRDUVVOMlF5eE5RVUZOTEVOQlFVTXNWMEZCVnl4RFFVRkRMRTFCUVUwc1EwRkJReXhMUVVGTExFTkJRVU1zUlVGQlJTeEpRVUZKTEVWQlFVVXNTMEZCU3l4RFFVRkRMRU5CUVVNN08yZENRVVV2UXl4TlFVRk5MRU5CUVVNc1YwRkJWeXhGUVVGRkxFdEJRVXNzUlVGQlJTeExRVUZMTEVOQlFVTXNRMEZCUXp0VFFVTnlRenRMUVVOR08wRkJRMGdzUTBGQlF6dEJRVVZFTEUxQlFVMHNWVUZCVlN4WlFVRlpMRU5CUVVNc1RVRkJPRUlzUlVGQlJTeFJRVUZuUXp0SlFVTXpSaXhMUVVGTExFMUJRVTBzUTBGQlF5eFhRVUZYTEVWQlFVVXNZVUZCWVN4RFFVRkRMRWxCUVVrc1RVRkJUU3hEUVVGRExFOUJRVThzUTBGQlF5eFJRVUZSTEVOQlFVTXNSVUZCUlR0UlFVTnVSU3hKUVVGSkxFTkJRVU1zVFVGQlRTeERRVUZETEdOQlFXTXNRMEZCUXl4WFFVRlhMRU5CUVVNN1dVRkRja01zVFVGQlRTeEpRVUZKTEV0QlFVc3NRMEZCUXl4elFrRkJjMElzVjBGQlZ5eGhRVUZoTEVOQlFVTXNRMEZCUXp0UlFVVnNSU3hOUVVGTkxGZEJRVmNzUjBGQlJ5eE5RVUZOTEVOQlFVTXNWMEZCVnl4RFFVRkRMRU5CUVVNN1VVRkRlRU1zU1VGQlNTeFhRVUZYTEZsQlFWa3NTMEZCU3l4SlFVRkpMR0ZCUVdFc1dVRkJXU3hMUVVGTE8xbEJRMmhGTEZkQlFWY3NRMEZCUXl4WFFVRlhMRVZCUVVVc1lVRkJZU3hEUVVGRExFTkJRVU03WVVGRGNrTXNTVUZCU1N4WFFVRlhMRmxCUVZrc1RVRkJUU3hKUVVGSkxHRkJRV0VzV1VGQldTeE5RVUZOTzFsQlEzWkZMRmxCUVZrc1EwRkJReXhYUVVGWExFVkJRVVVzWVVGQllTeERRVUZETEVOQlFVTTdZVUZEZEVNc1NVRkJTU3hOUVVGTkxFTkJRVU1zVVVGQlVTeERRVUZETEZkQlFWY3NRMEZCUXl4SlFVRkpMRTFCUVUwc1EwRkJReXhSUVVGUkxFTkJRVU1zWVVGQllTeERRVUZETzFsQlEzSkZMRmRCUVZjc1EwRkJReXhYUVVGWExFVkJRVVVzWVVGQllTeERRVUZETEVOQlFVTTdZVUZEY2tNc1NVRkJTU3hYUVVGWExFbEJRVWtzWVVGQllUdFpRVU51UXl4TlFVRk5MRWxCUVVrc1MwRkJTeXhEUVVGRExHRkJRV0VzWVVGQllTeGpRVUZqTEZkQlFWY3NWMEZCVnl4WFFVRlhMRWRCUVVjc1EwRkJReXhEUVVGRE8wdEJRMnBITzBGQlEwZ3NRMEZCUXp0QlFVVkVMRTFCUVUwc1ZVRkJWU3hYUVVGWExFTkJRVU1zVFVGQmMwSXNSVUZCUlN4UlFVRjNRanRKUVVNeFJTeE5RVUZOTEZsQlFWa3NSMEZCUnl4TlFVRk5MRU5CUVVNc1RVRkJUU3hEUVVGRE8wbEJRMjVETEUxQlFVMHNZMEZCWXl4SFFVRkhMRkZCUVZFc1EwRkJReXhOUVVGTkxFTkJRVU03U1VGRmRrTXNTVUZCU1N4WlFVRlpMRWxCUVVrc1kwRkJZeXhGUVVGRk8xRkJRMnhETEUxQlFVMHNTVUZCU1N4TFFVRkxMRU5CUVVNc01FUkJRVEJFTEZsQlFWa3NSMEZCUnp0WlFVTjJSaXhuUTBGQlowTXNZMEZCWXl4RlFVRkZMRU5CUVVNc1EwRkJRenRMUVVOeVJEdEpRVVZFTEV0QlFVc3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhGUVVGRkxFTkJRVU1zUjBGQlJ5eFpRVUZaTEVWQlFVVXNRMEZCUXl4RlFVRkZMRVZCUVVVN1VVRkRja01zU1VGQlNTeE5RVUZOTEVOQlFVTXNRMEZCUXl4RFFVRkRMRmxCUVZrc1MwRkJTeXhKUVVGSkxGRkJRVkVzUTBGQlF5eERRVUZETEVOQlFVTXNXVUZCV1N4TFFVRkxPMWxCUXpWRUxGZEJRVmNzUTBGQlF5eE5RVUZOTEVOQlFVTXNRMEZCUXl4RFFVRkRMRVZCUVVVc1VVRkJVU3hEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTTdZVUZEYWtNc1NVRkJTU3hOUVVGTkxFTkJRVU1zUTBGQlF5eERRVUZETEZsQlFWa3NUVUZCVFN4SlFVRkpMRkZCUVZFc1EwRkJReXhEUVVGRExFTkJRVU1zV1VGQldTeE5RVUZOTzFsQlEyNUZMRmxCUVZrc1EwRkJReXhOUVVGTkxFTkJRVU1zUTBGQlF5eERRVUZETEVWQlFVVXNVVUZCVVN4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03WVVGRGJFTXNTVUZCU1N4TlFVRk5MRU5CUVVNc1EwRkJReXhEUVVGRExFbEJRVWtzVVVGQlVTeERRVUZETEVOQlFVTXNRMEZCUXp0WlFVTXZRaXhOUVVGTkxFbEJRVWtzUzBGQlN5eERRVUZETEZsQlFWa3NVVUZCVVN4RFFVRkRMRU5CUVVNc1EwRkJReXhuUWtGQlowSXNRMEZCUXl4VFFVRlRMRTFCUVUwc1EwRkJReXhEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTTdTMEZEYWtZN1FVRkRTQ3hEUVVGRE8wRkJSVVFzTWtKQlFUSkNPMEZCUXpOQ0xFMUJRVTBzVlVGQlZTeFJRVUZSTEVOQlFVTXNVVUZCWjBJc1JVRkJSU3hMUVVGcFFqdEpRVU14UkN4bFFVRmxMRWRCUVVjc1VVRkJVU3hEUVVGRE8wbEJRek5DTEV0QlFVc3NSVUZCUlN4RFFVRkRPMEZCUTFZc1EwRkJRenRCUVVWRUxIVkdRVUYxUmp0QlFVTjJSaXhOUVVGTkxGVkJRVlVzVFVGQlRTeERRVUZETEUxQlFUSkNPMGxCUTJoRUxFbEJRVWtzUzBGQlN5eERRVUZETEdWQlFXVXNRMEZCUXl4SlFVRkpMRk5CUVZNN1VVRkRja01zUzBGQlN5eERRVUZETEdWQlFXVXNRMEZCUXl4SFFVRkhMRVZCUVVVc1EwRkJRenRKUVVNNVFpeExRVUZMTEVOQlFVTXNaVUZCWlN4RFFVRkRMRU5CUVVNc1RVRkJUU3hIUVVGSExFMUJRVTBzUTBGQlF6dEJRVU42UXl4RFFVRkRPMEZCUlVRc2MwWkJRWE5HTzBGQlEzUkdMRTFCUVUwc1ZVRkJWU3hMUVVGTExFTkJRVU1zUzBGQk1FSTdTVUZET1VNc1NVRkJTU3hMUVVGTExFTkJRVU1zWlVGQlpTeERRVUZETEVsQlFVa3NVMEZCVXp0UlFVTnlReXhMUVVGTExFTkJRVU1zWlVGQlpTeERRVUZETEVkQlFVY3NSVUZCUlN4RFFVRkRPMGxCUXpsQ0xFdEJRVXNzUTBGQlF5eGxRVUZsTEVOQlFVTXNRMEZCUXl4TFFVRkxMRWRCUVVjc1MwRkJTeXhEUVVGRE8wRkJRM1pETEVOQlFVTTdRVUZGUkN4VFFVRlRMRmxCUVZrc1EwRkJReXhEUVVGVExFVkJRVVVzUTBGQlZUdEpRVU42UXl4UFFVRlBMRU5CUVVNc1EwRkJReXhQUVVGUExFTkJRVU1zU1VGQlNTeE5RVUZOTEVOQlFVTXNRMEZCUXl4RFFVRkRMRWxCUVVrc1JVRkJSU3hKUVVGSkxFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNUVUZCVFN4RFFVRkRMRU5CUVVNN1FVRkRka1FzUTBGQlF6dEJRVVZFTEUxQlFVMHNWVUZCWjBJc1lVRkJZU3hEUVVGRExGTkJRV2xDTEVWQlFVVXNUVUZCV1RzN1VVRkRha1VzU1VGQlNTeGhRVUZoTEVOQlFVTXNVMEZCVXl4RFFVRkRPMWxCUVVVc1QwRkJUenRSUVVOeVF5eE5RVUZOTEZkQlFWY3NSMEZCUnl4TlFVRk5MRU5CUVVNc1EwRkJReXhEUVVGRExFMUJRVTBzUTBGQlF5eExRVUZMTEVOQlFVTXNRMEZCUXl4RFFVRkRMRXRCUVVzc1EwRkJRenRSUVVOc1JDeEpRVUZKTEZkQlFWY3NRMEZCUXl4blFrRkJaMElzUTBGQlF5eExRVUZMTEZOQlFWTXNSVUZCUlR0WlFVTXZReXhoUVVGaExFTkJRVU1zVTBGQlV5eERRVUZETEVkQlFVY3NTVUZCU1N4RFFVRkRPMWxCUTJoRExFOUJRVTg3VTBGRFVqdFJRVU5FTEUxQlFVMHNaVUZCWlN4SFFVRkhMRVZCUVVVc1EwRkJRenRSUVVNelFpeE5RVUZOTEdGQlFXRXNSMEZCUnl4TlFVRk5MRWxCUVVrc1EwRkJReXhKUVVGSkxFTkJRVU1zVTBGQlV5eERRVUZETEUxQlFVMHNRMEZCUXl4cFFrRkJhVUlzVTBGQlV5eEhRVUZITEVOQlFVTXNRMEZCUXl4SlFVRkpMRVZCUVVVc1EwRkJRenRSUVVNM1JpeE5RVUZOTEVkQlFVY3NSMEZCUnl4SlFVRkpMRTFCUVUwc1EwRkJReXd3UWtGQk1FSXNRMEZCUXl4RFFVRkRPMUZCUTI1RUxFdEJRVXNzVFVGQlRTeERRVUZETEVsQlFVa3NZVUZCWVN4RlFVRkZPMWxCUXpkQ0xFMUJRVTBzUzBGQlN5eEhRVUZITEVOQlFVTXNRMEZCUXl4UFFVRlBMRU5CUVVNc1RVRkJUU3hEUVVGRExFTkJRVU03V1VGRGFFTXNTVUZCU1N4RFFVRkRMRU5CUVVNc1MwRkJTeXhKUVVGSkxFdEJRVXNzUTBGQlF5eFBRVUZQTEVOQlFVTXNTMEZCU3l4RFFVRkRMRWxCUVVrc1MwRkJTeXhEUVVGRExFMUJRVTBzUTBGQlF6dG5Ra0ZCUlN4VFFVRlRPMWxCUXk5RUxFdEJRVXNzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4RlFVRkZMRU5CUVVNc1IwRkJSeXhMUVVGTExFTkJRVU1zVFVGQlRTeEZRVUZGTEVOQlFVTXNSVUZCUlN4RlFVRkZPMmRDUVVOeVF5eE5RVUZOTEZkQlFWY3NSMEZCU1N4TFFVRkxMRU5CUVVNc1EwRkJReXhEUVVGWkxFTkJRVU1zUzBGQlN5eERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRPMmRDUVVOd1JDeEpRVUZKTEZWQlFWVXNRMEZCUXp0blFrRkRaaXhKUVVGSkxGZEJRVmNzU1VGQlNTeERRVUZCTEZkQlFWY3NZVUZCV0N4WFFVRlhMSFZDUVVGWUxGZEJRVmNzUTBGQlJTeE5RVUZOTEVsQlFVY3NRMEZCUXp0dlFrRkJSU3hWUVVGVkxFZEJRVWNzVjBGQlZ5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRPMmRDUVVONFJTeGxRVUZsTEVOQlFVTXNTVUZCU1N4RFFVRkRMRWxCUVVrc1NVRkJTU3hEUVVGRExHZENRVUZuUWl4RlFVRkZMRXRCUVVzc1EwRkJReXhOUVVGTkxFdEJRVXNzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1NVRkJTU3hEUVVGRExFTkJRVU1zUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4SlFVRkpMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUlVGQlJTeEZRVUZGTEVkQlFWTXNSVUZCUlR0dlFrRkROMGNzVFVGQlRTeEhRVUZITEVkQlFVY3NUVUZCVFN4SlFVRkpMRU5CUVVNc1UwRkJVeXhEUVVGRExFbEJRVWtzUTBGQlF5eFpRVUZaTEVOQlFVTXNTMEZCU3l4RFFVRkRMRU5CUVVNc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTTdiMEpCUTJwRkxEUkRRVUUwUXp0dlFrRkROVU1zU1VGQlNTeEhRVUZITEV0QlFVc3NTVUZCU1R0M1FrRkJSU3hOUVVGTkxGZEJRVmNzUzBGQlN5eERRVUZETEVOQlFVTXNRMEZCUXl4RlFVRkZMRU5CUVVNN1owSkJRMmhFTEVOQlFVTXNRMEZCUVN4RlFVRkZMRVZCUVVNc1ZVRkJWU3hGUVVGRkxGVkJRVlVzUlVGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0aFFVTXZRanRUUVVOR08xRkJRMFFzWVVGQllTeERRVUZETEZOQlFWTXNRMEZCUXl4SFFVRkhMRWxCUVVrc1EwRkJRenRSUVVOb1F5eEpRVUZKTEVOQlFVTXNaVUZCWlN4RFFVRkRMRTFCUVUwN1dVRkJSU3hQUVVGUE8xRkJRM0JETEZkQlFWY3NRMEZCUXl4blFrRkJaMElzUTBGQlF5eEhRVUZITEVWQlFVTXNTMEZCU3l4RlFVRkZMR1ZCUVdVc1JVRkJReXhEUVVGRE8wbEJRek5FTEVOQlFVTTdRMEZCUVR0QlFVVkVMRTFCUVUwc1ZVRkJaMElzVVVGQlVTeERRVUZETEU5QlFYVkZPenM3TzFGQlEzQkhMRTFCUVUwc1VVRkJVU3hIUVVGSExFMUJRVUVzVFVGQlFTeEpRVUZKTEVOQlFVTXNVMEZCVXl4RFFVRkRMR05CUVdNc1JVRkJSU3d3UTBGQlJTeEpRVUZKTERCRFFVRkZMRTlCUVU4c1EwRkJRenRSUVVOb1JTeE5RVUZOTEdGQlFXRXNRMEZCUXl4UlFVRlJMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU03VVVGRGFrTXNUVUZCVFN4UFFVRlBMRWRCUTNWRUxFVkJRVVVzUTBGQlF6dFJRVU4yUlN4UFFVRlBMRU5CUVVNc1IwRkJSeXhEUVVGRExHVkJRV1VzUTBGQlF5eERRVUZETzFGQlF6ZENMRTlCUVU4c1lVRkJVQ3hQUVVGUExHTkJRVkFzVDBGQlR5eEpRVUZRTEU5QlFVOHNSMEZCU3l4RlFVRkZMRVZCUVVNN1VVRkRaaXhaUVVGQkxFOUJRVkVzUlVGQlF5eFhRVUZYTEhWRFFVRllMRmRCUVZjc1IwRkJTeXhKUVVGSkxGZEJRVmNzUlVGQlJTeEZRVUZETzFGQlF6TkRMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zVTBGQlV5eEhRVUZITEVWQlFVVXNRMEZCUXp0UlFVTXhRaXhMUVVGTExFMUJRVTBzUTBGQlF5eEhRVUZITEVWQlFVVXNTMEZCU3l4RFFVRkRMRWxCUVVrc1RVRkJUU3hEUVVGRExFOUJRVThzUTBGQlF5eExRVUZMTEVOQlFVTXNSVUZCUlR0WlFVTm9SQ3hKUVVGSkxFTkJRVUVzVDBGQlR5eGhRVUZRTEU5QlFVOHNkVUpCUVZBc1QwRkJUeXhEUVVGRkxGRkJRVkVzUzBGQlNTeFRRVUZUTEVWQlFVVTdaMEpCUTJ4RExFbEJRVWtzUTBGQlF5eEhRVUZITEVOQlFVTXNWMEZCVnl4RlFVRkZMRU5CUVVNc1ZVRkJWU3hEUVVGRExFOUJRVThzWVVGQlVDeFBRVUZQTEhWQ1FVRlFMRTlCUVU4c1EwRkJSU3hSUVVGUkxFTkJRVU1zVjBGQlZ5eEZRVUZGTEVOQlFVTTdiMEpCUTJoRkxGTkJRVk03WVVGRFdqdFpRVU5FTEU5QlFVOHNRMEZCUXl4SFFVRkhMRU5CUVVNc1YwRkJWeXhIUVVGSExGZEJRVmNzUTBGQlF5eERRVUZETzFsQlEzWkRMRWxCUVVrN1owSkJRMFlzU1VGQlNTeExRVUZMTEVOQlFVTXNUVUZCVFR0dlFrRkRaQ3hOUVVGTkxFdEJRVXNzUTBGQlF5eE5RVUZOTEVWQlFVVXNRMEZCUXp0aFFVTjRRanRaUVVGRExFOUJRVThzUTBGQlRTeEZRVUZGTzJkQ1FVTm1MRXRCUVVzc1EwRkJReXhaUVVGWkxFZEJRVWNzUTBGQlF5eERRVUZETEZGQlFWRXNSVUZCUlN4RFFVRkRPMkZCUTI1RE8xbEJRMFFzVFVGQlRTeERRVUZETEVkQlFVY3NUVUZCUVN4TFFVRkxMRU5CUVVNc1MwRkJTeXh0UTBGQlNTeEZRVUZGTEVOQlFVTTdXVUZETlVJc1RVRkJUU3hIUVVGSExFZEJRVWNzUlVGQlJTeERRVUZETzFsQlEyWXNTMEZCU3l4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFVkJRVVVzUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4TlFVRk5MRVZCUVVVc1EwRkJReXhGUVVGRk8yZENRVU12UWl4SFFVRkhMRU5CUVVNc1NVRkJTU3hEUVVGRExFMUJRVTBzVVVGQlVTeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1JVRkJSU3hQUVVGUExHRkJRVkFzVDBGQlR5eDFRa0ZCVUN4UFFVRlBMRU5CUVVVc1NVRkJTU3hEUVVGRExFTkJRVU1zUTBGQlF6dFpRVU5vUkN4TlFVRk5MRWxCUVVrc1IwRkJSeXhEUVVGRExFMUJRVTBzVDBGQlR5eERRVUZETEVkQlFVY3NRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhEUVVGRExFMUJRVTBzUTBGQlF5eERRVUZETEVOQlFVTXNSVUZCUlN4RlFVRkZMRU5CUVVNc1EwRkJReXhEUVVGRExFMUJRVTBzU1VGQlNTeFRRVUZUTEVOQlFVTXNRMEZCUXp0WlFVTXpSU3hKUVVGSk8yZENRVU5HTEVsQlFVa3NTMEZCU3l4RFFVRkRMRXRCUVVzN2IwSkJRMklzVFVGQlRTeExRVUZMTEVOQlFVTXNTMEZCU3l4RlFVRkZMRU5CUVVNN1lVRkRka0k3V1VGQlF5eFBRVUZQTEVOQlFVMHNSVUZCUlR0blFrRkRaaXhMUVVGTExFTkJRVU1zVjBGQlZ5eEhRVUZITEVOQlFVTXNRMEZCUXl4UlFVRlJMRVZCUVVVc1EwRkJRenRoUVVOc1F6dFpRVU5FTEVsQlFVa3NTMEZCU3l4RFFVRkRMRmRCUVZjN1owSkJRMjVDTEVsQlFVa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1JVRkJReXhSUVVGUkxFVkJRVVVzUjBGQlJ5eEZRVUZGTEVsQlFVa3NSVUZCUlN4TlFVRk5MRVZCUVVVc1RVRkJUU3hGUVVGRkxFdEJRVXNzUTBGQlF5eFhRVUZYTEVWQlFVVXNUMEZCVHl4RlFVRkZMRXRCUVVzc1JVRkJSU3hGUVVGRkxFVkJRVVVzUTBGQlF5eEZRVUZGTEU5QlFVOHNSVUZCUlN4TFFVRkxMRVZCUVVNc1EwRkJReXhEUVVGRE8xbEJRemRITEVsQlFVa3NTMEZCU3l4RFFVRkRMRmxCUVZrN1owSkJRM0JDTEVsQlFVa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1JVRkJReXhSUVVGUkxFVkJRVVVzUjBGQlJ5eEZRVUZGTEVsQlFVa3NSVUZCUlN4TlFVRk5MRVZCUVVVc1RVRkJUU3hGUVVGRkxFdEJRVXNzUTBGQlF5eFpRVUZaTEVWQlFVVXNUMEZCVHl4RlFVRkZMRXRCUVVzc1JVRkJSU3hGUVVGRkxFVkJRVVVzUTBGQlF5eEZRVUZGTEU5QlFVOHNSVUZCUlN4TFFVRkxMRVZCUVVNc1EwRkJReXhEUVVGRE8xbEJRemxITEU5QlFVOHNRMEZCUXl4SlFVRkpMRU5CUVVNc1IwRkJSeXhKUVVGSkxFTkJRVU1zUTBGQlF6dFRRVU4yUWp0UlFVTkVMRWxCUVVrc1QwRkJUeXhEUVVGRExGZEJRVmNzUTBGQlF5eGpRVUZqTEVWQlFVVTdXVUZEZEVNc1RVRkJUU3hMUVVGTExFTkJRVU1zU1VGQlNTeERRVUZETEVOQlFVTTdXVUZEYkVJc1NVRkJTU3hKUVVGSkxFTkJRVU1zUzBGQlN5eERRVUZETEZOQlFWTXNRMEZCUXl4TlFVRk5MRWRCUVVjc1EwRkJReXhGUVVGRk8yZENRVU51UXl4UFFVRlBMRU5CUVVNc1NVRkJTU3hEUVVGRE8yOUNRVU5ZTEZGQlFWRXNSVUZCUlN4elFrRkJjMEk3YjBKQlEyaERMRWxCUVVrc1JVRkJSU3haUVVGWk8yOUNRVU5zUWl4TlFVRk5MRVZCUVVVc1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eFRRVUZUTEVWQlFVVXNUMEZCVHl4RlFVRkZMRXRCUVVzc1JVRkJSU3hGUVVGRkxFVkJRVVVzUTBGQlF5eEZRVUZGTEU5QlFVOHNSVUZCUlN4TFFVRkxPMmxDUVVOd1JTeERRVUZETEVOQlFVTTdZVUZEU2p0VFFVTkdPMUZCUTBRc1NVRkJTU3hQUVVGUExFTkJRVU1zVjBGQlZ5eERRVUZETEUxQlFVMHNSVUZCUlR0WlFVTTVRaXhOUVVGTkxFMUJRVTBzUjBGQlJ5eEpRVUZKTEVWQlFVVXNRMEZCUXl4TlFVRk5MRVZCUVVVc1EwRkJRenRaUVVNdlFpeE5RVUZOTEZWQlFWVXNSMEZCUnl4UFFVRlBMRU5CUVVNc1RVRkJUU3hEUVVGRExFTkJRVU1zUTBGQlF5eEZRVUZGTEVWQlFVVXNRMEZCUXl4RFFVRkRMRU5CUVVNc1QwRkJUeXhEUVVGRExFTkJRVU1zVFVGQlRTeERRVUZETzFsQlF6TkVMRTFCUVUwc1QwRkJUeXhIUVVGSExFOUJRVThzUTBGQlF5eE5RVUZOTEVOQlFVTXNRMEZCUXl4RFFVRkRMRVZCUVVVc1JVRkJSU3hEUVVGRExFTkJRVU1zUTBGQlF5eFBRVUZQTEVOQlFVTXNRMEZCUXl4TlFVRk5MRU5CUVVNN1dVRkRlRVFzVFVGQlRTeE5RVUZOTEVkQlFVY3NUMEZCVHl4RFFVRkRMRTFCUVUwc1EwRkJReXhEUVVGRExFTkJRVU1zUlVGQlJTeEZRVUZGTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1QwRkJUeXhEUVVGRExFTkJRVU03V1VGRGFrUXNUVUZCVFN4WFFVRlhMRWRCUVVjc2VVWkJRWGxHTEVOQlFVTTdXVUZET1Vjc1RVRkJUU3hOUVVGTkxFZEJRVWM3WjBKQlEySXNWVUZCVlN4RlFVRkZMRlZCUVZVN1owSkJRM1JDTEU5QlFVOHNSVUZCUlN4UFFVRlBPMmRDUVVOb1FpeE5RVUZOTEVWQlFVVXNUVUZCVFN4RFFVRkRMRTFCUVUwN1owSkJRM0pDTEU5QlFVOHNSVUZCUlN4UlFVRlJPMkZCUTJ4Q0xFTkJRVU03V1VGRFJpeExRVUZMTEUxQlFVMHNRMEZCUXl4SlFVRkpMRTFCUVUwN1owSkJRVVVzVFVGQlRTeERRVUZETEUxQlFVMHNRMEZCUXl4TlFVRk5MRVZCUVVVc1JVRkJReXhEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETEZGQlFWRXNUVUZCVFN4RFFVRkRMRU5CUVVNc1NVRkJTU3hGUVVGRkxFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNUVUZCVFN4RlFVRkRMRU5CUVVNc1EwRkJRenRaUVVONlJpeE5RVUZOTEVOQlFVTXNSMEZCUnl4RFFVRkRMRmRCUVZjc1JVRkJSU3hOUVVGTkxFVkJRVVVzWjBKQlFXZENMRU5CUVVNc1EwRkJRenRUUVVOdVJEdFJRVU5FTEU5QlFVOHNUMEZCVHl4RFFVRkRPenREUVVOb1FqdEJRVVZFTEZOQlFXVXNVVUZCVVN4RFFVRkRMRU5CUVU4c1JVRkJSU3hUUVVFMlFqczdPMUZCUXpWRUxFbEJRVWtzUTBGQmRVY3NRMEZCUXp0UlFVTTFSeXhOUVVGTkxFMUJRVTBzUjBGQlJ5eFRRVUZUTEVsQlFVa3NVMEZCVXl4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zU1VGQlNTeERRVUZETEZkQlFWY3NSVUZCUlN4RFFVRkRMRlZCUVZVc1EwRkJReXhUUVVGVExFTkJRVU1zVjBGQlZ5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RFFVRkRPMUZCUTNKSExFMUJRVTBzU1VGQlNTeEhRVUZITEVOQlFVRXNUVUZCUVN4RFFVRkRMRU5CUVVNc1QwRkJUeXd3UTBGQlJTeFZRVUZWTEV0QlFVa3NUVUZCVFN4RFFVRkRPMUZCUXpkRExFMUJRVTBzVlVGQlZTeEhRVUZITEUxQlFVMHNRMEZCUXl4RFFVRkRMRU5CUVVNc1UwRkJVeXhEUVVGRExFTkJRVU1zUTBGQlF5eE5RVUZCTEVOQlFVTXNRMEZCUXl4UFFVRlBMREJEUVVGRkxGVkJRVlVzUTBGQlF6dFJRVU01UkN4SlFVRkpMRU5CUVVNc1NVRkJTVHRaUVVOUUxFOUJRVThzUTBGQlF5eEhRVUZITEVOQlFVTXNWMEZCVnl4RFFVRkRMRU5CUVVNc1VVRkJVU3hKUVVGSkxFTkJRVU1zUTBGQlF5eEpRVUZKTEVWQlFVVXNRMEZCUXl4RFFVRkRPMUZCUTJwRUxFMUJRVTBzUzBGQlN5eEhRVUZITEVsQlFVa3NTVUZCU1N4RlFVRkZMRU5CUVVNN1VVRkRla0lzU1VGQlNUdFpRVU5HTEVsQlFVa3NTVUZCU1R0blFrRkRUaXhEUVVGRExFZEJRVWNzUlVGQlF5eFBRVUZQTEVWQlFVVXNTVUZCU1N4RlFVRkZMRTFCUVUwc1JVRkJSU3hWUVVGWExFVkJRVVVzUlVGQlJTeEZRVUZGTEVOQlFVTXNSVUZCUlN4UFFVRlBMRVZCUVVVc1NVRkJTU3hGUVVGRExFTkJRVU03TzJkQ1FVVXZSQ3hEUVVGRExFZEJRVWNzUlVGQlF5eFBRVUZQTEVWQlFVVXNTVUZCU1N4RlFVRkZMRTFCUVUwc1JVRkJSU3hOUVVGQkxFMUJRVTBzUTBGQlF5eERRVUZETEVsQlFVa3NSVUZCUlN4dFEwRkJTU3hKUVVGSkxFVkJRVVVzUlVGQlJTeEZRVUZGTEVOQlFVTXNSVUZCUlN4UFFVRlBMRVZCUVVVc1MwRkJTeXhGUVVGRExFTkJRVU03VTBGRE9VVTdVVUZCUXl4UFFVRlBMRU5CUVUwc1JVRkJSVHRaUVVObUxFTkJRVU1zUjBGQlJ5eEZRVUZETEU5QlFVOHNSVUZCUlN4TFFVRkxMRVZCUVVVc1RVRkJUU3hGUVVGRkxFTkJRVU1zUTBGQlF5eFJRVUZSTEVWQlFVVXNSVUZCUlN4RlFVRkZMRVZCUVVVc1EwRkJReXhGUVVGRkxFOUJRVThzUlVGQlJTeExRVUZMTEVWQlFVTXNRMEZCUXp0VFFVTnVSVHRSUVVORUxFMUJRVTBzU1VGQlNTeEhRVUZITEVsQlFVa3NTVUZCU1N4RlFVRkZMRU5CUVVNN1VVRkRlRUlzWVVGQllUdFJRVU5pTEVOQlFVTXNRMEZCUXl4RlFVRkZMRWRCUVVjc1NVRkJTU3hIUVVGSExFdEJRVXNzUTBGQlF6dFJRVU53UWl4SlFVRkpMRU5CUVVNc1NVRkJTVHRaUVVOUUxFOUJRVThzUTBGQlF5eEhRVUZITEVOQlFVTXNXVUZCV1N4RFFVRkRMRU5CUVVNc1VVRkJVU3hKUVVGSkxFTkJRVU1zUTBGQlF5eEpRVUZKTEZGQlFWRXNRMEZCUXl4RFFVRkRMRVZCUVVVc1MwRkJTeXhEUVVGRExFTkJRVU03VVVGRGFrVXNRMEZCUXl4RFFVRkRMRkZCUVZFc1IwRkJSeXhEUVVGRExFTkJRVU1zVVVGQlVTeERRVUZETzFGQlEzaENMRU5CUVVNc1EwRkJReXhKUVVGSkxFZEJRVWNzUTBGQlF5eERRVUZETEVsQlFVa3NRMEZCUXp0UlFVTm9RaXhQUVVGUExFTkJRVU1zUTBGQlF6czdRMEZEVmp0QlFVVkVMRFpDUVVFMlFqdEJRVU0zUWl4TlFVRk5MRlZCUVdkQ0xFdEJRVXNzUTBGQlF5eEZRVUZWT3p0UlFVTndReXhOUVVGTkxFbEJRVWtzVDBGQlR5eERRVUZETEVOQlFVTXNRMEZCUXl4RlFVRkZMRVZCUVVVc1EwRkJReXhWUVVGVkxFTkJRVU1zUTBGQlF5eEZRVUZGTEVWQlFVVXNRMEZCUXl4RFFVRkRMRU5CUVVNN1NVRkRPVU1zUTBGQlF6dERRVUZCTzBGQlJVUXNUVUZCVFN4VlFVRm5RaXhWUVVGVkxFTkJRVU1zV1VGQk1rSXNSVUZETVVRc1VVRkJaMElzYTBKQlFXdENMRVZCUVVVc1QwRkJaU3hIUVVGSExFVkJRVVVzVjBGQmJVSXNSVUZCUlRzN1VVRkROMFVzVDBGQlR5eEpRVUZKTEU5QlFVOHNRMEZCUXl4RFFVRkRMRTlCUVU4c1JVRkJSU3hOUVVGTkxFVkJRVVVzUlVGQlJUdFpRVU55UXl4VlFVRlZMRU5CUVVNc1IwRkJSeXhGUVVGRk8yZENRVU5rTEdGQlFXRXNRMEZCUXl4VlFVRlZMRU5CUVVNc1EwRkJRenRuUWtGRE1VSXNUVUZCVFN4RFFVRkRMRWxCUVVrc1MwRkJTeXhEUVVGRExFdEJRVXNzUTBGQlF5eERRVUZETEVOQlFVTTdXVUZETTBJc1EwRkJReXhGUVVGRkxFbEJRVWtzUTBGQlF5eERRVUZETzFsQlExUXNZVUZCWVR0WlFVTmlMRTFCUVUwc1ZVRkJWU3hIUVVGWkxGZEJRVmNzUTBGQlF5eEhRVUZITEVWQlFVVTdaMEpCUXpORExFbEJRVWtzV1VGQldTeEZRVUZGTEVWQlFVVTdiMEpCUTJ4Q0xHRkJRV0VzUTBGQlF5eFZRVUZWTEVOQlFVTXNRMEZCUXp0dlFrRkRNVUlzVDBGQlR5eEZRVUZGTEVOQlFVTTdhVUpCUTFnN1dVRkRTQ3hEUVVGRExFVkJRVVVzVVVGQlVTeERRVUZETEVOQlFVTTdVVUZEWml4RFFVRkRMRU5CUVVNc1EwRkJRenRKUVVOTUxFTkJRVU03UTBGQlFUdEJRVVZFTEUxQlFVMHNWVUZCVlN4bFFVRmxMRU5CUVVNc1YwRkJiVUk3U1VGRGFrUXNUVUZCVFN4UFFVRlBMRWRCUVVjc1JVRkJSU3hEUVVGRExFMUJRVTBzUTBGQlF5eGpRVUZqTEVWQlFVVXNRMEZCUXp0SlFVTXpReXhMUVVGTExFbEJRVWtzUTBGQlF5eEhRVUZITEVOQlFVTXNSVUZCUlN4RFFVRkRMRWRCUVVjc1QwRkJUeXhEUVVGRExFMUJRVTBzUlVGQlJTeERRVUZETEVWQlFVVXNSVUZCUlR0UlFVTjJReXhKUVVGSkxFOUJRVThzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4TFFVRkxMRWxCUVVrc1YwRkJWenRaUVVOcVF5eFBRVUZQTEVsQlFVa3NRMEZCUXp0TFFVTm1PMGxCUTBRc1QwRkJUeXhMUVVGTExFTkJRVU03UVVGRFppeERRVUZETzBGQlJVUXNUVUZCVFN4VlFVRm5RaXhWUVVGVkxFTkJRVU1zUTBGQlV5eEZRVUZGTEVWQlFXZENMRVZCUVVVc2MwSkJRU3RDTEV0QlFVczdPMUZCUTJoSExFbEJRVWtzYlVKQlFXMUNPMWxCUVVVc1RVRkJUU3hKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEcxQ1FVRnRRaXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETzFGQlEycEZMRTFCUVUwc1JVRkJSU3hIUVVGSExFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNXVUZCV1N4RFFVRkRMRVZCUVVVc1EwRkJReXhEUVVGRE8xRkJRM1pETEUxQlFVMHNWVUZCVlN4SFFVRkhMR2RDUVVGblFpeERRVUZETEVOQlFVTXNUMEZCVHl4RFFVRkRMRTFCUVUwc1JVRkJSU3hIUVVGSExFTkJRVU1zUzBGQlN5eERRVUZETzFGQlF5OUVMRTFCUVUwc1VVRkJVU3hIUVVGSExFZEJRVWNzVlVGQlZTeFhRVUZYTEZWQlFWVXNVVUZCVVN4VlFVRlZPMDFCUTJwRkxGVkJRVlVzVlVGQlZTeFZRVUZWTEU5QlFVOHNWVUZCVlN4SlFVRkpMRU5CUVVNN1VVRkRlRVFzVFVGQlRTeEhRVUZITEVkQlFVY3NSVUZCUlN4RFFVRkRPMUZCUTJZc1NVRkJTVHRaUVVOR0xFbEJRVWtzVFVGQlRTeEhRVUZITEVWQlFVVXNRMEZCUXl4VFFVRlRMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03V1VGRE4wSXNUVUZCVFN4VlFVRlZMRU5CUVVNc1IwRkJSeXhGUVVGRkxFTkJRVU1zVVVGQlVTeERRVUZETEdGQlFXRXNRMEZCUXl4UlFVRlJMRU5CUVVNc1MwRkJTeXhKUVVGSkxFVkJRemxFTEc5Q1FVRnZRaXhGUVVGRkxFbEJRVWtzUTBGQlF5eERRVUZETzFsQlF6bENMRWRCUVVjc1EwRkJReXhKUVVGSkxFTkJRVU1zUzBGQlN5eERRVUZETEVsQlFVa3NRMEZCUXl4RlFVRkZMRU5CUVVNc1QwRkJUeXhEUVVGRExFTkJRVU1zVFVGQlRTeERRVUZETEVOQlFVTTdXVUZEZUVNc1MwRkJTeXhEUVVGRExFbEJRVWtzUTBGQlF5eEZRVUZGTEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFdEJRVXNzUTBGQlF5eERRVUZETEU5QlFVOHNRMEZCUXl4RFFVRkRMRU5CUVVNc1JVRkJSU3hGUVVGRkxFTkJRVU1zUTBGQlF5eERRVUZETEV0QlFVc3NSMEZCUnl4SlFVRkpMRU5CUVVNc1EwRkJRenRaUVVNelJDeEZRVUZGTEVOQlFVTXNTVUZCU1N4RFFVRkRMRTFCUVUwc1EwRkJReXhEUVVGRExFZEJRVWNzUlVGQlJTeEZRVUZGTEVOQlFVTXNSMEZCUnl4RFFVRkRMRWRCUVVjc1IwRkJSeXhEUVVGRExFbEJRVWtzUjBGQlJ5eERRVUZETEVkQlFVY3NSMEZCUnl4RFFVRkRMRU5CUVVNc1EwRkJRenRaUVVOd1JDeExRVUZMTEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1JVRkJSU3hEUVVGRExFZEJRVWNzUlVGQlJTeEZRVUZGTEVOQlFVTXNSVUZCUlR0blFrRkJSU3hGUVVGRkxFTkJRVU1zVFVGQlRTeERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRVZCUVVVc1MwRkJTeXhEUVVGRExFTkJRVU03V1VGRGNrUXNSVUZCUlN4RFFVRkRMR0ZCUVdFc1IwRkJSeXhEUVVGRExFTkJRVU03V1VGRGNrSXNUVUZCVFN4TFFVRkxMRWRCUVVjc1RVRkJUU3hEUVVGRExGVkJRVlVzUTBGQlF5eEpRVUZKTEVOQlFVTXNRMEZCUXl4SlFVRkpMRU5CUVVNN1dVRkRNME1zVFVGQlRTeFJRVUZSTEVkQlFUUkNMRVZCUVVVc1EwRkJRenRaUVVNM1F5eE5RVUZOTEVOQlFVTXNTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhEUVVGRExFMUJRVTBzUTBGQlF5eERRVUZETEVOQlFVTXNSVUZCUlN4RlFVRkZMRU5CUVVNc1QwRkJUeXhMUVVGTExFTkJRVU1zUTBGQlF5eERRVUZETEV0QlFVc3NVMEZCVXl4RFFVRkRMRU5CUVVNc1QwRkJUeXhEUVVGRExFTkJRVU1zUTBGQlF5eEZRVUZGTEVWQlFVVXNRMEZCUXl4UlFVRlJMRU5CUVVNc1EwRkJReXhEUVVGRExFZEJRVWNzUTBGQlF5eExRVUZMTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRaUVVONFJ5eE5RVUZOTEVOQlFVTXNWVUZCVlN4RFFVRkRMRkZCUVZFc1EwRkJReXhEUVVGRE8xbEJRelZDTEUxQlFVMHNTMEZCU3l4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRE8xbEJRMnBDTEUxQlFVMHNUVUZCVFN4SFFVRkhMRVZCUVVVc1EwRkJReXhWUVVGVkxFVkJRVVVzUTBGQlF6dFpRVU12UWl4TlFVRk5MRkZCUVZFc1IwRkJSeXhOUVVGTkxFTkJRVU1zVlVGQlZTeEZRVUZGTEVOQlFVTXNTVUZCU1N4RFFVRkRPMWxCUXpGRExFVkJRVVVzUTBGQlF5eFhRVUZYTEVWQlFVVXNRMEZCUXp0WlFVTnFRaXhIUVVGSExFTkJRVU1zU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4SlFVRkpMRU5CUVVNc1JVRkJSU3hEUVVGRExFOUJRVThzUTBGQlF5eERRVUZETEUxQlFVMHNRMEZCUXl4RFFVRkRPMWxCUTNoRExFVkJRVVVzUTBGQlF5eFZRVUZWTEVOQlFVTXNUVUZCVFN4RFFVRkRMRU5CUVVNN1dVRkRkRUlzVFVGQlRTeFZRVUZWTEVOQlFVTXNSMEZCUnl4RlFVRkZMRU5CUVVNc1VVRkJVU3hEUVVGRExHRkJRV0VzUTBGQlF5eFJRVUZSTEVOQlFVTXNTMEZCU3l4SlFVRkpMRVZCUXpsRUxHZERRVUZuUXl4RlFVRkZMRWxCUVVrc1EwRkJReXhEUVVGRE8xbEJRekZETEUxQlFVMHNTMEZCU3l4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRE8xbEJRMnBDTEVkQlFVY3NRMEZCUXl4SlFVRkpMRU5CUVVNc1MwRkJTeXhEUVVGRExFbEJRVWtzUTBGQlF5eEZRVUZGTEVOQlFVTXNUMEZCVHl4RFFVRkRMRU5CUVVNc1RVRkJUU3hEUVVGRExFTkJRVU03V1VGRGVFTXNUVUZCVFN4SFFVRkhMRXRCUVVzc1EwRkJReXhKUVVGSkxFTkJRVU1zUlVGQlJTeERRVUZETEU5QlFVOHNRMEZCUXl4RFFVRkRMRWxCUVVrc1EwRkJReXhEUVVGRExFTkJRVU1zUlVGQlJTeEZRVUZGTEVOQlFVTXNRMEZCUXl4RFFVRkRMRWxCUVVrc1MwRkJTeXhOUVVGTkxFTkJRVVVzUTBGQlF6dFpRVU5vUlN4WFFVRlhMRU5CUVVNc1IwRkJSeXhGUVVGRkxFTkJRVU1zUTBGQlF5eEZRVUZGTEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRE8xbEJRelZDTEUxQlFVMHNRMEZCUXl4SlFVRkpMRU5CUVVNc1UwRkJVeXhEUVVGRExFMUJRVTBzUTBGQlF5eFZRVUZWTEVWQlFVVXNRMEZCUXl4SlFVRkpMRU5CUVVNc1JVRkJSU3hKUVVGSkxFTkJRVU1zVTBGQlV5eERRVUZETEZGQlFWRXNRMEZCUXl4RFFVRkRMRU5CUVVNN1UwRkROVVU3WjBKQlFWTTdXVUZEVWl4RlFVRkZMRU5CUVVNc1MwRkJTeXhGUVVGRkxFTkJRVU03V1VGRFdDeEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRMRlZCUVZVc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF6dFRRVU16UWp0SlFVTklMRU5CUVVNN1EwRkJRU0lzSW5OdmRYSmpaWE5EYjI1MFpXNTBJanBiSW1sdGNHOXlkQ0FxSUdGeklHZHliMnNnWm5KdmJTQW5aR0YwWVdkeWIyc3RZWEJwTDJkeWIyc25PMXh1YVcxd2IzSjBJQ29nWVhNZ1JFY2dabkp2YlNBblpHRjBZV2R5YjJzdFlYQnBMMlJuSnp0Y2JtbHRjRzl5ZENCN1QySnpaWEoyWVdKc1pTd2dVM1ZpYzJOeWFYQjBhVzl1ZlNCbWNtOXRJQ2R5ZUdwekp6dGNibWx0Y0c5eWRDQlVhVzFsYjNWMElEMGdUbTlrWlVwVExsUnBiV1Z2ZFhRN1hHNXBiWEJ2Y25RZ2UwUmhkR0ZHY21GdFpYMGdabkp2YlNBblpHRjBZV2R5YjJzdFlYQnBMMlJuSnp0Y2JseHVaWGh3YjNKMElHTnZibk4wSUhSbGMzUnpPaUI3WEc0Z0lGdHJaWGs2SUhOMGNtbHVaMTA2SUh0Y2JpQWdJQ0IwWlhOMGN6ODZJRlJsYzNSYlhTd2dZbVZtYjNKbFB6b2dLQ2tnUFQ0Z1VISnZiV2x6WlR4MmIybGtQaXdnWVdaMFpYSS9PaUFvS1NBOVBpQlFjbTl0YVhObFBIWnZhV1ErTEZ4dUlDQWdJR0psWm05eVpWTjBZWFIxY3o4NklITjBjbWx1Wnl3Z1lXWjBaWEpUZEdGMGRYTS9PaUJ6ZEhKcGJtZGNiaUFnZlZ4dWZTQTlJSHQ5TzF4dVhHNWpiMjV6ZENCaGRYUnZWR1Z6ZEhORFlYUk9ZVzFsSUQwZ0owRjFkRzhnVkdWemRITW5PMXh1WTI5dWMzUWdkMkZ6VW1WbmFYTjBaWEpsWkRvZ2UxdHJaWGs2SUhOMGNtbHVaMTA2SUdKdmIyeGxZVzU5SUQwZ2UzMDdYRzVsZUhCdmNuUWdiR1YwSUdOMWNuSmxiblJEWVhSbFoyOXllVG9nYzNSeWFXNW5PMXh1WEc1bGVIQnZjblFnYm1GdFpYTndZV05sSUdGemMzVnlaU0I3WEc0Z0lHVjRjRzl5ZENCbWRXNWpkR2x2YmlCdWIzUk9kV3hzS0haaGJIVmxPaUJoYm5rc0lHNWhiV1UvT2lCemRISnBibWNwSUh0Y2JpQWdJQ0JwWmlBb2RtRnNkV1VnUFQwZ2JuVnNiQ2xjYmlBZ0lDQWdJSFJvY205M0lHNWxkeUJGY25KdmNpaGdKSHR1WVcxbElEMDlJRzUxYkd3Z1B5QW5WbUZzZFdVbklEb2dibUZ0WlgwZ2JtOTBJR1JsWm1sdVpXUmdLVHRjYmlBZ2ZWeHVmVnh1WEc1bGVIQnZjblFnYVc1MFpYSm1ZV05sSUZSbGMzUlBjSFJwYjI1eklIdGNiaUFnZEdsdFpXOTFkRDg2SUc1MWJXSmxjanRjYmlBZ2RXNW9ZVzVrYkdWa1JYaGpaWEIwYVc5dVZHbHRaVzkxZEQ4NklHNTFiV0psY2p0Y2JpQWdjMnRwY0ZKbFlYTnZiajg2SUhOMGNtbHVaenRjYm4xY2JseHVaWGh3YjNKMElHTnNZWE56SUZSbGMzUkRiMjUwWlhoMElIdGNiaUFnWTJGMFkyaFZibWhoYm1Sc1pXUWdQU0IwY25WbE8xeHVJQ0J5WlhCdmNuUWdQU0JtWVd4elpUdGNibHh1SUNCamIyNXpkSEoxWTNSdmNpaGpZWFJqYUZWdWFHRnVaR3hsWkQ4NklHSnZiMnhsWVc0c0lISmxjRzl5ZEQ4NklHSnZiMnhsWVc0cElIdGNiaUFnSUNCcFppQW9ZMkYwWTJoVmJtaGhibVJzWldRZ0lUMDlJSFZ1WkdWbWFXNWxaQ2tnZEdocGN5NWpZWFJqYUZWdWFHRnVaR3hsWkNBOUlHTmhkR05vVlc1b1lXNWtiR1ZrTzF4dUlDQWdJR2xtSUNoeVpYQnZjblFnSVQwOUlIVnVaR1ZtYVc1bFpDa2dkR2hwY3k1eVpYQnZjblFnUFNCeVpYQnZjblE3WEc0Z0lIMDdYRzU5WEc1Y2JtVjRjRzl5ZENCamJHRnpjeUJVWlhOMElIdGNiaUFnZEdWemREb2dLQ2tnUFQ0Z1VISnZiV2x6WlR4aGJuaytPMXh1SUNCdVlXMWxPaUJ6ZEhKcGJtYzdYRzRnSUdOaGRHVm5iM0o1T2lCemRISnBibWM3WEc0Z0lHOXdkR2x2Ym5NL09pQlVaWE4wVDNCMGFXOXVjenRjYmx4dUlDQmpiMjV6ZEhKMVkzUnZjaWhqWVhSbFoyOXllVG9nYzNSeWFXNW5MQ0J1WVcxbE9pQnpkSEpwYm1jc0lIUmxjM1E2SUNncElEMCtJRkJ5YjIxcGMyVThZVzU1UGl3Z2IzQjBhVzl1Y3o4NklGUmxjM1JQY0hScGIyNXpLU0I3WEc0Z0lDQWdkR2hwY3k1allYUmxaMjl5ZVNBOUlHTmhkR1ZuYjNKNU8xeHVJQ0FnSUhSb2FYTXVibUZ0WlNBOUlHNWhiV1U3WEc0Z0lDQWdiM0IwYVc5dWN5QS9QejBnZTMwN1hHNGdJQ0FnYjNCMGFXOXVjeTUwYVcxbGIzVjBJRDgvUFNBek1EQXdNRHRjYmlBZ0lDQjBhR2x6TG05d2RHbHZibk1nUFNCdmNIUnBiMjV6TzF4dUlDQWdJSFJvYVhNdWRHVnpkQ0E5SUdGemVXNWpJQ2dwT2lCUWNtOXRhWE5sUEdGdWVUNGdQVDRnZTF4dUlDQWdJQ0FnY21WMGRYSnVJRzVsZHlCUWNtOXRhWE5sS0dGemVXNWpJQ2h5WlhOdmJIWmxMQ0J5WldwbFkzUXBJRDArSUh0Y2JpQWdJQ0FnSUNBZ2JHVjBJSEpsYzNWc2RDQTlJQ2NuTzF4dUlDQWdJQ0FnSUNCMGNua2dlMXh1SUNBZ0lDQWdJQ0FnSUhKbGMzVnNkQ0E5SUdGM1lXbDBJSFJsYzNRb0tUdGNiaUFnSUNBZ0lDQWdmU0JqWVhSamFDQW9aVG9nWVc1NUtTQjdYRzRnSUNBZ0lDQWdJQ0FnY21WcVpXTjBLR1VwTzF4dUlDQWdJQ0FnSUNCOVhHNGdJQ0FnSUNBZ0lISmxjMjlzZG1Vb2NtVnpkV3gwS1R0Y2JpQWdJQ0FnSUgwcE8xeHVJQ0FnSUgwN1hHNGdJSDFjYm4xY2JseHVaWGh3YjNKMElHRnplVzVqSUdaMWJtTjBhVzl1SUhSbGMzUkZkbVZ1ZER4VVBpaGxkbVZ1ZERvZ1QySnpaWEoyWVdKc1pUeFVQaXhjYmlBZ2FHRnVaR3hsY2pvZ0tHRnlaM002SUZRcElEMCtJSFp2YVdRc0lIUnlhV2RuWlhJNklDZ3BJRDArSUhadmFXUXNJRzF6T2lCdWRXMWlaWElnUFNBd0tUb2dVSEp2YldselpUeHpkSEpwYm1jK0lIdGNiaUFnYkdWMElITjFZam9nVTNWaWMyTnlhWEIwYVc5dU8xeHVJQ0J5WlhSMWNtNGdibVYzSUZCeWIyMXBjMlVvS0hKbGMyOXNkbVVzSUhKbGFtVmpkQ2tnUFQ0Z2UxeHVJQ0FnSUhOMVlpQTlJR1YyWlc1MExuTjFZbk5qY21saVpTZ29ZWEpuY3lrZ1BUNGdlMXh1SUNBZ0lDQWdkSEo1SUh0Y2JpQWdJQ0FnSUNBZ2FHRnVaR3hsY2loaGNtZHpLVHRjYmlBZ0lDQWdJSDBnWTJGMFkyZ2dLR1VwSUh0Y2JpQWdJQ0FnSUNBZ2NtVnFaV04wS0dVcE8xeHVJQ0FnSUNBZ2ZWeHVJQ0FnSUNBZ2MzVmlMblZ1YzNWaWMyTnlhV0psS0NrN1hHNGdJQ0FnSUNCeVpYTnZiSFpsS0NkUFN5Y3BPMXh1SUNBZ0lIMHBPMXh1SUNBZ0lITmxkRlJwYldWdmRYUW9LQ2tnUFQ0Z2UxeHVJQ0FnSUNBZ2MzVmlMblZ1YzNWaWMyTnlhV0psS0NrN1hHNGdJQ0FnSUNBdkx5QmxjMnhwYm5RdFpHbHpZV0pzWlMxdVpYaDBMV3hwYm1VZ2NISmxabVZ5TFhCeWIyMXBjMlV0Y21WcVpXTjBMV1Z5Y205eWMxeHVJQ0FnSUNBZ2NtVnFaV04wS0NkMGFXMWxiM1YwSnlrN1hHNGdJQ0FnZlN3Z2JYTXBPMXh1SUNBZ0lIUnlhV2RuWlhJb0tUdGNiaUFnZlNrN1hHNTlYRzVjYm1WNGNHOXlkQ0JtZFc1amRHbHZiaUIwWlhOMEtHNWhiV1U2SUhOMGNtbHVaeXdnZEdWemREb2dLQ2tnUFQ0Z1VISnZiV2x6WlR4aGJuaytMQ0J2Y0hScGIyNXpQem9nVkdWemRFOXdkR2x2Ym5NcE9pQjJiMmxrSUh0Y2JpQWdhV1lnS0hSbGMzUnpXMk4xY25KbGJuUkRZWFJsWjI5eWVWMGdQVDBnZFc1a1pXWnBibVZrS1Z4dUlDQWdJSFJsYzNSelcyTjFjbkpsYm5SRFlYUmxaMjl5ZVYwZ1BTQjdmVHRjYmlBZ2FXWWdLSFJsYzNSelcyTjFjbkpsYm5SRFlYUmxaMjl5ZVYwdWRHVnpkSE1nUFQwZ2RXNWtaV1pwYm1Wa0tWeHVJQ0FnSUhSbGMzUnpXMk4xY25KbGJuUkRZWFJsWjI5eWVWMHVkR1Z6ZEhNZ1BTQmJYVHRjYmlBZ2RHVnpkSE5iWTNWeWNtVnVkRU5oZEdWbmIzSjVYUzUwWlhOMGN5RXVjSFZ6YUNodVpYY2dWR1Z6ZENoamRYSnlaVzUwUTJGMFpXZHZjbmtzSUc1aGJXVXNJSFJsYzNRc0lHOXdkR2x2Ym5NcEtUdGNibjFjYmx4dUx5b2dWR1Z6ZEhNZ2RIZHZJRzlpYW1WamRITWdabTl5SUdWeGRXRnNhWFI1TENCMGFISnZkM01nWVc0Z1pYaGpaWEIwYVc5dUlHbG1JSFJvWlhrZ1lYSmxJRzV2ZENCbGNYVmhiQzRnS2k5Y2JtVjRjRzl5ZENCbWRXNWpkR2x2YmlCbGVIQmxZM1FvWVdOMGRXRnNPaUJoYm5rc0lHVjRjR1ZqZEdWa09pQmhibmtnUFNCMGNuVmxMQ0JsY25KdmNqODZJSE4wY21sdVp5azZJSFp2YVdRZ2UxeHVJQ0JwWmlBb1pYSnliM0lwWEc0Z0lDQWdaWEp5YjNJZ1BTQmdKSHRsY25KdmNuMHNJR0E3WEc0Z0lHVnNjMlVnWlhKeWIzSWdQU0FuSnp0Y2JpQWdhV1lnS0dGamRIVmhiQ0FoUFQwZ1pYaHdaV04wWldRcFhHNGdJQ0FnZEdoeWIzY2dibVYzSUVWeWNtOXlLR0FrZTJWeWNtOXlmVVY0Y0dWamRHVmtJRndpSkh0bGVIQmxZM1JsWkgxY0lpd2daMjkwSUZ3aUpIdGhZM1IxWVd4OVhDSmdLVHRjYm4xY2JseHVaWGh3YjNKMElHWjFibU4wYVc5dUlHVjRjR1ZqZEVac2IyRjBLR0ZqZEhWaGJEb2diblZ0WW1WeUxDQmxlSEJsWTNSbFpEb2diblZ0WW1WeUxDQjBiMnhsY21GdVkyVWdQU0F3TGpBd01Td2daWEp5YjNJL09pQnpkSEpwYm1jcE9pQjJiMmxrSUh0Y2JpQWdhV1lnS0NoaFkzUjFZV3dnUFQwOUlFNTFiV0psY2k1UVQxTkpWRWxXUlY5SlRrWkpUa2xVV1NBbUppQmxlSEJsWTNSbFpDQTlQVDBnVG5WdFltVnlMbEJQVTBsVVNWWkZYMGxPUmtsT1NWUlpLU0I4ZkZ4dUlDQWdJQ0FnS0dGamRIVmhiQ0E5UFQwZ1RuVnRZbVZ5TGs1RlIwRlVTVlpGWDBsT1JrbE9TVlJaSUNZbUlHVjRjR1ZqZEdWa0lEMDlQU0JPZFcxaVpYSXVUa1ZIUVZSSlZrVmZTVTVHU1U1SlZGa3BJSHg4WEc0Z0lDQWdJQ0FvWVdOMGRXRnNJRDA5UFNCT2RXMWlaWEl1VG1GT0lDWW1JR1Y0Y0dWamRHVmtJRDA5UFNCT2RXMWlaWEl1VG1GT0tTQjhmQ0FvYVhOT1lVNG9ZV04wZFdGc0tTQW1KaUJwYzA1aFRpaGxlSEJsWTNSbFpDa3BLVnh1SUNBZ0lISmxkSFZ5Ymp0Y2JpQWdZMjl1YzNRZ1lYSmxSWEYxWVd3Z1BTQk5ZWFJvTG1GaWN5aGhZM1IxWVd3Z0xTQmxlSEJsWTNSbFpDa2dQQ0IwYjJ4bGNtRnVZMlU3WEc0Z0lHVjRjR1ZqZENoaGNtVkZjWFZoYkN3Z2RISjFaU3dnWUNSN1pYSnliM0lnUHo4Z0p5ZDlJQ2gwYjJ4bGNtRnVZMlVnUFNBa2UzUnZiR1Z5WVc1alpYMHBZQ2s3WEc0Z0lHbG1JQ2doWVhKbFJYRjFZV3dwWEc0Z0lDQWdkR2h5YjNjZ2JtVjNJRVZ5Y205eUtHQkZlSEJsWTNSbFpDQWtlMlY0Y0dWamRHVmtmU3dnWjI5MElDUjdZV04wZFdGc2ZTQW9kRzlzWlhKaGJtTmxJRDBnSkh0MGIyeGxjbUZ1WTJWOUtXQXBPMXh1ZlZ4dVhHNWxlSEJ2Y25RZ1puVnVZM1JwYjI0Z1pYaHdaV04wVkdGaWJHVW9ZV04wZFdGc09pQkVZWFJoUm5KaGJXVXNJR1Y0Y0dWamRHVmtPaUJFWVhSaFJuSmhiV1VzSUdWeWNtOXlQem9nYzNSeWFXNW5LVG9nZG05cFpDQjdYRzRnSUdOdmJuTjBJR1Y0Y0dWamRHVmtVbTkzUTI5MWJuUWdQU0JsZUhCbFkzUmxaQzV5YjNkRGIzVnVkRHRjYmlBZ1kyOXVjM1FnWVdOMGRXRnNVbTkzUTI5MWJuUWdQU0JoWTNSMVlXd3VjbTkzUTI5MWJuUTdYRzRnSUdWNGNHVmpkQ2hoWTNSMVlXeFNiM2REYjNWdWRDd2daWGh3WldOMFpXUlNiM2REYjNWdWRDd2dZQ1I3WlhKeWIzSWdQejhnSnlkOUxDQnliM2NnWTI5MWJuUmdLVHRjYmx4dUlDQm1iM0lnS0dOdmJuTjBJR052YkhWdGJpQnZaaUJsZUhCbFkzUmxaQzVqYjJ4MWJXNXpLU0I3WEc0Z0lDQWdZMjl1YzNRZ1lXTjBkV0ZzUTI5c2RXMXVJRDBnWVdOMGRXRnNMbU52YkhWdGJuTXVZbmxPWVcxbEtHTnZiSFZ0Ymk1dVlXMWxLVHRjYmlBZ0lDQnBaaUFvWVdOMGRXRnNRMjlzZFcxdUlEMDlJRzUxYkd3cFhHNGdJQ0FnSUNCMGFISnZkeUJ1WlhjZ1JYSnliM0lvWUVOdmJIVnRiaUFrZTJOdmJIVnRiaTV1WVcxbGZTQnViM1FnWm05MWJtUmdLVHRjYmlBZ0lDQnBaaUFvWVdOMGRXRnNRMjlzZFcxdUxuUjVjR1VnSVQwZ1kyOXNkVzF1TG5SNWNHVXBYRzRnSUNBZ0lDQjBhSEp2ZHlCdVpYY2dSWEp5YjNJb1lFTnZiSFZ0YmlBa2UyTnZiSFZ0Ymk1dVlXMWxmU0IwZVhCbElHVjRjR1ZqZEdWa0lDUjdZMjlzZFcxdUxuUjVjR1Y5SUdkdmRDQWtlMkZqZEhWaGJFTnZiSFZ0Ymk1MGVYQmxmV0FwTzF4dUlDQWdJR1p2Y2lBb2JHVjBJR2tnUFNBd095QnBJRHdnWlhod1pXTjBaV1JTYjNkRGIzVnVkRHNnYVNzcktTQjdYRzRnSUNBZ0lDQmpiMjV6ZENCMllXeDFaU0E5SUdOdmJIVnRiaTVuWlhRb2FTazdYRzRnSUNBZ0lDQmpiMjV6ZENCaFkzUjFZV3hXWVd4MVpTQTlJR0ZqZEhWaGJFTnZiSFZ0Ymk1blpYUW9hU2s3WEc0Z0lDQWdJQ0JwWmlBb1kyOXNkVzF1TG5SNWNHVWdQVDBnUkVjdVZGbFFSUzVHVEU5QlZDbGNiaUFnSUNBZ0lDQWdaWGh3WldOMFJteHZZWFFvWVdOMGRXRnNWbUZzZFdVc0lIWmhiSFZsTENBd0xqQXdNREVzSUdWeWNtOXlLVHRjYmlBZ0lDQWdJR1ZzYzJVZ2FXWWdLR052YkhWdGJpNTBlWEJsSUQwOUlFUkhMbFJaVUVVdVJFRlVSVjlVU1UxRktWeHVJQ0FnSUNBZ0lDQmxlSEJsWTNRb1lXTjBkV0ZzVm1Gc2RXVXVhWE5UWVcxbEtIWmhiSFZsS1N3Z2RISjFaU3dnWlhKeWIzSXBPMXh1SUNBZ0lDQWdaV3h6WlZ4dUlDQWdJQ0FnSUNCbGVIQmxZM1FvWVdOMGRXRnNWbUZzZFdVc0lIWmhiSFZsTENCbGNuSnZjaWs3WEc0Z0lDQWdmVnh1SUNCOVhHNTlYRzVjYm1WNGNHOXlkQ0JtZFc1amRHbHZiaUJsZUhCbFkzUlBZbXBsWTNRb1lXTjBkV0ZzT2lCN0lGdHJaWGs2SUhOMGNtbHVaMTA2SUdGdWVTQjlMQ0JsZUhCbFkzUmxaRG9nZXlCYmEyVjVPaUJ6ZEhKcGJtZGRPaUJoYm5rZ2ZTa2dlMXh1SUNCbWIzSWdLR052Ym5OMElGdGxlSEJsWTNSbFpFdGxlU3dnWlhod1pXTjBaV1JXWVd4MVpWMGdiMllnVDJKcVpXTjBMbVZ1ZEhKcFpYTW9aWGh3WldOMFpXUXBLU0I3WEc0Z0lDQWdhV1lnS0NGaFkzUjFZV3d1YUdGelQzZHVVSEp2Y0dWeWRIa29aWGh3WldOMFpXUkxaWGtwS1Z4dUlDQWdJQ0FnZEdoeWIzY2dibVYzSUVWeWNtOXlLR0JGZUhCbFkzUmxaQ0J3Y205d1pYSjBlU0JjSWlSN1pYaHdaV04wWldSTFpYbDlYQ0lnYm05MElHWnZkVzVrWUNrN1hHNWNiaUFnSUNCamIyNXpkQ0JoWTNSMVlXeFdZV3gxWlNBOUlHRmpkSFZoYkZ0bGVIQmxZM1JsWkV0bGVWMDdYRzRnSUNBZ2FXWWdLR0ZqZEhWaGJGWmhiSFZsSUdsdWMzUmhibU5sYjJZZ1FYSnlZWGtnSmlZZ1pYaHdaV04wWldSV1lXeDFaU0JwYm5OMFlXNWpaVzltSUVGeWNtRjVLVnh1SUNBZ0lDQWdaWGh3WldOMFFYSnlZWGtvWVdOMGRXRnNWbUZzZFdVc0lHVjRjR1ZqZEdWa1ZtRnNkV1VwTzF4dUlDQWdJR1ZzYzJVZ2FXWWdLR0ZqZEhWaGJGWmhiSFZsSUdsdWMzUmhibU5sYjJZZ1QySnFaV04wSUNZbUlHVjRjR1ZqZEdWa1ZtRnNkV1VnYVc1emRHRnVZMlZ2WmlCUFltcGxZM1FwWEc0Z0lDQWdJQ0JsZUhCbFkzUlBZbXBsWTNRb1lXTjBkV0ZzVm1Gc2RXVXNJR1Y0Y0dWamRHVmtWbUZzZFdVcE8xeHVJQ0FnSUdWc2MyVWdhV1lnS0U1MWJXSmxjaTVwYzBacGJtbDBaU2hoWTNSMVlXeFdZV3gxWlNrZ0ppWWdUblZ0WW1WeUxtbHpSbWx1YVhSbEtHVjRjR1ZqZEdWa1ZtRnNkV1VwS1Z4dUlDQWdJQ0FnWlhod1pXTjBSbXh2WVhRb1lXTjBkV0ZzVm1Gc2RXVXNJR1Y0Y0dWamRHVmtWbUZzZFdVcE8xeHVJQ0FnSUdWc2MyVWdhV1lnS0dGamRIVmhiRlpoYkhWbElDRTlJR1Y0Y0dWamRHVmtWbUZzZFdVcFhHNGdJQ0FnSUNCMGFISnZkeUJ1WlhjZ1JYSnliM0lvWUVWNGNHVmpkR1ZrSUNna2UyVjRjR1ZqZEdWa1ZtRnNkV1Y5S1NCbWIzSWdhMlY1SUNja2UyVjRjR1ZqZEdWa1MyVjVmU2NzSUdkdmRDQW9KSHRoWTNSMVlXeFdZV3gxWlgwcFlDazdYRzRnSUgxY2JuMWNibHh1Wlhod2IzSjBJR1oxYm1OMGFXOXVJR1Y0Y0dWamRFRnljbUY1S0dGamRIVmhiRG9nUVhKeVlYbE1hV3RsUEdGdWVUNHNJR1Y0Y0dWamRHVmtPaUJCY25KaGVVeHBhMlU4WVc1NVBpa2dlMXh1SUNCamIyNXpkQ0JoWTNSMVlXeE1aVzVuZEdnZ1BTQmhZM1IxWVd3dWJHVnVaM1JvTzF4dUlDQmpiMjV6ZENCbGVIQmxZM1JsWkV4bGJtZDBhQ0E5SUdWNGNHVmpkR1ZrTG14bGJtZDBhRHRjYmx4dUlDQnBaaUFvWVdOMGRXRnNUR1Z1WjNSb0lDRTlJR1Y0Y0dWamRHVmtUR1Z1WjNSb0tTQjdYRzRnSUNBZ2RHaHliM2NnYm1WM0lFVnljbTl5S0dCQmNuSmhlWE1nWVhKbElHOW1JR1JwWm1abGNtVnVkQ0JzWlc1bmRHZzZJR0ZqZEhWaGJDQmhjbkpoZVNCc1pXNW5kR2dnYVhNZ0pIdGhZM1IxWVd4TVpXNW5kR2g5SUdBZ0sxeHVJQ0FnSUNBZ1lHRnVaQ0JsZUhCbFkzUmxaQ0JoY25KaGVTQnNaVzVuZEdnZ2FYTWdKSHRsZUhCbFkzUmxaRXhsYm1kMGFIMWdLVHRjYmlBZ2ZWeHVYRzRnSUdadmNpQW9iR1YwSUdrZ1BTQXdPeUJwSUR3Z1lXTjBkV0ZzVEdWdVozUm9PeUJwS3lzcElIdGNiaUFnSUNCcFppQW9ZV04wZFdGc1cybGRJR2x1YzNSaGJtTmxiMllnUVhKeVlYa2dKaVlnWlhod1pXTjBaV1JiYVYwZ2FXNXpkR0Z1WTJWdlppQkJjbkpoZVNsY2JpQWdJQ0FnSUdWNGNHVmpkRUZ5Y21GNUtHRmpkSFZoYkZ0cFhTd2daWGh3WldOMFpXUmJhVjBwTzF4dUlDQWdJR1ZzYzJVZ2FXWWdLR0ZqZEhWaGJGdHBYU0JwYm5OMFlXNWpaVzltSUU5aWFtVmpkQ0FtSmlCbGVIQmxZM1JsWkZ0cFhTQnBibk4wWVc1alpXOW1JRTlpYW1WamRDbGNiaUFnSUNBZ0lHVjRjR1ZqZEU5aWFtVmpkQ2hoWTNSMVlXeGJhVjBzSUdWNGNHVmpkR1ZrVzJsZEtUdGNiaUFnSUNCbGJITmxJR2xtSUNoaFkzUjFZV3hiYVYwZ0lUMGdaWGh3WldOMFpXUmJhVjBwWEc0Z0lDQWdJQ0IwYUhKdmR5QnVaWGNnUlhKeWIzSW9ZRVY0Y0dWamRHVmtJQ1I3Wlhod1pXTjBaV1JiYVYxOUlHRjBJSEJ2YzJsMGFXOXVJQ1I3YVgwc0lHZHZkQ0FrZTJGamRIVmhiRnRwWFgxZ0tUdGNiaUFnZlZ4dWZWeHVYRzR2S2lCRVpXWnBibVZ6SUdFZ2RHVnpkQ0J6ZFdsMFpTNGdLaTljYm1WNGNHOXlkQ0JtZFc1amRHbHZiaUJqWVhSbFoyOXllU2hqWVhSbFoyOXllVG9nYzNSeWFXNW5MQ0IwWlhOMGN6b2dLQ2tnUFQ0Z2RtOXBaQ2s2SUhadmFXUWdlMXh1SUNCamRYSnlaVzUwUTJGMFpXZHZjbmtnUFNCallYUmxaMjl5ZVR0Y2JpQWdkR1Z6ZEhNb0tUdGNibjFjYmx4dUx5b2dSR1ZtYVc1bGN5QmhJR1oxYm1OMGFXOXVJSFJ2SUdKbElHVjRaV04xZEdWa0lHSmxabTl5WlNCMGFHVWdkR1Z6ZEhNZ2FXNGdkR2hwY3lCallYUmxaMjl5ZVNCaGNtVWdaWGhsWTNWMFpXUXVJQ292WEc1bGVIQnZjblFnWm5WdVkzUnBiMjRnWW1WbWIzSmxLR0psWm05eVpUb2dLQ2tnUFQ0Z1VISnZiV2x6WlR4MmIybGtQaWs2SUhadmFXUWdlMXh1SUNCcFppQW9kR1Z6ZEhOYlkzVnljbVZ1ZEVOaGRHVm5iM0o1WFNBOVBTQjFibVJsWm1sdVpXUXBYRzRnSUNBZ2RHVnpkSE5iWTNWeWNtVnVkRU5oZEdWbmIzSjVYU0E5SUh0OU8xeHVJQ0IwWlhOMGMxdGpkWEp5Wlc1MFEyRjBaV2R2Y25sZExtSmxabTl5WlNBOUlHSmxabTl5WlR0Y2JuMWNibHh1THlvZ1JHVm1hVzVsY3lCaElHWjFibU4wYVc5dUlIUnZJR0psSUdWNFpXTjFkR1ZrSUdGbWRHVnlJSFJvWlNCMFpYTjBjeUJwYmlCMGFHbHpJR05oZEdWbmIzSjVJR0Z5WlNCbGVHVmpkWFJsWkM0Z0tpOWNibVY0Y0c5eWRDQm1kVzVqZEdsdmJpQmhablJsY2loaFpuUmxjam9nS0NrZ1BUNGdVSEp2YldselpUeDJiMmxrUGlrNklIWnZhV1FnZTF4dUlDQnBaaUFvZEdWemRITmJZM1Z5Y21WdWRFTmhkR1ZuYjNKNVhTQTlQU0IxYm1SbFptbHVaV1FwWEc0Z0lDQWdkR1Z6ZEhOYlkzVnljbVZ1ZEVOaGRHVm5iM0o1WFNBOUlIdDlPMXh1SUNCMFpYTjBjMXRqZFhKeVpXNTBRMkYwWldkdmNubGRMbUZtZEdWeUlEMGdZV1owWlhJN1hHNTlYRzVjYm1aMWJtTjBhVzl1SUdGa1pFNWhiV1Z6Y0dGalpTaHpPaUJ6ZEhKcGJtY3NJR1k2SUVSSExrWjFibU1wT2lCemRISnBibWNnZTF4dUlDQnlaWFIxY200Z2N5NXlaWEJzWVdObEtHNWxkeUJTWldkRmVIQW9aaTV1WVcxbExDQW5aMmtuS1N3Z1ppNXVjVTVoYldVcE8xeHVmVnh1WEc1bGVIQnZjblFnWVhONWJtTWdablZ1WTNScGIyNGdhVzVwZEVGMWRHOVVaWE4wY3lod1lXTnJZV2RsU1dRNklITjBjbWx1Wnl3Z2JXOWtkV3hsUHpvZ1lXNTVLU0I3WEc0Z0lHbG1JQ2gzWVhOU1pXZHBjM1JsY21Wa1czQmhZMnRoWjJWSlpGMHBJSEpsZEhWeWJqdGNiaUFnWTI5dWMzUWdiVzlrZFd4bFZHVnpkSE1nUFNCdGIyUjFiR1VnUHlCdGIyUjFiR1V1ZEdWemRITWdPaUIwWlhOMGN6dGNiaUFnYVdZZ0tHMXZaSFZzWlZSbGMzUnpXMkYxZEc5VVpYTjBjME5oZEU1aGJXVmRJQ0U5UFNCMWJtUmxabWx1WldRcElIdGNiaUFnSUNCM1lYTlNaV2RwYzNSbGNtVmtXM0JoWTJ0aFoyVkpaRjBnUFNCMGNuVmxPMXh1SUNBZ0lISmxkSFZ5Ymp0Y2JpQWdmVnh1SUNCamIyNXpkQ0J0YjJSMWJHVkJkWFJ2VkdWemRITWdQU0JiWFR0Y2JpQWdZMjl1YzNRZ2NHRmphMFoxYm1OMGFXOXVjeUE5SUdGM1lXbDBJR2R5YjJzdVpHRndhUzVtZFc1amRHbHZibk11Wm1sc2RHVnlLR0J3WVdOcllXZGxMbWxrSUQwZ1hDSWtlM0JoWTJ0aFoyVkpaSDFjSW1BcExteHBjM1FvS1R0Y2JpQWdZMjl1YzNRZ2NtVm5JRDBnYm1WM0lGSmxaMFY0Y0NndkxpcGNYQzljWEM5Y1hITXFjMnRwY0ZzNlhGeHpYU29vTGlvcEpDOHBPMXh1SUNCbWIzSWdLR052Ym5OMElHWWdiMllnY0dGamEwWjFibU4wYVc5dWN5a2dlMXh1SUNBZ0lHTnZibk4wSUhSbGMzUnpJRDBnWmk1dmNIUnBiMjV6V3lkMFpYTjBKMTA3WEc0Z0lDQWdhV1lnS0NFb2RHVnpkSE1nSmlZZ1FYSnlZWGt1YVhOQmNuSmhlU2gwWlhOMGN5a2dKaVlnZEdWemRITXViR1Z1WjNSb0tTa2dZMjl1ZEdsdWRXVTdYRzRnSUNBZ1ptOXlJQ2hzWlhRZ2FTQTlJREE3SUdrZ1BDQjBaWE4wY3k1c1pXNW5kR2c3SUdrckt5a2dlMXh1SUNBZ0lDQWdZMjl1YzNRZ2MydHBjRkpsWVhOdmJuTWdQU0FvZEdWemRITmJhVjBnWVhNZ2MzUnlhVzVuS1M1dFlYUmphQ2h5WldjcE8xeHVJQ0FnSUNBZ2JHVjBJSE5yYVhCU1pXRnpiMjQ3WEc0Z0lDQWdJQ0JwWmlBb2MydHBjRkpsWVhOdmJuTWdKaVlnYzJ0cGNGSmxZWE52Ym5NL0xteGxibWQwYUNBK0lERXBJSE5yYVhCU1pXRnpiMjRnUFNCemEybHdVbVZoYzI5dWMxc3hYVHRjYmlBZ0lDQWdJRzF2WkhWc1pVRjFkRzlVWlhOMGN5NXdkWE5vS0c1bGR5QlVaWE4wS0dGMWRHOVVaWE4wYzBOaGRFNWhiV1VzSUhSbGMzUnpMbXhsYm1kMGFDQTlQVDBnTVNBL0lHWXVibUZ0WlNBNklHQWtlMll1Ym1GdFpYMGdKSHRwSUNzZ01YMWdMQ0JoYzNsdVl5QW9LU0E5UGlCN1hHNGdJQ0FnSUNBZ0lHTnZibk4wSUhKbGN5QTlJR0YzWVdsMElHZHliMnN1Wm5WdVkzUnBiMjV6TG1WMllXd29ZV1JrVG1GdFpYTndZV05sS0hSbGMzUnpXMmxkTENCbUtTazdYRzRnSUNBZ0lDQWdJQzh2SUdWemJHbHVkQzFrYVhOaFlteGxMVzVsZUhRdGJHbHVaU0J1YnkxMGFISnZkeTFzYVhSbGNtRnNYRzRnSUNBZ0lDQWdJR2xtSUNoeVpYTWdJVDA5SUhSeWRXVXBJSFJvY205M0lHQkdZV2xzWldRNklDUjdkR1Z6ZEhOYmFWMTlZRHRjYmlBZ0lDQWdJSDBzSUh0emEybHdVbVZoYzI5dU9pQnphMmx3VW1WaGMyOXVmU2twTzF4dUlDQWdJSDFjYmlBZ2ZWeHVJQ0IzWVhOU1pXZHBjM1JsY21Wa1czQmhZMnRoWjJWSlpGMGdQU0IwY25WbE8xeHVJQ0JwWmlBb0lXMXZaSFZzWlVGMWRHOVVaWE4wY3k1c1pXNW5kR2dwSUhKbGRIVnlianRjYmlBZ2JXOWtkV3hsVkdWemRITmJZWFYwYjFSbGMzUnpRMkYwVG1GdFpWMGdQU0I3ZEdWemRITTZJRzF2WkhWc1pVRjFkRzlVWlhOMGMzMDdYRzU5WEc1Y2JtVjRjRzl5ZENCaGMzbHVZeUJtZFc1amRHbHZiaUJ5ZFc1VVpYTjBjeWh2Y0hScGIyNXpQem9nZTJOaGRHVm5iM0o1UHpvZ2MzUnlhVzVuTENCMFpYTjBQem9nYzNSeWFXNW5MQ0IwWlhOMFEyOXVkR1Y0ZEQ4NklGUmxjM1JEYjI1MFpYaDBmU2tnZTF4dUlDQmpiMjV6ZENCd1lXTnJZV2RsWHlBOUlHZHliMnN1Wm5WdVkzUnBiMjV6TG1kbGRFTjFjbkpsYm5SRFlXeHNLQ2svTG1aMWJtTS9MbkJoWTJ0aFoyVTdYRzRnSUdGM1lXbDBJR2x1YVhSQmRYUnZWR1Z6ZEhNb2NHRmphMkZuWlY4dWFXUXBPMXh1SUNCamIyNXpkQ0J5WlhOMWJIUnpPaUI3SUdOaGRHVm5iM0o1UHpvZ2MzUnlhVzVuTENCdVlXMWxQem9nYzNSeWFXNW5MQ0J6ZFdOalpYTnpPaUJpYjI5c1pXRnVMRnh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUhKbGMzVnNkRG9nYzNSeWFXNW5MQ0J0Y3pvZ2JuVnRZbVZ5TENCemEybHdjR1ZrT2lCaWIyOXNaV0Z1SUgxYlhTQTlJRnRkTzF4dUlDQmpiMjV6YjJ4bExteHZaeWhnVW5WdWJtbHVaeUIwWlhOMGMyQXBPMXh1SUNCdmNIUnBiMjV6SUQ4L1BTQjdmVHRjYmlBZ2IzQjBhVzl1Y3lFdWRHVnpkRU52Ym5SbGVIUWdQejg5SUc1bGR5QlVaWE4wUTI5dWRHVjRkQ2dwTzF4dUlDQm5jbTlyTG5Ob1pXeHNMbXhoYzNSRmNuSnZjaUE5SUNjbk8xeHVJQ0JtYjNJZ0tHTnZibk4wSUZ0clpYa3NJSFpoYkhWbFhTQnZaaUJQWW1wbFkzUXVaVzUwY21sbGN5aDBaWE4wY3lrcElIdGNiaUFnSUNCcFppQW9iM0IwYVc5dWN6OHVZMkYwWldkdmNua2dJVDBnZFc1a1pXWnBibVZrS1NCN1hHNGdJQ0FnSUNCcFppQW9JV3RsZVM1MGIweHZkMlZ5UTJGelpTZ3BMbk4wWVhKMGMxZHBkR2dvYjNCMGFXOXVjejh1WTJGMFpXZHZjbmt1ZEc5TWIzZGxja05oYzJVb0tTa3BYRzRnSUNBZ0lDQWdJR052Ym5ScGJuVmxPMXh1SUNBZ0lIMWNiaUFnSUNCamIyNXpiMnhsTG14dlp5aGdVM1JoY25SbFpDQWtlMnRsZVgwZ1kyRjBaV2R2Y25sZ0tUdGNiaUFnSUNCMGNua2dlMXh1SUNBZ0lDQWdhV1lnS0haaGJIVmxMbUpsWm05eVpTbGNiaUFnSUNBZ0lDQWdZWGRoYVhRZ2RtRnNkV1V1WW1WbWIzSmxLQ2s3WEc0Z0lDQWdmU0JqWVhSamFDQW9lRG9nWVc1NUtTQjdYRzRnSUNBZ0lDQjJZV3gxWlM1aVpXWnZjbVZUZEdGMGRYTWdQU0I0TG5SdlUzUnlhVzVuS0NrN1hHNGdJQ0FnZlZ4dUlDQWdJR052Ym5OMElIUWdQU0IyWVd4MVpTNTBaWE4wY3lBL1B5QmJYVHRjYmlBZ0lDQmpiMjV6ZENCeVpYTWdQU0JiWFR0Y2JpQWdJQ0JtYjNJZ0tHeGxkQ0JwSUQwZ01Ec2dhU0E4SUhRdWJHVnVaM1JvT3lCcEt5c3BYRzRnSUNBZ0lDQnlaWE11Y0hWemFDaGhkMkZwZENCbGVHVmpWR1Z6ZENoMFcybGRMQ0J2Y0hScGIyNXpQeTUwWlhOMEtTazdYRzRnSUNBZ1kyOXVjM1FnWkdGMFlTQTlJQ2hoZDJGcGRDQlFjbTl0YVhObExtRnNiQ2h5WlhNcEtTNW1hV3gwWlhJb0tHUXBJRDArSUdRdWNtVnpkV3gwSUNFOUlDZHphMmx3Y0dWa0p5azdYRzRnSUNBZ2RISjVJSHRjYmlBZ0lDQWdJR2xtSUNoMllXeDFaUzVoWm5SbGNpbGNiaUFnSUNBZ0lDQWdZWGRoYVhRZ2RtRnNkV1V1WVdaMFpYSW9LVHRjYmlBZ0lDQjlJR05oZEdOb0lDaDRPaUJoYm5rcElIdGNiaUFnSUNBZ0lIWmhiSFZsTG1GbWRHVnlVM1JoZEhWeklEMGdlQzUwYjFOMGNtbHVaeWdwTzF4dUlDQWdJSDFjYmlBZ0lDQnBaaUFvZG1Gc2RXVXVZV1owWlhKVGRHRjBkWE1wWEc0Z0lDQWdJQ0JrWVhSaExuQjFjMmdvZTJOaGRHVm5iM0o1T2lCclpYa3NJRzVoYldVNklDZHBibWwwSnl3Z2NtVnpkV3gwT2lCMllXeDFaUzVoWm5SbGNsTjBZWFIxY3l3Z2MzVmpZMlZ6Y3pvZ1ptRnNjMlVzSUcxek9pQXdMQ0J6YTJsd2NHVmtPaUJtWVd4elpYMHBPMXh1SUNBZ0lHbG1JQ2gyWVd4MVpTNWlaV1p2Y21WVGRHRjBkWE1wWEc0Z0lDQWdJQ0JrWVhSaExuQjFjMmdvZTJOaGRHVm5iM0o1T2lCclpYa3NJRzVoYldVNklDZHBibWwwSnl3Z2NtVnpkV3gwT2lCMllXeDFaUzVpWldadmNtVlRkR0YwZFhNc0lITjFZMk5sYzNNNklHWmhiSE5sTENCdGN6b2dNQ3dnYzJ0cGNIQmxaRG9nWm1Gc2MyVjlLVHRjYmlBZ0lDQnlaWE4xYkhSekxuQjFjMmdvTGk0dVpHRjBZU2s3WEc0Z0lIMWNiaUFnYVdZZ0tHOXdkR2x2Ym5NdWRHVnpkRU52Ym5SbGVIUXVZMkYwWTJoVmJtaGhibVJzWldRcElIdGNiaUFnSUNCaGQyRnBkQ0JrWld4aGVTZ3hNREF3S1R0Y2JpQWdJQ0JwWmlBb1ozSnZheTV6YUdWc2JDNXNZWE4wUlhKeWIzSXViR1Z1WjNSb0lENGdNQ2tnZTF4dUlDQWdJQ0FnY21WemRXeDBjeTV3ZFhOb0tIdGNiaUFnSUNBZ0lDQWdZMkYwWldkdmNuazZJQ2RWYm1oaGJtUnNaV1FnWlhoalpYQjBhVzl1Y3ljc1hHNGdJQ0FnSUNBZ0lHNWhiV1U2SUNkbGVHTmxjSFJwYjI1ekp5eGNiaUFnSUNBZ0lDQWdjbVZ6ZFd4ME9pQm5jbTlyTG5Ob1pXeHNMbXhoYzNSRmNuSnZjaXdnYzNWalkyVnpjem9nWm1Gc2MyVXNJRzF6T2lBd0xDQnphMmx3Y0dWa09pQm1ZV3h6WlZ4dUlDQWdJQ0FnZlNrN1hHNGdJQ0FnZlZ4dUlDQjlYRzRnSUdsbUlDaHZjSFJwYjI1ekxuUmxjM1JEYjI1MFpYaDBMbkpsY0c5eWRDa2dlMXh1SUNBZ0lHTnZibk4wSUd4dloyZGxjaUE5SUc1bGR5QkVSeTVNYjJkblpYSW9LVHRjYmlBZ0lDQmpiMjV6ZENCemRXTmpaWE56Wm5Wc0lEMGdjbVZ6ZFd4MGN5NW1hV3gwWlhJb0tISXBJRDArSUhJdWMzVmpZMlZ6Y3lrdWJHVnVaM1JvTzF4dUlDQWdJR052Ym5OMElITnJhWEJ3WldRZ1BTQnlaWE4xYkhSekxtWnBiSFJsY2lnb2Npa2dQVDRnY2k1emEybHdjR1ZrS1M1c1pXNW5kR2c3WEc0Z0lDQWdZMjl1YzNRZ1ptRnBiR1ZrSUQwZ2NtVnpkV3gwY3k1bWFXeDBaWElvS0hJcElEMCtJQ0Z5TG5OMVkyTmxjM01wTzF4dUlDQWdJR052Ym5OMElHUmxjMk55YVhCMGFXOXVJRDBnSjFCaFkydGhaMlVnUUhCaFkydGhaMlVnZEdWemRHVmtPaUJBYzNWalkyVnpjMloxYkNCemRXTmpaWE56Wm5Wc0xDQkFjMnRwY0hCbFpDQnphMmx3Y0dWa0xDQkFabUZwYkdWa0lHWmhhV3hsWkNCMFpYTjBjeWM3WEc0Z0lDQWdZMjl1YzNRZ2NHRnlZVzF6SUQwZ2UxeHVJQ0FnSUNBZ2MzVmpZMlZ6YzJaMWJEb2djM1ZqWTJWemMyWjFiQ3hjYmlBZ0lDQWdJSE5yYVhCd1pXUTZJSE5yYVhCd1pXUXNYRzRnSUNBZ0lDQm1ZV2xzWldRNklHWmhhV3hsWkM1c1pXNW5kR2dzWEc0Z0lDQWdJQ0J3WVdOcllXZGxPaUJ3WVdOcllXZGxYMXh1SUNBZ0lIMDdYRzRnSUNBZ1ptOXlJQ2hqYjI1emRDQnlJRzltSUdaaGFXeGxaQ2tnVDJKcVpXTjBMbUZ6YzJsbmJpaHdZWEpoYlhNc0lIdGJZQ1I3Y2k1allYUmxaMjl5ZVgwZ2ZDQWtlM0l1Ym1GdFpYMWdYVG9nY2k1eVpYTjFiSFI5S1R0Y2JpQWdJQ0JzYjJkblpYSXViRzluS0dSbGMyTnlhWEIwYVc5dUxDQndZWEpoYlhNc0lDZHdZV05yWVdkbExYUmxjM1JsWkNjcE8xeHVJQ0I5WEc0Z0lISmxkSFZ5YmlCeVpYTjFiSFJ6TzF4dWZWeHVYRzVoYzNsdVl5Qm1kVzVqZEdsdmJpQmxlR1ZqVkdWemRDaDBPaUJVWlhOMExDQndjbVZrYVdOaGRHVTZJSE4wY21sdVp5QjhJSFZ1WkdWbWFXNWxaQ2tnZTF4dUlDQnNaWFFnY2pvZ2V5QmpZWFJsWjI5eWVUODZJSE4wY21sdVp5d2dibUZ0WlQ4NklITjBjbWx1Wnl3Z2MzVmpZMlZ6Y3pvZ1ltOXZiR1ZoYml3Z2NtVnpkV3gwT2lCemRISnBibWNzSUcxek9pQnVkVzFpWlhJc0lITnJhWEJ3WldRNklHSnZiMnhsWVc0Z2ZUdGNiaUFnWTI5dWMzUWdabWxzZEdWeUlEMGdjSEpsWkdsallYUmxJQ0U5SUhWdVpHVm1hVzVsWkNBbUppQW9JWFF1Ym1GdFpTNTBiMHh2ZDJWeVEyRnpaU2dwTG5OMFlYSjBjMWRwZEdnb2NISmxaR2xqWVhSbExuUnZURzkzWlhKRFlYTmxLQ2twS1R0Y2JpQWdZMjl1YzNRZ2MydHBjQ0E5SUhRdWIzQjBhVzl1Y3o4dWMydHBjRkpsWVhOdmJpQjhmQ0JtYVd4MFpYSTdYRzRnSUdOdmJuTjBJSE5yYVhCU1pXRnpiMjRnUFNCbWFXeDBaWElnUHlBbmMydHBjSEJsWkNjZ09pQjBMbTl3ZEdsdmJuTS9Mbk5yYVhCU1pXRnpiMjQ3WEc0Z0lHbG1JQ2doYzJ0cGNDbGNiaUFnSUNCamIyNXpiMnhsTG14dlp5aGdVM1JoY25SbFpDQWtlM1F1WTJGMFpXZHZjbmw5SUNSN2RDNXVZVzFsZldBcE8xeHVJQ0JqYjI1emRDQnpkR0Z5ZENBOUlHNWxkeUJFWVhSbEtDazdYRzRnSUhSeWVTQjdYRzRnSUNBZ2FXWWdLSE5yYVhBcFhHNGdJQ0FnSUNCeUlEMGdlM04xWTJObGMzTTZJSFJ5ZFdVc0lISmxjM1ZzZERvZ2MydHBjRkpsWVhOdmJpRXNJRzF6T2lBd0xDQnphMmx3Y0dWa09pQjBjblZsZlR0Y2JpQWdJQ0JsYkhObFhHNGdJQ0FnSUNCeUlEMGdlM04xWTJObGMzTTZJSFJ5ZFdVc0lISmxjM1ZzZERvZ1lYZGhhWFFnZEM1MFpYTjBLQ2tnUHo4Z0owOUxKeXdnYlhNNklEQXNJSE5yYVhCd1pXUTZJR1poYkhObGZUdGNiaUFnZlNCallYUmphQ0FvZURvZ1lXNTVLU0I3WEc0Z0lDQWdjaUE5SUh0emRXTmpaWE56T2lCbVlXeHpaU3dnY21WemRXeDBPaUI0TG5SdlUzUnlhVzVuS0Nrc0lHMXpPaUF3TENCemEybHdjR1ZrT2lCbVlXeHpaWDA3WEc0Z0lIMWNiaUFnWTI5dWMzUWdjM1J2Y0NBOUlHNWxkeUJFWVhSbEtDazdYRzRnSUM4dklFQjBjeTFwWjI1dmNtVmNiaUFnY2k1dGN5QTlJSE4wYjNBZ0xTQnpkR0Z5ZER0Y2JpQWdhV1lnS0NGemEybHdLVnh1SUNBZ0lHTnZibk52YkdVdWJHOW5LR0JHYVc1cGMyaGxaQ0FrZTNRdVkyRjBaV2R2Y25sOUlDUjdkQzV1WVcxbGZTQm1iM0lnSkh0eUxtMXpmU0J0YzJBcE8xeHVJQ0J5TG1OaGRHVm5iM0o1SUQwZ2RDNWpZWFJsWjI5eWVUdGNiaUFnY2k1dVlXMWxJRDBnZEM1dVlXMWxPMXh1SUNCeVpYUjFjbTRnY2p0Y2JuMWNibHh1THlvZ1YyRnBkSE1nVzIxelhTQnRhV3hzYVhObFkyOXVaSE1nS2k5Y2JtVjRjRzl5ZENCaGMzbHVZeUJtZFc1amRHbHZiaUJrWld4aGVTaHRjem9nYm5WdFltVnlLU0I3WEc0Z0lHRjNZV2wwSUc1bGR5QlFjbTl0YVhObEtDaHlLU0E5UGlCelpYUlVhVzFsYjNWMEtISXNJRzF6S1NrN1hHNTlYRzVjYm1WNGNHOXlkQ0JoYzNsdVl5Qm1kVzVqZEdsdmJpQmhkMkZwZEVOb1pXTnJLR05vWldOclNHRnVaR3hsY2pvZ0tDa2dQVDRnWW05dmJHVmhiaXhjYmlBZ1pYSnliM0k2SUhOMGNtbHVaeUE5SUNkVWFXMWxiM1YwSUdWNFkyVmxaR1ZrSnl3Z2QyRnBkRG9nYm5WdFltVnlJRDBnTlRBd0xDQnBiblJsY25aaGJEb2diblZ0WW1WeUlEMGdOVEFwT2lCUWNtOXRhWE5sUEhadmFXUStJSHRjYmlBZ2NtVjBkWEp1SUc1bGR5QlFjbTl0YVhObEtDaHlaWE52YkhabExDQnlaV3BsWTNRcElEMCtJSHRjYmlBZ0lDQnpaWFJVYVcxbGIzVjBLQ2dwSUQwK0lIdGNiaUFnSUNBZ0lHTnNaV0Z5U1c1MFpYSjJZV3dvYVc1MFpYSjJZV3hKWkNrN1hHNGdJQ0FnSUNCeVpXcGxZM1FvYm1WM0lFVnljbTl5S0dWeWNtOXlLU2s3WEc0Z0lDQWdmU3dnZDJGcGRDazdYRzRnSUNBZ0x5OGdRSFJ6TFdsbmJtOXlaVnh1SUNBZ0lHTnZibk4wSUdsdWRHVnlkbUZzU1dRNklGUnBiV1Z2ZFhRZ1BTQnpaWFJKYm5SbGNuWmhiQ2dvS1NBOVBpQjdYRzRnSUNBZ0lDQnBaaUFvWTJobFkydElZVzVrYkdWeUtDa3BJSHRjYmlBZ0lDQWdJQ0FnWTJ4bFlYSkpiblJsY25aaGJDaHBiblJsY25aaGJFbGtLVHRjYmlBZ0lDQWdJQ0FnY21WemIyeDJaU2dwTzF4dUlDQWdJQ0FnZlZ4dUlDQWdJSDBzSUdsdWRHVnlkbUZzS1R0Y2JpQWdmU2s3WEc1OVhHNWNibVY0Y0c5eWRDQm1kVzVqZEdsdmJpQnBjMFJwWVd4dloxQnlaWE5sYm5Rb1pHbGhiRzluVkdsMGJHVTZJSE4wY21sdVp5azZJR0p2YjJ4bFlXNGdlMXh1SUNCamIyNXpkQ0JrYVdGc2IyZHpJRDBnUkVjdVJHbGhiRzluTG1kbGRFOXdaVzVFYVdGc2IyZHpLQ2s3WEc0Z0lHWnZjaUFvYkdWMElHa2dQU0F3T3lCcElEd2daR2xoYkc5bmN5NXNaVzVuZEdnN0lHa3JLeWtnZTF4dUlDQWdJR2xtSUNoa2FXRnNiMmR6VzJsZExuUnBkR3hsSUQwOUlHUnBZV3h2WjFScGRHeGxLVnh1SUNBZ0lDQWdjbVYwZFhKdUlIUnlkV1U3WEc0Z0lIMWNiaUFnY21WMGRYSnVJR1poYkhObE8xeHVmVnh1WEc1bGVIQnZjblFnWVhONWJtTWdablZ1WTNScGIyNGdkR1Z6ZEZacFpYZGxjaWgyT2lCemRISnBibWNzSUdSbU9pQkVSeTVFWVhSaFJuSmhiV1VzSUdSbGRHVmpkRk5sYldGdWRHbGpWSGx3WlhNNklHSnZiMnhsWVc0Z1BTQm1ZV3h6WlNrNklGQnliMjFwYzJVOGRtOXBaRDRnZTF4dUlDQnBaaUFvWkdWMFpXTjBVMlZ0WVc1MGFXTlVlWEJsY3lrZ1lYZGhhWFFnWjNKdmF5NWtZWFJoTG1SbGRHVmpkRk5sYldGdWRHbGpWSGx3WlhNb1pHWXBPMXh1SUNCamIyNXpkQ0IwZGlBOUlHZHliMnN1YzJobGJHd3VZV1JrVkdGaWJHVldhV1YzS0dSbUtUdGNiaUFnWTI5dWMzUWdkbWxsZDJWeVRtRnRaU0E5SUdCYmJtRnRaVDEyYVdWM1pYSXRKSHQyTG5KbGNHeGhZMlVvTDF4Y2N5c3ZaeXdnSnkwbktYMGdhVjFnTzF4dUlDQmpiMjV6ZENCelpXeGxZM1J2Y2lBOUlHQWtlM1pwWlhkbGNrNWhiV1Y5SUdOaGJuWmhjeXdrZTNacFpYZGxjazVoYldWOUlITjJaeXdrZTNacFpYZGxjazVoYldWOUlHbHRaeXhjYmlBZ0lDQWtlM1pwWlhkbGNrNWhiV1Y5SUdsdWNIVjBMQ1I3ZG1sbGQyVnlUbUZ0WlgwZ2FERXNKSHQyYVdWM1pYSk9ZVzFsZlNCaFlEdGNiaUFnWTI5dWMzUWdjbVZ6SUQwZ1cxMDdYRzRnSUhSeWVTQjdYRzRnSUNBZ2JHVjBJSFpwWlhkbGNpQTlJSFIyTG1Ga1pGWnBaWGRsY2loMktUdGNiaUFnSUNCaGQyRnBkQ0JoZDJGcGRFTm9aV05yS0NncElEMCtJR1J2WTNWdFpXNTBMbkYxWlhKNVUyVnNaV04wYjNJb2MyVnNaV04wYjNJcElDRTlQU0J1ZFd4c0xGeHVJQ0FnSUNBZ0oyTmhibTV2ZENCc2IyRmtJSFpwWlhkbGNpY3NJRE13TURBcE8xeHVJQ0FnSUhKbGN5NXdkWE5vS0VGeWNtRjVMbVp5YjIwb2RIWXVkbWxsZDJWeWN5a3ViR1Z1WjNSb0tUdGNiaUFnSUNCQmNuSmhlUzVtY205dEtHUm1Mbkp2ZHlnd0tTNWpaV3hzY3lrdVptOXlSV0ZqYUNnb1l5a2dQVDRnWXk1MllXeDFaU0E5SUc1MWJHd3BPMXh1SUNBZ0lHUm1Mbkp2ZDNNdWMyVnNaV04wS0NoeWIzY3BJRDArSUhKdmR5NXBaSGdnUGlBeElDWW1JSEp2ZHk1cFpIZ2dQQ0EzS1R0Y2JpQWdJQ0JtYjNJZ0tHeGxkQ0JwSUQwZ056c2dhU0E4SURFeU95QnBLeXNwSUdSbUxtWnBiSFJsY2k1elpYUW9hU3dnWm1Gc2MyVXBPMXh1SUNBZ0lHUm1MbU4xY25KbGJuUlNiM2RKWkhnZ1BTQXhPMXh1SUNBZ0lHTnZibk4wSUhCeWIzQnpJRDBnZG1sbGQyVnlMbWRsZEU5d2RHbHZibk1vZEhKMVpTa3ViRzl2YXp0Y2JpQWdJQ0JqYjI1emRDQnVaWGRRY205d2N6b2dVbVZqYjNKa1BITjBjbWx1Wnl3Z1ltOXZiR1ZoYmo0Z1BTQjdmVHRjYmlBZ0lDQlBZbXBsWTNRdWEyVjVjeWh3Y205d2N5a3VabWxzZEdWeUtDaHJLU0E5UGlCMGVYQmxiMllnY0hKdmNITmJhMTBnUFQwOUlDZGliMjlzWldGdUp5a3VabTl5UldGamFDZ29heWtnUFQ0Z2JtVjNVSEp2Y0hOYmExMGdQU0FoY0hKdmNITmJhMTBwTzF4dUlDQWdJSFpwWlhkbGNpNXpaWFJQY0hScGIyNXpLRzVsZDFCeWIzQnpLVHRjYmlBZ0lDQmhkMkZwZENCa1pXeGhlU2d5TlRBcE8xeHVJQ0FnSUdOdmJuTjBJR3hoZVc5MWRDQTlJSFIyTG5OaGRtVk1ZWGx2ZFhRb0tUdGNiaUFnSUNCamIyNXpkQ0J2YkdSUWNtOXdjeUE5SUhacFpYZGxjaTVuWlhSUGNIUnBiMjV6S0NrdWJHOXZhenRjYmlBZ0lDQjBkaTV5WlhObGRFeGhlVzkxZENncE8xeHVJQ0FnSUhKbGN5NXdkWE5vS0VGeWNtRjVMbVp5YjIwb2RIWXVkbWxsZDJWeWN5a3ViR1Z1WjNSb0tUdGNiaUFnSUNCMGRpNXNiMkZrVEdGNWIzVjBLR3hoZVc5MWRDazdYRzRnSUNBZ1lYZGhhWFFnWVhkaGFYUkRhR1ZqYXlnb0tTQTlQaUJrYjJOMWJXVnVkQzV4ZFdWeWVWTmxiR1ZqZEc5eUtITmxiR1ZqZEc5eUtTQWhQVDBnYm5Wc2JDeGNiaUFnSUNBZ0lDZGpZVzV1YjNRZ2JHOWhaQ0IyYVdWM1pYSWdabkp2YlNCc1lYbHZkWFFuTENBek1EQXdLVHRjYmlBZ0lDQmhkMkZwZENCa1pXeGhlU2d5TlRBcE8xeHVJQ0FnSUhKbGN5NXdkWE5vS0VGeWNtRjVMbVp5YjIwb2RIWXVkbWxsZDJWeWN5a3ViR1Z1WjNSb0tUdGNiaUFnSUNCMmFXVjNaWElnUFNCQmNuSmhlUzVtY205dEtIUjJMblpwWlhkbGNuTXBMbVpwYm1Rb0tIWXBJRDArSUhZdWRIbHdaU0FoUFQwZ0owZHlhV1FuS1NFN1hHNGdJQ0FnWlhod1pXTjBRWEp5WVhrb2NtVnpMQ0JiTWl3Z01Td2dNbDBwTzF4dUlDQWdJR1Y0Y0dWamRDaEtVMDlPTG5OMGNtbHVaMmxtZVNoMmFXVjNaWEl1WjJWMFQzQjBhVzl1Y3lncExteHZiMnNwTENCS1UwOU9Mbk4wY21sdVoybG1lU2h2YkdSUWNtOXdjeWtwTzF4dUlDQjlJR1pwYm1Gc2JIa2dlMXh1SUNBZ0lIUjJMbU5zYjNObEtDazdYRzRnSUNBZ1ozSnZheTV6YUdWc2JDNWpiRzl6WlZSaFlteGxLR1JtS1R0Y2JpQWdmVnh1ZlZ4dUlsMTkiLCJ2YXIgX19hd2FpdGVyID0gKHRoaXMgJiYgdGhpcy5fX2F3YWl0ZXIpIHx8IGZ1bmN0aW9uICh0aGlzQXJnLCBfYXJndW1lbnRzLCBQLCBnZW5lcmF0b3IpIHtcbiAgICBmdW5jdGlvbiBhZG9wdCh2YWx1ZSkgeyByZXR1cm4gdmFsdWUgaW5zdGFuY2VvZiBQID8gdmFsdWUgOiBuZXcgUChmdW5jdGlvbiAocmVzb2x2ZSkgeyByZXNvbHZlKHZhbHVlKTsgfSk7IH1cbiAgICByZXR1cm4gbmV3IChQIHx8IChQID0gUHJvbWlzZSkpKGZ1bmN0aW9uIChyZXNvbHZlLCByZWplY3QpIHtcbiAgICAgICAgZnVuY3Rpb24gZnVsZmlsbGVkKHZhbHVlKSB7IHRyeSB7IHN0ZXAoZ2VuZXJhdG9yLm5leHQodmFsdWUpKTsgfSBjYXRjaCAoZSkgeyByZWplY3QoZSk7IH0gfVxuICAgICAgICBmdW5jdGlvbiByZWplY3RlZCh2YWx1ZSkgeyB0cnkgeyBzdGVwKGdlbmVyYXRvcltcInRocm93XCJdKHZhbHVlKSk7IH0gY2F0Y2ggKGUpIHsgcmVqZWN0KGUpOyB9IH1cbiAgICAgICAgZnVuY3Rpb24gc3RlcChyZXN1bHQpIHsgcmVzdWx0LmRvbmUgPyByZXNvbHZlKHJlc3VsdC52YWx1ZSkgOiBhZG9wdChyZXN1bHQudmFsdWUpLnRoZW4oZnVsZmlsbGVkLCByZWplY3RlZCk7IH1cbiAgICAgICAgc3RlcCgoZ2VuZXJhdG9yID0gZ2VuZXJhdG9yLmFwcGx5KHRoaXNBcmcsIF9hcmd1bWVudHMgfHwgW10pKS5uZXh0KCkpO1xuICAgIH0pO1xufTtcbmltcG9ydCAqIGFzIERHIGZyb20gXCJkYXRhZ3Jvay1hcGkvZGdcIjtcbmltcG9ydCB7IHJ1blRlc3RzLCB0ZXN0cyB9IGZyb20gJ0BkYXRhZ3Jvay1saWJyYXJpZXMvdXRpbHMvc3JjL3Rlc3QnO1xuZXhwb3J0IGxldCBfcGFja2FnZSA9IG5ldyBERy5QYWNrYWdlKCk7XG5leHBvcnQgeyB0ZXN0cyB9O1xuLy9uYW1lOiB0ZXN0XG4vL2lucHV0OiBzdHJpbmcgY2F0ZWdvcnkge29wdGlvbmFsOiB0cnVlfVxuLy9pbnB1dDogc3RyaW5nIHRlc3Qge29wdGlvbmFsOiB0cnVlfVxuLy9pbnB1dDogb2JqZWN0IHRlc3RDb250ZXh0IHtvcHRpb25hbDogdHJ1ZX1cbi8vb3V0cHV0OiBkYXRhZnJhbWUgcmVzdWx0XG5leHBvcnQgZnVuY3Rpb24gdGVzdChjYXRlZ29yeSwgdGVzdCwgdGVzdENvbnRleHQpIHtcbiAgICByZXR1cm4gX19hd2FpdGVyKHRoaXMsIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbiogKCkge1xuICAgICAgICBjb25zdCBkYXRhID0geWllbGQgcnVuVGVzdHMoeyBjYXRlZ29yeSwgdGVzdCwgdGVzdENvbnRleHQgfSk7XG4gICAgICAgIHJldHVybiBERy5EYXRhRnJhbWUuZnJvbU9iamVjdHMoZGF0YSk7XG4gICAgfSk7XG59XG4iXSwibmFtZXMiOlsiX193ZWJwYWNrX3JlcXVpcmVfXyIsImV4cG9ydHMiLCJkZWZpbml0aW9uIiwia2V5IiwibyIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZW51bWVyYWJsZSIsImdldCIsIm9iaiIsInByb3AiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJTeW1ib2wiLCJ0b1N0cmluZ1RhZyIsInZhbHVlIiwiREciLCJncm9rIiwiX19hd2FpdGVyIiwidGhpc0FyZyIsIl9hcmd1bWVudHMiLCJQIiwiZ2VuZXJhdG9yIiwiUHJvbWlzZSIsInJlc29sdmUiLCJyZWplY3QiLCJmdWxmaWxsZWQiLCJzdGVwIiwibmV4dCIsImUiLCJyZWplY3RlZCIsInJlc3VsdCIsImRvbmUiLCJ0aGVuIiwiYXBwbHkiLCJ0ZXN0cyIsImF1dG9UZXN0c0NhdE5hbWUiLCJ3YXNSZWdpc3RlcmVkIiwiYXNzdXJlIiwibm90TnVsbCIsIm5hbWUiLCJFcnJvciIsIlRlc3RDb250ZXh0IiwiY29uc3RydWN0b3IiLCJjYXRjaFVuaGFuZGxlZCIsInJlcG9ydCIsInRoaXMiLCJ1bmRlZmluZWQiLCJUZXN0IiwiY2F0ZWdvcnkiLCJ0ZXN0Iiwib3B0aW9ucyIsIl9hIiwidGltZW91dCIsImFkZE5hbWVzcGFjZSIsInMiLCJmIiwicmVwbGFjZSIsIlJlZ0V4cCIsIm5xTmFtZSIsInJ1blRlc3RzIiwiX2IiLCJfYyIsIl9kIiwiX2UiLCJwYWNrYWdlXyIsImZ1bmMiLCJwYWNrYWdlIiwicGFja2FnZUlkIiwibW9kdWxlIiwibW9kdWxlVGVzdHMiLCJtb2R1bGVBdXRvVGVzdHMiLCJwYWNrRnVuY3Rpb25zIiwibGlzdCIsInJlZyIsIkFycmF5IiwiaXNBcnJheSIsImxlbmd0aCIsImkiLCJza2lwUmVhc29ucyIsIm1hdGNoIiwic2tpcFJlYXNvbiIsInB1c2giLCJpbml0QXV0b1Rlc3RzIiwiaWQiLCJyZXN1bHRzIiwiY29uc29sZSIsImxvZyIsInRlc3RDb250ZXh0IiwiZW50cmllcyIsInRvTG93ZXJDYXNlIiwic3RhcnRzV2l0aCIsImJlZm9yZSIsIngiLCJiZWZvcmVTdGF0dXMiLCJ0b1N0cmluZyIsInQiLCJyZXMiLCJleGVjVGVzdCIsImRhdGEiLCJhbGwiLCJmaWx0ZXIiLCJkIiwiYWZ0ZXIiLCJhZnRlclN0YXR1cyIsInN1Y2Nlc3MiLCJtcyIsInNraXBwZWQiLCJyIiwic2V0VGltZW91dCIsImRlbGF5IiwibG9nZ2VyIiwic3VjY2Vzc2Z1bCIsImZhaWxlZCIsImRlc2NyaXB0aW9uIiwicGFyYW1zIiwiYXNzaWduIiwicHJlZGljYXRlIiwic2tpcCIsInN0YXJ0IiwiRGF0ZSIsInN0b3AiLCJfcGFja2FnZSJdLCJzb3VyY2VSb290IjoiIn0=
1
+ var eda_test;(()=>{"use strict";var t={d:(e,s)=>{for(var o in s)t.o(s,o)&&!t.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:s[o]})},o:(t,e)=>Object.prototype.hasOwnProperty.call(t,e),r:t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})}},e={};t.r(e),t.d(e,{_package:()=>m,test:()=>k,tests:()=>a});const s=DG,o=grok;var n=function(t,e,s,o){return new(s||(s=Promise))((function(n,i){function r(t){try{c(o.next(t))}catch(t){i(t)}}function a(t){try{c(o.throw(t))}catch(t){i(t)}}function c(t){var e;t.done?n(t.value):(e=t.value,e instanceof s?e:new s((function(t){t(e)}))).then(r,a)}c((o=o.apply(t,e||[])).next())}))};const i=3e4,r=108e5,a={},c="Auto Tests",l={};var u;!function(t){t.notNull=function(t,e){if(null==t)throw new Error(`${null==e?"Value":e} not defined`)}}(u||(u={}));class d{constructor(t,e){this.catchUnhandled=!0,this.report=!1,void 0!==t&&(this.catchUnhandled=t),void 0!==e&&(this.report=e)}}class f{constructor(t,e,s,o){var r;this.category=t,this.name=e,null!=o||(o={}),null!==(r=o.timeout)&&void 0!==r||(o.timeout=i),this.options=o,this.test=()=>n(this,void 0,void 0,(function*(){return new Promise(((t,e)=>n(this,void 0,void 0,(function*(){let o="";try{o=yield s()}catch(t){e(t)}t(o)}))))}))}}function p(t,e){return t.replace(new RegExp(e.name,"gi"),e.nqName)}function h(t,e,a,c){var l,u,d,f,p;return n(this,void 0,void 0,(function*(){let n;const h=null!=e&&!t.name.toLowerCase().startsWith(e.toLowerCase()),g=(null===(l=t.options)||void 0===l?void 0:l.skipReason)||h,v=h?"skipped":null===(u=t.options)||void 0===u?void 0:u.skipReason;g||console.log(`Started ${t.category} ${t.name}`);const m=new Date;try{if(g)n={success:!0,result:v,ms:0,skipped:!0};else{let e=(null===(d=t.options)||void 0===d?void 0:d.timeout)===i&&a?a:null===(f=t.options)||void 0===f?void 0:f.timeout;e=s.Test.isInBenchmark&&e===i?r:e,n={success:!0,result:null!==(p=yield y(t.test,e))&&void 0!==p?p:"OK",ms:0,skipped:!1}}}catch(t){n={success:!1,result:t.toString(),ms:0,skipped:!1}}const k=new Date;return n.ms=k-m,g||console.log(`Finished ${t.category} ${t.name} for ${n.ms} ms`),n.category=t.category,n.name=t.name,h||o.log.usage(`${c}: ${t.category}: ${t.name}`,{success:n.success,result:n.result,ms:n.ms,skipped:n.skipped,type:"package",packageName:c,category:t.category,test:t.name},`test-package ${c}: ${t.category}: ${t.name}`),n}))}function g(t){return n(this,void 0,void 0,(function*(){yield new Promise((e=>setTimeout(e,t)))}))}function y(t,e){return n(this,void 0,void 0,(function*(){let s=null;const o=new Promise(((t,o)=>{s=setTimeout((()=>{o("EXECUTION TIMEOUT")}),e)}));try{return yield Promise.race([t(),o])}finally{s&&clearTimeout(s)}}))}var v=function(t,e,s,o){return new(s||(s=Promise))((function(n,i){function r(t){try{c(o.next(t))}catch(t){i(t)}}function a(t){try{c(o.throw(t))}catch(t){i(t)}}function c(t){var e;t.done?n(t.value):(e=t.value,e instanceof s?e:new s((function(t){t(e)}))).then(r,a)}c((o=o.apply(t,e||[])).next())}))};let m=new s.Package;function k(t,e,i){return v(this,void 0,void 0,(function*(){const r=yield function(t){var e,i,r,u,y;return n(this,void 0,void 0,(function*(){const v=null===(i=null===(e=o.functions.getCurrentCall())||void 0===e?void 0:e.func)||void 0===i?void 0:i.package;yield function(t,e){return n(this,void 0,void 0,(function*(){if(l[t])return;const e=a;if(void 0!==e[c]||Object.keys(e).find((t=>t.startsWith(c))))return void(l[t]=!0);const s=[],i=yield o.dapi.functions.filter(`package.id = "${t}"`).list(),r=i.filter((t=>t.hasTag("initTests")));if(r.length)for(const t of r)yield t.apply();const u=new RegExp(/skip:\s*([^,\s]+)|wait:\s*(\d+)|cat:\s*([^,\s]+)/g);for(const t of i){const i=t.options.test;if(i&&Array.isArray(i)&&i.length)for(let r=0;r<i.length;r++){const a=i[r].matchAll(u),l={};Array.from(a).forEach((t=>{t[0].startsWith("skip")?l.skip=t[1]:t[0].startsWith("wait")?l.wait=parseInt(t[2]):t[0].startsWith("cat")&&(l.cat=t[3])}));const d=new f(c,1===i.length?t.name:`${t.name} ${r+1}`,(()=>n(this,void 0,void 0,(function*(){const e=yield o.functions.eval(p(i[r],t));if(l.wait&&(yield g(l.wait)),"boolean"==typeof e&&!e)throw`Failed: ${i[r]}, expected true, got ${e}`}))),{skipReason:l.skip});if(l.cat){const t=c+": "+l.cat;d.category=t,void 0===e[t]&&(e[t]={tests:[],clear:!0}),e[t].tests.push(d)}else s.push(d)}}l[t]=!0,s.length&&(e[c]={tests:s,clear:!0})}))}(v.id);const m=[];console.log("Running tests"),null!=t||(t={}),null!==(r=(y=t).testContext)&&void 0!==r||(y.testContext=new d),o.shell.lastError="";for(const[e,n]of Object.entries(a)){if(null!=(null==t?void 0:t.category)&&!e.toLowerCase().startsWith(null==t?void 0:t.category.toLowerCase()))continue;console.log(`Started ${e} category`);try{n.before&&(yield n.before())}catch(t){n.beforeStatus=t.toString()}const i=null!==(u=n.tests)&&void 0!==u?u:[],r=[];if(n.clear)for(let e=0;e<i.length;e++)r.push(yield h(i[e],null==t?void 0:t.test,n.timeout,v.name)),o.shell.closeAll(),s.Balloon.closeAll();else for(let e=0;e<i.length;e++)r.push(yield h(i[e],null==t?void 0:t.test,n.timeout,v.name));const a=(yield Promise.all(r)).filter((t=>"skipped"!=t.result));try{n.after&&(yield n.after())}catch(t){n.afterStatus=t.toString()}n.afterStatus&&a.push({category:e,name:"init",result:n.afterStatus,success:!1,ms:0,skipped:!1}),n.beforeStatus&&a.push({category:e,name:"init",result:n.beforeStatus,success:!1,ms:0,skipped:!1}),m.push(...a)}if(t.testContext.catchUnhandled&&(yield g(1e3),o.shell.lastError.length>0&&m.push({category:"Unhandled exceptions",name:"exceptions",result:o.shell.lastError,success:!1,ms:0,skipped:!1})),t.testContext.report){const t=new s.Logger,e=m.filter((t=>t.success)).length,o=m.filter((t=>t.skipped)).length,n=m.filter((t=>!t.success)),i="Package @package tested: @successful successful, @skipped skipped, @failed failed tests",r={successful:e,skipped:o,failed:n.length,package:v};for(const t of n)Object.assign(r,{[`${t.category} | ${t.name}`]:t.result});t.log(i,r,"package-tested")}return m}))}({category:t,test:e,testContext:i});return s.DataFrame.fromObjects(r)}))}eda_test=e})();
2
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,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RCxPQUFRQSxFQUFPNUIsT0FDZlosUUFBU0QsR0FFYixJQUFLLE1BQU01QixLQUFLcUUsRUFDWnhJLE9BQU8ySSxPQUFPRCxFQUFRLENBQUUsQ0FBQyxHQUFHdkUsRUFBRXBCLGNBQWNvQixFQUFFN0IsUUFBUzZCLEVBQUV4QyxTQUM3RDJHLEVBQU81RCxJQUFJK0QsRUFBYUMsRUFBUSxpQkFDcEMsQ0FDQSxPQUFPWixDQUNYLEdBQ0osQ0NsVDJCYyxDQUFTLENBQUU3RixXQUFVQyxPQUFNNkMsZ0JBQzlDLE9BQU8sd0JBQXlCQyxFQUNwQyxHQUNKLEMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9lZGEvd2VicGFjay9ib290c3RyYXAiLCJ3ZWJwYWNrOi8vZWRhL3dlYnBhY2svcnVudGltZS9kZWZpbmUgcHJvcGVydHkgZ2V0dGVycyIsIndlYnBhY2s6Ly9lZGEvd2VicGFjay9ydW50aW1lL2hhc093blByb3BlcnR5IHNob3J0aGFuZCIsIndlYnBhY2s6Ly9lZGEvd2VicGFjay9ydW50aW1lL21ha2UgbmFtZXNwYWNlIG9iamVjdCIsIndlYnBhY2s6Ly9lZGEvZXh0ZXJuYWwgdmFyIFwiREdcIiIsIndlYnBhY2s6Ly9lZGEvZXh0ZXJuYWwgdmFyIFwiZ3Jva1wiIiwid2VicGFjazovL2VkYS8uL25vZGVfbW9kdWxlcy9AZGF0YWdyb2stbGlicmFyaWVzL3V0aWxzL3NyYy90ZXN0LmpzIiwid2VicGFjazovL2VkYS8uL3NyYy9wYWNrYWdlLXRlc3QudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gVGhlIHJlcXVpcmUgc2NvcGVcbnZhciBfX3dlYnBhY2tfcmVxdWlyZV9fID0ge307XG5cbiIsIi8vIGRlZmluZSBnZXR0ZXIgZnVuY3Rpb25zIGZvciBoYXJtb255IGV4cG9ydHNcbl9fd2VicGFja19yZXF1aXJlX18uZCA9IChleHBvcnRzLCBkZWZpbml0aW9uKSA9PiB7XG5cdGZvcih2YXIga2V5IGluIGRlZmluaXRpb24pIHtcblx0XHRpZihfX3dlYnBhY2tfcmVxdWlyZV9fLm8oZGVmaW5pdGlvbiwga2V5KSAmJiAhX193ZWJwYWNrX3JlcXVpcmVfXy5vKGV4cG9ydHMsIGtleSkpIHtcblx0XHRcdE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBrZXksIHsgZW51bWVyYWJsZTogdHJ1ZSwgZ2V0OiBkZWZpbml0aW9uW2tleV0gfSk7XG5cdFx0fVxuXHR9XG59OyIsIl9fd2VicGFja19yZXF1aXJlX18ubyA9IChvYmosIHByb3ApID0+IChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwob2JqLCBwcm9wKSkiLCIvLyBkZWZpbmUgX19lc01vZHVsZSBvbiBleHBvcnRzXG5fX3dlYnBhY2tfcmVxdWlyZV9fLnIgPSAoZXhwb3J0cykgPT4ge1xuXHRpZih0eXBlb2YgU3ltYm9sICE9PSAndW5kZWZpbmVkJyAmJiBTeW1ib2wudG9TdHJpbmdUYWcpIHtcblx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgU3ltYm9sLnRvU3RyaW5nVGFnLCB7IHZhbHVlOiAnTW9kdWxlJyB9KTtcblx0fVxuXHRPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgJ19fZXNNb2R1bGUnLCB7IHZhbHVlOiB0cnVlIH0pO1xufTsiLCJjb25zdCBfX1dFQlBBQ0tfTkFNRVNQQUNFX09CSkVDVF9fID0gREc7IiwiY29uc3QgX19XRUJQQUNLX05BTUVTUEFDRV9PQkpFQ1RfXyA9IGdyb2s7IiwidmFyIF9fYXdhaXRlciA9ICh0aGlzICYmIHRoaXMuX19hd2FpdGVyKSB8fCBmdW5jdGlvbiAodGhpc0FyZywgX2FyZ3VtZW50cywgUCwgZ2VuZXJhdG9yKSB7XG4gICAgZnVuY3Rpb24gYWRvcHQodmFsdWUpIHsgcmV0dXJuIHZhbHVlIGluc3RhbmNlb2YgUCA/IHZhbHVlIDogbmV3IFAoZnVuY3Rpb24gKHJlc29sdmUpIHsgcmVzb2x2ZSh2YWx1ZSk7IH0pOyB9XG4gICAgcmV0dXJuIG5ldyAoUCB8fCAoUCA9IFByb21pc2UpKShmdW5jdGlvbiAocmVzb2x2ZSwgcmVqZWN0KSB7XG4gICAgICAgIGZ1bmN0aW9uIGZ1bGZpbGxlZCh2YWx1ZSkgeyB0cnkgeyBzdGVwKGdlbmVyYXRvci5uZXh0KHZhbHVlKSk7IH0gY2F0Y2ggKGUpIHsgcmVqZWN0KGUpOyB9IH1cbiAgICAgICAgZnVuY3Rpb24gcmVqZWN0ZWQodmFsdWUpIHsgdHJ5IHsgc3RlcChnZW5lcmF0b3JbXCJ0aHJvd1wiXSh2YWx1ZSkpOyB9IGNhdGNoIChlKSB7IHJlamVjdChlKTsgfSB9XG4gICAgICAgIGZ1bmN0aW9uIHN0ZXAocmVzdWx0KSB7IHJlc3VsdC5kb25lID8gcmVzb2x2ZShyZXN1bHQudmFsdWUpIDogYWRvcHQocmVzdWx0LnZhbHVlKS50aGVuKGZ1bGZpbGxlZCwgcmVqZWN0ZWQpOyB9XG4gICAgICAgIHN0ZXAoKGdlbmVyYXRvciA9IGdlbmVyYXRvci5hcHBseSh0aGlzQXJnLCBfYXJndW1lbnRzIHx8IFtdKSkubmV4dCgpKTtcbiAgICB9KTtcbn07XG5pbXBvcnQgKiBhcyBncm9rIGZyb20gJ2RhdGFncm9rLWFwaS9ncm9rJztcbmltcG9ydCAqIGFzIERHIGZyb20gJ2RhdGFncm9rLWFwaS9kZyc7XG5jb25zdCBTVEFOREFSVF9USU1FT1VUID0gMzAwMDA7XG5jb25zdCBCRU5DSE1BUktfVElNRU9VVCA9IDEwODAwMDAwO1xuZXhwb3J0IGNvbnN0IHRlc3RzID0ge307XG5jb25zdCBhdXRvVGVzdHNDYXROYW1lID0gJ0F1dG8gVGVzdHMnO1xuY29uc3Qgd2FzUmVnaXN0ZXJlZCA9IHt9O1xuZXhwb3J0IGxldCBjdXJyZW50Q2F0ZWdvcnk7XG5leHBvcnQgdmFyIGFzc3VyZTtcbihmdW5jdGlvbiAoYXNzdXJlKSB7XG4gICAgZnVuY3Rpb24gbm90TnVsbCh2YWx1ZSwgbmFtZSkge1xuICAgICAgICBpZiAodmFsdWUgPT0gbnVsbClcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgJHtuYW1lID09IG51bGwgPyAnVmFsdWUnIDogbmFtZX0gbm90IGRlZmluZWRgKTtcbiAgICB9XG4gICAgYXNzdXJlLm5vdE51bGwgPSBub3ROdWxsO1xufSkoYXNzdXJlIHx8IChhc3N1cmUgPSB7fSkpO1xuZXhwb3J0IGNsYXNzIFRlc3RDb250ZXh0IHtcbiAgICBjb25zdHJ1Y3RvcihjYXRjaFVuaGFuZGxlZCwgcmVwb3J0KSB7XG4gICAgICAgIHRoaXMuY2F0Y2hVbmhhbmRsZWQgPSB0cnVlO1xuICAgICAgICB0aGlzLnJlcG9ydCA9IGZhbHNlO1xuICAgICAgICBpZiAoY2F0Y2hVbmhhbmRsZWQgIT09IHVuZGVmaW5lZClcbiAgICAgICAgICAgIHRoaXMuY2F0Y2hVbmhhbmRsZWQgPSBjYXRjaFVuaGFuZGxlZDtcbiAgICAgICAgaWYgKHJlcG9ydCAhPT0gdW5kZWZpbmVkKVxuICAgICAgICAgICAgdGhpcy5yZXBvcnQgPSByZXBvcnQ7XG4gICAgfVxuICAgIDtcbn1cbmV4cG9ydCBjbGFzcyBUZXN0IHtcbiAgICBjb25zdHJ1Y3RvcihjYXRlZ29yeSwgbmFtZSwgdGVzdCwgb3B0aW9ucykge1xuICAgICAgICB2YXIgX2E7XG4gICAgICAgIHRoaXMuY2F0ZWdvcnkgPSBjYXRlZ29yeTtcbiAgICAgICAgdGhpcy5uYW1lID0gbmFtZTtcbiAgICAgICAgb3B0aW9ucyAhPT0gbnVsbCAmJiBvcHRpb25zICE9PSB2b2lkIDAgPyBvcHRpb25zIDogKG9wdGlvbnMgPSB7fSk7XG4gICAgICAgIChfYSA9IG9wdGlvbnMudGltZW91dCkgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogKG9wdGlvbnMudGltZW91dCA9IFNUQU5EQVJUX1RJTUVPVVQpO1xuICAgICAgICB0aGlzLm9wdGlvbnMgPSBvcHRpb25zO1xuICAgICAgICB0aGlzLnRlc3QgPSAoKSA9PiBfX2F3YWl0ZXIodGhpcywgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKiAoKSB7XG4gICAgICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4gX19hd2FpdGVyKHRoaXMsIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbiogKCkge1xuICAgICAgICAgICAgICAgIGxldCByZXN1bHQgPSAnJztcbiAgICAgICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgICAgICByZXN1bHQgPSB5aWVsZCB0ZXN0KCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGNhdGNoIChlKSB7XG4gICAgICAgICAgICAgICAgICAgIHJlamVjdChlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmVzb2x2ZShyZXN1bHQpO1xuICAgICAgICAgICAgfSkpO1xuICAgICAgICB9KTtcbiAgICB9XG59XG5leHBvcnQgZnVuY3Rpb24gdGVzdEV2ZW50KGV2ZW50LCBoYW5kbGVyLCB0cmlnZ2VyLCBtcyA9IDApIHtcbiAgICByZXR1cm4gX19hd2FpdGVyKHRoaXMsIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbiogKCkge1xuICAgICAgICBsZXQgc3ViO1xuICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgICAgICAgc3ViID0gZXZlbnQuc3Vic2NyaWJlKChhcmdzKSA9PiB7XG4gICAgICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICAgICAgaGFuZGxlcihhcmdzKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgICAgICAgICAgcmVqZWN0KGUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBzdWIudW5zdWJzY3JpYmUoKTtcbiAgICAgICAgICAgICAgICByZXNvbHZlKCdPSycpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgICBzdWIudW5zdWJzY3JpYmUoKTtcbiAgICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJlZmVyLXByb21pc2UtcmVqZWN0LWVycm9yc1xuICAgICAgICAgICAgICAgIHJlamVjdCgndGltZW91dCcpO1xuICAgICAgICAgICAgfSwgbXMpO1xuICAgICAgICAgICAgdHJpZ2dlcigpO1xuICAgICAgICB9KTtcbiAgICB9KTtcbn1cbmV4cG9ydCBmdW5jdGlvbiB0ZXN0KG5hbWUsIHRlc3QsIG9wdGlvbnMpIHtcbiAgICBpZiAodGVzdHNbY3VycmVudENhdGVnb3J5XSA9PSB1bmRlZmluZWQpXG4gICAgICAgIHRlc3RzW2N1cnJlbnRDYXRlZ29yeV0gPSB7fTtcbiAgICBpZiAodGVzdHNbY3VycmVudENhdGVnb3J5XS50ZXN0cyA9PSB1bmRlZmluZWQpXG4gICAgICAgIHRlc3RzW2N1cnJlbnRDYXRlZ29yeV0udGVzdHMgPSBbXTtcbiAgICB0ZXN0c1tjdXJyZW50Q2F0ZWdvcnldLnRlc3RzLnB1c2gobmV3IFRlc3QoY3VycmVudENhdGVnb3J5LCBuYW1lLCB0ZXN0LCBvcHRpb25zKSk7XG59XG4vKiBUZXN0cyB0d28gb2JqZWN0cyBmb3IgZXF1YWxpdHksIHRocm93cyBhbiBleGNlcHRpb24gaWYgdGhleSBhcmUgbm90IGVxdWFsLiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGV4cGVjdChhY3R1YWwsIGV4cGVjdGVkID0gdHJ1ZSwgZXJyb3IpIHtcbiAgICBpZiAoZXJyb3IpXG4gICAgICAgIGVycm9yID0gYCR7ZXJyb3J9LCBgO1xuICAgIGVsc2VcbiAgICAgICAgZXJyb3IgPSAnJztcbiAgICBpZiAoYWN0dWFsICE9PSBleHBlY3RlZClcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGAke2Vycm9yfUV4cGVjdGVkIFwiJHtleHBlY3RlZH1cIiwgZ290IFwiJHthY3R1YWx9XCJgKTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBleHBlY3RGbG9hdChhY3R1YWwsIGV4cGVjdGVkLCB0b2xlcmFuY2UgPSAwLjAwMSwgZXJyb3IpIHtcbiAgICBpZiAoKGFjdHVhbCA9PT0gTnVtYmVyLlBPU0lUSVZFX0lORklOSVRZICYmIGV4cGVjdGVkID09PSBOdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFkpIHx8XG4gICAgICAgIChhY3R1YWwgPT09IE51bWJlci5ORUdBVElWRV9JTkZJTklUWSAmJiBleHBlY3RlZCA9PT0gTnVtYmVyLk5FR0FUSVZFX0lORklOSVRZKSB8fFxuICAgICAgICAoYWN0dWFsID09PSBOdW1iZXIuTmFOICYmIGV4cGVjdGVkID09PSBOdW1iZXIuTmFOKSB8fCAoaXNOYU4oYWN0dWFsKSAmJiBpc05hTihleHBlY3RlZCkpKVxuICAgICAgICByZXR1cm47XG4gICAgY29uc3QgYXJlRXF1YWwgPSBNYXRoLmFicyhhY3R1YWwgLSBleHBlY3RlZCkgPCB0b2xlcmFuY2U7XG4gICAgZXhwZWN0KGFyZUVxdWFsLCB0cnVlLCBgJHtlcnJvciAhPT0gbnVsbCAmJiBlcnJvciAhPT0gdm9pZCAwID8gZXJyb3IgOiAnJ30gKHRvbGVyYW5jZSA9ICR7dG9sZXJhbmNlfSlgKTtcbiAgICBpZiAoIWFyZUVxdWFsKVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEV4cGVjdGVkICR7ZXhwZWN0ZWR9LCBnb3QgJHthY3R1YWx9ICh0b2xlcmFuY2UgPSAke3RvbGVyYW5jZX0pYCk7XG59XG5leHBvcnQgZnVuY3Rpb24gZXhwZWN0VGFibGUoYWN0dWFsLCBleHBlY3RlZCwgZXJyb3IpIHtcbiAgICBjb25zdCBleHBlY3RlZFJvd0NvdW50ID0gZXhwZWN0ZWQucm93Q291bnQ7XG4gICAgY29uc3QgYWN0dWFsUm93Q291bnQgPSBhY3R1YWwucm93Q291bnQ7XG4gICAgZXhwZWN0KGFjdHVhbFJvd0NvdW50LCBleHBlY3RlZFJvd0NvdW50LCBgJHtlcnJvciAhPT0gbnVsbCAmJiBlcnJvciAhPT0gdm9pZCAwID8gZXJyb3IgOiAnJ30sIHJvdyBjb3VudGApO1xuICAgIGZvciAoY29uc3QgY29sdW1uIG9mIGV4cGVjdGVkLmNvbHVtbnMpIHtcbiAgICAgICAgY29uc3QgYWN0dWFsQ29sdW1uID0gYWN0dWFsLmNvbHVtbnMuYnlOYW1lKGNvbHVtbi5uYW1lKTtcbiAgICAgICAgaWYgKGFjdHVhbENvbHVtbiA9PSBudWxsKVxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBDb2x1bW4gJHtjb2x1bW4ubmFtZX0gbm90IGZvdW5kYCk7XG4gICAgICAgIGlmIChhY3R1YWxDb2x1bW4udHlwZSAhPSBjb2x1bW4udHlwZSlcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgQ29sdW1uICR7Y29sdW1uLm5hbWV9IHR5cGUgZXhwZWN0ZWQgJHtjb2x1bW4udHlwZX0gZ290ICR7YWN0dWFsQ29sdW1uLnR5cGV9YCk7XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZXhwZWN0ZWRSb3dDb3VudDsgaSsrKSB7XG4gICAgICAgICAgICBjb25zdCB2YWx1ZSA9IGNvbHVtbi5nZXQoaSk7XG4gICAgICAgICAgICBjb25zdCBhY3R1YWxWYWx1ZSA9IGFjdHVhbENvbHVtbi5nZXQoaSk7XG4gICAgICAgICAgICBpZiAoY29sdW1uLnR5cGUgPT0gREcuVFlQRS5GTE9BVClcbiAgICAgICAgICAgICAgICBleHBlY3RGbG9hdChhY3R1YWxWYWx1ZSwgdmFsdWUsIDAuMDAwMSwgZXJyb3IpO1xuICAgICAgICAgICAgZWxzZSBpZiAoY29sdW1uLnR5cGUgPT0gREcuVFlQRS5EQVRFX1RJTUUpXG4gICAgICAgICAgICAgICAgZXhwZWN0KGFjdHVhbFZhbHVlLmlzU2FtZSh2YWx1ZSksIHRydWUsIGVycm9yKTtcbiAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICBleHBlY3QoYWN0dWFsVmFsdWUsIHZhbHVlLCBlcnJvcik7XG4gICAgICAgIH1cbiAgICB9XG59XG5leHBvcnQgZnVuY3Rpb24gZXhwZWN0T2JqZWN0KGFjdHVhbCwgZXhwZWN0ZWQpIHtcbiAgICBmb3IgKGNvbnN0IFtleHBlY3RlZEtleSwgZXhwZWN0ZWRWYWx1ZV0gb2YgT2JqZWN0LmVudHJpZXMoZXhwZWN0ZWQpKSB7XG4gICAgICAgIGlmICghYWN0dWFsLmhhc093blByb3BlcnR5KGV4cGVjdGVkS2V5KSlcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgRXhwZWN0ZWQgcHJvcGVydHkgXCIke2V4cGVjdGVkS2V5fVwiIG5vdCBmb3VuZGApO1xuICAgICAgICBjb25zdCBhY3R1YWxWYWx1ZSA9IGFjdHVhbFtleHBlY3RlZEtleV07XG4gICAgICAgIGlmIChhY3R1YWxWYWx1ZSBpbnN0YW5jZW9mIEFycmF5ICYmIGV4cGVjdGVkVmFsdWUgaW5zdGFuY2VvZiBBcnJheSlcbiAgICAgICAgICAgIGV4cGVjdEFycmF5KGFjdHVhbFZhbHVlLCBleHBlY3RlZFZhbHVlKTtcbiAgICAgICAgZWxzZSBpZiAoYWN0dWFsVmFsdWUgaW5zdGFuY2VvZiBPYmplY3QgJiYgZXhwZWN0ZWRWYWx1ZSBpbnN0YW5jZW9mIE9iamVjdClcbiAgICAgICAgICAgIGV4cGVjdE9iamVjdChhY3R1YWxWYWx1ZSwgZXhwZWN0ZWRWYWx1ZSk7XG4gICAgICAgIGVsc2UgaWYgKE51bWJlci5pc0Zpbml0ZShhY3R1YWxWYWx1ZSkgJiYgTnVtYmVyLmlzRmluaXRlKGV4cGVjdGVkVmFsdWUpKVxuICAgICAgICAgICAgZXhwZWN0RmxvYXQoYWN0dWFsVmFsdWUsIGV4cGVjdGVkVmFsdWUpO1xuICAgICAgICBlbHNlIGlmIChhY3R1YWxWYWx1ZSAhPSBleHBlY3RlZFZhbHVlKVxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBFeHBlY3RlZCAoJHtleHBlY3RlZFZhbHVlfSkgZm9yIGtleSAnJHtleHBlY3RlZEtleX0nLCBnb3QgKCR7YWN0dWFsVmFsdWV9KWApO1xuICAgIH1cbn1cbmV4cG9ydCBmdW5jdGlvbiBleHBlY3RBcnJheShhY3R1YWwsIGV4cGVjdGVkKSB7XG4gICAgY29uc3QgYWN0dWFsTGVuZ3RoID0gYWN0dWFsLmxlbmd0aDtcbiAgICBjb25zdCBleHBlY3RlZExlbmd0aCA9IGV4cGVjdGVkLmxlbmd0aDtcbiAgICBpZiAoYWN0dWFsTGVuZ3RoICE9IGV4cGVjdGVkTGVuZ3RoKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgQXJyYXlzIGFyZSBvZiBkaWZmZXJlbnQgbGVuZ3RoOiBhY3R1YWwgYXJyYXkgbGVuZ3RoIGlzICR7YWN0dWFsTGVuZ3RofSBgICtcbiAgICAgICAgICAgIGBhbmQgZXhwZWN0ZWQgYXJyYXkgbGVuZ3RoIGlzICR7ZXhwZWN0ZWRMZW5ndGh9YCk7XG4gICAgfVxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgYWN0dWFsTGVuZ3RoOyBpKyspIHtcbiAgICAgICAgaWYgKGFjdHVhbFtpXSBpbnN0YW5jZW9mIEFycmF5ICYmIGV4cGVjdGVkW2ldIGluc3RhbmNlb2YgQXJyYXkpXG4gICAgICAgICAgICBleHBlY3RBcnJheShhY3R1YWxbaV0sIGV4cGVjdGVkW2ldKTtcbiAgICAgICAgZWxzZSBpZiAoYWN0dWFsW2ldIGluc3RhbmNlb2YgT2JqZWN0ICYmIGV4cGVjdGVkW2ldIGluc3RhbmNlb2YgT2JqZWN0KVxuICAgICAgICAgICAgZXhwZWN0T2JqZWN0KGFjdHVhbFtpXSwgZXhwZWN0ZWRbaV0pO1xuICAgICAgICBlbHNlIGlmIChhY3R1YWxbaV0gIT0gZXhwZWN0ZWRbaV0pXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEV4cGVjdGVkICR7ZXhwZWN0ZWRbaV19IGF0IHBvc2l0aW9uICR7aX0sIGdvdCAke2FjdHVhbFtpXX1gKTtcbiAgICB9XG59XG4vKiBEZWZpbmVzIGEgdGVzdCBzdWl0ZS4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjYXRlZ29yeShjYXRlZ29yeSwgdGVzdHNfLCBvcHRpb25zKSB7XG4gICAgdmFyIF9hO1xuICAgIGN1cnJlbnRDYXRlZ29yeSA9IGNhdGVnb3J5O1xuICAgIHRlc3RzXygpO1xuICAgIGlmICh0ZXN0c1tjdXJyZW50Q2F0ZWdvcnldKSB7XG4gICAgICAgIHRlc3RzW2N1cnJlbnRDYXRlZ29yeV0uY2xlYXIgPSAoX2EgPSBvcHRpb25zID09PSBudWxsIHx8IG9wdGlvbnMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IG9wdGlvbnMuY2xlYXIpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IHRydWU7XG4gICAgICAgIHRlc3RzW2N1cnJlbnRDYXRlZ29yeV0udGltZW91dCA9IG9wdGlvbnMgPT09IG51bGwgfHwgb3B0aW9ucyA9PT0gdm9pZCAwID8gdm9pZCAwIDogb3B0aW9ucy50aW1lb3V0O1xuICAgIH1cbn1cbi8qIERlZmluZXMgYSBmdW5jdGlvbiB0byBiZSBleGVjdXRlZCBiZWZvcmUgdGhlIHRlc3RzIGluIHRoaXMgY2F0ZWdvcnkgYXJlIGV4ZWN1dGVkLiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGJlZm9yZShiZWZvcmUpIHtcbiAgICBpZiAodGVzdHNbY3VycmVudENhdGVnb3J5XSA9PSB1bmRlZmluZWQpXG4gICAgICAgIHRlc3RzW2N1cnJlbnRDYXRlZ29yeV0gPSB7fTtcbiAgICB0ZXN0c1tjdXJyZW50Q2F0ZWdvcnldLmJlZm9yZSA9IGJlZm9yZTtcbn1cbi8qIERlZmluZXMgYSBmdW5jdGlvbiB0byBiZSBleGVjdXRlZCBhZnRlciB0aGUgdGVzdHMgaW4gdGhpcyBjYXRlZ29yeSBhcmUgZXhlY3V0ZWQuICovXG5leHBvcnQgZnVuY3Rpb24gYWZ0ZXIoYWZ0ZXIpIHtcbiAgICBpZiAodGVzdHNbY3VycmVudENhdGVnb3J5XSA9PSB1bmRlZmluZWQpXG4gICAgICAgIHRlc3RzW2N1cnJlbnRDYXRlZ29yeV0gPSB7fTtcbiAgICB0ZXN0c1tjdXJyZW50Q2F0ZWdvcnldLmFmdGVyID0gYWZ0ZXI7XG59XG5mdW5jdGlvbiBhZGROYW1lc3BhY2UocywgZikge1xuICAgIHJldHVybiBzLnJlcGxhY2UobmV3IFJlZ0V4cChmLm5hbWUsICdnaScpLCBmLm5xTmFtZSk7XG59XG5leHBvcnQgZnVuY3Rpb24gaW5pdEF1dG9UZXN0cyhwYWNrYWdlSWQsIG1vZHVsZSkge1xuICAgIHJldHVybiBfX2F3YWl0ZXIodGhpcywgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKiAoKSB7XG4gICAgICAgIGlmICh3YXNSZWdpc3RlcmVkW3BhY2thZ2VJZF0pXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIGNvbnN0IG1vZHVsZVRlc3RzID0gbW9kdWxlID8gbW9kdWxlLnRlc3RzIDogdGVzdHM7XG4gICAgICAgIGlmIChtb2R1bGVUZXN0c1thdXRvVGVzdHNDYXROYW1lXSAhPT0gdW5kZWZpbmVkIHx8XG4gICAgICAgICAgICBPYmplY3Qua2V5cyhtb2R1bGVUZXN0cykuZmluZCgoYykgPT4gYy5zdGFydHNXaXRoKGF1dG9UZXN0c0NhdE5hbWUpKSkge1xuICAgICAgICAgICAgd2FzUmVnaXN0ZXJlZFtwYWNrYWdlSWRdID0gdHJ1ZTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBtb2R1bGVBdXRvVGVzdHMgPSBbXTtcbiAgICAgICAgY29uc3QgcGFja0Z1bmN0aW9ucyA9IHlpZWxkIGdyb2suZGFwaS5mdW5jdGlvbnMuZmlsdGVyKGBwYWNrYWdlLmlkID0gXCIke3BhY2thZ2VJZH1cImApLmxpc3QoKTtcbiAgICAgICAgY29uc3QgaW5pdHMgPSBwYWNrRnVuY3Rpb25zLmZpbHRlcigoZikgPT4gZi5oYXNUYWcoJ2luaXRUZXN0cycpKTtcbiAgICAgICAgaWYgKGluaXRzLmxlbmd0aCkge1xuICAgICAgICAgICAgZm9yIChjb25zdCBmIG9mIGluaXRzKVxuICAgICAgICAgICAgICAgIHlpZWxkIGYuYXBwbHkoKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCByZWcgPSBuZXcgUmVnRXhwKC9za2lwOlxccyooW14sXFxzXSspfHdhaXQ6XFxzKihcXGQrKXxjYXQ6XFxzKihbXixcXHNdKykvZyk7XG4gICAgICAgIGZvciAoY29uc3QgZiBvZiBwYWNrRnVuY3Rpb25zKSB7XG4gICAgICAgICAgICBjb25zdCB0ZXN0cyA9IGYub3B0aW9uc1sndGVzdCddO1xuICAgICAgICAgICAgaWYgKCEodGVzdHMgJiYgQXJyYXkuaXNBcnJheSh0ZXN0cykgJiYgdGVzdHMubGVuZ3RoKSlcbiAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGVzdHMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgICAgICBjb25zdCByZXMgPSB0ZXN0c1tpXS5tYXRjaEFsbChyZWcpO1xuICAgICAgICAgICAgICAgIGNvbnN0IG1hcCA9IHt9O1xuICAgICAgICAgICAgICAgIEFycmF5LmZyb20ocmVzKS5mb3JFYWNoKChhcnIpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGFyclswXS5zdGFydHNXaXRoKCdza2lwJykpXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXBbJ3NraXAnXSA9IGFyclsxXTtcbiAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoYXJyWzBdLnN0YXJ0c1dpdGgoJ3dhaXQnKSlcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcFsnd2FpdCddID0gcGFyc2VJbnQoYXJyWzJdKTtcbiAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoYXJyWzBdLnN0YXJ0c1dpdGgoJ2NhdCcpKVxuICAgICAgICAgICAgICAgICAgICAgICAgbWFwWydjYXQnXSA9IGFyclszXTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICBjb25zdCB0ZXN0ID0gbmV3IFRlc3QoYXV0b1Rlc3RzQ2F0TmFtZSwgdGVzdHMubGVuZ3RoID09PSAxID8gZi5uYW1lIDogYCR7Zi5uYW1lfSAke2kgKyAxfWAsICgpID0+IF9fYXdhaXRlcih0aGlzLCB2b2lkIDAsIHZvaWQgMCwgZnVuY3Rpb24qICgpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgcmVzID0geWllbGQgZ3Jvay5mdW5jdGlvbnMuZXZhbChhZGROYW1lc3BhY2UodGVzdHNbaV0sIGYpKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKG1hcC53YWl0KVxuICAgICAgICAgICAgICAgICAgICAgICAgeWllbGQgZGVsYXkobWFwLndhaXQpO1xuICAgICAgICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdGhyb3ctbGl0ZXJhbFxuICAgICAgICAgICAgICAgICAgICBpZiAodHlwZW9mIHJlcyA9PT0gJ2Jvb2xlYW4nICYmICFyZXMpXG4gICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyBgRmFpbGVkOiAke3Rlc3RzW2ldfSwgZXhwZWN0ZWQgdHJ1ZSwgZ290ICR7cmVzfWA7XG4gICAgICAgICAgICAgICAgfSksIHsgc2tpcFJlYXNvbjogbWFwLnNraXAgfSk7XG4gICAgICAgICAgICAgICAgaWYgKG1hcC5jYXQpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgY2F0ID0gYXV0b1Rlc3RzQ2F0TmFtZSArICc6ICcgKyBtYXAuY2F0O1xuICAgICAgICAgICAgICAgICAgICB0ZXN0LmNhdGVnb3J5ID0gY2F0O1xuICAgICAgICAgICAgICAgICAgICBpZiAobW9kdWxlVGVzdHNbY2F0XSA9PT0gdW5kZWZpbmVkKVxuICAgICAgICAgICAgICAgICAgICAgICAgbW9kdWxlVGVzdHNbY2F0XSA9IHsgdGVzdHM6IFtdLCBjbGVhcjogdHJ1ZSB9O1xuICAgICAgICAgICAgICAgICAgICBtb2R1bGVUZXN0c1tjYXRdLnRlc3RzLnB1c2godGVzdCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBtb2R1bGVBdXRvVGVzdHMucHVzaCh0ZXN0KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgd2FzUmVnaXN0ZXJlZFtwYWNrYWdlSWRdID0gdHJ1ZTtcbiAgICAgICAgaWYgKCFtb2R1bGVBdXRvVGVzdHMubGVuZ3RoKVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICBtb2R1bGVUZXN0c1thdXRvVGVzdHNDYXROYW1lXSA9IHsgdGVzdHM6IG1vZHVsZUF1dG9UZXN0cywgY2xlYXI6IHRydWUgfTtcbiAgICB9KTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBydW5UZXN0cyhvcHRpb25zKSB7XG4gICAgdmFyIF9hLCBfYiwgX2MsIF9kO1xuICAgIHZhciBfZTtcbiAgICByZXR1cm4gX19hd2FpdGVyKHRoaXMsIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbiogKCkge1xuICAgICAgICBjb25zdCBwYWNrYWdlXyA9IChfYiA9IChfYSA9IGdyb2suZnVuY3Rpb25zLmdldEN1cnJlbnRDYWxsKCkpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5mdW5jKSA9PT0gbnVsbCB8fCBfYiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2IucGFja2FnZTtcbiAgICAgICAgeWllbGQgaW5pdEF1dG9UZXN0cyhwYWNrYWdlXy5pZCk7XG4gICAgICAgIGNvbnN0IHJlc3VsdHMgPSBbXTtcbiAgICAgICAgY29uc29sZS5sb2coYFJ1bm5pbmcgdGVzdHNgKTtcbiAgICAgICAgb3B0aW9ucyAhPT0gbnVsbCAmJiBvcHRpb25zICE9PSB2b2lkIDAgPyBvcHRpb25zIDogKG9wdGlvbnMgPSB7fSk7XG4gICAgICAgIChfYyA9IChfZSA9IG9wdGlvbnMpLnRlc3RDb250ZXh0KSAhPT0gbnVsbCAmJiBfYyAhPT0gdm9pZCAwID8gX2MgOiAoX2UudGVzdENvbnRleHQgPSBuZXcgVGVzdENvbnRleHQoKSk7XG4gICAgICAgIGdyb2suc2hlbGwubGFzdEVycm9yID0gJyc7XG4gICAgICAgIGZvciAoY29uc3QgW2tleSwgdmFsdWVdIG9mIE9iamVjdC5lbnRyaWVzKHRlc3RzKSkge1xuICAgICAgICAgICAgaWYgKChvcHRpb25zID09PSBudWxsIHx8IG9wdGlvbnMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IG9wdGlvbnMuY2F0ZWdvcnkpICE9IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgIGlmICgha2V5LnRvTG93ZXJDYXNlKCkuc3RhcnRzV2l0aChvcHRpb25zID09PSBudWxsIHx8IG9wdGlvbnMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IG9wdGlvbnMuY2F0ZWdvcnkudG9Mb3dlckNhc2UoKSkpXG4gICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc29sZS5sb2coYFN0YXJ0ZWQgJHtrZXl9IGNhdGVnb3J5YCk7XG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIGlmICh2YWx1ZS5iZWZvcmUpXG4gICAgICAgICAgICAgICAgICAgIHlpZWxkIHZhbHVlLmJlZm9yZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY2F0Y2ggKHgpIHtcbiAgICAgICAgICAgICAgICB2YWx1ZS5iZWZvcmVTdGF0dXMgPSB4LnRvU3RyaW5nKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCB0ID0gKF9kID0gdmFsdWUudGVzdHMpICE9PSBudWxsICYmIF9kICE9PSB2b2lkIDAgPyBfZCA6IFtdO1xuICAgICAgICAgICAgY29uc3QgcmVzID0gW107XG4gICAgICAgICAgICBpZiAodmFsdWUuY2xlYXIpIHtcbiAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHQubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgICAgICAgICAgcmVzLnB1c2goeWllbGQgZXhlY1Rlc3QodFtpXSwgb3B0aW9ucyA9PT0gbnVsbCB8fCBvcHRpb25zID09PSB2b2lkIDAgPyB2b2lkIDAgOiBvcHRpb25zLnRlc3QsIHZhbHVlLnRpbWVvdXQsIHBhY2thZ2VfLm5hbWUpKTtcbiAgICAgICAgICAgICAgICAgICAgZ3Jvay5zaGVsbC5jbG9zZUFsbCgpO1xuICAgICAgICAgICAgICAgICAgICBERy5CYWxsb29uLmNsb3NlQWxsKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0Lmxlbmd0aDsgaSsrKVxuICAgICAgICAgICAgICAgICAgICByZXMucHVzaCh5aWVsZCBleGVjVGVzdCh0W2ldLCBvcHRpb25zID09PSBudWxsIHx8IG9wdGlvbnMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IG9wdGlvbnMudGVzdCwgdmFsdWUudGltZW91dCwgcGFja2FnZV8ubmFtZSkpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgZGF0YSA9ICh5aWVsZCBQcm9taXNlLmFsbChyZXMpKS5maWx0ZXIoKGQpID0+IGQucmVzdWx0ICE9ICdza2lwcGVkJyk7XG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIGlmICh2YWx1ZS5hZnRlcilcbiAgICAgICAgICAgICAgICAgICAgeWllbGQgdmFsdWUuYWZ0ZXIoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNhdGNoICh4KSB7XG4gICAgICAgICAgICAgICAgdmFsdWUuYWZ0ZXJTdGF0dXMgPSB4LnRvU3RyaW5nKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyBDbGVhciBhZnRlciBjYXRlZ29yeVxuICAgICAgICAgICAgLy8gZ3Jvay5zaGVsbC5jbG9zZUFsbCgpO1xuICAgICAgICAgICAgLy8gREcuQmFsbG9vbi5jbG9zZUFsbCgpO1xuICAgICAgICAgICAgaWYgKHZhbHVlLmFmdGVyU3RhdHVzKVxuICAgICAgICAgICAgICAgIGRhdGEucHVzaCh7IGNhdGVnb3J5OiBrZXksIG5hbWU6ICdpbml0JywgcmVzdWx0OiB2YWx1ZS5hZnRlclN0YXR1cywgc3VjY2VzczogZmFsc2UsIG1zOiAwLCBza2lwcGVkOiBmYWxzZSB9KTtcbiAgICAgICAgICAgIGlmICh2YWx1ZS5iZWZvcmVTdGF0dXMpXG4gICAgICAgICAgICAgICAgZGF0YS5wdXNoKHsgY2F0ZWdvcnk6IGtleSwgbmFtZTogJ2luaXQnLCByZXN1bHQ6IHZhbHVlLmJlZm9yZVN0YXR1cywgc3VjY2VzczogZmFsc2UsIG1zOiAwLCBza2lwcGVkOiBmYWxzZSB9KTtcbiAgICAgICAgICAgIHJlc3VsdHMucHVzaCguLi5kYXRhKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAob3B0aW9ucy50ZXN0Q29udGV4dC5jYXRjaFVuaGFuZGxlZCkge1xuICAgICAgICAgICAgeWllbGQgZGVsYXkoMTAwMCk7XG4gICAgICAgICAgICBpZiAoZ3Jvay5zaGVsbC5sYXN0RXJyb3IubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgIHJlc3VsdHMucHVzaCh7XG4gICAgICAgICAgICAgICAgICAgIGNhdGVnb3J5OiAnVW5oYW5kbGVkIGV4Y2VwdGlvbnMnLFxuICAgICAgICAgICAgICAgICAgICBuYW1lOiAnZXhjZXB0aW9ucycsXG4gICAgICAgICAgICAgICAgICAgIHJlc3VsdDogZ3Jvay5zaGVsbC5sYXN0RXJyb3IsIHN1Y2Nlc3M6IGZhbHNlLCBtczogMCwgc2tpcHBlZDogZmFsc2VcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAob3B0aW9ucy50ZXN0Q29udGV4dC5yZXBvcnQpIHtcbiAgICAgICAgICAgIGNvbnN0IGxvZ2dlciA9IG5ldyBERy5Mb2dnZXIoKTtcbiAgICAgICAgICAgIGNvbnN0IHN1Y2Nlc3NmdWwgPSByZXN1bHRzLmZpbHRlcigocikgPT4gci5zdWNjZXNzKS5sZW5ndGg7XG4gICAgICAgICAgICBjb25zdCBza2lwcGVkID0gcmVzdWx0cy5maWx0ZXIoKHIpID0+IHIuc2tpcHBlZCkubGVuZ3RoO1xuICAgICAgICAgICAgY29uc3QgZmFpbGVkID0gcmVzdWx0cy5maWx0ZXIoKHIpID0+ICFyLnN1Y2Nlc3MpO1xuICAgICAgICAgICAgY29uc3QgZGVzY3JpcHRpb24gPSAnUGFja2FnZSBAcGFja2FnZSB0ZXN0ZWQ6IEBzdWNjZXNzZnVsIHN1Y2Nlc3NmdWwsIEBza2lwcGVkIHNraXBwZWQsIEBmYWlsZWQgZmFpbGVkIHRlc3RzJztcbiAgICAgICAgICAgIGNvbnN0IHBhcmFtcyA9IHtcbiAgICAgICAgICAgICAgICBzdWNjZXNzZnVsOiBzdWNjZXNzZnVsLFxuICAgICAgICAgICAgICAgIHNraXBwZWQ6IHNraXBwZWQsXG4gICAgICAgICAgICAgICAgZmFpbGVkOiBmYWlsZWQubGVuZ3RoLFxuICAgICAgICAgICAgICAgIHBhY2thZ2U6IHBhY2thZ2VfXG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgZm9yIChjb25zdCByIG9mIGZhaWxlZClcbiAgICAgICAgICAgICAgICBPYmplY3QuYXNzaWduKHBhcmFtcywgeyBbYCR7ci5jYXRlZ29yeX0gfCAke3IubmFtZX1gXTogci5yZXN1bHQgfSk7XG4gICAgICAgICAgICBsb2dnZXIubG9nKGRlc2NyaXB0aW9uLCBwYXJhbXMsICdwYWNrYWdlLXRlc3RlZCcpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiByZXN1bHRzO1xuICAgIH0pO1xufVxuZnVuY3Rpb24gZXhlY1Rlc3QodCwgcHJlZGljYXRlLCBjYXRlZ29yeVRpbWVvdXQsIHBhY2thZ2VOYW1lKSB7XG4gICAgdmFyIF9hLCBfYiwgX2MsIF9kLCBfZTtcbiAgICByZXR1cm4gX19hd2FpdGVyKHRoaXMsIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbiogKCkge1xuICAgICAgICBsZXQgcjtcbiAgICAgICAgY29uc3QgZmlsdGVyID0gcHJlZGljYXRlICE9IHVuZGVmaW5lZCAmJiAoIXQubmFtZS50b0xvd2VyQ2FzZSgpLnN0YXJ0c1dpdGgocHJlZGljYXRlLnRvTG93ZXJDYXNlKCkpKTtcbiAgICAgICAgY29uc3Qgc2tpcCA9ICgoX2EgPSB0Lm9wdGlvbnMpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5za2lwUmVhc29uKSB8fCBmaWx0ZXI7XG4gICAgICAgIGNvbnN0IHNraXBSZWFzb24gPSBmaWx0ZXIgPyAnc2tpcHBlZCcgOiAoX2IgPSB0Lm9wdGlvbnMpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5za2lwUmVhc29uO1xuICAgICAgICBpZiAoIXNraXApXG4gICAgICAgICAgICBjb25zb2xlLmxvZyhgU3RhcnRlZCAke3QuY2F0ZWdvcnl9ICR7dC5uYW1lfWApO1xuICAgICAgICBjb25zdCBzdGFydCA9IG5ldyBEYXRlKCk7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBpZiAoc2tpcCkge1xuICAgICAgICAgICAgICAgIHIgPSB7IHN1Y2Nlc3M6IHRydWUsIHJlc3VsdDogc2tpcFJlYXNvbiwgbXM6IDAsIHNraXBwZWQ6IHRydWUgfTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIGxldCB0aW1lb3V0XyA9ICgoX2MgPSB0Lm9wdGlvbnMpID09PSBudWxsIHx8IF9jID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYy50aW1lb3V0KSA9PT0gU1RBTkRBUlRfVElNRU9VVCAmJlxuICAgICAgICAgICAgICAgICAgICBjYXRlZ29yeVRpbWVvdXQgPyBjYXRlZ29yeVRpbWVvdXQgOiAoX2QgPSB0Lm9wdGlvbnMpID09PSBudWxsIHx8IF9kID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfZC50aW1lb3V0O1xuICAgICAgICAgICAgICAgIHRpbWVvdXRfID0gREcuVGVzdC5pc0luQmVuY2htYXJrICYmIHRpbWVvdXRfID09PSBTVEFOREFSVF9USU1FT1VUID8gQkVOQ0hNQVJLX1RJTUVPVVQgOiB0aW1lb3V0XztcbiAgICAgICAgICAgICAgICByID0geyBzdWNjZXNzOiB0cnVlLCByZXN1bHQ6IChfZSA9IHlpZWxkIHRpbWVvdXQodC50ZXN0LCB0aW1lb3V0XykpICE9PSBudWxsICYmIF9lICE9PSB2b2lkIDAgPyBfZSA6ICdPSycsIG1zOiAwLCBza2lwcGVkOiBmYWxzZSB9O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGNhdGNoICh4KSB7XG4gICAgICAgICAgICByID0geyBzdWNjZXNzOiBmYWxzZSwgcmVzdWx0OiB4LnRvU3RyaW5nKCksIG1zOiAwLCBza2lwcGVkOiBmYWxzZSB9O1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHN0b3AgPSBuZXcgRGF0ZSgpO1xuICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgIHIubXMgPSBzdG9wIC0gc3RhcnQ7XG4gICAgICAgIGlmICghc2tpcClcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKGBGaW5pc2hlZCAke3QuY2F0ZWdvcnl9ICR7dC5uYW1lfSBmb3IgJHtyLm1zfSBtc2ApO1xuICAgICAgICByLmNhdGVnb3J5ID0gdC5jYXRlZ29yeTtcbiAgICAgICAgci5uYW1lID0gdC5uYW1lO1xuICAgICAgICBpZiAoIWZpbHRlcikge1xuICAgICAgICAgICAgZ3Jvay5sb2cudXNhZ2UoYCR7cGFja2FnZU5hbWV9OiAke3QuY2F0ZWdvcnl9OiAke3QubmFtZX1gLCB7ICdzdWNjZXNzJzogci5zdWNjZXNzLCAncmVzdWx0Jzogci5yZXN1bHQsICdtcyc6IHIubXMsICdza2lwcGVkJzogci5za2lwcGVkLFxuICAgICAgICAgICAgICAgICd0eXBlJzogJ3BhY2thZ2UnLCBwYWNrYWdlTmFtZSwgJ2NhdGVnb3J5JzogdC5jYXRlZ29yeSwgJ3Rlc3QnOiB0Lm5hbWUgfSwgYHRlc3QtcGFja2FnZSAke3BhY2thZ2VOYW1lfTogJHt0LmNhdGVnb3J5fTogJHt0Lm5hbWV9YCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHI7XG4gICAgfSk7XG59XG4vKiBXYWl0cyBbbXNdIG1pbGxpc2Vjb25kcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIGRlbGF5KG1zKSB7XG4gICAgcmV0dXJuIF9fYXdhaXRlcih0aGlzLCB2b2lkIDAsIHZvaWQgMCwgZnVuY3Rpb24qICgpIHtcbiAgICAgICAgeWllbGQgbmV3IFByb21pc2UoKHIpID0+IHNldFRpbWVvdXQociwgbXMpKTtcbiAgICB9KTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBhd2FpdENoZWNrKGNoZWNrSGFuZGxlciwgZXJyb3IgPSAnVGltZW91dCBleGNlZWRlZCcsIHdhaXQgPSA1MDAsIGludGVydmFsID0gNTApIHtcbiAgICByZXR1cm4gX19hd2FpdGVyKHRoaXMsIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbiogKCkge1xuICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgY2xlYXJJbnRlcnZhbChpbnRlcnZhbElkKTtcbiAgICAgICAgICAgICAgICByZWplY3QobmV3IEVycm9yKGVycm9yKSk7XG4gICAgICAgICAgICB9LCB3YWl0KTtcbiAgICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICAgIGNvbnN0IGludGVydmFsSWQgPSBzZXRJbnRlcnZhbCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKGNoZWNrSGFuZGxlcigpKSB7XG4gICAgICAgICAgICAgICAgICAgIGNsZWFySW50ZXJ2YWwoaW50ZXJ2YWxJZCk7XG4gICAgICAgICAgICAgICAgICAgIHJlc29sdmUoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9LCBpbnRlcnZhbCk7XG4gICAgICAgIH0pO1xuICAgIH0pO1xufVxuZnVuY3Rpb24gdGltZW91dChmdW5jLCB0ZXN0VGltZW91dCkge1xuICAgIHJldHVybiBfX2F3YWl0ZXIodGhpcywgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKiAoKSB7XG4gICAgICAgIGxldCB0aW1lb3V0ID0gbnVsbDtcbiAgICAgICAgY29uc3QgdGltZW91dFByb21pc2UgPSBuZXcgUHJvbWlzZSgoXywgcmVqZWN0KSA9PiB7XG4gICAgICAgICAgICAvL0B0cy1pZ25vcmVcbiAgICAgICAgICAgIHRpbWVvdXQgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJlZmVyLXByb21pc2UtcmVqZWN0LWVycm9yc1xuICAgICAgICAgICAgICAgIHJlamVjdCgnRVhFQ1VUSU9OIFRJTUVPVVQnKTtcbiAgICAgICAgICAgIH0sIHRlc3RUaW1lb3V0KTtcbiAgICAgICAgfSk7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICByZXR1cm4geWllbGQgUHJvbWlzZS5yYWNlKFtmdW5jKCksIHRpbWVvdXRQcm9taXNlXSk7XG4gICAgICAgIH1cbiAgICAgICAgZmluYWxseSB7XG4gICAgICAgICAgICBpZiAodGltZW91dClcbiAgICAgICAgICAgICAgICBjbGVhclRpbWVvdXQodGltZW91dCk7XG4gICAgICAgIH1cbiAgICB9KTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBpc0RpYWxvZ1ByZXNlbnQoZGlhbG9nVGl0bGUpIHtcbiAgICBjb25zdCBkaWFsb2dzID0gREcuRGlhbG9nLmdldE9wZW5EaWFsb2dzKCk7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBkaWFsb2dzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGlmIChkaWFsb2dzW2ldLnRpdGxlID09IGRpYWxvZ1RpdGxlKVxuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbn1cbi8qKiBFeHBlY3RzIGFuIGFzeW5jaHJvbm91cyB7QGxpbmsgYWN0aW9ufSB0byB0aHJvdyBhbiBleGNlcHRpb24uIFVzZSB7QGxpbmsgY2hlY2t9IHRvIHBlcmZvcm1cbiAqIGRlZXBlciBpbnNwZWN0aW9uIG9mIHRoZSBleGNlcHRpb24gaWYgbmVjZXNzYXJ5LlxuICogQHBhcmFtICB7ZnVuY3Rpb24oKTogUHJvbWlzZTx2b2lkPn0gYWN0aW9uXG4gKiBAcGFyYW0gIHtmdW5jdGlvbihhbnkpOiBib29sZWFufSBjaGVja1xuICogQHJldHVybiB7UHJvbWlzZTx2b2lkPn1cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGV4cGVjdEV4Y2VwdGlvbkFzeW5jKGFjdGlvbiwgY2hlY2spIHtcbiAgICByZXR1cm4gX19hd2FpdGVyKHRoaXMsIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbiogKCkge1xuICAgICAgICBsZXQgY2F1Z2h0ID0gZmFsc2U7XG4gICAgICAgIGxldCBjaGVja2VkID0gZmFsc2U7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICB5aWVsZCBhY3Rpb24oKTtcbiAgICAgICAgfVxuICAgICAgICBjYXRjaCAoZSkge1xuICAgICAgICAgICAgY2F1Z2h0ID0gdHJ1ZTtcbiAgICAgICAgICAgIGNoZWNrZWQgPSAhY2hlY2sgfHwgY2hlY2soZSk7XG4gICAgICAgIH1cbiAgICAgICAgZmluYWxseSB7XG4gICAgICAgICAgICBpZiAoIWNhdWdodClcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0FuIGV4Y2VwdGlvbiBpcyBleHBlY3RlZCBidXQgbm90IHRocm93bicpO1xuICAgICAgICAgICAgaWYgKCFjaGVja2VkKVxuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignQW4gZXhwZWN0ZWQgZXhjZXB0aW9uIGlzIHRocm93biwgYnV0IGl0IGRvZXMgbm90IHNhdGlzZnkgdGhlIGNvbmRpdGlvbicpO1xuICAgICAgICB9XG4gICAgfSk7XG59XG4vKipcbiAqIFVuaXZlcnNhbCB0ZXN0IGZvciB2aWV3ZXJzLiBJdCBzZWFyY2ggdmlld2VycyBpbiBET00gYnkgdGFnczogY2FudmFzLCBzdmcsIGltZywgaW5wdXQsIGgxLCBhXG4gKiBAcGFyYW0gIHtzdHJpbmd9IHYgVmlld2VyIG5hbWVcbiAqIEBwYXJhbSAge0RHLkRhdGFGcmFtZX0gZGYgRGF0YWZyYW1lIHRvIHVzZS4gU2hvdWxkIGhhdmUgYXQgbGVhc3QgMyByb3dzXG4gKiBAcGFyYW0gIHtib29sZWFufSBvcHRpb25zLmRldGVjdFNlbWFudGljVHlwZXMgU3BlY2lmeSB3aGV0aGVyIHRvIGRldGVjdCBzZW1hbnRpYyB0eXBlcyBvciBub3RcbiAqIEBwYXJhbSAge2Jvb2xlYW59IG9wdGlvbnMucmVhZE9ubHkgSWYgc2V0IHRvIHRydWUsIHRoZSBkYXRhZnJhbWUgd2lsbCBub3QgYmUgbW9kaWZpZWQgZHVyaW5nIHRoZSB0ZXN0XG4gKiBAcGFyYW0gIHtvYmplY3R9IG9wdGlvbnMgTGlzdCBvZiBvcHRpb25zIChvcHRpb25hbClcbiAqIEByZXR1cm4ge1Byb21pc2U8dm9pZD59IFRoZSB0ZXN0IGlzIGNvbnNpZGVyZWQgc3VjY2Vzc2Z1bCBpZiBpdCBjb21wbGV0ZXMgd2l0aG91dCBlcnJvcnNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRlc3RWaWV3ZXIodiwgZGYsIG9wdGlvbnMpIHtcbiAgICB2YXIgX2E7XG4gICAgcmV0dXJuIF9fYXdhaXRlcih0aGlzLCB2b2lkIDAsIHZvaWQgMCwgZnVuY3Rpb24qICgpIHtcbiAgICAgICAgaWYgKG9wdGlvbnMgPT09IG51bGwgfHwgb3B0aW9ucyA9PT0gdm9pZCAwID8gdm9pZCAwIDogb3B0aW9ucy5kZXRlY3RTZW1hbnRpY1R5cGVzKVxuICAgICAgICAgICAgeWllbGQgZ3Jvay5kYXRhLmRldGVjdFNlbWFudGljVHlwZXMoZGYpO1xuICAgICAgICBjb25zdCB0diA9IGdyb2suc2hlbGwuYWRkVGFibGVWaWV3KGRmKTtcbiAgICAgICAgY29uc3Qgdmlld2VyTmFtZSA9IGBbbmFtZT12aWV3ZXItJHt2LnJlcGxhY2UoL1xccysvZywgJy0nKX0gaV1gO1xuICAgICAgICBsZXQgc2VsZWN0b3IgPSBgJHt2aWV3ZXJOYW1lfSBjYW52YXMsJHt2aWV3ZXJOYW1lfSBzdmcsJHt2aWV3ZXJOYW1lfSBpbWcsXG4gICAgJHt2aWV3ZXJOYW1lfSBpbnB1dCwke3ZpZXdlck5hbWV9IGgxLCR7dmlld2VyTmFtZX0gYWA7XG4gICAgICAgIGNvbnN0IHJlcyA9IFtdO1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgbGV0IHZpZXdlciA9IHR2LmFkZFZpZXdlcih2KTtcbiAgICAgICAgICAgIHlpZWxkIGF3YWl0Q2hlY2soKCkgPT4gZG9jdW1lbnQucXVlcnlTZWxlY3RvcihzZWxlY3RvcikgIT09IG51bGwsICdjYW5ub3QgbG9hZCB2aWV3ZXInLCAzMDAwKTtcbiAgICAgICAgICAgIGNvbnN0IHRhZyA9IChfYSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3Ioc2VsZWN0b3IpKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EudGFnTmFtZTtcbiAgICAgICAgICAgIHJlcy5wdXNoKEFycmF5LmZyb20odHYudmlld2VycykubGVuZ3RoKTtcbiAgICAgICAgICAgIGlmICghKG9wdGlvbnMgPT09IG51bGwgfHwgb3B0aW9ucyA9PT0gdm9pZCAwID8gdm9pZCAwIDogb3B0aW9ucy5yZWFkT25seSkpIHtcbiAgICAgICAgICAgICAgICBBcnJheS5mcm9tKGRmLnJvdygwKS5jZWxscykuZm9yRWFjaCgoYykgPT4gYy52YWx1ZSA9IG51bGwpO1xuICAgICAgICAgICAgICAgIGNvbnN0IG51bSA9IGRmLnJvd0NvdW50IDwgMjAgPyBNYXRoLmZsb29yKGRmLnJvd0NvdW50IC8gMikgOiAxMDtcbiAgICAgICAgICAgICAgICBkZi5yb3dzLnNlbGVjdCgocm93KSA9PiByb3cuaWR4ID49IDAgJiYgcm93LmlkeCA8IG51bSk7XG4gICAgICAgICAgICAgICAgeWllbGQgZGVsYXkoNTApO1xuICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSBudW07IGkgPCBudW0gKiAyOyBpKyspXG4gICAgICAgICAgICAgICAgICAgIGRmLmZpbHRlci5zZXQoaSwgZmFsc2UpO1xuICAgICAgICAgICAgICAgIHlpZWxkIGRlbGF5KDUwKTtcbiAgICAgICAgICAgICAgICBkZi5jdXJyZW50Um93SWR4ID0gMTtcbiAgICAgICAgICAgICAgICBjb25zdCBkZjEgPSBkZi5jbG9uZSgpO1xuICAgICAgICAgICAgICAgIGRmLmNvbHVtbnMubmFtZXMoKS5zbGljZSgwLCBNYXRoLmNlaWwoZGYuY29sdW1ucy5sZW5ndGggLyAyKSkuZm9yRWFjaCgoYykgPT4gZGYuY29sdW1ucy5yZW1vdmUoYykpO1xuICAgICAgICAgICAgICAgIHlpZWxkIGRlbGF5KDEwMCk7XG4gICAgICAgICAgICAgICAgdHYuZGF0YUZyYW1lID0gZGYxO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3Qgb3B0bnMgPSB2aWV3ZXIuZ2V0T3B0aW9ucyh0cnVlKS5sb29rO1xuICAgICAgICAgICAgY29uc3QgcHJvcHMgPSB2aWV3ZXIuZ2V0UHJvcGVydGllcygpO1xuICAgICAgICAgICAgY29uc3QgbmV3UHJvcHMgPSB7fTtcbiAgICAgICAgICAgIE9iamVjdC5rZXlzKG9wdG5zKS5maWx0ZXIoKGspID0+IHR5cGVvZiBvcHRuc1trXSA9PT0gJ2Jvb2xlYW4nKS5mb3JFYWNoKChrKSA9PiBuZXdQcm9wc1trXSA9ICFvcHRuc1trXSk7XG4gICAgICAgICAgICBwcm9wcy5maWx0ZXIoKHApID0+IHAuY2hvaWNlcyAhPT0gbnVsbClcbiAgICAgICAgICAgICAgICAuZm9yRWFjaCgocCkgPT4gbmV3UHJvcHNbcC5uYW1lXSA9IHAuY2hvaWNlcy5maW5kKChjKSA9PiBjICE9PSBvcHRuc1twLm5hbWVdKSk7XG4gICAgICAgICAgICB2aWV3ZXIuc2V0T3B0aW9ucyhuZXdQcm9wcyk7XG4gICAgICAgICAgICB5aWVsZCBkZWxheSgzMDApO1xuICAgICAgICAgICAgY29uc3QgbGF5b3V0ID0gdHYuc2F2ZUxheW91dCgpO1xuICAgICAgICAgICAgY29uc3Qgb2xkUHJvcHMgPSB2aWV3ZXIuZ2V0T3B0aW9ucygpLmxvb2s7XG4gICAgICAgICAgICB0di5yZXNldExheW91dCgpO1xuICAgICAgICAgICAgcmVzLnB1c2goQXJyYXkuZnJvbSh0di52aWV3ZXJzKS5sZW5ndGgpO1xuICAgICAgICAgICAgdHYubG9hZExheW91dChsYXlvdXQpO1xuICAgICAgICAgICAgc2VsZWN0b3IgPSBgJHt2aWV3ZXJOYW1lfSAke3RhZ31gO1xuICAgICAgICAgICAgeWllbGQgYXdhaXRDaGVjaygoKSA9PiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKHNlbGVjdG9yKSAhPT0gbnVsbCwgJ2Nhbm5vdCBsb2FkIHZpZXdlciBmcm9tIGxheW91dCcsIDMwMDApO1xuICAgICAgICAgICAgcmVzLnB1c2goQXJyYXkuZnJvbSh0di52aWV3ZXJzKS5sZW5ndGgpO1xuICAgICAgICAgICAgdmlld2VyID0gQXJyYXkuZnJvbSh0di52aWV3ZXJzKS5maW5kKCh2KSA9PiB2LnR5cGUgIT09ICdHcmlkJyk7XG4gICAgICAgICAgICBleHBlY3RBcnJheShyZXMsIFsyLCAxLCAyXSk7XG4gICAgICAgICAgICBleHBlY3QoSlNPTi5zdHJpbmdpZnkodmlld2VyLmdldE9wdGlvbnMoKS5sb29rKSwgSlNPTi5zdHJpbmdpZnkob2xkUHJvcHMpKTtcbiAgICAgICAgfVxuICAgICAgICBmaW5hbGx5IHtcbiAgICAgICAgICAgIHR2LmNsb3NlKCk7XG4gICAgICAgICAgICBncm9rLnNoZWxsLmNsb3NlVGFibGUoZGYpO1xuICAgICAgICAgICAgREcuQmFsbG9vbi5jbG9zZUFsbCgpO1xuICAgICAgICB9XG4gICAgfSk7XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247YmFzZTY0LGV5SjJaWEp6YVc5dUlqb3pMQ0ptYVd4bElqb2lkR1Z6ZEM1cWN5SXNJbk52ZFhKalpWSnZiM1FpT2lJaUxDSnpiM1Z5WTJWeklqcGJJblJsYzNRdWRITWlYU3dpYm1GdFpYTWlPbHRkTENKdFlYQndhVzVuY3lJNklqczdPenM3T3pzN08wRkJRVUVzVDBGQlR5eExRVUZMTEVsQlFVa3NUVUZCVFN4dFFrRkJiVUlzUTBGQlF6dEJRVU14UXl4UFFVRlBMRXRCUVVzc1JVRkJSU3hOUVVGTkxHbENRVUZwUWl4RFFVRkRPMEZCUzNSRExFMUJRVTBzWjBKQlFXZENMRWRCUVVjc1MwRkJTeXhEUVVGRE8wRkJReTlDTEUxQlFVMHNhVUpCUVdsQ0xFZEJRVWNzVVVGQlVTeERRVUZETzBGQlJXNURMRTFCUVUwc1EwRkJReXhOUVVGTkxFdEJRVXNzUjBGTFpDeEZRVUZGTEVOQlFVTTdRVUZGVUN4TlFVRk5MR2RDUVVGblFpeEhRVUZITEZsQlFWa3NRMEZCUXp0QlFVTjBReXhOUVVGTkxHRkJRV0VzUjBGQk5rSXNSVUZCUlN4RFFVRkRPMEZCUTI1RUxFMUJRVTBzUTBGQlF5eEpRVUZKTEdWQlFYVkNMRU5CUVVNN1FVRkZia01zVFVGQlRTeExRVUZYTEUxQlFVMHNRMEZMZEVJN1FVRk1SQ3hYUVVGcFFpeE5RVUZOTzBsQlEzSkNMRk5CUVdkQ0xFOUJRVThzUTBGQlF5eExRVUZWTEVWQlFVVXNTVUZCWVR0UlFVTXZReXhKUVVGSkxFdEJRVXNzU1VGQlNTeEpRVUZKTzFsQlEyWXNUVUZCVFN4SlFVRkpMRXRCUVVzc1EwRkJReXhIUVVGSExFbEJRVWtzU1VGQlNTeEpRVUZKTEVOQlFVTXNRMEZCUXl4RFFVRkRMRTlCUVU4c1EwRkJReXhEUVVGRExFTkJRVU1zU1VGQlNTeGpRVUZqTEVOQlFVTXNRMEZCUXp0SlFVTndSU3hEUVVGRE8wbEJTR1VzWTBGQlR5eFZRVWQwUWl4RFFVRkJPMEZCUTBnc1EwRkJReXhGUVV4blFpeE5RVUZOTEV0QlFVNHNUVUZCVFN4UlFVdDBRanRCUVdGRUxFMUJRVTBzVDBGQlR5eFhRVUZYTzBsQlNYUkNMRmxCUVZrc1kwRkJkMElzUlVGQlJTeE5RVUZuUWp0UlFVaDBSQ3h0UWtGQll5eEhRVUZITEVsQlFVa3NRMEZCUXp0UlFVTjBRaXhYUVVGTkxFZEJRVWNzUzBGQlN5eERRVUZETzFGQlIySXNTVUZCU1N4alFVRmpMRXRCUVVzc1UwRkJVenRaUVVGRkxFbEJRVWtzUTBGQlF5eGpRVUZqTEVkQlFVY3NZMEZCWXl4RFFVRkRPMUZCUTNaRkxFbEJRVWtzVFVGQlRTeExRVUZMTEZOQlFWTTdXVUZCUlN4SlFVRkpMRU5CUVVNc1RVRkJUU3hIUVVGSExFMUJRVTBzUTBGQlF6dEpRVU5xUkN4RFFVRkRPMGxCUVVFc1EwRkJRenREUVVOSU8wRkJSVVFzVFVGQlRTeFBRVUZQTEVsQlFVazdTVUZOWml4WlFVRlpMRkZCUVdkQ0xFVkJRVVVzU1VGQldTeEZRVUZGTEVsQlFYZENMRVZCUVVVc1QwRkJjVUk3TzFGQlEzcEdMRWxCUVVrc1EwRkJReXhSUVVGUkxFZEJRVWNzVVVGQlVTeERRVUZETzFGQlEzcENMRWxCUVVrc1EwRkJReXhKUVVGSkxFZEJRVWNzU1VGQlNTeERRVUZETzFGQlEycENMRTlCUVU4c1lVRkJVQ3hQUVVGUExHTkJRVkFzVDBGQlR5eEpRVUZRTEU5QlFVOHNSMEZCU3l4RlFVRkZMRVZCUVVNN1VVRkRaaXhOUVVGQkxFOUJRVThzUTBGQlF5eFBRVUZQTEc5RFFVRm1MRTlCUVU4c1EwRkJReXhQUVVGUExFZEJRVXNzWjBKQlFXZENMRVZCUVVNN1VVRkRja01zU1VGQlNTeERRVUZETEU5QlFVOHNSMEZCUnl4UFFVRlBMRU5CUVVNN1VVRkRka0lzU1VGQlNTeERRVUZETEVsQlFVa3NSMEZCUnl4SFFVRjFRaXhGUVVGRk8xbEJRMjVETEU5QlFVOHNTVUZCU1N4UFFVRlBMRU5CUVVNc1EwRkJUeXhQUVVGUExFVkJRVVVzVFVGQlRTeEZRVUZGTEVWQlFVVTdaMEpCUXpORExFbEJRVWtzVFVGQlRTeEhRVUZITEVWQlFVVXNRMEZCUXp0blFrRkRhRUlzU1VGQlNUdHZRa0ZEUml4TlFVRk5MRWRCUVVjc1RVRkJUU3hKUVVGSkxFVkJRVVVzUTBGQlF6dHBRa0ZEZGtJN1owSkJRVU1zVDBGQlR5eERRVUZOTEVWQlFVVTdiMEpCUTJZc1RVRkJUU3hEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETzJsQ1FVTllPMmRDUVVORUxFOUJRVThzUTBGQlF5eE5RVUZOTEVOQlFVTXNRMEZCUXp0WlFVTnNRaXhEUVVGRExFTkJRVUVzUTBGQlF5eERRVUZETzFGQlEwd3NRMEZCUXl4RFFVRkJMRU5CUVVNN1NVRkRTaXhEUVVGRE8wTkJRMFk3UVVGRlJDeE5RVUZOTEZWQlFXZENMRk5CUVZNc1EwRkJTU3hMUVVGdlFpeEZRVU55UkN4UFFVRXdRaXhGUVVGRkxFOUJRVzFDTEVWQlFVVXNTMEZCWVN4RFFVRkRPenRSUVVNdlJDeEpRVUZKTEVkQlFXbENMRU5CUVVNN1VVRkRkRUlzVDBGQlR5eEpRVUZKTEU5QlFVOHNRMEZCUXl4RFFVRkRMRTlCUVU4c1JVRkJSU3hOUVVGTkxFVkJRVVVzUlVGQlJUdFpRVU55UXl4SFFVRkhMRWRCUVVjc1MwRkJTeXhEUVVGRExGTkJRVk1zUTBGQlF5eERRVUZETEVsQlFWTXNSVUZCUlN4RlFVRkZPMmRDUVVOc1F5eEpRVUZKTzI5Q1FVTkdMRTlCUVU4c1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF6dHBRa0ZEWmp0blFrRkJReXhQUVVGUExFTkJRVU1zUlVGQlJUdHZRa0ZEVml4TlFVRk5MRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03YVVKQlExZzdaMEpCUTBRc1IwRkJSeXhEUVVGRExGZEJRVmNzUlVGQlJTeERRVUZETzJkQ1FVTnNRaXhQUVVGUExFTkJRVU1zU1VGQlNTeERRVUZETEVOQlFVTTdXVUZEYUVJc1EwRkJReXhEUVVGRExFTkJRVU03V1VGRFNDeFZRVUZWTEVOQlFVTXNSMEZCUnl4RlFVRkZPMmRDUVVOa0xFZEJRVWNzUTBGQlF5eFhRVUZYTEVWQlFVVXNRMEZCUXp0blFrRkRiRUlzZDBSQlFYZEVPMmRDUVVONFJDeE5RVUZOTEVOQlFVTXNVMEZCVXl4RFFVRkRMRU5CUVVNN1dVRkRjRUlzUTBGQlF5eEZRVUZGTEVWQlFVVXNRMEZCUXl4RFFVRkRPMWxCUTFBc1QwRkJUeXhGUVVGRkxFTkJRVU03VVVGRFdpeERRVUZETEVOQlFVTXNRMEZCUXp0SlFVTk1MRU5CUVVNN1EwRkJRVHRCUVVWRUxFMUJRVTBzVlVGQlZTeEpRVUZKTEVOQlFVTXNTVUZCV1N4RlFVRkZMRWxCUVhkQ0xFVkJRVVVzVDBGQmNVSTdTVUZEYUVZc1NVRkJTU3hMUVVGTExFTkJRVU1zWlVGQlpTeERRVUZETEVsQlFVa3NVMEZCVXp0UlFVTnlReXhMUVVGTExFTkJRVU1zWlVGQlpTeERRVUZETEVkQlFVY3NSVUZCUlN4RFFVRkRPMGxCUXpsQ0xFbEJRVWtzUzBGQlN5eERRVUZETEdWQlFXVXNRMEZCUXl4RFFVRkRMRXRCUVVzc1NVRkJTU3hUUVVGVE8xRkJRek5ETEV0QlFVc3NRMEZCUXl4bFFVRmxMRU5CUVVNc1EwRkJReXhMUVVGTExFZEJRVWNzUlVGQlJTeERRVUZETzBsQlEzQkRMRXRCUVVzc1EwRkJReXhsUVVGbExFTkJRVU1zUTBGQlF5eExRVUZOTEVOQlFVTXNTVUZCU1N4RFFVRkRMRWxCUVVrc1NVRkJTU3hEUVVGRExHVkJRV1VzUlVGQlJTeEpRVUZKTEVWQlFVVXNTVUZCU1N4RlFVRkZMRTlCUVU4c1EwRkJReXhEUVVGRExFTkJRVU03UVVGRGNrWXNRMEZCUXp0QlFVVkVMR2RHUVVGblJqdEJRVU5vUml4TlFVRk5MRlZCUVZVc1RVRkJUU3hEUVVGRExFMUJRVmNzUlVGQlJTeFhRVUZuUWl4SlFVRkpMRVZCUVVVc1MwRkJZenRKUVVOMFJTeEpRVUZKTEV0QlFVczdVVUZEVUN4TFFVRkxMRWRCUVVjc1IwRkJSeXhMUVVGTExFbEJRVWtzUTBGQlF6czdVVUZEYkVJc1MwRkJTeXhIUVVGSExFVkJRVVVzUTBGQlF6dEpRVU5vUWl4SlFVRkpMRTFCUVUwc1MwRkJTeXhSUVVGUk8xRkJRM0pDTEUxQlFVMHNTVUZCU1N4TFFVRkxMRU5CUVVNc1IwRkJSeXhMUVVGTExHRkJRV0VzVVVGQlVTeFhRVUZYTEUxQlFVMHNSMEZCUnl4RFFVRkRMRU5CUVVNN1FVRkRka1VzUTBGQlF6dEJRVVZFTEUxQlFVMHNWVUZCVlN4WFFVRlhMRU5CUVVNc1RVRkJZeXhGUVVGRkxGRkJRV2RDTEVWQlFVVXNVMEZCVXl4SFFVRkhMRXRCUVVzc1JVRkJSU3hMUVVGak8wbEJRemRHTEVsQlFVa3NRMEZCUXl4TlFVRk5MRXRCUVVzc1RVRkJUU3hEUVVGRExHbENRVUZwUWl4SlFVRkpMRkZCUVZFc1MwRkJTeXhOUVVGTkxFTkJRVU1zYVVKQlFXbENMRU5CUVVNN1VVRkRPVVVzUTBGQlF5eE5RVUZOTEV0QlFVc3NUVUZCVFN4RFFVRkRMR2xDUVVGcFFpeEpRVUZKTEZGQlFWRXNTMEZCU3l4TlFVRk5MRU5CUVVNc2FVSkJRV2xDTEVOQlFVTTdVVUZET1VVc1EwRkJReXhOUVVGTkxFdEJRVXNzVFVGQlRTeERRVUZETEVkQlFVY3NTVUZCU1N4UlFVRlJMRXRCUVVzc1RVRkJUU3hEUVVGRExFZEJRVWNzUTBGQlF5eEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRMRTFCUVUwc1EwRkJReXhKUVVGSkxFdEJRVXNzUTBGQlF5eFJRVUZSTEVOQlFVTXNRMEZCUXp0UlFVTXhSaXhQUVVGUE8wbEJRMVFzVFVGQlRTeFJRVUZSTEVkQlFVY3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhOUVVGTkxFZEJRVWNzVVVGQlVTeERRVUZETEVkQlFVY3NVMEZCVXl4RFFVRkRPMGxCUTNwRUxFMUJRVTBzUTBGQlF5eFJRVUZSTEVWQlFVVXNTVUZCU1N4RlFVRkZMRWRCUVVjc1MwRkJTeXhoUVVGTUxFdEJRVXNzWTBGQlRDeExRVUZMTEVkQlFVa3NSVUZCUlN4cFFrRkJhVUlzVTBGQlV5eEhRVUZITEVOQlFVTXNRMEZCUXp0SlFVTndSU3hKUVVGSkxFTkJRVU1zVVVGQlVUdFJRVU5ZTEUxQlFVMHNTVUZCU1N4TFFVRkxMRU5CUVVNc1dVRkJXU3hSUVVGUkxGTkJRVk1zVFVGQlRTeHBRa0ZCYVVJc1UwRkJVeXhIUVVGSExFTkJRVU1zUTBGQlF6dEJRVU4wUml4RFFVRkRPMEZCUlVRc1RVRkJUU3hWUVVGVkxGZEJRVmNzUTBGQlF5eE5RVUZwUWl4RlFVRkZMRkZCUVcxQ0xFVkJRVVVzUzBGQll6dEpRVU5vUml4TlFVRk5MR2RDUVVGblFpeEhRVUZITEZGQlFWRXNRMEZCUXl4UlFVRlJMRU5CUVVNN1NVRkRNME1zVFVGQlRTeGpRVUZqTEVkQlFVY3NUVUZCVFN4RFFVRkRMRkZCUVZFc1EwRkJRenRKUVVOMlF5eE5RVUZOTEVOQlFVTXNZMEZCWXl4RlFVRkZMR2RDUVVGblFpeEZRVUZGTEVkQlFVY3NTMEZCU3l4aFFVRk1MRXRCUVVzc1kwRkJUQ3hMUVVGTExFZEJRVWtzUlVGQlJTeGhRVUZoTEVOQlFVTXNRMEZCUXp0SlFVVjBSU3hMUVVGTExFMUJRVTBzVFVGQlRTeEpRVUZKTEZGQlFWRXNRMEZCUXl4UFFVRlBMRVZCUVVVN1VVRkRja01zVFVGQlRTeFpRVUZaTEVkQlFVY3NUVUZCVFN4RFFVRkRMRTlCUVU4c1EwRkJReXhOUVVGTkxFTkJRVU1zVFVGQlRTeERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRPMUZCUTNoRUxFbEJRVWtzV1VGQldTeEpRVUZKTEVsQlFVazdXVUZEZEVJc1RVRkJUU3hKUVVGSkxFdEJRVXNzUTBGQlF5eFZRVUZWTEUxQlFVMHNRMEZCUXl4SlFVRkpMRmxCUVZrc1EwRkJReXhEUVVGRE8xRkJRM0pFTEVsQlFVa3NXVUZCV1N4RFFVRkRMRWxCUVVrc1NVRkJTU3hOUVVGTkxFTkJRVU1zU1VGQlNUdFpRVU5zUXl4TlFVRk5MRWxCUVVrc1MwRkJTeXhEUVVGRExGVkJRVlVzVFVGQlRTeERRVUZETEVsQlFVa3NhMEpCUVd0Q0xFMUJRVTBzUTBGQlF5eEpRVUZKTEZGQlFWRXNXVUZCV1N4RFFVRkRMRWxCUVVrc1JVRkJSU3hEUVVGRExFTkJRVU03VVVGRGFrY3NTMEZCU3l4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExFVkJRVVVzUTBGQlF5eEhRVUZITEdkQ1FVRm5RaXhGUVVGRkxFTkJRVU1zUlVGQlJTeEZRVUZGTzFsQlEzcERMRTFCUVUwc1MwRkJTeXhIUVVGSExFMUJRVTBzUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNN1dVRkROVUlzVFVGQlRTeFhRVUZYTEVkQlFVY3NXVUZCV1N4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dFpRVU40UXl4SlFVRkpMRTFCUVUwc1EwRkJReXhKUVVGSkxFbEJRVWtzUlVGQlJTeERRVUZETEVsQlFVa3NRMEZCUXl4TFFVRkxPMmRDUVVNNVFpeFhRVUZYTEVOQlFVTXNWMEZCVnl4RlFVRkZMRXRCUVVzc1JVRkJSU3hOUVVGTkxFVkJRVVVzUzBGQlN5eERRVUZETEVOQlFVTTdhVUpCUXpWRExFbEJRVWtzVFVGQlRTeERRVUZETEVsQlFVa3NTVUZCU1N4RlFVRkZMRU5CUVVNc1NVRkJTU3hEUVVGRExGTkJRVk03WjBKQlEzWkRMRTFCUVUwc1EwRkJReXhYUVVGWExFTkJRVU1zVFVGQlRTeERRVUZETEV0QlFVc3NRMEZCUXl4RlFVRkZMRWxCUVVrc1JVRkJSU3hMUVVGTExFTkJRVU1zUTBGQlF6czdaMEpCUlM5RExFMUJRVTBzUTBGQlF5eFhRVUZYTEVWQlFVVXNTMEZCU3l4RlFVRkZMRXRCUVVzc1EwRkJReXhEUVVGRE8xTkJRM0pETzB0QlEwWTdRVUZEU0N4RFFVRkRPMEZCUlVRc1RVRkJUU3hWUVVGVkxGbEJRVmtzUTBGQlF5eE5RVUU0UWl4RlFVRkZMRkZCUVdkRE8wbEJRek5HTEV0QlFVc3NUVUZCVFN4RFFVRkRMRmRCUVZjc1JVRkJSU3hoUVVGaExFTkJRVU1zU1VGQlNTeE5RVUZOTEVOQlFVTXNUMEZCVHl4RFFVRkRMRkZCUVZFc1EwRkJReXhGUVVGRk8xRkJRMjVGTEVsQlFVa3NRMEZCUXl4TlFVRk5MRU5CUVVNc1kwRkJZeXhEUVVGRExGZEJRVmNzUTBGQlF6dFpRVU55UXl4TlFVRk5MRWxCUVVrc1MwRkJTeXhEUVVGRExITkNRVUZ6UWl4WFFVRlhMR0ZCUVdFc1EwRkJReXhEUVVGRE8xRkJSV3hGTEUxQlFVMHNWMEZCVnl4SFFVRkhMRTFCUVUwc1EwRkJReXhYUVVGWExFTkJRVU1zUTBGQlF6dFJRVU40UXl4SlFVRkpMRmRCUVZjc1dVRkJXU3hMUVVGTExFbEJRVWtzWVVGQllTeFpRVUZaTEV0QlFVczdXVUZEYUVVc1YwRkJWeXhEUVVGRExGZEJRVmNzUlVGQlJTeGhRVUZoTEVOQlFVTXNRMEZCUXp0aFFVTnlReXhKUVVGSkxGZEJRVmNzV1VGQldTeE5RVUZOTEVsQlFVa3NZVUZCWVN4WlFVRlpMRTFCUVUwN1dVRkRka1VzV1VGQldTeERRVUZETEZkQlFWY3NSVUZCUlN4aFFVRmhMRU5CUVVNc1EwRkJRenRoUVVOMFF5eEpRVUZKTEUxQlFVMHNRMEZCUXl4UlFVRlJMRU5CUVVNc1YwRkJWeXhEUVVGRExFbEJRVWtzVFVGQlRTeERRVUZETEZGQlFWRXNRMEZCUXl4aFFVRmhMRU5CUVVNN1dVRkRja1VzVjBGQlZ5eERRVUZETEZkQlFWY3NSVUZCUlN4aFFVRmhMRU5CUVVNc1EwRkJRenRoUVVOeVF5eEpRVUZKTEZkQlFWY3NTVUZCU1N4aFFVRmhPMWxCUTI1RExFMUJRVTBzU1VGQlNTeExRVUZMTEVOQlFVTXNZVUZCWVN4aFFVRmhMR05CUVdNc1YwRkJWeXhYUVVGWExGZEJRVmNzUjBGQlJ5eERRVUZETEVOQlFVTTdTMEZEYWtjN1FVRkRTQ3hEUVVGRE8wRkJSVVFzVFVGQlRTeFZRVUZWTEZkQlFWY3NRMEZCUXl4TlFVRnpRaXhGUVVGRkxGRkJRWGRDTzBsQlF6RkZMRTFCUVUwc1dVRkJXU3hIUVVGSExFMUJRVTBzUTBGQlF5eE5RVUZOTEVOQlFVTTdTVUZEYmtNc1RVRkJUU3hqUVVGakxFZEJRVWNzVVVGQlVTeERRVUZETEUxQlFVMHNRMEZCUXp0SlFVVjJReXhKUVVGSkxGbEJRVmtzU1VGQlNTeGpRVUZqTEVWQlFVVTdVVUZEYkVNc1RVRkJUU3hKUVVGSkxFdEJRVXNzUTBGQlF5d3dSRUZCTUVRc1dVRkJXU3hIUVVGSE8xbEJRM1pHTEdkRFFVRm5ReXhqUVVGakxFVkJRVVVzUTBGQlF5eERRVUZETzB0QlEzSkVPMGxCUlVRc1MwRkJTeXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVWQlFVVXNRMEZCUXl4SFFVRkhMRmxCUVZrc1JVRkJSU3hEUVVGRExFVkJRVVVzUlVGQlJUdFJRVU55UXl4SlFVRkpMRTFCUVUwc1EwRkJReXhEUVVGRExFTkJRVU1zV1VGQldTeExRVUZMTEVsQlFVa3NVVUZCVVN4RFFVRkRMRU5CUVVNc1EwRkJReXhaUVVGWkxFdEJRVXM3V1VGRE5VUXNWMEZCVnl4RFFVRkRMRTFCUVUwc1EwRkJReXhEUVVGRExFTkJRVU1zUlVGQlJTeFJRVUZSTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRoUVVOcVF5eEpRVUZKTEUxQlFVMHNRMEZCUXl4RFFVRkRMRU5CUVVNc1dVRkJXU3hOUVVGTkxFbEJRVWtzVVVGQlVTeERRVUZETEVOQlFVTXNRMEZCUXl4WlFVRlpMRTFCUVUwN1dVRkRia1VzV1VGQldTeERRVUZETEUxQlFVMHNRMEZCUXl4RFFVRkRMRU5CUVVNc1JVRkJSU3hSUVVGUkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0aFFVTnNReXhKUVVGSkxFMUJRVTBzUTBGQlF5eERRVUZETEVOQlFVTXNTVUZCU1N4UlFVRlJMRU5CUVVNc1EwRkJReXhEUVVGRE8xbEJReTlDTEUxQlFVMHNTVUZCU1N4TFFVRkxMRU5CUVVNc1dVRkJXU3hSUVVGUkxFTkJRVU1zUTBGQlF5eERRVUZETEdkQ1FVRm5RaXhEUVVGRExGTkJRVk1zVFVGQlRTeERRVUZETEVOQlFVTXNRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJRenRMUVVOcVJqdEJRVU5JTEVOQlFVTTdRVUZGUkN3eVFrRkJNa0k3UVVGRE0wSXNUVUZCVFN4VlFVRlZMRkZCUVZFc1EwRkJReXhSUVVGblFpeEZRVUZGTEUxQlFXdENMRVZCUVVVc1QwRkJlVUk3TzBsQlEzUkdMR1ZCUVdVc1IwRkJSeXhSUVVGUkxFTkJRVU03U1VGRE0wSXNUVUZCVFN4RlFVRkZMRU5CUVVNN1NVRkRWQ3hKUVVGSkxFdEJRVXNzUTBGQlF5eGxRVUZsTEVOQlFVTXNSVUZCUlR0UlFVTXhRaXhMUVVGTExFTkJRVU1zWlVGQlpTeERRVUZETEVOQlFVTXNTMEZCU3l4SFFVRkhMRTFCUVVFc1QwRkJUeXhoUVVGUUxFOUJRVThzZFVKQlFWQXNUMEZCVHl4RFFVRkZMRXRCUVVzc2JVTkJRVWtzU1VGQlNTeERRVUZETzFGQlEzUkVMRXRCUVVzc1EwRkJReXhsUVVGbExFTkJRVU1zUTBGQlF5eFBRVUZQTEVkQlFVY3NUMEZCVHl4aFFVRlFMRTlCUVU4c2RVSkJRVkFzVDBGQlR5eERRVUZGTEU5QlFVOHNRMEZCUXp0TFFVTnVSRHRCUVVOSUxFTkJRVU03UVVGRlJDeDFSa0ZCZFVZN1FVRkRka1lzVFVGQlRTeFZRVUZWTEUxQlFVMHNRMEZCUXl4TlFVRXlRanRKUVVOb1JDeEpRVUZKTEV0QlFVc3NRMEZCUXl4bFFVRmxMRU5CUVVNc1NVRkJTU3hUUVVGVE8xRkJRM0pETEV0QlFVc3NRMEZCUXl4bFFVRmxMRU5CUVVNc1IwRkJSeXhGUVVGRkxFTkJRVU03U1VGRE9VSXNTMEZCU3l4RFFVRkRMR1ZCUVdVc1EwRkJReXhEUVVGRExFMUJRVTBzUjBGQlJ5eE5RVUZOTEVOQlFVTTdRVUZEZWtNc1EwRkJRenRCUVVWRUxITkdRVUZ6Ump0QlFVTjBSaXhOUVVGTkxGVkJRVlVzUzBGQlN5eERRVUZETEV0QlFUQkNPMGxCUXpsRExFbEJRVWtzUzBGQlN5eERRVUZETEdWQlFXVXNRMEZCUXl4SlFVRkpMRk5CUVZNN1VVRkRja01zUzBGQlN5eERRVUZETEdWQlFXVXNRMEZCUXl4SFFVRkhMRVZCUVVVc1EwRkJRenRKUVVNNVFpeExRVUZMTEVOQlFVTXNaVUZCWlN4RFFVRkRMRU5CUVVNc1MwRkJTeXhIUVVGSExFdEJRVXNzUTBGQlF6dEJRVU4yUXl4RFFVRkRPMEZCUlVRc1UwRkJVeXhaUVVGWkxFTkJRVU1zUTBGQlV5eEZRVUZGTEVOQlFWVTdTVUZEZWtNc1QwRkJUeXhEUVVGRExFTkJRVU1zVDBGQlR5eERRVUZETEVsQlFVa3NUVUZCVFN4RFFVRkRMRU5CUVVNc1EwRkJReXhKUVVGSkxFVkJRVVVzU1VGQlNTeERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRTFCUVUwc1EwRkJReXhEUVVGRE8wRkJRM1pFTEVOQlFVTTdRVUZGUkN4TlFVRk5MRlZCUVdkQ0xHRkJRV0VzUTBGQlF5eFRRVUZwUWl4RlFVRkZMRTFCUVZrN08xRkJRMnBGTEVsQlFVa3NZVUZCWVN4RFFVRkRMRk5CUVZNc1EwRkJRenRaUVVGRkxFOUJRVTg3VVVGRGNrTXNUVUZCVFN4WFFVRlhMRWRCUVVjc1RVRkJUU3hEUVVGRExFTkJRVU1zUTBGQlF5eE5RVUZOTEVOQlFVTXNTMEZCU3l4RFFVRkRMRU5CUVVNc1EwRkJReXhMUVVGTExFTkJRVU03VVVGRGJFUXNTVUZCU1N4WFFVRlhMRU5CUVVNc1owSkJRV2RDTEVOQlFVTXNTMEZCU3l4VFFVRlRPMWxCUXpkRExFMUJRVTBzUTBGQlF5eEpRVUZKTEVOQlFVTXNWMEZCVnl4RFFVRkRMRU5CUVVNc1NVRkJTU3hEUVVGRExFTkJRVU1zUTBGQlF5eEZRVUZGTEVWQlFVVXNRMEZCUXl4RFFVRkRMRU5CUVVNc1ZVRkJWU3hEUVVGRExHZENRVUZuUWl4RFFVRkRMRU5CUVVNc1JVRkJSVHRaUVVOMFJTeGhRVUZoTEVOQlFVTXNVMEZCVXl4RFFVRkRMRWRCUVVjc1NVRkJTU3hEUVVGRE8xbEJRMmhETEU5QlFVODdVMEZEVWp0UlFVTkVMRTFCUVUwc1pVRkJaU3hIUVVGSExFVkJRVVVzUTBGQlF6dFJRVU16UWl4TlFVRk5MR0ZCUVdFc1IwRkJSeXhOUVVGTkxFbEJRVWtzUTBGQlF5eEpRVUZKTEVOQlFVTXNVMEZCVXl4RFFVRkRMRTFCUVUwc1EwRkJReXhwUWtGQmFVSXNVMEZCVXl4SFFVRkhMRU5CUVVNc1EwRkJReXhKUVVGSkxFVkJRVVVzUTBGQlF6dFJRVU0zUml4TlFVRk5MRXRCUVVzc1IwRkJSeXhoUVVGaExFTkJRVU1zVFVGQlRTeERRVUZETEVOQlFVTXNRMEZCUXl4RlFVRkZMRVZCUVVVc1EwRkJReXhEUVVGRExFTkJRVU1zVFVGQlRTeERRVUZETEZkQlFWY3NRMEZCUXl4RFFVRkRMRU5CUVVNN1VVRkRha1VzU1VGQlNTeExRVUZMTEVOQlFVTXNUVUZCVFN4RlFVRkZPMWxCUTJoQ0xFdEJRVXNzVFVGQlRTeERRVUZETEVsQlFVa3NTMEZCU3p0blFrRkRia0lzVFVGQlRTeERRVUZETEVOQlFVTXNTMEZCU3l4RlFVRkZMRU5CUVVNN1UwRkRia0k3VVVGRFJDeE5RVUZOTEVkQlFVY3NSMEZCUnl4SlFVRkpMRTFCUVUwc1EwRkJReXh0UkVGQmJVUXNRMEZCUXl4RFFVRkRPMUZCUXpWRkxFdEJRVXNzVFVGQlRTeERRVUZETEVsQlFVa3NZVUZCWVN4RlFVRkZPMWxCUXpkQ0xFMUJRVTBzUzBGQlN5eEhRVUZITEVOQlFVTXNRMEZCUXl4UFFVRlBMRU5CUVVNc1RVRkJUU3hEUVVGRExFTkJRVU03V1VGRGFFTXNTVUZCU1N4RFFVRkRMRU5CUVVNc1MwRkJTeXhKUVVGSkxFdEJRVXNzUTBGQlF5eFBRVUZQTEVOQlFVTXNTMEZCU3l4RFFVRkRMRWxCUVVrc1MwRkJTeXhEUVVGRExFMUJRVTBzUTBGQlF6dG5Ra0ZCUlN4VFFVRlRPMWxCUXk5RUxFdEJRVXNzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4RlFVRkZMRU5CUVVNc1IwRkJSeXhMUVVGTExFTkJRVU1zVFVGQlRTeEZRVUZGTEVOQlFVTXNSVUZCUlN4RlFVRkZPMmRDUVVOeVF5eE5RVUZOTEVkQlFVY3NSMEZCU1N4TFFVRkxMRU5CUVVNc1EwRkJReXhEUVVGWkxFTkJRVU1zVVVGQlVTeERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRPMmRDUVVNdlF5eE5RVUZOTEVkQlFVY3NSMEZCYVVRc1JVRkJSU3hEUVVGRE8yZENRVU0zUkN4TFFVRkxMRU5CUVVNc1NVRkJTU3hEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETEU5QlFVOHNRMEZCUXl4RFFVRkRMRWRCUVVjc1JVRkJSU3hGUVVGRk8yOUNRVU01UWl4SlFVRkpMRWRCUVVjc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eFZRVUZWTEVOQlFVTXNUVUZCVFN4RFFVRkRPM2RDUVVGRkxFZEJRVWNzUTBGQlF5eE5RVUZOTEVOQlFVTXNSMEZCUnl4SFFVRkhMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03ZVVKQlF5OURMRWxCUVVrc1IwRkJSeXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEZWQlFWVXNRMEZCUXl4TlFVRk5MRU5CUVVNN2QwSkJRVVVzUjBGQlJ5eERRVUZETEUxQlFVMHNRMEZCUXl4SFFVRkhMRkZCUVZFc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0NVFrRkRPVVFzU1VGQlNTeEhRVUZITEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1ZVRkJWU3hEUVVGRExFdEJRVXNzUTBGQlF6dDNRa0ZCUlN4SFFVRkhMRU5CUVVNc1MwRkJTeXhEUVVGRExFZEJRVWNzUjBGQlJ5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRPMmRDUVVONlJDeERRVUZETEVOQlFVTXNRMEZCUXp0blFrRkRTQ3hOUVVGTkxFbEJRVWtzUjBGQlJ5eEpRVUZKTEVsQlFVa3NRMEZCUXl4blFrRkJaMElzUlVGQlJTeExRVUZMTEVOQlFVTXNUVUZCVFN4TFFVRkxMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRMRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU1zU1VGQlNTeEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRVZCUVVVc1JVRkJSU3hIUVVGVExFVkJRVVU3YjBKQlEzSkhMRTFCUVUwc1IwRkJSeXhIUVVGSExFMUJRVTBzU1VGQlNTeERRVUZETEZOQlFWTXNRMEZCUXl4SlFVRkpMRU5CUVVNc1dVRkJXU3hEUVVGRExFdEJRVXNzUTBGQlF5eERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRE8yOUNRVU5xUlN4SlFVRkpMRWRCUVVjc1EwRkJReXhKUVVGSk8zZENRVUZGTEUxQlFVMHNTMEZCU3l4RFFVRkRMRWRCUVVjc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF6dHZRa0ZEY0VNc05FTkJRVFJETzI5Q1FVTTFReXhKUVVGSkxFOUJRVThzUjBGQlJ5eExRVUZMTEZOQlFWTXNTVUZCU1N4RFFVRkRMRWRCUVVjN2QwSkJRVVVzVFVGQlRTeFhRVUZYTEV0QlFVc3NRMEZCUXl4RFFVRkRMRU5CUVVNc2QwSkJRWGRDTEVkQlFVY3NSVUZCUlN4RFFVRkRPMmRDUVVNdlJpeERRVUZETEVOQlFVRXNSVUZCUlN4RlFVRkRMRlZCUVZVc1JVRkJSU3hIUVVGSExFTkJRVU1zU1VGQlNTeEZRVUZETEVOQlFVTXNRMEZCUXp0blFrRkRNMElzU1VGQlNTeEhRVUZITEVOQlFVTXNSMEZCUnl4RlFVRkZPMjlDUVVOWUxFMUJRVTBzUjBGQlJ5eEhRVUZYTEdkQ1FVRm5RaXhIUVVGSExFbEJRVWtzUjBGQlJ5eEhRVUZITEVOQlFVTXNSMEZCUnl4RFFVRkRPMjlDUVVOMFJDeEpRVUZKTEVOQlFVTXNVVUZCVVN4SFFVRkhMRWRCUVVjc1EwRkJRenR2UWtGRGNFSXNTVUZCU1N4WFFVRlhMRU5CUVVNc1IwRkJSeXhEUVVGRExFdEJRVXNzVTBGQlV6dDNRa0ZEYUVNc1YwRkJWeXhEUVVGRExFZEJRVWNzUTBGQlF5eEhRVUZITEVWQlFVTXNTMEZCU3l4RlFVRkZMRVZCUVVVc1JVRkJSU3hMUVVGTExFVkJRVVVzU1VGQlNTeEZRVUZETEVOQlFVTTdiMEpCUXpsRExGZEJRVmNzUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4TFFVRkxMRU5CUVVNc1NVRkJTU3hEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETzJsQ1FVTnVRenR4UWtGQlRUdHZRa0ZEVEN4bFFVRmxMRU5CUVVNc1NVRkJTU3hEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETzJsQ1FVTTFRanRoUVVOR08xTkJRMFk3VVVGRFJDeGhRVUZoTEVOQlFVTXNVMEZCVXl4RFFVRkRMRWRCUVVjc1NVRkJTU3hEUVVGRE8xRkJRMmhETEVsQlFVa3NRMEZCUXl4bFFVRmxMRU5CUVVNc1RVRkJUVHRaUVVGRkxFOUJRVTg3VVVGRGNFTXNWMEZCVnl4RFFVRkRMR2RDUVVGblFpeERRVUZETEVkQlFVY3NSVUZCUXl4TFFVRkxMRVZCUVVVc1pVRkJaU3hGUVVGRkxFdEJRVXNzUlVGQlJTeEpRVUZKTEVWQlFVTXNRMEZCUXp0SlFVTjRSU3hEUVVGRE8wTkJRVUU3UVVGRlJDeE5RVUZOTEZWQlFXZENMRkZCUVZFc1EwRkJReXhQUVVGMVJUczdPenRSUVVOd1J5eE5RVUZOTEZGQlFWRXNSMEZCUnl4TlFVRkJMRTFCUVVFc1NVRkJTU3hEUVVGRExGTkJRVk1zUTBGQlF5eGpRVUZqTEVWQlFVVXNNRU5CUVVVc1NVRkJTU3d3UTBGQlJTeFBRVUZQTEVOQlFVTTdVVUZEYUVVc1RVRkJUU3hoUVVGaExFTkJRVU1zVVVGQlVTeERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRPMUZCUTJwRExFMUJRVTBzVDBGQlR5eEhRVU4xUkN4RlFVRkZMRU5CUVVNN1VVRkRka1VzVDBGQlR5eERRVUZETEVkQlFVY3NRMEZCUXl4bFFVRmxMRU5CUVVNc1EwRkJRenRSUVVNM1FpeFBRVUZQTEdGQlFWQXNUMEZCVHl4alFVRlFMRTlCUVU4c1NVRkJVQ3hQUVVGUExFZEJRVXNzUlVGQlJTeEZRVUZETzFGQlEyWXNXVUZCUVN4UFFVRlJMRVZCUVVNc1YwRkJWeXgxUTBGQldDeFhRVUZYTEVkQlFVc3NTVUZCU1N4WFFVRlhMRVZCUVVVc1JVRkJRenRSUVVNelF5eEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRMRk5CUVZNc1IwRkJSeXhGUVVGRkxFTkJRVU03VVVGRE1VSXNTMEZCU3l4TlFVRk5MRU5CUVVNc1IwRkJSeXhGUVVGRkxFdEJRVXNzUTBGQlF5eEpRVUZKTEUxQlFVMHNRMEZCUXl4UFFVRlBMRU5CUVVNc1MwRkJTeXhEUVVGRExFVkJRVVU3V1VGRGFFUXNTVUZCU1N4RFFVRkJMRTlCUVU4c1lVRkJVQ3hQUVVGUExIVkNRVUZRTEU5QlFVOHNRMEZCUlN4UlFVRlJMRXRCUVVrc1UwRkJVeXhGUVVGRk8yZENRVU5zUXl4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExGZEJRVmNzUlVGQlJTeERRVUZETEZWQlFWVXNRMEZCUXl4UFFVRlBMR0ZCUVZBc1QwRkJUeXgxUWtGQlVDeFBRVUZQTEVOQlFVVXNVVUZCVVN4RFFVRkRMRmRCUVZjc1JVRkJSU3hEUVVGRE8yOUNRVU5vUlN4VFFVRlRPMkZCUTFvN1dVRkRSQ3hQUVVGUExFTkJRVU1zUjBGQlJ5eERRVUZETEZkQlFWY3NSMEZCUnl4WFFVRlhMRU5CUVVNc1EwRkJRenRaUVVOMlF5eEpRVUZKTzJkQ1FVTkdMRWxCUVVrc1MwRkJTeXhEUVVGRExFMUJRVTA3YjBKQlEyUXNUVUZCVFN4TFFVRkxMRU5CUVVNc1RVRkJUU3hGUVVGRkxFTkJRVU03WVVGRGVFSTdXVUZCUXl4UFFVRlBMRU5CUVUwc1JVRkJSVHRuUWtGRFppeExRVUZMTEVOQlFVTXNXVUZCV1N4SFFVRkhMRU5CUVVNc1EwRkJReXhSUVVGUkxFVkJRVVVzUTBGQlF6dGhRVU51UXp0WlFVTkVMRTFCUVUwc1EwRkJReXhIUVVGSExFMUJRVUVzUzBGQlN5eERRVUZETEV0QlFVc3NiVU5CUVVrc1JVRkJSU3hEUVVGRE8xbEJRelZDTEUxQlFVMHNSMEZCUnl4SFFVRkhMRVZCUVVVc1EwRkJRenRaUVVObUxFbEJRVWtzUzBGQlN5eERRVUZETEV0QlFVc3NSVUZCUlR0blFrRkRaaXhMUVVGTExFbEJRVWtzUTBGQlF5eEhRVUZITEVOQlFVTXNSVUZCUlN4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFMUJRVTBzUlVGQlJTeERRVUZETEVWQlFVVXNSVUZCUlR0dlFrRkRha01zUjBGQlJ5eERRVUZETEVsQlFVa3NRMEZCUXl4TlFVRk5MRkZCUVZFc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEVWQlFVVXNUMEZCVHl4aFFVRlFMRTlCUVU4c2RVSkJRVkFzVDBGQlR5eERRVUZGTEVsQlFVa3NSVUZCUlN4TFFVRkxMRU5CUVVNc1QwRkJUeXhGUVVGRkxGRkJRVkVzUTBGQlF5eEpRVUZKTEVOQlFVTXNRMEZCUXl4RFFVRkRPMjlDUVVNMVJTeEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRMRkZCUVZFc1JVRkJSU3hEUVVGRE8yOUNRVU4wUWl4RlFVRkZMRU5CUVVNc1QwRkJUeXhEUVVGRExGRkJRVkVzUlVGQlJTeERRVUZETzJsQ1FVTjJRanRoUVVOR08ybENRVUZOTzJkQ1FVTk1MRXRCUVVzc1NVRkJTU3hEUVVGRExFZEJRVWNzUTBGQlF5eEZRVUZGTEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNc1RVRkJUU3hGUVVGRkxFTkJRVU1zUlVGQlJUdHZRa0ZETDBJc1IwRkJSeXhEUVVGRExFbEJRVWtzUTBGQlF5eE5RVUZOTEZGQlFWRXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRExFVkJRVVVzVDBGQlR5eGhRVUZRTEU5QlFVOHNkVUpCUVZBc1QwRkJUeXhEUVVGRkxFbEJRVWtzUlVGQlJTeExRVUZMTEVOQlFVTXNUMEZCVHl4RlFVRkZMRkZCUVZFc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF5eERRVUZETzJGQlF5OUZPMWxCUTBRc1RVRkJUU3hKUVVGSkxFZEJRVWNzUTBGQlF5eE5RVUZOTEU5QlFVOHNRMEZCUXl4SFFVRkhMRU5CUVVNc1IwRkJSeXhEUVVGRExFTkJRVU1zUTBGQlF5eE5RVUZOTEVOQlFVTXNRMEZCUXl4RFFVRkRMRVZCUVVVc1JVRkJSU3hEUVVGRExFTkJRVU1zUTBGQlF5eE5RVUZOTEVsQlFVa3NVMEZCVXl4RFFVRkRMRU5CUVVNN1dVRkRNMFVzU1VGQlNUdG5Ra0ZEUml4SlFVRkpMRXRCUVVzc1EwRkJReXhMUVVGTE8yOUNRVU5pTEUxQlFVMHNTMEZCU3l4RFFVRkRMRXRCUVVzc1JVRkJSU3hEUVVGRE8yRkJRM1pDTzFsQlFVTXNUMEZCVHl4RFFVRk5MRVZCUVVVN1owSkJRMllzUzBGQlN5eERRVUZETEZkQlFWY3NSMEZCUnl4RFFVRkRMRU5CUVVNc1VVRkJVU3hGUVVGRkxFTkJRVU03WVVGRGJFTTdXVUZEUkN4MVFrRkJkVUk3V1VGRGRrSXNlVUpCUVhsQ08xbEJRM3BDTEhsQ1FVRjVRanRaUVVONlFpeEpRVUZKTEV0QlFVc3NRMEZCUXl4WFFVRlhPMmRDUVVOdVFpeEpRVUZKTEVOQlFVTXNTVUZCU1N4RFFVRkRMRVZCUVVNc1VVRkJVU3hGUVVGRkxFZEJRVWNzUlVGQlJTeEpRVUZKTEVWQlFVVXNUVUZCVFN4RlFVRkZMRTFCUVUwc1JVRkJSU3hMUVVGTExFTkJRVU1zVjBGQlZ5eEZRVUZGTEU5QlFVOHNSVUZCUlN4TFFVRkxMRVZCUVVVc1JVRkJSU3hGUVVGRkxFTkJRVU1zUlVGQlJTeFBRVUZQTEVWQlFVVXNTMEZCU3l4RlFVRkRMRU5CUVVNc1EwRkJRenRaUVVNM1J5eEpRVUZKTEV0QlFVc3NRMEZCUXl4WlFVRlpPMmRDUVVOd1FpeEpRVUZKTEVOQlFVTXNTVUZCU1N4RFFVRkRMRVZCUVVNc1VVRkJVU3hGUVVGRkxFZEJRVWNzUlVGQlJTeEpRVUZKTEVWQlFVVXNUVUZCVFN4RlFVRkZMRTFCUVUwc1JVRkJSU3hMUVVGTExFTkJRVU1zV1VGQldTeEZRVUZGTEU5QlFVOHNSVUZCUlN4TFFVRkxMRVZCUVVVc1JVRkJSU3hGUVVGRkxFTkJRVU1zUlVGQlJTeFBRVUZQTEVWQlFVVXNTMEZCU3l4RlFVRkRMRU5CUVVNc1EwRkJRenRaUVVNNVJ5eFBRVUZQTEVOQlFVTXNTVUZCU1N4RFFVRkRMRWRCUVVjc1NVRkJTU3hEUVVGRExFTkJRVU03VTBGRGRrSTdVVUZEUkN4SlFVRkpMRTlCUVU4c1EwRkJReXhYUVVGWExFTkJRVU1zWTBGQll5eEZRVUZGTzFsQlEzUkRMRTFCUVUwc1MwRkJTeXhEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETzFsQlEyeENMRWxCUVVrc1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eFRRVUZUTEVOQlFVTXNUVUZCVFN4SFFVRkhMRU5CUVVNc1JVRkJSVHRuUWtGRGJrTXNUMEZCVHl4RFFVRkRMRWxCUVVrc1EwRkJRenR2UWtGRFdDeFJRVUZSTEVWQlFVVXNjMEpCUVhOQ08yOUNRVU5vUXl4SlFVRkpMRVZCUVVVc1dVRkJXVHR2UWtGRGJFSXNUVUZCVFN4RlFVRkZMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zVTBGQlV5eEZRVUZGTEU5QlFVOHNSVUZCUlN4TFFVRkxMRVZCUVVVc1JVRkJSU3hGUVVGRkxFTkJRVU1zUlVGQlJTeFBRVUZQTEVWQlFVVXNTMEZCU3p0cFFrRkRjRVVzUTBGQlF5eERRVUZETzJGQlEwbzdVMEZEUmp0UlFVTkVMRWxCUVVrc1QwRkJUeXhEUVVGRExGZEJRVmNzUTBGQlF5eE5RVUZOTEVWQlFVVTdXVUZET1VJc1RVRkJUU3hOUVVGTkxFZEJRVWNzU1VGQlNTeEZRVUZGTEVOQlFVTXNUVUZCVFN4RlFVRkZMRU5CUVVNN1dVRkRMMElzVFVGQlRTeFZRVUZWTEVkQlFVY3NUMEZCVHl4RFFVRkRMRTFCUVUwc1EwRkJReXhEUVVGRExFTkJRVU1zUlVGQlJTeEZRVUZGTEVOQlFVTXNRMEZCUXl4RFFVRkRMRTlCUVU4c1EwRkJReXhEUVVGRExFMUJRVTBzUTBGQlF6dFpRVU16UkN4TlFVRk5MRTlCUVU4c1IwRkJSeXhQUVVGUExFTkJRVU1zVFVGQlRTeERRVUZETEVOQlFVTXNRMEZCUXl4RlFVRkZMRVZCUVVVc1EwRkJReXhEUVVGRExFTkJRVU1zVDBGQlR5eERRVUZETEVOQlFVTXNUVUZCVFN4RFFVRkRPMWxCUTNoRUxFMUJRVTBzVFVGQlRTeEhRVUZITEU5QlFVOHNRMEZCUXl4TlFVRk5MRU5CUVVNc1EwRkJReXhEUVVGRExFVkJRVVVzUlVGQlJTeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRTlCUVU4c1EwRkJReXhEUVVGRE8xbEJRMnBFTEUxQlFVMHNWMEZCVnl4SFFVRkhMSGxHUVVGNVJpeERRVUZETzFsQlF6bEhMRTFCUVUwc1RVRkJUU3hIUVVGSE8yZENRVU5pTEZWQlFWVXNSVUZCUlN4VlFVRlZPMmRDUVVOMFFpeFBRVUZQTEVWQlFVVXNUMEZCVHp0blFrRkRhRUlzVFVGQlRTeEZRVUZGTEUxQlFVMHNRMEZCUXl4TlFVRk5PMmRDUVVOeVFpeFBRVUZQTEVWQlFVVXNVVUZCVVR0aFFVTnNRaXhEUVVGRE8xbEJRMFlzUzBGQlN5eE5RVUZOTEVOQlFVTXNTVUZCU1N4TlFVRk5PMmRDUVVGRkxFMUJRVTBzUTBGQlF5eE5RVUZOTEVOQlFVTXNUVUZCVFN4RlFVRkZMRVZCUVVNc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eFJRVUZSTEUxQlFVMHNRMEZCUXl4RFFVRkRMRWxCUVVrc1JVRkJSU3hEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEUxQlFVMHNSVUZCUXl4RFFVRkRMRU5CUVVNN1dVRkRla1lzVFVGQlRTeERRVUZETEVkQlFVY3NRMEZCUXl4WFFVRlhMRVZCUVVVc1RVRkJUU3hGUVVGRkxHZENRVUZuUWl4RFFVRkRMRU5CUVVNN1UwRkRia1E3VVVGRFJDeFBRVUZQTEU5QlFVOHNRMEZCUXpzN1EwRkRhRUk3UVVGRlJDeFRRVUZsTEZGQlFWRXNRMEZCUXl4RFFVRlBMRVZCUVVVc1UwRkJOa0lzUlVGQlJTeGxRVUYzUWl4RlFVRkZMRmRCUVc5Q096czdVVUZETlVjc1NVRkJTU3hEUVVGMVJ5eERRVUZETzFGQlF6VkhMRTFCUVUwc1RVRkJUU3hIUVVGSExGTkJRVk1zU1VGQlNTeFRRVUZUTEVsQlFVa3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhKUVVGSkxFTkJRVU1zVjBGQlZ5eEZRVUZGTEVOQlFVTXNWVUZCVlN4RFFVRkRMRk5CUVZNc1EwRkJReXhYUVVGWExFVkJRVVVzUTBGQlF5eERRVUZETEVOQlFVTTdVVUZEY2tjc1RVRkJUU3hKUVVGSkxFZEJRVWNzUTBGQlFTeE5RVUZCTEVOQlFVTXNRMEZCUXl4UFFVRlBMREJEUVVGRkxGVkJRVlVzUzBGQlNTeE5RVUZOTEVOQlFVTTdVVUZETjBNc1RVRkJUU3hWUVVGVkxFZEJRVWNzVFVGQlRTeERRVUZETEVOQlFVTXNRMEZCUXl4VFFVRlRMRU5CUVVNc1EwRkJReXhEUVVGRExFMUJRVUVzUTBGQlF5eERRVUZETEU5QlFVOHNNRU5CUVVVc1ZVRkJWU3hEUVVGRE8xRkJRemxFTEVsQlFVa3NRMEZCUXl4SlFVRkpPMWxCUTFBc1QwRkJUeXhEUVVGRExFZEJRVWNzUTBGQlF5eFhRVUZYTEVOQlFVTXNRMEZCUXl4UlFVRlJMRWxCUVVrc1EwRkJReXhEUVVGRExFbEJRVWtzUlVGQlJTeERRVUZETEVOQlFVTTdVVUZEYWtRc1RVRkJUU3hMUVVGTExFZEJRVWNzU1VGQlNTeEpRVUZKTEVWQlFVVXNRMEZCUXp0UlFVTjZRaXhKUVVGSk8xbEJRMFlzU1VGQlNTeEpRVUZKTEVWQlFVVTdaMEpCUTFJc1EwRkJReXhIUVVGSExFVkJRVU1zVDBGQlR5eEZRVUZGTEVsQlFVa3NSVUZCUlN4TlFVRk5MRVZCUVVVc1ZVRkJWeXhGUVVGRkxFVkJRVVVzUlVGQlJTeERRVUZETEVWQlFVVXNUMEZCVHl4RlFVRkZMRWxCUVVrc1JVRkJReXhEUVVGRE8yRkJRMmhGTzJsQ1FVRk5PMmRDUVVOTUxFbEJRVWtzVVVGQlVTeEhRVUZITEVOQlFVRXNUVUZCUVN4RFFVRkRMRU5CUVVNc1QwRkJUeXd3UTBGQlJTeFBRVUZQTEUxQlFVc3NaMEpCUVdkQ08yOUNRVU53UkN4bFFVRmxMRU5CUVVNc1EwRkJReXhEUVVGRExHVkJRV1VzUTBGQlF5eERRVUZETEVOQlFVTXNUVUZCUVN4RFFVRkRMRU5CUVVNc1QwRkJUeXd3UTBGQlJTeFBRVUZSTEVOQlFVTTdaMEpCUXpGRUxGRkJRVkVzUjBGQlJ5eEZRVUZGTEVOQlFVTXNTVUZCU1N4RFFVRkRMR0ZCUVdFc1NVRkJTU3hSUVVGUkxFdEJRVXNzWjBKQlFXZENMRU5CUVVNc1EwRkJReXhEUVVGRExHbENRVUZwUWl4RFFVRkRMRU5CUVVNc1EwRkJReXhSUVVGUkxFTkJRVU03WjBKQlEycEhMRU5CUVVNc1IwRkJSeXhGUVVGRExFOUJRVThzUlVGQlJTeEpRVUZKTEVWQlFVVXNUVUZCVFN4RlFVRkZMRTFCUVVFc1RVRkJUU3hQUVVGUExFTkJRVU1zUTBGQlF5eERRVUZETEVsQlFVa3NSVUZCUlN4UlFVRlJMRU5CUVVNc2JVTkJRVWtzU1VGQlNTeEZRVUZGTEVWQlFVVXNSVUZCUlN4RFFVRkRMRVZCUVVVc1QwRkJUeXhGUVVGRkxFdEJRVXNzUlVGQlF5eERRVUZETzJGQlF6ZEdPMU5CUTBZN1VVRkJReXhQUVVGUExFTkJRVTBzUlVGQlJUdFpRVU5tTEVOQlFVTXNSMEZCUnl4RlFVRkRMRTlCUVU4c1JVRkJSU3hMUVVGTExFVkJRVVVzVFVGQlRTeEZRVUZGTEVOQlFVTXNRMEZCUXl4UlFVRlJMRVZCUVVVc1JVRkJSU3hGUVVGRkxFVkJRVVVzUTBGQlF5eEZRVUZGTEU5QlFVOHNSVUZCUlN4TFFVRkxMRVZCUVVNc1EwRkJRenRUUVVOdVJUdFJRVU5FTEUxQlFVMHNTVUZCU1N4SFFVRkhMRWxCUVVrc1NVRkJTU3hGUVVGRkxFTkJRVU03VVVGRGVFSXNZVUZCWVR0UlFVTmlMRU5CUVVNc1EwRkJReXhGUVVGRkxFZEJRVWNzU1VGQlNTeEhRVUZITEV0QlFVc3NRMEZCUXp0UlFVVndRaXhKUVVGSkxFTkJRVU1zU1VGQlNUdFpRVU5RTEU5QlFVOHNRMEZCUXl4SFFVRkhMRU5CUVVNc1dVRkJXU3hEUVVGRExFTkJRVU1zVVVGQlVTeEpRVUZKTEVOQlFVTXNRMEZCUXl4SlFVRkpMRkZCUVZFc1EwRkJReXhEUVVGRExFVkJRVVVzUzBGQlN5eERRVUZETEVOQlFVTTdVVUZEYWtVc1EwRkJReXhEUVVGRExGRkJRVkVzUjBGQlJ5eERRVUZETEVOQlFVTXNVVUZCVVN4RFFVRkRPMUZCUTNoQ0xFTkJRVU1zUTBGQlF5eEpRVUZKTEVkQlFVY3NRMEZCUXl4RFFVRkRMRWxCUVVrc1EwRkJRenRSUVVOb1FpeEpRVUZKTEVOQlFVTXNUVUZCVFN4RlFVRkZPMWxCUTFnc1NVRkJTU3hEUVVGRExFZEJRVWNzUTBGQlF5eExRVUZMTEVOQlFVTXNSMEZCUnl4WFFVRlhMRXRCUVVzc1EwRkJReXhEUVVGRExGRkJRVkVzUzBGQlN5eERRVUZETEVOQlFVTXNTVUZCU1N4RlFVRkZMRVZCUTNaRUxFVkJRVU1zVTBGQlV5eEZRVUZGTEVOQlFVTXNRMEZCUXl4UFFVRlBMRVZCUVVVc1VVRkJVU3hGUVVGRkxFTkJRVU1zUTBGQlF5eE5RVUZOTEVWQlFVVXNTVUZCU1N4RlFVRkZMRU5CUVVNc1EwRkJReXhGUVVGRkxFVkJRVVVzVTBGQlV5eEZRVUZGTEVOQlFVTXNRMEZCUXl4UFFVRlBPMmRDUVVONlJTeE5RVUZOTEVWQlFVVXNVMEZCVXl4RlFVRkZMRmRCUVZjc1JVRkJSU3hWUVVGVkxFVkJRVVVzUTBGQlF5eERRVUZETEZGQlFWRXNSVUZCUlN4TlFVRk5MRVZCUVVVc1EwRkJReXhEUVVGRExFbEJRVWtzUlVGQlF5eEZRVU42UlN4blFrRkJaMElzVjBGQlZ5eExRVUZMTEVOQlFVTXNRMEZCUXl4UlFVRlJMRXRCUVVzc1EwRkJReXhEUVVGRExFbEJRVWtzUlVGQlJTeERRVUZETEVOQlFVTTdVMEZETlVRN1VVRkRSQ3hQUVVGUExFTkJRVU1zUTBGQlF6czdRMEZEVmp0QlFVVkVMRFpDUVVFMlFqdEJRVU0zUWl4TlFVRk5MRlZCUVdkQ0xFdEJRVXNzUTBGQlF5eEZRVUZWT3p0UlFVTndReXhOUVVGTkxFbEJRVWtzVDBGQlR5eERRVUZETEVOQlFVTXNRMEZCUXl4RlFVRkZMRVZCUVVVc1EwRkJReXhWUVVGVkxFTkJRVU1zUTBGQlF5eEZRVUZGTEVWQlFVVXNRMEZCUXl4RFFVRkRMRU5CUVVNN1NVRkRPVU1zUTBGQlF6dERRVUZCTzBGQlJVUXNUVUZCVFN4VlFVRm5RaXhWUVVGVkxFTkJRVU1zV1VGQk1rSXNSVUZETVVRc1VVRkJaMElzYTBKQlFXdENMRVZCUVVVc1QwRkJaU3hIUVVGSExFVkJRVVVzVjBGQmJVSXNSVUZCUlRzN1VVRkROMFVzVDBGQlR5eEpRVUZKTEU5QlFVOHNRMEZCUXl4RFFVRkRMRTlCUVU4c1JVRkJSU3hOUVVGTkxFVkJRVVVzUlVGQlJUdFpRVU55UXl4VlFVRlZMRU5CUVVNc1IwRkJSeXhGUVVGRk8yZENRVU5rTEdGQlFXRXNRMEZCUXl4VlFVRlZMRU5CUVVNc1EwRkJRenRuUWtGRE1VSXNUVUZCVFN4RFFVRkRMRWxCUVVrc1MwRkJTeXhEUVVGRExFdEJRVXNzUTBGQlF5eERRVUZETEVOQlFVTTdXVUZETTBJc1EwRkJReXhGUVVGRkxFbEJRVWtzUTBGQlF5eERRVUZETzFsQlExUXNZVUZCWVR0WlFVTmlMRTFCUVUwc1ZVRkJWU3hIUVVGWkxGZEJRVmNzUTBGQlF5eEhRVUZITEVWQlFVVTdaMEpCUXpORExFbEJRVWtzV1VGQldTeEZRVUZGTEVWQlFVVTdiMEpCUTJ4Q0xHRkJRV0VzUTBGQlF5eFZRVUZWTEVOQlFVTXNRMEZCUXp0dlFrRkRNVUlzVDBGQlR5eEZRVUZGTEVOQlFVTTdhVUpCUTFnN1dVRkRTQ3hEUVVGRExFVkJRVVVzVVVGQlVTeERRVUZETEVOQlFVTTdVVUZEWml4RFFVRkRMRU5CUVVNc1EwRkJRenRKUVVOTUxFTkJRVU03UTBGQlFUdEJRVVZFTEZOQlFXVXNUMEZCVHl4RFFVRkRMRWxCUVhkQ0xFVkJRVVVzVjBGQmJVSTdPMUZCUTJ4RkxFbEJRVWtzVDBGQlR5eEhRVUZ0UWl4SlFVRkpMRU5CUVVNN1VVRkRia01zVFVGQlRTeGpRVUZqTEVkQlFVY3NTVUZCU1N4UFFVRlBMRU5CUVUwc1EwRkJReXhEUVVGRExFVkJRVVVzVFVGQlRTeEZRVUZGTEVWQlFVVTdXVUZEY0VRc1dVRkJXVHRaUVVOYUxFOUJRVThzUjBGQlJ5eFZRVUZWTEVOQlFVTXNSMEZCUnl4RlFVRkZPMmRDUVVONFFpeDNSRUZCZDBRN1owSkJRM2hFTEUxQlFVMHNRMEZCUXl4dFFrRkJiVUlzUTBGQlF5eERRVUZETzFsQlF6bENMRU5CUVVNc1JVRkJSU3hYUVVGWExFTkJRVU1zUTBGQlF6dFJRVU5zUWl4RFFVRkRMRU5CUVVNc1EwRkJRenRSUVVOSUxFbEJRVWs3V1VGRFJpeFBRVUZQTEUxQlFVMHNUMEZCVHl4RFFVRkRMRWxCUVVrc1EwRkJReXhEUVVGRExFbEJRVWtzUlVGQlJTeEZRVUZGTEdOQlFXTXNRMEZCUXl4RFFVRkRMRU5CUVVNN1UwRkRja1E3WjBKQlFWTTdXVUZEVWl4SlFVRkpMRTlCUVU4N1owSkJRMVFzV1VGQldTeERRVUZETEU5QlFVOHNRMEZCUXl4RFFVRkRPMU5CUTNwQ08wbEJRMGdzUTBGQlF6dERRVUZCTzBGQlJVUXNUVUZCVFN4VlFVRlZMR1ZCUVdVc1EwRkJReXhYUVVGdFFqdEpRVU5xUkN4TlFVRk5MRTlCUVU4c1IwRkJSeXhGUVVGRkxFTkJRVU1zVFVGQlRTeERRVUZETEdOQlFXTXNSVUZCUlN4RFFVRkRPMGxCUXpORExFdEJRVXNzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4RlFVRkZMRU5CUVVNc1IwRkJSeXhQUVVGUExFTkJRVU1zVFVGQlRTeEZRVUZGTEVOQlFVTXNSVUZCUlN4RlFVRkZPMUZCUTNaRExFbEJRVWtzVDBGQlR5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRMRXRCUVVzc1NVRkJTU3hYUVVGWE8xbEJRMnBETEU5QlFVOHNTVUZCU1N4RFFVRkRPMHRCUTJZN1NVRkRSQ3hQUVVGUExFdEJRVXNzUTBGQlF6dEJRVU5tTEVOQlFVTTdRVUZGUkRzN096czdSMEZMUnp0QlFVTklMRTFCUVUwc1ZVRkJaMElzYjBKQlFXOUNMRU5CUVVNc1RVRkJNa0lzUlVGRGNFVXNTMEZCYlVNN08xRkJRMjVETEVsQlFVa3NUVUZCVFN4SFFVRlpMRXRCUVVzc1EwRkJRenRSUVVNMVFpeEpRVUZKTEU5QlFVOHNSMEZCV1N4TFFVRkxMRU5CUVVNN1VVRkROMElzU1VGQlNUdFpRVU5HTEUxQlFVMHNUVUZCVFN4RlFVRkZMRU5CUVVNN1UwRkRhRUk3VVVGQlF5eFBRVUZQTEVOQlFVTXNSVUZCUlR0WlFVTldMRTFCUVUwc1IwRkJSeXhKUVVGSkxFTkJRVU03V1VGRFpDeFBRVUZQTEVkQlFVY3NRMEZCUXl4TFFVRkxMRWxCUVVrc1MwRkJTeXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETzFOQlF6bENPMmRDUVVGVE8xbEJRMUlzU1VGQlNTeERRVUZETEUxQlFVMDdaMEpCUTFRc1RVRkJUU3hKUVVGSkxFdEJRVXNzUTBGQlF5eDVRMEZCZVVNc1EwRkJReXhEUVVGRE8xbEJRemRFTEVsQlFVa3NRMEZCUXl4UFFVRlBPMmRDUVVOV0xFMUJRVTBzU1VGQlNTeExRVUZMTEVOQlFVTXNkMFZCUVhkRkxFTkJRVU1zUTBGQlF6dFRRVU0zUmp0SlFVTklMRU5CUVVNN1EwRkJRVHRCUVVWRU96czdPenM3T3p0SFFWRkhPMEZCUTBnc1RVRkJUU3hWUVVGblFpeFZRVUZWTEVOQlFVTXNRMEZCVXl4RlFVRkZMRVZCUVdkQ0xFVkJRekZFTEU5QlFUWkVPenM3VVVGRE4wUXNTVUZCU1N4UFFVRlBMR0ZCUVZBc1QwRkJUeXgxUWtGQlVDeFBRVUZQTEVOQlFVVXNiVUpCUVcxQ08xbEJRVVVzVFVGQlRTeEpRVUZKTEVOQlFVTXNTVUZCU1N4RFFVRkRMRzFDUVVGdFFpeERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRPMUZCUXpGRkxFMUJRVTBzUlVGQlJTeEhRVUZITEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1dVRkJXU3hEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETzFGQlEzWkRMRTFCUVUwc1ZVRkJWU3hIUVVGSExHZENRVUZuUWl4RFFVRkRMRU5CUVVNc1QwRkJUeXhEUVVGRExFMUJRVTBzUlVGQlJTeEhRVUZITEVOQlFVTXNTMEZCU3l4RFFVRkRPMUZCUXk5RUxFbEJRVWtzVVVGQlVTeEhRVUZITEVkQlFVY3NWVUZCVlN4WFFVRlhMRlZCUVZVc1VVRkJVU3hWUVVGVk8wMUJReTlFTEZWQlFWVXNWVUZCVlN4VlFVRlZMRTlCUVU4c1ZVRkJWU3hKUVVGSkxFTkJRVU03VVVGRGVFUXNUVUZCVFN4SFFVRkhMRWRCUVVjc1JVRkJSU3hEUVVGRE8xRkJRMllzU1VGQlNUdFpRVU5HTEVsQlFVa3NUVUZCVFN4SFFVRkhMRVZCUVVVc1EwRkJReXhUUVVGVExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTTdXVUZETjBJc1RVRkJUU3hWUVVGVkxFTkJRVU1zUjBGQlJ5eEZRVUZGTEVOQlFVTXNVVUZCVVN4RFFVRkRMR0ZCUVdFc1EwRkJReXhSUVVGUkxFTkJRVU1zUzBGQlN5eEpRVUZKTEVWQlF6bEVMRzlDUVVGdlFpeEZRVUZGTEVsQlFVa3NRMEZCUXl4RFFVRkRPMWxCUXpsQ0xFMUJRVTBzUjBGQlJ5eEhRVUZITEUxQlFVRXNVVUZCVVN4RFFVRkRMR0ZCUVdFc1EwRkJReXhSUVVGUkxFTkJRVU1zTUVOQlFVVXNUMEZCVHl4RFFVRkRPMWxCUTNSRUxFZEJRVWNzUTBGQlF5eEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRMRWxCUVVrc1EwRkJReXhGUVVGRkxFTkJRVU1zVDBGQlR5eERRVUZETEVOQlFVTXNUVUZCVFN4RFFVRkRMRU5CUVVNN1dVRkRlRU1zU1VGQlNTeERRVUZETEVOQlFVRXNUMEZCVHl4aFFVRlFMRTlCUVU4c2RVSkJRVkFzVDBGQlR5eERRVUZGTEZGQlFWRXNRMEZCUVN4RlFVRkZPMmRDUVVOMFFpeExRVUZMTEVOQlFVTXNTVUZCU1N4RFFVRkRMRVZCUVVVc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNTMEZCU3l4RFFVRkRMRU5CUVVNc1QwRkJUeXhEUVVGRExFTkJRVU1zUTBGQlN5eEZRVUZGTEVWQlFVVXNRMEZCUXl4RFFVRkRMRU5CUVVNc1MwRkJTeXhIUVVGSExFbEJRVWtzUTBGQlF5eERRVUZETzJkQ1FVTXZSQ3hOUVVGTkxFZEJRVWNzUjBGQlJ5eEZRVUZGTEVOQlFVTXNVVUZCVVN4SFFVRkhMRVZCUVVVc1EwRkJReXhEUVVGRExFTkJRVU1zU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4RlFVRkZMRU5CUVVNc1VVRkJVU3hIUVVGSExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXl4RlFVRkZMRU5CUVVNN1owSkJRMmhGTEVWQlFVVXNRMEZCUXl4SlFVRkpMRU5CUVVNc1RVRkJUU3hEUVVGRExFTkJRVU1zUjBGQlZ5eEZRVUZGTEVWQlFVVXNRMEZCUXl4SFFVRkhMRU5CUVVNc1IwRkJSeXhKUVVGSkxFTkJRVU1zU1VGQlNTeEhRVUZITEVOQlFVTXNSMEZCUnl4SFFVRkhMRWRCUVVjc1EwRkJReXhEUVVGRE8yZENRVU12UkN4TlFVRk5MRXRCUVVzc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF6dG5Ra0ZEYUVJc1MwRkJTeXhKUVVGSkxFTkJRVU1zUjBGQlJ5eEhRVUZITEVWQlFVVXNRMEZCUXl4SFFVRkhMRWRCUVVjc1IwRkJSeXhEUVVGRExFVkJRVVVzUTBGQlF5eEZRVUZGTzI5Q1FVRkZMRVZCUVVVc1EwRkJReXhOUVVGTkxFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTXNSVUZCUlN4TFFVRkxMRU5CUVVNc1EwRkJRenRuUWtGRE5VUXNUVUZCVFN4TFFVRkxMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU03WjBKQlEyaENMRVZCUVVVc1EwRkJReXhoUVVGaExFZEJRVWNzUTBGQlF5eERRVUZETzJkQ1FVTnlRaXhOUVVGTkxFZEJRVWNzUjBGQlJ5eEZRVUZGTEVOQlFVTXNTMEZCU3l4RlFVRkZMRU5CUVVNN1owSkJRM1pDTEVWQlFVVXNRMEZCUXl4UFFVRlBMRU5CUVVNc1MwRkJTeXhGUVVGRkxFTkJRVU1zUzBGQlN5eERRVUZETEVOQlFVTXNSVUZCUlN4SlFVRkpMRU5CUVVNc1NVRkJTU3hEUVVGRExFVkJRVVVzUTBGQlF5eFBRVUZQTEVOQlFVTXNUVUZCVFN4SFFVRkhMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zVDBGQlR5eERRVUZETEVOQlFVTXNRMEZCVFN4RlFVRkZMRVZCUVVVc1EwRkJReXhGUVVGRkxFTkJRVU1zVDBGQlR5eERRVUZETEUxQlFVMHNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRE8yZENRVU40Unl4TlFVRk5MRXRCUVVzc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF6dG5Ra0ZEYWtJc1JVRkJSU3hEUVVGRExGTkJRVk1zUjBGQlJ5eEhRVUZITEVOQlFVTTdZVUZEY0VJN1dVRkRSQ3hOUVVGTkxFdEJRVXNzUjBGQlJ5eE5RVUZOTEVOQlFVTXNWVUZCVlN4RFFVRkRMRWxCUVVrc1EwRkJReXhEUVVGRExFbEJRVWtzUTBGQlF6dFpRVU16UXl4TlFVRk5MRXRCUVVzc1IwRkJSeXhOUVVGTkxFTkJRVU1zWVVGQllTeEZRVUZGTEVOQlFVTTdXVUZEY2tNc1RVRkJUU3hSUVVGUkxFZEJRWEZETEVWQlFVVXNRMEZCUXp0WlFVTjBSQ3hOUVVGTkxFTkJRVU1zU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4RFFVRkRMRTFCUVUwc1EwRkJReXhEUVVGRExFTkJRVU1zUlVGQlJTeEZRVUZGTEVOQlFVTXNUMEZCVHl4TFFVRkxMRU5CUVVNc1EwRkJReXhEUVVGRExFdEJRVXNzVTBGQlV5eERRVUZETEVOQlFVTXNUMEZCVHl4RFFVRkRMRU5CUVVNc1EwRkJReXhGUVVGRkxFVkJRVVVzUTBGQlF5eFJRVUZSTEVOQlFVTXNRMEZCUXl4RFFVRkRMRWRCUVVjc1EwRkJReXhMUVVGTExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0WlFVTjRSeXhMUVVGTExFTkJRVU1zVFVGQlRTeERRVUZETEVOQlFVTXNRMEZCWXl4RlFVRkZMRVZCUVVVc1EwRkJReXhEUVVGRExFTkJRVU1zVDBGQlR5eExRVUZMTEVsQlFVa3NRMEZCUXp0cFFrRkRha1FzVDBGQlR5eERRVUZETEVOQlFVTXNRMEZCWXl4RlFVRkZMRVZCUVVVc1EwRkJReXhSUVVGUkxFTkJRVU1zUTBGQlF5eERRVUZETEVsQlFVa3NRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhQUVVGUExFTkJRVU1zU1VGQlNTeERRVUZETEVOQlFVTXNRMEZCVFN4RlFVRkZMRVZCUVVVc1EwRkJReXhEUVVGRExFdEJRVXNzUzBGQlN5eERRVUZETEVOQlFVTXNRMEZCUXl4SlFVRkpMRU5CUVVNc1EwRkJSU3hEUVVGRExFTkJRVU03V1VGRGNFY3NUVUZCVFN4RFFVRkRMRlZCUVZVc1EwRkJReXhSUVVGUkxFTkJRVU1zUTBGQlF6dFpRVU0xUWl4TlFVRk5MRXRCUVVzc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF6dFpRVU5xUWl4TlFVRk5MRTFCUVUwc1IwRkJSeXhGUVVGRkxFTkJRVU1zVlVGQlZTeEZRVUZGTEVOQlFVTTdXVUZETDBJc1RVRkJUU3hSUVVGUkxFZEJRVWNzVFVGQlRTeERRVUZETEZWQlFWVXNSVUZCUlN4RFFVRkRMRWxCUVVrc1EwRkJRenRaUVVNeFF5eEZRVUZGTEVOQlFVTXNWMEZCVnl4RlFVRkZMRU5CUVVNN1dVRkRha0lzUjBGQlJ5eERRVUZETEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1NVRkJTU3hEUVVGRExFVkJRVVVzUTBGQlF5eFBRVUZQTEVOQlFVTXNRMEZCUXl4TlFVRk5MRU5CUVVNc1EwRkJRenRaUVVONFF5eEZRVUZGTEVOQlFVTXNWVUZCVlN4RFFVRkRMRTFCUVUwc1EwRkJReXhEUVVGRE8xbEJRM1JDTEZGQlFWRXNSMEZCUnl4SFFVRkhMRlZCUVZVc1NVRkJTU3hIUVVGSExFVkJRVVVzUTBGQlF6dFpRVU5zUXl4TlFVRk5MRlZCUVZVc1EwRkJReXhIUVVGSExFVkJRVVVzUTBGQlF5eFJRVUZSTEVOQlFVTXNZVUZCWVN4RFFVRkRMRkZCUVZFc1EwRkJReXhMUVVGTExFbEJRVWtzUlVGRE9VUXNaME5CUVdkRExFVkJRVVVzU1VGQlNTeERRVUZETEVOQlFVTTdXVUZETVVNc1IwRkJSeXhEUVVGRExFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNTVUZCU1N4RFFVRkRMRVZCUVVVc1EwRkJReXhQUVVGUExFTkJRVU1zUTBGQlF5eE5RVUZOTEVOQlFVTXNRMEZCUXp0WlFVTjRReXhOUVVGTkxFZEJRVWNzUzBGQlN5eERRVUZETEVsQlFVa3NRMEZCUXl4RlFVRkZMRU5CUVVNc1QwRkJUeXhEUVVGRExFTkJRVU1zU1VGQlNTeERRVUZETEVOQlFVTXNRMEZCVFN4RlFVRkZMRVZCUVVVc1EwRkJReXhEUVVGRExFTkJRVU1zU1VGQlNTeExRVUZMTEUxQlFVMHNRMEZCUlN4RFFVRkRPMWxCUTNKRkxGZEJRVmNzUTBGQlF5eEhRVUZITEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTTdXVUZETlVJc1RVRkJUU3hEUVVGRExFbEJRVWtzUTBGQlF5eFRRVUZUTEVOQlFVTXNUVUZCVFN4RFFVRkRMRlZCUVZVc1JVRkJSU3hEUVVGRExFbEJRVWtzUTBGQlF5eEZRVUZGTEVsQlFVa3NRMEZCUXl4VFFVRlRMRU5CUVVNc1VVRkJVU3hEUVVGRExFTkJRVU1zUTBGQlF6dFRRVU0xUlR0blFrRkJVenRaUVVOU0xFVkJRVVVzUTBGQlF5eExRVUZMTEVWQlFVVXNRMEZCUXp0WlFVTllMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zVlVGQlZTeERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRPMWxCUXpGQ0xFVkJRVVVzUTBGQlF5eFBRVUZQTEVOQlFVTXNVVUZCVVN4RlFVRkZMRU5CUVVNN1UwRkRka0k3TzBOQlEwWWlMQ0p6YjNWeVkyVnpRMjl1ZEdWdWRDSTZXeUpwYlhCdmNuUWdLaUJoY3lCbmNtOXJJR1p5YjIwZ0oyUmhkR0ZuY205ckxXRndhUzluY205ckp6dGNibWx0Y0c5eWRDQXFJR0Z6SUVSSElHWnliMjBnSjJSaGRHRm5jbTlyTFdGd2FTOWtaeWM3WEc1cGJYQnZjblFnZTA5aWMyVnlkbUZpYkdVc0lGTjFZbk5qY21sd2RHbHZibjBnWm5KdmJTQW5jbmhxY3ljN1hHNXBiWEJ2Y25RZ1ZHbHRaVzkxZENBOUlFNXZaR1ZLVXk1VWFXMWxiM1YwTzF4dWFXMXdiM0owSUh0RVlYUmhSbkpoYldWOUlHWnliMjBnSjJSaGRHRm5jbTlyTFdGd2FTOWtaeWM3WEc1Y2JtTnZibk4wSUZOVVFVNUVRVkpVWDFSSlRVVlBWVlFnUFNBek1EQXdNRHRjYm1OdmJuTjBJRUpGVGtOSVRVRlNTMTlVU1UxRlQxVlVJRDBnTVRBNE1EQXdNREE3WEc1Y2JtVjRjRzl5ZENCamIyNXpkQ0IwWlhOMGN6b2dlMXh1SUNCYmEyVjVPaUJ6ZEhKcGJtZGRPaUI3WEc0Z0lDQWdkR1Z6ZEhNL09pQlVaWE4wVzEwc0lHSmxabTl5WlQ4NklDZ3BJRDArSUZCeWIyMXBjMlU4ZG05cFpENHNJR0ZtZEdWeVB6b2dLQ2tnUFQ0Z1VISnZiV2x6WlR4MmIybGtQaXhjYmlBZ0lDQmlaV1p2Y21WVGRHRjBkWE0vT2lCemRISnBibWNzSUdGbWRHVnlVM1JoZEhWelB6b2djM1J5YVc1bkxDQmpiR1ZoY2o4NklHSnZiMnhsWVc0c0lIUnBiV1Z2ZFhRL09pQnVkVzFpWlhKY2JpQWdmVnh1ZlNBOUlIdDlPMXh1WEc1amIyNXpkQ0JoZFhSdlZHVnpkSE5EWVhST1lXMWxJRDBnSjBGMWRHOGdWR1Z6ZEhNbk8xeHVZMjl1YzNRZ2QyRnpVbVZuYVhOMFpYSmxaRG9nZTF0clpYazZJSE4wY21sdVoxMDZJR0p2YjJ4bFlXNTlJRDBnZTMwN1hHNWxlSEJ2Y25RZ2JHVjBJR04xY25KbGJuUkRZWFJsWjI5eWVUb2djM1J5YVc1bk8xeHVYRzVsZUhCdmNuUWdibUZ0WlhOd1lXTmxJR0Z6YzNWeVpTQjdYRzRnSUdWNGNHOXlkQ0JtZFc1amRHbHZiaUJ1YjNST2RXeHNLSFpoYkhWbE9pQmhibmtzSUc1aGJXVS9PaUJ6ZEhKcGJtY3BJSHRjYmlBZ0lDQnBaaUFvZG1Gc2RXVWdQVDBnYm5Wc2JDbGNiaUFnSUNBZ0lIUm9jbTkzSUc1bGR5QkZjbkp2Y2loZ0pIdHVZVzFsSUQwOUlHNTFiR3dnUHlBblZtRnNkV1VuSURvZ2JtRnRaWDBnYm05MElHUmxabWx1WldSZ0tUdGNiaUFnZlZ4dWZWeHVYRzVsZUhCdmNuUWdhVzUwWlhKbVlXTmxJRlJsYzNSUGNIUnBiMjV6SUh0Y2JpQWdkR2x0Wlc5MWREODZJRzUxYldKbGNqdGNiaUFnZFc1b1lXNWtiR1ZrUlhoalpYQjBhVzl1VkdsdFpXOTFkRDg2SUc1MWJXSmxjanRjYmlBZ2MydHBjRkpsWVhOdmJqODZJSE4wY21sdVp6dGNibjFjYmx4dVpYaHdiM0owSUdsdWRHVnlabUZqWlNCRFlYUmxaMjl5ZVU5d2RHbHZibk1nZTF4dUlDQmpiR1ZoY2o4NklHSnZiMnhsWVc0N1hHNGdJSFJwYldWdmRYUS9PaUJ1ZFcxaVpYSTdYRzU5WEc1Y2JtVjRjRzl5ZENCamJHRnpjeUJVWlhOMFEyOXVkR1Y0ZENCN1hHNGdJR05oZEdOb1ZXNW9ZVzVrYkdWa0lEMGdkSEoxWlR0Y2JpQWdjbVZ3YjNKMElEMGdabUZzYzJVN1hHNWNiaUFnWTI5dWMzUnlkV04wYjNJb1kyRjBZMmhWYm1oaGJtUnNaV1EvT2lCaWIyOXNaV0Z1TENCeVpYQnZjblEvT2lCaWIyOXNaV0Z1S1NCN1hHNGdJQ0FnYVdZZ0tHTmhkR05vVlc1b1lXNWtiR1ZrSUNFOVBTQjFibVJsWm1sdVpXUXBJSFJvYVhNdVkyRjBZMmhWYm1oaGJtUnNaV1FnUFNCallYUmphRlZ1YUdGdVpHeGxaRHRjYmlBZ0lDQnBaaUFvY21Wd2IzSjBJQ0U5UFNCMWJtUmxabWx1WldRcElIUm9hWE11Y21Wd2IzSjBJRDBnY21Wd2IzSjBPMXh1SUNCOU8xeHVmVnh1WEc1bGVIQnZjblFnWTJ4aGMzTWdWR1Z6ZENCN1hHNGdJSFJsYzNRNklDZ3BJRDArSUZCeWIyMXBjMlU4WVc1NVBqdGNiaUFnYm1GdFpUb2djM1J5YVc1bk8xeHVJQ0JqWVhSbFoyOXllVG9nYzNSeWFXNW5PMXh1SUNCdmNIUnBiMjV6UHpvZ1ZHVnpkRTl3ZEdsdmJuTTdYRzVjYmlBZ1kyOXVjM1J5ZFdOMGIzSW9ZMkYwWldkdmNuazZJSE4wY21sdVp5d2dibUZ0WlRvZ2MzUnlhVzVuTENCMFpYTjBPaUFvS1NBOVBpQlFjbTl0YVhObFBHRnVlVDRzSUc5d2RHbHZibk0vT2lCVVpYTjBUM0IwYVc5dWN5a2dlMXh1SUNBZ0lIUm9hWE11WTJGMFpXZHZjbmtnUFNCallYUmxaMjl5ZVR0Y2JpQWdJQ0IwYUdsekxtNWhiV1VnUFNCdVlXMWxPMXh1SUNBZ0lHOXdkR2x2Ym5NZ1B6ODlJSHQ5TzF4dUlDQWdJRzl3ZEdsdmJuTXVkR2x0Wlc5MWRDQS9QejBnVTFSQlRrUkJVbFJmVkVsTlJVOVZWRHRjYmlBZ0lDQjBhR2x6TG05d2RHbHZibk1nUFNCdmNIUnBiMjV6TzF4dUlDQWdJSFJvYVhNdWRHVnpkQ0E5SUdGemVXNWpJQ2dwT2lCUWNtOXRhWE5sUEdGdWVUNGdQVDRnZTF4dUlDQWdJQ0FnY21WMGRYSnVJRzVsZHlCUWNtOXRhWE5sS0dGemVXNWpJQ2h5WlhOdmJIWmxMQ0J5WldwbFkzUXBJRDArSUh0Y2JpQWdJQ0FnSUNBZ2JHVjBJSEpsYzNWc2RDQTlJQ2NuTzF4dUlDQWdJQ0FnSUNCMGNua2dlMXh1SUNBZ0lDQWdJQ0FnSUhKbGMzVnNkQ0E5SUdGM1lXbDBJSFJsYzNRb0tUdGNiaUFnSUNBZ0lDQWdmU0JqWVhSamFDQW9aVG9nWVc1NUtTQjdYRzRnSUNBZ0lDQWdJQ0FnY21WcVpXTjBLR1VwTzF4dUlDQWdJQ0FnSUNCOVhHNGdJQ0FnSUNBZ0lISmxjMjlzZG1Vb2NtVnpkV3gwS1R0Y2JpQWdJQ0FnSUgwcE8xeHVJQ0FnSUgwN1hHNGdJSDFjYm4xY2JseHVaWGh3YjNKMElHRnplVzVqSUdaMWJtTjBhVzl1SUhSbGMzUkZkbVZ1ZER4VVBpaGxkbVZ1ZERvZ1QySnpaWEoyWVdKc1pUeFVQaXhjYmlBZ2FHRnVaR3hsY2pvZ0tHRnlaM002SUZRcElEMCtJSFp2YVdRc0lIUnlhV2RuWlhJNklDZ3BJRDArSUhadmFXUXNJRzF6T2lCdWRXMWlaWElnUFNBd0tUb2dVSEp2YldselpUeHpkSEpwYm1jK0lIdGNiaUFnYkdWMElITjFZam9nVTNWaWMyTnlhWEIwYVc5dU8xeHVJQ0J5WlhSMWNtNGdibVYzSUZCeWIyMXBjMlVvS0hKbGMyOXNkbVVzSUhKbGFtVmpkQ2tnUFQ0Z2UxeHVJQ0FnSUhOMVlpQTlJR1YyWlc1MExuTjFZbk5qY21saVpTZ29ZWEpuY3pvZ1lXNTVLU0E5UGlCN1hHNGdJQ0FnSUNCMGNua2dlMXh1SUNBZ0lDQWdJQ0JvWVc1a2JHVnlLR0Z5WjNNcE8xeHVJQ0FnSUNBZ2ZTQmpZWFJqYUNBb1pTa2dlMXh1SUNBZ0lDQWdJQ0J5WldwbFkzUW9aU2s3WEc0Z0lDQWdJQ0I5WEc0Z0lDQWdJQ0J6ZFdJdWRXNXpkV0p6WTNKcFltVW9LVHRjYmlBZ0lDQWdJSEpsYzI5c2RtVW9KMDlMSnlrN1hHNGdJQ0FnZlNrN1hHNGdJQ0FnYzJWMFZHbHRaVzkxZENnb0tTQTlQaUI3WEc0Z0lDQWdJQ0J6ZFdJdWRXNXpkV0p6WTNKcFltVW9LVHRjYmlBZ0lDQWdJQzh2SUdWemJHbHVkQzFrYVhOaFlteGxMVzVsZUhRdGJHbHVaU0J3Y21WbVpYSXRjSEp2YldselpTMXlaV3BsWTNRdFpYSnliM0p6WEc0Z0lDQWdJQ0J5WldwbFkzUW9KM1JwYldWdmRYUW5LVHRjYmlBZ0lDQjlMQ0J0Y3lrN1hHNGdJQ0FnZEhKcFoyZGxjaWdwTzF4dUlDQjlLVHRjYm4xY2JseHVaWGh3YjNKMElHWjFibU4wYVc5dUlIUmxjM1FvYm1GdFpUb2djM1J5YVc1bkxDQjBaWE4wT2lBb0tTQTlQaUJRY205dGFYTmxQR0Z1ZVQ0c0lHOXdkR2x2Ym5NL09pQlVaWE4wVDNCMGFXOXVjeWs2SUhadmFXUWdlMXh1SUNCcFppQW9kR1Z6ZEhOYlkzVnljbVZ1ZEVOaGRHVm5iM0o1WFNBOVBTQjFibVJsWm1sdVpXUXBYRzRnSUNBZ2RHVnpkSE5iWTNWeWNtVnVkRU5oZEdWbmIzSjVYU0E5SUh0OU8xeHVJQ0JwWmlBb2RHVnpkSE5iWTNWeWNtVnVkRU5oZEdWbmIzSjVYUzUwWlhOMGN5QTlQU0IxYm1SbFptbHVaV1FwWEc0Z0lDQWdkR1Z6ZEhOYlkzVnljbVZ1ZEVOaGRHVm5iM0o1WFM1MFpYTjBjeUE5SUZ0ZE8xeHVJQ0IwWlhOMGMxdGpkWEp5Wlc1MFEyRjBaV2R2Y25sZExuUmxjM1J6SVM1d2RYTm9LRzVsZHlCVVpYTjBLR04xY25KbGJuUkRZWFJsWjI5eWVTd2dibUZ0WlN3Z2RHVnpkQ3dnYjNCMGFXOXVjeWtwTzF4dWZWeHVYRzR2S2lCVVpYTjBjeUIwZDI4Z2IySnFaV04wY3lCbWIzSWdaWEYxWVd4cGRIa3NJSFJvY205M2N5QmhiaUJsZUdObGNIUnBiMjRnYVdZZ2RHaGxlU0JoY21VZ2JtOTBJR1Z4ZFdGc0xpQXFMMXh1Wlhod2IzSjBJR1oxYm1OMGFXOXVJR1Y0Y0dWamRDaGhZM1IxWVd3NklHRnVlU3dnWlhod1pXTjBaV1E2SUdGdWVTQTlJSFJ5ZFdVc0lHVnljbTl5UHpvZ2MzUnlhVzVuS1RvZ2RtOXBaQ0I3WEc0Z0lHbG1JQ2hsY25KdmNpbGNiaUFnSUNCbGNuSnZjaUE5SUdBa2UyVnljbTl5ZlN3Z1lEdGNiaUFnWld4elpTQmxjbkp2Y2lBOUlDY25PMXh1SUNCcFppQW9ZV04wZFdGc0lDRTlQU0JsZUhCbFkzUmxaQ2xjYmlBZ0lDQjBhSEp2ZHlCdVpYY2dSWEp5YjNJb1lDUjdaWEp5YjNKOVJYaHdaV04wWldRZ1hDSWtlMlY0Y0dWamRHVmtmVndpTENCbmIzUWdYQ0lrZTJGamRIVmhiSDFjSW1BcE8xeHVmVnh1WEc1bGVIQnZjblFnWm5WdVkzUnBiMjRnWlhod1pXTjBSbXh2WVhRb1lXTjBkV0ZzT2lCdWRXMWlaWElzSUdWNGNHVmpkR1ZrT2lCdWRXMWlaWElzSUhSdmJHVnlZVzVqWlNBOUlEQXVNREF4TENCbGNuSnZjajg2SUhOMGNtbHVaeWs2SUhadmFXUWdlMXh1SUNCcFppQW9LR0ZqZEhWaGJDQTlQVDBnVG5WdFltVnlMbEJQVTBsVVNWWkZYMGxPUmtsT1NWUlpJQ1ltSUdWNGNHVmpkR1ZrSUQwOVBTQk9kVzFpWlhJdVVFOVRTVlJKVmtWZlNVNUdTVTVKVkZrcElIeDhYRzRnSUNBZ0lDQW9ZV04wZFdGc0lEMDlQU0JPZFcxaVpYSXVUa1ZIUVZSSlZrVmZTVTVHU1U1SlZGa2dKaVlnWlhod1pXTjBaV1FnUFQwOUlFNTFiV0psY2k1T1JVZEJWRWxXUlY5SlRrWkpUa2xVV1NrZ2ZIeGNiaUFnSUNBZ0lDaGhZM1IxWVd3Z1BUMDlJRTUxYldKbGNpNU9ZVTRnSmlZZ1pYaHdaV04wWldRZ1BUMDlJRTUxYldKbGNpNU9ZVTRwSUh4OElDaHBjMDVoVGloaFkzUjFZV3dwSUNZbUlHbHpUbUZPS0dWNGNHVmpkR1ZrS1NrcFhHNGdJQ0FnY21WMGRYSnVPMXh1SUNCamIyNXpkQ0JoY21WRmNYVmhiQ0E5SUUxaGRHZ3VZV0p6S0dGamRIVmhiQ0F0SUdWNGNHVmpkR1ZrS1NBOElIUnZiR1Z5WVc1alpUdGNiaUFnWlhod1pXTjBLR0Z5WlVWeGRXRnNMQ0IwY25WbExDQmdKSHRsY25KdmNpQS9QeUFuSjMwZ0tIUnZiR1Z5WVc1alpTQTlJQ1I3ZEc5c1pYSmhibU5sZlNsZ0tUdGNiaUFnYVdZZ0tDRmhjbVZGY1hWaGJDbGNiaUFnSUNCMGFISnZkeUJ1WlhjZ1JYSnliM0lvWUVWNGNHVmpkR1ZrSUNSN1pYaHdaV04wWldSOUxDQm5iM1FnSkh0aFkzUjFZV3g5SUNoMGIyeGxjbUZ1WTJVZ1BTQWtlM1J2YkdWeVlXNWpaWDBwWUNrN1hHNTlYRzVjYm1WNGNHOXlkQ0JtZFc1amRHbHZiaUJsZUhCbFkzUlVZV0pzWlNoaFkzUjFZV3c2SUVSaGRHRkdjbUZ0WlN3Z1pYaHdaV04wWldRNklFUmhkR0ZHY21GdFpTd2daWEp5YjNJL09pQnpkSEpwYm1jcE9pQjJiMmxrSUh0Y2JpQWdZMjl1YzNRZ1pYaHdaV04wWldSU2IzZERiM1Z1ZENBOUlHVjRjR1ZqZEdWa0xuSnZkME52ZFc1ME8xeHVJQ0JqYjI1emRDQmhZM1IxWVd4U2IzZERiM1Z1ZENBOUlHRmpkSFZoYkM1eWIzZERiM1Z1ZER0Y2JpQWdaWGh3WldOMEtHRmpkSFZoYkZKdmQwTnZkVzUwTENCbGVIQmxZM1JsWkZKdmQwTnZkVzUwTENCZ0pIdGxjbkp2Y2lBL1B5QW5KMzBzSUhKdmR5QmpiM1Z1ZEdBcE8xeHVYRzRnSUdadmNpQW9ZMjl1YzNRZ1kyOXNkVzF1SUc5bUlHVjRjR1ZqZEdWa0xtTnZiSFZ0Ym5NcElIdGNiaUFnSUNCamIyNXpkQ0JoWTNSMVlXeERiMngxYlc0Z1BTQmhZM1IxWVd3dVkyOXNkVzF1Y3k1aWVVNWhiV1VvWTI5c2RXMXVMbTVoYldVcE8xeHVJQ0FnSUdsbUlDaGhZM1IxWVd4RGIyeDFiVzRnUFQwZ2JuVnNiQ2xjYmlBZ0lDQWdJSFJvY205M0lHNWxkeUJGY25KdmNpaGdRMjlzZFcxdUlDUjdZMjlzZFcxdUxtNWhiV1Y5SUc1dmRDQm1iM1Z1WkdBcE8xeHVJQ0FnSUdsbUlDaGhZM1IxWVd4RGIyeDFiVzR1ZEhsd1pTQWhQU0JqYjJ4MWJXNHVkSGx3WlNsY2JpQWdJQ0FnSUhSb2NtOTNJRzVsZHlCRmNuSnZjaWhnUTI5c2RXMXVJQ1I3WTI5c2RXMXVMbTVoYldWOUlIUjVjR1VnWlhod1pXTjBaV1FnSkh0amIyeDFiVzR1ZEhsd1pYMGdaMjkwSUNSN1lXTjBkV0ZzUTI5c2RXMXVMblI1Y0dWOVlDazdYRzRnSUNBZ1ptOXlJQ2hzWlhRZ2FTQTlJREE3SUdrZ1BDQmxlSEJsWTNSbFpGSnZkME52ZFc1ME95QnBLeXNwSUh0Y2JpQWdJQ0FnSUdOdmJuTjBJSFpoYkhWbElEMGdZMjlzZFcxdUxtZGxkQ2hwS1R0Y2JpQWdJQ0FnSUdOdmJuTjBJR0ZqZEhWaGJGWmhiSFZsSUQwZ1lXTjBkV0ZzUTI5c2RXMXVMbWRsZENocEtUdGNiaUFnSUNBZ0lHbG1JQ2hqYjJ4MWJXNHVkSGx3WlNBOVBTQkVSeTVVV1ZCRkxrWk1UMEZVS1Z4dUlDQWdJQ0FnSUNCbGVIQmxZM1JHYkc5aGRDaGhZM1IxWVd4V1lXeDFaU3dnZG1Gc2RXVXNJREF1TURBd01Td2daWEp5YjNJcE8xeHVJQ0FnSUNBZ1pXeHpaU0JwWmlBb1kyOXNkVzF1TG5SNWNHVWdQVDBnUkVjdVZGbFFSUzVFUVZSRlgxUkpUVVVwWEc0Z0lDQWdJQ0FnSUdWNGNHVmpkQ2hoWTNSMVlXeFdZV3gxWlM1cGMxTmhiV1VvZG1Gc2RXVXBMQ0IwY25WbExDQmxjbkp2Y2lrN1hHNGdJQ0FnSUNCbGJITmxYRzRnSUNBZ0lDQWdJR1Y0Y0dWamRDaGhZM1IxWVd4V1lXeDFaU3dnZG1Gc2RXVXNJR1Z5Y205eUtUdGNiaUFnSUNCOVhHNGdJSDFjYm4xY2JseHVaWGh3YjNKMElHWjFibU4wYVc5dUlHVjRjR1ZqZEU5aWFtVmpkQ2hoWTNSMVlXdzZJSHNnVzJ0bGVUb2djM1J5YVc1blhUb2dZVzU1SUgwc0lHVjRjR1ZqZEdWa09pQjdJRnRyWlhrNklITjBjbWx1WjEwNklHRnVlU0I5S1NCN1hHNGdJR1p2Y2lBb1kyOXVjM1FnVzJWNGNHVmpkR1ZrUzJWNUxDQmxlSEJsWTNSbFpGWmhiSFZsWFNCdlppQlBZbXBsWTNRdVpXNTBjbWxsY3lobGVIQmxZM1JsWkNrcElIdGNiaUFnSUNCcFppQW9JV0ZqZEhWaGJDNW9ZWE5QZDI1UWNtOXdaWEowZVNobGVIQmxZM1JsWkV0bGVTa3BYRzRnSUNBZ0lDQjBhSEp2ZHlCdVpYY2dSWEp5YjNJb1lFVjRjR1ZqZEdWa0lIQnliM0JsY25SNUlGd2lKSHRsZUhCbFkzUmxaRXRsZVgxY0lpQnViM1FnWm05MWJtUmdLVHRjYmx4dUlDQWdJR052Ym5OMElHRmpkSFZoYkZaaGJIVmxJRDBnWVdOMGRXRnNXMlY0Y0dWamRHVmtTMlY1WFR0Y2JpQWdJQ0JwWmlBb1lXTjBkV0ZzVm1Gc2RXVWdhVzV6ZEdGdVkyVnZaaUJCY25KaGVTQW1KaUJsZUhCbFkzUmxaRlpoYkhWbElHbHVjM1JoYm1ObGIyWWdRWEp5WVhrcFhHNGdJQ0FnSUNCbGVIQmxZM1JCY25KaGVTaGhZM1IxWVd4V1lXeDFaU3dnWlhod1pXTjBaV1JXWVd4MVpTazdYRzRnSUNBZ1pXeHpaU0JwWmlBb1lXTjBkV0ZzVm1Gc2RXVWdhVzV6ZEdGdVkyVnZaaUJQWW1wbFkzUWdKaVlnWlhod1pXTjBaV1JXWVd4MVpTQnBibk4wWVc1alpXOW1JRTlpYW1WamRDbGNiaUFnSUNBZ0lHVjRjR1ZqZEU5aWFtVmpkQ2hoWTNSMVlXeFdZV3gxWlN3Z1pYaHdaV04wWldSV1lXeDFaU2s3WEc0Z0lDQWdaV3h6WlNCcFppQW9UblZ0WW1WeUxtbHpSbWx1YVhSbEtHRmpkSFZoYkZaaGJIVmxLU0FtSmlCT2RXMWlaWEl1YVhOR2FXNXBkR1VvWlhod1pXTjBaV1JXWVd4MVpTa3BYRzRnSUNBZ0lDQmxlSEJsWTNSR2JHOWhkQ2hoWTNSMVlXeFdZV3gxWlN3Z1pYaHdaV04wWldSV1lXeDFaU2s3WEc0Z0lDQWdaV3h6WlNCcFppQW9ZV04wZFdGc1ZtRnNkV1VnSVQwZ1pYaHdaV04wWldSV1lXeDFaU2xjYmlBZ0lDQWdJSFJvY205M0lHNWxkeUJGY25KdmNpaGdSWGh3WldOMFpXUWdLQ1I3Wlhod1pXTjBaV1JXWVd4MVpYMHBJR1p2Y2lCclpYa2dKeVI3Wlhod1pXTjBaV1JMWlhsOUp5d2daMjkwSUNna2UyRmpkSFZoYkZaaGJIVmxmU2xnS1R0Y2JpQWdmVnh1ZlZ4dVhHNWxlSEJ2Y25RZ1puVnVZM1JwYjI0Z1pYaHdaV04wUVhKeVlYa29ZV04wZFdGc09pQkJjbkpoZVV4cGEyVThZVzU1UGl3Z1pYaHdaV04wWldRNklFRnljbUY1VEdsclpUeGhibmsrS1NCN1hHNGdJR052Ym5OMElHRmpkSFZoYkV4bGJtZDBhQ0E5SUdGamRIVmhiQzVzWlc1bmRHZzdYRzRnSUdOdmJuTjBJR1Y0Y0dWamRHVmtUR1Z1WjNSb0lEMGdaWGh3WldOMFpXUXViR1Z1WjNSb08xeHVYRzRnSUdsbUlDaGhZM1IxWVd4TVpXNW5kR2dnSVQwZ1pYaHdaV04wWldSTVpXNW5kR2dwSUh0Y2JpQWdJQ0IwYUhKdmR5QnVaWGNnUlhKeWIzSW9ZRUZ5Y21GNWN5QmhjbVVnYjJZZ1pHbG1abVZ5Wlc1MElHeGxibWQwYURvZ1lXTjBkV0ZzSUdGeWNtRjVJR3hsYm1kMGFDQnBjeUFrZTJGamRIVmhiRXhsYm1kMGFIMGdZQ0FyWEc0Z0lDQWdJQ0JnWVc1a0lHVjRjR1ZqZEdWa0lHRnljbUY1SUd4bGJtZDBhQ0JwY3lBa2UyVjRjR1ZqZEdWa1RHVnVaM1JvZldBcE8xeHVJQ0I5WEc1Y2JpQWdabTl5SUNoc1pYUWdhU0E5SURBN0lHa2dQQ0JoWTNSMVlXeE1aVzVuZEdnN0lHa3JLeWtnZTF4dUlDQWdJR2xtSUNoaFkzUjFZV3hiYVYwZ2FXNXpkR0Z1WTJWdlppQkJjbkpoZVNBbUppQmxlSEJsWTNSbFpGdHBYU0JwYm5OMFlXNWpaVzltSUVGeWNtRjVLVnh1SUNBZ0lDQWdaWGh3WldOMFFYSnlZWGtvWVdOMGRXRnNXMmxkTENCbGVIQmxZM1JsWkZ0cFhTazdYRzRnSUNBZ1pXeHpaU0JwWmlBb1lXTjBkV0ZzVzJsZElHbHVjM1JoYm1ObGIyWWdUMkpxWldOMElDWW1JR1Y0Y0dWamRHVmtXMmxkSUdsdWMzUmhibU5sYjJZZ1QySnFaV04wS1Z4dUlDQWdJQ0FnWlhod1pXTjBUMkpxWldOMEtHRmpkSFZoYkZ0cFhTd2daWGh3WldOMFpXUmJhVjBwTzF4dUlDQWdJR1ZzYzJVZ2FXWWdLR0ZqZEhWaGJGdHBYU0FoUFNCbGVIQmxZM1JsWkZ0cFhTbGNiaUFnSUNBZ0lIUm9jbTkzSUc1bGR5QkZjbkp2Y2loZ1JYaHdaV04wWldRZ0pIdGxlSEJsWTNSbFpGdHBYWDBnWVhRZ2NHOXphWFJwYjI0Z0pIdHBmU3dnWjI5MElDUjdZV04wZFdGc1cybGRmV0FwTzF4dUlDQjlYRzU5WEc1Y2JpOHFJRVJsWm1sdVpYTWdZU0IwWlhOMElITjFhWFJsTGlBcUwxeHVaWGh3YjNKMElHWjFibU4wYVc5dUlHTmhkR1ZuYjNKNUtHTmhkR1ZuYjNKNU9pQnpkSEpwYm1jc0lIUmxjM1J6WHpvZ0tDa2dQVDRnZG05cFpDd2diM0IwYVc5dWN6ODZJRU5oZEdWbmIzSjVUM0IwYVc5dWN5azZJSFp2YVdRZ2UxeHVJQ0JqZFhKeVpXNTBRMkYwWldkdmNua2dQU0JqWVhSbFoyOXllVHRjYmlBZ2RHVnpkSE5mS0NrN1hHNGdJR2xtSUNoMFpYTjBjMXRqZFhKeVpXNTBRMkYwWldkdmNubGRLU0I3WEc0Z0lDQWdkR1Z6ZEhOYlkzVnljbVZ1ZEVOaGRHVm5iM0o1WFM1amJHVmhjaUE5SUc5d2RHbHZibk0vTG1Oc1pXRnlJRDgvSUhSeWRXVTdYRzRnSUNBZ2RHVnpkSE5iWTNWeWNtVnVkRU5oZEdWbmIzSjVYUzUwYVcxbGIzVjBJRDBnYjNCMGFXOXVjejh1ZEdsdFpXOTFkRHRjYmlBZ2ZWeHVmVnh1WEc0dktpQkVaV1pwYm1WeklHRWdablZ1WTNScGIyNGdkRzhnWW1VZ1pYaGxZM1YwWldRZ1ltVm1iM0psSUhSb1pTQjBaWE4wY3lCcGJpQjBhR2x6SUdOaGRHVm5iM0o1SUdGeVpTQmxlR1ZqZFhSbFpDNGdLaTljYm1WNGNHOXlkQ0JtZFc1amRHbHZiaUJpWldadmNtVW9ZbVZtYjNKbE9pQW9LU0E5UGlCUWNtOXRhWE5sUEhadmFXUStLVG9nZG05cFpDQjdYRzRnSUdsbUlDaDBaWE4wYzF0amRYSnlaVzUwUTJGMFpXZHZjbmxkSUQwOUlIVnVaR1ZtYVc1bFpDbGNiaUFnSUNCMFpYTjBjMXRqZFhKeVpXNTBRMkYwWldkdmNubGRJRDBnZTMwN1hHNGdJSFJsYzNSelcyTjFjbkpsYm5SRFlYUmxaMjl5ZVYwdVltVm1iM0psSUQwZ1ltVm1iM0psTzF4dWZWeHVYRzR2S2lCRVpXWnBibVZ6SUdFZ1puVnVZM1JwYjI0Z2RHOGdZbVVnWlhobFkzVjBaV1FnWVdaMFpYSWdkR2hsSUhSbGMzUnpJR2x1SUhSb2FYTWdZMkYwWldkdmNua2dZWEpsSUdWNFpXTjFkR1ZrTGlBcUwxeHVaWGh3YjNKMElHWjFibU4wYVc5dUlHRm1kR1Z5S0dGbWRHVnlPaUFvS1NBOVBpQlFjbTl0YVhObFBIWnZhV1ErS1RvZ2RtOXBaQ0I3WEc0Z0lHbG1JQ2gwWlhOMGMxdGpkWEp5Wlc1MFEyRjBaV2R2Y25sZElEMDlJSFZ1WkdWbWFXNWxaQ2xjYmlBZ0lDQjBaWE4wYzF0amRYSnlaVzUwUTJGMFpXZHZjbmxkSUQwZ2UzMDdYRzRnSUhSbGMzUnpXMk4xY25KbGJuUkRZWFJsWjI5eWVWMHVZV1owWlhJZ1BTQmhablJsY2p0Y2JuMWNibHh1Wm5WdVkzUnBiMjRnWVdSa1RtRnRaWE53WVdObEtITTZJSE4wY21sdVp5d2daam9nUkVjdVJuVnVZeWs2SUhOMGNtbHVaeUI3WEc0Z0lISmxkSFZ5YmlCekxuSmxjR3hoWTJVb2JtVjNJRkpsWjBWNGNDaG1MbTVoYldVc0lDZG5hU2NwTENCbUxtNXhUbUZ0WlNrN1hHNTlYRzVjYm1WNGNHOXlkQ0JoYzNsdVl5Qm1kVzVqZEdsdmJpQnBibWwwUVhWMGIxUmxjM1J6S0hCaFkydGhaMlZKWkRvZ2MzUnlhVzVuTENCdGIyUjFiR1UvT2lCaGJua3BJSHRjYmlBZ2FXWWdLSGRoYzFKbFoybHpkR1Z5WldSYmNHRmphMkZuWlVsa1hTa2djbVYwZFhKdU8xeHVJQ0JqYjI1emRDQnRiMlIxYkdWVVpYTjBjeUE5SUcxdlpIVnNaU0EvSUcxdlpIVnNaUzUwWlhOMGN5QTZJSFJsYzNSek8xeHVJQ0JwWmlBb2JXOWtkV3hsVkdWemRITmJZWFYwYjFSbGMzUnpRMkYwVG1GdFpWMGdJVDA5SUhWdVpHVm1hVzVsWkNCOGZGeHVJQ0FnSUU5aWFtVmpkQzVyWlhsektHMXZaSFZzWlZSbGMzUnpLUzVtYVc1a0tDaGpLU0E5UGlCakxuTjBZWEowYzFkcGRHZ29ZWFYwYjFSbGMzUnpRMkYwVG1GdFpTa3BLU0I3WEc0Z0lDQWdkMkZ6VW1WbmFYTjBaWEpsWkZ0d1lXTnJZV2RsU1dSZElEMGdkSEoxWlR0Y2JpQWdJQ0J5WlhSMWNtNDdYRzRnSUgxY2JpQWdZMjl1YzNRZ2JXOWtkV3hsUVhWMGIxUmxjM1J6SUQwZ1cxMDdYRzRnSUdOdmJuTjBJSEJoWTJ0R2RXNWpkR2x2Ym5NZ1BTQmhkMkZwZENCbmNtOXJMbVJoY0drdVpuVnVZM1JwYjI1ekxtWnBiSFJsY2loZ2NHRmphMkZuWlM1cFpDQTlJRndpSkh0d1lXTnJZV2RsU1dSOVhDSmdLUzVzYVhOMEtDazdYRzRnSUdOdmJuTjBJR2x1YVhSeklEMGdjR0ZqYTBaMWJtTjBhVzl1Y3k1bWFXeDBaWElvS0dZcElEMCtJR1l1YUdGelZHRm5LQ2RwYm1sMFZHVnpkSE1uS1NrN1hHNGdJR2xtSUNocGJtbDBjeTVzWlc1bmRHZ3BJSHRjYmlBZ0lDQm1iM0lnS0dOdmJuTjBJR1lnYjJZZ2FXNXBkSE1wWEc0Z0lDQWdJQ0JoZDJGcGRDQm1MbUZ3Y0d4NUtDazdYRzRnSUgxY2JpQWdZMjl1YzNRZ2NtVm5JRDBnYm1WM0lGSmxaMFY0Y0NndmMydHBjRHBjWEhNcUtGdGVMRnhjYzEwcktYeDNZV2wwT2x4Y2N5b29YRnhrS3lsOFkyRjBPbHhjY3lvb1cxNHNYRnh6WFNzcEwyY3BPMXh1SUNCbWIzSWdLR052Ym5OMElHWWdiMllnY0dGamEwWjFibU4wYVc5dWN5a2dlMXh1SUNBZ0lHTnZibk4wSUhSbGMzUnpJRDBnWmk1dmNIUnBiMjV6V3lkMFpYTjBKMTA3WEc0Z0lDQWdhV1lnS0NFb2RHVnpkSE1nSmlZZ1FYSnlZWGt1YVhOQmNuSmhlU2gwWlhOMGN5a2dKaVlnZEdWemRITXViR1Z1WjNSb0tTa2dZMjl1ZEdsdWRXVTdYRzRnSUNBZ1ptOXlJQ2hzWlhRZ2FTQTlJREE3SUdrZ1BDQjBaWE4wY3k1c1pXNW5kR2c3SUdrckt5a2dlMXh1SUNBZ0lDQWdZMjl1YzNRZ2NtVnpJRDBnS0hSbGMzUnpXMmxkSUdGeklITjBjbWx1WnlrdWJXRjBZMmhCYkd3b2NtVm5LVHRjYmlBZ0lDQWdJR052Ym5OMElHMWhjRG9nZTNOcmFYQS9PaUJ6ZEhKcGJtY3NJSGRoYVhRL09pQnVkVzFpWlhJc0lHTmhkRDg2SUhOMGNtbHVaMzBnUFNCN2ZUdGNiaUFnSUNBZ0lFRnljbUY1TG1aeWIyMG9jbVZ6S1M1bWIzSkZZV05vS0NoaGNuSXBJRDArSUh0Y2JpQWdJQ0FnSUNBZ2FXWWdLR0Z5Y2xzd1hTNXpkR0Z5ZEhOWGFYUm9LQ2R6YTJsd0p5a3BJRzFoY0ZzbmMydHBjQ2RkSUQwZ1lYSnlXekZkTzF4dUlDQWdJQ0FnSUNCbGJITmxJR2xtSUNoaGNuSmJNRjB1YzNSaGNuUnpWMmwwYUNnbmQyRnBkQ2NwS1NCdFlYQmJKM2RoYVhRblhTQTlJSEJoY25ObFNXNTBLR0Z5Y2xzeVhTazdYRzRnSUNBZ0lDQWdJR1ZzYzJVZ2FXWWdLR0Z5Y2xzd1hTNXpkR0Z5ZEhOWGFYUm9LQ2RqWVhRbktTa2diV0Z3V3lkallYUW5YU0E5SUdGeWNsc3pYVHRjYmlBZ0lDQWdJSDBwTzF4dUlDQWdJQ0FnWTI5dWMzUWdkR1Z6ZENBOUlHNWxkeUJVWlhOMEtHRjFkRzlVWlhOMGMwTmhkRTVoYldVc0lIUmxjM1J6TG14bGJtZDBhQ0E5UFQwZ01TQS9JR1l1Ym1GdFpTQTZJR0FrZTJZdWJtRnRaWDBnSkh0cElDc2dNWDFnTENCaGMzbHVZeUFvS1NBOVBpQjdYRzRnSUNBZ0lDQWdJR052Ym5OMElISmxjeUE5SUdGM1lXbDBJR2R5YjJzdVpuVnVZM1JwYjI1ekxtVjJZV3dvWVdSa1RtRnRaWE53WVdObEtIUmxjM1J6VzJsZExDQm1LU2s3WEc0Z0lDQWdJQ0FnSUdsbUlDaHRZWEF1ZDJGcGRDa2dZWGRoYVhRZ1pHVnNZWGtvYldGd0xuZGhhWFFwTzF4dUlDQWdJQ0FnSUNBdkx5QmxjMnhwYm5RdFpHbHpZV0pzWlMxdVpYaDBMV3hwYm1VZ2JtOHRkR2h5YjNjdGJHbDBaWEpoYkZ4dUlDQWdJQ0FnSUNCcFppQW9kSGx3Wlc5bUlISmxjeUE5UFQwZ0oySnZiMnhsWVc0bklDWW1JQ0Z5WlhNcElIUm9jbTkzSUdCR1lXbHNaV1E2SUNSN2RHVnpkSE5iYVYxOUxDQmxlSEJsWTNSbFpDQjBjblZsTENCbmIzUWdKSHR5WlhOOVlEdGNiaUFnSUNBZ0lIMHNJSHR6YTJsd1VtVmhjMjl1T2lCdFlYQXVjMnRwY0gwcE8xeHVJQ0FnSUNBZ2FXWWdLRzFoY0M1allYUXBJSHRjYmlBZ0lDQWdJQ0FnWTI5dWMzUWdZMkYwT2lCemRISnBibWNnUFNCaGRYUnZWR1Z6ZEhORFlYUk9ZVzFsSUNzZ0p6b2dKeUFySUcxaGNDNWpZWFE3WEc0Z0lDQWdJQ0FnSUhSbGMzUXVZMkYwWldkdmNua2dQU0JqWVhRN1hHNGdJQ0FnSUNBZ0lHbG1JQ2h0YjJSMWJHVlVaWE4wYzF0allYUmRJRDA5UFNCMWJtUmxabWx1WldRcFhHNGdJQ0FnSUNBZ0lDQWdiVzlrZFd4bFZHVnpkSE5iWTJGMFhTQTlJSHQwWlhOMGN6b2dXMTBzSUdOc1pXRnlPaUIwY25WbGZUdGNiaUFnSUNBZ0lDQWdiVzlrZFd4bFZHVnpkSE5iWTJGMFhTNTBaWE4wY3k1d2RYTm9LSFJsYzNRcE8xeHVJQ0FnSUNBZ2ZTQmxiSE5sSUh0Y2JpQWdJQ0FnSUNBZ2JXOWtkV3hsUVhWMGIxUmxjM1J6TG5CMWMyZ29kR1Z6ZENrN1hHNGdJQ0FnSUNCOVhHNGdJQ0FnZlZ4dUlDQjlYRzRnSUhkaGMxSmxaMmx6ZEdWeVpXUmJjR0ZqYTJGblpVbGtYU0E5SUhSeWRXVTdYRzRnSUdsbUlDZ2hiVzlrZFd4bFFYVjBiMVJsYzNSekxteGxibWQwYUNrZ2NtVjBkWEp1TzF4dUlDQnRiMlIxYkdWVVpYTjBjMXRoZFhSdlZHVnpkSE5EWVhST1lXMWxYU0E5SUh0MFpYTjBjem9nYlc5a2RXeGxRWFYwYjFSbGMzUnpMQ0JqYkdWaGNqb2dkSEoxWlgwN1hHNTlYRzVjYm1WNGNHOXlkQ0JoYzNsdVl5Qm1kVzVqZEdsdmJpQnlkVzVVWlhOMGN5aHZjSFJwYjI1elB6b2dlMk5oZEdWbmIzSjVQem9nYzNSeWFXNW5MQ0IwWlhOMFB6b2djM1J5YVc1bkxDQjBaWE4wUTI5dWRHVjRkRDg2SUZSbGMzUkRiMjUwWlhoMGZTa2dlMXh1SUNCamIyNXpkQ0J3WVdOcllXZGxYeUE5SUdkeWIyc3VablZ1WTNScGIyNXpMbWRsZEVOMWNuSmxiblJEWVd4c0tDay9MbVoxYm1NL0xuQmhZMnRoWjJVN1hHNGdJR0YzWVdsMElHbHVhWFJCZFhSdlZHVnpkSE1vY0dGamEyRm5aVjh1YVdRcE8xeHVJQ0JqYjI1emRDQnlaWE4xYkhSek9pQjdJR05oZEdWbmIzSjVQem9nYzNSeWFXNW5MQ0J1WVcxbFB6b2djM1J5YVc1bkxDQnpkV05qWlhOek9pQmliMjlzWldGdUxGeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSEpsYzNWc2REb2djM1J5YVc1bkxDQnRjem9nYm5WdFltVnlMQ0J6YTJsd2NHVmtPaUJpYjI5c1pXRnVJSDFiWFNBOUlGdGRPMXh1SUNCamIyNXpiMnhsTG14dlp5aGdVblZ1Ym1sdVp5QjBaWE4wYzJBcE8xeHVJQ0J2Y0hScGIyNXpJRDgvUFNCN2ZUdGNiaUFnYjNCMGFXOXVjeUV1ZEdWemRFTnZiblJsZUhRZ1B6ODlJRzVsZHlCVVpYTjBRMjl1ZEdWNGRDZ3BPMXh1SUNCbmNtOXJMbk5vWld4c0xteGhjM1JGY25KdmNpQTlJQ2NuTzF4dUlDQm1iM0lnS0dOdmJuTjBJRnRyWlhrc0lIWmhiSFZsWFNCdlppQlBZbXBsWTNRdVpXNTBjbWxsY3loMFpYTjBjeWtwSUh0Y2JpQWdJQ0JwWmlBb2IzQjBhVzl1Y3o4dVkyRjBaV2R2Y25rZ0lUMGdkVzVrWldacGJtVmtLU0I3WEc0Z0lDQWdJQ0JwWmlBb0lXdGxlUzUwYjB4dmQyVnlRMkZ6WlNncExuTjBZWEowYzFkcGRHZ29iM0IwYVc5dWN6OHVZMkYwWldkdmNua3VkRzlNYjNkbGNrTmhjMlVvS1NrcFhHNGdJQ0FnSUNBZ0lHTnZiblJwYm5WbE8xeHVJQ0FnSUgxY2JpQWdJQ0JqYjI1emIyeGxMbXh2WnloZ1UzUmhjblJsWkNBa2UydGxlWDBnWTJGMFpXZHZjbmxnS1R0Y2JpQWdJQ0IwY25rZ2UxeHVJQ0FnSUNBZ2FXWWdLSFpoYkhWbExtSmxabTl5WlNsY2JpQWdJQ0FnSUNBZ1lYZGhhWFFnZG1Gc2RXVXVZbVZtYjNKbEtDazdYRzRnSUNBZ2ZTQmpZWFJqYUNBb2VEb2dZVzU1S1NCN1hHNGdJQ0FnSUNCMllXeDFaUzVpWldadmNtVlRkR0YwZFhNZ1BTQjRMblJ2VTNSeWFXNW5LQ2s3WEc0Z0lDQWdmVnh1SUNBZ0lHTnZibk4wSUhRZ1BTQjJZV3gxWlM1MFpYTjBjeUEvUHlCYlhUdGNiaUFnSUNCamIyNXpkQ0J5WlhNZ1BTQmJYVHRjYmlBZ0lDQnBaaUFvZG1Gc2RXVXVZMnhsWVhJcElIdGNiaUFnSUNBZ0lHWnZjaUFvYkdWMElHa2dQU0F3T3lCcElEd2dkQzVzWlc1bmRHZzdJR2tyS3lrZ2UxeHVJQ0FnSUNBZ0lDQnlaWE11Y0hWemFDaGhkMkZwZENCbGVHVmpWR1Z6ZENoMFcybGRMQ0J2Y0hScGIyNXpQeTUwWlhOMExDQjJZV3gxWlM1MGFXMWxiM1YwTENCd1lXTnJZV2RsWHk1dVlXMWxLU2s3WEc0Z0lDQWdJQ0FnSUdkeWIyc3VjMmhsYkd3dVkyeHZjMlZCYkd3b0tUdGNiaUFnSUNBZ0lDQWdSRWN1UW1Gc2JHOXZiaTVqYkc5elpVRnNiQ2dwTzF4dUlDQWdJQ0FnZlZ4dUlDQWdJSDBnWld4elpTQjdYRzRnSUNBZ0lDQm1iM0lnS0d4bGRDQnBJRDBnTURzZ2FTQThJSFF1YkdWdVozUm9PeUJwS3lzcFhHNGdJQ0FnSUNBZ0lISmxjeTV3ZFhOb0tHRjNZV2wwSUdWNFpXTlVaWE4wS0hSYmFWMHNJRzl3ZEdsdmJuTS9MblJsYzNRc0lIWmhiSFZsTG5ScGJXVnZkWFFzSUhCaFkydGhaMlZmTG01aGJXVXBLVHRjYmlBZ0lDQjlYRzRnSUNBZ1kyOXVjM1FnWkdGMFlTQTlJQ2hoZDJGcGRDQlFjbTl0YVhObExtRnNiQ2h5WlhNcEtTNW1hV3gwWlhJb0tHUXBJRDArSUdRdWNtVnpkV3gwSUNFOUlDZHphMmx3Y0dWa0p5azdYRzRnSUNBZ2RISjVJSHRjYmlBZ0lDQWdJR2xtSUNoMllXeDFaUzVoWm5SbGNpbGNiaUFnSUNBZ0lDQWdZWGRoYVhRZ2RtRnNkV1V1WVdaMFpYSW9LVHRjYmlBZ0lDQjlJR05oZEdOb0lDaDRPaUJoYm5rcElIdGNiaUFnSUNBZ0lIWmhiSFZsTG1GbWRHVnlVM1JoZEhWeklEMGdlQzUwYjFOMGNtbHVaeWdwTzF4dUlDQWdJSDFjYmlBZ0lDQXZMeUJEYkdWaGNpQmhablJsY2lCallYUmxaMjl5ZVZ4dUlDQWdJQzh2SUdkeWIyc3VjMmhsYkd3dVkyeHZjMlZCYkd3b0tUdGNiaUFnSUNBdkx5QkVSeTVDWVd4c2IyOXVMbU5zYjNObFFXeHNLQ2s3WEc0Z0lDQWdhV1lnS0haaGJIVmxMbUZtZEdWeVUzUmhkSFZ6S1Z4dUlDQWdJQ0FnWkdGMFlTNXdkWE5vS0h0allYUmxaMjl5ZVRvZ2EyVjVMQ0J1WVcxbE9pQW5hVzVwZENjc0lISmxjM1ZzZERvZ2RtRnNkV1V1WVdaMFpYSlRkR0YwZFhNc0lITjFZMk5sYzNNNklHWmhiSE5sTENCdGN6b2dNQ3dnYzJ0cGNIQmxaRG9nWm1Gc2MyVjlLVHRjYmlBZ0lDQnBaaUFvZG1Gc2RXVXVZbVZtYjNKbFUzUmhkSFZ6S1Z4dUlDQWdJQ0FnWkdGMFlTNXdkWE5vS0h0allYUmxaMjl5ZVRvZ2EyVjVMQ0J1WVcxbE9pQW5hVzVwZENjc0lISmxjM1ZzZERvZ2RtRnNkV1V1WW1WbWIzSmxVM1JoZEhWekxDQnpkV05qWlhOek9pQm1ZV3h6WlN3Z2JYTTZJREFzSUhOcmFYQndaV1E2SUdaaGJITmxmU2s3WEc0Z0lDQWdjbVZ6ZFd4MGN5NXdkWE5vS0M0dUxtUmhkR0VwTzF4dUlDQjlYRzRnSUdsbUlDaHZjSFJwYjI1ekxuUmxjM1JEYjI1MFpYaDBMbU5oZEdOb1ZXNW9ZVzVrYkdWa0tTQjdYRzRnSUNBZ1lYZGhhWFFnWkdWc1lYa29NVEF3TUNrN1hHNGdJQ0FnYVdZZ0tHZHliMnN1YzJobGJHd3ViR0Z6ZEVWeWNtOXlMbXhsYm1kMGFDQStJREFwSUh0Y2JpQWdJQ0FnSUhKbGMzVnNkSE11Y0hWemFDaDdYRzRnSUNBZ0lDQWdJR05oZEdWbmIzSjVPaUFuVlc1b1lXNWtiR1ZrSUdWNFkyVndkR2x2Ym5NbkxGeHVJQ0FnSUNBZ0lDQnVZVzFsT2lBblpYaGpaWEIwYVc5dWN5Y3NYRzRnSUNBZ0lDQWdJSEpsYzNWc2REb2daM0p2YXk1emFHVnNiQzVzWVhOMFJYSnliM0lzSUhOMVkyTmxjM002SUdaaGJITmxMQ0J0Y3pvZ01Dd2djMnRwY0hCbFpEb2dabUZzYzJWY2JpQWdJQ0FnSUgwcE8xeHVJQ0FnSUgxY2JpQWdmVnh1SUNCcFppQW9iM0IwYVc5dWN5NTBaWE4wUTI5dWRHVjRkQzV5WlhCdmNuUXBJSHRjYmlBZ0lDQmpiMjV6ZENCc2IyZG5aWElnUFNCdVpYY2dSRWN1VEc5bloyVnlLQ2s3WEc0Z0lDQWdZMjl1YzNRZ2MzVmpZMlZ6YzJaMWJDQTlJSEpsYzNWc2RITXVabWxzZEdWeUtDaHlLU0E5UGlCeUxuTjFZMk5sYzNNcExteGxibWQwYUR0Y2JpQWdJQ0JqYjI1emRDQnphMmx3Y0dWa0lEMGdjbVZ6ZFd4MGN5NW1hV3gwWlhJb0tISXBJRDArSUhJdWMydHBjSEJsWkNrdWJHVnVaM1JvTzF4dUlDQWdJR052Ym5OMElHWmhhV3hsWkNBOUlISmxjM1ZzZEhNdVptbHNkR1Z5S0NoeUtTQTlQaUFoY2k1emRXTmpaWE56S1R0Y2JpQWdJQ0JqYjI1emRDQmtaWE5qY21sd2RHbHZiaUE5SUNkUVlXTnJZV2RsSUVCd1lXTnJZV2RsSUhSbGMzUmxaRG9nUUhOMVkyTmxjM05tZFd3Z2MzVmpZMlZ6YzJaMWJDd2dRSE5yYVhCd1pXUWdjMnRwY0hCbFpDd2dRR1poYVd4bFpDQm1ZV2xzWldRZ2RHVnpkSE1uTzF4dUlDQWdJR052Ym5OMElIQmhjbUZ0Y3lBOUlIdGNiaUFnSUNBZ0lITjFZMk5sYzNObWRXdzZJSE4xWTJObGMzTm1kV3dzWEc0Z0lDQWdJQ0J6YTJsd2NHVmtPaUJ6YTJsd2NHVmtMRnh1SUNBZ0lDQWdabUZwYkdWa09pQm1ZV2xzWldRdWJHVnVaM1JvTEZ4dUlDQWdJQ0FnY0dGamEyRm5aVG9nY0dGamEyRm5aVjljYmlBZ0lDQjlPMXh1SUNBZ0lHWnZjaUFvWTI5dWMzUWdjaUJ2WmlCbVlXbHNaV1FwSUU5aWFtVmpkQzVoYzNOcFoyNG9jR0Z5WVcxekxDQjdXMkFrZTNJdVkyRjBaV2R2Y25sOUlId2dKSHR5TG01aGJXVjlZRjA2SUhJdWNtVnpkV3gwZlNrN1hHNGdJQ0FnYkc5bloyVnlMbXh2Wnloa1pYTmpjbWx3ZEdsdmJpd2djR0Z5WVcxekxDQW5jR0ZqYTJGblpTMTBaWE4wWldRbktUdGNiaUFnZlZ4dUlDQnlaWFIxY200Z2NtVnpkV3gwY3p0Y2JuMWNibHh1WVhONWJtTWdablZ1WTNScGIyNGdaWGhsWTFSbGMzUW9kRG9nVkdWemRDd2djSEpsWkdsallYUmxPaUJ6ZEhKcGJtY2dmQ0IxYm1SbFptbHVaV1FzSUdOaGRHVm5iM0o1VkdsdFpXOTFkRDg2SUc1MWJXSmxjaXdnY0dGamEyRm5aVTVoYldVL09pQnpkSEpwYm1jcElIdGNiaUFnYkdWMElISTZJSHNnWTJGMFpXZHZjbmsvT2lCemRISnBibWNzSUc1aGJXVS9PaUJ6ZEhKcGJtY3NJSE4xWTJObGMzTTZJR0p2YjJ4bFlXNHNJSEpsYzNWc2REb2djM1J5YVc1bkxDQnRjem9nYm5WdFltVnlMQ0J6YTJsd2NHVmtPaUJpYjI5c1pXRnVJSDA3WEc0Z0lHTnZibk4wSUdacGJIUmxjaUE5SUhCeVpXUnBZMkYwWlNBaFBTQjFibVJsWm1sdVpXUWdKaVlnS0NGMExtNWhiV1V1ZEc5TWIzZGxja05oYzJVb0tTNXpkR0Z5ZEhOWGFYUm9LSEJ5WldScFkyRjBaUzUwYjB4dmQyVnlRMkZ6WlNncEtTazdYRzRnSUdOdmJuTjBJSE5yYVhBZ1BTQjBMbTl3ZEdsdmJuTS9Mbk5yYVhCU1pXRnpiMjRnZkh3Z1ptbHNkR1Z5TzF4dUlDQmpiMjV6ZENCemEybHdVbVZoYzI5dUlEMGdabWxzZEdWeUlEOGdKM05yYVhCd1pXUW5JRG9nZEM1dmNIUnBiMjV6UHk1emEybHdVbVZoYzI5dU8xeHVJQ0JwWmlBb0lYTnJhWEFwWEc0Z0lDQWdZMjl1YzI5c1pTNXNiMmNvWUZOMFlYSjBaV1FnSkh0MExtTmhkR1ZuYjNKNWZTQWtlM1F1Ym1GdFpYMWdLVHRjYmlBZ1kyOXVjM1FnYzNSaGNuUWdQU0J1WlhjZ1JHRjBaU2dwTzF4dUlDQjBjbmtnZTF4dUlDQWdJR2xtSUNoemEybHdLU0I3WEc0Z0lDQWdJQ0J5SUQwZ2UzTjFZMk5sYzNNNklIUnlkV1VzSUhKbGMzVnNkRG9nYzJ0cGNGSmxZWE52YmlFc0lHMXpPaUF3TENCemEybHdjR1ZrT2lCMGNuVmxmVHRjYmlBZ0lDQjlJR1ZzYzJVZ2UxeHVJQ0FnSUNBZ2JHVjBJSFJwYldWdmRYUmZJRDBnZEM1dmNIUnBiMjV6UHk1MGFXMWxiM1YwSUQwOVBTQlRWRUZPUkVGU1ZGOVVTVTFGVDFWVUlDWW1YRzRnSUNBZ0lDQWdJR05oZEdWbmIzSjVWR2x0Wlc5MWRDQS9JR05oZEdWbmIzSjVWR2x0Wlc5MWRDQTZJSFF1YjNCMGFXOXVjejh1ZEdsdFpXOTFkQ0U3WEc0Z0lDQWdJQ0IwYVcxbGIzVjBYeUE5SUVSSExsUmxjM1F1YVhOSmJrSmxibU5vYldGeWF5QW1KaUIwYVcxbGIzVjBYeUE5UFQwZ1UxUkJUa1JCVWxSZlZFbE5SVTlWVkNBL0lFSkZUa05JVFVGU1MxOVVTVTFGVDFWVUlEb2dkR2x0Wlc5MWRGODdYRzRnSUNBZ0lDQnlJRDBnZTNOMVkyTmxjM002SUhSeWRXVXNJSEpsYzNWc2REb2dZWGRoYVhRZ2RHbHRaVzkxZENoMExuUmxjM1FzSUhScGJXVnZkWFJmS1NBL1B5QW5UMHNuTENCdGN6b2dNQ3dnYzJ0cGNIQmxaRG9nWm1Gc2MyVjlPMXh1SUNBZ0lIMWNiaUFnZlNCallYUmphQ0FvZURvZ1lXNTVLU0I3WEc0Z0lDQWdjaUE5SUh0emRXTmpaWE56T2lCbVlXeHpaU3dnY21WemRXeDBPaUI0TG5SdlUzUnlhVzVuS0Nrc0lHMXpPaUF3TENCemEybHdjR1ZrT2lCbVlXeHpaWDA3WEc0Z0lIMWNiaUFnWTI5dWMzUWdjM1J2Y0NBOUlHNWxkeUJFWVhSbEtDazdYRzRnSUM4dklFQjBjeTFwWjI1dmNtVmNiaUFnY2k1dGN5QTlJSE4wYjNBZ0xTQnpkR0Z5ZER0Y2JseHVJQ0JwWmlBb0lYTnJhWEFwWEc0Z0lDQWdZMjl1YzI5c1pTNXNiMmNvWUVacGJtbHphR1ZrSUNSN2RDNWpZWFJsWjI5eWVYMGdKSHQwTG01aGJXVjlJR1p2Y2lBa2UzSXViWE45SUcxellDazdYRzRnSUhJdVkyRjBaV2R2Y25rZ1BTQjBMbU5oZEdWbmIzSjVPMXh1SUNCeUxtNWhiV1VnUFNCMExtNWhiV1U3WEc0Z0lHbG1JQ2doWm1sc2RHVnlLU0I3WEc0Z0lDQWdaM0p2YXk1c2IyY3VkWE5oWjJVb1lDUjdjR0ZqYTJGblpVNWhiV1Y5T2lBa2UzUXVZMkYwWldkdmNubDlPaUFrZTNRdWJtRnRaWDFnTEZ4dUlDQWdJQ0FnZXlkemRXTmpaWE56SnpvZ2NpNXpkV05qWlhOekxDQW5jbVZ6ZFd4MEp6b2djaTV5WlhOMWJIUXNJQ2R0Y3ljNklISXViWE1zSUNkemEybHdjR1ZrSnpvZ2NpNXphMmx3Y0dWa0xGeHVJQ0FnSUNBZ0lDQW5kSGx3WlNjNklDZHdZV05yWVdkbEp5d2djR0ZqYTJGblpVNWhiV1VzSUNkallYUmxaMjl5ZVNjNklIUXVZMkYwWldkdmNua3NJQ2QwWlhOMEp6b2dkQzV1WVcxbGZTeGNiaUFnSUNBZ0lHQjBaWE4wTFhCaFkydGhaMlVnSkh0d1lXTnJZV2RsVG1GdFpYMDZJQ1I3ZEM1allYUmxaMjl5ZVgwNklDUjdkQzV1WVcxbGZXQXBPMXh1SUNCOVhHNGdJSEpsZEhWeWJpQnlPMXh1ZlZ4dVhHNHZLaUJYWVdsMGN5QmJiWE5kSUcxcGJHeHBjMlZqYjI1a2N5QXFMMXh1Wlhod2IzSjBJR0Z6ZVc1aklHWjFibU4wYVc5dUlHUmxiR0Y1S0cxek9pQnVkVzFpWlhJcElIdGNiaUFnWVhkaGFYUWdibVYzSUZCeWIyMXBjMlVvS0hJcElEMCtJSE5sZEZScGJXVnZkWFFvY2l3Z2JYTXBLVHRjYm4xY2JseHVaWGh3YjNKMElHRnplVzVqSUdaMWJtTjBhVzl1SUdGM1lXbDBRMmhsWTJzb1kyaGxZMnRJWVc1a2JHVnlPaUFvS1NBOVBpQmliMjlzWldGdUxGeHVJQ0JsY25KdmNqb2djM1J5YVc1bklEMGdKMVJwYldWdmRYUWdaWGhqWldWa1pXUW5MQ0IzWVdsME9pQnVkVzFpWlhJZ1BTQTFNREFzSUdsdWRHVnlkbUZzT2lCdWRXMWlaWElnUFNBMU1DazZJRkJ5YjIxcGMyVThkbTlwWkQ0Z2UxeHVJQ0J5WlhSMWNtNGdibVYzSUZCeWIyMXBjMlVvS0hKbGMyOXNkbVVzSUhKbGFtVmpkQ2tnUFQ0Z2UxeHVJQ0FnSUhObGRGUnBiV1Z2ZFhRb0tDa2dQVDRnZTF4dUlDQWdJQ0FnWTJ4bFlYSkpiblJsY25aaGJDaHBiblJsY25aaGJFbGtLVHRjYmlBZ0lDQWdJSEpsYW1WamRDaHVaWGNnUlhKeWIzSW9aWEp5YjNJcEtUdGNiaUFnSUNCOUxDQjNZV2wwS1R0Y2JpQWdJQ0F2THlCQWRITXRhV2R1YjNKbFhHNGdJQ0FnWTI5dWMzUWdhVzUwWlhKMllXeEpaRG9nVkdsdFpXOTFkQ0E5SUhObGRFbHVkR1Z5ZG1Gc0tDZ3BJRDArSUh0Y2JpQWdJQ0FnSUdsbUlDaGphR1ZqYTBoaGJtUnNaWElvS1NrZ2UxeHVJQ0FnSUNBZ0lDQmpiR1ZoY2tsdWRHVnlkbUZzS0dsdWRHVnlkbUZzU1dRcE8xeHVJQ0FnSUNBZ0lDQnlaWE52YkhabEtDazdYRzRnSUNBZ0lDQjlYRzRnSUNBZ2ZTd2dhVzUwWlhKMllXd3BPMXh1SUNCOUtUdGNibjFjYmx4dVlYTjVibU1nWm5WdVkzUnBiMjRnZEdsdFpXOTFkQ2htZFc1ak9pQW9LU0E5UGlCUWNtOXRhWE5sUEdGdWVUNHNJSFJsYzNSVWFXMWxiM1YwT2lCdWRXMWlaWElwT2lCUWNtOXRhWE5sUEdGdWVUNGdlMXh1SUNCc1pYUWdkR2x0Wlc5MWREb2dWR2x0Wlc5MWRDQjhJRzUxYkd3Z1BTQnVkV3hzTzF4dUlDQmpiMjV6ZENCMGFXMWxiM1YwVUhKdmJXbHpaU0E5SUc1bGR5QlFjbTl0YVhObFBHRnVlVDRvS0Y4c0lISmxhbVZqZENrZ1BUNGdlMXh1SUNBZ0lDOHZRSFJ6TFdsbmJtOXlaVnh1SUNBZ0lIUnBiV1Z2ZFhRZ1BTQnpaWFJVYVcxbGIzVjBLQ2dwSUQwK0lIdGNiaUFnSUNBZ0lDOHZJR1Z6YkdsdWRDMWthWE5oWW14bExXNWxlSFF0YkdsdVpTQndjbVZtWlhJdGNISnZiV2x6WlMxeVpXcGxZM1F0WlhKeWIzSnpYRzRnSUNBZ0lDQnlaV3BsWTNRb0owVllSVU5WVkVsUFRpQlVTVTFGVDFWVUp5azdYRzRnSUNBZ2ZTd2dkR1Z6ZEZScGJXVnZkWFFwTzF4dUlDQjlLVHRjYmlBZ2RISjVJSHRjYmlBZ0lDQnlaWFIxY200Z1lYZGhhWFFnVUhKdmJXbHpaUzV5WVdObEtGdG1kVzVqS0Nrc0lIUnBiV1Z2ZFhSUWNtOXRhWE5sWFNrN1hHNGdJSDBnWm1sdVlXeHNlU0I3WEc0Z0lDQWdhV1lnS0hScGJXVnZkWFFwWEc0Z0lDQWdJQ0JqYkdWaGNsUnBiV1Z2ZFhRb2RHbHRaVzkxZENrN1hHNGdJSDFjYm4xY2JseHVaWGh3YjNKMElHWjFibU4wYVc5dUlHbHpSR2xoYkc5blVISmxjMlZ1ZENoa2FXRnNiMmRVYVhSc1pUb2djM1J5YVc1bktUb2dZbTl2YkdWaGJpQjdYRzRnSUdOdmJuTjBJR1JwWVd4dlozTWdQU0JFUnk1RWFXRnNiMmN1WjJWMFQzQmxia1JwWVd4dlozTW9LVHRjYmlBZ1ptOXlJQ2hzWlhRZ2FTQTlJREE3SUdrZ1BDQmthV0ZzYjJkekxteGxibWQwYURzZ2FTc3JLU0I3WEc0Z0lDQWdhV1lnS0dScFlXeHZaM05iYVYwdWRHbDBiR1VnUFQwZ1pHbGhiRzluVkdsMGJHVXBYRzRnSUNBZ0lDQnlaWFIxY200Z2RISjFaVHRjYmlBZ2ZWeHVJQ0J5WlhSMWNtNGdabUZzYzJVN1hHNTlYRzVjYmk4cUtpQkZlSEJsWTNSeklHRnVJR0Z6ZVc1amFISnZibTkxY3lCN1FHeHBibXNnWVdOMGFXOXVmU0IwYnlCMGFISnZkeUJoYmlCbGVHTmxjSFJwYjI0dUlGVnpaU0I3UUd4cGJtc2dZMmhsWTJ0OUlIUnZJSEJsY21admNtMWNiaUFxSUdSbFpYQmxjaUJwYm5Od1pXTjBhVzl1SUc5bUlIUm9aU0JsZUdObGNIUnBiMjRnYVdZZ2JtVmpaWE56WVhKNUxseHVJQ29nUUhCaGNtRnRJQ0I3Wm5WdVkzUnBiMjRvS1RvZ1VISnZiV2x6WlR4MmIybGtQbjBnWVdOMGFXOXVYRzRnS2lCQWNHRnlZVzBnSUh0bWRXNWpkR2x2YmloaGJua3BPaUJpYjI5c1pXRnVmU0JqYUdWamExeHVJQ29nUUhKbGRIVnliaUI3VUhKdmJXbHpaVHgyYjJsa1BuMWNiaUFxTDF4dVpYaHdiM0owSUdGemVXNWpJR1oxYm1OMGFXOXVJR1Y0Y0dWamRFVjRZMlZ3ZEdsdmJrRnplVzVqS0dGamRHbHZiam9nS0NrZ1BUNGdVSEp2YldselpUeDJiMmxrUGl4Y2JpQWdZMmhsWTJzL09pQW9aWGhqWlhCMGFXOXVPaUJoYm5rcElEMCtJR0p2YjJ4bFlXNHBPaUJRY205dGFYTmxQSFp2YVdRK0lIdGNiaUFnYkdWMElHTmhkV2RvZERvZ1ltOXZiR1ZoYmlBOUlHWmhiSE5sTzF4dUlDQnNaWFFnWTJobFkydGxaRG9nWW05dmJHVmhiaUE5SUdaaGJITmxPMXh1SUNCMGNua2dlMXh1SUNBZ0lHRjNZV2wwSUdGamRHbHZiaWdwTzF4dUlDQjlJR05oZEdOb0lDaGxLU0I3WEc0Z0lDQWdZMkYxWjJoMElEMGdkSEoxWlR0Y2JpQWdJQ0JqYUdWamEyVmtJRDBnSVdOb1pXTnJJSHg4SUdOb1pXTnJLR1VwTzF4dUlDQjlJR1pwYm1Gc2JIa2dlMXh1SUNBZ0lHbG1JQ2doWTJGMVoyaDBLVnh1SUNBZ0lDQWdkR2h5YjNjZ2JtVjNJRVZ5Y205eUtDZEJiaUJsZUdObGNIUnBiMjRnYVhNZ1pYaHdaV04wWldRZ1luVjBJRzV2ZENCMGFISnZkMjRuS1R0Y2JpQWdJQ0JwWmlBb0lXTm9aV05yWldRcFhHNGdJQ0FnSUNCMGFISnZkeUJ1WlhjZ1JYSnliM0lvSjBGdUlHVjRjR1ZqZEdWa0lHVjRZMlZ3ZEdsdmJpQnBjeUIwYUhKdmQyNHNJR0oxZENCcGRDQmtiMlZ6SUc1dmRDQnpZWFJwYzJaNUlIUm9aU0JqYjI1a2FYUnBiMjRuS1R0Y2JpQWdmVnh1ZlZ4dVhHNHZLaXBjYmlBcUlGVnVhWFpsY25OaGJDQjBaWE4wSUdadmNpQjJhV1YzWlhKekxpQkpkQ0J6WldGeVkyZ2dkbWxsZDJWeWN5QnBiaUJFVDAwZ1lua2dkR0ZuY3pvZ1kyRnVkbUZ6TENCemRtY3NJR2x0Wnl3Z2FXNXdkWFFzSUdneExDQmhYRzRnS2lCQWNHRnlZVzBnSUh0emRISnBibWQ5SUhZZ1ZtbGxkMlZ5SUc1aGJXVmNiaUFxSUVCd1lYSmhiU0FnZTBSSExrUmhkR0ZHY21GdFpYMGdaR1lnUkdGMFlXWnlZVzFsSUhSdklIVnpaUzRnVTJodmRXeGtJR2hoZG1VZ1lYUWdiR1ZoYzNRZ015QnliM2R6WEc0Z0tpQkFjR0Z5WVcwZ0lIdGliMjlzWldGdWZTQnZjSFJwYjI1ekxtUmxkR1ZqZEZObGJXRnVkR2xqVkhsd1pYTWdVM0JsWTJsbWVTQjNhR1YwYUdWeUlIUnZJR1JsZEdWamRDQnpaVzFoYm5ScFl5QjBlWEJsY3lCdmNpQnViM1JjYmlBcUlFQndZWEpoYlNBZ2UySnZiMnhsWVc1OUlHOXdkR2x2Ym5NdWNtVmhaRTl1YkhrZ1NXWWdjMlYwSUhSdklIUnlkV1VzSUhSb1pTQmtZWFJoWm5KaGJXVWdkMmxzYkNCdWIzUWdZbVVnYlc5a2FXWnBaV1FnWkhWeWFXNW5JSFJvWlNCMFpYTjBYRzRnS2lCQWNHRnlZVzBnSUh0dlltcGxZM1I5SUc5d2RHbHZibk1nVEdsemRDQnZaaUJ2Y0hScGIyNXpJQ2h2Y0hScGIyNWhiQ2xjYmlBcUlFQnlaWFIxY200Z2UxQnliMjFwYzJVOGRtOXBaRDU5SUZSb1pTQjBaWE4wSUdseklHTnZibk5wWkdWeVpXUWdjM1ZqWTJWemMyWjFiQ0JwWmlCcGRDQmpiMjF3YkdWMFpYTWdkMmwwYUc5MWRDQmxjbkp2Y25OY2JpQXFMMXh1Wlhod2IzSjBJR0Z6ZVc1aklHWjFibU4wYVc5dUlIUmxjM1JXYVdWM1pYSW9kam9nYzNSeWFXNW5MQ0JrWmpvZ1JFY3VSR0YwWVVaeVlXMWxMRnh1SUNCdmNIUnBiMjV6UHpvZ2UyUmxkR1ZqZEZObGJXRnVkR2xqVkhsd1pYTS9PaUJpYjI5c1pXRnVMQ0J5WldGa1QyNXNlVDg2SUdKdmIyeGxZVzU5S1RvZ1VISnZiV2x6WlR4MmIybGtQaUI3WEc0Z0lHbG1JQ2h2Y0hScGIyNXpQeTVrWlhSbFkzUlRaVzFoYm5ScFkxUjVjR1Z6S1NCaGQyRnBkQ0JuY205ckxtUmhkR0V1WkdWMFpXTjBVMlZ0WVc1MGFXTlVlWEJsY3loa1ppazdYRzRnSUdOdmJuTjBJSFIySUQwZ1ozSnZheTV6YUdWc2JDNWhaR1JVWVdKc1pWWnBaWGNvWkdZcE8xeHVJQ0JqYjI1emRDQjJhV1YzWlhKT1lXMWxJRDBnWUZ0dVlXMWxQWFpwWlhkbGNpMGtlM1l1Y21Wd2JHRmpaU2d2WEZ4ekt5OW5MQ0FuTFNjcGZTQnBYV0E3WEc0Z0lHeGxkQ0J6Wld4bFkzUnZjaUE5SUdBa2UzWnBaWGRsY2s1aGJXVjlJR05oYm5aaGN5d2tlM1pwWlhkbGNrNWhiV1Y5SUhOMlp5d2tlM1pwWlhkbGNrNWhiV1Y5SUdsdFp5eGNiaUFnSUNBa2UzWnBaWGRsY2s1aGJXVjlJR2x1Y0hWMExDUjdkbWxsZDJWeVRtRnRaWDBnYURFc0pIdDJhV1YzWlhKT1lXMWxmU0JoWUR0Y2JpQWdZMjl1YzNRZ2NtVnpJRDBnVzEwN1hHNGdJSFJ5ZVNCN1hHNGdJQ0FnYkdWMElIWnBaWGRsY2lBOUlIUjJMbUZrWkZacFpYZGxjaWgyS1R0Y2JpQWdJQ0JoZDJGcGRDQmhkMkZwZEVOb1pXTnJLQ2dwSUQwK0lHUnZZM1Z0Wlc1MExuRjFaWEo1VTJWc1pXTjBiM0lvYzJWc1pXTjBiM0lwSUNFOVBTQnVkV3hzTEZ4dUlDQWdJQ0FnSjJOaGJtNXZkQ0JzYjJGa0lIWnBaWGRsY2ljc0lETXdNREFwTzF4dUlDQWdJR052Ym5OMElIUmhaeUE5SUdSdlkzVnRaVzUwTG5GMVpYSjVVMlZzWldOMGIzSW9jMlZzWldOMGIzSXBQeTUwWVdkT1lXMWxPMXh1SUNBZ0lISmxjeTV3ZFhOb0tFRnljbUY1TG1aeWIyMG9kSFl1ZG1sbGQyVnljeWt1YkdWdVozUm9LVHRjYmlBZ0lDQnBaaUFvSVc5d2RHbHZibk0vTG5KbFlXUlBibXg1S1NCN1hHNGdJQ0FnSUNCQmNuSmhlUzVtY205dEtHUm1Mbkp2ZHlnd0tTNWpaV3hzY3lrdVptOXlSV0ZqYUNnb1l6cGhibmtwSUQwK0lHTXVkbUZzZFdVZ1BTQnVkV3hzS1R0Y2JpQWdJQ0FnSUdOdmJuTjBJRzUxYlNBOUlHUm1Mbkp2ZDBOdmRXNTBJRHdnTWpBZ1B5Qk5ZWFJvTG1ac2IyOXlLR1JtTG5KdmQwTnZkVzUwSUM4Z01pa2dPaUF4TUR0Y2JpQWdJQ0FnSUdSbUxuSnZkM011YzJWc1pXTjBLQ2h5YjNjNklFUkhMbEp2ZHlrZ1BUNGdjbTkzTG1sa2VDQStQU0F3SUNZbUlISnZkeTVwWkhnZ1BDQnVkVzBwTzF4dUlDQWdJQ0FnWVhkaGFYUWdaR1ZzWVhrb05UQXBPMXh1SUNBZ0lDQWdabTl5SUNoc1pYUWdhU0E5SUc1MWJUc2dhU0E4SUc1MWJTQXFJREk3SUdrckt5a2daR1l1Wm1sc2RHVnlMbk5sZENocExDQm1ZV3h6WlNrN1hHNGdJQ0FnSUNCaGQyRnBkQ0JrWld4aGVTZzFNQ2s3WEc0Z0lDQWdJQ0JrWmk1amRYSnlaVzUwVW05M1NXUjRJRDBnTVR0Y2JpQWdJQ0FnSUdOdmJuTjBJR1JtTVNBOUlHUm1MbU5zYjI1bEtDazdYRzRnSUNBZ0lDQmtaaTVqYjJ4MWJXNXpMbTVoYldWektDa3VjMnhwWTJVb01Dd2dUV0YwYUM1alpXbHNLR1JtTG1OdmJIVnRibk11YkdWdVozUm9JQzhnTWlrcExtWnZja1ZoWTJnb0tHTTZJR0Z1ZVNrZ1BUNGdaR1l1WTI5c2RXMXVjeTV5WlcxdmRtVW9ZeWtwTzF4dUlDQWdJQ0FnWVhkaGFYUWdaR1ZzWVhrb01UQXdLVHRjYmlBZ0lDQWdJSFIyTG1SaGRHRkdjbUZ0WlNBOUlHUm1NVHRjYmlBZ0lDQjlYRzRnSUNBZ1kyOXVjM1FnYjNCMGJuTWdQU0IyYVdWM1pYSXVaMlYwVDNCMGFXOXVjeWgwY25WbEtTNXNiMjlyTzF4dUlDQWdJR052Ym5OMElIQnliM0J6SUQwZ2RtbGxkMlZ5TG1kbGRGQnliM0JsY25ScFpYTW9LVHRjYmlBZ0lDQmpiMjV6ZENCdVpYZFFjbTl3Y3pvZ1VtVmpiM0prUEhOMGNtbHVaeXdnYzNSeWFXNW5JSHdnWW05dmJHVmhiajRnUFNCN2ZUdGNiaUFnSUNCUFltcGxZM1F1YTJWNWN5aHZjSFJ1Y3lrdVptbHNkR1Z5S0NocktTQTlQaUIwZVhCbGIyWWdiM0IwYm5OYmExMGdQVDA5SUNkaWIyOXNaV0Z1SnlrdVptOXlSV0ZqYUNnb2F5a2dQVDRnYm1WM1VISnZjSE5iYTEwZ1BTQWhiM0IwYm5OYmExMHBPMXh1SUNBZ0lIQnliM0J6TG1acGJIUmxjaWdvY0RvZ1JFY3VVSEp2Y0dWeWRIa3BJRDArSUhBdVkyaHZhV05sY3lBaFBUMGdiblZzYkNsY2JpQWdJQ0FnSUM1bWIzSkZZV05vS0Nod09pQkVSeTVRY205d1pYSjBlU2tnUFQ0Z2JtVjNVSEp2Y0hOYmNDNXVZVzFsWFNBOUlIQXVZMmh2YVdObGN5NW1hVzVrS0Noak9pQmhibmtwSUQwK0lHTWdJVDA5SUc5d2RHNXpXM0F1Ym1GdFpWMHBJU2s3WEc0Z0lDQWdkbWxsZDJWeUxuTmxkRTl3ZEdsdmJuTW9ibVYzVUhKdmNITXBPMXh1SUNBZ0lHRjNZV2wwSUdSbGJHRjVLRE13TUNrN1hHNGdJQ0FnWTI5dWMzUWdiR0Y1YjNWMElEMGdkSFl1YzJGMlpVeGhlVzkxZENncE8xeHVJQ0FnSUdOdmJuTjBJRzlzWkZCeWIzQnpJRDBnZG1sbGQyVnlMbWRsZEU5d2RHbHZibk1vS1M1c2IyOXJPMXh1SUNBZ0lIUjJMbkpsYzJWMFRHRjViM1YwS0NrN1hHNGdJQ0FnY21WekxuQjFjMmdvUVhKeVlYa3Vabkp2YlNoMGRpNTJhV1YzWlhKektTNXNaVzVuZEdncE8xeHVJQ0FnSUhSMkxteHZZV1JNWVhsdmRYUW9iR0Y1YjNWMEtUdGNiaUFnSUNCelpXeGxZM1J2Y2lBOUlHQWtlM1pwWlhkbGNrNWhiV1Y5SUNSN2RHRm5mV0E3WEc0Z0lDQWdZWGRoYVhRZ1lYZGhhWFJEYUdWamF5Z29LU0E5UGlCa2IyTjFiV1Z1ZEM1eGRXVnllVk5sYkdWamRHOXlLSE5sYkdWamRHOXlLU0FoUFQwZ2JuVnNiQ3hjYmlBZ0lDQWdJQ2RqWVc1dWIzUWdiRzloWkNCMmFXVjNaWElnWm5KdmJTQnNZWGx2ZFhRbkxDQXpNREF3S1R0Y2JpQWdJQ0J5WlhNdWNIVnphQ2hCY25KaGVTNW1jbTl0S0hSMkxuWnBaWGRsY25NcExteGxibWQwYUNrN1hHNGdJQ0FnZG1sbGQyVnlJRDBnUVhKeVlYa3Vabkp2YlNoMGRpNTJhV1YzWlhKektTNW1hVzVrS0NoMk9pQmhibmtwSUQwK0lIWXVkSGx3WlNBaFBUMGdKMGR5YVdRbktTRTdYRzRnSUNBZ1pYaHdaV04wUVhKeVlYa29jbVZ6TENCYk1pd2dNU3dnTWwwcE8xeHVJQ0FnSUdWNGNHVmpkQ2hLVTA5T0xuTjBjbWx1WjJsbWVTaDJhV1YzWlhJdVoyVjBUM0IwYVc5dWN5Z3BMbXh2YjJzcExDQktVMDlPTG5OMGNtbHVaMmxtZVNodmJHUlFjbTl3Y3lrcE8xeHVJQ0I5SUdacGJtRnNiSGtnZTF4dUlDQWdJSFIyTG1Oc2IzTmxLQ2s3WEc0Z0lDQWdaM0p2YXk1emFHVnNiQzVqYkc5elpWUmhZbXhsS0dSbUtUdGNiaUFnSUNCRVJ5NUNZV3hzYjI5dUxtTnNiM05sUVd4c0tDazdYRzRnSUgxY2JuMWNiaUpkZlE9PSIsInZhciBfX2F3YWl0ZXIgPSAodGhpcyAmJiB0aGlzLl9fYXdhaXRlcikgfHwgZnVuY3Rpb24gKHRoaXNBcmcsIF9hcmd1bWVudHMsIFAsIGdlbmVyYXRvcikge1xuICAgIGZ1bmN0aW9uIGFkb3B0KHZhbHVlKSB7IHJldHVybiB2YWx1ZSBpbnN0YW5jZW9mIFAgPyB2YWx1ZSA6IG5ldyBQKGZ1bmN0aW9uIChyZXNvbHZlKSB7IHJlc29sdmUodmFsdWUpOyB9KTsgfVxuICAgIHJldHVybiBuZXcgKFAgfHwgKFAgPSBQcm9taXNlKSkoZnVuY3Rpb24gKHJlc29sdmUsIHJlamVjdCkge1xuICAgICAgICBmdW5jdGlvbiBmdWxmaWxsZWQodmFsdWUpIHsgdHJ5IHsgc3RlcChnZW5lcmF0b3IubmV4dCh2YWx1ZSkpOyB9IGNhdGNoIChlKSB7IHJlamVjdChlKTsgfSB9XG4gICAgICAgIGZ1bmN0aW9uIHJlamVjdGVkKHZhbHVlKSB7IHRyeSB7IHN0ZXAoZ2VuZXJhdG9yW1widGhyb3dcIl0odmFsdWUpKTsgfSBjYXRjaCAoZSkgeyByZWplY3QoZSk7IH0gfVxuICAgICAgICBmdW5jdGlvbiBzdGVwKHJlc3VsdCkgeyByZXN1bHQuZG9uZSA/IHJlc29sdmUocmVzdWx0LnZhbHVlKSA6IGFkb3B0KHJlc3VsdC52YWx1ZSkudGhlbihmdWxmaWxsZWQsIHJlamVjdGVkKTsgfVxuICAgICAgICBzdGVwKChnZW5lcmF0b3IgPSBnZW5lcmF0b3IuYXBwbHkodGhpc0FyZywgX2FyZ3VtZW50cyB8fCBbXSkpLm5leHQoKSk7XG4gICAgfSk7XG59O1xuaW1wb3J0ICogYXMgREcgZnJvbSBcImRhdGFncm9rLWFwaS9kZ1wiO1xuaW1wb3J0IHsgcnVuVGVzdHMsIHRlc3RzIH0gZnJvbSAnQGRhdGFncm9rLWxpYnJhcmllcy91dGlscy9zcmMvdGVzdCc7XG5leHBvcnQgbGV0IF9wYWNrYWdlID0gbmV3IERHLlBhY2thZ2UoKTtcbmV4cG9ydCB7IHRlc3RzIH07XG4vL25hbWU6IHRlc3Rcbi8vaW5wdXQ6IHN0cmluZyBjYXRlZ29yeSB7b3B0aW9uYWw6IHRydWV9XG4vL2lucHV0OiBzdHJpbmcgdGVzdCB7b3B0aW9uYWw6IHRydWV9XG4vL2lucHV0OiBvYmplY3QgdGVzdENvbnRleHQge29wdGlvbmFsOiB0cnVlfVxuLy9vdXRwdXQ6IGRhdGFmcmFtZSByZXN1bHRcbmV4cG9ydCBmdW5jdGlvbiB0ZXN0KGNhdGVnb3J5LCB0ZXN0LCB0ZXN0Q29udGV4dCkge1xuICAgIHJldHVybiBfX2F3YWl0ZXIodGhpcywgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKiAoKSB7XG4gICAgICAgIGNvbnN0IGRhdGEgPSB5aWVsZCBydW5UZXN0cyh7IGNhdGVnb3J5LCB0ZXN0LCB0ZXN0Q29udGV4dCB9KTtcbiAgICAgICAgcmV0dXJuIERHLkRhdGFGcmFtZS5mcm9tT2JqZWN0cyhkYXRhKTtcbiAgICB9KTtcbn1cbiJdLCJuYW1lcyI6WyJfX3dlYnBhY2tfcmVxdWlyZV9fIiwiZXhwb3J0cyIsImRlZmluaXRpb24iLCJrZXkiLCJvIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJlbnVtZXJhYmxlIiwiZ2V0Iiwib2JqIiwicHJvcCIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsIlN5bWJvbCIsInRvU3RyaW5nVGFnIiwidmFsdWUiLCJERyIsImdyb2siLCJfX2F3YWl0ZXIiLCJ0aGlzQXJnIiwiX2FyZ3VtZW50cyIsIlAiLCJnZW5lcmF0b3IiLCJQcm9taXNlIiwicmVzb2x2ZSIsInJlamVjdCIsImZ1bGZpbGxlZCIsInN0ZXAiLCJuZXh0IiwiZSIsInJlamVjdGVkIiwicmVzdWx0IiwiZG9uZSIsInRoZW4iLCJhcHBseSIsIlNUQU5EQVJUX1RJTUVPVVQiLCJCRU5DSE1BUktfVElNRU9VVCIsInRlc3RzIiwiYXV0b1Rlc3RzQ2F0TmFtZSIsIndhc1JlZ2lzdGVyZWQiLCJhc3N1cmUiLCJub3ROdWxsIiwibmFtZSIsIkVycm9yIiwiVGVzdENvbnRleHQiLCJjb25zdHJ1Y3RvciIsImNhdGNoVW5oYW5kbGVkIiwicmVwb3J0IiwidGhpcyIsInVuZGVmaW5lZCIsIlRlc3QiLCJjYXRlZ29yeSIsInRlc3QiLCJvcHRpb25zIiwiX2EiLCJ0aW1lb3V0IiwiYWRkTmFtZXNwYWNlIiwicyIsImYiLCJyZXBsYWNlIiwiUmVnRXhwIiwibnFOYW1lIiwiZXhlY1Rlc3QiLCJ0IiwicHJlZGljYXRlIiwiY2F0ZWdvcnlUaW1lb3V0IiwicGFja2FnZU5hbWUiLCJfYiIsIl9jIiwiX2QiLCJfZSIsInIiLCJmaWx0ZXIiLCJ0b0xvd2VyQ2FzZSIsInN0YXJ0c1dpdGgiLCJza2lwIiwic2tpcFJlYXNvbiIsImNvbnNvbGUiLCJsb2ciLCJzdGFydCIsIkRhdGUiLCJzdWNjZXNzIiwibXMiLCJza2lwcGVkIiwidGltZW91dF8iLCJ4IiwidG9TdHJpbmciLCJzdG9wIiwiZGVsYXkiLCJzZXRUaW1lb3V0IiwiZnVuYyIsInRlc3RUaW1lb3V0IiwidGltZW91dFByb21pc2UiLCJfIiwicmFjZSIsImNsZWFyVGltZW91dCIsIl9wYWNrYWdlIiwidGVzdENvbnRleHQiLCJkYXRhIiwicGFja2FnZV8iLCJwYWNrYWdlIiwicGFja2FnZUlkIiwibW9kdWxlIiwibW9kdWxlVGVzdHMiLCJrZXlzIiwiZmluZCIsImMiLCJtb2R1bGVBdXRvVGVzdHMiLCJwYWNrRnVuY3Rpb25zIiwibGlzdCIsImluaXRzIiwiaGFzVGFnIiwibGVuZ3RoIiwicmVnIiwiQXJyYXkiLCJpc0FycmF5IiwiaSIsInJlcyIsIm1hdGNoQWxsIiwibWFwIiwiZnJvbSIsImZvckVhY2giLCJhcnIiLCJwYXJzZUludCIsIndhaXQiLCJjYXQiLCJjbGVhciIsInB1c2giLCJpbml0QXV0b1Rlc3RzIiwiaWQiLCJyZXN1bHRzIiwiZW50cmllcyIsImJlZm9yZSIsImJlZm9yZVN0YXR1cyIsImFsbCIsImQiLCJhZnRlciIsImFmdGVyU3RhdHVzIiwibG9nZ2VyIiwic3VjY2Vzc2Z1bCIsImZhaWxlZCIsImRlc2NyaXB0aW9uIiwicGFyYW1zIiwiYXNzaWduIiwicnVuVGVzdHMiXSwic291cmNlUm9vdCI6IiJ9